summaryrefslogtreecommitdiff
path: root/Lib/encodings/cp866.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/encodings/cp866.py')
-rw-r--r--Lib/encodings/cp866.py512
1 files changed, 256 insertions, 256 deletions
diff --git a/Lib/encodings/cp866.py b/Lib/encodings/cp866.py
index 29cd85a3f1..bec7ae39fb 100644
--- a/Lib/encodings/cp866.py
+++ b/Lib/encodings/cp866.py
@@ -178,262 +178,262 @@ decoding_map.update({
### Decoding Table
decoding_table = (
- u'\x00' # 0x0000 -> NULL
- u'\x01' # 0x0001 -> START OF HEADING
- u'\x02' # 0x0002 -> START OF TEXT
- u'\x03' # 0x0003 -> END OF TEXT
- u'\x04' # 0x0004 -> END OF TRANSMISSION
- u'\x05' # 0x0005 -> ENQUIRY
- u'\x06' # 0x0006 -> ACKNOWLEDGE
- u'\x07' # 0x0007 -> BELL
- u'\x08' # 0x0008 -> BACKSPACE
- u'\t' # 0x0009 -> HORIZONTAL TABULATION
- u'\n' # 0x000a -> LINE FEED
- u'\x0b' # 0x000b -> VERTICAL TABULATION
- u'\x0c' # 0x000c -> FORM FEED
- u'\r' # 0x000d -> CARRIAGE RETURN
- u'\x0e' # 0x000e -> SHIFT OUT
- u'\x0f' # 0x000f -> SHIFT IN
- u'\x10' # 0x0010 -> DATA LINK ESCAPE
- u'\x11' # 0x0011 -> DEVICE CONTROL ONE
- u'\x12' # 0x0012 -> DEVICE CONTROL TWO
- u'\x13' # 0x0013 -> DEVICE CONTROL THREE
- u'\x14' # 0x0014 -> DEVICE CONTROL FOUR
- u'\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
- u'\x16' # 0x0016 -> SYNCHRONOUS IDLE
- u'\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
- u'\x18' # 0x0018 -> CANCEL
- u'\x19' # 0x0019 -> END OF MEDIUM
- u'\x1a' # 0x001a -> SUBSTITUTE
- u'\x1b' # 0x001b -> ESCAPE
- u'\x1c' # 0x001c -> FILE SEPARATOR
- u'\x1d' # 0x001d -> GROUP SEPARATOR
- u'\x1e' # 0x001e -> RECORD SEPARATOR
- u'\x1f' # 0x001f -> UNIT SEPARATOR
- u' ' # 0x0020 -> SPACE
- u'!' # 0x0021 -> EXCLAMATION MARK
- u'"' # 0x0022 -> QUOTATION MARK
- u'#' # 0x0023 -> NUMBER SIGN
- u'$' # 0x0024 -> DOLLAR SIGN
- u'%' # 0x0025 -> PERCENT SIGN
- u'&' # 0x0026 -> AMPERSAND
- u"'" # 0x0027 -> APOSTROPHE
- u'(' # 0x0028 -> LEFT PARENTHESIS
- u')' # 0x0029 -> RIGHT PARENTHESIS
- u'*' # 0x002a -> ASTERISK
- u'+' # 0x002b -> PLUS SIGN
- u',' # 0x002c -> COMMA
- u'-' # 0x002d -> HYPHEN-MINUS
- u'.' # 0x002e -> FULL STOP
- u'/' # 0x002f -> SOLIDUS
- u'0' # 0x0030 -> DIGIT ZERO
- u'1' # 0x0031 -> DIGIT ONE
- u'2' # 0x0032 -> DIGIT TWO
- u'3' # 0x0033 -> DIGIT THREE
- u'4' # 0x0034 -> DIGIT FOUR
- u'5' # 0x0035 -> DIGIT FIVE
- u'6' # 0x0036 -> DIGIT SIX
- u'7' # 0x0037 -> DIGIT SEVEN
- u'8' # 0x0038 -> DIGIT EIGHT
- u'9' # 0x0039 -> DIGIT NINE
- u':' # 0x003a -> COLON
- u';' # 0x003b -> SEMICOLON
- u'<' # 0x003c -> LESS-THAN SIGN
- u'=' # 0x003d -> EQUALS SIGN
- u'>' # 0x003e -> GREATER-THAN SIGN
- u'?' # 0x003f -> QUESTION MARK
- u'@' # 0x0040 -> COMMERCIAL AT
- u'A' # 0x0041 -> LATIN CAPITAL LETTER A
- u'B' # 0x0042 -> LATIN CAPITAL LETTER B
- u'C' # 0x0043 -> LATIN CAPITAL LETTER C
- u'D' # 0x0044 -> LATIN CAPITAL LETTER D
- u'E' # 0x0045 -> LATIN CAPITAL LETTER E
- u'F' # 0x0046 -> LATIN CAPITAL LETTER F
- u'G' # 0x0047 -> LATIN CAPITAL LETTER G
- u'H' # 0x0048 -> LATIN CAPITAL LETTER H
- u'I' # 0x0049 -> LATIN CAPITAL LETTER I
- u'J' # 0x004a -> LATIN CAPITAL LETTER J
- u'K' # 0x004b -> LATIN CAPITAL LETTER K
- u'L' # 0x004c -> LATIN CAPITAL LETTER L
- u'M' # 0x004d -> LATIN CAPITAL LETTER M
- u'N' # 0x004e -> LATIN CAPITAL LETTER N
- u'O' # 0x004f -> LATIN CAPITAL LETTER O
- u'P' # 0x0050 -> LATIN CAPITAL LETTER P
- u'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
- u'R' # 0x0052 -> LATIN CAPITAL LETTER R
- u'S' # 0x0053 -> LATIN CAPITAL LETTER S
- u'T' # 0x0054 -> LATIN CAPITAL LETTER T
- u'U' # 0x0055 -> LATIN CAPITAL LETTER U
- u'V' # 0x0056 -> LATIN CAPITAL LETTER V
- u'W' # 0x0057 -> LATIN CAPITAL LETTER W
- u'X' # 0x0058 -> LATIN CAPITAL LETTER X
- u'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
- u'Z' # 0x005a -> LATIN CAPITAL LETTER Z
- u'[' # 0x005b -> LEFT SQUARE BRACKET
- u'\\' # 0x005c -> REVERSE SOLIDUS
- u']' # 0x005d -> RIGHT SQUARE BRACKET
- u'^' # 0x005e -> CIRCUMFLEX ACCENT
- u'_' # 0x005f -> LOW LINE
- u'`' # 0x0060 -> GRAVE ACCENT
- u'a' # 0x0061 -> LATIN SMALL LETTER A
- u'b' # 0x0062 -> LATIN SMALL LETTER B
- u'c' # 0x0063 -> LATIN SMALL LETTER C
- u'd' # 0x0064 -> LATIN SMALL LETTER D
- u'e' # 0x0065 -> LATIN SMALL LETTER E
- u'f' # 0x0066 -> LATIN SMALL LETTER F
- u'g' # 0x0067 -> LATIN SMALL LETTER G
- u'h' # 0x0068 -> LATIN SMALL LETTER H
- u'i' # 0x0069 -> LATIN SMALL LETTER I
- u'j' # 0x006a -> LATIN SMALL LETTER J
- u'k' # 0x006b -> LATIN SMALL LETTER K
- u'l' # 0x006c -> LATIN SMALL LETTER L
- u'm' # 0x006d -> LATIN SMALL LETTER M
- u'n' # 0x006e -> LATIN SMALL LETTER N
- u'o' # 0x006f -> LATIN SMALL LETTER O
- u'p' # 0x0070 -> LATIN SMALL LETTER P
- u'q' # 0x0071 -> LATIN SMALL LETTER Q
- u'r' # 0x0072 -> LATIN SMALL LETTER R
- u's' # 0x0073 -> LATIN SMALL LETTER S
- u't' # 0x0074 -> LATIN SMALL LETTER T
- u'u' # 0x0075 -> LATIN SMALL LETTER U
- u'v' # 0x0076 -> LATIN SMALL LETTER V
- u'w' # 0x0077 -> LATIN SMALL LETTER W
- u'x' # 0x0078 -> LATIN SMALL LETTER X
- u'y' # 0x0079 -> LATIN SMALL LETTER Y
- u'z' # 0x007a -> LATIN SMALL LETTER Z
- u'{' # 0x007b -> LEFT CURLY BRACKET
- u'|' # 0x007c -> VERTICAL LINE
- u'}' # 0x007d -> RIGHT CURLY BRACKET
- u'~' # 0x007e -> TILDE
- u'\x7f' # 0x007f -> DELETE
- u'\u0410' # 0x0080 -> CYRILLIC CAPITAL LETTER A
- u'\u0411' # 0x0081 -> CYRILLIC CAPITAL LETTER BE
- u'\u0412' # 0x0082 -> CYRILLIC CAPITAL LETTER VE
- u'\u0413' # 0x0083 -> CYRILLIC CAPITAL LETTER GHE
- u'\u0414' # 0x0084 -> CYRILLIC CAPITAL LETTER DE
- u'\u0415' # 0x0085 -> CYRILLIC CAPITAL LETTER IE
- u'\u0416' # 0x0086 -> CYRILLIC CAPITAL LETTER ZHE
- u'\u0417' # 0x0087 -> CYRILLIC CAPITAL LETTER ZE
- u'\u0418' # 0x0088 -> CYRILLIC CAPITAL LETTER I
- u'\u0419' # 0x0089 -> CYRILLIC CAPITAL LETTER SHORT I
- u'\u041a' # 0x008a -> CYRILLIC CAPITAL LETTER KA
- u'\u041b' # 0x008b -> CYRILLIC CAPITAL LETTER EL
- u'\u041c' # 0x008c -> CYRILLIC CAPITAL LETTER EM
- u'\u041d' # 0x008d -> CYRILLIC CAPITAL LETTER EN
- u'\u041e' # 0x008e -> CYRILLIC CAPITAL LETTER O
- u'\u041f' # 0x008f -> CYRILLIC CAPITAL LETTER PE
- u'\u0420' # 0x0090 -> CYRILLIC CAPITAL LETTER ER
- u'\u0421' # 0x0091 -> CYRILLIC CAPITAL LETTER ES
- u'\u0422' # 0x0092 -> CYRILLIC CAPITAL LETTER TE
- u'\u0423' # 0x0093 -> CYRILLIC CAPITAL LETTER U
- u'\u0424' # 0x0094 -> CYRILLIC CAPITAL LETTER EF
- u'\u0425' # 0x0095 -> CYRILLIC CAPITAL LETTER HA
- u'\u0426' # 0x0096 -> CYRILLIC CAPITAL LETTER TSE
- u'\u0427' # 0x0097 -> CYRILLIC CAPITAL LETTER CHE
- u'\u0428' # 0x0098 -> CYRILLIC CAPITAL LETTER SHA
- u'\u0429' # 0x0099 -> CYRILLIC CAPITAL LETTER SHCHA
- u'\u042a' # 0x009a -> CYRILLIC CAPITAL LETTER HARD SIGN
- u'\u042b' # 0x009b -> CYRILLIC CAPITAL LETTER YERU
- u'\u042c' # 0x009c -> CYRILLIC CAPITAL LETTER SOFT SIGN
- u'\u042d' # 0x009d -> CYRILLIC CAPITAL LETTER E
- u'\u042e' # 0x009e -> CYRILLIC CAPITAL LETTER YU
- u'\u042f' # 0x009f -> CYRILLIC CAPITAL LETTER YA
- u'\u0430' # 0x00a0 -> CYRILLIC SMALL LETTER A
- u'\u0431' # 0x00a1 -> CYRILLIC SMALL LETTER BE
- u'\u0432' # 0x00a2 -> CYRILLIC SMALL LETTER VE
- u'\u0433' # 0x00a3 -> CYRILLIC SMALL LETTER GHE
- u'\u0434' # 0x00a4 -> CYRILLIC SMALL LETTER DE
- u'\u0435' # 0x00a5 -> CYRILLIC SMALL LETTER IE
- u'\u0436' # 0x00a6 -> CYRILLIC SMALL LETTER ZHE
- u'\u0437' # 0x00a7 -> CYRILLIC SMALL LETTER ZE
- u'\u0438' # 0x00a8 -> CYRILLIC SMALL LETTER I
- u'\u0439' # 0x00a9 -> CYRILLIC SMALL LETTER SHORT I
- u'\u043a' # 0x00aa -> CYRILLIC SMALL LETTER KA
- u'\u043b' # 0x00ab -> CYRILLIC SMALL LETTER EL
- u'\u043c' # 0x00ac -> CYRILLIC SMALL LETTER EM
- u'\u043d' # 0x00ad -> CYRILLIC SMALL LETTER EN
- u'\u043e' # 0x00ae -> CYRILLIC SMALL LETTER O
- u'\u043f' # 0x00af -> CYRILLIC SMALL LETTER PE
- u'\u2591' # 0x00b0 -> LIGHT SHADE
- u'\u2592' # 0x00b1 -> MEDIUM SHADE
- u'\u2593' # 0x00b2 -> DARK SHADE
- u'\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
- u'\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
- u'\u2561' # 0x00b5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
- u'\u2562' # 0x00b6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
- u'\u2556' # 0x00b7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
- u'\u2555' # 0x00b8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
- u'\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
- u'\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
- u'\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
- u'\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
- u'\u255c' # 0x00bd -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
- u'\u255b' # 0x00be -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
- u'\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
- u'\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
- u'\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
- u'\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
- u'\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
- u'\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
- u'\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
- u'\u255e' # 0x00c6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
- u'\u255f' # 0x00c7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
- u'\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
- u'\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
- u'\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
- u'\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
- u'\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
- u'\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
- u'\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
- u'\u2567' # 0x00cf -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
- u'\u2568' # 0x00d0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
- u'\u2564' # 0x00d1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
- u'\u2565' # 0x00d2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
- u'\u2559' # 0x00d3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
- u'\u2558' # 0x00d4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
- u'\u2552' # 0x00d5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
- u'\u2553' # 0x00d6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
- u'\u256b' # 0x00d7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
- u'\u256a' # 0x00d8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
- u'\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
- u'\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
- u'\u2588' # 0x00db -> FULL BLOCK
- u'\u2584' # 0x00dc -> LOWER HALF BLOCK
- u'\u258c' # 0x00dd -> LEFT HALF BLOCK
- u'\u2590' # 0x00de -> RIGHT HALF BLOCK
- u'\u2580' # 0x00df -> UPPER HALF BLOCK
- u'\u0440' # 0x00e0 -> CYRILLIC SMALL LETTER ER
- u'\u0441' # 0x00e1 -> CYRILLIC SMALL LETTER ES
- u'\u0442' # 0x00e2 -> CYRILLIC SMALL LETTER TE
- u'\u0443' # 0x00e3 -> CYRILLIC SMALL LETTER U
- u'\u0444' # 0x00e4 -> CYRILLIC SMALL LETTER EF
- u'\u0445' # 0x00e5 -> CYRILLIC SMALL LETTER HA
- u'\u0446' # 0x00e6 -> CYRILLIC SMALL LETTER TSE
- u'\u0447' # 0x00e7 -> CYRILLIC SMALL LETTER CHE
- u'\u0448' # 0x00e8 -> CYRILLIC SMALL LETTER SHA
- u'\u0449' # 0x00e9 -> CYRILLIC SMALL LETTER SHCHA
- u'\u044a' # 0x00ea -> CYRILLIC SMALL LETTER HARD SIGN
- u'\u044b' # 0x00eb -> CYRILLIC SMALL LETTER YERU
- u'\u044c' # 0x00ec -> CYRILLIC SMALL LETTER SOFT SIGN
- u'\u044d' # 0x00ed -> CYRILLIC SMALL LETTER E
- u'\u044e' # 0x00ee -> CYRILLIC SMALL LETTER YU
- u'\u044f' # 0x00ef -> CYRILLIC SMALL LETTER YA
- u'\u0401' # 0x00f0 -> CYRILLIC CAPITAL LETTER IO
- u'\u0451' # 0x00f1 -> CYRILLIC SMALL LETTER IO
- u'\u0404' # 0x00f2 -> CYRILLIC CAPITAL LETTER UKRAINIAN IE
- u'\u0454' # 0x00f3 -> CYRILLIC SMALL LETTER UKRAINIAN IE
- u'\u0407' # 0x00f4 -> CYRILLIC CAPITAL LETTER YI
- u'\u0457' # 0x00f5 -> CYRILLIC SMALL LETTER YI
- u'\u040e' # 0x00f6 -> CYRILLIC CAPITAL LETTER SHORT U
- u'\u045e' # 0x00f7 -> CYRILLIC SMALL LETTER SHORT U
- u'\xb0' # 0x00f8 -> DEGREE SIGN
- u'\u2219' # 0x00f9 -> BULLET OPERATOR
- u'\xb7' # 0x00fa -> MIDDLE DOT
- u'\u221a' # 0x00fb -> SQUARE ROOT
- u'\u2116' # 0x00fc -> NUMERO SIGN
- u'\xa4' # 0x00fd -> CURRENCY SIGN
- u'\u25a0' # 0x00fe -> BLACK SQUARE
- u'\xa0' # 0x00ff -> NO-BREAK SPACE
+ '\x00' # 0x0000 -> NULL
+ '\x01' # 0x0001 -> START OF HEADING
+ '\x02' # 0x0002 -> START OF TEXT
+ '\x03' # 0x0003 -> END OF TEXT
+ '\x04' # 0x0004 -> END OF TRANSMISSION
+ '\x05' # 0x0005 -> ENQUIRY
+ '\x06' # 0x0006 -> ACKNOWLEDGE
+ '\x07' # 0x0007 -> BELL
+ '\x08' # 0x0008 -> BACKSPACE
+ '\t' # 0x0009 -> HORIZONTAL TABULATION
+ '\n' # 0x000a -> LINE FEED
+ '\x0b' # 0x000b -> VERTICAL TABULATION
+ '\x0c' # 0x000c -> FORM FEED
+ '\r' # 0x000d -> CARRIAGE RETURN
+ '\x0e' # 0x000e -> SHIFT OUT
+ '\x0f' # 0x000f -> SHIFT IN
+ '\x10' # 0x0010 -> DATA LINK ESCAPE
+ '\x11' # 0x0011 -> DEVICE CONTROL ONE
+ '\x12' # 0x0012 -> DEVICE CONTROL TWO
+ '\x13' # 0x0013 -> DEVICE CONTROL THREE
+ '\x14' # 0x0014 -> DEVICE CONTROL FOUR
+ '\x15' # 0x0015 -> NEGATIVE ACKNOWLEDGE
+ '\x16' # 0x0016 -> SYNCHRONOUS IDLE
+ '\x17' # 0x0017 -> END OF TRANSMISSION BLOCK
+ '\x18' # 0x0018 -> CANCEL
+ '\x19' # 0x0019 -> END OF MEDIUM
+ '\x1a' # 0x001a -> SUBSTITUTE
+ '\x1b' # 0x001b -> ESCAPE
+ '\x1c' # 0x001c -> FILE SEPARATOR
+ '\x1d' # 0x001d -> GROUP SEPARATOR
+ '\x1e' # 0x001e -> RECORD SEPARATOR
+ '\x1f' # 0x001f -> UNIT SEPARATOR
+ ' ' # 0x0020 -> SPACE
+ '!' # 0x0021 -> EXCLAMATION MARK
+ '"' # 0x0022 -> QUOTATION MARK
+ '#' # 0x0023 -> NUMBER SIGN
+ '$' # 0x0024 -> DOLLAR SIGN
+ '%' # 0x0025 -> PERCENT SIGN
+ '&' # 0x0026 -> AMPERSAND
+ "'" # 0x0027 -> APOSTROPHE
+ '(' # 0x0028 -> LEFT PARENTHESIS
+ ')' # 0x0029 -> RIGHT PARENTHESIS
+ '*' # 0x002a -> ASTERISK
+ '+' # 0x002b -> PLUS SIGN
+ ',' # 0x002c -> COMMA
+ '-' # 0x002d -> HYPHEN-MINUS
+ '.' # 0x002e -> FULL STOP
+ '/' # 0x002f -> SOLIDUS
+ '0' # 0x0030 -> DIGIT ZERO
+ '1' # 0x0031 -> DIGIT ONE
+ '2' # 0x0032 -> DIGIT TWO
+ '3' # 0x0033 -> DIGIT THREE
+ '4' # 0x0034 -> DIGIT FOUR
+ '5' # 0x0035 -> DIGIT FIVE
+ '6' # 0x0036 -> DIGIT SIX
+ '7' # 0x0037 -> DIGIT SEVEN
+ '8' # 0x0038 -> DIGIT EIGHT
+ '9' # 0x0039 -> DIGIT NINE
+ ':' # 0x003a -> COLON
+ ';' # 0x003b -> SEMICOLON
+ '<' # 0x003c -> LESS-THAN SIGN
+ '=' # 0x003d -> EQUALS SIGN
+ '>' # 0x003e -> GREATER-THAN SIGN
+ '?' # 0x003f -> QUESTION MARK
+ '@' # 0x0040 -> COMMERCIAL AT
+ 'A' # 0x0041 -> LATIN CAPITAL LETTER A
+ 'B' # 0x0042 -> LATIN CAPITAL LETTER B
+ 'C' # 0x0043 -> LATIN CAPITAL LETTER C
+ 'D' # 0x0044 -> LATIN CAPITAL LETTER D
+ 'E' # 0x0045 -> LATIN CAPITAL LETTER E
+ 'F' # 0x0046 -> LATIN CAPITAL LETTER F
+ 'G' # 0x0047 -> LATIN CAPITAL LETTER G
+ 'H' # 0x0048 -> LATIN CAPITAL LETTER H
+ 'I' # 0x0049 -> LATIN CAPITAL LETTER I
+ 'J' # 0x004a -> LATIN CAPITAL LETTER J
+ 'K' # 0x004b -> LATIN CAPITAL LETTER K
+ 'L' # 0x004c -> LATIN CAPITAL LETTER L
+ 'M' # 0x004d -> LATIN CAPITAL LETTER M
+ 'N' # 0x004e -> LATIN CAPITAL LETTER N
+ 'O' # 0x004f -> LATIN CAPITAL LETTER O
+ 'P' # 0x0050 -> LATIN CAPITAL LETTER P
+ 'Q' # 0x0051 -> LATIN CAPITAL LETTER Q
+ 'R' # 0x0052 -> LATIN CAPITAL LETTER R
+ 'S' # 0x0053 -> LATIN CAPITAL LETTER S
+ 'T' # 0x0054 -> LATIN CAPITAL LETTER T
+ 'U' # 0x0055 -> LATIN CAPITAL LETTER U
+ 'V' # 0x0056 -> LATIN CAPITAL LETTER V
+ 'W' # 0x0057 -> LATIN CAPITAL LETTER W
+ 'X' # 0x0058 -> LATIN CAPITAL LETTER X
+ 'Y' # 0x0059 -> LATIN CAPITAL LETTER Y
+ 'Z' # 0x005a -> LATIN CAPITAL LETTER Z
+ '[' # 0x005b -> LEFT SQUARE BRACKET
+ '\\' # 0x005c -> REVERSE SOLIDUS
+ ']' # 0x005d -> RIGHT SQUARE BRACKET
+ '^' # 0x005e -> CIRCUMFLEX ACCENT
+ '_' # 0x005f -> LOW LINE
+ '`' # 0x0060 -> GRAVE ACCENT
+ 'a' # 0x0061 -> LATIN SMALL LETTER A
+ 'b' # 0x0062 -> LATIN SMALL LETTER B
+ 'c' # 0x0063 -> LATIN SMALL LETTER C
+ 'd' # 0x0064 -> LATIN SMALL LETTER D
+ 'e' # 0x0065 -> LATIN SMALL LETTER E
+ 'f' # 0x0066 -> LATIN SMALL LETTER F
+ 'g' # 0x0067 -> LATIN SMALL LETTER G
+ 'h' # 0x0068 -> LATIN SMALL LETTER H
+ 'i' # 0x0069 -> LATIN SMALL LETTER I
+ 'j' # 0x006a -> LATIN SMALL LETTER J
+ 'k' # 0x006b -> LATIN SMALL LETTER K
+ 'l' # 0x006c -> LATIN SMALL LETTER L
+ 'm' # 0x006d -> LATIN SMALL LETTER M
+ 'n' # 0x006e -> LATIN SMALL LETTER N
+ 'o' # 0x006f -> LATIN SMALL LETTER O
+ 'p' # 0x0070 -> LATIN SMALL LETTER P
+ 'q' # 0x0071 -> LATIN SMALL LETTER Q
+ 'r' # 0x0072 -> LATIN SMALL LETTER R
+ 's' # 0x0073 -> LATIN SMALL LETTER S
+ 't' # 0x0074 -> LATIN SMALL LETTER T
+ 'u' # 0x0075 -> LATIN SMALL LETTER U
+ 'v' # 0x0076 -> LATIN SMALL LETTER V
+ 'w' # 0x0077 -> LATIN SMALL LETTER W
+ 'x' # 0x0078 -> LATIN SMALL LETTER X
+ 'y' # 0x0079 -> LATIN SMALL LETTER Y
+ 'z' # 0x007a -> LATIN SMALL LETTER Z
+ '{' # 0x007b -> LEFT CURLY BRACKET
+ '|' # 0x007c -> VERTICAL LINE
+ '}' # 0x007d -> RIGHT CURLY BRACKET
+ '~' # 0x007e -> TILDE
+ '\x7f' # 0x007f -> DELETE
+ '\u0410' # 0x0080 -> CYRILLIC CAPITAL LETTER A
+ '\u0411' # 0x0081 -> CYRILLIC CAPITAL LETTER BE
+ '\u0412' # 0x0082 -> CYRILLIC CAPITAL LETTER VE
+ '\u0413' # 0x0083 -> CYRILLIC CAPITAL LETTER GHE
+ '\u0414' # 0x0084 -> CYRILLIC CAPITAL LETTER DE
+ '\u0415' # 0x0085 -> CYRILLIC CAPITAL LETTER IE
+ '\u0416' # 0x0086 -> CYRILLIC CAPITAL LETTER ZHE
+ '\u0417' # 0x0087 -> CYRILLIC CAPITAL LETTER ZE
+ '\u0418' # 0x0088 -> CYRILLIC CAPITAL LETTER I
+ '\u0419' # 0x0089 -> CYRILLIC CAPITAL LETTER SHORT I
+ '\u041a' # 0x008a -> CYRILLIC CAPITAL LETTER KA
+ '\u041b' # 0x008b -> CYRILLIC CAPITAL LETTER EL
+ '\u041c' # 0x008c -> CYRILLIC CAPITAL LETTER EM
+ '\u041d' # 0x008d -> CYRILLIC CAPITAL LETTER EN
+ '\u041e' # 0x008e -> CYRILLIC CAPITAL LETTER O
+ '\u041f' # 0x008f -> CYRILLIC CAPITAL LETTER PE
+ '\u0420' # 0x0090 -> CYRILLIC CAPITAL LETTER ER
+ '\u0421' # 0x0091 -> CYRILLIC CAPITAL LETTER ES
+ '\u0422' # 0x0092 -> CYRILLIC CAPITAL LETTER TE
+ '\u0423' # 0x0093 -> CYRILLIC CAPITAL LETTER U
+ '\u0424' # 0x0094 -> CYRILLIC CAPITAL LETTER EF
+ '\u0425' # 0x0095 -> CYRILLIC CAPITAL LETTER HA
+ '\u0426' # 0x0096 -> CYRILLIC CAPITAL LETTER TSE
+ '\u0427' # 0x0097 -> CYRILLIC CAPITAL LETTER CHE
+ '\u0428' # 0x0098 -> CYRILLIC CAPITAL LETTER SHA
+ '\u0429' # 0x0099 -> CYRILLIC CAPITAL LETTER SHCHA
+ '\u042a' # 0x009a -> CYRILLIC CAPITAL LETTER HARD SIGN
+ '\u042b' # 0x009b -> CYRILLIC CAPITAL LETTER YERU
+ '\u042c' # 0x009c -> CYRILLIC CAPITAL LETTER SOFT SIGN
+ '\u042d' # 0x009d -> CYRILLIC CAPITAL LETTER E
+ '\u042e' # 0x009e -> CYRILLIC CAPITAL LETTER YU
+ '\u042f' # 0x009f -> CYRILLIC CAPITAL LETTER YA
+ '\u0430' # 0x00a0 -> CYRILLIC SMALL LETTER A
+ '\u0431' # 0x00a1 -> CYRILLIC SMALL LETTER BE
+ '\u0432' # 0x00a2 -> CYRILLIC SMALL LETTER VE
+ '\u0433' # 0x00a3 -> CYRILLIC SMALL LETTER GHE
+ '\u0434' # 0x00a4 -> CYRILLIC SMALL LETTER DE
+ '\u0435' # 0x00a5 -> CYRILLIC SMALL LETTER IE
+ '\u0436' # 0x00a6 -> CYRILLIC SMALL LETTER ZHE
+ '\u0437' # 0x00a7 -> CYRILLIC SMALL LETTER ZE
+ '\u0438' # 0x00a8 -> CYRILLIC SMALL LETTER I
+ '\u0439' # 0x00a9 -> CYRILLIC SMALL LETTER SHORT I
+ '\u043a' # 0x00aa -> CYRILLIC SMALL LETTER KA
+ '\u043b' # 0x00ab -> CYRILLIC SMALL LETTER EL
+ '\u043c' # 0x00ac -> CYRILLIC SMALL LETTER EM
+ '\u043d' # 0x00ad -> CYRILLIC SMALL LETTER EN
+ '\u043e' # 0x00ae -> CYRILLIC SMALL LETTER O
+ '\u043f' # 0x00af -> CYRILLIC SMALL LETTER PE
+ '\u2591' # 0x00b0 -> LIGHT SHADE
+ '\u2592' # 0x00b1 -> MEDIUM SHADE
+ '\u2593' # 0x00b2 -> DARK SHADE
+ '\u2502' # 0x00b3 -> BOX DRAWINGS LIGHT VERTICAL
+ '\u2524' # 0x00b4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
+ '\u2561' # 0x00b5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
+ '\u2562' # 0x00b6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
+ '\u2556' # 0x00b7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
+ '\u2555' # 0x00b8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
+ '\u2563' # 0x00b9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
+ '\u2551' # 0x00ba -> BOX DRAWINGS DOUBLE VERTICAL
+ '\u2557' # 0x00bb -> BOX DRAWINGS DOUBLE DOWN AND LEFT
+ '\u255d' # 0x00bc -> BOX DRAWINGS DOUBLE UP AND LEFT
+ '\u255c' # 0x00bd -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
+ '\u255b' # 0x00be -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
+ '\u2510' # 0x00bf -> BOX DRAWINGS LIGHT DOWN AND LEFT
+ '\u2514' # 0x00c0 -> BOX DRAWINGS LIGHT UP AND RIGHT
+ '\u2534' # 0x00c1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
+ '\u252c' # 0x00c2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+ '\u251c' # 0x00c3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+ '\u2500' # 0x00c4 -> BOX DRAWINGS LIGHT HORIZONTAL
+ '\u253c' # 0x00c5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+ '\u255e' # 0x00c6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
+ '\u255f' # 0x00c7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
+ '\u255a' # 0x00c8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
+ '\u2554' # 0x00c9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
+ '\u2569' # 0x00ca -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
+ '\u2566' # 0x00cb -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
+ '\u2560' # 0x00cc -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
+ '\u2550' # 0x00cd -> BOX DRAWINGS DOUBLE HORIZONTAL
+ '\u256c' # 0x00ce -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
+ '\u2567' # 0x00cf -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
+ '\u2568' # 0x00d0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
+ '\u2564' # 0x00d1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
+ '\u2565' # 0x00d2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
+ '\u2559' # 0x00d3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
+ '\u2558' # 0x00d4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
+ '\u2552' # 0x00d5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
+ '\u2553' # 0x00d6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
+ '\u256b' # 0x00d7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
+ '\u256a' # 0x00d8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
+ '\u2518' # 0x00d9 -> BOX DRAWINGS LIGHT UP AND LEFT
+ '\u250c' # 0x00da -> BOX DRAWINGS LIGHT DOWN AND RIGHT
+ '\u2588' # 0x00db -> FULL BLOCK
+ '\u2584' # 0x00dc -> LOWER HALF BLOCK
+ '\u258c' # 0x00dd -> LEFT HALF BLOCK
+ '\u2590' # 0x00de -> RIGHT HALF BLOCK
+ '\u2580' # 0x00df -> UPPER HALF BLOCK
+ '\u0440' # 0x00e0 -> CYRILLIC SMALL LETTER ER
+ '\u0441' # 0x00e1 -> CYRILLIC SMALL LETTER ES
+ '\u0442' # 0x00e2 -> CYRILLIC SMALL LETTER TE
+ '\u0443' # 0x00e3 -> CYRILLIC SMALL LETTER U
+ '\u0444' # 0x00e4 -> CYRILLIC SMALL LETTER EF
+ '\u0445' # 0x00e5 -> CYRILLIC SMALL LETTER HA
+ '\u0446' # 0x00e6 -> CYRILLIC SMALL LETTER TSE
+ '\u0447' # 0x00e7 -> CYRILLIC SMALL LETTER CHE
+ '\u0448' # 0x00e8 -> CYRILLIC SMALL LETTER SHA
+ '\u0449' # 0x00e9 -> CYRILLIC SMALL LETTER SHCHA
+ '\u044a' # 0x00ea -> CYRILLIC SMALL LETTER HARD SIGN
+ '\u044b' # 0x00eb -> CYRILLIC SMALL LETTER YERU
+ '\u044c' # 0x00ec -> CYRILLIC SMALL LETTER SOFT SIGN
+ '\u044d' # 0x00ed -> CYRILLIC SMALL LETTER E
+ '\u044e' # 0x00ee -> CYRILLIC SMALL LETTER YU
+ '\u044f' # 0x00ef -> CYRILLIC SMALL LETTER YA
+ '\u0401' # 0x00f0 -> CYRILLIC CAPITAL LETTER IO
+ '\u0451' # 0x00f1 -> CYRILLIC SMALL LETTER IO
+ '\u0404' # 0x00f2 -> CYRILLIC CAPITAL LETTER UKRAINIAN IE
+ '\u0454' # 0x00f3 -> CYRILLIC SMALL LETTER UKRAINIAN IE
+ '\u0407' # 0x00f4 -> CYRILLIC CAPITAL LETTER YI
+ '\u0457' # 0x00f5 -> CYRILLIC SMALL LETTER YI
+ '\u040e' # 0x00f6 -> CYRILLIC CAPITAL LETTER SHORT U
+ '\u045e' # 0x00f7 -> CYRILLIC SMALL LETTER SHORT U
+ '\xb0' # 0x00f8 -> DEGREE SIGN
+ '\u2219' # 0x00f9 -> BULLET OPERATOR
+ '\xb7' # 0x00fa -> MIDDLE DOT
+ '\u221a' # 0x00fb -> SQUARE ROOT
+ '\u2116' # 0x00fc -> NUMERO SIGN
+ '\xa4' # 0x00fd -> CURRENCY SIGN
+ '\u25a0' # 0x00fe -> BLACK SQUARE
+ '\xa0' # 0x00ff -> NO-BREAK SPACE
)
### Encoding Map