convrtrs.txt   [plain text]


# ******************************************************************************
# *
# *   Copyright (C) 1995-2004, International Business Machines
# *   Corporation and others.  All Rights Reserved.
# *
# ******************************************************************************

# If this converter alias table looks very confusing, a much easier to
# understand view can be found at this demo:
# http://oss.software.ibm.com/cgi-bin/icu/convexp

# IMPORTANT NOTE
#
# This file is not read directly by ICU. If you change it, you need to
# run gencnval, and eventually run pkgdata to update the representation that
# ICU uses for aliases. The gencnval tool will normally compile this file into
# cnvalias.icu. The gencnval -v verbose option will help you when you edit
# this file.

# Please be friendly to the rest of us that edit this table by
# keeping this table free of tabs.

# This is an alias file used by the character set converter.
# A lot of converter information can be found in unicode/ucnv.h, but here
# is more information about this file.
#
# Here is the file format using BNF-like syntax:
#
# converterTable ::= tags { converterLine* }
# converterLine ::= converterName [ tags ] { taggedAlias* }'\n'
# taggedAlias ::= alias [ tags ]
# tags ::= '{' { tag+ } '}'
# tag ::= standard['*']
# converterName ::= [0-9a-zA-Z:_'-']+
# alias ::= converterName
#
# Except for the converter name, aliases are case insensitive.
# Names are separated by whitespace.
# Line continuation and comment sytax are similar to the GNU make syntax.
# Any lines beginning with whitespace (e.g. U+0020 SPACE or U+0009 HORIZONTAL
# TABULATION) are presumed to be a continuation of the previous line.
# The # symbol starts a comment and the comment continues till the end of
# the line.
#
# The converter
#
# All names can be tagged by including a space-separated list of tags in
# curly braces, as in ISO_8859-1:1987{IANA*} iso-8859-1 { MIME* } or
# some-charset{MIME* IANA*}. The order of tags does not matter, and
# whitespace is allowed between the tagged name and the tags list.
#
# The tags can be used to get standard names using ucnv_getStandardName().
#
# The complete list of recognized tags used in this file is defined in
# the affinity list near the beginning of the file.
#
# The * after the standard tag denotes that the previous alias is the
# preferred (default) charset name for that standard. There can only
# be one of these default charset names per converter.



# The world is getting more complicated...
# Supporting XML parsers, HTML, MIME, and similar applications
# that mark encodings with a charset name can be difficult.
# Many of these applications and operating systems will update
# their codepages over time.

# It means that a new codepage, one that differs from an
# old one by changing a code point, e.g., to the Euro sign,
# must not get an old alias, because it would mean that
# old files with this alias would be interpreted differently.

# If an codepage gets updated by assigning characters to previously
# unassigned code points, then a new name is not necessary.
# Also, some codepages map unassigned codepage byte values
# to the same numbers in Unicode for roundtripping. It may be
# industry practice to keep the encoding name in such a case, too
# (example: Windows codepages).

# The aliases listed in the list of character sets
# that is maintained by the IANA (http://www.iana.org/) must
# not be changed to mean encodings different from what this
# list shows. Currently, the IANA list is at
# http://www.iana.org/assignments/character-sets
# It should also be mentioned that the exact mapping table used for each
# IANA names usually isn't specified. This means that some other applications
# and operating systems are left to interpret the exact mappings for the
# underspecified aliases. For instance, Shift-JIS on a Solaris platform
# may be different from Shift-JIS on a Windows platform. This is why
# some of the aliases can be tagged to differentiate different mapping
# tables with the same alias. If an alias is given to more than one converter,
# it is considered to be an ambiguous alias, and the affinity list will
# choose the converter to use when a standard isn't specified with the alias.

# Name matching is case-insensitive. Also, dashes '-', underscores '_'
# and spaces ' ' are ignored in names (thus cs-iso_latin-1, csisolatin1
# and "cs iso latin 1" are the same).
# However, the names in the left column are directly file names
# or names of algorithmic converters, and their case must not
# be changed - or else code and/or file names must also be changed.
# For example, the converter ibm-921 is expected to be the file ibm-921.cnv.



# The immediately following list is the affinity list of supported standard tags.
# When multiple converters have the same alias under different standards,
# the standard nearest to the top of this list with that alias will
# be the first converter that will be opened. The ordering of the aliases
# after this affinity list does not affect the preferred alias, but it may
# affect the order of the returned list of aliases for a given converter.
#
# The general ordering is from specific and frequently used to more general
# or rarely used at the bottom.
{   UTR22           # Name format specified by http://www.unicode.org/unicode/reports/tr22/
    # ICU             # Can also use ICU_FEATURE
    IBM             # The IBM CCSID number is specified by ibm-*
    WINDOWS         # The Microsoft code page identifier number is specified by windows-*. The rest are recognized IE names.
    JAVA            # Source: Sun JDK. Alias name case is ignored, but dashes are not ignored.
    # GLIBC
    # AIX
    # DB2
    # SOLARIS
    # APPLE
    # HPUX
    IANA            # Source: http://www.iana.org/assignments/character-sets
    MIME            # Source: http://www.iana.org/assignments/character-sets
    # MSIE            # MSIE is Internet Explorer, which can be different from Windows (From the IMultiLanguage COM interface)
    # ZOS_USS         # z/OS (os/390) Unix System Services (USS), which has NL<->LF swapping. They have the same format as the IBM tag.
    }



# Fully algorithmic converters

UTF-8 { IANA* MIME* JAVA* WINDOWS }
                                ibm-1208 { IBM* }
                                ibm-1209 { IBM }
                                ibm-5304 { IBM }
                                ibm-5305 { IBM }
                                windows-65001 { WINDOWS* }
                                cp1208

# The ICU 2.2 UTF-16/32 converters detect and write a BOM.
UTF-16 { IANA* MIME* JAVA* }    ISO-10646-UCS-2 { IANA } unicode csUnicode ucs-2
UTF-16BE { IANA* MIME* JAVA* }  x-utf-16be { JAVA }
                                # iso-10646-ucs-2 { JAVA } # This is ambiguous
                                ibm-1200 { IBM* }
                                ibm-1201 { IBM }
                                ibm-5297 { IBM }
                                ibm-13488 { IBM }
                                ibm-17584 { IBM }
                                windows-1201 { WINDOWS* }
                                cp1200
                                cp1201
                                UTF16_BigEndian
UTF-16LE { IANA* MIME* JAVA* }  x-utf-16le { JAVA }
                                ibm-1202 { IBM* }
                                ibm-13490 { IBM }
                                ibm-17586 { IBM }
                                UTF16_LittleEndian
                                windows-1200 { WINDOWS* }

UTF-32 { IANA* MIME* }          ISO-10646-UCS-4 { IANA } csUCS4 ucs-4
UTF-32BE { IANA* }              UTF32_BigEndian ibm-1232 { IBM* } ibm-1233 { IBM }
UTF-32LE { IANA* }              UTF32_LittleEndian ibm-1234 { IBM* }

# ICU-specific names for special uses
UTF16_PlatformEndian
UTF16_OppositeEndian

UTF32_PlatformEndian
UTF32_OppositeEndian

# On UTF-7:
# RFC 2152 (http://www.imc.org/rfc2152) allows to encode some US-ASCII
# characters directly or in base64. Especially, the characters in set O
# as defined in the RFC (!"#$%&*;<=>@[]^_`{|}) may be encoded directly
# but are not allowed in, e.g., email headers.
# By default, the ICU UTF-7 converter encodes set O directly.
# By choosing the option "version=1", set O will be escaped instead.
# For example:
#     utf7Converter=ucnv_open("UTF-7,version=1");
#
# For details about email headers see RFC 2047.
UTF-7 { IANA* MIME* WINDOWS }   windows-65000 { WINDOWS* }

