/*********************************************************************
 * Copyright (C) 2001, International Business Machines Corporation and
 * others. All Rights Reserved.
 *********************************************************************
 * $Source: /xsrl/Nsvn/icu/icu4j/src/com/ibm/icu/util/Attic/TimeZoneData.java,v $
 * $Date: 2002/12/03 23:14:51 $
 * $Revision: 1.7 $
 */
package com.ibm.icu.util;
import java.util.Hashtable;
import com.ibm.icu.impl.Utility;

/**
 * Internal class that encapsulates data about the system time zones.
 * This includes the names of all zones, their raw offsets, their
 * rules (for zones observing DST), and index tables that group
 * together zones with the same raw offset, as well as zones that are
 * equivalent (same raw offset and rules).
 * 
 * <p>This class contains two parts: A narrow API for instantiating
 * the system zone objects and for obtaining metainformation
 * (available zone lists and equivalency group lists), and blocks of
 * compressed data that take the form of static strings or string
 * arrays.  The compressed data is generated source code that cannot
 * be hand edited.  It is derived from the standard UNIX zone data at
 * ftp://elsie.nci.nih.gov/pub and is processed by the tool gentz
 * located at icu/source/tools/gentz.  When the UNIX zone data
 * changes, the gentz tool must be run to generate the new data and
 * the compressed data blocks in this file and the new blocks must be
 * pasted in.  For step-by-step instructions, see
 * icu/source/tools/gentz/readme.txt.
 *
 * @author Alan Liu
 */
class TimeZoneData {

    /**
     * Construct and return the given system TimeZone, or return null if
     * the given ID does not refer to a system TimeZone.
     */
    public static TimeZone get(String ID) {
        int i = lookup(ID);
        return (i<0) ? null : new SimpleTimeZone(ID, DATA, i);
    }

    /**
     * Return a new String array containing all system TimeZone IDs.
     * These IDs (and only these IDs) may be passed to
     * <code>get()</code> to construct the corresponding TimeZone
     * object.
     * @return an array of all system TimeZone IDs
     */
    public static String[] getAvailableIDs() {
        String[] result = new String[IDS.length];
        System.arraycopy(IDS, 0, result, 0, IDS.length);
        return result;
    }

    /**
     * Return a new String array containing all system TimeZone IDs
     * with the given raw offset from GMT.  These IDs may be passed to
     * <code>get()</code> to construct the corresponding TimeZone
     * object.
     * @param rawOffset the offset in milliseconds from GMT
     * @return an array of IDs for system TimeZones with the given
     * raw offset.  If there are none, return a zero-length array.
     */
    public static String[] getAvailableIDs(int rawOffset) {
        // Do a linear search; there are < 200 entries
        for (int i=0; i<INDEX_BY_OFFSET.length;) {
            int offset = INDEX_BY_OFFSET[i] * 1000;
            if (offset > rawOffset) {
                break;
            }
            if (offset == rawOffset) {
                // Found our desired offset
                int n = INDEX_BY_OFFSET[i+2];
                String[] result = new String[n];
                for (int j=0; j<n; ++j) {
                    result[j] = IDS[INDEX_BY_OFFSET[i+3+j]];
                }
                return result;
            }
            // Advance to the next entry
            i += INDEX_BY_OFFSET[i+2] + 3;
        }
        // Failed to find any; return empty array
        return new String[0];
    }
 
    /**
     * Return a new String array containing all system TimeZone IDs
     * associated with the given country.  These IDs may be passed to
     * <code>get()</code> to construct the corresponding TimeZone
     * object.
     * @param a two-letter ISO 3166 country code, or <code>null</code>
     * to return zones not associated with any country
     * @return an array of IDs for system TimeZones with the given
     * raw offset.  If there are none, return a zero-length array.
     */
    public static String[] getAvailableIDs(String countryCode) {
        // Construct our key; this is an integer of the form
        // 32*n1 + n0, where 0<=n<=25.
        int countryHash = 0;
        if (countryCode != null) {
            countryHash =
                ((Character.toUpperCase(countryCode.charAt(0)) - 'A') << 5) |
                (Character.toUpperCase(countryCode.charAt(1)) - 'A');
        }

        // Do a linear search; there are ~ 250 entries
        for (int i=0; i<INDEX_BY_COUNTRY.length; ) {
            if (countryHash == INDEX_BY_COUNTRY[i]) {
                // Found the desired country
                int n = INDEX_BY_COUNTRY[i+1];
                String[] result = new String[n];
                for (int j=0; j<n; ++j) {
                    result[j] = IDS[INDEX_BY_COUNTRY[i+2+j]];
                }
                return result;
            } else {
                i += INDEX_BY_COUNTRY[i+1] + 2;
            }
        }
        // Failed to find any; return empty array
        return new String[0];
    }

    /**
     * Returns the number of IDs in the equivalency group that
     * includes the given ID.  An equivalency group contains zones
     * that have the same GMT offset and rules.
     *
     * <p>The returned count includes the given ID; it is always >= 1
     * for valid IDs.  The given ID must be a system time zone.  If it
     * is not, returns zero.
     * @param ID a system time zone ID
     * @return the number of zones in the equivalency group containing
     * 'ID', or zero if 'ID' is not a valid system ID
     * @see #getEquivalentID
     */
    public static int countEquivalentIDs(String ID) {
        int i = lookup(ID);
        return (i<0) ? 0 : DATA[i + ((DATA[i]==0)?2:13)];
    }

    /**
     * Returns an ID in the equivalency group that
     * includes the given ID.  An equivalency group contains zones
     * that have the same GMT offset and rules.
     *
     * <p>The given index must be in the range 0..n-1, where n is the
     * value returned by <code>countEquivalentIDs(id)</code>.  For
     * some value of 'index', the returned value will be equal to the
     * given id.  If the given id is not a valid system time zone, or
     * if 'index' is out of range, then returns an empty string.
     * @param ID a system time zone ID
     * @param index a value from 0 to n-1, where n is the value
     * returned by <code>countEquivalentIDs(id)</code>
     * @return the ID of the index-th zone in the equivalency group
     * containing 'ID', or an empty string if 'ID' is not a valid
     * system ID or 'index' is out of range
     * @see #countEquivalentIDs
     */
    public static String getEquivalentID(String ID, int index) {
        int i = lookup(ID);
        if (i<0) {
            return "";
        }
        int j = i + ((DATA[i]==0)?2:13);
        return (index<DATA[j]) ? IDS[DATA[j+index+1]] : "";
    }

    /**
     * Given an ID, return the equivalency group index (index of
     * DATA[] for the start of the group's data) or -1 if not found.
     */
    static int lookup(String ID) {
        Integer i = (Integer) INDEX_BY_NAME.get(ID);
        return (i == null) ? -1 : i.intValue();
    }

    /**
     * Equivalency group data in int[] form.  This is represented as a
     * single flat array of ints for compactness.  Each equivalency
     * group is represented by a sequence of ints of variable length.
     * Groups are identified by a single integer, the offset to the
     * start of the group.  If i is the offset to the start of the
     * group, then the layout of data is:
     *
     * Offset  Data       Notes
     * i+0     isDST      0 for standard zones, 1 for DST
     * i+1     rawOffset  in seconds from GMT
     * <DST zones contain additional entries here; see below>
     * j+0     count      number of IDs to follow, >= 1
     * j+1..k  IDs        indices into IDS[] array
     * j+k+1   (next entry start)
     *
     * For standard zones, j = i+2.  For DST zones, j = i+13
     * and the following entries apply:
     *
     * Offset  Data       Notes
     * i+2     startMonth 0-based
     * i+3     startDowim
     * i+4     startDow  
     * i+5     startTime  in minutes
     * i+6     startMode  w/s/u encoded as 0/1/2
     * i+7     endMonth   0-based
     * i+8     endDowim
     * i+9     endDow  
     * i+10    endTime    in minutes
     * i+11    endMode    w/s/u encoded as 0/1/2
     * i+12     dstSavings in minutes
     *
     * A standard zone entry is 3+n ints long, and a DST zone entry is
     * 14+n ints long, where n is count of IDs to follow (the value at
     * j+0).
     */
    static int[] DATA;

    /**
     * Map from TimeZone ID to equivalency group offset.  This is an
     * index into DATA.  The equivalency group data starts at DATA[i]
     * and occupies the m ints that follow, where the value of m depends
     * on whether the zone is standard or DST and how many IDs are in
     * the group.
     */
    static final Hashtable INDEX_BY_NAME = new Hashtable();

    /**
     * Index of rawOffset to list of zones.  Entries are in order of 
     * ascending rawOffset.  Format:
     *
     * Offset  Data       Notes
     * i+0     rawOffset  in milliseconds from GMT
     * i+1     default    default zone for this offset
     * i+2     count      number of IDs to follow
     * i+3..j  IDs        indices into IDS
     * i+j+1   (next entry start)
     *
     * If the number of equivalency groups is n, then j=n+2.
     *
     * Equivalency group IDs are indices in DATA to the start of each
     * equivalency group.
     */
    static int[] INDEX_BY_OFFSET;

    /**
     * Index by country to list of zones.  Entries are in order of 
     * ascending country code.  Format:
     *
     * Offset  Data       Notes
     * i+0     country    as an integer 32n1 + n0; see below
     * i+1     count      number of IDs to follow
     * i+2..j  IDs        indices into IDS[]
     *
     * If the number of zones is n, then j=n+1.
     *
     * The first integer in each entry is the country code as an integer
     * from 0..(26-1)*32+(26-1).  This is computed as follows:  A two
     * letter country code XY is converted to ((X-'A')<<5) | (Y-'A').
     * The special value 0 indicates no assigned country.  This also
     * maps to the country code 'AA' but currently this is not a valid
     * country code.
     *
     * Zone ID values are indices into IDS[].
     */
    static int[] INDEX_BY_COUNTRY;

