RegionInfo.cs 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728
  1. using System.Globalization;
  2. namespace System.Globalization {
  3. [Serializable]
  4. public class RegionInfo {
  5. int NLS_id;
  6. public RegionInfo (int culture) {
  7. if (CultureInfo.IsIDNeutralCulture (culture))
  8. throw new ArgumentException ("Culture ID " + culture
  9. + " (0x" + culture.ToString ("X4")
  10. + ") is a neutral culture. A region can not be created from it.");
  11. switch (culture) {
  12. case 0x0401: // ar-SA Arabic (Saudi Arabia)
  13. NLS_id = 682;
  14. break;
  15. case 0x0801: // ar-IQ Arabic (Iraq)
  16. NLS_id = 368;
  17. break;
  18. case 0x0C01: // ar-EG Arabic (Egypt)
  19. NLS_id = 818;
  20. break;
  21. case 0x1001: // ar-LY Arabic (Libya)
  22. NLS_id = 434;
  23. break;
  24. case 0x1401: // ar-DZ Arabic (Algeria)
  25. NLS_id = 12;
  26. break;
  27. case 0x1801: // ar-MA Arabic (Morocco)
  28. NLS_id = 504;
  29. break;
  30. case 0x1C01: // ar-TN Arabic (Tunisia)
  31. NLS_id = 788;
  32. break;
  33. case 0x2001: // ar-OM Arabic (Oman)
  34. NLS_id = 512;
  35. break;
  36. case 0x2401: // ar-YE Arabic (Yemen)
  37. NLS_id = 887;
  38. break;
  39. case 0x2801: // ar-SY Arabic (Syria)
  40. NLS_id = 760;
  41. break;
  42. case 0x2C01: // ar-JO Arabic (Jordan)
  43. NLS_id = 400;
  44. break;
  45. case 0x3001: // ar-LB Arabic (Lebanon)
  46. NLS_id = 422;
  47. break;
  48. case 0x3401: // ar-KW Arabic (Kuwait)
  49. NLS_id = 414;
  50. break;
  51. case 0x3801: // ar-AE Arabic (U.A.E.)
  52. NLS_id = 784;
  53. break;
  54. case 0x3C01: // ar-BH Arabic (Bahrain)
  55. NLS_id = 48;
  56. break;
  57. case 0x4001: // ar-QA Arabic (Qatar)
  58. NLS_id = 634;
  59. break;
  60. case 0x0402: // bg-BG Bulgarian (Bulgaria)
  61. NLS_id = 100;
  62. break;
  63. case 0x0403: // ca-ES Catalan (Spain)
  64. NLS_id = 724;
  65. break;
  66. case 0x0404: // zh-TW Chinese (Taiwan)
  67. NLS_id = 158;
  68. break;
  69. case 0x0804: // zh-CN Chinese (People's Republic of China)
  70. NLS_id = 156;
  71. break;
  72. case 0x0C04: // zh-HK Chinese (Hong Kong S.A.R.)
  73. NLS_id = 344;
  74. break;
  75. case 0x1004: // zh-SG Chinese (Singapore)
  76. NLS_id = 702;
  77. break;
  78. case 0x1404: // zh-MO Chinese (Macau S.A.R.)
  79. NLS_id = 446;
  80. break;
  81. case 0x0405: // cs-CZ Czech (Czech Republic)
  82. NLS_id = 203;
  83. break;
  84. case 0x0406: // da-DK Danish (Denmark)
  85. NLS_id = 208;
  86. break;
  87. case 0x0407: // de-DE German (Germany)
  88. NLS_id = 276;
  89. break;
  90. case 0x0807: // de-CH German (Switzerland)
  91. NLS_id = 756;
  92. break;
  93. case 0x0C07: // de-AT German (Austria)
  94. NLS_id = 40;
  95. break;
  96. case 0x1007: // de-LU German (Luxembourg)
  97. NLS_id = 442;
  98. break;
  99. case 0x1407: // de-LI German (Liechtenstein)
  100. NLS_id = 438;
  101. break;
  102. case 0x0408: // el-GR Greek (Greece)
  103. NLS_id = 300;
  104. break;
  105. case 0x0409: // en-US English (United States)
  106. NLS_id = 840;
  107. break;
  108. case 0x0809: // en-GB English (United Kingdom)
  109. NLS_id = 826;
  110. break;
  111. case 0x0C09: // en-AU English (Australia)
  112. NLS_id = 36;
  113. break;
  114. case 0x1009: // en-CA English (Canada)
  115. NLS_id = 124;
  116. break;
  117. case 0x1409: // en-NZ English (New Zealand)
  118. NLS_id = 554;
  119. break;
  120. case 0x1809: // en-IE English (Ireland)
  121. NLS_id = 372;
  122. break;
  123. case 0x1C09: // en-ZA English (South Africa)
  124. NLS_id = 710;
  125. break;
  126. case 0x2009: // en-JM English (Jamaica)
  127. NLS_id = 388;
  128. break;
  129. case 0x2809: // en-BZ English (Belize)
  130. NLS_id = 84;
  131. break;
  132. case 0x2C09: // en-TT English (Trinidad and Tobago)
  133. NLS_id = 780;
  134. break;
  135. case 0x3009: // en-ZW English (Zimbabwe)
  136. NLS_id = 716;
  137. break;
  138. case 0x3409: // en-PH English (Republic of the Philippines)
  139. NLS_id = 608;
  140. break;
  141. case 0x080A: // es-MX Spanish (Mexico)
  142. NLS_id = 484;
  143. break;
  144. case 0x0C0A: // es-ES Spanish (Spain)
  145. NLS_id = 724;
  146. break;
  147. case 0x100A: // es-GT Spanish (Guatemala)
  148. NLS_id = 320;
  149. break;
  150. case 0x140A: // es-CR Spanish (Costa Rica)
  151. NLS_id = 188;
  152. break;
  153. case 0x180A: // es-PA Spanish (Panama)
  154. NLS_id = 591;
  155. break;
  156. case 0x1C0A: // es-DO Spanish (Dominican Republic)
  157. NLS_id = 214;
  158. break;
  159. case 0x200A: // es-VE Spanish (Venezuela)
  160. NLS_id = 862;
  161. break;
  162. case 0x240A: // es-CO Spanish (Colombia)
  163. NLS_id = 170;
  164. break;
  165. case 0x280A: // es-PE Spanish (Peru)
  166. NLS_id = 604;
  167. break;
  168. case 0x2C0A: // es-AR Spanish (Argentina)
  169. NLS_id = 32;
  170. break;
  171. case 0x300A: // es-EC Spanish (Ecuador)
  172. NLS_id = 218;
  173. break;
  174. case 0x340A: // es-CL Spanish (Chile)
  175. NLS_id = 152;
  176. break;
  177. case 0x380A: // es-UY Spanish (Uruguay)
  178. NLS_id = 858;
  179. break;
  180. case 0x3C0A: // es-PY Spanish (Paraguay)
  181. NLS_id = 600;
  182. break;
  183. case 0x400A: // es-BO Spanish (Bolivia)
  184. NLS_id = 68;
  185. break;
  186. case 0x440A: // es-SV Spanish (El Salvador)
  187. NLS_id = 222;
  188. break;
  189. case 0x480A: // es-HN Spanish (Honduras)
  190. NLS_id = 340;
  191. break;
  192. case 0x4C0A: // es-NI Spanish (Nicaragua)
  193. NLS_id = 558;
  194. break;
  195. case 0x500A: // es-PR Spanish (Puerto Rico)
  196. NLS_id = 630;
  197. break;
  198. case 0x040B: // fi-FI Finnish (Finland)
  199. NLS_id = 246;
  200. break;
  201. case 0x040C: // fr-FR French (France)
  202. NLS_id = 250;
  203. break;
  204. case 0x080C: // fr-BE French (Belgium)
  205. NLS_id = 56;
  206. break;
  207. case 0x0C0C: // fr-CA French (Canada)
  208. NLS_id = 124;
  209. break;
  210. case 0x100C: // fr-CH French (Switzerland)
  211. NLS_id = 756;
  212. break;
  213. case 0x140C: // fr-LU French (Luxembourg)
  214. NLS_id = 442;
  215. break;
  216. case 0x180C: // fr-MC French (Principality of Monaco)
  217. NLS_id = 492;
  218. break;
  219. case 0x040D: // he-IL Hebrew (Israel)
  220. NLS_id = 376;
  221. break;
  222. case 0x040E: // hu-HU Hungarian (Hungary)
  223. NLS_id = 348;
  224. break;
  225. case 0x040F: // is-IS Icelandic (Iceland)
  226. NLS_id = 352;
  227. break;
  228. case 0x0410: // it-IT Italian (Italy)
  229. NLS_id = 380;
  230. break;
  231. case 0x0810: // it-CH Italian (Switzerland)
  232. NLS_id = 756;
  233. break;
  234. case 0x0411: // ja-JP Japanese (Japan)
  235. NLS_id = 392;
  236. break;
  237. case 0x0412: // ko-KR Korean (Korea)
  238. NLS_id = 410;
  239. break;
  240. case 0x0413: // nl-NL Dutch (Netherlands)
  241. NLS_id = 528;
  242. break;
  243. case 0x0813: // nl-BE Dutch (Belgium)
  244. NLS_id = 56;
  245. break;
  246. case 0x0414: // nb-NO Norwegian (Bokm†l) (Norway)
  247. NLS_id = 578;
  248. break;
  249. case 0x0814: // nn-NO Norwegian (Nynorsk) (Norway)
  250. NLS_id = 578;
  251. break;
  252. case 0x0415: // pl-PL Polish (Poland)
  253. NLS_id = 616;
  254. break;
  255. case 0x0416: // pt-BR Portuguese (Brazil)
  256. NLS_id = 76;
  257. break;
  258. case 0x0816: // pt-PT Portuguese (Portugal)
  259. NLS_id = 620;
  260. break;
  261. case 0x0418: // ro-RO Romanian (Romania)
  262. NLS_id = 642;
  263. break;
  264. case 0x0419: // ru-RU Russian (Russia)
  265. NLS_id = 643;
  266. break;
  267. case 0x041A: // hr-HR Croatian (Croatia)
  268. NLS_id = 191;
  269. break;
  270. case 0x041B: // sk-SK Slovak (Slovakia)
  271. NLS_id = 703;
  272. break;
  273. case 0x041C: // sq-AL Albanian (Albania)
  274. NLS_id = 8;
  275. break;
  276. case 0x041D: // sv-SE Swedish (Sweden)
  277. NLS_id = 752;
  278. break;
  279. case 0x081D: // sv-FI Swedish (Finland)
  280. NLS_id = 246;
  281. break;
  282. case 0x041E: // th-TH Thai (Thailand)
  283. NLS_id = 764;
  284. break;
  285. case 0x041F: // tr-TR Turkish (Turkey)
  286. NLS_id = 792;
  287. break;
  288. case 0x0420: // ur-PK Urdu (Islamic Republic of Pakistan)
  289. NLS_id = 586;
  290. break;
  291. case 0x0421: // id-ID Indonesian (Indonesia)
  292. NLS_id = 360;
  293. break;
  294. case 0x0422: // uk-UA Ukrainian (Ukraine)
  295. NLS_id = 804;
  296. break;
  297. case 0x0423: // be-BY Belarusian (Belarus)
  298. NLS_id = 112;
  299. break;
  300. case 0x0424: // sl-SI Slovenian (Slovenia)
  301. NLS_id = 705;
  302. break;
  303. case 0x0425: // et-EE Estonian (Estonia)
  304. NLS_id = 233;
  305. break;
  306. case 0x0426: // lv-LV Latvian (Latvia)
  307. NLS_id = 428;
  308. break;
  309. case 0x0427: // lt-LT Lithuanian (Lithuania)
  310. NLS_id = 440;
  311. break;
  312. case 0x0429: // fa-IR Farsi (Iran)
  313. NLS_id = 364;
  314. break;
  315. case 0x042A: // vi-VN Vietnamese (Viet Nam)
  316. NLS_id = 704;
  317. break;
  318. case 0x042B: // hy-AM Armenian (Armenia)
  319. NLS_id = 51;
  320. break;
  321. case 0x042C: // Lt-az-AZ Azeri (Latin) (Azerbaijan)
  322. NLS_id = 31;
  323. break;
  324. case 0x082C: // Cy-az-AZ Azeri (Cyrillic) (Azerbaijan)
  325. NLS_id = 31;
  326. break;
  327. case 0x042D: // eu-ES Basque (Spain)
  328. NLS_id = 724;
  329. break;
  330. case 0x042F: // mk-MK FYRO Macedonian (Former Yugoslav Republic of Macedonia)
  331. NLS_id = 807;
  332. break;
  333. case 0x0436: // af-ZA Afrikaans (South Africa)
  334. NLS_id = 710;
  335. break;
  336. case 0x0437: // ka-GE Georgian (Georgia)
  337. NLS_id = 268;
  338. break;
  339. case 0x0438: // fo-FO Faeroese (Faeroe Islands)
  340. NLS_id = 234;
  341. break;
  342. case 0x0439: // hi-IN Hindi (India)
  343. NLS_id = 356;
  344. break;
  345. case 0x043E: // ms-MY Malay (Malaysia)
  346. NLS_id = 458;
  347. break;
  348. case 0x083E: // ms-BN Malay (Brunei Darussalam)
  349. NLS_id = 96;
  350. break;
  351. case 0x043F: // kk-KZ Kazakh (Kazakhstan)
  352. NLS_id = 398;
  353. break;
  354. case 0x0440: // ky-KZ Kyrgyz (Kyrgyzstan)
  355. NLS_id = 398;
  356. break;
  357. case 0x0441: // sw-KE Swahili (Kenya)
  358. NLS_id = 404;
  359. break;
  360. case 0x0443: // Lt-uz-UZ Uzbek (Latin) (Uzbekistan)
  361. NLS_id = 860;
  362. break;
  363. case 0x0843: // Cy-uz-UZ Uzbek (Cyrillic) (Uzbekistan)
  364. NLS_id = 860;
  365. break;
  366. case 0x0446: // pa-IN Punjabi (India)
  367. NLS_id = 356;
  368. break;
  369. case 0x0447: // gu-IN Gujarati (India)
  370. NLS_id = 356;
  371. break;
  372. case 0x0449: // ta-IN Tamil (India)
  373. NLS_id = 356;
  374. break;
  375. case 0x044A: // te-IN Telugu (India)
  376. NLS_id = 356;
  377. break;
  378. case 0x044B: // kn-IN Kannada (India)
  379. NLS_id = 356;
  380. break;
  381. case 0x044E: // mr-IN Marathi (India)
  382. NLS_id = 356;
  383. break;
  384. case 0x044F: // sa-IN Sanskrit (India)
  385. NLS_id = 356;
  386. break;
  387. case 0x0450: // mn-MN Mongolian (Mongolia)
  388. NLS_id = 496;
  389. break;
  390. case 0x0456: // gl-ES Galician (Spain)
  391. NLS_id = 724;
  392. break;
  393. case 0x0457: // kok-IN Konkani (India)
  394. NLS_id = 356;
  395. break;
  396. case 0x045A: // syr-SY Syriac (Syria)
  397. NLS_id = 760;
  398. break;
  399. case 0x0465: // div-MV Divehi (Maldives)
  400. NLS_id = 462;
  401. break;
  402. case 0x007F: // Invariant Language (Invariant Country)
  403. throw new ArgumentException ("There is no region associated with the Invariant Culture (Culture ID: 0x7F).");
  404. default:
  405. throw new ArgumentException ("Culture ID " + culture + " (0x" + culture.ToString ("X4")
  406. + ") is not a supported culture.");
  407. }
  408. }
  409. public RegionInfo (string name) {
  410. switch (name.ToUpper ()) {
  411. case "AF": // Afghanistan
  412. NLS_id = 004;
  413. break;
  414. case "AL": // Albania
  415. NLS_id = 008;
  416. break;
  417. case "DZ": // Algeria
  418. NLS_id = 012;
  419. break;
  420. case "AS": // American Samoa
  421. NLS_id = 016;
  422. break;
  423. case "AD": // Andorra
  424. NLS_id = 020;
  425. break;
  426. case "AO": // Angola
  427. NLS_id = 024;
  428. break;
  429. case "AI": // Anguilla
  430. NLS_id = 660;
  431. break;
  432. case "AQ": // Antarctica
  433. NLS_id = 010;
  434. break;
  435. case "AG": // Antigua and Barbuda
  436. NLS_id = 028;
  437. break;
  438. case "AR": // Argentina
  439. NLS_id = 032;
  440. break;
  441. case "AM": // Armenia
  442. NLS_id = 051;
  443. break;
  444. case "AW": // Aruba
  445. NLS_id = 533;
  446. break;
  447. case "AU": // Australia
  448. NLS_id = 036;
  449. break;
  450. case "AT": // Austria
  451. NLS_id = 040;
  452. break;
  453. case "AZ": // Azerbaijan
  454. NLS_id = 031;
  455. break;
  456. case "BS": // Bahamas
  457. NLS_id = 044;
  458. break;
  459. case "BH": // Bahrain
  460. NLS_id = 048;
  461. break;
  462. case "BD": // Bangladesh
  463. NLS_id = 050;
  464. break;
  465. case "BB": // Barbados
  466. NLS_id = 052;
  467. break;
  468. case "BY": // Belarus
  469. NLS_id = 112;
  470. break;
  471. case "BE": // Belgium
  472. NLS_id = 056;
  473. break;
  474. case "BZ": // Belize
  475. NLS_id = 084;
  476. break;
  477. case "BJ": // Benin
  478. NLS_id = 204;
  479. break;
  480. case "BM": // Bermuda
  481. NLS_id = 060;
  482. break;
  483. case "BT": // Bhutan
  484. NLS_id = 064;
  485. break;
  486. case "BO": // Bolivia
  487. NLS_id = 068;
  488. break;
  489. case "BA": // Bosnia and Herzegowina
  490. NLS_id = 070;
  491. break;
  492. case "BW": // Botswana
  493. NLS_id = 072;
  494. break;
  495. case "BV": // Bouvet Island
  496. NLS_id = 074;
  497. break;
  498. case "BR": // Brazil
  499. NLS_id = 076;
  500. break;
  501. case "IO": // British Indian Ocean Territory
  502. NLS_id = 086;
  503. break;
  504. case "BN": // Brunei Darussalam
  505. NLS_id = 096;
  506. break;
  507. case "BG": // Bulgaria
  508. NLS_id = 100;
  509. break;
  510. case "BF": // Burkina Faso
  511. NLS_id = 854;
  512. break;
  513. case "BI": // Burundi
  514. NLS_id = 108;
  515. break;
  516. case "KH": // Cambodia
  517. NLS_id = 116;
  518. break;
  519. case "CM": // Cameroon
  520. NLS_id = 120;
  521. break;
  522. case "CA": // Canada
  523. NLS_id = 124;
  524. break;
  525. case "CV": // Cape Verde
  526. NLS_id = 132;
  527. break;
  528. case "KY": // Cayman Islands
  529. NLS_id = 136;
  530. break;
  531. case "CF": // Central African Republic
  532. NLS_id = 140;
  533. break;
  534. case "TD": // Chad
  535. NLS_id = 148;
  536. break;
  537. case "CL": // Chile
  538. NLS_id = 152;
  539. break;
  540. case "CN": // China
  541. NLS_id = 156;
  542. break;
  543. case "CX": // Christmas Island
  544. NLS_id = 162;
  545. break;
  546. case "CC": // Cocos (Keeling) Islands
  547. NLS_id = 166;
  548. break;
  549. case "CO": // Colombia
  550. NLS_id = 170;
  551. break;
  552. case "KM": // Comoros
  553. NLS_id = 174;
  554. break;
  555. case "CG": // Congo
  556. NLS_id = 178;
  557. break;
  558. case "CK": // Cook Islands
  559. NLS_id = 184;
  560. break;
  561. case "CR": // Costa Rica
  562. NLS_id = 188;
  563. break;
  564. case "CI": // Cote D'Ivoire
  565. NLS_id = 384;
  566. break;
  567. case "HR": // Croatia (Local Name: Hrvatska)
  568. NLS_id = 191;
  569. break;
  570. case "CU": // Cuba
  571. NLS_id = 192;
  572. break;
  573. case "CY": // Cyprus
  574. NLS_id = 196;
  575. break;
  576. case "CZ": // Czech Republic
  577. NLS_id = 203;
  578. break;
  579. case "DK": // Denmark
  580. NLS_id = 208;
  581. break;
  582. case "DJ": // Djibouti
  583. NLS_id = 262;
  584. break;
  585. case "DM": // Dominica
  586. NLS_id = 212;
  587. break;
  588. case "DO": // Dominican Republic
  589. NLS_id = 214;
  590. break;
  591. case "TP": // East Timor
  592. NLS_id = 626;
  593. break;
  594. case "EC": // Ecuador
  595. NLS_id = 218;
  596. break;
  597. case "EG": // Egypt
  598. NLS_id = 818;
  599. break;
  600. case "SV": // El Salvador
  601. NLS_id = 222;
  602. break;
  603. case "GQ": // Equatorial Guinea
  604. NLS_id = 226;
  605. break;
  606. case "ER": // Eritrea
  607. NLS_id = 232;
  608. break;
  609. case "EE": // Estonia
  610. NLS_id = 233;
  611. break;
  612. case "ET": // Ethiopia
  613. NLS_id = 231;
  614. break;
  615. case "FK": // Falkland Islands (Malvinas)
  616. NLS_id = 238;
  617. break;
  618. case "FO": // Faroe Islands
  619. NLS_id = 234;
  620. break;
  621. case "FJ": // Fiji
  622. NLS_id = 242;
  623. break;
  624. case "FI": // Finland
  625. NLS_id = 246;
  626. break;
  627. case "FR": // France
  628. NLS_id = 250;
  629. break;
  630. case "FX": // France, Metropolitan
  631. NLS_id = 249;
  632. break;
  633. case "GF": // French Guiana
  634. NLS_id = 254;
  635. break;
  636. case "PF": // French Polynesia
  637. NLS_id = 258;
  638. break;
  639. case "TF": // French Southern Territories
  640. NLS_id = 260;
  641. break;
  642. case "GA": // Gabon
  643. NLS_id = 266;
  644. break;
  645. case "GM": // Gambia
  646. NLS_id = 270;
  647. break;
  648. case "GE": // Georgia
  649. NLS_id = 268;
  650. break;
  651. case "DE": // Germany
  652. NLS_id = 276;
  653. break;
  654. case "GH": // Ghana
  655. NLS_id = 288;
  656. break;
  657. case "GI": // Gibraltar
  658. NLS_id = 292;
  659. break;
  660. case "GR": // Greece
  661. NLS_id = 300;
  662. break;
  663. case "GL": // Greenland
  664. NLS_id = 304;
  665. break;
  666. case "GD": // Grenada
  667. NLS_id = 308;
  668. break;
  669. case "GP": // Guadeloupe
  670. NLS_id = 312;
  671. break;
  672. case "GU": // Guam
  673. NLS_id = 316;
  674. break;
  675. case "GT": // Guatemala
  676. NLS_id = 320;
  677. break;
  678. case "GN": // Guinea
  679. NLS_id = 324;
  680. break;
  681. case "GW": // Guinea-Bissau
  682. NLS_id = 624;
  683. break;
  684. case "GY": // Guyana
  685. NLS_id = 328;
  686. break;
  687. case "HT": // Haiti
  688. NLS_id = 332;
  689. break;
  690. case "HM": // Heard and Mc Donald Islands
  691. NLS_id = 334;
  692. break;
  693. case "VA": // Holy See (Vatican City State)
  694. NLS_id = 336;
  695. break;
  696. case "HN": // Honduras
  697. NLS_id = 340;
  698. break;
  699. case "HK": // Hong Kong
  700. NLS_id = 344;
  701. break;
  702. case "HU": // Hungary
  703. NLS_id = 348;
  704. break;
  705. case "IS": // Iceland
  706. NLS_id = 352;
  707. break;
  708. case "IN": // India
  709. NLS_id = 356;
  710. break;
  711. case "ID": // Indonesia
  712. NLS_id = 360;
  713. break;
  714. case "IR": // Iran (Islamic Republic of)
  715. NLS_id = 364;
  716. break;
  717. case "IQ": // Iraq
  718. NLS_id = 368;
  719. break;
  720. case "IE": // Ireland
  721. NLS_id = 372;
  722. break;
  723. case "IL": // Israel
  724. NLS_id = 376;
  725. break;
  726. case "IT": // Italy
  727. NLS_id = 380;
  728. break;
  729. case "JM": // Jamaica
  730. NLS_id = 388;
  731. break;
  732. case "JP": // Japan
  733. NLS_id = 392;
  734. break;
  735. case "JO": // Jordan
  736. NLS_id = 400;
  737. break;
  738. case "KZ": // Kazakhstan
  739. NLS_id = 398;
  740. break;
  741. case "KE": // Kenya
  742. NLS_id = 404;
  743. break;
  744. case "KI": // Kiribati
  745. NLS_id = 296;
  746. break;
  747. case "KP": // Korea, Democratic People's Republic of
  748. NLS_id = 408;
  749. break;
  750. case "KR": // Korea, Republic of
  751. NLS_id = 410;
  752. break;
  753. case "KW": // Kuwait
  754. NLS_id = 414;
  755. break;
  756. case "KG": // Kyrgyzstan
  757. NLS_id = 417;
  758. break;
  759. case "LA": // Lao People's Democratic Republic
  760. NLS_id = 418;
  761. break;
  762. case "LV": // Latvia
  763. NLS_id = 428;
  764. break;
  765. case "LB": // Lebanon
  766. NLS_id = 422;
  767. break;
  768. case "LS": // Lesotho
  769. NLS_id = 426;
  770. break;
  771. case "LR": // Liberia
  772. NLS_id = 430;
  773. break;
  774. case "LY": // Libyan Arab Jamahiriya
  775. NLS_id = 434;
  776. break;
  777. case "LI": // Liechtenstein
  778. NLS_id = 438;
  779. break;
  780. case "LT": // Lithuania
  781. NLS_id = 440;
  782. break;
  783. case "LU": // Luxembourg
  784. NLS_id = 442;
  785. break;
  786. case "MO": // Macau
  787. NLS_id = 446;
  788. break;
  789. case "MK": // Macedonia, The Former Yugoslav Republic of
  790. NLS_id = 807;
  791. break;
  792. case "MG": // Madagascar
  793. NLS_id = 450;
  794. break;
  795. case "MW": // Malawi
  796. NLS_id = 454;
  797. break;
  798. case "MY": // Malaysia
  799. NLS_id = 458;
  800. break;
  801. case "MV": // Maldives
  802. NLS_id = 462;
  803. break;
  804. case "ML": // Mali
  805. NLS_id = 466;
  806. break;
  807. case "MT": // Malta
  808. NLS_id = 470;
  809. break;
  810. case "MH": // Marshall Islands
  811. NLS_id = 584;
  812. break;
  813. case "MQ": // Martinique
  814. NLS_id = 474;
  815. break;
  816. case "MR": // Mauritania
  817. NLS_id = 478;
  818. break;
  819. case "MU": // Mauritius
  820. NLS_id = 480;
  821. break;
  822. case "YT": // Mayotte
  823. NLS_id = 175;
  824. break;
  825. case "MX": // Mexico
  826. NLS_id = 484;
  827. break;
  828. case "FM": // Micronesia, Federated States of
  829. NLS_id = 583;
  830. break;
  831. case "MD": // Moldova, Republic of
  832. NLS_id = 498;
  833. break;
  834. case "MC": // Monaco
  835. NLS_id = 492;
  836. break;
  837. case "MN": // Mongolia
  838. NLS_id = 496;
  839. break;
  840. case "MS": // Montserrat
  841. NLS_id = 500;
  842. break;
  843. case "MA": // Morocco
  844. NLS_id = 504;
  845. break;
  846. case "MZ": // Mozambique
  847. NLS_id = 508;
  848. break;
  849. case "MM": // Myanmar
  850. NLS_id = 104;
  851. break;
  852. case "NA": // Namibia
  853. NLS_id = 516;
  854. break;
  855. case "NR": // Nauru
  856. NLS_id = 520;
  857. break;
  858. case "NP": // Nepal
  859. NLS_id = 524;
  860. break;
  861. case "NL": // Netherlands
  862. NLS_id = 528;
  863. break;
  864. case "AN": // Netherlands Antilles
  865. NLS_id = 530;
  866. break;
  867. case "NC": // New Caledonia
  868. NLS_id = 540;
  869. break;
  870. case "NZ": // New Zealand
  871. NLS_id = 554;
  872. break;
  873. case "NI": // Nicaragua
  874. NLS_id = 558;
  875. break;
  876. case "NE": // Niger
  877. NLS_id = 562;
  878. break;
  879. case "NG": // Nigeria
  880. NLS_id = 566;
  881. break;
  882. case "NU": // Niue
  883. NLS_id = 570;
  884. break;
  885. case "NF": // Norfolk Island
  886. NLS_id = 574;
  887. break;
  888. case "MP": // Northern Mariana Islands
  889. NLS_id = 580;
  890. break;
  891. case "NO": // Norway
  892. NLS_id = 578;
  893. break;
  894. case "OM": // Oman
  895. NLS_id = 512;
  896. break;
  897. case "PK": // Pakistan
  898. NLS_id = 586;
  899. break;
  900. case "PW": // Palau
  901. NLS_id = 585;
  902. break;
  903. case "PA": // Panama
  904. NLS_id = 591;
  905. break;
  906. case "PG": // Papua New Guinea
  907. NLS_id = 598;
  908. break;
  909. case "PY": // Paraguay
  910. NLS_id = 600;
  911. break;
  912. case "PE": // Peru
  913. NLS_id = 604;
  914. break;
  915. case "PH": // Philippines
  916. NLS_id = 608;
  917. break;
  918. case "PN": // Pitcairn
  919. NLS_id = 612;
  920. break;
  921. case "PL": // Poland
  922. NLS_id = 616;
  923. break;
  924. case "PT": // Portugal
  925. NLS_id = 620;
  926. break;
  927. case "PR": // Puerto Rico
  928. NLS_id = 630;
  929. break;
  930. case "QA": // Qatar
  931. NLS_id = 634;
  932. break;
  933. case "RE": // Reunion
  934. NLS_id = 638;
  935. break;
  936. case "RO": // Romania
  937. NLS_id = 642;
  938. break;
  939. case "RU": // Russian Federation
  940. NLS_id = 643;
  941. break;
  942. case "RW": // Rwanda
  943. NLS_id = 646;
  944. break;
  945. case "KN": // Saint Kitts and Nevis
  946. NLS_id = 659;
  947. break;
  948. case "LC": // Saint Lucia
  949. NLS_id = 662;
  950. break;
  951. case "VC": // Saint Vincent and The Grenadines
  952. NLS_id = 670;
  953. break;
  954. case "WS": // Samoa
  955. NLS_id = 882;
  956. break;
  957. case "SM": // San Marino
  958. NLS_id = 674;
  959. break;
  960. case "ST": // Sao Tome and Principe
  961. NLS_id = 678;
  962. break;
  963. case "SA": // Saudi Arabia
  964. NLS_id = 682;
  965. break;
  966. case "SN": // Senegal
  967. NLS_id = 686;
  968. break;
  969. case "SC": // Seychelles
  970. NLS_id = 690;
  971. break;
  972. case "SL": // Sierra Leone
  973. NLS_id = 694;
  974. break;
  975. case "SG": // Singapore
  976. NLS_id = 702;
  977. break;
  978. case "SK": // Slovakia (Slovak Republic)
  979. NLS_id = 703;
  980. break;
  981. case "SI": // Slovenia
  982. NLS_id = 705;
  983. break;
  984. case "SB": // Solomon Islands
  985. NLS_id = 090;
  986. break;
  987. case "SO": // Somalia
  988. NLS_id = 706;
  989. break;
  990. case "ZA": // South Africa
  991. NLS_id = 710;
  992. break;
  993. case "GS": // South Georgia and The South Sandwich Islands
  994. NLS_id = 239;
  995. break;
  996. case "ES": // Spain
  997. NLS_id = 724;
  998. break;
  999. case "LK": // Sri Lanka
  1000. NLS_id = 144;
  1001. break;
  1002. case "SH": // St. Helena
  1003. NLS_id = 654;
  1004. break;
  1005. case "PM": // St. Pierre and Miquelon
  1006. NLS_id = 666;
  1007. break;
  1008. case "SD": // Sudan
  1009. NLS_id = 736;
  1010. break;
  1011. case "SR": // Suriname
  1012. NLS_id = 740;
  1013. break;
  1014. case "SJ": // Svalbard and Jan Mayen Islands
  1015. NLS_id = 744;
  1016. break;
  1017. case "SZ": // Swaziland
  1018. NLS_id = 748;
  1019. break;
  1020. case "SE": // Sweden
  1021. NLS_id = 752;
  1022. break;
  1023. case "CH": // Switzerland
  1024. NLS_id = 756;
  1025. break;
  1026. case "SY": // Syrian Arab Republic
  1027. NLS_id = 760;
  1028. break;
  1029. case "TW": // Taiwan, Province of China
  1030. NLS_id = 158;
  1031. break;
  1032. case "TJ": // Tajikistan
  1033. NLS_id = 762;
  1034. break;
  1035. case "TZ": // Tanzania, United Republic of
  1036. NLS_id = 834;
  1037. break;
  1038. case "TH": // Thailand
  1039. NLS_id = 764;
  1040. break;
  1041. case "TG": // Togo
  1042. NLS_id = 768;
  1043. break;
  1044. case "TK": // Tokelau
  1045. NLS_id = 772;
  1046. break;
  1047. case "TO": // Tonga
  1048. NLS_id = 776;
  1049. break;
  1050. case "TT": // Trinidad and Tobago
  1051. NLS_id = 780;
  1052. break;
  1053. case "TN": // Tunisia
  1054. NLS_id = 788;
  1055. break;
  1056. case "TR": // Turkey
  1057. NLS_id = 792;
  1058. break;
  1059. case "TM": // Turkmenistan
  1060. NLS_id = 795;
  1061. break;
  1062. case "TC": // Turks and Caicos Islands
  1063. NLS_id = 796;
  1064. break;
  1065. case "TV": // Tuvalu
  1066. NLS_id = 798;
  1067. break;
  1068. case "UG": // Uganda
  1069. NLS_id = 800;
  1070. break;
  1071. case "UA": // Ukraine
  1072. NLS_id = 804;
  1073. break;
  1074. case "AE": // United Arab Emirates
  1075. NLS_id = 784;
  1076. break;
  1077. case "GB": // United Kingdom
  1078. NLS_id = 826;
  1079. break;
  1080. case "US": // United States
  1081. NLS_id = 840;
  1082. break;
  1083. case "UM": // United States Minor Outlying Islands
  1084. NLS_id = 581;
  1085. break;
  1086. case "UY": // Uruguay
  1087. NLS_id = 858;
  1088. break;
  1089. case "UZ": // Uzbekistan
  1090. NLS_id = 860;
  1091. break;
  1092. case "VU": // Vanuatu
  1093. NLS_id = 548;
  1094. break;
  1095. case "VE": // Venezuela
  1096. NLS_id = 862;
  1097. break;
  1098. case "VN": // Viet Nam
  1099. NLS_id = 704;
  1100. break;
  1101. case "VG": // Virgin Islands (British)
  1102. NLS_id = 092;
  1103. break;
  1104. case "VI": // Virgin Islands (U.S.)
  1105. NLS_id = 850;
  1106. break;
  1107. case "WF": // Wallis and Futuna Islands
  1108. NLS_id = 876;
  1109. break;
  1110. case "EH": // Western Sahara
  1111. NLS_id = 732;
  1112. break;
  1113. case "YE": // Yemen
  1114. NLS_id = 887;
  1115. break;
  1116. case "YU": // Yugoslavia
  1117. NLS_id = 891;
  1118. break;
  1119. case "ZR": // Zaire
  1120. NLS_id = 180;
  1121. break;
  1122. case "ZM": // Zambia
  1123. NLS_id = 894;
  1124. break;
  1125. case "ZW": // Zimbabwe
  1126. NLS_id = 716;
  1127. break;
  1128. default:
  1129. throw new ArgumentException ("Region name " + name + " is not supported.");
  1130. }
  1131. }
  1132. public virtual string CurrencySymbol {
  1133. get {
  1134. switch (NLS_id) {
  1135. default:
  1136. throw new Exception ("Dunno what is currency symbol for " + NLS_id + " Region. FIXME.");
  1137. }
  1138. }
  1139. }
  1140. [MonoTODO]
  1141. public static RegionInfo CurrentRegion {
  1142. get {
  1143. return null;
  1144. }
  1145. }
  1146. public virtual string DisplayName {
  1147. get {
  1148. switch (NLS_id) {
  1149. case 203: // Czech republic
  1150. return "Èeská republika";
  1151. case 840: // United States
  1152. return "United States";
  1153. default:
  1154. throw new Exception ("FIXME. Please add your region name in language used in this region.");
  1155. }
  1156. }
  1157. }
  1158. public virtual string EnglishName {
  1159. get {
  1160. switch (NLS_id) {
  1161. case 004:
  1162. return "Afghanistan";
  1163. case 008:
  1164. return "Albania";
  1165. case 012:
  1166. return "Algeria";
  1167. case 016:
  1168. return "American Samoa";
  1169. case 020:
  1170. return "Andorra";
  1171. case 024:
  1172. return "Angola";
  1173. case 660:
  1174. return "Anguilla";
  1175. case 010:
  1176. return "Antarctica";
  1177. case 028:
  1178. return "Antigua and Barbuda";
  1179. case 032:
  1180. return "Argentina";
  1181. case 051:
  1182. return "Armenia";
  1183. case 533:
  1184. return "Aruba";
  1185. case 036:
  1186. return "Australia";
  1187. case 040:
  1188. return "Austria";
  1189. case 031:
  1190. return "Azerbaijan";
  1191. case 044:
  1192. return "Bahamas";
  1193. case 048:
  1194. return "Bahrain";
  1195. case 050:
  1196. return "Bangladesh";
  1197. case 052:
  1198. return "Barbados";
  1199. case 112:
  1200. return "Belarus";
  1201. case 056:
  1202. return "Belgium";
  1203. case 084:
  1204. return "Belize";
  1205. case 204:
  1206. return "Benin";
  1207. case 060:
  1208. return "Bermuda";
  1209. case 064:
  1210. return "Bhutan";
  1211. case 068:
  1212. return "Bolivia";
  1213. case 070:
  1214. return "Bosnia and Herzegowina";
  1215. case 072:
  1216. return "Botswana";
  1217. case 074:
  1218. return "Bouvet Island";
  1219. case 076:
  1220. return "Brazil";
  1221. case 086:
  1222. return "British Indian Ocean Territory";
  1223. case 096:
  1224. return "Brunei Darussalam";
  1225. case 100:
  1226. return "Bulgaria";
  1227. case 854:
  1228. return "Burkina Faso";
  1229. case 108:
  1230. return "Burundi";
  1231. case 116:
  1232. return "Cambodia";
  1233. case 120:
  1234. return "Cameroon";
  1235. case 124:
  1236. return "Canada";
  1237. case 132:
  1238. return "Cape Verde";
  1239. case 136:
  1240. return "Cayman Islands";
  1241. case 140:
  1242. return "Central African Republic";
  1243. case 148:
  1244. return "Chad";
  1245. case 152:
  1246. return "Chile";
  1247. case 156:
  1248. return "China";
  1249. case 162:
  1250. return "Christmas Island";
  1251. case 166:
  1252. return "Cocos (Keeling) Islands";
  1253. case 170:
  1254. return "Colombia";
  1255. case 174:
  1256. return "Comoros";
  1257. case 178:
  1258. return "Congo";
  1259. case 184:
  1260. return "Cook Islands";
  1261. case 188:
  1262. return "Costa Rica";
  1263. case 384:
  1264. return "Cote D'Ivoire";
  1265. case 191:
  1266. return "Croatia (Local Name: Hrvatska)";
  1267. case 192:
  1268. return "Cuba";
  1269. case 196:
  1270. return "Cyprus";
  1271. case 203:
  1272. return "Czech Republic";
  1273. case 208:
  1274. return "Denmark";
  1275. case 262:
  1276. return "Djibouti";
  1277. case 212:
  1278. return "Dominica";
  1279. case 214:
  1280. return "Dominican Republic";
  1281. case 626:
  1282. return "East Timor";
  1283. case 218:
  1284. return "Ecuador";
  1285. case 818:
  1286. return "Egypt";
  1287. case 222:
  1288. return "El Salvador";
  1289. case 226:
  1290. return "Equatorial Guinea";
  1291. case 232:
  1292. return "Eritrea";
  1293. case 233:
  1294. return "Estonia";
  1295. case 231:
  1296. return "Ethiopia";
  1297. case 238:
  1298. return "Falkland Islands (Malvinas)";
  1299. case 234:
  1300. return "Faroe Islands";
  1301. case 242:
  1302. return "Fiji";
  1303. case 246:
  1304. return "Finland";
  1305. case 250:
  1306. return "France";
  1307. case 249:
  1308. return "France, Metropolitan";
  1309. case 254:
  1310. return "French Guiana";
  1311. case 258:
  1312. return "French Polynesia";
  1313. case 260:
  1314. return "French Southern Territories";
  1315. case 266:
  1316. return "Gabon";
  1317. case 270:
  1318. return "Gambia";
  1319. case 268:
  1320. return "Georgia";
  1321. case 276:
  1322. return "Germany";
  1323. case 288:
  1324. return "Ghana";
  1325. case 292:
  1326. return "Gibraltar";
  1327. case 300:
  1328. return "Greece";
  1329. case 304:
  1330. return "Greenland";
  1331. case 308:
  1332. return "Grenada";
  1333. case 312:
  1334. return "Guadeloupe";
  1335. case 316:
  1336. return "Guam";
  1337. case 320:
  1338. return "Guatemala";
  1339. case 324:
  1340. return "Guinea";
  1341. case 624:
  1342. return "Guinea-Bissau";
  1343. case 328:
  1344. return "Guyana";
  1345. case 332:
  1346. return "Haiti";
  1347. case 334:
  1348. return "Heard and Mc Donald Islands";
  1349. case 336:
  1350. return "Holy See (Vatican City State)";
  1351. case 340:
  1352. return "Honduras";
  1353. case 344:
  1354. return "Hong Kong";
  1355. case 348:
  1356. return "Hungary";
  1357. case 352:
  1358. return "Iceland";
  1359. case 356:
  1360. return "India";
  1361. case 360:
  1362. return "Indonesia";
  1363. case 364:
  1364. return "Iran (Islamic Republic of)";
  1365. case 368:
  1366. return "Iraq";
  1367. case 372:
  1368. return "Ireland";
  1369. case 376:
  1370. return "Israel";
  1371. case 380:
  1372. return "Italy";
  1373. case 388:
  1374. return "Jamaica";
  1375. case 392:
  1376. return "Japan";
  1377. case 400:
  1378. return "Jordan";
  1379. case 398:
  1380. return "Kazakhstan";
  1381. case 404:
  1382. return "Kenya";
  1383. case 296:
  1384. return "Kiribati";
  1385. case 408:
  1386. return "Korea, Democratic People's Republic of";
  1387. case 410:
  1388. return "Korea, Republic of";
  1389. case 414:
  1390. return "Kuwait";
  1391. case 417:
  1392. return "Kyrgyzstan";
  1393. case 418:
  1394. return "Lao People's Democratic Republic";
  1395. case 428:
  1396. return "Latvia";
  1397. case 422:
  1398. return "Lebanon";
  1399. case 426:
  1400. return "Lesotho";
  1401. case 430:
  1402. return "Liberia";
  1403. case 434:
  1404. return "Libyan Arab Jamahiriya";
  1405. case 438:
  1406. return "Liechtenstein";
  1407. case 440:
  1408. return "Lithuania";
  1409. case 442:
  1410. return "Luxembourg";
  1411. case 446:
  1412. return "Macau";
  1413. case 807:
  1414. return "Macedonia, The Former Yugoslav Republic of";
  1415. case 450:
  1416. return "Madagascar";
  1417. case 454:
  1418. return "Malawi";
  1419. case 458:
  1420. return "Malaysia";
  1421. case 462:
  1422. return "Maldives";
  1423. case 466:
  1424. return "Mali";
  1425. case 470:
  1426. return "Malta";
  1427. case 584:
  1428. return "Marshall Islands";
  1429. case 474:
  1430. return "Martinique";
  1431. case 478:
  1432. return "Mauritania";
  1433. case 480:
  1434. return "Mauritius";
  1435. case 175:
  1436. return "Mayotte";
  1437. case 484:
  1438. return "Mexico";
  1439. case 583:
  1440. return "Micronesia, Federated States of";
  1441. case 498:
  1442. return "Moldova, Republic of";
  1443. case 492:
  1444. return "Monaco";
  1445. case 496:
  1446. return "Mongolia";
  1447. case 500:
  1448. return "Montserrat";
  1449. case 504:
  1450. return "Morocco";
  1451. case 508:
  1452. return "Mozambique";
  1453. case 104:
  1454. return "Myanmar";
  1455. case 516:
  1456. return "Namibia";
  1457. case 520:
  1458. return "Nauru";
  1459. case 524:
  1460. return "Nepal";
  1461. case 528:
  1462. return "Netherlands";
  1463. case 530:
  1464. return "Netherlands Antilles";
  1465. case 540:
  1466. return "New Caledonia";
  1467. case 554:
  1468. return "New Zealand";
  1469. case 558:
  1470. return "Nicaragua";
  1471. case 562:
  1472. return "Niger";
  1473. case 566:
  1474. return "Nigeria";
  1475. case 570:
  1476. return "Niue";
  1477. case 574:
  1478. return "Norfolk Island";
  1479. case 580:
  1480. return "Northern Mariana Islands";
  1481. case 578:
  1482. return "Norway";
  1483. case 512:
  1484. return "Oman";
  1485. case 586:
  1486. return "Pakistan";
  1487. case 585:
  1488. return "Palau";
  1489. case 591:
  1490. return "Panama";
  1491. case 598:
  1492. return "Papua New Guinea";
  1493. case 600:
  1494. return "Paraguay";
  1495. case 604:
  1496. return "Peru";
  1497. case 608:
  1498. return "Philippines";
  1499. case 612:
  1500. return "Pitcairn";
  1501. case 616:
  1502. return "Poland";
  1503. case 620:
  1504. return "Portugal";
  1505. case 630:
  1506. return "Puerto Rico";
  1507. case 634:
  1508. return "Qatar";
  1509. case 638:
  1510. return "Reunion";
  1511. case 642:
  1512. return "Romania";
  1513. case 643:
  1514. return "Russian Federation";
  1515. case 646:
  1516. return "Rwanda";
  1517. case 659:
  1518. return "Saint Kitts and Nevis";
  1519. case 662:
  1520. return "Saint Lucia";
  1521. case 670:
  1522. return "Saint Vincent and The Grenadines";
  1523. case 882:
  1524. return "Samoa";
  1525. case 674:
  1526. return "San Marino";
  1527. case 678:
  1528. return "Sao Tome and Principe";
  1529. case 682:
  1530. return "Saudi Arabia";
  1531. case 686:
  1532. return "Senegal";
  1533. case 690:
  1534. return "Seychelles";
  1535. case 694:
  1536. return "Sierra Leone";
  1537. case 702:
  1538. return "Singapore";
  1539. case 703:
  1540. return "Slovakia (Slovak Republic)";
  1541. case 705:
  1542. return "Slovenia";
  1543. case 090:
  1544. return "Solomon Islands";
  1545. case 706:
  1546. return "Somalia";
  1547. case 710:
  1548. return "South Africa";
  1549. case 239:
  1550. return "South Georgia and The South Sandwich Islands";
  1551. case 724:
  1552. return "Spain";
  1553. case 144:
  1554. return "Sri Lanka";
  1555. case 654:
  1556. return "St. Helena";
  1557. case 666:
  1558. return "St. Pierre and Miquelon";
  1559. case 736:
  1560. return "Sudan";
  1561. case 740:
  1562. return "Suriname";
  1563. case 744:
  1564. return "Svalbard and Jan Mayen Islands";
  1565. case 748:
  1566. return "Swaziland";
  1567. case 752:
  1568. return "Sweden";
  1569. case 756:
  1570. return "Switzerland";
  1571. case 760:
  1572. return "Syrian Arab Republic";
  1573. case 158:
  1574. return "Taiwan, Province of China";
  1575. case 762:
  1576. return "Tajikistan";
  1577. case 834:
  1578. return "Tanzania, United Republic of";
  1579. case 764:
  1580. return "Thailand";
  1581. case 768:
  1582. return "Togo";
  1583. case 772:
  1584. return "Tokelau";
  1585. case 776:
  1586. return "Tonga";
  1587. case 780:
  1588. return "Trinidad and Tobago";
  1589. case 788:
  1590. return "Tunisia";
  1591. case 792:
  1592. return "Turkey";
  1593. case 795:
  1594. return "Turkmenistan";
  1595. case 796:
  1596. return "Turks and Caicos Islands";
  1597. case 798:
  1598. return "Tuvalu";
  1599. case 800:
  1600. return "Uganda";
  1601. case 804:
  1602. return "Ukraine";
  1603. case 784:
  1604. return "United Arab Emirates";
  1605. case 826:
  1606. return "United Kingdom";
  1607. case 840:
  1608. return "United States";
  1609. case 581:
  1610. return "United States Minor Outlying Islands";
  1611. case 858:
  1612. return "Uruguay";
  1613. case 860:
  1614. return "Uzbekistan";
  1615. case 548:
  1616. return "Vanuatu";
  1617. case 862:
  1618. return "Venezuela";
  1619. case 704:
  1620. return "Viet Nam";
  1621. case 092:
  1622. return "Virgin Islands (British)";
  1623. case 850:
  1624. return "Virgin Islands (U.S.)";
  1625. case 876:
  1626. return "Wallis and Futuna Islands";
  1627. case 732:
  1628. return "Western Sahara";
  1629. case 887:
  1630. return "Yemen";
  1631. case 891:
  1632. return "Yugoslavia";
  1633. case 180:
  1634. return "Zaire";
  1635. case 894:
  1636. return "Zambia";
  1637. case 716:
  1638. return "Zimbabwe";
  1639. default:
  1640. throw new Exception ("This code should not be reached.");
  1641. }
  1642. }
  1643. }
  1644. public virtual bool IsMetric {
  1645. get {
  1646. switch (NLS_id) {
  1647. case 203: // Czech Republic
  1648. return true;
  1649. case 840: // United States
  1650. return false;
  1651. default:
  1652. throw new Exception ("FIXME. Please define.");
  1653. }
  1654. }
  1655. }
  1656. public virtual string ISOCurrencySymbol {
  1657. get {
  1658. switch (NLS_id) {
  1659. default:
  1660. throw new Exception ("This code should not be reached.");
  1661. }
  1662. }
  1663. }
  1664. [MonoTODO]
  1665. public virtual string Name
  1666. {
  1667. get {
  1668. throw new NotImplementedException();
  1669. }
  1670. }
  1671. [MonoTODO]
  1672. public virtual string ThreeLetterISORegionName
  1673. {
  1674. get {
  1675. throw new NotImplementedException();
  1676. }
  1677. }
  1678. [MonoTODO]
  1679. public virtual string ThreeLetterWindowsRegionName
  1680. {
  1681. get {
  1682. throw new NotImplementedException();
  1683. }
  1684. }
  1685. [MonoTODO]
  1686. public virtual string TwoLetterISORegionName
  1687. {
  1688. get {
  1689. throw new NotImplementedException();
  1690. }
  1691. }
  1692. //
  1693. // methods
  1694. public override bool Equals(object value) {
  1695. return value == this;
  1696. }
  1697. public override int GetHashCode () {
  1698. return NLS_id.GetHashCode ();
  1699. }
  1700. [MonoTODO]
  1701. public override string ToString()
  1702. {
  1703. throw new NotImplementedException();
  1704. }
  1705. }
  1706. }