# IMAP-mailbox-name is an ICU-specific name for the encoding of IMAP mailbox names.
# It is a substantially modified UTF-7 encoding. See the specification in:
#
# RFC 2060: INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4rev1
# (http://www.ietf.org/rfc/rfc2060.txt)
# Section 5.1.3.  Mailbox International Naming Convention
IMAP-mailbox-name

SCSU { IANA* }
BOCU-1 { IANA* } csBOCU-1 { IANA }

# See http://www.unicode.org/unicode/reports/tr26 for this Compatibility Encoding Scheme for UTF-16
# The Unicode Consortium does not encourage the use of CESU-8
CESU-8 { IANA* }

# Standard iso-8859-1, which does not have the Euro update.
# See iso-8859-15 (latin9) for the Euro update
ISO-8859-1 { MIME* IANA JAVA* }
    ibm-819 { IBM* JAVA }    # This is not truely ibm-819 because it's missing the fallbacks.
    IBM819 { IANA }
    cp819 { IANA JAVA }
    latin1 { IANA JAVA }
    8859_1 { JAVA }
    csISOLatin1 { IANA JAVA }
    iso-ir-100 { IANA JAVA }
    ISO_8859-1:1987 { IANA* JAVA }
    l1 { IANA JAVA }
    819 { JAVA }
    # windows-28591 { WINDOWS* } # This has odd behavior because it has the Euro update, which isn't correct.
    # LATIN_1     # Old ICU name
    # ANSI_X3.110-1983  # This is for a different IANA alias.  This isn't iso-8859-1.

US-ASCII { MIME* IANA JAVA WINDOWS }
    ASCII { JAVA* IANA WINDOWS }
    ANSI_X3.4-1968 { IANA* WINDOWS }
    ANSI_X3.4-1986 { IANA WINDOWS }
    ISO_646.irv:1991 { IANA WINDOWS }
    iso_646.irv:1983 { JAVA }
    ISO646-US { JAVA IANA WINDOWS }
    us { IANA }
    csASCII { IANA WINDOWS }
    iso-ir-6 { IANA }
    cp367 { IANA WINDOWS }
    ascii7 { JAVA }
    646 { JAVA }
    windows-20127 { WINDOWS* }
    # IBM367 { IANA WINDOWS } # This isn't the default ibm-367.

# GB 18030 is partly algorithmic, using the MBCS converter
gb18030 { IANA* }       ibm-1392 { IBM* } windows-54936 { WINDOWS* }

# Table-based interchange codepages

ibm-367_P100-1995 { UTR22* }    ibm-367 { IBM* } IBM367 { IANA* }   # This is ASCII, but it has fallbacks

# Central Europe
ibm-912_P100-1995 { UTR22* }
                        ibm-912 { IBM* JAVA }
                        iso-8859-2 { MIME* IANA JAVA* WINDOWS }
                        ISO_8859-2:1987 { IANA* WINDOWS JAVA }
                        latin2 { IANA WINDOWS JAVA }
                        csISOLatin2 { IANA WINDOWS JAVA }
                        iso-ir-101 { IANA WINDOWS JAVA }
                        l2 { IANA WINDOWS JAVA }
                        8859_2 { JAVA }
                        cp912 { JAVA }
                        912 { JAVA }
                        windows-28592 { WINDOWS* }

# Maltese Esperanto
ibm-913_P100-2000 { UTR22* }
                        ibm-913 { IBM* JAVA }
                        iso-8859-3 { MIME* IANA WINDOWS JAVA* }
                        ISO_8859-3:1988 { IANA* WINDOWS JAVA }
                        latin3 { IANA JAVA WINDOWS }
                        csISOLatin3 { IANA WINDOWS }
                        iso-ir-109 { IANA WINDOWS JAVA }
                        l3 { IANA WINDOWS JAVA }
                        8859_3 { JAVA }
                        cp913 { JAVA }
                        913 { JAVA }
                        windows-28593 { WINDOWS* }

# Baltic
ibm-914_P100-1995 { UTR22* }
                        ibm-914 { IBM* JAVA }
                        iso-8859-4 { MIME* IANA WINDOWS JAVA* }
                        latin4 { IANA WINDOWS JAVA }
                        csISOLatin4 { IANA WINDOWS JAVA }
                        iso-ir-110 { IANA WINDOWS JAVA }
                        ISO_8859-4:1988 { IANA* WINDOWS JAVA }
                        l4 { IANA WINDOWS JAVA }
                        8859_4 { JAVA }
                        cp914 { JAVA }
                        914 { JAVA }
                        windows-28594 { WINDOWS* }

# Cyrillic
ibm-915_P100-1995 { UTR22* }
                        ibm-915 { IBM* JAVA }
                        iso-8859-5 { MIME* IANA WINDOWS JAVA* }
                        cyrillic { IANA WINDOWS JAVA }
                        csISOLatinCyrillic { IANA WINDOWS JAVA }
                        iso-ir-144 { IANA WINDOWS JAVA }
                        ISO_8859-5:1988 { IANA* WINDOWS JAVA }
                        8859_5 { JAVA }
                        cp915 { JAVA }
                        915 { JAVA }
                        windows-28595 { WINDOWS* }

# Arabic
# ISO_8859-6-E and ISO_8859-6-I are similar to this charset, but BiDi is done differently
# From a narrow mapping point of view, there is no difference.
# -E means explicit. -I means implicit.
# -E requires the client to handle the ISO 6429 bidirectional controls
ibm-1089_P100-1995 { UTR22* }
                        ibm-1089 { IBM* JAVA }
                        iso-8859-6 { MIME* IANA WINDOWS JAVA* }
                        arabic { IANA WINDOWS JAVA }
                        csISOLatinArabic { IANA WINDOWS JAVA }
                        iso-ir-127 { IANA WINDOWS JAVA }
                        ISO_8859-6:1987 { IANA* WINDOWS JAVA }
                        ECMA-114 { IANA JAVA }
                        ASMO-708 { IANA JAVA }
                        8859_6 { JAVA }
                        cp1089 { JAVA }
                        1089 { JAVA }
                        windows-28596 { WINDOWS* }
                        ISO-8859-6-I { IANA MIME } # IANA considers this alias different and BiDi needs to be applied.
                        ISO-8859-6-E { IANA MIME } # IANA considers this alias different and BiDi needs to be applied.

# ISO Greek (w/o euro update)
ibm-813_P100-1995 { UTR22* }
                        ibm-813 { IBM* JAVA }
                        iso-8859-7 { MIME* IANA WINDOWS JAVA* }
                        greek { IANA WINDOWS JAVA }
                        greek8 { IANA WINDOWS JAVA }
                        ELOT_928 { IANA WINDOWS JAVA }
                        ECMA-118 { IANA WINDOWS JAVA }
                        csISOLatinGreek { IANA WINDOWS JAVA }
                        iso-ir-126 { IANA WINDOWS JAVA }
                        ISO_8859-7:1987 { IANA* WINDOWS JAVA }
                        8859_7 { JAVA }
                        cp813 { JAVA }
                        813 { JAVA }
                        windows-28597 { WINDOWS* }

# hebrew
# ISO_8859-8-E and ISO_8859-8-I are similar to this charset, but BiDi is done differently
# From a narrow mapping point of view, there is no difference.
# -E means explicit. -I means implicit.
# -E requires the client to handle the ISO 6429 bidirectional controls
ibm-916_P100-1995 { UTR22* }
                        ibm-916 { IBM* JAVA }
                        iso-8859-8 { MIME* IANA WINDOWS JAVA* }
                        hebrew { IANA WINDOWS JAVA }
                        csISOLatinHebrew { IANA WINDOWS JAVA }
                        iso-ir-138 { IANA WINDOWS JAVA }
                        ISO_8859-8:1988 { IANA* WINDOWS JAVA }
                        ISO-8859-8-I { IANA MIME } # IANA and Windows considers this alias different and BiDi needs to be applied.
                        ISO-8859-8-E { IANA MIME } # IANA and Windows considers this alias different and BiDi needs to be applied.
                        8859_8 { JAVA }
                        cp916 { JAVA }
                        916 { JAVA }
                        windows-28598 { WINDOWS* }