    //----------------------------------------------------------------
    // BEGIN GENERATED SOURCE CODE
    // Date: Tue Dec 03 15:10:35 PST 2002
    // Version: tzdata2002d from ftp://elsie.nci.nih.gov/pub
    // Tool: icu/source/tools/gentz
    // See: icu/source/tools/gentz/readme.txt
    // DO NOT EDIT THIS SECTION

    /**
     * Array of IDs in lexicographic order.  The INDEX_BY_OFFSET and DATA
     * arrays refer to zones using indices into this array.  To map from ID
     * to equivalency group, use the INDEX_BY_NAME Hashtable.
     * >> GENERATED DATA: DO NOT EDIT <<
     */
    static final String[] IDS = {
        "ACT",
        "AET",
        "AGT",
        "ART",
        "AST",
        "Africa/Abidjan",
        "Africa/Accra",
        "Africa/Addis_Ababa",
        "Africa/Algiers",
        "Africa/Asmera",
        "Africa/Bamako",
        "Africa/Bangui",
        "Africa/Banjul",
        "Africa/Bissau",
        "Africa/Blantyre",
        "Africa/Brazzaville",
        "Africa/Bujumbura",
        "Africa/Cairo",
        "Africa/Casablanca",
        "Africa/Ceuta",
        "Africa/Conakry",
        "Africa/Dakar",
        "Africa/Dar_es_Salaam",
        "Africa/Djibouti",
        "Africa/Douala",
        "Africa/El_Aaiun",
        "Africa/Freetown",
        "Africa/Gaborone",
        "Africa/Harare",
        "Africa/Johannesburg",
        "Africa/Kampala",
        "Africa/Khartoum",
        "Africa/Kigali",
        "Africa/Kinshasa",
        "Africa/Lagos",
        "Africa/Libreville",
        "Africa/Lome",
        "Africa/Luanda",
        "Africa/Lubumbashi",
        "Africa/Lusaka",
        "Africa/Malabo",
        "Africa/Maputo",
        "Africa/Maseru",
        "Africa/Mbabane",
        "Africa/Mogadishu",
        "Africa/Monrovia",
        "Africa/Nairobi",
        "Africa/Ndjamena",
        "Africa/Niamey",
        "Africa/Nouakchott",
        "Africa/Ouagadougou",
        "Africa/Porto-Novo",
        "Africa/Sao_Tome",
        "Africa/Timbuktu",
        "Africa/Tripoli",
        "Africa/Tunis",
        "Africa/Windhoek",
        "America/Adak",
        "America/Anchorage",
        "America/Anguilla",
        "America/Antigua",
        "America/Araguaina",
        "America/Aruba",
        "America/Asuncion",
        "America/Barbados",
        "America/Belem",
        "America/Belize",
        "America/Boa_Vista",
        "America/Bogota",
        "America/Boise",
        "America/Buenos_Aires",
        "America/Cambridge_Bay",
        "America/Cancun",
        "America/Caracas",
        "America/Catamarca",
        "America/Cayenne",
        "America/Cayman",
        "America/Chicago",
        "America/Chihuahua",
        "America/Cordoba",
        "America/Costa_Rica",
        "America/Cuiaba",
        "America/Curacao",
        "America/Danmarkshavn",
        "America/Dawson",
        "America/Dawson_Creek",
        "America/Denver",
        "America/Detroit",
        "America/Dominica",
        "America/Edmonton",
        "America/Eirunepe",
        "America/El_Salvador",
        "America/Fortaleza",
        "America/Glace_Bay",
        "America/Godthab",
        "America/Goose_Bay",
        "America/Grand_Turk",
        "America/Grenada",
        "America/Guadeloupe",
        "America/Guatemala",
        "America/Guayaquil",
        "America/Guyana",
        "America/Halifax",
        "America/Havana",
        "America/Hermosillo",
        "America/Indiana/Knox",
        "America/Indiana/Marengo",
        "America/Indiana/Vevay",
        "America/Indianapolis",
        "America/Inuvik",
        "America/Iqaluit",
        "America/Jamaica",
        "America/Jujuy",
        "America/Juneau",
        "America/Kentucky/Monticello",
        "America/La_Paz",
        "America/Lima",
        "America/Los_Angeles",
        "America/Louisville",
        "America/Maceio",
        "America/Managua",
        "America/Manaus",
        "America/Martinique",
        "America/Mazatlan",
        "America/Mendoza",
        "America/Menominee",
        "America/Merida",
        "America/Mexico_City",
        "America/Miquelon",
        "America/Monterrey",
        "America/Montevideo",
        "America/Montreal",
        "America/Montserrat",
        "America/Nassau",
        "America/New_York",
        "America/Nipigon",
        "America/Nome",
        "America/Noronha",
        "America/North_Dakota/Center",
        "America/Panama",
        "America/Pangnirtung",
        "America/Paramaribo",
        "America/Phoenix",
        "America/Port-au-Prince",
        "America/Port_of_Spain",
        "America/Porto_Velho",
        "America/Puerto_Rico",
        "America/Rainy_River",
        "America/Rankin_Inlet",
        "America/Recife",
        "America/Regina",
        "America/Rio_Branco",
        "America/Santiago",
        "America/Santo_Domingo",
        "America/Sao_Paulo",
        "America/Scoresbysund",
        "America/St_Johns",
        "America/St_Kitts",
        "America/St_Lucia",
        "America/St_Thomas",
        "America/St_Vincent",
        "America/Swift_Current",
        "America/Tegucigalpa",
        "America/Thule",
        "America/Thunder_Bay",
        "America/Tijuana",
        "America/Tortola",
        "America/Vancouver",
        "America/Whitehorse",
        "America/Winnipeg",
        "America/Yakutat",
        "America/Yellowknife",
        "Antarctica/Casey",
        "Antarctica/Davis",
        "Antarctica/DumontDUrville",
        "Antarctica/Mawson",
        "Antarctica/McMurdo",
        "Antarctica/Palmer",
        "Antarctica/Syowa",
        "Antarctica/Vostok",
        "Arctic/Longyearbyen",
        "Asia/Aden",
        "Asia/Almaty",
        "Asia/Amman",
        "Asia/Anadyr",
        "Asia/Aqtau",
        "Asia/Aqtobe",
        "Asia/Ashgabat",
        "Asia/Baghdad",
        "Asia/Bahrain",
        "Asia/Baku",
        "Asia/Bangkok",
        "Asia/Beirut",
        "Asia/Bishkek",
        "Asia/Brunei",
        "Asia/Calcutta",
        "Asia/Choibalsan",
        "Asia/Chongqing",
        "Asia/Colombo",
        "Asia/Damascus",
        "Asia/Dhaka",
        "Asia/Dili",
        "Asia/Dubai",
        "Asia/Dushanbe",
        "Asia/Gaza",
        "Asia/Harbin",
        "Asia/Hong_Kong",
        "Asia/Hovd",
        "Asia/Irkutsk",
        "Asia/Jakarta",
        "Asia/Jayapura",
        "Asia/Jerusalem",
        "Asia/Kabul",
        "Asia/Kamchatka",
        "Asia/Karachi",
        "Asia/Kashgar",
        "Asia/Katmandu",
        "Asia/Krasnoyarsk",
        "Asia/Kuala_Lumpur",
        "Asia/Kuching",
        "Asia/Kuwait",
        "Asia/Macau",
        "Asia/Magadan",
        "Asia/Makassar",
        "Asia/Manila",
        "Asia/Muscat",
        "Asia/Nicosia",
        "Asia/Novosibirsk",
        "Asia/Omsk",
        "Asia/Oral",
        "Asia/Phnom_Penh",
        "Asia/Pontianak",
        "Asia/Pyongyang",
        "Asia/Qatar",
        "Asia/Qyzylorda",
        "Asia/Rangoon",
        "Asia/Riyadh",
        "Asia/Riyadh87",
        "Asia/Riyadh88",
        "Asia/Riyadh89",
        "Asia/Saigon",
        "Asia/Sakhalin",
        "Asia/Samarkand",
        "Asia/Seoul",
        "Asia/Shanghai",
        "Asia/Singapore",
        "Asia/Taipei",
        "Asia/Tashkent",
        "Asia/Tbilisi",
        "Asia/Tehran",
        "Asia/Thimphu",
        "Asia/Tokyo",
        "Asia/Ulaanbaatar",
        "Asia/Urumqi",
        "Asia/Vientiane",
        "Asia/Vladivostok",
        "Asia/Yakutsk",
        "Asia/Yekaterinburg",
        "Asia/Yerevan",
        "Atlantic/Azores",
        "Atlantic/Bermuda",
        "Atlantic/Canary",
        "Atlantic/Cape_Verde",
        "Atlantic/Faeroe",
        "Atlantic/Jan_Mayen",
        "Atlantic/Madeira",
        "Atlantic/Reykjavik",
        "Atlantic/South_Georgia",
        "Atlantic/St_Helena",
        "Atlantic/Stanley",
        "Australia/Adelaide",
        "Australia/Brisbane",
        "Australia/Broken_Hill",
        "Australia/Darwin",
        "Australia/Hobart",
        "Australia/Lindeman",
        "Australia/Lord_Howe",
        "Australia/Melbourne",
        "Australia/Perth",
        "Australia/Sydney",
        "BET",
        "BST",
        "CAT",
        "CET",
        "CNT",
        "CST",
        "CTT",
        "EAT",
        "ECT",
        "EET",
        "EST",
        "Etc/GMT",
        "Etc/GMT+1",
        "Etc/GMT+10",
        "Etc/GMT+11",
        "Etc/GMT+12",
        "Etc/GMT+2",
        "Etc/GMT+3",
        "Etc/GMT+4",
        "Etc/GMT+5",
        "Etc/GMT+6",
        "Etc/GMT+7",
        "Etc/GMT+8",
        "Etc/GMT+9",
        "Etc/GMT-1",
        "Etc/GMT-10",
        "Etc/GMT-11",
        "Etc/GMT-12",
        "Etc/GMT-13",
        "Etc/GMT-14",
        "Etc/GMT-2",
        "Etc/GMT-3",
        "Etc/GMT-4",
        "Etc/GMT-5",
        "Etc/GMT-6",
        "Etc/GMT-7",
        "Etc/GMT-8",
        "Etc/GMT-9",
        "Etc/UCT",
        "Etc/UTC",
        "Europe/Amsterdam",
        "Europe/Andorra",
        "Europe/Athens",
        "Europe/Belfast",
        "Europe/Belgrade",
        "Europe/Berlin",
        "Europe/Bratislava",
        "Europe/Brussels",
        "Europe/Bucharest",
        "Europe/Budapest",
        "Europe/Chisinau",
        "Europe/Copenhagen",
        "Europe/Dublin",
        "Europe/Gibraltar",
        "Europe/Helsinki",
        "Europe/Istanbul",
        "Europe/Kaliningrad",
        "Europe/Kiev",
        "Europe/Lisbon",
        "Europe/Ljubljana",
        "Europe/London",
        "Europe/Luxembourg",
        "Europe/Madrid",
        "Europe/Malta",
        "Europe/Minsk",
        "Europe/Monaco",
        "Europe/Moscow",
        "Europe/Oslo",
        "Europe/Paris",
        "Europe/Prague",
        "Europe/Riga",
        "Europe/Rome",
        "Europe/Samara",
        "Europe/San_Marino",
        "Europe/Sarajevo",
        "Europe/Simferopol",
        "Europe/Skopje",
        "Europe/Sofia",
        "Europe/Stockholm",
        "Europe/Tallinn",
        "Europe/Tirane",
        "Europe/Uzhgorod",
        "Europe/Vaduz",
        "Europe/Vatican",
        "Europe/Vienna",
        "Europe/Vilnius",
        "Europe/Warsaw",
        "Europe/Zagreb",
        "Europe/Zaporozhye",
        "Europe/Zurich",
        "GMT",
        "HST",
        "IET",
        "IST",
        "Indian/Antananarivo",
        "Indian/Chagos",
        "Indian/Christmas",
        "Indian/Cocos",
        "Indian/Comoro",
        "Indian/Kerguelen",
        "Indian/Mahe",
        "Indian/Maldives",
        "Indian/Mauritius",
        "Indian/Mayotte",
        "Indian/Reunion",
        "JST",
        "MET",
        "MIT",
        "MST",
        "NET",
        "NST",
        "PLT",
        "PNT",
        "PRT",
        "PST",
        "Pacific/Apia",
        "Pacific/Auckland",
        "Pacific/Chatham",
        "Pacific/Easter",
        "Pacific/Efate",
        "Pacific/Enderbury",
        "Pacific/Fakaofo",
        "Pacific/Fiji",
        "Pacific/Funafuti",
        "Pacific/Galapagos",
        "Pacific/Gambier",
        "Pacific/Guadalcanal",
        "Pacific/Guam",
        "Pacific/Honolulu",
        "Pacific/Johnston",
        "Pacific/Kiritimati",
        "Pacific/Kosrae",
        "Pacific/Kwajalein",
        "Pacific/Majuro",
        "Pacific/Marquesas",
        "Pacific/Midway",
        "Pacific/Nauru",
        "Pacific/Niue",
        "Pacific/Norfolk",
        "Pacific/Noumea",
        "Pacific/Pago_Pago",
        "Pacific/Palau",
        "Pacific/Pitcairn",
        "Pacific/Ponape",
        "Pacific/Port_Moresby",
        "Pacific/Rarotonga",
        "Pacific/Saipan",
        "Pacific/Tahiti",
        "Pacific/Tarawa",
        "Pacific/Tongatapu",
        "Pacific/Truk",
        "Pacific/Wake",
        "Pacific/Wallis",
        "Pacific/Yap",
        "SST",
        "UTC",
        "VST",
        "WET",
    };

