選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

CountryLanguageScript.java 99KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350
  1. /*
  2. * $Id$
  3. *
  4. * Copyright 1999-2003 The Apache Software Foundation.
  5. *
  6. * Licensed under the Apache License, Version 2.0 (the "License");
  7. * you may not use this file except in compliance with the License.
  8. * You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. * See the License for the specific language governing permissions and
  16. * limitations under the License.
  17. *
  18. *
  19. *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  20. * Automatically generated from xml-lang.xml by
  21. * xml-lang.xsl $Revision$ $Name$.
  22. * DO NOT EDIT!
  23. *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  24. */
  25. package org.apache.fop.datatypes;
  26. import java.util.HashMap;
  27. /**
  28. * A class for accessing and validating:
  29. * ISO 3166 country codes,
  30. * ISO 639-2T, 639-2B and 639-1 language codes,
  31. * and ISO 15924 script codes.
  32. * @see <a href="http://www.iso.ch/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/index.html">iso3166</a>
  33. * @see <a href="http://www.loc.gov/standards/iso639-2/">iso639-2</a>
  34. * @see <a href="http://www.evertype.com/standards/iso15924/document/index.html">iso15924</a>
  35. */
  36. public class CountryLanguageScript {
  37. /**
  38. * Map of English country names keyed on ISO 3166 country code.
  39. */
  40. private static final HashMap iso3166ToName;
  41. /**
  42. * Map of English language names keyed on ISO 639-2 terminology code.
  43. */
  44. private static final HashMap iso639_2T_ToENLang;
  45. /**
  46. * Map of French language names keyed on ISO 639-2 terminology code.
  47. */
  48. private static final HashMap iso639_2T_ToFRLang;
  49. /**
  50. * Map of ISO 639-2 terminology codes keyed on ISO 639-2 bibliographical
  51. * code.
  52. */
  53. private static final HashMap iso639_2B_To_639_2T;
  54. /**
  55. * Map of ISO 639-2 terminology codes keyed on ISO 639-1 2-letter code.
  56. */
  57. private static final HashMap iso639_1_To_639_2T;
  58. /**
  59. * Map of English script names keyed on ISO 15924 script code.
  60. */
  61. private static final HashMap iso15924ToName;
  62. static {
  63. iso3166ToName = new HashMap(239);
  64. iso639_2T_ToENLang = new HashMap(466);
  65. iso639_2T_ToFRLang = new HashMap(466);
  66. iso639_2B_To_639_2T = new HashMap(466);
  67. iso639_1_To_639_2T = new HashMap(466);
  68. iso15924ToName = new HashMap(186);
  69. iso3166ToName.put("AF", "AFGHANISTAN");
  70. iso3166ToName.put("AL", "ALBANIA");
  71. iso3166ToName.put("DZ", "ALGERIA");
  72. iso3166ToName.put("AS", "AMERICAN SAMOA");
  73. iso3166ToName.put("AD", "ANDORRA");
  74. iso3166ToName.put("AO", "ANGOLA");
  75. iso3166ToName.put("AI", "ANGUILLA");
  76. iso3166ToName.put("AQ", "ANTARCTICA");
  77. iso3166ToName.put("AG", "ANTIGUA AND BARBUDA");
  78. iso3166ToName.put("AR", "ARGENTINA");
  79. iso3166ToName.put("AM", "ARMENIA");
  80. iso3166ToName.put("AW", "ARUBA");
  81. iso3166ToName.put("AU", "AUSTRALIA");
  82. iso3166ToName.put("AT", "AUSTRIA");
  83. iso3166ToName.put("AZ", "AZERBAIJAN");
  84. iso3166ToName.put("BS", "BAHAMAS");
  85. iso3166ToName.put("BH", "BAHRAIN");
  86. iso3166ToName.put("BD", "BANGLADESH");
  87. iso3166ToName.put("BB", "BARBADOS");
  88. iso3166ToName.put("BY", "BELARUS");
  89. iso3166ToName.put("BE", "BELGIUM");
  90. iso3166ToName.put("BZ", "BELIZE");
  91. iso3166ToName.put("BJ", "BENIN");
  92. iso3166ToName.put("BM", "BERMUDA");
  93. iso3166ToName.put("BT", "BHUTAN");
  94. iso3166ToName.put("BO", "BOLIVIA");
  95. iso3166ToName.put("BA", "BOSNIA AND HERZEGOVINA");
  96. iso3166ToName.put("BW", "BOTSWANA");
  97. iso3166ToName.put("BV", "BOUVET ISLAND");
  98. iso3166ToName.put("BR", "BRAZIL");
  99. iso3166ToName.put("IO", "BRITISH INDIAN OCEAN TERRITORY");
  100. iso3166ToName.put("BN", "BRUNEI DARUSSALAM");
  101. iso3166ToName.put("BG", "BULGARIA");
  102. iso3166ToName.put("BF", "BURKINA FASO");
  103. iso3166ToName.put("BI", "BURUNDI");
  104. iso3166ToName.put("KH", "CAMBODIA");
  105. iso3166ToName.put("CM", "CAMEROON");
  106. iso3166ToName.put("CA", "CANADA");
  107. iso3166ToName.put("CV", "CAPE VERDE");
  108. iso3166ToName.put("KY", "CAYMAN ISLANDS");
  109. iso3166ToName.put("CF", "CENTRAL AFRICAN REPUBLIC");
  110. iso3166ToName.put("TD", "CHAD");
  111. iso3166ToName.put("CL", "CHILE");
  112. iso3166ToName.put("CN", "CHINA");
  113. iso3166ToName.put("CX", "CHRISTMAS ISLAND");
  114. iso3166ToName.put("CC", "COCOS (KEELING) ISLANDS");
  115. iso3166ToName.put("CO", "COLOMBIA");
  116. iso3166ToName.put("KM", "COMOROS");
  117. iso3166ToName.put("CG", "CONGO");
  118. iso3166ToName.put("CD", "CONGO, THE DEMOCRATIC REPUBLIC OF THE");
  119. iso3166ToName.put("CK", "COOK ISLANDS");
  120. iso3166ToName.put("CR", "COSTA RICA");
  121. iso3166ToName.put("CI", "COTE D'IVOIRE");
  122. iso3166ToName.put("HR", "CROATIA");
  123. iso3166ToName.put("CU", "CUBA");
  124. iso3166ToName.put("CY", "CYPRUS");
  125. iso3166ToName.put("CZ", "CZECH REPUBLIC");
  126. iso3166ToName.put("DK", "DENMARK");
  127. iso3166ToName.put("DJ", "DJIBOUTI");
  128. iso3166ToName.put("DM", "DOMINICA");
  129. iso3166ToName.put("DO", "DOMINICAN REPUBLIC");
  130. iso3166ToName.put("TP", "EAST TIMOR");
  131. iso3166ToName.put("EC", "ECUADOR");
  132. iso3166ToName.put("EG", "EGYPT");
  133. iso3166ToName.put("SV", "EL SALVADOR");
  134. iso3166ToName.put("GQ", "EQUATORIAL GUINEA");
  135. iso3166ToName.put("ER", "ERITREA");
  136. iso3166ToName.put("EE", "ESTONIA");
  137. iso3166ToName.put("ET", "ETHIOPIA");
  138. iso3166ToName.put("FK", "FALKLAND ISLANDS (MALVINAS)");
  139. iso3166ToName.put("FO", "FAROE ISLANDS");
  140. iso3166ToName.put("FJ", "FIJI");
  141. iso3166ToName.put("FI", "FINLAND");
  142. iso3166ToName.put("FR", "FRANCE");
  143. iso3166ToName.put("GF", "FRENCH GUIANA");
  144. iso3166ToName.put("PF", "FRENCH POLYNESIA");
  145. iso3166ToName.put("TF", "FRENCH SOUTHERN TERRITORIES");
  146. iso3166ToName.put("GA", "GABON");
  147. iso3166ToName.put("GM", "GAMBIA");
  148. iso3166ToName.put("GE", "GEORGIA");
  149. iso3166ToName.put("DE", "GERMANY");
  150. iso3166ToName.put("GH", "GHANA");
  151. iso3166ToName.put("GI", "GIBRALTAR");
  152. iso3166ToName.put("GR", "GREECE");
  153. iso3166ToName.put("GL", "GREENLAND");
  154. iso3166ToName.put("GD", "GRENADA");
  155. iso3166ToName.put("GP", "GUADELOUPE");
  156. iso3166ToName.put("GU", "GUAM");
  157. iso3166ToName.put("GT", "GUATEMALA");
  158. iso3166ToName.put("GN", "GUINEA");
  159. iso3166ToName.put("GW", "GUINEA-BISSAU");
  160. iso3166ToName.put("GY", "GUYANA");
  161. iso3166ToName.put("HT", "HAITI");
  162. iso3166ToName.put("HM", "HEARD ISLAND AND MCDONALD ISLANDS");
  163. iso3166ToName.put("VA", "HOLY SEE (VATICAN CITY STATE)");
  164. iso3166ToName.put("HN", "HONDURAS");
  165. iso3166ToName.put("HK", "HONG KONG");
  166. iso3166ToName.put("HU", "HUNGARY");
  167. iso3166ToName.put("IS", "ICELAND");
  168. iso3166ToName.put("IN", "INDIA");
  169. iso3166ToName.put("ID", "INDONESIA");
  170. iso3166ToName.put("IR", "IRAN, ISLAMIC REPUBLIC OF");
  171. iso3166ToName.put("IQ", "IRAQ");
  172. iso3166ToName.put("IE", "IRELAND");
  173. iso3166ToName.put("IL", "ISRAEL");
  174. iso3166ToName.put("IT", "ITALY");
  175. iso3166ToName.put("JM", "JAMAICA");
  176. iso3166ToName.put("JP", "JAPAN");
  177. iso3166ToName.put("JO", "JORDAN");
  178. iso3166ToName.put("KZ", "KAZAKSTAN");
  179. iso3166ToName.put("KE", "KENYA");
  180. iso3166ToName.put("KI", "KIRIBATI");
  181. iso3166ToName.put("KP", "KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF");
  182. iso3166ToName.put("KR", "KOREA, REPUBLIC OF");
  183. iso3166ToName.put("KW", "KUWAIT");
  184. iso3166ToName.put("KG", "KYRGYZSTAN");
  185. iso3166ToName.put("LA", "LAO PEOPLE'S DEMOCRATIC REPUBLIC");
  186. iso3166ToName.put("LV", "LATVIA");
  187. iso3166ToName.put("LB", "LEBANON");
  188. iso3166ToName.put("LS", "LESOTHO");
  189. iso3166ToName.put("LR", "LIBERIA");
  190. iso3166ToName.put("LY", "LIBYAN ARAB JAMAHIRIYA");
  191. iso3166ToName.put("LI", "LIECHTENSTEIN");
  192. iso3166ToName.put("LT", "LITHUANIA");
  193. iso3166ToName.put("LU", "LUXEMBOURG");
  194. iso3166ToName.put("MO", "MACAU");
  195. iso3166ToName.put("MK", "MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF");
  196. iso3166ToName.put("MG", "MADAGASCAR");
  197. iso3166ToName.put("MW", "MALAWI");
  198. iso3166ToName.put("MY", "MALAYSIA");
  199. iso3166ToName.put("MV", "MALDIVES");
  200. iso3166ToName.put("ML", "MALI");
  201. iso3166ToName.put("MT", "MALTA");
  202. iso3166ToName.put("MH", "MARSHALL ISLANDS");
  203. iso3166ToName.put("MQ", "MARTINIQUE");
  204. iso3166ToName.put("MR", "MAURITANIA");
  205. iso3166ToName.put("MU", "MAURITIUS");
  206. iso3166ToName.put("YT", "MAYOTTE");
  207. iso3166ToName.put("MX", "MEXICO");
  208. iso3166ToName.put("FM", "MICRONESIA, FEDERATED STATES OF");
  209. iso3166ToName.put("MD", "MOLDOVA, REPUBLIC OF");
  210. iso3166ToName.put("MC", "MONACO");
  211. iso3166ToName.put("MN", "MONGOLIA");
  212. iso3166ToName.put("MS", "MONTSERRAT");
  213. iso3166ToName.put("MA", "MOROCCO");
  214. iso3166ToName.put("MZ", "MOZAMBIQUE");
  215. iso3166ToName.put("MM", "MYANMAR");
  216. iso3166ToName.put("NA", "NAMIBIA");
  217. iso3166ToName.put("NR", "NAURU");
  218. iso3166ToName.put("NP", "NEPAL");
  219. iso3166ToName.put("NL", "NETHERLANDS");
  220. iso3166ToName.put("AN", "NETHERLANDS ANTILLES");
  221. iso3166ToName.put("NC", "NEW CALEDONIA");
  222. iso3166ToName.put("NZ", "NEW ZEALAND");
  223. iso3166ToName.put("NI", "NICARAGUA");
  224. iso3166ToName.put("NE", "NIGER");
  225. iso3166ToName.put("NG", "NIGERIA");
  226. iso3166ToName.put("NU", "NIUE");
  227. iso3166ToName.put("NF", "NORFOLK ISLAND");
  228. iso3166ToName.put("MP", "NORTHERN MARIANA ISLANDS");
  229. iso3166ToName.put("NO", "NORWAY");
  230. iso3166ToName.put("OM", "OMAN");
  231. iso3166ToName.put("PK", "PAKISTAN");
  232. iso3166ToName.put("PW", "PALAU");
  233. iso3166ToName.put("PS", "PALESTINIAN TERRITORY, OCCUPIED");
  234. iso3166ToName.put("PA", "PANAMA");
  235. iso3166ToName.put("PG", "PAPUA NEW GUINEA");
  236. iso3166ToName.put("PY", "PARAGUAY");
  237. iso3166ToName.put("PE", "PERU");
  238. iso3166ToName.put("PH", "PHILIPPINES");
  239. iso3166ToName.put("PN", "PITCAIRN");
  240. iso3166ToName.put("PL", "POLAND");
  241. iso3166ToName.put("PT", "PORTUGAL");
  242. iso3166ToName.put("PR", "PUERTO RICO");
  243. iso3166ToName.put("QA", "QATAR");
  244. iso3166ToName.put("RE", "REUNION");
  245. iso3166ToName.put("RO", "ROMANIA");
  246. iso3166ToName.put("RU", "RUSSIAN FEDERATION");
  247. iso3166ToName.put("RW", "RWANDA");
  248. iso3166ToName.put("SH", "SAINT HELENA");
  249. iso3166ToName.put("KN", "SAINT KITTS AND NEVIS");
  250. iso3166ToName.put("LC", "SAINT LUCIA");
  251. iso3166ToName.put("PM", "SAINT PIERRE AND MIQUELON");
  252. iso3166ToName.put("VC", "SAINT VINCENT AND THE GRENADINES");
  253. iso3166ToName.put("WS", "SAMOA");
  254. iso3166ToName.put("SM", "SAN MARINO");
  255. iso3166ToName.put("ST", "SAO TOME AND PRINCIPE");
  256. iso3166ToName.put("SA", "SAUDI ARABIA");
  257. iso3166ToName.put("SN", "SENEGAL");
  258. iso3166ToName.put("SC", "SEYCHELLES");
  259. iso3166ToName.put("SL", "SIERRA LEONE");
  260. iso3166ToName.put("SG", "SINGAPORE");
  261. iso3166ToName.put("SK", "SLOVAKIA");
  262. iso3166ToName.put("SI", "SLOVENIA");
  263. iso3166ToName.put("SB", "SOLOMON ISLANDS");
  264. iso3166ToName.put("SO", "SOMALIA");
  265. iso3166ToName.put("ZA", "SOUTH AFRICA");
  266. iso3166ToName.put("GS", "SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS");
  267. iso3166ToName.put("ES", "SPAIN");
  268. iso3166ToName.put("LK", "SRI LANKA");
  269. iso3166ToName.put("SD", "SUDAN");
  270. iso3166ToName.put("SR", "SURINAME");
  271. iso3166ToName.put("SJ", "SVALBARD AND JAN MAYEN");
  272. iso3166ToName.put("SZ", "SWAZILAND");
  273. iso3166ToName.put("SE", "SWEDEN");
  274. iso3166ToName.put("CH", "SWITZERLAND");
  275. iso3166ToName.put("SY", "SYRIAN ARAB REPUBLIC");
  276. iso3166ToName.put("TW", "TAIWAN, PROVINCE OF CHINA");
  277. iso3166ToName.put("TJ", "TAJIKISTAN");
  278. iso3166ToName.put("TZ", "TANZANIA, UNITED REPUBLIC OF");
  279. iso3166ToName.put("TH", "THAILAND");
  280. iso3166ToName.put("TG", "TOGO");
  281. iso3166ToName.put("TK", "TOKELAU");
  282. iso3166ToName.put("TO", "TONGA");
  283. iso3166ToName.put("TT", "TRINIDAD AND TOBAGO");
  284. iso3166ToName.put("TN", "TUNISIA");
  285. iso3166ToName.put("TR", "TURKEY");
  286. iso3166ToName.put("TM", "TURKMENISTAN");
  287. iso3166ToName.put("TC", "TURKS AND CAICOS ISLANDS");
  288. iso3166ToName.put("TV", "TUVALU");
  289. iso3166ToName.put("UG", "UGANDA");
  290. iso3166ToName.put("UA", "UKRAINE");
  291. iso3166ToName.put("AE", "UNITED ARAB EMIRATES");
  292. iso3166ToName.put("GB", "UNITED KINGDOM");
  293. iso3166ToName.put("US", "UNITED STATES");
  294. iso3166ToName.put("UM", "UNITED STATES MINOR OUTLYING ISLANDS");
  295. iso3166ToName.put("UY", "URUGUAY");
  296. iso3166ToName.put("UZ", "UZBEKISTAN");
  297. iso3166ToName.put("VU", "VANUATU");
  298. iso3166ToName.put("VE", "VENEZUELA");
  299. iso3166ToName.put("VN", "VIET NAM");
  300. iso3166ToName.put("VG", "VIRGIN ISLANDS, BRITISH");
  301. iso3166ToName.put("VI", "VIRGIN ISLANDS, U.S.");
  302. iso3166ToName.put("WF", "WALLIS AND FUTUNA");
  303. iso3166ToName.put("EH", "WESTERN SAHARA");
  304. iso3166ToName.put("YE", "YEMEN");
  305. iso3166ToName.put("YU", "YUGOSLAVIA");
  306. iso3166ToName.put("ZM", "ZAMBIA");
  307. iso3166ToName.put("ZW", "ZIMBABWE");
  308. // Afar
  309. iso639_2T_ToENLang.put("aar", "Afar");
  310. iso639_2T_ToFRLang.put("aar", "afar");
  311. iso639_1_To_639_2T.put("aa", "aar");
  312. // Abkhazian
  313. iso639_2T_ToENLang.put("abk", "Abkhazian");
  314. iso639_2T_ToFRLang.put("abk", "abkhaze");
  315. iso639_1_To_639_2T.put("ab", "abk");
  316. // Achinese
  317. iso639_2T_ToENLang.put("ace", "Achinese");
  318. iso639_2T_ToFRLang.put("ace", "aceh");
  319. // Acoli
  320. iso639_2T_ToENLang.put("ach", "Acoli");
  321. iso639_2T_ToFRLang.put("ach", "acoli");
  322. // Adangme
  323. iso639_2T_ToENLang.put("ada", "Adangme");
  324. iso639_2T_ToFRLang.put("ada", "adangme");
  325. // Afro-Asiatic (Other)
  326. iso639_2T_ToENLang.put("afa", "Afro-Asiatic (Other)");
  327. iso639_2T_ToFRLang.put("afa", "afro-asiatiques, autres langues");
  328. // Afrihili
  329. iso639_2T_ToENLang.put("afh", "Afrihili");
  330. iso639_2T_ToFRLang.put("afh", "afrihili");
  331. // Afrikaans
  332. iso639_2T_ToENLang.put("afr", "Afrikaans");
  333. iso639_2T_ToFRLang.put("afr", "afrikaans");
  334. iso639_1_To_639_2T.put("af", "afr");
  335. // Akan
  336. iso639_2T_ToENLang.put("aka", "Akan");
  337. iso639_2T_ToFRLang.put("aka", "akan");
  338. // Akkadian
  339. iso639_2T_ToENLang.put("akk", "Akkadian");
  340. iso639_2T_ToFRLang.put("akk", "akkadien");
  341. // Albanian
  342. iso639_2T_ToENLang.put("sqi", "Albanian");
  343. iso639_2T_ToFRLang.put("sqi", "albanais");
  344. iso639_2B_To_639_2T.put("alb", "sqi");
  345. iso639_1_To_639_2T.put("sq", "sqi");
  346. // Aleut
  347. iso639_2T_ToENLang.put("ale", "Aleut");
  348. iso639_2T_ToFRLang.put("ale", "al�oute");
  349. // Algonquian languages
  350. iso639_2T_ToENLang.put("alg", "Algonquian languages");
  351. iso639_2T_ToFRLang.put("alg", "algonquines, langues");
  352. // Amharic
  353. iso639_2T_ToENLang.put("amh", "Amharic");
  354. iso639_2T_ToFRLang.put("amh", "amharique");
  355. iso639_1_To_639_2T.put("am", "amh");
  356. // English, Old (ca.450-1100)
  357. iso639_2T_ToENLang.put("ang", "English, Old (ca.450-1100)");
  358. iso639_2T_ToFRLang.put("ang", "anglo-saxon (ca.450-1100)");
  359. // Apache languages
  360. iso639_2T_ToENLang.put("apa", "Apache languages");
  361. iso639_2T_ToFRLang.put("apa", "apache");
  362. // Arabic
  363. iso639_2T_ToENLang.put("ara", "Arabic");
  364. iso639_2T_ToFRLang.put("ara", "arabe");
  365. iso639_1_To_639_2T.put("ar", "ara");
  366. // Aramaic
  367. iso639_2T_ToENLang.put("arc", "Aramaic");
  368. iso639_2T_ToFRLang.put("arc", "aram�en");
  369. // Armenian
  370. iso639_2T_ToENLang.put("hye", "Armenian");
  371. iso639_2T_ToFRLang.put("hye", "arm�nien");
  372. iso639_2B_To_639_2T.put("arm", "hye");
  373. iso639_1_To_639_2T.put("hy", "hye");
  374. // Araucanian
  375. iso639_2T_ToENLang.put("arn", "Araucanian");
  376. iso639_2T_ToFRLang.put("arn", "araucan");
  377. // Arapaho
  378. iso639_2T_ToENLang.put("arp", "Arapaho");
  379. iso639_2T_ToFRLang.put("arp", "arapaho");
  380. // Artificial (Other)
  381. iso639_2T_ToENLang.put("art", "Artificial (Other)");
  382. iso639_2T_ToFRLang.put("art", "artificielles, autres langues");
  383. // Arawak
  384. iso639_2T_ToENLang.put("arw", "Arawak");
  385. iso639_2T_ToFRLang.put("arw", "arawak");
  386. // Assamese
  387. iso639_2T_ToENLang.put("asm", "Assamese");
  388. iso639_2T_ToFRLang.put("asm", "assamais");
  389. iso639_1_To_639_2T.put("as", "asm");
  390. // Asturian; Bable
  391. iso639_2T_ToENLang.put("ast", "Asturian; Bable");
  392. iso639_2T_ToFRLang.put("ast", "asturien; bable");
  393. // Athapascan languages
  394. iso639_2T_ToENLang.put("ath", "Athapascan languages");
  395. iso639_2T_ToFRLang.put("ath", "athapascanes, langues");
  396. // Australian languages
  397. iso639_2T_ToENLang.put("aus", "Australian languages");
  398. iso639_2T_ToFRLang.put("aus", "australiennes, langues");
  399. // Avaric
  400. iso639_2T_ToENLang.put("ava", "Avaric");
  401. iso639_2T_ToFRLang.put("ava", "avar");
  402. // Avestan
  403. iso639_2T_ToENLang.put("ave", "Avestan");
  404. iso639_2T_ToFRLang.put("ave", "avestique");
  405. iso639_1_To_639_2T.put("ae", "ave");
  406. // Awadhi
  407. iso639_2T_ToENLang.put("awa", "Awadhi");
  408. iso639_2T_ToFRLang.put("awa", "awadhi");
  409. // Aymara
  410. iso639_2T_ToENLang.put("aym", "Aymara");
  411. iso639_2T_ToFRLang.put("aym", "aymara");
  412. iso639_1_To_639_2T.put("ay", "aym");
  413. // Azerbaijani
  414. iso639_2T_ToENLang.put("aze", "Azerbaijani");
  415. iso639_2T_ToFRLang.put("aze", "az�ri");
  416. iso639_1_To_639_2T.put("az", "aze");
  417. // Banda
  418. iso639_2T_ToENLang.put("bad", "Banda");
  419. iso639_2T_ToFRLang.put("bad", "banda");
  420. // Bamileke languages
  421. iso639_2T_ToENLang.put("bai", "Bamileke languages");
  422. iso639_2T_ToFRLang.put("bai", "bamil�k�s, langues");
  423. // Bashkir
  424. iso639_2T_ToENLang.put("bak", "Bashkir");
  425. iso639_2T_ToFRLang.put("bak", "bachkir");
  426. iso639_1_To_639_2T.put("ba", "bak");
  427. // Baluchi
  428. iso639_2T_ToENLang.put("bal", "Baluchi");
  429. iso639_2T_ToFRLang.put("bal", "baloutchi");
  430. // Bambara
  431. iso639_2T_ToENLang.put("bam", "Bambara");
  432. iso639_2T_ToFRLang.put("bam", "bambara");
  433. // Balinese
  434. iso639_2T_ToENLang.put("ban", "Balinese");
  435. iso639_2T_ToFRLang.put("ban", "balinais");
  436. // Basque
  437. iso639_2T_ToENLang.put("eus", "Basque");
  438. iso639_2T_ToFRLang.put("eus", "basque");
  439. iso639_2B_To_639_2T.put("baq", "eus");
  440. iso639_1_To_639_2T.put("eu", "eus");
  441. // Basa
  442. iso639_2T_ToENLang.put("bas", "Basa");
  443. iso639_2T_ToFRLang.put("bas", "basa");
  444. // Baltic (Other)
  445. iso639_2T_ToENLang.put("bat", "Baltic (Other)");
  446. iso639_2T_ToFRLang.put("bat", "baltiques, autres langues");
  447. // Beja
  448. iso639_2T_ToENLang.put("bej", "Beja");
  449. iso639_2T_ToFRLang.put("bej", "bedja");
  450. // Belarusian
  451. iso639_2T_ToENLang.put("bel", "Belarusian");
  452. iso639_2T_ToFRLang.put("bel", "bi�lorusse");
  453. iso639_1_To_639_2T.put("be", "bel");
  454. // Bemba
  455. iso639_2T_ToENLang.put("bem", "Bemba");
  456. iso639_2T_ToFRLang.put("bem", "bemba");
  457. // Bengali
  458. iso639_2T_ToENLang.put("ben", "Bengali");
  459. iso639_2T_ToFRLang.put("ben", "bengali");
  460. iso639_1_To_639_2T.put("bn", "ben");
  461. // Berber (Other)
  462. iso639_2T_ToENLang.put("ber", "Berber (Other)");
  463. iso639_2T_ToFRLang.put("ber", "berb�res, autres langues");
  464. // Bhojpuri
  465. iso639_2T_ToENLang.put("bho", "Bhojpuri");
  466. iso639_2T_ToFRLang.put("bho", "bhojpuri");
  467. // Bihari
  468. iso639_2T_ToENLang.put("bih", "Bihari");
  469. iso639_2T_ToFRLang.put("bih", "bihari");
  470. iso639_1_To_639_2T.put("bh", "bih");
  471. // Bikol
  472. iso639_2T_ToENLang.put("bik", "Bikol");
  473. iso639_2T_ToFRLang.put("bik", "bikol");
  474. // Bini
  475. iso639_2T_ToENLang.put("bin", "Bini");
  476. iso639_2T_ToFRLang.put("bin", "bini");
  477. // Bislama
  478. iso639_2T_ToENLang.put("bis", "Bislama");
  479. iso639_2T_ToFRLang.put("bis", "bichlamar");
  480. iso639_1_To_639_2T.put("bi", "bis");
  481. // Siksika
  482. iso639_2T_ToENLang.put("bla", "Siksika");
  483. iso639_2T_ToFRLang.put("bla", "blackfoot");
  484. // Bantu (Other)
  485. iso639_2T_ToENLang.put("bnt", "Bantu (Other)");
  486. iso639_2T_ToFRLang.put("bnt", "bantoues, autres langues");
  487. // Tibetan
  488. iso639_2T_ToENLang.put("bod", "Tibetan");
  489. iso639_2T_ToFRLang.put("bod", "tib�tain");
  490. iso639_2B_To_639_2T.put("tib", "bod");
  491. iso639_1_To_639_2T.put("bo", "bod");
  492. // Bosnian
  493. iso639_2T_ToENLang.put("bos", "Bosnian");
  494. iso639_2T_ToFRLang.put("bos", "bosniaque");
  495. iso639_1_To_639_2T.put("bs", "bos");
  496. // Braj
  497. iso639_2T_ToENLang.put("bra", "Braj");
  498. iso639_2T_ToFRLang.put("bra", "braj");
  499. // Breton
  500. iso639_2T_ToENLang.put("bre", "Breton");
  501. iso639_2T_ToFRLang.put("bre", "breton");
  502. iso639_1_To_639_2T.put("br", "bre");
  503. // Batak (Indonesia)
  504. iso639_2T_ToENLang.put("btk", "Batak (Indonesia)");
  505. iso639_2T_ToFRLang.put("btk", "batak (Indon�sie)");
  506. // Buriat
  507. iso639_2T_ToENLang.put("bua", "Buriat");
  508. iso639_2T_ToFRLang.put("bua", "bouriate");
  509. // Buginese
  510. iso639_2T_ToENLang.put("bug", "Buginese");
  511. iso639_2T_ToFRLang.put("bug", "bugi");
  512. // Bulgarian
  513. iso639_2T_ToENLang.put("bul", "Bulgarian");
  514. iso639_2T_ToFRLang.put("bul", "bulgare");
  515. iso639_1_To_639_2T.put("bg", "bul");
  516. // Burmese
  517. iso639_2T_ToENLang.put("mya", "Burmese");
  518. iso639_2T_ToFRLang.put("mya", "birman");
  519. iso639_2B_To_639_2T.put("bur", "mya");
  520. iso639_1_To_639_2T.put("my", "mya");
  521. // Caddo
  522. iso639_2T_ToENLang.put("cad", "Caddo");
  523. iso639_2T_ToFRLang.put("cad", "caddo");
  524. // Central American Indian (Other)
  525. iso639_2T_ToENLang.put("cai", "Central American Indian (Other)");
  526. iso639_2T_ToFRLang.put("cai", "indiennes d'Am�rique centrale, autres langues");
  527. // Carib
  528. iso639_2T_ToENLang.put("car", "Carib");
  529. iso639_2T_ToFRLang.put("car", "caribe");
  530. // Catalan
  531. iso639_2T_ToENLang.put("cat", "Catalan");
  532. iso639_2T_ToFRLang.put("cat", "catalan");
  533. iso639_1_To_639_2T.put("ca", "cat");
  534. // Caucasian (Other)
  535. iso639_2T_ToENLang.put("cau", "Caucasian (Other)");
  536. iso639_2T_ToFRLang.put("cau", "caucasiennes, autres langues");
  537. // Cebuano
  538. iso639_2T_ToENLang.put("ceb", "Cebuano");
  539. iso639_2T_ToFRLang.put("ceb", "cebuano");
  540. // Celtic (Other)
  541. iso639_2T_ToENLang.put("cel", "Celtic (Other)");
  542. iso639_2T_ToFRLang.put("cel", "celtiques, autres langues");
  543. // Czech
  544. iso639_2T_ToENLang.put("ces", "Czech");
  545. iso639_2T_ToFRLang.put("ces", "tch�que");
  546. iso639_2B_To_639_2T.put("cze", "ces");
  547. iso639_1_To_639_2T.put("cs", "ces");
  548. // Chamorro
  549. iso639_2T_ToENLang.put("cha", "Chamorro");
  550. iso639_2T_ToFRLang.put("cha", "chamorro");
  551. iso639_1_To_639_2T.put("ch", "cha");
  552. // Chibcha
  553. iso639_2T_ToENLang.put("chb", "Chibcha");
  554. iso639_2T_ToFRLang.put("chb", "chibcha");
  555. // Chechen
  556. iso639_2T_ToENLang.put("che", "Chechen ");
  557. iso639_2T_ToFRLang.put("che", "tch�tch�ne");
  558. iso639_1_To_639_2T.put("ce", "che");
  559. // Chagatai
  560. iso639_2T_ToENLang.put("chg", "Chagatai");
  561. iso639_2T_ToFRLang.put("chg", "djaghata�");
  562. // Chinese
  563. iso639_2T_ToENLang.put("zho", "Chinese");
  564. iso639_2T_ToFRLang.put("zho", "chinois");
  565. iso639_2B_To_639_2T.put("chi", "zho");
  566. iso639_1_To_639_2T.put("zh", "zho");
  567. // Chuukese
  568. iso639_2T_ToENLang.put("chk", "Chuukese");
  569. iso639_2T_ToFRLang.put("chk", "chuuk");
  570. // Mari
  571. iso639_2T_ToENLang.put("chm", "Mari");
  572. iso639_2T_ToFRLang.put("chm", "mari");
  573. // Chinook jargon
  574. iso639_2T_ToENLang.put("chn", "Chinook jargon");
  575. iso639_2T_ToFRLang.put("chn", "chinook, jargon");
  576. // Choctaw
  577. iso639_2T_ToENLang.put("cho", "Choctaw");
  578. iso639_2T_ToFRLang.put("cho", "choctaw");
  579. // Chipewyan
  580. iso639_2T_ToENLang.put("chp", "Chipewyan");
  581. iso639_2T_ToFRLang.put("chp", "chipewyan");
  582. // Cherokee
  583. iso639_2T_ToENLang.put("chr", "Cherokee");
  584. iso639_2T_ToFRLang.put("chr", "cherokee");
  585. // Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic
  586. iso639_2T_ToENLang.put("chu", "Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic");
  587. iso639_2T_ToFRLang.put("chu", "slavon d'�glise; vieux slave; slavon liturgique; vieux bulgare");
  588. iso639_1_To_639_2T.put("cu", "chu");
  589. // Chuvash
  590. iso639_2T_ToENLang.put("chv", "Chuvash");
  591. iso639_2T_ToFRLang.put("chv", "tchouvache");
  592. iso639_1_To_639_2T.put("cv", "chv");
  593. // Cheyenne
  594. iso639_2T_ToENLang.put("chy", "Cheyenne");
  595. iso639_2T_ToFRLang.put("chy", "cheyenne");
  596. // Chamic languages
  597. iso639_2T_ToENLang.put("cmc", "Chamic languages");
  598. iso639_2T_ToFRLang.put("cmc", "chames, langues");
  599. // Coptic
  600. iso639_2T_ToENLang.put("cop", "Coptic");
  601. iso639_2T_ToFRLang.put("cop", "copte");
  602. // Cornish
  603. iso639_2T_ToENLang.put("cor", "Cornish");
  604. iso639_2T_ToFRLang.put("cor", "cornique");
  605. iso639_1_To_639_2T.put("kw", "cor");
  606. // Corsican
  607. iso639_2T_ToENLang.put("cos", "Corsican");
  608. iso639_2T_ToFRLang.put("cos", "corse");
  609. iso639_1_To_639_2T.put("co", "cos");
  610. // Creoles and pidgins, English based (Other)
  611. iso639_2T_ToENLang.put("cpe", "Creoles and pidgins, English based (Other)");
  612. iso639_2T_ToFRLang.put("cpe", "cr�oles et pidgins anglais, autres");
  613. // Creoles and pidgins, French-based (Other)
  614. iso639_2T_ToENLang.put("cpf", "Creoles and pidgins, French-based (Other)");
  615. iso639_2T_ToFRLang.put("cpf", "cr�oles et pidgins fran�ais, autres");
  616. // Creoles and pidgins, Portuguese-based (Other)
  617. iso639_2T_ToENLang.put("cpp", "Creoles and pidgins, Portuguese-based (Other)");
  618. iso639_2T_ToFRLang.put("cpp", "cr�oles et pidgins portugais, autres");
  619. // Cree
  620. iso639_2T_ToENLang.put("cre", "Cree");
  621. iso639_2T_ToFRLang.put("cre", "cree");
  622. // Creoles and pidgins (Other)
  623. iso639_2T_ToENLang.put("crp", "Creoles and pidgins (Other)");
  624. iso639_2T_ToFRLang.put("crp", "cr�oles et pidgins divers");
  625. // Cushitic (Other)
  626. iso639_2T_ToENLang.put("cus", "Cushitic (Other)");
  627. iso639_2T_ToFRLang.put("cus", "couchitiques, autres langues");
  628. // Welsh
  629. iso639_2T_ToENLang.put("cym", "Welsh");
  630. iso639_2T_ToFRLang.put("cym", "gallois");
  631. iso639_2B_To_639_2T.put("wel", "cym");
  632. iso639_1_To_639_2T.put("cy", "cym");
  633. // Czech
  634. iso639_2T_ToENLang.put("ces", "Czech");
  635. iso639_2T_ToFRLang.put("ces", "tch�que");
  636. iso639_2B_To_639_2T.put("cze", "ces");
  637. iso639_1_To_639_2T.put("cs", "ces");
  638. // Dakota
  639. iso639_2T_ToENLang.put("dak", "Dakota");
  640. iso639_2T_ToFRLang.put("dak", "dakota");
  641. // Danish
  642. iso639_2T_ToENLang.put("dan", "Danish");
  643. iso639_2T_ToFRLang.put("dan", "danois");
  644. iso639_1_To_639_2T.put("da", "dan");
  645. // Dayak
  646. iso639_2T_ToENLang.put("day", "Dayak");
  647. iso639_2T_ToFRLang.put("day", "dayak");
  648. // Delaware
  649. iso639_2T_ToENLang.put("del", "Delaware");
  650. iso639_2T_ToFRLang.put("del", "delaware");
  651. // Slave (Athapascan)
  652. iso639_2T_ToENLang.put("den", "Slave (Athapascan)");
  653. iso639_2T_ToFRLang.put("den", "esclave (athapascan)");
  654. // German
  655. iso639_2T_ToENLang.put("deu", "German");
  656. iso639_2T_ToFRLang.put("deu", "allemand");
  657. iso639_2B_To_639_2T.put("ger", "deu");
  658. iso639_1_To_639_2T.put("de", "deu");
  659. // Dogrib
  660. iso639_2T_ToENLang.put("dgr", "Dogrib");
  661. iso639_2T_ToFRLang.put("dgr", "dogrib");
  662. // Dinka
  663. iso639_2T_ToENLang.put("din", "Dinka");
  664. iso639_2T_ToFRLang.put("din", "dinka");
  665. // Divehi
  666. iso639_2T_ToENLang.put("div", "Divehi");
  667. iso639_2T_ToFRLang.put("div", "maldivien");
  668. // Dogri
  669. iso639_2T_ToENLang.put("doi", "Dogri");
  670. iso639_2T_ToFRLang.put("doi", "dogri");
  671. // Dravidian (Other)
  672. iso639_2T_ToENLang.put("dra", "Dravidian (Other)");
  673. iso639_2T_ToFRLang.put("dra", "dravidiennes, autres langues");
  674. // Duala
  675. iso639_2T_ToENLang.put("dua", "Duala");
  676. iso639_2T_ToFRLang.put("dua", "douala");
  677. // Dutch, Middle (ca.1050-1350)
  678. iso639_2T_ToENLang.put("dum", "Dutch, Middle (ca.1050-1350)");
  679. iso639_2T_ToFRLang.put("dum", "n�erlandais moyen (ca. 1050-1350)");
  680. // Dutch
  681. iso639_2T_ToENLang.put("nld", "Dutch");
  682. iso639_2T_ToFRLang.put("nld", "n�erlandais");
  683. iso639_2B_To_639_2T.put("dut", "nld");
  684. iso639_1_To_639_2T.put("nl", "nld");
  685. // Dyula
  686. iso639_2T_ToENLang.put("dyu", "Dyula");
  687. iso639_2T_ToFRLang.put("dyu", "dioula");
  688. // Dzongkha
  689. iso639_2T_ToENLang.put("dzo", "Dzongkha");
  690. iso639_2T_ToFRLang.put("dzo", "dzongkha");
  691. iso639_1_To_639_2T.put("dz", "dzo");
  692. // Efik
  693. iso639_2T_ToENLang.put("efi", "Efik");
  694. iso639_2T_ToFRLang.put("efi", "efik");
  695. // Egyptian (Ancient)
  696. iso639_2T_ToENLang.put("egy", "Egyptian (Ancient)");
  697. iso639_2T_ToFRLang.put("egy", "�gyptien");
  698. // Ekajuk
  699. iso639_2T_ToENLang.put("eka", "Ekajuk");
  700. iso639_2T_ToFRLang.put("eka", "ekajuk");
  701. // Greek, Modern (1453-)
  702. iso639_2T_ToENLang.put("ell", "Greek, Modern (1453-)");
  703. iso639_2T_ToFRLang.put("ell", "grec moderne (apr�s 1453)");
  704. iso639_2B_To_639_2T.put("gre", "ell");
  705. iso639_1_To_639_2T.put("el", "ell");
  706. // Elamite
  707. iso639_2T_ToENLang.put("elx", "Elamite");
  708. iso639_2T_ToFRLang.put("elx", "�lamite");
  709. // English
  710. iso639_2T_ToENLang.put("eng", "English");
  711. iso639_2T_ToFRLang.put("eng", "anglais");
  712. iso639_1_To_639_2T.put("en", "eng");
  713. // English, Middle (1100-1500)
  714. iso639_2T_ToENLang.put("enm", "English, Middle (1100-1500)");
  715. iso639_2T_ToFRLang.put("enm", "anglais moyen (1100-1500)");
  716. // Esperanto
  717. iso639_2T_ToENLang.put("epo", "Esperanto");
  718. iso639_2T_ToFRLang.put("epo", "esp�ranto");
  719. iso639_1_To_639_2T.put("eo", "epo");
  720. // Estonian
  721. iso639_2T_ToENLang.put("est", "Estonian");
  722. iso639_2T_ToFRLang.put("est", "estonien");
  723. iso639_1_To_639_2T.put("et", "est");
  724. // Basque
  725. iso639_2T_ToENLang.put("eus", "Basque");
  726. iso639_2T_ToFRLang.put("eus", "basque");
  727. iso639_2B_To_639_2T.put("baq", "eus");
  728. iso639_1_To_639_2T.put("eu", "eus");
  729. // Ewe
  730. iso639_2T_ToENLang.put("ewe", "Ewe");
  731. iso639_2T_ToFRLang.put("ewe", "�w�");
  732. // Ewondo
  733. iso639_2T_ToENLang.put("ewo", "Ewondo");
  734. iso639_2T_ToFRLang.put("ewo", "�wondo");
  735. // Fang
  736. iso639_2T_ToENLang.put("fan", "Fang");
  737. iso639_2T_ToFRLang.put("fan", "fang");
  738. // Faroese
  739. iso639_2T_ToENLang.put("fao", "Faroese");
  740. iso639_2T_ToFRLang.put("fao", "f�ro�en");
  741. iso639_1_To_639_2T.put("fo", "fao");
  742. // Persian
  743. iso639_2T_ToENLang.put("fas", "Persian");
  744. iso639_2T_ToFRLang.put("fas", "persan");
  745. iso639_2B_To_639_2T.put("per", "fas");
  746. iso639_1_To_639_2T.put("fa", "fas");
  747. // Fanti
  748. iso639_2T_ToENLang.put("fat", "Fanti");
  749. iso639_2T_ToFRLang.put("fat", "fanti");
  750. // Fijian
  751. iso639_2T_ToENLang.put("fij", "Fijian");
  752. iso639_2T_ToFRLang.put("fij", "fidjien");
  753. iso639_1_To_639_2T.put("fj", "fij");
  754. // Finnish
  755. iso639_2T_ToENLang.put("fin", "Finnish");
  756. iso639_2T_ToFRLang.put("fin", "finnois");
  757. iso639_1_To_639_2T.put("fi", "fin");
  758. // Finno-Ugrian (Other)
  759. iso639_2T_ToENLang.put("fiu", "Finno-Ugrian (Other)");
  760. iso639_2T_ToFRLang.put("fiu", "finno-ougriennes, autres langues");
  761. // Fon
  762. iso639_2T_ToENLang.put("fon", "Fon");
  763. iso639_2T_ToFRLang.put("fon", "fon");
  764. // French
  765. iso639_2T_ToENLang.put("fra", "French");
  766. iso639_2T_ToFRLang.put("fra", "fran�ais");
  767. iso639_2B_To_639_2T.put("fre", "fra");
  768. iso639_1_To_639_2T.put("fr", "fra");
  769. // French, Middle (ca.1400-1800)
  770. iso639_2T_ToENLang.put("frm", "French, Middle (ca.1400-1800)");
  771. iso639_2T_ToFRLang.put("frm", "fran�ais moyen (1400-1800)");
  772. // French, Old (842-ca.1400)
  773. iso639_2T_ToENLang.put("fro", "French, Old (842-ca.1400)");
  774. iso639_2T_ToFRLang.put("fro", "fran�ais ancien (842-ca.1400)");
  775. // Frisian
  776. iso639_2T_ToENLang.put("fry", "Frisian");
  777. iso639_2T_ToFRLang.put("fry", "frison");
  778. iso639_1_To_639_2T.put("fy", "fry");
  779. // Fulah
  780. iso639_2T_ToENLang.put("ful", "Fulah");
  781. iso639_2T_ToFRLang.put("ful", "peul");
  782. // Friulian
  783. iso639_2T_ToENLang.put("fur", "Friulian");
  784. iso639_2T_ToFRLang.put("fur", "frioulan");
  785. // Ga
  786. iso639_2T_ToENLang.put("gaa", "Ga");
  787. iso639_2T_ToFRLang.put("gaa", "ga");
  788. // Gayo
  789. iso639_2T_ToENLang.put("gay", "Gayo");
  790. iso639_2T_ToFRLang.put("gay", "gayo");
  791. // Gbaya
  792. iso639_2T_ToENLang.put("gba", "Gbaya");
  793. iso639_2T_ToFRLang.put("gba", "gbaya");
  794. // Germanic (Other)
  795. iso639_2T_ToENLang.put("gem", "Germanic (Other)");
  796. iso639_2T_ToFRLang.put("gem", "germaniques, autres langues");
  797. // Georgian
  798. iso639_2T_ToENLang.put("kat", "Georgian");
  799. iso639_2T_ToFRLang.put("kat", "g�orgien");
  800. iso639_2B_To_639_2T.put("geo", "kat");
  801. iso639_1_To_639_2T.put("ka", "kat");
  802. // German
  803. iso639_2T_ToENLang.put("deu", "German");
  804. iso639_2T_ToFRLang.put("deu", "allemand");
  805. iso639_2B_To_639_2T.put("ger", "deu");
  806. iso639_1_To_639_2T.put("de", "deu");
  807. // Geez
  808. iso639_2T_ToENLang.put("gez", "Geez");
  809. iso639_2T_ToFRLang.put("gez", "gu�ze");
  810. // Gilbertese
  811. iso639_2T_ToENLang.put("gil", "Gilbertese");
  812. iso639_2T_ToFRLang.put("gil", "kiribati");
  813. // Gaelic; Scottish Gaelic
  814. iso639_2T_ToENLang.put("gla", "Gaelic; Scottish Gaelic");
  815. iso639_2T_ToFRLang.put("gla", "ga�lique; ga�lique �cossais");
  816. iso639_1_To_639_2T.put("gd", "gla");
  817. // Irish
  818. iso639_2T_ToENLang.put("gle", "Irish");
  819. iso639_2T_ToFRLang.put("gle", "irlandais");
  820. iso639_1_To_639_2T.put("ga", "gle");
  821. // Gallegan
  822. iso639_2T_ToENLang.put("glg", "Gallegan");
  823. iso639_2T_ToFRLang.put("glg", "galicien");
  824. iso639_1_To_639_2T.put("gl", "glg");
  825. // Manx
  826. iso639_2T_ToENLang.put("glv", "Manx");
  827. iso639_2T_ToFRLang.put("glv", " manx; mannois");
  828. iso639_1_To_639_2T.put("gv", "glv");
  829. // German, Middle High (ca.1050-1500)
  830. iso639_2T_ToENLang.put("gmh", "German, Middle High (ca.1050-1500)");
  831. iso639_2T_ToFRLang.put("gmh", "allemand, moyen haut (ca. 1050-1500)");
  832. // German, Old High (ca.750-1050)
  833. iso639_2T_ToENLang.put("goh", "German, Old High (ca.750-1050)");
  834. iso639_2T_ToFRLang.put("goh", "allemand, vieux haut (ca. 750-1050)");
  835. // Gondi
  836. iso639_2T_ToENLang.put("gon", "Gondi");
  837. iso639_2T_ToFRLang.put("gon", "gond");
  838. // Gorontalo
  839. iso639_2T_ToENLang.put("gor", "Gorontalo");
  840. iso639_2T_ToFRLang.put("gor", "gorontalo");
  841. // Gothic
  842. iso639_2T_ToENLang.put("got", "Gothic");
  843. iso639_2T_ToFRLang.put("got", "gothique");
  844. // Grebo
  845. iso639_2T_ToENLang.put("grb", "Grebo");
  846. iso639_2T_ToFRLang.put("grb", "grebo");
  847. // Greek, Ancient (to 1453)
  848. iso639_2T_ToENLang.put("grc", "Greek, Ancient (to 1453)");
  849. iso639_2T_ToFRLang.put("grc", "grec ancien (jusqu'� 1453)");
  850. // Greek, Modern (1453-)
  851. iso639_2T_ToENLang.put("ell", "Greek, Modern (1453-)");
  852. iso639_2T_ToFRLang.put("ell", "grec moderne (apr�s 1453)");
  853. iso639_2B_To_639_2T.put("gre", "ell");
  854. iso639_1_To_639_2T.put("el", "ell");
  855. // Guarani
  856. iso639_2T_ToENLang.put("grn", "Guarani");
  857. iso639_2T_ToFRLang.put("grn", "guarani");
  858. iso639_1_To_639_2T.put("gn", "grn");
  859. // Gujarati
  860. iso639_2T_ToENLang.put("guj", "Gujarati");
  861. iso639_2T_ToFRLang.put("guj", "goudjrati");
  862. iso639_1_To_639_2T.put("gu", "guj");
  863. // Gwich�in
  864. iso639_2T_ToENLang.put("gwi", "Gwich�in");
  865. iso639_2T_ToFRLang.put("gwi", "gwich�in");
  866. // Haida
  867. iso639_2T_ToENLang.put("hai", "Haida");
  868. iso639_2T_ToFRLang.put("hai", "haida");
  869. // Hausa
  870. iso639_2T_ToENLang.put("hau", "Hausa");
  871. iso639_2T_ToFRLang.put("hau", "haoussa");
  872. iso639_1_To_639_2T.put("ha", "hau");
  873. // Hawaiian
  874. iso639_2T_ToENLang.put("haw", "Hawaiian");
  875. iso639_2T_ToFRLang.put("haw", "hawa�en");
  876. // Hebrew
  877. iso639_2T_ToENLang.put("heb", "Hebrew");
  878. iso639_2T_ToFRLang.put("heb", "h�breu");
  879. iso639_1_To_639_2T.put("he", "heb");
  880. // Herero
  881. iso639_2T_ToENLang.put("her", "Herero");
  882. iso639_2T_ToFRLang.put("her", "herero");
  883. iso639_1_To_639_2T.put("hz", "her");
  884. // Hiligaynon
  885. iso639_2T_ToENLang.put("hil", "Hiligaynon");
  886. iso639_2T_ToFRLang.put("hil", "hiligaynon");
  887. // Himachali
  888. iso639_2T_ToENLang.put("him", "Himachali");
  889. iso639_2T_ToFRLang.put("him", "himachali");
  890. // Hindi
  891. iso639_2T_ToENLang.put("hin", "Hindi ");
  892. iso639_2T_ToFRLang.put("hin", "hindi");
  893. iso639_1_To_639_2T.put("hi", "hin");
  894. // Hittite
  895. iso639_2T_ToENLang.put("hit", "Hittite");
  896. iso639_2T_ToFRLang.put("hit", "hittite");
  897. // Hmong
  898. iso639_2T_ToENLang.put("hmn", "Hmong");
  899. iso639_2T_ToFRLang.put("hmn", "hmong");
  900. // Hiri Motu
  901. iso639_2T_ToENLang.put("hmo", "Hiri Motu");
  902. iso639_2T_ToFRLang.put("hmo", "hiri motu");
  903. iso639_1_To_639_2T.put("ho", "hmo");
  904. // Croatian
  905. iso639_2T_ToENLang.put("hrv", "Croatian");
  906. iso639_2T_ToFRLang.put("hrv", "croate");
  907. iso639_2B_To_639_2T.put("scr", "hrv");
  908. iso639_1_To_639_2T.put("hr", "hrv");
  909. // Hungarian
  910. iso639_2T_ToENLang.put("hun", "Hungarian");
  911. iso639_2T_ToFRLang.put("hun", "hongrois");
  912. iso639_1_To_639_2T.put("hu", "hun");
  913. // Hupa
  914. iso639_2T_ToENLang.put("hup", "Hupa");
  915. iso639_2T_ToFRLang.put("hup", "hupa");
  916. // Armenian
  917. iso639_2T_ToENLang.put("hye", "Armenian");
  918. iso639_2T_ToFRLang.put("hye", "arm�nien");
  919. iso639_2B_To_639_2T.put("arm", "hye");
  920. iso639_1_To_639_2T.put("hy", "hye");
  921. // Iban
  922. iso639_2T_ToENLang.put("iba", "Iban");
  923. iso639_2T_ToFRLang.put("iba", "iban");
  924. // Igbo
  925. iso639_2T_ToENLang.put("ibo", "Igbo");
  926. iso639_2T_ToFRLang.put("ibo", "igbo");
  927. // Icelandic
  928. iso639_2T_ToENLang.put("isl", "Icelandic");
  929. iso639_2T_ToFRLang.put("isl", "islandais");
  930. iso639_2B_To_639_2T.put("ice", "isl");
  931. iso639_1_To_639_2T.put("is", "isl");
  932. // Ido
  933. iso639_2T_ToENLang.put("ido", "Ido");
  934. iso639_2T_ToFRLang.put("ido", "ido");
  935. iso639_1_To_639_2T.put("io", "ido");
  936. // Ijo
  937. iso639_2T_ToENLang.put("ijo", "Ijo");
  938. iso639_2T_ToFRLang.put("ijo", "ijo");
  939. // Inuktitut
  940. iso639_2T_ToENLang.put("iku", "Inuktitut");
  941. iso639_2T_ToFRLang.put("iku", "inuktitut");
  942. iso639_1_To_639_2T.put("iu", "iku");
  943. // Interlingue
  944. iso639_2T_ToENLang.put("ile", "Interlingue");
  945. iso639_2T_ToFRLang.put("ile", "interlingue");
  946. iso639_1_To_639_2T.put("ie", "ile");
  947. // Iloko
  948. iso639_2T_ToENLang.put("ilo", "Iloko");
  949. iso639_2T_ToFRLang.put("ilo", "ilocano");
  950. // Interlingua (International Auxiliary Language Association)
  951. iso639_2T_ToENLang.put("ina", "Interlingua (International Auxiliary Language Association)");
  952. iso639_2T_ToFRLang.put("ina", "interlingua (langue auxiliaire internationale)");
  953. iso639_1_To_639_2T.put("ia", "ina");
  954. // Indic (Other)
  955. iso639_2T_ToENLang.put("inc", "Indic (Other)");
  956. iso639_2T_ToFRLang.put("inc", "indo-aryennes, autres langues");
  957. // Indonesian
  958. iso639_2T_ToENLang.put("ind", "Indonesian");
  959. iso639_2T_ToFRLang.put("ind", "indon�sien");
  960. iso639_1_To_639_2T.put("id", "ind");
  961. // Indo-European (Other)
  962. iso639_2T_ToENLang.put("ine", "Indo-European (Other)");
  963. iso639_2T_ToFRLang.put("ine", "indo-europ�ennes, autres langues");
  964. // Inupiaq
  965. iso639_2T_ToENLang.put("ipk", "Inupiaq");
  966. iso639_2T_ToFRLang.put("ipk", "inupiaq");
  967. iso639_1_To_639_2T.put("ik", "ipk");
  968. // Iranian (Other)
  969. iso639_2T_ToENLang.put("ira", "Iranian (Other)");
  970. iso639_2T_ToFRLang.put("ira", "iraniennes, autres langues");
  971. // Iroquoian languages
  972. iso639_2T_ToENLang.put("iro", "Iroquoian languages");
  973. iso639_2T_ToFRLang.put("iro", "iroquoises, langues (famille)");
  974. // Icelandic
  975. iso639_2T_ToENLang.put("isl", "Icelandic");
  976. iso639_2T_ToFRLang.put("isl", "islandais");
  977. iso639_2B_To_639_2T.put("ice", "isl");
  978. iso639_1_To_639_2T.put("is", "isl");
  979. // Italian
  980. iso639_2T_ToENLang.put("ita", "Italian");
  981. iso639_2T_ToFRLang.put("ita", "italien");
  982. iso639_1_To_639_2T.put("it", "ita");
  983. // Javanese
  984. iso639_2T_ToENLang.put("jav", "Javanese");
  985. iso639_2T_ToFRLang.put("jav", "javanais");
  986. iso639_1_To_639_2T.put("jv", "jav");
  987. // Japanese
  988. iso639_2T_ToENLang.put("jpn", "Japanese");
  989. iso639_2T_ToFRLang.put("jpn", "japonais");
  990. iso639_1_To_639_2T.put("ja", "jpn");
  991. // Judeo-Persian
  992. iso639_2T_ToENLang.put("jpr", "Judeo-Persian");
  993. iso639_2T_ToFRLang.put("jpr", "jud�o-persan");
  994. // Judeo-Arabic
  995. iso639_2T_ToENLang.put("jrb", "Judeo-Arabic");
  996. iso639_2T_ToFRLang.put("jrb", "jud�o-arabe");
  997. // Kara-Kalpak
  998. iso639_2T_ToENLang.put("kaa", "Kara-Kalpak");
  999. iso639_2T_ToFRLang.put("kaa", "karakalpak");
  1000. // Kabyle
  1001. iso639_2T_ToENLang.put("kab", "Kabyle");
  1002. iso639_2T_ToFRLang.put("kab", "kabyle");
  1003. // Kachin
  1004. iso639_2T_ToENLang.put("kac", "Kachin");
  1005. iso639_2T_ToFRLang.put("kac", "kachin");
  1006. // Kalaallisut
  1007. iso639_2T_ToENLang.put("kal", "Kalaallisut");
  1008. iso639_2T_ToFRLang.put("kal", "groenlandais");
  1009. iso639_1_To_639_2T.put("kl", "kal");
  1010. // Kamba
  1011. iso639_2T_ToENLang.put("kam", "Kamba");
  1012. iso639_2T_ToFRLang.put("kam", "kamba");
  1013. // Kannada
  1014. iso639_2T_ToENLang.put("kan", "Kannada");
  1015. iso639_2T_ToFRLang.put("kan", "kannada");
  1016. iso639_1_To_639_2T.put("kn", "kan");
  1017. // Karen
  1018. iso639_2T_ToENLang.put("kar", "Karen");
  1019. iso639_2T_ToFRLang.put("kar", "karen");
  1020. // Kashmiri
  1021. iso639_2T_ToENLang.put("kas", "Kashmiri");
  1022. iso639_2T_ToFRLang.put("kas", "kashmiri");
  1023. iso639_1_To_639_2T.put("ks", "kas");
  1024. // Georgian
  1025. iso639_2T_ToENLang.put("kat", "Georgian");
  1026. iso639_2T_ToFRLang.put("kat", "g�orgien");
  1027. iso639_2B_To_639_2T.put("geo", "kat");
  1028. iso639_1_To_639_2T.put("ka", "kat");
  1029. // Kanuri
  1030. iso639_2T_ToENLang.put("kau", "Kanuri");
  1031. iso639_2T_ToFRLang.put("kau", "kanouri");
  1032. // Kawi
  1033. iso639_2T_ToENLang.put("kaw", "Kawi");
  1034. iso639_2T_ToFRLang.put("kaw", "kawi");
  1035. // Kazakh
  1036. iso639_2T_ToENLang.put("kaz", "Kazakh");
  1037. iso639_2T_ToFRLang.put("kaz", "kazakh");
  1038. iso639_1_To_639_2T.put("kk", "kaz");
  1039. // Khasi
  1040. iso639_2T_ToENLang.put("kha", "Khasi");
  1041. iso639_2T_ToFRLang.put("kha", "khasi");
  1042. // Khoisan (Other)
  1043. iso639_2T_ToENLang.put("khi", "Khoisan (Other)");
  1044. iso639_2T_ToFRLang.put("khi", "khoisan, autres langues");
  1045. // Khmer
  1046. iso639_2T_ToENLang.put("khm", "Khmer");
  1047. iso639_2T_ToFRLang.put("khm", "khmer");
  1048. iso639_1_To_639_2T.put("km", "khm");
  1049. // Khotanese
  1050. iso639_2T_ToENLang.put("kho", "Khotanese");
  1051. iso639_2T_ToFRLang.put("kho", "khotanais");
  1052. // Kikuyu; Gikuyu
  1053. iso639_2T_ToENLang.put("kik", "Kikuyu; Gikuyu");
  1054. iso639_2T_ToFRLang.put("kik", "kikuyu");
  1055. iso639_1_To_639_2T.put("ki", "kik");
  1056. // Kinyarwanda
  1057. iso639_2T_ToENLang.put("kin", "Kinyarwanda");
  1058. iso639_2T_ToFRLang.put("kin", "rwanda");
  1059. iso639_1_To_639_2T.put("rw", "kin");
  1060. // Kirghiz
  1061. iso639_2T_ToENLang.put("kir", "Kirghiz");
  1062. iso639_2T_ToFRLang.put("kir", "kirghize");
  1063. iso639_1_To_639_2T.put("ky", "kir");
  1064. // Kimbundu
  1065. iso639_2T_ToENLang.put("kmb", "Kimbundu");
  1066. iso639_2T_ToFRLang.put("kmb", "kimbundu");
  1067. // Konkani
  1068. iso639_2T_ToENLang.put("kok", "Konkani");
  1069. iso639_2T_ToFRLang.put("kok", "konkani");
  1070. // Komi
  1071. iso639_2T_ToENLang.put("kom", "Komi");
  1072. iso639_2T_ToFRLang.put("kom", "kom");
  1073. iso639_1_To_639_2T.put("kv", "kom");
  1074. // Kongo
  1075. iso639_2T_ToENLang.put("kon", "Kongo");
  1076. iso639_2T_ToFRLang.put("kon", "kongo");
  1077. // Korean
  1078. iso639_2T_ToENLang.put("kor", "Korean");
  1079. iso639_2T_ToFRLang.put("kor", "cor�en");
  1080. iso639_1_To_639_2T.put("ko", "kor");
  1081. // Kosraean
  1082. iso639_2T_ToENLang.put("kos", "Kosraean");
  1083. iso639_2T_ToFRLang.put("kos", "kosrae");
  1084. // Kpelle
  1085. iso639_2T_ToENLang.put("kpe", "Kpelle");
  1086. iso639_2T_ToFRLang.put("kpe", "kpell�");
  1087. // Kru
  1088. iso639_2T_ToENLang.put("kro", "Kru");
  1089. iso639_2T_ToFRLang.put("kro", "krou");
  1090. // Kurukh
  1091. iso639_2T_ToENLang.put("kru", "Kurukh");
  1092. iso639_2T_ToFRLang.put("kru", "kurukh");
  1093. // Kuanyama; Kwanyama
  1094. iso639_2T_ToENLang.put("kua", "Kuanyama; Kwanyama");
  1095. iso639_2T_ToFRLang.put("kua", "kuanyama; kwanyama");
  1096. iso639_1_To_639_2T.put("kj", "kua");
  1097. // Kumyk
  1098. iso639_2T_ToENLang.put("kum", "Kumyk");
  1099. iso639_2T_ToFRLang.put("kum", "koumyk");
  1100. // Kurdish
  1101. iso639_2T_ToENLang.put("kur", "Kurdish");
  1102. iso639_2T_ToFRLang.put("kur", "kurde");
  1103. iso639_1_To_639_2T.put("ku", "kur");
  1104. // Kutenai
  1105. iso639_2T_ToENLang.put("kut", "Kutenai");
  1106. iso639_2T_ToFRLang.put("kut", "kutenai");
  1107. // Ladino
  1108. iso639_2T_ToENLang.put("lad", "Ladino");
  1109. iso639_2T_ToFRLang.put("lad", "jud�o-espagnol");
  1110. // Lahnda
  1111. iso639_2T_ToENLang.put("lah", "Lahnda");
  1112. iso639_2T_ToFRLang.put("lah", "lahnda");
  1113. // Lamba
  1114. iso639_2T_ToENLang.put("lam", "Lamba");
  1115. iso639_2T_ToFRLang.put("lam", "lamba");
  1116. // Lao
  1117. iso639_2T_ToENLang.put("lao", "Lao");
  1118. iso639_2T_ToFRLang.put("lao", "lao");
  1119. iso639_1_To_639_2T.put("lo", "lao");
  1120. // Latin
  1121. iso639_2T_ToENLang.put("lat", "Latin");
  1122. iso639_2T_ToFRLang.put("lat", "latin");
  1123. iso639_1_To_639_2T.put("la", "lat");
  1124. // Latvian
  1125. iso639_2T_ToENLang.put("lav", "Latvian");
  1126. iso639_2T_ToFRLang.put("lav", "letton");
  1127. iso639_1_To_639_2T.put("lv", "lav");
  1128. // Lezghian
  1129. iso639_2T_ToENLang.put("lez", "Lezghian");
  1130. iso639_2T_ToFRLang.put("lez", "lezghien");
  1131. // Limburgan; Limburger; Limburgish
  1132. iso639_2T_ToENLang.put("lim", "Limburgan; Limburger; Limburgish");
  1133. iso639_2T_ToFRLang.put("lim", "limbourgeois");
  1134. iso639_1_To_639_2T.put("li", "lim");
  1135. // Lingala
  1136. iso639_2T_ToENLang.put("lin", "Lingala");
  1137. iso639_2T_ToFRLang.put("lin", "lingala");
  1138. iso639_1_To_639_2T.put("ln", "lin");
  1139. // Lithuanian
  1140. iso639_2T_ToENLang.put("lit", "Lithuanian");
  1141. iso639_2T_ToFRLang.put("lit", "lituanien");
  1142. iso639_1_To_639_2T.put("lt", "lit");
  1143. // Mongo
  1144. iso639_2T_ToENLang.put("lol", "Mongo");
  1145. iso639_2T_ToFRLang.put("lol", "mongo");
  1146. // Lozi
  1147. iso639_2T_ToENLang.put("loz", "Lozi");
  1148. iso639_2T_ToFRLang.put("loz", "lozi");
  1149. // Luxembourgish; Letzeburgesch
  1150. iso639_2T_ToENLang.put("ltz", "Luxembourgish; Letzeburgesch");
  1151. iso639_2T_ToFRLang.put("ltz", "luxembourgeois");
  1152. iso639_1_To_639_2T.put("lb", "ltz");
  1153. // Luba-Lulua
  1154. iso639_2T_ToENLang.put("lua", "Luba-Lulua");
  1155. iso639_2T_ToFRLang.put("lua", "luba-lulua");
  1156. // Luba-Katanga
  1157. iso639_2T_ToENLang.put("lub", "Luba-Katanga");
  1158. iso639_2T_ToFRLang.put("lub", "luba-katanga");
  1159. // Ganda
  1160. iso639_2T_ToENLang.put("lug", "Ganda");
  1161. iso639_2T_ToFRLang.put("lug", "ganda");
  1162. // Luiseno
  1163. iso639_2T_ToENLang.put("lui", "Luiseno");
  1164. iso639_2T_ToFRLang.put("lui", "luiseno");
  1165. // Lunda
  1166. iso639_2T_ToENLang.put("lun", "Lunda");
  1167. iso639_2T_ToFRLang.put("lun", "lunda");
  1168. // Luo (Kenya and Tanzania)
  1169. iso639_2T_ToENLang.put("luo", "Luo (Kenya and Tanzania)");
  1170. iso639_2T_ToFRLang.put("luo", "luo (Kenya et Tanzanie)");
  1171. // lushai
  1172. iso639_2T_ToENLang.put("lus", "lushai");
  1173. iso639_2T_ToFRLang.put("lus", "Lushai");
  1174. // Macedonian
  1175. iso639_2T_ToENLang.put("mkd", "Macedonian");
  1176. iso639_2T_ToFRLang.put("mkd", "mac�donien");
  1177. iso639_2B_To_639_2T.put("mac", "mkd");
  1178. iso639_1_To_639_2T.put("mk", "mkd");
  1179. // Madurese
  1180. iso639_2T_ToENLang.put("mad", "Madurese");
  1181. iso639_2T_ToFRLang.put("mad", "madourais");
  1182. // Magahi
  1183. iso639_2T_ToENLang.put("mag", "Magahi");
  1184. iso639_2T_ToFRLang.put("mag", "magahi");
  1185. // Marshallese
  1186. iso639_2T_ToENLang.put("mah", "Marshallese");
  1187. iso639_2T_ToFRLang.put("mah", "marshall");
  1188. iso639_1_To_639_2T.put("mh", "mah");
  1189. // Maithili
  1190. iso639_2T_ToENLang.put("mai", "Maithili");
  1191. iso639_2T_ToFRLang.put("mai", "maithili");
  1192. // Makasar
  1193. iso639_2T_ToENLang.put("mak", "Makasar");
  1194. iso639_2T_ToFRLang.put("mak", "makassar");
  1195. // Malayalam
  1196. iso639_2T_ToENLang.put("mal", "Malayalam");
  1197. iso639_2T_ToFRLang.put("mal", "malayalam");
  1198. iso639_1_To_639_2T.put("ml", "mal");
  1199. // Mandingo
  1200. iso639_2T_ToENLang.put("man", "Mandingo");
  1201. iso639_2T_ToFRLang.put("man", "mandingue");
  1202. // Maori
  1203. iso639_2T_ToENLang.put("mri", "Maori");
  1204. iso639_2T_ToFRLang.put("mri", "maori");
  1205. iso639_2B_To_639_2T.put("mao", "mri");
  1206. iso639_1_To_639_2T.put("mi", "mri");
  1207. // Austronesian (Other)
  1208. iso639_2T_ToENLang.put("map", "Austronesian (Other)");
  1209. iso639_2T_ToFRLang.put("map", "malayo-polyn�siennes,autres langues");
  1210. // Marathi
  1211. iso639_2T_ToENLang.put("mar", "Marathi");
  1212. iso639_2T_ToFRLang.put("mar", "marathe");
  1213. iso639_1_To_639_2T.put("mr", "mar");
  1214. // Masai
  1215. iso639_2T_ToENLang.put("mas", "Masai");
  1216. iso639_2T_ToFRLang.put("mas", "massa�");
  1217. // Malay
  1218. iso639_2T_ToENLang.put("msa", "Malay");
  1219. iso639_2T_ToFRLang.put("msa", "malais");
  1220. iso639_2B_To_639_2T.put("may", "msa");
  1221. iso639_1_To_639_2T.put("ms", "msa");
  1222. // Mandar
  1223. iso639_2T_ToENLang.put("mdr", "Mandar");
  1224. iso639_2T_ToFRLang.put("mdr", "mandar");
  1225. // Mende
  1226. iso639_2T_ToENLang.put("men", "Mende");
  1227. iso639_2T_ToFRLang.put("men", "mend�");
  1228. // Irish, Middle (900-1200)
  1229. iso639_2T_ToENLang.put("mga", "Irish, Middle (900-1200)");
  1230. iso639_2T_ToFRLang.put("mga", "irlandais moyen (900-1200)");
  1231. // Micmac
  1232. iso639_2T_ToENLang.put("mic", "Micmac");
  1233. iso639_2T_ToFRLang.put("mic", "micmac");
  1234. // Minangkabau
  1235. iso639_2T_ToENLang.put("min", "Minangkabau");
  1236. iso639_2T_ToFRLang.put("min", "minangkabau");
  1237. // Miscellaneous languages
  1238. iso639_2T_ToENLang.put("mis", "Miscellaneous languages");
  1239. iso639_2T_ToFRLang.put("mis", "diverses, langues");
  1240. // Macedonian
  1241. iso639_2T_ToENLang.put("mkd", "Macedonian");
  1242. iso639_2T_ToFRLang.put("mkd", "mac�donien");
  1243. iso639_2B_To_639_2T.put("mac", "mkd");
  1244. iso639_1_To_639_2T.put("mk", "mkd");
  1245. // Mon-Khmer (Other)
  1246. iso639_2T_ToENLang.put("mkh", "Mon-Khmer (Other)");
  1247. iso639_2T_ToFRLang.put("mkh", "m�n-khmer, autres langues");
  1248. // Malagasy
  1249. iso639_2T_ToENLang.put("mlg", "Malagasy");
  1250. iso639_2T_ToFRLang.put("mlg", "malgache");
  1251. iso639_1_To_639_2T.put("mg", "mlg");
  1252. // Maltese
  1253. iso639_2T_ToENLang.put("mlt", "Maltese");
  1254. iso639_2T_ToFRLang.put("mlt", "maltais");
  1255. iso639_1_To_639_2T.put("mt", "mlt");
  1256. // Manchu
  1257. iso639_2T_ToENLang.put("mnc", "Manchu");
  1258. iso639_2T_ToFRLang.put("mnc", "mandchou");
  1259. // Manipuri
  1260. iso639_2T_ToENLang.put("mni", "Manipuri");
  1261. iso639_2T_ToFRLang.put("mni", "manipuri");
  1262. // Manobo languages
  1263. iso639_2T_ToENLang.put("mno", "Manobo languages ");
  1264. iso639_2T_ToFRLang.put("mno", "manobo, langues");
  1265. // Mohawk
  1266. iso639_2T_ToENLang.put("moh", "Mohawk");
  1267. iso639_2T_ToFRLang.put("moh", "mohawk");
  1268. // Moldavian
  1269. iso639_2T_ToENLang.put("mol", "Moldavian");
  1270. iso639_2T_ToFRLang.put("mol", "moldave");
  1271. iso639_1_To_639_2T.put("mo", "mol");
  1272. // Mongolian
  1273. iso639_2T_ToENLang.put("mon", "Mongolian");
  1274. iso639_2T_ToFRLang.put("mon", "mongol");
  1275. iso639_1_To_639_2T.put("mn", "mon");
  1276. // Mossi
  1277. iso639_2T_ToENLang.put("mos", "Mossi");
  1278. iso639_2T_ToFRLang.put("mos", "mor�");
  1279. // Maori
  1280. iso639_2T_ToENLang.put("mri", "Maori");
  1281. iso639_2T_ToFRLang.put("mri", "maori");
  1282. iso639_2B_To_639_2T.put("mao", "mri");
  1283. iso639_1_To_639_2T.put("mi", "mri");
  1284. // Malay
  1285. iso639_2T_ToENLang.put("msa", "Malay");
  1286. iso639_2T_ToFRLang.put("msa", "malais");
  1287. iso639_2B_To_639_2T.put("may", "msa");
  1288. iso639_1_To_639_2T.put("ms", "msa");
  1289. // Multiple languages
  1290. iso639_2T_ToENLang.put("mul", "Multiple languages");
  1291. iso639_2T_ToFRLang.put("mul", "multilingue");
  1292. // Munda languages
  1293. iso639_2T_ToENLang.put("mun", "Munda languages");
  1294. iso639_2T_ToFRLang.put("mun", "mounda, langues");
  1295. // Creek
  1296. iso639_2T_ToENLang.put("mus", "Creek");
  1297. iso639_2T_ToFRLang.put("mus", "muskogee");
  1298. // Marwari
  1299. iso639_2T_ToENLang.put("mwr", "Marwari");
  1300. iso639_2T_ToFRLang.put("mwr", "marvari");
  1301. // Burmese
  1302. iso639_2T_ToENLang.put("mya", "Burmese");
  1303. iso639_2T_ToFRLang.put("mya", "birman");
  1304. iso639_2B_To_639_2T.put("bur", "mya");
  1305. iso639_1_To_639_2T.put("my", "mya");
  1306. // Mayan languages
  1307. iso639_2T_ToENLang.put("myn", "Mayan languages");
  1308. iso639_2T_ToFRLang.put("myn", "maya, langues");
  1309. // Nahuatl
  1310. iso639_2T_ToENLang.put("nah", "Nahuatl");
  1311. iso639_2T_ToFRLang.put("nah", "nahuatl");
  1312. // North American Indian
  1313. iso639_2T_ToENLang.put("nai", "North American Indian");
  1314. iso639_2T_ToFRLang.put("nai", "indiennes d'Am�rique du Nord, autres langues");
  1315. // Neapolitan
  1316. iso639_2T_ToENLang.put("nap", "Neapolitan");
  1317. iso639_2T_ToFRLang.put("nap", "napolitain");
  1318. // Nauru
  1319. iso639_2T_ToENLang.put("nau", "Nauru");
  1320. iso639_2T_ToFRLang.put("nau", "nauruan");
  1321. iso639_1_To_639_2T.put("na", "nau");
  1322. // Navajo; Navaho
  1323. iso639_2T_ToENLang.put("nav", "Navajo; Navaho");
  1324. iso639_2T_ToFRLang.put("nav", "navaho");
  1325. iso639_1_To_639_2T.put("nv", "nav");
  1326. // Ndebele, South; South Ndebele
  1327. iso639_2T_ToENLang.put("nbl", "Ndebele, South; South Ndebele");
  1328. iso639_2T_ToFRLang.put("nbl", "nd�b�l� du Sud");
  1329. iso639_1_To_639_2T.put("nr", "nbl");
  1330. // Ndebele, North; North Ndebele
  1331. iso639_2T_ToENLang.put("nde", "Ndebele, North; North Ndebele");
  1332. iso639_2T_ToFRLang.put("nde", "nd�b�l� du Nord");
  1333. iso639_1_To_639_2T.put("nd", "nde");
  1334. // Ndonga
  1335. iso639_2T_ToENLang.put("ndo", "Ndonga");
  1336. iso639_2T_ToFRLang.put("ndo", "ndonga");
  1337. iso639_1_To_639_2T.put("ng", "ndo");
  1338. // Low German; Low Saxon; German, Low; Saxon, Low
  1339. iso639_2T_ToENLang.put("nds", "Low German; Low Saxon; German, Low; Saxon, Low");
  1340. iso639_2T_ToFRLang.put("nds", "bas allemand; bas saxon; allemand, bas; saxon, bas");
  1341. // Nepali
  1342. iso639_2T_ToENLang.put("nep", "Nepali");
  1343. iso639_2T_ToFRLang.put("nep", "n�palais");
  1344. iso639_1_To_639_2T.put("ne", "nep");
  1345. // Newari
  1346. iso639_2T_ToENLang.put("new", "Newari");
  1347. iso639_2T_ToFRLang.put("new", "newari");
  1348. // Nias
  1349. iso639_2T_ToENLang.put("nia", "Nias");
  1350. iso639_2T_ToFRLang.put("nia", "nias");
  1351. // Niger-Kordofanian (Other)
  1352. iso639_2T_ToENLang.put("nic", "Niger-Kordofanian (Other)");
  1353. iso639_2T_ToFRLang.put("nic", "nig�ro-congolaises, autres langues");
  1354. // Niuean
  1355. iso639_2T_ToENLang.put("niu", "Niuean");
  1356. iso639_2T_ToFRLang.put("niu", "niu�");
  1357. // Dutch
  1358. iso639_2T_ToENLang.put("nld", "Dutch");
  1359. iso639_2T_ToFRLang.put("nld", "n�erlandais");
  1360. iso639_2B_To_639_2T.put("dut", "nld");
  1361. iso639_1_To_639_2T.put("nl", "nld");
  1362. // Norse, Old
  1363. iso639_2T_ToENLang.put("non", "Norse, Old");
  1364. iso639_2T_ToFRLang.put("non", "norrois, vieux");
  1365. // Norwegian
  1366. iso639_2T_ToENLang.put("nor", "Norwegian");
  1367. iso639_2T_ToFRLang.put("nor", "norv�gien");
  1368. iso639_1_To_639_2T.put("no", "nor");
  1369. // Norwegian Nynorsk; Nynorsk, Norwegian
  1370. iso639_2T_ToENLang.put("nno", "Norwegian Nynorsk; Nynorsk, Norwegian");
  1371. iso639_2T_ToFRLang.put("nno", "norv�gien nynorsk; nynorsk, norv�gien ");
  1372. iso639_1_To_639_2T.put("nn", "nno");
  1373. // Norwegian Bokm�l; Bokm�l, Norwegian
  1374. iso639_2T_ToENLang.put("nob", "Norwegian Bokm�l; Bokm�l, Norwegian");
  1375. iso639_2T_ToFRLang.put("nob", "norv�gien bokm�l; bokm�l, norv�gien");
  1376. iso639_1_To_639_2T.put("nb", "nob");
  1377. // Sotho, Northern
  1378. iso639_2T_ToENLang.put("nso", "Sotho, Northern");
  1379. iso639_2T_ToFRLang.put("nso", "sotho du Nord");
  1380. // Nubian languages
  1381. iso639_2T_ToENLang.put("nub", "Nubian languages");
  1382. iso639_2T_ToFRLang.put("nub", "nubiennes, langues");
  1383. // Chichewa; Chewa; Nyanja
  1384. iso639_2T_ToENLang.put("nya", " Chichewa; Chewa; Nyanja");
  1385. iso639_2T_ToFRLang.put("nya", "chichewa; chewa; nyanja");
  1386. iso639_1_To_639_2T.put("ny", "nya");
  1387. // Nyamwezi
  1388. iso639_2T_ToENLang.put("nym", "Nyamwezi");
  1389. iso639_2T_ToFRLang.put("nym", "nyamwezi");
  1390. // Nyankole
  1391. iso639_2T_ToENLang.put("nyn", "Nyankole");
  1392. iso639_2T_ToFRLang.put("nyn", "nyankol�");
  1393. // Nyoro
  1394. iso639_2T_ToENLang.put("nyo", "Nyoro");
  1395. iso639_2T_ToFRLang.put("nyo", "nyoro");
  1396. // Nzima
  1397. iso639_2T_ToENLang.put("nzi", "Nzima");
  1398. iso639_2T_ToFRLang.put("nzi", "nzema");
  1399. // Occitan (post 1500); Proven�al
  1400. iso639_2T_ToENLang.put("oci", "Occitan (post 1500); Proven�al");
  1401. iso639_2T_ToFRLang.put("oci", "occitan (apr�s 1500); proven�al");
  1402. iso639_1_To_639_2T.put("oc", "oci");
  1403. // Ojibwa
  1404. iso639_2T_ToENLang.put("oji", "Ojibwa");
  1405. iso639_2T_ToFRLang.put("oji", "ojibwa");
  1406. // Oriya
  1407. iso639_2T_ToENLang.put("ori", "Oriya");
  1408. iso639_2T_ToFRLang.put("ori", "oriya");
  1409. iso639_1_To_639_2T.put("or", "ori");
  1410. // Oromo
  1411. iso639_2T_ToENLang.put("orm", "Oromo");
  1412. iso639_2T_ToFRLang.put("orm", "galla");
  1413. iso639_1_To_639_2T.put("om", "orm");
  1414. // Osage
  1415. iso639_2T_ToENLang.put("osa", "Osage");
  1416. iso639_2T_ToFRLang.put("osa", "osage");
  1417. // Ossetian; Ossetic
  1418. iso639_2T_ToENLang.put("oss", "Ossetian; Ossetic");
  1419. iso639_2T_ToFRLang.put("oss", "oss�te");
  1420. iso639_1_To_639_2T.put("os", "oss");
  1421. // Turkish, Ottoman (1500-1928)
  1422. iso639_2T_ToENLang.put("ota", "Turkish, Ottoman (1500-1928)");
  1423. iso639_2T_ToFRLang.put("ota", "turc ottoman (1500-1928)");
  1424. // Otomian languages
  1425. iso639_2T_ToENLang.put("oto", "Otomian languages");
  1426. iso639_2T_ToFRLang.put("oto", "otomangue, langues");
  1427. // Papuan (Other)
  1428. iso639_2T_ToENLang.put("paa", "Papuan (Other)");
  1429. iso639_2T_ToFRLang.put("paa", "papoues, autres langues");
  1430. // Pangasinan
  1431. iso639_2T_ToENLang.put("pag", "Pangasinan");
  1432. iso639_2T_ToFRLang.put("pag", "pangasinan");
  1433. // Pahlavi
  1434. iso639_2T_ToENLang.put("pal", "Pahlavi");
  1435. iso639_2T_ToFRLang.put("pal", "pahlavi");
  1436. // Pampanga
  1437. iso639_2T_ToENLang.put("pam", "Pampanga");
  1438. iso639_2T_ToFRLang.put("pam", "pampangan");
  1439. // Panjabi
  1440. iso639_2T_ToENLang.put("pan", "Panjabi");
  1441. iso639_2T_ToFRLang.put("pan", "pendjabi");
  1442. iso639_1_To_639_2T.put("pa", "pan");
  1443. // Papiamento
  1444. iso639_2T_ToENLang.put("pap", "Papiamento");
  1445. iso639_2T_ToFRLang.put("pap", "papiamento");
  1446. // Palauan
  1447. iso639_2T_ToENLang.put("pau", "Palauan");
  1448. iso639_2T_ToFRLang.put("pau", "palau");
  1449. // Persian, Old (ca.600-400 B.C.)
  1450. iso639_2T_ToENLang.put("peo", "Persian, Old (ca.600-400 B.C.)");
  1451. iso639_2T_ToFRLang.put("peo", "perse, vieux (ca. 600-400 av. J.-C.)");
  1452. // Persian
  1453. iso639_2T_ToENLang.put("fas", "Persian");
  1454. iso639_2T_ToFRLang.put("fas", "persan");
  1455. iso639_2B_To_639_2T.put("per", "fas");
  1456. iso639_1_To_639_2T.put("fa", "fas");
  1457. // Philippine (Other)
  1458. iso639_2T_ToENLang.put("phi", "Philippine (Other)");
  1459. iso639_2T_ToFRLang.put("phi", "philippines, autres langues");
  1460. // Phoenician
  1461. iso639_2T_ToENLang.put("phn", "Phoenician");
  1462. iso639_2T_ToFRLang.put("phn", "ph�nicien");
  1463. // Pali
  1464. iso639_2T_ToENLang.put("pli", "Pali");
  1465. iso639_2T_ToFRLang.put("pli", "pali");
  1466. iso639_1_To_639_2T.put("pi", "pli");
  1467. // Polish
  1468. iso639_2T_ToENLang.put("pol", "Polish");
  1469. iso639_2T_ToFRLang.put("pol", "polonais");
  1470. iso639_1_To_639_2T.put("pl", "pol");
  1471. // Pohnpeian
  1472. iso639_2T_ToENLang.put("pon", "Pohnpeian");
  1473. iso639_2T_ToFRLang.put("pon", "pohnpei");
  1474. // Portuguese
  1475. iso639_2T_ToENLang.put("por", "Portuguese");
  1476. iso639_2T_ToFRLang.put("por", "portugais");
  1477. iso639_1_To_639_2T.put("pt", "por");
  1478. // Prakrit languages
  1479. iso639_2T_ToENLang.put("pra", "Prakrit languages");
  1480. iso639_2T_ToFRLang.put("pra", "pr�krit");
  1481. // Proven�al, Old (to 1500)
  1482. iso639_2T_ToENLang.put("pro", "Proven�al, Old (to 1500)");
  1483. iso639_2T_ToFRLang.put("pro", "proven�al ancien (jusqu'� 1500)");
  1484. // Pushto
  1485. iso639_2T_ToENLang.put("pus", "Pushto");
  1486. iso639_2T_ToFRLang.put("pus", "pachto");
  1487. iso639_1_To_639_2T.put("ps", "pus");
  1488. // Quechua
  1489. iso639_2T_ToENLang.put("que", "Quechua");
  1490. iso639_2T_ToFRLang.put("que", "quechua");
  1491. iso639_1_To_639_2T.put("qu", "que");
  1492. // Rajasthani
  1493. iso639_2T_ToENLang.put("raj", "Rajasthani");
  1494. iso639_2T_ToFRLang.put("raj", "rajasthani");
  1495. // Rapanui
  1496. iso639_2T_ToENLang.put("rap", "Rapanui");
  1497. iso639_2T_ToFRLang.put("rap", "rapanui");
  1498. // Rarotongan
  1499. iso639_2T_ToENLang.put("rar", "Rarotongan");
  1500. iso639_2T_ToFRLang.put("rar", "rarotonga");
  1501. // Romance (Other)
  1502. iso639_2T_ToENLang.put("roa", "Romance (Other)");
  1503. iso639_2T_ToFRLang.put("roa", "romanes, autres langues");
  1504. // Raeto-Romance
  1505. iso639_2T_ToENLang.put("roh", "Raeto-Romance");
  1506. iso639_2T_ToFRLang.put("roh", "rh�to-roman");
  1507. iso639_1_To_639_2T.put("rm", "roh");
  1508. // Romany
  1509. iso639_2T_ToENLang.put("rom", "Romany");
  1510. iso639_2T_ToFRLang.put("rom", "tsigane");
  1511. // Romanian
  1512. iso639_2T_ToENLang.put("ron", "Romanian");
  1513. iso639_2T_ToFRLang.put("ron", "roumain");
  1514. iso639_2B_To_639_2T.put("rum", "ron");
  1515. iso639_1_To_639_2T.put("ro", "ron");
  1516. // Rundi
  1517. iso639_2T_ToENLang.put("run", "Rundi");
  1518. iso639_2T_ToFRLang.put("run", "rundi");
  1519. iso639_1_To_639_2T.put("rn", "run");
  1520. // Russian
  1521. iso639_2T_ToENLang.put("rus", "Russian");
  1522. iso639_2T_ToFRLang.put("rus", "russe");
  1523. iso639_1_To_639_2T.put("ru", "rus");
  1524. // Sandawe
  1525. iso639_2T_ToENLang.put("sad", "Sandawe");
  1526. iso639_2T_ToFRLang.put("sad", "sandawe");
  1527. // Sango
  1528. iso639_2T_ToENLang.put("sag", "Sango");
  1529. iso639_2T_ToFRLang.put("sag", "sango");
  1530. iso639_1_To_639_2T.put("sg", "sag");
  1531. // Yakut
  1532. iso639_2T_ToENLang.put("sah", "Yakut");
  1533. iso639_2T_ToFRLang.put("sah", "iakoute");
  1534. // South American Indian (Other)
  1535. iso639_2T_ToENLang.put("sai", "South American Indian (Other)");
  1536. iso639_2T_ToFRLang.put("sai", "indiennes d'Am�rique du Sud,autres langues");
  1537. // Salishan languages
  1538. iso639_2T_ToENLang.put("sal", "Salishan languages ");
  1539. iso639_2T_ToFRLang.put("sal", "salish, langues");
  1540. // Samaritan Aramaic
  1541. iso639_2T_ToENLang.put("sam", "Samaritan Aramaic");
  1542. iso639_2T_ToFRLang.put("sam", "samaritain");
  1543. // Sanskrit
  1544. iso639_2T_ToENLang.put("san", "Sanskrit");
  1545. iso639_2T_ToFRLang.put("san", "sanskrit");
  1546. iso639_1_To_639_2T.put("sa", "san");
  1547. // Sasak
  1548. iso639_2T_ToENLang.put("sas", "Sasak");
  1549. iso639_2T_ToFRLang.put("sas", "sasak");
  1550. // Santali
  1551. iso639_2T_ToENLang.put("sat", "Santali");
  1552. iso639_2T_ToFRLang.put("sat", "santal");
  1553. // Serbian
  1554. iso639_2T_ToENLang.put("srp", "Serbian");
  1555. iso639_2T_ToFRLang.put("srp", "serbe");
  1556. iso639_2B_To_639_2T.put("scc", "srp");
  1557. iso639_1_To_639_2T.put("sr", "srp");
  1558. // Scots
  1559. iso639_2T_ToENLang.put("sco", "Scots");
  1560. iso639_2T_ToFRLang.put("sco", "�cossais");
  1561. // Croatian
  1562. iso639_2T_ToENLang.put("hrv", "Croatian");
  1563. iso639_2T_ToFRLang.put("hrv", "croate");
  1564. iso639_2B_To_639_2T.put("scr", "hrv");
  1565. iso639_1_To_639_2T.put("hr", "hrv");
  1566. // Selkup
  1567. iso639_2T_ToENLang.put("sel", "Selkup");
  1568. iso639_2T_ToFRLang.put("sel", "selkoupe");
  1569. // Semitic (Other)
  1570. iso639_2T_ToENLang.put("sem", "Semitic (Other) ");
  1571. iso639_2T_ToFRLang.put("sem", "s�mitiques, autres langues");
  1572. // Irish, Old (to 900)
  1573. iso639_2T_ToENLang.put("sga", "Irish, Old (to 900) ");
  1574. iso639_2T_ToFRLang.put("sga", "irlandais ancien (jusqu'� 900)");
  1575. // Sign Languages
  1576. iso639_2T_ToENLang.put("sgn", "Sign Languages");
  1577. iso639_2T_ToFRLang.put("sgn", "langues des signes");
  1578. // Shan
  1579. iso639_2T_ToENLang.put("shn", "Shan");
  1580. iso639_2T_ToFRLang.put("shn", "chan");
  1581. // Sidamo
  1582. iso639_2T_ToENLang.put("sid", "Sidamo");
  1583. iso639_2T_ToFRLang.put("sid", "sidamo");
  1584. // Sinhalese
  1585. iso639_2T_ToENLang.put("sin", "Sinhalese");
  1586. iso639_2T_ToFRLang.put("sin", "singhalais");
  1587. iso639_1_To_639_2T.put("si", "sin");
  1588. // Siouan languages
  1589. iso639_2T_ToENLang.put("sio", "Siouan languages ");
  1590. iso639_2T_ToFRLang.put("sio", "sioux, langues");
  1591. // Sino-Tibetan (Other)
  1592. iso639_2T_ToENLang.put("sit", "Sino-Tibetan (Other)");
  1593. iso639_2T_ToFRLang.put("sit", "sino-tib�taines, autres langues");
  1594. // Slavic (Other)
  1595. iso639_2T_ToENLang.put("sla", "Slavic (Other)");
  1596. iso639_2T_ToFRLang.put("sla", "slaves, autres langues");
  1597. // Slovak
  1598. iso639_2T_ToENLang.put("slk", "Slovak");
  1599. iso639_2T_ToFRLang.put("slk", "slovaque");
  1600. iso639_2B_To_639_2T.put("slo", "slk");
  1601. iso639_1_To_639_2T.put("sk", "slk");
  1602. // Slovenian
  1603. iso639_2T_ToENLang.put("slv", "Slovenian");
  1604. iso639_2T_ToFRLang.put("slv", "slov�ne");
  1605. iso639_1_To_639_2T.put("sl", "slv");
  1606. // Southern Sami
  1607. iso639_2T_ToENLang.put("sma", "Southern Sami");
  1608. iso639_2T_ToFRLang.put("sma", "sami du Sud");
  1609. // Northern Sami
  1610. iso639_2T_ToENLang.put("sme", "Northern Sami");
  1611. iso639_2T_ToFRLang.put("sme", "sami du Nord");
  1612. iso639_1_To_639_2T.put("se", "sme");
  1613. // Sami languages (Other)
  1614. iso639_2T_ToENLang.put("smi", "Sami languages (Other) ");
  1615. iso639_2T_ToFRLang.put("smi", "sami, autres langues");
  1616. // Lule Sami
  1617. iso639_2T_ToENLang.put("smj", "Lule Sami");
  1618. iso639_2T_ToFRLang.put("smj", "sami de Lule");
  1619. // Inari Sami
  1620. iso639_2T_ToENLang.put("smn", "Inari Sami");
  1621. iso639_2T_ToFRLang.put("smn", "sami d'Inari");
  1622. // Samoan
  1623. iso639_2T_ToENLang.put("smo", "Samoan");
  1624. iso639_2T_ToFRLang.put("smo", "samoan");
  1625. iso639_1_To_639_2T.put("sm", "smo");
  1626. // Skolt Sami
  1627. iso639_2T_ToENLang.put("sms", "Skolt Sami");
  1628. iso639_2T_ToFRLang.put("sms", "sami skolt");
  1629. // Shona
  1630. iso639_2T_ToENLang.put("sna", "Shona");
  1631. iso639_2T_ToFRLang.put("sna", "shona");
  1632. iso639_1_To_639_2T.put("sn", "sna");
  1633. // Sindhi
  1634. iso639_2T_ToENLang.put("snd", "Sindhi");
  1635. iso639_2T_ToFRLang.put("snd", "sindhi");
  1636. iso639_1_To_639_2T.put("sd", "snd");
  1637. // Soninke
  1638. iso639_2T_ToENLang.put("snk", "Soninke ");
  1639. iso639_2T_ToFRLang.put("snk", "sonink�");
  1640. // Sogdian
  1641. iso639_2T_ToENLang.put("sog", "Sogdian");
  1642. iso639_2T_ToFRLang.put("sog", "sogdien");
  1643. // Somali
  1644. iso639_2T_ToENLang.put("som", "Somali");
  1645. iso639_2T_ToFRLang.put("som", "somali");
  1646. iso639_1_To_639_2T.put("so", "som");
  1647. // Songhai
  1648. iso639_2T_ToENLang.put("son", "Songhai");
  1649. iso639_2T_ToFRLang.put("son", "songhai");
  1650. // Sotho, Southern
  1651. iso639_2T_ToENLang.put("sot", "Sotho, Southern ");
  1652. iso639_2T_ToFRLang.put("sot", "sotho du Sud");
  1653. iso639_1_To_639_2T.put("st", "sot");
  1654. // Spanish; Castilian
  1655. iso639_2T_ToENLang.put("spa", "Spanish; Castilian");
  1656. iso639_2T_ToFRLang.put("spa", "espagnol; castillan");
  1657. iso639_1_To_639_2T.put("es", "spa");
  1658. // Albanian
  1659. iso639_2T_ToENLang.put("sqi", "Albanian");
  1660. iso639_2T_ToFRLang.put("sqi", "albanais");
  1661. iso639_2B_To_639_2T.put("alb", "sqi");
  1662. iso639_1_To_639_2T.put("sq", "sqi");
  1663. // Sardinian
  1664. iso639_2T_ToENLang.put("srd", "Sardinian");
  1665. iso639_2T_ToFRLang.put("srd", "sarde");
  1666. iso639_1_To_639_2T.put("sc", "srd");
  1667. // Serbian
  1668. iso639_2T_ToENLang.put("srp", "Serbian");
  1669. iso639_2T_ToFRLang.put("srp", "serbe");
  1670. iso639_2B_To_639_2T.put("scc", "srp");
  1671. iso639_1_To_639_2T.put("sr", "srp");
  1672. // Serer
  1673. iso639_2T_ToENLang.put("srr", "Serer");
  1674. iso639_2T_ToFRLang.put("srr", "s�r�re");
  1675. // Nilo-Saharan (Other)
  1676. iso639_2T_ToENLang.put("ssa", "Nilo-Saharan (Other)");
  1677. iso639_2T_ToFRLang.put("ssa", "nilo-sahariennes, autres langues");
  1678. // Swati
  1679. iso639_2T_ToENLang.put("ssw", "Swati");
  1680. iso639_2T_ToFRLang.put("ssw", "swati");
  1681. iso639_1_To_639_2T.put("ss", "ssw");
  1682. // Sukuma
  1683. iso639_2T_ToENLang.put("suk", "Sukuma");
  1684. iso639_2T_ToFRLang.put("suk", "sukuma");
  1685. // Sundanese
  1686. iso639_2T_ToENLang.put("sun", "Sundanese");
  1687. iso639_2T_ToFRLang.put("sun", "soundanais");
  1688. iso639_1_To_639_2T.put("su", "sun");
  1689. // Susu
  1690. iso639_2T_ToENLang.put("sus", "Susu");
  1691. iso639_2T_ToFRLang.put("sus", "soussou");
  1692. // Sumerian
  1693. iso639_2T_ToENLang.put("sux", "Sumerian");
  1694. iso639_2T_ToFRLang.put("sux", "sum�rien");
  1695. // Swahili
  1696. iso639_2T_ToENLang.put("swa", "Swahili");
  1697. iso639_2T_ToFRLang.put("swa", "swahili");
  1698. iso639_1_To_639_2T.put("sw", "swa");
  1699. // Swedish
  1700. iso639_2T_ToENLang.put("swe", "Swedish");
  1701. iso639_2T_ToFRLang.put("swe", "su�dois");
  1702. iso639_1_To_639_2T.put("sv", "swe");
  1703. // Syriac
  1704. iso639_2T_ToENLang.put("syr", "Syriac");
  1705. iso639_2T_ToFRLang.put("syr", "syriaque");
  1706. // Tahitian
  1707. iso639_2T_ToENLang.put("tah", "Tahitian");
  1708. iso639_2T_ToFRLang.put("tah", "tahitien");
  1709. iso639_1_To_639_2T.put("ty", "tah");
  1710. // Tai (Other)
  1711. iso639_2T_ToENLang.put("tai", "Tai (Other)");
  1712. iso639_2T_ToFRLang.put("tai", "tha�es, autres langues");
  1713. // Tamil
  1714. iso639_2T_ToENLang.put("tam", "Tamil");
  1715. iso639_2T_ToFRLang.put("tam", "tamoul");
  1716. iso639_1_To_639_2T.put("ta", "tam");
  1717. // Tatar
  1718. iso639_2T_ToENLang.put("tat", "Tatar");
  1719. iso639_2T_ToFRLang.put("tat", "tatar");
  1720. iso639_1_To_639_2T.put("tt", "tat");
  1721. // Telugu
  1722. iso639_2T_ToENLang.put("tel", "Telugu");
  1723. iso639_2T_ToFRLang.put("tel", "t�lougou");
  1724. iso639_1_To_639_2T.put("te", "tel");
  1725. // Timne
  1726. iso639_2T_ToENLang.put("tem", "Timne");
  1727. iso639_2T_ToFRLang.put("tem", "temne");
  1728. // Tereno
  1729. iso639_2T_ToENLang.put("ter", "Tereno");
  1730. iso639_2T_ToFRLang.put("ter", "tereno");
  1731. // Tetum
  1732. iso639_2T_ToENLang.put("tet", "Tetum");
  1733. iso639_2T_ToFRLang.put("tet", "tetum");
  1734. // Tajik
  1735. iso639_2T_ToENLang.put("tgk", "Tajik");
  1736. iso639_2T_ToFRLang.put("tgk", "tadjik");
  1737. iso639_1_To_639_2T.put("tg", "tgk");
  1738. // Tagalog
  1739. iso639_2T_ToENLang.put("tgl", "Tagalog");
  1740. iso639_2T_ToFRLang.put("tgl", "tagalog");
  1741. iso639_1_To_639_2T.put("tl", "tgl");
  1742. // Thai
  1743. iso639_2T_ToENLang.put("tha", "Thai");
  1744. iso639_2T_ToFRLang.put("tha", "tha�");
  1745. iso639_1_To_639_2T.put("th", "tha");
  1746. // Tibetan
  1747. iso639_2T_ToENLang.put("bod", "Tibetan");
  1748. iso639_2T_ToFRLang.put("bod", "tib�tain");
  1749. iso639_2B_To_639_2T.put("tib", "bod");
  1750. iso639_1_To_639_2T.put("bo", "bod");
  1751. // Tigre
  1752. iso639_2T_ToENLang.put("tig", "Tigre");
  1753. iso639_2T_ToFRLang.put("tig", "tigr�");
  1754. // Tigrinya
  1755. iso639_2T_ToENLang.put("tir", "Tigrinya");
  1756. iso639_2T_ToFRLang.put("tir", "tigrigna");
  1757. iso639_1_To_639_2T.put("ti", "tir");
  1758. // Tiv
  1759. iso639_2T_ToENLang.put("tiv", "Tiv");
  1760. iso639_2T_ToFRLang.put("tiv", "tiv");
  1761. // Tokelau
  1762. iso639_2T_ToENLang.put("tkl", "Tokelau");
  1763. iso639_2T_ToFRLang.put("tkl", "tokelau");
  1764. // Tlingit
  1765. iso639_2T_ToENLang.put("tli", "Tlingit");
  1766. iso639_2T_ToFRLang.put("tli", "tlingit");
  1767. // Tamashek
  1768. iso639_2T_ToENLang.put("tmh", "Tamashek");
  1769. iso639_2T_ToFRLang.put("tmh", "tamacheq");
  1770. // Tonga (Nyasa)
  1771. iso639_2T_ToENLang.put("tog", "Tonga (Nyasa) ");
  1772. iso639_2T_ToFRLang.put("tog", "tonga (Nyasa)");
  1773. // Tonga (Tonga Islands)
  1774. iso639_2T_ToENLang.put("ton", "Tonga (Tonga Islands)");
  1775. iso639_2T_ToFRLang.put("ton", "tongan (�les Tonga)");
  1776. iso639_1_To_639_2T.put("to", "ton");
  1777. // Tok Pisin
  1778. iso639_2T_ToENLang.put("tpi", "Tok Pisin");
  1779. iso639_2T_ToFRLang.put("tpi", "tok pisin");
  1780. // Tsimshian
  1781. iso639_2T_ToENLang.put("tsi", "Tsimshian");
  1782. iso639_2T_ToFRLang.put("tsi", "tsimshian");
  1783. // Tswana
  1784. iso639_2T_ToENLang.put("tsn", "Tswana");
  1785. iso639_2T_ToFRLang.put("tsn", "tswana");
  1786. iso639_1_To_639_2T.put("tn", "tsn");
  1787. // Tsonga
  1788. iso639_2T_ToENLang.put("tso", "Tsonga");
  1789. iso639_2T_ToFRLang.put("tso", "tsonga");
  1790. iso639_1_To_639_2T.put("ts", "tso");
  1791. // Turkmen
  1792. iso639_2T_ToENLang.put("tuk", "Turkmen");
  1793. iso639_2T_ToFRLang.put("tuk", "turkm�ne");
  1794. iso639_1_To_639_2T.put("tk", "tuk");
  1795. // Tumbuka
  1796. iso639_2T_ToENLang.put("tum", "Tumbuka");
  1797. iso639_2T_ToFRLang.put("tum", "tumbuka");
  1798. // Tupi languages
  1799. iso639_2T_ToENLang.put("tup", "Tupi languages");
  1800. iso639_2T_ToFRLang.put("tup", "tupi, langues");
  1801. // Turkish
  1802. iso639_2T_ToENLang.put("tur", "Turkish");
  1803. iso639_2T_ToFRLang.put("tur", "turc");
  1804. iso639_1_To_639_2T.put("tr", "tur");
  1805. // Altaic (Other)
  1806. iso639_2T_ToENLang.put("tut", "Altaic (Other)");
  1807. iso639_2T_ToFRLang.put("tut", "alta�ques, autres langues");
  1808. // Tuvalu
  1809. iso639_2T_ToENLang.put("tvl", "Tuvalu");
  1810. iso639_2T_ToFRLang.put("tvl", "tuvalu");
  1811. // Twi
  1812. iso639_2T_ToENLang.put("twi", "Twi");
  1813. iso639_2T_ToFRLang.put("twi", "twi");
  1814. iso639_1_To_639_2T.put("tw", "twi");
  1815. // Tuvinian
  1816. iso639_2T_ToENLang.put("tyv", "Tuvinian");
  1817. iso639_2T_ToFRLang.put("tyv", "touva");
  1818. // Ugaritic
  1819. iso639_2T_ToENLang.put("uga", "Ugaritic");
  1820. iso639_2T_ToFRLang.put("uga", "ougaritique");
  1821. // Uighur
  1822. iso639_2T_ToENLang.put("uig", "Uighur");
  1823. iso639_2T_ToFRLang.put("uig", "ou�gour");
  1824. iso639_1_To_639_2T.put("ug", "uig");
  1825. // Ukrainian
  1826. iso639_2T_ToENLang.put("ukr", "Ukrainian");
  1827. iso639_2T_ToFRLang.put("ukr", "ukrainien");
  1828. iso639_1_To_639_2T.put("uk", "ukr");
  1829. // Umbundu
  1830. iso639_2T_ToENLang.put("umb", "Umbundu");
  1831. iso639_2T_ToFRLang.put("umb", "umbundu");
  1832. // Undetermined
  1833. iso639_2T_ToENLang.put("und", "Undetermined ");
  1834. iso639_2T_ToFRLang.put("und", "ind�termin�e");
  1835. // Urdu
  1836. iso639_2T_ToENLang.put("urd", "Urdu");
  1837. iso639_2T_ToFRLang.put("urd", "ourdou");
  1838. iso639_1_To_639_2T.put("ur", "urd");
  1839. // Uzbek
  1840. iso639_2T_ToENLang.put("uzb", "Uzbek");
  1841. iso639_2T_ToFRLang.put("uzb", "ouszbek");
  1842. iso639_1_To_639_2T.put("uz", "uzb");
  1843. // Vai
  1844. iso639_2T_ToENLang.put("vai", "Vai");
  1845. iso639_2T_ToFRLang.put("vai", "va�");
  1846. // Venda
  1847. iso639_2T_ToENLang.put("ven", "Venda");
  1848. iso639_2T_ToFRLang.put("ven", "venda");
  1849. // Vietnamese
  1850. iso639_2T_ToENLang.put("vie", "Vietnamese");
  1851. iso639_2T_ToFRLang.put("vie", "vietnamien");
  1852. iso639_1_To_639_2T.put("vi", "vie");
  1853. // Volap�k
  1854. iso639_2T_ToENLang.put("vol", "Volap�k");
  1855. iso639_2T_ToFRLang.put("vol", "volap�k");
  1856. iso639_1_To_639_2T.put("vo", "vol");
  1857. // Votic
  1858. iso639_2T_ToENLang.put("vot", "Votic");
  1859. iso639_2T_ToFRLang.put("vot", "vote");
  1860. // Wakashan languages
  1861. iso639_2T_ToENLang.put("wak", "Wakashan languages");
  1862. iso639_2T_ToFRLang.put("wak", "wakashennes, langues");
  1863. // Walamo
  1864. iso639_2T_ToENLang.put("wal", "Walamo");
  1865. iso639_2T_ToFRLang.put("wal", "walamo");
  1866. // Waray
  1867. iso639_2T_ToENLang.put("war", "Waray");
  1868. iso639_2T_ToFRLang.put("war", "waray");
  1869. // Washo
  1870. iso639_2T_ToENLang.put("was", "Washo");
  1871. iso639_2T_ToFRLang.put("was", "washo");
  1872. // Welsh
  1873. iso639_2T_ToENLang.put("cym", "Welsh");
  1874. iso639_2T_ToFRLang.put("cym", "gallois");
  1875. iso639_2B_To_639_2T.put("wel", "cym");
  1876. iso639_1_To_639_2T.put("cy", "cym");
  1877. // Sorbian languages
  1878. iso639_2T_ToENLang.put("wen", "Sorbian languages");
  1879. iso639_2T_ToFRLang.put("wen", "sorabes, langues");
  1880. // Walloon
  1881. iso639_2T_ToENLang.put("wln", "Walloon");
  1882. iso639_2T_ToFRLang.put("wln", "wallon");
  1883. iso639_1_To_639_2T.put("wa", "wln");
  1884. // Wolof
  1885. iso639_2T_ToENLang.put("wol", "Wolof");
  1886. iso639_2T_ToFRLang.put("wol", "wolof");
  1887. iso639_1_To_639_2T.put("wo", "wol");
  1888. // Xhosa
  1889. iso639_2T_ToENLang.put("xho", "Xhosa");
  1890. iso639_2T_ToFRLang.put("xho", "xhosa");
  1891. iso639_1_To_639_2T.put("xh", "xho");
  1892. // Yao
  1893. iso639_2T_ToENLang.put("yao", "Yao");
  1894. iso639_2T_ToFRLang.put("yao", "yao");
  1895. // Yapese
  1896. iso639_2T_ToENLang.put("yap", "Yapese");
  1897. iso639_2T_ToFRLang.put("yap", "yapois");
  1898. // Yiddish
  1899. iso639_2T_ToENLang.put("yid", "Yiddish");
  1900. iso639_2T_ToFRLang.put("yid", "yiddish");
  1901. iso639_1_To_639_2T.put("yi", "yid");
  1902. // Yoruba
  1903. iso639_2T_ToENLang.put("yor", "Yoruba");
  1904. iso639_2T_ToFRLang.put("yor", "yoruba");
  1905. iso639_1_To_639_2T.put("yo", "yor");
  1906. // Yupik languages
  1907. iso639_2T_ToENLang.put("ypk", "Yupik languages");
  1908. iso639_2T_ToFRLang.put("ypk", "yupik, langues");
  1909. // Zapotec
  1910. iso639_2T_ToENLang.put("zap", "Zapotec");
  1911. iso639_2T_ToFRLang.put("zap", "zapot�que");
  1912. // Zenaga
  1913. iso639_2T_ToENLang.put("zen", "Zenaga");
  1914. iso639_2T_ToFRLang.put("zen", "zenaga");
  1915. // Zhuang; Chuang
  1916. iso639_2T_ToENLang.put("zha", "Zhuang; Chuang");
  1917. iso639_2T_ToFRLang.put("zha", "zhuang; chuang");
  1918. iso639_1_To_639_2T.put("za", "zha");
  1919. // Chinese
  1920. iso639_2T_ToENLang.put("zho", "Chinese");
  1921. iso639_2T_ToFRLang.put("zho", "chinois");
  1922. iso639_2B_To_639_2T.put("chi", "zho");
  1923. iso639_1_To_639_2T.put("zh", "zho");
  1924. // Zande
  1925. iso639_2T_ToENLang.put("znd", "Zande");
  1926. iso639_2T_ToFRLang.put("znd", "zand�");
  1927. // Zulu
  1928. iso639_2T_ToENLang.put("zul", "Zulu");
  1929. iso639_2T_ToFRLang.put("zul", "zoulou");
  1930. iso639_1_To_639_2T.put("zu", "zul");
  1931. // Zuni
  1932. iso639_2T_ToENLang.put("zun", "Zuni");
  1933. iso639_2T_ToFRLang.put("zun", "zuni");
  1934. iso15924ToName.put("Ab", "Abur");
  1935. iso15924ToName.put("Ah", "Ahom");
  1936. iso15924ToName.put("Ai", "Aiha (Kesh)");
  1937. iso15924ToName.put("Sq", "Albanian");
  1938. iso15924ToName.put("Ar", "Arabic");
  1939. iso15924ToName.put("Ak", "Arabic (Kufi variant)");
  1940. iso15924ToName.put("Aw", "Aramaic");
  1941. iso15924ToName.put("Hy", "Armenian");
  1942. iso15924ToName.put("Xa", "Assyrian cuneiform (Babylonian & Akkadian)");
  1943. iso15924ToName.put("Ay", "Aymara pictograms");
  1944. iso15924ToName.put("Az", "Aztec pictograms");
  1945. iso15924ToName.put("Bl", "Balinese");
  1946. iso15924ToName.put("Bt", "Balti");
  1947. iso15924ToName.put("Bm", "Bamum (Cameroon)");
  1948. iso15924ToName.put("Bk", "Batak");
  1949. iso15924ToName.put("Bn", "Bengali");
  1950. iso15924ToName.put("Bs", "Bisaya");
  1951. iso15924ToName.put("By", "Blissymbols");
  1952. iso15924ToName.put("Bp", "Bopomofo");
  1953. iso15924ToName.put("Bx", "Box-headed script");
  1954. iso15924ToName.put("Br", "Brahmi (Ashoka)");
  1955. iso15924ToName.put("Ba", "Braille");
  1956. iso15924ToName.put("Bg", "Buginese (Makassar)");
  1957. iso15924ToName.put("My", "Burmese");
  1958. iso15924ToName.put("Bu", "Buthakukye (Albanian)");
  1959. iso15924ToName.put("Sl", "Canadian Syllabic (Unified)");
  1960. iso15924ToName.put("Cr", "Carian");
  1961. iso15924ToName.put("Ck", "Chakma");
  1962. iso15924ToName.put("Ch", "Cham");
  1963. iso15924ToName.put("Jl", "Cherokee syllabary");
  1964. iso15924ToName.put("Cn", "Chinook shorthand");
  1965. iso15924ToName.put("Cl", "Chola");
  1966. iso15924ToName.put("Cu", "Chu Nom");
  1967. iso15924ToName.put("Ci", "Cirth");
  1968. iso15924ToName.put("Zy", "Code for undetermined script");
  1969. iso15924ToName.put("Zx", "Code for unwritten languages");
  1970. iso15924ToName.put("Qb", "Coptic");
  1971. iso15924ToName.put("Cp", "Cypriote syllabary");
  1972. iso15924ToName.put("Cm", "Cypro-Minoan");
  1973. iso15924ToName.put("Cy", "Cyrillic");
  1974. iso15924ToName.put("Da", "Dai");
  1975. iso15924ToName.put("Ds", "Deseret (Mormon)");
  1976. iso15924ToName.put("Dn", "Devanagari");
  1977. iso15924ToName.put("Ed", "Egyptian demotic");
  1978. iso15924ToName.put("Ea", "Egyptian hieroglyphic alphabet");
  1979. iso15924ToName.put("Eh", "Egyptian hieroglyphs");
  1980. iso15924ToName.put("Es", "Elbassen (Albanian)");
  1981. iso15924ToName.put("En", "Engsvanyali");
  1982. iso15924ToName.put("Et", "Ethiopic");
  1983. iso15924ToName.put("Eo", "Etruscan & Oscan");
  1984. iso15924ToName.put("Gr", "Gargoyle");
  1985. iso15924ToName.put("Gd", "Gaudiya");
  1986. iso15924ToName.put("Ka", "Georgian (Mxedruli)");
  1987. iso15924ToName.put("Kx", "Georgian (Xucuri)");
  1988. iso15924ToName.put("Gl", "Glagolitic");
  1989. iso15924ToName.put("Gt", "Gothic");
  1990. iso15924ToName.put("El", "Greek");
  1991. iso15924ToName.put("Gu", "Gujarati");
  1992. iso15924ToName.put("Pa", "Gurmukhi");
  1993. iso15924ToName.put("Hn", "Han ideographs");
  1994. iso15924ToName.put("Hg", "Hangul");
  1995. iso15924ToName.put("He", "Hebrew");
  1996. iso15924ToName.put("Hr", "Hiragana");
  1997. iso15924ToName.put("Xh", "Hittite cuneiform");
  1998. iso15924ToName.put("Hh", "Hittite syllabic & hieroglyphic");
  1999. iso15924ToName.put("Hm", "Hmong");
  2000. iso15924ToName.put("Ib", "Iberian");
  2001. iso15924ToName.put("Il", "Ilianore");
  2002. iso15924ToName.put("Iv", "Indus Valley");
  2003. iso15924ToName.put("Jw", "Javanese");
  2004. iso15924ToName.put("Jn", "Jindai");
  2005. iso15924ToName.put("Kb", "Kadamba");
  2006. iso15924ToName.put("Ki", "Kaithi");
  2007. iso15924ToName.put("Kn", "Kannada");
  2008. iso15924ToName.put("Kr", "Karenni (Kayah Li)");
  2009. iso15924ToName.put("Kk", "Katakana");
  2010. iso15924ToName.put("Kd", "Kauder (Micmac)");
  2011. iso15924ToName.put("Kw", "Kawi");
  2012. iso15924ToName.put("Kh", "Khamti (Kham)");
  2013. iso15924ToName.put("Ks", "Kharoshthi");
  2014. iso15924ToName.put("Kt", "Khitan (Ch'i-tan, Liao)");
  2015. iso15924ToName.put("Km", "Khmer");
  2016. iso15924ToName.put("Kq", "Khotanese");
  2017. iso15924ToName.put("Ky", "Kinya");
  2018. iso15924ToName.put("Lb", "Kirat (Limbu)");
  2019. iso15924ToName.put("Pq", "Klingon pIQaD");
  2020. iso15924ToName.put("Hu", "K�k Turki runes");
  2021. iso15924ToName.put("Kl", "Koleruttu");
  2022. iso15924ToName.put("Ku", "Kuoyu");
  2023. iso15924ToName.put("Kf", "Kutila");
  2024. iso15924ToName.put("Lk", "Lahnda (Khudawadi)");
  2025. iso15924ToName.put("Ln", "Lahnda (Sindhi)");
  2026. iso15924ToName.put("Lm", "Lampong");
  2027. iso15924ToName.put("Lo", "Lao");
  2028. iso15924ToName.put("La", "Latin");
  2029. iso15924ToName.put("Lf", "Latin (Fraktur variant)");
  2030. iso15924ToName.put("Lg", "Latin (Gaelic variant)");
  2031. iso15924ToName.put("Lp", "Lepcha (R�ng)");
  2032. iso15924ToName.put("Na", "Linear A");
  2033. iso15924ToName.put("Nb", "Linear B");
  2034. iso15924ToName.put("Ls", "Lisu");
  2035. iso15924ToName.put("Ll", "Lolo");
  2036. iso15924ToName.put("Lc", "Lycian");
  2037. iso15924ToName.put("Ld", "Lydian");
  2038. iso15924ToName.put("Mg", "Maghreb");
  2039. iso15924ToName.put("Mj", "Maithli");
  2040. iso15924ToName.put("Ml", "Malayalam");
  2041. iso15924ToName.put("Mc", "Manchu");
  2042. iso15924ToName.put("Md", "Mandaean");
  2043. iso15924ToName.put("Ma", "Mangyan");
  2044. iso15924ToName.put("Mi", "Manichaean");
  2045. iso15924ToName.put("Mh", "Mayan hieroglyphs");
  2046. iso15924ToName.put("Mp", "Meitei (Manipuri)");
  2047. iso15924ToName.put("Me", "Meroitic");
  2048. iso15924ToName.put("Mo", "Modi");
  2049. iso15924ToName.put("Mn", "Mongolian");
  2050. iso15924ToName.put("Mu", "Multani");
  2051. iso15924ToName.put("Nt", "Nabataean");
  2052. iso15924ToName.put("Mt", "Naxi (Moso) phonetic");
  2053. iso15924ToName.put("Ms", "Naxi (Nahsi, Nasi, Moso) ideograms");
  2054. iso15924ToName.put("Nw", "Newari");
  2055. iso15924ToName.put("Nu", "Nuchen (Yu-Chen)");
  2056. iso15924ToName.put("Nm", "Numidian");
  2057. iso15924ToName.put("Og", "Ogham");
  2058. iso15924ToName.put("Cv", "Old Church Slavonic");
  2059. iso15924ToName.put("Hv", "Old Hungarian runes");
  2060. iso15924ToName.put("Pg", "Old Peguan");
  2061. iso15924ToName.put("Xp", "Old Persian cuneiform");
  2062. iso15924ToName.put("Or", "Oriya");
  2063. iso15924ToName.put("Os", "Osmanya");
  2064. iso15924ToName.put("Av", "Pahlavi (Avestan)");
  2065. iso15924ToName.put("Pk", "Pali (Kyoktsa & Painted)");
  2066. iso15924ToName.put("Pm", "Palmyrene");
  2067. iso15924ToName.put("Pc", "Pancartambo");
  2068. iso15924ToName.put("Pr", "Parthian");
  2069. iso15924ToName.put("Pp", "'Phags-pa");
  2070. iso15924ToName.put("Ps", "Phaistos Disk");
  2071. iso15924ToName.put("Ph", "Phoenician");
  2072. iso15924ToName.put("Pl", "Pollard Phonetic");
  2073. iso15924ToName.put("Pb", "Proto-Byblic");
  2074. iso15924ToName.put("Pe", "Proto-Elamic");
  2075. iso15924ToName.put("Py", "Pyu (Tircul)");
  2076. iso15924ToName.put("Rj", "Rejang");
  2077. iso15924ToName.put("Rr", "Rongo-rongo");
  2078. iso15924ToName.put("Rn", "Runic (Germanic)");
  2079. iso15924ToName.put("Sk", "Saki");
  2080. iso15924ToName.put("Sm", "Samaritan");
  2081. iso15924ToName.put("Sr", "Sarada");
  2082. iso15924ToName.put("Sv", "Satavahana");
  2083. iso15924ToName.put("Su", "Seuss");
  2084. iso15924ToName.put("Sw", "Shavian (Shaw)");
  2085. iso15924ToName.put("Sd", "Siddham");
  2086. iso15924ToName.put("St", "Siddhamatrka");
  2087. iso15924ToName.put("Se", "Sidetic");
  2088. iso15924ToName.put("Si", "Sinhalese");
  2089. iso15924ToName.put("Sg", "Sogdian");
  2090. iso15924ToName.put("Ss", "Solresol");
  2091. iso15924ToName.put("Sa", "South Arabian");
  2092. iso15924ToName.put("Xs", "Sumerian pictograms");
  2093. iso15924ToName.put("Sy", "Syriac");
  2094. iso15924ToName.put("Tg", "Tagalog");
  2095. iso15924ToName.put("Tl", "Tai Lue (Chiang Mai)");
  2096. iso15924ToName.put("Tn", "Tai Nua (Tai Mau)");
  2097. iso15924ToName.put("Tc", "Takri (Chameali)");
  2098. iso15924ToName.put("Tj", "Takri (Jaunsari)");
  2099. iso15924ToName.put("Ta", "Tamil");
  2100. iso15924ToName.put("Tr", "Tamil Granta");
  2101. iso15924ToName.put("Tk", "Tankri");
  2102. iso15924ToName.put("Te", "Telugu");
  2103. iso15924ToName.put("Tw", "Tengwar");
  2104. iso15924ToName.put("Dv", "Thaana");
  2105. iso15924ToName.put("Th", "Thai");
  2106. iso15924ToName.put("Bo", "Tibetan");
  2107. iso15924ToName.put("Tf", "Tifinagh");
  2108. iso15924ToName.put("To", "Tocharian");
  2109. iso15924ToName.put("Tu", "Tungut (Xixia) ideograms");
  2110. iso15924ToName.put("Xu", "Ugaritic cuneiform");
  2111. iso15924ToName.put("Ui", "Uighur");
  2112. iso15924ToName.put("Un", "Unifon");
  2113. iso15924ToName.put("Va", "Vai");
  2114. iso15924ToName.put("Vt", "Vattelluttu");
  2115. iso15924ToName.put("Vd", "Verdurian");
  2116. iso15924ToName.put("Vb", "Veso Bei");
  2117. iso15924ToName.put("Vs", "Visible Speech");
  2118. iso15924ToName.put("Wo", "Woleai");
  2119. iso15924ToName.put("Yy", "Yi");
  2120. }
  2121. /**
  2122. * Get the canonical 2-letter ISO 3166 country code corresponding
  2123. * to the argument. ISO 3166 codes are upper case by convention.
  2124. * @param code - the String code.
  2125. * @return - the equivalent ISO 3166 code, or null if the
  2126. * code is invalid.
  2127. */
  2128. public static String canonicalCountryCode(String code) {
  2129. String hicode = code.toUpperCase();
  2130. if (iso3166ToName.get(hicode) != null)
  2131. return hicode;
  2132. return null;
  2133. }
  2134. /**
  2135. * Get the English name corresponding to a country code.
  2136. * @param code - the String code.
  2137. * @return - the English name of the country, or null if the
  2138. * code is invalid.
  2139. */
  2140. public static String getCountryName(String code) {
  2141. return (String)(iso3166ToName.get(canonicalCountryCode(code)));
  2142. }
  2143. /**
  2144. * Get the canonical 3-letter ISO 639-2 Terminology code corresponding
  2145. * to a language code. The argument may be an ISO 639-2 Terminology
  2146. * code, an ISO 639-2 Bibliographic code, or an ISO 639-1 2-letter code.
  2147. * By convention, language codes are expressed in lower case.
  2148. * @param code - the String code.
  2149. * @return - the equivalent ISO 639-2T code, or null if the
  2150. * code is invalid.
  2151. */
  2152. public static String canonicalLangCode(String code) {
  2153. String biblio;
  2154. String iso639_1;
  2155. String locode = code.toLowerCase();
  2156. // Check for valid terminology code
  2157. if (iso639_2T_ToENLang.get(locode) != null)
  2158. return locode;
  2159. // Check for valid 2-letter code
  2160. if ((iso639_1 = (String)(iso639_1_To_639_2T.get(locode))) != null)
  2161. return iso639_1;
  2162. // Check for valid bibliographic code
  2163. if ((biblio = (String)(iso639_2B_To_639_2T.get(locode))) != null)
  2164. return biblio;
  2165. return null;
  2166. }
  2167. /**
  2168. * Get the English name corresponding to a language code.
  2169. * @param code - the String code.
  2170. * @return - the English name of the language, or null if the
  2171. * code is invalid.
  2172. */
  2173. public static String getEnglishName(String code) {
  2174. return (String)(iso639_2T_ToENLang.get(canonicalLangCode(code)));
  2175. }
  2176. /**
  2177. * Get the French name corresponding to a language code.
  2178. * @param code - the String code.
  2179. * @return - the French name of the language, or null if the
  2180. * code is invalid.
  2181. */
  2182. public static String getFrenchName(String code) {
  2183. return (String)(iso639_2T_ToFRLang.get(canonicalLangCode(code)));
  2184. }
  2185. /**
  2186. * Get the canonical 2-letter ISO 15924 script code corresponding
  2187. * to the argument. ISO 15924 codes are camel case by convention.
  2188. * @param code - the String code.
  2189. * @return - the equivalent ISO 15924 code, or null if the
  2190. * code is invalid.
  2191. */
  2192. public static String canonicalScriptCode(String code) {
  2193. if (code.length() != 2)
  2194. return null;
  2195. String hilocode = code.substring(0,1).toUpperCase()
  2196. + code.substring(1).toLowerCase();
  2197. if (iso15924ToName.get(hilocode) != null)
  2198. return hilocode;
  2199. return null;
  2200. }
  2201. /**
  2202. * Get the English name corresponding to a script code.
  2203. * @param code - the String code.
  2204. * @return - the English name of the script, or null if the
  2205. * code is invalid.
  2206. */
  2207. public static String getScriptName(String code) {
  2208. return (String)(iso15924ToName.get(canonicalScriptCode(code)));
  2209. }
  2210. }