# Turkish
ibm-920_P100-1995 { UTR22* }
                        ibm-920 { IBM* JAVA }
                        iso-8859-9 { MIME* IANA WINDOWS JAVA* }
                        latin5 { IANA WINDOWS JAVA }
                        csISOLatin5 { IANA JAVA }
                        iso-ir-148 { IANA WINDOWS JAVA }
                        ISO_8859-9:1989 { IANA* WINDOWS }
                        l5 { IANA WINDOWS JAVA }
                        8859_9 { JAVA }
                        cp920 { JAVA }
                        920 { JAVA }
                        windows-28599 { WINDOWS* }
                        ECMA-128    # IANA doesn't have this alias 6/24/2002

# iso-8859-13, PC Baltic (w/o euro update)
ibm-921_P100-1995 { UTR22* }
                        ibm-921 { IBM* }
                        iso-8859-13 { IANA* MIME* JAVA* }
                        8859_13 { JAVA }
                        cp921
                        921

# Latin 9
ibm-923_P100-1998 { UTR22* }
                        ibm-923 { IBM* JAVA }
                        iso-8859-15 { IANA* MIME* WINDOWS JAVA* }
                        Latin-9 { IANA WINDOWS }
                        l9 { WINDOWS }
                        8859_15 { JAVA }
                        latin0 { JAVA }
                        csisolatin0 { JAVA }
                        csisolatin9 { JAVA }
                        iso8859_15_fdis { JAVA }
                        cp923 { JAVA }
                        923 { JAVA }
                        windows-28605 { WINDOWS* }

# CJK encodings

ibm-942_P12A-1999 { UTR22* }    # ibm-942_P120 is a rarely used alternate mapping (sjis78 is already old)
                        ibm-942 { IBM* }
                        ibm-932 { IBM }
                        cp932
                        shift_jis78
                        sjis78
                        ibm-942_VSUB_VPUA
                        ibm-932_VSUB_VPUA
                        # Is this "JIS_C6226-1978"?

# ibm-943_P15A-2003 differs from windows-932-2000 only in a few roundtrip mappings:
# - the usual IBM PC control code rotation (1A-1C-7F)
# - the Windows table has roundtrips for bytes 80, A0, and FD-FF to U+0080 and PUA
ibm-943_P15A-2003 { UTR22* }
                        ibm-943 # Leave untagged because this isn't the default
                        Shift_JIS { IANA* MIME* WINDOWS JAVA }
                        MS_Kanji { IANA WINDOWS JAVA }
                        csShiftJIS { IANA WINDOWS JAVA }
                        windows-31j { IANA JAVA } # A further extension of Shift_JIS to include NEC special characters (Row 13)
                        csWindows31J { IANA WINDOWS JAVA } # A further extension of Shift_JIS to include NEC special characters (Row 13)
                        x-sjis { WINDOWS JAVA }
                        x-ms-cp932 { WINDOWS }
                        cp932 { WINDOWS }
                        windows-932 { WINDOWS* }
                        cp943c { JAVA* }    # This is slightly different, but the backslash mapping is the same.
                        IBM-943C #{ AIX* } # Add this tag once AIX aliases becomes available
                        ms932
                        pck     # Probably SOLARIS
                        sjis    # This might be for ibm-1351
                        ibm-943_VSUB_VPUA
                        # cp943 # This isn't Windows, and no one else uses it.
                        # IANA says that Windows-31J is an extension to csshiftjis ibm-932 
ibm-943_P130-1999 { UTR22* }
                        ibm-943 { IBM* JAVA }
                        Shift_JIS # Leave untagged because this isn't the default
                        cp943 { JAVA* }    # This is slightly different, but the backslash mapping is the same.
                        943 { JAVA }
                        ibm-943_VASCII_VSUB_VPUA
                        # japanese. Unicode name is \u30b7\u30d5\u30c8\u7b26\u53f7\u5316\u8868\u73fe
ibm-33722_P12A-1999 { UTR22* }
                        ibm-33722   # Leave untagged because this isn't the default
                        ibm-5050    # Leave untagged because this isn't the default, and yes this alias is correct
                        EUC-JP { IANA MIME* WINDOWS JAVA* }
                        Extended_UNIX_Code_Packed_Format_for_Japanese { IANA* WINDOWS JAVA }
                        csEUCPkdFmtJapanese { IANA WINDOWS JAVA }
                        X-EUC-JP { WINDOWS JAVA }   # Japan EUC. x-euc-jp is a MIME name
                        eucjis { JAVA }
                        windows-51932 { WINDOWS* }
                        ibm-33722_VPUA
                        IBM-eucJP
ibm-33722_P120-1999 { UTR22* }  # Japan EUC with \ <-> Yen mapping
                        ibm-33722 { IBM* JAVA }
                        ibm-5050 { IBM }    # Yes this is correct
                        cp33722 { JAVA* }
                        33722 { JAVA }
                        ibm-33722_VASCII_VPUA
# ibm-954 seems to be almost a superset of ibm-33722
ibm-954_P101-2000 { UTR22* }
                        ibm-954 { IBM* }
                        EUC-JP # This is Solaris EUC-JP.
                        # eucJP # A closer Solaris alias

ibm-1373_P100-2002 { UTR22* }               # Taiwan Big-5 (w/ euro update)
                        ibm-1373 { IBM* }
                        windows-950 # Alternate mapping. Leave untagged. This is the IBM interpretation of a Windows codepage.
windows-950-2000 { UTR22* }
                        Big5 { IANA* MIME* JAVA* WINDOWS }
                        csBig5 { IANA WINDOWS }
                        windows-950 { WINDOWS* }
                        x-big5
ibm-950_P110-1999 { UTR22* }                # Taiwan Big-5 (w/o euro update)
                        ibm-950 { IBM* JAVA }
                        cp950 { JAVA* }
                        950 { JAVA }
macos-2566-10.2 { UTR22* }      # This uses supplementary characters.
                        Big5-HKSCS { IANA* JAVA* }
                        big5hk { JAVA }
                        HKSCS-BIG5  # From http://www.openi18n.org/localenameguide/
                        # big5-hkscs:unicode3.0 # This is actually post 3.0 data, which has different mappings
ibm-1375_P100-2003 { UTR22* }   # IBM's interpretation of Windows' Taiwan Big-5 w/ HKSCS extensions
                        ibm-1375 { IBM* }
                        Big5-HKSCS
                        # windows-950 # Windows-950 can be w/ or w/o HKSCS extensions. By default it's not.
                        # windows-950_hkscs

ibm-1386_P100-2002  { UTR22* }
                        ibm-1386 { IBM* JAVA }
                        cp1386 { JAVA* }
                        windows-936 # Alternate mapping. Leave untagged. This is the IBM interpretation of a Windows codepage.
                        ibm-1386_VSUB_VPUA
                        # zh_cn

windows-936-2000 { UTR22* }
                        GBK { IANA* WINDOWS }
                        CP936 { IANA }
                        MS936 { IANA }
                        windows-936 { IANA WINDOWS* }

ibm-1383_P110-1999 { UTR22* }       # China EUC.
                        ibm-1383 { IBM* }
                        GB2312 { IANA* MIME* }
                        csGB2312 { IANA }
                        EUC-CN  # According to other platforms, windows-20936 looks more like euc-cn. x-euc-cn is also a MIME name
                        ibm-eucCN
                        hp15CN  # From HP-UX?
                        cp1383
                        1383
                        ibm-1383_VPUA
                        # gb          # This is not an IANA name. gb in IANA means Great Britain.