    /**
     * RLE encoded form of DATA.
     * @see com.ibm.util.Utility.RLEStringToIntArray
     * >> GENERATED DATA: DO NOT EDIT <<
     */
    static final String DATA_RLE =
        "\000\u06B4\000\000\uFFFF\u5740\000\001\000\u0127\000\000\uFFFF\u6550\000"+
        "\006\000\u0126\000\u0183\000\u018B\000\u019F\000\u01A1\000\u01A4\000\000"+
        "\uFFFF\u7360\000\006\000\u0125\000\u0173\000\u0191\000\u0198\000\u0199"+
        "\000\u01AB\000\001\uFFFF\u7360\000\003\000\001\uFFFF\uFFFF\000x\000\000"+
        "\000\011\uFFFF\uFFFF\000\001\000x\000\000\000<\000\001\0009\000\001\uFFFF"+
        "\u7360\000\011\uFFFF\uFFFF\000\001\000\000\000\000\000\002\000\001\uFFFF"+
        "\uFFFF\000\000\000\000\000\036\000\001\000\u01A9\000\000\uFFFF\u7A68\000"+
        "\001\000\u019E\000\000\uFFFF\u8170\000\002\000\u012F\000\u0195\000\001"+
        "\uFFFF\u8170\000\003\000\001\uFFFF\uFFFF\000x\000\000\000\011\uFFFF\uFFFF"+
        "\000\001\000x\000\000\000<\000\005\000\004\000:\000q\000\u0088\000\u00AA"+
        "\000\000\uFFFF\u8F80\000\002\000\u012E\000\u01A6\000\001\uFFFF\u8F80\000"+
        "\003\000\001\uFFFF\uFFFF\000x\000\000\000\011\uFFFF\uFFFF\000\001\000"+
        "x\000\000\000<\000\006\000T\000u\000\u00A5\000\u00A7\000\u00A8\000\u018A"+
        "\000\000\uFFFF\u9D90\000\005\000U\000h\000\u008E\000\u012D\000\u0188\000"+
        "\001\uFFFF\u9D90\000\003\000\001\uFFFF\uFFFF\000x\000\000\000\011\uFFFF"+
        "\uFFFF\000\001\000x\000\000\000<\000\011\000E\000G\000N\000V\000Y\000"+
        "m\000{\000\u00AB\000\u0184\000\000\uFFFF\uABA0\000\005\000x\000\u0096"+
        "\000\u00A1\000\u012C\000\u0194\000\001\uFFFF\uABA0\000\003\000\001\uFFFF"+
        "\uFFFF\000x\000\000\000\011\uFFFF\uFFFF\000\001\000x\000\000\000<\000"+
        "\012\000H\000M\000}\000~\000\u007F\000\u0081\000\u008A\000\u0093\000\u0094"+
        "\000\u011D\000\001\uFFFF\uABA0\000\003\000\001\uFFFF\uFFFF\000x\000\000"+
        "\000\011\uFFFF\uFFFF\000\001\000x\000\001\000<\000\001\000\u00A9\000\001"+
        "\uFFFF\uABA0\000\013\000\022\000\000\000\000\000\000\000\001\000\014\000"+
        "\000\000\000\000\000\000<\000\001\000B\000\001\uFFFF\uABA0\000\000\000"+
        "\017\uFFFF\uFFF9\000\000\000\000\000\002\000\017\000\000\000\000\000\000"+
        "\000<\000\001\000P\000\001\uFFFF\uABA0\000\002\000\027\000\000\000\000"+
        "\000\000\000\010\000\007\000\000\000\000\000\000\000<\000\001\000c\000"+
        "\001\uFFFF\uABA0\000\004\000\001\uFFFF\uFFFF\000\000\000\000\000\010\uFFFF"+
        "\uFFFF\000\001\000\000\000\000\000<\000\002\000[\000\u00A2\000\001\uFFFF"+
        "\uABA0\000\011\000\011\uFFFF\uFFFF\000\u00F0\000\002\000\002\000\011\uFFFF"+
        "\uFFFF\000\u00B4\000\002\000<\000\001\000\u018E\000\000\uFFFF\uB9B0\000"+
        "\014\000L\000Z\000d\000i\000j\000k\000l\000o\000\u008B\000\u0097\000\u012B"+
        "\000\u0174\000\001\uFFFF\uB9B0\000\003\000\001\uFFFF\uFFFF\000\000\000"+
        "\000\000\011\uFFFF\uFFFF\000\001\000\000\000\000\000<\000\001\000`\000"+
        "\001\uFFFF\uB9B0\000\003\000\001\uFFFF\uFFFF\000\000\000\001\000\011\uFFFF"+
        "\uFFFF\000\001\000\000\000\001\000<\000\001\000g\000\001\uFFFF\uB9B0\000"+
        "\003\000\001\uFFFF\uFFFF\000<\000\001\000\011\uFFFF\uFFFF\000\001\000"+
        "<\000\001\000<\000\001\000\u008F\000\001\uFFFF\uB9B0\000\003\000\001\uFFFF"+
        "\uFFFF\000x\000\000\000\011\uFFFF\uFFFF\000\001\000x\000\000\000<\000"+
        "\013\000W\000n\000r\000v\000\u0083\000\u0085\000\u0086\000\u0087\000\u008C"+
        "\000\u00A4\000\u0122\000\001\uFFFF\uB9B0\000\000\000\001\000\000\000\000"+
        "\000\000\000\003\000\001\000\000\000\000\000\000\000<\000\001\000t\000"+
        "\001\uFFFF\uB9B0\000\004\000\002\000\000\000\000\000\000\000\013\000\037"+
        "\000\000\000\000\000\000\000<\000\001\000D\000\000\uFFFF\uC7C0\000\031"+
        "\000;\000<\000>\000C\000I\000R\000X\000a\000b\000e\000s\000y\000z\000"+
        "\u0084\000\u0090\000\u0091\000\u0092\000\u0099\000\u009D\000\u009E\000"+
        "\u009F\000\u00A0\000\u00A6\000\u012A\000\u0189\000\001\uFFFF\uC7C0\000"+
        "\003\000\001\uFFFF\uFFFF\000\001\000\000\000\011\uFFFF\uFFFF\000\001\000"+
        "\001\000\000\000<\000\001\000_\000\001\uFFFF\uC7C0\000\003\000\001\uFFFF"+
        "\uFFFF\000x\000\000\000\011\uFFFF\uFFFF\000\001\000x\000\000\000<\000"+
        "\004\000]\000f\000\u00A3\000\u0104\000\001\uFFFF\uC7C0\000\003\000\017"+
        "\uFFFF\uFFFF\000x\000\000\000\010\000\031\000\000\000x\000\000\000<\000"+
        "\001\000@\000\001\uFFFF\uC7C0\000\011\000\010\uFFFF\uFFFF\000\000\000"+
        "\000\000\001\000\017\uFFFF\uFFFF\000\000\000\000\000<\000\001\000Q\000"+
        "\001\uFFFF\uC7C0\000\011\000\011\uFFFF\uFFFF\000\000\000\000\000\002\000"+
        "\011\uFFFF\uFFFF\000\000\000\000\000<\000\001\000\u00B1\000\001\uFFFF"+
        "\uC7C0\000\011\000\011\uFFFF\uFFFF\000\u00F0\000\002\000\002\000\011\uFFFF"+
        "\uFFFF\000\u00B4\000\002\000<\000\001\000\u0098\000\001\uFFFF\uC7C0\000"+
        "\010\000\001\uFFFF\uFFFF\000\000\000\000\000\003\000\001\uFFFF\uFFFF\000"+
        "\000\000\000\000<\000\001\000?\000\001\uFFFF\uC7C0\000\010\000\001\uFFFF"+
        "\uFFFF\000x\000\000\000\003\000\017\uFFFF\uFFFF\000x\000\000\000<\000"+
        "\001\000\u010D\000\001\uFFFF\uCEC8\000\003\000\001\uFFFF\uFFFF\000\001"+
        "\000\000\000\011\uFFFF\uFFFF\000\001\000\001\000\000\000<\000\002\000"+
        "\u009C\000\u011C\000\000\uFFFF\uD5D0\000\015\000\002\000A\000F\000J\000"+
        "K\000O\000\134\000p\000w\000|\000\u008D\000\u0095\000\u0129\000\001\uFFFF"+
        "\uD5D0\000\003\000\001\uFFFF\uFFFF\000x\000\000\000\011\uFFFF\uFFFF\000"+
        "\001\000x\000\000\000<\000\001\000\u0080\000\001\uFFFF\uD5D0\000\002\uFFFF"+
        "\uFFFF\000\001\000<\000\002\000\011\uFFFF\uFFFF\000\001\000<\000\002\000"+
        "<\000\001\000^\000\001\uFFFF\uD5D0\000\011\000\022\000\000\000\000\000"+
        "\000\000\001\000\034\000\000\000\000\000\000\000<\000\001\000\u0082\000"+
        "\001\uFFFF\uD5D0\000\011\000\010\uFFFF\uFFFF\000\000\000\000\000\001\000"+
        "\017\uFFFF\uFFFF\000\000\000\000\000<\000\003\000=\000\u009A\000\u0118"+
        "\000\000\uFFFF\uE3E0\000\003\000\u0089\000\u010B\000\u0128\000\000\uFFFF"+
        "\uF1F0\000\002\000\u0106\000\u0124\000\001\uFFFF\uF1F0\000\002\uFFFF\uFFFF"+
        "\000\001\000<\000\002\000\011\uFFFF\uFFFF\000\001\000<\000\002\000<\000"+
        "\002\000\u009B\000\u0103\000\000\000\000\000\026\000\005\000\012\000\014"+
        "\000\015\000\022\000\024\000\025\000\031\000$\000-\0001\0002\0004\000"+
        "5\000S\000\u010A\000\u010C\000\u0123\000\u013E\000\u013F\000\u0172\000"+
        "\u01B3\000\001\000\000\000\005\000\001\000\000\000\000\000\000\000\010"+
        "\000\001\000\000\000\000\000\000\000<\000\001\000\032\000\001\000\000"+
        "\000\002\uFFFF\uFFFF\000\001\000<\000\002\000\011\uFFFF\uFFFF\000\001"+
        "\000<\000\002\000<\000\010\000\u0105\000\u0107\000\u0109\000\u0143\000"+
        "\u014C\000\u0152\000\u0154\000\u01B5\000\001\000\000\000\010\000\001\000"+
        "\000\000\000\000\000\000\013\000\037\000\000\000\000\000\000\000\024\000"+
        "\001\000\006\000\000\000\u0E10\000\015\000\010\000\013\000\017\000\030"+
        "\000!\000\042\000#\000%\000(\000/\0000\0003\000\u0130\000\001\000\u0E10"+
        "\000\002\uFFFF\uFFFF\000\001\000<\000\002\000\011\uFFFF\uFFFF\000\001"+
        "\000<\000\002\000<\000!\000\023\000\u00B4\000\u0108\000\u0120\000\u0140"+
        "\000\u0141\000\u0144\000\u0145\000\u0146\000\u0147\000\u0149\000\u014B"+
        "\000\u014D\000\u0153\000\u0155\000\u0156\000\u0157\000\u0159\000\u015B"+
        "\000\u015C\000\u015D\000\u015F\000\u0161\000\u0162\000\u0164\000\u0166"+
        "\000\u0168\000\u016A\000\u016B\000\u016C\000\u016E\000\u016F\000\u0171"+
        "\000\001\000\u0E10\000\002\uFFFF\uFFFF\000\001\000x\000\001\000\011\uFFFF"+
        "\uFFFF\000\001\000x\000\001\000<\000\002\000\u011B\000\u0182\000\001\000"+
        "\u0E10\000\004\000\001\000\000\000\000\000\001\000\010\uFFFF\uFFFF\000"+
        "\001\000\000\000\001\000<\000\001\0007\000\001\000\u0E10\000\010\000\001"+
        "\uFFFF\uFFFF\000x\000\000\000\003\000\001\uFFFF\uFFFF\000x\000\000\000"+
        "<\000\001\0008\000\000\000\u1C20\000\016\000\016\000\020\000\033\000\034"+
        "\000 \000&\000'\000)\000*\000+\0006\000\u011A\000\u0136\000\u016D\000"+
        "\001\000\u1C20\000\003\000\001\000\000\000\000\000\000\000\011\000\001"+
        "\000\000\000\000\000\000\000<\000\001\000\u00C7\000\001\000\u1C20\000"+
        "\003\000\001\000\000\000<\000\000\000\011\000\007\000\000\000<\000\000"+
        "\000<\000\001\000\u00D3\000\001\000\u1C20\000\003\000\017\uFFFF\uFFFA"+
        "\000\000\000\000\000\011\000\017\uFFFF\uFFFA\000\000\000\000\000<\000"+
        "\001\000\u00CC\000\001\000\u1C20\000\003\uFFFF\uFFFF\000\006\000\000\000"+
        "\001\000\010\uFFFF\uFFFF\000\005\000\u0564\000\001\000<\000\002\000\003"+
        "\000\021\000\001\000\u1C20\000\002\uFFFF\uFFFF\000\001\000\000\000\000"+
        "\000\011\uFFFF\uFFFF\000\001\000\000\000\000\000<\000\001\000\u00C0\000"+
        "\001\000\u1C20\000\002\uFFFF\uFFFF\000\001\000<\000\002\000\011\uFFFF"+
        "\uFFFF\000\001\000<\000\002\000<\000\016\000\u00E2\000\u0121\000\u0142"+
        "\000\u0148\000\u014A\000\u014E\000\u014F\000\u0151\000\u015E\000\u0163"+
        "\000\u0165\000\u0167\000\u0169\000\u0170\000\001\000\u1C20\000\002\uFFFF"+
        "\uFFFF\000\001\000x\000\001\000\011\uFFFF\uFFFF\000\001\000x\000\001\000"+
        "<\000\002\000\u0150\000\u0158\000\001\000\u1C20\000\002\uFFFF\uFFFF\000"+
        "\005\000\000\000\001\000\010\uFFFF\uFFFF\000\005\000\000\000\001\000<"+
        "\000\001\000\u00B7\000\001\000\u1C20\000\010\000\017\uFFFF\uFFFF\000x"+
        "\000\000\000\002\000\017\uFFFF\uFFFF\000x\000\000\000<\000\001\000\035"+
        "\000\000\000\u2A30\000\023\000\007\000\011\000\026\000\027\000\036\000"+
        "\037\000,\000.\000\u00B2\000\u00B5\000\u00BD\000\u00DC\000\u00E9\000\u00EC"+
        "\000\u011F\000\u0137\000\u0176\000\u017A\000\u017F\000\001\000\u2A30\000"+
        "\003\000\001\000\000\000\u00B4\000\001\000\011\000\001\000\000\000\u00B4"+
        "\000\001\000<\000\001\000\u00BC\000\001\000\u2A30\000\002\uFFFF\uFFFF"+
        "\000\001\000x\000\001\000\011\uFFFF\uFFFF\000\001\000x\000\001\000<\000"+
        "\001\000\u015A\000\000\000\u2BD8\000\003\000\u00ED\000\u00EE\000\u00EF"+
        "\000\001\000\u3138\000\002\000\024\000\000\000\000\000\000\000\010\000"+
        "\027\000\000\000\000\000\000\000<\000\001\000\u00F9\000\000\000\u3840"+
        "\000\006\000\u00CA\000\u00E1\000\u0138\000\u017C\000\u017E\000\u0180\000"+
        "\001\000\u3840\000\002\uFFFF\uFFFF\000\001\000\000\000\000\000\011\uFFFF"+
        "\uFFFF\000\001\000\000\000\000\000<\000\001\000\u00F8\000\001\000\u3840"+
        "\000\002\uFFFF\uFFFF\000\001\000<\000\000\000\011\uFFFF\uFFFF\000\001"+
        "\000<\000\000\000<\000\001\000\u00BE\000\001\000\u3840\000\002\uFFFF\uFFFF"+
        "\000\001\000x\000\001\000\011\uFFFF\uFFFF\000\001\000x\000\001\000<\000"+
        "\005\000\u00B9\000\u00E5\000\u0102\000\u0160\000\u0185\000\000\000\u3F48"+
        "\000\001\000\u00D4\000\000\000\u4650\000\007\000\u00BB\000\u00CB\000\u00F2"+
        "\000\u00F7\000\u0139\000\u017B\000\u017D\000\001\000\u4650\000\003\000"+
        "\002\uFFFF\uFFFF\000\000\000\000\000\011\000\017\000\000\000\000\000\000"+
        "\000<\000\002\000\u00D6\000\u0187\000\001\000\u4650\000\002\uFFFF\uFFFF"+
        "\000\001\000x\000\001\000\011\uFFFF\uFFFF\000\001\000x\000\001\000<\000"+
        "\002\000\u00BA\000\u0101\000\001\000\u4650\000\002\uFFFF\uFFFF\000\001"+
        "\000\u0096\000\000\000\011\uFFFF\uFFFF\000\001\000\u0096\000\000\000<"+
        "\000\001\000\u00C1\000\000\000\u4D58\000\002\000\u00C3\000\u0175\000\000"+
        "\000\u50DC\000\001\000\u00D8\000\000\000\u5460\000\010\000\u00AF\000\u00B3"+
        "\000\u00C6\000\u00C8\000\u00FA\000\u0119\000\u013A\000\u0177\000\001\000"+
        "\u5460\000\002\uFFFF\uFFFF\000\001\000x\000\001\000\011\uFFFF\uFFFF\000"+
        "\001\000x\000\001\000<\000\004\000\u00B6\000\u00E3\000\u00E4\000\u00EA"+
        "\000\000\000\u5B68\000\002\000\u00EB\000\u0179\000\000\000\u6270\000\012"+
        "\000\u00AD\000\u00BF\000\u00D1\000\u00E6\000\u00E7\000\u00F0\000\u00FE"+
        "\000\u013B\000\u0178\000\u01B4\000\001\000\u6270\000\003\000\033\000\000"+
        "\000x\000\001\000\010\000\034\000\000\000x\000\001\000<\000\001\000\u00CF"+
        "\000\001\000\u6270\000\002\uFFFF\uFFFF\000\001\000x\000\001\000\011\uFFFF"+
        "\uFFFF\000\001\000x\000\001\000<\000\001\000\u00D9\000\000\000\u7080\000"+
        "\010\000\u00AC\000\u00C2\000\u00DA\000\u00DB\000\u00DF\000\u00F5\000\u0116"+
        "\000\u013C\000\001\000\u7080\000\003\000\033\000\000\000x\000\001\000"+
        "\010\000\034\000\000\000x\000\001\000<\000\001\000\u00FC\000\001\000\u7080"+
        "\000\003\000\012\uFFFF\uFFFF\000\000\000\000\000\010\000\013\uFFFF\uFFFF"+
        "\000\000\000\000\000<\000\007\000\u00C5\000\u00CD\000\u00D7\000\u00DD"+
        "\000\u00F4\000\u00FD\000\u011E\000\001\000\u7080\000\005\000\036\000\000"+
        "\000\000\000\000\000\010\000\036\000\000\000\000\000\000\000<\000\001"+
        "\000\u00F6\000\001\000\u7080\000\002\000\026\000\000\000\000\000\000\000"+
        "\010\000\025\000\000\000\000\000\000\000<\000\001\000\u00E0\000\001\000"+
        "\u7080\000\002\uFFFF\uFFFF\000\001\000x\000\001\000\011\uFFFF\uFFFF\000"+
        "\001\000x\000\001\000<\000\001\000\u00D0\000\001\000\u7080\000\004\000"+
        "\010\uFFFF\uFFFF\000\u00D2\000\000\000\011\000\020\uFFFF\uFFFF\000\u00D2"+
        "\000\000\000<\000\001\000\u00CE\000\000\000\u7E90\000\007\000\u00C9\000"+
        "\u00D2\000\u00E8\000\u00FB\000\u013D\000\u0181\000\u01A5\000\001\000\u7E90"+
        "\000\003\000\033\000\000\000x\000\001\000\010\000\034\000\000\000x\000"+
        "\001\000<\000\001\000\u00C4\000\001\000\u7E90\000\002\uFFFF\uFFFF\000"+
        "\001\000x\000\001\000\011\uFFFF\uFFFF\000\001\000x\000\001\000<\000\001"+
        "\000\u0100\000\001\000\u7E90\000\004\uFFFF\uFFF2\uFFFF\uFFFF\000\000\000"+
        "\000\000\011\uFFFF\uFFF2\uFFFF\uFFFF\000\000\000\000\000<\000\001\000"+
        "\u00F3\000\001\000\u8598\000\011\000\003\000\000\000x\000\000\000\002"+
        "\uFFFF\uFFFF\000\001\000x\000\000\000<\000\002\000\000\000\u0111\000\001"+
        "\000\u8598\000\011\uFFFF\uFFFF\000\001\000x\000\001\000\002\uFFFF\uFFFF"+
        "\000\001\000x\000\001\000<\000\002\000\u010E\000\u0110\000\000\000\u8CA0"+
        "\000\007\000\u00AE\000\u0131\000\u0197\000\u01A8\000\u01AA\000\u01AE\000"+
        "\u01B1\000\001\000\u8CA0\000\002\uFFFF\uFFFF\000\001\000x\000\001\000"+
        "\011\uFFFF\uFFFF\000\001\000x\000\001\000<\000\002\000\u00F1\000\u00FF"+
        "\000\001\000\u8CA0\000\011\uFFFF\uFFFF\000\001\000x\000\001\000\002\uFFFF"+
        "\uFFFF\000\001\000x\000\001\000<\000\003\000\001\000\u0115\000\u0117\000"+
        "\001\000\u8CA0\000\011\uFFFF\uFFFF\000\001\000x\000\001\000\002\000\001"+
        "\uFFFF\uFFFF\000x\000\001\000<\000\002\000\u010F\000\u0113\000\001\000"+
        "\u8CA0\000\011\000\001\uFFFF\uFFFF\000x\000\001\000\002\uFFFF\uFFFF\000"+
        "\001\000x\000\001\000<\000\001\000\u0112\000\001\000\u93A8\000\011\uFFFF"+
        "\uFFFF\000\001\000x\000\000\000\002\uFFFF\uFFFF\000\001\000x\000\000\000"+
        "\036\000\001\000\u0114\000\000\000\u9AB0\000\005\000\u0132\000\u0196\000"+
        "\u019B\000\u01A7\000\u01B2\000\001\000\u9AB0\000\013\000\001\000\000\000"+
        "x\000\001\000\002\000\002\000\000\000x\000\001\000<\000\001\000\u01A3"+
        "\000\001\000\u9AB0\000\002\uFFFF\uFFFF\000\001\000x\000\001\000\011\uFFFF"+
        "\uFFFF\000\001\000x\000\001\000<\000\001\000\u00DE\000\001\000\u9AB0\000"+
        "\011\000\027\uFFFF\uFFFF\000\000\000\000\000\000\000\027\uFFFF\uFFFF\000"+
        "\000\000\000\000<\000\001\000\u018F\000\000\000\uA1B8\000\001\000\u01A2"+
        "\000\000\000\uA8C0\000\010\000\u0133\000\u0193\000\u019C\000\u019D\000"+
        "\u01A0\000\u01AC\000\u01AF\000\u01B0\000\001\000\uA8C0\000\002\uFFFF\uFFFF"+
        "\000\001\000x\000\001\000\011\uFFFF\uFFFF\000\001\000x\000\001\000<\000"+
        "\002\000\u00B8\000\u00D5\000\001\000\uA8C0\000\012\000\001\uFFFF\uFFFF"+
        "\000x\000\000\000\001\uFFFF\uFFFF\000\001\000\u00B4\000\000\000<\000\001"+
        "\000\u0192\000\001\000\uA8C0\000\011\000\001\uFFFF\uFFFF\000x\000\001"+
        "\000\002\000\017\uFFFF\uFFFF\000x\000\001\000<\000\003\000\u00B0\000\u0186"+
        "\000\u018C\000\001\000\uB34C\000\011\000\001\uFFFF\uFFFF\000\u00A5\000"+
        "\001\000\002\000\017\uFFFF\uFFFF\000\u00A5\000\001\000<\000\001\000\u018D"+
        "\000\000\000\uB6D0\000\002\000\u0134\000\u0190\000\001\000\uB6D0\000\012"+
        "\000\001\uFFFF\uFFFF\000x\000\000\000\000\uFFFF\uFFFF\000\001\000x\000"+
        "\000\000<\000\001\000\u01AD\000\000\000\uC4E0\000\002\000\u0135\000\u019A"
        ;

