~inkscape.dev/inkscape-devlibs64/trunk

« back to all changes in this revision

Viewing changes to python/Lib/encodings/iso8859_8.py

  • Committer: Eduard Braun
  • Date: 2016-10-22 16:51:19 UTC
  • Revision ID: eduard.braun2@gmx.de-20161022165119-9eosgy6lp8j1kzli
Update Python to version 2.7.12

Included modules:
  coverage 4.2
  lxml 3.6.4
  numpy 1.11.2
  scour 0.35
  six 1.10.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
""" Python Character Mapping Codec iso8859_8 generated from 'MAPPINGS/ISO8859/8859-8.TXT' with gencodec.py.
2
 
 
3
 
"""#"
4
 
 
5
 
import codecs
6
 
 
7
 
### Codec APIs
8
 
 
9
 
class Codec(codecs.Codec):
10
 
 
11
 
    def encode(self,input,errors='strict'):
12
 
        return codecs.charmap_encode(input,errors,encoding_table)
13
 
 
14
 
    def decode(self,input,errors='strict'):
15
 
        return codecs.charmap_decode(input,errors,decoding_table)
16
 
 
17
 
class IncrementalEncoder(codecs.IncrementalEncoder):
18
 
    def encode(self, input, final=False):
19
 
        return codecs.charmap_encode(input,self.errors,encoding_table)[0]
20
 
 
21
 
class IncrementalDecoder(codecs.IncrementalDecoder):
22
 
    def decode(self, input, final=False):
23
 
        return codecs.charmap_decode(input,self.errors,decoding_table)[0]
24
 
 
25
 
class StreamWriter(Codec,codecs.StreamWriter):
26
 
    pass
27
 
 
28
 
class StreamReader(Codec,codecs.StreamReader):
29
 
    pass
30
 
 
31
 
### encodings module API
32
 
 
33
 
def getregentry():
34
 
    return codecs.CodecInfo(
35
 
        name='iso8859-8',
36
 
        encode=Codec().encode,
37
 
        decode=Codec().decode,
38
 
        incrementalencoder=IncrementalEncoder,
39
 
        incrementaldecoder=IncrementalDecoder,
40
 
        streamreader=StreamReader,
41
 
        streamwriter=StreamWriter,
42
 
    )
43
 
 
44
 
 
45
 
### Decoding Table
46
 
 
47
 