ibm-5478_P100-1995 { UTR22* } ibm-5478 { IBM* } # This gb_2312_80 DBCS mapping is needed by iso-2022.
                        GB_2312-80 { IANA* }    # Windows maps this alias incorrectly
                        chinese { IANA }
                        iso-ir-58 { IANA }
                        csISO58GB231280 { IANA }
                        gb2312-1980
                        GB2312.1980-0   # From X11R6

ibm-964_P110-1999 { UTR22* }                # Taiwan EUC. x-euc-tw is a MIME name
                        ibm-964 { IBM* JAVA }
                        EUC-TW
                        ibm-eucTW
                        cns11643 
                        cp964 { JAVA* }
                        964 { JAVA }
                        ibm-964_VPUA

# ISO-2022 needs one, and other people may need others.
ibm-949_P110-1999 { UTR22* }
                        ibm-949 { IBM* JAVA }
                        cp949 { JAVA* }
                        949 { JAVA }
                        ibm-949_VASCII_VSUB_VPUA
ibm-949_P11A-1999 { UTR22* }
                        ibm-949 # Leave untagged because this isn't the default
                        cp949c { JAVA* }
                        ibm-949_VSUB_VPUA

# Korean EUC.
#
# <quote from="Jungshik Shin">
# EUC-KR = KS X 1003/ISO 646-KR or ISO 646-IRV/US-ASCII in GL and KS X 1001:1998 (formerly KS C 5601-1987) in GR.
#
# Although widely spread on MS Windows, using 
# KS C 5601 or related names to denote EUC-KR or
# windows-949 is very much misleading. KS C 5601-1987
# is NOT suitable as a designation for MIME charset
# and MBCS. It's just the name of a 94 x 94 Korean 
# coded character set standard which can be invoked
# on either GL (with MSB reset) or GR (with MSB set).
# Note that JOHAB (windows-1361) specified in 
# KS X 1001:1998 annex 3 (KS C 5601-1992 annex 3) 
# is a _seprate_ MBCS with a _completely different_
# mapping.
# </quote>
#
# The following aliases tries to mirror the poor state of alias recognition
# on these platforms.
#
# ibm-970 is almost a subset of ibm-1363.
# Java, Solaris and AIX use euc-kr to also mean ksc5601.
ibm-970_P110-1995 { UTR22* }
                        ibm-970 { IBM* JAVA }
                        EUC-KR { IANA* MIME* WINDOWS JAVA* }
                        KS_C_5601-1987 { JAVA }
                        windows-51949 { WINDOWS* }
                        csEUCKR { IANA WINDOWS }  # x-euc-kr is also a MIME name
                        ibm-eucKR { JAVA }
                        KSC_5601 { JAVA } # Needed by iso-2022
                        5601 { JAVA }
                        ibm-970_VPUA

# ibm-971 is almost the set of DBCS mappings of ibm-970
ibm-971_P100-1995       ibm-971 { IBM* } ibm-971_VPUA

# Java, Solaris and AIX use euc-kr to also mean ksc5601, and _sometimes_ for Windows too.
# ibm-1363 is almost a superset of ibm-970.
ibm-1363_P11B-1998 { UTR22* }
                        ibm-1363 # Leave untagged because this isn't the default
                        KS_C_5601-1987 { IANA* }
                        KS_C_5601-1989 { IANA }
                        KSC_5601 { MIME* IANA } # Needed by iso-2022
                        csKSC56011987 { IANA }
                        korean { IANA }
                        iso-ir-149 { IANA }
                        5601
                        cp1363
                        ksc
                        windows-949 # Alternate mapping. Leave untagged. This is the IBM interpretation of a Windows codepage.
                        ibm-1363_VSUB_VPUA
                        # ks_x_1001:1992
                        # ksc5601-1992

ibm-1363_P110-1997 { UTR22* } # Korean KSC MBCS with \ <-> Won mapping
                        ibm-1363 { IBM* }
                        ibm-1363_VASCII_VSUB_VPUA

windows-949-2000 { UTR22* }
                        windows-949 { JAVA* WINDOWS* }
                        KS_C_5601-1987 { WINDOWS }
                        KS_C_5601-1989 { WINDOWS }
                        KSC_5601 { WINDOWS } # Needed by iso-2022
                        csKSC56011987 { WINDOWS }
                        korean { WINDOWS }
                        iso-ir-149 { WINDOWS }
                        ms949 { JAVA }

ibm-1162_P100-1999 { UTR22* }   # Thai (w/ euro update)
                        ibm-1162 { IBM* }

ibm-874_P100-1995 { UTR22* }    # Thai PC (w/o euro update).
                        ibm-874 { IBM* JAVA }
                        ibm-9066 { IBM }    # Yes ibm-874 == ibm-9066. ibm-1161 has the euro update.
                        cp874 { JAVA* }
                        TIS-620 { IANA* JAVA }  # This actually separate from ibm-874, which is similar to this table
                        tis620.2533 { JAVA }    # This actually separate from ibm-874, which is similar to this table
                        eucTH               # eucTH is an unusual alias from Solaris.  eucTH has fewer mappings than TIS620
                        cp9066

windows-874-2000 { UTR22* }   # Thai (w/ euro update)
                        TIS-620 { WINDOWS }
                        windows-874 { JAVA* WINDOWS* }
                        MS874 { JAVA }
                        # iso-8859-11 { WINDOWS } # iso-8859-11 is similar to TIS-620. ibm-13162 is a closer match.