    /**
     * RLE encoded form of INDEX_BY_NAME_ARRAY.
     * @see com.ibm.util.Utility.RLEStringToIntArray
     * >> GENERATED DATA: DO NOT EDIT <<
     */
    static final String INDEX_BY_NAME_ARRAY_RLE =
        "\000\u01B6\000\u059F\000\u05D9\000\u021D\000\u037E\000=\000\u0286\000"+
        "\u02C4\000\u03E7\000\u02D3\000\u03E7\000\u0286\000\u02D3\000\u0286\000"+
        "\u0286\000\u0340\000\u02D3\000\u0340\000\u037E\000\u0286\000\u02E3\000"+
        "\u0286\000\u0286\000\u03E7\000\u03E7\000\u02D3\000\u0286\000\u029F\000"+
        "\u0340\000\u0340\000\u03D8\000\u03E7\000\u03E7\000\u0340\000\u02D3\000"+
        "\u02D3\000\u02D3\000\u0286\000\u02D3\000\u0340\000\u0340\000\u02D3\000"+
        "\u0340\000\u0340\000\u0340\000\u03E7\000\u0286\000\u03E7\000\u02D3\000"+
        "\u02D3\000\u0286\000\u0286\000\u02D3\000\u0286\000\u0286\000\u0340\000"+
        "\u0322\000\u0331\000\026\000=\000\u0176\000\u0176\000\u025A\000\u0176"+
        "\000\u01EF\000\u01B3\000\u021D\000\u00B7\000\u0176\000\u0167\000q\000"+
        "\u021D\000q\000\u0090\000\u0176\000\u021D\000\u021D\000\u0103\000\u0090"+
        "\000q\000\u021D\000\u00C6\000\u01C2\000\u0176\000\u0286\000U\000i\000"+
        "q\000\u013F\000\u0176\000q\000\u0103\000\u00E4\000\u021D\000\u01A1\000"+
        "\u023C\000\u0192\000\u0112\000\u0176\000\u0176\000\u00D5\000\u0103\000"+
        "\u0176\000\u01A1\000\u0121\000i\000\uA5A5\000\004\000\u0103\000q\000\u013F"+
        "\000\u0103\000\u021D\000=\000\u013F\000\u0176\000\u0158\000U\000\u013F"+
        "\000\u021D\000\u0088\000\u0176\000\u0176\000q\000\u021D\000\u0090\000"+
        "\u0090\000\u0090\000\u022D\000\u0090\000\u024B\000\u013F\000\u0176\000"+
        "\u013F\000\u013F\000\u013F\000=\000\u026B\000\u0090\000\u0103\000\u013F"+
        "\000\u021D\000i\000\u0130\000\u0176\000\u0176\000\u0176\000\u0090\000"+
        "\u0090\000\u021D\000\u0088\000\u0103\000\u01E0\000\u0176\000\u025A\000"+
        "\u0276\000\u020D\000\uA5A5\000\004\000\u0176\000\u0088\000\u00E4\000\u01A1"+
        "\000\u013F\000U\000\u0176\000U\000U\000\u00A8\000=\000q\000\u04FD\000"+
        "\u04D2\000\u05BF\000\u04B0\000\u067B\000\u01D1\000\u03E7\000\u04B0\000"+
        "\u02E3\000\u03E7\000\u04BB\000\u03C9\000\u065C\000\u0457\000\u0488\000"+
        "\u046E\000\u03FD\000\u03E7\000\u0448\000\u04D2\000\u038E\000\u0498\000"+
        "\u04FD\000\u04A7\000\u0572\000\u0517\000\u04B0\000\u0351\000\u04B0\000"+
        "\u0568\000\u0430\000\u046E\000\u036F\000\u0517\000\u0559\000\u04DF\000"+
        "\u054A\000\u04D2\000\u0568\000\u0360\000\u046A\000\u065C\000\u0478\000"+
        "\u0517\000\u04AC\000\u04EE\000\u04FD\000\u04FD\000\u03E7\000\u0517\000"+
        "\u062F\000\u04FD\000\u053B\000\u0430\000\u039D\000\u04BB\000\u04BB\000"+
        "\u0457\000\u04D2\000\u04D2\000\u0568\000\u03E7\000\u04BB\000\u04CD\000"+
        "\u03E7\000\u041B\000\u041B\000\u041B\000\u04D2\000\u05C9\000\u046E\000"+
        "\u0590\000\u0517\000\u04FD\000\u052C\000\u046E\000\u0439\000\u0421\000"+
        "\u04B0\000\u0568\000\u0508\000\u0517\000\u04D2\000\u05C9\000\u0581\000"+
        "\u0488\000\u0457\000\u0276\000\u01A1\000\u02AE\000\u0271\000\u02AE\000"+
        "\u02E3\000\u02AE\000\u0286\000\u026B\000\u0286\000\u01FE\000\u05AF\000"+
        "\u05EA\000\u05AF\000\u059F\000\u05FA\000\u05EA\000\u0609\000\u05D9\000"+
        "\u04FD\000\u05D9\000\u025A\000\u04B0\000\u0340\000\u0312\000\u020D\000"+
        "\u0090\000\u0517\000\u03E7\000\u02E3\000\u039D\000\u013F\000\u0286\000"+
        "\u0271\000\015\000\004\000\000\000\u026B\000\u021D\000\u0176\000\u0103"+
        "\000\u0088\000i\000P\0008\000\u02D3\000\u05BF\000\u0618\000\u0651\000"+
        "\u069B\000\u06AF\000\u0340\000\u03E7\000\u0430\000\u046E\000\u04B0\000"+
        "\u04D2\000\u04FD\000\u0568\000\u0286\000\u0286\000\u02E3\000\u02E3\000"+
        "\u039D\000\u02AE\000\uA5A5\000\004\000\u02E3\000\u039D\000\u02E3\000\u039D"+
        "\000\u02E3\000\u02AE\000\u02E3\000\u039D\000\u039D\000\u03B9\000\u039D"+
        "\000\u02AE\000\u02E3\000\u02AE\000\u02E3\000\u02E3\000\u02E3\000\u03B9"+
        "\000\u02E3\000\u040C\000\u02E3\000\u02E3\000\u02E3\000\u039D\000\u02E3"+
        "\000\u0457\000\u02E3\000\u02E3\000\u039D\000\u02E3\000\u039D\000\u02E3"+
        "\000\u039D\000\u02E3\000\u039D\000\u02E3\000\u02E3\000\u02E3\000\u0340"+
        "\000\u02E3\000\u02E3\000\u039D\000\u02E3\000\u0286\000\015\000\u0103\000"+
        "\u04A7\000\u03E7\000\u04B0\000\u04D2\000\u04CD\000\u03E7\000\u046E\000"+
        "\u0430\000\u046E\000\u0430\000\u03E7\000\u0430\000\u0568\000\u0312\000"+
        "\004\000q\000\u0457\000\u067B\000\u0478\000i\000\u0176\000U\000\004\000"+
        "\u067B\000\u068C\000\u00F4\000\u063E\000\u069B\000\015\000\u066C\000\u0651"+
        "\000\u0088\0008\000\u0618\000\u05BF\000\015\000\015\000\u06AF\000\u0618"+
        "\000\u0651\000\u0651\0004\000\004\000\u0651\000\004\000\u064D\000\u0620"+
        "\000\004\000\u0568\000P\000\u0618\000\u05BF\000%\000\u05BF\000\015\000"+
        "\u0651\000\u06A0\000\u05BF\000\u0651\000\u0651\000\u05BF\000\u0618\000"+
        "\u0286\000\u04D2\000\u02AE"
        ;

