/*
 * Copyright 1995 Martin von Loewis
 * Copyright 1998 David Lee Lambert
 * Copyright 2002 Alexandre Julliard for CodeWeavers
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
 */

#include "windef.h"
#include "winbase.h"
#include "winnls.h"

#define LGRPID_RES_BASE 0x2000

/* add languages in numerical order of main language (last two digits)
 * it is much easier to find the missing holes that way */

#include "nls/ara.nls"   /* 0x0401  LANG_ARABIC, SUBLANG_ARABIC_SAUDI_ARABIA */
#include "nls/ari.nls"   /* 0x0801  LANG_ARABIC, SUBLANG_ARABIC_IRAQ */
#include "nls/are.nls"   /* 0x0c01  LANG_ARABIC, SUBLANG_ARABIC_EGYPT */
#include "nls/arl.nls"   /* 0x1001  LANG_ARABIC, SUBLANG_ARABIC_LIBYA */
#include "nls/arg.nls"   /* 0x1401  LANG_ARABIC, SUBLANG_ARABIC_ALGERIA */
#include "nls/arm.nls"   /* 0x1801  LANG_ARABIC, SUBLANG_ARABIC_MOROCCO */
#include "nls/art.nls"   /* 0x1c01  LANG_ARABIC, SUBLANG_ARABIC_TUNISIA */
#include "nls/aro.nls"   /* 0x2001  LANG_ARABIC, SUBLANG_ARABIC_OMAN */
#include "nls/ary.nls"   /* 0x2401  LANG_ARABIC, SUBLANG_ARABIC_YEMEN */
#include "nls/ars.nls"   /* 0x2801  LANG_ARABIC, SUBLANG_ARABIC_SYRIA */
#include "nls/arj.nls"   /* 0x2c01  LANG_ARABIC, SUBLANG_ARABIC_JORDAN */
#include "nls/arb.nls"   /* 0x3001  LANG_ARABIC, SUBLANG_ARABIC_LEBANON */
#include "nls/ark.nls"   /* 0x3401  LANG_ARABIC, SUBLANG_ARABIC_KUWAIT */
#include "nls/aru.nls"   /* 0x3801  LANG_ARABIC, SUBLANG_ARABIC_UAE */
#include "nls/arh.nls"   /* 0x3c01  LANG_ARABIC, SUBLANG_ARABIC_BAHRAIN */
#include "nls/arq.nls"   /* 0x4001  LANG_ARABIC, SUBLANG_ARABIC_QATAR */

#include "nls/bgr.nls"   /* 0x0402  LANG_BULGARIAN, SUBLANG_DEFAULT */

#include "nls/cat.nls"   /* 0x0403  LANG_CATALAN, SUBLANG_DEFAULT */

#include "nls/cht.nls"   /* 0x0404  LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL */
#include "nls/chs.nls"   /* 0x0804  LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED */
#include "nls/zhh.nls"   /* 0x0c04  LANG_CHINESE, SUBLANG_CHINESE_HONGKONG */
#include "nls/zhi.nls"   /* 0x1004  LANG_CHINESE, SUBLANG_CHINESE_SINGAPORE */
#include "nls/zhm.nls"   /* 0x1404  LANG_CHINESE, SUBLANG_CHINESE_MACAU */

#include "nls/csy.nls"   /* 0x0405  LANG_CZECH, SUBLANG_DEFAULT */

#include "nls/dan.nls"   /* 0x0406  LANG_DANISH, SUBLANG_DEFAULT */

#include "nls/deu.nls"   /* 0x0407  LANG_GERMAN, SUBLANG_GERMAN */
#include "nls/des.nls"   /* 0x0807  LANG_GERMAN, SUBLANG_GERMAN_SWISS */
#include "nls/dea.nls"   /* 0x0c07  LANG_GERMAN, SUBLANG_GERMAN_AUSTRIAN */
#include "nls/del.nls"   /* 0x1007  LANG_GERMAN, SUBLANG_GERMAN_LUXEMBOURG */
#include "nls/dec.nls"   /* 0x1407  LANG_GERMAN, SUBLANG_GERMAN_LIECHTENSTEIN */

#include "nls/ell.nls"   /* 0x0408  LANG_GREEK, SUBLANG_DEFAULT */