# Platform codepages
ibm-437_P100-1995 { UTR22* }    ibm-437 { IBM* } IBM437 { IANA* WINDOWS JAVA } cp437 { IANA WINDOWS JAVA* } 437 { IANA WINDOWS JAVA } csPC8CodePage437 { IANA JAVA } windows-437 { WINDOWS* }  # PC US
ibm-850_P100-1995 { UTR22* }    ibm-850 { IBM* } IBM850 { IANA* WINDOWS JAVA } cp850 { IANA MIME* WINDOWS JAVA* } 850 { IANA JAVA } csPC850Multilingual { IANA JAVA } windows-850 { WINDOWS* } # PC latin1
ibm-851_P100-1995 { UTR22* }    ibm-851 { IBM* } IBM851 { IANA* } cp851 { IANA MIME* } 851 { IANA } csPC851 { IANA }             # PC DOS Greek (w/o euro)
ibm-852_P100-1995 { UTR22* }    ibm-852 { IBM* } IBM852 { IANA* WINDOWS JAVA } cp852 { IANA WINDOWS JAVA* } 852 { IANA WINDOWS JAVA } csPCp852 { IANA JAVA } windows-852 { WINDOWS* } # PC latin2 (w/o euro update)
ibm-855_P100-1995 { UTR22* }    ibm-855 { IBM* } IBM855 { IANA* } cp855 { IANA } 855 { IANA } csIBM855 { IANA } csPCp855 # PC cyrillic (w/o euro update)
ibm-856_P100-1995 { UTR22* }    ibm-856 { IBM* JAVA } cp856 { MIME* JAVA* } 856 { JAVA }  # PC Hebrew (old)
ibm-857_P100-1995 { UTR22* }    ibm-857 { IBM* } IBM857 { IANA* WINDOWS JAVA } cp857 { IANA MIME* JAVA* } 857 { IANA JAVA } csIBM857 { IANA JAVA } windows-857 { WINDOWS* }   # PC Latin 5 (w/o euro update)
ibm-858_P100-1997 { UTR22* }    ibm-858 { IBM* JAVA* } IBM00858 { IANA* } CCSID00858 { IANA } CP00858 { IANA } PC-Multilingual-850+euro { IANA } cp858 { MIME* }  # PC latin1 with Euro
ibm-860_P100-1995 { UTR22* }    ibm-860 { IBM* } IBM860 { IANA* JAVA } cp860 { IANA MIME* JAVA* } 860 { IANA JAVA } csIBM860 { IANA JAVA }    # PC Portugal
ibm-861_P100-1995 { UTR22* }    ibm-861 { IBM* } IBM861 { IANA* WINDOWS JAVA } cp861 { IANA MIME* JAVA* } 861 { IANA JAVA } cp-is { IANA JAVA } csIBM861 { IANA JAVA } windows-861 { WINDOWS* } # PC Iceland
ibm-862_P100-1995 { UTR22* }    ibm-862 { IBM* } IBM862 { IANA* JAVA } cp862 { IANA MIME* JAVA* } 862 { IANA JAVA } csPC862LatinHebrew { IANA JAVA } DOS-862 { WINDOWS } windows-862 { WINDOWS* }    # PC Hebrew (w/o euro update)
ibm-863_P100-1995 { UTR22* }    ibm-863 { IBM* } IBM863 { IANA* JAVA } cp863 { IANA MIME* JAVA* } 863 { IANA JAVA } csIBM863 { IANA JAVA }    # PC Canadian French
ibm-864_X110-1999 { UTR22* }    ibm-864 { IBM* } IBM864 { IANA* JAVA } cp864 { IANA MIME* JAVA* } csIBM864 { IANA JAVA } # PC Arabic (w/o euro update)
ibm-865_P100-1995 { UTR22* }    ibm-865 { IBM* } IBM865 { IANA* JAVA } cp865 { IANA MIME* JAVA* } 865 { IANA JAVA } csIBM865 { IANA JAVA }    # PC Nordic
ibm-866_P100-1995 { UTR22* }    ibm-866 { IBM* } IBM866 { IANA* JAVA } cp866 { IANA MIME* WINDOWS JAVA* } 866 { IANA JAVA } csIBM866 { IANA JAVA } windows-866 { WINDOWS* } # PC Russian (w/o euro update)
ibm-867_P100-1998 { UTR22* }    ibm-867 { IBM* } cp867   # PC Hebrew (w/ euro update) Updated version of ibm-862
ibm-868_P100-1995 { UTR22* }    ibm-868 { IBM* } IBM868 { IANA* JAVA } CP868 { IANA MIME* JAVA* } 868 { JAVA } csIBM868 { IANA } cp-ar { IANA }          # PC Urdu
ibm-869_P100-1995 { UTR22* }    ibm-869 { IBM* } IBM869 { IANA* WINDOWS JAVA } cp869 { IANA MIME* JAVA* } 869 { IANA JAVA } cp-gr { IANA JAVA } csIBM869 { IANA JAVA } windows-869 { WINDOWS* } # PC Greek (w/o euro update)
ibm-878_P100-1996 { UTR22* }    ibm-878 { IBM* } KOI8-R { IANA* MIME* JAVA* } koi8 { JAVA } csKOI8R { IANA JAVA } cp878   # Russian internet
ibm-901_P100-1999 { UTR22* }    ibm-901 { IBM* } # PC Baltic (w/ euro update), update of ibm-921
ibm-902_P100-1999 { UTR22* }    ibm-902 { IBM* } # PC Estonian (w/ euro update), update of ibm-922
ibm-922_P100-1999 { UTR22* }    ibm-922 { IBM* JAVA }   cp922 { MIME* JAVA* } 922 { JAVA } # PC Estonian (w/o euro update)
ibm-4909_P100-1999 { UTR22* }   ibm-4909 { IBM* } # ISO Greek (w/ euro update), update of ibm-813

# The cp aliases in this section aren't really windows aliases, but it was used by ICU for Windows.
# cp is used to denote IBM in Java, and that is why we don't do that anymore.
# The windows-* aliases mean windows codepages.
ibm-5346_P100-1998 { UTR22* }   ibm-5346 { IBM* } windows-1250 { IANA* JAVA* WINDOWS* } cp1250 { WINDOWS }  # Windows Latin2 (w/ euro update)
ibm-5347_P100-1998 { UTR22* }   ibm-5347 { IBM* } windows-1251 { IANA* JAVA* WINDOWS* } cp1251 { WINDOWS }  # Windows Cyrillic (w/ euro update)
ibm-5348_P100-1997 { UTR22* }   ibm-5348 { IBM* } windows-1252 { IANA* JAVA* WINDOWS* } cp1252 { WINDOWS }  # Windows Latin1 (w/ euro update)
ibm-5349_P100-1998 { UTR22* }   ibm-5349 { IBM* } windows-1253 { IANA* JAVA* WINDOWS* } cp1253 { WINDOWS }  # Windows Greek (w/ euro update)
ibm-5350_P100-1998 { UTR22* }   ibm-5350 { IBM* } windows-1254 { IANA* JAVA* WINDOWS* } cp1254 { WINDOWS }  # Windows Turkish (w/ euro update)
ibm-9447_P100-2002 { UTR22* }   ibm-9447 { IBM* } windows-1255 { IANA* JAVA* WINDOWS* } cp1255 { WINDOWS }  # Windows Hebrew (w/ euro update)
windows-1256-2000 { UTR22* }    windows-1256 { IANA* JAVA* WINDOWS* } cp1256 { WINDOWS }                    # Windows Arabic (w/ euro update)
ibm-9449_P100-2002 { UTR22* }   ibm-9449 { IBM* } windows-1257 { IANA* JAVA* WINDOWS* } cp1257 { WINDOWS }  # Windows Baltic (w/ euro update)
ibm-5354_P100-1998 { UTR22* }   ibm-5354 { IBM* } windows-1258 { IANA* JAVA* WINDOWS* } cp1258 { WINDOWS }  # Windows Vietnamese (w/ euro update)

# These tables are out of date, and most don't have the Euro
# Leave the windows- variants untagged. They are alternate tables of the newer ones above.
ibm-1250_P100-1995 { UTR22* }   ibm-1250 { IBM* } windows-1250  # Old Windows Latin2 (w/o euro update)
ibm-1251_P100-1995 { UTR22* }   ibm-1251 { IBM* } windows-1251  # Old Windows Cyrillic (w/o euro update)
ibm-1252_P100-2000 { UTR22* }   ibm-1252 { IBM* } windows-1252  # Old Windows Latin 1 without Euro
ibm-1253_P100-1995 { UTR22* }   ibm-1253 { IBM* } windows-1253  # Old Windows Greek (w/o euro update)
ibm-1254_P100-1995 { UTR22* }   ibm-1254 { IBM* } windows-1254  # Old Windows Turkish (w/o euro update)
ibm-1255_P100-1995 { UTR22* }   ibm-1255 { IBM* }               # Very old Windows Hebrew (w/o euro update)
ibm-5351_P100-1998 { UTR22* }   ibm-5351 { IBM* } windows-1255  # Old Windows Hebrew (w/ euro update)
ibm-1256_P110-1997 { UTR22* }   ibm-1256 { IBM* }               # Old Windows Arabic (w/o euro update)
ibm-5352_P100-1998 { UTR22* }   ibm-5352 { IBM* } windows-1256  # Somewhat old Windows Arabic (w/ euro update)
ibm-1257_P100-1995 { UTR22* }   ibm-1257 { IBM* }               # Old Windows Baltic (w/o euro update)
ibm-5353_P100-1998 { UTR22* }   ibm-5353 { IBM* } windows-1257  # Somewhat old Windows Baltic (w/ euro update)
ibm-1258_P100-1997 { UTR22* }   ibm-1258 { IBM* } windows-1258  # Old Windows Vietnamese (w/o euro update)

macos-0_2-10.2 { UTR22* }       macintosh { IANA* MIME* WINDOWS } mac { IANA } csMacintosh { IANA } windows-10000 { WINDOWS* } # Apple latin 1
macos-6-10.2 { UTR22* }         x-mac-greek { MIME* WINDOWS } windows-10006 { WINDOWS* } macgr           # Apple Greek
macos-7_3-10.2 { UTR22* }       x-mac-cyrillic { MIME* WINDOWS } windows-10007 { WINDOWS* } maccy        # Apple Cyrillic
macos-29-10.2 { UTR22* }        x-mac-centraleurroman { MIME* } windows-10029 { WINDOWS* } x-mac-ce { WINDOWS } macce   # Apple Central Europe
macos-35-10.2 { UTR22* }        x-mac-turkish { MIME* WINDOWS } windows-10081 { WINDOWS* } mactr         # Apple Turkish

