• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# i18n<a name="EN-US_TOPIC_0000001078056612"></a>
2
3-   [Overview](#section11660541593)
4-   [Directory Structure](#section1464106163817)
5-   [Constraints](#section568761318105)
6-   [Usage](#section894511013511)
7-   [Repositories Involved](#section15583142420413)
8-   [Appendix](#section56601824115)
9
10## Overview<a name="section11660541593"></a>
11
12The internationalization module, namely, i18n, provides i18n capabilities such as formatting the date and time, obtaining the month and week names, and formatting numbers.
13
14## Directory Structure<a name="section1464106163817"></a>
15
16The directory structure for the i18n module is as follows:
17
18```
19/base/global/
20├── i18n_lite                 # Code repository for the i18n framework
21│   ├──  frameworks           # Core code of the i18n framework
22│   │   ├── i18n              # i18n module
23│   │   │   ├── include       # Header files of external APIs
24│   │   │   ├── src           # Implementation code
25│   │   │   └── test          # Test cases
26│   ├──  interfaces           # i18n framework APIs
27│   │   ├── kits              # Application APIs
28│   │   │   ├── i18n          # C/C++ i18n APIs
29│   │   │   └── js            # C/C++ support for JavaScript APIs
30```
31
32## Constraints<a name="section568761318105"></a>
33
34**Programming language**: C/C++
35
36**Supported languages**: See the Appendix.
37
38## Usage<a name="section894511013511"></a>
39
401. Change the date and time formats \(such as the sequence of year, month, and day, month and week names, and 12-hour or 24-hour system\) following the system settings to adapt to the cultural habits of users in different locales. For details, see the API reference. The sample code is as follows:
41
42    ```cpp
43    #include "date_time_format.h"
44    using namespace OHOS::I18N
45
46    LocaleInfo locale("zh", "Hans", "CN"); // Obtain the locale.
47    DateTimeFormat formatter(AvailableDateTimeFormatPattern::HOUR_MINUTE, locale); // Initialize the example date and time and obtain the data required to format the date and time for the specified locale. The first parameter specifies the formatting pattern. For details about the supported formatting patterns, see the types.h file.
48    time_t time = 3600 * 3; // Obtain the time to be formatted.
49    std::string zoneInfo = "+1:00"; // Set the time zone to be UTC+0 plus 1 hour.
50    std::string out; // Store the formatting result in the out field.
51    Ii8nStatus status = Ii8nStatus::ISUCCESS;
52    formatter.Format(time, zoneInfo, out, status); // Check the status field for the formatting result.
53
54    output:  4:00
55    ```
56
572.  Change the number format \(such as the numeral system, grouping, decimal point, and percent sign\) following the system settings to adapt to the cultural habits of users in different locales. For details, see the API reference. The sample code is as follows:
58
59    ```cpp
60    #include "number_format.h"
61    using namespace OHOS::I18N
62
63    LocaleInfo locale("en", "US");
64    int status = 0;
65    NumberFormat formatter(locale, status); // Initialize the number formatting instance and obtain the data required to format numbers for the specified locale. The value of status indicates the initialization result. If the value is 1, the initialization has failed.
66    int num = 1234
67    std::string out = formatter.Format(num, status); // Check the status field for the initialization result.
68
69    output: 1,234
70    ```
71
723. Obtain the month and week names in the format for the specified locale. The sample code is as follows:
73
74    ```cpp
75    #include "date_time_format.h"
76    using namespace OHOS::I18N
77
78    LocaleInfo locale("en", "US"); // Obtain the locale.
79    DateTimeFormat formatter(AvailableDateTimeFormatPattern::HOUR_MINUTE, locale);
80    std::string month = formatter.GetMonthName(0, DateTimeDataType::FORMAT_WIDE); //: Obtain the month name in the wide format.
81
82    output: January
83    ```
84
854. Change the plural rule type following the application's language to adapt to the cultural habits of users.
86Languages vary in how they handle plurals of nouns. For example, there can be "one apple" or "two apples" in English. Singular and plural forms of nouns are generally classified into six plural rule types: zero, one, two, a few, many, and others. Supported plural rule types vary depending on languages. For example, Chinese supports only  **others**, English supports  **one**  and  **others**, and Arabic supports all the six plural rule types. The sample code is as follows:
87
88    ```cpp
89    #include "plural_format.h"
90    using namespace OHOS::I18N
91
92    LocaleInfo locale("en", "US"); // Obtain the locale.
93    Ii8nStatus status = Ii8nStatus::ISUCCESS;
94    PluralFormatter formatter = PluralFormatter(locale, status); // Check the status field for the i18n status of the locale.
95    int out = formatter.GetPluralFormatter(1, status); // Check the status field for the plural rule type.
96
97    output: 1 // Value 1 indicates plural rule type 1.
98    ```
99
100## Repositories Involved<a name="section15583142420413"></a>
101
102[Globalization subsystem](https://gitee.com/openharmony/docs/blob/master/en/readme/globalization.md)
103
104[global\_resmgr\_lite](https://gitee.com/openharmony/global_resmgr_lite/blob/master/README.md)
105
106**global\_i18n\_lite**
107
108## Appendix<a name="section56601824115"></a>
109
110Supported languages
111
112<a name="table1155163353316"></a>
113<table><thead align="left"><tr id="row12551103373310"><th class="cellrowborder" valign="top" width="16.666666666666664%" id="mcps1.1.7.1.1"><p id="p2551233113320"><a name="p2551233113320"></a><a name="p2551233113320"></a>Code</p>
114</th>
115<th class="cellrowborder" valign="top" width="16.666666666666664%" id="mcps1.1.7.1.2"><p id="p4551033123313"><a name="p4551033123313"></a><a name="p4551033123313"></a>Name of Language</p>
116</th>
117<th class="cellrowborder" valign="top" width="16.666666666666664%" id="mcps1.1.7.1.3"><p id="p16551113323317"><a name="p16551113323317"></a><a name="p16551113323317"></a>Code</p>
118</th>
119<th class="cellrowborder" valign="top" width="16.666666666666664%" id="mcps1.1.7.1.4"><p id="p5551113317339"><a name="p5551113317339"></a><a name="p5551113317339"></a>Name of Language</p>
120</th>
121<th class="cellrowborder" valign="top" width="16.666666666666664%" id="mcps1.1.7.1.5"><p id="p9551133383310"><a name="p9551133383310"></a><a name="p9551133383310"></a>Code</p>
122</th>
123<th class="cellrowborder" valign="top" width="16.666666666666664%" id="mcps1.1.7.1.6"><p id="p25511633143312"><a name="p25511633143312"></a><a name="p25511633143312"></a>Name of Language</p>
124</th>
125</tr>
126</thead>
127<tbody><tr id="row1155119337333"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p1642315461918"><a name="p1642315461918"></a><a name="p1642315461918"></a>am_ET</p>
128</td>
129<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p842312418199"><a name="p842312418199"></a><a name="p842312418199"></a>Amharic</p>
130</td>
131<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p15959151711194"><a name="p15959151711194"></a><a name="p15959151711194"></a>hr_HR</p>
132</td>
133<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p795921716199"><a name="p795921716199"></a><a name="p795921716199"></a>Croatian</p>
134</td>
135<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p18915730141911"><a name="p18915730141911"></a><a name="p18915730141911"></a>or-IN</p>
136</td>
137<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p4915530181918"><a name="p4915530181918"></a><a name="p4915530181918"></a>Odia</p>
138</td>
139</tr>
140<tr id="row8552833113319"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p342314171912"><a name="p342314171912"></a><a name="p342314171912"></a>ar_EG</p>
141</td>
142<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p1142312413190"><a name="p1142312413190"></a><a name="p1142312413190"></a>Arabic</p>
143</td>
144<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p1959181771915"><a name="p1959181771915"></a><a name="p1959181771915"></a>hu_HU</p>
145</td>
146<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p295910172195"><a name="p295910172195"></a><a name="p295910172195"></a>Hungarian</p>
147</td>
148<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p1915930121910"><a name="p1915930121910"></a><a name="p1915930121910"></a>pa_IN</p>
149</td>
150<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p491513302195"><a name="p491513302195"></a><a name="p491513302195"></a>Punjabi, Panjabi</p>
151</td>
152</tr>
153<tr id="row155203333310"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p144235415191"><a name="p144235415191"></a><a name="p144235415191"></a>as_IN</p>
154</td>
155<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p54231410192"><a name="p54231410192"></a><a name="p54231410192"></a>Assamese</p>
156</td>
157<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p1295991711198"><a name="p1295991711198"></a><a name="p1295991711198"></a>in_ID</p>
158</td>
159<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p99591417111911"><a name="p99591417111911"></a><a name="p99591417111911"></a>Indonesian</p>
160</td>
161<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p791516304193"><a name="p791516304193"></a><a name="p791516304193"></a>pl_PL</p>
162</td>
163<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p10915230161914"><a name="p10915230161914"></a><a name="p10915230161914"></a>Polish</p>
164</td>
165</tr>
166<tr id="row15531233183310"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p144232481912"><a name="p144232481912"></a><a name="p144232481912"></a>az_AZ</p>
167</td>
168<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p842316410198"><a name="p842316410198"></a><a name="p842316410198"></a>Azerbaijani</p>
169</td>
170<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p13959171701919"><a name="p13959171701919"></a><a name="p13959171701919"></a>it_IT</p>
171</td>
172<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p1895961781916"><a name="p1895961781916"></a><a name="p1895961781916"></a>Italian</p>
173</td>
174<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p16915133071912"><a name="p16915133071912"></a><a name="p16915133071912"></a>pt_BR</p>
175</td>
176<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p5915130131912"><a name="p5915130131912"></a><a name="p5915130131912"></a>Portuguese (Brazil)</p>
177</td>
178</tr>
179<tr id="row755353313317"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p1042324121912"><a name="p1042324121912"></a><a name="p1042324121912"></a>be_BY</p>
180</td>
181<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p154245441911"><a name="p154245441911"></a><a name="p154245441911"></a>Belarusian</p>
182</td>
183<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p495931741915"><a name="p495931741915"></a><a name="p495931741915"></a>iw_IL</p>
184</td>
185<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p1495914176198"><a name="p1495914176198"></a><a name="p1495914176198"></a>Hebrew</p>
186</td>
187<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p7916193016198"><a name="p7916193016198"></a><a name="p7916193016198"></a>pt_PT</p>
188</td>
189<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p1291683021916"><a name="p1291683021916"></a><a name="p1291683021916"></a>Portuguese (Europe)</p>
190</td>
191</tr>
192<tr id="row10553113311338"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p242434121918"><a name="p242434121918"></a><a name="p242434121918"></a>bg_BG</p>
193</td>
194<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p1442410411193"><a name="p1442410411193"></a><a name="p1442410411193"></a>Bulgarian</p>
195</td>
196<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p10959191713197"><a name="p10959191713197"></a><a name="p10959191713197"></a>ja_JP</p>
197</td>
198<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p149591317131911"><a name="p149591317131911"></a><a name="p149591317131911"></a>Japanese</p>
199</td>
200<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p209167305198"><a name="p209167305198"></a><a name="p209167305198"></a>ro_RO</p>
201</td>
202<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p15916430181914"><a name="p15916430181914"></a><a name="p15916430181914"></a>Romanian; Moldavian; Moldovan</p>
203</td>
204</tr>
205<tr id="row1255311336338"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p442417412197"><a name="p442417412197"></a><a name="p442417412197"></a>bn_BD</p>
206</td>
207<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p6424144195"><a name="p6424144195"></a><a name="p6424144195"></a>Bengali</p>
208</td>
209<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p89597175199"><a name="p89597175199"></a><a name="p89597175199"></a>jv_ID</p>
210</td>
211<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p895981711191"><a name="p895981711191"></a><a name="p895981711191"></a>Javanese</p>
212</td>
213<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p139161130201917"><a name="p139161130201917"></a><a name="p139161130201917"></a>ru_RU</p>
214</td>
215<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p991615309194"><a name="p991615309194"></a><a name="p991615309194"></a>Russian</p>
216</td>
217</tr>
218<tr id="row10554103373313"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p19424164191912"><a name="p19424164191912"></a><a name="p19424164191912"></a>bo_CN</p>
219</td>
220<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p7424944194"><a name="p7424944194"></a><a name="p7424944194"></a>Tibetan</p>
221</td>
222<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p995991791915"><a name="p995991791915"></a><a name="p995991791915"></a>ka_GE</p>
223</td>
224<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p1395951761911"><a name="p1395951761911"></a><a name="p1395951761911"></a>Georgian</p>
225</td>
226<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p79161630131915"><a name="p79161630131915"></a><a name="p79161630131915"></a>si_LK</p>
227</td>
228<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p1791613016194"><a name="p1791613016194"></a><a name="p1791613016194"></a>Sinhala</p>
229</td>
230</tr>
231<tr id="row3554113383312"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p1642419414190"><a name="p1642419414190"></a><a name="p1642419414190"></a>bs_BA</p>
232</td>
233<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p1442424191913"><a name="p1442424191913"></a><a name="p1442424191913"></a>Bosnian</p>
234</td>
235<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p69605176198"><a name="p69605176198"></a><a name="p69605176198"></a>kk_KZ</p>
236</td>
237<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p1696051717196"><a name="p1696051717196"></a><a name="p1696051717196"></a>Kazakh (Cyrillic)</p>
238</td>
239<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p10916163010192"><a name="p10916163010192"></a><a name="p10916163010192"></a>sk_SK</p>
240</td>
241<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p791618306194"><a name="p791618306194"></a><a name="p791618306194"></a>Slovak</p>
242</td>
243</tr>
244<tr id="row055420336334"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p164243412193"><a name="p164243412193"></a><a name="p164243412193"></a>ca_ES</p>
245</td>
246<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p1742484101914"><a name="p1742484101914"></a><a name="p1742484101914"></a>Catalan</p>
247</td>
248<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p20960191717199"><a name="p20960191717199"></a><a name="p20960191717199"></a>km_KH</p>
249</td>
250<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p89601517121919"><a name="p89601517121919"></a><a name="p89601517121919"></a>Khmer</p>
251</td>
252<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p129161930151919"><a name="p129161930151919"></a><a name="p129161930151919"></a>sl_SI</p>
253</td>
254<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p119161130131916"><a name="p119161130131916"></a><a name="p119161130131916"></a>Slovenian</p>
255</td>
256</tr>
257<tr id="row455463316336"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p204245415194"><a name="p204245415194"></a><a name="p204245415194"></a>cs_CZ</p>
258</td>
259<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p114240481913"><a name="p114240481913"></a><a name="p114240481913"></a>Czech</p>
260</td>
261<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p18960181712197"><a name="p18960181712197"></a><a name="p18960181712197"></a>kn_IN</p>
262</td>
263<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p15960181713190"><a name="p15960181713190"></a><a name="p15960181713190"></a>Kannada</p>
264</td>
265<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p0916153010199"><a name="p0916153010199"></a><a name="p0916153010199"></a>sr_Latn_RS sr_RS</p>
266</td>
267<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p9916103014196"><a name="p9916103014196"></a><a name="p9916103014196"></a>Serbian (Latin)</p>
268</td>
269</tr>
270<tr id="row155523315331"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p4425134141916"><a name="p4425134141916"></a><a name="p4425134141916"></a>da_DK</p>
271</td>
272<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p5425194111910"><a name="p5425194111910"></a><a name="p5425194111910"></a>Danish</p>
273</td>
274<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p119601217171917"><a name="p119601217171917"></a><a name="p119601217171917"></a>ko_KR</p>
275</td>
276<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p7960191712191"><a name="p7960191712191"></a><a name="p7960191712191"></a>Korean</p>
277</td>
278<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p1691618306198"><a name="p1691618306198"></a><a name="p1691618306198"></a>sv_SE</p>
279</td>
280<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p89161630121916"><a name="p89161630121916"></a><a name="p89161630121916"></a>Swedish</p>
281</td>
282</tr>
283<tr id="row1355553314338"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p124251149199"><a name="p124251149199"></a><a name="p124251149199"></a>de_DE</p>
284</td>
285<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p3425648194"><a name="p3425648194"></a><a name="p3425648194"></a>German</p>
286</td>
287<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p179605177198"><a name="p179605177198"></a><a name="p179605177198"></a>lo_LA</p>
288</td>
289<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p296041781912"><a name="p296041781912"></a><a name="p296041781912"></a>Lao</p>
290</td>
291<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p1891615300198"><a name="p1891615300198"></a><a name="p1891615300198"></a>sw_TZ</p>
292</td>
293<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p29160307191"><a name="p29160307191"></a><a name="p29160307191"></a>Swahili</p>
294</td>
295</tr>
296<tr id="row855573323320"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p94259491916"><a name="p94259491916"></a><a name="p94259491916"></a>el_GR</p>
297</td>
298<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p1425849195"><a name="p1425849195"></a><a name="p1425849195"></a>Greek</p>
299</td>
300<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p7960111751911"><a name="p7960111751911"></a><a name="p7960111751911"></a>lt_LT</p>
301</td>
302<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p096015176192"><a name="p096015176192"></a><a name="p096015176192"></a>Lithuanian</p>
303</td>
304<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p159161230111912"><a name="p159161230111912"></a><a name="p159161230111912"></a>ta_IN</p>
305</td>
306<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p291653011917"><a name="p291653011917"></a><a name="p291653011917"></a>Tamil</p>
307</td>
308</tr>
309<tr id="row455517330330"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p1042594191916"><a name="p1042594191916"></a><a name="p1042594191916"></a>en_GB</p>
310</td>
311<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p34256401915"><a name="p34256401915"></a><a name="p34256401915"></a>English (UK)</p>
312</td>
313<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p1296071711193"><a name="p1296071711193"></a><a name="p1296071711193"></a>lv_LV</p>
314</td>
315<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p49601717101910"><a name="p49601717101910"></a><a name="p49601717101910"></a>Latvian</p>
316</td>
317<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p6916103081916"><a name="p6916103081916"></a><a name="p6916103081916"></a>te_IN</p>
318</td>
319<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p19916133015196"><a name="p19916133015196"></a><a name="p19916133015196"></a>Telugu</p>
320</td>
321</tr>
322<tr id="row7556143312334"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p1642504131918"><a name="p1642504131918"></a><a name="p1642504131918"></a>en_US</p>
323</td>
324<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p64259441920"><a name="p64259441920"></a><a name="p64259441920"></a>English (US)</p>
325</td>
326<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p18960161731910"><a name="p18960161731910"></a><a name="p18960161731910"></a>mai-Deva-IN</p>
327</td>
328<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p296051718193"><a name="p296051718193"></a><a name="p296051718193"></a>Maithili</p>
329</td>
330<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p391753011919"><a name="p391753011919"></a><a name="p391753011919"></a>th_TH</p>
331</td>
332<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p1291753016194"><a name="p1291753016194"></a><a name="p1291753016194"></a>Thai</p>
333</td>
334</tr>
335<tr id="row115564335332"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p1342534191910"><a name="p1342534191910"></a><a name="p1342534191910"></a>es_ES</p>
336</td>
337<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p1942518419199"><a name="p1942518419199"></a><a name="p1942518419199"></a>Spanish (Europe)</p>
338</td>
339<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p1696010177195"><a name="p1696010177195"></a><a name="p1696010177195"></a>mi-NZ</p>
340</td>
341<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p7960121718191"><a name="p7960121718191"></a><a name="p7960121718191"></a>Maori</p>
342</td>
343<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p1391718301197"><a name="p1391718301197"></a><a name="p1391718301197"></a>tl_PH</p>
344</td>
345<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p7917153081918"><a name="p7917153081918"></a><a name="p7917153081918"></a>Tagalog</p>
346</td>
347</tr>
348<tr id="row14556173314335"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p114251748198"><a name="p114251748198"></a><a name="p114251748198"></a>es_US</p>
349</td>
350<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p15425843198"><a name="p15425843198"></a><a name="p15425843198"></a>Spanish (Latin America)</p>
351</td>
352<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p139601917191914"><a name="p139601917191914"></a><a name="p139601917191914"></a>mk_MK</p>
353</td>
354<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p1496016178191"><a name="p1496016178191"></a><a name="p1496016178191"></a>Macedonian</p>
355</td>
356<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p9917530161919"><a name="p9917530161919"></a><a name="p9917530161919"></a>tr_TR</p>
357</td>
358<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p169171330171914"><a name="p169171330171914"></a><a name="p169171330171914"></a>Turkish</p>
359</td>
360</tr>
361<tr id="row15556333173313"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p14425645195"><a name="p14425645195"></a><a name="p14425645195"></a>et_EE</p>
362</td>
363<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p842513431911"><a name="p842513431911"></a><a name="p842513431911"></a>Estonian</p>
364</td>
365<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p896061791916"><a name="p896061791916"></a><a name="p896061791916"></a>ml_IN</p>
366</td>
367<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p1096018172190"><a name="p1096018172190"></a><a name="p1096018172190"></a>Malayalam</p>
368</td>
369<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p991743017195"><a name="p991743017195"></a><a name="p991743017195"></a>uk_UA</p>
370</td>
371<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p991710309199"><a name="p991710309199"></a><a name="p991710309199"></a>Ukrainian</p>
372</td>
373</tr>
374<tr id="row1855613353314"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p542654141917"><a name="p542654141917"></a><a name="p542654141917"></a>eu_ES</p>
375</td>
376<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p342613481912"><a name="p342613481912"></a><a name="p342613481912"></a>Basque</p>
377</td>
378<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p2096021715195"><a name="p2096021715195"></a><a name="p2096021715195"></a>mn_MN</p>
379</td>
380<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p1396031741915"><a name="p1396031741915"></a><a name="p1396031741915"></a>Mongolia</p>
381</td>
382<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p491773041913"><a name="p491773041913"></a><a name="p491773041913"></a>ur_PK</p>
383</td>
384<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p491753071916"><a name="p491753071916"></a><a name="p491753071916"></a>Urdu</p>
385</td>
386</tr>
387<tr id="row1355743319338"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p94261947191"><a name="p94261947191"></a><a name="p94261947191"></a>fa_IR</p>
388</td>
389<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p194262041193"><a name="p194262041193"></a><a name="p194262041193"></a>Persian</p>
390</td>
391<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p109611217131915"><a name="p109611217131915"></a><a name="p109611217131915"></a>mr_IN</p>
392</td>
393<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p1696141718197"><a name="p1696141718197"></a><a name="p1696141718197"></a>Marathi</p>
394</td>
395<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p2091783015192"><a name="p2091783015192"></a><a name="p2091783015192"></a>uz_UZ</p>
396</td>
397<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p209171730151917"><a name="p209171730151917"></a><a name="p209171730151917"></a>Uzbek</p>
398</td>
399</tr>
400<tr id="row555743317339"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p174262471919"><a name="p174262471919"></a><a name="p174262471919"></a>fi_FI</p>
401</td>
402<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p144269418197"><a name="p144269418197"></a><a name="p144269418197"></a>Finnish</p>
403</td>
404<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p1796161741910"><a name="p1796161741910"></a><a name="p1796161741910"></a>ms_MY</p>
405</td>
406<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p89611617161917"><a name="p89611617161917"></a><a name="p89611617161917"></a>Malay</p>
407</td>
408<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p9917193017194"><a name="p9917193017194"></a><a name="p9917193017194"></a>vi_VN</p>
409</td>
410<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p149178302196"><a name="p149178302196"></a><a name="p149178302196"></a>Vietnamese</p>
411</td>
412</tr>
413<tr id="row16557333153316"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p204269417197"><a name="p204269417197"></a><a name="p204269417197"></a>fr_FR</p>
414</td>
415<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p15426745195"><a name="p15426745195"></a><a name="p15426745195"></a>French</p>
416</td>
417<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p189611917121913"><a name="p189611917121913"></a><a name="p189611917121913"></a>my_MM my_ZG</p>
418</td>
419<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p79611117131910"><a name="p79611117131910"></a><a name="p79611117131910"></a>Burmese</p>
420</td>
421<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p12917193041917"><a name="p12917193041917"></a><a name="p12917193041917"></a>zh_CN</p>
422</td>
423<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p19917143071916"><a name="p19917143071916"></a><a name="p19917143071916"></a>Simplified Chinese</p>
424</td>
425</tr>
426<tr id="row1055743383312"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p1742674191920"><a name="p1742674191920"></a><a name="p1742674191920"></a>gl_ES</p>
427</td>
428<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p242619414192"><a name="p242619414192"></a><a name="p242619414192"></a>Galician</p>
429</td>
430<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p13961717121916"><a name="p13961717121916"></a><a name="p13961717121916"></a>nb_NO</p>
431</td>
432<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p2096111751916"><a name="p2096111751916"></a><a name="p2096111751916"></a>Norwegian</p>
433</td>
434<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p139171630101910"><a name="p139171630101910"></a><a name="p139171630101910"></a>zh_HK</p>
435</td>
436<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p3917330191918"><a name="p3917330191918"></a><a name="p3917330191918"></a>Traditional Chinese (Hong Kong, China)</p>
437</td>
438</tr>
439<tr id="row455873319339"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p34261948195"><a name="p34261948195"></a><a name="p34261948195"></a>gu_IN</p>
440</td>
441<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p1842616481918"><a name="p1842616481918"></a><a name="p1842616481918"></a>Gujarati</p>
442</td>
443<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p996181717197"><a name="p996181717197"></a><a name="p996181717197"></a>ne_NP</p>
444</td>
445<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p69611517101918"><a name="p69611517101918"></a><a name="p69611517101918"></a>Nepali</p>
446</td>
447<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 "><p id="p1491714309196"><a name="p1491714309196"></a><a name="p1491714309196"></a>zh_TW</p>
448</td>
449<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 "><p id="p14917163011918"><a name="p14917163011918"></a><a name="p14917163011918"></a>Traditional Chinese (Taiwan, China)</p>
450</td>
451</tr>
452<tr id="row9558833183312"><td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.1 "><p id="p134261645197"><a name="p134261645197"></a><a name="p134261645197"></a>hi_IN</p>
453</td>
454<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.2 "><p id="p74260415197"><a name="p74260415197"></a><a name="p74260415197"></a>Hindi</p>
455</td>
456<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.3 "><p id="p15961417181916"><a name="p15961417181916"></a><a name="p15961417181916"></a>nl_NL</p>
457</td>
458<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.4 "><p id="p89611317191919"><a name="p89611317191919"></a><a name="p89611317191919"></a>Dutch; Flemish</p>
459</td>
460<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.5 ">&nbsp;&nbsp;</td>
461<td class="cellrowborder" valign="top" width="16.666666666666664%" headers="mcps1.1.7.1.6 ">&nbsp;&nbsp;</td>
462</tr>
463</tbody>
464</table>
465
466