    /**
     * RLE encoded form of INDEX_BY_OFFSET.
     * @see com.ibm.util.Utility.RLEStringToIntArray
     * >> GENERATED DATA: DO NOT EDIT <<
     */
    static final String INDEX_BY_OFFSET_RLE =
        "\000\u022B\uFFFF\u5740\000\u0127\000\001\000\u0127\uFFFF\u6550\000\u018B"+
        "\000\006\000\u0126\000\u0183\000\u018B\000\u019F\000\u01A1\000\u01A4\uFFFF"+
        "\u7360\000\u0198\000\010\0009\000\u0125\000\u0173\000\u0191\000\u0198"+
        "\000\u0199\000\u01A9\000\u01AB\uFFFF\u7A68\000\u019E\000\001\000\u019E"+
        "\uFFFF\u8170\000:\000\007\000\004\000:\000q\000\u0088\000\u00AA\000\u012F"+
        "\000\u0195\uFFFF\u8F80\000u\000\010\000T\000u\000\u00A5\000\u00A7\000"+
        "\u00A8\000\u012E\000\u018A\000\u01A6\uFFFF\u9D90\000V\000\016\000E\000"+
        "G\000N\000U\000V\000Y\000h\000m\000{\000\u008E\000\u00AB\000\u012D\000"+
        "\u0184\000\u0188\uFFFF\uABA0\000M\000\026\000B\000H\000M\000P\000[\000"+
        "c\000x\000}\000~\000\u007F\000\u0081\000\u008A\000\u0093\000\u0094\000"+
        "\u0096\000\u00A1\000\u00A2\000\u00A9\000\u011D\000\u012C\000\u018E\000"+
        "\u0194\uFFFF\uB9B0\000l\000\034\000D\000L\000W\000Z\000`\000d\000g\000"+
        "i\000j\000k\000l\000n\000o\000r\000t\000v\000\u0083\000\u0085\000\u0086"+
        "\000\u0087\000\u008B\000\u008C\000\u008F\000\u0097\000\u00A4\000\u0122"+
        "\000\u012B\000\u0174\uFFFF\uC7C0\000\u0092\000$\000;\000<\000>\000?\000"+
        "@\000C\000I\000Q\000R\000X\000]\000_\000a\000b\000e\000f\000s\000y\000"+
        "z\000\u0084\000\u0090\000\u0091\000\u0092\000\u0098\000\u0099\000\u009D"+
        "\000\u009E\000\u009F\000\u00A0\000\u00A3\000\u00A6\000\u00B1\000\u0104"+
        "\000\u010D\000\u012A\000\u0189\uFFFF\uCEC8\000\u009C\000\002\000\u009C"+
        "\000\u011C\uFFFF\uD5D0\000F\000\023\000\002\000=\000A\000F\000J\000K\000"+
        "O\000\134\000^\000p\000w\000|\000\u0080\000\u0082\000\u008D\000\u0095"+
        "\000\u009A\000\u0118\000\u0129\uFFFF\uE3E0\000\u0089\000\003\000\u0089"+
        "\000\u010B\000\u0128\uFFFF\uF1F0\000\u0103\000\004\000\u009B\000\u0103"+
        "\000\u0106\000\u0124\000\000\000\u0172\000 \000\005\000\006\000\012\000"+
        "\014\000\015\000\022\000\024\000\025\000\031\000\032\000$\000-\0001\000"+
        "2\0004\0005\000S\000\u0105\000\u0107\000\u0109\000\u010A\000\u010C\000"+
        "\u0123\000\u013E\000\u013F\000\u0143\000\u014C\000\u0152\000\u0154\000"+
        "\u0172\000\u01B3\000\u01B5\000\u0E10\000\u015C\0002\000\010\000\013\000"+
        "\017\000\023\000\030\000!\000\042\000#\000%\000(\000/\0000\0003\0007\000"+
        "8\000\u00B4\000\u0108\000\u011B\000\u0120\000\u0130\000\u0140\000\u0141"+
        "\000\u0144\000\u0145\000\u0146\000\u0147\000\u0149\000\u014B\000\u014D"+
        "\000\u0153\000\u0155\000\u0156\000\u0157\000\u0159\000\u015B\000\u015C"+
        "\000\u015D\000\u015F\000\u0161\000\u0162\000\u0164\000\u0166\000\u0168"+
        "\000\u016A\000\u016B\000\u016C\000\u016E\000\u016F\000\u0171\000\u0182"+
        "\000\u1C20\000\021\000&\000\003\000\016\000\020\000\021\000\033\000\034"+
        "\000\035\000 \000&\000'\000)\000*\000+\0006\000\u00B7\000\u00C0\000\u00C7"+
        "\000\u00CC\000\u00D3\000\u00E2\000\u011A\000\u0121\000\u0136\000\u0142"+
        "\000\u0148\000\u014A\000\u014E\000\u014F\000\u0150\000\u0151\000\u0158"+
        "\000\u015E\000\u0163\000\u0165\000\u0167\000\u0169\000\u016D\000\u0170"+
        "\000\u2A30\000\007\000\025\000\007\000\011\000\026\000\027\000\036\000"+
        "\037\000,\000.\000\u00B2\000\u00B5\000\u00BC\000\u00BD\000\u00DC\000\u00E9"+
        "\000\u00EC\000\u011F\000\u0137\000\u015A\000\u0176\000\u017A\000\u017F"+
        "\000\u2BD8\000\u00EF\000\003\000\u00ED\000\u00EE\000\u00EF\000\u3138\000"+
        "\u00F9\000\001\000\u00F9\000\u3840\000\u0102\000\015\000\u00B9\000\u00BE"+
        "\000\u00CA\000\u00E1\000\u00E5\000\u00F8\000\u0102\000\u0138\000\u0160"+
        "\000\u017C\000\u017E\000\u0180\000\u0185\000\u3F48\000\u00D4\000\001\000"+
        "\u00D4\000\u4650\000\u00D6\000\014\000\u00BA\000\u00BB\000\u00C1\000\u00CB"+
        "\000\u00D6\000\u00F2\000\u00F7\000\u0101\000\u0139\000\u017B\000\u017D"+
        "\000\u0187\000\u4D58\000\u00C3\000\002\000\u00C3\000\u0175\000\u50DC\000"+
        "\u00D8\000\001\000\u00D8\000\u5460\000\u00C8\000\014\000\u00AF\000\u00B3"+
        "\000\u00B6\000\u00C6\000\u00C8\000\u00E3\000\u00E4\000\u00EA\000\u00FA"+
        "\000\u0119\000\u013A\000\u0177\000\u5B68\000\u00EB\000\002\000\u00EB\000"+
        "\u0179\000\u6270\000\u00F0\000\014\000\u00AD\000\u00BF\000\u00CF\000\u00D1"+
        "\000\u00D9\000\u00E6\000\u00E7\000\u00F0\000\u00FE\000\u013B\000\u0178"+
        "\000\u01B4\000\u7080\000\u00F4\000\024\000\u00AC\000\u00C2\000\u00C5\000"+
        "\u00CD\000\u00CE\000\u00D0\000\u00D7\000\u00DA\000\u00DB\000\u00DD\000"+
        "\u00DF\000\u00E0\000\u00F4\000\u00F5\000\u00F6\000\u00FC\000\u00FD\000"+
        "\u0116\000\u011E\000\u013C\000\u7E90\000\u00FB\000\012\000\u00C4\000\u00C9"+
        "\000\u00D2\000\u00E8\000\u00F3\000\u00FB\000\u0100\000\u013D\000\u0181"+
        "\000\u01A5\000\u8598\000\u0111\000\004\000\000\000\u010E\000\u0110\000"+
        "\u0111\000\u8CA0\000\u0117\000\017\000\001\000\u00AE\000\u00F1\000\u00FF"+
        "\000\u010F\000\u0112\000\u0113\000\u0115\000\u0117\000\u0131\000\u0197"+
        "\000\u01A8\000\u01AA\000\u01AE\000\u01B1\000\u93A8\000\u0114\000\001\000"+
        "\u0114\000\u9AB0\000\u0196\000\010\000\u00DE\000\u0132\000\u018F\000\u0196"+
        "\000\u019B\000\u01A3\000\u01A7\000\u01B2\000\uA1B8\000\u01A2\000\001\000"+
        "\u01A2\000\uA8C0\000\u018C\000\016\000\u00B0\000\u00B8\000\u00D5\000\u0133"+
        "\000\u0186\000\u018C\000\u0192\000\u0193\000\u019C\000\u019D\000\u01A0"+
        "\000\u01AC\000\u01AF\000\u01B0\000\uB34C\000\u018D\000\001\000\u018D\000"+
        "\uB6D0\000\u0190\000\003\000\u0134\000\u0190\000\u01AD\000\uC4E0\000\u019A"+
        "\000\002\000\u0135\000\u019A"
        ;