ibm-1051_P100-1995 { UTR22* }   ibm-1051 { IBM* } hp-roman8 { IANA* } roman8 { IANA } r8 { IANA } csHPRoman8 { IANA }   # HP Latin1
ibm-1276_P100-1995 { UTR22* }   ibm-1276 { IBM* } Adobe-Standard-Encoding { IANA* } csAdobeStandardEncoding { IANA } # Different from ISO-Unicode-IBM-1276 (GCSGID: 1276)
ibm-1277_P100-1995 { UTR22* }   ibm-1277 { IBM* } Adobe-Latin1-Encoding

ibm-1006_P100-1995 { UTR22* }   ibm-1006 { IBM* JAVA } cp1006 { JAVA* } 1006 { JAVA }   # Urdu
ibm-1098_P100-1995 { UTR22* }   ibm-1098 { IBM* JAVA } cp1098 { JAVA* } 1098 { JAVA }   # PC Farsi
ibm-1124_P100-1996 { UTR22* }   ibm-1124 { IBM* JAVA } cp1124 { JAVA* } 1124 { JAVA }   # ISO Cyrillic Ukraine
ibm-1125_P100-1997 { UTR22* }   ibm-1125 { IBM* JAVA } cp1125 { JAVA* }                 # Cyrillic Ukraine PC
ibm-1129_P100-1997 { UTR22* }   ibm-1129 { IBM* }                                       # ISO Vietnamese
ibm-1131_P100-1997 { UTR22* }   ibm-1131 { IBM* JAVA } cp1131 { JAVA* }                 # Cyrillic Belarus PC
ibm-1133_P100-1997 { UTR22* }   ibm-1133 { IBM* }                                       # ISO Lao
ibm-1381_P110-1999 { UTR22* }   ibm-1381 { IBM* JAVA } cp1381 { JAVA* } 1381 { JAVA }   # S-Ch PC Data mixed (IBM GB) 


# Partially algorithmic converters

# [U_ENABLE_GENERIC_ISO_2022]
# The _generic_ ISO-2022 converter is disabled starting 2003-dec-03 (ICU 2.8).
# For details see the icu mailing list from 2003-dec-01 and the ucnv2022.c file.
# Language-specific variants of ISO-2022 continue to be available as listed below.
# ISO_2022                         ISO-2022 { MIME* } 2022 cp2022

ISO_2022,locale=ja,version=0    ISO-2022-JP { IANA* MIME* JAVA* } csISO2022JP { JAVA } 
ISO_2022,locale=ja,version=1    ISO-2022-JP-1 JIS JIS_Encoding { IANA* }
ISO_2022,locale=ja,version=2    ISO-2022-JP-2 { IANA* MIME* } csISO2022JP2
ISO_2022,locale=ja,version=3    JIS7 csJISEncoding
ISO_2022,locale=ja,version=4    JIS8
ISO_2022,locale=ko,version=0    ISO-2022-KR { IANA* MIME* } csISO2022KR # This uses ibm-949
ISO_2022,locale=ko,version=1    ibm-25546
ISO_2022,locale=zh,version=0    ISO-2022-CN { IANA* MIME* } # csISO2022CN
ISO_2022,locale=zh,version=1    ISO-2022-CN-EXT { IANA* MIME* }
HZ                              HZ-GB-2312 { IANA* MIME* }

# Part of iso-2022
ibm-897_P100-1995 { UTR22* }    ibm-897 { IBM* } JIS_X0201 { IANA* } X0201 { IANA } csHalfWidthKatakana { IANA }


ISCII,version=0         x-iscii-de { WINDOWS } windows-57002 { WINDOWS* } iscii-dev
ISCII,version=1         x-iscii-be { WINDOWS } windows-57003 { WINDOWS* } iscii-bng windows-57006 { WINDOWS } x-iscii-as { WINDOWS } # be is different from as on Windows.
ISCII,version=2         x-iscii-pa { WINDOWS } windows-57011 { WINDOWS* } iscii-gur
ISCII,version=3         x-iscii-gu { WINDOWS } windows-57010 { WINDOWS* } iscii-guj
ISCII,version=4         x-iscii-or { WINDOWS } windows-57007 { WINDOWS* } iscii-ori
ISCII,version=5         x-iscii-ta { WINDOWS } windows-57004 { WINDOWS* } iscii-tml
ISCII,version=6         x-iscii-te { WINDOWS } windows-57005 { WINDOWS* } iscii-tlg
ISCII,version=7         x-iscii-ka { WINDOWS } windows-57008 { WINDOWS* } iscii-knd
ISCII,version=8         x-iscii-ma { WINDOWS } windows-57009 { WINDOWS* } iscii-mlm

# Lotus specific
LMBCS-1                 lmbcs
LMBCS-2
LMBCS-3
LMBCS-4
LMBCS-5
LMBCS-6
LMBCS-8
LMBCS-11
LMBCS-16
LMBCS-17
LMBCS-18
LMBCS-19

# EBCDIC codepages according to the CDRA

# without Euro
ibm-37_P100-1995 { UTR22* }              # EBCDIC US
                        ibm-37 { IBM* }
                        IBM037 { IANA* }
                        ibm-037 { JAVA }
                        ebcdic-cp-us { IANA }
                        ebcdic-cp-ca { IANA }
                        ebcdic-cp-wt { IANA }
                        ebcdic-cp-nl { IANA }
                        csIBM037 { IANA }
                        cp037 { JAVA* }
                        037 { JAVA }
                        cpibm37
                        cp37