#include "nls/enu.nls"   /* 0x0409  LANG_ENGLISH, SUBLANG_ENGLISH_US */
#include "nls/eng.nls"   /* 0x0809  LANG_ENGLISH, SUBLANG_ENGLISH_UK */
#include "nls/ena.nls"   /* 0x0c09  LANG_ENGLISH, SUBLANG_ENGLISH_AUS */
#include "nls/enc.nls"   /* 0x1009  LANG_ENGLISH, SUBLANG_ENGLISH_CAN */
#include "nls/enz.nls"   /* 0x1409  LANG_ENGLISH, SUBLANG_ENGLISH_NZ */
#include "nls/eni.nls"   /* 0x1809  LANG_ENGLISH, SUBLANG_ENGLISH_EIRE */
#include "nls/ens.nls"   /* 0x1c09  LANG_ENGLISH, SUBLANG_ENGLISH_SOUTH_AFRICA */
#include "nls/enj.nls"   /* 0x2009  LANG_ENGLISH, SUBLANG_ENGLISH_JAMAICA */
#include "nls/enb.nls"   /* 0x2409  LANG_ENGLISH, SUBLANG_ENGLISH_CARIBBEAN */
#include "nls/enl.nls"   /* 0x2809  LANG_ENGLISH, SUBLANG_ENGLISH_BELIZE */
#include "nls/ent.nls"   /* 0x2c09  LANG_ENGLISH, SUBLANG_ENGLISH_TRINIDAD */
#include "nls/enw.nls"   /* 0x3009  LANG_ENGLISH, SUBLANG_ENGLISH_ZIMBABWE */
#include "nls/enp.nls"   /* 0x3409  LANG_ENGLISH, SUBLANG_ENGLISH_PHILIPPINES */

#include "nls/esp.nls"   /* 0x040a  LANG_SPANISH, SUBLANG_SPANISH */
#include "nls/esm.nls"   /* 0x080a  LANG_SPANISH, SUBLANG_SPANISH_MEXICAN */
#include "nls/esn.nls"   /* 0x0c0a  LANG_SPANISH, SUBLANG_SPANISH_MODERN */
#include "nls/esg.nls"   /* 0x100a  LANG_SPANISH, SUBLANG_SPANISH_GUATEMALA */
#include "nls/esc.nls"   /* 0x140a  LANG_SPANISH, SUBLANG_SPANISH_COSTA_RICA */
#include "nls/esa.nls"   /* 0x180a  LANG_SPANISH, SUBLANG_SPANISH_PANAMA */
#include "nls/esd.nls"   /* 0x1c0a  LANG_SPANISH, SUBLANG_SPANISH_DOMINICAN_REPUBLIC */
#include "nls/esv.nls"   /* 0x200a  LANG_SPANISH, SUBLANG_SPANISH_VENEZUELA */
#include "nls/eso.nls"   /* 0x240a  LANG_SPANISH, SUBLANG_SPANISH_COLOMBIA */
#include "nls/esr.nls"   /* 0x280a  LANG_SPANISH, SUBLANG_SPANISH_PERU */
#include "nls/ess.nls"   /* 0x2c0a  LANG_SPANISH, SUBLANG_SPANISH_ARGENTINA */
#include "nls/esf.nls"   /* 0x300a  LANG_SPANISH, SUBLANG_SPANISH_ECUADOR */
#include "nls/esl.nls"   /* 0x340a  LANG_SPANISH, SUBLANG_SPANISH_CHILE */
#include "nls/esy.nls"   /* 0x380a  LANG_SPANISH, SUBLANG_SPANISH_URUGUAY */
#include "nls/esz.nls"   /* 0x3c0a  LANG_SPANISH, SUBLANG_SPANISH_PARAGUAY */
#include "nls/esb.nls"   /* 0x400a  LANG_SPANISH, SUBLANG_SPANISH_BOLIVIA */
#include "nls/ese.nls"   /* 0x440a  LANG_SPANISH, SUBLANG_SPANISH_EL_SALVADOR */
#include "nls/esh.nls"   /* 0x480a  LANG_SPANISH, SUBLANG_SPANISH_HONDURAS */
#include "nls/esi.nls"   /* 0x4c0a  LANG_SPANISH, SUBLANG_SPANISH_NICARAGUA */
#include "nls/esu.nls"   /* 0x500a  LANG_SPANISH, SUBLANG_SPANISH_PUERTO_RICO */

#include "nls/fin.nls"   /* 0x040b  LANG_FINNISH, SUBLANG_DEFAULT */

#include "nls/fra.nls"   /* 0x040c  LANG_FRENCH, SUBLANG_FRENCH */
#include "nls/frb.nls"   /* 0x080c  LANG_FRENCH, SUBLANG_FRENCH_BELGIAN */
#include "nls/frc.nls"   /* 0x0c0c  LANG_FRENCH, SUBLANG_FRENCH_CANADIAN */
#include "nls/frs.nls"   /* 0x100c  LANG_FRENCH, SUBLANG_FRENCH_SWISS */
#include "nls/frl.nls"   /* 0x140c  LANG_FRENCH, SUBLANG_FRENCH_LUXEMBOURG */
#include "nls/frm.nls"   /* 0x180c  LANG_FRENCH, SUBLANG_FRENCH_MONACO */

