rubyjedi-oga 1.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +13 -0
  3. data/LICENSE +362 -0
  4. data/README.md +317 -0
  5. data/doc/css/common.css +77 -0
  6. data/doc/css_selectors.md +935 -0
  7. data/doc/manually_creating_documents.md +67 -0
  8. data/doc/migrating_from_nokogiri.md +169 -0
  9. data/doc/xml_namespaces.md +63 -0
  10. data/ext/c/extconf.rb +11 -0
  11. data/ext/c/lexer.c +2595 -0
  12. data/ext/c/lexer.h +16 -0
  13. data/ext/c/lexer.rl +198 -0
  14. data/ext/c/liboga.c +6 -0
  15. data/ext/c/liboga.h +11 -0
  16. data/ext/java/Liboga.java +14 -0
  17. data/ext/java/org/liboga/xml/Lexer.java +1363 -0
  18. data/ext/java/org/liboga/xml/Lexer.rl +223 -0
  19. data/ext/ragel/base_lexer.rl +633 -0
  20. data/lib/oga.rb +57 -0
  21. data/lib/oga/blacklist.rb +40 -0
  22. data/lib/oga/css/lexer.rb +743 -0
  23. data/lib/oga/css/parser.rb +976 -0
  24. data/lib/oga/entity_decoder.rb +21 -0
  25. data/lib/oga/html/entities.rb +2150 -0
  26. data/lib/oga/html/parser.rb +25 -0
  27. data/lib/oga/html/sax_parser.rb +18 -0
  28. data/lib/oga/lru.rb +160 -0
  29. data/lib/oga/oga.rb +57 -0
  30. data/lib/oga/version.rb +3 -0
  31. data/lib/oga/whitelist.rb +20 -0
  32. data/lib/oga/xml/attribute.rb +136 -0
  33. data/lib/oga/xml/cdata.rb +17 -0
  34. data/lib/oga/xml/character_node.rb +37 -0
  35. data/lib/oga/xml/comment.rb +17 -0
  36. data/lib/oga/xml/default_namespace.rb +13 -0
  37. data/lib/oga/xml/doctype.rb +82 -0
  38. data/lib/oga/xml/document.rb +108 -0
  39. data/lib/oga/xml/element.rb +428 -0
  40. data/lib/oga/xml/entities.rb +122 -0
  41. data/lib/oga/xml/html_void_elements.rb +15 -0
  42. data/lib/oga/xml/lexer.rb +550 -0
  43. data/lib/oga/xml/namespace.rb +48 -0
  44. data/lib/oga/xml/node.rb +219 -0
  45. data/lib/oga/xml/node_set.rb +333 -0
  46. data/lib/oga/xml/parser.rb +631 -0
  47. data/lib/oga/xml/processing_instruction.rb +37 -0
  48. data/lib/oga/xml/pull_parser.rb +175 -0
  49. data/lib/oga/xml/querying.rb +56 -0
  50. data/lib/oga/xml/sax_parser.rb +192 -0
  51. data/lib/oga/xml/text.rb +66 -0
  52. data/lib/oga/xml/traversal.rb +50 -0
  53. data/lib/oga/xml/xml_declaration.rb +65 -0
  54. data/lib/oga/xpath/evaluator.rb +1798 -0
  55. data/lib/oga/xpath/lexer.rb +1958 -0
  56. data/lib/oga/xpath/parser.rb +622 -0
  57. data/oga.gemspec +45 -0
  58. metadata +227 -0
