aboutsummaryrefslogtreecommitdiff
path: root/lib/unicode/prop/uprop_get_sc.c
blob: 16bbdd8efc062f7c8e59d6af6d9b5a3f4ee7fc7f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
/* This file is autogenerated by gen/prop/sc; DO NOT EDIT. */

#include "_bsearch.h"
#include "macros.h"
#include "rune.h"
#include "unicode/prop.h"

static constexpr enum uprop_sc lookup_lat1[] = {
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
	SC_LATN, SC_LATN, SC_LATN, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
	SC_LATN, SC_LATN, SC_LATN, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_LATN, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_ZYYY, SC_ZYYY, SC_LATN, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY, SC_ZYYY,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_ZYYY,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_ZYYY,
	SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN, SC_LATN,
};

static const struct {
	rune lo, hi;
	enum uprop_sc val;
} lookup[] = {
	{RUNE_C(0x000100), RUNE_C(0x0002B8), SC_LATN},
	{RUNE_C(0x0002B9), RUNE_C(0x0002DF), SC_ZYYY},
	{RUNE_C(0x0002E0), RUNE_C(0x0002E4), SC_LATN},
	{RUNE_C(0x0002E5), RUNE_C(0x0002E9), SC_ZYYY},
	{RUNE_C(0x0002EA), RUNE_C(0x0002EB), SC_BOPO},
	{RUNE_C(0x0002EC), RUNE_C(0x0002FF), SC_ZYYY},
	{RUNE_C(0x000300), RUNE_C(0x00036F), SC_ZINH},
	{RUNE_C(0x000370), RUNE_C(0x000373), SC_GREK},
	{RUNE_C(0x000374), RUNE_C(0x000374), SC_ZYYY},
	{RUNE_C(0x000375), RUNE_C(0x000377), SC_GREK},
	{RUNE_C(0x00037A), RUNE_C(0x00037D), SC_GREK},
	{RUNE_C(0x00037E), RUNE_C(0x00037E), SC_ZYYY},
	{RUNE_C(0x00037F), RUNE_C(0x00037F), SC_GREK},
	{RUNE_C(0x000384), RUNE_C(0x000384), SC_GREK},
	{RUNE_C(0x000385), RUNE_C(0x000385), SC_ZYYY},
	{RUNE_C(0x000386), RUNE_C(0x000386), SC_GREK},
	{RUNE_C(0x000387), RUNE_C(0x000387), SC_ZYYY},
	{RUNE_C(0x000388), RUNE_C(0x00038A), SC_GREK},
	{RUNE_C(0x00038C), RUNE_C(0x00038C), SC_GREK},
	{RUNE_C(0x00038E), RUNE_C(0x0003A1), SC_GREK},
	{RUNE_C(0x0003A3), RUNE_C(0x0003E1), SC_GREK},
	{RUNE_C(0x0003E2), RUNE_C(0x0003EF), SC_COPT},
	{RUNE_C(0x0003F0), RUNE_C(0x0003FF), SC_GREK},
	{RUNE_C(0x000400), RUNE_C(0x000484), SC_CYRL},
	{RUNE_C(0x000485), RUNE_C(0x000486), SC_ZINH},
	{RUNE_C(0x000487), RUNE_C(0x00052F), SC_CYRL},
	{RUNE_C(0x000531), RUNE_C(0x000556), SC_ARMN},
	{RUNE_C(0x000559), RUNE_C(0x00058A), SC_ARMN},
	{RUNE_C(0x00058D), RUNE_C(0x00058F), SC_ARMN},
	{RUNE_C(0x000591), RUNE_C(0x0005C7), SC_HEBR},
	{RUNE_C(0x0005D0), RUNE_C(0x0005EA), SC_HEBR},
	{RUNE_C(0x0005EF), RUNE_C(0x0005F4), SC_HEBR},
	{RUNE_C(0x000600), RUNE_C(0x000604), SC_ARAB},
	{RUNE_C(0x000605), RUNE_C(0x000605), SC_ZYYY},
	{RUNE_C(0x000606), RUNE_C(0x00060B), SC_ARAB},
	{RUNE_C(0x00060C), RUNE_C(0x00060C), SC_ZYYY},
	{RUNE_C(0x00060D), RUNE_C(0x00061A), SC_ARAB},
	{RUNE_C(0x00061B), RUNE_C(0x00061B), SC_ZYYY},
	{RUNE_C(0x00061C), RUNE_C(0x00061E), SC_ARAB},
	{RUNE_C(0x00061F), RUNE_C(0x00061F), SC_ZYYY},
	{RUNE_C(0x000620), RUNE_C(0x00063F), SC_ARAB},
	{RUNE_C(0x000640), RUNE_C(0x000640), SC_ZYYY},
	{RUNE_C(0x000641), RUNE_C(0x00064A), SC_ARAB},
	{RUNE_C(0x00064B), RUNE_C(0x000655), SC_ZINH},
	{RUNE_C(0x000656), RUNE_C(0x00066F), SC_ARAB},
	{RUNE_C(0x000670), RUNE_C(0x000670), SC_ZINH},
	{RUNE_C(0x000671), RUNE_C(0x0006DC), SC_ARAB},
	{RUNE_C(0x0006DD), RUNE_C(0x0006DD), SC_ZYYY},
	{RUNE_C(0x0006DE), RUNE_C(0x0006FF), SC_ARAB},
	{RUNE_C(0x000700), RUNE_C(0x00070D), SC_SYRC},
	{RUNE_C(0x00070F), RUNE_C(0x00074A), SC_SYRC},
	{RUNE_C(0x00074D), RUNE_C(0x00074F), SC_SYRC},
	{RUNE_C(0x000750), RUNE_C(0x00077F), SC_ARAB},
	{RUNE_C(0x000780), RUNE_C(0x0007B1), SC_THAA},
	{RUNE_C(0x0007C0), RUNE_C(0x0007FA), SC_NKOO},
	{RUNE_C(0x0007FD), RUNE_C(0x0007FF), SC_NKOO},
	{RUNE_C(0x000800), RUNE_C(0x00082D), SC_SAMR},
	{RUNE_C(0x000830), RUNE_C(0x00083E), SC_SAMR},
	{RUNE_C(0x000840), RUNE_C(0x00085B), SC_MAND},
	{RUNE_C(0x00085E), RUNE_C(0x00085E), SC_MAND},
	{RUNE_C(0x000860), RUNE_C(0x00086A), SC_SYRC},
	{RUNE_C(0x000870), RUNE_C(0x00088E), SC_ARAB},
	{RUNE_C(0x000890), RUNE_C(0x000891), SC_ARAB},
	{RUNE_C(0x000898), RUNE_C(0x0008E1), SC_ARAB},
	{RUNE_C(0x0008E2), RUNE_C(0x0008E2), SC_ZYYY},
	{RUNE_C(0x0008E3), RUNE_C(0x0008FF), SC_ARAB},
	{RUNE_C(0x000900), RUNE_C(0x000950), SC_DEVA},
	{RUNE_C(0x000951), RUNE_C(0x000954), SC_ZINH},
	{RUNE_C(0x000955), RUNE_C(0x000963), SC_DEVA},
	{RUNE_C(0x000964), RUNE_C(0x000965), SC_ZYYY},
	{RUNE_C(0x000966), RUNE_C(0x00097F), SC_DEVA},
	{RUNE_C(0x000980), RUNE_C(0x000983), SC_BENG},
	{RUNE_C(0x000985), RUNE_C(0x00098C), SC_BENG},
	{RUNE_C(0x00098F), RUNE_C(0x000990), SC_BENG},
	{RUNE_C(0x000993), RUNE_C(0x0009A8), SC_BENG},
	{RUNE_C(0x0009AA), RUNE_C(0x0009B0), SC_BENG},
	{RUNE_C(0x0009B2), RUNE_C(0x0009B2), SC_BENG},
	{RUNE_C(0x0009B6), RUNE_C(0x0009B9), SC_BENG},
	{RUNE_C(0x0009BC), RUNE_C(0x0009C4), SC_BENG},
	{RUNE_C(0x0009C7), RUNE_C(0x0009C8), SC_BENG},
	{RUNE_C(0x0009CB), RUNE_C(0x0009CE), SC_BENG},
	{RUNE_C(0x0009D7), RUNE_C(0x0009D7), SC_BENG},
	{RUNE_C(0x0009DC), RUNE_C(0x0009DD), SC_BENG},
	{RUNE_C(0x0009DF), RUNE_C(0x0009E3), SC_BENG},
	{RUNE_C(0x0009E6), RUNE_C(0x0009FE), SC_BENG},
	{RUNE_C(0x000A01), RUNE_C(0x000A03), SC_GURU},
	{RUNE_C(0x000A05), RUNE_C(0x000A0A), SC_GURU},
	{RUNE_C(0x000A0F), RUNE_C(0x000A10), SC_GURU},
	{RUNE_C(0x000A13), RUNE_C(0x000A28), SC_GURU},
	{RUNE_C(0x000A2A), RUNE_C(0x000A30), SC_GURU},
	{RUNE_C(0x000A32), RUNE_C(0x000A33), SC_GURU},
	{RUNE_C(0x000A35), RUNE_C(0x000A36), SC_GURU},
	{RUNE_C(0x000A38), RUNE_C(0x000A39), SC_GURU},
	{RUNE_C(0x000A3C), RUNE_C(0x000A3C), SC_GURU},
	{RUNE_C(0x000A3E), RUNE_C(0x000A42), SC_GURU},
	{RUNE_C(0x000A47), RUNE_C(0x000A48), SC_GURU},
	{RUNE_C(0x000A4B), RUNE_C(0x000A4D), SC_GURU},
	{RUNE_C(0x000A51), RUNE_C(0x000A51), SC_GURU},
	{RUNE_C(0x000A59), RUNE_C(0x000A5C), SC_GURU},
	{RUNE_C(0x000A5E), RUNE_C(0x000A5E), SC_GURU},
	{RUNE_C(0x000A66), RUNE_C(0x000A76), SC_GURU},
	{RUNE_C(0x000A81), RUNE_C(0x000A83), SC_GUJR},
	{RUNE_C(0x000A85), RUNE_C(0x000A8D), SC_GUJR},
	{RUNE_C(0x000A8F), RUNE_C(0x000A91), SC_GUJR},
	{RUNE_C(0x000A93), RUNE_C(0x000AA8), SC_GUJR},
	{RUNE_C(0x000AAA), RUNE_C(0x000AB0), SC_GUJR},
	{RUNE_C(0x000AB2), RUNE_C(0x000AB3), SC_GUJR},
	{RUNE_C(0x000AB5), RUNE_C(0x000AB9), SC_GUJR},
	{RUNE_C(0x000ABC), RUNE_C(0x000AC5), SC_GUJR},
	{RUNE_C(0x000AC7), RUNE_C(0x000AC9), SC_GUJR},
	{RUNE_C(0x000ACB), RUNE_C(0x000ACD), SC_GUJR},
	{RUNE_C(0x000AD0), RUNE_C(0x000AD0), SC_GUJR},
	{RUNE_C(0x000AE0), RUNE_C(0x000AE3), SC_GUJR},
	{RUNE_C(0x000AE6), RUNE_C(0x000AF1), SC_GUJR},
	{RUNE_C(0x000AF9), RUNE_C(0x000AFF), SC_GUJR},
	{RUNE_C(0x000B01), RUNE_C(0x000B03), SC_ORYA},
	{RUNE_C(0x000B05), RUNE_C(0x000B0C), SC_ORYA},
	{RUNE_C(0x000B0F), RUNE_C(0x000B10), SC_ORYA},
	{RUNE_C(0x000B13), RUNE_C(0x000B28), SC_ORYA},
	{RUNE_C(0x000B2A), RUNE_C(0x000B30), SC_ORYA},
	{RUNE_C(0x000B32), RUNE_C(0x000B33), SC_ORYA},
	{RUNE_C(0x000B35), RUNE_C(0x000B39), SC_ORYA},
	{RUNE_C(0x000B3C), RUNE_C(0x000B44), SC_ORYA},
	{RUNE_C(0x000B47), RUNE_C(0x000B48), SC_ORYA},
	{RUNE_C(0x000B4B), RUNE_C(0x000B4D), SC_ORYA},
	{RUNE_C(0x000B55), RUNE_C(0x000B57), SC_ORYA},
	{RUNE_C(0x000B5C), RUNE_C(0x000B5D), SC_ORYA},
	{RUNE_C(0x000B5F), RUNE_C(0x000B63), SC_ORYA},
	{RUNE_C(0x000B66), RUNE_C(0x000B77), SC_ORYA},
	{RUNE_C(0x000B82), RUNE_C(0x000B83), SC_TAML},
	{RUNE_C(0x000B85), RUNE_C(0x000B8A), SC_TAML},
	{RUNE_C(0x000B8E), RUNE_C(0x000B90), SC_TAML},
	{RUNE_C(0x000B92), RUNE_C(0x000B95), SC_TAML},
	{RUNE_C(0x000B99), RUNE_C(0x000B9A), SC_TAML},
	{RUNE_C(0x000B9C), RUNE_C(0x000B9C), SC_TAML},
	{RUNE_C(0x000B9E), RUNE_C(0x000B9F), SC_TAML},
	{RUNE_C(0x000BA3), RUNE_C(0x000BA4), SC_TAML},
	{RUNE_C(0x000BA8), RUNE_C(0x000BAA), SC_TAML},
	{RUNE_C(0x000BAE), RUNE_C(0x000BB9), SC_TAML},
	{RUNE_C(0x000BBE), RUNE_C(0x000BC2), SC_TAML},
	{RUNE_C(0x000BC6), RUNE_C(0x000BC8), SC_TAML},
	{RUNE_C(0x000BCA), RUNE_C(0x000BCD), SC_TAML},
	{RUNE_C(0x000BD0), RUNE_C(0x000BD0), SC_TAML},
	{RUNE_C(0x000BD7), RUNE_C(0x000BD7), SC_TAML},
	{RUNE_C(0x000BE6), RUNE_C(0x000BFA), SC_TAML},
	{RUNE_C(0x000C00), RUNE_C(0x000C0C), SC_TELU},
	{RUNE_C(0x000C0E), RUNE_C(0x000C10), SC_TELU},
	{RUNE_C(0x000C12), RUNE_C(0x000C28), SC_TELU},
	{RUNE_C(0x000C2A), RUNE_C(0x000C39), SC_TELU},
	{RUNE_C(0x000C3C), RUNE_C(0x000C44), SC_TELU},
	{RUNE_C(0x000C46), RUNE_C(0x000C48), SC_TELU},
	{RUNE_C(0x000C4A), RUNE_C(0x000C4D), SC_TELU},
	{RUNE_C(0x000C55), RUNE_C(0x000C56), SC_TELU},
	{RUNE_C(0x000C58), RUNE_C(0x000C5A), SC_TELU},
	{RUNE_C(0x000C5D), RUNE_C(0x000C5D), SC_TELU},
	{RUNE_C(0x000C60), RUNE_C(0x000C63), SC_TELU},
	{RUNE_C(0x000C66), RUNE_C(0x000C6F), SC_TELU},
	{RUNE_C(0x000C77), RUNE_C(0x000C7F), SC_TELU},
	{RUNE_C(0x000C80), RUNE_C(0x000C8C), SC_KNDA},
	{RUNE_C(0x000C8E), RUNE_C(0x000C90), SC_KNDA},
	{RUNE_C(0x000C92), RUNE_C(0x000CA8), SC_KNDA},
	{RUNE_C(0x000CAA), RUNE_C(0x000CB3), SC_KNDA},
	{RUNE_C(0x000CB5), RUNE_C(0x000CB9), SC_KNDA},
	{RUNE_C(0x000CBC), RUNE_C(0x000CC4), SC_KNDA},
	{RUNE_C(0x000CC6), RUNE_C(0x000CC8), SC_KNDA},
	{RUNE_C(0x000CCA), RUNE_C(0x000CCD), SC_KNDA},
	{RUNE_C(0x000CD5), RUNE_C(0x000CD6), SC_KNDA},
	{RUNE_C(0x000CDD), RUNE_C(0x000CDE), SC_KNDA},
	{RUNE_C(0x000CE0), RUNE_C(0x000CE3), SC_KNDA},
	{RUNE_C(0x000CE6), RUNE_C(0x000CEF), SC_KNDA},
	{RUNE_C(0x000CF1), RUNE_C(0x000CF3), SC_KNDA},
	{RUNE_C(0x000D00), RUNE_C(0x000D0C), SC_MLYM},
	{RUNE_C(0x000D0E), RUNE_C(0x000D10), SC_MLYM},
	{RUNE_C(0x000D12), RUNE_C(0x000D44), SC_MLYM},
	{RUNE_C(0x000D46), RUNE_C(0x000D48), SC_MLYM},
	{RUNE_C(0x000D4A), RUNE_C(0x000D4F), SC_MLYM},
	{RUNE_C(0x000D54), RUNE_C(0x000D63), SC_MLYM},
	{RUNE_C(0x000D66), RUNE_C(0x000D7F), SC_MLYM},
	{RUNE_C(0x000D81), RUNE_C(0x000D83), SC_SINH},
	{RUNE_C(0x000D85), RUNE_C(0x000D96), SC_SINH},
	{RUNE_C(0x000D9A), RUNE_C(0x000DB1), SC_SINH},
	{RUNE_C(0x000DB3), RUNE_C(0x000DBB), SC_SINH},
	{RUNE_C(0x000DBD), RUNE_C(0x000DBD), SC_SINH},
	{RUNE_C(0x000DC0), RUNE_C(0x000DC6), SC_SINH},
	{RUNE_C(0x000DCA), RUNE_C(0x000DCA), SC_SINH},
	{RUNE_C(0x000DCF), RUNE_C(0x000DD4), SC_SINH},
	{RUNE_C(0x000DD6), RUNE_C(0x000DD6), SC_SINH},
	{RUNE_C(0x000DD8), RUNE_C(0x000DDF), SC_SINH},
	{RUNE_C(0x000DE6), RUNE_C(0x000DEF), SC_SINH},
	{RUNE_C(0x000DF2), RUNE_C(0x000DF4), SC_SINH},
	{RUNE_C(0x000E01), RUNE_C(0x000E3A), SC_THAI},
	{RUNE_C(0x000E3F), RUNE_C(0x000E3F), SC_ZYYY},
	{RUNE_C(0x000E40), RUNE_C(0x000E5B), SC_THAI},
	{RUNE_C(0x000E81), RUNE_C(0x000E82), SC_LAOO},
	{RUNE_C(0x000E84), RUNE_C(0x000E84), SC_LAOO},
	{RUNE_C(0x000E86), RUNE_C(0x000E8A), SC_LAOO},
	{RUNE_C(0x000E8C), RUNE_C(0x000EA3), SC_LAOO},
	{RUNE_C(0x000EA5), RUNE_C(0x000EA5), SC_LAOO},
	{RUNE_C(0x000EA7), RUNE_C(0x000EBD), SC_LAOO},
	{RUNE_C(0x000EC0), RUNE_C(0x000EC4), SC_LAOO},
	{RUNE_C(0x000EC6), RUNE_C(0x000EC6), SC_LAOO},
	{RUNE_C(0x000EC8), RUNE_C(0x000ECE), SC_LAOO},
	{RUNE_C(0x000ED0), RUNE_C(0x000ED9), SC_LAOO},
	{RUNE_C(0x000EDC), RUNE_C(0x000EDF), SC_LAOO},
	{RUNE_C(0x000F00), RUNE_C(0x000F47), SC_TIBT},
	{RUNE_C(0x000F49), RUNE_C(0x000F6C), SC_TIBT},
	{RUNE_C(0x000F71), RUNE_C(0x000F97), SC_TIBT},
	{RUNE_C(0x000F99), RUNE_C(0x000FBC), SC_TIBT},
	{RUNE_C(0x000FBE), RUNE_C(0x000FCC), SC_TIBT},
	{RUNE_C(0x000FCE), RUNE_C(0x000FD4), SC_TIBT},
	{RUNE_C(0x000FD5), RUNE_C(0x000FD8), SC_ZYYY},
	{RUNE_C(0x000FD9), RUNE_C(0x000FDA), SC_TIBT},
	{RUNE_C(0x001000), RUNE_C(0x00109F), SC_MYMR},
	{RUNE_C(0x0010A0), RUNE_C(0x0010C5), SC_GEOR},
	{RUNE_C(0x0010C7), RUNE_C(0x0010C7), SC_GEOR},
	{RUNE_C(0x0010CD), RUNE_C(0x0010CD), SC_GEOR},
	{RUNE_C(0x0010D0), RUNE_C(0x0010FA), SC_GEOR},
	{RUNE_C(0x0010FB), RUNE_C(0x0010FB), SC_ZYYY},
	{RUNE_C(0x0010FC), RUNE_C(0x0010FF), SC_GEOR},
	{RUNE_C(0x001100), RUNE_C(0x0011FF), SC_HANG},
	{RUNE_C(0x001200), RUNE_C(0x001248), SC_ETHI},
	{RUNE_C(0x00124A), RUNE_C(0x00124D), SC_ETHI},
	{RUNE_C(0x001250), RUNE_C(0x001256), SC_ETHI},
	{RUNE_C(0x001258), RUNE_C(0x001258), SC_ETHI},
	{RUNE_C(0x00125A), RUNE_C(0x00125D), SC_ETHI},
	{RUNE_C(0x001260), RUNE_C(0x001288), SC_ETHI},
	{RUNE_C(0x00128A), RUNE_C(0x00128D), SC_ETHI},
	{RUNE_C(0x001290), RUNE_C(0x0012B0), SC_ETHI},
	{RUNE_C(0x0012B2), RUNE_C(0x0012B5), SC_ETHI},
	{RUNE_C(0x0012B8), RUNE_C(0x0012BE), SC_ETHI},
	{RUNE_C(0x0012C0), RUNE_C(0x0012C0), SC_ETHI},
	{RUNE_C(0x0012C2), RUNE_C(0x0012C5), SC_ETHI},
	{RUNE_C(0x0012C8), RUNE_C(0x0012D6), SC_ETHI},
	{RUNE_C(0x0012D8), RUNE_C(0x001310), SC_ETHI},
	{RUNE_C(0x001312), RUNE_C(0x001315), SC_ETHI},
	{RUNE_C(0x001318), RUNE_C(0x00135A), SC_ETHI},
	{RUNE_C(0x00135D), RUNE_C(0x00137C), SC_ETHI},
	{RUNE_C(0x001380), RUNE_C(0x001399), SC_ETHI},
	{RUNE_C(0x0013A0), RUNE_C(0x0013F5), SC_CHER},
	{RUNE_C(0x0013F8), RUNE_C(0x0013FD), SC_CHER},
	{RUNE_C(0x001400), RUNE_C(0x00167F), SC_CANS},
	{RUNE_C(0x001680), RUNE_C(0x00169C), SC_OGAM},
	{RUNE_C(0x0016A0), RUNE_C(0x0016EA), SC_RUNR},
	{RUNE_C(0x0016EB), RUNE_C(0x0016ED), SC_ZYYY},
	{RUNE_C(0x0016EE), RUNE_C(0x0016F8), SC_RUNR},
	{RUNE_C(0x001700), RUNE_C(0x001715), SC_TGLG},
	{RUNE_C(0x00171F), RUNE_C(0x00171F), SC_TGLG},
	{RUNE_C(0x001720), RUNE_C(0x001734), SC_HANO},
	{RUNE_C(0x001735), RUNE_C(0x001736), SC_ZYYY},
	{RUNE_C(0x001740), RUNE_C(0x001753), SC_BUHD},
	{RUNE_C(0x001760), RUNE_C(0x00176C), SC_TAGB},
	{RUNE_C(0x00176E), RUNE_C(0x001770), SC_TAGB},
	{RUNE_C(0x001772), RUNE_C(0x001773), SC_TAGB},
	{RUNE_C(0x001780), RUNE_C(0x0017DD), SC_KHMR},
	{RUNE_C(0x0017E0), RUNE_C(0x0017E9), SC_KHMR},
	{RUNE_C(0x0017F0), RUNE_C(0x0017F9), SC_KHMR},
	{RUNE_C(0x001800), RUNE_C(0x001801), SC_MONG},
	{RUNE_C(0x001802), RUNE_C(0x001803), SC_ZYYY},
	{RUNE_C(0x001804), RUNE_C(0x001804), SC_MONG},
	{RUNE_C(0x001805), RUNE_C(0x001805), SC_ZYYY},
	{RUNE_C(0x001806), RUNE_C(0x001819), SC_MONG},
	{RUNE_C(0x001820), RUNE_C(0x001878), SC_MONG},
	{RUNE_C(0x001880), RUNE_C(0x0018AA), SC_MONG},
	{RUNE_C(0x0018B0), RUNE_C(0x0018F5), SC_CANS},
	{RUNE_C(0x001900), RUNE_C(0x00191E), SC_LIMB},
	{RUNE_C(0x001920), RUNE_C(0x00192B), SC_LIMB},
	{RUNE_C(0x001930), RUNE_C(0x00193B), SC_LIMB},
	{RUNE_C(0x001940), RUNE_C(0x001940), SC_LIMB},
	{RUNE_C(0x001944), RUNE_C(0x00194F), SC_LIMB},
	{RUNE_C(0x001950), RUNE_C(0x00196D), SC_TALE},
	{RUNE_C(0x001970), RUNE_C(0x001974), SC_TALE},
	{RUNE_C(0x001980), RUNE_C(0x0019AB), SC_TALU},
	{RUNE_C(0x0019B0), RUNE_C(0x0019C9), SC_TALU},
	{RUNE_C(0x0019D0), RUNE_C(0x0019DA), SC_TALU},
	{RUNE_C(0x0019DE), RUNE_C(0x0019DF), SC_TALU},
	{RUNE_C(0x0019E0), RUNE_C(0x0019FF), SC_KHMR},
	{RUNE_C(0x001A00), RUNE_C(0x001A1B), SC_BUGI},
	{RUNE_C(0x001A1E), RUNE_C(0x001A1F), SC_BUGI},
	{RUNE_C(0x001A20), RUNE_C(0x001A5E), SC_LANA},
	{RUNE_C(0x001A60), RUNE_C(0x001A7C), SC_LANA},
	{RUNE_C(0x001A7F), RUNE_C(0x001A89), SC_LANA},
	{RUNE_C(0x001A90), RUNE_C(0x001A99), SC_LANA},
	{RUNE_C(0x001AA0), RUNE_C(0x001AAD), SC_LANA},
	{RUNE_C(0x001AB0), RUNE_C(0x001ACE), SC_ZINH},
	{RUNE_C(0x001B00), RUNE_C(0x001B4C), SC_BALI},
	{RUNE_C(0x001B50), RUNE_C(0x001B7E), SC_BALI},
	{RUNE_C(0x001B80), RUNE_C(0x001BBF), SC_SUND},
	{RUNE_C(0x001BC0), RUNE_C(0x001BF3), SC_BATK},
	{RUNE_C(0x001BFC), RUNE_C(0x001BFF), SC_BATK},
	{RUNE_C(0x001C00), RUNE_C(0x001C37), SC_LEPC},
	{RUNE_C(0x001C3B), RUNE_C(0x001C49), SC_LEPC},
	{RUNE_C(0x001C4D), RUNE_C(0x001C4F), SC_LEPC},
	{RUNE_C(0x001C50), RUNE_C(0x001C7F), SC_OLCK},
	{RUNE_C(0x001C80), RUNE_C(0x001C88), SC_CYRL},
	{RUNE_C(0x001C90), RUNE_C(0x001CBA), SC_GEOR},
	{RUNE_C(0x001CBD), RUNE_C(0x001CBF), SC_GEOR},
	{RUNE_C(0x001CC0), RUNE_C(0x001CC7), SC_SUND},
	{RUNE_C(0x001CD0), RUNE_C(0x001CD2), SC_ZINH},
	{RUNE_C(0x001CD3), RUNE_C(0x001CD3), SC_ZYYY},
	{RUNE_C(0x001CD4), RUNE_C(0x001CE0), SC_ZINH},
	{RUNE_C(0x001CE1), RUNE_C(0x001CE1), SC_ZYYY},
	{RUNE_C(0x001CE2), RUNE_C(0x001CE8), SC_ZINH},
	{RUNE_C(0x001CE9), RUNE_C(0x001CEC), SC_ZYYY},
	{RUNE_C(0x001CED), RUNE_C(0x001CED), SC_ZINH},
	{RUNE_C(0x001CEE), RUNE_C(0x001CF3), SC_ZYYY},
	{RUNE_C(0x001CF4), RUNE_C(0x001CF4), SC_ZINH},
	{RUNE_C(0x001CF5), RUNE_C(0x001CF7), SC_ZYYY},
	{RUNE_C(0x001CF8), RUNE_C(0x001CF9), SC_ZINH},
	{RUNE_C(0x001CFA), RUNE_C(0x001CFA), SC_ZYYY},
	{RUNE_C(0x001D00), RUNE_C(0x001D25), SC_LATN},
	{RUNE_C(0x001D26), RUNE_C(0x001D2A), SC_GREK},
	{RUNE_C(0x001D2B), RUNE_C(0x001D2B), SC_CYRL},
	{RUNE_C(0x001D2C), RUNE_C(0x001D5C), SC_LATN},
	{RUNE_C(0x001D5D), RUNE_C(0x001D61), SC_GREK},
	{RUNE_C(0x001D62), RUNE_C(0x001D65), SC_LATN},
	{RUNE_C(0x001D66), RUNE_C(0x001D6A), SC_GREK},
	{RUNE_C(0x001D6B), RUNE_C(0x001D77), SC_LATN},
	{RUNE_C(0x001D78), RUNE_C(0x001D78), SC_CYRL},
	{RUNE_C(0x001D79), RUNE_C(0x001DBE), SC_LATN},
	{RUNE_C(0x001DBF), RUNE_C(0x001DBF), SC_GREK},
	{RUNE_C(0x001DC0), RUNE_C(0x001DFF), SC_ZINH},
	{RUNE_C(0x001E00), RUNE_C(0x001EFF), SC_LATN},
	{RUNE_C(0x001F00), RUNE_C(0x001F15), SC_GREK},
	{RUNE_C(0x001F18), RUNE_C(0x001F1D), SC_GREK},
	{RUNE_C(0x001F20), RUNE_C(0x001F45), SC_GREK},
	{RUNE_C(0x001F48), RUNE_C(0x001F4D), SC_GREK},
	{RUNE_C(0x001F50), RUNE_C(0x001F57), SC_GREK},
	{RUNE_C(0x001F59), RUNE_C(0x001F59), SC_GREK},
	{RUNE_C(0x001F5B), RUNE_C(0x001F5B), SC_GREK},
	{RUNE_C(0x001F5D), RUNE_C(0x001F5D), SC_GREK},
	{RUNE_C(0x001F5F), RUNE_C(0x001F7D), SC_GREK},
	{RUNE_C(0x001F80), RUNE_C(0x001FB4), SC_GREK},
	{RUNE_C(0x001FB6), RUNE_C(0x001FC4), SC_GREK},
	{RUNE_C(0x001FC6), RUNE_C(0x001FD3), SC_GREK},
	{RUNE_C(0x001FD6), RUNE_C(0x001FDB), SC_GREK},
	{RUNE_C(0x001FDD), RUNE_C(0x001FEF), SC_GREK},
	{RUNE_C(0x001FF2), RUNE_C(0x001FF4), SC_GREK},
	{RUNE_C(0x001FF6), RUNE_C(0x001FFE), SC_GREK},
	{RUNE_C(0x002000), RUNE_C(0x00200B), SC_ZYYY},
	{RUNE_C(0x00200C), RUNE_C(0x00200D), SC_ZINH},
	{RUNE_C(0x00200E), RUNE_C(0x002064), SC_ZYYY},
	{RUNE_C(0x002066), RUNE_C(0x002070), SC_ZYYY},
	{RUNE_C(0x002071), RUNE_C(0x002071), SC_LATN},
	{RUNE_C(0x002074), RUNE_C(0x00207E), SC_ZYYY},
	{RUNE_C(0x00207F), RUNE_C(0x00207F), SC_LATN},
	{RUNE_C(0x002080), RUNE_C(0x00208E), SC_ZYYY},
	{RUNE_C(0x002090), RUNE_C(0x00209C), SC_LATN},
	{RUNE_C(0x0020A0), RUNE_C(0x0020C0), SC_ZYYY},
	{RUNE_C(0x0020D0), RUNE_C(0x0020F0), SC_ZINH},
	{RUNE_C(0x002100), RUNE_C(0x002125), SC_ZYYY},
	{RUNE_C(0x002126), RUNE_C(0x002126), SC_GREK},
	{RUNE_C(0x002127), RUNE_C(0x002129), SC_ZYYY},
	{RUNE_C(0x00212A), RUNE_C(0x00212B), SC_LATN},
	{RUNE_C(0x00212C), RUNE_C(0x002131), SC_ZYYY},
	{RUNE_C(0x002132), RUNE_C(0x002132), SC_LATN},
	{RUNE_C(0x002133), RUNE_C(0x00214D), SC_ZYYY},
	{RUNE_C(0x00214E), RUNE_C(0x00214E), SC_LATN},
	{RUNE_C(0x00214F), RUNE_C(0x00215F), SC_ZYYY},
	{RUNE_C(0x002160), RUNE_C(0x002188), SC_LATN},
	{RUNE_C(0x002189), RUNE_C(0x00218B), SC_ZYYY},
	{RUNE_C(0x002190), RUNE_C(0x002426), SC_ZYYY},
	{RUNE_C(0x002440), RUNE_C(0x00244A), SC_ZYYY},
	{RUNE_C(0x002460), RUNE_C(0x0027FF), SC_ZYYY},
	{RUNE_C(0x002800), RUNE_C(0x0028FF), SC_BRAI},
	{RUNE_C(0x002900), RUNE_C(0x002B73), SC_ZYYY},
	{RUNE_C(0x002B76), RUNE_C(0x002B95), SC_ZYYY},
	{RUNE_C(0x002B97), RUNE_C(0x002BFF), SC_ZYYY},
	{RUNE_C(0x002C00), RUNE_C(0x002C5F), SC_GLAG},
	{RUNE_C(0x002C60), RUNE_C(0x002C7F), SC_LATN},
	{RUNE_C(0x002C80), RUNE_C(0x002CF3), SC_COPT},
	{RUNE_C(0x002CF9), RUNE_C(0x002CFF), SC_COPT},
	{RUNE_C(0x002D00), RUNE_C(0x002D25), SC_GEOR},
	{RUNE_C(0x002D27), RUNE_C(0x002D27), SC_GEOR},
	{RUNE_C(0x002D2D), RUNE_C(0x002D2D), SC_GEOR},
	{RUNE_C(0x002D30), RUNE_C(0x002D67), SC_TFNG},
	{RUNE_C(0x002D6F), RUNE_C(0x002D70), SC_TFNG},
	{RUNE_C(0x002D7F), RUNE_C(0x002D7F), SC_TFNG},
	{RUNE_C(0x002D80), RUNE_C(0x002D96), SC_ETHI},
	{RUNE_C(0x002DA0), RUNE_C(0x002DA6), SC_ETHI},
	{RUNE_C(0x002DA8), RUNE_C(0x002DAE), SC_ETHI},
	{RUNE_C(0x002DB0), RUNE_C(0x002DB6), SC_ETHI},
	{RUNE_C(0x002DB8), RUNE_C(0x002DBE), SC_ETHI},
	{RUNE_C(0x002DC0), RUNE_C(0x002DC6), SC_ETHI},
	{RUNE_C(0x002DC8), RUNE_C(0x002DCE), SC_ETHI},
	{RUNE_C(0x002DD0), RUNE_C(0x002DD6), SC_ETHI},
	{RUNE_C(0x002DD8), RUNE_C(0x002DDE), SC_ETHI},
	{RUNE_C(0x002DE0), RUNE_C(0x002DFF), SC_CYRL},
	{RUNE_C(0x002E00), RUNE_C(0x002E5D), SC_ZYYY},
	{RUNE_C(0x002E80), RUNE_C(0x002E99), SC_HANI},
	{RUNE_C(0x002E9B), RUNE_C(0x002EF3), SC_HANI},
	{RUNE_C(0x002F00), RUNE_C(0x002FD5), SC_HANI},
	{RUNE_C(0x002FF0), RUNE_C(0x003004), SC_ZYYY},
	{RUNE_C(0x003005), RUNE_C(0x003005), SC_HANI},
	{RUNE_C(0x003006), RUNE_C(0x003006), SC_ZYYY},
	{RUNE_C(0x003007), RUNE_C(0x003007), SC_HANI},
	{RUNE_C(0x003008), RUNE_C(0x003020), SC_ZYYY},
	{RUNE_C(0x003021), RUNE_C(0x003029), SC_HANI},
	{RUNE_C(0x00302A), RUNE_C(0x00302D), SC_ZINH},
	{RUNE_C(0x00302E), RUNE_C(0x00302F), SC_HANG},
	{RUNE_C(0x003030), RUNE_C(0x003037), SC_ZYYY},
	{RUNE_C(0x003038), RUNE_C(0x00303B), SC_HANI},
	{RUNE_C(0x00303C), RUNE_C(0x00303F), SC_ZYYY},
	{RUNE_C(0x003041), RUNE_C(0x003096), SC_HIRA},
	{RUNE_C(0x003099), RUNE_C(0x00309A), SC_ZINH},
	{RUNE_C(0x00309B), RUNE_C(0x00309C), SC_ZYYY},
	{RUNE_C(0x00309D), RUNE_C(0x00309F), SC_HIRA},
	{RUNE_C(0x0030A0), RUNE_C(0x0030A0), SC_ZYYY},
	{RUNE_C(0x0030A1), RUNE_C(0x0030FA), SC_KANA},
	{RUNE_C(0x0030FB), RUNE_C(0x0030FC), SC_ZYYY},
	{RUNE_C(0x0030FD), RUNE_C(0x0030FF), SC_KANA},
	{RUNE_C(0x003105), RUNE_C(0x00312F), SC_BOPO},
	{RUNE_C(0x003131), RUNE_C(0x00318E), SC_HANG},
	{RUNE_C(0x003190), RUNE_C(0x00319F), SC_ZYYY},
	{RUNE_C(0x0031A0), RUNE_C(0x0031BF), SC_BOPO},
	{RUNE_C(0x0031C0), RUNE_C(0x0031E3), SC_ZYYY},
	{RUNE_C(0x0031EF), RUNE_C(0x0031EF), SC_ZYYY},
	{RUNE_C(0x0031F0), RUNE_C(0x0031FF), SC_KANA},
	{RUNE_C(0x003200), RUNE_C(0x00321E), SC_HANG},
	{RUNE_C(0x003220), RUNE_C(0x00325F), SC_ZYYY},
	{RUNE_C(0x003260), RUNE_C(0x00327E), SC_HANG},
	{RUNE_C(0x00327F), RUNE_C(0x0032CF), SC_ZYYY},
	{RUNE_C(0x0032D0), RUNE_C(0x0032FE), SC_KANA},
	{RUNE_C(0x0032FF), RUNE_C(0x0032FF), SC_ZYYY},
	{RUNE_C(0x003300), RUNE_C(0x003357), SC_KANA},
	{RUNE_C(0x003358), RUNE_C(0x0033FF), SC_ZYYY},
	{RUNE_C(0x003400), RUNE_C(0x004DBF), SC_HANI},
	{RUNE_C(0x004DC0), RUNE_C(0x004DFF), SC_ZYYY},
	{RUNE_C(0x004E00), RUNE_C(0x009FFF), SC_HANI},
	{RUNE_C(0x00A000), RUNE_C(0x00A48C), SC_YIII},
	{RUNE_C(0x00A490), RUNE_C(0x00A4C6), SC_YIII},
	{RUNE_C(0x00A4D0), RUNE_C(0x00A4FF), SC_LISU},
	{RUNE_C(0x00A500), RUNE_C(0x00A62B), SC_VAII},
	{RUNE_C(0x00A640), RUNE_C(0x00A69F), SC_CYRL},
	{RUNE_C(0x00A6A0), RUNE_C(0x00A6F7), SC_BAMU},
	{RUNE_C(0x00A700), RUNE_C(0x00A721), SC_ZYYY},
	{RUNE_C(0x00A722), RUNE_C(0x00A787), SC_LATN},
	{RUNE_C(0x00A788), RUNE_C(0x00A78A), SC_ZYYY},
	{RUNE_C(0x00A78B), RUNE_C(0x00A7CA), SC_LATN},
	{RUNE_C(0x00A7D0), RUNE_C(0x00A7D1), SC_LATN},
	{RUNE_C(0x00A7D3), RUNE_C(0x00A7D3), SC_LATN},
	{RUNE_C(0x00A7D5), RUNE_C(0x00A7D9), SC_LATN},
	{RUNE_C(0x00A7F2), RUNE_C(0x00A7FF), SC_LATN},
	{RUNE_C(0x00A800), RUNE_C(0x00A82C), SC_SYLO},
	{RUNE_C(0x00A830), RUNE_C(0x00A839), SC_ZYYY},
	{RUNE_C(0x00A840), RUNE_C(0x00A877), SC_PHAG},
	{RUNE_C(0x00A880), RUNE_C(0x00A8C5), SC_SAUR},
	{RUNE_C(0x00A8CE), RUNE_C(0x00A8D9), SC_SAUR},
	{RUNE_C(0x00A8E0), RUNE_C(0x00A8FF), SC_DEVA},
	{RUNE_C(0x00A900), RUNE_C(0x00A92D), SC_KALI},
	{RUNE_C(0x00A92E), RUNE_C(0x00A92E), SC_ZYYY},
	{RUNE_C(0x00A92F), RUNE_C(0x00A92F), SC_KALI},
	{RUNE_C(0x00A930), RUNE_C(0x00A953), SC_RJNG},
	{RUNE_C(0x00A95F), RUNE_C(0x00A95F), SC_RJNG},
	{RUNE_C(0x00A960), RUNE_C(0x00A97C), SC_HANG},
	{RUNE_C(0x00A980), RUNE_C(0x00A9CD), SC_JAVA},
	{RUNE_C(0x00A9CF), RUNE_C(0x00A9CF), SC_ZYYY},
	{RUNE_C(0x00A9D0), RUNE_C(0x00A9D9), SC_JAVA},
	{RUNE_C(0x00A9DE), RUNE_C(0x00A9DF), SC_JAVA},
	{RUNE_C(0x00A9E0), RUNE_C(0x00A9FE), SC_MYMR},
	{RUNE_C(0x00AA00), RUNE_C(0x00AA36), SC_CHAM},
	{RUNE_C(0x00AA40), RUNE_C(0x00AA4D), SC_CHAM},
	{RUNE_C(0x00AA50), RUNE_C(0x00AA59), SC_CHAM},
	{RUNE_C(0x00AA5C), RUNE_C(0x00AA5F), SC_CHAM},
	{RUNE_C(0x00AA60), RUNE_C(0x00AA7F), SC_MYMR},
	{RUNE_C(0x00AA80), RUNE_C(0x00AAC2), SC_TAVT},
	{RUNE_C(0x00AADB), RUNE_C(0x00AADF), SC_TAVT},
	{RUNE_C(0x00AAE0), RUNE_C(0x00AAF6), SC_MTEI},
	{RUNE_C(0x00AB01), RUNE_C(0x00AB06), SC_ETHI},
	{RUNE_C(0x00AB09), RUNE_C(0x00AB0E), SC_ETHI},
	{RUNE_C(0x00AB11), RUNE_C(0x00AB16), SC_ETHI},
	{RUNE_C(0x00AB20), RUNE_C(0x00AB26), SC_ETHI},
	{RUNE_C(0x00AB28), RUNE_C(0x00AB2E), SC_ETHI},
	{RUNE_C(0x00AB30), RUNE_C(0x00AB5A), SC_LATN},
	{RUNE_C(0x00AB5B), RUNE_C(0x00AB5B), SC_ZYYY},
	{RUNE_C(0x00AB5C), RUNE_C(0x00AB64), SC_LATN},
	{RUNE_C(0x00AB65), RUNE_C(0x00AB65), SC_GREK},
	{RUNE_C(0x00AB66), RUNE_C(0x00AB69), SC_LATN},
	{RUNE_C(0x00AB6A), RUNE_C(0x00AB6B), SC_ZYYY},
	{RUNE_C(0x00AB70), RUNE_C(0x00ABBF), SC_CHER},
	{RUNE_C(0x00ABC0), RUNE_C(0x00ABED), SC_MTEI},
	{RUNE_C(0x00ABF0), RUNE_C(0x00ABF9), SC_MTEI},
	{RUNE_C(0x00AC00), RUNE_C(0x00D7A3), SC_HANG},
	{RUNE_C(0x00D7B0), RUNE_C(0x00D7C6), SC_HANG},
	{RUNE_C(0x00D7CB), RUNE_C(0x00D7FB), SC_HANG},
	{RUNE_C(0x00F900), RUNE_C(0x00FA6D), SC_HANI},
	{RUNE_C(0x00FA70), RUNE_C(0x00FAD9), SC_HANI},
	{RUNE_C(0x00FB00), RUNE_C(0x00FB06), SC_LATN},
	{RUNE_C(0x00FB13), RUNE_C(0x00FB17), SC_ARMN},
	{RUNE_C(0x00FB1D), RUNE_C(0x00FB36), SC_HEBR},
	{RUNE_C(0x00FB38), RUNE_C(0x00FB3C), SC_HEBR},
	{RUNE_C(0x00FB3E), RUNE_C(0x00FB3E), SC_HEBR},
	{RUNE_C(0x00FB40), RUNE_C(0x00FB41), SC_HEBR},
	{RUNE_C(0x00FB43), RUNE_C(0x00FB44), SC_HEBR},
	{RUNE_C(0x00FB46), RUNE_C(0x00FB4F), SC_HEBR},
	{RUNE_C(0x00FB50), RUNE_C(0x00FBC2), SC_ARAB},
	{RUNE_C(0x00FBD3), RUNE_C(0x00FD3D), SC_ARAB},
	{RUNE_C(0x00FD3E), RUNE_C(0x00FD3F), SC_ZYYY},
	{RUNE_C(0x00FD40), RUNE_C(0x00FD8F), SC_ARAB},
	{RUNE_C(0x00FD92), RUNE_C(0x00FDC7), SC_ARAB},
	{RUNE_C(0x00FDCF), RUNE_C(0x00FDCF), SC_ARAB},
	{RUNE_C(0x00FDF0), RUNE_C(0x00FDFF), SC_ARAB},
	{RUNE_C(0x00FE00), RUNE_C(0x00FE0F), SC_ZINH},
	{RUNE_C(0x00FE10), RUNE_C(0x00FE19), SC_ZYYY},
	{RUNE_C(0x00FE20), RUNE_C(0x00FE2D), SC_ZINH},
	{RUNE_C(0x00FE2E), RUNE_C(0x00FE2F), SC_CYRL},
	{RUNE_C(0x00FE30), RUNE_C(0x00FE52), SC_ZYYY},
	{RUNE_C(0x00FE54), RUNE_C(0x00FE66), SC_ZYYY},
	{RUNE_C(0x00FE68), RUNE_C(0x00FE6B), SC_ZYYY},
	{RUNE_C(0x00FE70), RUNE_C(0x00FE74), SC_ARAB},
	{RUNE_C(0x00FE76), RUNE_C(0x00FEFC), SC_ARAB},
	{RUNE_C(0x00FEFF), RUNE_C(0x00FEFF), SC_ZYYY},
	{RUNE_C(0x00FF01), RUNE_C(0x00FF20), SC_ZYYY},
	{RUNE_C(0x00FF21), RUNE_C(0x00FF3A), SC_LATN},
	{RUNE_C(0x00FF3B), RUNE_C(0x00FF40), SC_ZYYY},
	{RUNE_C(0x00FF41), RUNE_C(0x00FF5A), SC_LATN},
	{RUNE_C(0x00FF5B), RUNE_C(0x00FF65), SC_ZYYY},
	{RUNE_C(0x00FF66), RUNE_C(0x00FF6F), SC_KANA},
	{RUNE_C(0x00FF70), RUNE_C(0x00FF70), SC_ZYYY},
	{RUNE_C(0x00FF71), RUNE_C(0x00FF9D), SC_KANA},
	{RUNE_C(0x00FF9E), RUNE_C(0x00FF9F), SC_ZYYY},
	{RUNE_C(0x00FFA0), RUNE_C(0x00FFBE), SC_HANG},
	{RUNE_C(0x00FFC2), RUNE_C(0x00FFC7), SC_HANG},
	{RUNE_C(0x00FFCA), RUNE_C(0x00FFCF), SC_HANG},
	{RUNE_C(0x00FFD2), RUNE_C(0x00FFD7), SC_HANG},
	{RUNE_C(0x00FFDA), RUNE_C(0x00FFDC), SC_HANG},
	{RUNE_C(0x00FFE0), RUNE_C(0x00FFE6), SC_ZYYY},
	{RUNE_C(0x00FFE8), RUNE_C(0x00FFEE), SC_ZYYY},
	{RUNE_C(0x00FFF9), RUNE_C(0x00FFFD), SC_ZYYY},
	{RUNE_C(0x010000), RUNE_C(0x01000B), SC_LINB},
	{RUNE_C(0x01000D), RUNE_C(0x010026), SC_LINB},
	{RUNE_C(0x010028), RUNE_C(0x01003A), SC_LINB},
	{RUNE_C(0x01003C), RUNE_C(0x01003D), SC_LINB},
	{RUNE_C(0x01003F), RUNE_C(0x01004D), SC_LINB},
	{RUNE_C(0x010050), RUNE_C(0x01005D), SC_LINB},
	{RUNE_C(0x010080), RUNE_C(0x0100FA), SC_LINB},
	{RUNE_C(0x010100), RUNE_C(0x010102), SC_ZYYY},
	{RUNE_C(0x010107), RUNE_C(0x010133), SC_ZYYY},
	{RUNE_C(0x010137), RUNE_C(0x01013F), SC_ZYYY},
	{RUNE_C(0x010140), RUNE_C(0x01018E), SC_GREK},
	{RUNE_C(0x010190), RUNE_C(0x01019C), SC_ZYYY},
	{RUNE_C(0x0101A0), RUNE_C(0x0101A0), SC_GREK},
	{RUNE_C(0x0101D0), RUNE_C(0x0101FC), SC_ZYYY},
	{RUNE_C(0x0101FD), RUNE_C(0x0101FD), SC_ZINH},
	{RUNE_C(0x010280), RUNE_C(0x01029C), SC_LYCI},
	{RUNE_C(0x0102A0), RUNE_C(0x0102D0), SC_CARI},
	{RUNE_C(0x0102E0), RUNE_C(0x0102E0), SC_ZINH},
	{RUNE_C(0x0102E1), RUNE_C(0x0102FB), SC_ZYYY},
	{RUNE_C(0x010300), RUNE_C(0x010323), SC_ITAL},
	{RUNE_C(0x01032D), RUNE_C(0x01032F), SC_ITAL},
	{RUNE_C(0x010330), RUNE_C(0x01034A), SC_GOTH},
	{RUNE_C(0x010350), RUNE_C(0x01037A), SC_PERM},
	{RUNE_C(0x010380), RUNE_C(0x01039D), SC_UGAR},
	{RUNE_C(0x01039F), RUNE_C(0x01039F), SC_UGAR},
	{RUNE_C(0x0103A0), RUNE_C(0x0103C3), SC_XPEO},
	{RUNE_C(0x0103C8), RUNE_C(0x0103D5), SC_XPEO},
	{RUNE_C(0x010400), RUNE_C(0x01044F), SC_DSRT},
	{RUNE_C(0x010450), RUNE_C(0x01047F), SC_SHAW},
	{RUNE_C(0x010480), RUNE_C(0x01049D), SC_OSMA},
	{RUNE_C(0x0104A0), RUNE_C(0x0104A9), SC_OSMA},
	{RUNE_C(0x0104B0), RUNE_C(0x0104D3), SC_OSGE},
	{RUNE_C(0x0104D8), RUNE_C(0x0104FB), SC_OSGE},
	{RUNE_C(0x010500), RUNE_C(0x010527), SC_ELBA},
	{RUNE_C(0x010530), RUNE_C(0x010563), SC_AGHB},
	{RUNE_C(0x01056F), RUNE_C(0x01056F), SC_AGHB},
	{RUNE_C(0x010570), RUNE_C(0x01057A), SC_VITH},
	{RUNE_C(0x01057C), RUNE_C(0x01058A), SC_VITH},
	{RUNE_C(0x01058C), RUNE_C(0x010592), SC_VITH},
	{RUNE_C(0x010594), RUNE_C(0x010595), SC_VITH},
	{RUNE_C(0x010597), RUNE_C(0x0105A1), SC_VITH},
	{RUNE_C(0x0105A3), RUNE_C(0x0105B1), SC_VITH},
	{RUNE_C(0x0105B3), RUNE_C(0x0105B9), SC_VITH},
	{RUNE_C(0x0105BB), RUNE_C(0x0105BC), SC_VITH},
	{RUNE_C(0x010600), RUNE_C(0x010736), SC_LINA},
	{RUNE_C(0x010740), RUNE_C(0x010755), SC_LINA},
	{RUNE_C(0x010760), RUNE_C(0x010767), SC_LINA},
	{RUNE_C(0x010780), RUNE_C(0x010785), SC_LATN},
	{RUNE_C(0x010787), RUNE_C(0x0107B0), SC_LATN},
	{RUNE_C(0x0107B2), RUNE_C(0x0107BA), SC_LATN},
	{RUNE_C(0x010800), RUNE_C(0x010805), SC_CPRT},
	{RUNE_C(0x010808), RUNE_C(0x010808), SC_CPRT},
	{RUNE_C(0x01080A), RUNE_C(0x010835), SC_CPRT},
	{RUNE_C(0x010837), RUNE_C(0x010838), SC_CPRT},
	{RUNE_C(0x01083C), RUNE_C(0x01083C), SC_CPRT},
	{RUNE_C(0x01083F), RUNE_C(0x01083F), SC_CPRT},
	{RUNE_C(0x010840), RUNE_C(0x010855), SC_ARMI},
	{RUNE_C(0x010857), RUNE_C(0x01085F), SC_ARMI},
	{RUNE_C(0x010860), RUNE_C(0x01087F), SC_PALM},
	{RUNE_C(0x010880), RUNE_C(0x01089E), SC_NBAT},
	{RUNE_C(0x0108A7), RUNE_C(0x0108AF), SC_NBAT},
	{RUNE_C(0x0108E0), RUNE_C(0x0108F2), SC_HATR},
	{RUNE_C(0x0108F4), RUNE_C(0x0108F5), SC_HATR},
	{RUNE_C(0x0108FB), RUNE_C(0x0108FF), SC_HATR},
	{RUNE_C(0x010900), RUNE_C(0x01091B), SC_PHNX},
	{RUNE_C(0x01091F), RUNE_C(0x01091F), SC_PHNX},
	{RUNE_C(0x010920), RUNE_C(0x010939), SC_LYDI},
	{RUNE_C(0x01093F), RUNE_C(0x01093F), SC_LYDI},
	{RUNE_C(0x010980), RUNE_C(0x01099F), SC_MERO},
	{RUNE_C(0x0109A0), RUNE_C(0x0109B7), SC_MERC},
	{RUNE_C(0x0109BC), RUNE_C(0x0109CF), SC_MERC},
	{RUNE_C(0x0109D2), RUNE_C(0x0109FF), SC_MERC},
	{RUNE_C(0x010A00), RUNE_C(0x010A03), SC_KHAR},
	{RUNE_C(0x010A05), RUNE_C(0x010A06), SC_KHAR},
	{RUNE_C(0x010A0C), RUNE_C(0x010A13), SC_KHAR},
	{RUNE_C(0x010A15), RUNE_C(0x010A17), SC_KHAR},
	{RUNE_C(0x010A19), RUNE_C(0x010A35), SC_KHAR},
	{RUNE_C(0x010A38), RUNE_C(0x010A3A), SC_KHAR},
	{RUNE_C(0x010A3F), RUNE_C(0x010A48), SC_KHAR},
	{RUNE_C(0x010A50), RUNE_C(0x010A58), SC_KHAR},
	{RUNE_C(0x010A60), RUNE_C(0x010A7F), SC_SARB},
	{RUNE_C(0x010A80), RUNE_C(0x010A9F), SC_NARB},
	{RUNE_C(0x010AC0), RUNE_C(0x010AE6), SC_MANI},
	{RUNE_C(0x010AEB), RUNE_C(0x010AF6), SC_MANI},
	{RUNE_C(0x010B00), RUNE_C(0x010B35), SC_AVST},
	{RUNE_C(0x010B39), RUNE_C(0x010B3F), SC_AVST},
	{RUNE_C(0x010B40), RUNE_C(0x010B55), SC_PRTI},
	{RUNE_C(0x010B58), RUNE_C(0x010B5F), SC_PRTI},
	{RUNE_C(0x010B60), RUNE_C(0x010B72), SC_PHLI},
	{RUNE_C(0x010B78), RUNE_C(0x010B7F), SC_PHLI},
	{RUNE_C(0x010B80), RUNE_C(0x010B91), SC_PHLP},
	{RUNE_C(0x010B99), RUNE_C(0x010B9C), SC_PHLP},
	{RUNE_C(0x010BA9), RUNE_C(0x010BAF), SC_PHLP},
	{RUNE_C(0x010C00), RUNE_C(0x010C48), SC_ORKH},
	{RUNE_C(0x010C80), RUNE_C(0x010CB2), SC_HUNG},
	{RUNE_C(0x010CC0), RUNE_C(0x010CF2), SC_HUNG},
	{RUNE_C(0x010CFA), RUNE_C(0x010CFF), SC_HUNG},
	{RUNE_C(0x010D00), RUNE_C(0x010D27), SC_ROHG},
	{RUNE_C(0x010D30), RUNE_C(0x010D39), SC_ROHG},
	{RUNE_C(0x010E60), RUNE_C(0x010E7E), SC_ARAB},
	{RUNE_C(0x010E80), RUNE_C(0x010EA9), SC_YEZI},
	{RUNE_C(0x010EAB), RUNE_C(0x010EAD), SC_YEZI},
	{RUNE_C(0x010EB0), RUNE_C(0x010EB1), SC_YEZI},
	{RUNE_C(0x010EFD), RUNE_C(0x010EFF), SC_ARAB},
	{RUNE_C(0x010F00), RUNE_C(0x010F27), SC_SOGO},
	{RUNE_C(0x010F30), RUNE_C(0x010F59), SC_SOGD},
	{RUNE_C(0x010F70), RUNE_C(0x010F89), SC_OUGR},
	{RUNE_C(0x010FB0), RUNE_C(0x010FCB), SC_CHRS},
	{RUNE_C(0x010FE0), RUNE_C(0x010FF6), SC_ELYM},
	{RUNE_C(0x011000), RUNE_C(0x01104D), SC_BRAH},
	{RUNE_C(0x011052), RUNE_C(0x011075), SC_BRAH},
	{RUNE_C(0x01107F), RUNE_C(0x01107F), SC_BRAH},
	{RUNE_C(0x011080), RUNE_C(0x0110C2), SC_KTHI},
	{RUNE_C(0x0110CD), RUNE_C(0x0110CD), SC_KTHI},
	{RUNE_C(0x0110D0), RUNE_C(0x0110E8), SC_SORA},
	{RUNE_C(0x0110F0), RUNE_C(0x0110F9), SC_SORA},
	{RUNE_C(0x011100), RUNE_C(0x011134), SC_CAKM},
	{RUNE_C(0x011136), RUNE_C(0x011147), SC_CAKM},
	{RUNE_C(0x011150), RUNE_C(0x011176), SC_MAHJ},
	{RUNE_C(0x011180), RUNE_C(0x0111DF), SC_SHRD},
	{RUNE_C(0x0111E1), RUNE_C(0x0111F4), SC_SINH},
	{RUNE_C(0x011200), RUNE_C(0x011211), SC_KHOJ},
	{RUNE_C(0x011213), RUNE_C(0x011241), SC_KHOJ},
	{RUNE_C(0x011280), RUNE_C(0x011286), SC_MULT},
	{RUNE_C(0x011288), RUNE_C(0x011288), SC_MULT},
	{RUNE_C(0x01128A), RUNE_C(0x01128D), SC_MULT},
	{RUNE_C(0x01128F), RUNE_C(0x01129D), SC_MULT},
	{RUNE_C(0x01129F), RUNE_C(0x0112A9), SC_MULT},
	{RUNE_C(0x0112B0), RUNE_C(0x0112EA), SC_SIND},
	{RUNE_C(0x0112F0), RUNE_C(0x0112F9), SC_SIND},
	{RUNE_C(0x011300), RUNE_C(0x011303), SC_GRAN},
	{RUNE_C(0x011305), RUNE_C(0x01130C), SC_GRAN},
	{RUNE_C(0x01130F), RUNE_C(0x011310), SC_GRAN},
	{RUNE_C(0x011313), RUNE_C(0x011328), SC_GRAN},
	{RUNE_C(0x01132A), RUNE_C(0x011330), SC_GRAN},
	{RUNE_C(0x011332), RUNE_C(0x011333), SC_GRAN},
	{RUNE_C(0x011335), RUNE_C(0x011339), SC_GRAN},
	{RUNE_C(0x01133B), RUNE_C(0x01133B), SC_ZINH},
	{RUNE_C(0x01133C), RUNE_C(0x011344), SC_GRAN},
	{RUNE_C(0x011347), RUNE_C(0x011348), SC_GRAN},
	{RUNE_C(0x01134B), RUNE_C(0x01134D), SC_GRAN},
	{RUNE_C(0x011350), RUNE_C(0x011350), SC_GRAN},
	{RUNE_C(0x011357), RUNE_C(0x011357), SC_GRAN},
	{RUNE_C(0x01135D), RUNE_C(0x011363), SC_GRAN},
	{RUNE_C(0x011366), RUNE_C(0x01136C), SC_GRAN},
	{RUNE_C(0x011370), RUNE_C(0x011374), SC_GRAN},
	{RUNE_C(0x011400), RUNE_C(0x01145B), SC_NEWA},
	{RUNE_C(0x01145D), RUNE_C(0x011461), SC_NEWA},
	{RUNE_C(0x011480), RUNE_C(0x0114C7), SC_TIRH},
	{RUNE_C(0x0114D0), RUNE_C(0x0114D9), SC_TIRH},
	{RUNE_C(0x011580), RUNE_C(0x0115B5), SC_SIDD},
	{RUNE_C(0x0115B8), RUNE_C(0x0115DD), SC_SIDD},
	{RUNE_C(0x011600), RUNE_C(0x011644), SC_MODI},
	{RUNE_C(0x011650), RUNE_C(0x011659), SC_MODI},
	{RUNE_C(0x011660), RUNE_C(0x01166C), SC_MONG},
	{RUNE_C(0x011680), RUNE_C(0x0116B9), SC_TAKR},
	{RUNE_C(0x0116C0), RUNE_C(0x0116C9), SC_TAKR},
	{RUNE_C(0x011700), RUNE_C(0x01171A), SC_AHOM},
	{RUNE_C(0x01171D), RUNE_C(0x01172B), SC_AHOM},
	{RUNE_C(0x011730), RUNE_C(0x011746), SC_AHOM},
	{RUNE_C(0x011800), RUNE_C(0x01183B), SC_DOGR},
	{RUNE_C(0x0118A0), RUNE_C(0x0118F2), SC_WARA},
	{RUNE_C(0x0118FF), RUNE_C(0x0118FF), SC_WARA},
	{RUNE_C(0x011900), RUNE_C(0x011906), SC_DIAK},
	{RUNE_C(0x011909), RUNE_C(0x011909), SC_DIAK},
	{RUNE_C(0x01190C), RUNE_C(0x011913), SC_DIAK},
	{RUNE_C(0x011915), RUNE_C(0x011916), SC_DIAK},
	{RUNE_C(0x011918), RUNE_C(0x011935), SC_DIAK},
	{RUNE_C(0x011937), RUNE_C(0x011938), SC_DIAK},
	{RUNE_C(0x01193B), RUNE_C(0x011946), SC_DIAK},
	{RUNE_C(0x011950), RUNE_C(0x011959), SC_DIAK},
	{RUNE_C(0x0119A0), RUNE_C(0x0119A7), SC_NAND},
	{RUNE_C(0x0119AA), RUNE_C(0x0119D7), SC_NAND},
	{RUNE_C(0x0119DA), RUNE_C(0x0119E4), SC_NAND},
	{RUNE_C(0x011A00), RUNE_C(0x011A47), SC_ZANB},
	{RUNE_C(0x011A50), RUNE_C(0x011AA2), SC_SOYO},
	{RUNE_C(0x011AB0), RUNE_C(0x011ABF), SC_CANS},
	{RUNE_C(0x011AC0), RUNE_C(0x011AF8), SC_PAUC},
	{RUNE_C(0x011B00), RUNE_C(0x011B09), SC_DEVA},
	{RUNE_C(0x011C00), RUNE_C(0x011C08), SC_BHKS},
	{RUNE_C(0x011C0A), RUNE_C(0x011C36), SC_BHKS},
	{RUNE_C(0x011C38), RUNE_C(0x011C45), SC_BHKS},
	{RUNE_C(0x011C50), RUNE_C(0x011C6C), SC_BHKS},
	{RUNE_C(0x011C70), RUNE_C(0x011C8F), SC_MARC},
	{RUNE_C(0x011C92), RUNE_C(0x011CA7), SC_MARC},
	{RUNE_C(0x011CA9), RUNE_C(0x011CB6), SC_MARC},
	{RUNE_C(0x011D00), RUNE_C(0x011D06), SC_GONM},
	{RUNE_C(0x011D08), RUNE_C(0x011D09), SC_GONM},
	{RUNE_C(0x011D0B), RUNE_C(0x011D36), SC_GONM},
	{RUNE_C(0x011D3A), RUNE_C(0x011D3A), SC_GONM},
	{RUNE_C(0x011D3C), RUNE_C(0x011D3D), SC_GONM},
	{RUNE_C(0x011D3F), RUNE_C(0x011D47), SC_GONM},
	{RUNE_C(0x011D50), RUNE_C(0x011D59), SC_GONM},
	{RUNE_C(0x011D60), RUNE_C(0x011D65), SC_GONG},
	{RUNE_C(0x011D67), RUNE_C(0x011D68), SC_GONG},
	{RUNE_C(0x011D6A), RUNE_C(0x011D8E), SC_GONG},
	{RUNE_C(0x011D90), RUNE_C(0x011D91), SC_GONG},
	{RUNE_C(0x011D93), RUNE_C(0x011D98), SC_GONG},
	{RUNE_C(0x011DA0), RUNE_C(0x011DA9), SC_GONG},
	{RUNE_C(0x011EE0), RUNE_C(0x011EF8), SC_MAKA},
	{RUNE_C(0x011F00), RUNE_C(0x011F10), SC_KAWI},
	{RUNE_C(0x011F12), RUNE_C(0x011F3A), SC_KAWI},
	{RUNE_C(0x011F3E), RUNE_C(0x011F59), SC_KAWI},
	{RUNE_C(0x011FB0), RUNE_C(0x011FB0), SC_LISU},
	{RUNE_C(0x011FC0), RUNE_C(0x011FF1), SC_TAML},
	{RUNE_C(0x011FFF), RUNE_C(0x011FFF), SC_TAML},
	{RUNE_C(0x012000), RUNE_C(0x012399), SC_XSUX},
	{RUNE_C(0x012400), RUNE_C(0x01246E), SC_XSUX},
	{RUNE_C(0x012470), RUNE_C(0x012474), SC_XSUX},
	{RUNE_C(0x012480), RUNE_C(0x012543), SC_XSUX},
	{RUNE_C(0x012F90), RUNE_C(0x012FF2), SC_CPMN},
	{RUNE_C(0x013000), RUNE_C(0x013455), SC_EGYP},
	{RUNE_C(0x014400), RUNE_C(0x014646), SC_HLUW},
	{RUNE_C(0x016800), RUNE_C(0x016A38), SC_BAMU},
	{RUNE_C(0x016A40), RUNE_C(0x016A5E), SC_MROO},
	{RUNE_C(0x016A60), RUNE_C(0x016A69), SC_MROO},
	{RUNE_C(0x016A6E), RUNE_C(0x016A6F), SC_MROO},
	{RUNE_C(0x016A70), RUNE_C(0x016ABE), SC_TNSA},
	{RUNE_C(0x016AC0), RUNE_C(0x016AC9), SC_TNSA},
	{RUNE_C(0x016AD0), RUNE_C(0x016AED), SC_BASS},
	{RUNE_C(0x016AF0), RUNE_C(0x016AF5), SC_BASS},
	{RUNE_C(0x016B00), RUNE_C(0x016B45), SC_HMNG},
	{RUNE_C(0x016B50), RUNE_C(0x016B59), SC_HMNG},
	{RUNE_C(0x016B5B), RUNE_C(0x016B61), SC_HMNG},
	{RUNE_C(0x016B63), RUNE_C(0x016B77), SC_HMNG},
	{RUNE_C(0x016B7D), RUNE_C(0x016B8F), SC_HMNG},
	{RUNE_C(0x016E40), RUNE_C(0x016E9A), SC_MEDF},
	{RUNE_C(0x016F00), RUNE_C(0x016F4A), SC_PLRD},
	{RUNE_C(0x016F4F), RUNE_C(0x016F87), SC_PLRD},
	{RUNE_C(0x016F8F), RUNE_C(0x016F9F), SC_PLRD},
	{RUNE_C(0x016FE0), RUNE_C(0x016FE0), SC_TANG},
	{RUNE_C(0x016FE1), RUNE_C(0x016FE1), SC_NSHU},
	{RUNE_C(0x016FE2), RUNE_C(0x016FE3), SC_HANI},
	{RUNE_C(0x016FE4), RUNE_C(0x016FE4), SC_KITS},
	{RUNE_C(0x016FF0), RUNE_C(0x016FF1), SC_HANI},
	{RUNE_C(0x017000), RUNE_C(0x0187F7), SC_TANG},
	{RUNE_C(0x018800), RUNE_C(0x018AFF), SC_TANG},
	{RUNE_C(0x018B00), RUNE_C(0x018CD5), SC_KITS},
	{RUNE_C(0x018D00), RUNE_C(0x018D08), SC_TANG},
	{RUNE_C(0x01AFF0), RUNE_C(0x01AFF3), SC_KANA},
	{RUNE_C(0x01AFF5), RUNE_C(0x01AFFB), SC_KANA},
	{RUNE_C(0x01AFFD), RUNE_C(0x01AFFE), SC_KANA},
	{RUNE_C(0x01B000), RUNE_C(0x01B000), SC_KANA},
	{RUNE_C(0x01B001), RUNE_C(0x01B11F), SC_HIRA},
	{RUNE_C(0x01B120), RUNE_C(0x01B122), SC_KANA},
	{RUNE_C(0x01B132), RUNE_C(0x01B132), SC_HIRA},
	{RUNE_C(0x01B150), RUNE_C(0x01B152), SC_HIRA},
	{RUNE_C(0x01B155), RUNE_C(0x01B155), SC_KANA},
	{RUNE_C(0x01B164), RUNE_C(0x01B167), SC_KANA},
	{RUNE_C(0x01B170), RUNE_C(0x01B2FB), SC_NSHU},
	{RUNE_C(0x01BC00), RUNE_C(0x01BC6A), SC_DUPL},
	{RUNE_C(0x01BC70), RUNE_C(0x01BC7C), SC_DUPL},
	{RUNE_C(0x01BC80), RUNE_C(0x01BC88), SC_DUPL},
	{RUNE_C(0x01BC90), RUNE_C(0x01BC99), SC_DUPL},
	{RUNE_C(0x01BC9C), RUNE_C(0x01BC9F), SC_DUPL},
	{RUNE_C(0x01BCA0), RUNE_C(0x01BCA3), SC_ZYYY},
	{RUNE_C(0x01CF00), RUNE_C(0x01CF2D), SC_ZINH},
	{RUNE_C(0x01CF30), RUNE_C(0x01CF46), SC_ZINH},
	{RUNE_C(0x01CF50), RUNE_C(0x01CFC3), SC_ZYYY},
	{RUNE_C(0x01D000), RUNE_C(0x01D0F5), SC_ZYYY},
	{RUNE_C(0x01D100), RUNE_C(0x01D126), SC_ZYYY},
	{RUNE_C(0x01D129), RUNE_C(0x01D166), SC_ZYYY},
	{RUNE_C(0x01D167), RUNE_C(0x01D169), SC_ZINH},
	{RUNE_C(0x01D16A), RUNE_C(0x01D17A), SC_ZYYY},
	{RUNE_C(0x01D17B), RUNE_C(0x01D182), SC_ZINH},
	{RUNE_C(0x01D183), RUNE_C(0x01D184), SC_ZYYY},
	{RUNE_C(0x01D185), RUNE_C(0x01D18B), SC_ZINH},
	{RUNE_C(0x01D18C), RUNE_C(0x01D1A9), SC_ZYYY},
	{RUNE_C(0x01D1AA), RUNE_C(0x01D1AD), SC_ZINH},
	{RUNE_C(0x01D1AE), RUNE_C(0x01D1EA), SC_ZYYY},
	{RUNE_C(0x01D200), RUNE_C(0x01D245), SC_GREK},
	{RUNE_C(0x01D2C0), RUNE_C(0x01D2D3), SC_ZYYY},
	{RUNE_C(0x01D2E0), RUNE_C(0x01D2F3), SC_ZYYY},
	{RUNE_C(0x01D300), RUNE_C(0x01D356), SC_ZYYY},
	{RUNE_C(0x01D360), RUNE_C(0x01D378), SC_ZYYY},
	{RUNE_C(0x01D400), RUNE_C(0x01D454), SC_ZYYY},
	{RUNE_C(0x01D456), RUNE_C(0x01D49C), SC_ZYYY},
	{RUNE_C(0x01D49E), RUNE_C(0x01D49F), SC_ZYYY},
	{RUNE_C(0x01D4A2), RUNE_C(0x01D4A2), SC_ZYYY},
	{RUNE_C(0x01D4A5), RUNE_C(0x01D4A6), SC_ZYYY},
	{RUNE_C(0x01D4A9), RUNE_C(0x01D4AC), SC_ZYYY},
	{RUNE_C(0x01D4AE), RUNE_C(0x01D4B9), SC_ZYYY},
	{RUNE_C(0x01D4BB), RUNE_C(0x01D4BB), SC_ZYYY},
	{RUNE_C(0x01D4BD), RUNE_C(0x01D4C3), SC_ZYYY},
	{RUNE_C(0x01D4C5), RUNE_C(0x01D505), SC_ZYYY},
	{RUNE_C(0x01D507), RUNE_C(0x01D50A), SC_ZYYY},
	{RUNE_C(0x01D50D), RUNE_C(0x01D514), SC_ZYYY},
	{RUNE_C(0x01D516), RUNE_C(0x01D51C), SC_ZYYY},
	{RUNE_C(0x01D51E), RUNE_C(0x01D539), SC_ZYYY},
	{RUNE_C(0x01D53B), RUNE_C(0x01D53E), SC_ZYYY},
	{RUNE_C(0x01D540), RUNE_C(0x01D544), SC_ZYYY},
	{RUNE_C(0x01D546), RUNE_C(0x01D546), SC_ZYYY},
	{RUNE_C(0x01D54A), RUNE_C(0x01D550), SC_ZYYY},
	{RUNE_C(0x01D552), RUNE_C(0x01D6A5), SC_ZYYY},
	{RUNE_C(0x01D6A8), RUNE_C(0x01D7CB), SC_ZYYY},
	{RUNE_C(0x01D7CE), RUNE_C(0x01D7FF), SC_ZYYY},
	{RUNE_C(0x01D800), RUNE_C(0x01DA8B), SC_SGNW},
	{RUNE_C(0x01DA9B), RUNE_C(0x01DA9F), SC_SGNW},
	{RUNE_C(0x01DAA1), RUNE_C(0x01DAAF), SC_SGNW},
	{RUNE_C(0x01DF00), RUNE_C(0x01DF1E), SC_LATN},
	{RUNE_C(0x01DF25), RUNE_C(0x01DF2A), SC_LATN},
	{RUNE_C(0x01E000), RUNE_C(0x01E006), SC_GLAG},
	{RUNE_C(0x01E008), RUNE_C(0x01E018), SC_GLAG},
	{RUNE_C(0x01E01B), RUNE_C(0x01E021), SC_GLAG},
	{RUNE_C(0x01E023), RUNE_C(0x01E024), SC_GLAG},
	{RUNE_C(0x01E026), RUNE_C(0x01E02A), SC_GLAG},
	{RUNE_C(0x01E030), RUNE_C(0x01E06D), SC_CYRL},
	{RUNE_C(0x01E08F), RUNE_C(0x01E08F), SC_CYRL},
	{RUNE_C(0x01E100), RUNE_C(0x01E12C), SC_HMNP},
	{RUNE_C(0x01E130), RUNE_C(0x01E13D), SC_HMNP},
	{RUNE_C(0x01E140), RUNE_C(0x01E149), SC_HMNP},
	{RUNE_C(0x01E14E), RUNE_C(0x01E14F), SC_HMNP},
	{RUNE_C(0x01E290), RUNE_C(0x01E2AE), SC_TOTO},
	{RUNE_C(0x01E2C0), RUNE_C(0x01E2F9), SC_WCHO},
	{RUNE_C(0x01E2FF), RUNE_C(0x01E2FF), SC_WCHO},
	{RUNE_C(0x01E4D0), RUNE_C(0x01E4F9), SC_NAGM},
	{RUNE_C(0x01E7E0), RUNE_C(0x01E7E6), SC_ETHI},
	{RUNE_C(0x01E7E8), RUNE_C(0x01E7EB), SC_ETHI},
	{RUNE_C(0x01E7ED), RUNE_C(0x01E7EE), SC_ETHI},
	{RUNE_C(0x01E7F0), RUNE_C(0x01E7FE), SC_ETHI},
	{RUNE_C(0x01E800), RUNE_C(0x01E8C4), SC_MEND},
	{RUNE_C(0x01E8C7), RUNE_C(0x01E8D6), SC_MEND},
	{RUNE_C(0x01E900), RUNE_C(0x01E94B), SC_ADLM},
	{RUNE_C(0x01E950), RUNE_C(0x01E959), SC_ADLM},
	{RUNE_C(0x01E95E), RUNE_C(0x01E95F), SC_ADLM},
	{RUNE_C(0x01EC71), RUNE_C(0x01ECB4), SC_ZYYY},
	{RUNE_C(0x01ED01), RUNE_C(0x01ED3D), SC_ZYYY},
	{RUNE_C(0x01EE00), RUNE_C(0x01EE03), SC_ARAB},
	{RUNE_C(0x01EE05), RUNE_C(0x01EE1F), SC_ARAB},
	{RUNE_C(0x01EE21), RUNE_C(0x01EE22), SC_ARAB},
	{RUNE_C(0x01EE24), RUNE_C(0x01EE24), SC_ARAB},
	{RUNE_C(0x01EE27), RUNE_C(0x01EE27), SC_ARAB},
	{RUNE_C(0x01EE29), RUNE_C(0x01EE32), SC_ARAB},
	{RUNE_C(0x01EE34), RUNE_C(0x01EE37), SC_ARAB},
	{RUNE_C(0x01EE39), RUNE_C(0x01EE39), SC_ARAB},
	{RUNE_C(0x01EE3B), RUNE_C(0x01EE3B), SC_ARAB},
	{RUNE_C(0x01EE42), RUNE_C(0x01EE42), SC_ARAB},
	{RUNE_C(0x01EE47), RUNE_C(0x01EE47), SC_ARAB},
	{RUNE_C(0x01EE49), RUNE_C(0x01EE49), SC_ARAB},
	{RUNE_C(0x01EE4B), RUNE_C(0x01EE4B), SC_ARAB},
	{RUNE_C(0x01EE4D), RUNE_C(0x01EE4F), SC_ARAB},
	{RUNE_C(0x01EE51), RUNE_C(0x01EE52), SC_ARAB},
	{RUNE_C(0x01EE54), RUNE_C(0x01EE54), SC_ARAB},
	{RUNE_C(0x01EE57), RUNE_C(0x01EE57), SC_ARAB},
	{RUNE_C(0x01EE59), RUNE_C(0x01EE59), SC_ARAB},
	{RUNE_C(0x01EE5B), RUNE_C(0x01EE5B), SC_ARAB},
	{RUNE_C(0x01EE5D), RUNE_C(0x01EE5D), SC_ARAB},
	{RUNE_C(0x01EE5F), RUNE_C(0x01EE5F), SC_ARAB},
	{RUNE_C(0x01EE61), RUNE_C(0x01EE62), SC_ARAB},
	{RUNE_C(0x01EE64), RUNE_C(0x01EE64), SC_ARAB},
	{RUNE_C(0x01EE67), RUNE_C(0x01EE6A), SC_ARAB},
	{RUNE_C(0x01EE6C), RUNE_C(0x01EE72), SC_ARAB},
	{RUNE_C(0x01EE74), RUNE_C(0x01EE77), SC_ARAB},
	{RUNE_C(0x01EE79), RUNE_C(0x01EE7C), SC_ARAB},
	{RUNE_C(0x01EE7E), RUNE_C(0x01EE7E), SC_ARAB},
	{RUNE_C(0x01EE80), RUNE_C(0x01EE89), SC_ARAB},
	{RUNE_C(0x01EE8B), RUNE_C(0x01EE9B), SC_ARAB},
	{RUNE_C(0x01EEA1), RUNE_C(0x01EEA3), SC_ARAB},
	{RUNE_C(0x01EEA5), RUNE_C(0x01EEA9), SC_ARAB},
	{RUNE_C(0x01EEAB), RUNE_C(0x01EEBB), SC_ARAB},
	{RUNE_C(0x01EEF0), RUNE_C(0x01EEF1), SC_ARAB},
	{RUNE_C(0x01F000), RUNE_C(0x01F02B), SC_ZYYY},
	{RUNE_C(0x01F030), RUNE_C(0x01F093), SC_ZYYY},
	{RUNE_C(0x01F0A0), RUNE_C(0x01F0AE), SC_ZYYY},
	{RUNE_C(0x01F0B1), RUNE_C(0x01F0BF), SC_ZYYY},
	{RUNE_C(0x01F0C1), RUNE_C(0x01F0CF), SC_ZYYY},
	{RUNE_C(0x01F0D1), RUNE_C(0x01F0F5), SC_ZYYY},
	{RUNE_C(0x01F100), RUNE_C(0x01F1AD), SC_ZYYY},
	{RUNE_C(0x01F1E6), RUNE_C(0x01F1FF), SC_ZYYY},
	{RUNE_C(0x01F200), RUNE_C(0x01F200), SC_HIRA},
	{RUNE_C(0x01F201), RUNE_C(0x01F202), SC_ZYYY},
	{RUNE_C(0x01F210), RUNE_C(0x01F23B), SC_ZYYY},
	{RUNE_C(0x01F240), RUNE_C(0x01F248), SC_ZYYY},
	{RUNE_C(0x01F250), RUNE_C(0x01F251), SC_ZYYY},
	{RUNE_C(0x01F260), RUNE_C(0x01F265), SC_ZYYY},
	{RUNE_C(0x01F300), RUNE_C(0x01F6D7), SC_ZYYY},
	{RUNE_C(0x01F6DC), RUNE_C(0x01F6EC), SC_ZYYY},
	{RUNE_C(0x01F6F0), RUNE_C(0x01F6FC), SC_ZYYY},
	{RUNE_C(0x01F700), RUNE_C(0x01F776), SC_ZYYY},
	{RUNE_C(0x01F77B), RUNE_C(0x01F7D9), SC_ZYYY},
	{RUNE_C(0x01F7E0), RUNE_C(0x01F7EB), SC_ZYYY},
	{RUNE_C(0x01F7F0), RUNE_C(0x01F7F0), SC_ZYYY},
	{RUNE_C(0x01F800), RUNE_C(0x01F80B), SC_ZYYY},
	{RUNE_C(0x01F810), RUNE_C(0x01F847), SC_ZYYY},
	{RUNE_C(0x01F850), RUNE_C(0x01F859), SC_ZYYY},
	{RUNE_C(0x01F860), RUNE_C(0x01F887), SC_ZYYY},
	{RUNE_C(0x01F890), RUNE_C(0x01F8AD), SC_ZYYY},
	{RUNE_C(0x01F8B0), RUNE_C(0x01F8B1), SC_ZYYY},
	{RUNE_C(0x01F900), RUNE_C(0x01FA53), SC_ZYYY},
	{RUNE_C(0x01FA60), RUNE_C(0x01FA6D), SC_ZYYY},
	{RUNE_C(0x01FA70), RUNE_C(0x01FA7C), SC_ZYYY},
	{RUNE_C(0x01FA80), RUNE_C(0x01FA88), SC_ZYYY},
	{RUNE_C(0x01FA90), RUNE_C(0x01FABD), SC_ZYYY},
	{RUNE_C(0x01FABF), RUNE_C(0x01FAC5), SC_ZYYY},
	{RUNE_C(0x01FACE), RUNE_C(0x01FADB), SC_ZYYY},
	{RUNE_C(0x01FAE0), RUNE_C(0x01FAE8), SC_ZYYY},
	{RUNE_C(0x01FAF0), RUNE_C(0x01FAF8), SC_ZYYY},
	{RUNE_C(0x01FB00), RUNE_C(0x01FB92), SC_ZYYY},
	{RUNE_C(0x01FB94), RUNE_C(0x01FBCA), SC_ZYYY},
	{RUNE_C(0x01FBF0), RUNE_C(0x01FBF9), SC_ZYYY},
	{RUNE_C(0x020000), RUNE_C(0x02A6DF), SC_HANI},
	{RUNE_C(0x02A700), RUNE_C(0x02B739), SC_HANI},
	{RUNE_C(0x02B740), RUNE_C(0x02B81D), SC_HANI},
	{RUNE_C(0x02B820), RUNE_C(0x02CEA1), SC_HANI},
	{RUNE_C(0x02CEB0), RUNE_C(0x02EBE0), SC_HANI},
	{RUNE_C(0x02EBF0), RUNE_C(0x02EE5D), SC_HANI},
	{RUNE_C(0x02F800), RUNE_C(0x02FA1D), SC_HANI},
	{RUNE_C(0x030000), RUNE_C(0x03134A), SC_HANI},
	{RUNE_C(0x031350), RUNE_C(0x0323AF), SC_HANI},
	{RUNE_C(0x0E0001), RUNE_C(0x0E0001), SC_ZYYY},
	{RUNE_C(0x0E0020), RUNE_C(0x0E007F), SC_ZYYY},
	{RUNE_C(0x0E0100), RUNE_C(0x0E01EF), SC_ZINH},
};

_MLIB_DEFINE_BSEARCH(enum uprop_sc, lookup, SC_ZZZZ)

enum uprop_sc
uprop_get_sc(rune ch)
{
	return ch <= lengthof(lookup_lat1) ? lookup_lat1[ch] : mlib_lookup(ch);
}