decoding_table = (
48
 
    u'\x00'     #  0x00 -> NULL
49
 
    u'\x01'     #  0x01 -> START OF HEADING
50
 
    u'\x02'     #  0x02 -> START OF TEXT
51
 
    u'\x03'     #  0x03 -> END OF TEXT
52
 
    u'\x04'     #  0x04 -> END OF TRANSMISSION
53
 
    u'\x05'     #  0x05 -> ENQUIRY
54
 
    u'\x06'     #  0x06 -> ACKNOWLEDGE
55
 
    u'\x07'     #  0x07 -> BELL
56
 
    u'\x08'     #  0x08 -> BACKSPACE
57
 
    u'\t'       #  0x09 -> HORIZONTAL TABULATION
58
 
    u'\n'       #  0x0A -> LINE FEED
59
 
    u'\x0b'     #  0x0B -> VERTICAL TABULATION
60
 
    u'\x0c'     #  0x0C -> FORM FEED
61
 
    u'\r'       #  0x0D -> CARRIAGE RETURN
62
 
    u'\x0e'     #  0x0E -> SHIFT OUT
63
 
    u'\x0f'     #  0x0F -> SHIFT IN
64
 
    u'\x10'     #  0x10 -> DATA LINK ESCAPE
65
 
    u'\x11'     #  0x11 -> DEVICE CONTROL ONE
66
 
    u'\x12'     #  0x12 -> DEVICE CONTROL TWO
67
 
    u'\x13'     #  0x13 -> DEVICE CONTROL THREE
68
 
    u'\x14'     #  0x14 -> DEVICE CONTROL FOUR
69
 
    u'\x15'     #  0x15 -> NEGATIVE ACKNOWLEDGE
70
 
    u'\x16'     #  0x16 -> SYNCHRONOUS IDLE
71
 
    u'\x17'     #  0x17 -> END OF TRANSMISSION BLOCK
72
 
    u'\x18'     #  0x18 -> CANCEL
73
 
    u'\x19'     #  0x19 -> END OF MEDIUM
74
 
    u'\x1a'     #  0x1A -> SUBSTITUTE
75
 
    u'\x1b'     #  0x1B -> ESCAPE
76
 
    u'\x1c'     #  0x1C -> FILE SEPARATOR
77
 
    u'\x1d'     #  0x1D -> GROUP SEPARATOR
78
 
    u'\x1e'     #  0x1E -> RECORD SEPARATOR
79
 
    u'\x1f'     #  0x1F -> UNIT SEPARATOR
80
 
    u' '        #  0x20 -> SPACE
81
 
    u'!'        #  0x21 -> EXCLAMATION MARK
82
 
    u'"'        #  0x22 -> QUOTATION MARK
83
 
    u'#'        #  0x23 -> NUMBER SIGN
84
 
    u'$'        #  0x24 -> DOLLAR SIGN
85
 
    u'%'        #  0x25 -> PERCENT SIGN
86
 
    u'&'        #  0x26 -> AMPERSAND
87
 
    u"'"        #  0x27 -> APOSTROPHE
88
 
    u'('        #  0x28 -> LEFT PARENTHESIS
89
 
    u')'        #  0x29 -> RIGHT PARENTHESIS
90
 
    u'*'        #  0x2A -> ASTERISK
91
 
    u'+'        #  0x2B -> PLUS SIGN
92
 
    u','        #  0x2C -> COMMA
93
 
    u'-'        #  0x2D -> HYPHEN-MINUS
94
 
    u'.'        #  0x2E -> FULL STOP
95
 
    u'/'        #  0x2F -> SOLIDUS
96
 
    u'0'        #  0x30 -> DIGIT ZERO
97
 
    u'1'        #  0x31 -> DIGIT ONE
98
 
    u'2'        #  0x32 -> DIGIT TWO
99
 
    u'3'        #  0x33 -> DIGIT THREE
100
 
    u'4'        #  0x34 -> DIGIT FOUR
101
 
    u'5'        #  0x35 -> DIGIT FIVE
102
 
    u'6'        #  0x36 -> DIGIT SIX
103
 
    u'7'        #  0x37 -> DIGIT SEVEN
104
 
    u'8'        #  0x38 -> DIGIT EIGHT
105
 
    u'9'        #  0x39 -> DIGIT NINE
106
 
    u':'        #  0x3A -> COLON
107
 
    u';'        #  0x3B -> SEMICOLON
108
 
    u'<'        #  0x3C -> LESS-THAN SIGN
109
 
    u'='        #  0x3D -> EQUALS SIGN
110
 
    u'>'        #  0x3E -> GREATER-THAN SIGN
111
 
    u'?'        #  0x3F -> QUESTION MARK
112
 
    u'@'        #  0x40 -> COMMERCIAL AT
113
 
    u'A'        #  0x41 -> LATIN CAPITAL LETTER A
114
 
    u'B'        #  0x42 -> LATIN CAPITAL LETTER B
115
 
    u'C'        #  0x43 -> LATIN CAPITAL LETTER C
116
 
    u'D'        #  0x44 -> LATIN CAPITAL LETTER D
117
 
    u'E'        #  0x45 -> LATIN CAPITAL LETTER E
118
 
    u'F'        #  0x46 -> LATIN CAPITAL LETTER F
119
 
    u'G'        #  0x47 -> LATIN CAPITAL LETTER G
120
 
    u'H'        #  0x48 -> LATIN CAPITAL LETTER H
121
 
    u'I'        #  0x49 -> LATIN CAPITAL LETTER I
122
 
    u'J'        #  0x4A -> LATIN CAPITAL LETTER J
123
 
    u'K'        #  0x4B -> LATIN CAPITAL LETTER K
124
 
    u'L'        #  0x4C -> LATIN CAPITAL LETTER L
125
 
    u'M'        #  0x4D -> LATIN CAPITAL LETTER M
126
 
    u'N'        #  0x4E -> LATIN CAPITAL LETTER N
127
 
    u'O'        #  0x4F -> LATIN CAPITAL LETTER O
128
 
    u'P'        #  0x50 -> LATIN CAPITAL LETTER P
129
 
    u'Q'        #  0x51 -> LATIN CAPITAL LETTER Q
130
 
    u'R'        #  0x52 -> LATIN CAPITAL LETTER R
131
 
    u'S'        #  0x53 -> LATIN CAPITAL LETTER S
132
 
    u'T'        #  0x54 -> LATIN CAPITAL LETTER T
133
 
    u'U'        #  0x55 -> LATIN CAPITAL LETTER U
134
 
    u'V'        #  0x56 -> LATIN CAPITAL LETTER V
135
 
    u'W'        #  0x57 -> LATIN CAPITAL LETTER W
136
 
    u'X'        #  0x58 -> LATIN CAPITAL LETTER X
137
 
    u'Y'        #  0x59 -> LATIN CAPITAL LETTER Y
138
 
    u'Z'        #  0x5A -> LATIN CAPITAL LETTER Z
139
 
    u'['        #  0x5B -> LEFT SQUARE BRACKET
140
 
    u'\\'       #  0x5C -> REVERSE SOLIDUS
141
 
    u']'        #  0x5D -> RIGHT SQUARE BRACKET
142
 
    u'^'        #  0x5E -> CIRCUMFLEX ACCENT
143
 
    u'_'        #  0x5F -> LOW LINE
144
 
    u'`'        #  0x60 -> GRAVE ACCENT
145
 
    u'a'        #  0x61 -> LATIN SMALL LETTER A
146
 
    u'b'        #  0x62 -> LATIN SMALL LETTER B
147
 
    u'c'        #  0x63 -> LATIN SMALL LETTER C
148
 
    u'd'        #  0x64 -> LATIN SMALL LETTER D
149
 
    u'e'        #  0x65 -> LATIN SMALL LETTER E
150
 
    u'f'        #  0x66 -> LATIN SMALL LETTER F
151
 
    u'g'        #  0x67 -> LATIN SMALL LETTER G
152
 
    u'h'        #  0x68 -> LATIN SMALL LETTER H
153
 
    u'i'        #  0x69 -> LATIN SMALL LETTER I
154
 
    u'j'        #  0x6A -> LATIN SMALL LETTER J
155
 
    u'k'        #  0x6B -> LATIN SMALL LETTER K
156
 
    u'l'        #  0x6C -> LATIN SMALL LETTER L
157
 
    u'm'        #  0x6D -> LATIN SMALL LETTER M
158
 
    u'n'        #  0x6E -> LATIN SMALL LETTER N
159
 
    u'o'        #  0x6F -> LATIN SMALL LETTER O
160
 
    u'p'        #  0x70 -> LATIN SMALL LETTER P
161
 
    u'q'        #  0x71 -> LATIN SMALL LETTER Q
162
 
    u'r'        #  0x72 -> LATIN SMALL LETTER R
163
 
    u's'        #  0x73 -> LATIN SMALL LETTER S
164
 
    u't'        #  0x74 -> LATIN SMALL LETTER T
165
 
    u'u'        #  0x75 -> LATIN SMALL LETTER U
166
 
    u'v'        #  0x76 -> LATIN SMALL LETTER V
167
 
    u'w'        #  0x77 -> LATIN SMALL LETTER W
168
 
    u'x'        #  0x78 -> LATIN SMALL LETTER X
169
 
    u'y'        #  0x79 -> LATIN SMALL LETTER Y
170
 
    u'z'        #  0x7A -> LATIN SMALL LETTER Z
171
 
    u'{'        #  0x7B -> LEFT CURLY BRACKET
172
 
    u'|'        #  0x7C -> VERTICAL LINE
173
 
    u'}'        #  0x7D -> RIGHT CURLY BRACKET
174
 
    u'~'        #  0x7E -> TILDE
175
 
    u'\x7f'     #  0x7F -> DELETE
176
 
    u'\x80'     #  0x80 -> <control>
177
 
    u'\x81'     #  0x81 -> <control>
178
 
    u'\x82'     #  0x82 -> <control>
179
 
    u'\x83'     #  0x83 -> <control>
180
 
    u'\x84'     #  0x84 -> <control>
181
 
    u'\x85'     #  0x85 -> <control>
182
 
    u'\x86'     #  0x86 -> <control>
183
 
    u'\x87'     #  0x87 -> <control>
184
 
    u'\x88'     #  0x88 -> <control>
185
 
    u'\x89'     #  0x89 -> <control>
186
 
    u'\x8a'     #  0x8A -> <control>
187
 
    u'\x8b'     #  0x8B -> <control>
188
 
    u'\x8c'     #  0x8C -> <control>
189
 
    u'\x8d'     #  0x8D -> <control>
190
 
    u'\x8e'     #  0x8E -> <control>
191
 
    u'\x8f'     #  0x8F -> <control>
192
 
    u'\x90'     #  0x90 -> <control>
193
 
    u'\x91'     #  0x91 -> <control>
194
 
    u'\x92'     #  0x92 -> <control>
195
 
    u'\x93'     #  0x93 -> <control>
196
 
    u'\x94'     #  0x94 -> <control>
197
 
    u'\x95'     #  0x95 -> <control>
198
 
    u'\x96'     #  0x96 -> <control>
199
 
    u'\x97'     #  0x97 -> <control>
200
 
    u'\x98'     #  0x98 -> <control>
201
 
    u'\x99'     #  0x99 -> <control>
202
 
    u'\x9a'     #  0x9A -> <control>
203
 
    u'\x9b'     #  0x9B -> <control>
204
 
    u'\x9c'     #  0x9C -> <control>
205
 
    u'\x9d'     #  0x9D -> <control>
206
 
    u'\x9e'     #  0x9E -> <control>
207
 
    u'\x9f'     #  0x9F -> <control>
208
 
    u'\xa0'     #  0xA0 -> NO-BREAK SPACE
209
 
    u'\ufffe'
210
 
    u'\xa2'     #  0xA2 -> CENT SIGN
211
 
    u'\xa3'     #  0xA3 -> POUND SIGN
212
 
    u'\xa4'     #  0xA4 -> CURRENCY SIGN
213
 
    u'\xa5'     #  0xA5 -> YEN SIGN
214
 
    u'\xa6'     #  0xA6 -> BROKEN BAR
215
 
    u'\xa7'     #  0xA7 -> SECTION SIGN
216
 
    u'\xa8'     #  0xA8 -> DIAERESIS
217
 
    u'\xa9'     #  0xA9 -> COPYRIGHT SIGN
218
 
    u'\xd7'     #  0xAA -> MULTIPLICATION SIGN
219
 
    u'\xab'     #  0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
220
 
    u'\xac'     #  0xAC -> NOT SIGN
221
 
    u'\xad'     #  0xAD -> SOFT HYPHEN
222
 
    u'\xae'     #  0xAE -> REGISTERED SIGN
223
 
    u'\xaf'     #  0xAF -> MACRON
224
 
    u'\xb0'     #  0xB0 -> DEGREE SIGN
225
 
    u'\xb1'     #  0xB1 -> PLUS-MINUS SIGN
226
 
    u'\xb2'     #  0xB2 -> SUPERSCRIPT TWO
227
 
    u'\xb3'     #  0xB3 -> SUPERSCRIPT THREE
228
 
    u'\xb4'     #  0xB4 -> ACUTE ACCENT
229
 
    u'\xb5'     #  0xB5 -> MICRO SIGN
230
 
    u'\xb6'     #  0xB6 -> PILCROW SIGN
231
 
    u'\xb7'     #  0xB7 -> MIDDLE DOT
232
 
    u'\xb8'     #  0xB8 -> CEDILLA
233
 
    u'\xb9'     #  0xB9 -> SUPERSCRIPT ONE
234
 
    u'\xf7'     #  0xBA -> DIVISION SIGN
235
 
    u'\xbb'     #  0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
236
 
    u'\xbc'     #  0xBC -> VULGAR FRACTION ONE QUARTER
237
 
    u'\xbd'     #  0xBD -> VULGAR FRACTION ONE HALF
238
 
    u'\xbe'     #  0xBE -> VULGAR FRACTION THREE QUARTERS
239
 
    u'\ufffe'
240
 
    u'\ufffe'
241
 
    u'\ufffe'
242
 
    u'\ufffe'
243
 
    u'\ufffe'
244
 
    u'\ufffe'
245
 
    u'\ufffe'
246
 
    u'\ufffe'
247
 
    u'\ufffe'
248
 
    u'\ufffe'
249
 
    u'\ufffe'
250
 
    u'\ufffe'
251
 
    u'\ufffe'
252
 
    u'\ufffe'
253
 
    u'\ufffe'
254
 
    u'\ufffe'
255
 
    u'\ufffe'
256
 
    u'\ufffe'
257
 
    u'\ufffe'
258
 
    u'\ufffe'
259
 
    u'\ufffe'
260
 
    u'\ufffe'
261
 
    u'\ufffe'
262
 
    u'\ufffe'
263
 
    u'\ufffe'
264
 
    u'\ufffe'
265
 
    u'\ufffe'
266
 
    u'\ufffe'
267
 
    u'\ufffe'
268
 
    u'\ufffe'
269
 
    u'\ufffe'
270
 
    u'\ufffe'
271
 
    u'\u2017'   #  0xDF -> DOUBLE LOW LINE
272
 
    u'\u05d0'   #  0xE0 -> HEBREW LETTER ALEF
273
 
    u'\u05d1'   #  0xE1 -> HEBREW LETTER BET
274
 
    u'\u05d2'   #  0xE2 -> HEBREW LETTER GIMEL
275
 
    u'\u05d3'   #  0xE3 -> HEBREW LETTER DALET
276
 
    u'\u05d4'   #  0xE4 -> HEBREW LETTER HE
277
 
    u'\u05d5'   #  0xE5 -> HEBREW LETTER VAV
278
 
    u'\u05d6'   #  0xE6 -> HEBREW LETTER ZAYIN
279
 
    u'\u05d7'   #  0xE7 -> HEBREW LETTER HET
280
 
    u'\u05d8'   #  0xE8 -> HEBREW LETTER TET
281
 
    u'\u05d9'   #  0xE9 -> HEBREW LETTER YOD
282
 
    u'\u05da'   #  0xEA -> HEBREW LETTER FINAL KAF
283
 
    u'\u05db'   #  0xEB -> HEBREW LETTER KAF
284
 
    u'\u05dc'   #  0xEC -> HEBREW LETTER LAMED
285
 
    u'\u05dd'   #  0xED -> HEBREW LETTER FINAL MEM
286
 
    u'\u05de'   #  0xEE -> HEBREW LETTER MEM
287
 
    u'\u05df'   #  0xEF -> HEBREW LETTER FINAL NUN
288
 
    u'\u05e0'   #  0xF0 -> HEBREW LETTER NUN
289
 
    u'\u05e1'   #  0xF1 -> HEBREW LETTER SAMEKH
290
 
    u'\u05e2'   #  0xF2 -> HEBREW LETTER AYIN
291
 
    u'\u05e3'   #  0xF3 -> HEBREW LETTER FINAL PE
292
 
    u'\u05e4'   #  0xF4 -> HEBREW LETTER PE
293
 
    u'\u05e5'   #  0xF5 -> HEBREW LETTER FINAL TSADI
294
 
    u'\u05e6'   #  0xF6 -> HEBREW LETTER TSADI
295
 
    u'\u05e7'   #  0xF7 -> HEBREW LETTER QOF
296
 
    u'\u05e8'   #  0xF8 -> HEBREW LETTER RESH
297
 
    u'\u05e9'   #  0xF9 -> HEBREW LETTER SHIN
298
 
    u'\u05ea'   #  0xFA -> HEBREW LETTER TAV
299
 
    u'\ufffe'
300
 
    u'\ufffe'
301
 
    u'\u200e'   #  0xFD -> LEFT-TO-RIGHT MARK
302
 
    u'\u200f'   #  0xFE -> RIGHT-TO-LEFT MARK
303
 
    u'\ufffe'
304
 
)
305
 
 
306
 