ibm-273_P100-1995 { UTR22* }    ibm-273 { IBM* } IBM273 { IANA* JAVA } CP273 { IANA JAVA* } csIBM273 { IANA } ebcdic-de cpibm273 273 # EBCDIC Germanay, Austria
ibm-277_P100-1995 { UTR22* }    ibm-277 { IBM* } IBM277 { IANA* JAVA } cp277 { JAVA* } EBCDIC-CP-DK { IANA } EBCDIC-CP-NO { IANA } csIBM277 { IANA } ebcdic-dk cpibm277 277 # EBCDIC Denmark
ibm-278_P100-1995 { UTR22* }    ibm-278 { IBM* } IBM278 { IANA* JAVA } cp278 { JAVA* } ebcdic-cp-fi { IANA } ebcdic-cp-se { IANA } csIBM278 { IANA } ebcdic-sv cpibm278 278 # EBCDIC Sweden
ibm-280_P100-1995 { UTR22* }    ibm-280 { IBM* } IBM280 { IANA* JAVA } CP280 { IANA JAVA* } ebcdic-cp-it { IANA } csIBM280 { IANA } cpibm280 280 # EBCDIC Italy
ibm-284_P100-1995 { UTR22* }    ibm-284 { IBM* } IBM284 { IANA* JAVA } CP284 { IANA JAVA* } ebcdic-cp-es { IANA } csIBM284 { IANA } cpibm284 284 # EBCDIC Spain
ibm-285_P100-1995 { UTR22* }    ibm-285 { IBM* } IBM285 { IANA* JAVA } CP285 { IANA JAVA* } ebcdic-cp-gb { IANA } csIBM285 { IANA } ebcdic-gb cpibm285 285 # EBCDIC UK Ireland
ibm-290_P100-1995 { UTR22* }    ibm-290 { IBM* } IBM290 { IANA* } cp290 { IANA } EBCDIC-JP-kana { IANA } csIBM290 { IANA } # host SBCS (Katakana)
ibm-297_P100-1995 { UTR22* }    ibm-297 { IBM* } IBM297 { IANA* JAVA } cp297 { IANA JAVA* } ebcdic-cp-fr { IANA } csIBM297 { IANA } cpibm297 297 # EBCDIC France
ibm-420_X120-1999 { UTR22* }    ibm-420 { IBM* } IBM420 { IANA* JAVA } cp420 { IANA JAVA* } ebcdic-cp-ar1 { IANA } csIBM420 { IANA } 420        # EBCDIC Arabic (all presentation shapes)
ibm-424_P100-1995 { UTR22* }    ibm-424 { IBM* } IBM424 { IANA* JAVA } cp424 { IANA JAVA* } ebcdic-cp-he { IANA } csIBM424 { IANA } 424         # EBCDIC Hebrew
ibm-500_P100-1995 { UTR22* }    ibm-500 { IBM* } IBM500 { IANA* JAVA } CP500 { IANA JAVA* } ebcdic-cp-be { IANA } csIBM500 { IANA } ebcdic-cp-ch { IANA } cpibm500 500 # EBCDIC International Latin1
ibm-803_P100-1999 { UTR22* }    ibm-803 { IBM* } cp803   # Old EBCDIC Hebrew
ibm-838_P100-1995 { UTR22* }    ibm-838 { IBM* JAVA } IBM-Thai { IANA* } csIBMThai { IANA } cp838 { JAVA* } 838 { JAVA } ibm-9030 { IBM }   # EBCDIC Thai. Yes ibm-9030 is an alias.
ibm-870_P100-1995 { UTR22* }    ibm-870 { IBM* } IBM870 { IANA* JAVA } CP870 { IANA JAVA* } ebcdic-cp-roece { IANA } ebcdic-cp-yu { IANA } csIBM870 { IANA }    # EBCDIC Latin 2 
ibm-871_P100-1995 { UTR22* }    ibm-871 { IBM* } IBM871 { IANA* } ebcdic-cp-is { IANA } csIBM871 { IANA } CP871 { IANA } ebcdic-is cpibm871 871 # EBCDIC Iceland
ibm-875_P100-1995 { UTR22* }    ibm-875 { IBM* } IBM875 { JAVA } cp875 { JAVA* } 875 # EBCDIC Greek
ibm-918_P100-1995 { UTR22* }    ibm-918 { IBM* } IBM918 { IANA* JAVA } CP918 { IANA JAVA* } ebcdic-cp-ar2 { IANA } csIBM918 { IANA } # EBCDIC Urdu
ibm-930_P120-1999 { UTR22* }    # EBCDIC_STATEFUL Katakana-Kanji Host Mixed.
                        ibm-930 { IBM* JAVA }
                        ibm-5026 { IBM } # Yes this is correct
                        cp930 { JAVA* }
                        cpibm930
                        930 { JAVA }
ibm-933_P110-1995 { UTR22* }    ibm-933 { IBM* JAVA } cp933 { JAVA* } cpibm933 933 { JAVA } # Korea EBCDIC MIXED
ibm-935_P110-1999 { UTR22* }    ibm-935 { IBM* JAVA } cp935 { JAVA* } cpibm935 935 { JAVA } # China EBCDIC MIXED. Need to use Unicode, ibm-1388 or gb18030 instead because it is required by the government of China.
ibm-937_P110-1999 { UTR22* }    ibm-937 { IBM* JAVA } cp937 { JAVA* } cpibm937 937 { JAVA } # Taiwan EBCDIC MIXED
ibm-939_P120-1999 { UTR22* }    # EBCDIC_STATEFUL Latin-Kanji Host Mixed.
                        ibm-939 { IBM* JAVA }
                        ibm-931 { IBM }     # Yes this is correct
                        ibm-5035 { IBM }    # Yes this is also correct
                        cp939 { JAVA* }
                        939 { JAVA }
ibm-1025_P100-1995 { UTR22* }   ibm-1025 { IBM* JAVA } cp1025 { JAVA* } 1025 { JAVA }       # EBCDIC Cyrillic
ibm-1026_P100-1995 { UTR22* }   ibm-1026 { IBM* JAVA } IBM1026 { IANA* } CP1026 { IANA JAVA* } csIBM1026 { IANA } 1026 { JAVA } # EBCDIC Turkey 
ibm-1047_P100-1995 { UTR22* }   ibm-1047 { IBM* } IBM1047 { IANA* } cpibm1047                       # EBCDIC Open systems Latin1
ibm-1097_P100-1995 { UTR22* }   ibm-1097 { IBM* JAVA } cp1097 { JAVA* } 1097 { JAVA }               # EBCDIC Farsi
ibm-1112_P100-1995 { UTR22* }   ibm-1112 { IBM* JAVA } cp1112 { JAVA* } 1112 { JAVA }               # EBCDIC Baltic
ibm-1122_P100-1999 { UTR22* }   ibm-1122 { IBM* JAVA } cp1122 { JAVA* } 1122 { JAVA }               # EBCDIC Estonia 
ibm-1123_P100-1995 { UTR22* }   ibm-1123 { IBM* JAVA } cp1123 { JAVA* } 1123 { JAVA } cpibm1123     # EBCDIC Cyrillic Ukraine
ibm-1130_P100-1997 { UTR22* }   ibm-1130 { IBM* }       # EBCDIC Vietnamese
ibm-1132_P100-1998 { UTR22* }   ibm-1132 { IBM* }       # EBCDIC Lao

