1#lang racket/base
2(require "intset.rkt")
3(provide (all-defined-out))
4
5;; Reference:
6;; - https://tools.ietf.org/html/rfc3454
7
8;; ----------------------------------------
9;; Unassigned Code Points Table
10
11;; A.1 Unassigned code points in Unicode 3.2
12(define unassigned-in-unicode-3.2
13  (intset
14   #x0221
15   [#x0234 #x024F]
16   [#x02AE #x02AF]
17   [#x02EF #x02FF]
18   [#x0350 #x035F]
19   [#x0370 #x0373]
20   [#x0376 #x0379]
21   [#x037B #x037D]
22   [#x037F #x0383]
23   #x038B
24   #x038D
25   #x03A2
26   #x03CF
27   [#x03F7 #x03FF]
28   #x0487
29   #x04CF
30   [#x04F6 #x04F7]
31   [#x04FA #x04FF]
32   [#x0510 #x0530]
33   [#x0557 #x0558]
34   #x0560
35   #x0588
36   [#x058B #x0590]
37   #x05A2
38   #x05BA
39   [#x05C5 #x05CF]
40   [#x05EB #x05EF]
41   [#x05F5 #x060B]
42   [#x060D #x061A]
43   [#x061C #x061E]
44   #x0620
45   [#x063B #x063F]
46   [#x0656 #x065F]
47   [#x06EE #x06EF]
48   #x06FF
49   #x070E
50   [#x072D #x072F]
51   [#x074B #x077F]
52   [#x07B2 #x0900]
53   #x0904
54   [#x093A #x093B]
55   [#x094E #x094F]
56   [#x0955 #x0957]
57   [#x0971 #x0980]
58   #x0984
59   [#x098D #x098E]
60   [#x0991 #x0992]
61   #x09A9
62   #x09B1
63   [#x09B3 #x09B5]
64   [#x09BA #x09BB]
65   #x09BD
66   [#x09C5 #x09C6]
67   [#x09C9 #x09CA]
68   [#x09CE #x09D6]
69   [#x09D8 #x09DB]
70   #x09DE
71   [#x09E4 #x09E5]
72   [#x09FB #x0A01]
73   [#x0A03 #x0A04]
74   [#x0A0B #x0A0E]
75   [#x0A11 #x0A12]
76   #x0A29
77   #x0A31
78   #x0A34
79   #x0A37
80   [#x0A3A #x0A3B]
81   #x0A3D
82   [#x0A43 #x0A46]
83   [#x0A49 #x0A4A]
84   [#x0A4E #x0A58]
85   #x0A5D
86   [#x0A5F #x0A65]
87   [#x0A75 #x0A80]
88   #x0A84
89   #x0A8C
90   #x0A8E
91   #x0A92
92   #x0AA9
93   #x0AB1
94   #x0AB4
95   [#x0ABA #x0ABB]
96   #x0AC6
97   #x0ACA
98   [#x0ACE #x0ACF]
99   [#x0AD1 #x0ADF]
100   [#x0AE1 #x0AE5]
101   [#x0AF0 #x0B00]
102   #x0B04
103   [#x0B0D #x0B0E]
104   [#x0B11 #x0B12]
105   #x0B29
106   #x0B31
107   [#x0B34 #x0B35]
108   [#x0B3A #x0B3B]
109   [#x0B44 #x0B46]
110   [#x0B49 #x0B4A]
111   [#x0B4E #x0B55]
112   [#x0B58 #x0B5B]
113   #x0B5E
114   [#x0B62 #x0B65]
115   [#x0B71 #x0B81]
116   #x0B84
117   [#x0B8B #x0B8D]
118   #x0B91
119   [#x0B96 #x0B98]
120   #x0B9B
121   #x0B9D
122   [#x0BA0 #x0BA2]
123   [#x0BA5 #x0BA7]
124   [#x0BAB #x0BAD]
125   #x0BB6
126   [#x0BBA #x0BBD]
127   [#x0BC3 #x0BC5]
128   #x0BC9
129   [#x0BCE #x0BD6]
130   [#x0BD8 #x0BE6]
131   [#x0BF3 #x0C00]
132   #x0C04
133   #x0C0D
134   #x0C11
135   #x0C29
136   #x0C34
137   [#x0C3A #x0C3D]
138   #x0C45
139   #x0C49
140   [#x0C4E #x0C54]
141   [#x0C57 #x0C5F]
142   [#x0C62 #x0C65]
143   [#x0C70 #x0C81]
144   #x0C84
145   #x0C8D
146   #x0C91
147   #x0CA9
148   #x0CB4
149   [#x0CBA #x0CBD]
150   #x0CC5
151   #x0CC9
152   [#x0CCE #x0CD4]
153   #x0CD7 #x0CDD
154   #x0CDF
155   [#x0CE2 #x0CE5]
156   [#x0CF0 #x0D01]
157   #x0D04
158   #x0D0D
159   #x0D11
160   #x0D29
161   [#x0D3A #x0D3D]
162   [#x0D44 #x0D45]
163   #x0D49
164   [#x0D4E #x0D56]
165   [#x0D58 #x0D5F]
166   [#x0D62 #x0D65]
167   [#x0D70 #x0D81]
168   #x0D84
169   [#x0D97 #x0D99]
170   #x0DB2
171   #x0DBC
172   [#x0DBE #x0DBF]
173   [#x0DC7 #x0DC9]
174   [#x0DCB #x0DCE]
175   #x0DD5
176   #x0DD7
177   [#x0DE0 #x0DF1]
178   [#x0DF5 #x0E00]
179   [#x0E3B #x0E3E]
180   [#x0E5C #x0E80]
181   #x0E83
182   [#x0E85 #x0E86]
183   #x0E89
184   [#x0E8B #x0E8C]
185   [#x0E8E #x0E93]
186   #x0E98
187   #x0EA0
188   #x0EA4
189   #x0EA6
190   [#x0EA8 #x0EA9]
191   #x0EAC
192   #x0EBA
193   [#x0EBE #x0EBF]
194   #x0EC5
195   #x0EC7
196   [#x0ECE #x0ECF]
197   [#x0EDA #x0EDB]
198   [#x0EDE #x0EFF]
199   #x0F48
200   [#x0F6B #x0F70]
201   [#x0F8C #x0F8F]
202   #x0F98
203   #x0FBD
204   [#x0FCD #x0FCE]
205   [#x0FD0 #x0FFF]
206   #x1022
207   #x1028
208   #x102B
209   [#x1033 #x1035]
210   [#x103A #x103F]
211   [#x105A #x109F]
212   [#x10C6 #x10CF]
213   [#x10F9 #x10FA]
214   [#x10FC #x10FF]
215   [#x115A #x115E]
216   [#x11A3 #x11A7]
217   [#x11FA #x11FF]
218   #x1207
219   #x1247
220   #x1249
221   [#x124E #x124F]
222   #x1257
223   #x1259
224   [#x125E #x125F]
225   #x1287
226   #x1289
227   [#x128E #x128F]
228   #x12AF
229   #x12B1
230   [#x12B6 #x12B7]
231   #x12BF
232   #x12C1
233   [#x12C6 #x12C7]
234   #x12CF
235   #x12D7
236   #x12EF
237   #x130F
238   #x1311
239   [#x1316 #x1317]
240   #x131F
241   #x1347
242   [#x135B #x1360]
243   [#x137D #x139F]
244   [#x13F5 #x1400]
245   [#x1677 #x167F]
246   [#x169D #x169F]
247   [#x16F1 #x16FF]
248   #x170D
249   [#x1715 #x171F]
250   [#x1737 #x173F]
251   [#x1754 #x175F]
252   #x176D
253   #x1771
254   [#x1774 #x177F]
255   [#x17DD #x17DF]
256   [#x17EA #x17FF]
257   #x180F
258   [#x181A #x181F]
259   [#x1878 #x187F]
260   [#x18AA #x1DFF]
261   [#x1E9C #x1E9F]
262   [#x1EFA #x1EFF]
263   [#x1F16 #x1F17]
264   [#x1F1E #x1F1F]
265   [#x1F46 #x1F47]
266   [#x1F4E #x1F4F]
267   #x1F58
268   #x1F5A
269   #x1F5C
270   #x1F5E
271   [#x1F7E #x1F7F]
272   #x1FB5
273   #x1FC5
274   [#x1FD4 #x1FD5]
275   #x1FDC
276   [#x1FF0 #x1FF1]
277   #x1FF5
278   #x1FFF
279   [#x2053 #x2056]
280   [#x2058 #x205E]
281   [#x2064 #x2069]
282   [#x2072 #x2073]
283   [#x208F #x209F]
284   [#x20B2 #x20CF]
285   [#x20EB #x20FF]
286   [#x213B #x213C]
287   [#x214C #x2152]
288   [#x2184 #x218F]
289   [#x23CF #x23FF]
290   [#x2427 #x243F]
291   [#x244B #x245F]
292   #x24FF
293   [#x2614 #x2615]
294   #x2618
295   [#x267E #x267F]
296   [#x268A #x2700]
297   #x2705
298   [#x270A #x270B]
299   #x2728
300   #x274C
301   #x274E
302   [#x2753 #x2755]
303   #x2757
304   [#x275F #x2760]
305   [#x2795 #x2797]
306   #x27B0
307   [#x27BF #x27CF]
308   [#x27EC #x27EF]
309   [#x2B00 #x2E7F]
310   #x2E9A
311   [#x2EF4 #x2EFF]
312   [#x2FD6 #x2FEF]
313   [#x2FFC #x2FFF]
314   #x3040
315   [#x3097 #x3098]
316   [#x3100 #x3104]
317   [#x312D #x3130]
318   #x318F
319   [#x31B8 #x31EF]
320   [#x321D #x321F]
321   [#x3244 #x3250]
322   [#x327C #x327E]
323   [#x32CC #x32CF]
324   #x32FF
325   [#x3377 #x337A]
326   [#x33DE #x33DF]
327   #x33FF
328   [#x4DB6 #x4DFF]
329   [#x9FA6 #x9FFF]
330   [#xA48D #xA48F]
331   [#xA4C7 #xABFF]
332   [#xD7A4 #xD7FF]
333   [#xFA2E #xFA2F]
334   [#xFA6B #xFAFF]
335   [#xFB07 #xFB12]
336   [#xFB18 #xFB1C]
337   #xFB37
338   #xFB3D
339   #xFB3F
340   #xFB42
341   #xFB45
342   [#xFBB2 #xFBD2]
343   [#xFD40 #xFD4F]
344   [#xFD90 #xFD91]
345   [#xFDC8 #xFDCF]
346   [#xFDFD #xFDFF]
347   [#xFE10 #xFE1F]
348   [#xFE24 #xFE2F]
349   [#xFE47 #xFE48]
350   #xFE53
351   #xFE67
352   [#xFE6C #xFE6F]
353   #xFE75
354   [#xFEFD #xFEFE]
355   #xFF00
356   [#xFFBF #xFFC1]
357   [#xFFC8 #xFFC9]
358   [#xFFD0 #xFFD1]
359   [#xFFD8 #xFFD9]
360   [#xFFDD #xFFDF]
361   #xFFE7
362   [#xFFEF #xFFF8]
363   [#x10000 #x102FF]
364   #x1031F
365   [#x10324 #x1032F]
366   [#x1034B #x103FF]
367   [#x10426 #x10427]
368   [#x1044E #x1CFFF]
369   [#x1D0F6 #x1D0FF]
370   [#x1D127 #x1D129]
371   [#x1D1DE #x1D3FF]
372   #x1D455
373   #x1D49D
374   [#x1D4A0 #x1D4A1]
375   [#x1D4A3 #x1D4A4]
376   [#x1D4A7 #x1D4A8]
377   #x1D4AD
378   #x1D4BA
379   #x1D4BC
380   #x1D4C1
381   #x1D4C4
382   #x1D506
383   [#x1D50B #x1D50C]
384   #x1D515
385   #x1D51D
386   #x1D53A
387   #x1D53F
388   #x1D545
389   [#x1D547 #x1D549]
390   #x1D551
391   [#x1D6A4 #x1D6A7]
392   [#x1D7CA #x1D7CD]
393   [#x1D800 #x1FFFD]
394   [#x2A6D7 #x2F7FF]
395   [#x2FA1E #x2FFFD]
396   [#x30000 #x3FFFD]
397   [#x40000 #x4FFFD]
398   [#x50000 #x5FFFD]
399   [#x60000 #x6FFFD]
400   [#x70000 #x7FFFD]
401   [#x80000 #x8FFFD]
402   [#x90000 #x9FFFD]
403   [#xA0000 #xAFFFD]
404   [#xB0000 #xBFFFD]
405   [#xC0000 #xCFFFD]
406   [#xD0000 #xDFFFD]
407   #xE0000
408   [#xE0002 #xE001F]
409   [#xE0080 #xEFFFD]
410   ))
411
412;; ----------------------------------------
413;; Mapping Tables
414
415;; B.1 Commonly mapped to nothing
416(define commonly-mapped-to-nothing
417  (intset #x00AD
418          #x034F
419          #x1806
420          [#x180B #x180D]
421          [#x200B #x200D]
422          #x2060
423          [#xFE00 #xFE0F]
424          #xFEFF))
425
426;; ----------------------------------------
427;; Prohibition Tables
428
429;; C.1 Space characters
430
431;; C.1.1 ASCII space characters
432(define ascii-space-characters
433  (intset
434   #x0020; SPACE
435   ))
436
437;; C.1.2 Non-ASCII space characters
438(define non-ascii-space-characters
439  (intset
440   #x00A0; NO-BREAK SPACE
441   #x1680; OGHAM SPACE MARK
442   #x2000; EN QUAD
443   #x2001; EM QUAD
444   #x2002; EN SPACE
445   #x2003; EM SPACE
446   #x2004; THREE-PER-EM SPACE
447   #x2005; FOUR-PER-EM SPACE
448   #x2006; SIX-PER-EM SPACE
449   #x2007; FIGURE SPACE
450   #x2008; PUNCTUATION SPACE
451   #x2009; THIN SPACE
452   #x200A; HAIR SPACE
453   #x200B; ZERO WIDTH SPACE
454   #x202F; NARROW NO-BREAK SPACE
455   #x205F; MEDIUM MATHEMATICAL SPACE
456   #x3000; IDEOGRAPHIC SPACE
457   ))
458
459;; C.2 Control characters
460
461;; C.2.1 ASCII control characters
462(define ascii-control-characters
463  (intset
464   [#x0000 #x001F]; [CONTROL CHARACTERS]
465   #x007F; DELETE
466   ))
467
468;; C.2.2 Non-ASCII control characters
469(define non-ascii-control-characters
470  (intset
471   [#x0080 #x009F]; [CONTROL CHARACTERS]
472   #x06DD; ARABIC END OF AYAH
473   #x070F; SYRIAC ABBREVIATION MARK
474   #x180E; MONGOLIAN VOWEL SEPARATOR
475   #x200C; ZERO WIDTH NON-JOINER
476   #x200D; ZERO WIDTH JOINER
477   #x2028; LINE SEPARATOR
478   #x2029; PARAGRAPH SEPARATOR
479   #x2060; WORD JOINER
480   #x2061; FUNCTION APPLICATION
481   #x2062; INVISIBLE TIMES
482   #x2063; INVISIBLE SEPARATOR
483   [#x206A #x206F]; [CONTROL CHARACTERS]
484   #xFEFF; ZERO WIDTH NO-BREAK SPACE
485   [#xFFF9 #xFFFC]; [CONTROL CHARACTERS]
486   [#x1D173 #x1D17A]; [MUSICAL CONTROL CHARACTERS]
487   ))
488
489;; C.3 Private use
490(define private-use
491  (intset
492   [#xE000 #xF8FF]; [PRIVATE USE, PLANE 0]
493   [#xF0000 #xFFFFD]; [PRIVATE USE, PLANE 15]
494   [#x100000 #x10FFFD]; [PRIVATE USE, PLANE 16]
495   ))
496
497;; C.4 Non-character code points
498(define non-character-code-points
499  (intset
500   [#xFDD0 #xFDEF]; [NONCHARACTER CODE POINTS]
501   [#xFFFE #xFFFF]; [NONCHARACTER CODE POINTS]
502   [#x1FFFE #x1FFFF]; [NONCHARACTER CODE POINTS]
503   [#x2FFFE #x2FFFF]; [NONCHARACTER CODE POINTS]
504   [#x3FFFE #x3FFFF]; [NONCHARACTER CODE POINTS]
505   [#x4FFFE #x4FFFF]; [NONCHARACTER CODE POINTS]
506   [#x5FFFE #x5FFFF]; [NONCHARACTER CODE POINTS]
507   [#x6FFFE #x6FFFF]; [NONCHARACTER CODE POINTS]
508   [#x7FFFE #x7FFFF]; [NONCHARACTER CODE POINTS]
509   [#x8FFFE #x8FFFF]; [NONCHARACTER CODE POINTS]
510   [#x9FFFE #x9FFFF]; [NONCHARACTER CODE POINTS]
511   [#xAFFFE #xAFFFF]; [NONCHARACTER CODE POINTS]
512   [#xBFFFE #xBFFFF]; [NONCHARACTER CODE POINTS]
513   [#xCFFFE #xCFFFF]; [NONCHARACTER CODE POINTS]
514   [#xDFFFE #xDFFFF]; [NONCHARACTER CODE POINTS]
515   [#xEFFFE #xEFFFF]; [NONCHARACTER CODE POINTS]
516   [#xFFFFE #xFFFFF]; [NONCHARACTER CODE POINTS]
517   [#x10FFFE #x10FFFF]; [NONCHARACTER CODE POINTS]
518   ))
519
520;; C.5 Surrogate codes
521(define surrogate-codes
522  (intset
523   [#xD800 #xDFFF]; [SURROGATE CODES]
524   ))
525
526;; C.6 Inappropriate for plain text
527(define inappropriate-for-plain-text
528  (intset
529   #xFFF9; INTERLINEAR ANNOTATION ANCHOR
530   #xFFFA; INTERLINEAR ANNOTATION SEPARATOR
531   #xFFFB; INTERLINEAR ANNOTATION TERMINATOR
532   #xFFFC; OBJECT REPLACEMENT CHARACTER
533   #xFFFD; REPLACEMENT CHARACTER
534   ))
535
536;; C.7 Inappropriate for canonical representation
537(define inappropriate-for-canonical-representation
538  (intset
539   [#x2FF0 #x2FFB]; [IDEOGRAPHIC DESCRIPTION CHARACTERS]
540   ))
541
542;; C.8 Change display properties or are deprecated
543(define change-display-properties-or-deprecated
544  (intset
545   #x0340; COMBINING GRAVE TONE MARK
546   #x0341; COMBINING ACUTE TONE MARK
547   #x200E; LEFT-TO-RIGHT MARK
548   #x200F; RIGHT-TO-LEFT MARK
549   #x202A; LEFT-TO-RIGHT EMBEDDING
550   #x202B; RIGHT-TO-LEFT EMBEDDING
551   #x202C; POP DIRECTIONAL FORMATTING
552   #x202D; LEFT-TO-RIGHT OVERRIDE
553   #x202E; RIGHT-TO-LEFT OVERRIDE
554   #x206A; INHIBIT SYMMETRIC SWAPPING
555   #x206B; ACTIVATE SYMMETRIC SWAPPING
556   #x206C; INHIBIT ARABIC FORM SHAPING
557   #x206D; ACTIVATE ARABIC FORM SHAPING
558   #x206E; NATIONAL DIGIT SHAPES
559   #x206F; NOMINAL DIGIT SHAPES
560   ))
561
562;; C.9 Tagging characters
563(define tagging-characters
564  (intset
565   #xE0001; LANGUAGE TAG
566   [#xE0020 #xE007F]; [TAGGING CHARACTERS]
567   ))
568
569;; ----------------------------------------
570;; Bidi Tables
571
572;; D. Bidirectional tables
573
574;; D.1 Characters with bidirectional property "R" or "AL"
575(define RandALCat-characters
576  (intset
577   #x05BE
578   #x05C0
579   #x05C3
580   [#x05D0 #x05EA]
581   [#x05F0 #x05F4]
582   #x061B
583   #x061F
584   [#x0621 #x063A]
585   [#x0640 #x064A]
586   [#x066D #x066F]
587   [#x0671 #x06D5]
588   #x06DD
589   [#x06E5 #x06E6]
590   [#x06FA #x06FE]
591   [#x0700 #x070D]
592   #x0710
593   [#x0712 #x072C]
594   [#x0780 #x07A5]
595   #x07B1
596   #x200F
597   #xFB1D
598   [#xFB1F #xFB28]
599   [#xFB2A #xFB36]
600   [#xFB38 #xFB3C]
601   #xFB3E
602   [#xFB40 #xFB41]
603   [#xFB43 #xFB44]
604   [#xFB46 #xFBB1]
605   [#xFBD3 #xFD3D]
606   [#xFD50 #xFD8F]
607   [#xFD92 #xFDC7]
608   [#xFDF0 #xFDFC]
609   [#xFE70 #xFE74]
610   [#xFE76 #xFEFC]
611   ))
612
613;; D.2 Characters with bidirectional property "L"
614(define LCat-characters
615  (intset
616   [#x0041 #x005A]
617   [#x0061 #x007A]
618   #x00AA
619   #x00B5
620   #x00BA
621   [#x00C0 #x00D6]
622   [#x00D8 #x00F6]
623   [#x00F8 #x0220]
624   [#x0222 #x0233]
625   [#x0250 #x02AD]
626   [#x02B0 #x02B8]
627   [#x02BB #x02C1]
628   [#x02D0 #x02D1]
629   [#x02E0 #x02E4]
630   #x02EE
631   #x037A
632   #x0386
633   [#x0388 #x038A]
634   #x038C
635   [#x038E #x03A1]
636   [#x03A3 #x03CE]
637   [#x03D0 #x03F5]
638   [#x0400 #x0482]
639   [#x048A #x04CE]
640   [#x04D0 #x04F5]
641   [#x04F8 #x04F9]
642   [#x0500 #x050F]
643   [#x0531 #x0556]
644   [#x0559 #x055F]
645   [#x0561 #x0587]
646   #x0589
647   #x0903
648   [#x0905 #x0939]
649   [#x093D #x0940]
650   [#x0949 #x094C]
651   #x0950
652   [#x0958 #x0961]
653   [#x0964 #x0970]
654   [#x0982 #x0983]
655   [#x0985 #x098C]
656   [#x098F #x0990]
657   [#x0993 #x09A8]
658   [#x09AA #x09B0]
659   #x09B2
660   [#x09B6 #x09B9]
661   [#x09BE #x09C0]
662   [#x09C7 #x09C8]
663   [#x09CB #x09CC]
664   #x09D7
665   [#x09DC #x09DD]
666   [#x09DF #x09E1]
667   [#x09E6 #x09F1]
668   [#x09F4 #x09FA]
669   [#x0A05 #x0A0A]
670   [#x0A0F #x0A10]
671   [#x0A13 #x0A28]
672   [#x0A2A #x0A30]
673   [#x0A32 #x0A33]
674   [#x0A35 #x0A36]
675   [#x0A38 #x0A39]
676   [#x0A3E #x0A40]
677   [#x0A59 #x0A5C]
678   #x0A5E
679   [#x0A66 #x0A6F]
680   [#x0A72 #x0A74]
681   #x0A83
682   [#x0A85 #x0A8B]
683   #x0A8D
684   [#x0A8F #x0A91]
685   [#x0A93 #x0AA8]
686   [#x0AAA #x0AB0]
687   [#x0AB2 #x0AB3]
688   [#x0AB5 #x0AB9]
689   [#x0ABD #x0AC0]
690   #x0AC9
691   [#x0ACB #x0ACC]
692   #x0AD0
693   #x0AE0
694   [#x0AE6 #x0AEF]
695   [#x0B02 #x0B03]
696   [#x0B05 #x0B0C]
697   [#x0B0F #x0B10]
698   [#x0B13 #x0B28]
699   [#x0B2A #x0B30]
700   [#x0B32 #x0B33]
701   [#x0B36 #x0B39]
702   [#x0B3D #x0B3E]
703   #x0B40
704   [#x0B47 #x0B48]
705   [#x0B4B #x0B4C]
706   #x0B57
707   [#x0B5C #x0B5D]
708   [#x0B5F #x0B61]
709   [#x0B66 #x0B70]
710   #x0B83
711   [#x0B85 #x0B8A]
712   [#x0B8E #x0B90]
713   [#x0B92 #x0B95]
714   [#x0B99 #x0B9A]
715   #x0B9C
716   [#x0B9E #x0B9F]
717   [#x0BA3 #x0BA4]
718   [#x0BA8 #x0BAA]
719   [#x0BAE #x0BB5]
720   [#x0BB7 #x0BB9]
721   [#x0BBE #x0BBF]
722   [#x0BC1 #x0BC2]
723   [#x0BC6 #x0BC8]
724   [#x0BCA #x0BCC]
725   #x0BD7
726   [#x0BE7 #x0BF2]
727   [#x0C01 #x0C03]
728   [#x0C05 #x0C0C]
729   [#x0C0E #x0C10]
730   [#x0C12 #x0C28]
731   [#x0C2A #x0C33]
732   [#x0C35 #x0C39]
733   [#x0C41 #x0C44]
734   [#x0C60 #x0C61]
735   [#x0C66 #x0C6F]
736   [#x0C82 #x0C83]
737   [#x0C85 #x0C8C]
738   [#x0C8E #x0C90]
739   [#x0C92 #x0CA8]
740   [#x0CAA #x0CB3]
741   [#x0CB5 #x0CB9]
742   #x0CBE
743   [#x0CC0 #x0CC4]
744   [#x0CC7 #x0CC8]
745   [#x0CCA #x0CCB]
746   [#x0CD5 #x0CD6]
747   #x0CDE
748   [#x0CE0 #x0CE1]
749   [#x0CE6 #x0CEF]
750   [#x0D02 #x0D03]
751   [#x0D05 #x0D0C]
752   [#x0D0E #x0D10]
753   [#x0D12 #x0D28]
754   [#x0D2A #x0D39]
755   [#x0D3E #x0D40]
756   [#x0D46 #x0D48]
757   [#x0D4A #x0D4C]
758   #x0D57
759   [#x0D60 #x0D61]
760   [#x0D66 #x0D6F]
761   [#x0D82 #x0D83]
762   [#x0D85 #x0D96]
763   [#x0D9A #x0DB1]
764   [#x0DB3 #x0DBB]
765   #x0DBD
766   [#x0DC0 #x0DC6]
767   [#x0DCF #x0DD1]
768   [#x0DD8 #x0DDF]
769   [#x0DF2 #x0DF4]
770   [#x0E01 #x0E30]
771   [#x0E32 #x0E33]
772   [#x0E40 #x0E46]
773   [#x0E4F #x0E5B]
774   [#x0E81 #x0E82]
775   #x0E84
776   [#x0E87 #x0E88]
777   #x0E8A
778   #x0E8D
779   [#x0E94 #x0E97]
780   [#x0E99 #x0E9F]
781   [#x0EA1 #x0EA3]
782   #x0EA5
783   #x0EA7
784   [#x0EAA #x0EAB]
785   [#x0EAD #x0EB0]
786   [#x0EB2 #x0EB3]
787   #x0EBD
788   [#x0EC0 #x0EC4]
789   #x0EC6
790   [#x0ED0 #x0ED9]
791   [#x0EDC #x0EDD]
792   [#x0F00 #x0F17]
793   [#x0F1A #x0F34]
794   #x0F36
795   #x0F38
796   [#x0F3E #x0F47]
797   [#x0F49 #x0F6A]
798   #x0F7F
799   #x0F85
800   [#x0F88 #x0F8B]
801   [#x0FBE #x0FC5]
802   [#x0FC7 #x0FCC]
803   #x0FCF
804   [#x1000 #x1021]
805   [#x1023 #x1027]
806   [#x1029 #x102A]
807   #x102C
808   #x1031
809   #x1038
810   [#x1040 #x1057]
811   [#x10A0 #x10C5]
812   [#x10D0 #x10F8]
813   #x10FB
814   [#x1100 #x1159]
815   [#x115F #x11A2]
816   [#x11A8 #x11F9]
817   [#x1200 #x1206]
818   [#x1208 #x1246]
819   #x1248
820   [#x124A #x124D]
821   [#x1250 #x1256]
822   #x1258
823   [#x125A #x125D]
824   [#x1260 #x1286]
825   #x1288
826   [#x128A #x128D]
827   [#x1290 #x12AE]
828   #x12B0
829   [#x12B2 #x12B5]
830   [#x12B8 #x12BE]
831   #x12C0
832   [#x12C2 #x12C5]
833   [#x12C8 #x12CE]
834   [#x12D0 #x12D6]
835   [#x12D8 #x12EE]
836   [#x12F0 #x130E]
837   #x1310
838   [#x1312 #x1315]
839   [#x1318 #x131E]
840   [#x1320 #x1346]
841   [#x1348 #x135A]
842   [#x1361 #x137C]
843   [#x13A0 #x13F4]
844   [#x1401 #x1676]
845   [#x1681 #x169A]
846   [#x16A0 #x16F0]
847   [#x1700 #x170C]
848   [#x170E #x1711]
849   [#x1720 #x1731]
850   [#x1735 #x1736]
851   [#x1740 #x1751]
852   [#x1760 #x176C]
853   [#x176E #x1770]
854   [#x1780 #x17B6]
855   [#x17BE #x17C5]
856   [#x17C7 #x17C8]
857   [#x17D4 #x17DA]
858   #x17DC
859   [#x17E0 #x17E9]
860   [#x1810 #x1819]
861   [#x1820 #x1877]
862   [#x1880 #x18A8]
863   [#x1E00 #x1E9B]
864   [#x1EA0 #x1EF9]
865   [#x1F00 #x1F15]
866   [#x1F18 #x1F1D]
867   [#x1F20 #x1F45]
868   [#x1F48 #x1F4D]
869   [#x1F50 #x1F57]
870   #x1F59
871   #x1F5B
872   #x1F5D
873   [#x1F5F #x1F7D]
874   [#x1F80 #x1FB4]
875   [#x1FB6 #x1FBC]
876   #x1FBE
877   [#x1FC2 #x1FC4]
878   [#x1FC6 #x1FCC]
879   [#x1FD0 #x1FD3]
880   [#x1FD6 #x1FDB]
881   [#x1FE0 #x1FEC]
882   [#x1FF2 #x1FF4]
883   [#x1FF6 #x1FFC]
884   #x200E
885   #x2071
886   #x207F
887   #x2102
888   #x2107
889   [#x210A #x2113]
890   #x2115
891   [#x2119 #x211D]
892   #x2124
893   #x2126
894   #x2128
895   [#x212A #x212D]
896   [#x212F #x2131]
897   [#x2133 #x2139]
898   [#x213D #x213F]
899   [#x2145 #x2149]
900   [#x2160 #x2183]
901   [#x2336 #x237A]
902   #x2395
903   [#x249C #x24E9]
904   [#x3005 #x3007]
905   [#x3021 #x3029]
906   [#x3031 #x3035]
907   [#x3038 #x303C]
908   [#x3041 #x3096]
909   [#x309D #x309F]
910   [#x30A1 #x30FA]
911   [#x30FC #x30FF]
912   [#x3105 #x312C]
913   [#x3131 #x318E]
914   [#x3190 #x31B7]
915   [#x31F0 #x321C]
916   [#x3220 #x3243]
917   [#x3260 #x327B]
918   [#x327F #x32B0]
919   [#x32C0 #x32CB]
920   [#x32D0 #x32FE]
921   [#x3300 #x3376]
922   [#x337B #x33DD]
923   [#x33E0 #x33FE]
924   [#x3400 #x4DB5]
925   [#x4E00 #x9FA5]
926   [#xA000 #xA48C]
927   [#xAC00 #xD7A3]
928   [#xD800 #xFA2D]
929   [#xFA30 #xFA6A]
930   [#xFB00 #xFB06]
931   [#xFB13 #xFB17]
932   [#xFF21 #xFF3A]
933   [#xFF41 #xFF5A]
934   [#xFF66 #xFFBE]
935   [#xFFC2 #xFFC7]
936   [#xFFCA #xFFCF]
937   [#xFFD2 #xFFD7]
938   [#xFFDA #xFFDC]
939   [#x10300 #x1031E]
940   [#x10320 #x10323]
941   [#x10330 #x1034A]
942   [#x10400 #x10425]
943   [#x10428 #x1044D]
944   [#x1D000 #x1D0F5]
945   [#x1D100 #x1D126]
946   [#x1D12A #x1D166]
947   [#x1D16A #x1D172]
948   [#x1D183 #x1D184]
949   [#x1D18C #x1D1A9]
950   [#x1D1AE #x1D1DD]
951   [#x1D400 #x1D454]
952   [#x1D456 #x1D49C]
953   [#x1D49E #x1D49F]
954   #x1D4A2
955   [#x1D4A5 #x1D4A6]
956   [#x1D4A9 #x1D4AC]
957   [#x1D4AE #x1D4B9]
958   #x1D4BB
959   [#x1D4BD #x1D4C0]
960   [#x1D4C2 #x1D4C3]
961   [#x1D4C5 #x1D505]
962   [#x1D507 #x1D50A]
963   [#x1D50D #x1D514]
964   [#x1D516 #x1D51C]
965   [#x1D51E #x1D539]
966   [#x1D53B #x1D53E]
967   [#x1D540 #x1D544]
968   #x1D546
969   [#x1D54A #x1D550]
970   [#x1D552 #x1D6A3]
971   [#x1D6A8 #x1D7C9]
972   [#x20000 #x2A6D6]
973   [#x2F800 #x2FA1D]
974   [#xF0000 #xFFFFD]
975   [#x100000 #x10FFFD]
976   ))
977