@@ -0,0 +1,21 @@
1
+ module Oga
2
+ module EntityDecoder
3
+ ##
4
+ # @see [decode]
5
+ #
6
+ def self.try_decode(input, html = false)
7
+ input ? decode(input, html) : nil
8
+ end
9
+
10
+ ##
11
+ # @param [String] input
12
+ # @param [TrueClass|FalseClass] html
13
+ # @return [String]
14
+ #
15
+ def self.decode(input, html = false)
16
+ decoder = html ? HTML::Entities : XML::Entities
17
+
18
+ decoder.decode(input)
19
+ end
20
+ end # EntityDecoder
21
+ end # Oga
@@ -0,0 +1,2150 @@
1
+ module Oga
2
+ module HTML
3
+ module Entities
4
+ ##
5
+ # Hash mapping HTML entities to their Unicode character replacements.
6
+ #
7
+ # Based on the JSON output as listed at
8
+ # http://www.w3.org/TR/html5/syntax.html#named-character-references
9
+ #
10
+ # @return [Hash]
11
+ #
12
+ DECODE_MAPPING = {
13
+ 'Á' => [193].pack('U*'),
14
+ 'á' => [225].pack('U*'),
15
+ 'Ă' => [258].pack('U*'),
16
+ 'ă' => [259].pack('U*'),
17
+ '∾' => [8766].pack('U*'),
18
+ '∿' => [8767].pack('U*'),
19
+ '∾̳' => [8766, 819].pack('U*'),
20
+ 'Â' => [194].pack('U*'),
21
+ 'â' => [226].pack('U*'),
22
+ '´' => [180].pack('U*'),
23
+ 'А' => [1040].pack('U*'),
24
+ 'а' => [1072].pack('U*'),
25
+ 'Æ' => [198].pack('U*'),
26
+ 'æ' => [230].pack('U*'),
27
+ '⁡' => [8289].pack('U*'),
28
+ '𝔄' => [120068].pack('U*'),
29
+ '𝔞' => [120094].pack('U*'),
30
+ 'À' => [192].pack('U*'),
31
+ 'à' => [224].pack('U*'),
32
+ 'ℵ' => [8501].pack('U*'),
33
+ 'ℵ' => [8501].pack('U*'),
34
+ 'Α' => [913].pack('U*'),
35
+ 'α' => [945].pack('U*'),
36
+ 'Ā' => [256].pack('U*'),
37
+ 'ā' => [257].pack('U*'),
38
+ '⨿' => [10815].pack('U*'),
39
+ '&' => [38].pack('U*'),
40
+ '&' => [38].pack('U*'),
41
+ '⩓' => [10835].pack('U*'),
42
+ '∧' => [8743].pack('U*'),
43
+ '⩕' => [10837].pack('U*'),
44
+ '⩜' => [10844].pack('U*'),
45
+ '⩘' => [10840].pack('U*'),
46
+ '⩚' => [10842].pack('U*'),
47
+ '∠' => [8736].pack('U*'),
48
+ '⦤' => [10660].pack('U*'),
49
+ '∠' => [8736].pack('U*'),
50
+ '∡' => [8737].pack('U*'),
51
+ '⦨' => [10664].pack('U*'),
52
+ '⦩' => [10665].pack('U*'),
53
+ '⦪' => [10666].pack('U*'),
54
+ '⦫' => [10667].pack('U*'),
55
+ '⦬' => [10668].pack('U*'),
56
+ '⦭' => [10669].pack('U*'),
57
+ '⦮' => [10670].pack('U*'),
58
+ '⦯' => [10671].pack('U*'),
59
+ '∟' => [8735].pack('U*'),
60
+ '⊾' => [8894].pack('U*'),
61
+ '⦝' => [10653].pack('U*'),
62
+ '∢' => [8738].pack('U*'),
63
+ 'Å' => [197].pack('U*'),
64
+ '⍼' => [9084].pack('U*'),
65
+ 'Ą' => [260].pack('U*'),
66
+ 'ą' => [261].pack('U*'),
67
+ '𝔸' => [120120].pack('U*'),
68
+ '𝕒' => [120146].pack('U*'),
69
+ '≈' => [8776].pack('U*'),
70
+ '⩯' => [10863].pack('U*'),
71
+ '⩰' => [10864].pack('U*'),
72
+ '≊' => [8778].pack('U*'),
73
+ '≋' => [8779].pack('U*'),
74
+ ''' => [39].pack('U*'),
75
+ '⁡' => [8289].pack('U*'),
76
+ '≈' => [8776].pack('U*'),
77
+ '≊' => [8778].pack('U*'),
78
+ 'Å' => [197].pack('U*'),
79
+ 'å' => [229].pack('U*'),
80
+ '𝒜' => [119964].pack('U*'),
81
+ '𝒶' => [119990].pack('U*'),
82
+ '≔' => [8788].pack('U*'),
83
+ '*' => [42].pack('U*'),
84
+ '≈' => [8776].pack('U*'),
85
+ '≍' => [8781].pack('U*'),
86
+ 'Ã' => [195].pack('U*'),
87
+ 'ã' => [227].pack('U*'),
88
+ 'Ä' => [196].pack('U*'),
89
+ 'ä' => [228].pack('U*'),
90
+ '∳' => [8755].pack('U*'),
91
+ '⨑' => [10769].pack('U*'),
92
+ '≌' => [8780].pack('U*'),
93
+ '϶' => [1014].pack('U*'),
94
+ '‵' => [8245].pack('U*'),
95
+ '∽' => [8765].pack('U*'),
96
+ '⋍' => [8909].pack('U*'),
97
+ '∖' => [8726].pack('U*'),
98
+ '⫧' => [10983].pack('U*'),
99
+ '⊽' => [8893].pack('U*'),
100
+ '⌆' => [8966].pack('U*'),
101
+ '⌅' => [8965].pack('U*'),
102
+ '⌅' => [8965].pack('U*'),
103
+ '⎵' => [9141].pack('U*'),
104
+ '⎶' => [9142].pack('U*'),
105
+ '≌' => [8780].pack('U*'),
106
+ 'Б' => [1041].pack('U*'),
107
+ 'б' => [1073].pack('U*'),
108
+ '„' => [8222].pack('U*'),
109
+ '∵' => [8757].pack('U*'),
110
+ '∵' => [8757].pack('U*'),
111
+ '∵' => [8757].pack('U*'),
112
+ '⦰' => [10672].pack('U*'),
113
+ '϶' => [1014].pack('U*'),
114
+ 'ℬ' => [8492].pack('U*'),
115
+ 'ℬ' => [8492].pack('U*'),
116
+ 'Β' => [914].pack('U*'),
117
+ 'β' => [946].pack('U*'),
118
+ 'ℶ' => [8502].pack('U*'),
119
+ '≬' => [8812].pack('U*'),
120
+ '𝔅' => [120069].pack('U*'),
121
+ '𝔟' => [120095].pack('U*'),
122
+ '⋂' => [8898].pack('U*'),
123
+ '◯' => [9711].pack('U*'),
124
+ '⋃' => [8899].pack('U*'),
125
+ '⨀' => [10752].pack('U*'),
126
+ '⨁' => [10753].pack('U*'),
127
+ '⨂' => [10754].pack('U*'),
128
+ '⨆' => [10758].pack('U*'),
129
+ '★' => [9733].pack('U*'),
130
+ '▽' => [9661].pack('U*'),
131
+ '△' => [9651].pack('U*'),
132
+ '⨄' => [10756].pack('U*'),
133
+ '⋁' => [8897].pack('U*'),
134
+ '⋀' => [8896].pack('U*'),
135
+ '⤍' => [10509].pack('U*'),
136
+ '⧫' => [10731].pack('U*'),
137
+ '▪' => [9642].pack('U*'),
138
+ '▴' => [9652].pack('U*'),
139
+ '▾' => [9662].pack('U*'),
140
+ '◂' => [9666].pack('U*'),
141
+ '▸' => [9656].pack('U*'),
142
+ '␣' => [9251].pack('U*'),
143
+ '▒' => [9618].pack('U*'),
144
+ '░' => [9617].pack('U*'),
145
+ '▓' => [9619].pack('U*'),
146
+ '█' => [9608].pack('U*'),
147
+ '=⃥' => [61, 8421].pack('U*'),
148
+ '≡⃥' => [8801, 8421].pack('U*'),
149
+ '⫭' => [10989].pack('U*'),
150
+ '⌐' => [8976].pack('U*'),
151
+ '𝔹' => [120121].pack('U*'),
152
+ '𝕓' => [120147].pack('U*'),
153
+ '⊥' => [8869].pack('U*'),
154
+ '⊥' => [8869].pack('U*'),
155
+ '⋈' => [8904].pack('U*'),
156
+ '⧉' => [10697].pack('U*'),
157
+ '╗' => [9559].pack('U*'),
158
+ '╖' => [9558].pack('U*'),
159
+ '╕' => [9557].pack('U*'),
160
+ '┐' => [9488].pack('U*'),
161
+ '╔' => [9556].pack('U*'),
162
+ '╓' => [9555].pack('U*'),
163
+ '╒' => [9554].pack('U*'),
164
+ '┌' => [9484].pack('U*'),
165
+ '═' => [9552].pack('U*'),
166
+ '─' => [9472].pack('U*'),
167
+ '╦' => [9574].pack('U*'),
168
+ '╤' => [9572].pack('U*'),
169
+ '╥' => [9573].pack('U*'),
170
+ '┬' => [9516].pack('U*'),
171
+ '╩' => [9577].pack('U*'),
172
+ '╧' => [9575].pack('U*'),
173
+ '╨' => [9576].pack('U*'),
174
+ '┴' => [9524].pack('U*'),
175
+ '⊟' => [8863].pack('U*'),
176
+ '⊞' => [8862].pack('U*'),
177
+ '⊠' => [8864].pack('U*'),
178
+ '╝' => [9565].pack('U*'),
179
+ '╜' => [9564].pack('U*'),
180
+ '╛' => [9563].pack('U*'),
181
+ '┘' => [9496].pack('U*'),
182
+ '╚' => [9562].pack('U*'),
183
+ '╙' => [9561].pack('U*'),
184
+ '╘' => [9560].pack('U*'),
185
+ '└' => [9492].pack('U*'),
186
+ '║' => [9553].pack('U*'),
187
+ '│' => [9474].pack('U*'),
188
+ '╬' => [9580].pack('U*'),
189
+ '╫' => [9579].pack('U*'),
190
+ '╪' => [9578].pack('U*'),
191
+ '┼' => [9532].pack('U*'),
192
+ '╣' => [9571].pack('U*'),
193
+ '╢' => [9570].pack('U*'),
194
+ '╡' => [9569].pack('U*'),
195
+ '┤' => [9508].pack('U*'),
196
+ '╠' => [9568].pack('U*'),
197
+ '╟' => [9567].pack('U*'),
198
+ '╞' => [9566].pack('U*'),
199
+ '├' => [9500].pack('U*'),
200
+ '‵' => [8245].pack('U*'),
201
+ '˘' => [728].pack('U*'),
202
+ '˘' => [728].pack('U*'),
203
+ '¦' => [166].pack('U*'),
204
+ 'ℬ' => [8492].pack('U*'),
205
+ '𝒷' => [119991].pack('U*'),
206
+ '⁏' => [8271].pack('U*'),
207
+ '∽' => [8765].pack('U*'),
208
+ '⋍' => [8909].pack('U*'),
209
+ '\' => [92].pack('U*'),
210
+ '⧅' => [10693].pack('U*'),
211
+ '⟈' => [10184].pack('U*'),
212
+ '•' => [8226].pack('U*'),
213
+ '•' => [8226].pack('U*'),
214
+ '≎' => [8782].pack('U*'),
215
+ '⪮' => [10926].pack('U*'),
216
+ '≏' => [8783].pack('U*'),
217
+ '≎' => [8782].pack('U*'),
218
+ '≏' => [8783].pack('U*'),
219
+ 'Ć' => [262].pack('U*'),
220
+ 'ć' => [263].pack('U*'),
221
+ '⋒' => [8914].pack('U*'),
222
+ '∩' => [8745].pack('U*'),
223
+ '⩄' => [10820].pack('U*'),
224
+ '⩉' => [10825].pack('U*'),
225
+ '⩋' => [10827].pack('U*'),
226
+ '⩇' => [10823].pack('U*'),
227
+ '⩀' => [10816].pack('U*'),
228
+ 'ⅅ' => [8517].pack('U*'),
229
+ '∩︀' => [8745, 65024].pack('U*'),
230
+ '⁁' => [8257].pack('U*'),
231
+ 'ˇ' => [711].pack('U*'),
232
+ 'ℭ' => [8493].pack('U*'),
233
+ '⩍' => [10829].pack('U*'),
234
+ 'Č' => [268].pack('U*'),
235
+ 'č' => [269].pack('U*'),
236
+ 'Ç' => [199].pack('U*'),
237
+ 'ç' => [231].pack('U*'),
238
+ 'Ĉ' => [264].pack('U*'),
239
+ 'ĉ' => [265].pack('U*'),
240
+ '∰' => [8752].pack('U*'),
241
+ '⩌' => [10828].pack('U*'),
242
+ '⩐' => [10832].pack('U*'),
243
+ 'Ċ' => [266].pack('U*'),
244
+ 'ċ' => [267].pack('U*'),
245
+ '¸' => [184].pack('U*'),
246
+ '¸' => [184].pack('U*'),
247
+ '⦲' => [10674].pack('U*'),
248
+ '¢' => [162].pack('U*'),
249
+ '·' => [183].pack('U*'),
250
+ '·' => [183].pack('U*'),
251
+ 'ℭ' => [8493].pack('U*'),
252
+ '𝔠' => [120096].pack('U*'),
253
+ 'Ч' => [1063].pack('U*'),
254
+ 'ч' => [1095].pack('U*'),
255
+ '✓' => [10003].pack('U*'),
256
+ '✓' => [10003].pack('U*'),
257
+ 'Χ' => [935].pack('U*'),
258
+ 'χ' => [967].pack('U*'),
259
+ '○' => [9675].pack('U*'),
260
+ 'ˆ' => [710].pack('U*'),
261
+ '≗' => [8791].pack('U*'),
262
+ '↺' => [8634].pack('U*'),
263
+ '↻' => [8635].pack('U*'),
264
+ '⊛' => [8859].pack('U*'),
265
+ '⊚' => [8858].pack('U*'),
266
+ '⊝' => [8861].pack('U*'),
267
+ '⊙' => [8857].pack('U*'),
268
+ '®' => [174].pack('U*'),
269
+ 'Ⓢ' => [9416].pack('U*'),
270
+ '⊖' => [8854].pack('U*'),
271
+ '⊕' => [8853].pack('U*'),
272
+ '⊗' => [8855].pack('U*'),
273
+ '⧃' => [10691].pack('U*'),
274
+ '≗' => [8791].pack('U*'),
275
+ '⨐' => [10768].pack('U*'),
276
+ '⫯' => [10991].pack('U*'),
277
+ '⧂' => [10690].pack('U*'),
278
+ '∲' => [8754].pack('U*'),
279
+ '”' => [8221].pack('U*'),
280
+ '’' => [8217].pack('U*'),
281
+ '♣' => [9827].pack('U*'),
282
+ '♣' => [9827].pack('U*'),
283
+ '∷' => [8759].pack('U*'),
284
+ ':' => [58].pack('U*'),
285
+ '⩴' => [10868].pack('U*'),
286
+ '≔' => [8788].pack('U*'),
287
+ '≔' => [8788].pack('U*'),
288
+ ',' => [44].pack('U*'),
289
+ '@' => [64].pack('U*'),
290
+ '∁' => [8705].pack('U*'),
291
+ '∘' => [8728].pack('U*'),
292
+ '∁' => [8705].pack('U*'),
293
+ 'ℂ' => [8450].pack('U*'),
294
+ '≅' => [8773].pack('U*'),
295
+ '⩭' => [10861].pack('U*'),
296
+ '≡' => [8801].pack('U*'),
297
+ '∯' => [8751].pack('U*'),
298
+ '∮' => [8750].pack('U*'),
299
+ '∮' => [8750].pack('U*'),
300
+ 'ℂ' => [8450].pack('U*'),
301
+ '𝕔' => [120148].pack('U*'),
302
+ '∐' => [8720].pack('U*'),
303
+ '∐' => [8720].pack('U*'),
304
+ '©' => [169].pack('U*'),
305
+ '©' => [169].pack('U*'),
306
+ '℗' => [8471].pack('U*'),
307
+ '&CounterClockwiseContourIntegral;' => [8755].pack('U*'),
308
+ '↵' => [8629].pack('U*'),
309
+ '⨯' => [10799].pack('U*'),
310
+ '✗' => [10007].pack('U*'),
311
+ '𝒞' => [119966].pack('U*'),
312
+ '𝒸' => [119992].pack('U*'),
313
+ '⫏' => [10959].pack('U*'),
314
+ '⫑' => [10961].pack('U*'),
315
+ '⫐' => [10960].pack('U*'),
316
+ '⫒' => [10962].pack('U*'),
317
+ '⋯' => [8943].pack('U*'),
318
+ '⤸' => [10552].pack('U*'),
319
+ '⤵' => [10549].pack('U*'),
320
+ '⋞' => [8926].pack('U*'),
321
+ '⋟' => [8927].pack('U*'),
322
+ '↶' => [8630].pack('U*'),
323
+ '⤽' => [10557].pack('U*'),
324
+ '⋓' => [8915].pack('U*'),
325
+ '∪' => [8746].pack('U*'),
326
+ '⩈' => [10824].pack('U*'),
327
+ '≍' => [8781].pack('U*'),
328
+ '⩆' => [10822].pack('U*'),
329
+ '⩊' => [10826].pack('U*'),
330
+ '⊍' => [8845].pack('U*'),
331
+ '⩅' => [10821].pack('U*'),
332
+ '∪︀' => [8746, 65024].pack('U*'),
333
+ '↷' => [8631].pack('U*'),
334
+ '⤼' => [10556].pack('U*'),
335
+ '⋞' => [8926].pack('U*'),
336
+ '⋟' => [8927].pack('U*'),
337
+ '⋎' => [8910].pack('U*'),
338
+ '⋏' => [8911].pack('U*'),
339
+ '¤' => [164].pack('U*'),
340
+ '↶' => [8630].pack('U*'),
341
+ '↷' => [8631].pack('U*'),
342
+ '⋎' => [8910].pack('U*'),
343
+ '⋏' => [8911].pack('U*'),
344
+ '∲' => [8754].pack('U*'),
345
+ '∱' => [8753].pack('U*'),
346
+ '⌭' => [9005].pack('U*'),
347
+ '‡' => [8225].pack('U*'),
348
+ '†' => [8224].pack('U*'),
349
+ 'ℸ' => [8504].pack('U*'),
350
+ '↡' => [8609].pack('U*'),
351
+ '⇓' => [8659].pack('U*'),
352
+ '↓' => [8595].pack('U*'),
353
+ '‐' => [8208].pack('U*'),
354
+ '⫤' => [10980].pack('U*'),
355
+ '⊣' => [8867].pack('U*'),
356
+ '⤏' => [10511].pack('U*'),
357
+ '˝' => [733].pack('U*'),
358
+ 'Ď' => [270].pack('U*'),
359
+ 'ď' => [271].pack('U*'),
360
+ 'Д' => [1044].pack('U*'),
361
+ 'д' => [1076].pack('U*'),
362
+ 'ⅅ' => [8517].pack('U*'),
363
+ 'ⅆ' => [8518].pack('U*'),
364
+ '‡' => [8225].pack('U*'),
365
+ '⇊' => [8650].pack('U*'),
366
+ '⤑' => [10513].pack('U*'),
367
+ '⩷' => [10871].pack('U*'),
368
+ '°' => [176].pack('U*'),
369
+ '∇' => [8711].pack('U*'),
370
+ 'Δ' => [916].pack('U*'),
371
+ 'δ' => [948].pack('U*'),
372
+ '⦱' => [10673].pack('U*'),
373
+ '⥿' => [10623].pack('U*'),
374
+ '𝔇' => [120071].pack('U*'),
375
+ '𝔡' => [120097].pack('U*'),
376
+ '⥥' => [10597].pack('U*'),
377
+ '⇃' => [8643].pack('U*'),
378
+ '⇂' => [8642].pack('U*'),
379
+ '´' => [180].pack('U*'),
380
+ '˙' => [729].pack('U*'),
381
+ '˝' => [733].pack('U*'),
382
+ '`' => [96].pack('U*'),
383
+ '˜' => [732].pack('U*'),
384
+ '⋄' => [8900].pack('U*'),
385
+ '⋄' => [8900].pack('U*'),
386
+ '⋄' => [8900].pack('U*'),
387
+ '♦' => [9830].pack('U*'),
388
+ '♦' => [9830].pack('U*'),
389
+ '¨' => [168].pack('U*'),
390
+ 'ⅆ' => [8518].pack('U*'),
391
+ 'ϝ' => [989].pack('U*'),
392
+ '⋲' => [8946].pack('U*'),
393
+ '÷' => [247].pack('U*'),
394
+ '÷' => [247].pack('U*'),
395
+ '⋇' => [8903].pack('U*'),
396
+ '⋇' => [8903].pack('U*'),
397
+ 'Ђ' => [1026].pack('U*'),
398
+ 'ђ' => [1106].pack('U*'),
399
+ '⌞' => [8990].pack('U*'),
400
+ '⌍' => [8973].pack('U*'),
401
+ '$' => [36].pack('U*'),
402
+ '𝔻' => [120123].pack('U*'),
403
+ '𝕕' => [120149].pack('U*'),
404
+ '¨' => [168].pack('U*'),
405
+ '˙' => [729].pack('U*'),
406
+ '⃜' => [8412].pack('U*'),
407
+ '≐' => [8784].pack('U*'),
408
+ '≑' => [8785].pack('U*'),
409
+ '≐' => [8784].pack('U*'),
410
+ '∸' => [8760].pack('U*'),
411
+ '∔' => [8724].pack('U*'),
412
+ '⊡' => [8865].pack('U*'),
413
+ '⌆' => [8966].pack('U*'),
414
+ '∯' => [8751].pack('U*'),
415
+ '¨' => [168].pack('U*'),
416
+ '⇓' => [8659].pack('U*'),
417
+ '⇐' => [8656].pack('U*'),
418
+ '⇔' => [8660].pack('U*'),
419
+ '⫤' => [10980].pack('U*'),
420
+ '⟸' => [10232].pack('U*'),
421
+ '⟺' => [10234].pack('U*'),
422
+ '⟹' => [10233].pack('U*'),
423
+ '⇒' => [8658].pack('U*'),
424
+ '⊨' => [8872].pack('U*'),
425
+ '⇑' => [8657].pack('U*'),
426
+ '⇕' => [8661].pack('U*'),
427
+ '∥' => [8741].pack('U*'),
428
+ '↓' => [8595].pack('U*'),
429
+ '⇓' => [8659].pack('U*'),
430
+ '↓' => [8595].pack('U*'),
431
+ '⤓' => [10515].pack('U*'),
432
+ '⇵' => [8693].pack('U*'),
433
+ '̑' => [785].pack('U*'),
434
+ '⇊' => [8650].pack('U*'),
435
+ '⇃' => [8643].pack('U*'),
436
+ '⇂' => [8642].pack('U*'),
437
+ '⥐' => [10576].pack('U*'),
438
+ '⥞' => [10590].pack('U*'),
439
+ '↽' => [8637].pack('U*'),
440
+ '⥖' => [10582].pack('U*'),
441
+ '⥟' => [10591].pack('U*'),
442
+ '⇁' => [8641].pack('U*'),
443
+ '⥗' => [10583].pack('U*'),
444
+ '⊤' => [8868].pack('U*'),
445
+ '↧' => [8615].pack('U*'),
446
+ '⤐' => [10512].pack('U*'),
447
+ '⌟' => [8991].pack('U*'),
448
+ '⌌' => [8972].pack('U*'),
449
+ '𝒟' => [119967].pack('U*'),
450
+ '𝒹' => [119993].pack('U*'),
451
+ 'Ѕ' => [1029].pack('U*'),
452
+ 'ѕ' => [1109].pack('U*'),
453
+ '⧶' => [10742].pack('U*'),
454
+ 'Đ' => [272].pack('U*'),
455
+ 'đ' => [273].pack('U*'),
456
+ '⋱' => [8945].pack('U*'),
457
+ '▿' => [9663].pack('U*'),
458
+ '▾' => [9662].pack('U*'),
459
+ '⇵' => [8693].pack('U*'),
460
+ '⥯' => [10607].pack('U*'),
461
+ '⦦' => [10662].pack('U*'),
462
+ 'Џ' => [1039].pack('U*'),
463
+ 'џ' => [1119].pack('U*'),
464
+ '⟿' => [10239].pack('U*'),
465
+ 'É' => [201].pack('U*'),
466
+ 'é' => [233].pack('U*'),
467
+ '⩮' => [10862].pack('U*'),
468
+ 'Ě' => [282].pack('U*'),
469
+ 'ě' => [283].pack('U*'),
470
+ '≖' => [8790].pack('U*'),
471
+ 'Ê' => [202].pack('U*'),
472
+ 'ê' => [234].pack('U*'),
473
+ '≕' => [8789].pack('U*'),
474
+ 'Э' => [1069].pack('U*'),
475
+ 'э' => [1101].pack('U*'),
476
+ '⩷' => [10871].pack('U*'),
477
+ 'Ė' => [278].pack('U*'),
478
+ '≑' => [8785].pack('U*'),
479
+ 'ė' => [279].pack('U*'),
480
+ 'ⅇ' => [8519].pack('U*'),
481
+ '≒' => [8786].pack('U*'),
482
+ '𝔈' => [120072].pack('U*'),
483
+ '𝔢' => [120098].pack('U*'),
484
+ '⪚' => [10906].pack('U*'),
485
+ 'È' => [200].pack('U*'),
486
+ 'è' => [232].pack('U*'),
487
+ '⪖' => [10902].pack('U*'),
488
+ '⪘' => [10904].pack('U*'),
489
+ '⪙' => [10905].pack('U*'),
490
+ '∈' => [8712].pack('U*'),
491
+ '⏧' => [9191].pack('U*'),
492
+ 'ℓ' => [8467].pack('U*'),
493
+ '⪕' => [10901].pack('U*'),
494
+ '⪗' => [10903].pack('U*'),
495
+ 'Ē' => [274].pack('U*'),
496
+ 'ē' => [275].pack('U*'),
497
+ '∅' => [8709].pack('U*'),
498
+ '∅' => [8709].pack('U*'),
499
+ '◻' => [9723].pack('U*'),
500
+ '∅' => [8709].pack('U*'),
501
+ '▫' => [9643].pack('U*'),
502
+ ' ' => [8195].pack('U*'),
503
+ ' ' => [8196].pack('U*'),
504
+ ' ' => [8197].pack('U*'),
505
+ 'Ŋ' => [330].pack('U*'),
506
+ 'ŋ' => [331].pack('U*'),
507
+ ' ' => [8194].pack('U*'),
508
+ 'Ę' => [280].pack('U*'),
509
+ 'ę' => [281].pack('U*'),
510
+ '𝔼' => [120124].pack('U*'),
511
+ '𝕖' => [120150].pack('U*'),
512
+ '⋕' => [8917].pack('U*'),
513
+ '⧣' => [10723].pack('U*'),
514
+ '⩱' => [10865].pack('U*'),
515
+ 'ε' => [949].pack('U*'),
516
+ 'Ε' => [917].pack('U*'),
517
+ 'ε' => [949].pack('U*'),
518
+ 'ϵ' => [1013].pack('U*'),
519
+ '≖' => [8790].pack('U*'),
520
+ '≕' => [8789].pack('U*'),
521
+ '≂' => [8770].pack('U*'),
522
+ '⪖' => [10902].pack('U*'),
523
+ '⪕' => [10901].pack('U*'),
524
+ '⩵' => [10869].pack('U*'),
525
+ '=' => [61].pack('U*'),
526
+ '≂' => [8770].pack('U*'),
527
+ '≟' => [8799].pack('U*'),
528
+ '⇌' => [8652].pack('U*'),
529
+ '≡' => [8801].pack('U*'),
530
+ '⩸' => [10872].pack('U*'),
531
+ '⧥' => [10725].pack('U*'),
532
+ '⥱' => [10609].pack('U*'),
533
+ '≓' => [8787].pack('U*'),
534
+ 'ℰ' => [8496].pack('U*'),
535
+ 'ℯ' => [8495].pack('U*'),
536
+ '≐' => [8784].pack('U*'),
537
+ '⩳' => [10867].pack('U*'),
538
+ '≂' => [8770].pack('U*'),
539
+ 'Η' => [919].pack('U*'),
540
+ 'η' => [951].pack('U*'),
541
+ 'Ð' => [208].pack('U*'),
542
+ 'ð' => [240].pack('U*'),
543
+ 'Ë' => [203].pack('U*'),
544
+ 'ë' => [235].pack('U*'),
545
+ '€' => [8364].pack('U*'),
546
+ '!' => [33].pack('U*'),
547
+ '∃' => [8707].pack('U*'),
548
+ '∃' => [8707].pack('U*'),
549
+ 'ℰ' => [8496].pack('U*'),
550
+ 'ⅇ' => [8519].pack('U*'),
551
+ 'ⅇ' => [8519].pack('U*'),
552
+ '≒' => [8786].pack('U*'),
553
+ 'Ф' => [1060].pack('U*'),
554
+ 'ф' => [1092].pack('U*'),
555
+ '♀' => [9792].pack('U*'),
556
+ 'ffi' => [64259].pack('U*'),
557
+ 'ff' => [64256].pack('U*'),
558
+ 'ffl' => [64260].pack('U*'),
559
+ '𝔉' => [120073].pack('U*'),
560
+ '𝔣' => [120099].pack('U*'),
561
+ 'fi' => [64257].pack('U*'),
562
+ '◼' => [9724].pack('U*'),
563
+ '▪' => [9642].pack('U*'),
564
+ 'fj' => [102, 106].pack('U*'),
565
+ '♭' => [9837].pack('U*'),
566
+ 'fl' => [64258].pack('U*'),
567
+ '▱' => [9649].pack('U*'),
568
+ 'ƒ' => [402].pack('U*'),
569
+ '𝔽' => [120125].pack('U*'),
570
+ '𝕗' => [120151].pack('U*'),
571
+ '∀' => [8704].pack('U*'),
572
+ '∀' => [8704].pack('U*'),
573
+ '⋔' => [8916].pack('U*'),
574
+ '⫙' => [10969].pack('U*'),
575
+ 'ℱ' => [8497].pack('U*'),
576
+ '⨍' => [10765].pack('U*'),
577
+ '½' => [189].pack('U*'),
578
+ '⅓' => [8531].pack('U*'),
579
+ '¼' => [188].pack('U*'),
580
+ '⅕' => [8533].pack('U*'),
581
+ '⅙' => [8537].pack('U*'),
582
+ '⅛' => [8539].pack('U*'),
583
+ '⅔' => [8532].pack('U*'),
584
+ '⅖' => [8534].pack('U*'),
585
+ '¾' => [190].pack('U*'),
586
+ '⅗' => [8535].pack('U*'),
587
+ '⅜' => [8540].pack('U*'),
588
+ '⅘' => [8536].pack('U*'),
589
+ '⅚' => [8538].pack('U*'),
590
+ '⅝' => [8541].pack('U*'),
591
+ '⅞' => [8542].pack('U*'),
592
+ '⁄' => [8260].pack('U*'),
593
+ '⌢' => [8994].pack('U*'),
594
+ 'ℱ' => [8497].pack('U*'),
595
+ '𝒻' => [119995].pack('U*'),
596
+ 'ǵ' => [501].pack('U*'),
597
+ 'Γ' => [915].pack('U*'),
598
+ 'γ' => [947].pack('U*'),
599
+ 'Ϝ' => [988].pack('U*'),
600
+ 'ϝ' => [989].pack('U*'),
601
+ '⪆' => [10886].pack('U*'),
602
+ 'Ğ' => [286].pack('U*'),
603
+ 'ğ' => [287].pack('U*'),
604
+ 'Ģ' => [290].pack('U*'),
605
+ 'Ĝ' => [284].pack('U*'),
606
+ 'ĝ' => [285].pack('U*'),
607
+ 'Г' => [1043].pack('U*'),
608
+ 'г' => [1075].pack('U*'),
609
+ 'Ġ' => [288].pack('U*'),
610
+ 'ġ' => [289].pack('U*'),
611
+ '≧' => [8807].pack('U*'),
612
+ '≥' => [8805].pack('U*'),
613
+ '⪌' => [10892].pack('U*'),
614
+ '⋛' => [8923].pack('U*'),
615
+ '≥' => [8805].pack('U*'),
616
+ '≧' => [8807].pack('U*'),
617
+ '⩾' => [10878].pack('U*'),
618
+ '⩾' => [10878].pack('U*'),
619
+ '⪩' => [10921].pack('U*'),
620
+ '⪀' => [10880].pack('U*'),
621
+ '⪂' => [10882].pack('U*'),
622
+ '⪄' => [10884].pack('U*'),
623
+ '⋛︀' => [8923, 65024].pack('U*'),
624
+ '⪔' => [10900].pack('U*'),
625
+ '𝔊' => [120074].pack('U*'),
626
+ '𝔤' => [120100].pack('U*'),
627
+ '⋙' => [8921].pack('U*'),
628
+ '≫' => [8811].pack('U*'),
629
+ '⋙' => [8921].pack('U*'),
630
+ 'ℷ' => [8503].pack('U*'),
631
+ 'Ѓ' => [1027].pack('U*'),
632
+ 'ѓ' => [1107].pack('U*'),
633
+ '≷' => [8823].pack('U*'),
634
+ '⪥' => [10917].pack('U*'),
635
+ '⪒' => [10898].pack('U*'),
636
+ '⪤' => [10916].pack('U*'),
637
+ '⪊' => [10890].pack('U*'),
638
+ '⪊' => [10890].pack('U*'),
639
+ '≩' => [8809].pack('U*'),
640
+ '⪈' => [10888].pack('U*'),
641
+ '⪈' => [10888].pack('U*'),
642
+ '≩' => [8809].pack('U*'),
643
+ '⋧' => [8935].pack('U*'),
644
+ '𝔾' => [120126].pack('U*'),
645
+ '𝕘' => [120152].pack('U*'),
646
+ '`' => [96].pack('U*'),
647
+ '≥' => [8805].pack('U*'),
648
+ '⋛' => [8923].pack('U*'),
649
+ '≧' => [8807].pack('U*'),
650
+ '⪢' => [10914].pack('U*'),
651
+ '≷' => [8823].pack('U*'),
652
+ '⩾' => [10878].pack('U*'),
653
+ '≳' => [8819].pack('U*'),
654
+ '𝒢' => [119970].pack('U*'),
655
+ 'ℊ' => [8458].pack('U*'),
656
+ '≳' => [8819].pack('U*'),
657
+ '⪎' => [10894].pack('U*'),
658
+ '⪐' => [10896].pack('U*'),
659
+ '>' => [62].pack('U*'),
660
+ '≫' => [8811].pack('U*'),
661
+ '>' => [62].pack('U*'),
662
+ '⪧' => [10919].pack('U*'),
663
+ '⩺' => [10874].pack('U*'),
664
+ '⋗' => [8919].pack('U*'),
665
+ '⦕' => [10645].pack('U*'),
666
+ '⩼' => [10876].pack('U*'),
667
+ '⪆' => [10886].pack('U*'),
668
+ '⥸' => [10616].pack('U*'),
669
+ '⋗' => [8919].pack('U*'),
670
+ '⋛' => [8923].pack('U*'),
671
+ '⪌' => [10892].pack('U*'),
672
+ '≷' => [8823].pack('U*'),
673
+ '≳' => [8819].pack('U*'),
674
+ '≩︀' => [8809, 65024].pack('U*'),
675
+ '≩︀' => [8809, 65024].pack('U*'),
676
+ 'ˇ' => [711].pack('U*'),
677
+ ' ' => [8202].pack('U*'),
678
+ '½' => [189].pack('U*'),
679
+ 'ℋ' => [8459].pack('U*'),
680
+ 'Ъ' => [1066].pack('U*'),
681
+ 'ъ' => [1098].pack('U*'),
682
+ '⇔' => [8660].pack('U*'),
683
+ '↔' => [8596].pack('U*'),
684
+ '⥈' => [10568].pack('U*'),
685
+ '↭' => [8621].pack('U*'),
686
+ '^' => [94].pack('U*'),
687
+ 'ℏ' => [8463].pack('U*'),
688
+ 'Ĥ' => [292].pack('U*'),
689
+ 'ĥ' => [293].pack('U*'),
690
+ '♥' => [9829].pack('U*'),
691
+ '♥' => [9829].pack('U*'),
692
+ '…' => [8230].pack('U*'),
693
+ '⊹' => [8889].pack('U*'),
694
+ 'ℌ' => [8460].pack('U*'),
695
+ '𝔥' => [120101].pack('U*'),
696
+ 'ℋ' => [8459].pack('U*'),
697
+ '⤥' => [10533].pack('U*'),
698
+ '⤦' => [10534].pack('U*'),
699
+ '⇿' => [8703].pack('U*'),
700
+ '∻' => [8763].pack('U*'),
701
+ '↩' => [8617].pack('U*'),
702
+ '↪' => [8618].pack('U*'),
703
+ 'ℍ' => [8461].pack('U*'),
704
+ '𝕙' => [120153].pack('U*'),
705
+ '―' => [8213].pack('U*'),
706
+ '─' => [9472].pack('U*'),
707
+ 'ℋ' => [8459].pack('U*'),
708
+ '𝒽' => [119997].pack('U*'),
709
+ 'ℏ' => [8463].pack('U*'),
710
+ 'Ħ' => [294].pack('U*'),
711
+ 'ħ' => [295].pack('U*'),
712
+ '≎' => [8782].pack('U*'),
713
+ '≏' => [8783].pack('U*'),
714
+ '⁃' => [8259].pack('U*'),
715
+ '‐' => [8208].pack('U*'),
716
+ 'Í' => [205].pack('U*'),
717
+ 'í' => [237].pack('U*'),
718
+ '⁣' => [8291].pack('U*'),
719
+ 'Î' => [206].pack('U*'),
720
+ 'î' => [238].pack('U*'),
721
+ 'И' => [1048].pack('U*'),
722
+ 'и' => [1080].pack('U*'),
723
+ 'İ' => [304].pack('U*'),
724
+ 'Е' => [1045].pack('U*'),
725
+ 'е' => [1077].pack('U*'),
726
+ '¡' => [161].pack('U*'),
727
+ '⇔' => [8660].pack('U*'),
728
+ 'ℑ' => [8465].pack('U*'),
729
+ '𝔦' => [120102].pack('U*'),
730
+ 'Ì' => [204].pack('U*'),
731
+ 'ì' => [236].pack('U*'),
732
+ 'ⅈ' => [8520].pack('U*'),
733
+ '⨌' => [10764].pack('U*'),
734
+ '∭' => [8749].pack('U*'),
735
+ '⧜' => [10716].pack('U*'),
736
+ '℩' => [8489].pack('U*'),
737
+ 'IJ' => [306].pack('U*'),
738
+ 'ij' => [307].pack('U*'),
739
+ 'ℑ' => [8465].pack('U*'),
740
+ 'Ī' => [298].pack('U*'),
741
+ 'ī' => [299].pack('U*'),
742
+ 'ℑ' => [8465].pack('U*'),
743
+ 'ⅈ' => [8520].pack('U*'),
744
+ 'ℐ' => [8464].pack('U*'),
745
+ 'ℑ' => [8465].pack('U*'),
746
+ 'ı' => [305].pack('U*'),
747
+ '⊷' => [8887].pack('U*'),
748
+ 'Ƶ' => [437].pack('U*'),
749
+ '⇒' => [8658].pack('U*'),
750
+ '∈' => [8712].pack('U*'),
751
+ '℅' => [8453].pack('U*'),
752
+ '∞' => [8734].pack('U*'),
753
+ '⧝' => [10717].pack('U*'),
754
+ 'ı' => [305].pack('U*'),
755
+ '∬' => [8748].pack('U*'),
756
+ '∫' => [8747].pack('U*'),
757
+ '⊺' => [8890].pack('U*'),
758
+ 'ℤ' => [8484].pack('U*'),
759
+ '∫' => [8747].pack('U*'),
760
+ '⊺' => [8890].pack('U*'),
761
+ '⋂' => [8898].pack('U*'),
762
+ '⨗' => [10775].pack('U*'),
763
+ '⨼' => [10812].pack('U*'),
764
+ '⁣' => [8291].pack('U*'),
765
+ '⁢' => [8290].pack('U*'),
766
+ 'Ё' => [1025].pack('U*'),
767
+ 'ё' => [1105].pack('U*'),
768
+ 'Į' => [302].pack('U*'),
769
+ 'į' => [303].pack('U*'),
770
+ '𝕀' => [120128].pack('U*'),
771
+ '𝕚' => [120154].pack('U*'),
772
+ 'Ι' => [921].pack('U*'),
773
+ 'ι' => [953].pack('U*'),
774
+ '⨼' => [10812].pack('U*'),
775
+ '¿' => [191].pack('U*'),
776
+ 'ℐ' => [8464].pack('U*'),
777
+ '𝒾' => [119998].pack('U*'),
778
+ '∈' => [8712].pack('U*'),
779
+ '⋵' => [8949].pack('U*'),
780
+ '⋹' => [8953].pack('U*'),
781
+ '⋴' => [8948].pack('U*'),
782
+ '⋳' => [8947].pack('U*'),
783
+ '∈' => [8712].pack('U*'),
784
+ '⁢' => [8290].pack('U*'),
785
+ 'Ĩ' => [296].pack('U*'),
786
+ 'ĩ' => [297].pack('U*'),
787
+ 'І' => [1030].pack('U*'),
788
+ 'і' => [1110].pack('U*'),
789
+ 'Ï' => [207].pack('U*'),
790
+ 'ï' => [239].pack('U*'),
791
+ 'Ĵ' => [308].pack('U*'),
792
+ 'ĵ' => [309].pack('U*'),
793
+ 'Й' => [1049].pack('U*'),
794
+ 'й' => [1081].pack('U*'),
795
+ '𝔍' => [120077].pack('U*'),
796
+ '𝔧' => [120103].pack('U*'),
797
+ 'ȷ' => [567].pack('U*'),
798
+ '𝕁' => [120129].pack('U*'),
799
+ '𝕛' => [120155].pack('U*'),
800
+ '𝒥' => [119973].pack('U*'),
801
+ '𝒿' => [119999].pack('U*'),
802
+ 'Ј' => [1032].pack('U*'),
803
+ 'ј' => [1112].pack('U*'),
804
+ 'Є' => [1028].pack('U*'),
805
+ 'є' => [1108].pack('U*'),
806
+ 'Κ' => [922].pack('U*'),
807
+ 'κ' => [954].pack('U*'),
808
+ 'ϰ' => [1008].pack('U*'),
809
+ 'Ķ' => [310].pack('U*'),
810
+ 'ķ' => [311].pack('U*'),
811
+ 'К' => [1050].pack('U*'),
812
+ 'к' => [1082].pack('U*'),
813
+ '𝔎' => [120078].pack('U*'),
814
+ '𝔨' => [120104].pack('U*'),
815
+ 'ĸ' => [312].pack('U*'),
816
+ 'Х' => [1061].pack('U*'),
817
+ 'х' => [1093].pack('U*'),
818
+ 'Ќ' => [1036].pack('U*'),
819
+ 'ќ' => [1116].pack('U*'),
820
+ '𝕂' => [120130].pack('U*'),
821
+ '𝕜' => [120156].pack('U*'),
822
+ '𝒦' => [119974].pack('U*'),
823
+ '𝓀' => [120000].pack('U*'),
824
+ '⇚' => [8666].pack('U*'),
825
+ 'Ĺ' => [313].pack('U*'),
826
+ 'ĺ' => [314].pack('U*'),
827
+ '⦴' => [10676].pack('U*'),
828
+ 'ℒ' => [8466].pack('U*'),
829
+ 'Λ' => [923].pack('U*'),
830
+ 'λ' => [955].pack('U*'),
831
+ '⟪' => [10218].pack('U*'),
832
+ '⟨' => [10216].pack('U*'),
833
+ '⦑' => [10641].pack('U*'),
834
+ '⟨' => [10216].pack('U*'),
835
+ '⪅' => [10885].pack('U*'),
836
+ 'ℒ' => [8466].pack('U*'),
837
+ '«' => [171].pack('U*'),
838
+ '↞' => [8606].pack('U*'),
839
+ '⇐' => [8656].pack('U*'),
840
+ '←' => [8592].pack('U*'),
841
+ '⇤' => [8676].pack('U*'),
842
+ '⤟' => [10527].pack('U*'),
843
+ '⤝' => [10525].pack('U*'),
844
+ '↩' => [8617].pack('U*'),
845
+ '↫' => [8619].pack('U*'),
846
+ '⤹' => [10553].pack('U*'),
847
+ '⥳' => [10611].pack('U*'),
848
+ '↢' => [8610].pack('U*'),
849
+ '⪫' => [10923].pack('U*'),
850
+ '⤛' => [10523].pack('U*'),
851
+ '⤙' => [10521].pack('U*'),
852
+ '⪭' => [10925].pack('U*'),
853
+ '⪭︀' => [10925, 65024].pack('U*'),
854
+ '⤎' => [10510].pack('U*'),
855
+ '⤌' => [10508].pack('U*'),
856
+ '❲' => [10098].pack('U*'),
857
+ '{' => [123].pack('U*'),
858
+ '[' => [91].pack('U*'),
859
+ '⦋' => [10635].pack('U*'),
860
+ '⦏' => [10639].pack('U*'),
861
+ '⦍' => [10637].pack('U*'),
862
+ 'Ľ' => [317].pack('U*'),
863
+ 'ľ' => [318].pack('U*'),
864
+ 'Ļ' => [315].pack('U*'),
865
+ 'ļ' => [316].pack('U*'),
866
+ '⌈' => [8968].pack('U*'),
867
+ '{' => [123].pack('U*'),
868
+ 'Л' => [1051].pack('U*'),
869
+ 'л' => [1083].pack('U*'),
870
+ '⤶' => [10550].pack('U*'),
871
+ '“' => [8220].pack('U*'),
872
+ '„' => [8222].pack('U*'),
873
+ '⥧' => [10599].pack('U*'),
874
+ '⥋' => [10571].pack('U*'),
875
+ '↲' => [8626].pack('U*'),
876
+ '≦' => [8806].pack('U*'),
877
+ '≤' => [8804].pack('U*'),
878
+ '⟨' => [10216].pack('U*'),
879
+ '←' => [8592].pack('U*'),
880
+ '⇐' => [8656].pack('U*'),
881
+ '←' => [8592].pack('U*'),
882
+ '⇤' => [8676].pack('U*'),
883
+ '⇆' => [8646].pack('U*'),
884
+ '↢' => [8610].pack('U*'),
885
+ '⌈' => [8968].pack('U*'),
886
+ '⟦' => [10214].pack('U*'),
887
+ '⥡' => [10593].pack('U*'),
888
+ '⇃' => [8643].pack('U*'),
889
+ '⥙' => [10585].pack('U*'),
890
+ '⌊' => [8970].pack('U*'),
891
+ '↽' => [8637].pack('U*'),
892
+ '↼' => [8636].pack('U*'),
893
+ '⇇' => [8647].pack('U*'),
894
+ '↔' => [8596].pack('U*'),
895
+ '⇔' => [8660].pack('U*'),
896
+ '↔' => [8596].pack('U*'),
897
+ '⇆' => [8646].pack('U*'),
898
+ '⇋' => [8651].pack('U*'),
899
+ '↭' => [8621].pack('U*'),
900
+ '⥎' => [10574].pack('U*'),
901
+ '⊣' => [8867].pack('U*'),
902
+ '↤' => [8612].pack('U*'),
903
+ '⥚' => [10586].pack('U*'),
904
+ '⋋' => [8907].pack('U*'),
905
+ '⊲' => [8882].pack('U*'),
906
+ '⧏' => [10703].pack('U*'),
907
+ '⊴' => [8884].pack('U*'),
908
+ '⥑' => [10577].pack('U*'),
909
+ '⥠' => [10592].pack('U*'),
910
+ '↿' => [8639].pack('U*'),
911
+ '⥘' => [10584].pack('U*'),
912
+ '↼' => [8636].pack('U*'),
913
+ '⥒' => [10578].pack('U*'),
914
+ '⪋' => [10891].pack('U*'),
915
+ '⋚' => [8922].pack('U*'),
916
+ '≤' => [8804].pack('U*'),
917
+ '≦' => [8806].pack('U*'),
918
+ '⩽' => [10877].pack('U*'),
919
+ '⩽' => [10877].pack('U*'),
920
+ '⪨' => [10920].pack('U*'),
921
+ '⩿' => [10879].pack('U*'),
922
+ '⪁' => [10881].pack('U*'),
923
+ '⪃' => [10883].pack('U*'),
924
+ '⋚︀' => [8922, 65024].pack('U*'),
925
+ '⪓' => [10899].pack('U*'),
926
+ '⪅' => [10885].pack('U*'),
927
+ '⋖' => [8918].pack('U*'),
928
+ '⋚' => [8922].pack('U*'),
929
+ '⪋' => [10891].pack('U*'),
930
+ '⋚' => [8922].pack('U*'),
931
+ '≦' => [8806].pack('U*'),
932
+ '≶' => [8822].pack('U*'),
933
+ '≶' => [8822].pack('U*'),
934
+ '⪡' => [10913].pack('U*'),
935
+ '≲' => [8818].pack('U*'),
936
+ '⩽' => [10877].pack('U*'),
937
+ '≲' => [8818].pack('U*'),
938
+ '⥼' => [10620].pack('U*'),
939
+ '⌊' => [8970].pack('U*'),
940
+ '𝔏' => [120079].pack('U*'),
941
+ '𝔩' => [120105].pack('U*'),
942
+ '≶' => [8822].pack('U*'),
943
+ '⪑' => [10897].pack('U*'),
944
+ '⥢' => [10594].pack('U*'),
945
+ '↽' => [8637].pack('U*'),
946
+ '↼' => [8636].pack('U*'),
947
+ '⥪' => [10602].pack('U*'),
948
+ '▄' => [9604].pack('U*'),
949
+ 'Љ' => [1033].pack('U*'),
950
+ 'љ' => [1113].pack('U*'),
951
+ '⋘' => [8920].pack('U*'),
952
+ '≪' => [8810].pack('U*'),
953
+ '⇇' => [8647].pack('U*'),
954
+ '⌞' => [8990].pack('U*'),
955
+ '⇚' => [8666].pack('U*'),
956
+ '⥫' => [10603].pack('U*'),
957
+ '◺' => [9722].pack('U*'),
958
+ 'Ŀ' => [319].pack('U*'),
959
+ 'ŀ' => [320].pack('U*'),
960
+ '⎰' => [9136].pack('U*'),
961
+ '⎰' => [9136].pack('U*'),
962
+ '⪉' => [10889].pack('U*'),
963
+ '⪉' => [10889].pack('U*'),
964
+ '≨' => [8808].pack('U*'),
965
+ '⪇' => [10887].pack('U*'),
966
+ '⪇' => [10887].pack('U*'),
967
+ '≨' => [8808].pack('U*'),
968
+ '⋦' => [8934].pack('U*'),
969
+ '⟬' => [10220].pack('U*'),
970
+ '⇽' => [8701].pack('U*'),
971
+ '⟦' => [10214].pack('U*'),
972
+ '⟵' => [10229].pack('U*'),
973
+ '⟸' => [10232].pack('U*'),
974
+ '⟵' => [10229].pack('U*'),
975
+ '⟷' => [10231].pack('U*'),
976
+ '⟺' => [10234].pack('U*'),
977
+ '⟷' => [10231].pack('U*'),
978
+ '⟼' => [10236].pack('U*'),
979
+ '⟶' => [10230].pack('U*'),
980
+ '⟹' => [10233].pack('U*'),
981
+ '⟶' => [10230].pack('U*'),
982
+ '↫' => [8619].pack('U*'),
983
+ '↬' => [8620].pack('U*'),
984
+ '⦅' => [10629].pack('U*'),
985
+ '𝕃' => [120131].pack('U*'),
986
+ '𝕝' => [120157].pack('U*'),
987
+ '⨭' => [10797].pack('U*'),
988
+ '⨴' => [10804].pack('U*'),
989
+ '∗' => [8727].pack('U*'),
990
+ '_' => [95].pack('U*'),
991
+ '↙' => [8601].pack('U*'),
992
+ '↘' => [8600].pack('U*'),
993
+ '◊' => [9674].pack('U*'),
994
+ '◊' => [9674].pack('U*'),
995
+ '⧫' => [10731].pack('U*'),
996
+ '(' => [40].pack('U*'),
997
+ '⦓' => [10643].pack('U*'),
998
+ '⇆' => [8646].pack('U*'),
999
+ '⌟' => [8991].pack('U*'),
1000
+ '⇋' => [8651].pack('U*'),
1001
+ '⥭' => [10605].pack('U*'),
1002
+ '‎' => [8206].pack('U*'),
1003
+ '⊿' => [8895].pack('U*'),
1004
+ '‹' => [8249].pack('U*'),
1005
+ 'ℒ' => [8466].pack('U*'),
1006
+ '𝓁' => [120001].pack('U*'),
1007
+ '↰' => [8624].pack('U*'),
1008
+ '↰' => [8624].pack('U*'),
1009
+ '≲' => [8818].pack('U*'),
1010
+ '⪍' => [10893].pack('U*'),
1011
+ '⪏' => [10895].pack('U*'),
1012
+ '[' => [91].pack('U*'),
1013
+ '‘' => [8216].pack('U*'),
1014
+ '‚' => [8218].pack('U*'),
1015
+ 'Ł' => [321].pack('U*'),
1016
+ 'ł' => [322].pack('U*'),
1017
+ '<' => [60].pack('U*'),
1018
+ '≪' => [8810].pack('U*'),
1019
+ '<' => [60].pack('U*'),
1020
+ '⪦' => [10918].pack('U*'),
1021
+ '⩹' => [10873].pack('U*'),
1022
+ '⋖' => [8918].pack('U*'),
1023
+ '⋋' => [8907].pack('U*'),
1024
+ '⋉' => [8905].pack('U*'),
1025
+ '⥶' => [10614].pack('U*'),
1026
+ '⩻' => [10875].pack('U*'),
1027
+ '◃' => [9667].pack('U*'),
1028
+ '⊴' => [8884].pack('U*'),
1029
+ '◂' => [9666].pack('U*'),
1030
+ '⦖' => [10646].pack('U*'),
1031
+ '⥊' => [10570].pack('U*'),
1032
+ '⥦' => [10598].pack('U*'),
1033
+ '≨︀' => [8808, 65024].pack('U*'),
1034
+ '≨︀' => [8808, 65024].pack('U*'),
1035
+ '¯' => [175].pack('U*'),
1036
+ '♂' => [9794].pack('U*'),
1037
+ '✠' => [10016].pack('U*'),
1038
+ '✠' => [10016].pack('U*'),
1039
+ '⤅' => [10501].pack('U*'),
1040
+ '↦' => [8614].pack('U*'),
1041
+ '↦' => [8614].pack('U*'),
1042
+ '↧' => [8615].pack('U*'),
1043
+ '↤' => [8612].pack('U*'),
1044
+ '↥' => [8613].pack('U*'),
1045
+ '▮' => [9646].pack('U*'),
1046
+ '⨩' => [10793].pack('U*'),
1047
+ 'М' => [1052].pack('U*'),
1048
+ 'м' => [1084].pack('U*'),
1049
+ '—' => [8212].pack('U*'),
1050
+ '∺' => [8762].pack('U*'),
1051
+ '∡' => [8737].pack('U*'),
1052
+ ' ' => [8287].pack('U*'),
1053
+ 'ℳ' => [8499].pack('U*'),
1054
+ '𝔐' => [120080].pack('U*'),
1055
+ '𝔪' => [120106].pack('U*'),
1056
+ '℧' => [8487].pack('U*'),
1057
+ 'µ' => [181].pack('U*'),
1058
+ '∣' => [8739].pack('U*'),
1059
+ '*' => [42].pack('U*'),
1060
+ '⫰' => [10992].pack('U*'),
1061
+ '·' => [183].pack('U*'),
1062
+ '−' => [8722].pack('U*'),
1063
+ '⊟' => [8863].pack('U*'),
1064
+ '∸' => [8760].pack('U*'),
1065
+ '⨪' => [10794].pack('U*'),
1066
+ '∓' => [8723].pack('U*'),
1067
+ '⫛' => [10971].pack('U*'),
1068
+ '…' => [8230].pack('U*'),
1069
+ '∓' => [8723].pack('U*'),
1070
+ '⊧' => [8871].pack('U*'),
1071
+ '𝕄' => [120132].pack('U*'),
1072
+ '𝕞' => [120158].pack('U*'),
1073
+ '∓' => [8723].pack('U*'),
1074
+ 'ℳ' => [8499].pack('U*'),
1075
+ '𝓂' => [120002].pack('U*'),
1076
+ '∾' => [8766].pack('U*'),
1077
+ 'Μ' => [924].pack('U*'),
1078
+ 'μ' => [956].pack('U*'),
1079
+ '⊸' => [8888].pack('U*'),
1080
+ '⊸' => [8888].pack('U*'),
1081
+ '∇' => [8711].pack('U*'),
1082
+ 'Ń' => [323].pack('U*'),
1083
+ 'ń' => [324].pack('U*'),
1084
+ '∠⃒' => [8736, 8402].pack('U*'),
1085
+ '≉' => [8777].pack('U*'),
1086
+ '⩰̸' => [10864, 824].pack('U*'),
1087
+ '≋̸' => [8779, 824].pack('U*'),
1088
+ 'ʼn' => [329].pack('U*'),
1089
+ '≉' => [8777].pack('U*'),
1090
+ '♮' => [9838].pack('U*'),
1091
+ '♮' => [9838].pack('U*'),
1092
+ 'ℕ' => [8469].pack('U*'),
1093
+ ' ' => [160].pack('U*'),
1094
+ '≎̸' => [8782, 824].pack('U*'),
1095
+ '≏̸' => [8783, 824].pack('U*'),
1096
+ '⩃' => [10819].pack('U*'),
1097
+ 'Ň' => [327].pack('U*'),
1098
+ 'ň' => [328].pack('U*'),
1099
+ 'Ņ' => [325].pack('U*'),
1100
+ 'ņ' => [326].pack('U*'),
1101
+ '≇' => [8775].pack('U*'),
1102
+ '⩭̸' => [10861, 824].pack('U*'),
1103
+ '⩂' => [10818].pack('U*'),
1104
+ 'Н' => [1053].pack('U*'),
1105
+ 'н' => [1085].pack('U*'),
1106
+ '–' => [8211].pack('U*'),
1107
+ '≠' => [8800].pack('U*'),
1108
+ '⤤' => [10532].pack('U*'),
1109
+ '⇗' => [8663].pack('U*'),
1110
+ '↗' => [8599].pack('U*'),
1111
+ '↗' => [8599].pack('U*'),
1112
+ '≐̸' => [8784, 824].pack('U*'),
1113
+ '​' => [8203].pack('U*'),
1114
+ '​' => [8203].pack('U*'),
1115
+ '​' => [8203].pack('U*'),
1116
+ '​' => [8203].pack('U*'),
1117
+ '≢' => [8802].pack('U*'),
1118
+ '⤨' => [10536].pack('U*'),
1119
+ '≂̸' => [8770, 824].pack('U*'),
1120
+ '≫' => [8811].pack('U*'),
1121
+ '≪' => [8810].pack('U*'),
1122
+ '
' => [10].pack('U*'),
1123
+ '∄' => [8708].pack('U*'),
1124
+ '∄' => [8708].pack('U*'),
1125
+ '𝔑' => [120081].pack('U*'),
1126
+ '𝔫' => [120107].pack('U*'),
1127
+ '≧̸' => [8807, 824].pack('U*'),
1128
+ '≱' => [8817].pack('U*'),
1129
+ '≱' => [8817].pack('U*'),
1130
+ '≧̸' => [8807, 824].pack('U*'),
1131
+ '⩾̸' => [10878, 824].pack('U*'),
1132
+ '⩾̸' => [10878, 824].pack('U*'),
1133
+ '⋙̸' => [8921, 824].pack('U*'),
1134
+ '≵' => [8821].pack('U*'),
1135
+ '≫⃒' => [8811, 8402].pack('U*'),
1136
+ '≯' => [8815].pack('U*'),
1137
+ '≯' => [8815].pack('U*'),
1138
+ '≫̸' => [8811, 824].pack('U*'),
1139
+ '⇎' => [8654].pack('U*'),
1140
+ '↮' => [8622].pack('U*'),
1141
+ '⫲' => [10994].pack('U*'),
1142
+ '∋' => [8715].pack('U*'),
1143
+ '⋼' => [8956].pack('U*'),
1144
+ '⋺' => [8954].pack('U*'),
1145
+ '∋' => [8715].pack('U*'),
1146
+ 'Њ' => [1034].pack('U*'),
1147
+ 'њ' => [1114].pack('U*'),
1148
+ '⇍' => [8653].pack('U*'),
1149
+ '↚' => [8602].pack('U*'),
1150
+ '‥' => [8229].pack('U*'),
1151
+ '≦̸' => [8806, 824].pack('U*'),
1152
+ '≰' => [8816].pack('U*'),
1153
+ '⇍' => [8653].pack('U*'),
1154
+ '↚' => [8602].pack('U*'),
1155
+ '⇎' => [8654].pack('U*'),
1156
+ '↮' => [8622].pack('U*'),
1157
+ '≰' => [8816].pack('U*'),
1158
+ '≦̸' => [8806, 824].pack('U*'),
1159
+ '⩽̸' => [10877, 824].pack('U*'),
1160
+ '⩽̸' => [10877, 824].pack('U*'),
1161
+ '≮' => [8814].pack('U*'),
1162
+ '⋘̸' => [8920, 824].pack('U*'),
1163
+ '≴' => [8820].pack('U*'),
1164
+ '≪⃒' => [8810, 8402].pack('U*'),
1165
+ '≮' => [8814].pack('U*'),
1166
+ '⋪' => [8938].pack('U*'),
1167
+ '⋬' => [8940].pack('U*'),
1168
+ '≪̸' => [8810, 824].pack('U*'),
1169
+ '∤' => [8740].pack('U*'),
1170
+ '⁠' => [8288].pack('U*'),
1171
+ ' ' => [160].pack('U*'),
1172
+ 'ℕ' => [8469].pack('U*'),
1173
+ '𝕟' => [120159].pack('U*'),
1174
+ '⫬' => [10988].pack('U*'),
1175
+ '¬' => [172].pack('U*'),
1176
+ '≢' => [8802].pack('U*'),
1177
+ '≭' => [8813].pack('U*'),
1178
+ '∦' => [8742].pack('U*'),
1179
+ '∉' => [8713].pack('U*'),
1180
+ '≠' => [8800].pack('U*'),
1181
+ '≂̸' => [8770, 824].pack('U*'),
1182
+ '∄' => [8708].pack('U*'),
1183
+ '≯' => [8815].pack('U*'),
1184
+ '≱' => [8817].pack('U*'),
1185
+ '≧̸' => [8807, 824].pack('U*'),
1186
+ '≫̸' => [8811, 824].pack('U*'),
1187
+ '≹' => [8825].pack('U*'),
1188
+ '⩾̸' => [10878, 824].pack('U*'),
1189
+ '≵' => [8821].pack('U*'),
1190
+ '≎̸' => [8782, 824].pack('U*'),
1191
+ '≏̸' => [8783, 824].pack('U*'),
1192
+ '∉' => [8713].pack('U*'),
1193
+ '⋵̸' => [8949, 824].pack('U*'),
1194
+ '⋹̸' => [8953, 824].pack('U*'),
1195
+ '∉' => [8713].pack('U*'),
1196
+ '⋷' => [8951].pack('U*'),
1197
+ '⋶' => [8950].pack('U*'),
1198
+ '⋪' => [8938].pack('U*'),
1199
+ '⧏̸' => [10703, 824].pack('U*'),
1200
+ '⋬' => [8940].pack('U*'),
1201
+ '≮' => [8814].pack('U*'),
1202
+ '≰' => [8816].pack('U*'),
1203
+ '≸' => [8824].pack('U*'),
1204
+ '≪̸' => [8810, 824].pack('U*'),
1205
+ '⩽̸' => [10877, 824].pack('U*'),
1206
+ '≴' => [8820].pack('U*'),
1207
+ '⪢̸' => [10914, 824].pack('U*'),
1208
+ '⪡̸' => [10913, 824].pack('U*'),
1209
+ '∌' => [8716].pack('U*'),
1210
+ '∌' => [8716].pack('U*'),
1211
+ '⋾' => [8958].pack('U*'),
1212
+ '⋽' => [8957].pack('U*'),
1213
+ '⊀' => [8832].pack('U*'),
1214
+ '⪯̸' => [10927, 824].pack('U*'),
1215
+ '⋠' => [8928].pack('U*'),
1216
+ '∌' => [8716].pack('U*'),
1217
+ '⋫' => [8939].pack('U*'),
1218
+ '⧐̸' => [10704, 824].pack('U*'),
1219
+ '⋭' => [8941].pack('U*'),
1220
+ '⊏̸' => [8847, 824].pack('U*'),
1221
+ '⋢' => [8930].pack('U*'),
1222
+ '⊐̸' => [8848, 824].pack('U*'),
1223
+ '⋣' => [8931].pack('U*'),
1224
+ '⊂⃒' => [8834, 8402].pack('U*'),
1225
+ '⊈' => [8840].pack('U*'),
1226
+ '⊁' => [8833].pack('U*'),
1227
+ '⪰̸' => [10928, 824].pack('U*'),
1228
+ '⋡' => [8929].pack('U*'),
1229
+ '≿̸' => [8831, 824].pack('U*'),
1230
+ '⊃⃒' => [8835, 8402].pack('U*'),
1231
+ '⊉' => [8841].pack('U*'),
1232
+ '≁' => [8769].pack('U*'),
1233
+ '≄' => [8772].pack('U*'),
1234
+ '≇' => [8775].pack('U*'),
1235
+ '≉' => [8777].pack('U*'),
1236
+ '∤' => [8740].pack('U*'),
1237
+ '∦' => [8742].pack('U*'),
1238
+ '∦' => [8742].pack('U*'),
1239
+ '⫽⃥' => [11005, 8421].pack('U*'),
1240
+ '∂̸' => [8706, 824].pack('U*'),
1241
+ '⨔' => [10772].pack('U*'),
1242
+ '⊀' => [8832].pack('U*'),
1243
+ '⋠' => [8928].pack('U*'),
1244
+ '⪯̸' => [10927, 824].pack('U*'),
1245
+ '⊀' => [8832].pack('U*'),
1246
+ '⪯̸' => [10927, 824].pack('U*'),
1247
+ '⇏' => [8655].pack('U*'),
1248
+ '↛' => [8603].pack('U*'),
1249
+ '⤳̸' => [10547, 824].pack('U*'),
1250
+ '↝̸' => [8605, 824].pack('U*'),
1251
+ '⇏' => [8655].pack('U*'),
1252
+ '↛' => [8603].pack('U*'),
1253
+ '⋫' => [8939].pack('U*'),
1254
+ '⋭' => [8941].pack('U*'),
1255
+ '⊁' => [8833].pack('U*'),
1256
+ '⋡' => [8929].pack('U*'),
1257
+ '⪰̸' => [10928, 824].pack('U*'),
1258
+ '𝒩' => [119977].pack('U*'),
1259
+ '𝓃' => [120003].pack('U*'),
1260
+ '∤' => [8740].pack('U*'),
1261
+ '∦' => [8742].pack('U*'),
1262
+ '≁' => [8769].pack('U*'),
1263
+ '≄' => [8772].pack('U*'),
1264
+ '≄' => [8772].pack('U*'),
1265
+ '∤' => [8740].pack('U*'),
1266
+ '∦' => [8742].pack('U*'),
1267
+ '⋢' => [8930].pack('U*'),
1268
+ '⋣' => [8931].pack('U*'),
1269
+ '⊄' => [8836].pack('U*'),
1270
+ '⫅̸' => [10949, 824].pack('U*'),
1271
+ '⊈' => [8840].pack('U*'),
1272
+ '⊂⃒' => [8834, 8402].pack('U*'),
1273
+ '⊈' => [8840].pack('U*'),
1274
+ '⫅̸' => [10949, 824].pack('U*'),
1275
+ '⊁' => [8833].pack('U*'),
1276
+ '⪰̸' => [10928, 824].pack('U*'),
1277
+ '⊅' => [8837].pack('U*'),
1278
+ '⫆̸' => [10950, 824].pack('U*'),
1279
+ '⊉' => [8841].pack('U*'),
1280
+ '⊃⃒' => [8835, 8402].pack('U*'),
1281
+ '⊉' => [8841].pack('U*'),
1282
+ '⫆̸' => [10950, 824].pack('U*'),
1283
+ '≹' => [8825].pack('U*'),
1284
+ 'Ñ' => [209].pack('U*'),
1285
+ 'ñ' => [241].pack('U*'),
1286
+ '≸' => [8824].pack('U*'),
1287
+ '⋪' => [8938].pack('U*'),
1288
+ '⋬' => [8940].pack('U*'),
1289
+ '⋫' => [8939].pack('U*'),
1290
+ '⋭' => [8941].pack('U*'),
1291
+ 'Ν' => [925].pack('U*'),
1292
+ 'ν' => [957].pack('U*'),
1293
+ '#' => [35].pack('U*'),
1294
+ '№' => [8470].pack('U*'),
1295
+ ' ' => [8199].pack('U*'),
1296
+ '≍⃒' => [8781, 8402].pack('U*'),
1297
+ '⊯' => [8879].pack('U*'),
1298
+ '⊮' => [8878].pack('U*'),
1299
+ '⊭' => [8877].pack('U*'),
1300
+ '⊬' => [8876].pack('U*'),
1301
+ '≥⃒' => [8805, 8402].pack('U*'),
1302
+ '>⃒' => [62, 8402].pack('U*'),
1303
+ '⤄' => [10500].pack('U*'),
1304
+ '⧞' => [10718].pack('U*'),
1305
+ '⤂' => [10498].pack('U*'),
1306
+ '≤⃒' => [8804, 8402].pack('U*'),
1307
+ '<⃒' => [60, 8402].pack('U*'),
1308
+ '⊴⃒' => [8884, 8402].pack('U*'),
1309
+ '⤃' => [10499].pack('U*'),
1310
+ '⊵⃒' => [8885, 8402].pack('U*'),
1311
+ '∼⃒' => [8764, 8402].pack('U*'),
1312
+ '⤣' => [10531].pack('U*'),
1313
+ '⇖' => [8662].pack('U*'),
1314
+ '↖' => [8598].pack('U*'),
1315
+ '↖' => [8598].pack('U*'),
1316
+ '⤧' => [10535].pack('U*'),
1317
+ 'Ó' => [211].pack('U*'),
1318
+ 'ó' => [243].pack('U*'),
1319
+ '⊛' => [8859].pack('U*'),
1320
+ '⊚' => [8858].pack('U*'),
1321
+ 'Ô' => [212].pack('U*'),
1322
+ 'ô' => [244].pack('U*'),
1323
+ 'О' => [1054].pack('U*'),
1324
+ 'о' => [1086].pack('U*'),
1325
+ '⊝' => [8861].pack('U*'),
1326
+ 'Ő' => [336].pack('U*'),
1327
+ 'ő' => [337].pack('U*'),
1328
+ '⨸' => [10808].pack('U*'),
1329
+ '⊙' => [8857].pack('U*'),
1330
+ '⦼' => [10684].pack('U*'),
1331
+ 'Œ' => [338].pack('U*'),
1332
+ 'œ' => [339].pack('U*'),
1333
+ '⦿' => [10687].pack('U*'),
1334
+ '𝔒' => [120082].pack('U*'),
1335
+ '𝔬' => [120108].pack('U*'),
1336
+ '˛' => [731].pack('U*'),
1337
+ 'Ò' => [210].pack('U*'),
1338
+ 'ò' => [242].pack('U*'),
1339
+ '⧁' => [10689].pack('U*'),
1340
+ '⦵' => [10677].pack('U*'),
1341
+ 'Ω' => [937].pack('U*'),
1342
+ '∮' => [8750].pack('U*'),
1343
+ '↺' => [8634].pack('U*'),
1344
+ '⦾' => [10686].pack('U*'),
1345
+ '⦻' => [10683].pack('U*'),
1346
+ '‾' => [8254].pack('U*'),
1347
+ '⧀' => [10688].pack('U*'),
1348
+ 'Ō' => [332].pack('U*'),
1349
+ 'ō' => [333].pack('U*'),
1350
+ 'Ω' => [937].pack('U*'),
1351
+ 'ω' => [969].pack('U*'),
1352
+ 'Ο' => [927].pack('U*'),
1353
+ 'ο' => [959].pack('U*'),
1354
+ '⦶' => [10678].pack('U*'),
1355
+ '⊖' => [8854].pack('U*'),
1356
+ '𝕆' => [120134].pack('U*'),
1357
+ '𝕠' => [120160].pack('U*'),
1358
+ '⦷' => [10679].pack('U*'),
1359
+ '“' => [8220].pack('U*'),
1360
+ '‘' => [8216].pack('U*'),
1361
+ '⦹' => [10681].pack('U*'),
1362
+ '⊕' => [8853].pack('U*'),
1363
+ '⩔' => [10836].pack('U*'),
1364
+ '∨' => [8744].pack('U*'),
1365
+ '↻' => [8635].pack('U*'),
1366
+ '⩝' => [10845].pack('U*'),
1367
+ 'ℴ' => [8500].pack('U*'),
1368
+ 'ℴ' => [8500].pack('U*'),
1369
+ 'ª' => [170].pack('U*'),
1370
+ 'º' => [186].pack('U*'),
1371
+ '⊶' => [8886].pack('U*'),
1372
+ '⩖' => [10838].pack('U*'),
1373
+ '⩗' => [10839].pack('U*'),
1374
+ '⩛' => [10843].pack('U*'),
1375
+ 'Ⓢ' => [9416].pack('U*'),
1376
+ '𝒪' => [119978].pack('U*'),
1377
+ 'ℴ' => [8500].pack('U*'),
1378
+ 'Ø' => [216].pack('U*'),
1379
+ 'ø' => [248].pack('U*'),
1380
+ '⊘' => [8856].pack('U*'),
1381
+ 'Õ' => [213].pack('U*'),
1382
+ 'õ' => [245].pack('U*'),
1383
+ '⨷' => [10807].pack('U*'),
1384
+ '⊗' => [8855].pack('U*'),
1385
+ '⨶' => [10806].pack('U*'),
1386
+ 'Ö' => [214].pack('U*'),
1387
+ 'ö' => [246].pack('U*'),
1388
+ '⌽' => [9021].pack('U*'),
1389
+ '‾' => [8254].pack('U*'),
1390
+ '⏞' => [9182].pack('U*'),
1391
+ '⎴' => [9140].pack('U*'),
1392
+ '⏜' => [9180].pack('U*'),
1393
+ '∥' => [8741].pack('U*'),
1394
+ '¶' => [182].pack('U*'),
1395
+ '∥' => [8741].pack('U*'),
1396
+ '⫳' => [10995].pack('U*'),
1397
+ '⫽' => [11005].pack('U*'),
1398
+ '∂' => [8706].pack('U*'),
1399
+ '∂' => [8706].pack('U*'),
1400
+ 'П' => [1055].pack('U*'),
1401
+ 'п' => [1087].pack('U*'),
1402
+ '%' => [37].pack('U*'),
1403
+ '.' => [46].pack('U*'),
1404
+ '‰' => [8240].pack('U*'),
1405
+ '⊥' => [8869].pack('U*'),
1406
+ '‱' => [8241].pack('U*'),
1407
+ '𝔓' => [120083].pack('U*'),
1408
+ '𝔭' => [120109].pack('U*'),
1409
+ 'Φ' => [934].pack('U*'),
1410
+ 'φ' => [966].pack('U*'),
1411
+ 'ϕ' => [981].pack('U*'),
1412
+ 'ℳ' => [8499].pack('U*'),
1413
+ '☎' => [9742].pack('U*'),
1414
+ 'Π' => [928].pack('U*'),
1415
+ 'π' => [960].pack('U*'),
1416
+ '⋔' => [8916].pack('U*'),
1417
+ 'ϖ' => [982].pack('U*'),
1418
+ 'ℏ' => [8463].pack('U*'),
1419
+ 'ℎ' => [8462].pack('U*'),
1420
+ 'ℏ' => [8463].pack('U*'),
1421
+ '+' => [43].pack('U*'),
1422
+ '⨣' => [10787].pack('U*'),
1423
+ '⊞' => [8862].pack('U*'),
1424
+ '⨢' => [10786].pack('U*'),
1425
+ '∔' => [8724].pack('U*'),
1426
+ '⨥' => [10789].pack('U*'),
1427
+ '⩲' => [10866].pack('U*'),
1428
+ '±' => [177].pack('U*'),
1429
+ '±' => [177].pack('U*'),
1430
+ '⨦' => [10790].pack('U*'),
1431
+ '⨧' => [10791].pack('U*'),
1432
+ '±' => [177].pack('U*'),
1433
+ 'ℌ' => [8460].pack('U*'),
1434
+ '⨕' => [10773].pack('U*'),
1435
+ 'ℙ' => [8473].pack('U*'),
1436
+ '𝕡' => [120161].pack('U*'),
1437
+ '£' => [163].pack('U*'),
1438
+ '⪻' => [10939].pack('U*'),
1439
+ '≺' => [8826].pack('U*'),
1440
+ '⪷' => [10935].pack('U*'),
1441
+ '≼' => [8828].pack('U*'),
1442
+ '⪳' => [10931].pack('U*'),
1443
+ '⪯' => [10927].pack('U*'),
1444
+ '≺' => [8826].pack('U*'),
1445
+ '⪷' => [10935].pack('U*'),
1446
+ '≼' => [8828].pack('U*'),
1447
+ '≺' => [8826].pack('U*'),
1448
+ '⪯' => [10927].pack('U*'),
1449
+ '≼' => [8828].pack('U*'),
1450
+ '≾' => [8830].pack('U*'),
1451
+ '⪯' => [10927].pack('U*'),
1452
+ '⪹' => [10937].pack('U*'),
1453
+ '⪵' => [10933].pack('U*'),
1454
+ '⋨' => [8936].pack('U*'),
1455
+ '≾' => [8830].pack('U*'),
1456
+ '″' => [8243].pack('U*'),
1457
+ '′' => [8242].pack('U*'),
1458
+ 'ℙ' => [8473].pack('U*'),
1459
+ '⪹' => [10937].pack('U*'),
1460
+ '⪵' => [10933].pack('U*'),
1461
+ '⋨' => [8936].pack('U*'),
1462
+ '∏' => [8719].pack('U*'),
1463
+ '∏' => [8719].pack('U*'),
1464
+ '⌮' => [9006].pack('U*'),
1465
+ '⌒' => [8978].pack('U*'),
1466
+ '⌓' => [8979].pack('U*'),
1467
+ '∝' => [8733].pack('U*'),
1468
+ '∷' => [8759].pack('U*'),
1469
+ '∝' => [8733].pack('U*'),
1470
+ '∝' => [8733].pack('U*'),
1471
+ '≾' => [8830].pack('U*'),
1472
+ '⊰' => [8880].pack('U*'),
1473
+ '𝒫' => [119979].pack('U*'),
1474
+ '𝓅' => [120005].pack('U*'),
1475
+ 'Ψ' => [936].pack('U*'),
1476
+ 'ψ' => [968].pack('U*'),
1477
+ ' ' => [8200].pack('U*'),
1478
+ '𝔔' => [120084].pack('U*'),
1479
+ '𝔮' => [120110].pack('U*'),
1480
+ '⨌' => [10764].pack('U*'),
1481
+ 'ℚ' => [8474].pack('U*'),
1482
+ '𝕢' => [120162].pack('U*'),
1483
+ '⁗' => [8279].pack('U*'),
1484
+ '𝒬' => [119980].pack('U*'),
1485
+ '𝓆' => [120006].pack('U*'),
1486
+ 'ℍ' => [8461].pack('U*'),
1487
+ '⨖' => [10774].pack('U*'),
1488
+ '?' => [63].pack('U*'),
1489
+ '≟' => [8799].pack('U*'),
1490
+ '"' => [34].pack('U*'),
1491
+ '"' => [34].pack('U*'),
1492
+ '⇛' => [8667].pack('U*'),
1493
+ '∽̱' => [8765, 817].pack('U*'),
1494
+ 'Ŕ' => [340].pack('U*'),
1495
+ 'ŕ' => [341].pack('U*'),
1496
+ '√' => [8730].pack('U*'),
1497
+ '⦳' => [10675].pack('U*'),
1498
+ '⟫' => [10219].pack('U*'),
1499
+ '⟩' => [10217].pack('U*'),
1500
+ '⦒' => [10642].pack('U*'),
1501
+ '⦥' => [10661].pack('U*'),
1502
+ '⟩' => [10217].pack('U*'),
1503
+ '»' => [187].pack('U*'),
1504
+ '↠' => [8608].pack('U*'),
1505
+ '⇒' => [8658].pack('U*'),
1506
+ '→' => [8594].pack('U*'),
1507
+ '⥵' => [10613].pack('U*'),
1508
+ '⇥' => [8677].pack('U*'),
1509
+ '⤠' => [10528].pack('U*'),
1510
+ '⤳' => [10547].pack('U*'),
1511
+ '⤞' => [10526].pack('U*'),
1512
+ '↪' => [8618].pack('U*'),
1513
+ '↬' => [8620].pack('U*'),
1514
+ '⥅' => [10565].pack('U*'),
1515
+ '⥴' => [10612].pack('U*'),
1516
+ '⤖' => [10518].pack('U*'),
1517
+ '↣' => [8611].pack('U*'),
1518
+ '↝' => [8605].pack('U*'),
1519
+ '⤜' => [10524].pack('U*'),
1520
+ '⤚' => [10522].pack('U*'),
1521
+ '∶' => [8758].pack('U*'),
1522
+ 'ℚ' => [8474].pack('U*'),
1523
+ '⤐' => [10512].pack('U*'),
1524
+ '⤏' => [10511].pack('U*'),
1525
+ '⤍' => [10509].pack('U*'),
1526
+ '❳' => [10099].pack('U*'),
1527
+ '}' => [125].pack('U*'),
1528
+ ']' => [93].pack('U*'),
1529
+ '⦌' => [10636].pack('U*'),
1530
+ '⦎' => [10638].pack('U*'),
1531
+ '⦐' => [10640].pack('U*'),
1532
+ 'Ř' => [344].pack('U*'),
1533
+ 'ř' => [345].pack('U*'),
1534
+ 'Ŗ' => [342].pack('U*'),
1535
+ 'ŗ' => [343].pack('U*'),
1536
+ '⌉' => [8969].pack('U*'),
1537
+ '}' => [125].pack('U*'),
1538
+ 'Р' => [1056].pack('U*'),
1539
+ 'р' => [1088].pack('U*'),
1540
+ '⤷' => [10551].pack('U*'),
1541
+ '⥩' => [10601].pack('U*'),
1542
+ '”' => [8221].pack('U*'),
1543
+ '”' => [8221].pack('U*'),
1544
+ '↳' => [8627].pack('U*'),
1545
+ 'ℜ' => [8476].pack('U*'),
1546
+ 'ℜ' => [8476].pack('U*'),
1547
+ 'ℛ' => [8475].pack('U*'),
1548
+ 'ℜ' => [8476].pack('U*'),
1549
+ 'ℝ' => [8477].pack('U*'),
1550
+ '▭' => [9645].pack('U*'),
1551
+ '®' => [174].pack('U*'),
1552
+ '®' => [174].pack('U*'),
1553
+ '∋' => [8715].pack('U*'),
1554
+ '⇋' => [8651].pack('U*'),
1555
+ '⥯' => [10607].pack('U*'),
1556
+ '⥽' => [10621].pack('U*'),
1557
+ '⌋' => [8971].pack('U*'),
1558
+ 'ℜ' => [8476].pack('U*'),
1559
+ '𝔯' => [120111].pack('U*'),
1560
+ '⥤' => [10596].pack('U*'),
1561
+ '⇁' => [8641].pack('U*'),
1562
+ '⇀' => [8640].pack('U*'),
1563
+ '⥬' => [10604].pack('U*'),
1564
+ 'Ρ' => [929].pack('U*'),
1565
+ 'ρ' => [961].pack('U*'),
1566
+ 'ϱ' => [1009].pack('U*'),
1567
+ '⟩' => [10217].pack('U*'),
1568
+ '→' => [8594].pack('U*'),
1569
+ '⇒' => [8658].pack('U*'),
1570
+ '→' => [8594].pack('U*'),
1571
+ '⇥' => [8677].pack('U*'),
1572
+ '⇄' => [8644].pack('U*'),
1573
+ '↣' => [8611].pack('U*'),
1574
+ '⌉' => [8969].pack('U*'),
1575
+ '⟧' => [10215].pack('U*'),
1576
+ '⥝' => [10589].pack('U*'),
1577
+ '⇂' => [8642].pack('U*'),
1578
+ '⥕' => [10581].pack('U*'),
1579
+ '⌋' => [8971].pack('U*'),
1580
+ '⇁' => [8641].pack('U*'),
1581
+ '⇀' => [8640].pack('U*'),
1582
+ '⇄' => [8644].pack('U*'),
1583
+ '⇌' => [8652].pack('U*'),
1584
+ '⇉' => [8649].pack('U*'),
1585
+ '↝' => [8605].pack('U*'),
1586
+ '⊢' => [8866].pack('U*'),
1587
+ '↦' => [8614].pack('U*'),
1588
+ '⥛' => [10587].pack('U*'),
1589
+ '⋌' => [8908].pack('U*'),
1590
+ '⊳' => [8883].pack('U*'),
1591
+ '⧐' => [10704].pack('U*'),
1592
+ '⊵' => [8885].pack('U*'),
1593
+ '⥏' => [10575].pack('U*'),
1594
+ '⥜' => [10588].pack('U*'),
1595
+ '↾' => [8638].pack('U*'),
1596
+ '⥔' => [10580].pack('U*'),
1597
+ '⇀' => [8640].pack('U*'),
1598
+ '⥓' => [10579].pack('U*'),
1599
+ '˚' => [730].pack('U*'),
1600
+ '≓' => [8787].pack('U*'),
1601
+ '⇄' => [8644].pack('U*'),
1602
+ '⇌' => [8652].pack('U*'),
1603
+ '‏' => [8207].pack('U*'),
1604
+ '⎱' => [9137].pack('U*'),
1605
+ '⎱' => [9137].pack('U*'),
1606
+ '⫮' => [10990].pack('U*'),
1607
+ '⟭' => [10221].pack('U*'),
1608
+ '⇾' => [8702].pack('U*'),
1609
+ '⟧' => [10215].pack('U*'),
1610
+ '⦆' => [10630].pack('U*'),
1611
+ 'ℝ' => [8477].pack('U*'),
1612
+ '𝕣' => [120163].pack('U*'),
1613
+ '⨮' => [10798].pack('U*'),
1614
+ '⨵' => [10805].pack('U*'),
1615
+ '⥰' => [10608].pack('U*'),
1616
+ ')' => [41].pack('U*'),
1617
+ '⦔' => [10644].pack('U*'),
1618
+ '⨒' => [10770].pack('U*'),
1619
+ '⇉' => [8649].pack('U*'),
1620
+ '⇛' => [8667].pack('U*'),
1621
+ '›' => [8250].pack('U*'),
1622
+ 'ℛ' => [8475].pack('U*'),
1623
+ '𝓇' => [120007].pack('U*'),
1624
+ '↱' => [8625].pack('U*'),
1625
+ '↱' => [8625].pack('U*'),
1626
+ ']' => [93].pack('U*'),
1627
+ '’' => [8217].pack('U*'),
1628
+ '’' => [8217].pack('U*'),
1629
+ '⋌' => [8908].pack('U*'),
1630
+ '⋊' => [8906].pack('U*'),
1631
+ '▹' => [9657].pack('U*'),
1632
+ '⊵' => [8885].pack('U*'),
1633
+ '▸' => [9656].pack('U*'),
1634
+ '⧎' => [10702].pack('U*'),
1635
+ '⧴' => [10740].pack('U*'),
1636
+ '⥨' => [10600].pack('U*'),
1637
+ '℞' => [8478].pack('U*'),
1638
+ 'Ś' => [346].pack('U*'),
1639
+ 'ś' => [347].pack('U*'),
1640
+ '‚' => [8218].pack('U*'),
1641
+ '⪼' => [10940].pack('U*'),
1642
+ '≻' => [8827].pack('U*'),
1643
+ '⪸' => [10936].pack('U*'),
1644
+ 'Š' => [352].pack('U*'),
1645
+ 'š' => [353].pack('U*'),
1646
+ '≽' => [8829].pack('U*'),
1647
+ '⪴' => [10932].pack('U*'),
1648
+ '⪰' => [10928].pack('U*'),
1649
+ 'Ş' => [350].pack('U*'),
1650
+ 'ş' => [351].pack('U*'),
1651
+ 'Ŝ' => [348].pack('U*'),
1652
+ 'ŝ' => [349].pack('U*'),
1653
+ '⪺' => [10938].pack('U*'),
1654
+ '⪶' => [10934].pack('U*'),
1655
+ '⋩' => [8937].pack('U*'),
1656
+ '⨓' => [10771].pack('U*'),
1657
+ '≿' => [8831].pack('U*'),
1658
+ 'С' => [1057].pack('U*'),
1659
+ 'с' => [1089].pack('U*'),
1660
+ '⋅' => [8901].pack('U*'),
1661
+ '⊡' => [8865].pack('U*'),
1662
+ '⩦' => [10854].pack('U*'),
1663
+ '⤥' => [10533].pack('U*'),
1664
+ '⇘' => [8664].pack('U*'),
1665
+ '↘' => [8600].pack('U*'),
1666
+ '↘' => [8600].pack('U*'),
1667
+ '§' => [167].pack('U*'),
1668
+ ';' => [59].pack('U*'),
1669
+ '⤩' => [10537].pack('U*'),
1670
+ '∖' => [8726].pack('U*'),
1671
+ '∖' => [8726].pack('U*'),
1672
+ '✶' => [10038].pack('U*'),
1673
+ '𝔖' => [120086].pack('U*'),
1674
+ '𝔰' => [120112].pack('U*'),
1675
+ '⌢' => [8994].pack('U*'),
1676
+ '♯' => [9839].pack('U*'),
1677
+ 'Щ' => [1065].pack('U*'),
1678
+ 'щ' => [1097].pack('U*'),
1679
+ 'Ш' => [1064].pack('U*'),
1680
+ 'ш' => [1096].pack('U*'),
1681
+ '↓' => [8595].pack('U*'),
1682
+ '←' => [8592].pack('U*'),
1683
+ '∣' => [8739].pack('U*'),
1684
+ '∥' => [8741].pack('U*'),
1685
+ '→' => [8594].pack('U*'),
1686
+ '↑' => [8593].pack('U*'),
1687
+ '­' => [173].pack('U*'),
1688
+ 'Σ' => [931].pack('U*'),
1689
+ 'σ' => [963].pack('U*'),
1690
+ 'ς' => [962].pack('U*'),
1691
+ 'ς' => [962].pack('U*'),
1692
+ '∼' => [8764].pack('U*'),
1693
+ '⩪' => [10858].pack('U*'),
1694
+ '≃' => [8771].pack('U*'),
1695
+ '≃' => [8771].pack('U*'),
1696
+ '⪞' => [10910].pack('U*'),
1697
+ '⪠' => [10912].pack('U*'),
1698
+ '⪝' => [10909].pack('U*'),
1699
+ '⪟' => [10911].pack('U*'),
1700
+ '≆' => [8774].pack('U*'),
1701
+ '⨤' => [10788].pack('U*'),
1702
+ '⥲' => [10610].pack('U*'),
1703
+ '←' => [8592].pack('U*'),
1704
+ '∘' => [8728].pack('U*'),
1705
+ '∖' => [8726].pack('U*'),
1706
+ '⨳' => [10803].pack('U*'),
1707
+ '⧤' => [10724].pack('U*'),
1708
+ '∣' => [8739].pack('U*'),
1709
+ '⌣' => [8995].pack('U*'),
1710
+ '⪪' => [10922].pack('U*'),
1711
+ '⪬' => [10924].pack('U*'),
1712
+ '⪬︀' => [10924, 65024].pack('U*'),
1713
+ 'Ь' => [1068].pack('U*'),
1714
+ 'ь' => [1100].pack('U*'),
1715
+ '/' => [47].pack('U*'),
1716
+ '⧄' => [10692].pack('U*'),
1717
+ '⌿' => [9023].pack('U*'),
1718
+ '𝕊' => [120138].pack('U*'),
1719
+ '𝕤' => [120164].pack('U*'),
1720
+ '♠' => [9824].pack('U*'),
1721
+ '♠' => [9824].pack('U*'),
1722
+ '∥' => [8741].pack('U*'),
1723
+ '⊓' => [8851].pack('U*'),
1724
+ '⊓︀' => [8851, 65024].pack('U*'),
1725
+ '⊔' => [8852].pack('U*'),
1726
+ '⊔︀' => [8852, 65024].pack('U*'),
1727
+ '√' => [8730].pack('U*'),
1728
+ '⊏' => [8847].pack('U*'),
1729
+ '⊑' => [8849].pack('U*'),
1730
+ '⊏' => [8847].pack('U*'),
1731
+ '⊑' => [8849].pack('U*'),
1732
+ '⊐' => [8848].pack('U*'),
1733
+ '⊒' => [8850].pack('U*'),
1734
+ '⊐' => [8848].pack('U*'),
1735
+ '⊒' => [8850].pack('U*'),
1736
+ '□' => [9633].pack('U*'),
1737
+ '□' => [9633].pack('U*'),
1738
+ '□' => [9633].pack('U*'),
1739
+ '⊓' => [8851].pack('U*'),
1740
+ '⊏' => [8847].pack('U*'),
1741
+ '⊑' => [8849].pack('U*'),
1742
+ '⊐' => [8848].pack('U*'),
1743
+ '⊒' => [8850].pack('U*'),
1744
+ '⊔' => [8852].pack('U*'),
1745
+ '▪' => [9642].pack('U*'),
1746
+ '▪' => [9642].pack('U*'),
1747
+ '→' => [8594].pack('U*'),
1748
+ '𝒮' => [119982].pack('U*'),
1749
+ '𝓈' => [120008].pack('U*'),
1750
+ '∖' => [8726].pack('U*'),
1751
+ '⌣' => [8995].pack('U*'),
1752
+ '⋆' => [8902].pack('U*'),
1753
+ '⋆' => [8902].pack('U*'),
1754
+ '☆' => [9734].pack('U*'),
1755
+ '★' => [9733].pack('U*'),
1756
+ 'ϵ' => [1013].pack('U*'),
1757
+ 'ϕ' => [981].pack('U*'),
1758
+ '¯' => [175].pack('U*'),
1759
+ '⋐' => [8912].pack('U*'),
1760
+ '⊂' => [8834].pack('U*'),
1761
+ '⪽' => [10941].pack('U*'),
1762
+ '⫅' => [10949].pack('U*'),
1763
+ '⊆' => [8838].pack('U*'),
1764
+ '⫃' => [10947].pack('U*'),
1765
+ '⫁' => [10945].pack('U*'),
1766
+ '⫋' => [10955].pack('U*'),
1767
+ '⊊' => [8842].pack('U*'),
1768
+ '⪿' => [10943].pack('U*'),
1769
+ '⥹' => [10617].pack('U*'),
1770
+ '⋐' => [8912].pack('U*'),
1771
+ '⊂' => [8834].pack('U*'),
1772
+ '⊆' => [8838].pack('U*'),
1773
+ '⫅' => [10949].pack('U*'),
1774
+ '⊆' => [8838].pack('U*'),
1775
+ '⊊' => [8842].pack('U*'),
1776
+ '⫋' => [10955].pack('U*'),
1777
+ '⫇' => [10951].pack('U*'),
1778
+ '⫕' => [10965].pack('U*'),
1779
+ '⫓' => [10963].pack('U*'),
1780
+ '≻' => [8827].pack('U*'),
1781
+ '⪸' => [10936].pack('U*'),
1782
+ '≽' => [8829].pack('U*'),
1783
+ '≻' => [8827].pack('U*'),
1784
+ '⪰' => [10928].pack('U*'),
1785
+ '≽' => [8829].pack('U*'),
1786
+ '≿' => [8831].pack('U*'),
1787
+ '⪰' => [10928].pack('U*'),
1788
+ '⪺' => [10938].pack('U*'),
1789
+ '⪶' => [10934].pack('U*'),
1790
+ '⋩' => [8937].pack('U*'),
1791
+ '≿' => [8831].pack('U*'),
1792
+ '∋' => [8715].pack('U*'),
1793
+ '∑' => [8721].pack('U*'),
1794
+ '∑' => [8721].pack('U*'),
1795
+ '♪' => [9834].pack('U*'),
1796
+ '⋑' => [8913].pack('U*'),
1797
+ '⊃' => [8835].pack('U*'),
1798
+ '¹' => [185].pack('U*'),
1799
+ '²' => [178].pack('U*'),
1800
+ '³' => [179].pack('U*'),
1801
+ '⪾' => [10942].pack('U*'),
1802
+ '⫘' => [10968].pack('U*'),
1803
+ '⫆' => [10950].pack('U*'),
1804
+ '⊇' => [8839].pack('U*'),
1805
+ '⫄' => [10948].pack('U*'),
1806
+ '⊃' => [8835].pack('U*'),
1807
+ '⊇' => [8839].pack('U*'),
1808
+ '⟉' => [10185].pack('U*'),
1809
+ '⫗' => [10967].pack('U*'),
1810
+ '⥻' => [10619].pack('U*'),
1811
+ '⫂' => [10946].pack('U*'),
1812
+ '⫌' => [10956].pack('U*'),
1813
+ '⊋' => [8843].pack('U*'),
1814
+ '⫀' => [10944].pack('U*'),
1815
+ '⋑' => [8913].pack('U*'),
1816
+ '⊃' => [8835].pack('U*'),
1817
+ '⊇' => [8839].pack('U*'),
1818
+ '⫆' => [10950].pack('U*'),
1819
+ '⊋' => [8843].pack('U*'),
1820
+ '⫌' => [10956].pack('U*'),
1821
+ '⫈' => [10952].pack('U*'),
1822
+ '⫔' => [10964].pack('U*'),
1823
+ '⫖' => [10966].pack('U*'),
1824
+ '⤦' => [10534].pack('U*'),
1825
+ '⇙' => [8665].pack('U*'),
1826
+ '↙' => [8601].pack('U*'),
1827
+ '↙' => [8601].pack('U*'),
1828
+ '⤪' => [10538].pack('U*'),
1829
+ 'ß' => [223].pack('U*'),
1830
+ '	' => [9].pack('U*'),
1831
+ '⌖' => [8982].pack('U*'),
1832
+ 'Τ' => [932].pack('U*'),
1833
+ 'τ' => [964].pack('U*'),
1834
+ '⎴' => [9140].pack('U*'),
1835
+ 'Ť' => [356].pack('U*'),
1836
+ 'ť' => [357].pack('U*'),
1837
+ 'Ţ' => [354].pack('U*'),
1838
+ 'ţ' => [355].pack('U*'),
1839
+ 'Т' => [1058].pack('U*'),
1840
+ 'т' => [1090].pack('U*'),
1841
+ '⃛' => [8411].pack('U*'),
1842
+ '⌕' => [8981].pack('U*'),
1843
+ '𝔗' => [120087].pack('U*'),
1844
+ '𝔱' => [120113].pack('U*'),
1845
+ '∴' => [8756].pack('U*'),
1846
+ '∴' => [8756].pack('U*'),
1847
+ '∴' => [8756].pack('U*'),
1848
+ 'Θ' => [920].pack('U*'),
1849
+ 'θ' => [952].pack('U*'),
1850
+ 'ϑ' => [977].pack('U*'),
1851
+ 'ϑ' => [977].pack('U*'),
1852
+ '≈' => [8776].pack('U*'),
1853
+ '∼' => [8764].pack('U*'),
1854
+ '  ' => [8287, 8202].pack('U*'),
1855
+ ' ' => [8201].pack('U*'),
1856
+ ' ' => [8201].pack('U*'),
1857
+ '≈' => [8776].pack('U*'),
1858
+ '∼' => [8764].pack('U*'),
1859
+ 'Þ' => [222].pack('U*'),
1860
+ 'þ' => [254].pack('U*'),
1861
+ '∼' => [8764].pack('U*'),
1862
+ '˜' => [732].pack('U*'),
1863
+ '≃' => [8771].pack('U*'),
1864
+ '≅' => [8773].pack('U*'),
1865
+ '≈' => [8776].pack('U*'),
1866
+ '×' => [215].pack('U*'),
1867
+ '⊠' => [8864].pack('U*'),
1868
+ '⨱' => [10801].pack('U*'),
1869
+ '⨰' => [10800].pack('U*'),
1870
+ '∭' => [8749].pack('U*'),
1871
+ '⤨' => [10536].pack('U*'),
1872
+ '⊤' => [8868].pack('U*'),
1873
+ '⌶' => [9014].pack('U*'),
1874
+ '⫱' => [10993].pack('U*'),
1875
+ '𝕋' => [120139].pack('U*'),
1876
+ '𝕥' => [120165].pack('U*'),
1877
+ '⫚' => [10970].pack('U*'),
1878
+ '⤩' => [10537].pack('U*'),
1879
+ '‴' => [8244].pack('U*'),
1880
+ '™' => [8482].pack('U*'),
1881
+ '™' => [8482].pack('U*'),
1882
+ '▵' => [9653].pack('U*'),
1883
+ '▿' => [9663].pack('U*'),
1884
+ '◃' => [9667].pack('U*'),
1885
+ '⊴' => [8884].pack('U*'),
1886
+ '≜' => [8796].pack('U*'),
1887
+ '▹' => [9657].pack('U*'),
1888
+ '⊵' => [8885].pack('U*'),
1889
+ '◬' => [9708].pack('U*'),
1890
+ '≜' => [8796].pack('U*'),
1891
+ '⨺' => [10810].pack('U*'),
1892
+ '⃛' => [8411].pack('U*'),
1893
+ '⨹' => [10809].pack('U*'),
1894
+ '⧍' => [10701].pack('U*'),
1895
+ '⨻' => [10811].pack('U*'),
1896
+ '⏢' => [9186].pack('U*'),
1897
+ '𝒯' => [119983].pack('U*'),
1898
+ '𝓉' => [120009].pack('U*'),
1899
+ 'Ц' => [1062].pack('U*'),
1900
+ 'ц' => [1094].pack('U*'),
1901
+ 'Ћ' => [1035].pack('U*'),
1902
+ 'ћ' => [1115].pack('U*'),
1903
+ 'Ŧ' => [358].pack('U*'),
1904
+ 'ŧ' => [359].pack('U*'),
1905
+ '≬' => [8812].pack('U*'),
1906
+ '↞' => [8606].pack('U*'),
1907
+ '↠' => [8608].pack('U*'),
1908
+ 'Ú' => [218].pack('U*'),
1909
+ 'ú' => [250].pack('U*'),
1910
+ '↟' => [8607].pack('U*'),
1911
+ '⇑' => [8657].pack('U*'),
1912
+ '↑' => [8593].pack('U*'),
1913
+ '⥉' => [10569].pack('U*'),
1914
+ 'Ў' => [1038].pack('U*'),
1915
+ 'ў' => [1118].pack('U*'),
1916
+ 'Ŭ' => [364].pack('U*'),
1917
+ 'ŭ' => [365].pack('U*'),
1918
+ 'Û' => [219].pack('U*'),
1919
+ 'û' => [251].pack('U*'),
1920
+ 'У' => [1059].pack('U*'),
1921
+ 'у' => [1091].pack('U*'),
1922
+ '⇅' => [8645].pack('U*'),
1923
+ 'Ű' => [368].pack('U*'),
1924
+ 'ű' => [369].pack('U*'),
1925
+ '⥮' => [10606].pack('U*'),
1926
+ '⥾' => [10622].pack('U*'),
1927
+ '𝔘' => [120088].pack('U*'),
1928
+ '𝔲' => [120114].pack('U*'),
1929
+ 'Ù' => [217].pack('U*'),
1930
+ 'ù' => [249].pack('U*'),
1931
+ '⥣' => [10595].pack('U*'),
1932
+ '↿' => [8639].pack('U*'),
1933
+ '↾' => [8638].pack('U*'),
1934
+ '▀' => [9600].pack('U*'),
1935
+ '⌜' => [8988].pack('U*'),
1936
+ '⌜' => [8988].pack('U*'),
1937
+ '⌏' => [8975].pack('U*'),
1938
+ '◸' => [9720].pack('U*'),
1939
+ 'Ū' => [362].pack('U*'),
1940
+ 'ū' => [363].pack('U*'),
1941
+ '¨' => [168].pack('U*'),
1942
+ '_' => [95].pack('U*'),
1943
+ '⏟' => [9183].pack('U*'),
1944
+ '⎵' => [9141].pack('U*'),
1945
+ '⏝' => [9181].pack('U*'),
1946
+ '⋃' => [8899].pack('U*'),
1947
+ '⊎' => [8846].pack('U*'),
1948
+ 'Ų' => [370].pack('U*'),
1949
+ 'ų' => [371].pack('U*'),
1950
+ '𝕌' => [120140].pack('U*'),
1951
+ '𝕦' => [120166].pack('U*'),
1952
+ '↑' => [8593].pack('U*'),
1953
+ '⇑' => [8657].pack('U*'),
1954
+ '↑' => [8593].pack('U*'),
1955
+ '⤒' => [10514].pack('U*'),
1956
+ '⇅' => [8645].pack('U*'),
1957
+ '↕' => [8597].pack('U*'),
1958
+ '⇕' => [8661].pack('U*'),
1959
+ '↕' => [8597].pack('U*'),
1960
+ '⥮' => [10606].pack('U*'),
1961
+ '↿' => [8639].pack('U*'),
1962
+ '↾' => [8638].pack('U*'),
1963
+ '⊎' => [8846].pack('U*'),
1964
+ '↖' => [8598].pack('U*'),
1965
+ '↗' => [8599].pack('U*'),
1966
+ 'ϒ' => [978].pack('U*'),
1967
+ 'υ' => [965].pack('U*'),
1968
+ 'ϒ' => [978].pack('U*'),
1969
+ 'Υ' => [933].pack('U*'),
1970
+ 'υ' => [965].pack('U*'),
1971
+ '⊥' => [8869].pack('U*'),
1972
+ '↥' => [8613].pack('U*'),
1973
+ '⇈' => [8648].pack('U*'),
1974
+ '⌝' => [8989].pack('U*'),
1975
+ '⌝' => [8989].pack('U*'),
1976
+ '⌎' => [8974].pack('U*'),
1977
+ 'Ů' => [366].pack('U*'),
1978
+ 'ů' => [367].pack('U*'),
1979
+ '◹' => [9721].pack('U*'),
1980
+ '𝒰' => [119984].pack('U*'),
1981
+ '𝓊' => [120010].pack('U*'),
1982
+ '⋰' => [8944].pack('U*'),
1983
+ 'Ũ' => [360].pack('U*'),
1984
+ 'ũ' => [361].pack('U*'),
1985
+ '▵' => [9653].pack('U*'),
1986
+ '▴' => [9652].pack('U*'),
1987
+ '⇈' => [8648].pack('U*'),
1988
+ 'Ü' => [220].pack('U*'),
1989
+ 'ü' => [252].pack('U*'),
1990
+ '⦧' => [10663].pack('U*'),
1991
+ '⦜' => [10652].pack('U*'),
1992
+ 'ϵ' => [1013].pack('U*'),
1993
+ 'ϰ' => [1008].pack('U*'),
1994
+ '∅' => [8709].pack('U*'),
1995
+ 'ϕ' => [981].pack('U*'),
1996
+ 'ϖ' => [982].pack('U*'),
1997
+ '∝' => [8733].pack('U*'),
1998
+ '⇕' => [8661].pack('U*'),
1999
+ '↕' => [8597].pack('U*'),
2000
+ 'ϱ' => [1009].pack('U*'),
2001
+ 'ς' => [962].pack('U*'),
2002
+ '⊊︀' => [8842, 65024].pack('U*'),
2003
+ '⫋︀' => [10955, 65024].pack('U*'),
2004
+ '⊋︀' => [8843, 65024].pack('U*'),
2005
+ '⫌︀' => [10956, 65024].pack('U*'),
2006
+ 'ϑ' => [977].pack('U*'),
2007
+ '⊲' => [8882].pack('U*'),
2008
+ '⊳' => [8883].pack('U*'),
2009
+ '⫫' => [10987].pack('U*'),
2010
+ '⫨' => [10984].pack('U*'),
2011
+ '⫩' => [10985].pack('U*'),
2012
+ 'В' => [1042].pack('U*'),
2013
+ 'в' => [1074].pack('U*'),
2014
+ '⊫' => [8875].pack('U*'),
2015
+ '⊩' => [8873].pack('U*'),
2016
+ '⊨' => [8872].pack('U*'),
2017
+ '⊢' => [8866].pack('U*'),
2018
+ '⫦' => [10982].pack('U*'),
2019
+ '⋁' => [8897].pack('U*'),
2020
+ '∨' => [8744].pack('U*'),
2021
+ '⊻' => [8891].pack('U*'),
2022
+ '≚' => [8794].pack('U*'),
2023
+ '⋮' => [8942].pack('U*'),
2024
+ '‖' => [8214].pack('U*'),
2025
+ '|' => [124].pack('U*'),
2026
+ '‖' => [8214].pack('U*'),
2027
+ '|' => [124].pack('U*'),
2028
+ '∣' => [8739].pack('U*'),
2029
+ '|' => [124].pack('U*'),
2030
+ '❘' => [10072].pack('U*'),
2031
+ '≀' => [8768].pack('U*'),
2032
+ ' ' => [8202].pack('U*'),
2033
+ '𝔙' => [120089].pack('U*'),
2034
+ '𝔳' => [120115].pack('U*'),
2035
+ '⊲' => [8882].pack('U*'),
2036
+ '⊂⃒' => [8834, 8402].pack('U*'),
2037
+ '⊃⃒' => [8835, 8402].pack('U*'),
2038
+ '𝕍' => [120141].pack('U*'),
2039
+ '𝕧' => [120167].pack('U*'),
2040
+ '∝' => [8733].pack('U*'),
2041
+ '⊳' => [8883].pack('U*'),
2042
+ '𝒱' => [119985].pack('U*'),
2043
+ '𝓋' => [120011].pack('U*'),
2044
+ '⫋︀' => [10955, 65024].pack('U*'),
2045
+ '⊊︀' => [8842, 65024].pack('U*'),
2046
+ '⫌︀' => [10956, 65024].pack('U*'),
2047
+ '⊋︀' => [8843, 65024].pack('U*'),
2048
+ '⊪' => [8874].pack('U*'),
2049
+ '⦚' => [10650].pack('U*'),
2050
+ 'Ŵ' => [372].pack('U*'),
2051
+ 'ŵ' => [373].pack('U*'),
2052
+ '⩟' => [10847].pack('U*'),
2053
+ '⋀' => [8896].pack('U*'),
2054
+ '∧' => [8743].pack('U*'),
2055
+ '≙' => [8793].pack('U*'),
2056
+ '℘' => [8472].pack('U*'),
2057
+ '𝔚' => [120090].pack('U*'),
2058
+ '𝔴' => [120116].pack('U*'),
2059
+ '𝕎' => [120142].pack('U*'),
2060
+ '𝕨' => [120168].pack('U*'),
2061
+ '℘' => [8472].pack('U*'),
2062
+ '≀' => [8768].pack('U*'),
2063
+ '≀' => [8768].pack('U*'),
2064
+ '𝒲' => [119986].pack('U*'),
2065
+ '𝓌' => [120012].pack('U*'),
2066
+ '⋂' => [8898].pack('U*'),
2067
+ '◯' => [9711].pack('U*'),
2068
+ '⋃' => [8899].pack('U*'),
2069
+ '▽' => [9661].pack('U*'),
2070
+ '𝔛' => [120091].pack('U*'),
2071
+ '𝔵' => [120117].pack('U*'),
2072
+ '⟺' => [10234].pack('U*'),
2073
+ '⟷' => [10231].pack('U*'),
2074
+ 'Ξ' => [926].pack('U*'),
2075
+ 'ξ' => [958].pack('U*'),
2076
+ '⟸' => [10232].pack('U*'),
2077
+ '⟵' => [10229].pack('U*'),
2078
+ '⟼' => [10236].pack('U*'),
2079
+ '⋻' => [8955].pack('U*'),
2080
+ '⨀' => [10752].pack('U*'),
2081
+ '𝕏' => [120143].pack('U*'),
2082
+ '𝕩' => [120169].pack('U*'),
2083
+ '⨁' => [10753].pack('U*'),
2084
+ '⨂' => [10754].pack('U*'),
2085
+ '⟹' => [10233].pack('U*'),
2086
+ '⟶' => [10230].pack('U*'),
2087
+ '𝒳' => [119987].pack('U*'),
2088
+ '𝓍' => [120013].pack('U*'),
2089
+ '⨆' => [10758].pack('U*'),
2090
+ '⨄' => [10756].pack('U*'),
2091
+ '△' => [9651].pack('U*'),
2092
+ '⋁' => [8897].pack('U*'),
2093
+ '⋀' => [8896].pack('U*'),
2094
+ 'Ý' => [221].pack('U*'),
2095
+ 'ý' => [253].pack('U*'),
2096
+ 'Я' => [1071].pack('U*'),
2097
+ 'я' => [1103].pack('U*'),
2098
+ 'Ŷ' => [374].pack('U*'),
2099
+ 'ŷ' => [375].pack('U*'),
2100
+ 'Ы' => [1067].pack('U*'),
2101
+ 'ы' => [1099].pack('U*'),
2102
+ '¥' => [165].pack('U*'),
2103
+ '𝔜' => [120092].pack('U*'),
2104
+ '𝔶' => [120118].pack('U*'),
2105
+ 'Ї' => [1031].pack('U*'),
2106
+ 'ї' => [1111].pack('U*'),
2107
+ '𝕐' => [120144].pack('U*'),
2108
+ '𝕪' => [120170].pack('U*'),
2109
+ '𝒴' => [119988].pack('U*'),
2110
+ '𝓎' => [120014].pack('U*'),
2111
+ 'Ю' => [1070].pack('U*'),
2112
+ 'ю' => [1102].pack('U*'),
2113
+ 'Ÿ' => [376].pack('U*'),
2114
+ 'ÿ' => [255].pack('U*'),
2115
+ 'Ź' => [377].pack('U*'),
2116
+ 'ź' => [378].pack('U*'),
2117
+ 'Ž' => [381].pack('U*'),
2118
+ 'ž' => [382].pack('U*'),
2119
+ 'З' => [1047].pack('U*'),
2120
+ 'з' => [1079].pack('U*'),
2121
+ 'Ż' => [379].pack('U*'),
2122
+ 'ż' => [380].pack('U*'),
2123
+ 'ℨ' => [8488].pack('U*'),
2124
+ '​' => [8203].pack('U*'),
2125
+ 'Ζ' => [918].pack('U*'),
2126
+ 'ζ' => [950].pack('U*'),
2127
+ 'ℨ' => [8488].pack('U*'),
2128
+ '𝔷' => [120119].pack('U*'),
2129
+ 'Ж' => [1046].pack('U*'),
2130
+ 'ж' => [1078].pack('U*'),
2131
+ '⇝' => [8669].pack('U*'),
2132
+ 'ℤ' => [8484].pack('U*'),
2133
+ '𝕫' => [120171].pack('U*'),
2134
+ '𝒵' => [119989].pack('U*'),
2135
+ '𝓏' => [120015].pack('U*'),
2136
+ '‍' => [8205].pack('U*'),
2137
+ '‌' => [8204].pack('U*'),
2138
+ }
2139
+
2140
+ ##
2141
+ # Decodes HTML entities.
2142
+ #
2143
+ # @see [decode]
2144
+ #
2145
+ def self.decode(input)
2146
+ XML::Entities.decode(input, DECODE_MAPPING)
2147
+ end
2148
+ end # Entities
2149
+ end # HTML
2150
+ end # Oga