#include "nls/heb.nls"   /* 0x040d  LANG_HEBREW, SUBLANG_DEFAULT */

#include "nls/hun.nls"   /* 0x040e  LANG_HUNGARIAN, SUBLANG_DEFAULT */

#include "nls/isl.nls"   /* 0x040f  LANG_ICELANDIC, SUBLANG_DEFAULT */

#include "nls/ita.nls"   /* 0x0410  LANG_ITALIAN, SUBLANG_ITALIAN */
#include "nls/its.nls"   /* 0x0810  LANG_ITALIAN, SUBLANG_ITALIAN_SWISS */

#include "nls/jpn.nls"   /* 0x0411  LANG_JAPANESE, SUBLANG_DEFAULT */

#include "nls/kor.nls"   /* 0x0412  LANG_KOREAN, SUBLANG_KOREAN */

#include "nls/nld.nls"   /* 0x0413  LANG_DUTCH, SUBLANG_DUTCH */
#include "nls/nlb.nls"   /* 0x0813  LANG_DUTCH, SUBLANG_DUTCH_BELGIAN */

#include "nls/nor.nls"   /* 0x0414  LANG_NORWEGIAN, SUBLANG_NORWEGIAN_BOKMAL */
#include "nls/non.nls"   /* 0x0814  LANG_NORWEGIAN, SUBLANG_NORWEGIAN_NYNORSK */

#include "nls/plk.nls"   /* 0x0415  LANG_POLISH, SUBLANG_DEFAULT */

#include "nls/ptb.nls"   /* 0x0416  LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN */
#include "nls/ptg.nls"   /* 0x0816  LANG_PORTUGUESE, SUBLANG_PORTUGUESE */

#include "nls/rmc.nls"   /* 0x0417  LANG_ROMANSH, SUBLANG_ROMANSH_SWITZERLAND */

#include "nls/rom.nls"   /* 0x0418  LANG_ROMANIAN, SUBLANG_DEFAULT */

#include "nls/rus.nls"   /* 0x0419  LANG_RUSSIAN, SUBLANG_DEFAULT */

#include "nls/hrv.nls"   /* 0x041a  LANG_SERBIAN, SUBLANG_DEFAULT */
#include "nls/srl.nls"   /* 0x081a  LANG_SERBIAN, SUBLANG_SERBIAN_LATIN */
#include "nls/srb.nls"   /* 0x0c1a  LANG_SERBIAN, SUBLANG_SERBIAN_CYRILLIC */

#include "nls/sky.nls"   /* 0x041b  LANG_SLOVAK, SUBLANG_DEFAULT */

#include "nls/sqi.nls"   /* 0x041c  LANG_ALBANIAN, SUBLANG_DEFAULT */

#include "nls/sve.nls"   /* 0x041d  LANG_SWEDISH, SUBLANG_SWEDISH */
#include "nls/svf.nls"   /* 0x081d  LANG_SWEDISH, SUBLANG_SWEDISH_FINLAND */

#include "nls/tha.nls"   /* 0x041e  LANG_THAI, SUBLANG_DEFAULT */

#include "nls/trk.nls"   /* 0x041f  LANG_TURKISH, SUBLANG_DEFAULT */

#include "nls/urd.nls"   /* 0x0420  LANG_URDU, SUBLANG_URDU_PAKISTAN */

#include "nls/ind.nls"   /* 0x0421  LANG_INDONESIAN, SUBLANG_DEFAULT */

#include "nls/ukr.nls"   /* 0x0422  LANG_UKRAINIAN, SUBLANG_DEFAULT */

#include "nls/bel.nls"   /* 0x0423  LANG_BELARUSIAN, SUBLANG_DEFAULT */

#include "nls/slv.nls"   /* 0x0424  LANG_SLOVENIAN, SUBLANG_DEFAULT */

#include "nls/eti.nls"   /* 0x0425  LANG_ESTONIAN, SUBLANG_DEFAULT */

#include "nls/lvi.nls"   /* 0x0426  LANG_LATVIAN, SUBLANG_DEFAULT */

#include "nls/lth.nls"   /* 0x0427  LANG_LITHUANIAN, SUBLANG_LITHUANIAN */

#include "nls/far.nls"   /* 0x0429  LANG_FARSI, SUBLANG_DEFAULT */

#include "nls/vit.nls"   /* 0x042a  LANG_VIETNAMESE, SUBLANG_DEFAULT */