    /**
     * RLE encoded form of INDEX_BY_COUNTRY.
     * @see com.ibm.util.Utility.RLEStringToIntArray
     * >> GENERATED DATA: DO NOT EDIT <<
     */
    static final String INDEX_BY_COUNTRY_RLE =
        "\000\u0392\000\000\000&\000\u00ED\000\u00EE\000\u00EF\000\u011B\000\u0121"+
        "\000\u0123\000\u0124\000\u0125\000\u0126\000\u0127\000\u0128\000\u0129"+
        "\000\u012A\000\u012B\000\u012C\000\u012D\000\u012E\000\u012F\000\u0130"+
        "\000\u0131\000\u0132\000\u0133\000\u0134\000\u0135\000\u0136\000\u0137"+
        "\000\u0138\000\u0139\000\u013A\000\u013B\000\u013C\000\u013D\000\u013E"+
        "\000\u013F\000\u0172\000\u0182\000\u01B3\000\u01B5\000\003\000\001\000"+
        "\u0141\000\004\000\001\000\u00CA\000\005\000\001\000\u00D4\000\006\000"+
        "\001\000<\000\010\000\001\000;\000\013\000\001\000\u0168\000\014\000\002"+
        "\000\u0102\000\u0185\000\015\000\001\000R\000\016\000\001\000%\000\020"+
        "\000\010\000\u00AC\000\u00AD\000\u00AE\000\u00AF\000\u00B0\000\u00B1\000"+
        "\u00B2\000\u00B3\000\021\000\006\000\002\000F\000J\000O\000p\000|\000"+
        "\022\000\001\000\u01A4\000\023\000\001\000\u016C\000\024\000\014\000\000"+
        "\000\001\000\u010E\000\u010F\000\u0110\000\u0111\000\u0112\000\u0113\000"+
        "\u0114\000\u0115\000\u0116\000\u0117\000\026\000\001\000>\000\031\000"+
        "\001\000\u00BE\000 \000\001\000\u0162\000!\000\001\000@\000#\000\002\000"+
        "\u00C8\000\u0119\000$\000\001\000\u0147\000%\000\001\0002\000&\000\001"+
        "\000\u0165\000'\000\001\000\u00BD\000(\000\001\000\020\000)\000\001\000"+
        "3\000,\000\001\000\u0104\000-\000\001\000\u00C2\000.\000\001\000s\000"+
        "1\000\016\000=\000A\000C\000Q\000Z\000\134\000w\000y\000\u0089\000\u0091"+
        "\000\u0095\000\u0097\000\u009A\000\u0118\0002\000\001\000\u0085\0003\000"+
        "\001\000\u00FA\0006\000\001\000\033\0008\000\001\000\u0158\0009\000\001"+
        "\000B\000@\000\027\000G\000T\000U\000Y\000]\000_\000f\000m\000n\000\u0083"+
        "\000\u0087\000\u008C\000\u0093\000\u0094\000\u0096\000\u009C\000\u00A1"+
        "\000\u00A4\000\u00A7\000\u00A8\000\u00A9\000\u00AB\000\u011C\000B\000"+
        "\001\000\u0179\000C\000\002\000!\000&\000E\000\001\000\013\000F\000\001"+
        "\000\017\000G\000\001\000\u0171\000H\000\001\000\005\000J\000\001\000"+
        "\u01A9\000K\000\002\000\u0098\000\u018E\000L\000\001\000\030\000M\000"+
        "\006\000\u00C5\000\u00CD\000\u00D7\000\u00F4\000\u00FD\000\u011E\000N"+
        "\000\001\000D\000Q\000\001\000P\000T\000\001\000g\000U\000\001\000\u0106"+
        "\000W\000\001\000\u0178\000X\000\001\000\u00E2\000Y\000\001\000\u015D"+
        "\000d\000\001\000\u0145\000i\000\001\000\027\000j\000\001\000\u014B\000"+
        "l\000\001\000X\000n\000\001\000\u0099\000y\000\001\000\010\000\u0082\000"+
        "\002\000d\000\u0194\000\u0084\000\001\000\u0167\000\u0086\000\002\000"+
        "\003\000\021\000\u0087\000\001\000\031\000\u0091\000\001\000\011\000\u0092"+
        "\000\003\000\023\000\u0105\000\u0156\000\u0093\000\002\000\007\000\u011F"+
        "\000\u00A8\000\001\000\u014E\000\u00A9\000\001\000\u0192\000\u00AA\000"+
        "\001\000\u010D\000\u00AC\000\004\000\u019B\000\u01A7\000\u01AE\000\u01B1"+
        "\000\u00AE\000\001\000\u0107\000\u00B1\000\002\000\u0120\000\u015C\000"+
        "\u00C0\000\001\000#\000\u00C1\000\002\000\u0143\000\u0154\000\u00C3\000"+
        "\001\000a\000\u00C4\000\001\000\u00F8\000\u00C5\000\001\000K\000\u00C7"+
        "\000\001\000\006\000\u00C8\000\001\000\u014D\000\u00CB\000\004\000S\000"+
        "^\000\u009B\000\u00A3\000\u00CC\000\001\000\014\000\u00CD\000\001\000"+
        "\024\000\u00CF\000\001\000b\000\u00D0\000\001\000(\000\u00D1\000\001\000"+
        "\u0142\000\u00D2\000\001\000\u010B\000\u00D3\000\001\000c\000\u00D4\000"+
        "\001\000\u0197\000\u00D6\000\001\000\015\000\u00D8\000\001\000e\000\u00EA"+
        "\000\001\000\u00CE\000\u00ED\000\001\000\u00A2\000\u00F1\000\001\000\u016F"+
        "\000\u00F3\000\001\000\u008F\000\u00F4\000\001\000\u0149\000\u0103\000"+
        "\004\000\u00D1\000\u00D2\000\u00DF\000\u00E7\000\u0104\000\001\000\u014C"+
        "\000\u010B\000\001\000\u00D3\000\u010D\000\002\000\u00C3\000\u0175\000"+
        "\u010E\000\001\000\u0177\000\u0110\000\001\000\u00BC\000\u0111\000\001"+
        "\000\u00F9\000\u0112\000\001\000\u010A\000\u0113\000\001\000\u015F\000"+
        "\u012C\000\001\000o\000\u012E\000\001\000\u00B7\000\u012F\000\002\000"+
        "\u00FB\000\u0181\000\u0144\000\001\000.\000\u0146\000\001\000\u00C1\000"+
        "\u0147\000\001\000\u00E6\000\u0148\000\003\000\u0190\000\u019A\000\u01AC"+
        "\000\u014C\000\001\000\u017A\000\u014D\000\001\000\u009D\000\u014F\000"+
        "\001\000\u00E8\000\u0151\000\001\000\u00F3\000\u0156\000\001\000\u00DC"+
        "\000\u0158\000\001\000L\000\u0159\000\005\000\u00B6\000\u00B9\000\u00BA"+
        "\000\u00E5\000\u00EA\000\u0160\000\001\000\u00FE\000\u0161\000\001\000"+
        "\u00C0\000\u0162\000\001\000\u009E\000\u0168\000\001\000\u016A\000\u016A"+
        "\000\001\000\u00C6\000\u0171\000\001\000-\000\u0172\000\001\000*\000\u0173"+
        "\000\001\000\u016D\000\u0174\000\001\000\u0155\000\u0175\000\001\000\u015E"+
        "\000\u0178\000\001\0006\000\u0180\000\001\000\022\000\u0182\000\001\000"+
        "\u0159\000\u0183\000\001\000\u014A\000\u0186\000\001\000\u0176\000\u0187"+
        "\000\002\000\u019C\000\u019D\000\u018A\000\001\000\u0164\000\u018B\000"+
        "\002\000\012\0005\000\u018C\000\001\000\u00EB\000\u018D\000\003\000\u00C4"+
        "\000\u00CF\000\u00FC\000\u018E\000\001\000\u00DD\000\u018F\000\001\000"+
        "\u01AA\000\u0190\000\001\000z\000\u0191\000\001\0001\000\u0192\000\001"+
        "\000\u0084\000\u0193\000\001\000\u0157\000\u0194\000\001\000\u017E\000"+
        "\u0195\000\001\000\u017D\000\u0196\000\001\000\016\000\u0197\000\010\000"+
        "H\000N\000h\000{\000~\000\u007F\000\u0081\000\u00A5\000\u0198\000\002"+
        "\000\u00DA\000\u00DB\000\u0199\000\001\000)\000\u01A0\000\001\0008\000"+
        "\u01A2\000\001\000\u01A3\000\u01A4\000\001\0000\000\u01A5\000\001\000"+
        "\u01A2\000\u01A6\000\001\000\042\000\u01A8\000\001\000x\000\u01AB\000"+
        "\001\000\u0140\000\u01AE\000\001\000\u015B\000\u01AF\000\001\000\u00D8"+
        "\000\u01B1\000\001\000\u01A0\000\u01B4\000\001\000\u01A1\000\u01B9\000"+
        "\003\000\u0186\000\u018C\000\u018D\000\u01CC\000\001\000\u00E1\000\u01E0"+
        "\000\001\000\u008B\000\u01E4\000\001\000t\000\u01E5\000\003\000\u0195"+
        "\000\u019E\000\u01AB\000\u01E6\000\001\000\u01A8\000\u01E7\000\001\000"+
        "\u00E0\000\u01EA\000\002\000\u00D6\000\u0187\000\u01EB\000\001\000\u016E"+
        "\000\u01EC\000\001\000\u0080\000\u01ED\000\001\000\u01A6\000\u01F1\000"+
        "\002\000\u0092\000\u0189\000\u01F2\000\001\000\u00CC\000\u01F3\000\003"+
        "\000\u0103\000\u0109\000\u0152\000\u01F6\000\001\000\u01A5\000\u01F8\000"+
        "\001\000?\000\u0200\000\001\000\u00E9\000\u0224\000\001\000\u0180\000"+
        "\u022E\000\001\000\u0148\000\u0234\000\016\000\u00B8\000\u00D0\000\u00D5"+
        "\000\u00D9\000\u00DE\000\u00E3\000\u00E4\000\u00F1\000\u00FF\000\u0100"+
        "\000\u0101\000\u0150\000\u015A\000\u0160\000\u0236\000\001\000 \000\u0240"+
        "\000\001\000\u00EC\000\u0241\000\002\000\u0196\000\u01B2\000\u0242\000"+
        "\001\000\u017C\000\u0243\000\001\000\037\000\u0244\000\001\000\u0166\000"+
        "\u0246\000\001\000\u00F5\000\u0247\000\001\000\u010C\000\u0248\000\001"+
        "\000\u0153\000\u0249\000\002\000\u00B4\000\u0108\000\u024A\000\001\000"+
        "\u0146\000\u024B\000\001\000\032\000\u024C\000\001\000\u0161\000\u024D"+
        "\000\001\000\025\000\u024E\000\001\000,\000\u0251\000\001\000\u008D\000"+
        "\u0253\000\001\0004\000\u0255\000\001\000[\000\u0258\000\001\000\u00C7"+
        "\000\u0259\000\001\000+\000\u0262\000\001\000`\000\u0263\000\001\000/"+
        "\000\u0265\000\001\000\u017B\000\u0266\000\001\000$\000\u0267\000\001"+
        "\000\u00BF\000\u0269\000\001\000\u00CB\000\u026A\000\001\000\u0191\000"+
        "\u026B\000\001\000\u00C9\000\u026C\000\001\000\u00BB\000\u026D\000\001"+
        "\0007\000\u026E\000\001\000\u01AD\000\u0271\000\001\000\u014F\000\u0273"+
        "\000\001\000\u0090\000\u0275\000\001\000\u0193\000\u0276\000\001\000\u00F6"+
        "\000\u0279\000\001\000\026\000\u0280\000\004\000\u0151\000\u0163\000\u0169"+
        "\000\u0170\000\u0286\000\001\000\036\000\u028C\000\003\000\u0199\000\u019F"+
        "\000\u01AF\000\u0292\000\035\000\004\0009\000:\000E\000M\000V\000W\000"+
        "i\000j\000k\000l\000q\000r\000u\000v\000}\000\u0086\000\u0088\000\u008A"+
        "\000\u008E\000\u00AA\000\u011D\000\u0122\000\u0173\000\u0174\000\u0184"+
        "\000\u0188\000\u018A\000\u0198\000\u0298\000\001\000\u0082\000\u0299\000"+
        "\002\000\u00F2\000\u00F7\000\u02A0\000\001\000\u016B\000\u02A2\000\001"+
        "\000\u00A0\000\u02A4\000\001\000I\000\u02A6\000\001\000\u00A6\000\u02A8"+
        "\000\001\000\u009F\000\u02AD\000\002\000\u00F0\000\u01B4\000\u02B4\000"+
        "\001\000\u018F\000\u02C5\000\001\000\u01B0\000\u02D2\000\002\000\u0183"+
        "\000\u018B\000\u0304\000\001\000\u00B5\000\u0313\000\001\000\u017F\000"+
        "\u0314\000\001\000\u0144\000\u0320\000\001\000\035\000\u032C\000\001\000"+
        "'\000\u0336\000\002\000\034\000\u011A"
        ;

    // END GENERATED SOURCE CODE
    //----------------------------------------------------------------

    static {
        // Unpack the int[] DATA array
        DATA = Utility.RLEStringToIntArray(DATA_RLE);

        // Unpack the int[] INDEX_BY_OFFSET array
        INDEX_BY_OFFSET = Utility.RLEStringToIntArray(INDEX_BY_OFFSET_RLE);

        // Unpack the int[] INDEX_BY_COUNTRY array
        INDEX_BY_COUNTRY = Utility.RLEStringToIntArray(INDEX_BY_COUNTRY_RLE);

        // Construct the index by name.  We unpack this array and then
        // discard it after we're done with it.
        int[] index_by_name_array = Utility.RLEStringToIntArray(INDEX_BY_NAME_ARRAY_RLE);
        for (int i=0; i<IDS.length; ++i) {
            INDEX_BY_NAME.put(IDS[i], new Integer(index_by_name_array[i]));
        }
    }
}