### Encoding table
307
 
encoding_table=codecs.charmap_build(decoding_table)
 
1
""" Python Character Mapping Codec iso8859_8 generated from 'MAPPINGS/ISO8859/8859-8.TXT' with gencodec.py.
 
2
 
 
3
"""#"
 
4
 
 
5
import codecs
 
6
 
 
7
### Codec APIs
 
8
 
 
9
class Codec(codecs.Codec):
 
10
 
 
11
    def encode(self,input,errors='strict'):
 
12
        return codecs.charmap_encode(input,errors,encoding_table)
 
13
 
 
14
    def decode(self,input,errors='strict'):
 
15
        return codecs.charmap_decode(input,errors,decoding_table)
 
16
 
 
17
class IncrementalEncoder(codecs.IncrementalEncoder):
 
18
    def encode(self, input, final=False):
 
19
        return codecs.charmap_encode(input,self.errors,encoding_table)[0]
 
20
 
 
21
class IncrementalDecoder(codecs.IncrementalDecoder):
 
22
    def decode(self, input, final=False):
 
23
        return codecs.charmap_decode(input,self.errors,decoding_table)[0]
 
24
 
 
25
class StreamWriter(Codec,codecs.StreamWriter):
 
26
    pass
 
27
 
 
28
class StreamReader(Codec,codecs.StreamReader):
 