#include "nls/hye.nls"   /* 0x042b  LANG_ARMENIAN, SUBLANG_DEFAULT */

#include "nls/azl.nls"   /* 0x042c  LANG_AZERI, SUBLANG_AZERI_LATIN */
#include "nls/aze.nls"   /* 0x082c  LANG_AZERI, SUBLANG_AZERI_CYRILLIC */

#include "nls/euq.nls"   /* 0x042d  LANG_BASQUE, SUBLANG_DEFAULT */

#include "nls/mki.nls"   /* 0x042f  LANG_MACEDONIAN, SUBLANG_DEFAULT */

#include "nls/afk.nls"   /* 0x0436  LANG_AFRIKAANS, SUBLANG_DEFAULT */

#include "nls/kat.nls"   /* 0x0437  LANG_GEORGIAN, SUBLANG_DEFAULT */

#include "nls/fos.nls"   /* 0x0438  LANG_FAEROESE, SUBLANG_DEFAULT */

#include "nls/hin.nls"   /* 0x0439  LANG_HINDI, SUBLANG_DEFAULT */

#include "nls/msl.nls"   /* 0x043e  LANG_MALAY, SUBLANG_MALAY_MALAYSIA */
#include "nls/msb.nls"   /* 0x083e  LANG_MALAY, SUBLANG_MALAY_BRUNEI_DARUSSALAM */

#include "nls/kkz.nls"   /* 0x043f  LANG_KAZAK, SUBLANG_DEFAULT */

#include "nls/kyr.nls"   /* 0x0440  LANG_KYRGYZ, SUBLANG_DEFAULT */

#include "nls/swk.nls"   /* 0x0441  LANG_SWAHILI, SUBLANG_DEFAULT */

#include "nls/uzl.nls"   /* 0x0443  LANG_UZBEK, SUBLANG_UZBEK_LATIN */
#include "nls/uzb.nls"   /* 0x0843  LANG_UZBEK, SUBLANG_UZBEK_CYRILLIC */

#include "nls/ttt.nls"   /* 0x0444  LANG_TATAR, SUBLANG_DEFAULT */

#include "nls/pan.nls"   /* 0x0446  LANG_PUNJABI, SUBLANG_DEFAULT */

#include "nls/guj.nls"   /* 0x0447  LANG_GUJARATI, SUBLANG_DEFAULT */

#include "nls/tam.nls"   /* 0x0449  LANG_TAMIL, SUBLANG_DEFAULT */

#include "nls/tel.nls"   /* 0x044a  LANG_TELUGU, SUBLANG_DEFAULT */

#include "nls/kan.nls"   /* 0x044b  LANG_KANNADA, SUBLANG_DEFAULT */

#include "nls/mar.nls"   /* 0x044e  LANG_MARATHI, SUBLANG_DEFAULT */

#include "nls/san.nls"   /* 0x044f  LANG_SANSKRIT, SUBLANG_DEFAULT */

#include "nls/mon.nls"   /* 0x0450  LANG_MONGOLIAN, SUBLANG_DEFAULT */

#include "nls/cym.nls"   /* 0x0452  LANG_WELSH, SUBLANG_DEFAULT */

#include "nls/glc.nls"   /* 0x0456  LANG_GALICIAN, SUBLANG_DEFAULT */

#include "nls/knk.nls"   /* 0x0457  LANG_KONKANI, SUBLANG_DEFAULT */

#include "nls/syr.nls"   /* 0x045a  LANG_SYRIAC, SUBLANG_DEFAULT */

#include "nls/div.nls"   /* 0x0465  LANG_DIVEHI, SUBLANG_DEFAULT */

#include "nls/brf.nls"   /* 0x047e  LANG_BRETON, SUBLANG_DEFAULT */


/* Wine extensions */

#include "nls/nls.nls"   /* 0x0c13  LANG_DUTCH, SUBLANG_DUTCH_SURINAM */

#include "nls/eox.nls"   /* 0x048f  LANG_ESPERANTO, SUBLANG_DEFAULT */

#include "nls/wal.nls"   /* 0x0490  LANG_WALON, SUBLANG_DEFAULT */

#include "nls/cor.nls"   /* 0x0491  LANG_CORNISH, SUBLANG_DEFAULT */

#include "nls/gae.nls"   /* 0x0494  LANG_GAELIC, SUBLANG_GAELIC */
#include "nls/gdh.nls"   /* 0x0894  LANG_GAELIC, SUBLANG_GAELIC_SCOTTISH */
#include "nls/gdv.nls"   /* 0x0c94  LANG_GAELIC, SUBLANG_GAELIC_MANX */