# with Euro
ibm-1140_P100-1997 { UTR22* }   ibm-1140 { IBM* JAVA } IBM01140 { IANA* } CCSID01140 { IANA } CP01140 { IANA } cp1140 { JAVA* } cpibm1140 ebcdic-us-37+euro { IANA } # EBCDIC US
ibm-1141_P100-1997 { UTR22* }   ibm-1141 { IBM* JAVA } IBM01141 { IANA* } CCSID01141 { IANA } CP01141 { IANA } cp1141 { JAVA* } cpibm1141 ebcdic-de-273+euro { IANA } # EBCDIC Germanay, Austria
ibm-1142_P100-1997 { UTR22* }   ibm-1142 { IBM* JAVA } IBM01142 { IANA* } CCSID01142 { IANA } CP01142 { IANA } cp1142 { JAVA* } cpibm1142 ebcdic-dk-277+euro { IANA } ebcdic-no-277+euro { IANA } # EBCDIC Denmark
ibm-1143_P100-1997 { UTR22* }   ibm-1143 { IBM* JAVA } IBM01143 { IANA* } CCSID01143 { IANA } CP01143 { IANA } cp1143 { JAVA* } cpibm1143 ebcdic-fi-278+euro { IANA } ebcdic-se-278+euro { IANA } # EBCDIC Sweden
ibm-1144_P100-1997 { UTR22* }   ibm-1144 { IBM* JAVA } IBM01144 { IANA* } CCSID01144 { IANA } CP01144 { IANA } cp1144 { JAVA* } cpibm1144 ebcdic-it-280+euro { IANA } # EBCDIC Italy
ibm-1145_P100-1997 { UTR22* }   ibm-1145 { IBM* JAVA } IBM01145 { IANA* } CCSID01145 { IANA } CP01145 { IANA } cp1145 { JAVA* } cpibm1145 ebcdic-es-284+euro { IANA } # EBCDIC Spain
ibm-1146_P100-1997 { UTR22* }   ibm-1146 { IBM* JAVA } IBM01146 { IANA* } CCSID01146 { IANA } CP01146 { IANA } cp1146 { JAVA* } cpibm1146 ebcdic-gb-285+euro { IANA } # EBCDIC UK Ireland
ibm-1147_P100-1997 { UTR22* }   ibm-1147 { IBM* JAVA } IBM01147 { IANA* } CCSID01147 { IANA } CP01147 { IANA } cp1147 { JAVA* } cpibm1147 ebcdic-fr-297+euro { IANA } # EBCDIC France
ibm-1148_P100-1997 { UTR22* }   ibm-1148 { IBM* JAVA } IBM01148 { IANA* } CCSID01148 { IANA } CP01148 { IANA } cp1148 { JAVA* } cpibm1148 ebcdic-international-500+euro { IANA } # EBCDIC International Latin1
ibm-1149_P100-1997 { UTR22* }   ibm-1149 { IBM* JAVA } IBM01149 { IANA* } CCSID01149 { IANA } CP01149 { IANA } cp1149 { JAVA* } cpibm1149 ebcdic-is-871+euro { IANA } # EBCDIC Iceland
ibm-1153_P100-1999 { UTR22* }   ibm-1153 { IBM* } cpibm1153             # EBCDIC latin 2
ibm-1154_P100-1999 { UTR22* }   ibm-1154 { IBM* } cpibm1154             # EBCDIC Cyrillic Multilingual
ibm-1155_P100-1999 { UTR22* }   ibm-1155 { IBM* } cpibm1155             # EBCDIC Turkey
ibm-1156_P100-1999 { UTR22* }   ibm-1156 { IBM* } cpibm1156             # EBCDIC Baltic Multilingual
ibm-1157_P100-1999 { UTR22* }   ibm-1157 { IBM* } cpibm1157             # EBCDIC Estonia
ibm-1158_P100-1999 { UTR22* }   ibm-1158 { IBM* } cpibm1158             # EBCDIC Cyrillic Ukraine
ibm-1160_P100-1999 { UTR22* }   ibm-1160 { IBM* } cpibm1160             # EBCDIC Thailand
ibm-1164_P100-1999 { UTR22* }   ibm-1164 { IBM* } cpibm1164             # EBCDIC Viet Nam
ibm-1364_P110-1997 { UTR22* }   ibm-1364 { IBM* } cp1364                # Korean Host Mixed
ibm-1371_P100-1999 { UTR22* }   ibm-1371 { IBM* } cpibm1371             # Taiwan EBCDIC MIXED
ibm-1388_P103-2001 { UTR22* }   ibm-1388 { IBM* } ibm-9580 { IBM }      # S-Ch DBCS-Host Data GBK EBCDIC_STATEFUL. Yes ibm-9580 is an alias.
ibm-1390_P110-2003 { UTR22* }   ibm-1390 { IBM* } cpibm1390             # Japan EBCDIC MIXED (JIS X 0213)
ibm-1399_P110-2003 { UTR22* }   ibm-1399 { IBM* }                       # Host MBCS (Latin-Kanji) (JIS X 0213)
ibm-16684_P110-2003 { UTR22* }  ibm-16684 { IBM* }                      # DBCS Jis + Roman Jis Host. This is the DBCS portion of ibm-1390 and ibm-1399 (JIS X 0213)
ibm-4899_P100-1998 { UTR22* }   ibm-4899 { IBM* } cpibm4899             # Old EBCDIC Hebrew
ibm-4971_P100-1999 { UTR22* }   ibm-4971 { IBM* } cpibm4971             # EBCDIC Greek
ibm-12712_P100-1998 { UTR22* }  ibm-12712 { IBM* } cpibm12712 ebcdic-he # EBCDIC Hebrew (new sheqel, control charaters update)
ibm-16804_X110-1999 { UTR22* }  ibm-16804 { IBM* } cpibm16804 ebcdic-ar # EBCDIC Arabic


# TODO: Consider removing the mappings in this section
ibm-1137_P100-1999 { UTR22* }   ibm-1137 { IBM* }   # Devanagari EBCDIC (based on Unicode character set)
ibm-5123_P100-1999 { UTR22* }   ibm-5123 { IBM* }   # Host Roman Jis. Euro update of ibm-1027
ibm-8482_P100-1999 { UTR22* }   ibm-8482 { IBM* }   # host SBCS (Katakana). Euro update of ibm-290


# EBCDIC codepages for S/390, with LF and NL codes swapped
# Starting with ICU 2.4, the swapping is done by modifying the
# normal tables at runtime instead of at build time.
# Append UCNV_SWAP_LFNL_OPTION_STRING to the "ibm-CCSID" name to select this.
#
# Example: "ibm-1047,swaplfnl" or "ibm-1047" UCNV_SWAP_LFNL_OPTION_STRING
#
# This avoids the duplication of all EBCDIC SBCS and mixed-SBCS/DBCS
# mapping files.

# Some examples below for declaring old-style, obsolete aliases with the "-s390"
# suffix to map to the new-style, recommended names with the option added.
# These are listed here for backward compatibility.
# Do not use these; instead use the normal converter name with the option
# added as recommended above.

# Note: It is not possible to define an alias (non-initial name in a line here)
# that itself contains a converter option like this one for swapping LF<->NL.
# Such names would never be found because ucnv_open() will first parse and strip
# options before looking up a name in this table.
# ucnv_open() then parses the lookup result (the canonical name on the left
# in lines here) as well.

# This also means that it is not necessary to add anything to convrtrs.txt
# for converter names like "ibm-1026,swaplfnl" to work -
# they are already covered by the normal option parsing together with the
# regular, option-less alias elsewhere in this file.

ibm-37_P100-1995,swaplfnl     ibm-37-s390 ibm037-s390
ibm-1047_P100-1995,swaplfnl   ibm-1047-s390
ibm-1140_P100-1997,swaplfnl   ibm-1140-s390
ibm-1142_P100-1997,swaplfnl   ibm-1142-s390
ibm-1143_P100-1997,swaplfnl   ibm-1143-s390
ibm-1144_P100-1997,swaplfnl   ibm-1144-s390
ibm-1145_P100-1997,swaplfnl   ibm-1145-s390
ibm-1146_P100-1997,swaplfnl   ibm-1146-s390
ibm-1147_P100-1997,swaplfnl   ibm-1147-s390
ibm-1148_P100-1997,swaplfnl   ibm-1148-s390
ibm-1149_P100-1997,swaplfnl   ibm-1149-s390
ibm-1153_P100-1999,swaplfnl   ibm-1153-s390
ibm-12712_P100-1998,swaplfnl  ibm-12712-s390
ibm-16804_X110-1999,swaplfnl  ibm-16804-s390

# This is a special version of ibm-1140 that the XML4C (Xerces) parser team
# requested in 2000.
# It maps both EBCDIC LF and NL controls to Unicode LF U+000A.

ebcdic-xml-us



# These were removed due to age, and they are rarely used.

# ibm-274   IBM274 { IANA* } cp274 csIBM274 ebcdic-be
# ibm-870   IBM870 { IANA* } ebcdic-cp-roece ebcdic-cp-yu csIBM870 cp870 870

#ibm-942_P120-1999 { UTR22* }
#                        #ibm-942 { IBM* }
#                        ibm-942_VASCII_VSUB_VPUA
#                        #ibm-932 { IBM }
#                        ibm-932_VASCII_VSUB_VPUA   # Old s_jis
#ibm-859 { IBM* }        cp859 { MIME* }     # PC Latin 9 (w/ euro update)
#ibm-5104_X110-1999 { UTR22* }   ibm-5104 { IBM* } cp1008    # 8-bit Arabic (w/ euro update)
#ibm-9238 { IBM* }               cp1046                      # PC Arabic Extended (w/ euro update)
#ibm-17248_X110-1999 { UTR22* }  ibm-17248 { IBM* }          # PC Arabic (w/ euro update) Updated version of ibm-864

#ibm-941                 jis-208 jisx-208    # Pure DBCS jisx-208 # ibm-941 is not JISX 208 code page
#ibm-955                 jis-208 jisx-208    # Pure DBCS jisx-208

#ibm-1159_P100-1999 { UTR22* }   ibm-1159 { IBM* }   # SBCS T-Ch Host. Euro update of ibm-28709. This is used in combination with another CCSID mapping.
#ibm-9027_P100-1999 { UTR22* }   ibm-9027 { IBM* }   # DBCS T-Ch Host. Euro update of ibm-835. DBCS portion of ibm-1371.