authorgravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2022-12-22 10:52:02 -08:00
committergravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2022-12-22 10:52:02 -08:00
log0dcdeee214b8dbd9ce325f5e181e77fcefb4ef41
tree7f9177b3367c455efa896b1b3209a0f80da411d3
parent5488263002197821ff13ed7216dcfe541b46e592

add HangulSyllableType, closes #16


5 files changed, 866 insertions(+), 0 deletions(-)

generate.zig+1
...@@ -13,6 +13,7 @@ const files = [_]type{...@@ -13,6 +13,7 @@ const files = [_]type{
13 @import("./scripts/EastAsianWidth.zig"),13 @import("./scripts/EastAsianWidth.zig"),
14 @import("./scripts/EmojiSources.zig"),14 @import("./scripts/EmojiSources.zig"),
15 @import("./scripts/EquivalentUnifiedIdeograph.zig"),15 @import("./scripts/EquivalentUnifiedIdeograph.zig"),
16 @import("./scripts/HangulSyllableType.zig"),
16};17};
1718
18pub fn main() !void {19pub fn main() !void {
scripts/HangulSyllableType.zig created+44
...@@ -0,0 +1,44 @@
1const std = @import("std");
2const common = @import("./_common.zig");
3
4pub usingnamespace common.Main(struct {
5 pub const source_file = "HangulSyllableType";
6
7 pub const dest_file = "src/hangul_syllable_type.zig";
8
9 pub const dest_header =
10 \\pub const HangulSyllableType = struct {
11 \\ from: u21,
12 \\ to: u21,
13 \\ prop: enum { L, V, T, LV, LVT },
14 \\};
15 \\
16 \\pub const data = [_]HangulSyllableType{
17 \\
18 ;
19
20 pub const dest_footer =
21 \\};
22 \\
23 ;
24
25 pub fn exec(alloc: std.mem.Allocator, line: []const u8, writer: anytype) !bool {
26 _ = alloc;
27 var it = std.mem.tokenize(u8, line, "; ");
28
29 {
30 const range = it.next().?;
31 if (std.mem.indexOf(u8, range, "..")) |index| {
32 try writer.print(" .{{ .from = 0x{s}, .to = 0x{s},", .{ range[0..index], range[index + 2 ..] });
33 } else {
34 try writer.print(" .{{ .from = 0x{s}, .to = 0x{s},", .{ range, range });
35 }
36 }
37 {
38 const prop = it.next().?;
39 try writer.print(" .prop = .{s} }},\n", .{prop});
40 }
41
42 return true;
43 }
44});
src/hangul_syllable_type.zig created+819
...@@ -0,0 +1,819 @@
1// This file is part of the Unicode Character Database
2// For documentation, see http://www.unicode.org/reports/tr44/
3//
4// Based on the source file: https://unicode.org/Public/13.0.0/ucd/HangulSyllableType.txt
5//
6// zig fmt: off
7
8pub const HangulSyllableType = struct {
9 from: u21,
10 to: u21,
11 prop: enum { L, V, T, LV, LVT },
12};
13
14pub const data = [_]HangulSyllableType{
15 .{ .from = 0x1100, .to = 0x115F, .prop = .L },
16 .{ .from = 0xA960, .to = 0xA97C, .prop = .L },
17 .{ .from = 0x1160, .to = 0x11A7, .prop = .V },
18 .{ .from = 0xD7B0, .to = 0xD7C6, .prop = .V },
19 .{ .from = 0x11A8, .to = 0x11FF, .prop = .T },
20 .{ .from = 0xD7CB, .to = 0xD7FB, .prop = .T },
21 .{ .from = 0xAC00, .to = 0xAC00, .prop = .LV },
22 .{ .from = 0xAC1C, .to = 0xAC1C, .prop = .LV },
23 .{ .from = 0xAC38, .to = 0xAC38, .prop = .LV },
24 .{ .from = 0xAC54, .to = 0xAC54, .prop = .LV },
25 .{ .from = 0xAC70, .to = 0xAC70, .prop = .LV },
26 .{ .from = 0xAC8C, .to = 0xAC8C, .prop = .LV },
27 .{ .from = 0xACA8, .to = 0xACA8, .prop = .LV },
28 .{ .from = 0xACC4, .to = 0xACC4, .prop = .LV },
29 .{ .from = 0xACE0, .to = 0xACE0, .prop = .LV },
30 .{ .from = 0xACFC, .to = 0xACFC, .prop = .LV },
31 .{ .from = 0xAD18, .to = 0xAD18, .prop = .LV },
32 .{ .from = 0xAD34, .to = 0xAD34, .prop = .LV },
33 .{ .from = 0xAD50, .to = 0xAD50, .prop = .LV },
34 .{ .from = 0xAD6C, .to = 0xAD6C, .prop = .LV },
35 .{ .from = 0xAD88, .to = 0xAD88, .prop = .LV },
36 .{ .from = 0xADA4, .to = 0xADA4, .prop = .LV },
37 .{ .from = 0xADC0, .to = 0xADC0, .prop = .LV },
38 .{ .from = 0xADDC, .to = 0xADDC, .prop = .LV },
39 .{ .from = 0xADF8, .to = 0xADF8, .prop = .LV },
40 .{ .from = 0xAE14, .to = 0xAE14, .prop = .LV },
41 .{ .from = 0xAE30, .to = 0xAE30, .prop = .LV },
42 .{ .from = 0xAE4C, .to = 0xAE4C, .prop = .LV },
43 .{ .from = 0xAE68, .to = 0xAE68, .prop = .LV },
44 .{ .from = 0xAE84, .to = 0xAE84, .prop = .LV },
45 .{ .from = 0xAEA0, .to = 0xAEA0, .prop = .LV },
46 .{ .from = 0xAEBC, .to = 0xAEBC, .prop = .LV },
47 .{ .from = 0xAED8, .to = 0xAED8, .prop = .LV },
48 .{ .from = 0xAEF4, .to = 0xAEF4, .prop = .LV },
49 .{ .from = 0xAF10, .to = 0xAF10, .prop = .LV },
50 .{ .from = 0xAF2C, .to = 0xAF2C, .prop = .LV },
51 .{ .from = 0xAF48, .to = 0xAF48, .prop = .LV },
52 .{ .from = 0xAF64, .to = 0xAF64, .prop = .LV },
53 .{ .from = 0xAF80, .to = 0xAF80, .prop = .LV },
54 .{ .from = 0xAF9C, .to = 0xAF9C, .prop = .LV },
55 .{ .from = 0xAFB8, .to = 0xAFB8, .prop = .LV },
56 .{ .from = 0xAFD4, .to = 0xAFD4, .prop = .LV },
57 .{ .from = 0xAFF0, .to = 0xAFF0, .prop = .LV },
58 .{ .from = 0xB00C, .to = 0xB00C, .prop = .LV },
59 .{ .from = 0xB028, .to = 0xB028, .prop = .LV },
60 .{ .from = 0xB044, .to = 0xB044, .prop = .LV },
61 .{ .from = 0xB060, .to = 0xB060, .prop = .LV },
62 .{ .from = 0xB07C, .to = 0xB07C, .prop = .LV },
63 .{ .from = 0xB098, .to = 0xB098, .prop = .LV },
64 .{ .from = 0xB0B4, .to = 0xB0B4, .prop = .LV },
65 .{ .from = 0xB0D0, .to = 0xB0D0, .prop = .LV },
66 .{ .from = 0xB0EC, .to = 0xB0EC, .prop = .LV },
67 .{ .from = 0xB108, .to = 0xB108, .prop = .LV },
68 .{ .from = 0xB124, .to = 0xB124, .prop = .LV },
69 .{ .from = 0xB140, .to = 0xB140, .prop = .LV },
70 .{ .from = 0xB15C, .to = 0xB15C, .prop = .LV },
71 .{ .from = 0xB178, .to = 0xB178, .prop = .LV },
72 .{ .from = 0xB194, .to = 0xB194, .prop = .LV },
73 .{ .from = 0xB1B0, .to = 0xB1B0, .prop = .LV },
74 .{ .from = 0xB1CC, .to = 0xB1CC, .prop = .LV },
75 .{ .from = 0xB1E8, .to = 0xB1E8, .prop = .LV },
76 .{ .from = 0xB204, .to = 0xB204, .prop = .LV },
77 .{ .from = 0xB220, .to = 0xB220, .prop = .LV },
78 .{ .from = 0xB23C, .to = 0xB23C, .prop = .LV },
79 .{ .from = 0xB258, .to = 0xB258, .prop = .LV },
80 .{ .from = 0xB274, .to = 0xB274, .prop = .LV },
81 .{ .from = 0xB290, .to = 0xB290, .prop = .LV },
82 .{ .from = 0xB2AC, .to = 0xB2AC, .prop = .LV },
83 .{ .from = 0xB2C8, .to = 0xB2C8, .prop = .LV },
84 .{ .from = 0xB2E4, .to = 0xB2E4, .prop = .LV },
85 .{ .from = 0xB300, .to = 0xB300, .prop = .LV },
86 .{ .from = 0xB31C, .to = 0xB31C, .prop = .LV },
87 .{ .from = 0xB338, .to = 0xB338, .prop = .LV },
88 .{ .from = 0xB354, .to = 0xB354, .prop = .LV },
89 .{ .from = 0xB370, .to = 0xB370, .prop = .LV },
90 .{ .from = 0xB38C, .to = 0xB38C, .prop = .LV },
91 .{ .from = 0xB3A8, .to = 0xB3A8, .prop = .LV },
92 .{ .from = 0xB3C4, .to = 0xB3C4, .prop = .LV },
93 .{ .from = 0xB3E0, .to = 0xB3E0, .prop = .LV },
94 .{ .from = 0xB3FC, .to = 0xB3FC, .prop = .LV },
95 .{ .from = 0xB418, .to = 0xB418, .prop = .LV },
96 .{ .from = 0xB434, .to = 0xB434, .prop = .LV },
97 .{ .from = 0xB450, .to = 0xB450, .prop = .LV },
98 .{ .from = 0xB46C, .to = 0xB46C, .prop = .LV },
99 .{ .from = 0xB488, .to = 0xB488, .prop = .LV },
100 .{ .from = 0xB4A4, .to = 0xB4A4, .prop = .LV },
101 .{ .from = 0xB4C0, .to = 0xB4C0, .prop = .LV },
102 .{ .from = 0xB4DC, .to = 0xB4DC, .prop = .LV },
103 .{ .from = 0xB4F8, .to = 0xB4F8, .prop = .LV },
104 .{ .from = 0xB514, .to = 0xB514, .prop = .LV },
105 .{ .from = 0xB530, .to = 0xB530, .prop = .LV },
106 .{ .from = 0xB54C, .to = 0xB54C, .prop = .LV },
107 .{ .from = 0xB568, .to = 0xB568, .prop = .LV },
108 .{ .from = 0xB584, .to = 0xB584, .prop = .LV },
109 .{ .from = 0xB5A0, .to = 0xB5A0, .prop = .LV },
110 .{ .from = 0xB5BC, .to = 0xB5BC, .prop = .LV },
111 .{ .from = 0xB5D8, .to = 0xB5D8, .prop = .LV },
112 .{ .from = 0xB5F4, .to = 0xB5F4, .prop = .LV },
113 .{ .from = 0xB610, .to = 0xB610, .prop = .LV },
114 .{ .from = 0xB62C, .to = 0xB62C, .prop = .LV },
115 .{ .from = 0xB648, .to = 0xB648, .prop = .LV },
116 .{ .from = 0xB664, .to = 0xB664, .prop = .LV },
117 .{ .from = 0xB680, .to = 0xB680, .prop = .LV },
118 .{ .from = 0xB69C, .to = 0xB69C, .prop = .LV },
119 .{ .from = 0xB6B8, .to = 0xB6B8, .prop = .LV },
120 .{ .from = 0xB6D4, .to = 0xB6D4, .prop = .LV },
121 .{ .from = 0xB6F0, .to = 0xB6F0, .prop = .LV },
122 .{ .from = 0xB70C, .to = 0xB70C, .prop = .LV },
123 .{ .from = 0xB728, .to = 0xB728, .prop = .LV },
124 .{ .from = 0xB744, .to = 0xB744, .prop = .LV },
125 .{ .from = 0xB760, .to = 0xB760, .prop = .LV },
126 .{ .from = 0xB77C, .to = 0xB77C, .prop = .LV },
127 .{ .from = 0xB798, .to = 0xB798, .prop = .LV },
128 .{ .from = 0xB7B4, .to = 0xB7B4, .prop = .LV },
129 .{ .from = 0xB7D0, .to = 0xB7D0, .prop = .LV },
130 .{ .from = 0xB7EC, .to = 0xB7EC, .prop = .LV },
131 .{ .from = 0xB808, .to = 0xB808, .prop = .LV },
132 .{ .from = 0xB824, .to = 0xB824, .prop = .LV },
133 .{ .from = 0xB840, .to = 0xB840, .prop = .LV },
134 .{ .from = 0xB85C, .to = 0xB85C, .prop = .LV },
135 .{ .from = 0xB878, .to = 0xB878, .prop = .LV },
136 .{ .from = 0xB894, .to = 0xB894, .prop = .LV },
137 .{ .from = 0xB8B0, .to = 0xB8B0, .prop = .LV },
138 .{ .from = 0xB8CC, .to = 0xB8CC, .prop = .LV },
139 .{ .from = 0xB8E8, .to = 0xB8E8, .prop = .LV },
140 .{ .from = 0xB904, .to = 0xB904, .prop = .LV },
141 .{ .from = 0xB920, .to = 0xB920, .prop = .LV },
142 .{ .from = 0xB93C, .to = 0xB93C, .prop = .LV },
143 .{ .from = 0xB958, .to = 0xB958, .prop = .LV },
144 .{ .from = 0xB974, .to = 0xB974, .prop = .LV },
145 .{ .from = 0xB990, .to = 0xB990, .prop = .LV },
146 .{ .from = 0xB9AC, .to = 0xB9AC, .prop = .LV },
147 .{ .from = 0xB9C8, .to = 0xB9C8, .prop = .LV },
148 .{ .from = 0xB9E4, .to = 0xB9E4, .prop = .LV },
149 .{ .from = 0xBA00, .to = 0xBA00, .prop = .LV },
150 .{ .from = 0xBA1C, .to = 0xBA1C, .prop = .LV },
151 .{ .from = 0xBA38, .to = 0xBA38, .prop = .LV },
152 .{ .from = 0xBA54, .to = 0xBA54, .prop = .LV },
153 .{ .from = 0xBA70, .to = 0xBA70, .prop = .LV },
154 .{ .from = 0xBA8C, .to = 0xBA8C, .prop = .LV },
155 .{ .from = 0xBAA8, .to = 0xBAA8, .prop = .LV },
156 .{ .from = 0xBAC4, .to = 0xBAC4, .prop = .LV },
157 .{ .from = 0xBAE0, .to = 0xBAE0, .prop = .LV },
158 .{ .from = 0xBAFC, .to = 0xBAFC, .prop = .LV },
159 .{ .from = 0xBB18, .to = 0xBB18, .prop = .LV },
160 .{ .from = 0xBB34, .to = 0xBB34, .prop = .LV },
161 .{ .from = 0xBB50, .to = 0xBB50, .prop = .LV },
162 .{ .from = 0xBB6C, .to = 0xBB6C, .prop = .LV },
163 .{ .from = 0xBB88, .to = 0xBB88, .prop = .LV },
164 .{ .from = 0xBBA4, .to = 0xBBA4, .prop = .LV },
165 .{ .from = 0xBBC0, .to = 0xBBC0, .prop = .LV },
166 .{ .from = 0xBBDC, .to = 0xBBDC, .prop = .LV },
167 .{ .from = 0xBBF8, .to = 0xBBF8, .prop = .LV },
168 .{ .from = 0xBC14, .to = 0xBC14, .prop = .LV },
169 .{ .from = 0xBC30, .to = 0xBC30, .prop = .LV },
170 .{ .from = 0xBC4C, .to = 0xBC4C, .prop = .LV },
171 .{ .from = 0xBC68, .to = 0xBC68, .prop = .LV },
172 .{ .from = 0xBC84, .to = 0xBC84, .prop = .LV },
173 .{ .from = 0xBCA0, .to = 0xBCA0, .prop = .LV },
174 .{ .from = 0xBCBC, .to = 0xBCBC, .prop = .LV },
175 .{ .from = 0xBCD8, .to = 0xBCD8, .prop = .LV },
176 .{ .from = 0xBCF4, .to = 0xBCF4, .prop = .LV },
177 .{ .from = 0xBD10, .to = 0xBD10, .prop = .LV },
178 .{ .from = 0xBD2C, .to = 0xBD2C, .prop = .LV },
179 .{ .from = 0xBD48, .to = 0xBD48, .prop = .LV },
180 .{ .from = 0xBD64, .to = 0xBD64, .prop = .LV },
181 .{ .from = 0xBD80, .to = 0xBD80, .prop = .LV },
182 .{ .from = 0xBD9C, .to = 0xBD9C, .prop = .LV },
183 .{ .from = 0xBDB8, .to = 0xBDB8, .prop = .LV },
184 .{ .from = 0xBDD4, .to = 0xBDD4, .prop = .LV },
185 .{ .from = 0xBDF0, .to = 0xBDF0, .prop = .LV },
186 .{ .from = 0xBE0C, .to = 0xBE0C, .prop = .LV },
187 .{ .from = 0xBE28, .to = 0xBE28, .prop = .LV },
188 .{ .from = 0xBE44, .to = 0xBE44, .prop = .LV },
189 .{ .from = 0xBE60, .to = 0xBE60, .prop = .LV },
190 .{ .from = 0xBE7C, .to = 0xBE7C, .prop = .LV },
191 .{ .from = 0xBE98, .to = 0xBE98, .prop = .LV },
192 .{ .from = 0xBEB4, .to = 0xBEB4, .prop = .LV },
193 .{ .from = 0xBED0, .to = 0xBED0, .prop = .LV },
194 .{ .from = 0xBEEC, .to = 0xBEEC, .prop = .LV },
195 .{ .from = 0xBF08, .to = 0xBF08, .prop = .LV },
196 .{ .from = 0xBF24, .to = 0xBF24, .prop = .LV },
197 .{ .from = 0xBF40, .to = 0xBF40, .prop = .LV },
198 .{ .from = 0xBF5C, .to = 0xBF5C, .prop = .LV },
199 .{ .from = 0xBF78, .to = 0xBF78, .prop = .LV },
200 .{ .from = 0xBF94, .to = 0xBF94, .prop = .LV },
201 .{ .from = 0xBFB0, .to = 0xBFB0, .prop = .LV },
202 .{ .from = 0xBFCC, .to = 0xBFCC, .prop = .LV },
203 .{ .from = 0xBFE8, .to = 0xBFE8, .prop = .LV },
204 .{ .from = 0xC004, .to = 0xC004, .prop = .LV },
205 .{ .from = 0xC020, .to = 0xC020, .prop = .LV },
206 .{ .from = 0xC03C, .to = 0xC03C, .prop = .LV },
207 .{ .from = 0xC058, .to = 0xC058, .prop = .LV },
208 .{ .from = 0xC074, .to = 0xC074, .prop = .LV },
209 .{ .from = 0xC090, .to = 0xC090, .prop = .LV },
210 .{ .from = 0xC0AC, .to = 0xC0AC, .prop = .LV },
211 .{ .from = 0xC0C8, .to = 0xC0C8, .prop = .LV },
212 .{ .from = 0xC0E4, .to = 0xC0E4, .prop = .LV },
213 .{ .from = 0xC100, .to = 0xC100, .prop = .LV },
214 .{ .from = 0xC11C, .to = 0xC11C, .prop = .LV },
215 .{ .from = 0xC138, .to = 0xC138, .prop = .LV },
216 .{ .from = 0xC154, .to = 0xC154, .prop = .LV },
217 .{ .from = 0xC170, .to = 0xC170, .prop = .LV },
218 .{ .from = 0xC18C, .to = 0xC18C, .prop = .LV },
219 .{ .from = 0xC1A8, .to = 0xC1A8, .prop = .LV },
220 .{ .from = 0xC1C4, .to = 0xC1C4, .prop = .LV },
221 .{ .from = 0xC1E0, .to = 0xC1E0, .prop = .LV },
222 .{ .from = 0xC1FC, .to = 0xC1FC, .prop = .LV },
223 .{ .from = 0xC218, .to = 0xC218, .prop = .LV },
224 .{ .from = 0xC234, .to = 0xC234, .prop = .LV },
225 .{ .from = 0xC250, .to = 0xC250, .prop = .LV },
226 .{ .from = 0xC26C, .to = 0xC26C, .prop = .LV },
227 .{ .from = 0xC288, .to = 0xC288, .prop = .LV },
228 .{ .from = 0xC2A4, .to = 0xC2A4, .prop = .LV },
229 .{ .from = 0xC2C0, .to = 0xC2C0, .prop = .LV },
230 .{ .from = 0xC2DC, .to = 0xC2DC, .prop = .LV },
231 .{ .from = 0xC2F8, .to = 0xC2F8, .prop = .LV },
232 .{ .from = 0xC314, .to = 0xC314, .prop = .LV },
233 .{ .from = 0xC330, .to = 0xC330, .prop = .LV },
234 .{ .from = 0xC34C, .to = 0xC34C, .prop = .LV },
235 .{ .from = 0xC368, .to = 0xC368, .prop = .LV },
236 .{ .from = 0xC384, .to = 0xC384, .prop = .LV },
237 .{ .from = 0xC3A0, .to = 0xC3A0, .prop = .LV },
238 .{ .from = 0xC3BC, .to = 0xC3BC, .prop = .LV },
239 .{ .from = 0xC3D8, .to = 0xC3D8, .prop = .LV },
240 .{ .from = 0xC3F4, .to = 0xC3F4, .prop = .LV },
241 .{ .from = 0xC410, .to = 0xC410, .prop = .LV },
242 .{ .from = 0xC42C, .to = 0xC42C, .prop = .LV },
243 .{ .from = 0xC448, .to = 0xC448, .prop = .LV },
244 .{ .from = 0xC464, .to = 0xC464, .prop = .LV },
245 .{ .from = 0xC480, .to = 0xC480, .prop = .LV },
246 .{ .from = 0xC49C, .to = 0xC49C, .prop = .LV },
247 .{ .from = 0xC4B8, .to = 0xC4B8, .prop = .LV },
248 .{ .from = 0xC4D4, .to = 0xC4D4, .prop = .LV },
249 .{ .from = 0xC4F0, .to = 0xC4F0, .prop = .LV },
250 .{ .from = 0xC50C, .to = 0xC50C, .prop = .LV },
251 .{ .from = 0xC528, .to = 0xC528, .prop = .LV },
252 .{ .from = 0xC544, .to = 0xC544, .prop = .LV },
253 .{ .from = 0xC560, .to = 0xC560, .prop = .LV },
254 .{ .from = 0xC57C, .to = 0xC57C, .prop = .LV },
255 .{ .from = 0xC598, .to = 0xC598, .prop = .LV },
256 .{ .from = 0xC5B4, .to = 0xC5B4, .prop = .LV },
257 .{ .from = 0xC5D0, .to = 0xC5D0, .prop = .LV },
258 .{ .from = 0xC5EC, .to = 0xC5EC, .prop = .LV },
259 .{ .from = 0xC608, .to = 0xC608, .prop = .LV },
260 .{ .from = 0xC624, .to = 0xC624, .prop = .LV },
261 .{ .from = 0xC640, .to = 0xC640, .prop = .LV },
262 .{ .from = 0xC65C, .to = 0xC65C, .prop = .LV },
263 .{ .from = 0xC678, .to = 0xC678, .prop = .LV },
264 .{ .from = 0xC694, .to = 0xC694, .prop = .LV },
265 .{ .from = 0xC6B0, .to = 0xC6B0, .prop = .LV },
266 .{ .from = 0xC6CC, .to = 0xC6CC, .prop = .LV },
267 .{ .from = 0xC6E8, .to = 0xC6E8, .prop = .LV },
268 .{ .from = 0xC704, .to = 0xC704, .prop = .LV },
269 .{ .from = 0xC720, .to = 0xC720, .prop = .LV },
270 .{ .from = 0xC73C, .to = 0xC73C, .prop = .LV },
271 .{ .from = 0xC758, .to = 0xC758, .prop = .LV },
272 .{ .from = 0xC774, .to = 0xC774, .prop = .LV },
273 .{ .from = 0xC790, .to = 0xC790, .prop = .LV },
274 .{ .from = 0xC7AC, .to = 0xC7AC, .prop = .LV },
275 .{ .from = 0xC7C8, .to = 0xC7C8, .prop = .LV },
276 .{ .from = 0xC7E4, .to = 0xC7E4, .prop = .LV },
277 .{ .from = 0xC800, .to = 0xC800, .prop = .LV },
278 .{ .from = 0xC81C, .to = 0xC81C, .prop = .LV },
279 .{ .from = 0xC838, .to = 0xC838, .prop = .LV },
280 .{ .from = 0xC854, .to = 0xC854, .prop = .LV },
281 .{ .from = 0xC870, .to = 0xC870, .prop = .LV },
282 .{ .from = 0xC88C, .to = 0xC88C, .prop = .LV },
283 .{ .from = 0xC8A8, .to = 0xC8A8, .prop = .LV },
284 .{ .from = 0xC8C4, .to = 0xC8C4, .prop = .LV },
285 .{ .from = 0xC8E0, .to = 0xC8E0, .prop = .LV },
286 .{ .from = 0xC8FC, .to = 0xC8FC, .prop = .LV },
287 .{ .from = 0xC918, .to = 0xC918, .prop = .LV },
288 .{ .from = 0xC934, .to = 0xC934, .prop = .LV },
289 .{ .from = 0xC950, .to = 0xC950, .prop = .LV },
290 .{ .from = 0xC96C, .to = 0xC96C, .prop = .LV },
291 .{ .from = 0xC988, .to = 0xC988, .prop = .LV },
292 .{ .from = 0xC9A4, .to = 0xC9A4, .prop = .LV },
293 .{ .from = 0xC9C0, .to = 0xC9C0, .prop = .LV },
294 .{ .from = 0xC9DC, .to = 0xC9DC, .prop = .LV },
295 .{ .from = 0xC9F8, .to = 0xC9F8, .prop = .LV },
296 .{ .from = 0xCA14, .to = 0xCA14, .prop = .LV },
297 .{ .from = 0xCA30, .to = 0xCA30, .prop = .LV },
298 .{ .from = 0xCA4C, .to = 0xCA4C, .prop = .LV },
299 .{ .from = 0xCA68, .to = 0xCA68, .prop = .LV },
300 .{ .from = 0xCA84, .to = 0xCA84, .prop = .LV },
301 .{ .from = 0xCAA0, .to = 0xCAA0, .prop = .LV },
302 .{ .from = 0xCABC, .to = 0xCABC, .prop = .LV },
303 .{ .from = 0xCAD8, .to = 0xCAD8, .prop = .LV },
304 .{ .from = 0xCAF4, .to = 0xCAF4, .prop = .LV },
305 .{ .from = 0xCB10, .to = 0xCB10, .prop = .LV },
306 .{ .from = 0xCB2C, .to = 0xCB2C, .prop = .LV },
307 .{ .from = 0xCB48, .to = 0xCB48, .prop = .LV },
308 .{ .from = 0xCB64, .to = 0xCB64, .prop = .LV },
309 .{ .from = 0xCB80, .to = 0xCB80, .prop = .LV },
310 .{ .from = 0xCB9C, .to = 0xCB9C, .prop = .LV },
311 .{ .from = 0xCBB8, .to = 0xCBB8, .prop = .LV },
312 .{ .from = 0xCBD4, .to = 0xCBD4, .prop = .LV },
313 .{ .from = 0xCBF0, .to = 0xCBF0, .prop = .LV },
314 .{ .from = 0xCC0C, .to = 0xCC0C, .prop = .LV },
315 .{ .from = 0xCC28, .to = 0xCC28, .prop = .LV },
316 .{ .from = 0xCC44, .to = 0xCC44, .prop = .LV },
317 .{ .from = 0xCC60, .to = 0xCC60, .prop = .LV },
318 .{ .from = 0xCC7C, .to = 0xCC7C, .prop = .LV },
319 .{ .from = 0xCC98, .to = 0xCC98, .prop = .LV },
320 .{ .from = 0xCCB4, .to = 0xCCB4, .prop = .LV },
321 .{ .from = 0xCCD0, .to = 0xCCD0, .prop = .LV },
322 .{ .from = 0xCCEC, .to = 0xCCEC, .prop = .LV },
323 .{ .from = 0xCD08, .to = 0xCD08, .prop = .LV },
324 .{ .from = 0xCD24, .to = 0xCD24, .prop = .LV },
325 .{ .from = 0xCD40, .to = 0xCD40, .prop = .LV },
326 .{ .from = 0xCD5C, .to = 0xCD5C, .prop = .LV },
327 .{ .from = 0xCD78, .to = 0xCD78, .prop = .LV },
328 .{ .from = 0xCD94, .to = 0xCD94, .prop = .LV },
329 .{ .from = 0xCDB0, .to = 0xCDB0, .prop = .LV },
330 .{ .from = 0xCDCC, .to = 0xCDCC, .prop = .LV },
331 .{ .from = 0xCDE8, .to = 0xCDE8, .prop = .LV },
332 .{ .from = 0xCE04, .to = 0xCE04, .prop = .LV },
333 .{ .from = 0xCE20, .to = 0xCE20, .prop = .LV },
334 .{ .from = 0xCE3C, .to = 0xCE3C, .prop = .LV },
335 .{ .from = 0xCE58, .to = 0xCE58, .prop = .LV },
336 .{ .from = 0xCE74, .to = 0xCE74, .prop = .LV },
337 .{ .from = 0xCE90, .to = 0xCE90, .prop = .LV },
338 .{ .from = 0xCEAC, .to = 0xCEAC, .prop = .LV },
339 .{ .from = 0xCEC8, .to = 0xCEC8, .prop = .LV },
340 .{ .from = 0xCEE4, .to = 0xCEE4, .prop = .LV },
341 .{ .from = 0xCF00, .to = 0xCF00, .prop = .LV },
342 .{ .from = 0xCF1C, .to = 0xCF1C, .prop = .LV },
343 .{ .from = 0xCF38, .to = 0xCF38, .prop = .LV },
344 .{ .from = 0xCF54, .to = 0xCF54, .prop = .LV },
345 .{ .from = 0xCF70, .to = 0xCF70, .prop = .LV },
346 .{ .from = 0xCF8C, .to = 0xCF8C, .prop = .LV },
347 .{ .from = 0xCFA8, .to = 0xCFA8, .prop = .LV },
348 .{ .from = 0xCFC4, .to = 0xCFC4, .prop = .LV },
349 .{ .from = 0xCFE0, .to = 0xCFE0, .prop = .LV },
350 .{ .from = 0xCFFC, .to = 0xCFFC, .prop = .LV },
351 .{ .from = 0xD018, .to = 0xD018, .prop = .LV },
352 .{ .from = 0xD034, .to = 0xD034, .prop = .LV },
353 .{ .from = 0xD050, .to = 0xD050, .prop = .LV },
354 .{ .from = 0xD06C, .to = 0xD06C, .prop = .LV },
355 .{ .from = 0xD088, .to = 0xD088, .prop = .LV },
356 .{ .from = 0xD0A4, .to = 0xD0A4, .prop = .LV },
357 .{ .from = 0xD0C0, .to = 0xD0C0, .prop = .LV },
358 .{ .from = 0xD0DC, .to = 0xD0DC, .prop = .LV },
359 .{ .from = 0xD0F8, .to = 0xD0F8, .prop = .LV },
360 .{ .from = 0xD114, .to = 0xD114, .prop = .LV },
361 .{ .from = 0xD130, .to = 0xD130, .prop = .LV },
362 .{ .from = 0xD14C, .to = 0xD14C, .prop = .LV },
363 .{ .from = 0xD168, .to = 0xD168, .prop = .LV },
364 .{ .from = 0xD184, .to = 0xD184, .prop = .LV },
365 .{ .from = 0xD1A0, .to = 0xD1A0, .prop = .LV },
366 .{ .from = 0xD1BC, .to = 0xD1BC, .prop = .LV },
367 .{ .from = 0xD1D8, .to = 0xD1D8, .prop = .LV },
368 .{ .from = 0xD1F4, .to = 0xD1F4, .prop = .LV },
369 .{ .from = 0xD210, .to = 0xD210, .prop = .LV },
370 .{ .from = 0xD22C, .to = 0xD22C, .prop = .LV },
371 .{ .from = 0xD248, .to = 0xD248, .prop = .LV },
372 .{ .from = 0xD264, .to = 0xD264, .prop = .LV },
373 .{ .from = 0xD280, .to = 0xD280, .prop = .LV },
374 .{ .from = 0xD29C, .to = 0xD29C, .prop = .LV },
375 .{ .from = 0xD2B8, .to = 0xD2B8, .prop = .LV },
376 .{ .from = 0xD2D4, .to = 0xD2D4, .prop = .LV },
377 .{ .from = 0xD2F0, .to = 0xD2F0, .prop = .LV },
378 .{ .from = 0xD30C, .to = 0xD30C, .prop = .LV },
379 .{ .from = 0xD328, .to = 0xD328, .prop = .LV },
380 .{ .from = 0xD344, .to = 0xD344, .prop = .LV },
381 .{ .from = 0xD360, .to = 0xD360, .prop = .LV },
382 .{ .from = 0xD37C, .to = 0xD37C, .prop = .LV },
383 .{ .from = 0xD398, .to = 0xD398, .prop = .LV },
384 .{ .from = 0xD3B4, .to = 0xD3B4, .prop = .LV },
385 .{ .from = 0xD3D0, .to = 0xD3D0, .prop = .LV },
386 .{ .from = 0xD3EC, .to = 0xD3EC, .prop = .LV },
387 .{ .from = 0xD408, .to = 0xD408, .prop = .LV },
388 .{ .from = 0xD424, .to = 0xD424, .prop = .LV },
389 .{ .from = 0xD440, .to = 0xD440, .prop = .LV },
390 .{ .from = 0xD45C, .to = 0xD45C, .prop = .LV },
391 .{ .from = 0xD478, .to = 0xD478, .prop = .LV },
392 .{ .from = 0xD494, .to = 0xD494, .prop = .LV },
393 .{ .from = 0xD4B0, .to = 0xD4B0, .prop = .LV },
394 .{ .from = 0xD4CC, .to = 0xD4CC, .prop = .LV },
395 .{ .from = 0xD4E8, .to = 0xD4E8, .prop = .LV },
396 .{ .from = 0xD504, .to = 0xD504, .prop = .LV },
397 .{ .from = 0xD520, .to = 0xD520, .prop = .LV },
398 .{ .from = 0xD53C, .to = 0xD53C, .prop = .LV },
399 .{ .from = 0xD558, .to = 0xD558, .prop = .LV },
400 .{ .from = 0xD574, .to = 0xD574, .prop = .LV },
401 .{ .from = 0xD590, .to = 0xD590, .prop = .LV },
402 .{ .from = 0xD5AC, .to = 0xD5AC, .prop = .LV },
403 .{ .from = 0xD5C8, .to = 0xD5C8, .prop = .LV },
404 .{ .from = 0xD5E4, .to = 0xD5E4, .prop = .LV },
405 .{ .from = 0xD600, .to = 0xD600, .prop = .LV },
406 .{ .from = 0xD61C, .to = 0xD61C, .prop = .LV },
407 .{ .from = 0xD638, .to = 0xD638, .prop = .LV },
408 .{ .from = 0xD654, .to = 0xD654, .prop = .LV },
409 .{ .from = 0xD670, .to = 0xD670, .prop = .LV },
410 .{ .from = 0xD68C, .to = 0xD68C, .prop = .LV },
411 .{ .from = 0xD6A8, .to = 0xD6A8, .prop = .LV },
412 .{ .from = 0xD6C4, .to = 0xD6C4, .prop = .LV },
413 .{ .from = 0xD6E0, .to = 0xD6E0, .prop = .LV },
414 .{ .from = 0xD6FC, .to = 0xD6FC, .prop = .LV },
415 .{ .from = 0xD718, .to = 0xD718, .prop = .LV },
416 .{ .from = 0xD734, .to = 0xD734, .prop = .LV },
417 .{ .from = 0xD750, .to = 0xD750, .prop = .LV },
418 .{ .from = 0xD76C, .to = 0xD76C, .prop = .LV },
419 .{ .from = 0xD788, .to = 0xD788, .prop = .LV },
420 .{ .from = 0xAC01, .to = 0xAC1B, .prop = .LVT },
421 .{ .from = 0xAC1D, .to = 0xAC37, .prop = .LVT },
422 .{ .from = 0xAC39, .to = 0xAC53, .prop = .LVT },
423 .{ .from = 0xAC55, .to = 0xAC6F, .prop = .LVT },
424 .{ .from = 0xAC71, .to = 0xAC8B, .prop = .LVT },
425 .{ .from = 0xAC8D, .to = 0xACA7, .prop = .LVT },
426 .{ .from = 0xACA9, .to = 0xACC3, .prop = .LVT },
427 .{ .from = 0xACC5, .to = 0xACDF, .prop = .LVT },
428 .{ .from = 0xACE1, .to = 0xACFB, .prop = .LVT },
429 .{ .from = 0xACFD, .to = 0xAD17, .prop = .LVT },
430 .{ .from = 0xAD19, .to = 0xAD33, .prop = .LVT },
431 .{ .from = 0xAD35, .to = 0xAD4F, .prop = .LVT },
432 .{ .from = 0xAD51, .to = 0xAD6B, .prop = .LVT },
433 .{ .from = 0xAD6D, .to = 0xAD87, .prop = .LVT },
434 .{ .from = 0xAD89, .to = 0xADA3, .prop = .LVT },
435 .{ .from = 0xADA5, .to = 0xADBF, .prop = .LVT },
436 .{ .from = 0xADC1, .to = 0xADDB, .prop = .LVT },
437 .{ .from = 0xADDD, .to = 0xADF7, .prop = .LVT },
438 .{ .from = 0xADF9, .to = 0xAE13, .prop = .LVT },
439 .{ .from = 0xAE15, .to = 0xAE2F, .prop = .LVT },
440 .{ .from = 0xAE31, .to = 0xAE4B, .prop = .LVT },
441 .{ .from = 0xAE4D, .to = 0xAE67, .prop = .LVT },
442 .{ .from = 0xAE69, .to = 0xAE83, .prop = .LVT },
443 .{ .from = 0xAE85, .to = 0xAE9F, .prop = .LVT },
444 .{ .from = 0xAEA1, .to = 0xAEBB, .prop = .LVT },
445 .{ .from = 0xAEBD, .to = 0xAED7, .prop = .LVT },
446 .{ .from = 0xAED9, .to = 0xAEF3, .prop = .LVT },
447 .{ .from = 0xAEF5, .to = 0xAF0F, .prop = .LVT },
448 .{ .from = 0xAF11, .to = 0xAF2B, .prop = .LVT },
449 .{ .from = 0xAF2D, .to = 0xAF47, .prop = .LVT },
450 .{ .from = 0xAF49, .to = 0xAF63, .prop = .LVT },
451 .{ .from = 0xAF65, .to = 0xAF7F, .prop = .LVT },
452 .{ .from = 0xAF81, .to = 0xAF9B, .prop = .LVT },
453 .{ .from = 0xAF9D, .to = 0xAFB7, .prop = .LVT },
454 .{ .from = 0xAFB9, .to = 0xAFD3, .prop = .LVT },
455 .{ .from = 0xAFD5, .to = 0xAFEF, .prop = .LVT },
456 .{ .from = 0xAFF1, .to = 0xB00B, .prop = .LVT },
457 .{ .from = 0xB00D, .to = 0xB027, .prop = .LVT },
458 .{ .from = 0xB029, .to = 0xB043, .prop = .LVT },
459 .{ .from = 0xB045, .to = 0xB05F, .prop = .LVT },
460 .{ .from = 0xB061, .to = 0xB07B, .prop = .LVT },
461 .{ .from = 0xB07D, .to = 0xB097, .prop = .LVT },
462 .{ .from = 0xB099, .to = 0xB0B3, .prop = .LVT },
463 .{ .from = 0xB0B5, .to = 0xB0CF, .prop = .LVT },
464 .{ .from = 0xB0D1, .to = 0xB0EB, .prop = .LVT },
465 .{ .from = 0xB0ED, .to = 0xB107, .prop = .LVT },
466 .{ .from = 0xB109, .to = 0xB123, .prop = .LVT },
467 .{ .from = 0xB125, .to = 0xB13F, .prop = .LVT },
468 .{ .from = 0xB141, .to = 0xB15B, .prop = .LVT },
469 .{ .from = 0xB15D, .to = 0xB177, .prop = .LVT },
470 .{ .from = 0xB179, .to = 0xB193, .prop = .LVT },
471 .{ .from = 0xB195, .to = 0xB1AF, .prop = .LVT },
472 .{ .from = 0xB1B1, .to = 0xB1CB, .prop = .LVT },
473 .{ .from = 0xB1CD, .to = 0xB1E7, .prop = .LVT },
474 .{ .from = 0xB1E9, .to = 0xB203, .prop = .LVT },
475 .{ .from = 0xB205, .to = 0xB21F, .prop = .LVT },
476 .{ .from = 0xB221, .to = 0xB23B, .prop = .LVT },
477 .{ .from = 0xB23D, .to = 0xB257, .prop = .LVT },
478 .{ .from = 0xB259, .to = 0xB273, .prop = .LVT },
479 .{ .from = 0xB275, .to = 0xB28F, .prop = .LVT },
480 .{ .from = 0xB291, .to = 0xB2AB, .prop = .LVT },
481 .{ .from = 0xB2AD, .to = 0xB2C7, .prop = .LVT },
482 .{ .from = 0xB2C9, .to = 0xB2E3, .prop = .LVT },
483 .{ .from = 0xB2E5, .to = 0xB2FF, .prop = .LVT },
484 .{ .from = 0xB301, .to = 0xB31B, .prop = .LVT },
485 .{ .from = 0xB31D, .to = 0xB337, .prop = .LVT },
486 .{ .from = 0xB339, .to = 0xB353, .prop = .LVT },
487 .{ .from = 0xB355, .to = 0xB36F, .prop = .LVT },
488 .{ .from = 0xB371, .to = 0xB38B, .prop = .LVT },
489 .{ .from = 0xB38D, .to = 0xB3A7, .prop = .LVT },
490 .{ .from = 0xB3A9, .to = 0xB3C3, .prop = .LVT },
491 .{ .from = 0xB3C5, .to = 0xB3DF, .prop = .LVT },
492 .{ .from = 0xB3E1, .to = 0xB3FB, .prop = .LVT },
493 .{ .from = 0xB3FD, .to = 0xB417, .prop = .LVT },
494 .{ .from = 0xB419, .to = 0xB433, .prop = .LVT },
495 .{ .from = 0xB435, .to = 0xB44F, .prop = .LVT },
496 .{ .from = 0xB451, .to = 0xB46B, .prop = .LVT },
497 .{ .from = 0xB46D, .to = 0xB487, .prop = .LVT },
498 .{ .from = 0xB489, .to = 0xB4A3, .prop = .LVT },
499 .{ .from = 0xB4A5, .to = 0xB4BF, .prop = .LVT },
500 .{ .from = 0xB4C1, .to = 0xB4DB, .prop = .LVT },
501 .{ .from = 0xB4DD, .to = 0xB4F7, .prop = .LVT },
502 .{ .from = 0xB4F9, .to = 0xB513, .prop = .LVT },
503 .{ .from = 0xB515, .to = 0xB52F, .prop = .LVT },
504 .{ .from = 0xB531, .to = 0xB54B, .prop = .LVT },
505 .{ .from = 0xB54D, .to = 0xB567, .prop = .LVT },
506 .{ .from = 0xB569, .to = 0xB583, .prop = .LVT },
507 .{ .from = 0xB585, .to = 0xB59F, .prop = .LVT },
508 .{ .from = 0xB5A1, .to = 0xB5BB, .prop = .LVT },
509 .{ .from = 0xB5BD, .to = 0xB5D7, .prop = .LVT },
510 .{ .from = 0xB5D9, .to = 0xB5F3, .prop = .LVT },
511 .{ .from = 0xB5F5, .to = 0xB60F, .prop = .LVT },
512 .{ .from = 0xB611, .to = 0xB62B, .prop = .LVT },
513 .{ .from = 0xB62D, .to = 0xB647, .prop = .LVT },
514 .{ .from = 0xB649, .to = 0xB663, .prop = .LVT },
515 .{ .from = 0xB665, .to = 0xB67F, .prop = .LVT },
516 .{ .from = 0xB681, .to = 0xB69B, .prop = .LVT },
517 .{ .from = 0xB69D, .to = 0xB6B7, .prop = .LVT },
518 .{ .from = 0xB6B9, .to = 0xB6D3, .prop = .LVT },
519 .{ .from = 0xB6D5, .to = 0xB6EF, .prop = .LVT },
520 .{ .from = 0xB6F1, .to = 0xB70B, .prop = .LVT },
521 .{ .from = 0xB70D, .to = 0xB727, .prop = .LVT },
522 .{ .from = 0xB729, .to = 0xB743, .prop = .LVT },
523 .{ .from = 0xB745, .to = 0xB75F, .prop = .LVT },
524 .{ .from = 0xB761, .to = 0xB77B, .prop = .LVT },
525 .{ .from = 0xB77D, .to = 0xB797, .prop = .LVT },
526 .{ .from = 0xB799, .to = 0xB7B3, .prop = .LVT },
527 .{ .from = 0xB7B5, .to = 0xB7CF, .prop = .LVT },
528 .{ .from = 0xB7D1, .to = 0xB7EB, .prop = .LVT },
529 .{ .from = 0xB7ED, .to = 0xB807, .prop = .LVT },
530 .{ .from = 0xB809, .to = 0xB823, .prop = .LVT },
531 .{ .from = 0xB825, .to = 0xB83F, .prop = .LVT },
532 .{ .from = 0xB841, .to = 0xB85B, .prop = .LVT },
533 .{ .from = 0xB85D, .to = 0xB877, .prop = .LVT },
534 .{ .from = 0xB879, .to = 0xB893, .prop = .LVT },
535 .{ .from = 0xB895, .to = 0xB8AF, .prop = .LVT },
536 .{ .from = 0xB8B1, .to = 0xB8CB, .prop = .LVT },
537 .{ .from = 0xB8CD, .to = 0xB8E7, .prop = .LVT },
538 .{ .from = 0xB8E9, .to = 0xB903, .prop = .LVT },
539 .{ .from = 0xB905, .to = 0xB91F, .prop = .LVT },
540 .{ .from = 0xB921, .to = 0xB93B, .prop = .LVT },
541 .{ .from = 0xB93D, .to = 0xB957, .prop = .LVT },
542 .{ .from = 0xB959, .to = 0xB973, .prop = .LVT },
543 .{ .from = 0xB975, .to = 0xB98F, .prop = .LVT },
544 .{ .from = 0xB991, .to = 0xB9AB, .prop = .LVT },
545 .{ .from = 0xB9AD, .to = 0xB9C7, .prop = .LVT },
546 .{ .from = 0xB9C9, .to = 0xB9E3, .prop = .LVT },
547 .{ .from = 0xB9E5, .to = 0xB9FF, .prop = .LVT },
548 .{ .from = 0xBA01, .to = 0xBA1B, .prop = .LVT },
549 .{ .from = 0xBA1D, .to = 0xBA37, .prop = .LVT },
550 .{ .from = 0xBA39, .to = 0xBA53, .prop = .LVT },
551 .{ .from = 0xBA55, .to = 0xBA6F, .prop = .LVT },
552 .{ .from = 0xBA71, .to = 0xBA8B, .prop = .LVT },
553 .{ .from = 0xBA8D, .to = 0xBAA7, .prop = .LVT },
554 .{ .from = 0xBAA9, .to = 0xBAC3, .prop = .LVT },
555 .{ .from = 0xBAC5, .to = 0xBADF, .prop = .LVT },
556 .{ .from = 0xBAE1, .to = 0xBAFB, .prop = .LVT },
557 .{ .from = 0xBAFD, .to = 0xBB17, .prop = .LVT },
558 .{ .from = 0xBB19, .to = 0xBB33, .prop = .LVT },
559 .{ .from = 0xBB35, .to = 0xBB4F, .prop = .LVT },
560 .{ .from = 0xBB51, .to = 0xBB6B, .prop = .LVT },
561 .{ .from = 0xBB6D, .to = 0xBB87, .prop = .LVT },
562 .{ .from = 0xBB89, .to = 0xBBA3, .prop = .LVT },
563 .{ .from = 0xBBA5, .to = 0xBBBF, .prop = .LVT },
564 .{ .from = 0xBBC1, .to = 0xBBDB, .prop = .LVT },
565 .{ .from = 0xBBDD, .to = 0xBBF7, .prop = .LVT },
566 .{ .from = 0xBBF9, .to = 0xBC13, .prop = .LVT },
567 .{ .from = 0xBC15, .to = 0xBC2F, .prop = .LVT },
568 .{ .from = 0xBC31, .to = 0xBC4B, .prop = .LVT },
569 .{ .from = 0xBC4D, .to = 0xBC67, .prop = .LVT },
570 .{ .from = 0xBC69, .to = 0xBC83, .prop = .LVT },
571 .{ .from = 0xBC85, .to = 0xBC9F, .prop = .LVT },
572 .{ .from = 0xBCA1, .to = 0xBCBB, .prop = .LVT },
573 .{ .from = 0xBCBD, .to = 0xBCD7, .prop = .LVT },
574 .{ .from = 0xBCD9, .to = 0xBCF3, .prop = .LVT },
575 .{ .from = 0xBCF5, .to = 0xBD0F, .prop = .LVT },
576 .{ .from = 0xBD11, .to = 0xBD2B, .prop = .LVT },
577 .{ .from = 0xBD2D, .to = 0xBD47, .prop = .LVT },
578 .{ .from = 0xBD49, .to = 0xBD63, .prop = .LVT },
579 .{ .from = 0xBD65, .to = 0xBD7F, .prop = .LVT },
580 .{ .from = 0xBD81, .to = 0xBD9B, .prop = .LVT },
581 .{ .from = 0xBD9D, .to = 0xBDB7, .prop = .LVT },
582 .{ .from = 0xBDB9, .to = 0xBDD3, .prop = .LVT },
583 .{ .from = 0xBDD5, .to = 0xBDEF, .prop = .LVT },
584 .{ .from = 0xBDF1, .to = 0xBE0B, .prop = .LVT },
585 .{ .from = 0xBE0D, .to = 0xBE27, .prop = .LVT },
586 .{ .from = 0xBE29, .to = 0xBE43, .prop = .LVT },
587 .{ .from = 0xBE45, .to = 0xBE5F, .prop = .LVT },
588 .{ .from = 0xBE61, .to = 0xBE7B, .prop = .LVT },
589 .{ .from = 0xBE7D, .to = 0xBE97, .prop = .LVT },
590 .{ .from = 0xBE99, .to = 0xBEB3, .prop = .LVT },
591 .{ .from = 0xBEB5, .to = 0xBECF, .prop = .LVT },
592 .{ .from = 0xBED1, .to = 0xBEEB, .prop = .LVT },
593 .{ .from = 0xBEED, .to = 0xBF07, .prop = .LVT },
594 .{ .from = 0xBF09, .to = 0xBF23, .prop = .LVT },
595 .{ .from = 0xBF25, .to = 0xBF3F, .prop = .LVT },
596 .{ .from = 0xBF41, .to = 0xBF5B, .prop = .LVT },
597 .{ .from = 0xBF5D, .to = 0xBF77, .prop = .LVT },
598 .{ .from = 0xBF79, .to = 0xBF93, .prop = .LVT },
599 .{ .from = 0xBF95, .to = 0xBFAF, .prop = .LVT },
600 .{ .from = 0xBFB1, .to = 0xBFCB, .prop = .LVT },
601 .{ .from = 0xBFCD, .to = 0xBFE7, .prop = .LVT },
602 .{ .from = 0xBFE9, .to = 0xC003, .prop = .LVT },
603 .{ .from = 0xC005, .to = 0xC01F, .prop = .LVT },
604 .{ .from = 0xC021, .to = 0xC03B, .prop = .LVT },
605 .{ .from = 0xC03D, .to = 0xC057, .prop = .LVT },
606 .{ .from = 0xC059, .to = 0xC073, .prop = .LVT },
607 .{ .from = 0xC075, .to = 0xC08F, .prop = .LVT },
608 .{ .from = 0xC091, .to = 0xC0AB, .prop = .LVT },
609 .{ .from = 0xC0AD, .to = 0xC0C7, .prop = .LVT },
610 .{ .from = 0xC0C9, .to = 0xC0E3, .prop = .LVT },
611 .{ .from = 0xC0E5, .to = 0xC0FF, .prop = .LVT },
612 .{ .from = 0xC101, .to = 0xC11B, .prop = .LVT },
613 .{ .from = 0xC11D, .to = 0xC137, .prop = .LVT },
614 .{ .from = 0xC139, .to = 0xC153, .prop = .LVT },
615 .{ .from = 0xC155, .to = 0xC16F, .prop = .LVT },
616 .{ .from = 0xC171, .to = 0xC18B, .prop = .LVT },
617 .{ .from = 0xC18D, .to = 0xC1A7, .prop = .LVT },
618 .{ .from = 0xC1A9, .to = 0xC1C3, .prop = .LVT },
619 .{ .from = 0xC1C5, .to = 0xC1DF, .prop = .LVT },
620 .{ .from = 0xC1E1, .to = 0xC1FB, .prop = .LVT },
621 .{ .from = 0xC1FD, .to = 0xC217, .prop = .LVT },
622 .{ .from = 0xC219, .to = 0xC233, .prop = .LVT },
623 .{ .from = 0xC235, .to = 0xC24F, .prop = .LVT },
624 .{ .from = 0xC251, .to = 0xC26B, .prop = .LVT },
625 .{ .from = 0xC26D, .to = 0xC287, .prop = .LVT },
626 .{ .from = 0xC289, .to = 0xC2A3, .prop = .LVT },
627 .{ .from = 0xC2A5, .to = 0xC2BF, .prop = .LVT },
628 .{ .from = 0xC2C1, .to = 0xC2DB, .prop = .LVT },
629 .{ .from = 0xC2DD, .to = 0xC2F7, .prop = .LVT },
630 .{ .from = 0xC2F9, .to = 0xC313, .prop = .LVT },
631 .{ .from = 0xC315, .to = 0xC32F, .prop = .LVT },
632 .{ .from = 0xC331, .to = 0xC34B, .prop = .LVT },
633 .{ .from = 0xC34D, .to = 0xC367, .prop = .LVT },
634 .{ .from = 0xC369, .to = 0xC383, .prop = .LVT },
635 .{ .from = 0xC385, .to = 0xC39F, .prop = .LVT },
636 .{ .from = 0xC3A1, .to = 0xC3BB, .prop = .LVT },
637 .{ .from = 0xC3BD, .to = 0xC3D7, .prop = .LVT },
638 .{ .from = 0xC3D9, .to = 0xC3F3, .prop = .LVT },
639 .{ .from = 0xC3F5, .to = 0xC40F, .prop = .LVT },
640 .{ .from = 0xC411, .to = 0xC42B, .prop = .LVT },
641 .{ .from = 0xC42D, .to = 0xC447, .prop = .LVT },
642 .{ .from = 0xC449, .to = 0xC463, .prop = .LVT },
643 .{ .from = 0xC465, .to = 0xC47F, .prop = .LVT },
644 .{ .from = 0xC481, .to = 0xC49B, .prop = .LVT },
645 .{ .from = 0xC49D, .to = 0xC4B7, .prop = .LVT },
646 .{ .from = 0xC4B9, .to = 0xC4D3, .prop = .LVT },
647 .{ .from = 0xC4D5, .to = 0xC4EF, .prop = .LVT },
648 .{ .from = 0xC4F1, .to = 0xC50B, .prop = .LVT },
649 .{ .from = 0xC50D, .to = 0xC527, .prop = .LVT },
650 .{ .from = 0xC529, .to = 0xC543, .prop = .LVT },
651 .{ .from = 0xC545, .to = 0xC55F, .prop = .LVT },
652 .{ .from = 0xC561, .to = 0xC57B, .prop = .LVT },
653 .{ .from = 0xC57D, .to = 0xC597, .prop = .LVT },
654 .{ .from = 0xC599, .to = 0xC5B3, .prop = .LVT },
655 .{ .from = 0xC5B5, .to = 0xC5CF, .prop = .LVT },
656 .{ .from = 0xC5D1, .to = 0xC5EB, .prop = .LVT },
657 .{ .from = 0xC5ED, .to = 0xC607, .prop = .LVT },
658 .{ .from = 0xC609, .to = 0xC623, .prop = .LVT },
659 .{ .from = 0xC625, .to = 0xC63F, .prop = .LVT },
660 .{ .from = 0xC641, .to = 0xC65B, .prop = .LVT },
661 .{ .from = 0xC65D, .to = 0xC677, .prop = .LVT },
662 .{ .from = 0xC679, .to = 0xC693, .prop = .LVT },
663 .{ .from = 0xC695, .to = 0xC6AF, .prop = .LVT },
664 .{ .from = 0xC6B1, .to = 0xC6CB, .prop = .LVT },
665 .{ .from = 0xC6CD, .to = 0xC6E7, .prop = .LVT },
666 .{ .from = 0xC6E9, .to = 0xC703, .prop = .LVT },
667 .{ .from = 0xC705, .to = 0xC71F, .prop = .LVT },
668 .{ .from = 0xC721, .to = 0xC73B, .prop = .LVT },
669 .{ .from = 0xC73D, .to = 0xC757, .prop = .LVT },
670 .{ .from = 0xC759, .to = 0xC773, .prop = .LVT },
671 .{ .from = 0xC775, .to = 0xC78F, .prop = .LVT },
672 .{ .from = 0xC791, .to = 0xC7AB, .prop = .LVT },
673 .{ .from = 0xC7AD, .to = 0xC7C7, .prop = .LVT },
674 .{ .from = 0xC7C9, .to = 0xC7E3, .prop = .LVT },
675 .{ .from = 0xC7E5, .to = 0xC7FF, .prop = .LVT },
676 .{ .from = 0xC801, .to = 0xC81B, .prop = .LVT },
677 .{ .from = 0xC81D, .to = 0xC837, .prop = .LVT },
678 .{ .from = 0xC839, .to = 0xC853, .prop = .LVT },
679 .{ .from = 0xC855, .to = 0xC86F, .prop = .LVT },
680 .{ .from = 0xC871, .to = 0xC88B, .prop = .LVT },
681 .{ .from = 0xC88D, .to = 0xC8A7, .prop = .LVT },
682 .{ .from = 0xC8A9, .to = 0xC8C3, .prop = .LVT },
683 .{ .from = 0xC8C5, .to = 0xC8DF, .prop = .LVT },
684 .{ .from = 0xC8E1, .to = 0xC8FB, .prop = .LVT },
685 .{ .from = 0xC8FD, .to = 0xC917, .prop = .LVT },
686 .{ .from = 0xC919, .to = 0xC933, .prop = .LVT },
687 .{ .from = 0xC935, .to = 0xC94F, .prop = .LVT },
688 .{ .from = 0xC951, .to = 0xC96B, .prop = .LVT },
689 .{ .from = 0xC96D, .to = 0xC987, .prop = .LVT },
690 .{ .from = 0xC989, .to = 0xC9A3, .prop = .LVT },
691 .{ .from = 0xC9A5, .to = 0xC9BF, .prop = .LVT },
692 .{ .from = 0xC9C1, .to = 0xC9DB, .prop = .LVT },
693 .{ .from = 0xC9DD, .to = 0xC9F7, .prop = .LVT },
694 .{ .from = 0xC9F9, .to = 0xCA13, .prop = .LVT },
695 .{ .from = 0xCA15, .to = 0xCA2F, .prop = .LVT },
696 .{ .from = 0xCA31, .to = 0xCA4B, .prop = .LVT },
697 .{ .from = 0xCA4D, .to = 0xCA67, .prop = .LVT },
698 .{ .from = 0xCA69, .to = 0xCA83, .prop = .LVT },
699 .{ .from = 0xCA85, .to = 0xCA9F, .prop = .LVT },
700 .{ .from = 0xCAA1, .to = 0xCABB, .prop = .LVT },
701 .{ .from = 0xCABD, .to = 0xCAD7, .prop = .LVT },
702 .{ .from = 0xCAD9, .to = 0xCAF3, .prop = .LVT },
703 .{ .from = 0xCAF5, .to = 0xCB0F, .prop = .LVT },
704 .{ .from = 0xCB11, .to = 0xCB2B, .prop = .LVT },
705 .{ .from = 0xCB2D, .to = 0xCB47, .prop = .LVT },
706 .{ .from = 0xCB49, .to = 0xCB63, .prop = .LVT },
707 .{ .from = 0xCB65, .to = 0xCB7F, .prop = .LVT },
708 .{ .from = 0xCB81, .to = 0xCB9B, .prop = .LVT },
709 .{ .from = 0xCB9D, .to = 0xCBB7, .prop = .LVT },
710 .{ .from = 0xCBB9, .to = 0xCBD3, .prop = .LVT },
711 .{ .from = 0xCBD5, .to = 0xCBEF, .prop = .LVT },
712 .{ .from = 0xCBF1, .to = 0xCC0B, .prop = .LVT },
713 .{ .from = 0xCC0D, .to = 0xCC27, .prop = .LVT },
714 .{ .from = 0xCC29, .to = 0xCC43, .prop = .LVT },
715 .{ .from = 0xCC45, .to = 0xCC5F, .prop = .LVT },
716 .{ .from = 0xCC61, .to = 0xCC7B, .prop = .LVT },
717 .{ .from = 0xCC7D, .to = 0xCC97, .prop = .LVT },
718 .{ .from = 0xCC99, .to = 0xCCB3, .prop = .LVT },
719 .{ .from = 0xCCB5, .to = 0xCCCF, .prop = .LVT },
720 .{ .from = 0xCCD1, .to = 0xCCEB, .prop = .LVT },
721 .{ .from = 0xCCED, .to = 0xCD07, .prop = .LVT },
722 .{ .from = 0xCD09, .to = 0xCD23, .prop = .LVT },
723 .{ .from = 0xCD25, .to = 0xCD3F, .prop = .LVT },
724 .{ .from = 0xCD41, .to = 0xCD5B, .prop = .LVT },
725 .{ .from = 0xCD5D, .to = 0xCD77, .prop = .LVT },
726 .{ .from = 0xCD79, .to = 0xCD93, .prop = .LVT },
727 .{ .from = 0xCD95, .to = 0xCDAF, .prop = .LVT },
728 .{ .from = 0xCDB1, .to = 0xCDCB, .prop = .LVT },
729 .{ .from = 0xCDCD, .to = 0xCDE7, .prop = .LVT },
730 .{ .from = 0xCDE9, .to = 0xCE03, .prop = .LVT },
731 .{ .from = 0xCE05, .to = 0xCE1F, .prop = .LVT },
732 .{ .from = 0xCE21, .to = 0xCE3B, .prop = .LVT },
733 .{ .from = 0xCE3D, .to = 0xCE57, .prop = .LVT },
734 .{ .from = 0xCE59, .to = 0xCE73, .prop = .LVT },
735 .{ .from = 0xCE75, .to = 0xCE8F, .prop = .LVT },
736 .{ .from = 0xCE91, .to = 0xCEAB, .prop = .LVT },
737 .{ .from = 0xCEAD, .to = 0xCEC7, .prop = .LVT },
738 .{ .from = 0xCEC9, .to = 0xCEE3, .prop = .LVT },
739 .{ .from = 0xCEE5, .to = 0xCEFF, .prop = .LVT },
740 .{ .from = 0xCF01, .to = 0xCF1B, .prop = .LVT },
741 .{ .from = 0xCF1D, .to = 0xCF37, .prop = .LVT },
742 .{ .from = 0xCF39, .to = 0xCF53, .prop = .LVT },
743 .{ .from = 0xCF55, .to = 0xCF6F, .prop = .LVT },
744 .{ .from = 0xCF71, .to = 0xCF8B, .prop = .LVT },
745 .{ .from = 0xCF8D, .to = 0xCFA7, .prop = .LVT },
746 .{ .from = 0xCFA9, .to = 0xCFC3, .prop = .LVT },
747 .{ .from = 0xCFC5, .to = 0xCFDF, .prop = .LVT },
748 .{ .from = 0xCFE1, .to = 0xCFFB, .prop = .LVT },
749 .{ .from = 0xCFFD, .to = 0xD017, .prop = .LVT },
750 .{ .from = 0xD019, .to = 0xD033, .prop = .LVT },
751 .{ .from = 0xD035, .to = 0xD04F, .prop = .LVT },
752 .{ .from = 0xD051, .to = 0xD06B, .prop = .LVT },
753 .{ .from = 0xD06D, .to = 0xD087, .prop = .LVT },
754 .{ .from = 0xD089, .to = 0xD0A3, .prop = .LVT },
755 .{ .from = 0xD0A5, .to = 0xD0BF, .prop = .LVT },
756 .{ .from = 0xD0C1, .to = 0xD0DB, .prop = .LVT },
757 .{ .from = 0xD0DD, .to = 0xD0F7, .prop = .LVT },
758 .{ .from = 0xD0F9, .to = 0xD113, .prop = .LVT },
759 .{ .from = 0xD115, .to = 0xD12F, .prop = .LVT },
760 .{ .from = 0xD131, .to = 0xD14B, .prop = .LVT },
761 .{ .from = 0xD14D, .to = 0xD167, .prop = .LVT },
762 .{ .from = 0xD169, .to = 0xD183, .prop = .LVT },
763 .{ .from = 0xD185, .to = 0xD19F, .prop = .LVT },
764 .{ .from = 0xD1A1, .to = 0xD1BB, .prop = .LVT },
765 .{ .from = 0xD1BD, .to = 0xD1D7, .prop = .LVT },
766 .{ .from = 0xD1D9, .to = 0xD1F3, .prop = .LVT },
767 .{ .from = 0xD1F5, .to = 0xD20F, .prop = .LVT },
768 .{ .from = 0xD211, .to = 0xD22B, .prop = .LVT },
769 .{ .from = 0xD22D, .to = 0xD247, .prop = .LVT },
770 .{ .from = 0xD249, .to = 0xD263, .prop = .LVT },
771 .{ .from = 0xD265, .to = 0xD27F, .prop = .LVT },
772 .{ .from = 0xD281, .to = 0xD29B, .prop = .LVT },
773 .{ .from = 0xD29D, .to = 0xD2B7, .prop = .LVT },
774 .{ .from = 0xD2B9, .to = 0xD2D3, .prop = .LVT },
775 .{ .from = 0xD2D5, .to = 0xD2EF, .prop = .LVT },
776 .{ .from = 0xD2F1, .to = 0xD30B, .prop = .LVT },
777 .{ .from = 0xD30D, .to = 0xD327, .prop = .LVT },
778 .{ .from = 0xD329, .to = 0xD343, .prop = .LVT },
779 .{ .from = 0xD345, .to = 0xD35F, .prop = .LVT },
780 .{ .from = 0xD361, .to = 0xD37B, .prop = .LVT },
781 .{ .from = 0xD37D, .to = 0xD397, .prop = .LVT },
782 .{ .from = 0xD399, .to = 0xD3B3, .prop = .LVT },
783 .{ .from = 0xD3B5, .to = 0xD3CF, .prop = .LVT },
784 .{ .from = 0xD3D1, .to = 0xD3EB, .prop = .LVT },
785 .{ .from = 0xD3ED, .to = 0xD407, .prop = .LVT },
786 .{ .from = 0xD409, .to = 0xD423, .prop = .LVT },
787 .{ .from = 0xD425, .to = 0xD43F, .prop = .LVT },
788 .{ .from = 0xD441, .to = 0xD45B, .prop = .LVT },
789 .{ .from = 0xD45D, .to = 0xD477, .prop = .LVT },
790 .{ .from = 0xD479, .to = 0xD493, .prop = .LVT },
791 .{ .from = 0xD495, .to = 0xD4AF, .prop = .LVT },
792 .{ .from = 0xD4B1, .to = 0xD4CB, .prop = .LVT },
793 .{ .from = 0xD4CD, .to = 0xD4E7, .prop = .LVT },
794 .{ .from = 0xD4E9, .to = 0xD503, .prop = .LVT },
795 .{ .from = 0xD505, .to = 0xD51F, .prop = .LVT },
796 .{ .from = 0xD521, .to = 0xD53B, .prop = .LVT },
797 .{ .from = 0xD53D, .to = 0xD557, .prop = .LVT },
798 .{ .from = 0xD559, .to = 0xD573, .prop = .LVT },
799 .{ .from = 0xD575, .to = 0xD58F, .prop = .LVT },
800 .{ .from = 0xD591, .to = 0xD5AB, .prop = .LVT },
801 .{ .from = 0xD5AD, .to = 0xD5C7, .prop = .LVT },
802 .{ .from = 0xD5C9, .to = 0xD5E3, .prop = .LVT },
803 .{ .from = 0xD5E5, .to = 0xD5FF, .prop = .LVT },
804 .{ .from = 0xD601, .to = 0xD61B, .prop = .LVT },
805 .{ .from = 0xD61D, .to = 0xD637, .prop = .LVT },
806 .{ .from = 0xD639, .to = 0xD653, .prop = .LVT },
807 .{ .from = 0xD655, .to = 0xD66F, .prop = .LVT },
808 .{ .from = 0xD671, .to = 0xD68B, .prop = .LVT },
809 .{ .from = 0xD68D, .to = 0xD6A7, .prop = .LVT },
810 .{ .from = 0xD6A9, .to = 0xD6C3, .prop = .LVT },
811 .{ .from = 0xD6C5, .to = 0xD6DF, .prop = .LVT },
812 .{ .from = 0xD6E1, .to = 0xD6FB, .prop = .LVT },
813 .{ .from = 0xD6FD, .to = 0xD717, .prop = .LVT },
814 .{ .from = 0xD719, .to = 0xD733, .prop = .LVT },
815 .{ .from = 0xD735, .to = 0xD74F, .prop = .LVT },
816 .{ .from = 0xD751, .to = 0xD76B, .prop = .LVT },
817 .{ .from = 0xD76D, .to = 0xD787, .prop = .LVT },
818 .{ .from = 0xD789, .to = 0xD7A3, .prop = .LVT },
819};
src/lib.zig+1
...@@ -11,3 +11,4 @@ pub const derived_core_properties = @import("./derived_core_properties.zig");...@@ -11,3 +11,4 @@ pub const derived_core_properties = @import("./derived_core_properties.zig");
11pub const east_asian_width = @import("./east_asian_width.zig");11pub const east_asian_width = @import("./east_asian_width.zig");
12pub const emoji_sources = @import("./emoji_sources.zig");12pub const emoji_sources = @import("./emoji_sources.zig");
13pub const equivalent_unified_ideograph = @import("./equivalent_unified_ideograph.zig");13pub const equivalent_unified_ideograph = @import("./equivalent_unified_ideograph.zig");
14pub const hangul_syllable_type = @import("./hangul_syllable_type.zig");
src/main.zig+1
...@@ -18,6 +18,7 @@ pub fn main() !void {...@@ -18,6 +18,7 @@ pub fn main() !void {
18 ucd.east_asian_width,18 ucd.east_asian_width,
19 ucd.emoji_sources,19 ucd.emoji_sources,
20 ucd.equivalent_unified_ideograph,20 ucd.equivalent_unified_ideograph,
21 ucd.hangul_syllable_type,
21 };22 };
2223
23 inline for (data) |b| {24 inline for (data) |b| {