29
    pass
 
30
 
 
31
### encodings module API
 
32
 
 
33
def getregentry():
 
34
    return codecs.CodecInfo(
 
35
        name='iso8859-8',
 
36
        encode=Codec().encode,
 
37
        decode=Codec().decode,
 
38
        incrementalencoder=IncrementalEncoder,
 
39
        incrementaldecoder=IncrementalDecoder,
 
40
        streamreader=StreamReader,
 
41
        streamwriter=StreamWriter,
 
42
    )
 
43
 
 
44
 
 
45
### Decoding Table
 
46
 
 
47
decoding_table = (
 
48
    u'\x00'     #  0x00 -> NULL
 
49
    u'\x01'     #  0x01 -> START OF HEADING
 
50
    u'\x02'     #  0x02 -> START OF TEXT
 
51
    u'\x03'     #  0x03 -> END OF TEXT
 
52
    u'\x04'     #  0x04 -> END OF TRANSMISSION
 
53
    u'\x05'     #  0x05 -> ENQUIRY
 
54
    u'\x06'     #  0x06 -> ACKNOWLEDGE
 
55
    u'\x07'     #  0x07 -> BELL
 
56
    u'\x08'     #  0x08 -> BACKSPACE
 
57
    u'\t'       #  0x09 -> HORIZONTAL TABULATION
 
58
    u'\n'       #  0x0A -> LINE FEED
 
59
    u'\x0b'     #  0x0B -> VERTICAL TABULATION
 
60
    u'\x0c'     #  0x0C -> FORM FEED
 
61
    u'\r'       #  0x0D -> CARRIAGE RETURN
 
62
    u'\x0e'     #  0x0E -> SHIFT OUT
 
63
    u'\x0f'     #  0x0F -> SHIFT IN
 
64
    u'\x10'     #  0x10 -> DATA LINK ESCAPE
 
65
    u'\x11'     #  0x11 -> DEVICE CONTROL ONE
 
66
    u'\x12'     #  0x12 -> DEVICE CONTROL TWO
 
67
    u'\x13'     #  0x13 -> DEVICE CONTROL THREE
 
68
    u'\x14'     #  0x14 -> DEVICE CONTROL FOUR
 
69
    u'\x15'     #  0x15 -> NEGATIVE ACKNOWLEDGE
 
70
    u'\x16'     #  0x16 -> SYNCHRONOUS IDLE
 
71
    u'\x17'     #  0x17 -> END OF TRANSMISSION BLOCK
 
72
    u'\x18'     #  0x18 -> CANCEL
 
73
    u'\x19'     #  0x19 -> END OF MEDIUM
 
74
    u'\x1a'     #  0x1A -> SUBSTITUTE
 
75
    u'\x1b'     #  0x1B -> ESCAPE
 
76
    u'\x1c'     #  0x1C -> FILE SEPARATOR
 
77
    u'\x1d'     #  0x1D -> GROUP SEPARATOR
 
78
    u'\x1e'     #  0x1E -> RECORD SEPARATOR
 
79
    u'\x1f'     #  0x1F -> UNIT SEPARATOR
 
80
    u' '        #  0x20 -> SPACE
 
81
    u'!'        #  0x21 -> EXCLAMATION MARK
 
82
    u'"'        #  0x22 -> QUOTATION MARK
 
83
    u'#'        #  0x23 -> NUMBER SIGN
 
84
    u'$'        #  0x24 -> DOLLAR SIGN
 
85
    u'%'        #  0x25 -> PERCENT SIGN
 
86
    u'&'        #  0x26 -> AMPERSAND
 
87
    u"'"        #  0x27 -> APOSTROPHE
 
88
    u'('        #  0x28 -> LEFT PARENTHESIS
 
89
    u')'        #  0x29 -> RIGHT PARENTHESIS
 
90
    u'*'        #  0x2A -> ASTERISK
 
91
    u'+'        #  0x2B -> PLUS SIGN
 
92
    u','        #  0x2C -> COMMA
 
93
    u'-'        #  0x2D -> HYPHEN-MINUS
 
94
    u'.'        #  0x2E -> FULL STOP
 
95
    u'/'        #  0x2F -> SOLIDUS
 
96
    u'0'        #  0x30 -> DIGIT ZERO
 
97
    u'1'        #  0x31 -> DIGIT ONE
 
98
    u'2'        #  0x32 -> DIGIT TWO
 
99
    u'3'        #  0x33 -> DIGIT THREE
 
100
    u'4'        #  0x34 -> DIGIT FOUR
 
101
    u'5'        #  0x35 -> DIGIT FIVE
 
102
    u'6'        #  0x36 -> DIGIT SIX
 
103
    u'7'        #  0x37 -> DIGIT SEVEN
 
104
    u'8'        #  0x38 -> DIGIT EIGHT
 
105
    u'9'        #  0x39 -> DIGIT NINE
 
106
    u':'        #  0x3A -> COLON
 
107
    u';'        #  0x3B -> SEMICOLON
 
108
    u'<'        #  0x3C -> LESS-THAN SIGN
 
109
    u'='        #  0x3D -> EQUALS SIGN
 
110
    u'>'        #  0x3E -> GREATER-THAN SIGN
 
111
    u'?'        #  0x3F -> QUESTION MARK
 
112
    u'@'        #  0x40 -> COMMERCIAL AT
 
113
    u'A'        #  0x41 -> LATIN CAPITAL LETTER A
 
114
    u'B'        #  0x42 -> LATIN CAPITAL LETTER B
 
115
    u'C'        #  0x43 -> LATIN CAPITAL LETTER C
 
116
    u'D'        #  0x44 -> LATIN CAPITAL LETTER D
 
117
    u'E'        #  0x45 -> LATIN CAPITAL LETTER E
 
118
    u'F'        #  0x46 -> LATIN CAPITAL LETTER F
 
119
    u'G'        #  0x47 -> LATIN CAPITAL LETTER G
 
120
    u'H'        #  0x48 -> LATIN CAPITAL LETTER H
 
121
    u'I'        #  0x49 -> LATIN CAPITAL LETTER I
 
122
    u'J'        #  0x4A -> LATIN CAPITAL LETTER J
 
123
    u'K'        #  0x4B -> LATIN CAPITAL LETTER K
 
124
    u'L'        #  0x4C -> LATIN CAPITAL LETTER L
 
125
    u'M'        #  0x4D -> LATIN CAPITAL LETTER M
 
126
    u'N'        #  0x4E -> LATIN CAPITAL LETTER N
 
127
    u'O'        #  0x4F -> LATIN CAPITAL LETTER O
 
128
    u'P'        #  0x50 -> LATIN CAPITAL LETTER P
 
129
    u'Q'        #  0x51 -> LATIN CAPITAL LETTER Q
 
130
    u'R'        #  0x52 -> LATIN CAPITAL LETTER R
 
131
    u'S'        #  0x53 -> LATIN CAPITAL LETTER S
 
132
    u'T'        #  0x54 -> LATIN CAPITAL LETTER T
 
133
    u'U'        #  0x55 -> LATIN CAPITAL LETTER U
 
134
    u'V'        #  0x56 -> LATIN CAPITAL LETTER V
 
135
    u'W'        #  0x57 -> LATIN CAPITAL LETTER W
 
136
    u'X'        #  0x58 -> LATIN CAPITAL LETTER X
 
137
    u'Y'        #  0x59 -> LATIN CAPITAL LETTER Y
 
138
    u'Z'        #  0x5A -> LATIN CAPITAL LETTER Z
 
139
    u'['        #  0x5B -> LEFT SQUARE BRACKET
 
140
    u'\\'       #  0x5C -> REVERSE SOLIDUS
 
141
    u']'        #  0x5D -> RIGHT SQUARE BRACKET
 
142
    u'^'        #  0x5E -> CIRCUMFLEX ACCENT
 
143
    u'_'        #  0x5F -> LOW LINE
 
144
    u'`'        #  0x60 -> GRAVE ACCENT
 
145
    u'a'        #  0x61 -> LATIN SMALL LETTER A
 
146
    u'b'        #  0x62 -> LATIN SMALL LETTER B
 
147
    u'c'        #  0x63 -> LATIN SMALL LETTER C
 
148
    u'd'        #  0x64 -> LATIN SMALL LETTER D
 
149
    u'e'        #  0x65 -> LATIN SMALL LETTER E
 
150
    u'f'        #  0x66 -> LATIN SMALL LETTER F
 
151
    u'g'        #  0x67 -> LATIN SMALL LETTER G
 
152
    u'h'        #  0x68 -> LATIN SMALL LETTER H
 
153
    u'i'        #  0x69 -> LATIN SMALL LETTER I
 
154
    u'j'        #  0x6A -> LATIN SMALL LETTER J
 
155
    u'k'        #  0x6B -> LATIN SMALL LETTER K
 
156
    u'l'        #  0x6C -> LATIN SMALL LETTER L
 
157
    u'm'        #  0x6D -> LATIN SMALL LETTER M
 
158
    u'n'        #  0x6E -> LATIN SMALL LETTER N
 
159
    u'o'        #  0x6F -> LATIN SMALL LETTER O
 
160
    u'p'        #  0x70 -> LATIN SMALL LETTER P
 
161
    u'q'        #  0x71 -> LATIN SMALL LETTER Q
 
162
    u'r'        #  0x72 -> LATIN SMALL LETTER R
 
163
    u's'        #  0x73 -> LATIN SMALL LETTER S
 
164
    u't'        #  0x74 -> LATIN SMALL LETTER T
 
165
    u'u'        #  0x75 -> LATIN SMALL LETTER U
 
166
    u'v'        #  0x76 -> LATIN SMALL LETTER V
 
167
    u'w'        #  0x77 -> LATIN SMALL LETTER W
 
168
    u'x'        #  0x78 -> LATIN SMALL LETTER X
 
169
    u'y'        #  0x79 -> LATIN SMALL LETTER Y
 
170
    u'z'        #  0x7A -> LATIN SMALL LETTER Z
 
171
    u'{'        #  0x7B -> LEFT CURLY BRACKET
 
172
    u'|'        #  0x7C -> VERTICAL LINE
 
173
    u'}'        #  0x7D -> RIGHT CURLY BRACKET
 
174
    u'~'        #  0x7E -> TILDE
 
175
    u'\x7f'     #  0x7F -> DELETE
 
176
    u'\x80'     #  0x80 -> <control>
 
177
    u'\x81'     #  0x81 -> <control>
 
178
    u'\x82'     #  0x82 -> <control>
 
179
    u'\x83'     #  0x83 -> <control>
 
180
    u'\x84'     #  0x84 -> <control>
 
181
    u'\x85'     #  0x85 -> <control>
 
182
    u'\x86'     #  0x86 -> <control>
 
183
    u'\x87'     #  0x87 -> <control>
 
184
    u'\x88'     #  0x88 -> <control>
 
185
    u'\x89'     #  0x89 -> <control>
 
186
    u'\x8a'     #  0x8A -> <control>
 
187
    u'\x8b'     #  0x8B -> <control>
 
188
    u'\x8c'     #  0x8C -> <control>
 
189
    u'\x8d'     #  0x8D -> <control>
 
190
    u'\x8e'     #  0x8E -> <control>
 
191
    u'\x8f'     #  0x8F -> <control>
 
192
    u'\x90'     #  0x90 -> <control>
 
193
    u'\x91'     #  0x91 -> <control>
 
194
    u'\x92'     #  0x92 -> <control>
 
195
    u'\x93'     #  0x93 -> <control>
 
196
    u'\x94'     #  0x94 -> <control>
 
197
    u'\x95'     #  0x95 -> <control>
 
198
    u'\x96'     #  0x96 -> <control>
 
199
    u'\x97'     #  0x97 -> <control>
 
200
    u'\x98'     #  0x98 -> <control>
 
201
    u'\x99'     #  0x99 -> <control>
 
202
    u'\x9a'     #  0x9A -> <control>
 
203
    u'\x9b'     #  0x9B -> <control>
 
204
    u'\x9c'     #  0x9C -> <control>
 
205
    u'\x9d'     #  0x9D -> <control>
 
206
    u'\x9e'     #  0x9E -> <control>
 
207
    u'\x9f'     #  0x9F -> <control>
 
208
    u'\xa0'     #  0xA0 -> NO-BREAK SPACE
 
209
    u'\ufffe'
 
210
    u'\xa2'     #  0xA2 -> CENT SIGN
 
211
    u'\xa3'     #  0xA3 -> POUND SIGN
 
212
    u'\xa4'     #  0xA4 -> CURRENCY SIGN
 
213
    u'\xa5'     #  0xA5 -> YEN SIGN
 
214
    u'\xa6'     #  0xA6 -> BROKEN BAR
 
215
    u'\xa7'     #  0xA7 -> SECTION SIGN
 
216
    u'\xa8'     #  0xA8 -> DIAERESIS
 
217
    u'\xa9'     #  0xA9 -> COPYRIGHT SIGN
 
218
    u'\xd7'     #  0xAA -> MULTIPLICATION SIGN
 
219
    u'\xab'     #  0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
 
220
    u'\xac'     #  0xAC -> NOT SIGN
 
221
    u'\xad'     #  0xAD -> SOFT HYPHEN
 
222
    u'\xae'     #  0xAE -> REGISTERED SIGN
 
223
    u'\xaf'     #  0xAF -> MACRON
 
224
    u'\xb0'     #  0xB0 -> DEGREE SIGN
 
225
    u'\xb1'     #  0xB1 -> PLUS-MINUS SIGN
 
226
    u'\xb2'     #  0xB2 -> SUPERSCRIPT TWO
 
227
    u'\xb3'     #  0xB3 -> SUPERSCRIPT THREE
 
228
    u'\xb4'     #  0xB4 -> ACUTE ACCENT
 
229
    u'\xb5'     #  0xB5 -> MICRO SIGN
 
230
    u'\xb6'     #  0xB6 -> PILCROW SIGN
 
231
    u'\xb7'     #  0xB7 -> MIDDLE DOT
 
232
    u'\xb8'     #  0xB8 -> CEDILLA
 
233
    u'\xb9'     #  0xB9 -> SUPERSCRIPT ONE
 
234
    u'\xf7'     #  0xBA -> DIVISION SIGN
 
235
    u'\xbb'     #  0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
 
236
    u'\xbc'     #  0xBC -> VULGAR FRACTION ONE QUARTER
 
237
    u'\xbd'     #  0xBD -> VULGAR FRACTION ONE HALF
 
238
    u'\xbe'     #  0xBE -> VULGAR FRACTION THREE QUARTERS
 
239
    u'\ufffe'
 
240
    u'\ufffe'
 
241
    u'\ufffe'
 
242
    u'\ufffe'
 
243
    u'\ufffe'
 
244
    u'\ufffe'
 
245
    u'\ufffe'
 
246
    u'\ufffe'
 
247
    u'\ufffe'
 
248
    u'\ufffe'
 
249
    u'\ufffe'
 
250
    u'\ufffe'
 
251
    u'\ufffe'
 
252
    u'\ufffe'
 
253
    u'\ufffe'
 
254
    u'\ufffe'
 
255
    u'\ufffe'
 
256
    u'\ufffe'
 
257
    u'\ufffe'
 
258
    u'\ufffe'
 
259
    u'\ufffe'
 
260
    u'\ufffe'
 
261
    u'\ufffe'
 
262
    u'\ufffe'
 
263
    u'\ufffe'
 
264
    u'\ufffe'
 
265
    u'\ufffe'
 
266
    u'\ufffe'
 
267
    u'\ufffe'
 
268
    u'\ufffe'
 
269
    u'\ufffe'
 
270
    u'\ufffe'
 
271
    u'\u2017'   #  0xDF -> DOUBLE LOW LINE
 
272
    u'\u05d0'   #  0xE0 -> HEBREW LETTER ALEF
 
273
    u'\u05d1'   #  0xE1 -> HEBREW LETTER BET
 
274
    u'\u05d2'   #  0xE2 -> HEBREW LETTER GIMEL
 
275
    u'\u05d3'   #  0xE3 -> HEBREW LETTER DALET
 
276
    u'\u05d4'   #  0xE4 -> HEBREW LETTER HE
 
277
    u'\u05d5'   #  0xE5 -> HEBREW LETTER VAV
 
278
    u'\u05d6'   #  0xE6 -> HEBREW LETTER ZAYIN
 
279
    u'\u05d7'   #  0xE7 -> HEBREW LETTER HET
 
280
    u'\u05d8'   #  0xE8 -> HEBREW LETTER TET
 
281
    u'\u05d9'   #  0xE9 -> HEBREW LETTER YOD
 
282
    u'\u05da'   #  0xEA -> HEBREW LETTER FINAL KAF
 
283
    u'\u05db'   #  0xEB -> HEBREW LETTER KAF
 
284
    u'\u05dc'   #  0xEC -> HEBREW LETTER LAMED
 
285
    u'\u05dd'   #  0xED -> HEBREW LETTER FINAL MEM
 
286
    u'\u05de'   #  0xEE -> HEBREW LETTER MEM
 
287
    u'\u05df'   #  0xEF -> HEBREW LETTER FINAL NUN
 
288
    u'\u05e0'   #  0xF0 -> HEBREW LETTER NUN
 
289
    u'\u05e1'   #  0xF1 -> HEBREW LETTER SAMEKH
 
290
    u'\u05e2'   #  0xF2 -> HEBREW LETTER AYIN
 
291
    u'\u05e3'   #  0xF3 -> HEBREW LETTER FINAL PE
 
292
    u'\u05e4'   #  0xF4 -> HEBREW LETTER PE
 
293
    u'\u05e5'   #  0xF5 -> HEBREW LETTER FINAL TSADI
 
294
    u'\u05e6'   #  0xF6 -> HEBREW LETTER TSADI
 
295
    u'\u05e7'   #  0xF7 -> HEBREW LETTER QOF
 
296
    u'\u05e8'   #  0xF8 -> HEBREW LETTER RESH
 
297
    u'\u05e9'   #  0xF9 -> HEBREW LETTER SHIN
 
298
    u'\u05ea'   #  0xFA -> HEBREW LETTER TAV
 
299
    u'\ufffe'
 
300
    u'\ufffe'
 
301
    u'\u200e'   #  0xFD -> LEFT-TO-RIGHT MARK
 
302
    u'\u200f'   #  0xFE -> RIGHT-TO-LEFT MARK
 
303
    u'\ufffe'
 
304
)
 
305
 
 
306
### Encoding table
 
307
encoding_table=codecs.charmap_build(decoding_table)