KeyboardTextsSet.java revision 9ecf63468652b68ee1003d04ce167c1586e03748
12be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka/*
22be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka * Copyright (C) 2012 The Android Open Source Project
32be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka *
42be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka * Licensed under the Apache License, Version 2.0 (the "License"); you may not
52be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka * use this file except in compliance with the License. You may obtain a copy of
62be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka * the License at
72be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka *
82be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka * http://www.apache.org/licenses/LICENSE-2.0
92be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka *
102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka * Unless required by applicable law or agreed to in writing, software
112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka * License for the specific language governing permissions and limitations under
142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka * the License.
152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka */
162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaokapackage com.android.inputmethod.keyboard.internal;
182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaokaimport android.content.Context;
202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaokaimport android.content.res.Resources;
212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaokaimport com.android.inputmethod.latin.R;
232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaokaimport java.util.HashMap;
252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka/**
272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka * !!!!! DO NOT EDIT THIS FILE !!!!!
28aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka *
29aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka * This file is generated by tools/maketext. The base template file is
30aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka *   tools/maketext/res/com/android/inputmethod/keyboard/internal/KeyboardTextsSet.tmpl
31aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka *
32aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka * This file must be updated when any text resources in keyboard layout files have been changed.
33aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka * These text resources are referred as "!text/<resource_name>" in keyboard XML definitions,
34aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka * and should be defined in
35aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka *   tools/maketext/res/values-<locale>/donottranslate-more-keys.xml
36aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka *
37aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka * To update this file, please run the following commands.
38aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka *   $ cd $ANDROID_BUILD_TOP
39aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka *   $ mmm packages/inputmethods/LatinIME/tools/maketext
40aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka *   $ maketext -java packages/inputmethods/LatinIME/java/src
41aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka *
42aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka * The updated source file will be generated to the following path (this file).
43aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka *   packages/inputmethods/LatinIME/java/src/com/android/inputmethod/keyboard/internal/
44aaac9a52175b4354af50d9136be5e3f6727f6a31Tadashi G. Takaoka *   KeyboardTextsSet.java
452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka */
466bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaokapublic final class KeyboardTextsSet {
476bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka    // Language to texts map.
486bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka    private static final HashMap<String, String[]> sLocaleToTextsMap =
492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka            new HashMap<String, String[]>();
500a3362d26474cbd60bf870be7ad1413359e4fad6Tadashi G. Takaoka    private static final HashMap<String, Integer> sNameToIdsMap =
512f16fd40faab7287dfcae4899050b9df360d0c29Tadashi G. Takaoka            new HashMap<String, Integer>();
522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
536bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka    private String[] mTexts;
546bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka    // Resource name to text map.
556bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka    private HashMap<String, String> mResourceNameToTextsMap = new HashMap<String, String>();
562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    public void setLanguage(final String language) {
586bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka        mTexts = sLocaleToTextsMap.get(language);
596bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka        if (mTexts == null) {
606bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka            mTexts = LANGUAGE_DEFAULT;
612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        }
622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    }
632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    public void loadStringResources(Context context) {
652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        loadStringResourcesInternal(context, RESOURCE_NAMES, R.string.english_ime_name);
662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    }
672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* package for test */
692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    void loadStringResourcesInternal(Context context, final String[] resourceNames,
702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka            int referenceId) {
712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        final Resources res = context.getResources();
722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        final String packageName = res.getResourcePackageName(referenceId);
732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        for (final String resName : resourceNames) {
742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka            final int resId = res.getIdentifier(resName, "string", packageName);
756bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka            mResourceNameToTextsMap.put(resName, res.getString(resId));
762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        }
772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    }
782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
796bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka    public String getText(final String name) {
806bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka        String text = mResourceNameToTextsMap.get(name);
816bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka        if (text != null) {
826bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka            return text;
832f16fd40faab7287dfcae4899050b9df360d0c29Tadashi G. Takaoka        }
840a3362d26474cbd60bf870be7ad1413359e4fad6Tadashi G. Takaoka        final Integer id = sNameToIdsMap.get(name);
852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        if (id == null) throw new RuntimeException("Unknown label: " + name);
866bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka        text = (id < mTexts.length) ? mTexts[id] : null;
876bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka        return (text == null) ? LANGUAGE_DEFAULT[id] : text;
882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    }
892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] RESOURCE_NAMES = {
916bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka        // These texts' name should be aligned with the @string/<name> in values/strings.xml.
922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // Labels for action.
932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "label_go_key",
942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // "label_search_key",
952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "label_send_key",
962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "label_next_key",
972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "label_done_key",
982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "label_previous_key",
992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // Other labels.
1002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "label_to_alpha_key",
1012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "label_to_symbol_key",
1022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "label_to_symbol_with_microphone_key",
1032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "label_pause_key",
1042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "label_wait_key",
1052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
1062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
1072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] NAMES = {
1082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /*  0 */ "more_keys_for_a",
1092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /*  1 */ "more_keys_for_e",
1102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /*  2 */ "more_keys_for_i",
1112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /*  3 */ "more_keys_for_o",
1122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /*  4 */ "more_keys_for_u",
1132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /*  5 */ "more_keys_for_s",
1142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /*  6 */ "more_keys_for_n",
1152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /*  7 */ "more_keys_for_c",
1162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /*  8 */ "more_keys_for_y",
1172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /*  9 */ "more_keys_for_d",
1182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 10 */ "more_keys_for_r",
1192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 11 */ "more_keys_for_t",
1202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12 */ "more_keys_for_z",
1212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 13 */ "more_keys_for_k",
1222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 14 */ "more_keys_for_l",
1232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 15 */ "more_keys_for_g",
1242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 16 */ "more_keys_for_v",
1252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 17 */ "more_keys_for_h",
1262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 18 */ "more_keys_for_j",
1272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 19 */ "more_keys_for_w",
1282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 20 */ "keylabel_for_nordic_row1_11",
1292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 21 */ "keylabel_for_nordic_row2_10",
1302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 22 */ "keylabel_for_nordic_row2_11",
1312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 23 */ "more_keys_for_nordic_row2_10",
1322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 24 */ "more_keys_for_nordic_row2_11",
1332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 25 */ "keylabel_for_east_slavic_row1_9",
1342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 26 */ "keylabel_for_east_slavic_row2_1",
1352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 27 */ "keylabel_for_east_slavic_row3_5",
1362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 28 */ "more_keys_for_cyrillic_u",
1372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 29 */ "more_keys_for_cyrillic_ye",
1382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 30 */ "more_keys_for_cyrillic_en",
1392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 31 */ "more_keys_for_cyrillic_ha",
1402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 32 */ "more_keys_for_east_slavic_row2_1",
1412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 33 */ "more_keys_for_cyrillic_o",
1422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 34 */ "more_keys_for_cyrillic_soft_sign",
1432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 35 */ "keylabel_for_south_slavic_row1_6",
1442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 36 */ "keylabel_for_south_slavic_row2_11",
1452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 37 */ "keylabel_for_south_slavic_row3_1",
1462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 38 */ "keylabel_for_south_slavic_row3_8",
1472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 39 */ "more_keys_for_cyrillic_ie",
1482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 40 */ "more_keys_for_cyrillic_i",
1492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 41 */ "more_keys_for_single_quote",
1502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 42 */ "more_keys_for_double_quote",
1512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 43 */ "more_keys_for_tablet_double_quote",
1522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 44 */ "more_keys_for_currency_dollar",
1532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 45 */ "more_keys_for_currency_euro",
1542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 46 */ "more_keys_for_currency_pound",
1552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 47 */ "more_keys_for_currency_general",
156ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 48 */ "more_keys_for_punctuation",
157ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 49 */ "more_keys_for_star",
158ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 50 */ "more_keys_for_bullet",
159ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 51 */ "more_keys_for_plus",
160ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 52 */ "more_keys_for_left_parenthesis",
161ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 53 */ "more_keys_for_right_parenthesis",
162ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 54 */ "more_keys_for_less_than",
163ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 55 */ "more_keys_for_greater_than",
1641db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 56 */ "more_keys_for_arabic_diacritics",
1651db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 57 */ "keyhintlabel_for_arabic_diacritics",
1661db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 58 */ "keylabel_for_symbols_1",
1671db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 59 */ "keylabel_for_symbols_2",
1681db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 60 */ "keylabel_for_symbols_3",
1691db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 61 */ "keylabel_for_symbols_4",
1701db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 62 */ "keylabel_for_symbols_5",
1711db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 63 */ "keylabel_for_symbols_6",
1721db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 64 */ "keylabel_for_symbols_7",
1731db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 65 */ "keylabel_for_symbols_8",
1741db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 66 */ "keylabel_for_symbols_9",
1751db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 67 */ "keylabel_for_symbols_0",
1761db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 68 */ "additional_more_keys_for_symbols_1",
1771db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 69 */ "additional_more_keys_for_symbols_2",
1781db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 70 */ "additional_more_keys_for_symbols_3",
1791db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 71 */ "additional_more_keys_for_symbols_4",
1801db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 72 */ "additional_more_keys_for_symbols_5",
1811db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 73 */ "additional_more_keys_for_symbols_6",
1821db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 74 */ "additional_more_keys_for_symbols_7",
1831db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 75 */ "additional_more_keys_for_symbols_8",
1841db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 76 */ "additional_more_keys_for_symbols_9",
1851db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 77 */ "additional_more_keys_for_symbols_0",
1861db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 78 */ "more_keys_for_symbols_1",
1871db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 79 */ "more_keys_for_symbols_2",
1881db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 80 */ "more_keys_for_symbols_3",
1891db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 81 */ "more_keys_for_symbols_4",
1901db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 82 */ "more_keys_for_symbols_5",
1911db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 83 */ "more_keys_for_symbols_6",
1921db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 84 */ "more_keys_for_symbols_7",
1931db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 85 */ "more_keys_for_symbols_8",
1941db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 86 */ "more_keys_for_symbols_9",
1951db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 87 */ "more_keys_for_symbols_0",
1961db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 88 */ "keylabel_for_comma",
1971db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 89 */ "more_keys_for_comma",
198af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 90 */ "keylabel_for_symbols_question",
199af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 91 */ "keylabel_for_symbols_semicolon",
200af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 92 */ "keylabel_for_symbols_percent",
201af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 93 */ "more_keys_for_symbols_exclamation",
202af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 94 */ "more_keys_for_symbols_question",
203af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 95 */ "more_keys_for_symbols_semicolon",
204af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 96 */ "more_keys_for_symbols_percent",
205af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 97 */ "keylabel_for_tablet_comma",
206af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 98 */ "keyhintlabel_for_tablet_comma",
207af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 99 */ "more_keys_for_tablet_comma",
208af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 100 */ "keyhintlabel_for_tablet_period",
209af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 101 */ "more_keys_for_tablet_period",
210af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 102 */ "keylabel_for_apostrophe",
211af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 103 */ "keyhintlabel_for_apostrophe",
212af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 104 */ "more_keys_for_apostrophe",
213af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 105 */ "more_keys_for_am_pm",
214af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 106 */ "settings_as_more_key",
215af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 107 */ "shortcut_as_more_key",
216af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 108 */ "action_next_as_more_key",
217af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 109 */ "action_previous_as_more_key",
218af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 110 */ "label_to_more_symbol_key",
219af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 111 */ "label_to_more_symbol_for_tablet_key",
220af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 112 */ "label_tab_key",
221af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 113 */ "label_to_phone_numeric_key",
222af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 114 */ "label_to_phone_symbols_key",
223af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 115 */ "label_time_am",
224af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 116 */ "label_time_pm",
225af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 117 */ "label_to_symbol_key_pcqwerty",
226af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 118 */ "keylabel_for_popular_domain",
227af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 119 */ "more_keys_for_popular_domain",
228af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 120 */ "more_keys_for_smiley",
2292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
2302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
2312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String EMPTY = "";
2322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
2336bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka    /* Default texts */
2342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_DEFAULT = {
2352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
2362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
2372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
2382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
2392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        EMPTY, EMPTY,
2402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~40 */
2412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 41 */ "!fixedColumnOrder!4,\u2018,\u2019,\u201A,\u201B",
2425e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK.
2435e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_double_quote">!fixedColumnOrder!6,&#x201C;,&#x201D;,&#x201E;,&#x201F;,&#x00AB;,&#x00BB;</string>
2442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 42 */ "!fixedColumnOrder!4,\u201C,\u201D,\u00AB,\u00BB",
2455e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK.
2465e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_tablet_double_quote">!fixedColumnOrder!6,&#x201C;,&#x201D;,&#x201E;,&#x201F;,&#x00AB;,&#x00BB;,&#x2018;,&#x2019;,&#x201A;,&#x201B;</string>
2472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 43 */ "!fixedColumnOrder!4,\u201C,\u201D,\u00AB,\u00BB,\u2018,\u2019,\u201A,\u201B",
2482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00A2: "¢" CENT SIGN
2492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00A3: "£" POUND SIGN
2502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+20AC: "€" EURO SIGN
2512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00A5: "¥" YEN SIGN
2522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+20B1: "₱" PESO SIGN
2532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 44 */ "\u00A2,\u00A3,\u20AC,\u00A5,\u20B1",
2542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 45 */ "\u00A2,\u00A3,$,\u00A5,\u20B1",
2552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 46 */ "\u00A2,$,\u20AC,\u00A5,\u20B1",
2562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 47 */ "\u00A2,$,\u20AC,\u00A3,\u00A5,\u20B1",
257ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 48 */ "!fixedColumnOrder!8,\",\',#,-,:,!,\\,,?,@,&,\\%,+,;,/,(,)",
258a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2020: "†" DAGGER
259a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2021: "‡" DOUBLE DAGGER
260a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2605: "★" BLACK STAR
261ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 49 */ "\u2020,\u2021,\u2605",
262ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        // U+266A: "♪" EIGHTH NOTE
263ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        // U+2665: "♥" BLACK HEART SUIT
264ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        // U+2660: "♠" BLACK SPADE SUIT
265ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        // U+2666: "♦" BLACK DIAMOND SUIT
266ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        // U+2663: "♣" BLACK CLUB SUIT
267ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 50 */ "\u266A,\u2665,\u2660,\u2666,\u2663",
268a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+00B1: "±" PLUS-MINUS SIGN
269ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 51 */ "\u00B1",
270a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // The all letters need to be mirrored are found at
271a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt
272ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 52 */ "!fixedColumnOrder!3,<,{,[",
273ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 53 */ "!fixedColumnOrder!3,>,},]",
274a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2039: "‹" SINGLE LEFT-POINTING ANGLE QUOTATION MARK
275a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+203A: "›" SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
276a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2264: "≤" LESS-THAN OR EQUAL TO
277a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2265: "≥" GREATER-THAN EQUAL TO
278a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
279a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
280a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // The following characters don't need BIDI mirroring.
281a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2018: "‘" LEFT SINGLE QUOTATION MARK
282a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2019: "’" RIGHT SINGLE QUOTATION MARK
283a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201A: "‚" SINGLE LOW-9 QUOTATION MARK
284a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201B: "‛" SINGLE HIGH-REVERSED-9 QUOTATION MARK
285a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201C: "“" LEFT DOUBLE QUOTATION MARK
286a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201D: "”" RIGHT DOUBLE QUOTATION MARK
287a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201E: "„" DOUBLE LOW-9 QUOTATION MARK
288a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201F: "‟" DOUBLE HIGH-REVERSED-9 QUOTATION MARK
289ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 54 */ "!fixedColumnOrder!3,\u2039,\u2264,\u00AB",
290ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 55 */ "!fixedColumnOrder!3,\u203A,\u2265,\u00BB",
2911db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 56 */ EMPTY,
2921db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 57 */ EMPTY,
2931db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 58 */ "1",
2941db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 59 */ "2",
2951db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 60 */ "3",
2961db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 61 */ "4",
2971db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 62 */ "5",
2981db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 63 */ "6",
2991db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 64 */ "7",
3001db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 65 */ "8",
3011db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 66 */ "9",
3021db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 67 */ "0",
3031db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 68~ */
3042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
3051db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* ~77 */
3062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00B9: "¹" SUPERSCRIPT ONE
3072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BD: "½" VULGAR FRACTION ONE HALF
3082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2153: "⅓" VULGAR FRACTION ONE THIRD
3092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BC: "¼" VULGAR FRACTION ONE QUARTER
3102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+215B: "⅛" VULGAR FRACTION ONE EIGHTH
3111db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 78 */ "\u00B9,\u00BD,\u2153,\u00BC,\u215B",
3122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00B2: "²" SUPERSCRIPT TWO
3132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2154: "⅔" VULGAR FRACTION TWO THIRDS
3141db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 79 */ "\u00B2,\u2154",
3152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00B3: "³" SUPERSCRIPT THREE
3162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BE: "¾" VULGAR FRACTION THREE QUARTERS
3172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+215C: "⅜" VULGAR FRACTION THREE EIGHTHS
3181db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 80 */ "\u00B3,\u00BE,\u215C",
3192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2074: "⁴" SUPERSCRIPT FOUR
3201db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 81 */ "\u2074",
3212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+215D: "⅝" VULGAR FRACTION FIVE EIGHTHS
3221db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 82 */ "\u215D",
323ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 83 */ EMPTY,
3241db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+215E: "⅞" VULGAR FRACTION SEVEN EIGHTHS
3251db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 84 */ "\u215E",
3261db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 85 */ EMPTY,
3271db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 86 */ EMPTY,
3282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+207F: "ⁿ" SUPERSCRIPT LATIN SMALL LETTER N
3292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2205: "∅" EMPTY SET
3301db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 87 */ "\u207F,\u2205",
3311db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 88 */ ",",
3321db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 89 */ EMPTY,
333af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 90 */ "?",
334af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 91 */ ";",
335af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 92 */ "%",
336a6204bbe2a8a3e34ae1adb4d2103c7323825a40cTadashi G. Takaoka        // U+00A1: "¡" INVERTED EXCLAMATION MARK
337af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 93 */ "\u00A1",
3382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BF: "¿" INVERTED QUESTION MARK
339af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 94 */ "\u00BF",
340af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 95 */ EMPTY,
3412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2030: "‰" PER MILLE SIGN
342af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 96 */ "\u2030",
343af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 97 */ ",",
344af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 98 */ "!",
3451db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 99 */ "!",
346af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 100 */ "?",
3471db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 101 */ "?",
348af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 102 */ "\'",
349af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 103 */ "\"",
3501db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 104 */ "\"",
351af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 105 */ "!fixedColumnOrder!2,!hasLabels!,!text/label_time_am,!text/label_time_pm",
352af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 106 */ "!icon/settings_key|!code/key_settings",
353af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 107 */ "!icon/shortcut_key|!code/key_shortcut",
354af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 108 */ "!hasLabels!,!text/label_next_key|!code/key_action_next",
355af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 109 */ "!hasLabels!,!text/label_previous_key|!code/key_action_previous",
3562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // Label for "switch to more symbol" modifier key.  Must be short to fit on key!
357af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 110 */ "= \\ <",
3582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // Label for "switch to more symbol" modifier key on tablets.  Must be short to fit on key!
359af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 111 */ "~ \\ {",
3602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // Label for "Tab" key.  Must be short to fit on key!
361af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 112 */ "Tab",
3622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // Label for "switch to phone numeric" key.  Must be short to fit on key!
363af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 113 */ "123",
3645e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // Label for "switch to phone symbols" key.  Must be short to fit on key!
3655e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // U+FF0A: "*" FULLWIDTH ASTERISK
3662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+FF03: "#" FULLWIDTH NUMBER SIGN
367af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 114 */ "\uFF0A\uFF03",
3682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // Key label for "ante meridiem"
369af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 115 */ "AM",
3702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // Key label for "post meridiem"
371af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 116 */ "PM",
37249caddbdabe5ca666bdef9f842f134e30e7ffed9Tadashi G. Takaoka        // Label for "switch to symbols" key on PC QWERTY layout
373af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 117 */ "Sym",
374af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 118 */ ".com",
375ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        // popular web domains for the locale - most popular, displayed on the keyboard
376af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 119 */ "!hasLabels!,.net,.org,.gov,.edu",
377af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 120 */ "!fixedColumnOrder!5,!hasLabels!,=-O|=-O ,:-P|:-P ,;-)|;-) ,:-(|:-( ,:-)|:-) ,:-!|:-! ,:-$|:-$ ,B-)|B-) ,:O|:O ,:-*|:-* ,:-D|:-D ,:\'(|:\'( ,:-\\\\|:-\\\\ ,O:-)|O:-) ,:-[|:-[ ",
3782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
3792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
3802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language ar: Arabic */
3812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_ar = {
3822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
3832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
3842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
3852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null,
3862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~41 */
3875e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK
3885e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_double_quote">&#x201C;,&#x201D;,&#x201E;,&#x201F;,&#x00AB;|&#x00BB;,&#x00BB;|&#x00AB;</string>
3892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 42 */ "!fixedColumnOrder!4,\u201C,\u201D,\u00AB|\u00BB,\u00BB|\u00AB",
3905e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK
3915e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_tablet_double_quote">!fixedColumnOrder!6,&#x201C;,&#x201D;,&#x201E;,&#x201F;,&#x00AB;|&#x00BB;,&#x00BB|&#x00AB;;,&#x2018;,&#x2019;,&#x201A;,&#x201B;</string>
3922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 43 */ "!fixedColumnOrder!4,\u201C,\u201D,\u00AB|\u00BB,\u00BB|\u00AB,\u2018,\u2019,\u201A,\u201B",
3932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 44~ */
394ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        null, null, null, null,
395ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* ~47 */
3962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+061F: "؟" ARABIC QUESTION MARK
3972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+060C: "،" ARABIC COMMA
3985e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // U+061B: "؛" ARABIC SEMICOLON
399ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 48 */ "!fixedColumnOrder!8,\",\',#,-,:,!,\u060C,\u061F,@,&,\\%,+,\u061B,/,(,)",
400a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2605: "★" BLACK STAR
401a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+066D: "٭" ARABIC FIVE POINTED STAR
402ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 49 */ "\u2605,\u066D",
403ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        // U+266A: "♪" EIGHTH NOTE
404ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 50 */ "\u266A",
405ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 51 */ null,
406a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // The all letters need to be mirrored are found at
407a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt
408a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+FD3E: "﴾" ORNATE LEFT PARENTHESIS
409a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+FD3F: "﴿" ORNATE RIGHT PARENTHESIS
410ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 52 */ "!fixedColumnOrder!4,\uFD3E|\uFD3F,<|>,{|},[|]",
411ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 53 */ "!fixedColumnOrder!4,\uFD3F|\uFD3E,>|<,}|{,]|[",
412a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2264: "≤" LESS-THAN OR EQUAL TO
413a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2265: "≥" GREATER-THAN EQUAL TO
414a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
415a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
416a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2039: "‹" SINGLE LEFT-POINTING ANGLE QUOTATION MARK
417a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+203A: "›" SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
418a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // The following characters don't need BIDI mirroring.
419a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2018: "‘" LEFT SINGLE QUOTATION MARK
420a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2019: "’" RIGHT SINGLE QUOTATION MARK
421a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201A: "‚" SINGLE LOW-9 QUOTATION MARK
422a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201B: "‛" SINGLE HIGH-REVERSED-9 QUOTATION MARK
423a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201C: "“" LEFT DOUBLE QUOTATION MARK
424a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201D: "”" RIGHT DOUBLE QUOTATION MARK
425a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201E: "„" DOUBLE LOW-9 QUOTATION MARK
426a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201F: "‟" DOUBLE HIGH-REVERSED-9 QUOTATION MARK
427ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 54 */ "!fixedColumnOrder!3,\u2039|\u203A,\u2264|\u2265,\u00AB|\u00BB",
428ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 55 */ "!fixedColumnOrder!3,\u203A|\u2039,\u2265|\u2264,\u00BB|\u00AB",
42914bc2e89efed136a8f351e6e407be3ec2d7a3308Tadashi G. Takaoka        // U+0655: "ٕ" ARABIC HAMZA BELOW
43014bc2e89efed136a8f351e6e407be3ec2d7a3308Tadashi G. Takaoka        // U+0654: "ٔ" ARABIC HAMZA ABOVE
4311db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+0652: "ْ" ARABIC SUKUN
4321db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+064D: "ٍ" ARABIC KASRATAN
43314bc2e89efed136a8f351e6e407be3ec2d7a3308Tadashi G. Takaoka        // U+064C: "ٌ" ARABIC DAMMATAN
4341db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+064B: "ً" ARABIC FATHATAN
43514bc2e89efed136a8f351e6e407be3ec2d7a3308Tadashi G. Takaoka        // U+0651: "ّ" ARABIC SHADDA
43614bc2e89efed136a8f351e6e407be3ec2d7a3308Tadashi G. Takaoka        // U+0656: "ٖ" ARABIC SUBSCRIPT ALEF
43714bc2e89efed136a8f351e6e407be3ec2d7a3308Tadashi G. Takaoka        // U+0670: "ٰ" ARABIC LETTER SUPERSCRIPT ALEF
43814bc2e89efed136a8f351e6e407be3ec2d7a3308Tadashi G. Takaoka        // U+0653: "ٓ" ARABIC MADDAH ABOVE
4391db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+0650: "ِ" ARABIC KASRA
44014bc2e89efed136a8f351e6e407be3ec2d7a3308Tadashi G. Takaoka        // U+064F: "ُ" ARABIC DAMMA
4411db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+064E: "َ" ARABIC FATHA
4421db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+0640: "ـ" ARABIC TATWEEL
4431db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // In order to make Tatweel easily distinguishable from other punctuations, we use consecutive Tatweels only for its displayed label.
44414bc2e89efed136a8f351e6e407be3ec2d7a3308Tadashi G. Takaoka        /* 56 */ "!fixedColumnOrder!7,\u0655,\u0654,\u0652,\u064D,\u064C,\u064B,\u0651,\u0656,\u0670,\u0653,\u0650,\u064F,\u064E,\u0640\u0640\u0640|\u0640",
44514bc2e89efed136a8f351e6e407be3ec2d7a3308Tadashi G. Takaoka        /* 57 */ "\u0651",
4462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0661: "١" ARABIC-INDIC DIGIT ONE
4471db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 58 */ "\u0661",
4482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0662: "٢" ARABIC-INDIC DIGIT TWO
4491db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 59 */ "\u0662",
4502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0663: "٣" ARABIC-INDIC DIGIT THREE
4511db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 60 */ "\u0663",
4522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0664: "٤" ARABIC-INDIC DIGIT FOUR
4531db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 61 */ "\u0664",
4542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0665: "٥" ARABIC-INDIC DIGIT FIVE
4551db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 62 */ "\u0665",
4562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0666: "٦" ARABIC-INDIC DIGIT SIX
4571db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 63 */ "\u0666",
4582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0667: "٧" ARABIC-INDIC DIGIT SEVEN
4591db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 64 */ "\u0667",
4602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0668: "٨" ARABIC-INDIC DIGIT EIGHT
4611db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 65 */ "\u0668",
4622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0669: "٩" ARABIC-INDIC DIGIT NINE
4631db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 66 */ "\u0669",
4642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0660: "٠" ARABIC-INDIC DIGIT ZERO
4651db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 67 */ "\u0660",
4661db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 68 */ "1",
4671db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 69 */ "2",
4681db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 70 */ "3",
4691db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 71 */ "4",
4701db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 72 */ "5",
4711db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 73 */ "6",
4721db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 74 */ "7",
4731db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 75 */ "8",
4741db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 76 */ "9",
4752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+066B: "٫" ARABIC DECIMAL SEPARATOR
4762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+066C: "٬" ARABIC THOUSANDS SEPARATOR
4771db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 77 */ "0,\u066B,\u066C",
4781db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 78~ */
479a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null,
4801db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* ~87 */
4812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+060C: "،" ARABIC COMMA
4821db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 88 */ "\u060C",
4831db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 89 */ "\\,",
484af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 90 */ "\u061F",
485af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 91 */ "\u061B",
4862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+066A: "٪" ARABIC PERCENT SIGN
487af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 92 */ "\u066A",
488af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 93 */ null,
489af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 94 */ "?",
490af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 95 */ ";",
4912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2030: "‰" PER MILLE SIGN
492af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 96 */ "\\%,\u2030",
493af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 97~ */
4942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null,
495af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* ~101 */
4962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+060C: "،" ARABIC COMMA
4972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+061B: "؛" ARABIC SEMICOLON
4982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+061F: "؟" ARABIC QUESTION MARK
499af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 102 */ "\u060C",
500af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 103 */ "\u061F",
501af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 104 */ "\u061F,\u061B,!,:,-,/,\',\"",
5022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
5032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
5042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language be: Belarusian */
5052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_be = {
5062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
5072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
5082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null,
5092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~24 */
5102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+045E: "ў" CYRILLIC SMALL LETTER SHORT U
5112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 25 */ "\u045E",
5122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+044B: "ы" CYRILLIC SMALL LETTER YERU
5132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 26 */ "\u044B",
5142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0456: "і" CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
5152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 27 */ "\u0456",
5162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 28~ */
5172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null,
5182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~30 */
5192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
5202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 31 */ "\u044A",
5212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 32 */ null,
5222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 33 */ null,
5232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
5242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 34 */ "\u044A",
5252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
5262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
5272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language ca: Catalan */
5282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_ca = {
5292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
5302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
5312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
5322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
5332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
5342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
5352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
5362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
5372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
5382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00AA: "ª" FEMININE ORDINAL INDICATOR
5392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E0,\u00E1,\u00E4,\u00E2,\u00E3,\u00E5,\u0105,\u00E6,\u0101,\u00AA",
5402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
5412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
5422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
5432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
5442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
5452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
5462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
5472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E8,\u00E9,\u00EB,\u00EA,\u0119,\u0117,\u0113",
5482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
5492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
5502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
5512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
5522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
5532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
5542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B",
5552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
5562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
5572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
5582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
5592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
5602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
5612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
5622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
5632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BA: "º" MASCULINE ORDINAL INDICATOR
5642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F2,\u00F3,\u00F6,\u00F4,\u00F5,\u00F8,\u0153,\u014D,\u00BA",
5652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
5662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
5672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
5682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
5692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
5702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
5712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ null,
5722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
5732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
5742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u00F1,\u0144",
5752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
5762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
5772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
5782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u00E7,\u0107,\u010D",
5792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8~ */
5802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null,
5812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~13 */
5822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0140: "ŀ" LATIN SMALL LETTER L WITH MIDDLE DOT
5832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
5842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 14 */ "\u0140,\u0142",
5852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
5862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
5872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language cs: Czech */
5882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_cs = {
5892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
5902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
5912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
5922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
5932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
5942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
5952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
5962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
5972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E1,\u00E0,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
5982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
5992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
6002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
6012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
6022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
6032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
6042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
6052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
6062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E9,\u011B,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\u0113",
6072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
6082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
6092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
6102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
6112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
6122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
6132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00ED,\u00EE,\u00EF,\u00EC,\u012F,\u012B",
6142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
6152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
6162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
6172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
6182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
6192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
6202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
6212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
6222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
6232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
6242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
6252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
6262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
6272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
6282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
6292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FA,\u016F,\u00FB,\u00FC,\u00F9,\u016B",
6302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
6312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
6322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
6332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u0161,\u00DF,\u015B",
6342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0148: "ň" LATIN SMALL LETTER N WITH CARON
6352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
6362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
6372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u0148,\u00F1,\u0144",
6382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
6392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
6402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
6412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u010D,\u00E7,\u0107",
6422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
6432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
6442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ "\u00FD,\u00FF",
6452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010F: "ď" LATIN SMALL LETTER D WITH CARON
6462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 9 */ "\u010F",
6472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
6482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 10 */ "\u0159",
6492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
6502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 11 */ "\u0165",
6512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
6522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
6532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
6542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12 */ "\u017E,\u017A,\u017C",
6552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
6562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
6572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language da: Danish */
6582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_da = {
6592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
6602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
6612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
6622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
6632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
6642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
6652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E1,\u00E4,\u00E0,\u00E2,\u00E3,\u0101",
6662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
6672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
6682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E9,\u00EB",
6692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
6702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
6712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00ED,\u00EF",
6722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
6732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
6742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
6752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
6762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
6772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
6782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F3,\u00F4,\u00F2,\u00F5,\u0153,\u014D",
6792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
6802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
6812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
6822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
6832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
6842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FA,\u00FC,\u00FB,\u00F9,\u016B",
6852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
6862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
6872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
6882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u00DF,\u015B,\u0161",
6892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
6902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
6912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u00F1,\u0144",
6922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ null,
6932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
6942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
6952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ "\u00FD,\u00FF",
6962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F0: "ð" LATIN SMALL LETTER ETH
6972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 9 */ "\u00F0",
6982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 10~ */
6992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null,
7002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~13 */
7012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
7022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 14 */ "\u0142",
7032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 15~ */
7042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null,
7052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~19 */
7062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
7072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 20 */ "\u00E5",
7082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
7092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 21 */ "\u00E6",
7102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
7112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 22 */ "\u00F8",
7122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
7132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 23 */ "\u00E4",
7142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
7152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 24 */ "\u00F6",
7162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
7172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
7182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language de: German */
7192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_de = {
7202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
7212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
7222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
7232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
7242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
7252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
7262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
7272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
7282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E4,\u00E2,\u00E0,\u00E1,\u00E6,\u00E3,\u00E5,\u0101",
7292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
7302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u0117",
7312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ null,
7322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
7332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
7342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
7352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
7362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
7372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
7382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
7392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
7402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F6,\u00F4,\u00F2,\u00F3,\u00F5,\u0153,\u00F8,\u014D",
7412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
7422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
7432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
7442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
7452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
7462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
7472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
7482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
7492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
7502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u00DF,\u015B,\u0161",
7512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
7522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
7532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u00F1,\u0144",
7542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
7552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
7562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language en: English */
7572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_en = {
7582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
7592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
7602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
7612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
7622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
7632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
7642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
7652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
7662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E0,\u00E1,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
7672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
7682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
7692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
7702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
7712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
772aae757b8a173b3e4231565288afbd020f30cb5e8Tadashi G. Takaoka        /* 1 */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0113",
7732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
7742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
7752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
7762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
7772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
7782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00EE,\u00EF,\u00ED,\u012B,\u00EC",
7792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
7802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
7812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
7822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
7832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
7842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
7852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
7862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
787d005476715a86d5efd18905424c3ba20322891d6Tadashi G. Takaoka        /* 3 */ "\u00F4,\u00F6,\u00F2,\u00F3,\u0153,\u00F8,\u014D,\u00F5",
7882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
7892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
7902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
7912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
7922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
7932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FB,\u00FC,\u00F9,\u00FA,\u016B",
7942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
7952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u00DF",
7962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
7972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u00F1",
7982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
7992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u00E7",
8002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
8012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
8022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language es: Spanish */
8032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_es = {
8042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
8052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
8062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
8072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
8082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
8092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
8102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
8112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
8122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
8132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00AA: "ª" FEMININE ORDINAL INDICATOR
8142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E1,\u00E0,\u00E4,\u00E2,\u00E3,\u00E5,\u0105,\u00E6,\u0101,\u00AA",
8152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
8162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
8172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
8182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
8192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
8202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
8212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
8222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E9,\u00E8,\u00EB,\u00EA,\u0119,\u0117,\u0113",
8232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
8242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
8252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
8262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
8272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
8282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
8292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B",
8302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
8312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
8322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
8332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
8342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
8352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
8362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
8372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
8382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BA: "º" MASCULINE ORDINAL INDICATOR
8392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F3,\u00F2,\u00F6,\u00F4,\u00F5,\u00F8,\u0153,\u014D,\u00BA",
8402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
8412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
8422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
8432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
8442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
8452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
8462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ null,
8472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
8482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
8492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u00F1,\u0144",
8502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
8512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
8522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
8532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u00E7,\u0107,\u010D",
8542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8~ */
8552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
8562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
857ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null,
858ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* ~47 */
8592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00A1: "¡" INVERTED EXCLAMATION MARK
8602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BF: "¿" INVERTED QUESTION MARK
861af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 48 */ "!fixedColumnOrder!9,\u00A1,\",\',#,-,:,!,\\,,?,\u00BF,@,&,\\%,+,;,/,(,)",
862a6204bbe2a8a3e34ae1adb4d2103c7323825a40cTadashi G. Takaoka        /* 49~ */
863a6204bbe2a8a3e34ae1adb4d2103c7323825a40cTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
864a6204bbe2a8a3e34ae1adb4d2103c7323825a40cTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
865af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
866af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        null, null, null, null, null,
867af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* ~98 */
868a6204bbe2a8a3e34ae1adb4d2103c7323825a40cTadashi G. Takaoka        // U+00A1: "¡" INVERTED EXCLAMATION MARK
869af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 99 */ "!,\u00A1",
870af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 100 */ null,
871a6204bbe2a8a3e34ae1adb4d2103c7323825a40cTadashi G. Takaoka        // U+00BF: "¿" INVERTED QUESTION MARK
872af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 101 */ "?,\u00BF",
8732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
8742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
8752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language et: Estonian */
8762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_et = {
8772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
8782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
8792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
8802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
8812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
8822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
8832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
8842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
8852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
8862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E4,\u0101,\u00E0,\u00E1,\u00E2,\u00E3,\u00E5,\u00E6,\u0105",
8872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
8882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
8892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
8902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
8912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
8922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
8932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
8942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
8952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u0113,\u00E8,\u0117,\u00E9,\u00EA,\u00EB,\u0119,\u011B",
8962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
8972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
8982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
8992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
9002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
9012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
9022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
9032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u012B,\u00EC,\u012F,\u00ED,\u00EE,\u00EF,\u0131",
9042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
9052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
9062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
9072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
9082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
9092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
9102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
9112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
9122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F6,\u00F5,\u00F2,\u00F3,\u00F4,\u0153,\u0151,\u00F8",
9132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
9142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
9152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0173: "ų" LATIN SMALL LETTER U WITH OGONEK
9162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
9172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
9182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
9192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
9202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
9212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FC,\u016B,\u0173,\u00F9,\u00FA,\u00FB,\u016F,\u0171",
9222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
9232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
9242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
9252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
9262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u0161,\u00DF,\u015B,\u015F",
9272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0146: "ņ" LATIN SMALL LETTER N WITH CEDILLA
9282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
9292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
9302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
9312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u0146,\u00F1,\u0144,\u0144",
9322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
9332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
9342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
9352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u010D,\u00E7,\u0107",
9362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
9372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
9382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ "\u00FD,\u00FF",
9392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010F: "ď" LATIN SMALL LETTER D WITH CARON
9402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 9 */ "\u010F",
9412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
9422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
9432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
9442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 10 */ "\u0157,\u0159,\u0155",
9452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
9462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
9472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 11 */ "\u0163,\u0165",
9482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
9492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
9502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
9512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12 */ "\u017E,\u017C,\u017A",
9522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
9532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 13 */ "\u0137",
9542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013C: "ļ" LATIN SMALL LETTER L WITH CEDILLA
9552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
9562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013A: "ĺ" LATIN SMALL LETTER L WITH ACUTE
9572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013E: "ľ" LATIN SMALL LETTER L WITH CARON
9582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 14 */ "\u013C,\u0142,\u013A,\u013E",
9592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0123: "ģ" LATIN SMALL LETTER G WITH CEDILLA
9602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
9612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 15 */ "\u0123,\u011F",
9622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 16~ */
9632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null,
9642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~19 */
9652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
9662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 20 */ "\u00FC",
9672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
9682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 21 */ "\u00F6",
9692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
9702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 22 */ "\u00E4",
9712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
9722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 23 */ "\u00F5",
9732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
9742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
9752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language fa: Persian */
9762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_fa = {
9772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
9782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
9792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
9802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null,
9812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~41 */
9825e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK
9835e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_double_quote">&#x201C;,&#x201D;,&#x201E;,&#x201F;,&#x00AB;|&#x00BB;,&#x00BB;|&#x00AB;</string>
9846de1b7a70986ebb1bf63078617d59ec4e46b657fTadashi G. Takaoka        /* 42 */ "!fixedColumnOrder!4,\u201C,\u201D,\",\'",
9855e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK
9865e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_tablet_double_quote">!fixedColumnOrder!6,&#x201C;,&#x201D;,&#x201E;,&#x201F;,&#x00AB;|&#x00BB;,&#x00BB|&#x00AB;;,&#x2018;,&#x2019;,&#x201A;,&#x201B;</string>
9872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 43 */ "!fixedColumnOrder!4,\u201C,\u201D,\u00AB|\u00BB,\u00BB|\u00AB,\u2018,\u2019,\u201A,\u201B",
9882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 44~ */
989ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        null, null, null, null,
990ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* ~47 */
9912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+061F: "؟" ARABIC QUESTION MARK
9922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+060C: "،" ARABIC COMMA
9935e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // U+061B: "؛" ARABIC SEMICOLON
994ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 48 */ "!fixedColumnOrder!8,\",\',#,-,:,!,\u060C,\u061F,@,&,\\%,+,\u061B,/,(,)",
995a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2605: "★" BLACK STAR
996a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+066D: "٭" ARABIC FIVE POINTED STAR
997ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 49 */ "\u2605,\u066D",
998ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        // U+266A: "♪" EIGHTH NOTE
999ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 50 */ "\u266A",
1000ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 51 */ null,
1001a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // The all letters need to be mirrored are found at
1002a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt
1003a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+FD3E: "﴾" ORNATE LEFT PARENTHESIS
1004a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+FD3F: "﴿" ORNATE RIGHT PARENTHESIS
1005ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 52 */ "!fixedColumnOrder!4,\uFD3E|\uFD3F,<|>,{|},[|]",
1006ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 53 */ "!fixedColumnOrder!4,\uFD3F|\uFD3E,>|<,}|{,]|[",
1007a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2264: "≤" LESS-THAN OR EQUAL TO
1008a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2265: "≥" GREATER-THAN EQUAL TO
1009a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
1010a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
1011a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2039: "‹" SINGLE LEFT-POINTING ANGLE QUOTATION MARK
1012a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+203A: "›" SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
1013a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // The following characters don't need BIDI mirroring.
1014a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2018: "‘" LEFT SINGLE QUOTATION MARK
1015a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+2019: "’" RIGHT SINGLE QUOTATION MARK
1016a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201A: "‚" SINGLE LOW-9 QUOTATION MARK
1017a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201B: "‛" SINGLE HIGH-REVERSED-9 QUOTATION MARK
1018a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201C: "“" LEFT DOUBLE QUOTATION MARK
1019a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201D: "”" RIGHT DOUBLE QUOTATION MARK
1020a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201E: "„" DOUBLE LOW-9 QUOTATION MARK
1021a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        // U+201F: "‟" DOUBLE HIGH-REVERSED-9 QUOTATION MARK
10226de1b7a70986ebb1bf63078617d59ec4e46b657fTadashi G. Takaoka        /* 54 */ "!fixedColumnOrder!3,\u2039|\u203A,\u2264|\u2265,<|>",
10236de1b7a70986ebb1bf63078617d59ec4e46b657fTadashi G. Takaoka        /* 55 */ "!fixedColumnOrder!3,\u203A|\u2039,\u2265|\u2264,>|<",
10241db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+0655: "ٕ" ARABIC HAMZA BELOW
10251db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+0652: "ْ" ARABIC SUKUN
10260e473e9c92defefffa5e300ffe2ad033904f872fTadashi G. Takaoka        // U+0651: "ّ" ARABIC SHADDA
10271db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+064C: "ٌ" ARABIC DAMMATAN
10280e473e9c92defefffa5e300ffe2ad033904f872fTadashi G. Takaoka        // U+064D: "ٍ" ARABIC KASRATAN
10290e473e9c92defefffa5e300ffe2ad033904f872fTadashi G. Takaoka        // U+064B: "ً" ARABIC FATHATAN
10300e473e9c92defefffa5e300ffe2ad033904f872fTadashi G. Takaoka        // U+0654: "ٔ" ARABIC HAMZA ABOVE
10311db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+0656: "ٖ" ARABIC SUBSCRIPT ALEF
10321db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // U+0670: "ٰ" ARABIC LETTER SUPERSCRIPT ALEF
10330e473e9c92defefffa5e300ffe2ad033904f872fTadashi G. Takaoka        // U+0653: "ٓ" ARABIC MADDAH ABOVE
10340e473e9c92defefffa5e300ffe2ad033904f872fTadashi G. Takaoka        // U+064F: "ُ" ARABIC DAMMA
10350e473e9c92defefffa5e300ffe2ad033904f872fTadashi G. Takaoka        // U+0650: "ِ" ARABIC KASRA
10360e473e9c92defefffa5e300ffe2ad033904f872fTadashi G. Takaoka        // U+064E: "َ" ARABIC FATHA
10370e473e9c92defefffa5e300ffe2ad033904f872fTadashi G. Takaoka        // U+0640: "ـ" ARABIC TATWEEL
10381db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        // In order to make Tatweel easily distinguishable from other punctuations, we use consecutive Tatweels only for its displayed label.
10390e473e9c92defefffa5e300ffe2ad033904f872fTadashi G. Takaoka        /* 56 */ "!fixedColumnOrder!7,\u0655,\u0652,\u0651,\u064C,\u064D,\u064B,\u0654,\u0656,\u0670,\u0653,\u064F,\u0650,\u064E,\u0640\u0640\u0640|\u0640",
10406de1b7a70986ebb1bf63078617d59ec4e46b657fTadashi G. Takaoka        /* 57 */ "\u064B",
10412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+06F1: "۱" EXTENDED ARABIC-INDIC DIGIT ONE
10421db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 58 */ "\u06F1",
10432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+06F2: "۲" EXTENDED ARABIC-INDIC DIGIT TWO
10441db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 59 */ "\u06F2",
10452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+06F3: "۳" EXTENDED ARABIC-INDIC DIGIT THREE
10461db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 60 */ "\u06F3",
10472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+06F4: "۴" EXTENDED ARABIC-INDIC DIGIT FOUR
10481db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 61 */ "\u06F4",
10492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+06F5: "۵" EXTENDED ARABIC-INDIC DIGIT FIVE
10501db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 62 */ "\u06F5",
10512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+06F6: "۶" EXTENDED ARABIC-INDIC DIGIT SIX
10521db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 63 */ "\u06F6",
10532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+06F7: "۷" EXTENDED ARABIC-INDIC DIGIT SEVEN
10541db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 64 */ "\u06F7",
10552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+06F8: "۸" EXTENDED ARABIC-INDIC DIGIT EIGHT
10561db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 65 */ "\u06F8",
10572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+06F9: "۹" EXTENDED ARABIC-INDIC DIGIT NINE
10581db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 66 */ "\u06F9",
10592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+06F0: "۰" EXTENDED ARABIC-INDIC DIGIT ZERO
10601db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 67 */ "\u06F0",
10611db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 68 */ "1",
10621db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 69 */ "2",
10631db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 70 */ "3",
10641db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 71 */ "4",
10651db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 72 */ "5",
10661db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 73 */ "6",
10671db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 74 */ "7",
10681db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 75 */ "8",
10691db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 76 */ "9",
10702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+066B: "٫" ARABIC DECIMAL SEPARATOR
10712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+066C: "٬" ARABIC THOUSANDS SEPARATOR
10721db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 77 */ "0,\u066B,\u066C",
10731db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 78~ */
1074a2f458f56928290057808890fc007f7a4026a533Tadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null,
10751db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* ~87 */
10762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+060C: "،" ARABIC COMMA
10771db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 88 */ "\u060C",
10781db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 89 */ "\\,",
1079af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 90 */ "\u061F",
1080af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 91 */ "\u061B",
10812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+066A: "٪" ARABIC PERCENT SIGN
1082af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 92 */ "\u066A",
1083af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 93 */ null,
1084af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 94 */ "?",
1085af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 95 */ ";",
10862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2030: "‰" PER MILLE SIGN
1087af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 96 */ "\\%,\u2030",
10882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+060C: "،" ARABIC COMMA
10892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+061B: "؛" ARABIC SEMICOLON
10902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+061F: "؟" ARABIC QUESTION MARK
109138dc9ca31432f19641d80cd6f89354d66c5bebc1Tadashi G. Takaoka        // U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
109238dc9ca31432f19641d80cd6f89354d66c5bebc1Tadashi G. Takaoka        // U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
1093af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 97 */ "\u060C",
1094af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 98 */ "!",
1095af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 99 */ "!,\\,",
1096af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 100 */ "\u061F",
1097af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 101 */ "\u061F,?",
1098af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 102 */ "\u060C",
1099af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 103 */ "\u061F",
1100af2c11525324d1cb48fce249c907f5906f0524dcTadashi G. Takaoka        /* 104 */ "!fixedColumnOrder!4,:,!,\u061F,\u061B,-,/,\u00AB|\u00BB,\u00BB|\u00AB",
11012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
11022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
11032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language fi: Finnish */
11042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_fi = {
11052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
11062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
11072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
11082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
11092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
11102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
11112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E6,\u00E0,\u00E1,\u00E2,\u00E3,\u0101",
11122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ null,
11132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ null,
11142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
11152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
11162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
11172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
11182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
11192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
11202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
11212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F8,\u00F4,\u00F2,\u00F3,\u00F5,\u0153,\u014D",
11222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
11232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FC",
11242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
11252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
11262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
11272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u0161,\u00DF,\u015B",
11282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6~ */
11292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null,
11302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~11 */
11312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
11322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
11332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
11342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12 */ "\u017E,\u017A,\u017C",
11352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 13~ */
11362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null,
11372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~19 */
11382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
11392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 20 */ "\u00E5",
11402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
11412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 21 */ "\u00F6",
11422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
11432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 22 */ "\u00E4",
11442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
11452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 23 */ "\u00F8",
11462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
11472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 24 */ "\u00E6",
11482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
11492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
11502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language fr: French */
11512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_fr = {
11522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
11532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
11542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
11552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
11562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
11572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
11582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
11592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
11602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00AA: "ª" FEMININE ORDINAL INDICATOR
11612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E0,\u00E2,%,\u00E6,\u00E1,\u00E4,\u00E3,\u00E5,\u0101,\u00AA",
11622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
11632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
11642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
11652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
11662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
11672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
11682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
11692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E9,\u00E8,\u00EA,\u00EB,%,\u0119,\u0117,\u0113",
11702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
11712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
11722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
11732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
11742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
11752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
11762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00EE,%,\u00EF,\u00EC,\u00ED,\u012F,\u012B",
11772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
11782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
11792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
11802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
11812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
11822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
11832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
11842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
11852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BA: "º" MASCULINE ORDINAL INDICATOR
11862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F4,\u0153,%,\u00F6,\u00F2,\u00F3,\u00F5,\u00F8,\u014D,\u00BA",
11872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
11882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
11892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
11902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
11912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
11922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00F9,\u00FB,%,\u00FC,\u00FA,\u016B",
11932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ null,
11942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ null,
11952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
11962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
11972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
11982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u00E7,\u0107,\u010D",
11992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
12002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ "%,\u00FF",
12012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
12022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
12032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language hi: Hindi */
12042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_hi = {
12052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
12062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
12072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
12082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
12091db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null,
12101db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* ~57 */
12112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0967: "१" DEVANAGARI DIGIT ONE
12121db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 58 */ "\u0967",
12132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0968: "२" DEVANAGARI DIGIT TWO
12141db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 59 */ "\u0968",
12152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0969: "३" DEVANAGARI DIGIT THREE
12161db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 60 */ "\u0969",
12172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+096A: "४" DEVANAGARI DIGIT FOUR
12181db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 61 */ "\u096A",
12192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+096B: "५" DEVANAGARI DIGIT FIVE
12201db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 62 */ "\u096B",
12212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+096C: "६" DEVANAGARI DIGIT SIX
12221db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 63 */ "\u096C",
12232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+096D: "७" DEVANAGARI DIGIT SEVEN
12241db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 64 */ "\u096D",
12252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+096E: "८" DEVANAGARI DIGIT EIGHT
12261db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 65 */ "\u096E",
12272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+096F: "९" DEVANAGARI DIGIT NINE
12281db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 66 */ "\u096F",
12292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0966: "०" DEVANAGARI DIGIT ZERO
12301db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 67 */ "\u0966",
12311db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 68 */ "1",
12321db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 69 */ "2",
12331db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 70 */ "3",
12341db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 71 */ "4",
12351db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 72 */ "5",
12361db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 73 */ "6",
12371db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 74 */ "7",
12381db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 75 */ "8",
12391db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 76 */ "9",
12401db4f95105ba59651b074697ee01903af22b331fTadashi G. Takaoka        /* 77 */ "0",
12412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
12422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
12432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language hr: Croatian */
12442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_hr = {
12452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
12462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null,
12472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~4 */
12482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
12492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
12502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
12512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u0161,\u015B,\u00DF",
12522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
12532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
12542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u00F1,\u0144",
12552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
12562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
12572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
12582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u010D,\u0107,\u00E7",
12592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ null,
12602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0111: "đ" LATIN SMALL LETTER D WITH STROKE
12612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 9 */ "\u0111",
12622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 10 */ null,
12632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 11 */ null,
12642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
12652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
12662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
12672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12 */ "\u017E,\u017A,\u017C",
12682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
12692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
12702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language hu: Hungarian */
12712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_hu = {
12722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
12732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
12742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
12752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
12762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
12772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
12782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
12792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
12802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E1,\u00E0,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
12812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
12822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
12832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
12842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
12852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
12862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
12872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
12882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\u0113",
12892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
12902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
12912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
12922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
12932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
12942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
12952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00ED,\u00EE,\u00EF,\u00EC,\u012F,\u012B",
12962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
12972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
12982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
12992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
13002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
13012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
13022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
13032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
13042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
13052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F3,\u00F6,\u0151,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
13062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
13072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
13082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
13092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
13102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
13112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
13122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FA,\u00FC,\u0171,\u00FB,\u00F9,\u016B",
13132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
13142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
13152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language is: Icelandic */
13162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_is = {
13172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
13182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
13192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
13202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
13212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
13222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
13232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
13242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
13252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E1,\u00E4,\u00E6,\u00E5,\u00E0,\u00E2,\u00E3,\u0101",
13262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
13272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
13282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
13292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
13302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
13312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
13322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
13332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E9,\u00EB,\u00E8,\u00EA,\u0119,\u0117,\u0113",
13342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
13352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
13362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
13372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
13382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
13392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
13402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00ED,\u00EF,\u00EE,\u00EC,\u012F,\u012B",
13412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
13422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
13432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
13442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
13452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
13462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
13472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
13482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
13492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
13502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
13512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
13522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
13532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
13542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
13552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FA,\u00FC,\u00FB,\u00F9,\u016B",
13562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5~ */
13572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null,
13582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~7 */
13592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
13602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
13612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ "\u00FD,\u00FF",
13622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F0: "ð" LATIN SMALL LETTER ETH
13632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 9 */ "\u00F0",
13642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 10 */ null,
13652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FE: "þ" LATIN SMALL LETTER THORN
13662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 11 */ "\u00FE",
13672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12~ */
13682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null,
13692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~19 */
13702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F0: "ð" LATIN SMALL LETTER ETH
13712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 20 */ "\u00F0",
13722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
13732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 21 */ "\u00E6",
13742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FE: "þ" LATIN SMALL LETTER THORN
13752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 22 */ "\u00FE",
13762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
13772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
13782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language it: Italian */
13792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_it = {
13802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
13812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
13822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
13832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
13842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
13852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
13862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
13872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
13882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00AA: "ª" FEMININE ORDINAL INDICATOR
13892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E0,\u00E1,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101,\u00AA",
13902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
13912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
13922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
13932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
13942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
13952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
13962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
13972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0119,\u0117,\u0113",
13982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
13992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
14002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
14012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
14022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
14032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
14042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00EC,\u00ED,\u00EE,\u00EF,\u012F,\u012B",
14052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
14062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
14072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
14082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
14092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
14102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
14112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
14122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
14132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BA: "º" MASCULINE ORDINAL INDICATOR
14142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F2,\u00F3,\u00F4,\u00F6,\u00F5,\u0153,\u00F8,\u014D,\u00BA",
14152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
14162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
14172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
14182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
14192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
14202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00F9,\u00FA,\u00FB,\u00FC,\u016B",
14212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
14222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
14232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language iw: Hebrew */
14242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_iw = {
14252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
14262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
14272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
14282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null,
14292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~41 */
14305e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK
14315e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_double_quote">&#x201C;,&#x201D;,&#x201E;,&#x201F;,&#x00AB;|&#x00BB;,&#x00BB;|&#x00AB;</string>
14322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 42 */ "!fixedColumnOrder!4,\u201C,\u201D,\u00AB|\u00BB,\u00BB|\u00AB",
14335e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK
14345e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_tablet_double_quote">!fixedColumnOrder!6,&#x201C;,&#x201D;,&#x201E;,&#x201F;,&#x00AB;|&#x00BB;,&#x00BB|&#x00AB;;,&#x2018;,&#x2019;,&#x201A;,&#x201B;</string>
14352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 43 */ "!fixedColumnOrder!4,\u201C,\u201D,\u00AB|\u00BB,\u00BB|\u00AB,\u2018,\u2019,\u201A,\u201B",
14362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 44~ */
1437ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        null, null, null, null, null,
1438ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* ~48 */
14392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2605: "★" BLACK STAR
1440ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 49 */ "\u2605",
1441ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 50 */ null,
14422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00B1: "±" PLUS-MINUS SIGN
14432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+FB29: "﬩" HEBREW LETTER ALTERNATIVE PLUS SIGN
1444ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 51 */ "\u00B1,\uFB29",
14452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // The all letters need to be mirrored are found at
14462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt
1447ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 52 */ "!fixedColumnOrder!3,<|>,{|},[|]",
1448ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 53 */ "!fixedColumnOrder!3,>|<,}|{,]|[",
14492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2264: "≤" LESS-THAN OR EQUAL TO
14502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2265: "≥" GREATER-THAN EQUAL TO
14512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
14522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
14532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2039: "‹" SINGLE LEFT-POINTING ANGLE QUOTATION MARK
14542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+203A: "›" SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
14552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // The following characters don't need BIDI mirroring.
14562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2018: "‘" LEFT SINGLE QUOTATION MARK
14572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2019: "’" RIGHT SINGLE QUOTATION MARK
14582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201A: "‚" SINGLE LOW-9 QUOTATION MARK
14592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201B: "‛" SINGLE HIGH-REVERSED-9 QUOTATION MARK
14602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201C: "“" LEFT DOUBLE QUOTATION MARK
14612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201D: "”" RIGHT DOUBLE QUOTATION MARK
14622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201E: "„" DOUBLE LOW-9 QUOTATION MARK
14632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201F: "‟" DOUBLE HIGH-REVERSED-9 QUOTATION MARK
1464ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 54 */ "!fixedColumnOrder!3,\u2039|\u203A,\u2264|\u2265,\u00AB|\u00BB",
1465ef6dadbe6c54738f39632c7fec57d31efffb2362Tadashi G. Takaoka        /* 55 */ "!fixedColumnOrder!3,\u203A|\u2039,\u2265|\u2264,\u00BB|\u00AB",
14662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
14672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
14682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language ky: Kirghiz */
14692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_ky = {
14702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
14712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
14722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null,
14732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~24 */
14742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0449: "щ" CYRILLIC SMALL LETTER SHCHA
14752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 25 */ "\u0449",
14762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+044B: "ы" CYRILLIC SMALL LETTER YERU
14772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 26 */ "\u044B",
14782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0438: "и" CYRILLIC SMALL LETTER I
14792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 27 */ "\u0438",
14802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+04AF: "ү" CYRILLIC SMALL LETTER STRAIGHT U
14812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 28 */ "\u04AF",
14822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 29 */ null,
14832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+04A3: "ң" CYRILLIC SMALL LETTER EN WITH DESCENDER
14842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 30 */ "\u04A3",
14852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
14862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 31 */ "\u044A",
14872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 32 */ null,
14882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+04E9: "ө" CYRILLIC SMALL LETTER BARRED O
14892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 33 */ "\u04E9",
14902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
14912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 34 */ "\u044A",
14922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
14932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
14942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language lt: Lithuanian */
14952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_lt = {
14962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
14972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
14982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
14992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
15002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
15012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
15022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
15032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
15042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
15052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u0105,\u00E4,\u0101,\u00E0,\u00E1,\u00E2,\u00E3,\u00E5,\u00E6",
15062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
15072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
15082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
15092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
15102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
15112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
15122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
15132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
15142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u0117,\u0119,\u0113,\u00E8,\u00E9,\u00EA,\u00EB,\u011B",
15152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
15162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
15172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
15182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
15192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
15202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
15212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
15222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u012F,\u012B,\u00EC,\u00ED,\u00EE,\u00EF,\u0131",
15232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
15242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
15252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
15262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
15272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
15282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
15292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
15302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
15312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F6,\u00F5,\u00F2,\u00F3,\u00F4,\u0153,\u0151,\u00F8",
15322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
15332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0173: "ų" LATIN SMALL LETTER U WITH OGONEK
15342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
15352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
15362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
15372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
15382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
15392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
15402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
15412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u016B,\u0173,\u00FC,\u016B,\u00F9,\u00FA,\u00FB,\u016F,\u0171",
15422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
15432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
15442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
15452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
15462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u0161,\u00DF,\u015B,\u015F",
15472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0146: "ņ" LATIN SMALL LETTER N WITH CEDILLA
15482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
15492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
15502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
15512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u0146,\u00F1,\u0144,\u0144",
15522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
15532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
15542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
15552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u010D,\u00E7,\u0107",
15562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
15572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
15582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ "\u00FD,\u00FF",
15592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010F: "ď" LATIN SMALL LETTER D WITH CARON
15602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 9 */ "\u010F",
15612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
15622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
15632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
15642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 10 */ "\u0157,\u0159,\u0155",
15652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
15662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
15672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 11 */ "\u0163,\u0165",
15682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
15692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
15702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
15712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12 */ "\u017E,\u017C,\u017A",
15722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
15732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 13 */ "\u0137",
15742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013C: "ļ" LATIN SMALL LETTER L WITH CEDILLA
15752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
15762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013A: "ĺ" LATIN SMALL LETTER L WITH ACUTE
15772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013E: "ľ" LATIN SMALL LETTER L WITH CARON
15782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 14 */ "\u013C,\u0142,\u013A,\u013E",
15792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0123: "ģ" LATIN SMALL LETTER G WITH CEDILLA
15802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
15812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 15 */ "\u0123,\u011F",
15822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
15832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
15842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language lv: Latvian */
15852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_lv = {
15862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
15872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
15882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
15892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
15902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
15912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
15922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
15932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
15942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
15952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u0101,\u00E0,\u00E1,\u00E2,\u00E3,\u00E4,\u00E5,\u00E6,\u0105",
15962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
15972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
15982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
15992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
16002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
16012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
16022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
16032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
16042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u0113,\u0117,\u00E8,\u00E9,\u00EA,\u00EB,\u0119,\u011B",
16052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
16062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
16072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
16082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
16092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
16102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
16112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
16122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u012B,\u012F,\u00EC,\u00ED,\u00EE,\u00EF,\u0131",
16132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
16142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
16152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
16162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
16172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
16182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
16192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
16202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
16212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F2,\u00F3,\u00F4,\u00F5,\u00F6,\u0153,\u0151,\u00F8",
16222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
16232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0173: "ų" LATIN SMALL LETTER U WITH OGONEK
16242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
16252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
16262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
16272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
16282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
16292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
16302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u016B,\u0173,\u00F9,\u00FA,\u00FB,\u00FC,\u016F,\u0171",
16312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
16322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
16332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
16342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
16352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u0161,\u00DF,\u015B,\u015F",
16362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0146: "ņ" LATIN SMALL LETTER N WITH CEDILLA
16372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
16382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
16392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
16402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u0146,\u00F1,\u0144,\u0144",
16412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
16422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
16432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
16442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u010D,\u00E7,\u0107",
16452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
16462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
16472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ "\u00FD,\u00FF",
16482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010F: "ď" LATIN SMALL LETTER D WITH CARON
16492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 9 */ "\u010F",
16502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
16512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
16522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
16532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 10 */ "\u0157,\u0159,\u0155",
16542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
16552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
16562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 11 */ "\u0163,\u0165",
16572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
16582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
16592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
16602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12 */ "\u017E,\u017C,\u017A",
16612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
16622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 13 */ "\u0137",
16632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013C: "ļ" LATIN SMALL LETTER L WITH CEDILLA
16642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
16652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013A: "ĺ" LATIN SMALL LETTER L WITH ACUTE
16662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013E: "ľ" LATIN SMALL LETTER L WITH CARON
16672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 14 */ "\u013C,\u0142,\u013A,\u013E",
16682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0123: "ģ" LATIN SMALL LETTER G WITH CEDILLA
16692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
16702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 15 */ "\u0123,\u011F",
16712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
16722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
16732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language mk: Macedonian */
16742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_mk = {
16752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
16762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
16772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
16782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null,
16792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~34 */
16802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0455: "ѕ" CYRILLIC SMALL LETTER DZE
16812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 35 */ "\u0455",
16822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+045C: "ќ" CYRILLIC SMALL LETTER KJE
16832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 36 */ "\u045C",
16842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0437: "з" CYRILLIC SMALL LETTER ZE
16852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 37 */ "\u0437",
16862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0453: "ѓ" CYRILLIC SMALL LETTER GJE
16872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 38 */ "\u0453",
16882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0450: "ѐ" CYRILLIC SMALL LETTER IE WITH GRAVE
16892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 39 */ "\u0450",
16902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+045D: "ѝ" CYRILLIC SMALL LETTER I WITH GRAVE
16912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 40 */ "\u045D",
16922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 41 */ null,
16932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2018: "‘" LEFT SINGLE QUOTATION MARK
16942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2019: "’" RIGHT SINGLE QUOTATION MARK
16952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201A: "‚" SINGLE LOW-9 QUOTATION MARK
16962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201B: "‛" SINGLE HIGH-REVERSED-9 QUOTATION MARK
16972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201C: "“" LEFT DOUBLE QUOTATION MARK
16982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201D: "”" RIGHT DOUBLE QUOTATION MARK
16992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201E: "„" DOUBLE LOW-9 QUOTATION MARK
17005e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // U+201F: "‟" DOUBLE HIGH-REVERSED-9 QUOTATION MARK
17015e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK.
17025e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_double_quote">!fixedColumnOrder!6,&#x201E;,&#x201C;,&#x201D;,&#x201F;,&#x00AB;,&#x00BB;</string>
17032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 42 */ "!fixedColumnOrder!5,\u201E,\u201C,\u201D,\u00AB,\u00BB",
17045e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK.
17055e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_tablet_double_quote">!fixedColumnOrder!6,&#x201C;,&#x201D;,&#x201E;,&#x201F;,&#x00AB;,&#x00BB;,&#x2018;,&#x2019;,&#x201A;,&#x201B;</string>
17062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 43 */ "!fixedColumnOrder!5,\u201E,\u201C,\u201D,\u00AB,\u00BB,\u2018,\u2019,\u201A,\u201B",
17072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
17082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
17092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language nb: Norwegian Bokmål */
17102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_nb = {
17112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
17122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
17132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
17142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
17152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
17162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
17172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E0,\u00E4,\u00E1,\u00E2,\u00E3,\u0101",
17182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
17192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
17202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
17212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
17222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
17232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
17242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
17252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\u0113",
17262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ null,
17272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
17282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
17292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
17302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
17312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
17322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
17332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
17342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F4,\u00F2,\u00F3,\u00F6,\u00F5,\u0153,\u014D",
17352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
17362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
17372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
17382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
17392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
17402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
17412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5~ */
17422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
17432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~19 */
17442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
17452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 20 */ "\u00E5",
17462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
17472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 21 */ "\u00F8",
17482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
17492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 22 */ "\u00E6",
17502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
17512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 23 */ "\u00F6",
17522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
17532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 24 */ "\u00E4",
17542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
17552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
17562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language nl: Dutch */
17572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_nl = {
17582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
17592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
17602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
17612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
17622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
17632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
17642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
17652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
17662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E1,\u00E4,\u00E2,\u00E0,\u00E6,\u00E3,\u00E5,\u0101",
17672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
17682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
17692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
17702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
17712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
17722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
17732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
17742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E9,\u00EB,\u00EA,\u00E8,\u0119,\u0117,\u0113",
17752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
17762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
17772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
17782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
17792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
17802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
17812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0133: "ij" LATIN SMALL LIGATURE IJ
17822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B,\u0133",
17832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
17842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
17852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
17862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
17872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
17882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
17892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
17902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
17912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
17922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
17932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
17942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
17952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
17962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
17972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FA,\u00FC,\u00FB,\u00F9,\u016B",
17982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ null,
17992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
18002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
18012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u00F1,\u0144",
18022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ null,
18032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0133: "ij" LATIN SMALL LIGATURE IJ
18042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ "\u0133",
18052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
18062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
18072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language pl: Polish */
18082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_pl = {
18092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
18102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
18112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
18122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
18132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
18142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
18152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
18162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
18172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
18182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u0105,\u00E1,\u00E0,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
18192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
18202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
18212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
18222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
18232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
18242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
18252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
18262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u0119,\u00E8,\u00E9,\u00EA,\u00EB,\u0117,\u0113",
18272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ null,
18282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
18292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
18302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
18312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
18322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
18332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
18342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
18352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
18362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
18372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ null,
18382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
18392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
18402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
18412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u015B,\u00DF,\u0161",
18422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
18432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
18442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u0144,\u00F1",
18452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
18462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
18472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
18482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u0107,\u00E7,\u010D",
18492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8~ */
18502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null,
18512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~11 */
18522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
18532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
18542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
18552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12 */ "\u017C,\u017A,\u017E",
18562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 13 */ null,
18572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
18582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 14 */ "\u0142",
18592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
18602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
18612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language pt: Portuguese */
18622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_pt = {
18632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
18642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
18652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
18662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
18672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
18682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
18692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
18702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00AA: "ª" FEMININE ORDINAL INDICATOR
18712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E1,\u00E3,\u00E0,\u00E2,\u00E4,\u00E5,\u00E6,\u00AA",
18722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
18732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
18742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
18752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
18762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
18772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
18782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
18792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E9,\u00EA,\u00E8,\u0119,\u0117,\u0113,\u00EB",
18802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
18812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
18822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
18832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
18842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
18852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
18862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00ED,\u00EE,\u00EC,\u00EF,\u012F,\u012B",
18872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
18882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
18892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
18902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
18912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
18922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
18932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
18942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
18952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BA: "º" MASCULINE ORDINAL INDICATOR
18962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F3,\u00F5,\u00F4,\u00F2,\u00F6,\u0153,\u00F8,\u014D,\u00BA",
18972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
18982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
18992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
19002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
19012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
19022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
19032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ null,
19042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ null,
19052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
19062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
19072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
19082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u00E7,\u010D,\u0107",
19092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
19102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
19112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language rm: Raeto-Romance */
19122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_rm = {
19132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
19142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null,
19152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~2 */
19162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
19172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
19182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
19192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
19202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
19212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
19222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
19232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F2,\u00F3,\u00F6,\u00F4,\u00F5,\u0153,\u00F8",
19242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
19252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
19262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language ro: Romanian */
19272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_ro = {
19282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
19292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
19302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0103: "ă" LATIN SMALL LETTER A WITH BREVE
19312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
19322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
19332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
19342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
19352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
19362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
19372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E2,\u00E3,\u0103,\u00E0,\u00E1,\u00E4,\u00E6,\u00E5,\u0101",
19382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ null,
19392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
19402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
19412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
19422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
19432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
19442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
19452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00EE,\u00EF,\u00EC,\u00ED,\u012F,\u012B",
19462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ null,
19472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ null,
19482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0219: "ș" LATIN SMALL LETTER S WITH COMMA BELOW
19492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
19502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
19512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
19522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u0219,\u00DF,\u015B,\u0161",
19532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6~ */
19542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null,
19552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~10 */
19562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+021B: "ț" LATIN SMALL LETTER T WITH COMMA BELOW
19572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 11 */ "\u021B",
19582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
19592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
19602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language ru: Russian */
19612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_ru = {
19622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
19632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
19642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null,
19652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~24 */
19662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0449: "щ" CYRILLIC SMALL LETTER SHCHA
19672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 25 */ "\u0449",
19682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+044B: "ы" CYRILLIC SMALL LETTER YERU
19692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 26 */ "\u044B",
19702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0438: "и" CYRILLIC SMALL LETTER I
19712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 27 */ "\u0438",
19722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 28 */ null,
19732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0451: "ё" CYRILLIC SMALL LETTER IO
19742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 29 */ "\u0451",
19752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 30 */ null,
19762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
19772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 31 */ "\u044A",
19782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 32 */ null,
19792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 33 */ null,
19802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
19812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 34 */ "\u044A",
19822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
19832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
19842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language sk: Slovak */
19852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_sk = {
19862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
19872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
19882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
19892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
19902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
19912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
19922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
19932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
19942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
19952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E1,\u00E4,\u0101,\u00E0,\u00E2,\u00E3,\u00E5,\u00E6,\u0105",
19962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
19972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
19982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
19992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
20002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
20012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
20022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
20032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
20042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E9,\u011B,\u0113,\u0117,\u00E8,\u00EA,\u00EB,\u0119",
20052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
20062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
20072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
20082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
20092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
20102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
20112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
20122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00ED,\u012B,\u012F,\u00EC,\u00EE,\u00EF,\u0131",
20132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
20142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
20152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
20162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
20172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
20182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
20192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
20202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
20212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F4,\u00F3,\u00F6,\u00F2,\u00F5,\u0153,\u0151,\u00F8",
20222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
20232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
20242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
20252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
20262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0173: "ų" LATIN SMALL LETTER U WITH OGONEK
20272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
20282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
20292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
20302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FA,\u016F,\u00FC,\u016B,\u0173,\u00F9,\u00FB,\u0171",
20312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
20322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
20332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
20342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
20352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u0161,\u00DF,\u015B,\u015F",
20362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0148: "ň" LATIN SMALL LETTER N WITH CARON
20372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0146: "ņ" LATIN SMALL LETTER N WITH CEDILLA
20382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
20392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
20402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
20412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u0148,\u0146,\u00F1,\u0144,\u0144",
20422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
20432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
20442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
20452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u010D,\u00E7,\u0107",
20462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
20472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
20482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ "\u00FD,\u00FF",
20492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010F: "ď" LATIN SMALL LETTER D WITH CARON
20502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 9 */ "\u010F",
20512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
20522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
20532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
20542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 10 */ "\u0155,\u0159,\u0157",
20552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
20562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
20572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 11 */ "\u0165,\u0163",
20582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
20592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
20602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
20612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12 */ "\u017E,\u017C,\u017A",
20622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
20632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 13 */ "\u0137",
20642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013E: "ľ" LATIN SMALL LETTER L WITH CARON
20652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013A: "ĺ" LATIN SMALL LETTER L WITH ACUTE
20662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013C: "ļ" LATIN SMALL LETTER L WITH CEDILLA
20672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
20682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 14 */ "\u013E,\u013A,\u013C,\u0142",
20692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0123: "ģ" LATIN SMALL LETTER G WITH CEDILLA
20702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
20712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 15 */ "\u0123,\u011F",
20722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
20732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
20742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language sl: Slovenian */
20752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_sl = {
20762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
20772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null,
20782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~4 */
20792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
20802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u0161",
20812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ null,
20822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
20832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
20842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u010D,\u0107",
20852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ null,
20862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0111: "đ" LATIN SMALL LETTER D WITH STROKE
20872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 9 */ "\u0111",
20882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 10 */ null,
20892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 11 */ null,
20902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
20912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12 */ "\u017E",
20922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
20932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
20942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language sr: Serbian */
20952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_sr = {
20962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
20972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
20982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
20992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null,
21002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~34 */
21019ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // TODO: Move these to sr-Latn once we can handle IETF language tag with script name specified.
21029ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // BEGIN: More keys definitions for Serbian (Latin)
21039ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
21049ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
21059ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
21069ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // <string name="more_keys_for_s">&#x0161;,&#x00DF;,&#x015B;</string>
21079ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
21089ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
21099ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
21109ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // <string name="more_keys_for_c">&#x010D;,&#x00E7;,&#x0107;</string>
21119ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // U+010F: "ď" LATIN SMALL LETTER D WITH CARON
21129ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // <string name="more_keys_for_d">&#x010F;</string>
21139ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
21149ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
21159ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
21169ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // <string name="more_keys_for_z">&#x017E;,&#x017A;,&#x017C;</string>
21179ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // END: More keys definitions for Serbian (Latin)
21189ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // BEGIN: More keys definitions for Serbian (Cyrillic)
21192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0437: "з" CYRILLIC SMALL LETTER ZE
21202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 35 */ "\u0437",
21212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+045B: "ћ" CYRILLIC SMALL LETTER TSHE
21222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 36 */ "\u045B",
21232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0455: "ѕ" CYRILLIC SMALL LETTER DZE
21242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 37 */ "\u0455",
21252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0452: "ђ" CYRILLIC SMALL LETTER DJE
21262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 38 */ "\u0452",
21272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0450: "ѐ" CYRILLIC SMALL LETTER IE WITH GRAVE
21282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 39 */ "\u0450",
21292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+045D: "ѝ" CYRILLIC SMALL LETTER I WITH GRAVE
21302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 40 */ "\u045D",
21312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 41 */ null,
21329ecf63468652b68ee1003d04ce167c1586e03748Tadashi G. Takaoka        // END: More keys definitions for Serbian (Cyrillic)
21332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2018: "‘" LEFT SINGLE QUOTATION MARK
21342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+2019: "’" RIGHT SINGLE QUOTATION MARK
21352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201A: "‚" SINGLE LOW-9 QUOTATION MARK
21362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201B: "‛" SINGLE HIGH-REVERSED-9 QUOTATION MARK
21372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201C: "“" LEFT DOUBLE QUOTATION MARK
21382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201D: "”" RIGHT DOUBLE QUOTATION MARK
21392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+201E: "„" DOUBLE LOW-9 QUOTATION MARK
21405e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // U+201F: "‟" DOUBLE HIGH-REVERSED-9 QUOTATION MARK
21415e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK.
21425e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_double_quote">!fixedColumnOrder!6,&#x201E;,&#x201C;,&#x201D;,&#x201F;,&#x00AB;,&#x00BB;</string>
21432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 42 */ "!fixedColumnOrder!5,\u201E,\u201C,\u201D,\u00AB,\u00BB",
21445e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK.
21455e90f2873c92e14349bd781d69beff4f7b33e760Tadashi G. Takaoka        // <string name="more_keys_for_tablet_double_quote">!fixedColumnOrder!6,&#x201C;,&#x201D;,&#x201E;,&#x201F;,&#x00AB;,&#x00BB;,&#x2018;,&#x2019;,&#x201A;,&#x201B;</string>
21462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 43 */ "!fixedColumnOrder!5,\u201E,\u201C,\u201D,\u00AB,\u00BB,\u2018,\u2019,\u201A,\u201B",
21472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
21482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
21492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language sv: Swedish */
21502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_sv = {
21512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ null,
21522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
21532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
21542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
21552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
21562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
21572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0119",
21582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ null,
21592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
21602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
21612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
21622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
21632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
21642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
21652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u0153,\u00F4,\u00F2,\u00F3,\u00F5,\u014D",
21662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
21672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
21682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
21692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
21702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
21712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
21722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
21732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
21742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
21752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u00DF,\u015B,\u0161",
21762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6~ */
21772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null,
21782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~19 */
21792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
21802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 20 */ "\u00E5",
21812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
21822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 21 */ "\u00F6",
21832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
21842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 22 */ "\u00E4",
21852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
21862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 23 */ "\u00F8",
21872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
21882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 24 */ "\u00E6",
21892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
21902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
2191a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka    /* Language tl: Tagalog */
2192a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka    private static final String[] LANGUAGE_tl = {
2193a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
2194a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
2195a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
2196a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
2197a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
2198a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
2199a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
2200a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
2201a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
2202a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00AA: "ª" FEMININE ORDINAL INDICATOR
2203a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        /* 0 */ "\u00E1,\u00E0,\u00E4,\u00E2,\u00E3,\u00E5,\u0105,\u00E6,\u0101,\u00AA",
2204a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
2205a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
2206a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
2207a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
2208a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
2209a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
2210a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
2211a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        /* 1 */ "\u00E9,\u00E8,\u00EB,\u00EA,\u0119,\u0117,\u0113",
2212a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
2213a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
2214a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
2215a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
2216a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
2217a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
2218a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        /* 2 */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B",
2219a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
2220a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
2221a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
2222a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
2223a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
2224a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
2225a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
2226a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
2227a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00BA: "º" MASCULINE ORDINAL INDICATOR
2228a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        /* 3 */ "\u00F3,\u00F2,\u00F6,\u00F4,\u00F5,\u00F8,\u0153,\u014D,\u00BA",
2229a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
2230a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
2231a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
2232a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
2233a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
2234a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        /* 4 */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
2235a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        /* 5 */ null,
2236a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
2237a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
2238a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        /* 6 */ "\u00F1,\u0144",
2239a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
2240a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
2241a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
2242a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        /* 7 */ "\u00E7,\u0107,\u010D",
2243a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka    };
2244a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka
22452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language tr: Turkish */
22462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_tr = {
22472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
22482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E2",
22492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ null,
22502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
22512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
22522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
22532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
22542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
22552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
22562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
22572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u0131,\u00EE,\u00EF,\u00EC,\u00ED,\u012F,\u012B",
22582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
22592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
22602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
22612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
22622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
22632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
22642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
22652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
22662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F6,\u00F4,\u0153,\u00F2,\u00F3,\u00F5,\u00F8,\u014D",
22672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
22682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
22692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
22702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
22712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
22722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
22732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
22742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
22752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
22762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
22772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u015F,\u00DF,\u015B,\u0161",
22782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ null,
22792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
22802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
22812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
22822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u00E7,\u0107,\u010D",
22832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8~ */
22842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null,
22852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~14 */
22862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
22872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 15 */ "\u011F",
22882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
22892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
22902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language uk: Ukrainian */
22912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_uk = {
22922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0~ */
22932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
22942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null, null, null, null, null, null, null, null,
22952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~24 */
22962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0449: "щ" CYRILLIC SMALL LETTER SHCHA
22972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 25 */ "\u0449",
22982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0456: "і" CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
22992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 26 */ "\u0456",
23002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0438: "и" CYRILLIC SMALL LETTER I
23012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 27 */ "\u0438",
23022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 28~ */
23032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null,
23042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~30 */
23052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
23062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 31 */ "\u044A",
23072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0457: "ї" CYRILLIC SMALL LETTER YI
23082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 32 */ "\u0457",
23092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 33 */ null,
23102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
23112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 34 */ "\u044A",
23122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
23132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
23142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language vi: Vietnamese */
23152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_vi = {
23162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
23172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
23182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EA3: "ả" LATIN SMALL LETTER A WITH HOOK ABOVE
23192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
23202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EA1: "ạ" LATIN SMALL LETTER A WITH DOT BELOW
23212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0103: "ă" LATIN SMALL LETTER A WITH BREVE
23222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EB1: "ằ" LATIN SMALL LETTER A WITH BREVE AND GRAVE
23232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EAF: "ắ" LATIN SMALL LETTER A WITH BREVE AND ACUTE
23242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EB3: "ẳ" LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE
23252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EB5: "ẵ" LATIN SMALL LETTER A WITH BREVE AND TILDE
23262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EB7: "ặ" LATIN SMALL LETTER A WITH BREVE AND DOT BELOW
23272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
23282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EA7: "ầ" LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE
23292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EA5: "ấ" LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE
23302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EA9: "ẩ" LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
23312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EAB: "ẫ" LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE
23322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EAD: "ậ" LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW
23332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E0,\u00E1,\u1EA3,\u00E3,\u1EA1,\u0103,\u1EB1,\u1EAF,\u1EB3,\u1EB5,\u1EB7,\u00E2,\u1EA7,\u1EA5,\u1EA9,\u1EAB,\u1EAD",
23342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
23352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
23362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EBB: "ẻ" LATIN SMALL LETTER E WITH HOOK ABOVE
23372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EBD: "ẽ" LATIN SMALL LETTER E WITH TILDE
23382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EB9: "ẹ" LATIN SMALL LETTER E WITH DOT BELOW
23392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
23402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EC1: "ề" LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE
23412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EBF: "ế" LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE
23422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EC3: "ể" LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
23432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EC5: "ễ" LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE
23442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EC7: "ệ" LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW
23452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E8,\u00E9,\u1EBB,\u1EBD,\u1EB9,\u00EA,\u1EC1,\u1EBF,\u1EC3,\u1EC5,\u1EC7",
23462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
23472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
23482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EC9: "ỉ" LATIN SMALL LETTER I WITH HOOK ABOVE
23492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0129: "ĩ" LATIN SMALL LETTER I WITH TILDE
23502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1ECB: "ị" LATIN SMALL LETTER I WITH DOT BELOW
23512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00EC,\u00ED,\u1EC9,\u0129,\u1ECB",
23522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
23532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
23542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1ECF: "ỏ" LATIN SMALL LETTER O WITH HOOK ABOVE
23552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
23562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1ECD: "ọ" LATIN SMALL LETTER O WITH DOT BELOW
23572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
23582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1ED3: "ồ" LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE
23592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1ED1: "ố" LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE
23602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1ED5: "ổ" LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
23612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1ED7: "ỗ" LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE
23622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1ED9: "ộ" LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW
23632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+01A1: "ơ" LATIN SMALL LETTER O WITH HORN
23642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EDD: "ờ" LATIN SMALL LETTER O WITH HORN AND GRAVE
23652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EDB: "ớ" LATIN SMALL LETTER O WITH HORN AND ACUTE
23662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EDF: "ở" LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE
23672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EE1: "ỡ" LATIN SMALL LETTER O WITH HORN AND TILDE
23682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EE3: "ợ" LATIN SMALL LETTER O WITH HORN AND DOT BELOW
23692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F2,\u00F3,\u1ECF,\u00F5,\u1ECD,\u00F4,\u1ED3,\u1ED1,\u1ED5,\u1ED7,\u1ED9,\u01A1,\u1EDD,\u1EDB,\u1EDF,\u1EE1,\u1EE3",
23702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
23712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
23722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EE7: "ủ" LATIN SMALL LETTER U WITH HOOK ABOVE
23732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0169: "ũ" LATIN SMALL LETTER U WITH TILDE
23742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EE5: "ụ" LATIN SMALL LETTER U WITH DOT BELOW
23752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+01B0: "ư" LATIN SMALL LETTER U WITH HORN
23762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EEB: "ừ" LATIN SMALL LETTER U WITH HORN AND GRAVE
23772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EE9: "ứ" LATIN SMALL LETTER U WITH HORN AND ACUTE
23782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EED: "ử" LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE
23792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EEF: "ữ" LATIN SMALL LETTER U WITH HORN AND TILDE
23802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EF1: "ự" LATIN SMALL LETTER U WITH HORN AND DOT BELOW
23812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00F9,\u00FA,\u1EE7,\u0169,\u1EE5,\u01B0,\u1EEB,\u1EE9,\u1EED,\u1EEF,\u1EF1",
23822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5~ */
23832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        null, null, null,
23842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* ~7 */
23852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EF3: "ỳ" LATIN SMALL LETTER Y WITH GRAVE
23862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
23872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EF7: "ỷ" LATIN SMALL LETTER Y WITH HOOK ABOVE
23882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EF9: "ỹ" LATIN SMALL LETTER Y WITH TILDE
23892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+1EF5: "ỵ" LATIN SMALL LETTER Y WITH DOT BELOW
23902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ "\u1EF3,\u00FD,\u1EF7,\u1EF9,\u1EF5",
23912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0111: "đ" LATIN SMALL LETTER D WITH STROKE
23922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 9 */ "\u0111",
23932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
23942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
23952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    /* Language zz: No language */
23962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    private static final String[] LANGUAGE_zz = {
23972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
23982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
23992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
24002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
24012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
24022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
24032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E6: "æ" LATIN SMALL LETTER AE
24042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
24052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0103: "ă" LATIN SMALL LETTER A WITH BREVE
24062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
24072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00AA: "ª" FEMININE ORDINAL INDICATOR
24082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 0 */ "\u00E0,\u00E1,\u00E2,\u00E3,\u00E4,\u00E5,\u00E6,\u00E3,\u00E5,\u0101,\u0103,\u0105,\u00AA",
24092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
24102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
24112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
24122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
24132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
24142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0115: "ĕ" LATIN SMALL LETTER E WITH BREVE
24152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
24162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
24172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
24182be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 1 */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0113,\u0115,\u0117,\u0119,\u011B",
24192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
24202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
24212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
24222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
24232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0129: "ĩ" LATIN SMALL LETTER I WITH TILDE
24242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
24252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012D: "ĭ" LATIN SMALL LETTER I WITH BREVE
24262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
24272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
24282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0133: "ij" LATIN SMALL LIGATURE IJ
24292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 2 */ "\u00EC,\u00ED,\u00EE,\u00EF,\u0129,\u012B,\u012D,\u012F,\u0131,\u0133",
24302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
24312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
24322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
24332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
24342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
24352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
24362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
24372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014F: "ŏ" LATIN SMALL LETTER O WITH BREVE
24382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
24392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0153: "œ" LATIN SMALL LIGATURE OE
24402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00BA: "º" MASCULINE ORDINAL INDICATOR
24412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 3 */ "\u00F2,\u00F3,\u00F4,\u00F5,\u00F6,\u00F8,\u014D,\u014F,\u0151,\u0153,\u00BA",
24422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
24432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
24442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
24452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
24462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0169: "ũ" LATIN SMALL LETTER U WITH TILDE
24472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
24482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016D: "ŭ" LATIN SMALL LETTER U WITH BREVE
24492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
24502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
24512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0173: "ų" LATIN SMALL LETTER U WITH OGONEK
24522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 4 */ "\u00F9,\u00FA,\u00FB,\u00FC,\u0169,\u016B,\u016D,\u016F,\u0171,\u0173",
24532be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00DF: "ß" LATIN SMALL LETTER SHARP S
24542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
24552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015D: "ŝ" LATIN SMALL LETTER S WITH CIRCUMFLEX
24562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
24572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0161: "š" LATIN SMALL LETTER S WITH CARON
24582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017F: "ſ" LATIN SMALL LETTER LONG S
24592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 5 */ "\u00DF,\u015B,\u015D,\u015F,\u0161,\u017F",
24602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
24612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
24622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0146: "ņ" LATIN SMALL LETTER N WITH CEDILLA
24632be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0148: "ň" LATIN SMALL LETTER N WITH CARON
24642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0149: "ʼn" LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
24652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+014B: "ŋ" LATIN SMALL LETTER ENG
24662be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 6 */ "\u00F1,\u0144,\u0146,\u0148,\u0149,\u014B",
24672be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
24682be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
24692be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0109: "ĉ" LATIN SMALL LETTER C WITH CIRCUMFLEX
24702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010B: "ċ" LATIN SMALL LETTER C WITH DOT ABOVE
24712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010D: "č" LATIN SMALL LETTER C WITH CARON
24722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 7 */ "\u00E7,\u0107,\u0109,\u010B,\u010D",
24732be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
24742be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0177: "ŷ" LATIN SMALL LETTER Y WITH CIRCUMFLEX
24752be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
24762be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0133: "ij" LATIN SMALL LIGATURE IJ
24772be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 8 */ "\u00FD,\u0177,\u00FF,\u0133",
24782be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+010F: "ď" LATIN SMALL LETTER D WITH CARON
24792be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0111: "đ" LATIN SMALL LETTER D WITH STROKE
24802be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00F0: "ð" LATIN SMALL LETTER ETH
24812be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 9 */ "\u010F,\u0111,\u00F0",
24822be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
24832be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
24842be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
24852be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 10 */ "\u0155,\u0157,\u0159",
24862be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+00FE: "þ" LATIN SMALL LETTER THORN
24872be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
24882be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
24892be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0167: "ŧ" LATIN SMALL LETTER T WITH STROKE
24902be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 11 */ "\u00FE,\u0163,\u0165,\u0167",
24912be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
24922be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
24932be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
24942be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 12 */ "\u017A,\u017C,\u017E",
24952be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
24962be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0138: "ĸ" LATIN SMALL LETTER KRA
24972be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 13 */ "\u0137,\u0138",
24982be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013A: "ĺ" LATIN SMALL LETTER L WITH ACUTE
24992be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013C: "ļ" LATIN SMALL LETTER L WITH CEDILLA
25002be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+013E: "ľ" LATIN SMALL LETTER L WITH CARON
25012be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0140: "ŀ" LATIN SMALL LETTER L WITH MIDDLE DOT
25022be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
25032be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 14 */ "\u013A,\u013C,\u013E,\u0140,\u0142",
25042be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011D: "ĝ" LATIN SMALL LETTER G WITH CIRCUMFLEX
25052be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
25062be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0121: "ġ" LATIN SMALL LETTER G WITH DOT ABOVE
25072be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0123: "ģ" LATIN SMALL LETTER G WITH CEDILLA
25082be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 15 */ "\u011D,\u011F,\u0121,\u0123",
25092be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 16 */ null,
25102be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0125: "ĥ" LATIN SMALL LETTER H WITH CIRCUMFLEX
25112be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 17 */ "\u0125",
25122be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0135: "ĵ" LATIN SMALL LETTER J WITH CIRCUMFLEX
25132be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 18 */ "\u0135",
25142be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        // U+0175: "ŵ" LATIN SMALL LETTER W WITH CIRCUMFLEX
25152be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        /* 19 */ "\u0175",
25162be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
25172be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
25186bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka    private static final Object[] LANGUAGES_AND_TEXTS = {
25192be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "DEFAULT", LANGUAGE_DEFAULT, /* default */
25202be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "ar", LANGUAGE_ar, /* Arabic */
25212be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "be", LANGUAGE_be, /* Belarusian */
25222be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "ca", LANGUAGE_ca, /* Catalan */
25232be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "cs", LANGUAGE_cs, /* Czech */
25242be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "da", LANGUAGE_da, /* Danish */
25252be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "de", LANGUAGE_de, /* German */
25262be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "en", LANGUAGE_en, /* English */
25272be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "es", LANGUAGE_es, /* Spanish */
25282be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "et", LANGUAGE_et, /* Estonian */
25292be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "fa", LANGUAGE_fa, /* Persian */
25302be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "fi", LANGUAGE_fi, /* Finnish */
25312be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "fr", LANGUAGE_fr, /* French */
25322be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "hi", LANGUAGE_hi, /* Hindi */
25332be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "hr", LANGUAGE_hr, /* Croatian */
25342be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "hu", LANGUAGE_hu, /* Hungarian */
25352be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "is", LANGUAGE_is, /* Icelandic */
25362be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "it", LANGUAGE_it, /* Italian */
25372be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "iw", LANGUAGE_iw, /* Hebrew */
25382be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "ky", LANGUAGE_ky, /* Kirghiz */
25392be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "lt", LANGUAGE_lt, /* Lithuanian */
25402be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "lv", LANGUAGE_lv, /* Latvian */
25412be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "mk", LANGUAGE_mk, /* Macedonian */
25422be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "nb", LANGUAGE_nb, /* Norwegian Bokmål */
25432be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "nl", LANGUAGE_nl, /* Dutch */
25442be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "pl", LANGUAGE_pl, /* Polish */
25452be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "pt", LANGUAGE_pt, /* Portuguese */
25462be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "rm", LANGUAGE_rm, /* Raeto-Romance */
25472be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "ro", LANGUAGE_ro, /* Romanian */
25482be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "ru", LANGUAGE_ru, /* Russian */
25492be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "sk", LANGUAGE_sk, /* Slovak */
25502be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "sl", LANGUAGE_sl, /* Slovenian */
25512be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "sr", LANGUAGE_sr, /* Serbian */
25522be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "sv", LANGUAGE_sv, /* Swedish */
2553a01d9aea64b24117ee167b94f8bdc176082b8783Tadashi G. Takaoka        "tl", LANGUAGE_tl, /* Tagalog */
25542be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "tr", LANGUAGE_tr, /* Turkish */
25552be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "uk", LANGUAGE_uk, /* Ukrainian */
25562be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "vi", LANGUAGE_vi, /* Vietnamese */
25572be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        "zz", LANGUAGE_zz, /* No language */
25582be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    };
25592be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
25602be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    static {
25612be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        int id = 0;
25622be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        for (final String name : NAMES) {
25630a3362d26474cbd60bf870be7ad1413359e4fad6Tadashi G. Takaoka            sNameToIdsMap.put(name, id++);
25642be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        }
25652be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka
25666bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka        for (int i = 0; i < LANGUAGES_AND_TEXTS.length; i += 2) {
25676bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka            final String language = (String)LANGUAGES_AND_TEXTS[i];
25686bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka            final String[] texts = (String[])LANGUAGES_AND_TEXTS[i + 1];
25696bfd5f631908c4afd893c9b25b353e5e16c5fc0cTadashi G. Takaoka            sLocaleToTextsMap.put(language, texts);
25702be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka        }
25712be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka    }
25722be51f4fd0c5cd70c7a2757558ffe45e703700cfTadashi G. Takaoka}
2573