# ***************************************************************************
# *
# *   Copyright (C) 1995-2002, International Business Machines
# *   Corporation and others.  All Rights Reserved.
# *
# ***************************************************************************
#
# File created by rptp2ucm (compiled on Dec  3 2002)
# from source files 34B0046B.RPMAP100 and 046B34B0.TPMAP100
#
<code_set_name>               "ibm-1131_P100-1997"
<char_name_mask>              "AXXXX"
<mb_cur_max>                  1
<mb_cur_min>                  1
<uconv_class>                 "SBCS"
<subchar>                     \x7F
<icu:charsetFamily>           "ASCII"
<icu:alias>                   "ibm-1131_VSUB"

CHARMAP
<U0000> \x00 |0
<U0001> \x01 |0
<U0002> \x02 |0
<U0003> \x03 |0
<U0004> \x04 |0
<U0005> \x05 |0
<U0006> \x06 |0
<U0007> \x07 |0
<U0008> \x08 |0
<U0009> \x09 |0
<U000A> \x0A |0
<U000B> \x0B |0
<U000C> \x0C |0
<U000D> \x0D |0
<U000E> \x0E |0
<U000F> \x0F |0
<U0010> \x10 |0
<U0011> \x11 |0
<U0012> \x12 |0
<U0013> \x13 |0
<U0014> \x14 |0
<U0015> \x15 |0
<U0016> \x16 |0
<U0017> \x17 |0
<U0018> \x18 |0
<U0019> \x19 |0
<U001A> \x7F |0
<U001B> \x1B |0
<U001C> \x1A |0
<U001D> \x1D |0
<U001E> \x1E |0
<U001F> \x1F |0
<U0020> \x20 |0
<U0021> \x21 |0
<U0022> \x22 |0
<U0023> \x23 |0
<U0024> \x24 |0
<U0025> \x25 |0
<U0026> \x26 |0
<U0027> \x27 |0
<U0028> \x28 |0
<U0029> \x29 |0
<U002A> \x2A |0
<U002B> \x2B |0
<U002C> \x2C |0
<U002D> \x2D |0
<U002E> \x2E |0
<U002F> \x2F |0
<U0030> \x30 |0
<U0031> \x31 |0
<U0032> \x32 |0
<U0033> \x33 |0
<U0034> \x34 |0
<U0035> \x35 |0
<U0036> \x36 |0
<U0037> \x37 |0
<U0038> \x38 |0
<U0039> \x39 |0
<U003A> \x3A |0
<U003B> \x3B |0
<U003C> \x3C |0
<U003D> \x3D |0
<U003E> \x3E |0
<U003F> \x3F |0
<U0040> \x40 |0
<U0041> \x41 |0
<U0042> \x42 |0
<U0043> \x43 |0
<U0044> \x44 |0
<U0045> \x45 |0
<U0046> \x46 |0
<U0047> \x47 |0
<U0048> \x48 |0
<U0049> \x49 |0
<U004A> \x4A |0
<U004B> \x4B |0
<U004C> \x4C |0
<U004D> \x4D |0
<U004E> \x4E |0
<U004F> \x4F |0
<U0050> \x50 |0
<U0051> \x51 |0
<U0052> \x52 |0
<U0053> \x53 |0
<U0054> \x54 |0
<U0055> \x55 |0
<U0056> \x56 |0
<U0057> \x57 |0
<U0058> \x58 |0
<U0059> \x59 |0
<U005A> \x5A |0
<U005B> \x5B |0
<U005C> \x5C |0
<U005D> \x5D |0
<U005E> \x5E |0
<U005F> \x5F |0
<U0060> \x60 |0
<U0061> \x61 |0
<U0062> \x62 |0
<U0063> \x63 |0
<U0064> \x64 |0
<U0065> \x65 |0
<U0066> \x66 |0
<U0067> \x67 |0
<U0068> \x68 |0
<U0069> \x69 |0
<U006A> \x6A |0
<U006B> \x6B |0
<U006C> \x6C |0
<U006D> \x6D |0
<U006E> \x6E |0
<U006F> \x6F |0
<U0070> \x70 |0
<U0071> \x71 |0
<U0072> \x72 |0
<U0073> \x73 |0
<U0074> \x74 |0
<U0075> \x75 |0
<U0076> \x76 |0
<U0077> \x77 |0
<U0078> \x78 |0
<U0079> \x79 |0
<U007A> \x7A |0
<U007B> \x7B |0
<U007C> \x7C |0
<U007D> \x7D |0
<U007E> \x7E |0
<U007F> \x1C |0
<U00A0> \xFF |0
<U00A4> \xFB |0
<U00A7> \x15 |1
<U00B6> \x14 |1
<U00B7> \xFA |0
<U0401> \xF0 |0
<U0404> \xF2 |0
<U0406> \xF8 |0
<U0407> \xF4 |0
<U040E> \xF6 |0
<U0410> \x80 |0
<U0411> \x81 |0
<U0412> \x82 |0
<U0413> \x83 |0
<U0414> \x84 |0
<U0415> \x85 |0
<U0416> \x86 |0
<U0417> \x87 |0
<U0418> \x88 |0
<U0419> \x89 |0
<U041A> \x8A |0
<U041B> \x8B |0
<U041C> \x8C |0
<U041D> \x8D |0
<U041E> \x8E |0
<U041F> \x8F |0
<U0420> \x90 |0
<U0421> \x91 |0
<U0422> \x92 |0
<U0423> \x93 |0
<U0424> \x94 |0
<U0425> \x95 |0
<U0426> \x96 |0
<U0427> \x97 |0
<U0428> \x98 |0
<U0429> \x99 |0
<U042A> \x9A |0
<U042B> \x9B |0
<U042C> \x9C |0
<U042D> \x9D |0
<U042E> \x9E |0
<U042F> \x9F |0
<U0430> \xA0 |0
<U0431> \xA1 |0
<U0432> \xA2 |0
<U0433> \xA3 |0
<U0434> \xA4 |0
<U0435> \xA5 |0
<U0436> \xA6 |0
<U0437> \xA7 |0
<U0438> \xA8 |0
<U0439> \xA9 |0
<U043A> \xAA |0
<U043B> \xAB |0
<U043C> \xAC |0
<U043D> \xAD |0
<U043E> \xAE |0
<U043F> \xAF |0
<U0440> \xE0 |0
<U0441> \xE1 |0
<U0442> \xE2 |0
<U0443> \xE3 |0
<U0444> \xE4 |0
<U0445> \xE5 |0
<U0446> \xE6 |0
<U0447> \xE7 |0
<U0448> \xE8 |0
<U0449> \xE9 |0
<U044A> \xEA |0
<U044B> \xEB |0
<U044C> \xEC |0
<U044D> \xED |0
<U044E> \xEE |0
<U044F> \xEF |0
<U0451> \xF1 |0
<U0454> \xF3 |0
<U0456> \xF9 |0
<U0457> \xF5 |0
<U045E> \xF7 |0
<U0490> \xFC |0
<U0491> \xFD |0
<U2022> \x07 |1
<U203C> \x13 |1
<U2190> \x1B |1
<U2191> \x18 |1
<U2192> \x1A |1
<U2193> \x19 |1
<U2194> \x1D |1
<U2195> \x12 |1
<U21A8> \x17 |1
<U2219> \xFE |0
<U221F> \x1C |1
<U2302> \x7F |2
<U2500> \xC4 |0
<U2502> \xB3 |0
<U250C> \xDA |0
<U2510> \xBF |0
<U2514> \xC0 |0
<U2518> \xD9 |0
<U251C> \xC3 |0
<U2524> \xB4 |0
<U252C> \xC2 |0
<U2534> \xC1 |0
<U253C> \xC5 |0
<U2550> \xCD |0
<U2551> \xBA |0
<U2552> \xD5 |0
<U2553> \xD6 |0
<U2554> \xC9 |0
<U2555> \xB8 |0
<U2556> \xB7 |0
<U2557> \xBB |0
<U2558> \xD4 |0
<U2559> \xD3 |0
<U255A> \xC8 |0
<U255B> \xBE |0
<U255C> \xBD |0
<U255D> \xBC |0
<U255E> \xC6 |0
<U255F> \xC7 |0
<U2560> \xCC |0
<U2561> \xB5 |0
<U2562> \xB6 |0
<U2563> \xB9 |0
<U2564> \xD1 |0
<U2565> \xD2 |0
<U2566> \xCB |0
<U2567> \xCF |0
<U2568> \xD0 |0
<U2569> \xCA |0
<U256A> \xD8 |0
<U256B> \xD7 |0
<U256C> \xCE |0
<U2580> \xDF |0
<U2584> \xDC |0
<U2588> \xDB |0
<U258C> \xDD |0
<U2590> \xDE |0
<U2591> \xB0 |0
<U2592> \xB1 |0
<U2593> \xB2 |0
<U25AC> \x16 |1
<U25B2> \x1E |1
<U25BA> \x10 |1
<U25BC> \x1F |1
<U25C4> \x11 |1
<U25CB> \x09 |1
<U25D8> \x08 |1
<U25D9> \x0A |1
<U263A> \x01 |1
<U263B> \x02 |1
<U263C> \x0F |1
<U2640> \x0C |1
<U2642> \x0B |1
<U2660> \x06 |1
<U2663> \x05 |1
<U2665> \x03 |1
<U2666> \x04 |1
<U266A> \x0D |1
<U266B> \x0E |1
<UFF01> \x21 |1
<UFF02> \x22 |1
<UFF03> \x23 |1
<UFF04> \x24 |1
<UFF05> \x25 |1
<UFF06> \x26 |1
<UFF07> \x27 |1
<UFF08> \x28 |1
<UFF09> \x29 |1
<UFF0A> \x2A |1
<UFF0B> \x2B |1
<UFF0C> \x2C |1
<UFF0D> \x2D |1
<UFF0E> \x2E |1
<UFF0F> \x2F |1
<UFF10> \x30 |1
<UFF11> \x31 |1
<UFF12> \x32 |1
<UFF13> \x33 |1
<UFF14> \x34 |1
<UFF15> \x35 |1
<UFF16> \x36 |1
<UFF17> \x37 |1
<UFF18> \x38 |1
<UFF19> \x39 |1
<UFF1A> \x3A |1
<UFF1B> \x3B |1
<UFF1C> \x3C |1
<UFF1D> \x3D |1
<UFF1E> \x3E |1
<UFF1F> \x3F |1
<UFF20> \x40 |1
<UFF21> \x41 |1
<UFF22> \x42 |1
<UFF23> \x43 |1
<UFF24> \x44 |1
<UFF25> \x45 |1
<UFF26> \x46 |1
<UFF27> \x47 |1
<UFF28> \x48 |1
<UFF29> \x49 |1
<UFF2A> \x4A |1
<UFF2B> \x4B |1
<UFF2C> \x4C |1
<UFF2D> \x4D |1
<UFF2E> \x4E |1
<UFF2F> \x4F |1
<UFF30> \x50 |1
<UFF31> \x51 |1
<UFF32> \x52 |1
<UFF33> \x53 |1
<UFF34> \x54 |1
<UFF35> \x55 |1
<UFF36> \x56 |1
<UFF37> \x57 |1
<UFF38> \x58 |1
<UFF39> \x59 |1
<UFF3A> \x5A |1
<UFF3B> \x5B |1
<UFF3C> \x5C |1
<UFF3D> \x5D |1
<UFF3E> \x5E |1
<UFF3F> \x5F |1
<UFF40> \x60 |1
<UFF41> \x61 |1
<UFF42> \x62 |1
<UFF43> \x63 |1
<UFF44> \x64 |1
<UFF45> \x65 |1
<UFF46> \x66 |1
<UFF47> \x67 |1
<UFF48> \x68 |1
<UFF49> \x69 |1
<UFF4A> \x6A |1
<UFF4B> \x6B |1
<UFF4C> \x6C |1
<UFF4D> \x6D |1
<UFF4E> \x6E |1
<UFF4F> \x6F |1
<UFF50> \x70 |1
<UFF51> \x71 |1
<UFF52> \x72 |1
<UFF53> \x73 |1
<UFF54> \x74 |1
<UFF55> \x75 |1
<UFF56> \x76 |1
<UFF57> \x77 |1
<UFF58> \x78 |1
<UFF59> \x79 |1
<UFF5A> \x7A |1
<UFF5B> \x7B |1
<UFF5C> \x7C |1
<UFF5D> \x7D |1
<UFF5E> \x7E |1
<UFFE8> \xB3 |1
<UFFE9> \x1B |1
<UFFEA> \x18 |1
<UFFEB> \x1A |1
<UFFEC> \x19 |1
<UFFEE> \x09 |1
END CHARMAP
