aboutsummaryrefslogtreecommitdiffhomepage
path: root/vendor/golang.org/x/net
diff options
context:
space:
mode:
authorNathan Dench <ndenc2@gmail.com>2019-05-24 15:16:44 +1000
committerNathan Dench <ndenc2@gmail.com>2019-05-24 15:16:44 +1000
commit107c1cdb09c575aa2f61d97f48d8587eb6bada4c (patch)
treeca7d008643efc555c388baeaf1d986e0b6b3e28c /vendor/golang.org/x/net
parent844b5a68d8af4791755b8f0ad293cc99f5959183 (diff)
downloadterraform-provider-statuscake-107c1cdb09c575aa2f61d97f48d8587eb6bada4c.tar.gz
terraform-provider-statuscake-107c1cdb09c575aa2f61d97f48d8587eb6bada4c.tar.zst
terraform-provider-statuscake-107c1cdb09c575aa2f61d97f48d8587eb6bada4c.zip
Upgrade to 0.12
Diffstat (limited to 'vendor/golang.org/x/net')
-rw-r--r--vendor/golang.org/x/net/context/context.go2
-rw-r--r--vendor/golang.org/x/net/context/ctxhttp/ctxhttp.go71
-rw-r--r--vendor/golang.org/x/net/html/atom/atom.go78
-rw-r--r--vendor/golang.org/x/net/html/atom/gen.go709
-rw-r--r--vendor/golang.org/x/net/html/atom/table.go777
-rw-r--r--vendor/golang.org/x/net/html/const.go104
-rw-r--r--vendor/golang.org/x/net/html/doc.go106
-rw-r--r--vendor/golang.org/x/net/html/doctype.go156
-rw-r--r--vendor/golang.org/x/net/html/entity.go2253
-rw-r--r--vendor/golang.org/x/net/html/escape.go258
-rw-r--r--vendor/golang.org/x/net/html/foreign.go226
-rw-r--r--vendor/golang.org/x/net/html/node.go193
-rw-r--r--vendor/golang.org/x/net/html/parse.go2094
-rw-r--r--vendor/golang.org/x/net/html/render.go271
-rw-r--r--vendor/golang.org/x/net/html/token.go1219
-rw-r--r--vendor/golang.org/x/net/http/httpguts/guts.go50
-rw-r--r--vendor/golang.org/x/net/http/httpguts/httplex.go (renamed from vendor/golang.org/x/net/lex/httplex/httplex.go)7
-rw-r--r--vendor/golang.org/x/net/http2/ciphers.go2
-rw-r--r--vendor/golang.org/x/net/http2/client_conn_pool.go28
-rw-r--r--vendor/golang.org/x/net/http2/configure_transport.go80
-rw-r--r--vendor/golang.org/x/net/http2/flow.go10
-rw-r--r--vendor/golang.org/x/net/http2/frame.go71
-rw-r--r--vendor/golang.org/x/net/http2/go111.go29
-rw-r--r--vendor/golang.org/x/net/http2/go16.go16
-rw-r--r--vendor/golang.org/x/net/http2/go17.go106
-rw-r--r--vendor/golang.org/x/net/http2/go17_not18.go36
-rw-r--r--vendor/golang.org/x/net/http2/go18.go56
-rw-r--r--vendor/golang.org/x/net/http2/go19.go16
-rw-r--r--vendor/golang.org/x/net/http2/headermap.go20
-rw-r--r--vendor/golang.org/x/net/http2/hpack/encode.go2
-rw-r--r--vendor/golang.org/x/net/http2/hpack/hpack.go14
-rw-r--r--vendor/golang.org/x/net/http2/hpack/huffman.go20
-rw-r--r--vendor/golang.org/x/net/http2/http2.go25
-rw-r--r--vendor/golang.org/x/net/http2/not_go111.go20
-rw-r--r--vendor/golang.org/x/net/http2/not_go16.go21
-rw-r--r--vendor/golang.org/x/net/http2/not_go17.go87
-rw-r--r--vendor/golang.org/x/net/http2/not_go18.go29
-rw-r--r--vendor/golang.org/x/net/http2/not_go19.go16
-rw-r--r--vendor/golang.org/x/net/http2/server.go230
-rw-r--r--vendor/golang.org/x/net/http2/transport.go574
-rw-r--r--vendor/golang.org/x/net/http2/write.go15
-rw-r--r--vendor/golang.org/x/net/idna/idna10.0.0.go734
-rw-r--r--vendor/golang.org/x/net/idna/idna9.0.0.go (renamed from vendor/golang.org/x/net/idna/idna.go)12
-rw-r--r--vendor/golang.org/x/net/idna/tables.go4477
-rw-r--r--vendor/golang.org/x/net/idna/tables10.0.0.go4559
-rw-r--r--vendor/golang.org/x/net/idna/tables11.0.0.go4653
-rw-r--r--vendor/golang.org/x/net/idna/tables9.0.0.go4486
-rw-r--r--vendor/golang.org/x/net/idna/trieval.go17
-rw-r--r--vendor/golang.org/x/net/trace/trace.go90
-rw-r--r--vendor/golang.org/x/net/trace/trace_go16.go21
-rw-r--r--vendor/golang.org/x/net/trace/trace_go17.go21
51 files changed, 15430 insertions, 13737 deletions
diff --git a/vendor/golang.org/x/net/context/context.go b/vendor/golang.org/x/net/context/context.go
index d3681ab..a3c021d 100644
--- a/vendor/golang.org/x/net/context/context.go
+++ b/vendor/golang.org/x/net/context/context.go
@@ -5,6 +5,8 @@
5// Package context defines the Context type, which carries deadlines, 5// Package context defines the Context type, which carries deadlines,
6// cancelation signals, and other request-scoped values across API boundaries 6// cancelation signals, and other request-scoped values across API boundaries
7// and between processes. 7// and between processes.
8// As of Go 1.7 this package is available in the standard library under the
9// name context. https://golang.org/pkg/context.
8// 10//
9// Incoming requests to a server should create a Context, and outgoing calls to 11// Incoming requests to a server should create a Context, and outgoing calls to
10// servers should accept a Context. The chain of function calls between must 12// servers should accept a Context. The chain of function calls between must
diff --git a/vendor/golang.org/x/net/context/ctxhttp/ctxhttp.go b/vendor/golang.org/x/net/context/ctxhttp/ctxhttp.go
new file mode 100644
index 0000000..37dc0cf
--- /dev/null
+++ b/vendor/golang.org/x/net/context/ctxhttp/ctxhttp.go
@@ -0,0 +1,71 @@
1// Copyright 2016 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Package ctxhttp provides helper functions for performing context-aware HTTP requests.
6package ctxhttp // import "golang.org/x/net/context/ctxhttp"
7
8import (
9 "context"
10 "io"
11 "net/http"
12 "net/url"
13 "strings"
14)
15
16// Do sends an HTTP request with the provided http.Client and returns
17// an HTTP response.
18//
19// If the client is nil, http.DefaultClient is used.
20//
21// The provided ctx must be non-nil. If it is canceled or times out,
22// ctx.Err() will be returned.
23func Do(ctx context.Context, client *http.Client, req *http.Request) (*http.Response, error) {
24 if client == nil {
25 client = http.DefaultClient
26 }
27 resp, err := client.Do(req.WithContext(ctx))
28 // If we got an error, and the context has been canceled,
29 // the context's error is probably more useful.
30 if err != nil {
31 select {
32 case <-ctx.Done():
33 err = ctx.Err()
34 default:
35 }
36 }
37 return resp, err
38}
39
40// Get issues a GET request via the Do function.
41func Get(ctx context.Context, client *http.Client, url string) (*http.Response, error) {
42 req, err := http.NewRequest("GET", url, nil)
43 if err != nil {
44 return nil, err
45 }
46 return Do(ctx, client, req)
47}
48
49// Head issues a HEAD request via the Do function.
50func Head(ctx context.Context, client *http.Client, url string) (*http.Response, error) {
51 req, err := http.NewRequest("HEAD", url, nil)
52 if err != nil {
53 return nil, err
54 }
55 return Do(ctx, client, req)
56}
57
58// Post issues a POST request via the Do function.
59func Post(ctx context.Context, client *http.Client, url string, bodyType string, body io.Reader) (*http.Response, error) {
60 req, err := http.NewRequest("POST", url, body)
61 if err != nil {
62 return nil, err
63 }
64 req.Header.Set("Content-Type", bodyType)
65 return Do(ctx, client, req)
66}
67
68// PostForm issues a POST request via the Do function.
69func PostForm(ctx context.Context, client *http.Client, url string, data url.Values) (*http.Response, error) {
70 return Post(ctx, client, url, "application/x-www-form-urlencoded", strings.NewReader(data.Encode()))
71}
diff --git a/vendor/golang.org/x/net/html/atom/atom.go b/vendor/golang.org/x/net/html/atom/atom.go
deleted file mode 100644
index cd0a8ac..0000000
--- a/vendor/golang.org/x/net/html/atom/atom.go
+++ /dev/null
@@ -1,78 +0,0 @@
1// Copyright 2012 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Package atom provides integer codes (also known as atoms) for a fixed set of
6// frequently occurring HTML strings: tag names and attribute keys such as "p"
7// and "id".
8//
9// Sharing an atom's name between all elements with the same tag can result in
10// fewer string allocations when tokenizing and parsing HTML. Integer
11// comparisons are also generally faster than string comparisons.
12//
13// The value of an atom's particular code is not guaranteed to stay the same
14// between versions of this package. Neither is any ordering guaranteed:
15// whether atom.H1 < atom.H2 may also change. The codes are not guaranteed to
16// be dense. The only guarantees are that e.g. looking up "div" will yield
17// atom.Div, calling atom.Div.String will return "div", and atom.Div != 0.
18package atom // import "golang.org/x/net/html/atom"
19
20// Atom is an integer code for a string. The zero value maps to "".
21type Atom uint32
22
23// String returns the atom's name.
24func (a Atom) String() string {
25 start := uint32(a >> 8)
26 n := uint32(a & 0xff)
27 if start+n > uint32(len(atomText)) {
28 return ""
29 }
30 return atomText[start : start+n]
31}
32
33func (a Atom) string() string {
34 return atomText[a>>8 : a>>8+a&0xff]
35}
36
37// fnv computes the FNV hash with an arbitrary starting value h.
38func fnv(h uint32, s []byte) uint32 {
39 for i := range s {
40 h ^= uint32(s[i])
41 h *= 16777619
42 }
43 return h
44}
45
46func match(s string, t []byte) bool {
47 for i, c := range t {
48 if s[i] != c {
49 return false
50 }
51 }
52 return true
53}
54
55// Lookup returns the atom whose name is s. It returns zero if there is no
56// such atom. The lookup is case sensitive.
57func Lookup(s []byte) Atom {
58 if len(s) == 0 || len(s) > maxAtomLen {
59 return 0
60 }
61 h := fnv(hash0, s)
62 if a := table[h&uint32(len(table)-1)]; int(a&0xff) == len(s) && match(a.string(), s) {
63 return a
64 }
65 if a := table[(h>>16)&uint32(len(table)-1)]; int(a&0xff) == len(s) && match(a.string(), s) {
66 return a
67 }
68 return 0
69}
70
71// String returns a string whose contents are equal to s. In that sense, it is
72// equivalent to string(s) but may be more efficient.
73func String(s []byte) string {
74 if a := Lookup(s); a != 0 {
75 return a.String()
76 }
77 return string(s)
78}
diff --git a/vendor/golang.org/x/net/html/atom/gen.go b/vendor/golang.org/x/net/html/atom/gen.go
deleted file mode 100644
index cc5dc5d..0000000
--- a/vendor/golang.org/x/net/html/atom/gen.go
+++ /dev/null
@@ -1,709 +0,0 @@
1// Copyright 2012 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build ignore
6
7//go:generate go run gen.go
8//go:generate go run gen.go -test
9
10package main
11
12import (
13 "bytes"
14 "flag"
15 "fmt"
16 "go/format"
17 "io/ioutil"
18 "math/rand"
19 "os"
20 "sort"
21 "strings"
22)
23
24// identifier converts s to a Go exported identifier.
25// It converts "div" to "Div" and "accept-charset" to "AcceptCharset".
26func identifier(s string) string {
27 b := make([]byte, 0, len(s))
28 cap := true
29 for _, c := range s {
30 if c == '-' {
31 cap = true
32 continue
33 }
34 if cap && 'a' <= c && c <= 'z' {
35 c -= 'a' - 'A'
36 }
37 cap = false
38 b = append(b, byte(c))
39 }
40 return string(b)
41}
42
43var test = flag.Bool("test", false, "generate table_test.go")
44
45func genFile(name string, buf *bytes.Buffer) {
46 b, err := format.Source(buf.Bytes())
47 if err != nil {
48 fmt.Fprintln(os.Stderr, err)
49 os.Exit(1)
50 }
51 if err := ioutil.WriteFile(name, b, 0644); err != nil {
52 fmt.Fprintln(os.Stderr, err)
53 os.Exit(1)
54 }
55}
56
57func main() {
58 flag.Parse()
59
60 var all []string
61 all = append(all, elements...)
62 all = append(all, attributes...)
63 all = append(all, eventHandlers...)
64 all = append(all, extra...)
65 sort.Strings(all)
66
67 // uniq - lists have dups
68 w := 0
69 for _, s := range all {
70 if w == 0 || all[w-1] != s {
71 all[w] = s
72 w++
73 }
74 }
75 all = all[:w]
76
77 if *test {
78 var buf bytes.Buffer
79 fmt.Fprintln(&buf, "// Code generated by go generate gen.go; DO NOT EDIT.\n")
80 fmt.Fprintln(&buf, "//go:generate go run gen.go -test\n")
81 fmt.Fprintln(&buf, "package atom\n")
82 fmt.Fprintln(&buf, "var testAtomList = []string{")
83 for _, s := range all {
84 fmt.Fprintf(&buf, "\t%q,\n", s)
85 }
86 fmt.Fprintln(&buf, "}")
87
88 genFile("table_test.go", &buf)
89 return
90 }
91
92 // Find hash that minimizes table size.
93 var best *table
94 for i := 0; i < 1000000; i++ {
95 if best != nil && 1<<(best.k-1) < len(all) {
96 break
97 }
98 h := rand.Uint32()
99 for k := uint(0); k <= 16; k++ {
100 if best != nil && k >= best.k {
101 break
102 }
103 var t table
104 if t.init(h, k, all) {
105 best = &t
106 break
107 }
108 }
109 }
110 if best == nil {
111 fmt.Fprintf(os.Stderr, "failed to construct string table\n")
112 os.Exit(1)
113 }
114
115 // Lay out strings, using overlaps when possible.
116 layout := append([]string{}, all...)
117
118 // Remove strings that are substrings of other strings
119 for changed := true; changed; {
120 changed = false
121 for i, s := range layout {
122 if s == "" {
123 continue
124 }
125 for j, t := range layout {
126 if i != j && t != "" && strings.Contains(s, t) {
127 changed = true
128 layout[j] = ""
129 }
130 }
131 }
132 }
133
134 // Join strings where one suffix matches another prefix.
135 for {
136 // Find best i, j, k such that layout[i][len-k:] == layout[j][:k],
137 // maximizing overlap length k.
138 besti := -1
139 bestj := -1
140 bestk := 0
141 for i, s := range layout {
142 if s == "" {
143 continue
144 }
145 for j, t := range layout {
146 if i == j {
147 continue
148 }
149 for k := bestk + 1; k <= len(s) && k <= len(t); k++ {
150 if s[len(s)-k:] == t[:k] {
151 besti = i
152 bestj = j
153 bestk = k
154 }
155 }
156 }
157 }
158 if bestk > 0 {
159 layout[besti] += layout[bestj][bestk:]
160 layout[bestj] = ""
161 continue
162 }
163 break
164 }
165
166 text := strings.Join(layout, "")
167
168 atom := map[string]uint32{}
169 for _, s := range all {
170 off := strings.Index(text, s)
171 if off < 0 {
172 panic("lost string " + s)
173 }
174 atom[s] = uint32(off<<8 | len(s))
175 }
176
177 var buf bytes.Buffer
178 // Generate the Go code.
179 fmt.Fprintln(&buf, "// Code generated by go generate gen.go; DO NOT EDIT.\n")
180 fmt.Fprintln(&buf, "//go:generate go run gen.go\n")
181 fmt.Fprintln(&buf, "package atom\n\nconst (")
182
183 // compute max len
184 maxLen := 0
185 for _, s := range all {
186 if maxLen < len(s) {
187 maxLen = len(s)
188 }
189 fmt.Fprintf(&buf, "\t%s Atom = %#x\n", identifier(s), atom[s])
190 }
191 fmt.Fprintln(&buf, ")\n")
192
193 fmt.Fprintf(&buf, "const hash0 = %#x\n\n", best.h0)
194 fmt.Fprintf(&buf, "const maxAtomLen = %d\n\n", maxLen)
195
196 fmt.Fprintf(&buf, "var table = [1<<%d]Atom{\n", best.k)
197 for i, s := range best.tab {
198 if s == "" {
199 continue
200 }
201 fmt.Fprintf(&buf, "\t%#x: %#x, // %s\n", i, atom[s], s)
202 }
203 fmt.Fprintf(&buf, "}\n")
204 datasize := (1 << best.k) * 4
205
206 fmt.Fprintln(&buf, "const atomText =")
207 textsize := len(text)
208 for len(text) > 60 {
209 fmt.Fprintf(&buf, "\t%q +\n", text[:60])
210 text = text[60:]
211 }
212 fmt.Fprintf(&buf, "\t%q\n\n", text)
213
214 genFile("table.go", &buf)
215
216 fmt.Fprintf(os.Stdout, "%d atoms; %d string bytes + %d tables = %d total data\n", len(all), textsize, datasize, textsize+datasize)
217}
218
219type byLen []string
220
221func (x byLen) Less(i, j int) bool { return len(x[i]) > len(x[j]) }
222func (x byLen) Swap(i, j int) { x[i], x[j] = x[j], x[i] }
223func (x byLen) Len() int { return len(x) }
224
225// fnv computes the FNV hash with an arbitrary starting value h.
226func fnv(h uint32, s string) uint32 {
227 for i := 0; i < len(s); i++ {
228 h ^= uint32(s[i])
229 h *= 16777619
230 }
231 return h
232}
233
234// A table represents an attempt at constructing the lookup table.
235// The lookup table uses cuckoo hashing, meaning that each string
236// can be found in one of two positions.
237type table struct {
238 h0 uint32
239 k uint
240 mask uint32
241 tab []string
242}
243
244// hash returns the two hashes for s.
245func (t *table) hash(s string) (h1, h2 uint32) {
246 h := fnv(t.h0, s)
247 h1 = h & t.mask
248 h2 = (h >> 16) & t.mask
249 return
250}
251
252// init initializes the table with the given parameters.
253// h0 is the initial hash value,
254// k is the number of bits of hash value to use, and
255// x is the list of strings to store in the table.
256// init returns false if the table cannot be constructed.
257func (t *table) init(h0 uint32, k uint, x []string) bool {
258 t.h0 = h0
259 t.k = k
260 t.tab = make([]string, 1<<k)
261 t.mask = 1<<k - 1
262 for _, s := range x {
263 if !t.insert(s) {
264 return false
265 }
266 }
267 return true
268}
269
270// insert inserts s in the table.
271func (t *table) insert(s string) bool {
272 h1, h2 := t.hash(s)
273 if t.tab[h1] == "" {
274 t.tab[h1] = s
275 return true
276 }
277 if t.tab[h2] == "" {
278 t.tab[h2] = s
279 return true
280 }
281 if t.push(h1, 0) {
282 t.tab[h1] = s
283 return true
284 }
285 if t.push(h2, 0) {
286 t.tab[h2] = s
287 return true
288 }
289 return false
290}
291
292// push attempts to push aside the entry in slot i.
293func (t *table) push(i uint32, depth int) bool {
294 if depth > len(t.tab) {
295 return false
296 }
297 s := t.tab[i]
298 h1, h2 := t.hash(s)
299 j := h1 + h2 - i
300 if t.tab[j] != "" && !t.push(j, depth+1) {
301 return false
302 }
303 t.tab[j] = s
304 return true
305}
306
307// The lists of element names and attribute keys were taken from
308// https://html.spec.whatwg.org/multipage/indices.html#index
309// as of the "HTML Living Standard - Last Updated 18 September 2017" version.
310
311// "command", "keygen" and "menuitem" have been removed from the spec,
312// but are kept here for backwards compatibility.
313var elements = []string{
314 "a",
315 "abbr",
316 "address",
317 "area",
318 "article",
319 "aside",
320 "audio",
321 "b",
322 "base",
323 "bdi",
324 "bdo",
325 "blockquote",
326 "body",
327 "br",
328 "button",
329 "canvas",
330 "caption",
331 "cite",
332 "code",
333 "col",
334 "colgroup",
335 "command",
336 "data",
337 "datalist",
338 "dd",
339 "del",
340 "details",
341 "dfn",
342 "dialog",
343 "div",
344 "dl",
345 "dt",
346 "em",
347 "embed",
348 "fieldset",
349 "figcaption",
350 "figure",
351 "footer",
352 "form",
353 "h1",
354 "h2",
355 "h3",
356 "h4",
357 "h5",
358 "h6",
359 "head",
360 "header",
361 "hgroup",
362 "hr",
363 "html",
364 "i",
365 "iframe",
366 "img",
367 "input",
368 "ins",
369 "kbd",
370 "keygen",
371 "label",
372 "legend",
373 "li",
374 "link",
375 "main",
376 "map",
377 "mark",
378 "menu",
379 "menuitem",
380 "meta",
381 "meter",
382 "nav",
383 "noscript",
384 "object",
385 "ol",
386 "optgroup",
387 "option",
388 "output",
389 "p",
390 "param",
391 "picture",
392 "pre",
393 "progress",
394 "q",
395 "rp",
396 "rt",
397 "ruby",
398 "s",
399 "samp",
400 "script",
401 "section",
402 "select",
403 "slot",
404 "small",
405 "source",
406 "span",
407 "strong",
408 "style",
409 "sub",
410 "summary",
411 "sup",
412 "table",
413 "tbody",
414 "td",
415 "template",
416 "textarea",
417 "tfoot",
418 "th",
419 "thead",
420 "time",
421 "title",
422 "tr",
423 "track",
424 "u",
425 "ul",
426 "var",
427 "video",
428 "wbr",
429}
430
431// https://html.spec.whatwg.org/multipage/indices.html#attributes-3
432//
433// "challenge", "command", "contextmenu", "dropzone", "icon", "keytype", "mediagroup",
434// "radiogroup", "spellcheck", "scoped", "seamless", "sortable" and "sorted" have been removed from the spec,
435// but are kept here for backwards compatibility.
436var attributes = []string{
437 "abbr",
438 "accept",
439 "accept-charset",
440 "accesskey",
441 "action",
442 "allowfullscreen",
443 "allowpaymentrequest",
444 "allowusermedia",
445 "alt",
446 "as",
447 "async",
448 "autocomplete",
449 "autofocus",
450 "autoplay",
451 "challenge",
452 "charset",
453 "checked",
454 "cite",
455 "class",
456 "color",
457 "cols",
458 "colspan",
459 "command",
460 "content",
461 "contenteditable",
462 "contextmenu",
463 "controls",
464 "coords",
465 "crossorigin",
466 "data",
467 "datetime",
468 "default",
469 "defer",
470 "dir",
471 "dirname",
472 "disabled",
473 "download",
474 "draggable",
475 "dropzone",
476 "enctype",
477 "for",
478 "form",
479 "formaction",
480 "formenctype",
481 "formmethod",
482 "formnovalidate",
483 "formtarget",
484 "headers",
485 "height",
486 "hidden",
487 "high",
488 "href",
489 "hreflang",
490 "http-equiv",
491 "icon",
492 "id",
493 "inputmode",
494 "integrity",
495 "is",
496 "ismap",
497 "itemid",
498 "itemprop",
499 "itemref",
500 "itemscope",
501 "itemtype",
502 "keytype",
503 "kind",
504 "label",
505 "lang",
506 "list",
507 "loop",
508 "low",
509 "manifest",
510 "max",
511 "maxlength",
512 "media",
513 "mediagroup",
514 "method",
515 "min",
516 "minlength",
517 "multiple",
518 "muted",
519 "name",
520 "nomodule",
521 "nonce",
522 "novalidate",
523 "open",
524 "optimum",
525 "pattern",
526 "ping",
527 "placeholder",
528 "playsinline",
529 "poster",
530 "preload",
531 "radiogroup",
532 "readonly",
533 "referrerpolicy",
534 "rel",
535 "required",
536 "reversed",
537 "rows",
538 "rowspan",
539 "sandbox",
540 "spellcheck",
541 "scope",
542 "scoped",
543 "seamless",
544 "selected",
545 "shape",
546 "size",
547 "sizes",
548 "sortable",
549 "sorted",
550 "slot",
551 "span",
552 "spellcheck",
553 "src",
554 "srcdoc",
555 "srclang",
556 "srcset",
557 "start",
558 "step",
559 "style",
560 "tabindex",
561 "target",
562 "title",
563 "translate",
564 "type",
565 "typemustmatch",
566 "updateviacache",
567 "usemap",
568 "value",
569 "width",
570 "workertype",
571 "wrap",
572}
573
574// "onautocomplete", "onautocompleteerror", "onmousewheel",
575// "onshow" and "onsort" have been removed from the spec,
576// but are kept here for backwards compatibility.
577var eventHandlers = []string{
578 "onabort",
579 "onautocomplete",
580 "onautocompleteerror",
581 "onauxclick",
582 "onafterprint",
583 "onbeforeprint",
584 "onbeforeunload",
585 "onblur",
586 "oncancel",
587 "oncanplay",
588 "oncanplaythrough",
589 "onchange",
590 "onclick",
591 "onclose",
592 "oncontextmenu",
593 "oncopy",
594 "oncuechange",
595 "oncut",
596 "ondblclick",
597 "ondrag",
598 "ondragend",
599 "ondragenter",
600 "ondragexit",
601 "ondragleave",
602 "ondragover",
603 "ondragstart",
604 "ondrop",
605 "ondurationchange",
606 "onemptied",
607 "onended",
608 "onerror",
609 "onfocus",
610 "onhashchange",
611 "oninput",
612 "oninvalid",
613 "onkeydown",
614 "onkeypress",
615 "onkeyup",
616 "onlanguagechange",
617 "onload",
618 "onloadeddata",
619 "onloadedmetadata",
620 "onloadend",
621 "onloadstart",
622 "onmessage",
623 "onmessageerror",
624 "onmousedown",
625 "onmouseenter",
626 "onmouseleave",
627 "onmousemove",
628 "onmouseout",
629 "onmouseover",
630 "onmouseup",
631 "onmousewheel",
632 "onwheel",
633 "onoffline",
634 "ononline",
635 "onpagehide",
636 "onpageshow",
637 "onpaste",
638 "onpause",
639 "onplay",
640 "onplaying",
641 "onpopstate",
642 "onprogress",
643 "onratechange",
644 "onreset",
645 "onresize",
646 "onrejectionhandled",
647 "onscroll",
648 "onsecuritypolicyviolation",
649 "onseeked",
650 "onseeking",
651 "onselect",
652 "onshow",
653 "onsort",
654 "onstalled",
655 "onstorage",
656 "onsubmit",
657 "onsuspend",
658 "ontimeupdate",
659 "ontoggle",
660 "onunhandledrejection",
661 "onunload",
662 "onvolumechange",
663 "onwaiting",
664}
665
666// extra are ad-hoc values not covered by any of the lists above.
667var extra = []string{
668 "align",
669 "annotation",
670 "annotation-xml",
671 "applet",
672 "basefont",
673 "bgsound",
674 "big",
675 "blink",
676 "center",
677 "color",
678 "desc",
679 "face",
680 "font",
681 "foreignObject", // HTML is case-insensitive, but SVG-embedded-in-HTML is case-sensitive.
682 "foreignobject",
683 "frame",
684 "frameset",
685 "image",
686 "isindex",
687 "listing",
688 "malignmark",
689 "marquee",
690 "math",
691 "mglyph",
692 "mi",
693 "mn",
694 "mo",
695 "ms",
696 "mtext",
697 "nobr",
698 "noembed",
699 "noframes",
700 "plaintext",
701 "prompt",
702 "public",
703 "spacer",
704 "strike",
705 "svg",
706 "system",
707 "tt",
708 "xmp",
709}
diff --git a/vendor/golang.org/x/net/html/atom/table.go b/vendor/golang.org/x/net/html/atom/table.go
deleted file mode 100644
index f74018e..0000000
--- a/vendor/golang.org/x/net/html/atom/table.go
+++ /dev/null
@@ -1,777 +0,0 @@
1// Code generated by go generate gen.go; DO NOT EDIT.
2
3//go:generate go run gen.go
4
5package atom
6
7const (
8 A Atom = 0x1
9 Abbr Atom = 0x4
10 Accept Atom = 0x1a06
11 AcceptCharset Atom = 0x1a0e
12 Accesskey Atom = 0x2c09
13 Action Atom = 0x25a06
14 Address Atom = 0x6ed07
15 Align Atom = 0x6d405
16 Allowfullscreen Atom = 0x1f00f
17 Allowpaymentrequest Atom = 0x6913
18 Allowusermedia Atom = 0x850e
19 Alt Atom = 0xb003
20 Annotation Atom = 0x1b90a
21 AnnotationXml Atom = 0x1b90e
22 Applet Atom = 0x30106
23 Area Atom = 0x34a04
24 Article Atom = 0x3f007
25 As Atom = 0xb902
26 Aside Atom = 0xc105
27 Async Atom = 0xb905
28 Audio Atom = 0xcf05
29 Autocomplete Atom = 0x2600c
30 Autofocus Atom = 0xeb09
31 Autoplay Atom = 0x10608
32 B Atom = 0x101
33 Base Atom = 0x11504
34 Basefont Atom = 0x11508
35 Bdi Atom = 0x16103
36 Bdo Atom = 0x13403
37 Bgsound Atom = 0x14707
38 Big Atom = 0x15903
39 Blink Atom = 0x15c05
40 Blockquote Atom = 0x1680a
41 Body Atom = 0x2804
42 Br Atom = 0x202
43 Button Atom = 0x17206
44 Canvas Atom = 0xbd06
45 Caption Atom = 0x21907
46 Center Atom = 0x20806
47 Challenge Atom = 0x28309
48 Charset Atom = 0x2107
49 Checked Atom = 0x46d07
50 Cite Atom = 0x55804
51 Class Atom = 0x5b905
52 Code Atom = 0x19004
53 Col Atom = 0x19703
54 Colgroup Atom = 0x19708
55 Color Atom = 0x1af05
56 Cols Atom = 0x1b404
57 Colspan Atom = 0x1b407
58 Command Atom = 0x1c707
59 Content Atom = 0x57f07
60 Contenteditable Atom = 0x57f0f
61 Contextmenu Atom = 0x3740b
62 Controls Atom = 0x1ce08
63 Coords Atom = 0x1da06
64 Crossorigin Atom = 0x1e30b
65 Data Atom = 0x49904
66 Datalist Atom = 0x49908
67 Datetime Atom = 0x2a008
68 Dd Atom = 0x2bf02
69 Default Atom = 0xc407
70 Defer Atom = 0x19205
71 Del Atom = 0x44603
72 Desc Atom = 0x55504
73 Details Atom = 0x4607
74 Dfn Atom = 0x5f03
75 Dialog Atom = 0x16206
76 Dir Atom = 0xa303
77 Dirname Atom = 0xa307
78 Disabled Atom = 0x14d08
79 Div Atom = 0x15403
80 Dl Atom = 0x5e202
81 Download Atom = 0x45708
82 Draggable Atom = 0x18309
83 Dropzone Atom = 0x3f908
84 Dt Atom = 0x64702
85 Em Atom = 0x4202
86 Embed Atom = 0x4205
87 Enctype Atom = 0x27507
88 Face Atom = 0x20604
89 Fieldset Atom = 0x20e08
90 Figcaption Atom = 0x2160a
91 Figure Atom = 0x23006
92 Font Atom = 0x11904
93 Footer Atom = 0xb306
94 For Atom = 0x23c03
95 ForeignObject Atom = 0x23c0d
96 Foreignobject Atom = 0x2490d
97 Form Atom = 0x25604
98 Formaction Atom = 0x2560a
99 Formenctype Atom = 0x2710b
100 Formmethod Atom = 0x28c0a
101 Formnovalidate Atom = 0x2960e
102 Formtarget Atom = 0x2a80a
103 Frame Atom = 0x5705
104 Frameset Atom = 0x5708
105 H1 Atom = 0x14502
106 H2 Atom = 0x2c602
107 H3 Atom = 0x2f502
108 H4 Atom = 0x33902
109 H5 Atom = 0x34302
110 H6 Atom = 0x64902
111 Head Atom = 0x32504
112 Header Atom = 0x32506
113 Headers Atom = 0x32507
114 Height Atom = 0x12c06
115 Hgroup Atom = 0x2b206
116 Hidden Atom = 0x2bd06
117 High Atom = 0x2c304
118 Hr Atom = 0x14002
119 Href Atom = 0x2c804
120 Hreflang Atom = 0x2c808
121 Html Atom = 0x13004
122 HttpEquiv Atom = 0x2d00a
123 I Atom = 0x601
124 Icon Atom = 0x57e04
125 Id Atom = 0xc302
126 Iframe Atom = 0x2e406
127 Image Atom = 0x2ea05
128 Img Atom = 0x2ef03
129 Input Atom = 0x43f05
130 Inputmode Atom = 0x43f09
131 Ins Atom = 0x1ec03
132 Integrity Atom = 0x22709
133 Is Atom = 0x14e02
134 Isindex Atom = 0x2f707
135 Ismap Atom = 0x2fe05
136 Itemid Atom = 0x37f06
137 Itemprop Atom = 0x55908
138 Itemref Atom = 0x3c107
139 Itemscope Atom = 0x66d09
140 Itemtype Atom = 0x30708
141 Kbd Atom = 0x16003
142 Keygen Atom = 0x3206
143 Keytype Atom = 0x7e07
144 Kind Atom = 0x18004
145 Label Atom = 0xda05
146 Lang Atom = 0x2cc04
147 Legend Atom = 0x18a06
148 Li Atom = 0x11102
149 Link Atom = 0x15d04
150 List Atom = 0x49d04
151 Listing Atom = 0x49d07
152 Loop Atom = 0xde04
153 Low Atom = 0x6b03
154 Main Atom = 0x1004
155 Malignmark Atom = 0x6d30a
156 Manifest Atom = 0x30f08
157 Map Atom = 0x30003
158 Mark Atom = 0x6d904
159 Marquee Atom = 0x31b07
160 Math Atom = 0x32204
161 Max Atom = 0x33103
162 Maxlength Atom = 0x33109
163 Media Atom = 0x8e05
164 Mediagroup Atom = 0x8e0a
165 Menu Atom = 0x37b04
166 Menuitem Atom = 0x37b08
167 Meta Atom = 0x4ac04
168 Meter Atom = 0xa805
169 Method Atom = 0x29006
170 Mglyph Atom = 0x2f006
171 Mi Atom = 0x33b02
172 Min Atom = 0x33b03
173 Minlength Atom = 0x33b09
174 Mn Atom = 0x29902
175 Mo Atom = 0x6302
176 Ms Atom = 0x67002
177 Mtext Atom = 0x34505
178 Multiple Atom = 0x35308
179 Muted Atom = 0x35b05
180 Name Atom = 0xa604
181 Nav Atom = 0x1303
182 Nobr Atom = 0x3704
183 Noembed Atom = 0x4007
184 Noframes Atom = 0x5508
185 Nomodule Atom = 0x6108
186 Nonce Atom = 0x56205
187 Noscript Atom = 0x1fe08
188 Novalidate Atom = 0x29a0a
189 Object Atom = 0x25006
190 Ol Atom = 0x10102
191 Onabort Atom = 0x17607
192 Onafterprint Atom = 0x21e0c
193 Onautocomplete Atom = 0x25e0e
194 Onautocompleteerror Atom = 0x25e13
195 Onauxclick Atom = 0x61b0a
196 Onbeforeprint Atom = 0x69a0d
197 Onbeforeunload Atom = 0x6e10e
198 Onblur Atom = 0x5c206
199 Oncancel Atom = 0xd308
200 Oncanplay Atom = 0x13609
201 Oncanplaythrough Atom = 0x13610
202 Onchange Atom = 0x40f08
203 Onclick Atom = 0x2dd07
204 Onclose Atom = 0x36007
205 Oncontextmenu Atom = 0x3720d
206 Oncopy Atom = 0x38506
207 Oncuechange Atom = 0x38b0b
208 Oncut Atom = 0x39605
209 Ondblclick Atom = 0x39b0a
210 Ondrag Atom = 0x3a506
211 Ondragend Atom = 0x3a509
212 Ondragenter Atom = 0x3ae0b
213 Ondragexit Atom = 0x3b90a
214 Ondragleave Atom = 0x3d30b
215 Ondragover Atom = 0x3de0a
216 Ondragstart Atom = 0x3e80b
217 Ondrop Atom = 0x3f706
218 Ondurationchange Atom = 0x40710
219 Onemptied Atom = 0x3fe09
220 Onended Atom = 0x41707
221 Onerror Atom = 0x41e07
222 Onfocus Atom = 0x42507
223 Onhashchange Atom = 0x4310c
224 Oninput Atom = 0x43d07
225 Oninvalid Atom = 0x44909
226 Onkeydown Atom = 0x45209
227 Onkeypress Atom = 0x45f0a
228 Onkeyup Atom = 0x47407
229 Onlanguagechange Atom = 0x48110
230 Onload Atom = 0x49106
231 Onloadeddata Atom = 0x4910c
232 Onloadedmetadata Atom = 0x4a410
233 Onloadend Atom = 0x4ba09
234 Onloadstart Atom = 0x4c30b
235 Onmessage Atom = 0x4ce09
236 Onmessageerror Atom = 0x4ce0e
237 Onmousedown Atom = 0x4dc0b
238 Onmouseenter Atom = 0x4e70c
239 Onmouseleave Atom = 0x4f30c
240 Onmousemove Atom = 0x4ff0b
241 Onmouseout Atom = 0x50a0a
242 Onmouseover Atom = 0x5170b
243 Onmouseup Atom = 0x52209
244 Onmousewheel Atom = 0x5300c
245 Onoffline Atom = 0x53c09
246 Ononline Atom = 0x54508
247 Onpagehide Atom = 0x54d0a
248 Onpageshow Atom = 0x5670a
249 Onpaste Atom = 0x57307
250 Onpause Atom = 0x58e07
251 Onplay Atom = 0x59806
252 Onplaying Atom = 0x59809
253 Onpopstate Atom = 0x5a10a
254 Onprogress Atom = 0x5ab0a
255 Onratechange Atom = 0x5c80c
256 Onrejectionhandled Atom = 0x5d412
257 Onreset Atom = 0x5e607
258 Onresize Atom = 0x5ed08
259 Onscroll Atom = 0x5fc08
260 Onsecuritypolicyviolation Atom = 0x60419
261 Onseeked Atom = 0x62508
262 Onseeking Atom = 0x62d09
263 Onselect Atom = 0x63608
264 Onshow Atom = 0x64006
265 Onsort Atom = 0x64b06
266 Onstalled Atom = 0x65509
267 Onstorage Atom = 0x65e09
268 Onsubmit Atom = 0x66708
269 Onsuspend Atom = 0x67709
270 Ontimeupdate Atom = 0x11a0c
271 Ontoggle Atom = 0x68008
272 Onunhandledrejection Atom = 0x68814
273 Onunload Atom = 0x6a708
274 Onvolumechange Atom = 0x6af0e
275 Onwaiting Atom = 0x6bd09
276 Onwheel Atom = 0x6c607
277 Open Atom = 0x55f04
278 Optgroup Atom = 0xe008
279 Optimum Atom = 0x6cd07
280 Option Atom = 0x6dd06
281 Output Atom = 0x51106
282 P Atom = 0xc01
283 Param Atom = 0xc05
284 Pattern Atom = 0x4f07
285 Picture Atom = 0x9707
286 Ping Atom = 0xe704
287 Placeholder Atom = 0xfb0b
288 Plaintext Atom = 0x19e09
289 Playsinline Atom = 0x10a0b
290 Poster Atom = 0x2b706
291 Pre Atom = 0x46403
292 Preload Atom = 0x47a07
293 Progress Atom = 0x5ad08
294 Prompt Atom = 0x52a06
295 Public Atom = 0x57a06
296 Q Atom = 0x7701
297 Radiogroup Atom = 0x30a
298 Readonly Atom = 0x34b08
299 Referrerpolicy Atom = 0x3c50e
300 Rel Atom = 0x47b03
301 Required Atom = 0x23408
302 Reversed Atom = 0x9c08
303 Rows Atom = 0x3a04
304 Rowspan Atom = 0x3a07
305 Rp Atom = 0x22402
306 Rt Atom = 0x17b02
307 Ruby Atom = 0xac04
308 S Atom = 0x2501
309 Samp Atom = 0x4c04
310 Sandbox Atom = 0xf307
311 Scope Atom = 0x67105
312 Scoped Atom = 0x67106
313 Script Atom = 0x20006
314 Seamless Atom = 0x36508
315 Section Atom = 0x5bd07
316 Select Atom = 0x63806
317 Selected Atom = 0x63808
318 Shape Atom = 0x1d505
319 Size Atom = 0x5f104
320 Sizes Atom = 0x5f105
321 Slot Atom = 0x1df04
322 Small Atom = 0x1ee05
323 Sortable Atom = 0x64d08
324 Sorted Atom = 0x32b06
325 Source Atom = 0x36c06
326 Spacer Atom = 0x42b06
327 Span Atom = 0x3d04
328 Spellcheck Atom = 0x4680a
329 Src Atom = 0x5b403
330 Srcdoc Atom = 0x5b406
331 Srclang Atom = 0x5f507
332 Srcset Atom = 0x6f306
333 Start Atom = 0x3ee05
334 Step Atom = 0x57704
335 Strike Atom = 0x7a06
336 Strong Atom = 0x31506
337 Style Atom = 0x6f905
338 Sub Atom = 0x66903
339 Summary Atom = 0x6fe07
340 Sup Atom = 0x70503
341 Svg Atom = 0x70803
342 System Atom = 0x70b06
343 Tabindex Atom = 0x4b208
344 Table Atom = 0x58905
345 Target Atom = 0x2ac06
346 Tbody Atom = 0x2705
347 Td Atom = 0x5e02
348 Template Atom = 0x70e08
349 Textarea Atom = 0x34608
350 Tfoot Atom = 0xb205
351 Th Atom = 0x13f02
352 Thead Atom = 0x32405
353 Time Atom = 0x11c04
354 Title Atom = 0xca05
355 Tr Atom = 0x7402
356 Track Atom = 0x17c05
357 Translate Atom = 0x1a609
358 Tt Atom = 0x5102
359 Type Atom = 0x8104
360 Typemustmatch Atom = 0x2780d
361 U Atom = 0xb01
362 Ul Atom = 0x6602
363 Updateviacache Atom = 0x1200e
364 Usemap Atom = 0x59206
365 Value Atom = 0x1505
366 Var Atom = 0x15603
367 Video Atom = 0x2d905
368 Wbr Atom = 0x57003
369 Width Atom = 0x64505
370 Workertype Atom = 0x7160a
371 Wrap Atom = 0x72004
372 Xmp Atom = 0xf903
373)
374
375const hash0 = 0x81cdf10e
376
377const maxAtomLen = 25
378
379var table = [1 << 9]Atom{
380 0x1: 0x8e0a, // mediagroup
381 0x2: 0x2cc04, // lang
382 0x4: 0x2c09, // accesskey
383 0x5: 0x5708, // frameset
384 0x7: 0x63608, // onselect
385 0x8: 0x70b06, // system
386 0xa: 0x64505, // width
387 0xc: 0x2710b, // formenctype
388 0xd: 0x10102, // ol
389 0xe: 0x38b0b, // oncuechange
390 0x10: 0x13403, // bdo
391 0x11: 0xcf05, // audio
392 0x12: 0x18309, // draggable
393 0x14: 0x2d905, // video
394 0x15: 0x29902, // mn
395 0x16: 0x37b04, // menu
396 0x17: 0x2b706, // poster
397 0x19: 0xb306, // footer
398 0x1a: 0x29006, // method
399 0x1b: 0x2a008, // datetime
400 0x1c: 0x17607, // onabort
401 0x1d: 0x1200e, // updateviacache
402 0x1e: 0xb905, // async
403 0x1f: 0x49106, // onload
404 0x21: 0xd308, // oncancel
405 0x22: 0x62508, // onseeked
406 0x23: 0x2ea05, // image
407 0x24: 0x5d412, // onrejectionhandled
408 0x26: 0x15d04, // link
409 0x27: 0x51106, // output
410 0x28: 0x32504, // head
411 0x29: 0x4f30c, // onmouseleave
412 0x2a: 0x57307, // onpaste
413 0x2b: 0x59809, // onplaying
414 0x2c: 0x1b407, // colspan
415 0x2f: 0x1af05, // color
416 0x30: 0x5f104, // size
417 0x31: 0x2d00a, // http-equiv
418 0x33: 0x601, // i
419 0x34: 0x54d0a, // onpagehide
420 0x35: 0x68814, // onunhandledrejection
421 0x37: 0x41e07, // onerror
422 0x3a: 0x11508, // basefont
423 0x3f: 0x1303, // nav
424 0x40: 0x18004, // kind
425 0x41: 0x34b08, // readonly
426 0x42: 0x2f006, // mglyph
427 0x44: 0x11102, // li
428 0x46: 0x2bd06, // hidden
429 0x47: 0x70803, // svg
430 0x48: 0x57704, // step
431 0x49: 0x22709, // integrity
432 0x4a: 0x57a06, // public
433 0x4c: 0x19703, // col
434 0x4d: 0x1680a, // blockquote
435 0x4e: 0x34302, // h5
436 0x50: 0x5ad08, // progress
437 0x51: 0x5f105, // sizes
438 0x52: 0x33902, // h4
439 0x56: 0x32405, // thead
440 0x57: 0x7e07, // keytype
441 0x58: 0x5ab0a, // onprogress
442 0x59: 0x43f09, // inputmode
443 0x5a: 0x3a509, // ondragend
444 0x5d: 0x39605, // oncut
445 0x5e: 0x42b06, // spacer
446 0x5f: 0x19708, // colgroup
447 0x62: 0x14e02, // is
448 0x65: 0xb902, // as
449 0x66: 0x53c09, // onoffline
450 0x67: 0x32b06, // sorted
451 0x69: 0x48110, // onlanguagechange
452 0x6c: 0x4310c, // onhashchange
453 0x6d: 0xa604, // name
454 0x6e: 0xb205, // tfoot
455 0x6f: 0x55504, // desc
456 0x70: 0x33103, // max
457 0x72: 0x1da06, // coords
458 0x73: 0x2f502, // h3
459 0x74: 0x6e10e, // onbeforeunload
460 0x75: 0x3a04, // rows
461 0x76: 0x63806, // select
462 0x77: 0xa805, // meter
463 0x78: 0x37f06, // itemid
464 0x79: 0x5300c, // onmousewheel
465 0x7a: 0x5b406, // srcdoc
466 0x7d: 0x17c05, // track
467 0x7f: 0x30708, // itemtype
468 0x82: 0x6302, // mo
469 0x83: 0x40f08, // onchange
470 0x84: 0x32507, // headers
471 0x85: 0x5c80c, // onratechange
472 0x86: 0x60419, // onsecuritypolicyviolation
473 0x88: 0x49908, // datalist
474 0x89: 0x4dc0b, // onmousedown
475 0x8a: 0x1df04, // slot
476 0x8b: 0x4a410, // onloadedmetadata
477 0x8c: 0x1a06, // accept
478 0x8d: 0x25006, // object
479 0x91: 0x6af0e, // onvolumechange
480 0x92: 0x2107, // charset
481 0x93: 0x25e13, // onautocompleteerror
482 0x94: 0x6913, // allowpaymentrequest
483 0x95: 0x2804, // body
484 0x96: 0xc407, // default
485 0x97: 0x63808, // selected
486 0x98: 0x20604, // face
487 0x99: 0x1d505, // shape
488 0x9b: 0x68008, // ontoggle
489 0x9e: 0x64702, // dt
490 0x9f: 0x6d904, // mark
491 0xa1: 0xb01, // u
492 0xa4: 0x6a708, // onunload
493 0xa5: 0xde04, // loop
494 0xa6: 0x14d08, // disabled
495 0xaa: 0x41707, // onended
496 0xab: 0x6d30a, // malignmark
497 0xad: 0x67709, // onsuspend
498 0xae: 0x34505, // mtext
499 0xaf: 0x64b06, // onsort
500 0xb0: 0x55908, // itemprop
501 0xb3: 0x66d09, // itemscope
502 0xb4: 0x15c05, // blink
503 0xb6: 0x3a506, // ondrag
504 0xb7: 0x6602, // ul
505 0xb8: 0x25604, // form
506 0xb9: 0xf307, // sandbox
507 0xba: 0x5705, // frame
508 0xbb: 0x1505, // value
509 0xbc: 0x65e09, // onstorage
510 0xc0: 0x17b02, // rt
511 0xc2: 0x202, // br
512 0xc3: 0x20e08, // fieldset
513 0xc4: 0x2780d, // typemustmatch
514 0xc5: 0x6108, // nomodule
515 0xc6: 0x4007, // noembed
516 0xc7: 0x69a0d, // onbeforeprint
517 0xc8: 0x17206, // button
518 0xc9: 0x2dd07, // onclick
519 0xca: 0x6fe07, // summary
520 0xcd: 0xac04, // ruby
521 0xce: 0x5b905, // class
522 0xcf: 0x3e80b, // ondragstart
523 0xd0: 0x21907, // caption
524 0xd4: 0x850e, // allowusermedia
525 0xd5: 0x4c30b, // onloadstart
526 0xd9: 0x15403, // div
527 0xda: 0x49d04, // list
528 0xdb: 0x32204, // math
529 0xdc: 0x43f05, // input
530 0xdf: 0x3de0a, // ondragover
531 0xe0: 0x2c602, // h2
532 0xe2: 0x19e09, // plaintext
533 0xe4: 0x4e70c, // onmouseenter
534 0xe7: 0x46d07, // checked
535 0xe8: 0x46403, // pre
536 0xea: 0x35308, // multiple
537 0xeb: 0x16103, // bdi
538 0xec: 0x33109, // maxlength
539 0xed: 0x7701, // q
540 0xee: 0x61b0a, // onauxclick
541 0xf0: 0x57003, // wbr
542 0xf2: 0x11504, // base
543 0xf3: 0x6dd06, // option
544 0xf5: 0x40710, // ondurationchange
545 0xf7: 0x5508, // noframes
546 0xf9: 0x3f908, // dropzone
547 0xfb: 0x67105, // scope
548 0xfc: 0x9c08, // reversed
549 0xfd: 0x3ae0b, // ondragenter
550 0xfe: 0x3ee05, // start
551 0xff: 0xf903, // xmp
552 0x100: 0x5f507, // srclang
553 0x101: 0x2ef03, // img
554 0x104: 0x101, // b
555 0x105: 0x23c03, // for
556 0x106: 0xc105, // aside
557 0x107: 0x43d07, // oninput
558 0x108: 0x34a04, // area
559 0x109: 0x28c0a, // formmethod
560 0x10a: 0x72004, // wrap
561 0x10c: 0x22402, // rp
562 0x10d: 0x45f0a, // onkeypress
563 0x10e: 0x5102, // tt
564 0x110: 0x33b02, // mi
565 0x111: 0x35b05, // muted
566 0x112: 0xb003, // alt
567 0x113: 0x19004, // code
568 0x114: 0x4202, // em
569 0x115: 0x3b90a, // ondragexit
570 0x117: 0x3d04, // span
571 0x119: 0x30f08, // manifest
572 0x11a: 0x37b08, // menuitem
573 0x11b: 0x57f07, // content
574 0x11d: 0x6bd09, // onwaiting
575 0x11f: 0x4ba09, // onloadend
576 0x121: 0x3720d, // oncontextmenu
577 0x123: 0x5c206, // onblur
578 0x124: 0x3f007, // article
579 0x125: 0xa303, // dir
580 0x126: 0xe704, // ping
581 0x127: 0x23408, // required
582 0x128: 0x44909, // oninvalid
583 0x129: 0x6d405, // align
584 0x12b: 0x57e04, // icon
585 0x12c: 0x64902, // h6
586 0x12d: 0x1b404, // cols
587 0x12e: 0x2160a, // figcaption
588 0x12f: 0x45209, // onkeydown
589 0x130: 0x66708, // onsubmit
590 0x131: 0x13609, // oncanplay
591 0x132: 0x70503, // sup
592 0x133: 0xc01, // p
593 0x135: 0x3fe09, // onemptied
594 0x136: 0x38506, // oncopy
595 0x137: 0x55804, // cite
596 0x138: 0x39b0a, // ondblclick
597 0x13a: 0x4ff0b, // onmousemove
598 0x13c: 0x66903, // sub
599 0x13d: 0x47b03, // rel
600 0x13e: 0xe008, // optgroup
601 0x142: 0x3a07, // rowspan
602 0x143: 0x36c06, // source
603 0x144: 0x1fe08, // noscript
604 0x145: 0x55f04, // open
605 0x146: 0x1ec03, // ins
606 0x147: 0x23c0d, // foreignObject
607 0x148: 0x5a10a, // onpopstate
608 0x14a: 0x27507, // enctype
609 0x14b: 0x25e0e, // onautocomplete
610 0x14c: 0x34608, // textarea
611 0x14e: 0x2600c, // autocomplete
612 0x14f: 0x14002, // hr
613 0x150: 0x1ce08, // controls
614 0x151: 0xc302, // id
615 0x153: 0x21e0c, // onafterprint
616 0x155: 0x2490d, // foreignobject
617 0x156: 0x31b07, // marquee
618 0x157: 0x58e07, // onpause
619 0x158: 0x5e202, // dl
620 0x159: 0x12c06, // height
621 0x15a: 0x33b03, // min
622 0x15b: 0xa307, // dirname
623 0x15c: 0x1a609, // translate
624 0x15d: 0x13004, // html
625 0x15e: 0x33b09, // minlength
626 0x15f: 0x47a07, // preload
627 0x160: 0x70e08, // template
628 0x161: 0x3d30b, // ondragleave
629 0x164: 0x5b403, // src
630 0x165: 0x31506, // strong
631 0x167: 0x4c04, // samp
632 0x168: 0x6ed07, // address
633 0x169: 0x54508, // ononline
634 0x16b: 0xfb0b, // placeholder
635 0x16c: 0x2ac06, // target
636 0x16d: 0x1ee05, // small
637 0x16e: 0x6c607, // onwheel
638 0x16f: 0x1b90a, // annotation
639 0x170: 0x4680a, // spellcheck
640 0x171: 0x4607, // details
641 0x172: 0xbd06, // canvas
642 0x173: 0xeb09, // autofocus
643 0x174: 0xc05, // param
644 0x176: 0x45708, // download
645 0x177: 0x44603, // del
646 0x178: 0x36007, // onclose
647 0x179: 0x16003, // kbd
648 0x17a: 0x30106, // applet
649 0x17b: 0x2c804, // href
650 0x17c: 0x5ed08, // onresize
651 0x17e: 0x4910c, // onloadeddata
652 0x180: 0x7402, // tr
653 0x181: 0x2a80a, // formtarget
654 0x182: 0xca05, // title
655 0x183: 0x6f905, // style
656 0x184: 0x7a06, // strike
657 0x185: 0x59206, // usemap
658 0x186: 0x2e406, // iframe
659 0x187: 0x1004, // main
660 0x189: 0x9707, // picture
661 0x18c: 0x2fe05, // ismap
662 0x18e: 0x49904, // data
663 0x18f: 0xda05, // label
664 0x191: 0x3c50e, // referrerpolicy
665 0x192: 0x13f02, // th
666 0x194: 0x52a06, // prompt
667 0x195: 0x5bd07, // section
668 0x197: 0x6cd07, // optimum
669 0x198: 0x2c304, // high
670 0x199: 0x14502, // h1
671 0x19a: 0x65509, // onstalled
672 0x19b: 0x15603, // var
673 0x19c: 0x11c04, // time
674 0x19e: 0x67002, // ms
675 0x19f: 0x32506, // header
676 0x1a0: 0x4ce09, // onmessage
677 0x1a1: 0x56205, // nonce
678 0x1a2: 0x2560a, // formaction
679 0x1a3: 0x20806, // center
680 0x1a4: 0x3704, // nobr
681 0x1a5: 0x58905, // table
682 0x1a6: 0x49d07, // listing
683 0x1a7: 0x18a06, // legend
684 0x1a9: 0x28309, // challenge
685 0x1aa: 0x23006, // figure
686 0x1ab: 0x8e05, // media
687 0x1ae: 0x8104, // type
688 0x1af: 0x11904, // font
689 0x1b0: 0x4ce0e, // onmessageerror
690 0x1b1: 0x36508, // seamless
691 0x1b2: 0x5f03, // dfn
692 0x1b3: 0x19205, // defer
693 0x1b4: 0x6b03, // low
694 0x1b5: 0x62d09, // onseeking
695 0x1b6: 0x5170b, // onmouseover
696 0x1b7: 0x29a0a, // novalidate
697 0x1b8: 0x7160a, // workertype
698 0x1ba: 0x3c107, // itemref
699 0x1bd: 0x1, // a
700 0x1be: 0x30003, // map
701 0x1bf: 0x11a0c, // ontimeupdate
702 0x1c0: 0x14707, // bgsound
703 0x1c1: 0x3206, // keygen
704 0x1c2: 0x2705, // tbody
705 0x1c5: 0x64006, // onshow
706 0x1c7: 0x2501, // s
707 0x1c8: 0x4f07, // pattern
708 0x1cc: 0x13610, // oncanplaythrough
709 0x1ce: 0x2bf02, // dd
710 0x1cf: 0x6f306, // srcset
711 0x1d0: 0x15903, // big
712 0x1d2: 0x64d08, // sortable
713 0x1d3: 0x47407, // onkeyup
714 0x1d5: 0x59806, // onplay
715 0x1d7: 0x4ac04, // meta
716 0x1d8: 0x3f706, // ondrop
717 0x1da: 0x5fc08, // onscroll
718 0x1db: 0x1e30b, // crossorigin
719 0x1dc: 0x5670a, // onpageshow
720 0x1dd: 0x4, // abbr
721 0x1de: 0x5e02, // td
722 0x1df: 0x57f0f, // contenteditable
723 0x1e0: 0x25a06, // action
724 0x1e1: 0x10a0b, // playsinline
725 0x1e2: 0x42507, // onfocus
726 0x1e3: 0x2c808, // hreflang
727 0x1e5: 0x50a0a, // onmouseout
728 0x1e6: 0x5e607, // onreset
729 0x1e7: 0x10608, // autoplay
730 0x1ea: 0x67106, // scoped
731 0x1ec: 0x30a, // radiogroup
732 0x1ee: 0x3740b, // contextmenu
733 0x1ef: 0x52209, // onmouseup
734 0x1f1: 0x2b206, // hgroup
735 0x1f2: 0x1f00f, // allowfullscreen
736 0x1f3: 0x4b208, // tabindex
737 0x1f6: 0x2f707, // isindex
738 0x1f7: 0x1a0e, // accept-charset
739 0x1f8: 0x2960e, // formnovalidate
740 0x1fb: 0x1b90e, // annotation-xml
741 0x1fc: 0x4205, // embed
742 0x1fd: 0x20006, // script
743 0x1fe: 0x16206, // dialog
744 0x1ff: 0x1c707, // command
745}
746
747const atomText = "abbradiogrouparamainavalueaccept-charsetbodyaccesskeygenobro" +
748 "wspanoembedetailsampatternoframesetdfnomoduleallowpaymentreq" +
749 "uestrikeytypeallowusermediagroupictureversedirnameterubyaltf" +
750 "ooterasyncanvasidefaultitleaudioncancelabelooptgroupingautof" +
751 "ocusandboxmplaceholderautoplaysinlinebasefontimeupdateviacac" +
752 "heightmlbdoncanplaythrough1bgsoundisabledivarbigblinkbdialog" +
753 "blockquotebuttonabortrackindraggablegendcodefercolgrouplaint" +
754 "extranslatecolorcolspannotation-xmlcommandcontrolshapecoords" +
755 "lotcrossoriginsmallowfullscreenoscriptfacenterfieldsetfigcap" +
756 "tionafterprintegrityfigurequiredforeignObjectforeignobjectfo" +
757 "rmactionautocompleteerrorformenctypemustmatchallengeformmeth" +
758 "odformnovalidatetimeformtargethgrouposterhiddenhigh2hreflang" +
759 "http-equivideonclickiframeimageimglyph3isindexismappletitemt" +
760 "ypemanifestrongmarqueematheadersortedmaxlength4minlength5mte" +
761 "xtareadonlymultiplemutedoncloseamlessourceoncontextmenuitemi" +
762 "doncopyoncuechangeoncutondblclickondragendondragenterondrage" +
763 "xitemreferrerpolicyondragleaveondragoverondragstarticleondro" +
764 "pzonemptiedondurationchangeonendedonerroronfocuspaceronhashc" +
765 "hangeoninputmodeloninvalidonkeydownloadonkeypresspellchecked" +
766 "onkeyupreloadonlanguagechangeonloadeddatalistingonloadedmeta" +
767 "databindexonloadendonloadstartonmessageerroronmousedownonmou" +
768 "seenteronmouseleaveonmousemoveonmouseoutputonmouseoveronmous" +
769 "eupromptonmousewheelonofflineononlineonpagehidescitempropeno" +
770 "nceonpageshowbronpastepublicontenteditableonpausemaponplayin" +
771 "gonpopstateonprogressrcdoclassectionbluronratechangeonreject" +
772 "ionhandledonresetonresizesrclangonscrollonsecuritypolicyviol" +
773 "ationauxclickonseekedonseekingonselectedonshowidth6onsortabl" +
774 "eonstalledonstorageonsubmitemscopedonsuspendontoggleonunhand" +
775 "ledrejectionbeforeprintonunloadonvolumechangeonwaitingonwhee" +
776 "loptimumalignmarkoptionbeforeunloaddressrcsetstylesummarysup" +
777 "svgsystemplateworkertypewrap"
diff --git a/vendor/golang.org/x/net/html/const.go b/vendor/golang.org/x/net/html/const.go
deleted file mode 100644
index b37e621..0000000
--- a/vendor/golang.org/x/net/html/const.go
+++ /dev/null
@@ -1,104 +0,0 @@
1// Copyright 2011 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package html
6
7// Section 12.2.3.2 of the HTML5 specification says "The following elements
8// have varying levels of special parsing rules".
9// https://html.spec.whatwg.org/multipage/syntax.html#the-stack-of-open-elements
10var isSpecialElementMap = map[string]bool{
11 "address": true,
12 "applet": true,
13 "area": true,
14 "article": true,
15 "aside": true,
16 "base": true,
17 "basefont": true,
18 "bgsound": true,
19 "blockquote": true,
20 "body": true,
21 "br": true,
22 "button": true,
23 "caption": true,
24 "center": true,
25 "col": true,
26 "colgroup": true,
27 "dd": true,
28 "details": true,
29 "dir": true,
30 "div": true,
31 "dl": true,
32 "dt": true,
33 "embed": true,
34 "fieldset": true,
35 "figcaption": true,
36 "figure": true,
37 "footer": true,
38 "form": true,
39 "frame": true,
40 "frameset": true,
41 "h1": true,
42 "h2": true,
43 "h3": true,
44 "h4": true,
45 "h5": true,
46 "h6": true,
47 "head": true,
48 "header": true,
49 "hgroup": true,
50 "hr": true,
51 "html": true,
52 "iframe": true,
53 "img": true,
54 "input": true,
55 "isindex": true, // The 'isindex' element has been removed, but keep it for backwards compatibility.
56 "keygen": true,
57 "li": true,
58 "link": true,
59 "listing": true,
60 "main": true,
61 "marquee": true,
62 "menu": true,
63 "meta": true,
64 "nav": true,
65 "noembed": true,
66 "noframes": true,
67 "noscript": true,
68 "object": true,
69 "ol": true,
70 "p": true,
71 "param": true,
72 "plaintext": true,
73 "pre": true,
74 "script": true,
75 "section": true,
76 "select": true,
77 "source": true,
78 "style": true,
79 "summary": true,
80 "table": true,
81 "tbody": true,
82 "td": true,
83 "template": true,
84 "textarea": true,
85 "tfoot": true,
86 "th": true,
87 "thead": true,
88 "title": true,
89 "tr": true,
90 "track": true,
91 "ul": true,
92 "wbr": true,
93 "xmp": true,
94}
95
96func isSpecialElement(element *Node) bool {
97 switch element.Namespace {
98 case "", "html":
99 return isSpecialElementMap[element.Data]
100 case "svg":
101 return element.Data == "foreignObject"
102 }
103 return false
104}
diff --git a/vendor/golang.org/x/net/html/doc.go b/vendor/golang.org/x/net/html/doc.go
deleted file mode 100644
index 94f4968..0000000
--- a/vendor/golang.org/x/net/html/doc.go
+++ /dev/null
@@ -1,106 +0,0 @@
1// Copyright 2010 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5/*
6Package html implements an HTML5-compliant tokenizer and parser.
7
8Tokenization is done by creating a Tokenizer for an io.Reader r. It is the
9caller's responsibility to ensure that r provides UTF-8 encoded HTML.
10
11 z := html.NewTokenizer(r)
12
13Given a Tokenizer z, the HTML is tokenized by repeatedly calling z.Next(),
14which parses the next token and returns its type, or an error:
15
16 for {
17 tt := z.Next()
18 if tt == html.ErrorToken {
19 // ...
20 return ...
21 }
22 // Process the current token.
23 }
24
25There are two APIs for retrieving the current token. The high-level API is to
26call Token; the low-level API is to call Text or TagName / TagAttr. Both APIs
27allow optionally calling Raw after Next but before Token, Text, TagName, or
28TagAttr. In EBNF notation, the valid call sequence per token is:
29
30 Next {Raw} [ Token | Text | TagName {TagAttr} ]
31
32Token returns an independent data structure that completely describes a token.
33Entities (such as "&lt;") are unescaped, tag names and attribute keys are
34lower-cased, and attributes are collected into a []Attribute. For example:
35
36 for {
37 if z.Next() == html.ErrorToken {
38 // Returning io.EOF indicates success.
39 return z.Err()
40 }
41 emitToken(z.Token())
42 }
43
44The low-level API performs fewer allocations and copies, but the contents of
45the []byte values returned by Text, TagName and TagAttr may change on the next
46call to Next. For example, to extract an HTML page's anchor text:
47
48 depth := 0
49 for {
50 tt := z.Next()
51 switch tt {
52 case ErrorToken:
53 return z.Err()
54 case TextToken:
55 if depth > 0 {
56 // emitBytes should copy the []byte it receives,
57 // if it doesn't process it immediately.
58 emitBytes(z.Text())
59 }
60 case StartTagToken, EndTagToken:
61 tn, _ := z.TagName()
62 if len(tn) == 1 && tn[0] == 'a' {
63 if tt == StartTagToken {
64 depth++
65 } else {
66 depth--
67 }
68 }
69 }
70 }
71
72Parsing is done by calling Parse with an io.Reader, which returns the root of
73the parse tree (the document element) as a *Node. It is the caller's
74responsibility to ensure that the Reader provides UTF-8 encoded HTML. For
75example, to process each anchor node in depth-first order:
76
77 doc, err := html.Parse(r)
78 if err != nil {
79 // ...
80 }
81 var f func(*html.Node)
82 f = func(n *html.Node) {
83 if n.Type == html.ElementNode && n.Data == "a" {
84 // Do something with n...
85 }
86 for c := n.FirstChild; c != nil; c = c.NextSibling {
87 f(c)
88 }
89 }
90 f(doc)
91
92The relevant specifications include:
93https://html.spec.whatwg.org/multipage/syntax.html and
94https://html.spec.whatwg.org/multipage/syntax.html#tokenization
95*/
96package html // import "golang.org/x/net/html"
97
98// The tokenization algorithm implemented by this package is not a line-by-line
99// transliteration of the relatively verbose state-machine in the WHATWG
100// specification. A more direct approach is used instead, where the program
101// counter implies the state, such as whether it is tokenizing a tag or a text
102// node. Specification compliance is verified by checking expected and actual
103// outputs over a test suite rather than aiming for algorithmic fidelity.
104
105// TODO(nigeltao): Does a DOM API belong in this package or a separate one?
106// TODO(nigeltao): How does parsing interact with a JavaScript engine?
diff --git a/vendor/golang.org/x/net/html/doctype.go b/vendor/golang.org/x/net/html/doctype.go
deleted file mode 100644
index c484e5a..0000000
--- a/vendor/golang.org/x/net/html/doctype.go
+++ /dev/null
@@ -1,156 +0,0 @@
1// Copyright 2011 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package html
6
7import (
8 "strings"
9)
10
11// parseDoctype parses the data from a DoctypeToken into a name,
12// public identifier, and system identifier. It returns a Node whose Type
13// is DoctypeNode, whose Data is the name, and which has attributes
14// named "system" and "public" for the two identifiers if they were present.
15// quirks is whether the document should be parsed in "quirks mode".
16func parseDoctype(s string) (n *Node, quirks bool) {
17 n = &Node{Type: DoctypeNode}
18
19 // Find the name.
20 space := strings.IndexAny(s, whitespace)
21 if space == -1 {
22 space = len(s)
23 }
24 n.Data = s[:space]
25 // The comparison to "html" is case-sensitive.
26 if n.Data != "html" {
27 quirks = true
28 }
29 n.Data = strings.ToLower(n.Data)
30 s = strings.TrimLeft(s[space:], whitespace)
31
32 if len(s) < 6 {
33 // It can't start with "PUBLIC" or "SYSTEM".
34 // Ignore the rest of the string.
35 return n, quirks || s != ""
36 }
37
38 key := strings.ToLower(s[:6])
39 s = s[6:]
40 for key == "public" || key == "system" {
41 s = strings.TrimLeft(s, whitespace)
42 if s == "" {
43 break
44 }
45 quote := s[0]
46 if quote != '"' && quote != '\'' {
47 break
48 }
49 s = s[1:]
50 q := strings.IndexRune(s, rune(quote))
51 var id string
52 if q == -1 {
53 id = s
54 s = ""
55 } else {
56 id = s[:q]
57 s = s[q+1:]
58 }
59 n.Attr = append(n.Attr, Attribute{Key: key, Val: id})
60 if key == "public" {
61 key = "system"
62 } else {
63 key = ""
64 }
65 }
66
67 if key != "" || s != "" {
68 quirks = true
69 } else if len(n.Attr) > 0 {
70 if n.Attr[0].Key == "public" {
71 public := strings.ToLower(n.Attr[0].Val)
72 switch public {
73 case "-//w3o//dtd w3 html strict 3.0//en//", "-/w3d/dtd html 4.0 transitional/en", "html":
74 quirks = true
75 default:
76 for _, q := range quirkyIDs {
77 if strings.HasPrefix(public, q) {
78 quirks = true
79 break
80 }
81 }
82 }
83 // The following two public IDs only cause quirks mode if there is no system ID.
84 if len(n.Attr) == 1 && (strings.HasPrefix(public, "-//w3c//dtd html 4.01 frameset//") ||
85 strings.HasPrefix(public, "-//w3c//dtd html 4.01 transitional//")) {
86 quirks = true
87 }
88 }
89 if lastAttr := n.Attr[len(n.Attr)-1]; lastAttr.Key == "system" &&
90 strings.ToLower(lastAttr.Val) == "http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd" {
91 quirks = true
92 }
93 }
94
95 return n, quirks
96}
97
98// quirkyIDs is a list of public doctype identifiers that cause a document
99// to be interpreted in quirks mode. The identifiers should be in lower case.
100var quirkyIDs = []string{
101 "+//silmaril//dtd html pro v0r11 19970101//",
102 "-//advasoft ltd//dtd html 3.0 aswedit + extensions//",
103 "-//as//dtd html 3.0 aswedit + extensions//",
104 "-//ietf//dtd html 2.0 level 1//",
105 "-//ietf//dtd html 2.0 level 2//",
106 "-//ietf//dtd html 2.0 strict level 1//",
107 "-//ietf//dtd html 2.0 strict level 2//",
108 "-//ietf//dtd html 2.0 strict//",
109 "-//ietf//dtd html 2.0//",
110 "-//ietf//dtd html 2.1e//",
111 "-//ietf//dtd html 3.0//",
112 "-//ietf//dtd html 3.2 final//",
113 "-//ietf//dtd html 3.2//",
114 "-//ietf//dtd html 3//",
115 "-//ietf//dtd html level 0//",
116 "-//ietf//dtd html level 1//",
117 "-//ietf//dtd html level 2//",
118 "-//ietf//dtd html level 3//",
119 "-//ietf//dtd html strict level 0//",
120 "-//ietf//dtd html strict level 1//",
121 "-//ietf//dtd html strict level 2//",
122 "-//ietf//dtd html strict level 3//",
123 "-//ietf//dtd html strict//",
124 "-//ietf//dtd html//",
125 "-//metrius//dtd metrius presentational//",
126 "-//microsoft//dtd internet explorer 2.0 html strict//",
127 "-//microsoft//dtd internet explorer 2.0 html//",
128 "-//microsoft//dtd internet explorer 2.0 tables//",
129 "-//microsoft//dtd internet explorer 3.0 html strict//",
130 "-//microsoft//dtd internet explorer 3.0 html//",
131 "-//microsoft//dtd internet explorer 3.0 tables//",
132 "-//netscape comm. corp.//dtd html//",
133 "-//netscape comm. corp.//dtd strict html//",
134 "-//o'reilly and associates//dtd html 2.0//",
135 "-//o'reilly and associates//dtd html extended 1.0//",
136 "-//o'reilly and associates//dtd html extended relaxed 1.0//",
137 "-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//",
138 "-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//",
139 "-//spyglass//dtd html 2.0 extended//",
140 "-//sq//dtd html 2.0 hotmetal + extensions//",
141 "-//sun microsystems corp.//dtd hotjava html//",
142 "-//sun microsystems corp.//dtd hotjava strict html//",
143 "-//w3c//dtd html 3 1995-03-24//",
144 "-//w3c//dtd html 3.2 draft//",
145 "-//w3c//dtd html 3.2 final//",
146 "-//w3c//dtd html 3.2//",
147 "-//w3c//dtd html 3.2s draft//",
148 "-//w3c//dtd html 4.0 frameset//",
149 "-//w3c//dtd html 4.0 transitional//",
150 "-//w3c//dtd html experimental 19960712//",
151 "-//w3c//dtd html experimental 970421//",
152 "-//w3c//dtd w3 html//",
153 "-//w3o//dtd w3 html 3.0//",
154 "-//webtechs//dtd mozilla html 2.0//",
155 "-//webtechs//dtd mozilla html//",
156}
diff --git a/vendor/golang.org/x/net/html/entity.go b/vendor/golang.org/x/net/html/entity.go
deleted file mode 100644
index a50c04c..0000000
--- a/vendor/golang.org/x/net/html/entity.go
+++ /dev/null
@@ -1,2253 +0,0 @@
1// Copyright 2010 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package html
6
7// All entities that do not end with ';' are 6 or fewer bytes long.
8const longestEntityWithoutSemicolon = 6
9
10// entity is a map from HTML entity names to their values. The semicolon matters:
11// https://html.spec.whatwg.org/multipage/syntax.html#named-character-references
12// lists both "amp" and "amp;" as two separate entries.
13//
14// Note that the HTML5 list is larger than the HTML4 list at
15// http://www.w3.org/TR/html4/sgml/entities.html
16var entity = map[string]rune{
17 "AElig;": '\U000000C6',
18 "AMP;": '\U00000026',
19 "Aacute;": '\U000000C1',
20 "Abreve;": '\U00000102',
21 "Acirc;": '\U000000C2',
22 "Acy;": '\U00000410',
23 "Afr;": '\U0001D504',
24 "Agrave;": '\U000000C0',
25 "Alpha;": '\U00000391',
26 "Amacr;": '\U00000100',
27 "And;": '\U00002A53',
28 "Aogon;": '\U00000104',
29 "Aopf;": '\U0001D538',
30 "ApplyFunction;": '\U00002061',
31 "Aring;": '\U000000C5',
32 "Ascr;": '\U0001D49C',
33 "Assign;": '\U00002254',
34 "Atilde;": '\U000000C3',
35 "Auml;": '\U000000C4',
36 "Backslash;": '\U00002216',
37 "Barv;": '\U00002AE7',
38 "Barwed;": '\U00002306',
39 "Bcy;": '\U00000411',
40 "Because;": '\U00002235',
41 "Bernoullis;": '\U0000212C',
42 "Beta;": '\U00000392',
43 "Bfr;": '\U0001D505',
44 "Bopf;": '\U0001D539',
45 "Breve;": '\U000002D8',
46 "Bscr;": '\U0000212C',
47 "Bumpeq;": '\U0000224E',
48 "CHcy;": '\U00000427',
49 "COPY;": '\U000000A9',
50 "Cacute;": '\U00000106',
51 "Cap;": '\U000022D2',
52 "CapitalDifferentialD;": '\U00002145',
53 "Cayleys;": '\U0000212D',
54 "Ccaron;": '\U0000010C',
55 "Ccedil;": '\U000000C7',
56 "Ccirc;": '\U00000108',
57 "Cconint;": '\U00002230',
58 "Cdot;": '\U0000010A',
59 "Cedilla;": '\U000000B8',
60 "CenterDot;": '\U000000B7',
61 "Cfr;": '\U0000212D',
62 "Chi;": '\U000003A7',
63 "CircleDot;": '\U00002299',
64 "CircleMinus;": '\U00002296',
65 "CirclePlus;": '\U00002295',
66 "CircleTimes;": '\U00002297',
67 "ClockwiseContourIntegral;": '\U00002232',
68 "CloseCurlyDoubleQuote;": '\U0000201D',
69 "CloseCurlyQuote;": '\U00002019',
70 "Colon;": '\U00002237',
71 "Colone;": '\U00002A74',
72 "Congruent;": '\U00002261',
73 "Conint;": '\U0000222F',
74 "ContourIntegral;": '\U0000222E',
75 "Copf;": '\U00002102',
76 "Coproduct;": '\U00002210',
77 "CounterClockwiseContourIntegral;": '\U00002233',
78 "Cross;": '\U00002A2F',
79 "Cscr;": '\U0001D49E',
80 "Cup;": '\U000022D3',
81 "CupCap;": '\U0000224D',
82 "DD;": '\U00002145',
83 "DDotrahd;": '\U00002911',
84 "DJcy;": '\U00000402',
85 "DScy;": '\U00000405',
86 "DZcy;": '\U0000040F',
87 "Dagger;": '\U00002021',
88 "Darr;": '\U000021A1',
89 "Dashv;": '\U00002AE4',
90 "Dcaron;": '\U0000010E',
91 "Dcy;": '\U00000414',
92 "Del;": '\U00002207',
93 "Delta;": '\U00000394',
94 "Dfr;": '\U0001D507',
95 "DiacriticalAcute;": '\U000000B4',
96 "DiacriticalDot;": '\U000002D9',
97 "DiacriticalDoubleAcute;": '\U000002DD',
98 "DiacriticalGrave;": '\U00000060',
99 "DiacriticalTilde;": '\U000002DC',
100 "Diamond;": '\U000022C4',
101 "DifferentialD;": '\U00002146',
102 "Dopf;": '\U0001D53B',
103 "Dot;": '\U000000A8',
104 "DotDot;": '\U000020DC',
105 "DotEqual;": '\U00002250',
106 "DoubleContourIntegral;": '\U0000222F',
107 "DoubleDot;": '\U000000A8',
108 "DoubleDownArrow;": '\U000021D3',
109 "DoubleLeftArrow;": '\U000021D0',
110 "DoubleLeftRightArrow;": '\U000021D4',
111 "DoubleLeftTee;": '\U00002AE4',
112 "DoubleLongLeftArrow;": '\U000027F8',
113 "DoubleLongLeftRightArrow;": '\U000027FA',
114 "DoubleLongRightArrow;": '\U000027F9',
115 "DoubleRightArrow;": '\U000021D2',
116 "DoubleRightTee;": '\U000022A8',
117 "DoubleUpArrow;": '\U000021D1',
118 "DoubleUpDownArrow;": '\U000021D5',
119 "DoubleVerticalBar;": '\U00002225',
120 "DownArrow;": '\U00002193',
121 "DownArrowBar;": '\U00002913',
122 "DownArrowUpArrow;": '\U000021F5',
123 "DownBreve;": '\U00000311',
124 "DownLeftRightVector;": '\U00002950',
125 "DownLeftTeeVector;": '\U0000295E',
126 "DownLeftVector;": '\U000021BD',
127 "DownLeftVectorBar;": '\U00002956',
128 "DownRightTeeVector;": '\U0000295F',
129 "DownRightVector;": '\U000021C1',
130 "DownRightVectorBar;": '\U00002957',
131 "DownTee;": '\U000022A4',
132 "DownTeeArrow;": '\U000021A7',
133 "Downarrow;": '\U000021D3',
134 "Dscr;": '\U0001D49F',
135 "Dstrok;": '\U00000110',
136 "ENG;": '\U0000014A',
137 "ETH;": '\U000000D0',
138 "Eacute;": '\U000000C9',
139 "Ecaron;": '\U0000011A',
140 "Ecirc;": '\U000000CA',
141 "Ecy;": '\U0000042D',
142 "Edot;": '\U00000116',
143 "Efr;": '\U0001D508',
144 "Egrave;": '\U000000C8',
145 "Element;": '\U00002208',
146 "Emacr;": '\U00000112',
147 "EmptySmallSquare;": '\U000025FB',
148 "EmptyVerySmallSquare;": '\U000025AB',
149 "Eogon;": '\U00000118',
150 "Eopf;": '\U0001D53C',
151 "Epsilon;": '\U00000395',
152 "Equal;": '\U00002A75',
153 "EqualTilde;": '\U00002242',
154 "Equilibrium;": '\U000021CC',
155 "Escr;": '\U00002130',
156 "Esim;": '\U00002A73',
157 "Eta;": '\U00000397',
158 "Euml;": '\U000000CB',
159 "Exists;": '\U00002203',
160 "ExponentialE;": '\U00002147',
161 "Fcy;": '\U00000424',
162 "Ffr;": '\U0001D509',
163 "FilledSmallSquare;": '\U000025FC',
164 "FilledVerySmallSquare;": '\U000025AA',
165 "Fopf;": '\U0001D53D',
166 "ForAll;": '\U00002200',
167 "Fouriertrf;": '\U00002131',
168 "Fscr;": '\U00002131',
169 "GJcy;": '\U00000403',
170 "GT;": '\U0000003E',
171 "Gamma;": '\U00000393',
172 "Gammad;": '\U000003DC',
173 "Gbreve;": '\U0000011E',
174 "Gcedil;": '\U00000122',
175 "Gcirc;": '\U0000011C',
176 "Gcy;": '\U00000413',
177 "Gdot;": '\U00000120',
178 "Gfr;": '\U0001D50A',
179 "Gg;": '\U000022D9',
180 "Gopf;": '\U0001D53E',
181 "GreaterEqual;": '\U00002265',
182 "GreaterEqualLess;": '\U000022DB',
183 "GreaterFullEqual;": '\U00002267',
184 "GreaterGreater;": '\U00002AA2',
185 "GreaterLess;": '\U00002277',
186 "GreaterSlantEqual;": '\U00002A7E',
187 "GreaterTilde;": '\U00002273',
188 "Gscr;": '\U0001D4A2',
189 "Gt;": '\U0000226B',
190 "HARDcy;": '\U0000042A',
191 "Hacek;": '\U000002C7',
192 "Hat;": '\U0000005E',
193 "Hcirc;": '\U00000124',
194 "Hfr;": '\U0000210C',
195 "HilbertSpace;": '\U0000210B',
196 "Hopf;": '\U0000210D',
197 "HorizontalLine;": '\U00002500',
198 "Hscr;": '\U0000210B',
199 "Hstrok;": '\U00000126',
200 "HumpDownHump;": '\U0000224E',
201 "HumpEqual;": '\U0000224F',
202 "IEcy;": '\U00000415',
203 "IJlig;": '\U00000132',
204 "IOcy;": '\U00000401',
205 "Iacute;": '\U000000CD',
206 "Icirc;": '\U000000CE',
207 "Icy;": '\U00000418',
208 "Idot;": '\U00000130',
209 "Ifr;": '\U00002111',
210 "Igrave;": '\U000000CC',
211 "Im;": '\U00002111',
212 "Imacr;": '\U0000012A',
213 "ImaginaryI;": '\U00002148',
214 "Implies;": '\U000021D2',
215 "Int;": '\U0000222C',
216 "Integral;": '\U0000222B',
217 "Intersection;": '\U000022C2',
218 "InvisibleComma;": '\U00002063',
219 "InvisibleTimes;": '\U00002062',
220 "Iogon;": '\U0000012E',
221 "Iopf;": '\U0001D540',
222 "Iota;": '\U00000399',
223 "Iscr;": '\U00002110',
224 "Itilde;": '\U00000128',
225 "Iukcy;": '\U00000406',
226 "Iuml;": '\U000000CF',
227 "Jcirc;": '\U00000134',
228 "Jcy;": '\U00000419',
229 "Jfr;": '\U0001D50D',
230 "Jopf;": '\U0001D541',
231 "Jscr;": '\U0001D4A5',
232 "Jsercy;": '\U00000408',
233 "Jukcy;": '\U00000404',
234 "KHcy;": '\U00000425',
235 "KJcy;": '\U0000040C',
236 "Kappa;": '\U0000039A',
237 "Kcedil;": '\U00000136',
238 "Kcy;": '\U0000041A',
239 "Kfr;": '\U0001D50E',
240 "Kopf;": '\U0001D542',
241 "Kscr;": '\U0001D4A6',
242 "LJcy;": '\U00000409',
243 "LT;": '\U0000003C',
244 "Lacute;": '\U00000139',
245 "Lambda;": '\U0000039B',
246 "Lang;": '\U000027EA',
247 "Laplacetrf;": '\U00002112',
248 "Larr;": '\U0000219E',
249 "Lcaron;": '\U0000013D',
250 "Lcedil;": '\U0000013B',
251 "Lcy;": '\U0000041B',
252 "LeftAngleBracket;": '\U000027E8',
253 "LeftArrow;": '\U00002190',
254 "LeftArrowBar;": '\U000021E4',
255 "LeftArrowRightArrow;": '\U000021C6',
256 "LeftCeiling;": '\U00002308',
257 "LeftDoubleBracket;": '\U000027E6',
258 "LeftDownTeeVector;": '\U00002961',
259 "LeftDownVector;": '\U000021C3',
260 "LeftDownVectorBar;": '\U00002959',
261 "LeftFloor;": '\U0000230A',
262 "LeftRightArrow;": '\U00002194',
263 "LeftRightVector;": '\U0000294E',
264 "LeftTee;": '\U000022A3',
265 "LeftTeeArrow;": '\U000021A4',
266 "LeftTeeVector;": '\U0000295A',
267 "LeftTriangle;": '\U000022B2',
268 "LeftTriangleBar;": '\U000029CF',
269 "LeftTriangleEqual;": '\U000022B4',
270 "LeftUpDownVector;": '\U00002951',
271 "LeftUpTeeVector;": '\U00002960',
272 "LeftUpVector;": '\U000021BF',
273 "LeftUpVectorBar;": '\U00002958',
274 "LeftVector;": '\U000021BC',
275 "LeftVectorBar;": '\U00002952',
276 "Leftarrow;": '\U000021D0',
277 "Leftrightarrow;": '\U000021D4',
278 "LessEqualGreater;": '\U000022DA',
279 "LessFullEqual;": '\U00002266',
280 "LessGreater;": '\U00002276',
281 "LessLess;": '\U00002AA1',
282 "LessSlantEqual;": '\U00002A7D',
283 "LessTilde;": '\U00002272',
284 "Lfr;": '\U0001D50F',
285 "Ll;": '\U000022D8',
286 "Lleftarrow;": '\U000021DA',
287 "Lmidot;": '\U0000013F',
288 "LongLeftArrow;": '\U000027F5',
289 "LongLeftRightArrow;": '\U000027F7',
290 "LongRightArrow;": '\U000027F6',
291 "Longleftarrow;": '\U000027F8',
292 "Longleftrightarrow;": '\U000027FA',
293 "Longrightarrow;": '\U000027F9',
294 "Lopf;": '\U0001D543',
295 "LowerLeftArrow;": '\U00002199',
296 "LowerRightArrow;": '\U00002198',
297 "Lscr;": '\U00002112',
298 "Lsh;": '\U000021B0',
299 "Lstrok;": '\U00000141',
300 "Lt;": '\U0000226A',
301 "Map;": '\U00002905',
302 "Mcy;": '\U0000041C',
303 "MediumSpace;": '\U0000205F',
304 "Mellintrf;": '\U00002133',
305 "Mfr;": '\U0001D510',
306 "MinusPlus;": '\U00002213',
307 "Mopf;": '\U0001D544',
308 "Mscr;": '\U00002133',
309 "Mu;": '\U0000039C',
310 "NJcy;": '\U0000040A',
311 "Nacute;": '\U00000143',
312 "Ncaron;": '\U00000147',
313 "Ncedil;": '\U00000145',
314 "Ncy;": '\U0000041D',
315 "NegativeMediumSpace;": '\U0000200B',
316 "NegativeThickSpace;": '\U0000200B',
317 "NegativeThinSpace;": '\U0000200B',
318 "NegativeVeryThinSpace;": '\U0000200B',
319 "NestedGreaterGreater;": '\U0000226B',
320 "NestedLessLess;": '\U0000226A',
321 "NewLine;": '\U0000000A',
322 "Nfr;": '\U0001D511',
323 "NoBreak;": '\U00002060',
324 "NonBreakingSpace;": '\U000000A0',
325 "Nopf;": '\U00002115',
326 "Not;": '\U00002AEC',
327 "NotCongruent;": '\U00002262',
328 "NotCupCap;": '\U0000226D',
329 "NotDoubleVerticalBar;": '\U00002226',
330 "NotElement;": '\U00002209',
331 "NotEqual;": '\U00002260',
332 "NotExists;": '\U00002204',
333 "NotGreater;": '\U0000226F',
334 "NotGreaterEqual;": '\U00002271',
335 "NotGreaterLess;": '\U00002279',
336 "NotGreaterTilde;": '\U00002275',
337 "NotLeftTriangle;": '\U000022EA',
338 "NotLeftTriangleEqual;": '\U000022EC',
339 "NotLess;": '\U0000226E',
340 "NotLessEqual;": '\U00002270',
341 "NotLessGreater;": '\U00002278',
342 "NotLessTilde;": '\U00002274',
343 "NotPrecedes;": '\U00002280',
344 "NotPrecedesSlantEqual;": '\U000022E0',
345 "NotReverseElement;": '\U0000220C',
346 "NotRightTriangle;": '\U000022EB',
347 "NotRightTriangleEqual;": '\U000022ED',
348 "NotSquareSubsetEqual;": '\U000022E2',
349 "NotSquareSupersetEqual;": '\U000022E3',
350 "NotSubsetEqual;": '\U00002288',
351 "NotSucceeds;": '\U00002281',
352 "NotSucceedsSlantEqual;": '\U000022E1',
353 "NotSupersetEqual;": '\U00002289',
354 "NotTilde;": '\U00002241',
355 "NotTildeEqual;": '\U00002244',
356 "NotTildeFullEqual;": '\U00002247',
357 "NotTildeTilde;": '\U00002249',
358 "NotVerticalBar;": '\U00002224',
359 "Nscr;": '\U0001D4A9',
360 "Ntilde;": '\U000000D1',
361 "Nu;": '\U0000039D',
362 "OElig;": '\U00000152',
363 "Oacute;": '\U000000D3',
364 "Ocirc;": '\U000000D4',
365 "Ocy;": '\U0000041E',
366 "Odblac;": '\U00000150',
367 "Ofr;": '\U0001D512',
368 "Ograve;": '\U000000D2',
369 "Omacr;": '\U0000014C',
370 "Omega;": '\U000003A9',
371 "Omicron;": '\U0000039F',
372 "Oopf;": '\U0001D546',
373 "OpenCurlyDoubleQuote;": '\U0000201C',
374 "OpenCurlyQuote;": '\U00002018',
375 "Or;": '\U00002A54',
376 "Oscr;": '\U0001D4AA',
377 "Oslash;": '\U000000D8',
378 "Otilde;": '\U000000D5',
379 "Otimes;": '\U00002A37',
380 "Ouml;": '\U000000D6',
381 "OverBar;": '\U0000203E',
382 "OverBrace;": '\U000023DE',
383 "OverBracket;": '\U000023B4',
384 "OverParenthesis;": '\U000023DC',
385 "PartialD;": '\U00002202',
386 "Pcy;": '\U0000041F',
387 "Pfr;": '\U0001D513',
388 "Phi;": '\U000003A6',
389 "Pi;": '\U000003A0',
390 "PlusMinus;": '\U000000B1',
391 "Poincareplane;": '\U0000210C',
392 "Popf;": '\U00002119',
393 "Pr;": '\U00002ABB',
394 "Precedes;": '\U0000227A',
395 "PrecedesEqual;": '\U00002AAF',
396 "PrecedesSlantEqual;": '\U0000227C',
397 "PrecedesTilde;": '\U0000227E',
398 "Prime;": '\U00002033',
399 "Product;": '\U0000220F',
400 "Proportion;": '\U00002237',
401 "Proportional;": '\U0000221D',
402 "Pscr;": '\U0001D4AB',
403 "Psi;": '\U000003A8',
404 "QUOT;": '\U00000022',
405 "Qfr;": '\U0001D514',
406 "Qopf;": '\U0000211A',
407 "Qscr;": '\U0001D4AC',
408 "RBarr;": '\U00002910',
409 "REG;": '\U000000AE',
410 "Racute;": '\U00000154',
411 "Rang;": '\U000027EB',
412 "Rarr;": '\U000021A0',
413 "Rarrtl;": '\U00002916',
414 "Rcaron;": '\U00000158',
415 "Rcedil;": '\U00000156',
416 "Rcy;": '\U00000420',
417 "Re;": '\U0000211C',
418 "ReverseElement;": '\U0000220B',
419 "ReverseEquilibrium;": '\U000021CB',
420 "ReverseUpEquilibrium;": '\U0000296F',
421 "Rfr;": '\U0000211C',
422 "Rho;": '\U000003A1',
423 "RightAngleBracket;": '\U000027E9',
424 "RightArrow;": '\U00002192',
425 "RightArrowBar;": '\U000021E5',
426 "RightArrowLeftArrow;": '\U000021C4',
427 "RightCeiling;": '\U00002309',
428 "RightDoubleBracket;": '\U000027E7',
429 "RightDownTeeVector;": '\U0000295D',
430 "RightDownVector;": '\U000021C2',
431 "RightDownVectorBar;": '\U00002955',
432 "RightFloor;": '\U0000230B',
433 "RightTee;": '\U000022A2',
434 "RightTeeArrow;": '\U000021A6',
435 "RightTeeVector;": '\U0000295B',
436 "RightTriangle;": '\U000022B3',
437 "RightTriangleBar;": '\U000029D0',
438 "RightTriangleEqual;": '\U000022B5',
439 "RightUpDownVector;": '\U0000294F',
440 "RightUpTeeVector;": '\U0000295C',
441 "RightUpVector;": '\U000021BE',
442 "RightUpVectorBar;": '\U00002954',
443 "RightVector;": '\U000021C0',
444 "RightVectorBar;": '\U00002953',
445 "Rightarrow;": '\U000021D2',
446 "Ropf;": '\U0000211D',
447 "RoundImplies;": '\U00002970',
448 "Rrightarrow;": '\U000021DB',
449 "Rscr;": '\U0000211B',
450 "Rsh;": '\U000021B1',
451 "RuleDelayed;": '\U000029F4',
452 "SHCHcy;": '\U00000429',
453 "SHcy;": '\U00000428',
454 "SOFTcy;": '\U0000042C',
455 "Sacute;": '\U0000015A',
456 "Sc;": '\U00002ABC',
457 "Scaron;": '\U00000160',
458 "Scedil;": '\U0000015E',
459 "Scirc;": '\U0000015C',
460 "Scy;": '\U00000421',
461 "Sfr;": '\U0001D516',
462 "ShortDownArrow;": '\U00002193',
463 "ShortLeftArrow;": '\U00002190',
464 "ShortRightArrow;": '\U00002192',
465 "ShortUpArrow;": '\U00002191',
466 "Sigma;": '\U000003A3',
467 "SmallCircle;": '\U00002218',
468 "Sopf;": '\U0001D54A',
469 "Sqrt;": '\U0000221A',
470 "Square;": '\U000025A1',
471 "SquareIntersection;": '\U00002293',
472 "SquareSubset;": '\U0000228F',
473 "SquareSubsetEqual;": '\U00002291',
474 "SquareSuperset;": '\U00002290',
475 "SquareSupersetEqual;": '\U00002292',
476 "SquareUnion;": '\U00002294',
477 "Sscr;": '\U0001D4AE',
478 "Star;": '\U000022C6',
479 "Sub;": '\U000022D0',
480 "Subset;": '\U000022D0',
481 "SubsetEqual;": '\U00002286',
482 "Succeeds;": '\U0000227B',
483 "SucceedsEqual;": '\U00002AB0',
484 "SucceedsSlantEqual;": '\U0000227D',
485 "SucceedsTilde;": '\U0000227F',
486 "SuchThat;": '\U0000220B',
487 "Sum;": '\U00002211',
488 "Sup;": '\U000022D1',
489 "Superset;": '\U00002283',
490 "SupersetEqual;": '\U00002287',
491 "Supset;": '\U000022D1',
492 "THORN;": '\U000000DE',
493 "TRADE;": '\U00002122',
494 "TSHcy;": '\U0000040B',
495 "TScy;": '\U00000426',
496 "Tab;": '\U00000009',
497 "Tau;": '\U000003A4',
498 "Tcaron;": '\U00000164',
499 "Tcedil;": '\U00000162',
500 "Tcy;": '\U00000422',
501 "Tfr;": '\U0001D517',
502 "Therefore;": '\U00002234',
503 "Theta;": '\U00000398',
504 "ThinSpace;": '\U00002009',
505 "Tilde;": '\U0000223C',
506 "TildeEqual;": '\U00002243',
507 "TildeFullEqual;": '\U00002245',
508 "TildeTilde;": '\U00002248',
509 "Topf;": '\U0001D54B',
510 "TripleDot;": '\U000020DB',
511 "Tscr;": '\U0001D4AF',
512 "Tstrok;": '\U00000166',
513 "Uacute;": '\U000000DA',
514 "Uarr;": '\U0000219F',
515 "Uarrocir;": '\U00002949',
516 "Ubrcy;": '\U0000040E',
517 "Ubreve;": '\U0000016C',
518 "Ucirc;": '\U000000DB',
519 "Ucy;": '\U00000423',
520 "Udblac;": '\U00000170',
521 "Ufr;": '\U0001D518',
522 "Ugrave;": '\U000000D9',
523 "Umacr;": '\U0000016A',
524 "UnderBar;": '\U0000005F',
525 "UnderBrace;": '\U000023DF',
526 "UnderBracket;": '\U000023B5',
527 "UnderParenthesis;": '\U000023DD',
528 "Union;": '\U000022C3',
529 "UnionPlus;": '\U0000228E',
530 "Uogon;": '\U00000172',
531 "Uopf;": '\U0001D54C',
532 "UpArrow;": '\U00002191',
533 "UpArrowBar;": '\U00002912',
534 "UpArrowDownArrow;": '\U000021C5',
535 "UpDownArrow;": '\U00002195',
536 "UpEquilibrium;": '\U0000296E',
537 "UpTee;": '\U000022A5',
538 "UpTeeArrow;": '\U000021A5',
539 "Uparrow;": '\U000021D1',
540 "Updownarrow;": '\U000021D5',
541 "UpperLeftArrow;": '\U00002196',
542 "UpperRightArrow;": '\U00002197',
543 "Upsi;": '\U000003D2',
544 "Upsilon;": '\U000003A5',
545 "Uring;": '\U0000016E',
546 "Uscr;": '\U0001D4B0',
547 "Utilde;": '\U00000168',
548 "Uuml;": '\U000000DC',
549 "VDash;": '\U000022AB',
550 "Vbar;": '\U00002AEB',
551 "Vcy;": '\U00000412',
552 "Vdash;": '\U000022A9',
553 "Vdashl;": '\U00002AE6',
554 "Vee;": '\U000022C1',
555 "Verbar;": '\U00002016',
556 "Vert;": '\U00002016',
557 "VerticalBar;": '\U00002223',
558 "VerticalLine;": '\U0000007C',
559 "VerticalSeparator;": '\U00002758',
560 "VerticalTilde;": '\U00002240',
561 "VeryThinSpace;": '\U0000200A',
562 "Vfr;": '\U0001D519',
563 "Vopf;": '\U0001D54D',
564 "Vscr;": '\U0001D4B1',
565 "Vvdash;": '\U000022AA',
566 "Wcirc;": '\U00000174',
567 "Wedge;": '\U000022C0',
568 "Wfr;": '\U0001D51A',
569 "Wopf;": '\U0001D54E',
570 "Wscr;": '\U0001D4B2',
571 "Xfr;": '\U0001D51B',
572 "Xi;": '\U0000039E',
573 "Xopf;": '\U0001D54F',
574 "Xscr;": '\U0001D4B3',
575 "YAcy;": '\U0000042F',
576 "YIcy;": '\U00000407',
577 "YUcy;": '\U0000042E',
578 "Yacute;": '\U000000DD',
579 "Ycirc;": '\U00000176',
580 "Ycy;": '\U0000042B',
581 "Yfr;": '\U0001D51C',
582 "Yopf;": '\U0001D550',
583 "Yscr;": '\U0001D4B4',
584 "Yuml;": '\U00000178',
585 "ZHcy;": '\U00000416',
586 "Zacute;": '\U00000179',
587 "Zcaron;": '\U0000017D',
588 "Zcy;": '\U00000417',
589 "Zdot;": '\U0000017B',
590 "ZeroWidthSpace;": '\U0000200B',
591 "Zeta;": '\U00000396',
592 "Zfr;": '\U00002128',
593 "Zopf;": '\U00002124',
594 "Zscr;": '\U0001D4B5',
595 "aacute;": '\U000000E1',
596 "abreve;": '\U00000103',
597 "ac;": '\U0000223E',
598 "acd;": '\U0000223F',
599 "acirc;": '\U000000E2',
600 "acute;": '\U000000B4',
601 "acy;": '\U00000430',
602 "aelig;": '\U000000E6',
603 "af;": '\U00002061',
604 "afr;": '\U0001D51E',
605 "agrave;": '\U000000E0',
606 "alefsym;": '\U00002135',
607 "aleph;": '\U00002135',
608 "alpha;": '\U000003B1',
609 "amacr;": '\U00000101',
610 "amalg;": '\U00002A3F',
611 "amp;": '\U00000026',
612 "and;": '\U00002227',
613 "andand;": '\U00002A55',
614 "andd;": '\U00002A5C',
615 "andslope;": '\U00002A58',
616 "andv;": '\U00002A5A',
617 "ang;": '\U00002220',
618 "ange;": '\U000029A4',
619 "angle;": '\U00002220',
620 "angmsd;": '\U00002221',
621 "angmsdaa;": '\U000029A8',
622 "angmsdab;": '\U000029A9',
623 "angmsdac;": '\U000029AA',
624 "angmsdad;": '\U000029AB',
625 "angmsdae;": '\U000029AC',
626 "angmsdaf;": '\U000029AD',
627 "angmsdag;": '\U000029AE',
628 "angmsdah;": '\U000029AF',
629 "angrt;": '\U0000221F',
630 "angrtvb;": '\U000022BE',
631 "angrtvbd;": '\U0000299D',
632 "angsph;": '\U00002222',
633 "angst;": '\U000000C5',
634 "angzarr;": '\U0000237C',
635 "aogon;": '\U00000105',
636 "aopf;": '\U0001D552',
637 "ap;": '\U00002248',
638 "apE;": '\U00002A70',
639 "apacir;": '\U00002A6F',
640 "ape;": '\U0000224A',
641 "apid;": '\U0000224B',
642 "apos;": '\U00000027',
643 "approx;": '\U00002248',
644 "approxeq;": '\U0000224A',
645 "aring;": '\U000000E5',
646 "ascr;": '\U0001D4B6',
647 "ast;": '\U0000002A',
648 "asymp;": '\U00002248',
649 "asympeq;": '\U0000224D',
650 "atilde;": '\U000000E3',
651 "auml;": '\U000000E4',
652 "awconint;": '\U00002233',
653 "awint;": '\U00002A11',
654 "bNot;": '\U00002AED',
655 "backcong;": '\U0000224C',
656 "backepsilon;": '\U000003F6',
657 "backprime;": '\U00002035',
658 "backsim;": '\U0000223D',
659 "backsimeq;": '\U000022CD',
660 "barvee;": '\U000022BD',
661 "barwed;": '\U00002305',
662 "barwedge;": '\U00002305',
663 "bbrk;": '\U000023B5',
664 "bbrktbrk;": '\U000023B6',
665 "bcong;": '\U0000224C',
666 "bcy;": '\U00000431',
667 "bdquo;": '\U0000201E',
668 "becaus;": '\U00002235',
669 "because;": '\U00002235',
670 "bemptyv;": '\U000029B0',
671 "bepsi;": '\U000003F6',
672 "bernou;": '\U0000212C',
673 "beta;": '\U000003B2',
674 "beth;": '\U00002136',
675 "between;": '\U0000226C',
676 "bfr;": '\U0001D51F',
677 "bigcap;": '\U000022C2',
678 "bigcirc;": '\U000025EF',
679 "bigcup;": '\U000022C3',
680 "bigodot;": '\U00002A00',
681 "bigoplus;": '\U00002A01',
682 "bigotimes;": '\U00002A02',
683 "bigsqcup;": '\U00002A06',
684 "bigstar;": '\U00002605',
685 "bigtriangledown;": '\U000025BD',
686 "bigtriangleup;": '\U000025B3',
687 "biguplus;": '\U00002A04',
688 "bigvee;": '\U000022C1',
689 "bigwedge;": '\U000022C0',
690 "bkarow;": '\U0000290D',
691 "blacklozenge;": '\U000029EB',
692 "blacksquare;": '\U000025AA',
693 "blacktriangle;": '\U000025B4',
694 "blacktriangledown;": '\U000025BE',
695 "blacktriangleleft;": '\U000025C2',
696 "blacktriangleright;": '\U000025B8',
697 "blank;": '\U00002423',
698 "blk12;": '\U00002592',
699 "blk14;": '\U00002591',
700 "blk34;": '\U00002593',
701 "block;": '\U00002588',
702 "bnot;": '\U00002310',
703 "bopf;": '\U0001D553',
704 "bot;": '\U000022A5',
705 "bottom;": '\U000022A5',
706 "bowtie;": '\U000022C8',
707 "boxDL;": '\U00002557',
708 "boxDR;": '\U00002554',
709 "boxDl;": '\U00002556',
710 "boxDr;": '\U00002553',
711 "boxH;": '\U00002550',
712 "boxHD;": '\U00002566',
713 "boxHU;": '\U00002569',
714 "boxHd;": '\U00002564',
715 "boxHu;": '\U00002567',
716 "boxUL;": '\U0000255D',
717 "boxUR;": '\U0000255A',
718 "boxUl;": '\U0000255C',
719 "boxUr;": '\U00002559',
720 "boxV;": '\U00002551',
721 "boxVH;": '\U0000256C',
722 "boxVL;": '\U00002563',
723 "boxVR;": '\U00002560',
724 "boxVh;": '\U0000256B',
725 "boxVl;": '\U00002562',
726 "boxVr;": '\U0000255F',
727 "boxbox;": '\U000029C9',
728 "boxdL;": '\U00002555',
729 "boxdR;": '\U00002552',
730 "boxdl;": '\U00002510',
731 "boxdr;": '\U0000250C',
732 "boxh;": '\U00002500',
733 "boxhD;": '\U00002565',
734 "boxhU;": '\U00002568',
735 "boxhd;": '\U0000252C',
736 "boxhu;": '\U00002534',
737 "boxminus;": '\U0000229F',
738 "boxplus;": '\U0000229E',
739 "boxtimes;": '\U000022A0',
740 "boxuL;": '\U0000255B',
741 "boxuR;": '\U00002558',
742 "boxul;": '\U00002518',
743 "boxur;": '\U00002514',
744 "boxv;": '\U00002502',
745 "boxvH;": '\U0000256A',
746 "boxvL;": '\U00002561',
747 "boxvR;": '\U0000255E',
748 "boxvh;": '\U0000253C',
749 "boxvl;": '\U00002524',
750 "boxvr;": '\U0000251C',
751 "bprime;": '\U00002035',
752 "breve;": '\U000002D8',
753 "brvbar;": '\U000000A6',
754 "bscr;": '\U0001D4B7',
755 "bsemi;": '\U0000204F',
756 "bsim;": '\U0000223D',
757 "bsime;": '\U000022CD',
758 "bsol;": '\U0000005C',
759 "bsolb;": '\U000029C5',
760 "bsolhsub;": '\U000027C8',
761 "bull;": '\U00002022',
762 "bullet;": '\U00002022',
763 "bump;": '\U0000224E',
764 "bumpE;": '\U00002AAE',
765 "bumpe;": '\U0000224F',
766 "bumpeq;": '\U0000224F',
767 "cacute;": '\U00000107',
768 "cap;": '\U00002229',
769 "capand;": '\U00002A44',
770 "capbrcup;": '\U00002A49',
771 "capcap;": '\U00002A4B',
772 "capcup;": '\U00002A47',
773 "capdot;": '\U00002A40',
774 "caret;": '\U00002041',
775 "caron;": '\U000002C7',
776 "ccaps;": '\U00002A4D',
777 "ccaron;": '\U0000010D',
778 "ccedil;": '\U000000E7',
779 "ccirc;": '\U00000109',
780 "ccups;": '\U00002A4C',
781 "ccupssm;": '\U00002A50',
782 "cdot;": '\U0000010B',
783 "cedil;": '\U000000B8',
784 "cemptyv;": '\U000029B2',
785 "cent;": '\U000000A2',
786 "centerdot;": '\U000000B7',
787 "cfr;": '\U0001D520',
788 "chcy;": '\U00000447',
789 "check;": '\U00002713',
790 "checkmark;": '\U00002713',
791 "chi;": '\U000003C7',
792 "cir;": '\U000025CB',
793 "cirE;": '\U000029C3',
794 "circ;": '\U000002C6',
795 "circeq;": '\U00002257',
796 "circlearrowleft;": '\U000021BA',
797 "circlearrowright;": '\U000021BB',
798 "circledR;": '\U000000AE',
799 "circledS;": '\U000024C8',
800 "circledast;": '\U0000229B',
801 "circledcirc;": '\U0000229A',
802 "circleddash;": '\U0000229D',
803 "cire;": '\U00002257',
804 "cirfnint;": '\U00002A10',
805 "cirmid;": '\U00002AEF',
806 "cirscir;": '\U000029C2',
807 "clubs;": '\U00002663',
808 "clubsuit;": '\U00002663',
809 "colon;": '\U0000003A',
810 "colone;": '\U00002254',
811 "coloneq;": '\U00002254',
812 "comma;": '\U0000002C',
813 "commat;": '\U00000040',
814 "comp;": '\U00002201',
815 "compfn;": '\U00002218',
816 "complement;": '\U00002201',
817 "complexes;": '\U00002102',
818 "cong;": '\U00002245',
819 "congdot;": '\U00002A6D',
820 "conint;": '\U0000222E',
821 "copf;": '\U0001D554',
822 "coprod;": '\U00002210',
823 "copy;": '\U000000A9',
824 "copysr;": '\U00002117',
825 "crarr;": '\U000021B5',
826 "cross;": '\U00002717',
827 "cscr;": '\U0001D4B8',
828 "csub;": '\U00002ACF',
829 "csube;": '\U00002AD1',
830 "csup;": '\U00002AD0',
831 "csupe;": '\U00002AD2',
832 "ctdot;": '\U000022EF',
833 "cudarrl;": '\U00002938',
834 "cudarrr;": '\U00002935',
835 "cuepr;": '\U000022DE',
836 "cuesc;": '\U000022DF',
837 "cularr;": '\U000021B6',
838 "cularrp;": '\U0000293D',
839 "cup;": '\U0000222A',
840 "cupbrcap;": '\U00002A48',
841 "cupcap;": '\U00002A46',
842 "cupcup;": '\U00002A4A',
843 "cupdot;": '\U0000228D',
844 "cupor;": '\U00002A45',
845 "curarr;": '\U000021B7',
846 "curarrm;": '\U0000293C',
847 "curlyeqprec;": '\U000022DE',
848 "curlyeqsucc;": '\U000022DF',
849 "curlyvee;": '\U000022CE',
850 "curlywedge;": '\U000022CF',
851 "curren;": '\U000000A4',
852 "curvearrowleft;": '\U000021B6',
853 "curvearrowright;": '\U000021B7',
854 "cuvee;": '\U000022CE',
855 "cuwed;": '\U000022CF',
856 "cwconint;": '\U00002232',
857 "cwint;": '\U00002231',
858 "cylcty;": '\U0000232D',
859 "dArr;": '\U000021D3',
860 "dHar;": '\U00002965',
861 "dagger;": '\U00002020',
862 "daleth;": '\U00002138',
863 "darr;": '\U00002193',
864 "dash;": '\U00002010',
865 "dashv;": '\U000022A3',
866 "dbkarow;": '\U0000290F',
867 "dblac;": '\U000002DD',
868 "dcaron;": '\U0000010F',
869 "dcy;": '\U00000434',
870 "dd;": '\U00002146',
871 "ddagger;": '\U00002021',
872 "ddarr;": '\U000021CA',
873 "ddotseq;": '\U00002A77',
874 "deg;": '\U000000B0',
875 "delta;": '\U000003B4',
876 "demptyv;": '\U000029B1',
877 "dfisht;": '\U0000297F',
878 "dfr;": '\U0001D521',
879 "dharl;": '\U000021C3',
880 "dharr;": '\U000021C2',
881 "diam;": '\U000022C4',
882 "diamond;": '\U000022C4',
883 "diamondsuit;": '\U00002666',
884 "diams;": '\U00002666',
885 "die;": '\U000000A8',
886 "digamma;": '\U000003DD',
887 "disin;": '\U000022F2',
888 "div;": '\U000000F7',
889 "divide;": '\U000000F7',
890 "divideontimes;": '\U000022C7',
891 "divonx;": '\U000022C7',
892 "djcy;": '\U00000452',
893 "dlcorn;": '\U0000231E',
894 "dlcrop;": '\U0000230D',
895 "dollar;": '\U00000024',
896 "dopf;": '\U0001D555',
897 "dot;": '\U000002D9',
898 "doteq;": '\U00002250',
899 "doteqdot;": '\U00002251',
900 "dotminus;": '\U00002238',
901 "dotplus;": '\U00002214',
902 "dotsquare;": '\U000022A1',
903 "doublebarwedge;": '\U00002306',
904 "downarrow;": '\U00002193',
905 "downdownarrows;": '\U000021CA',
906 "downharpoonleft;": '\U000021C3',
907 "downharpoonright;": '\U000021C2',
908 "drbkarow;": '\U00002910',
909 "drcorn;": '\U0000231F',
910 "drcrop;": '\U0000230C',
911 "dscr;": '\U0001D4B9',
912 "dscy;": '\U00000455',
913 "dsol;": '\U000029F6',
914 "dstrok;": '\U00000111',
915 "dtdot;": '\U000022F1',
916 "dtri;": '\U000025BF',
917 "dtrif;": '\U000025BE',
918 "duarr;": '\U000021F5',
919 "duhar;": '\U0000296F',
920 "dwangle;": '\U000029A6',
921 "dzcy;": '\U0000045F',
922 "dzigrarr;": '\U000027FF',
923 "eDDot;": '\U00002A77',
924 "eDot;": '\U00002251',
925 "eacute;": '\U000000E9',
926 "easter;": '\U00002A6E',
927 "ecaron;": '\U0000011B',
928 "ecir;": '\U00002256',
929 "ecirc;": '\U000000EA',
930 "ecolon;": '\U00002255',
931 "ecy;": '\U0000044D',
932 "edot;": '\U00000117',
933 "ee;": '\U00002147',
934 "efDot;": '\U00002252',
935 "efr;": '\U0001D522',
936 "eg;": '\U00002A9A',
937 "egrave;": '\U000000E8',
938 "egs;": '\U00002A96',
939 "egsdot;": '\U00002A98',
940 "el;": '\U00002A99',
941 "elinters;": '\U000023E7',
942 "ell;": '\U00002113',
943 "els;": '\U00002A95',
944 "elsdot;": '\U00002A97',
945 "emacr;": '\U00000113',
946 "empty;": '\U00002205',
947 "emptyset;": '\U00002205',
948 "emptyv;": '\U00002205',
949 "emsp;": '\U00002003',
950 "emsp13;": '\U00002004',
951 "emsp14;": '\U00002005',
952 "eng;": '\U0000014B',
953 "ensp;": '\U00002002',
954 "eogon;": '\U00000119',
955 "eopf;": '\U0001D556',
956 "epar;": '\U000022D5',
957 "eparsl;": '\U000029E3',
958 "eplus;": '\U00002A71',
959 "epsi;": '\U000003B5',
960 "epsilon;": '\U000003B5',
961 "epsiv;": '\U000003F5',
962 "eqcirc;": '\U00002256',
963 "eqcolon;": '\U00002255',
964 "eqsim;": '\U00002242',
965 "eqslantgtr;": '\U00002A96',
966 "eqslantless;": '\U00002A95',
967 "equals;": '\U0000003D',
968 "equest;": '\U0000225F',
969 "equiv;": '\U00002261',
970 "equivDD;": '\U00002A78',
971 "eqvparsl;": '\U000029E5',
972 "erDot;": '\U00002253',
973 "erarr;": '\U00002971',
974 "escr;": '\U0000212F',
975 "esdot;": '\U00002250',
976 "esim;": '\U00002242',
977 "eta;": '\U000003B7',
978 "eth;": '\U000000F0',
979 "euml;": '\U000000EB',
980 "euro;": '\U000020AC',
981 "excl;": '\U00000021',
982 "exist;": '\U00002203',
983 "expectation;": '\U00002130',
984 "exponentiale;": '\U00002147',
985 "fallingdotseq;": '\U00002252',
986 "fcy;": '\U00000444',
987 "female;": '\U00002640',
988 "ffilig;": '\U0000FB03',
989 "fflig;": '\U0000FB00',
990 "ffllig;": '\U0000FB04',
991 "ffr;": '\U0001D523',
992 "filig;": '\U0000FB01',
993 "flat;": '\U0000266D',
994 "fllig;": '\U0000FB02',
995 "fltns;": '\U000025B1',
996 "fnof;": '\U00000192',
997 "fopf;": '\U0001D557',
998 "forall;": '\U00002200',
999 "fork;": '\U000022D4',
1000 "forkv;": '\U00002AD9',
1001 "fpartint;": '\U00002A0D',
1002 "frac12;": '\U000000BD',
1003 "frac13;": '\U00002153',
1004 "frac14;": '\U000000BC',
1005 "frac15;": '\U00002155',
1006 "frac16;": '\U00002159',
1007 "frac18;": '\U0000215B',
1008 "frac23;": '\U00002154',
1009 "frac25;": '\U00002156',
1010 "frac34;": '\U000000BE',
1011 "frac35;": '\U00002157',
1012 "frac38;": '\U0000215C',
1013 "frac45;": '\U00002158',
1014 "frac56;": '\U0000215A',
1015 "frac58;": '\U0000215D',
1016 "frac78;": '\U0000215E',
1017 "frasl;": '\U00002044',
1018 "frown;": '\U00002322',
1019 "fscr;": '\U0001D4BB',
1020 "gE;": '\U00002267',
1021 "gEl;": '\U00002A8C',
1022 "gacute;": '\U000001F5',
1023 "gamma;": '\U000003B3',
1024 "gammad;": '\U000003DD',
1025 "gap;": '\U00002A86',
1026 "gbreve;": '\U0000011F',
1027 "gcirc;": '\U0000011D',
1028 "gcy;": '\U00000433',
1029 "gdot;": '\U00000121',
1030 "ge;": '\U00002265',
1031 "gel;": '\U000022DB',
1032 "geq;": '\U00002265',
1033 "geqq;": '\U00002267',
1034 "geqslant;": '\U00002A7E',
1035 "ges;": '\U00002A7E',
1036 "gescc;": '\U00002AA9',
1037 "gesdot;": '\U00002A80',
1038 "gesdoto;": '\U00002A82',
1039 "gesdotol;": '\U00002A84',
1040 "gesles;": '\U00002A94',
1041 "gfr;": '\U0001D524',
1042 "gg;": '\U0000226B',
1043 "ggg;": '\U000022D9',
1044 "gimel;": '\U00002137',
1045 "gjcy;": '\U00000453',
1046 "gl;": '\U00002277',
1047 "glE;": '\U00002A92',
1048 "gla;": '\U00002AA5',
1049 "glj;": '\U00002AA4',
1050 "gnE;": '\U00002269',
1051 "gnap;": '\U00002A8A',
1052 "gnapprox;": '\U00002A8A',
1053 "gne;": '\U00002A88',
1054 "gneq;": '\U00002A88',
1055 "gneqq;": '\U00002269',
1056 "gnsim;": '\U000022E7',
1057 "gopf;": '\U0001D558',
1058 "grave;": '\U00000060',
1059 "gscr;": '\U0000210A',
1060 "gsim;": '\U00002273',
1061 "gsime;": '\U00002A8E',
1062 "gsiml;": '\U00002A90',
1063 "gt;": '\U0000003E',
1064 "gtcc;": '\U00002AA7',
1065 "gtcir;": '\U00002A7A',
1066 "gtdot;": '\U000022D7',
1067 "gtlPar;": '\U00002995',
1068 "gtquest;": '\U00002A7C',
1069 "gtrapprox;": '\U00002A86',
1070 "gtrarr;": '\U00002978',
1071 "gtrdot;": '\U000022D7',
1072 "gtreqless;": '\U000022DB',
1073 "gtreqqless;": '\U00002A8C',
1074 "gtrless;": '\U00002277',
1075 "gtrsim;": '\U00002273',
1076 "hArr;": '\U000021D4',
1077 "hairsp;": '\U0000200A',
1078 "half;": '\U000000BD',
1079 "hamilt;": '\U0000210B',
1080 "hardcy;": '\U0000044A',
1081 "harr;": '\U00002194',
1082 "harrcir;": '\U00002948',
1083 "harrw;": '\U000021AD',
1084 "hbar;": '\U0000210F',
1085 "hcirc;": '\U00000125',
1086 "hearts;": '\U00002665',
1087 "heartsuit;": '\U00002665',
1088 "hellip;": '\U00002026',
1089 "hercon;": '\U000022B9',
1090 "hfr;": '\U0001D525',
1091 "hksearow;": '\U00002925',
1092 "hkswarow;": '\U00002926',
1093 "hoarr;": '\U000021FF',
1094 "homtht;": '\U0000223B',
1095 "hookleftarrow;": '\U000021A9',
1096 "hookrightarrow;": '\U000021AA',
1097 "hopf;": '\U0001D559',
1098 "horbar;": '\U00002015',
1099 "hscr;": '\U0001D4BD',
1100 "hslash;": '\U0000210F',
1101 "hstrok;": '\U00000127',
1102 "hybull;": '\U00002043',
1103 "hyphen;": '\U00002010',
1104 "iacute;": '\U000000ED',
1105 "ic;": '\U00002063',
1106 "icirc;": '\U000000EE',
1107 "icy;": '\U00000438',
1108 "iecy;": '\U00000435',
1109 "iexcl;": '\U000000A1',
1110 "iff;": '\U000021D4',
1111 "ifr;": '\U0001D526',
1112 "igrave;": '\U000000EC',
1113 "ii;": '\U00002148',
1114 "iiiint;": '\U00002A0C',
1115 "iiint;": '\U0000222D',
1116 "iinfin;": '\U000029DC',
1117 "iiota;": '\U00002129',
1118 "ijlig;": '\U00000133',
1119 "imacr;": '\U0000012B',
1120 "image;": '\U00002111',
1121 "imagline;": '\U00002110',
1122 "imagpart;": '\U00002111',
1123 "imath;": '\U00000131',
1124 "imof;": '\U000022B7',
1125 "imped;": '\U000001B5',
1126 "in;": '\U00002208',
1127 "incare;": '\U00002105',
1128 "infin;": '\U0000221E',
1129 "infintie;": '\U000029DD',
1130 "inodot;": '\U00000131',
1131 "int;": '\U0000222B',
1132 "intcal;": '\U000022BA',
1133 "integers;": '\U00002124',
1134 "intercal;": '\U000022BA',
1135 "intlarhk;": '\U00002A17',
1136 "intprod;": '\U00002A3C',
1137 "iocy;": '\U00000451',
1138 "iogon;": '\U0000012F',
1139 "iopf;": '\U0001D55A',
1140 "iota;": '\U000003B9',
1141 "iprod;": '\U00002A3C',
1142 "iquest;": '\U000000BF',
1143 "iscr;": '\U0001D4BE',
1144 "isin;": '\U00002208',
1145 "isinE;": '\U000022F9',
1146 "isindot;": '\U000022F5',
1147 "isins;": '\U000022F4',
1148 "isinsv;": '\U000022F3',
1149 "isinv;": '\U00002208',
1150 "it;": '\U00002062',
1151 "itilde;": '\U00000129',
1152 "iukcy;": '\U00000456',
1153 "iuml;": '\U000000EF',
1154 "jcirc;": '\U00000135',
1155 "jcy;": '\U00000439',
1156 "jfr;": '\U0001D527',
1157 "jmath;": '\U00000237',
1158 "jopf;": '\U0001D55B',
1159 "jscr;": '\U0001D4BF',
1160 "jsercy;": '\U00000458',
1161 "jukcy;": '\U00000454',
1162 "kappa;": '\U000003BA',
1163 "kappav;": '\U000003F0',
1164 "kcedil;": '\U00000137',
1165 "kcy;": '\U0000043A',
1166 "kfr;": '\U0001D528',
1167 "kgreen;": '\U00000138',
1168 "khcy;": '\U00000445',
1169 "kjcy;": '\U0000045C',
1170 "kopf;": '\U0001D55C',
1171 "kscr;": '\U0001D4C0',
1172 "lAarr;": '\U000021DA',
1173 "lArr;": '\U000021D0',
1174 "lAtail;": '\U0000291B',
1175 "lBarr;": '\U0000290E',
1176 "lE;": '\U00002266',
1177 "lEg;": '\U00002A8B',
1178 "lHar;": '\U00002962',
1179 "lacute;": '\U0000013A',
1180 "laemptyv;": '\U000029B4',
1181 "lagran;": '\U00002112',
1182 "lambda;": '\U000003BB',
1183 "lang;": '\U000027E8',
1184 "langd;": '\U00002991',
1185 "langle;": '\U000027E8',
1186 "lap;": '\U00002A85',
1187 "laquo;": '\U000000AB',
1188 "larr;": '\U00002190',
1189 "larrb;": '\U000021E4',
1190 "larrbfs;": '\U0000291F',
1191 "larrfs;": '\U0000291D',
1192 "larrhk;": '\U000021A9',
1193 "larrlp;": '\U000021AB',
1194 "larrpl;": '\U00002939',
1195 "larrsim;": '\U00002973',
1196 "larrtl;": '\U000021A2',
1197 "lat;": '\U00002AAB',
1198 "latail;": '\U00002919',
1199 "late;": '\U00002AAD',
1200 "lbarr;": '\U0000290C',
1201 "lbbrk;": '\U00002772',
1202 "lbrace;": '\U0000007B',
1203 "lbrack;": '\U0000005B',
1204 "lbrke;": '\U0000298B',
1205 "lbrksld;": '\U0000298F',
1206 "lbrkslu;": '\U0000298D',
1207 "lcaron;": '\U0000013E',
1208 "lcedil;": '\U0000013C',
1209 "lceil;": '\U00002308',
1210 "lcub;": '\U0000007B',
1211 "lcy;": '\U0000043B',
1212 "ldca;": '\U00002936',
1213 "ldquo;": '\U0000201C',
1214 "ldquor;": '\U0000201E',
1215 "ldrdhar;": '\U00002967',
1216 "ldrushar;": '\U0000294B',
1217 "ldsh;": '\U000021B2',
1218 "le;": '\U00002264',
1219 "leftarrow;": '\U00002190',
1220 "leftarrowtail;": '\U000021A2',
1221 "leftharpoondown;": '\U000021BD',
1222 "leftharpoonup;": '\U000021BC',
1223 "leftleftarrows;": '\U000021C7',
1224 "leftrightarrow;": '\U00002194',
1225 "leftrightarrows;": '\U000021C6',
1226 "leftrightharpoons;": '\U000021CB',
1227 "leftrightsquigarrow;": '\U000021AD',
1228 "leftthreetimes;": '\U000022CB',
1229 "leg;": '\U000022DA',
1230 "leq;": '\U00002264',
1231 "leqq;": '\U00002266',
1232 "leqslant;": '\U00002A7D',
1233 "les;": '\U00002A7D',
1234 "lescc;": '\U00002AA8',
1235 "lesdot;": '\U00002A7F',
1236 "lesdoto;": '\U00002A81',
1237 "lesdotor;": '\U00002A83',
1238 "lesges;": '\U00002A93',
1239 "lessapprox;": '\U00002A85',
1240 "lessdot;": '\U000022D6',
1241 "lesseqgtr;": '\U000022DA',
1242 "lesseqqgtr;": '\U00002A8B',
1243 "lessgtr;": '\U00002276',
1244 "lesssim;": '\U00002272',
1245 "lfisht;": '\U0000297C',
1246 "lfloor;": '\U0000230A',
1247 "lfr;": '\U0001D529',
1248 "lg;": '\U00002276',
1249 "lgE;": '\U00002A91',
1250 "lhard;": '\U000021BD',
1251 "lharu;": '\U000021BC',
1252 "lharul;": '\U0000296A',
1253 "lhblk;": '\U00002584',
1254 "ljcy;": '\U00000459',
1255 "ll;": '\U0000226A',
1256 "llarr;": '\U000021C7',
1257 "llcorner;": '\U0000231E',
1258 "llhard;": '\U0000296B',
1259 "lltri;": '\U000025FA',
1260 "lmidot;": '\U00000140',
1261 "lmoust;": '\U000023B0',
1262 "lmoustache;": '\U000023B0',
1263 "lnE;": '\U00002268',
1264 "lnap;": '\U00002A89',
1265 "lnapprox;": '\U00002A89',
1266 "lne;": '\U00002A87',
1267 "lneq;": '\U00002A87',
1268 "lneqq;": '\U00002268',
1269 "lnsim;": '\U000022E6',
1270 "loang;": '\U000027EC',
1271 "loarr;": '\U000021FD',
1272 "lobrk;": '\U000027E6',
1273 "longleftarrow;": '\U000027F5',
1274 "longleftrightarrow;": '\U000027F7',
1275 "longmapsto;": '\U000027FC',
1276 "longrightarrow;": '\U000027F6',
1277 "looparrowleft;": '\U000021AB',
1278 "looparrowright;": '\U000021AC',
1279 "lopar;": '\U00002985',
1280 "lopf;": '\U0001D55D',
1281 "loplus;": '\U00002A2D',
1282 "lotimes;": '\U00002A34',
1283 "lowast;": '\U00002217',
1284 "lowbar;": '\U0000005F',
1285 "loz;": '\U000025CA',
1286 "lozenge;": '\U000025CA',
1287 "lozf;": '\U000029EB',
1288 "lpar;": '\U00000028',
1289 "lparlt;": '\U00002993',
1290 "lrarr;": '\U000021C6',
1291 "lrcorner;": '\U0000231F',
1292 "lrhar;": '\U000021CB',
1293 "lrhard;": '\U0000296D',
1294 "lrm;": '\U0000200E',
1295 "lrtri;": '\U000022BF',
1296 "lsaquo;": '\U00002039',
1297 "lscr;": '\U0001D4C1',
1298 "lsh;": '\U000021B0',
1299 "lsim;": '\U00002272',
1300 "lsime;": '\U00002A8D',
1301 "lsimg;": '\U00002A8F',
1302 "lsqb;": '\U0000005B',
1303 "lsquo;": '\U00002018',
1304 "lsquor;": '\U0000201A',
1305 "lstrok;": '\U00000142',
1306 "lt;": '\U0000003C',
1307 "ltcc;": '\U00002AA6',
1308 "ltcir;": '\U00002A79',
1309 "ltdot;": '\U000022D6',
1310 "lthree;": '\U000022CB',
1311 "ltimes;": '\U000022C9',
1312 "ltlarr;": '\U00002976',
1313 "ltquest;": '\U00002A7B',
1314 "ltrPar;": '\U00002996',
1315 "ltri;": '\U000025C3',
1316 "ltrie;": '\U000022B4',
1317 "ltrif;": '\U000025C2',
1318 "lurdshar;": '\U0000294A',
1319 "luruhar;": '\U00002966',
1320 "mDDot;": '\U0000223A',
1321 "macr;": '\U000000AF',
1322 "male;": '\U00002642',
1323 "malt;": '\U00002720',
1324 "maltese;": '\U00002720',
1325 "map;": '\U000021A6',
1326 "mapsto;": '\U000021A6',
1327 "mapstodown;": '\U000021A7',
1328 "mapstoleft;": '\U000021A4',
1329 "mapstoup;": '\U000021A5',
1330 "marker;": '\U000025AE',
1331 "mcomma;": '\U00002A29',
1332 "mcy;": '\U0000043C',
1333 "mdash;": '\U00002014',
1334 "measuredangle;": '\U00002221',
1335 "mfr;": '\U0001D52A',
1336 "mho;": '\U00002127',
1337 "micro;": '\U000000B5',
1338 "mid;": '\U00002223',
1339 "midast;": '\U0000002A',
1340 "midcir;": '\U00002AF0',
1341 "middot;": '\U000000B7',
1342 "minus;": '\U00002212',
1343 "minusb;": '\U0000229F',
1344 "minusd;": '\U00002238',
1345 "minusdu;": '\U00002A2A',
1346 "mlcp;": '\U00002ADB',
1347 "mldr;": '\U00002026',
1348 "mnplus;": '\U00002213',
1349 "models;": '\U000022A7',
1350 "mopf;": '\U0001D55E',
1351 "mp;": '\U00002213',
1352 "mscr;": '\U0001D4C2',
1353 "mstpos;": '\U0000223E',
1354 "mu;": '\U000003BC',
1355 "multimap;": '\U000022B8',
1356 "mumap;": '\U000022B8',
1357 "nLeftarrow;": '\U000021CD',
1358 "nLeftrightarrow;": '\U000021CE',
1359 "nRightarrow;": '\U000021CF',
1360 "nVDash;": '\U000022AF',
1361 "nVdash;": '\U000022AE',
1362 "nabla;": '\U00002207',
1363 "nacute;": '\U00000144',
1364 "nap;": '\U00002249',
1365 "napos;": '\U00000149',
1366 "napprox;": '\U00002249',
1367 "natur;": '\U0000266E',
1368 "natural;": '\U0000266E',
1369 "naturals;": '\U00002115',
1370 "nbsp;": '\U000000A0',
1371 "ncap;": '\U00002A43',
1372 "ncaron;": '\U00000148',
1373 "ncedil;": '\U00000146',
1374 "ncong;": '\U00002247',
1375 "ncup;": '\U00002A42',
1376 "ncy;": '\U0000043D',
1377 "ndash;": '\U00002013',
1378 "ne;": '\U00002260',
1379 "neArr;": '\U000021D7',
1380 "nearhk;": '\U00002924',
1381 "nearr;": '\U00002197',
1382 "nearrow;": '\U00002197',
1383 "nequiv;": '\U00002262',
1384 "nesear;": '\U00002928',
1385 "nexist;": '\U00002204',
1386 "nexists;": '\U00002204',
1387 "nfr;": '\U0001D52B',
1388 "nge;": '\U00002271',
1389 "ngeq;": '\U00002271',
1390 "ngsim;": '\U00002275',
1391 "ngt;": '\U0000226F',
1392 "ngtr;": '\U0000226F',
1393 "nhArr;": '\U000021CE',
1394 "nharr;": '\U000021AE',
1395 "nhpar;": '\U00002AF2',
1396 "ni;": '\U0000220B',
1397 "nis;": '\U000022FC',
1398 "nisd;": '\U000022FA',
1399 "niv;": '\U0000220B',
1400 "njcy;": '\U0000045A',
1401 "nlArr;": '\U000021CD',
1402 "nlarr;": '\U0000219A',
1403 "nldr;": '\U00002025',
1404 "nle;": '\U00002270',
1405 "nleftarrow;": '\U0000219A',
1406 "nleftrightarrow;": '\U000021AE',
1407 "nleq;": '\U00002270',
1408 "nless;": '\U0000226E',
1409 "nlsim;": '\U00002274',
1410 "nlt;": '\U0000226E',
1411 "nltri;": '\U000022EA',
1412 "nltrie;": '\U000022EC',
1413 "nmid;": '\U00002224',
1414 "nopf;": '\U0001D55F',
1415 "not;": '\U000000AC',
1416 "notin;": '\U00002209',
1417 "notinva;": '\U00002209',
1418 "notinvb;": '\U000022F7',
1419 "notinvc;": '\U000022F6',
1420 "notni;": '\U0000220C',
1421 "notniva;": '\U0000220C',
1422 "notnivb;": '\U000022FE',
1423 "notnivc;": '\U000022FD',
1424 "npar;": '\U00002226',
1425 "nparallel;": '\U00002226',
1426 "npolint;": '\U00002A14',
1427 "npr;": '\U00002280',
1428 "nprcue;": '\U000022E0',
1429 "nprec;": '\U00002280',
1430 "nrArr;": '\U000021CF',
1431 "nrarr;": '\U0000219B',
1432 "nrightarrow;": '\U0000219B',
1433 "nrtri;": '\U000022EB',
1434 "nrtrie;": '\U000022ED',
1435 "nsc;": '\U00002281',
1436 "nsccue;": '\U000022E1',
1437 "nscr;": '\U0001D4C3',
1438 "nshortmid;": '\U00002224',
1439 "nshortparallel;": '\U00002226',
1440 "nsim;": '\U00002241',
1441 "nsime;": '\U00002244',
1442 "nsimeq;": '\U00002244',
1443 "nsmid;": '\U00002224',
1444 "nspar;": '\U00002226',
1445 "nsqsube;": '\U000022E2',
1446 "nsqsupe;": '\U000022E3',
1447 "nsub;": '\U00002284',
1448 "nsube;": '\U00002288',
1449 "nsubseteq;": '\U00002288',
1450 "nsucc;": '\U00002281',
1451 "nsup;": '\U00002285',
1452 "nsupe;": '\U00002289',
1453 "nsupseteq;": '\U00002289',
1454 "ntgl;": '\U00002279',
1455 "ntilde;": '\U000000F1',
1456 "ntlg;": '\U00002278',
1457 "ntriangleleft;": '\U000022EA',
1458 "ntrianglelefteq;": '\U000022EC',
1459 "ntriangleright;": '\U000022EB',
1460 "ntrianglerighteq;": '\U000022ED',
1461 "nu;": '\U000003BD',
1462 "num;": '\U00000023',
1463 "numero;": '\U00002116',
1464 "numsp;": '\U00002007',
1465 "nvDash;": '\U000022AD',
1466 "nvHarr;": '\U00002904',
1467 "nvdash;": '\U000022AC',
1468 "nvinfin;": '\U000029DE',
1469 "nvlArr;": '\U00002902',
1470 "nvrArr;": '\U00002903',
1471 "nwArr;": '\U000021D6',
1472 "nwarhk;": '\U00002923',
1473 "nwarr;": '\U00002196',
1474 "nwarrow;": '\U00002196',
1475 "nwnear;": '\U00002927',
1476 "oS;": '\U000024C8',
1477 "oacute;": '\U000000F3',
1478 "oast;": '\U0000229B',
1479 "ocir;": '\U0000229A',
1480 "ocirc;": '\U000000F4',
1481 "ocy;": '\U0000043E',
1482 "odash;": '\U0000229D',
1483 "odblac;": '\U00000151',
1484 "odiv;": '\U00002A38',
1485 "odot;": '\U00002299',
1486 "odsold;": '\U000029BC',
1487 "oelig;": '\U00000153',
1488 "ofcir;": '\U000029BF',
1489 "ofr;": '\U0001D52C',
1490 "ogon;": '\U000002DB',
1491 "ograve;": '\U000000F2',
1492 "ogt;": '\U000029C1',
1493 "ohbar;": '\U000029B5',
1494 "ohm;": '\U000003A9',
1495 "oint;": '\U0000222E',
1496 "olarr;": '\U000021BA',
1497 "olcir;": '\U000029BE',
1498 "olcross;": '\U000029BB',
1499 "oline;": '\U0000203E',
1500 "olt;": '\U000029C0',
1501 "omacr;": '\U0000014D',
1502 "omega;": '\U000003C9',
1503 "omicron;": '\U000003BF',
1504 "omid;": '\U000029B6',
1505 "ominus;": '\U00002296',
1506 "oopf;": '\U0001D560',
1507 "opar;": '\U000029B7',
1508 "operp;": '\U000029B9',
1509 "oplus;": '\U00002295',
1510 "or;": '\U00002228',
1511 "orarr;": '\U000021BB',
1512 "ord;": '\U00002A5D',
1513 "order;": '\U00002134',
1514 "orderof;": '\U00002134',
1515 "ordf;": '\U000000AA',
1516 "ordm;": '\U000000BA',
1517 "origof;": '\U000022B6',
1518 "oror;": '\U00002A56',
1519 "orslope;": '\U00002A57',
1520 "orv;": '\U00002A5B',
1521 "oscr;": '\U00002134',
1522 "oslash;": '\U000000F8',
1523 "osol;": '\U00002298',
1524 "otilde;": '\U000000F5',
1525 "otimes;": '\U00002297',
1526 "otimesas;": '\U00002A36',
1527 "ouml;": '\U000000F6',
1528 "ovbar;": '\U0000233D',
1529 "par;": '\U00002225',
1530 "para;": '\U000000B6',
1531 "parallel;": '\U00002225',
1532 "parsim;": '\U00002AF3',
1533 "parsl;": '\U00002AFD',
1534 "part;": '\U00002202',
1535 "pcy;": '\U0000043F',
1536 "percnt;": '\U00000025',
1537 "period;": '\U0000002E',
1538 "permil;": '\U00002030',
1539 "perp;": '\U000022A5',
1540 "pertenk;": '\U00002031',
1541 "pfr;": '\U0001D52D',
1542 "phi;": '\U000003C6',
1543 "phiv;": '\U000003D5',
1544 "phmmat;": '\U00002133',
1545 "phone;": '\U0000260E',
1546 "pi;": '\U000003C0',
1547 "pitchfork;": '\U000022D4',
1548 "piv;": '\U000003D6',
1549 "planck;": '\U0000210F',
1550 "planckh;": '\U0000210E',
1551 "plankv;": '\U0000210F',
1552 "plus;": '\U0000002B',
1553 "plusacir;": '\U00002A23',
1554 "plusb;": '\U0000229E',
1555 "pluscir;": '\U00002A22',
1556 "plusdo;": '\U00002214',
1557 "plusdu;": '\U00002A25',
1558 "pluse;": '\U00002A72',
1559 "plusmn;": '\U000000B1',
1560 "plussim;": '\U00002A26',
1561 "plustwo;": '\U00002A27',
1562 "pm;": '\U000000B1',
1563 "pointint;": '\U00002A15',
1564 "popf;": '\U0001D561',
1565 "pound;": '\U000000A3',
1566 "pr;": '\U0000227A',
1567 "prE;": '\U00002AB3',
1568 "prap;": '\U00002AB7',
1569 "prcue;": '\U0000227C',
1570 "pre;": '\U00002AAF',
1571 "prec;": '\U0000227A',
1572 "precapprox;": '\U00002AB7',
1573 "preccurlyeq;": '\U0000227C',
1574 "preceq;": '\U00002AAF',
1575 "precnapprox;": '\U00002AB9',
1576 "precneqq;": '\U00002AB5',
1577 "precnsim;": '\U000022E8',
1578 "precsim;": '\U0000227E',
1579 "prime;": '\U00002032',
1580 "primes;": '\U00002119',
1581 "prnE;": '\U00002AB5',
1582 "prnap;": '\U00002AB9',
1583 "prnsim;": '\U000022E8',
1584 "prod;": '\U0000220F',
1585 "profalar;": '\U0000232E',
1586 "profline;": '\U00002312',
1587 "profsurf;": '\U00002313',
1588 "prop;": '\U0000221D',
1589 "propto;": '\U0000221D',
1590 "prsim;": '\U0000227E',
1591 "prurel;": '\U000022B0',
1592 "pscr;": '\U0001D4C5',
1593 "psi;": '\U000003C8',
1594 "puncsp;": '\U00002008',
1595 "qfr;": '\U0001D52E',
1596 "qint;": '\U00002A0C',
1597 "qopf;": '\U0001D562',
1598 "qprime;": '\U00002057',
1599 "qscr;": '\U0001D4C6',
1600 "quaternions;": '\U0000210D',
1601 "quatint;": '\U00002A16',
1602 "quest;": '\U0000003F',
1603 "questeq;": '\U0000225F',
1604 "quot;": '\U00000022',
1605 "rAarr;": '\U000021DB',
1606 "rArr;": '\U000021D2',
1607 "rAtail;": '\U0000291C',
1608 "rBarr;": '\U0000290F',
1609 "rHar;": '\U00002964',
1610 "racute;": '\U00000155',
1611 "radic;": '\U0000221A',
1612 "raemptyv;": '\U000029B3',
1613 "rang;": '\U000027E9',
1614 "rangd;": '\U00002992',
1615 "range;": '\U000029A5',
1616 "rangle;": '\U000027E9',
1617 "raquo;": '\U000000BB',
1618 "rarr;": '\U00002192',
1619 "rarrap;": '\U00002975',
1620 "rarrb;": '\U000021E5',
1621 "rarrbfs;": '\U00002920',
1622 "rarrc;": '\U00002933',
1623 "rarrfs;": '\U0000291E',
1624 "rarrhk;": '\U000021AA',
1625 "rarrlp;": '\U000021AC',
1626 "rarrpl;": '\U00002945',
1627 "rarrsim;": '\U00002974',
1628 "rarrtl;": '\U000021A3',
1629 "rarrw;": '\U0000219D',
1630 "ratail;": '\U0000291A',
1631 "ratio;": '\U00002236',
1632 "rationals;": '\U0000211A',
1633 "rbarr;": '\U0000290D',
1634 "rbbrk;": '\U00002773',
1635 "rbrace;": '\U0000007D',
1636 "rbrack;": '\U0000005D',
1637 "rbrke;": '\U0000298C',
1638 "rbrksld;": '\U0000298E',
1639 "rbrkslu;": '\U00002990',
1640 "rcaron;": '\U00000159',
1641 "rcedil;": '\U00000157',
1642 "rceil;": '\U00002309',
1643 "rcub;": '\U0000007D',
1644 "rcy;": '\U00000440',
1645 "rdca;": '\U00002937',
1646 "rdldhar;": '\U00002969',
1647 "rdquo;": '\U0000201D',
1648 "rdquor;": '\U0000201D',
1649 "rdsh;": '\U000021B3',
1650 "real;": '\U0000211C',
1651 "realine;": '\U0000211B',
1652 "realpart;": '\U0000211C',
1653 "reals;": '\U0000211D',
1654 "rect;": '\U000025AD',
1655 "reg;": '\U000000AE',
1656 "rfisht;": '\U0000297D',
1657 "rfloor;": '\U0000230B',
1658 "rfr;": '\U0001D52F',
1659 "rhard;": '\U000021C1',
1660 "rharu;": '\U000021C0',
1661 "rharul;": '\U0000296C',
1662 "rho;": '\U000003C1',
1663 "rhov;": '\U000003F1',
1664 "rightarrow;": '\U00002192',
1665 "rightarrowtail;": '\U000021A3',
1666 "rightharpoondown;": '\U000021C1',
1667 "rightharpoonup;": '\U000021C0',
1668 "rightleftarrows;": '\U000021C4',
1669 "rightleftharpoons;": '\U000021CC',
1670 "rightrightarrows;": '\U000021C9',
1671 "rightsquigarrow;": '\U0000219D',
1672 "rightthreetimes;": '\U000022CC',
1673 "ring;": '\U000002DA',
1674 "risingdotseq;": '\U00002253',
1675 "rlarr;": '\U000021C4',
1676 "rlhar;": '\U000021CC',
1677 "rlm;": '\U0000200F',
1678 "rmoust;": '\U000023B1',
1679 "rmoustache;": '\U000023B1',
1680 "rnmid;": '\U00002AEE',
1681 "roang;": '\U000027ED',
1682 "roarr;": '\U000021FE',
1683 "robrk;": '\U000027E7',
1684 "ropar;": '\U00002986',
1685 "ropf;": '\U0001D563',
1686 "roplus;": '\U00002A2E',
1687 "rotimes;": '\U00002A35',
1688 "rpar;": '\U00000029',
1689 "rpargt;": '\U00002994',
1690 "rppolint;": '\U00002A12',
1691 "rrarr;": '\U000021C9',
1692 "rsaquo;": '\U0000203A',
1693 "rscr;": '\U0001D4C7',
1694 "rsh;": '\U000021B1',
1695 "rsqb;": '\U0000005D',
1696 "rsquo;": '\U00002019',
1697 "rsquor;": '\U00002019',
1698 "rthree;": '\U000022CC',
1699 "rtimes;": '\U000022CA',
1700 "rtri;": '\U000025B9',
1701 "rtrie;": '\U000022B5',
1702 "rtrif;": '\U000025B8',
1703 "rtriltri;": '\U000029CE',
1704 "ruluhar;": '\U00002968',
1705 "rx;": '\U0000211E',
1706 "sacute;": '\U0000015B',
1707 "sbquo;": '\U0000201A',
1708 "sc;": '\U0000227B',
1709 "scE;": '\U00002AB4',
1710 "scap;": '\U00002AB8',
1711 "scaron;": '\U00000161',
1712 "sccue;": '\U0000227D',
1713 "sce;": '\U00002AB0',
1714 "scedil;": '\U0000015F',
1715 "scirc;": '\U0000015D',
1716 "scnE;": '\U00002AB6',
1717 "scnap;": '\U00002ABA',
1718 "scnsim;": '\U000022E9',
1719 "scpolint;": '\U00002A13',
1720 "scsim;": '\U0000227F',
1721 "scy;": '\U00000441',
1722 "sdot;": '\U000022C5',
1723 "sdotb;": '\U000022A1',
1724 "sdote;": '\U00002A66',
1725 "seArr;": '\U000021D8',
1726 "searhk;": '\U00002925',
1727 "searr;": '\U00002198',
1728 "searrow;": '\U00002198',
1729 "sect;": '\U000000A7',
1730 "semi;": '\U0000003B',
1731 "seswar;": '\U00002929',
1732 "setminus;": '\U00002216',
1733 "setmn;": '\U00002216',
1734 "sext;": '\U00002736',
1735 "sfr;": '\U0001D530',
1736 "sfrown;": '\U00002322',
1737 "sharp;": '\U0000266F',
1738 "shchcy;": '\U00000449',
1739 "shcy;": '\U00000448',
1740 "shortmid;": '\U00002223',
1741 "shortparallel;": '\U00002225',
1742 "shy;": '\U000000AD',
1743 "sigma;": '\U000003C3',
1744 "sigmaf;": '\U000003C2',
1745 "sigmav;": '\U000003C2',
1746 "sim;": '\U0000223C',
1747 "simdot;": '\U00002A6A',
1748 "sime;": '\U00002243',
1749 "simeq;": '\U00002243',
1750 "simg;": '\U00002A9E',
1751 "simgE;": '\U00002AA0',
1752 "siml;": '\U00002A9D',
1753 "simlE;": '\U00002A9F',
1754 "simne;": '\U00002246',
1755 "simplus;": '\U00002A24',
1756 "simrarr;": '\U00002972',
1757 "slarr;": '\U00002190',
1758 "smallsetminus;": '\U00002216',
1759 "smashp;": '\U00002A33',
1760 "smeparsl;": '\U000029E4',
1761 "smid;": '\U00002223',
1762 "smile;": '\U00002323',
1763 "smt;": '\U00002AAA',
1764 "smte;": '\U00002AAC',
1765 "softcy;": '\U0000044C',
1766 "sol;": '\U0000002F',
1767 "solb;": '\U000029C4',
1768 "solbar;": '\U0000233F',
1769 "sopf;": '\U0001D564',
1770 "spades;": '\U00002660',
1771 "spadesuit;": '\U00002660',
1772 "spar;": '\U00002225',
1773 "sqcap;": '\U00002293',
1774 "sqcup;": '\U00002294',
1775 "sqsub;": '\U0000228F',
1776 "sqsube;": '\U00002291',
1777 "sqsubset;": '\U0000228F',
1778 "sqsubseteq;": '\U00002291',
1779 "sqsup;": '\U00002290',
1780 "sqsupe;": '\U00002292',
1781 "sqsupset;": '\U00002290',
1782 "sqsupseteq;": '\U00002292',
1783 "squ;": '\U000025A1',
1784 "square;": '\U000025A1',
1785 "squarf;": '\U000025AA',
1786 "squf;": '\U000025AA',
1787 "srarr;": '\U00002192',
1788 "sscr;": '\U0001D4C8',
1789 "ssetmn;": '\U00002216',
1790 "ssmile;": '\U00002323',
1791 "sstarf;": '\U000022C6',
1792 "star;": '\U00002606',
1793 "starf;": '\U00002605',
1794 "straightepsilon;": '\U000003F5',
1795 "straightphi;": '\U000003D5',
1796 "strns;": '\U000000AF',
1797 "sub;": '\U00002282',
1798 "subE;": '\U00002AC5',
1799 "subdot;": '\U00002ABD',
1800 "sube;": '\U00002286',
1801 "subedot;": '\U00002AC3',
1802 "submult;": '\U00002AC1',
1803 "subnE;": '\U00002ACB',
1804 "subne;": '\U0000228A',
1805 "subplus;": '\U00002ABF',
1806 "subrarr;": '\U00002979',
1807 "subset;": '\U00002282',
1808 "subseteq;": '\U00002286',
1809 "subseteqq;": '\U00002AC5',
1810 "subsetneq;": '\U0000228A',
1811 "subsetneqq;": '\U00002ACB',
1812 "subsim;": '\U00002AC7',
1813 "subsub;": '\U00002AD5',
1814 "subsup;": '\U00002AD3',
1815 "succ;": '\U0000227B',
1816 "succapprox;": '\U00002AB8',
1817 "succcurlyeq;": '\U0000227D',
1818 "succeq;": '\U00002AB0',
1819 "succnapprox;": '\U00002ABA',
1820 "succneqq;": '\U00002AB6',
1821 "succnsim;": '\U000022E9',
1822 "succsim;": '\U0000227F',
1823 "sum;": '\U00002211',
1824 "sung;": '\U0000266A',
1825 "sup;": '\U00002283',
1826 "sup1;": '\U000000B9',
1827 "sup2;": '\U000000B2',
1828 "sup3;": '\U000000B3',
1829 "supE;": '\U00002AC6',
1830 "supdot;": '\U00002ABE',
1831 "supdsub;": '\U00002AD8',
1832 "supe;": '\U00002287',
1833 "supedot;": '\U00002AC4',
1834 "suphsol;": '\U000027C9',
1835 "suphsub;": '\U00002AD7',
1836 "suplarr;": '\U0000297B',
1837 "supmult;": '\U00002AC2',
1838 "supnE;": '\U00002ACC',
1839 "supne;": '\U0000228B',
1840 "supplus;": '\U00002AC0',
1841 "supset;": '\U00002283',
1842 "supseteq;": '\U00002287',
1843 "supseteqq;": '\U00002AC6',
1844 "supsetneq;": '\U0000228B',
1845 "supsetneqq;": '\U00002ACC',
1846 "supsim;": '\U00002AC8',
1847 "supsub;": '\U00002AD4',
1848 "supsup;": '\U00002AD6',
1849 "swArr;": '\U000021D9',
1850 "swarhk;": '\U00002926',
1851 "swarr;": '\U00002199',
1852 "swarrow;": '\U00002199',
1853 "swnwar;": '\U0000292A',
1854 "szlig;": '\U000000DF',
1855 "target;": '\U00002316',
1856 "tau;": '\U000003C4',
1857 "tbrk;": '\U000023B4',
1858 "tcaron;": '\U00000165',
1859 "tcedil;": '\U00000163',
1860 "tcy;": '\U00000442',
1861 "tdot;": '\U000020DB',
1862 "telrec;": '\U00002315',
1863 "tfr;": '\U0001D531',
1864 "there4;": '\U00002234',
1865 "therefore;": '\U00002234',
1866 "theta;": '\U000003B8',
1867 "thetasym;": '\U000003D1',
1868 "thetav;": '\U000003D1',
1869 "thickapprox;": '\U00002248',
1870 "thicksim;": '\U0000223C',
1871 "thinsp;": '\U00002009',
1872 "thkap;": '\U00002248',
1873 "thksim;": '\U0000223C',
1874 "thorn;": '\U000000FE',
1875 "tilde;": '\U000002DC',
1876 "times;": '\U000000D7',
1877 "timesb;": '\U000022A0',
1878 "timesbar;": '\U00002A31',
1879 "timesd;": '\U00002A30',
1880 "tint;": '\U0000222D',
1881 "toea;": '\U00002928',
1882 "top;": '\U000022A4',
1883 "topbot;": '\U00002336',
1884 "topcir;": '\U00002AF1',
1885 "topf;": '\U0001D565',
1886 "topfork;": '\U00002ADA',
1887 "tosa;": '\U00002929',
1888 "tprime;": '\U00002034',
1889 "trade;": '\U00002122',
1890 "triangle;": '\U000025B5',
1891 "triangledown;": '\U000025BF',
1892 "triangleleft;": '\U000025C3',
1893 "trianglelefteq;": '\U000022B4',
1894 "triangleq;": '\U0000225C',
1895 "triangleright;": '\U000025B9',
1896 "trianglerighteq;": '\U000022B5',
1897 "tridot;": '\U000025EC',
1898 "trie;": '\U0000225C',
1899 "triminus;": '\U00002A3A',
1900 "triplus;": '\U00002A39',
1901 "trisb;": '\U000029CD',
1902 "tritime;": '\U00002A3B',
1903 "trpezium;": '\U000023E2',
1904 "tscr;": '\U0001D4C9',
1905 "tscy;": '\U00000446',
1906 "tshcy;": '\U0000045B',
1907 "tstrok;": '\U00000167',
1908 "twixt;": '\U0000226C',
1909 "twoheadleftarrow;": '\U0000219E',
1910 "twoheadrightarrow;": '\U000021A0',
1911 "uArr;": '\U000021D1',
1912 "uHar;": '\U00002963',
1913 "uacute;": '\U000000FA',
1914 "uarr;": '\U00002191',
1915 "ubrcy;": '\U0000045E',
1916 "ubreve;": '\U0000016D',
1917 "ucirc;": '\U000000FB',
1918 "ucy;": '\U00000443',
1919 "udarr;": '\U000021C5',
1920 "udblac;": '\U00000171',
1921 "udhar;": '\U0000296E',
1922 "ufisht;": '\U0000297E',
1923 "ufr;": '\U0001D532',
1924 "ugrave;": '\U000000F9',
1925 "uharl;": '\U000021BF',
1926 "uharr;": '\U000021BE',
1927 "uhblk;": '\U00002580',
1928 "ulcorn;": '\U0000231C',
1929 "ulcorner;": '\U0000231C',
1930 "ulcrop;": '\U0000230F',
1931 "ultri;": '\U000025F8',
1932 "umacr;": '\U0000016B',
1933 "uml;": '\U000000A8',
1934 "uogon;": '\U00000173',
1935 "uopf;": '\U0001D566',
1936 "uparrow;": '\U00002191',
1937 "updownarrow;": '\U00002195',
1938 "upharpoonleft;": '\U000021BF',
1939 "upharpoonright;": '\U000021BE',
1940 "uplus;": '\U0000228E',
1941 "upsi;": '\U000003C5',
1942 "upsih;": '\U000003D2',
1943 "upsilon;": '\U000003C5',
1944 "upuparrows;": '\U000021C8',
1945 "urcorn;": '\U0000231D',
1946 "urcorner;": '\U0000231D',
1947 "urcrop;": '\U0000230E',
1948 "uring;": '\U0000016F',
1949 "urtri;": '\U000025F9',
1950 "uscr;": '\U0001D4CA',
1951 "utdot;": '\U000022F0',
1952 "utilde;": '\U00000169',
1953 "utri;": '\U000025B5',
1954 "utrif;": '\U000025B4',
1955 "uuarr;": '\U000021C8',
1956 "uuml;": '\U000000FC',
1957 "uwangle;": '\U000029A7',
1958 "vArr;": '\U000021D5',
1959 "vBar;": '\U00002AE8',
1960 "vBarv;": '\U00002AE9',
1961 "vDash;": '\U000022A8',
1962 "vangrt;": '\U0000299C',
1963 "varepsilon;": '\U000003F5',
1964 "varkappa;": '\U000003F0',
1965 "varnothing;": '\U00002205',
1966 "varphi;": '\U000003D5',
1967 "varpi;": '\U000003D6',
1968 "varpropto;": '\U0000221D',
1969 "varr;": '\U00002195',
1970 "varrho;": '\U000003F1',
1971 "varsigma;": '\U000003C2',
1972 "vartheta;": '\U000003D1',
1973 "vartriangleleft;": '\U000022B2',
1974 "vartriangleright;": '\U000022B3',
1975 "vcy;": '\U00000432',
1976 "vdash;": '\U000022A2',
1977 "vee;": '\U00002228',
1978 "veebar;": '\U000022BB',
1979 "veeeq;": '\U0000225A',
1980 "vellip;": '\U000022EE',
1981 "verbar;": '\U0000007C',
1982 "vert;": '\U0000007C',
1983 "vfr;": '\U0001D533',
1984 "vltri;": '\U000022B2',
1985 "vopf;": '\U0001D567',
1986 "vprop;": '\U0000221D',
1987 "vrtri;": '\U000022B3',
1988 "vscr;": '\U0001D4CB',
1989 "vzigzag;": '\U0000299A',
1990 "wcirc;": '\U00000175',
1991 "wedbar;": '\U00002A5F',
1992 "wedge;": '\U00002227',
1993 "wedgeq;": '\U00002259',
1994 "weierp;": '\U00002118',
1995 "wfr;": '\U0001D534',
1996 "wopf;": '\U0001D568',
1997 "wp;": '\U00002118',
1998 "wr;": '\U00002240',
1999 "wreath;": '\U00002240',
2000 "wscr;": '\U0001D4CC',
2001 "xcap;": '\U000022C2',
2002 "xcirc;": '\U000025EF',
2003 "xcup;": '\U000022C3',
2004 "xdtri;": '\U000025BD',
2005 "xfr;": '\U0001D535',
2006 "xhArr;": '\U000027FA',
2007 "xharr;": '\U000027F7',
2008 "xi;": '\U000003BE',
2009 "xlArr;": '\U000027F8',
2010 "xlarr;": '\U000027F5',
2011 "xmap;": '\U000027FC',
2012 "xnis;": '\U000022FB',
2013 "xodot;": '\U00002A00',
2014 "xopf;": '\U0001D569',
2015 "xoplus;": '\U00002A01',
2016 "xotime;": '\U00002A02',
2017 "xrArr;": '\U000027F9',
2018 "xrarr;": '\U000027F6',
2019 "xscr;": '\U0001D4CD',
2020 "xsqcup;": '\U00002A06',
2021 "xuplus;": '\U00002A04',
2022 "xutri;": '\U000025B3',
2023 "xvee;": '\U000022C1',
2024 "xwedge;": '\U000022C0',
2025 "yacute;": '\U000000FD',
2026 "yacy;": '\U0000044F',
2027 "ycirc;": '\U00000177',
2028 "ycy;": '\U0000044B',
2029 "yen;": '\U000000A5',
2030 "yfr;": '\U0001D536',
2031 "yicy;": '\U00000457',
2032 "yopf;": '\U0001D56A',
2033 "yscr;": '\U0001D4CE',
2034 "yucy;": '\U0000044E',
2035 "yuml;": '\U000000FF',
2036 "zacute;": '\U0000017A',
2037 "zcaron;": '\U0000017E',
2038 "zcy;": '\U00000437',
2039 "zdot;": '\U0000017C',
2040 "zeetrf;": '\U00002128',
2041 "zeta;": '\U000003B6',
2042 "zfr;": '\U0001D537',
2043 "zhcy;": '\U00000436',
2044 "zigrarr;": '\U000021DD',
2045 "zopf;": '\U0001D56B',
2046 "zscr;": '\U0001D4CF',
2047 "zwj;": '\U0000200D',
2048 "zwnj;": '\U0000200C',
2049 "AElig": '\U000000C6',
2050 "AMP": '\U00000026',
2051 "Aacute": '\U000000C1',
2052 "Acirc": '\U000000C2',
2053 "Agrave": '\U000000C0',
2054 "Aring": '\U000000C5',
2055 "Atilde": '\U000000C3',
2056 "Auml": '\U000000C4',
2057 "COPY": '\U000000A9',
2058 "Ccedil": '\U000000C7',
2059 "ETH": '\U000000D0',
2060 "Eacute": '\U000000C9',
2061 "Ecirc": '\U000000CA',
2062 "Egrave": '\U000000C8',
2063 "Euml": '\U000000CB',
2064 "GT": '\U0000003E',
2065 "Iacute": '\U000000CD',
2066 "Icirc": '\U000000CE',
2067 "Igrave": '\U000000CC',
2068 "Iuml": '\U000000CF',
2069 "LT": '\U0000003C',
2070 "Ntilde": '\U000000D1',
2071 "Oacute": '\U000000D3',
2072 "Ocirc": '\U000000D4',
2073 "Ograve": '\U000000D2',
2074 "Oslash": '\U000000D8',
2075 "Otilde": '\U000000D5',
2076 "Ouml": '\U000000D6',
2077 "QUOT": '\U00000022',
2078 "REG": '\U000000AE',
2079 "THORN": '\U000000DE',
2080 "Uacute": '\U000000DA',
2081 "Ucirc": '\U000000DB',
2082 "Ugrave": '\U000000D9',
2083 "Uuml": '\U000000DC',
2084 "Yacute": '\U000000DD',
2085 "aacute": '\U000000E1',
2086 "acirc": '\U000000E2',
2087 "acute": '\U000000B4',
2088 "aelig": '\U000000E6',
2089 "agrave": '\U000000E0',
2090 "amp": '\U00000026',
2091 "aring": '\U000000E5',
2092 "atilde": '\U000000E3',
2093 "auml": '\U000000E4',
2094 "brvbar": '\U000000A6',
2095 "ccedil": '\U000000E7',
2096 "cedil": '\U000000B8',
2097 "cent": '\U000000A2',
2098 "copy": '\U000000A9',
2099 "curren": '\U000000A4',
2100 "deg": '\U000000B0',
2101 "divide": '\U000000F7',
2102 "eacute": '\U000000E9',
2103 "ecirc": '\U000000EA',
2104 "egrave": '\U000000E8',
2105 "eth": '\U000000F0',
2106 "euml": '\U000000EB',
2107 "frac12": '\U000000BD',
2108 "frac14": '\U000000BC',
2109 "frac34": '\U000000BE',
2110 "gt": '\U0000003E',
2111 "iacute": '\U000000ED',
2112 "icirc": '\U000000EE',
2113 "iexcl": '\U000000A1',
2114 "igrave": '\U000000EC',
2115 "iquest": '\U000000BF',
2116 "iuml": '\U000000EF',
2117 "laquo": '\U000000AB',
2118 "lt": '\U0000003C',
2119 "macr": '\U000000AF',
2120 "micro": '\U000000B5',
2121 "middot": '\U000000B7',
2122 "nbsp": '\U000000A0',
2123 "not": '\U000000AC',
2124 "ntilde": '\U000000F1',
2125 "oacute": '\U000000F3',
2126 "ocirc": '\U000000F4',
2127 "ograve": '\U000000F2',
2128 "ordf": '\U000000AA',
2129 "ordm": '\U000000BA',
2130 "oslash": '\U000000F8',
2131 "otilde": '\U000000F5',
2132 "ouml": '\U000000F6',
2133 "para": '\U000000B6',
2134 "plusmn": '\U000000B1',
2135 "pound": '\U000000A3',
2136 "quot": '\U00000022',
2137 "raquo": '\U000000BB',
2138 "reg": '\U000000AE',
2139 "sect": '\U000000A7',
2140 "shy": '\U000000AD',
2141 "sup1": '\U000000B9',
2142 "sup2": '\U000000B2',
2143 "sup3": '\U000000B3',
2144 "szlig": '\U000000DF',
2145 "thorn": '\U000000FE',
2146 "times": '\U000000D7',
2147 "uacute": '\U000000FA',
2148 "ucirc": '\U000000FB',
2149 "ugrave": '\U000000F9',
2150 "uml": '\U000000A8',
2151 "uuml": '\U000000FC',
2152 "yacute": '\U000000FD',
2153 "yen": '\U000000A5',
2154 "yuml": '\U000000FF',
2155}
2156
2157// HTML entities that are two unicode codepoints.
2158var entity2 = map[string][2]rune{
2159 // TODO(nigeltao): Handle replacements that are wider than their names.
2160 // "nLt;": {'\u226A', '\u20D2'},
2161 // "nGt;": {'\u226B', '\u20D2'},
2162 "NotEqualTilde;": {'\u2242', '\u0338'},
2163 "NotGreaterFullEqual;": {'\u2267', '\u0338'},
2164 "NotGreaterGreater;": {'\u226B', '\u0338'},
2165 "NotGreaterSlantEqual;": {'\u2A7E', '\u0338'},
2166 "NotHumpDownHump;": {'\u224E', '\u0338'},
2167 "NotHumpEqual;": {'\u224F', '\u0338'},
2168 "NotLeftTriangleBar;": {'\u29CF', '\u0338'},
2169 "NotLessLess;": {'\u226A', '\u0338'},
2170 "NotLessSlantEqual;": {'\u2A7D', '\u0338'},
2171 "NotNestedGreaterGreater;": {'\u2AA2', '\u0338'},
2172 "NotNestedLessLess;": {'\u2AA1', '\u0338'},
2173 "NotPrecedesEqual;": {'\u2AAF', '\u0338'},
2174 "NotRightTriangleBar;": {'\u29D0', '\u0338'},
2175 "NotSquareSubset;": {'\u228F', '\u0338'},
2176 "NotSquareSuperset;": {'\u2290', '\u0338'},
2177 "NotSubset;": {'\u2282', '\u20D2'},
2178 "NotSucceedsEqual;": {'\u2AB0', '\u0338'},
2179 "NotSucceedsTilde;": {'\u227F', '\u0338'},
2180 "NotSuperset;": {'\u2283', '\u20D2'},
2181 "ThickSpace;": {'\u205F', '\u200A'},
2182 "acE;": {'\u223E', '\u0333'},
2183 "bne;": {'\u003D', '\u20E5'},
2184 "bnequiv;": {'\u2261', '\u20E5'},
2185 "caps;": {'\u2229', '\uFE00'},
2186 "cups;": {'\u222A', '\uFE00'},
2187 "fjlig;": {'\u0066', '\u006A'},
2188 "gesl;": {'\u22DB', '\uFE00'},
2189 "gvertneqq;": {'\u2269', '\uFE00'},
2190 "gvnE;": {'\u2269', '\uFE00'},
2191 "lates;": {'\u2AAD', '\uFE00'},
2192 "lesg;": {'\u22DA', '\uFE00'},
2193 "lvertneqq;": {'\u2268', '\uFE00'},
2194 "lvnE;": {'\u2268', '\uFE00'},
2195 "nGg;": {'\u22D9', '\u0338'},
2196 "nGtv;": {'\u226B', '\u0338'},
2197 "nLl;": {'\u22D8', '\u0338'},
2198 "nLtv;": {'\u226A', '\u0338'},
2199 "nang;": {'\u2220', '\u20D2'},
2200 "napE;": {'\u2A70', '\u0338'},
2201 "napid;": {'\u224B', '\u0338'},
2202 "nbump;": {'\u224E', '\u0338'},
2203 "nbumpe;": {'\u224F', '\u0338'},
2204 "ncongdot;": {'\u2A6D', '\u0338'},
2205 "nedot;": {'\u2250', '\u0338'},
2206 "nesim;": {'\u2242', '\u0338'},
2207 "ngE;": {'\u2267', '\u0338'},
2208 "ngeqq;": {'\u2267', '\u0338'},
2209 "ngeqslant;": {'\u2A7E', '\u0338'},
2210 "nges;": {'\u2A7E', '\u0338'},
2211 "nlE;": {'\u2266', '\u0338'},
2212 "nleqq;": {'\u2266', '\u0338'},
2213 "nleqslant;": {'\u2A7D', '\u0338'},
2214 "nles;": {'\u2A7D', '\u0338'},
2215 "notinE;": {'\u22F9', '\u0338'},
2216 "notindot;": {'\u22F5', '\u0338'},
2217 "nparsl;": {'\u2AFD', '\u20E5'},
2218 "npart;": {'\u2202', '\u0338'},
2219 "npre;": {'\u2AAF', '\u0338'},
2220 "npreceq;": {'\u2AAF', '\u0338'},
2221 "nrarrc;": {'\u2933', '\u0338'},
2222 "nrarrw;": {'\u219D', '\u0338'},
2223 "nsce;": {'\u2AB0', '\u0338'},
2224 "nsubE;": {'\u2AC5', '\u0338'},
2225 "nsubset;": {'\u2282', '\u20D2'},
2226 "nsubseteqq;": {'\u2AC5', '\u0338'},
2227 "nsucceq;": {'\u2AB0', '\u0338'},
2228 "nsupE;": {'\u2AC6', '\u0338'},
2229 "nsupset;": {'\u2283', '\u20D2'},
2230 "nsupseteqq;": {'\u2AC6', '\u0338'},
2231 "nvap;": {'\u224D', '\u20D2'},
2232 "nvge;": {'\u2265', '\u20D2'},
2233 "nvgt;": {'\u003E', '\u20D2'},
2234 "nvle;": {'\u2264', '\u20D2'},
2235 "nvlt;": {'\u003C', '\u20D2'},
2236 "nvltrie;": {'\u22B4', '\u20D2'},
2237 "nvrtrie;": {'\u22B5', '\u20D2'},
2238 "nvsim;": {'\u223C', '\u20D2'},
2239 "race;": {'\u223D', '\u0331'},
2240 "smtes;": {'\u2AAC', '\uFE00'},
2241 "sqcaps;": {'\u2293', '\uFE00'},
2242 "sqcups;": {'\u2294', '\uFE00'},
2243 "varsubsetneq;": {'\u228A', '\uFE00'},
2244 "varsubsetneqq;": {'\u2ACB', '\uFE00'},
2245 "varsupsetneq;": {'\u228B', '\uFE00'},
2246 "varsupsetneqq;": {'\u2ACC', '\uFE00'},
2247 "vnsub;": {'\u2282', '\u20D2'},
2248 "vnsup;": {'\u2283', '\u20D2'},
2249 "vsubnE;": {'\u2ACB', '\uFE00'},
2250 "vsubne;": {'\u228A', '\uFE00'},
2251 "vsupnE;": {'\u2ACC', '\uFE00'},
2252 "vsupne;": {'\u228B', '\uFE00'},
2253}
diff --git a/vendor/golang.org/x/net/html/escape.go b/vendor/golang.org/x/net/html/escape.go
deleted file mode 100644
index d856139..0000000
--- a/vendor/golang.org/x/net/html/escape.go
+++ /dev/null
@@ -1,258 +0,0 @@
1// Copyright 2010 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package html
6
7import (
8 "bytes"
9 "strings"
10 "unicode/utf8"
11)
12
13// These replacements permit compatibility with old numeric entities that
14// assumed Windows-1252 encoding.
15// https://html.spec.whatwg.org/multipage/syntax.html#consume-a-character-reference
16var replacementTable = [...]rune{
17 '\u20AC', // First entry is what 0x80 should be replaced with.
18 '\u0081',
19 '\u201A',
20 '\u0192',
21 '\u201E',
22 '\u2026',
23 '\u2020',
24 '\u2021',
25 '\u02C6',
26 '\u2030',
27 '\u0160',
28 '\u2039',
29 '\u0152',
30 '\u008D',
31 '\u017D',
32 '\u008F',
33 '\u0090',
34 '\u2018',
35 '\u2019',
36 '\u201C',
37 '\u201D',
38 '\u2022',
39 '\u2013',
40 '\u2014',
41 '\u02DC',
42 '\u2122',
43 '\u0161',
44 '\u203A',
45 '\u0153',
46 '\u009D',
47 '\u017E',
48 '\u0178', // Last entry is 0x9F.
49 // 0x00->'\uFFFD' is handled programmatically.
50 // 0x0D->'\u000D' is a no-op.
51}
52
53// unescapeEntity reads an entity like "&lt;" from b[src:] and writes the
54// corresponding "<" to b[dst:], returning the incremented dst and src cursors.
55// Precondition: b[src] == '&' && dst <= src.
56// attribute should be true if parsing an attribute value.
57func unescapeEntity(b []byte, dst, src int, attribute bool) (dst1, src1 int) {
58 // https://html.spec.whatwg.org/multipage/syntax.html#consume-a-character-reference
59
60 // i starts at 1 because we already know that s[0] == '&'.
61 i, s := 1, b[src:]
62
63 if len(s) <= 1 {
64 b[dst] = b[src]
65 return dst + 1, src + 1
66 }
67
68 if s[i] == '#' {
69 if len(s) <= 3 { // We need to have at least "&#.".
70 b[dst] = b[src]
71 return dst + 1, src + 1
72 }
73 i++
74 c := s[i]
75 hex := false
76 if c == 'x' || c == 'X' {
77 hex = true
78 i++
79 }
80
81 x := '\x00'
82 for i < len(s) {
83 c = s[i]
84 i++
85 if hex {
86 if '0' <= c && c <= '9' {
87 x = 16*x + rune(c) - '0'
88 continue
89 } else if 'a' <= c && c <= 'f' {
90 x = 16*x + rune(c) - 'a' + 10
91 continue
92 } else if 'A' <= c && c <= 'F' {
93 x = 16*x + rune(c) - 'A' + 10
94 continue
95 }
96 } else if '0' <= c && c <= '9' {
97 x = 10*x + rune(c) - '0'
98 continue
99 }
100 if c != ';' {
101 i--
102 }
103 break
104 }
105
106 if i <= 3 { // No characters matched.
107 b[dst] = b[src]
108 return dst + 1, src + 1
109 }
110
111 if 0x80 <= x && x <= 0x9F {
112 // Replace characters from Windows-1252 with UTF-8 equivalents.
113 x = replacementTable[x-0x80]
114 } else if x == 0 || (0xD800 <= x && x <= 0xDFFF) || x > 0x10FFFF {
115 // Replace invalid characters with the replacement character.
116 x = '\uFFFD'
117 }
118
119 return dst + utf8.EncodeRune(b[dst:], x), src + i
120 }
121
122 // Consume the maximum number of characters possible, with the
123 // consumed characters matching one of the named references.
124
125 for i < len(s) {
126 c := s[i]
127 i++
128 // Lower-cased characters are more common in entities, so we check for them first.
129 if 'a' <= c && c <= 'z' || 'A' <= c && c <= 'Z' || '0' <= c && c <= '9' {
130 continue
131 }
132 if c != ';' {
133 i--
134 }
135 break
136 }
137
138 entityName := string(s[1:i])
139 if entityName == "" {
140 // No-op.
141 } else if attribute && entityName[len(entityName)-1] != ';' && len(s) > i && s[i] == '=' {
142 // No-op.
143 } else if x := entity[entityName]; x != 0 {
144 return dst + utf8.EncodeRune(b[dst:], x), src + i
145 } else if x := entity2[entityName]; x[0] != 0 {
146 dst1 := dst + utf8.EncodeRune(b[dst:], x[0])
147 return dst1 + utf8.EncodeRune(b[dst1:], x[1]), src + i
148 } else if !attribute {
149 maxLen := len(entityName) - 1
150 if maxLen > longestEntityWithoutSemicolon {
151 maxLen = longestEntityWithoutSemicolon
152 }
153 for j := maxLen; j > 1; j-- {
154 if x := entity[entityName[:j]]; x != 0 {
155 return dst + utf8.EncodeRune(b[dst:], x), src + j + 1
156 }
157 }
158 }
159
160 dst1, src1 = dst+i, src+i
161 copy(b[dst:dst1], b[src:src1])
162 return dst1, src1
163}
164
165// unescape unescapes b's entities in-place, so that "a&lt;b" becomes "a<b".
166// attribute should be true if parsing an attribute value.
167func unescape(b []byte, attribute bool) []byte {
168 for i, c := range b {
169 if c == '&' {
170 dst, src := unescapeEntity(b, i, i, attribute)
171 for src < len(b) {
172 c := b[src]
173 if c == '&' {
174 dst, src = unescapeEntity(b, dst, src, attribute)
175 } else {
176 b[dst] = c
177 dst, src = dst+1, src+1
178 }
179 }
180 return b[0:dst]
181 }
182 }
183 return b
184}
185
186// lower lower-cases the A-Z bytes in b in-place, so that "aBc" becomes "abc".
187func lower(b []byte) []byte {
188 for i, c := range b {
189 if 'A' <= c && c <= 'Z' {
190 b[i] = c + 'a' - 'A'
191 }
192 }
193 return b
194}
195
196const escapedChars = "&'<>\"\r"
197
198func escape(w writer, s string) error {
199 i := strings.IndexAny(s, escapedChars)
200 for i != -1 {
201 if _, err := w.WriteString(s[:i]); err != nil {
202 return err
203 }
204 var esc string
205 switch s[i] {
206 case '&':
207 esc = "&amp;"
208 case '\'':
209 // "&#39;" is shorter than "&apos;" and apos was not in HTML until HTML5.
210 esc = "&#39;"
211 case '<':
212 esc = "&lt;"
213 case '>':
214 esc = "&gt;"
215 case '"':
216 // "&#34;" is shorter than "&quot;".
217 esc = "&#34;"
218 case '\r':
219 esc = "&#13;"
220 default:
221 panic("unrecognized escape character")
222 }
223 s = s[i+1:]
224 if _, err := w.WriteString(esc); err != nil {
225 return err
226 }
227 i = strings.IndexAny(s, escapedChars)
228 }
229 _, err := w.WriteString(s)
230 return err
231}
232
233// EscapeString escapes special characters like "<" to become "&lt;". It
234// escapes only five such characters: <, >, &, ' and ".
235// UnescapeString(EscapeString(s)) == s always holds, but the converse isn't
236// always true.
237func EscapeString(s string) string {
238 if strings.IndexAny(s, escapedChars) == -1 {
239 return s
240 }
241 var buf bytes.Buffer
242 escape(&buf, s)
243 return buf.String()
244}
245
246// UnescapeString unescapes entities like "&lt;" to become "<". It unescapes a
247// larger range of entities than EscapeString escapes. For example, "&aacute;"
248// unescapes to "á", as does "&#225;" and "&xE1;".
249// UnescapeString(EscapeString(s)) == s always holds, but the converse isn't
250// always true.
251func UnescapeString(s string) string {
252 for _, c := range s {
253 if c == '&' {
254 return string(unescape([]byte(s), false))
255 }
256 }
257 return s
258}
diff --git a/vendor/golang.org/x/net/html/foreign.go b/vendor/golang.org/x/net/html/foreign.go
deleted file mode 100644
index d3b3844..0000000
--- a/vendor/golang.org/x/net/html/foreign.go
+++ /dev/null
@@ -1,226 +0,0 @@
1// Copyright 2011 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package html
6
7import (
8 "strings"
9)
10
11func adjustAttributeNames(aa []Attribute, nameMap map[string]string) {
12 for i := range aa {
13 if newName, ok := nameMap[aa[i].Key]; ok {
14 aa[i].Key = newName
15 }
16 }
17}
18
19func adjustForeignAttributes(aa []Attribute) {
20 for i, a := range aa {
21 if a.Key == "" || a.Key[0] != 'x' {
22 continue
23 }
24 switch a.Key {
25 case "xlink:actuate", "xlink:arcrole", "xlink:href", "xlink:role", "xlink:show",
26 "xlink:title", "xlink:type", "xml:base", "xml:lang", "xml:space", "xmlns:xlink":
27 j := strings.Index(a.Key, ":")
28 aa[i].Namespace = a.Key[:j]
29 aa[i].Key = a.Key[j+1:]
30 }
31 }
32}
33
34func htmlIntegrationPoint(n *Node) bool {
35 if n.Type != ElementNode {
36 return false
37 }
38 switch n.Namespace {
39 case "math":
40 if n.Data == "annotation-xml" {
41 for _, a := range n.Attr {
42 if a.Key == "encoding" {
43 val := strings.ToLower(a.Val)
44 if val == "text/html" || val == "application/xhtml+xml" {
45 return true
46 }
47 }
48 }
49 }
50 case "svg":
51 switch n.Data {
52 case "desc", "foreignObject", "title":
53 return true
54 }
55 }
56 return false
57}
58
59func mathMLTextIntegrationPoint(n *Node) bool {
60 if n.Namespace != "math" {
61 return false
62 }
63 switch n.Data {
64 case "mi", "mo", "mn", "ms", "mtext":
65 return true
66 }
67 return false
68}
69
70// Section 12.2.5.5.
71var breakout = map[string]bool{
72 "b": true,
73 "big": true,
74 "blockquote": true,
75 "body": true,
76 "br": true,
77 "center": true,
78 "code": true,
79 "dd": true,
80 "div": true,
81 "dl": true,
82 "dt": true,
83 "em": true,
84 "embed": true,
85 "h1": true,
86 "h2": true,
87 "h3": true,
88 "h4": true,
89 "h5": true,
90 "h6": true,
91 "head": true,
92 "hr": true,
93 "i": true,
94 "img": true,
95 "li": true,
96 "listing": true,
97 "menu": true,
98 "meta": true,
99 "nobr": true,
100 "ol": true,
101 "p": true,
102 "pre": true,
103 "ruby": true,
104 "s": true,
105 "small": true,
106 "span": true,
107 "strong": true,
108 "strike": true,
109 "sub": true,
110 "sup": true,
111 "table": true,
112 "tt": true,
113 "u": true,
114 "ul": true,
115 "var": true,
116}
117
118// Section 12.2.5.5.
119var svgTagNameAdjustments = map[string]string{
120 "altglyph": "altGlyph",
121 "altglyphdef": "altGlyphDef",
122 "altglyphitem": "altGlyphItem",
123 "animatecolor": "animateColor",
124 "animatemotion": "animateMotion",
125 "animatetransform": "animateTransform",
126 "clippath": "clipPath",
127 "feblend": "feBlend",
128 "fecolormatrix": "feColorMatrix",
129 "fecomponenttransfer": "feComponentTransfer",
130 "fecomposite": "feComposite",
131 "feconvolvematrix": "feConvolveMatrix",
132 "fediffuselighting": "feDiffuseLighting",
133 "fedisplacementmap": "feDisplacementMap",
134 "fedistantlight": "feDistantLight",
135 "feflood": "feFlood",
136 "fefunca": "feFuncA",
137 "fefuncb": "feFuncB",
138 "fefuncg": "feFuncG",
139 "fefuncr": "feFuncR",
140 "fegaussianblur": "feGaussianBlur",
141 "feimage": "feImage",
142 "femerge": "feMerge",
143 "femergenode": "feMergeNode",
144 "femorphology": "feMorphology",
145 "feoffset": "feOffset",
146 "fepointlight": "fePointLight",
147 "fespecularlighting": "feSpecularLighting",
148 "fespotlight": "feSpotLight",
149 "fetile": "feTile",
150 "feturbulence": "feTurbulence",
151 "foreignobject": "foreignObject",
152 "glyphref": "glyphRef",
153 "lineargradient": "linearGradient",
154 "radialgradient": "radialGradient",
155 "textpath": "textPath",
156}
157
158// Section 12.2.5.1
159var mathMLAttributeAdjustments = map[string]string{
160 "definitionurl": "definitionURL",
161}
162
163var svgAttributeAdjustments = map[string]string{
164 "attributename": "attributeName",
165 "attributetype": "attributeType",
166 "basefrequency": "baseFrequency",
167 "baseprofile": "baseProfile",
168 "calcmode": "calcMode",
169 "clippathunits": "clipPathUnits",
170 "contentscripttype": "contentScriptType",
171 "contentstyletype": "contentStyleType",
172 "diffuseconstant": "diffuseConstant",
173 "edgemode": "edgeMode",
174 "externalresourcesrequired": "externalResourcesRequired",
175 "filterres": "filterRes",
176 "filterunits": "filterUnits",
177 "glyphref": "glyphRef",
178 "gradienttransform": "gradientTransform",
179 "gradientunits": "gradientUnits",
180 "kernelmatrix": "kernelMatrix",
181 "kernelunitlength": "kernelUnitLength",
182 "keypoints": "keyPoints",
183 "keysplines": "keySplines",
184 "keytimes": "keyTimes",
185 "lengthadjust": "lengthAdjust",
186 "limitingconeangle": "limitingConeAngle",
187 "markerheight": "markerHeight",
188 "markerunits": "markerUnits",
189 "markerwidth": "markerWidth",
190 "maskcontentunits": "maskContentUnits",
191 "maskunits": "maskUnits",
192 "numoctaves": "numOctaves",
193 "pathlength": "pathLength",
194 "patterncontentunits": "patternContentUnits",
195 "patterntransform": "patternTransform",
196 "patternunits": "patternUnits",
197 "pointsatx": "pointsAtX",
198 "pointsaty": "pointsAtY",
199 "pointsatz": "pointsAtZ",
200 "preservealpha": "preserveAlpha",
201 "preserveaspectratio": "preserveAspectRatio",
202 "primitiveunits": "primitiveUnits",
203 "refx": "refX",
204 "refy": "refY",
205 "repeatcount": "repeatCount",
206 "repeatdur": "repeatDur",
207 "requiredextensions": "requiredExtensions",
208 "requiredfeatures": "requiredFeatures",
209 "specularconstant": "specularConstant",
210 "specularexponent": "specularExponent",
211 "spreadmethod": "spreadMethod",
212 "startoffset": "startOffset",
213 "stddeviation": "stdDeviation",
214 "stitchtiles": "stitchTiles",
215 "surfacescale": "surfaceScale",
216 "systemlanguage": "systemLanguage",
217 "tablevalues": "tableValues",
218 "targetx": "targetX",
219 "targety": "targetY",
220 "textlength": "textLength",
221 "viewbox": "viewBox",
222 "viewtarget": "viewTarget",
223 "xchannelselector": "xChannelSelector",
224 "ychannelselector": "yChannelSelector",
225 "zoomandpan": "zoomAndPan",
226}
diff --git a/vendor/golang.org/x/net/html/node.go b/vendor/golang.org/x/net/html/node.go
deleted file mode 100644
index 26b657a..0000000
--- a/vendor/golang.org/x/net/html/node.go
+++ /dev/null
@@ -1,193 +0,0 @@
1// Copyright 2011 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package html
6
7import (
8 "golang.org/x/net/html/atom"
9)
10
11// A NodeType is the type of a Node.
12type NodeType uint32
13
14const (
15 ErrorNode NodeType = iota
16 TextNode
17 DocumentNode
18 ElementNode
19 CommentNode
20 DoctypeNode
21 scopeMarkerNode
22)
23
24// Section 12.2.3.3 says "scope markers are inserted when entering applet
25// elements, buttons, object elements, marquees, table cells, and table
26// captions, and are used to prevent formatting from 'leaking'".
27var scopeMarker = Node{Type: scopeMarkerNode}
28
29// A Node consists of a NodeType and some Data (tag name for element nodes,
30// content for text) and are part of a tree of Nodes. Element nodes may also
31// have a Namespace and contain a slice of Attributes. Data is unescaped, so
32// that it looks like "a<b" rather than "a&lt;b". For element nodes, DataAtom
33// is the atom for Data, or zero if Data is not a known tag name.
34//
35// An empty Namespace implies a "http://www.w3.org/1999/xhtml" namespace.
36// Similarly, "math" is short for "http://www.w3.org/1998/Math/MathML", and
37// "svg" is short for "http://www.w3.org/2000/svg".
38type Node struct {
39 Parent, FirstChild, LastChild, PrevSibling, NextSibling *Node
40
41 Type NodeType
42 DataAtom atom.Atom
43 Data string
44 Namespace string
45 Attr []Attribute
46}
47
48// InsertBefore inserts newChild as a child of n, immediately before oldChild
49// in the sequence of n's children. oldChild may be nil, in which case newChild
50// is appended to the end of n's children.
51//
52// It will panic if newChild already has a parent or siblings.
53func (n *Node) InsertBefore(newChild, oldChild *Node) {
54 if newChild.Parent != nil || newChild.PrevSibling != nil || newChild.NextSibling != nil {
55 panic("html: InsertBefore called for an attached child Node")
56 }
57 var prev, next *Node
58 if oldChild != nil {
59 prev, next = oldChild.PrevSibling, oldChild
60 } else {
61 prev = n.LastChild
62 }
63 if prev != nil {
64 prev.NextSibling = newChild
65 } else {
66 n.FirstChild = newChild
67 }
68 if next != nil {
69 next.PrevSibling = newChild
70 } else {
71 n.LastChild = newChild
72 }
73 newChild.Parent = n
74 newChild.PrevSibling = prev
75 newChild.NextSibling = next
76}
77
78// AppendChild adds a node c as a child of n.
79//
80// It will panic if c already has a parent or siblings.
81func (n *Node) AppendChild(c *Node) {
82 if c.Parent != nil || c.PrevSibling != nil || c.NextSibling != nil {
83 panic("html: AppendChild called for an attached child Node")
84 }
85 last := n.LastChild
86 if last != nil {
87 last.NextSibling = c
88 } else {
89 n.FirstChild = c
90 }
91 n.LastChild = c
92 c.Parent = n
93 c.PrevSibling = last
94}
95
96// RemoveChild removes a node c that is a child of n. Afterwards, c will have
97// no parent and no siblings.
98//
99// It will panic if c's parent is not n.
100func (n *Node) RemoveChild(c *Node) {
101 if c.Parent != n {
102 panic("html: RemoveChild called for a non-child Node")
103 }
104 if n.FirstChild == c {
105 n.FirstChild = c.NextSibling
106 }
107 if c.NextSibling != nil {
108 c.NextSibling.PrevSibling = c.PrevSibling
109 }
110 if n.LastChild == c {
111 n.LastChild = c.PrevSibling
112 }
113 if c.PrevSibling != nil {
114 c.PrevSibling.NextSibling = c.NextSibling
115 }
116 c.Parent = nil
117 c.PrevSibling = nil
118 c.NextSibling = nil
119}
120
121// reparentChildren reparents all of src's child nodes to dst.
122func reparentChildren(dst, src *Node) {
123 for {
124 child := src.FirstChild
125 if child == nil {
126 break
127 }
128 src.RemoveChild(child)
129 dst.AppendChild(child)
130 }
131}
132
133// clone returns a new node with the same type, data and attributes.
134// The clone has no parent, no siblings and no children.
135func (n *Node) clone() *Node {
136 m := &Node{
137 Type: n.Type,
138 DataAtom: n.DataAtom,
139 Data: n.Data,
140 Attr: make([]Attribute, len(n.Attr)),
141 }
142 copy(m.Attr, n.Attr)
143 return m
144}
145
146// nodeStack is a stack of nodes.
147type nodeStack []*Node
148
149// pop pops the stack. It will panic if s is empty.
150func (s *nodeStack) pop() *Node {
151 i := len(*s)
152 n := (*s)[i-1]
153 *s = (*s)[:i-1]
154 return n
155}
156
157// top returns the most recently pushed node, or nil if s is empty.
158func (s *nodeStack) top() *Node {
159 if i := len(*s); i > 0 {
160 return (*s)[i-1]
161 }
162 return nil
163}
164
165// index returns the index of the top-most occurrence of n in the stack, or -1
166// if n is not present.
167func (s *nodeStack) index(n *Node) int {
168 for i := len(*s) - 1; i >= 0; i-- {
169 if (*s)[i] == n {
170 return i
171 }
172 }
173 return -1
174}
175
176// insert inserts a node at the given index.
177func (s *nodeStack) insert(i int, n *Node) {
178 (*s) = append(*s, nil)
179 copy((*s)[i+1:], (*s)[i:])
180 (*s)[i] = n
181}
182
183// remove removes a node from the stack. It is a no-op if n is not present.
184func (s *nodeStack) remove(n *Node) {
185 i := s.index(n)
186 if i == -1 {
187 return
188 }
189 copy((*s)[i:], (*s)[i+1:])
190 j := len(*s) - 1
191 (*s)[j] = nil
192 *s = (*s)[:j]
193}
diff --git a/vendor/golang.org/x/net/html/parse.go b/vendor/golang.org/x/net/html/parse.go
deleted file mode 100644
index be4b2bf..0000000
--- a/vendor/golang.org/x/net/html/parse.go
+++ /dev/null
@@ -1,2094 +0,0 @@
1// Copyright 2010 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package html
6
7import (
8 "errors"
9 "fmt"
10 "io"
11 "strings"
12
13 a "golang.org/x/net/html/atom"
14)
15
16// A parser implements the HTML5 parsing algorithm:
17// https://html.spec.whatwg.org/multipage/syntax.html#tree-construction
18type parser struct {
19 // tokenizer provides the tokens for the parser.
20 tokenizer *Tokenizer
21 // tok is the most recently read token.
22 tok Token
23 // Self-closing tags like <hr/> are treated as start tags, except that
24 // hasSelfClosingToken is set while they are being processed.
25 hasSelfClosingToken bool
26 // doc is the document root element.
27 doc *Node
28 // The stack of open elements (section 12.2.3.2) and active formatting
29 // elements (section 12.2.3.3).
30 oe, afe nodeStack
31 // Element pointers (section 12.2.3.4).
32 head, form *Node
33 // Other parsing state flags (section 12.2.3.5).
34 scripting, framesetOK bool
35 // im is the current insertion mode.
36 im insertionMode
37 // originalIM is the insertion mode to go back to after completing a text
38 // or inTableText insertion mode.
39 originalIM insertionMode
40 // fosterParenting is whether new elements should be inserted according to
41 // the foster parenting rules (section 12.2.5.3).
42 fosterParenting bool
43 // quirks is whether the parser is operating in "quirks mode."
44 quirks bool
45 // fragment is whether the parser is parsing an HTML fragment.
46 fragment bool
47 // context is the context element when parsing an HTML fragment
48 // (section 12.4).
49 context *Node
50}
51
52func (p *parser) top() *Node {
53 if n := p.oe.top(); n != nil {
54 return n
55 }
56 return p.doc
57}
58
59// Stop tags for use in popUntil. These come from section 12.2.3.2.
60var (
61 defaultScopeStopTags = map[string][]a.Atom{
62 "": {a.Applet, a.Caption, a.Html, a.Table, a.Td, a.Th, a.Marquee, a.Object, a.Template},
63 "math": {a.AnnotationXml, a.Mi, a.Mn, a.Mo, a.Ms, a.Mtext},
64 "svg": {a.Desc, a.ForeignObject, a.Title},
65 }
66)
67
68type scope int
69
70const (
71 defaultScope scope = iota
72 listItemScope
73 buttonScope
74 tableScope
75 tableRowScope
76 tableBodyScope
77 selectScope
78)
79
80// popUntil pops the stack of open elements at the highest element whose tag
81// is in matchTags, provided there is no higher element in the scope's stop
82// tags (as defined in section 12.2.3.2). It returns whether or not there was
83// such an element. If there was not, popUntil leaves the stack unchanged.
84//
85// For example, the set of stop tags for table scope is: "html", "table". If
86// the stack was:
87// ["html", "body", "font", "table", "b", "i", "u"]
88// then popUntil(tableScope, "font") would return false, but
89// popUntil(tableScope, "i") would return true and the stack would become:
90// ["html", "body", "font", "table", "b"]
91//
92// If an element's tag is in both the stop tags and matchTags, then the stack
93// will be popped and the function returns true (provided, of course, there was
94// no higher element in the stack that was also in the stop tags). For example,
95// popUntil(tableScope, "table") returns true and leaves:
96// ["html", "body", "font"]
97func (p *parser) popUntil(s scope, matchTags ...a.Atom) bool {
98 if i := p.indexOfElementInScope(s, matchTags...); i != -1 {
99 p.oe = p.oe[:i]
100 return true
101 }
102 return false
103}
104
105// indexOfElementInScope returns the index in p.oe of the highest element whose
106// tag is in matchTags that is in scope. If no matching element is in scope, it
107// returns -1.
108func (p *parser) indexOfElementInScope(s scope, matchTags ...a.Atom) int {
109 for i := len(p.oe) - 1; i >= 0; i-- {
110 tagAtom := p.oe[i].DataAtom
111 if p.oe[i].Namespace == "" {
112 for _, t := range matchTags {
113 if t == tagAtom {
114 return i
115 }
116 }
117 switch s {
118 case defaultScope:
119 // No-op.
120 case listItemScope:
121 if tagAtom == a.Ol || tagAtom == a.Ul {
122 return -1
123 }
124 case buttonScope:
125 if tagAtom == a.Button {
126 return -1
127 }
128 case tableScope:
129 if tagAtom == a.Html || tagAtom == a.Table {
130 return -1
131 }
132 case selectScope:
133 if tagAtom != a.Optgroup && tagAtom != a.Option {
134 return -1
135 }
136 default:
137 panic("unreachable")
138 }
139 }
140 switch s {
141 case defaultScope, listItemScope, buttonScope:
142 for _, t := range defaultScopeStopTags[p.oe[i].Namespace] {
143 if t == tagAtom {
144 return -1
145 }
146 }
147 }
148 }
149 return -1
150}
151
152// elementInScope is like popUntil, except that it doesn't modify the stack of
153// open elements.
154func (p *parser) elementInScope(s scope, matchTags ...a.Atom) bool {
155 return p.indexOfElementInScope(s, matchTags...) != -1
156}
157
158// clearStackToContext pops elements off the stack of open elements until a
159// scope-defined element is found.
160func (p *parser) clearStackToContext(s scope) {
161 for i := len(p.oe) - 1; i >= 0; i-- {
162 tagAtom := p.oe[i].DataAtom
163 switch s {
164 case tableScope:
165 if tagAtom == a.Html || tagAtom == a.Table {
166 p.oe = p.oe[:i+1]
167 return
168 }
169 case tableRowScope:
170 if tagAtom == a.Html || tagAtom == a.Tr {
171 p.oe = p.oe[:i+1]
172 return
173 }
174 case tableBodyScope:
175 if tagAtom == a.Html || tagAtom == a.Tbody || tagAtom == a.Tfoot || tagAtom == a.Thead {
176 p.oe = p.oe[:i+1]
177 return
178 }
179 default:
180 panic("unreachable")
181 }
182 }
183}
184
185// generateImpliedEndTags pops nodes off the stack of open elements as long as
186// the top node has a tag name of dd, dt, li, option, optgroup, p, rp, or rt.
187// If exceptions are specified, nodes with that name will not be popped off.
188func (p *parser) generateImpliedEndTags(exceptions ...string) {
189 var i int
190loop:
191 for i = len(p.oe) - 1; i >= 0; i-- {
192 n := p.oe[i]
193 if n.Type == ElementNode {
194 switch n.DataAtom {
195 case a.Dd, a.Dt, a.Li, a.Option, a.Optgroup, a.P, a.Rp, a.Rt:
196 for _, except := range exceptions {
197 if n.Data == except {
198 break loop
199 }
200 }
201 continue
202 }
203 }
204 break
205 }
206
207 p.oe = p.oe[:i+1]
208}
209
210// addChild adds a child node n to the top element, and pushes n onto the stack
211// of open elements if it is an element node.
212func (p *parser) addChild(n *Node) {
213 if p.shouldFosterParent() {
214 p.fosterParent(n)
215 } else {
216 p.top().AppendChild(n)
217 }
218
219 if n.Type == ElementNode {
220 p.oe = append(p.oe, n)
221 }
222}
223
224// shouldFosterParent returns whether the next node to be added should be
225// foster parented.
226func (p *parser) shouldFosterParent() bool {
227 if p.fosterParenting {
228 switch p.top().DataAtom {
229 case a.Table, a.Tbody, a.Tfoot, a.Thead, a.Tr:
230 return true
231 }
232 }
233 return false
234}
235
236// fosterParent adds a child node according to the foster parenting rules.
237// Section 12.2.5.3, "foster parenting".
238func (p *parser) fosterParent(n *Node) {
239 var table, parent, prev *Node
240 var i int
241 for i = len(p.oe) - 1; i >= 0; i-- {
242 if p.oe[i].DataAtom == a.Table {
243 table = p.oe[i]
244 break
245 }
246 }
247
248 if table == nil {
249 // The foster parent is the html element.
250 parent = p.oe[0]
251 } else {
252 parent = table.Parent
253 }
254 if parent == nil {
255 parent = p.oe[i-1]
256 }
257
258 if table != nil {
259 prev = table.PrevSibling
260 } else {
261 prev = parent.LastChild
262 }
263 if prev != nil && prev.Type == TextNode && n.Type == TextNode {
264 prev.Data += n.Data
265 return
266 }
267
268 parent.InsertBefore(n, table)
269}
270
271// addText adds text to the preceding node if it is a text node, or else it
272// calls addChild with a new text node.
273func (p *parser) addText(text string) {
274 if text == "" {
275 return
276 }
277
278 if p.shouldFosterParent() {
279 p.fosterParent(&Node{
280 Type: TextNode,
281 Data: text,
282 })
283 return
284 }
285
286 t := p.top()
287 if n := t.LastChild; n != nil && n.Type == TextNode {
288 n.Data += text
289 return
290 }
291 p.addChild(&Node{
292 Type: TextNode,
293 Data: text,
294 })
295}
296
297// addElement adds a child element based on the current token.
298func (p *parser) addElement() {
299 p.addChild(&Node{
300 Type: ElementNode,
301 DataAtom: p.tok.DataAtom,
302 Data: p.tok.Data,
303 Attr: p.tok.Attr,
304 })
305}
306
307// Section 12.2.3.3.
308func (p *parser) addFormattingElement() {
309 tagAtom, attr := p.tok.DataAtom, p.tok.Attr
310 p.addElement()
311
312 // Implement the Noah's Ark clause, but with three per family instead of two.
313 identicalElements := 0
314findIdenticalElements:
315 for i := len(p.afe) - 1; i >= 0; i-- {
316 n := p.afe[i]
317 if n.Type == scopeMarkerNode {
318 break
319 }
320 if n.Type != ElementNode {
321 continue
322 }
323 if n.Namespace != "" {
324 continue
325 }
326 if n.DataAtom != tagAtom {
327 continue
328 }
329 if len(n.Attr) != len(attr) {
330 continue
331 }
332 compareAttributes:
333 for _, t0 := range n.Attr {
334 for _, t1 := range attr {
335 if t0.Key == t1.Key && t0.Namespace == t1.Namespace && t0.Val == t1.Val {
336 // Found a match for this attribute, continue with the next attribute.
337 continue compareAttributes
338 }
339 }
340 // If we get here, there is no attribute that matches a.
341 // Therefore the element is not identical to the new one.
342 continue findIdenticalElements
343 }
344
345 identicalElements++
346 if identicalElements >= 3 {
347 p.afe.remove(n)
348 }
349 }
350
351 p.afe = append(p.afe, p.top())
352}
353
354// Section 12.2.3.3.
355func (p *parser) clearActiveFormattingElements() {
356 for {
357 n := p.afe.pop()
358 if len(p.afe) == 0 || n.Type == scopeMarkerNode {
359 return
360 }
361 }
362}
363
364// Section 12.2.3.3.
365func (p *parser) reconstructActiveFormattingElements() {
366 n := p.afe.top()
367 if n == nil {
368 return
369 }
370 if n.Type == scopeMarkerNode || p.oe.index(n) != -1 {
371 return
372 }
373 i := len(p.afe) - 1
374 for n.Type != scopeMarkerNode && p.oe.index(n) == -1 {
375 if i == 0 {
376 i = -1
377 break
378 }
379 i--
380 n = p.afe[i]
381 }
382 for {
383 i++
384 clone := p.afe[i].clone()
385 p.addChild(clone)
386 p.afe[i] = clone
387 if i == len(p.afe)-1 {
388 break
389 }
390 }
391}
392
393// Section 12.2.4.
394func (p *parser) acknowledgeSelfClosingTag() {
395 p.hasSelfClosingToken = false
396}
397
398// An insertion mode (section 12.2.3.1) is the state transition function from
399// a particular state in the HTML5 parser's state machine. It updates the
400// parser's fields depending on parser.tok (where ErrorToken means EOF).
401// It returns whether the token was consumed.
402type insertionMode func(*parser) bool
403
404// setOriginalIM sets the insertion mode to return to after completing a text or
405// inTableText insertion mode.
406// Section 12.2.3.1, "using the rules for".
407func (p *parser) setOriginalIM() {
408 if p.originalIM != nil {
409 panic("html: bad parser state: originalIM was set twice")
410 }
411 p.originalIM = p.im
412}
413
414// Section 12.2.3.1, "reset the insertion mode".
415func (p *parser) resetInsertionMode() {
416 for i := len(p.oe) - 1; i >= 0; i-- {
417 n := p.oe[i]
418 if i == 0 && p.context != nil {
419 n = p.context
420 }
421
422 switch n.DataAtom {
423 case a.Select:
424 p.im = inSelectIM
425 case a.Td, a.Th:
426 p.im = inCellIM
427 case a.Tr:
428 p.im = inRowIM
429 case a.Tbody, a.Thead, a.Tfoot:
430 p.im = inTableBodyIM
431 case a.Caption:
432 p.im = inCaptionIM
433 case a.Colgroup:
434 p.im = inColumnGroupIM
435 case a.Table:
436 p.im = inTableIM
437 case a.Head:
438 p.im = inBodyIM
439 case a.Body:
440 p.im = inBodyIM
441 case a.Frameset:
442 p.im = inFramesetIM
443 case a.Html:
444 p.im = beforeHeadIM
445 default:
446 continue
447 }
448 return
449 }
450 p.im = inBodyIM
451}
452
453const whitespace = " \t\r\n\f"
454
455// Section 12.2.5.4.1.
456func initialIM(p *parser) bool {
457 switch p.tok.Type {
458 case TextToken:
459 p.tok.Data = strings.TrimLeft(p.tok.Data, whitespace)
460 if len(p.tok.Data) == 0 {
461 // It was all whitespace, so ignore it.
462 return true
463 }
464 case CommentToken:
465 p.doc.AppendChild(&Node{
466 Type: CommentNode,
467 Data: p.tok.Data,
468 })
469 return true
470 case DoctypeToken:
471 n, quirks := parseDoctype(p.tok.Data)
472 p.doc.AppendChild(n)
473 p.quirks = quirks
474 p.im = beforeHTMLIM
475 return true
476 }
477 p.quirks = true
478 p.im = beforeHTMLIM
479 return false
480}
481
482// Section 12.2.5.4.2.
483func beforeHTMLIM(p *parser) bool {
484 switch p.tok.Type {
485 case DoctypeToken:
486 // Ignore the token.
487 return true
488 case TextToken:
489 p.tok.Data = strings.TrimLeft(p.tok.Data, whitespace)
490 if len(p.tok.Data) == 0 {
491 // It was all whitespace, so ignore it.
492 return true
493 }
494 case StartTagToken:
495 if p.tok.DataAtom == a.Html {
496 p.addElement()
497 p.im = beforeHeadIM
498 return true
499 }
500 case EndTagToken:
501 switch p.tok.DataAtom {
502 case a.Head, a.Body, a.Html, a.Br:
503 p.parseImpliedToken(StartTagToken, a.Html, a.Html.String())
504 return false
505 default:
506 // Ignore the token.
507 return true
508 }
509 case CommentToken:
510 p.doc.AppendChild(&Node{
511 Type: CommentNode,
512 Data: p.tok.Data,
513 })
514 return true
515 }
516 p.parseImpliedToken(StartTagToken, a.Html, a.Html.String())
517 return false
518}
519
520// Section 12.2.5.4.3.
521func beforeHeadIM(p *parser) bool {
522 switch p.tok.Type {
523 case TextToken:
524 p.tok.Data = strings.TrimLeft(p.tok.Data, whitespace)
525 if len(p.tok.Data) == 0 {
526 // It was all whitespace, so ignore it.
527 return true
528 }
529 case StartTagToken:
530 switch p.tok.DataAtom {
531 case a.Head:
532 p.addElement()
533 p.head = p.top()
534 p.im = inHeadIM
535 return true
536 case a.Html:
537 return inBodyIM(p)
538 }
539 case EndTagToken:
540 switch p.tok.DataAtom {
541 case a.Head, a.Body, a.Html, a.Br:
542 p.parseImpliedToken(StartTagToken, a.Head, a.Head.String())
543 return false
544 default:
545 // Ignore the token.
546 return true
547 }
548 case CommentToken:
549 p.addChild(&Node{
550 Type: CommentNode,
551 Data: p.tok.Data,
552 })
553 return true
554 case DoctypeToken:
555 // Ignore the token.
556 return true
557 }
558
559 p.parseImpliedToken(StartTagToken, a.Head, a.Head.String())
560 return false
561}
562
563// Section 12.2.5.4.4.
564func inHeadIM(p *parser) bool {
565 switch p.tok.Type {
566 case TextToken:
567 s := strings.TrimLeft(p.tok.Data, whitespace)
568 if len(s) < len(p.tok.Data) {
569 // Add the initial whitespace to the current node.
570 p.addText(p.tok.Data[:len(p.tok.Data)-len(s)])
571 if s == "" {
572 return true
573 }
574 p.tok.Data = s
575 }
576 case StartTagToken:
577 switch p.tok.DataAtom {
578 case a.Html:
579 return inBodyIM(p)
580 case a.Base, a.Basefont, a.Bgsound, a.Command, a.Link, a.Meta:
581 p.addElement()
582 p.oe.pop()
583 p.acknowledgeSelfClosingTag()
584 return true
585 case a.Script, a.Title, a.Noscript, a.Noframes, a.Style:
586 p.addElement()
587 p.setOriginalIM()
588 p.im = textIM
589 return true
590 case a.Head:
591 // Ignore the token.
592 return true
593 }
594 case EndTagToken:
595 switch p.tok.DataAtom {
596 case a.Head:
597 n := p.oe.pop()
598 if n.DataAtom != a.Head {
599 panic("html: bad parser state: <head> element not found, in the in-head insertion mode")
600 }
601 p.im = afterHeadIM
602 return true
603 case a.Body, a.Html, a.Br:
604 p.parseImpliedToken(EndTagToken, a.Head, a.Head.String())
605 return false
606 default:
607 // Ignore the token.
608 return true
609 }
610 case CommentToken:
611 p.addChild(&Node{
612 Type: CommentNode,
613 Data: p.tok.Data,
614 })
615 return true
616 case DoctypeToken:
617 // Ignore the token.
618 return true
619 }
620
621 p.parseImpliedToken(EndTagToken, a.Head, a.Head.String())
622 return false
623}
624
625// Section 12.2.5.4.6.
626func afterHeadIM(p *parser) bool {
627 switch p.tok.Type {
628 case TextToken:
629 s := strings.TrimLeft(p.tok.Data, whitespace)
630 if len(s) < len(p.tok.Data) {
631 // Add the initial whitespace to the current node.
632 p.addText(p.tok.Data[:len(p.tok.Data)-len(s)])
633 if s == "" {
634 return true
635 }
636 p.tok.Data = s
637 }
638 case StartTagToken:
639 switch p.tok.DataAtom {
640 case a.Html:
641 return inBodyIM(p)
642 case a.Body:
643 p.addElement()
644 p.framesetOK = false
645 p.im = inBodyIM
646 return true
647 case a.Frameset:
648 p.addElement()
649 p.im = inFramesetIM
650 return true
651 case a.Base, a.Basefont, a.Bgsound, a.Link, a.Meta, a.Noframes, a.Script, a.Style, a.Title:
652 p.oe = append(p.oe, p.head)
653 defer p.oe.remove(p.head)
654 return inHeadIM(p)
655 case a.Head:
656 // Ignore the token.
657 return true
658 }
659 case EndTagToken:
660 switch p.tok.DataAtom {
661 case a.Body, a.Html, a.Br:
662 // Drop down to creating an implied <body> tag.
663 default:
664 // Ignore the token.
665 return true
666 }
667 case CommentToken:
668 p.addChild(&Node{
669 Type: CommentNode,
670 Data: p.tok.Data,
671 })
672 return true
673 case DoctypeToken:
674 // Ignore the token.
675 return true
676 }
677
678 p.parseImpliedToken(StartTagToken, a.Body, a.Body.String())
679 p.framesetOK = true
680 return false
681}
682
683// copyAttributes copies attributes of src not found on dst to dst.
684func copyAttributes(dst *Node, src Token) {
685 if len(src.Attr) == 0 {
686 return
687 }
688 attr := map[string]string{}
689 for _, t := range dst.Attr {
690 attr[t.Key] = t.Val
691 }
692 for _, t := range src.Attr {
693 if _, ok := attr[t.Key]; !ok {
694 dst.Attr = append(dst.Attr, t)
695 attr[t.Key] = t.Val
696 }
697 }
698}
699
700// Section 12.2.5.4.7.
701func inBodyIM(p *parser) bool {
702 switch p.tok.Type {
703 case TextToken:
704 d := p.tok.Data
705 switch n := p.oe.top(); n.DataAtom {
706 case a.Pre, a.Listing:
707 if n.FirstChild == nil {
708 // Ignore a newline at the start of a <pre> block.
709 if d != "" && d[0] == '\r' {
710 d = d[1:]
711 }
712 if d != "" && d[0] == '\n' {
713 d = d[1:]
714 }
715 }
716 }
717 d = strings.Replace(d, "\x00", "", -1)
718 if d == "" {
719 return true
720 }
721 p.reconstructActiveFormattingElements()
722 p.addText(d)
723 if p.framesetOK && strings.TrimLeft(d, whitespace) != "" {
724 // There were non-whitespace characters inserted.
725 p.framesetOK = false
726 }
727 case StartTagToken:
728 switch p.tok.DataAtom {
729 case a.Html:
730 copyAttributes(p.oe[0], p.tok)
731 case a.Base, a.Basefont, a.Bgsound, a.Command, a.Link, a.Meta, a.Noframes, a.Script, a.Style, a.Title:
732 return inHeadIM(p)
733 case a.Body:
734 if len(p.oe) >= 2 {
735 body := p.oe[1]
736 if body.Type == ElementNode && body.DataAtom == a.Body {
737 p.framesetOK = false
738 copyAttributes(body, p.tok)
739 }
740 }
741 case a.Frameset:
742 if !p.framesetOK || len(p.oe) < 2 || p.oe[1].DataAtom != a.Body {
743 // Ignore the token.
744 return true
745 }
746 body := p.oe[1]
747 if body.Parent != nil {
748 body.Parent.RemoveChild(body)
749 }
750 p.oe = p.oe[:1]
751 p.addElement()
752 p.im = inFramesetIM
753 return true
754 case a.Address, a.Article, a.Aside, a.Blockquote, a.Center, a.Details, a.Dir, a.Div, a.Dl, a.Fieldset, a.Figcaption, a.Figure, a.Footer, a.Header, a.Hgroup, a.Menu, a.Nav, a.Ol, a.P, a.Section, a.Summary, a.Ul:
755 p.popUntil(buttonScope, a.P)
756 p.addElement()
757 case a.H1, a.H2, a.H3, a.H4, a.H5, a.H6:
758 p.popUntil(buttonScope, a.P)
759 switch n := p.top(); n.DataAtom {
760 case a.H1, a.H2, a.H3, a.H4, a.H5, a.H6:
761 p.oe.pop()
762 }
763 p.addElement()
764 case a.Pre, a.Listing:
765 p.popUntil(buttonScope, a.P)
766 p.addElement()
767 // The newline, if any, will be dealt with by the TextToken case.
768 p.framesetOK = false
769 case a.Form:
770 if p.form == nil {
771 p.popUntil(buttonScope, a.P)
772 p.addElement()
773 p.form = p.top()
774 }
775 case a.Li:
776 p.framesetOK = false
777 for i := len(p.oe) - 1; i >= 0; i-- {
778 node := p.oe[i]
779 switch node.DataAtom {
780 case a.Li:
781 p.oe = p.oe[:i]
782 case a.Address, a.Div, a.P:
783 continue
784 default:
785 if !isSpecialElement(node) {
786 continue
787 }
788 }
789 break
790 }
791 p.popUntil(buttonScope, a.P)
792 p.addElement()
793 case a.Dd, a.Dt:
794 p.framesetOK = false
795 for i := len(p.oe) - 1; i >= 0; i-- {
796 node := p.oe[i]
797 switch node.DataAtom {
798 case a.Dd, a.Dt:
799 p.oe = p.oe[:i]
800 case a.Address, a.Div, a.P:
801 continue
802 default:
803 if !isSpecialElement(node) {
804 continue
805 }
806 }
807 break
808 }
809 p.popUntil(buttonScope, a.P)
810 p.addElement()
811 case a.Plaintext:
812 p.popUntil(buttonScope, a.P)
813 p.addElement()
814 case a.Button:
815 p.popUntil(defaultScope, a.Button)
816 p.reconstructActiveFormattingElements()
817 p.addElement()
818 p.framesetOK = false
819 case a.A:
820 for i := len(p.afe) - 1; i >= 0 && p.afe[i].Type != scopeMarkerNode; i-- {
821 if n := p.afe[i]; n.Type == ElementNode && n.DataAtom == a.A {
822 p.inBodyEndTagFormatting(a.A)
823 p.oe.remove(n)
824 p.afe.remove(n)
825 break
826 }
827 }
828 p.reconstructActiveFormattingElements()
829 p.addFormattingElement()
830 case a.B, a.Big, a.Code, a.Em, a.Font, a.I, a.S, a.Small, a.Strike, a.Strong, a.Tt, a.U:
831 p.reconstructActiveFormattingElements()
832 p.addFormattingElement()
833 case a.Nobr:
834 p.reconstructActiveFormattingElements()
835 if p.elementInScope(defaultScope, a.Nobr) {
836 p.inBodyEndTagFormatting(a.Nobr)
837 p.reconstructActiveFormattingElements()
838 }
839 p.addFormattingElement()
840 case a.Applet, a.Marquee, a.Object:
841 p.reconstructActiveFormattingElements()
842 p.addElement()
843 p.afe = append(p.afe, &scopeMarker)
844 p.framesetOK = false
845 case a.Table:
846 if !p.quirks {
847 p.popUntil(buttonScope, a.P)
848 }
849 p.addElement()
850 p.framesetOK = false
851 p.im = inTableIM
852 return true
853 case a.Area, a.Br, a.Embed, a.Img, a.Input, a.Keygen, a.Wbr:
854 p.reconstructActiveFormattingElements()
855 p.addElement()
856 p.oe.pop()
857 p.acknowledgeSelfClosingTag()
858 if p.tok.DataAtom == a.Input {
859 for _, t := range p.tok.Attr {
860 if t.Key == "type" {
861 if strings.ToLower(t.Val) == "hidden" {
862 // Skip setting framesetOK = false
863 return true
864 }
865 }
866 }
867 }
868 p.framesetOK = false
869 case a.Param, a.Source, a.Track:
870 p.addElement()
871 p.oe.pop()
872 p.acknowledgeSelfClosingTag()
873 case a.Hr:
874 p.popUntil(buttonScope, a.P)
875 p.addElement()
876 p.oe.pop()
877 p.acknowledgeSelfClosingTag()
878 p.framesetOK = false
879 case a.Image:
880 p.tok.DataAtom = a.Img
881 p.tok.Data = a.Img.String()
882 return false
883 case a.Isindex:
884 if p.form != nil {
885 // Ignore the token.
886 return true
887 }
888 action := ""
889 prompt := "This is a searchable index. Enter search keywords: "
890 attr := []Attribute{{Key: "name", Val: "isindex"}}
891 for _, t := range p.tok.Attr {
892 switch t.Key {
893 case "action":
894 action = t.Val
895 case "name":
896 // Ignore the attribute.
897 case "prompt":
898 prompt = t.Val
899 default:
900 attr = append(attr, t)
901 }
902 }
903 p.acknowledgeSelfClosingTag()
904 p.popUntil(buttonScope, a.P)
905 p.parseImpliedToken(StartTagToken, a.Form, a.Form.String())
906 if action != "" {
907 p.form.Attr = []Attribute{{Key: "action", Val: action}}
908 }
909 p.parseImpliedToken(StartTagToken, a.Hr, a.Hr.String())
910 p.parseImpliedToken(StartTagToken, a.Label, a.Label.String())
911 p.addText(prompt)
912 p.addChild(&Node{
913 Type: ElementNode,
914 DataAtom: a.Input,
915 Data: a.Input.String(),
916 Attr: attr,
917 })
918 p.oe.pop()
919 p.parseImpliedToken(EndTagToken, a.Label, a.Label.String())
920 p.parseImpliedToken(StartTagToken, a.Hr, a.Hr.String())
921 p.parseImpliedToken(EndTagToken, a.Form, a.Form.String())
922 case a.Textarea:
923 p.addElement()
924 p.setOriginalIM()
925 p.framesetOK = false
926 p.im = textIM
927 case a.Xmp:
928 p.popUntil(buttonScope, a.P)
929 p.reconstructActiveFormattingElements()
930 p.framesetOK = false
931 p.addElement()
932 p.setOriginalIM()
933 p.im = textIM
934 case a.Iframe:
935 p.framesetOK = false
936 p.addElement()
937 p.setOriginalIM()
938 p.im = textIM
939 case a.Noembed, a.Noscript:
940 p.addElement()
941 p.setOriginalIM()
942 p.im = textIM
943 case a.Select:
944 p.reconstructActiveFormattingElements()
945 p.addElement()
946 p.framesetOK = false
947 p.im = inSelectIM
948 return true
949 case a.Optgroup, a.Option:
950 if p.top().DataAtom == a.Option {
951 p.oe.pop()
952 }
953 p.reconstructActiveFormattingElements()
954 p.addElement()
955 case a.Rp, a.Rt:
956 if p.elementInScope(defaultScope, a.Ruby) {
957 p.generateImpliedEndTags()
958 }
959 p.addElement()
960 case a.Math, a.Svg:
961 p.reconstructActiveFormattingElements()
962 if p.tok.DataAtom == a.Math {
963 adjustAttributeNames(p.tok.Attr, mathMLAttributeAdjustments)
964 } else {
965 adjustAttributeNames(p.tok.Attr, svgAttributeAdjustments)
966 }
967 adjustForeignAttributes(p.tok.Attr)
968 p.addElement()
969 p.top().Namespace = p.tok.Data
970 if p.hasSelfClosingToken {
971 p.oe.pop()
972 p.acknowledgeSelfClosingTag()
973 }
974 return true
975 case a.Caption, a.Col, a.Colgroup, a.Frame, a.Head, a.Tbody, a.Td, a.Tfoot, a.Th, a.Thead, a.Tr:
976 // Ignore the token.
977 default:
978 p.reconstructActiveFormattingElements()
979 p.addElement()
980 }
981 case EndTagToken:
982 switch p.tok.DataAtom {
983 case a.Body:
984 if p.elementInScope(defaultScope, a.Body) {
985 p.im = afterBodyIM
986 }
987 case a.Html:
988 if p.elementInScope(defaultScope, a.Body) {
989 p.parseImpliedToken(EndTagToken, a.Body, a.Body.String())
990 return false
991 }
992 return true
993 case a.Address, a.Article, a.Aside, a.Blockquote, a.Button, a.Center, a.Details, a.Dir, a.Div, a.Dl, a.Fieldset, a.Figcaption, a.Figure, a.Footer, a.Header, a.Hgroup, a.Listing, a.Menu, a.Nav, a.Ol, a.Pre, a.Section, a.Summary, a.Ul:
994 p.popUntil(defaultScope, p.tok.DataAtom)
995 case a.Form:
996 node := p.form
997 p.form = nil
998 i := p.indexOfElementInScope(defaultScope, a.Form)
999 if node == nil || i == -1 || p.oe[i] != node {
1000 // Ignore the token.
1001 return true
1002 }
1003 p.generateImpliedEndTags()
1004 p.oe.remove(node)
1005 case a.P:
1006 if !p.elementInScope(buttonScope, a.P) {
1007 p.parseImpliedToken(StartTagToken, a.P, a.P.String())
1008 }
1009 p.popUntil(buttonScope, a.P)
1010 case a.Li:
1011 p.popUntil(listItemScope, a.Li)
1012 case a.Dd, a.Dt:
1013 p.popUntil(defaultScope, p.tok.DataAtom)
1014 case a.H1, a.H2, a.H3, a.H4, a.H5, a.H6:
1015 p.popUntil(defaultScope, a.H1, a.H2, a.H3, a.H4, a.H5, a.H6)
1016 case a.A, a.B, a.Big, a.Code, a.Em, a.Font, a.I, a.Nobr, a.S, a.Small, a.Strike, a.Strong, a.Tt, a.U:
1017 p.inBodyEndTagFormatting(p.tok.DataAtom)
1018 case a.Applet, a.Marquee, a.Object:
1019 if p.popUntil(defaultScope, p.tok.DataAtom) {
1020 p.clearActiveFormattingElements()
1021 }
1022 case a.Br:
1023 p.tok.Type = StartTagToken
1024 return false
1025 default:
1026 p.inBodyEndTagOther(p.tok.DataAtom)
1027 }
1028 case CommentToken:
1029 p.addChild(&Node{
1030 Type: CommentNode,
1031 Data: p.tok.Data,
1032 })
1033 }
1034
1035 return true
1036}
1037
1038func (p *parser) inBodyEndTagFormatting(tagAtom a.Atom) {
1039 // This is the "adoption agency" algorithm, described at
1040 // https://html.spec.whatwg.org/multipage/syntax.html#adoptionAgency
1041
1042 // TODO: this is a fairly literal line-by-line translation of that algorithm.
1043 // Once the code successfully parses the comprehensive test suite, we should
1044 // refactor this code to be more idiomatic.
1045
1046 // Steps 1-4. The outer loop.
1047 for i := 0; i < 8; i++ {
1048 // Step 5. Find the formatting element.
1049 var formattingElement *Node
1050 for j := len(p.afe) - 1; j >= 0; j-- {
1051 if p.afe[j].Type == scopeMarkerNode {
1052 break
1053 }
1054 if p.afe[j].DataAtom == tagAtom {
1055 formattingElement = p.afe[j]
1056 break
1057 }
1058 }
1059 if formattingElement == nil {
1060 p.inBodyEndTagOther(tagAtom)
1061 return
1062 }
1063 feIndex := p.oe.index(formattingElement)
1064 if feIndex == -1 {
1065 p.afe.remove(formattingElement)
1066 return
1067 }
1068 if !p.elementInScope(defaultScope, tagAtom) {
1069 // Ignore the tag.
1070 return
1071 }
1072
1073 // Steps 9-10. Find the furthest block.
1074 var furthestBlock *Node
1075 for _, e := range p.oe[feIndex:] {
1076 if isSpecialElement(e) {
1077 furthestBlock = e
1078 break
1079 }
1080 }
1081 if furthestBlock == nil {
1082 e := p.oe.pop()
1083 for e != formattingElement {
1084 e = p.oe.pop()
1085 }
1086 p.afe.remove(e)
1087 return
1088 }
1089
1090 // Steps 11-12. Find the common ancestor and bookmark node.
1091 commonAncestor := p.oe[feIndex-1]
1092 bookmark := p.afe.index(formattingElement)
1093
1094 // Step 13. The inner loop. Find the lastNode to reparent.
1095 lastNode := furthestBlock
1096 node := furthestBlock
1097 x := p.oe.index(node)
1098 // Steps 13.1-13.2
1099 for j := 0; j < 3; j++ {
1100 // Step 13.3.
1101 x--
1102 node = p.oe[x]
1103 // Step 13.4 - 13.5.
1104 if p.afe.index(node) == -1 {
1105 p.oe.remove(node)
1106 continue
1107 }
1108 // Step 13.6.
1109 if node == formattingElement {
1110 break
1111 }
1112 // Step 13.7.
1113 clone := node.clone()
1114 p.afe[p.afe.index(node)] = clone
1115 p.oe[p.oe.index(node)] = clone
1116 node = clone
1117 // Step 13.8.
1118 if lastNode == furthestBlock {
1119 bookmark = p.afe.index(node) + 1
1120 }
1121 // Step 13.9.
1122 if lastNode.Parent != nil {
1123 lastNode.Parent.RemoveChild(lastNode)
1124 }
1125 node.AppendChild(lastNode)
1126 // Step 13.10.
1127 lastNode = node
1128 }
1129
1130 // Step 14. Reparent lastNode to the common ancestor,
1131 // or for misnested table nodes, to the foster parent.
1132 if lastNode.Parent != nil {
1133 lastNode.Parent.RemoveChild(lastNode)
1134 }
1135 switch commonAncestor.DataAtom {
1136 case a.Table, a.Tbody, a.Tfoot, a.Thead, a.Tr:
1137 p.fosterParent(lastNode)
1138 default:
1139 commonAncestor.AppendChild(lastNode)
1140 }
1141
1142 // Steps 15-17. Reparent nodes from the furthest block's children
1143 // to a clone of the formatting element.
1144 clone := formattingElement.clone()
1145 reparentChildren(clone, furthestBlock)
1146 furthestBlock.AppendChild(clone)
1147
1148 // Step 18. Fix up the list of active formatting elements.
1149 if oldLoc := p.afe.index(formattingElement); oldLoc != -1 && oldLoc < bookmark {
1150 // Move the bookmark with the rest of the list.
1151 bookmark--
1152 }
1153 p.afe.remove(formattingElement)
1154 p.afe.insert(bookmark, clone)
1155
1156 // Step 19. Fix up the stack of open elements.
1157 p.oe.remove(formattingElement)
1158 p.oe.insert(p.oe.index(furthestBlock)+1, clone)
1159 }
1160}
1161
1162// inBodyEndTagOther performs the "any other end tag" algorithm for inBodyIM.
1163// "Any other end tag" handling from 12.2.5.5 The rules for parsing tokens in foreign content
1164// https://html.spec.whatwg.org/multipage/syntax.html#parsing-main-inforeign
1165func (p *parser) inBodyEndTagOther(tagAtom a.Atom) {
1166 for i := len(p.oe) - 1; i >= 0; i-- {
1167 if p.oe[i].DataAtom == tagAtom {
1168 p.oe = p.oe[:i]
1169 break
1170 }
1171 if isSpecialElement(p.oe[i]) {
1172 break
1173 }
1174 }
1175}
1176
1177// Section 12.2.5.4.8.
1178func textIM(p *parser) bool {
1179 switch p.tok.Type {
1180 case ErrorToken:
1181 p.oe.pop()
1182 case TextToken:
1183 d := p.tok.Data
1184 if n := p.oe.top(); n.DataAtom == a.Textarea && n.FirstChild == nil {
1185 // Ignore a newline at the start of a <textarea> block.
1186 if d != "" && d[0] == '\r' {
1187 d = d[1:]
1188 }
1189 if d != "" && d[0] == '\n' {
1190 d = d[1:]
1191 }
1192 }
1193 if d == "" {
1194 return true
1195 }
1196 p.addText(d)
1197 return true
1198 case EndTagToken:
1199 p.oe.pop()
1200 }
1201 p.im = p.originalIM
1202 p.originalIM = nil
1203 return p.tok.Type == EndTagToken
1204}
1205
1206// Section 12.2.5.4.9.
1207func inTableIM(p *parser) bool {
1208 switch p.tok.Type {
1209 case ErrorToken:
1210 // Stop parsing.
1211 return true
1212 case TextToken:
1213 p.tok.Data = strings.Replace(p.tok.Data, "\x00", "", -1)
1214 switch p.oe.top().DataAtom {
1215 case a.Table, a.Tbody, a.Tfoot, a.Thead, a.Tr:
1216 if strings.Trim(p.tok.Data, whitespace) == "" {
1217 p.addText(p.tok.Data)
1218 return true
1219 }
1220 }
1221 case StartTagToken:
1222 switch p.tok.DataAtom {
1223 case a.Caption:
1224 p.clearStackToContext(tableScope)
1225 p.afe = append(p.afe, &scopeMarker)
1226 p.addElement()
1227 p.im = inCaptionIM
1228 return true
1229 case a.Colgroup:
1230 p.clearStackToContext(tableScope)
1231 p.addElement()
1232 p.im = inColumnGroupIM
1233 return true
1234 case a.Col:
1235 p.parseImpliedToken(StartTagToken, a.Colgroup, a.Colgroup.String())
1236 return false
1237 case a.Tbody, a.Tfoot, a.Thead:
1238 p.clearStackToContext(tableScope)
1239 p.addElement()
1240 p.im = inTableBodyIM
1241 return true
1242 case a.Td, a.Th, a.Tr:
1243 p.parseImpliedToken(StartTagToken, a.Tbody, a.Tbody.String())
1244 return false
1245 case a.Table:
1246 if p.popUntil(tableScope, a.Table) {
1247 p.resetInsertionMode()
1248 return false
1249 }
1250 // Ignore the token.
1251 return true
1252 case a.Style, a.Script:
1253 return inHeadIM(p)
1254 case a.Input:
1255 for _, t := range p.tok.Attr {
1256 if t.Key == "type" && strings.ToLower(t.Val) == "hidden" {
1257 p.addElement()
1258 p.oe.pop()
1259 return true
1260 }
1261 }
1262 // Otherwise drop down to the default action.
1263 case a.Form:
1264 if p.form != nil {
1265 // Ignore the token.
1266 return true
1267 }
1268 p.addElement()
1269 p.form = p.oe.pop()
1270 case a.Select:
1271 p.reconstructActiveFormattingElements()
1272 switch p.top().DataAtom {
1273 case a.Table, a.Tbody, a.Tfoot, a.Thead, a.Tr:
1274 p.fosterParenting = true
1275 }
1276 p.addElement()
1277 p.fosterParenting = false
1278 p.framesetOK = false
1279 p.im = inSelectInTableIM
1280 return true
1281 }
1282 case EndTagToken:
1283 switch p.tok.DataAtom {
1284 case a.Table:
1285 if p.popUntil(tableScope, a.Table) {
1286 p.resetInsertionMode()
1287 return true
1288 }
1289 // Ignore the token.
1290 return true
1291 case a.Body, a.Caption, a.Col, a.Colgroup, a.Html, a.Tbody, a.Td, a.Tfoot, a.Th, a.Thead, a.Tr:
1292 // Ignore the token.
1293 return true
1294 }
1295 case CommentToken:
1296 p.addChild(&Node{
1297 Type: CommentNode,
1298 Data: p.tok.Data,
1299 })
1300 return true
1301 case DoctypeToken:
1302 // Ignore the token.
1303 return true
1304 }
1305
1306 p.fosterParenting = true
1307 defer func() { p.fosterParenting = false }()
1308
1309 return inBodyIM(p)
1310}
1311
1312// Section 12.2.5.4.11.
1313func inCaptionIM(p *parser) bool {
1314 switch p.tok.Type {
1315 case StartTagToken:
1316 switch p.tok.DataAtom {
1317 case a.Caption, a.Col, a.Colgroup, a.Tbody, a.Td, a.Tfoot, a.Thead, a.Tr:
1318 if p.popUntil(tableScope, a.Caption) {
1319 p.clearActiveFormattingElements()
1320 p.im = inTableIM
1321 return false
1322 } else {
1323 // Ignore the token.
1324 return true
1325 }
1326 case a.Select:
1327 p.reconstructActiveFormattingElements()
1328 p.addElement()
1329 p.framesetOK = false
1330 p.im = inSelectInTableIM
1331 return true
1332 }
1333 case EndTagToken:
1334 switch p.tok.DataAtom {
1335 case a.Caption:
1336 if p.popUntil(tableScope, a.Caption) {
1337 p.clearActiveFormattingElements()
1338 p.im = inTableIM
1339 }
1340 return true
1341 case a.Table:
1342 if p.popUntil(tableScope, a.Caption) {
1343 p.clearActiveFormattingElements()
1344 p.im = inTableIM
1345 return false
1346 } else {
1347 // Ignore the token.
1348 return true
1349 }
1350 case a.Body, a.Col, a.Colgroup, a.Html, a.Tbody, a.Td, a.Tfoot, a.Th, a.Thead, a.Tr:
1351 // Ignore the token.
1352 return true
1353 }
1354 }
1355 return inBodyIM(p)
1356}
1357
1358// Section 12.2.5.4.12.
1359func inColumnGroupIM(p *parser) bool {
1360 switch p.tok.Type {
1361 case TextToken:
1362 s := strings.TrimLeft(p.tok.Data, whitespace)
1363 if len(s) < len(p.tok.Data) {
1364 // Add the initial whitespace to the current node.
1365 p.addText(p.tok.Data[:len(p.tok.Data)-len(s)])
1366 if s == "" {
1367 return true
1368 }
1369 p.tok.Data = s
1370 }
1371 case CommentToken:
1372 p.addChild(&Node{
1373 Type: CommentNode,
1374 Data: p.tok.Data,
1375 })
1376 return true
1377 case DoctypeToken:
1378 // Ignore the token.
1379 return true
1380 case StartTagToken:
1381 switch p.tok.DataAtom {
1382 case a.Html:
1383 return inBodyIM(p)
1384 case a.Col:
1385 p.addElement()
1386 p.oe.pop()
1387 p.acknowledgeSelfClosingTag()
1388 return true
1389 }
1390 case EndTagToken:
1391 switch p.tok.DataAtom {
1392 case a.Colgroup:
1393 if p.oe.top().DataAtom != a.Html {
1394 p.oe.pop()
1395 p.im = inTableIM
1396 }
1397 return true
1398 case a.Col:
1399 // Ignore the token.
1400 return true
1401 }
1402 }
1403 if p.oe.top().DataAtom != a.Html {
1404 p.oe.pop()
1405 p.im = inTableIM
1406 return false
1407 }
1408 return true
1409}
1410
1411// Section 12.2.5.4.13.
1412func inTableBodyIM(p *parser) bool {
1413 switch p.tok.Type {
1414 case StartTagToken:
1415 switch p.tok.DataAtom {
1416 case a.Tr:
1417 p.clearStackToContext(tableBodyScope)
1418 p.addElement()
1419 p.im = inRowIM
1420 return true
1421 case a.Td, a.Th:
1422 p.parseImpliedToken(StartTagToken, a.Tr, a.Tr.String())
1423 return false
1424 case a.Caption, a.Col, a.Colgroup, a.Tbody, a.Tfoot, a.Thead:
1425 if p.popUntil(tableScope, a.Tbody, a.Thead, a.Tfoot) {
1426 p.im = inTableIM
1427 return false
1428 }
1429 // Ignore the token.
1430 return true
1431 }
1432 case EndTagToken:
1433 switch p.tok.DataAtom {
1434 case a.Tbody, a.Tfoot, a.Thead:
1435 if p.elementInScope(tableScope, p.tok.DataAtom) {
1436 p.clearStackToContext(tableBodyScope)
1437 p.oe.pop()
1438 p.im = inTableIM
1439 }
1440 return true
1441 case a.Table:
1442 if p.popUntil(tableScope, a.Tbody, a.Thead, a.Tfoot) {
1443 p.im = inTableIM
1444 return false
1445 }
1446 // Ignore the token.
1447 return true
1448 case a.Body, a.Caption, a.Col, a.Colgroup, a.Html, a.Td, a.Th, a.Tr:
1449 // Ignore the token.
1450 return true
1451 }
1452 case CommentToken:
1453 p.addChild(&Node{
1454 Type: CommentNode,
1455 Data: p.tok.Data,
1456 })
1457 return true
1458 }
1459
1460 return inTableIM(p)
1461}
1462
1463// Section 12.2.5.4.14.
1464func inRowIM(p *parser) bool {
1465 switch p.tok.Type {
1466 case StartTagToken:
1467 switch p.tok.DataAtom {
1468 case a.Td, a.Th:
1469 p.clearStackToContext(tableRowScope)
1470 p.addElement()
1471 p.afe = append(p.afe, &scopeMarker)
1472 p.im = inCellIM
1473 return true
1474 case a.Caption, a.Col, a.Colgroup, a.Tbody, a.Tfoot, a.Thead, a.Tr:
1475 if p.popUntil(tableScope, a.Tr) {
1476 p.im = inTableBodyIM
1477 return false
1478 }
1479 // Ignore the token.
1480 return true
1481 }
1482 case EndTagToken:
1483 switch p.tok.DataAtom {
1484 case a.Tr:
1485 if p.popUntil(tableScope, a.Tr) {
1486 p.im = inTableBodyIM
1487 return true
1488 }
1489 // Ignore the token.
1490 return true
1491 case a.Table:
1492 if p.popUntil(tableScope, a.Tr) {
1493 p.im = inTableBodyIM
1494 return false
1495 }
1496 // Ignore the token.
1497 return true
1498 case a.Tbody, a.Tfoot, a.Thead:
1499 if p.elementInScope(tableScope, p.tok.DataAtom) {
1500 p.parseImpliedToken(EndTagToken, a.Tr, a.Tr.String())
1501 return false
1502 }
1503 // Ignore the token.
1504 return true
1505 case a.Body, a.Caption, a.Col, a.Colgroup, a.Html, a.Td, a.Th:
1506 // Ignore the token.
1507 return true
1508 }
1509 }
1510
1511 return inTableIM(p)
1512}
1513
1514// Section 12.2.5.4.15.
1515func inCellIM(p *parser) bool {
1516 switch p.tok.Type {
1517 case StartTagToken:
1518 switch p.tok.DataAtom {
1519 case a.Caption, a.Col, a.Colgroup, a.Tbody, a.Td, a.Tfoot, a.Th, a.Thead, a.Tr:
1520 if p.popUntil(tableScope, a.Td, a.Th) {
1521 // Close the cell and reprocess.
1522 p.clearActiveFormattingElements()
1523 p.im = inRowIM
1524 return false
1525 }
1526 // Ignore the token.
1527 return true
1528 case a.Select:
1529 p.reconstructActiveFormattingElements()
1530 p.addElement()
1531 p.framesetOK = false
1532 p.im = inSelectInTableIM
1533 return true
1534 }
1535 case EndTagToken:
1536 switch p.tok.DataAtom {
1537 case a.Td, a.Th:
1538 if !p.popUntil(tableScope, p.tok.DataAtom) {
1539 // Ignore the token.
1540 return true
1541 }
1542 p.clearActiveFormattingElements()
1543 p.im = inRowIM
1544 return true
1545 case a.Body, a.Caption, a.Col, a.Colgroup, a.Html:
1546 // Ignore the token.
1547 return true
1548 case a.Table, a.Tbody, a.Tfoot, a.Thead, a.Tr:
1549 if !p.elementInScope(tableScope, p.tok.DataAtom) {
1550 // Ignore the token.
1551 return true
1552 }
1553 // Close the cell and reprocess.
1554 p.popUntil(tableScope, a.Td, a.Th)
1555 p.clearActiveFormattingElements()
1556 p.im = inRowIM
1557 return false
1558 }
1559 }
1560 return inBodyIM(p)
1561}
1562
1563// Section 12.2.5.4.16.
1564func inSelectIM(p *parser) bool {
1565 switch p.tok.Type {
1566 case ErrorToken:
1567 // Stop parsing.
1568 return true
1569 case TextToken:
1570 p.addText(strings.Replace(p.tok.Data, "\x00", "", -1))
1571 case StartTagToken:
1572 switch p.tok.DataAtom {
1573 case a.Html:
1574 return inBodyIM(p)
1575 case a.Option:
1576 if p.top().DataAtom == a.Option {
1577 p.oe.pop()
1578 }
1579 p.addElement()
1580 case a.Optgroup:
1581 if p.top().DataAtom == a.Option {
1582 p.oe.pop()
1583 }
1584 if p.top().DataAtom == a.Optgroup {
1585 p.oe.pop()
1586 }
1587 p.addElement()
1588 case a.Select:
1589 p.tok.Type = EndTagToken
1590 return false
1591 case a.Input, a.Keygen, a.Textarea:
1592 if p.elementInScope(selectScope, a.Select) {
1593 p.parseImpliedToken(EndTagToken, a.Select, a.Select.String())
1594 return false
1595 }
1596 // In order to properly ignore <textarea>, we need to change the tokenizer mode.
1597 p.tokenizer.NextIsNotRawText()
1598 // Ignore the token.
1599 return true
1600 case a.Script:
1601 return inHeadIM(p)
1602 }
1603 case EndTagToken:
1604 switch p.tok.DataAtom {
1605 case a.Option:
1606 if p.top().DataAtom == a.Option {
1607 p.oe.pop()
1608 }
1609 case a.Optgroup:
1610 i := len(p.oe) - 1
1611 if p.oe[i].DataAtom == a.Option {
1612 i--
1613 }
1614 if p.oe[i].DataAtom == a.Optgroup {
1615 p.oe = p.oe[:i]
1616 }
1617 case a.Select:
1618 if p.popUntil(selectScope, a.Select) {
1619 p.resetInsertionMode()
1620 }
1621 }
1622 case CommentToken:
1623 p.addChild(&Node{
1624 Type: CommentNode,
1625 Data: p.tok.Data,
1626 })
1627 case DoctypeToken:
1628 // Ignore the token.
1629 return true
1630 }
1631
1632 return true
1633}
1634
1635// Section 12.2.5.4.17.
1636func inSelectInTableIM(p *parser) bool {
1637 switch p.tok.Type {
1638 case StartTagToken, EndTagToken:
1639 switch p.tok.DataAtom {
1640 case a.Caption, a.Table, a.Tbody, a.Tfoot, a.Thead, a.Tr, a.Td, a.Th:
1641 if p.tok.Type == StartTagToken || p.elementInScope(tableScope, p.tok.DataAtom) {
1642 p.parseImpliedToken(EndTagToken, a.Select, a.Select.String())
1643 return false
1644 } else {
1645 // Ignore the token.
1646 return true
1647 }
1648 }
1649 }
1650 return inSelectIM(p)
1651}
1652
1653// Section 12.2.5.4.18.
1654func afterBodyIM(p *parser) bool {
1655 switch p.tok.Type {
1656 case ErrorToken:
1657 // Stop parsing.
1658 return true
1659 case TextToken:
1660 s := strings.TrimLeft(p.tok.Data, whitespace)
1661 if len(s) == 0 {
1662 // It was all whitespace.
1663 return inBodyIM(p)
1664 }
1665 case StartTagToken:
1666 if p.tok.DataAtom == a.Html {
1667 return inBodyIM(p)
1668 }
1669 case EndTagToken:
1670 if p.tok.DataAtom == a.Html {
1671 if !p.fragment {
1672 p.im = afterAfterBodyIM
1673 }
1674 return true
1675 }
1676 case CommentToken:
1677 // The comment is attached to the <html> element.
1678 if len(p.oe) < 1 || p.oe[0].DataAtom != a.Html {
1679 panic("html: bad parser state: <html> element not found, in the after-body insertion mode")
1680 }
1681 p.oe[0].AppendChild(&Node{
1682 Type: CommentNode,
1683 Data: p.tok.Data,
1684 })
1685 return true
1686 }
1687 p.im = inBodyIM
1688 return false
1689}
1690
1691// Section 12.2.5.4.19.
1692func inFramesetIM(p *parser) bool {
1693 switch p.tok.Type {
1694 case CommentToken:
1695 p.addChild(&Node{
1696 Type: CommentNode,
1697 Data: p.tok.Data,
1698 })
1699 case TextToken:
1700 // Ignore all text but whitespace.
1701 s := strings.Map(func(c rune) rune {
1702 switch c {
1703 case ' ', '\t', '\n', '\f', '\r':
1704 return c
1705 }
1706 return -1
1707 }, p.tok.Data)
1708 if s != "" {
1709 p.addText(s)
1710 }
1711 case StartTagToken:
1712 switch p.tok.DataAtom {
1713 case a.Html:
1714 return inBodyIM(p)
1715 case a.Frameset:
1716 p.addElement()
1717 case a.Frame:
1718 p.addElement()
1719 p.oe.pop()
1720 p.acknowledgeSelfClosingTag()
1721 case a.Noframes:
1722 return inHeadIM(p)
1723 }
1724 case EndTagToken:
1725 switch p.tok.DataAtom {
1726 case a.Frameset:
1727 if p.oe.top().DataAtom != a.Html {
1728 p.oe.pop()
1729 if p.oe.top().DataAtom != a.Frameset {
1730 p.im = afterFramesetIM
1731 return true
1732 }
1733 }
1734 }
1735 default:
1736 // Ignore the token.
1737 }
1738 return true
1739}
1740
1741// Section 12.2.5.4.20.
1742func afterFramesetIM(p *parser) bool {
1743 switch p.tok.Type {
1744 case CommentToken:
1745 p.addChild(&Node{
1746 Type: CommentNode,
1747 Data: p.tok.Data,
1748 })
1749 case TextToken:
1750 // Ignore all text but whitespace.
1751 s := strings.Map(func(c rune) rune {
1752 switch c {
1753 case ' ', '\t', '\n', '\f', '\r':
1754 return c
1755 }
1756 return -1
1757 }, p.tok.Data)
1758 if s != "" {
1759 p.addText(s)
1760 }
1761 case StartTagToken:
1762 switch p.tok.DataAtom {
1763 case a.Html:
1764 return inBodyIM(p)
1765 case a.Noframes:
1766 return inHeadIM(p)
1767 }
1768 case EndTagToken:
1769 switch p.tok.DataAtom {
1770 case a.Html:
1771 p.im = afterAfterFramesetIM
1772 return true
1773 }
1774 default:
1775 // Ignore the token.
1776 }
1777 return true
1778}
1779
1780// Section 12.2.5.4.21.
1781func afterAfterBodyIM(p *parser) bool {
1782 switch p.tok.Type {
1783 case ErrorToken:
1784 // Stop parsing.
1785 return true
1786 case TextToken:
1787 s := strings.TrimLeft(p.tok.Data, whitespace)
1788 if len(s) == 0 {
1789 // It was all whitespace.
1790 return inBodyIM(p)
1791 }
1792 case StartTagToken:
1793 if p.tok.DataAtom == a.Html {
1794 return inBodyIM(p)
1795 }
1796 case CommentToken:
1797 p.doc.AppendChild(&Node{
1798 Type: CommentNode,
1799 Data: p.tok.Data,
1800 })
1801 return true
1802 case DoctypeToken:
1803 return inBodyIM(p)
1804 }
1805 p.im = inBodyIM
1806 return false
1807}
1808
1809// Section 12.2.5.4.22.
1810func afterAfterFramesetIM(p *parser) bool {
1811 switch p.tok.Type {
1812 case CommentToken:
1813 p.doc.AppendChild(&Node{
1814 Type: CommentNode,
1815 Data: p.tok.Data,
1816 })
1817 case TextToken:
1818 // Ignore all text but whitespace.
1819 s := strings.Map(func(c rune) rune {
1820 switch c {
1821 case ' ', '\t', '\n', '\f', '\r':
1822 return c
1823 }
1824 return -1
1825 }, p.tok.Data)
1826 if s != "" {
1827 p.tok.Data = s
1828 return inBodyIM(p)
1829 }
1830 case StartTagToken:
1831 switch p.tok.DataAtom {
1832 case a.Html:
1833 return inBodyIM(p)
1834 case a.Noframes:
1835 return inHeadIM(p)
1836 }
1837 case DoctypeToken:
1838 return inBodyIM(p)
1839 default:
1840 // Ignore the token.
1841 }
1842 return true
1843}
1844
1845const whitespaceOrNUL = whitespace + "\x00"
1846
1847// Section 12.2.5.5.
1848func parseForeignContent(p *parser) bool {
1849 switch p.tok.Type {
1850 case TextToken:
1851 if p.framesetOK {
1852 p.framesetOK = strings.TrimLeft(p.tok.Data, whitespaceOrNUL) == ""
1853 }
1854 p.tok.Data = strings.Replace(p.tok.Data, "\x00", "\ufffd", -1)
1855 p.addText(p.tok.Data)
1856 case CommentToken:
1857 p.addChild(&Node{
1858 Type: CommentNode,
1859 Data: p.tok.Data,
1860 })
1861 case StartTagToken:
1862 b := breakout[p.tok.Data]
1863 if p.tok.DataAtom == a.Font {
1864 loop:
1865 for _, attr := range p.tok.Attr {
1866 switch attr.Key {
1867 case "color", "face", "size":
1868 b = true
1869 break loop
1870 }
1871 }
1872 }
1873 if b {
1874 for i := len(p.oe) - 1; i >= 0; i-- {
1875 n := p.oe[i]
1876 if n.Namespace == "" || htmlIntegrationPoint(n) || mathMLTextIntegrationPoint(n) {
1877 p.oe = p.oe[:i+1]
1878 break
1879 }
1880 }
1881 return false
1882 }
1883 switch p.top().Namespace {
1884 case "math":
1885 adjustAttributeNames(p.tok.Attr, mathMLAttributeAdjustments)
1886 case "svg":
1887 // Adjust SVG tag names. The tokenizer lower-cases tag names, but
1888 // SVG wants e.g. "foreignObject" with a capital second "O".
1889 if x := svgTagNameAdjustments[p.tok.Data]; x != "" {
1890 p.tok.DataAtom = a.Lookup([]byte(x))
1891 p.tok.Data = x
1892 }
1893 adjustAttributeNames(p.tok.Attr, svgAttributeAdjustments)
1894 default:
1895 panic("html: bad parser state: unexpected namespace")
1896 }
1897 adjustForeignAttributes(p.tok.Attr)
1898 namespace := p.top().Namespace
1899 p.addElement()
1900 p.top().Namespace = namespace
1901 if namespace != "" {
1902 // Don't let the tokenizer go into raw text mode in foreign content
1903 // (e.g. in an SVG <title> tag).
1904 p.tokenizer.NextIsNotRawText()
1905 }
1906 if p.hasSelfClosingToken {
1907 p.oe.pop()
1908 p.acknowledgeSelfClosingTag()
1909 }
1910 case EndTagToken:
1911 for i := len(p.oe) - 1; i >= 0; i-- {
1912 if p.oe[i].Namespace == "" {
1913 return p.im(p)
1914 }
1915 if strings.EqualFold(p.oe[i].Data, p.tok.Data) {
1916 p.oe = p.oe[:i]
1917 break
1918 }
1919 }
1920 return true
1921 default:
1922 // Ignore the token.
1923 }
1924 return true
1925}
1926
1927// Section 12.2.5.
1928func (p *parser) inForeignContent() bool {
1929 if len(p.oe) == 0 {
1930 return false
1931 }
1932 n := p.oe[len(p.oe)-1]
1933 if n.Namespace == "" {
1934 return false
1935 }
1936 if mathMLTextIntegrationPoint(n) {
1937 if p.tok.Type == StartTagToken && p.tok.DataAtom != a.Mglyph && p.tok.DataAtom != a.Malignmark {
1938 return false
1939 }
1940 if p.tok.Type == TextToken {
1941 return false
1942 }
1943 }
1944 if n.Namespace == "math" && n.DataAtom == a.AnnotationXml && p.tok.Type == StartTagToken && p.tok.DataAtom == a.Svg {
1945 return false
1946 }
1947 if htmlIntegrationPoint(n) && (p.tok.Type == StartTagToken || p.tok.Type == TextToken) {
1948 return false
1949 }
1950 if p.tok.Type == ErrorToken {
1951 return false
1952 }
1953 return true
1954}
1955
1956// parseImpliedToken parses a token as though it had appeared in the parser's
1957// input.
1958func (p *parser) parseImpliedToken(t TokenType, dataAtom a.Atom, data string) {
1959 realToken, selfClosing := p.tok, p.hasSelfClosingToken
1960 p.tok = Token{
1961 Type: t,
1962 DataAtom: dataAtom,
1963 Data: data,
1964 }
1965 p.hasSelfClosingToken = false
1966 p.parseCurrentToken()
1967 p.tok, p.hasSelfClosingToken = realToken, selfClosing
1968}
1969
1970// parseCurrentToken runs the current token through the parsing routines
1971// until it is consumed.
1972func (p *parser) parseCurrentToken() {
1973 if p.tok.Type == SelfClosingTagToken {
1974 p.hasSelfClosingToken = true
1975 p.tok.Type = StartTagToken
1976 }
1977
1978 consumed := false
1979 for !consumed {
1980 if p.inForeignContent() {
1981 consumed = parseForeignContent(p)
1982 } else {
1983 consumed = p.im(p)
1984 }
1985 }
1986
1987 if p.hasSelfClosingToken {
1988 // This is a parse error, but ignore it.
1989 p.hasSelfClosingToken = false
1990 }
1991}
1992
1993func (p *parser) parse() error {
1994 // Iterate until EOF. Any other error will cause an early return.
1995 var err error
1996 for err != io.EOF {
1997 // CDATA sections are allowed only in foreign content.
1998 n := p.oe.top()
1999 p.tokenizer.AllowCDATA(n != nil && n.Namespace != "")
2000 // Read and parse the next token.
2001 p.tokenizer.Next()
2002 p.tok = p.tokenizer.Token()
2003 if p.tok.Type == ErrorToken {
2004 err = p.tokenizer.Err()
2005 if err != nil && err != io.EOF {
2006 return err
2007 }
2008 }
2009 p.parseCurrentToken()
2010 }
2011 return nil
2012}
2013
2014// Parse returns the parse tree for the HTML from the given Reader.
2015// The input is assumed to be UTF-8 encoded.
2016func Parse(r io.Reader) (*Node, error) {
2017 p := &parser{
2018 tokenizer: NewTokenizer(r),
2019 doc: &Node{
2020 Type: DocumentNode,
2021 },
2022 scripting: true,
2023 framesetOK: true,
2024 im: initialIM,
2025 }
2026 err := p.parse()
2027 if err != nil {
2028 return nil, err
2029 }
2030 return p.doc, nil
2031}
2032
2033// ParseFragment parses a fragment of HTML and returns the nodes that were
2034// found. If the fragment is the InnerHTML for an existing element, pass that
2035// element in context.
2036func ParseFragment(r io.Reader, context *Node) ([]*Node, error) {
2037 contextTag := ""
2038 if context != nil {
2039 if context.Type != ElementNode {
2040 return nil, errors.New("html: ParseFragment of non-element Node")
2041 }
2042 // The next check isn't just context.DataAtom.String() == context.Data because
2043 // it is valid to pass an element whose tag isn't a known atom. For example,
2044 // DataAtom == 0 and Data = "tagfromthefuture" is perfectly consistent.
2045 if context.DataAtom != a.Lookup([]byte(context.Data)) {
2046 return nil, fmt.Errorf("html: inconsistent Node: DataAtom=%q, Data=%q", context.DataAtom, context.Data)
2047 }
2048 contextTag = context.DataAtom.String()
2049 }
2050 p := &parser{
2051 tokenizer: NewTokenizerFragment(r, contextTag),
2052 doc: &Node{
2053 Type: DocumentNode,
2054 },
2055 scripting: true,
2056 fragment: true,
2057 context: context,
2058 }
2059
2060 root := &Node{
2061 Type: ElementNode,
2062 DataAtom: a.Html,
2063 Data: a.Html.String(),
2064 }
2065 p.doc.AppendChild(root)
2066 p.oe = nodeStack{root}
2067 p.resetInsertionMode()
2068
2069 for n := context; n != nil; n = n.Parent {
2070 if n.Type == ElementNode && n.DataAtom == a.Form {
2071 p.form = n
2072 break
2073 }
2074 }
2075
2076 err := p.parse()
2077 if err != nil {
2078 return nil, err
2079 }
2080
2081 parent := p.doc
2082 if context != nil {
2083 parent = root
2084 }
2085
2086 var result []*Node
2087 for c := parent.FirstChild; c != nil; {
2088 next := c.NextSibling
2089 parent.RemoveChild(c)
2090 result = append(result, c)
2091 c = next
2092 }
2093 return result, nil
2094}
diff --git a/vendor/golang.org/x/net/html/render.go b/vendor/golang.org/x/net/html/render.go
deleted file mode 100644
index d34564f..0000000
--- a/vendor/golang.org/x/net/html/render.go
+++ /dev/null
@@ -1,271 +0,0 @@
1// Copyright 2011 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package html
6
7import (
8 "bufio"
9 "errors"
10 "fmt"
11 "io"
12 "strings"
13)
14
15type writer interface {
16 io.Writer
17 io.ByteWriter
18 WriteString(string) (int, error)
19}
20
21// Render renders the parse tree n to the given writer.
22//
23// Rendering is done on a 'best effort' basis: calling Parse on the output of
24// Render will always result in something similar to the original tree, but it
25// is not necessarily an exact clone unless the original tree was 'well-formed'.
26// 'Well-formed' is not easily specified; the HTML5 specification is
27// complicated.
28//
29// Calling Parse on arbitrary input typically results in a 'well-formed' parse
30// tree. However, it is possible for Parse to yield a 'badly-formed' parse tree.
31// For example, in a 'well-formed' parse tree, no <a> element is a child of
32// another <a> element: parsing "<a><a>" results in two sibling elements.
33// Similarly, in a 'well-formed' parse tree, no <a> element is a child of a
34// <table> element: parsing "<p><table><a>" results in a <p> with two sibling
35// children; the <a> is reparented to the <table>'s parent. However, calling
36// Parse on "<a><table><a>" does not return an error, but the result has an <a>
37// element with an <a> child, and is therefore not 'well-formed'.
38//
39// Programmatically constructed trees are typically also 'well-formed', but it
40// is possible to construct a tree that looks innocuous but, when rendered and
41// re-parsed, results in a different tree. A simple example is that a solitary
42// text node would become a tree containing <html>, <head> and <body> elements.
43// Another example is that the programmatic equivalent of "a<head>b</head>c"
44// becomes "<html><head><head/><body>abc</body></html>".
45func Render(w io.Writer, n *Node) error {
46 if x, ok := w.(writer); ok {
47 return render(x, n)
48 }
49 buf := bufio.NewWriter(w)
50 if err := render(buf, n); err != nil {
51 return err
52 }
53 return buf.Flush()
54}
55
56// plaintextAbort is returned from render1 when a <plaintext> element
57// has been rendered. No more end tags should be rendered after that.
58var plaintextAbort = errors.New("html: internal error (plaintext abort)")
59
60func render(w writer, n *Node) error {
61 err := render1(w, n)
62 if err == plaintextAbort {
63 err = nil
64 }
65 return err
66}
67
68func render1(w writer, n *Node) error {
69 // Render non-element nodes; these are the easy cases.
70 switch n.Type {
71 case ErrorNode:
72 return errors.New("html: cannot render an ErrorNode node")
73 case TextNode:
74 return escape(w, n.Data)
75 case DocumentNode:
76 for c := n.FirstChild; c != nil; c = c.NextSibling {
77 if err := render1(w, c); err != nil {
78 return err
79 }
80 }
81 return nil
82 case ElementNode:
83 // No-op.
84 case CommentNode:
85 if _, err := w.WriteString("<!--"); err != nil {
86 return err
87 }
88 if _, err := w.WriteString(n.Data); err != nil {
89 return err
90 }
91 if _, err := w.WriteString("-->"); err != nil {
92 return err
93 }
94 return nil
95 case DoctypeNode:
96 if _, err := w.WriteString("<!DOCTYPE "); err != nil {
97 return err
98 }
99 if _, err := w.WriteString(n.Data); err != nil {
100 return err
101 }
102 if n.Attr != nil {
103 var p, s string
104 for _, a := range n.Attr {
105 switch a.Key {
106 case "public":
107 p = a.Val
108 case "system":
109 s = a.Val
110 }
111 }
112 if p != "" {
113 if _, err := w.WriteString(" PUBLIC "); err != nil {
114 return err
115 }
116 if err := writeQuoted(w, p); err != nil {
117 return err
118 }
119 if s != "" {
120 if err := w.WriteByte(' '); err != nil {
121 return err
122 }
123 if err := writeQuoted(w, s); err != nil {
124 return err
125 }
126 }
127 } else if s != "" {
128 if _, err := w.WriteString(" SYSTEM "); err != nil {
129 return err
130 }
131 if err := writeQuoted(w, s); err != nil {
132 return err
133 }
134 }
135 }
136 return w.WriteByte('>')
137 default:
138 return errors.New("html: unknown node type")
139 }
140
141 // Render the <xxx> opening tag.
142 if err := w.WriteByte('<'); err != nil {
143 return err
144 }
145 if _, err := w.WriteString(n.Data); err != nil {
146 return err
147 }
148 for _, a := range n.Attr {
149 if err := w.WriteByte(' '); err != nil {
150 return err
151 }
152 if a.Namespace != "" {
153 if _, err := w.WriteString(a.Namespace); err != nil {
154 return err
155 }
156 if err := w.WriteByte(':'); err != nil {
157 return err
158 }
159 }
160 if _, err := w.WriteString(a.Key); err != nil {
161 return err
162 }
163 if _, err := w.WriteString(`="`); err != nil {
164 return err
165 }
166 if err := escape(w, a.Val); err != nil {
167 return err
168 }
169 if err := w.WriteByte('"'); err != nil {
170 return err
171 }
172 }
173 if voidElements[n.Data] {
174 if n.FirstChild != nil {
175 return fmt.Errorf("html: void element <%s> has child nodes", n.Data)
176 }
177 _, err := w.WriteString("/>")
178 return err
179 }
180 if err := w.WriteByte('>'); err != nil {
181 return err
182 }
183
184 // Add initial newline where there is danger of a newline beging ignored.
185 if c := n.FirstChild; c != nil && c.Type == TextNode && strings.HasPrefix(c.Data, "\n") {
186 switch n.Data {
187 case "pre", "listing", "textarea":
188 if err := w.WriteByte('\n'); err != nil {
189 return err
190 }
191 }
192 }
193
194 // Render any child nodes.
195 switch n.Data {
196 case "iframe", "noembed", "noframes", "noscript", "plaintext", "script", "style", "xmp":
197 for c := n.FirstChild; c != nil; c = c.NextSibling {
198 if c.Type == TextNode {
199 if _, err := w.WriteString(c.Data); err != nil {
200 return err
201 }
202 } else {
203 if err := render1(w, c); err != nil {
204 return err
205 }
206 }
207 }
208 if n.Data == "plaintext" {
209 // Don't render anything else. <plaintext> must be the
210 // last element in the file, with no closing tag.
211 return plaintextAbort
212 }
213 default:
214 for c := n.FirstChild; c != nil; c = c.NextSibling {
215 if err := render1(w, c); err != nil {
216 return err
217 }
218 }
219 }
220
221 // Render the </xxx> closing tag.
222 if _, err := w.WriteString("</"); err != nil {
223 return err
224 }
225 if _, err := w.WriteString(n.Data); err != nil {
226 return err
227 }
228 return w.WriteByte('>')
229}
230
231// writeQuoted writes s to w surrounded by quotes. Normally it will use double
232// quotes, but if s contains a double quote, it will use single quotes.
233// It is used for writing the identifiers in a doctype declaration.
234// In valid HTML, they can't contain both types of quotes.
235func writeQuoted(w writer, s string) error {
236 var q byte = '"'
237 if strings.Contains(s, `"`) {
238 q = '\''
239 }
240 if err := w.WriteByte(q); err != nil {
241 return err
242 }
243 if _, err := w.WriteString(s); err != nil {
244 return err
245 }
246 if err := w.WriteByte(q); err != nil {
247 return err
248 }
249 return nil
250}
251
252// Section 12.1.2, "Elements", gives this list of void elements. Void elements
253// are those that can't have any contents.
254var voidElements = map[string]bool{
255 "area": true,
256 "base": true,
257 "br": true,
258 "col": true,
259 "command": true,
260 "embed": true,
261 "hr": true,
262 "img": true,
263 "input": true,
264 "keygen": true,
265 "link": true,
266 "meta": true,
267 "param": true,
268 "source": true,
269 "track": true,
270 "wbr": true,
271}
diff --git a/vendor/golang.org/x/net/html/token.go b/vendor/golang.org/x/net/html/token.go
deleted file mode 100644
index 893e272..0000000
--- a/vendor/golang.org/x/net/html/token.go
+++ /dev/null
@@ -1,1219 +0,0 @@
1// Copyright 2010 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package html
6
7import (
8 "bytes"
9 "errors"
10 "io"
11 "strconv"
12 "strings"
13
14 "golang.org/x/net/html/atom"
15)
16
17// A TokenType is the type of a Token.
18type TokenType uint32
19
20const (
21 // ErrorToken means that an error occurred during tokenization.
22 ErrorToken TokenType = iota
23 // TextToken means a text node.
24 TextToken
25 // A StartTagToken looks like <a>.
26 StartTagToken
27 // An EndTagToken looks like </a>.
28 EndTagToken
29 // A SelfClosingTagToken tag looks like <br/>.
30 SelfClosingTagToken
31 // A CommentToken looks like <!--x-->.
32 CommentToken
33 // A DoctypeToken looks like <!DOCTYPE x>
34 DoctypeToken
35)
36
37// ErrBufferExceeded means that the buffering limit was exceeded.
38var ErrBufferExceeded = errors.New("max buffer exceeded")
39
40// String returns a string representation of the TokenType.
41func (t TokenType) String() string {
42 switch t {
43 case ErrorToken:
44 return "Error"
45 case TextToken:
46 return "Text"
47 case StartTagToken:
48 return "StartTag"
49 case EndTagToken:
50 return "EndTag"
51 case SelfClosingTagToken:
52 return "SelfClosingTag"
53 case CommentToken:
54 return "Comment"
55 case DoctypeToken:
56 return "Doctype"
57 }
58 return "Invalid(" + strconv.Itoa(int(t)) + ")"
59}
60
61// An Attribute is an attribute namespace-key-value triple. Namespace is
62// non-empty for foreign attributes like xlink, Key is alphabetic (and hence
63// does not contain escapable characters like '&', '<' or '>'), and Val is
64// unescaped (it looks like "a<b" rather than "a&lt;b").
65//
66// Namespace is only used by the parser, not the tokenizer.
67type Attribute struct {
68 Namespace, Key, Val string
69}
70
71// A Token consists of a TokenType and some Data (tag name for start and end
72// tags, content for text, comments and doctypes). A tag Token may also contain
73// a slice of Attributes. Data is unescaped for all Tokens (it looks like "a<b"
74// rather than "a&lt;b"). For tag Tokens, DataAtom is the atom for Data, or
75// zero if Data is not a known tag name.
76type Token struct {
77 Type TokenType
78 DataAtom atom.Atom
79 Data string
80 Attr []Attribute
81}
82
83// tagString returns a string representation of a tag Token's Data and Attr.
84func (t Token) tagString() string {
85 if len(t.Attr) == 0 {
86 return t.Data
87 }
88 buf := bytes.NewBufferString(t.Data)
89 for _, a := range t.Attr {
90 buf.WriteByte(' ')
91 buf.WriteString(a.Key)
92 buf.WriteString(`="`)
93 escape(buf, a.Val)
94 buf.WriteByte('"')
95 }
96 return buf.String()
97}
98
99// String returns a string representation of the Token.
100func (t Token) String() string {
101 switch t.Type {
102 case ErrorToken:
103 return ""
104 case TextToken:
105 return EscapeString(t.Data)
106 case StartTagToken:
107 return "<" + t.tagString() + ">"
108 case EndTagToken:
109 return "</" + t.tagString() + ">"
110 case SelfClosingTagToken:
111 return "<" + t.tagString() + "/>"
112 case CommentToken:
113 return "<!--" + t.Data + "-->"
114 case DoctypeToken:
115 return "<!DOCTYPE " + t.Data + ">"
116 }
117 return "Invalid(" + strconv.Itoa(int(t.Type)) + ")"
118}
119
120// span is a range of bytes in a Tokenizer's buffer. The start is inclusive,
121// the end is exclusive.
122type span struct {
123 start, end int
124}
125
126// A Tokenizer returns a stream of HTML Tokens.
127type Tokenizer struct {
128 // r is the source of the HTML text.
129 r io.Reader
130 // tt is the TokenType of the current token.
131 tt TokenType
132 // err is the first error encountered during tokenization. It is possible
133 // for tt != Error && err != nil to hold: this means that Next returned a
134 // valid token but the subsequent Next call will return an error token.
135 // For example, if the HTML text input was just "plain", then the first
136 // Next call would set z.err to io.EOF but return a TextToken, and all
137 // subsequent Next calls would return an ErrorToken.
138 // err is never reset. Once it becomes non-nil, it stays non-nil.
139 err error
140 // readErr is the error returned by the io.Reader r. It is separate from
141 // err because it is valid for an io.Reader to return (n int, err1 error)
142 // such that n > 0 && err1 != nil, and callers should always process the
143 // n > 0 bytes before considering the error err1.
144 readErr error
145 // buf[raw.start:raw.end] holds the raw bytes of the current token.
146 // buf[raw.end:] is buffered input that will yield future tokens.
147 raw span
148 buf []byte
149 // maxBuf limits the data buffered in buf. A value of 0 means unlimited.
150 maxBuf int
151 // buf[data.start:data.end] holds the raw bytes of the current token's data:
152 // a text token's text, a tag token's tag name, etc.
153 data span
154 // pendingAttr is the attribute key and value currently being tokenized.
155 // When complete, pendingAttr is pushed onto attr. nAttrReturned is
156 // incremented on each call to TagAttr.
157 pendingAttr [2]span
158 attr [][2]span
159 nAttrReturned int
160 // rawTag is the "script" in "</script>" that closes the next token. If
161 // non-empty, the subsequent call to Next will return a raw or RCDATA text
162 // token: one that treats "<p>" as text instead of an element.
163 // rawTag's contents are lower-cased.
164 rawTag string
165 // textIsRaw is whether the current text token's data is not escaped.
166 textIsRaw bool
167 // convertNUL is whether NUL bytes in the current token's data should
168 // be converted into \ufffd replacement characters.
169 convertNUL bool
170 // allowCDATA is whether CDATA sections are allowed in the current context.
171 allowCDATA bool
172}
173
174// AllowCDATA sets whether or not the tokenizer recognizes <![CDATA[foo]]> as
175// the text "foo". The default value is false, which means to recognize it as
176// a bogus comment "<!-- [CDATA[foo]] -->" instead.
177//
178// Strictly speaking, an HTML5 compliant tokenizer should allow CDATA if and
179// only if tokenizing foreign content, such as MathML and SVG. However,
180// tracking foreign-contentness is difficult to do purely in the tokenizer,
181// as opposed to the parser, due to HTML integration points: an <svg> element
182// can contain a <foreignObject> that is foreign-to-SVG but not foreign-to-
183// HTML. For strict compliance with the HTML5 tokenization algorithm, it is the
184// responsibility of the user of a tokenizer to call AllowCDATA as appropriate.
185// In practice, if using the tokenizer without caring whether MathML or SVG
186// CDATA is text or comments, such as tokenizing HTML to find all the anchor
187// text, it is acceptable to ignore this responsibility.
188func (z *Tokenizer) AllowCDATA(allowCDATA bool) {
189 z.allowCDATA = allowCDATA
190}
191
192// NextIsNotRawText instructs the tokenizer that the next token should not be
193// considered as 'raw text'. Some elements, such as script and title elements,
194// normally require the next token after the opening tag to be 'raw text' that
195// has no child elements. For example, tokenizing "<title>a<b>c</b>d</title>"
196// yields a start tag token for "<title>", a text token for "a<b>c</b>d", and
197// an end tag token for "</title>". There are no distinct start tag or end tag
198// tokens for the "<b>" and "</b>".
199//
200// This tokenizer implementation will generally look for raw text at the right
201// times. Strictly speaking, an HTML5 compliant tokenizer should not look for
202// raw text if in foreign content: <title> generally needs raw text, but a
203// <title> inside an <svg> does not. Another example is that a <textarea>
204// generally needs raw text, but a <textarea> is not allowed as an immediate
205// child of a <select>; in normal parsing, a <textarea> implies </select>, but
206// one cannot close the implicit element when parsing a <select>'s InnerHTML.
207// Similarly to AllowCDATA, tracking the correct moment to override raw-text-
208// ness is difficult to do purely in the tokenizer, as opposed to the parser.
209// For strict compliance with the HTML5 tokenization algorithm, it is the
210// responsibility of the user of a tokenizer to call NextIsNotRawText as
211// appropriate. In practice, like AllowCDATA, it is acceptable to ignore this
212// responsibility for basic usage.
213//
214// Note that this 'raw text' concept is different from the one offered by the
215// Tokenizer.Raw method.
216func (z *Tokenizer) NextIsNotRawText() {
217 z.rawTag = ""
218}
219
220// Err returns the error associated with the most recent ErrorToken token.
221// This is typically io.EOF, meaning the end of tokenization.
222func (z *Tokenizer) Err() error {
223 if z.tt != ErrorToken {
224 return nil
225 }
226 return z.err
227}
228
229// readByte returns the next byte from the input stream, doing a buffered read
230// from z.r into z.buf if necessary. z.buf[z.raw.start:z.raw.end] remains a contiguous byte
231// slice that holds all the bytes read so far for the current token.
232// It sets z.err if the underlying reader returns an error.
233// Pre-condition: z.err == nil.
234func (z *Tokenizer) readByte() byte {
235 if z.raw.end >= len(z.buf) {
236 // Our buffer is exhausted and we have to read from z.r. Check if the
237 // previous read resulted in an error.
238 if z.readErr != nil {
239 z.err = z.readErr
240 return 0
241 }
242 // We copy z.buf[z.raw.start:z.raw.end] to the beginning of z.buf. If the length
243 // z.raw.end - z.raw.start is more than half the capacity of z.buf, then we
244 // allocate a new buffer before the copy.
245 c := cap(z.buf)
246 d := z.raw.end - z.raw.start
247 var buf1 []byte
248 if 2*d > c {
249 buf1 = make([]byte, d, 2*c)
250 } else {
251 buf1 = z.buf[:d]
252 }
253 copy(buf1, z.buf[z.raw.start:z.raw.end])
254 if x := z.raw.start; x != 0 {
255 // Adjust the data/attr spans to refer to the same contents after the copy.
256 z.data.start -= x
257 z.data.end -= x
258 z.pendingAttr[0].start -= x
259 z.pendingAttr[0].end -= x
260 z.pendingAttr[1].start -= x
261 z.pendingAttr[1].end -= x
262 for i := range z.attr {
263 z.attr[i][0].start -= x
264 z.attr[i][0].end -= x
265 z.attr[i][1].start -= x
266 z.attr[i][1].end -= x
267 }
268 }
269 z.raw.start, z.raw.end, z.buf = 0, d, buf1[:d]
270 // Now that we have copied the live bytes to the start of the buffer,
271 // we read from z.r into the remainder.
272 var n int
273 n, z.readErr = readAtLeastOneByte(z.r, buf1[d:cap(buf1)])
274 if n == 0 {
275 z.err = z.readErr
276 return 0
277 }
278 z.buf = buf1[:d+n]
279 }
280 x := z.buf[z.raw.end]
281 z.raw.end++
282 if z.maxBuf > 0 && z.raw.end-z.raw.start >= z.maxBuf {
283 z.err = ErrBufferExceeded
284 return 0
285 }
286 return x
287}
288
289// Buffered returns a slice containing data buffered but not yet tokenized.
290func (z *Tokenizer) Buffered() []byte {
291 return z.buf[z.raw.end:]
292}
293
294// readAtLeastOneByte wraps an io.Reader so that reading cannot return (0, nil).
295// It returns io.ErrNoProgress if the underlying r.Read method returns (0, nil)
296// too many times in succession.
297func readAtLeastOneByte(r io.Reader, b []byte) (int, error) {
298 for i := 0; i < 100; i++ {
299 n, err := r.Read(b)
300 if n != 0 || err != nil {
301 return n, err
302 }
303 }
304 return 0, io.ErrNoProgress
305}
306
307// skipWhiteSpace skips past any white space.
308func (z *Tokenizer) skipWhiteSpace() {
309 if z.err != nil {
310 return
311 }
312 for {
313 c := z.readByte()
314 if z.err != nil {
315 return
316 }
317 switch c {
318 case ' ', '\n', '\r', '\t', '\f':
319 // No-op.
320 default:
321 z.raw.end--
322 return
323 }
324 }
325}
326
327// readRawOrRCDATA reads until the next "</foo>", where "foo" is z.rawTag and
328// is typically something like "script" or "textarea".
329func (z *Tokenizer) readRawOrRCDATA() {
330 if z.rawTag == "script" {
331 z.readScript()
332 z.textIsRaw = true
333 z.rawTag = ""
334 return
335 }
336loop:
337 for {
338 c := z.readByte()
339 if z.err != nil {
340 break loop
341 }
342 if c != '<' {
343 continue loop
344 }
345 c = z.readByte()
346 if z.err != nil {
347 break loop
348 }
349 if c != '/' {
350 continue loop
351 }
352 if z.readRawEndTag() || z.err != nil {
353 break loop
354 }
355 }
356 z.data.end = z.raw.end
357 // A textarea's or title's RCDATA can contain escaped entities.
358 z.textIsRaw = z.rawTag != "textarea" && z.rawTag != "title"
359 z.rawTag = ""
360}
361
362// readRawEndTag attempts to read a tag like "</foo>", where "foo" is z.rawTag.
363// If it succeeds, it backs up the input position to reconsume the tag and
364// returns true. Otherwise it returns false. The opening "</" has already been
365// consumed.
366func (z *Tokenizer) readRawEndTag() bool {
367 for i := 0; i < len(z.rawTag); i++ {
368 c := z.readByte()
369 if z.err != nil {
370 return false
371 }
372 if c != z.rawTag[i] && c != z.rawTag[i]-('a'-'A') {
373 z.raw.end--
374 return false
375 }
376 }
377 c := z.readByte()
378 if z.err != nil {
379 return false
380 }
381 switch c {
382 case ' ', '\n', '\r', '\t', '\f', '/', '>':
383 // The 3 is 2 for the leading "</" plus 1 for the trailing character c.
384 z.raw.end -= 3 + len(z.rawTag)
385 return true
386 }
387 z.raw.end--
388 return false
389}
390
391// readScript reads until the next </script> tag, following the byzantine
392// rules for escaping/hiding the closing tag.
393func (z *Tokenizer) readScript() {
394 defer func() {
395 z.data.end = z.raw.end
396 }()
397 var c byte
398
399scriptData:
400 c = z.readByte()
401 if z.err != nil {
402 return
403 }
404 if c == '<' {
405 goto scriptDataLessThanSign
406 }
407 goto scriptData
408
409scriptDataLessThanSign:
410 c = z.readByte()
411 if z.err != nil {
412 return
413 }
414 switch c {
415 case '/':
416 goto scriptDataEndTagOpen
417 case '!':
418 goto scriptDataEscapeStart
419 }
420 z.raw.end--
421 goto scriptData
422
423scriptDataEndTagOpen:
424 if z.readRawEndTag() || z.err != nil {
425 return
426 }
427 goto scriptData
428
429scriptDataEscapeStart:
430 c = z.readByte()
431 if z.err != nil {
432 return
433 }
434 if c == '-' {
435 goto scriptDataEscapeStartDash
436 }
437 z.raw.end--
438 goto scriptData
439
440scriptDataEscapeStartDash:
441 c = z.readByte()
442 if z.err != nil {
443 return
444 }
445 if c == '-' {
446 goto scriptDataEscapedDashDash
447 }
448 z.raw.end--
449 goto scriptData
450
451scriptDataEscaped:
452 c = z.readByte()
453 if z.err != nil {
454 return
455 }
456 switch c {
457 case '-':
458 goto scriptDataEscapedDash
459 case '<':
460 goto scriptDataEscapedLessThanSign
461 }
462 goto scriptDataEscaped
463
464scriptDataEscapedDash:
465 c = z.readByte()
466 if z.err != nil {
467 return
468 }
469 switch c {
470 case '-':
471 goto scriptDataEscapedDashDash
472 case '<':
473 goto scriptDataEscapedLessThanSign
474 }
475 goto scriptDataEscaped
476
477scriptDataEscapedDashDash:
478 c = z.readByte()
479 if z.err != nil {
480 return
481 }
482 switch c {
483 case '-':
484 goto scriptDataEscapedDashDash
485 case '<':
486 goto scriptDataEscapedLessThanSign
487 case '>':
488 goto scriptData
489 }
490 goto scriptDataEscaped
491
492scriptDataEscapedLessThanSign:
493 c = z.readByte()
494 if z.err != nil {
495 return
496 }
497 if c == '/' {
498 goto scriptDataEscapedEndTagOpen
499 }
500 if 'a' <= c && c <= 'z' || 'A' <= c && c <= 'Z' {
501 goto scriptDataDoubleEscapeStart
502 }
503 z.raw.end--
504 goto scriptData
505
506scriptDataEscapedEndTagOpen:
507 if z.readRawEndTag() || z.err != nil {
508 return
509 }
510 goto scriptDataEscaped
511
512scriptDataDoubleEscapeStart:
513 z.raw.end--
514 for i := 0; i < len("script"); i++ {
515 c = z.readByte()
516 if z.err != nil {
517 return
518 }
519 if c != "script"[i] && c != "SCRIPT"[i] {
520 z.raw.end--
521 goto scriptDataEscaped
522 }
523 }
524 c = z.readByte()
525 if z.err != nil {
526 return
527 }
528 switch c {
529 case ' ', '\n', '\r', '\t', '\f', '/', '>':
530 goto scriptDataDoubleEscaped
531 }
532 z.raw.end--
533 goto scriptDataEscaped
534
535scriptDataDoubleEscaped:
536 c = z.readByte()
537 if z.err != nil {
538 return
539 }
540 switch c {
541 case '-':
542 goto scriptDataDoubleEscapedDash
543 case '<':
544 goto scriptDataDoubleEscapedLessThanSign
545 }
546 goto scriptDataDoubleEscaped
547
548scriptDataDoubleEscapedDash:
549 c = z.readByte()
550 if z.err != nil {
551 return
552 }
553 switch c {
554 case '-':
555 goto scriptDataDoubleEscapedDashDash
556 case '<':
557 goto scriptDataDoubleEscapedLessThanSign
558 }
559 goto scriptDataDoubleEscaped
560
561scriptDataDoubleEscapedDashDash:
562 c = z.readByte()
563 if z.err != nil {
564 return
565 }
566 switch c {
567 case '-':
568 goto scriptDataDoubleEscapedDashDash
569 case '<':
570 goto scriptDataDoubleEscapedLessThanSign
571 case '>':
572 goto scriptData
573 }
574 goto scriptDataDoubleEscaped
575
576scriptDataDoubleEscapedLessThanSign:
577 c = z.readByte()
578 if z.err != nil {
579 return
580 }
581 if c == '/' {
582 goto scriptDataDoubleEscapeEnd
583 }
584 z.raw.end--
585 goto scriptDataDoubleEscaped
586
587scriptDataDoubleEscapeEnd:
588 if z.readRawEndTag() {
589 z.raw.end += len("</script>")
590 goto scriptDataEscaped
591 }
592 if z.err != nil {
593 return
594 }
595 goto scriptDataDoubleEscaped
596}
597
598// readComment reads the next comment token starting with "<!--". The opening
599// "<!--" has already been consumed.
600func (z *Tokenizer) readComment() {
601 z.data.start = z.raw.end
602 defer func() {
603 if z.data.end < z.data.start {
604 // It's a comment with no data, like <!-->.
605 z.data.end = z.data.start
606 }
607 }()
608 for dashCount := 2; ; {
609 c := z.readByte()
610 if z.err != nil {
611 // Ignore up to two dashes at EOF.
612 if dashCount > 2 {
613 dashCount = 2
614 }
615 z.data.end = z.raw.end - dashCount
616 return
617 }
618 switch c {
619 case '-':
620 dashCount++
621 continue
622 case '>':
623 if dashCount >= 2 {
624 z.data.end = z.raw.end - len("-->")
625 return
626 }
627 case '!':
628 if dashCount >= 2 {
629 c = z.readByte()
630 if z.err != nil {
631 z.data.end = z.raw.end
632 return
633 }
634 if c == '>' {
635 z.data.end = z.raw.end - len("--!>")
636 return
637 }
638 }
639 }
640 dashCount = 0
641 }
642}
643
644// readUntilCloseAngle reads until the next ">".
645func (z *Tokenizer) readUntilCloseAngle() {
646 z.data.start = z.raw.end
647 for {
648 c := z.readByte()
649 if z.err != nil {
650 z.data.end = z.raw.end
651 return
652 }
653 if c == '>' {
654 z.data.end = z.raw.end - len(">")
655 return
656 }
657 }
658}
659
660// readMarkupDeclaration reads the next token starting with "<!". It might be
661// a "<!--comment-->", a "<!DOCTYPE foo>", a "<![CDATA[section]]>" or
662// "<!a bogus comment". The opening "<!" has already been consumed.
663func (z *Tokenizer) readMarkupDeclaration() TokenType {
664 z.data.start = z.raw.end
665 var c [2]byte
666 for i := 0; i < 2; i++ {
667 c[i] = z.readByte()
668 if z.err != nil {
669 z.data.end = z.raw.end
670 return CommentToken
671 }
672 }
673 if c[0] == '-' && c[1] == '-' {
674 z.readComment()
675 return CommentToken
676 }
677 z.raw.end -= 2
678 if z.readDoctype() {
679 return DoctypeToken
680 }
681 if z.allowCDATA && z.readCDATA() {
682 z.convertNUL = true
683 return TextToken
684 }
685 // It's a bogus comment.
686 z.readUntilCloseAngle()
687 return CommentToken
688}
689
690// readDoctype attempts to read a doctype declaration and returns true if
691// successful. The opening "<!" has already been consumed.
692func (z *Tokenizer) readDoctype() bool {
693 const s = "DOCTYPE"
694 for i := 0; i < len(s); i++ {
695 c := z.readByte()
696 if z.err != nil {
697 z.data.end = z.raw.end
698 return false
699 }
700 if c != s[i] && c != s[i]+('a'-'A') {
701 // Back up to read the fragment of "DOCTYPE" again.
702 z.raw.end = z.data.start
703 return false
704 }
705 }
706 if z.skipWhiteSpace(); z.err != nil {
707 z.data.start = z.raw.end
708 z.data.end = z.raw.end
709 return true
710 }
711 z.readUntilCloseAngle()
712 return true
713}
714
715// readCDATA attempts to read a CDATA section and returns true if
716// successful. The opening "<!" has already been consumed.
717func (z *Tokenizer) readCDATA() bool {
718 const s = "[CDATA["
719 for i := 0; i < len(s); i++ {
720 c := z.readByte()
721 if z.err != nil {
722 z.data.end = z.raw.end
723 return false
724 }
725 if c != s[i] {
726 // Back up to read the fragment of "[CDATA[" again.
727 z.raw.end = z.data.start
728 return false
729 }
730 }
731 z.data.start = z.raw.end
732 brackets := 0
733 for {
734 c := z.readByte()
735 if z.err != nil {
736 z.data.end = z.raw.end
737 return true
738 }
739 switch c {
740 case ']':
741 brackets++
742 case '>':
743 if brackets >= 2 {
744 z.data.end = z.raw.end - len("]]>")
745 return true
746 }
747 brackets = 0
748 default:
749 brackets = 0
750 }
751 }
752}
753
754// startTagIn returns whether the start tag in z.buf[z.data.start:z.data.end]
755// case-insensitively matches any element of ss.
756func (z *Tokenizer) startTagIn(ss ...string) bool {
757loop:
758 for _, s := range ss {
759 if z.data.end-z.data.start != len(s) {
760 continue loop
761 }
762 for i := 0; i < len(s); i++ {
763 c := z.buf[z.data.start+i]
764 if 'A' <= c && c <= 'Z' {
765 c += 'a' - 'A'
766 }
767 if c != s[i] {
768 continue loop
769 }
770 }
771 return true
772 }
773 return false
774}
775
776// readStartTag reads the next start tag token. The opening "<a" has already
777// been consumed, where 'a' means anything in [A-Za-z].
778func (z *Tokenizer) readStartTag() TokenType {
779 z.readTag(true)
780 if z.err != nil {
781 return ErrorToken
782 }
783 // Several tags flag the tokenizer's next token as raw.
784 c, raw := z.buf[z.data.start], false
785 if 'A' <= c && c <= 'Z' {
786 c += 'a' - 'A'
787 }
788 switch c {
789 case 'i':
790 raw = z.startTagIn("iframe")
791 case 'n':
792 raw = z.startTagIn("noembed", "noframes", "noscript")
793 case 'p':
794 raw = z.startTagIn("plaintext")
795 case 's':
796 raw = z.startTagIn("script", "style")
797 case 't':
798 raw = z.startTagIn("textarea", "title")
799 case 'x':
800 raw = z.startTagIn("xmp")
801 }
802 if raw {
803 z.rawTag = strings.ToLower(string(z.buf[z.data.start:z.data.end]))
804 }
805 // Look for a self-closing token like "<br/>".
806 if z.err == nil && z.buf[z.raw.end-2] == '/' {
807 return SelfClosingTagToken
808 }
809 return StartTagToken
810}
811
812// readTag reads the next tag token and its attributes. If saveAttr, those
813// attributes are saved in z.attr, otherwise z.attr is set to an empty slice.
814// The opening "<a" or "</a" has already been consumed, where 'a' means anything
815// in [A-Za-z].
816func (z *Tokenizer) readTag(saveAttr bool) {
817 z.attr = z.attr[:0]
818 z.nAttrReturned = 0
819 // Read the tag name and attribute key/value pairs.
820 z.readTagName()
821 if z.skipWhiteSpace(); z.err != nil {
822 return
823 }
824 for {
825 c := z.readByte()
826 if z.err != nil || c == '>' {
827 break
828 }
829 z.raw.end--
830 z.readTagAttrKey()
831 z.readTagAttrVal()
832 // Save pendingAttr if saveAttr and that attribute has a non-empty key.
833 if saveAttr && z.pendingAttr[0].start != z.pendingAttr[0].end {
834 z.attr = append(z.attr, z.pendingAttr)
835 }
836 if z.skipWhiteSpace(); z.err != nil {
837 break
838 }
839 }
840}
841
842// readTagName sets z.data to the "div" in "<div k=v>". The reader (z.raw.end)
843// is positioned such that the first byte of the tag name (the "d" in "<div")
844// has already been consumed.
845func (z *Tokenizer) readTagName() {
846 z.data.start = z.raw.end - 1
847 for {
848 c := z.readByte()
849 if z.err != nil {
850 z.data.end = z.raw.end
851 return
852 }
853 switch c {
854 case ' ', '\n', '\r', '\t', '\f':
855 z.data.end = z.raw.end - 1
856 return
857 case '/', '>':
858 z.raw.end--
859 z.data.end = z.raw.end
860 return
861 }
862 }
863}
864
865// readTagAttrKey sets z.pendingAttr[0] to the "k" in "<div k=v>".
866// Precondition: z.err == nil.
867func (z *Tokenizer) readTagAttrKey() {
868 z.pendingAttr[0].start = z.raw.end
869 for {
870 c := z.readByte()
871 if z.err != nil {
872 z.pendingAttr[0].end = z.raw.end
873 return
874 }
875 switch c {
876 case ' ', '\n', '\r', '\t', '\f', '/':
877 z.pendingAttr[0].end = z.raw.end - 1
878 return
879 case '=', '>':
880 z.raw.end--
881 z.pendingAttr[0].end = z.raw.end
882 return
883 }
884 }
885}
886
887// readTagAttrVal sets z.pendingAttr[1] to the "v" in "<div k=v>".
888func (z *Tokenizer) readTagAttrVal() {
889 z.pendingAttr[1].start = z.raw.end
890 z.pendingAttr[1].end = z.raw.end
891 if z.skipWhiteSpace(); z.err != nil {
892 return
893 }
894 c := z.readByte()
895 if z.err != nil {
896 return
897 }
898 if c != '=' {
899 z.raw.end--
900 return
901 }
902 if z.skipWhiteSpace(); z.err != nil {
903 return
904 }
905 quote := z.readByte()
906 if z.err != nil {
907 return
908 }
909 switch quote {
910 case '>':
911 z.raw.end--
912 return
913
914 case '\'', '"':
915 z.pendingAttr[1].start = z.raw.end
916 for {
917 c := z.readByte()
918 if z.err != nil {
919 z.pendingAttr[1].end = z.raw.end
920 return
921 }
922 if c == quote {
923 z.pendingAttr[1].end = z.raw.end - 1
924 return
925 }
926 }
927
928 default:
929 z.pendingAttr[1].start = z.raw.end - 1
930 for {
931 c := z.readByte()
932 if z.err != nil {
933 z.pendingAttr[1].end = z.raw.end
934 return
935 }
936 switch c {
937 case ' ', '\n', '\r', '\t', '\f':
938 z.pendingAttr[1].end = z.raw.end - 1
939 return
940 case '>':
941 z.raw.end--
942 z.pendingAttr[1].end = z.raw.end
943 return
944 }
945 }
946 }
947}
948
949// Next scans the next token and returns its type.
950func (z *Tokenizer) Next() TokenType {
951 z.raw.start = z.raw.end
952 z.data.start = z.raw.end
953 z.data.end = z.raw.end
954 if z.err != nil {
955 z.tt = ErrorToken
956 return z.tt
957 }
958 if z.rawTag != "" {
959 if z.rawTag == "plaintext" {
960 // Read everything up to EOF.
961 for z.err == nil {
962 z.readByte()
963 }
964 z.data.end = z.raw.end
965 z.textIsRaw = true
966 } else {
967 z.readRawOrRCDATA()
968 }
969 if z.data.end > z.data.start {
970 z.tt = TextToken
971 z.convertNUL = true
972 return z.tt
973 }
974 }
975 z.textIsRaw = false
976 z.convertNUL = false
977
978loop:
979 for {
980 c := z.readByte()
981 if z.err != nil {
982 break loop
983 }
984 if c != '<' {
985 continue loop
986 }
987
988 // Check if the '<' we have just read is part of a tag, comment
989 // or doctype. If not, it's part of the accumulated text token.
990 c = z.readByte()
991 if z.err != nil {
992 break loop
993 }
994 var tokenType TokenType
995 switch {
996 case 'a' <= c && c <= 'z' || 'A' <= c && c <= 'Z':
997 tokenType = StartTagToken
998 case c == '/':
999 tokenType = EndTagToken
1000 case c == '!' || c == '?':
1001 // We use CommentToken to mean any of "<!--actual comments-->",
1002 // "<!DOCTYPE declarations>" and "<?xml processing instructions?>".
1003 tokenType = CommentToken
1004 default:
1005 // Reconsume the current character.
1006 z.raw.end--
1007 continue
1008 }
1009
1010 // We have a non-text token, but we might have accumulated some text
1011 // before that. If so, we return the text first, and return the non-
1012 // text token on the subsequent call to Next.
1013 if x := z.raw.end - len("<a"); z.raw.start < x {
1014 z.raw.end = x
1015 z.data.end = x
1016 z.tt = TextToken
1017 return z.tt
1018 }
1019 switch tokenType {
1020 case StartTagToken:
1021 z.tt = z.readStartTag()
1022 return z.tt
1023 case EndTagToken:
1024 c = z.readByte()
1025 if z.err != nil {
1026 break loop
1027 }
1028 if c == '>' {
1029 // "</>" does not generate a token at all. Generate an empty comment
1030 // to allow passthrough clients to pick up the data using Raw.
1031 // Reset the tokenizer state and start again.
1032 z.tt = CommentToken
1033 return z.tt
1034 }
1035 if 'a' <= c && c <= 'z' || 'A' <= c && c <= 'Z' {
1036 z.readTag(false)
1037 if z.err != nil {
1038 z.tt = ErrorToken
1039 } else {
1040 z.tt = EndTagToken
1041 }
1042 return z.tt
1043 }
1044 z.raw.end--
1045 z.readUntilCloseAngle()
1046 z.tt = CommentToken
1047 return z.tt
1048 case CommentToken:
1049 if c == '!' {
1050 z.tt = z.readMarkupDeclaration()
1051 return z.tt
1052 }
1053 z.raw.end--
1054 z.readUntilCloseAngle()
1055 z.tt = CommentToken
1056 return z.tt
1057 }
1058 }
1059 if z.raw.start < z.raw.end {
1060 z.data.end = z.raw.end
1061 z.tt = TextToken
1062 return z.tt
1063 }
1064 z.tt = ErrorToken
1065 return z.tt
1066}
1067
1068// Raw returns the unmodified text of the current token. Calling Next, Token,
1069// Text, TagName or TagAttr may change the contents of the returned slice.
1070func (z *Tokenizer) Raw() []byte {
1071 return z.buf[z.raw.start:z.raw.end]
1072}
1073
1074// convertNewlines converts "\r" and "\r\n" in s to "\n".
1075// The conversion happens in place, but the resulting slice may be shorter.
1076func convertNewlines(s []byte) []byte {
1077 for i, c := range s {
1078 if c != '\r' {
1079 continue
1080 }
1081
1082 src := i + 1
1083 if src >= len(s) || s[src] != '\n' {
1084 s[i] = '\n'
1085 continue
1086 }
1087
1088 dst := i
1089 for src < len(s) {
1090 if s[src] == '\r' {
1091 if src+1 < len(s) && s[src+1] == '\n' {
1092 src++
1093 }
1094 s[dst] = '\n'
1095 } else {
1096 s[dst] = s[src]
1097 }
1098 src++
1099 dst++
1100 }
1101 return s[:dst]
1102 }
1103 return s
1104}
1105
1106var (
1107 nul = []byte("\x00")
1108 replacement = []byte("\ufffd")
1109)
1110
1111// Text returns the unescaped text of a text, comment or doctype token. The
1112// contents of the returned slice may change on the next call to Next.
1113func (z *Tokenizer) Text() []byte {
1114 switch z.tt {
1115 case TextToken, CommentToken, DoctypeToken:
1116 s := z.buf[z.data.start:z.data.end]
1117 z.data.start = z.raw.end
1118 z.data.end = z.raw.end
1119 s = convertNewlines(s)
1120 if (z.convertNUL || z.tt == CommentToken) && bytes.Contains(s, nul) {
1121 s = bytes.Replace(s, nul, replacement, -1)
1122 }
1123 if !z.textIsRaw {
1124 s = unescape(s, false)
1125 }
1126 return s
1127 }
1128 return nil
1129}
1130
1131// TagName returns the lower-cased name of a tag token (the `img` out of
1132// `<IMG SRC="foo">`) and whether the tag has attributes.
1133// The contents of the returned slice may change on the next call to Next.
1134func (z *Tokenizer) TagName() (name []byte, hasAttr bool) {
1135 if z.data.start < z.data.end {
1136 switch z.tt {
1137 case StartTagToken, EndTagToken, SelfClosingTagToken:
1138 s := z.buf[z.data.start:z.data.end]
1139 z.data.start = z.raw.end
1140 z.data.end = z.raw.end
1141 return lower(s), z.nAttrReturned < len(z.attr)
1142 }
1143 }
1144 return nil, false
1145}
1146
1147// TagAttr returns the lower-cased key and unescaped value of the next unparsed
1148// attribute for the current tag token and whether there are more attributes.
1149// The contents of the returned slices may change on the next call to Next.
1150func (z *Tokenizer) TagAttr() (key, val []byte, moreAttr bool) {
1151 if z.nAttrReturned < len(z.attr) {
1152 switch z.tt {
1153 case StartTagToken, SelfClosingTagToken:
1154 x := z.attr[z.nAttrReturned]
1155 z.nAttrReturned++
1156 key = z.buf[x[0].start:x[0].end]
1157 val = z.buf[x[1].start:x[1].end]
1158 return lower(key), unescape(convertNewlines(val), true), z.nAttrReturned < len(z.attr)
1159 }
1160 }
1161 return nil, nil, false
1162}
1163
1164// Token returns the next Token. The result's Data and Attr values remain valid
1165// after subsequent Next calls.
1166func (z *Tokenizer) Token() Token {
1167 t := Token{Type: z.tt}
1168 switch z.tt {
1169 case TextToken, CommentToken, DoctypeToken:
1170 t.Data = string(z.Text())
1171 case StartTagToken, SelfClosingTagToken, EndTagToken:
1172 name, moreAttr := z.TagName()
1173 for moreAttr {
1174 var key, val []byte
1175 key, val, moreAttr = z.TagAttr()
1176 t.Attr = append(t.Attr, Attribute{"", atom.String(key), string(val)})
1177 }
1178 if a := atom.Lookup(name); a != 0 {
1179 t.DataAtom, t.Data = a, a.String()
1180 } else {
1181 t.DataAtom, t.Data = 0, string(name)
1182 }
1183 }
1184 return t
1185}
1186
1187// SetMaxBuf sets a limit on the amount of data buffered during tokenization.
1188// A value of 0 means unlimited.
1189func (z *Tokenizer) SetMaxBuf(n int) {
1190 z.maxBuf = n
1191}
1192
1193// NewTokenizer returns a new HTML Tokenizer for the given Reader.
1194// The input is assumed to be UTF-8 encoded.
1195func NewTokenizer(r io.Reader) *Tokenizer {
1196 return NewTokenizerFragment(r, "")
1197}
1198
1199// NewTokenizerFragment returns a new HTML Tokenizer for the given Reader, for
1200// tokenizing an existing element's InnerHTML fragment. contextTag is that
1201// element's tag, such as "div" or "iframe".
1202//
1203// For example, how the InnerHTML "a<b" is tokenized depends on whether it is
1204// for a <p> tag or a <script> tag.
1205//
1206// The input is assumed to be UTF-8 encoded.
1207func NewTokenizerFragment(r io.Reader, contextTag string) *Tokenizer {
1208 z := &Tokenizer{
1209 r: r,
1210 buf: make([]byte, 0, 4096),
1211 }
1212 if contextTag != "" {
1213 switch s := strings.ToLower(contextTag); s {
1214 case "iframe", "noembed", "noframes", "noscript", "plaintext", "script", "style", "title", "textarea", "xmp":
1215 z.rawTag = s
1216 }
1217 }
1218 return z
1219}
diff --git a/vendor/golang.org/x/net/http/httpguts/guts.go b/vendor/golang.org/x/net/http/httpguts/guts.go
new file mode 100644
index 0000000..e6cd0ce
--- /dev/null
+++ b/vendor/golang.org/x/net/http/httpguts/guts.go
@@ -0,0 +1,50 @@
1// Copyright 2018 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Package httpguts provides functions implementing various details
6// of the HTTP specification.
7//
8// This package is shared by the standard library (which vendors it)
9// and x/net/http2. It comes with no API stability promise.
10package httpguts
11
12import (
13 "net/textproto"
14 "strings"
15)
16
17// ValidTrailerHeader reports whether name is a valid header field name to appear
18// in trailers.
19// See RFC 7230, Section 4.1.2
20func ValidTrailerHeader(name string) bool {
21 name = textproto.CanonicalMIMEHeaderKey(name)
22 if strings.HasPrefix(name, "If-") || badTrailer[name] {
23 return false
24 }
25 return true
26}
27
28var badTrailer = map[string]bool{
29 "Authorization": true,
30 "Cache-Control": true,
31 "Connection": true,
32 "Content-Encoding": true,
33 "Content-Length": true,
34 "Content-Range": true,
35 "Content-Type": true,
36 "Expect": true,
37 "Host": true,
38 "Keep-Alive": true,
39 "Max-Forwards": true,
40 "Pragma": true,
41 "Proxy-Authenticate": true,
42 "Proxy-Authorization": true,
43 "Proxy-Connection": true,
44 "Range": true,
45 "Realm": true,
46 "Te": true,
47 "Trailer": true,
48 "Transfer-Encoding": true,
49 "Www-Authenticate": true,
50}
diff --git a/vendor/golang.org/x/net/lex/httplex/httplex.go b/vendor/golang.org/x/net/http/httpguts/httplex.go
index 20f2b89..e7de24e 100644
--- a/vendor/golang.org/x/net/lex/httplex/httplex.go
+++ b/vendor/golang.org/x/net/http/httpguts/httplex.go
@@ -2,12 +2,7 @@
2// Use of this source code is governed by a BSD-style 2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file. 3// license that can be found in the LICENSE file.
4 4
5// Package httplex contains rules around lexical matters of various 5package httpguts
6// HTTP-related specifications.
7//
8// This package is shared by the standard library (which vendors it)
9// and x/net/http2. It comes with no API stability promise.
10package httplex
11 6
12import ( 7import (
13 "net" 8 "net"
diff --git a/vendor/golang.org/x/net/http2/ciphers.go b/vendor/golang.org/x/net/http2/ciphers.go
index 698860b..c9a0cf3 100644
--- a/vendor/golang.org/x/net/http2/ciphers.go
+++ b/vendor/golang.org/x/net/http2/ciphers.go
@@ -5,7 +5,7 @@
5package http2 5package http2
6 6
7// A list of the possible cipher suite ids. Taken from 7// A list of the possible cipher suite ids. Taken from
8// http://www.iana.org/assignments/tls-parameters/tls-parameters.txt 8// https://www.iana.org/assignments/tls-parameters/tls-parameters.txt
9 9
10const ( 10const (
11 cipher_TLS_NULL_WITH_NULL_NULL uint16 = 0x0000 11 cipher_TLS_NULL_WITH_NULL_NULL uint16 = 0x0000
diff --git a/vendor/golang.org/x/net/http2/client_conn_pool.go b/vendor/golang.org/x/net/http2/client_conn_pool.go
index bdf5652..f4d9b5e 100644
--- a/vendor/golang.org/x/net/http2/client_conn_pool.go
+++ b/vendor/golang.org/x/net/http2/client_conn_pool.go
@@ -52,9 +52,31 @@ const (
52 noDialOnMiss = false 52 noDialOnMiss = false
53) 53)
54 54
55// shouldTraceGetConn reports whether getClientConn should call any
56// ClientTrace.GetConn hook associated with the http.Request.
57//
58// This complexity is needed to avoid double calls of the GetConn hook
59// during the back-and-forth between net/http and x/net/http2 (when the
60// net/http.Transport is upgraded to also speak http2), as well as support
61// the case where x/net/http2 is being used directly.
62func (p *clientConnPool) shouldTraceGetConn(st clientConnIdleState) bool {
63 // If our Transport wasn't made via ConfigureTransport, always
64 // trace the GetConn hook if provided, because that means the
65 // http2 package is being used directly and it's the one
66 // dialing, as opposed to net/http.
67 if _, ok := p.t.ConnPool.(noDialClientConnPool); !ok {
68 return true
69 }
70 // Otherwise, only use the GetConn hook if this connection has
71 // been used previously for other requests. For fresh
72 // connections, the net/http package does the dialing.
73 return !st.freshConn
74}
75
55func (p *clientConnPool) getClientConn(req *http.Request, addr string, dialOnMiss bool) (*ClientConn, error) { 76func (p *clientConnPool) getClientConn(req *http.Request, addr string, dialOnMiss bool) (*ClientConn, error) {
56 if isConnectionCloseRequest(req) && dialOnMiss { 77 if isConnectionCloseRequest(req) && dialOnMiss {
57 // It gets its own connection. 78 // It gets its own connection.
79 traceGetConn(req, addr)
58 const singleUse = true 80 const singleUse = true
59 cc, err := p.t.dialClientConn(addr, singleUse) 81 cc, err := p.t.dialClientConn(addr, singleUse)
60 if err != nil { 82 if err != nil {
@@ -64,7 +86,10 @@ func (p *clientConnPool) getClientConn(req *http.Request, addr string, dialOnMis
64 } 86 }
65 p.mu.Lock() 87 p.mu.Lock()
66 for _, cc := range p.conns[addr] { 88 for _, cc := range p.conns[addr] {
67 if cc.CanTakeNewRequest() { 89 if st := cc.idleState(); st.canTakeNewRequest {
90 if p.shouldTraceGetConn(st) {
91 traceGetConn(req, addr)
92 }
68 p.mu.Unlock() 93 p.mu.Unlock()
69 return cc, nil 94 return cc, nil
70 } 95 }
@@ -73,6 +98,7 @@ func (p *clientConnPool) getClientConn(req *http.Request, addr string, dialOnMis
73 p.mu.Unlock() 98 p.mu.Unlock()
74 return nil, ErrNoCachedConn 99 return nil, ErrNoCachedConn
75 } 100 }
101 traceGetConn(req, addr)
76 call := p.getStartDialLocked(addr) 102 call := p.getStartDialLocked(addr)
77 p.mu.Unlock() 103 p.mu.Unlock()
78 <-call.done 104 <-call.done
diff --git a/vendor/golang.org/x/net/http2/configure_transport.go b/vendor/golang.org/x/net/http2/configure_transport.go
deleted file mode 100644
index b65fc6d..0000000
--- a/vendor/golang.org/x/net/http2/configure_transport.go
+++ /dev/null
@@ -1,80 +0,0 @@
1// Copyright 2015 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build go1.6
6
7package http2
8
9import (
10 "crypto/tls"
11 "fmt"
12 "net/http"
13)
14
15func configureTransport(t1 *http.Transport) (*Transport, error) {
16 connPool := new(clientConnPool)
17 t2 := &Transport{
18 ConnPool: noDialClientConnPool{connPool},
19 t1: t1,
20 }
21 connPool.t = t2
22 if err := registerHTTPSProtocol(t1, noDialH2RoundTripper{t2}); err != nil {
23 return nil, err
24 }
25 if t1.TLSClientConfig == nil {
26 t1.TLSClientConfig = new(tls.Config)
27 }
28 if !strSliceContains(t1.TLSClientConfig.NextProtos, "h2") {
29 t1.TLSClientConfig.NextProtos = append([]string{"h2"}, t1.TLSClientConfig.NextProtos...)
30 }
31 if !strSliceContains(t1.TLSClientConfig.NextProtos, "http/1.1") {
32 t1.TLSClientConfig.NextProtos = append(t1.TLSClientConfig.NextProtos, "http/1.1")
33 }
34 upgradeFn := func(authority string, c *tls.Conn) http.RoundTripper {
35 addr := authorityAddr("https", authority)
36 if used, err := connPool.addConnIfNeeded(addr, t2, c); err != nil {
37 go c.Close()
38 return erringRoundTripper{err}
39 } else if !used {
40 // Turns out we don't need this c.
41 // For example, two goroutines made requests to the same host
42 // at the same time, both kicking off TCP dials. (since protocol
43 // was unknown)
44 go c.Close()
45 }
46 return t2
47 }
48 if m := t1.TLSNextProto; len(m) == 0 {
49 t1.TLSNextProto = map[string]func(string, *tls.Conn) http.RoundTripper{
50 "h2": upgradeFn,
51 }
52 } else {
53 m["h2"] = upgradeFn
54 }
55 return t2, nil
56}
57
58// registerHTTPSProtocol calls Transport.RegisterProtocol but
59// converting panics into errors.
60func registerHTTPSProtocol(t *http.Transport, rt http.RoundTripper) (err error) {
61 defer func() {
62 if e := recover(); e != nil {
63 err = fmt.Errorf("%v", e)
64 }
65 }()
66 t.RegisterProtocol("https", rt)
67 return nil
68}
69
70// noDialH2RoundTripper is a RoundTripper which only tries to complete the request
71// if there's already has a cached connection to the host.
72type noDialH2RoundTripper struct{ t *Transport }
73
74func (rt noDialH2RoundTripper) RoundTrip(req *http.Request) (*http.Response, error) {
75 res, err := rt.t.RoundTrip(req)
76 if err == ErrNoCachedConn {
77 return nil, http.ErrSkipAltProtocol
78 }
79 return res, err
80}
diff --git a/vendor/golang.org/x/net/http2/flow.go b/vendor/golang.org/x/net/http2/flow.go
index 957de25..cea601f 100644
--- a/vendor/golang.org/x/net/http2/flow.go
+++ b/vendor/golang.org/x/net/http2/flow.go
@@ -41,10 +41,10 @@ func (f *flow) take(n int32) {
41// add adds n bytes (positive or negative) to the flow control window. 41// add adds n bytes (positive or negative) to the flow control window.
42// It returns false if the sum would exceed 2^31-1. 42// It returns false if the sum would exceed 2^31-1.
43func (f *flow) add(n int32) bool { 43func (f *flow) add(n int32) bool {
44 remain := (1<<31 - 1) - f.n 44 sum := f.n + n
45 if n > remain { 45 if (sum > n) == (f.n > 0) {
46 return false 46 f.n = sum
47 return true
47 } 48 }
48 f.n += n 49 return false
49 return true
50} 50}
diff --git a/vendor/golang.org/x/net/http2/frame.go b/vendor/golang.org/x/net/http2/frame.go
index 3b14890..514c126 100644
--- a/vendor/golang.org/x/net/http2/frame.go
+++ b/vendor/golang.org/x/net/http2/frame.go
@@ -14,8 +14,8 @@ import (
14 "strings" 14 "strings"
15 "sync" 15 "sync"
16 16
17 "golang.org/x/net/http/httpguts"
17 "golang.org/x/net/http2/hpack" 18 "golang.org/x/net/http2/hpack"
18 "golang.org/x/net/lex/httplex"
19) 19)
20 20
21const frameHeaderLen = 9 21const frameHeaderLen = 9
@@ -643,7 +643,7 @@ func (f *Framer) WriteData(streamID uint32, endStream bool, data []byte) error {
643 return f.WriteDataPadded(streamID, endStream, data, nil) 643 return f.WriteDataPadded(streamID, endStream, data, nil)
644} 644}
645 645
646// WriteData writes a DATA frame with optional padding. 646// WriteDataPadded writes a DATA frame with optional padding.
647// 647//
648// If pad is nil, the padding bit is not sent. 648// If pad is nil, the padding bit is not sent.
649// The length of pad must not exceed 255 bytes. 649// The length of pad must not exceed 255 bytes.
@@ -733,32 +733,67 @@ func (f *SettingsFrame) IsAck() bool {
733 return f.FrameHeader.Flags.Has(FlagSettingsAck) 733 return f.FrameHeader.Flags.Has(FlagSettingsAck)
734} 734}
735 735
736func (f *SettingsFrame) Value(s SettingID) (v uint32, ok bool) { 736func (f *SettingsFrame) Value(id SettingID) (v uint32, ok bool) {
737 f.checkValid() 737 f.checkValid()
738 buf := f.p 738 for i := 0; i < f.NumSettings(); i++ {
739 for len(buf) > 0 { 739 if s := f.Setting(i); s.ID == id {
740 settingID := SettingID(binary.BigEndian.Uint16(buf[:2])) 740 return s.Val, true
741 if settingID == s {
742 return binary.BigEndian.Uint32(buf[2:6]), true
743 } 741 }
744 buf = buf[6:]
745 } 742 }
746 return 0, false 743 return 0, false
747} 744}
748 745
746// Setting returns the setting from the frame at the given 0-based index.
747// The index must be >= 0 and less than f.NumSettings().
748func (f *SettingsFrame) Setting(i int) Setting {
749 buf := f.p
750 return Setting{
751 ID: SettingID(binary.BigEndian.Uint16(buf[i*6 : i*6+2])),
752 Val: binary.BigEndian.Uint32(buf[i*6+2 : i*6+6]),
753 }
754}
755
756func (f *SettingsFrame) NumSettings() int { return len(f.p) / 6 }
757
758// HasDuplicates reports whether f contains any duplicate setting IDs.
759func (f *SettingsFrame) HasDuplicates() bool {
760 num := f.NumSettings()
761 if num == 0 {
762 return false
763 }
764 // If it's small enough (the common case), just do the n^2
765 // thing and avoid a map allocation.
766 if num < 10 {
767 for i := 0; i < num; i++ {
768 idi := f.Setting(i).ID
769 for j := i + 1; j < num; j++ {
770 idj := f.Setting(j).ID
771 if idi == idj {
772 return true
773 }
774 }
775 }
776 return false
777 }
778 seen := map[SettingID]bool{}
779 for i := 0; i < num; i++ {
780 id := f.Setting(i).ID
781 if seen[id] {
782 return true
783 }
784 seen[id] = true
785 }
786 return false
787}
788
749// ForeachSetting runs fn for each setting. 789// ForeachSetting runs fn for each setting.
750// It stops and returns the first error. 790// It stops and returns the first error.
751func (f *SettingsFrame) ForeachSetting(fn func(Setting) error) error { 791func (f *SettingsFrame) ForeachSetting(fn func(Setting) error) error {
752 f.checkValid() 792 f.checkValid()
753 buf := f.p 793 for i := 0; i < f.NumSettings(); i++ {
754 for len(buf) > 0 { 794 if err := fn(f.Setting(i)); err != nil {
755 if err := fn(Setting{
756 SettingID(binary.BigEndian.Uint16(buf[:2])),
757 binary.BigEndian.Uint32(buf[2:6]),
758 }); err != nil {
759 return err 795 return err
760 } 796 }
761 buf = buf[6:]
762 } 797 }
763 return nil 798 return nil
764} 799}
@@ -1442,7 +1477,7 @@ func (fr *Framer) maxHeaderStringLen() int {
1442} 1477}
1443 1478
1444// readMetaFrame returns 0 or more CONTINUATION frames from fr and 1479// readMetaFrame returns 0 or more CONTINUATION frames from fr and
1445// merge them into into the provided hf and returns a MetaHeadersFrame 1480// merge them into the provided hf and returns a MetaHeadersFrame
1446// with the decoded hpack values. 1481// with the decoded hpack values.
1447func (fr *Framer) readMetaFrame(hf *HeadersFrame) (*MetaHeadersFrame, error) { 1482func (fr *Framer) readMetaFrame(hf *HeadersFrame) (*MetaHeadersFrame, error) {
1448 if fr.AllowIllegalReads { 1483 if fr.AllowIllegalReads {
@@ -1462,7 +1497,7 @@ func (fr *Framer) readMetaFrame(hf *HeadersFrame) (*MetaHeadersFrame, error) {
1462 if VerboseLogs && fr.logReads { 1497 if VerboseLogs && fr.logReads {
1463 fr.debugReadLoggerf("http2: decoded hpack field %+v", hf) 1498 fr.debugReadLoggerf("http2: decoded hpack field %+v", hf)
1464 } 1499 }
1465 if !httplex.ValidHeaderFieldValue(hf.Value) { 1500 if !httpguts.ValidHeaderFieldValue(hf.Value) {
1466 invalid = headerFieldValueError(hf.Value) 1501 invalid = headerFieldValueError(hf.Value)
1467 } 1502 }
1468 isPseudo := strings.HasPrefix(hf.Name, ":") 1503 isPseudo := strings.HasPrefix(hf.Name, ":")
diff --git a/vendor/golang.org/x/net/http2/go111.go b/vendor/golang.org/x/net/http2/go111.go
new file mode 100644
index 0000000..3a13101
--- /dev/null
+++ b/vendor/golang.org/x/net/http2/go111.go
@@ -0,0 +1,29 @@
1// Copyright 2018 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build go1.11
6
7package http2
8
9import (
10 "net/http/httptrace"
11 "net/textproto"
12)
13
14func traceHasWroteHeaderField(trace *httptrace.ClientTrace) bool {
15 return trace != nil && trace.WroteHeaderField != nil
16}
17
18func traceWroteHeaderField(trace *httptrace.ClientTrace, k, v string) {
19 if trace != nil && trace.WroteHeaderField != nil {
20 trace.WroteHeaderField(k, []string{v})
21 }
22}
23
24func traceGot1xxResponseFunc(trace *httptrace.ClientTrace) func(int, textproto.MIMEHeader) error {
25 if trace != nil {
26 return trace.Got1xxResponse
27 }
28 return nil
29}
diff --git a/vendor/golang.org/x/net/http2/go16.go b/vendor/golang.org/x/net/http2/go16.go
deleted file mode 100644
index 00b2e9e..0000000
--- a/vendor/golang.org/x/net/http2/go16.go
+++ /dev/null
@@ -1,16 +0,0 @@
1// Copyright 2016 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build go1.6
6
7package http2
8
9import (
10 "net/http"
11 "time"
12)
13
14func transportExpectContinueTimeout(t1 *http.Transport) time.Duration {
15 return t1.ExpectContinueTimeout
16}
diff --git a/vendor/golang.org/x/net/http2/go17.go b/vendor/golang.org/x/net/http2/go17.go
deleted file mode 100644
index 47b7fae..0000000
--- a/vendor/golang.org/x/net/http2/go17.go
+++ /dev/null
@@ -1,106 +0,0 @@
1// Copyright 2016 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build go1.7
6
7package http2
8
9import (
10 "context"
11 "net"
12 "net/http"
13 "net/http/httptrace"
14 "time"
15)
16
17type contextContext interface {
18 context.Context
19}
20
21func serverConnBaseContext(c net.Conn, opts *ServeConnOpts) (ctx contextContext, cancel func()) {
22 ctx, cancel = context.WithCancel(context.Background())
23 ctx = context.WithValue(ctx, http.LocalAddrContextKey, c.LocalAddr())
24 if hs := opts.baseConfig(); hs != nil {
25 ctx = context.WithValue(ctx, http.ServerContextKey, hs)
26 }
27 return
28}
29
30func contextWithCancel(ctx contextContext) (_ contextContext, cancel func()) {
31 return context.WithCancel(ctx)
32}
33
34func requestWithContext(req *http.Request, ctx contextContext) *http.Request {
35 return req.WithContext(ctx)
36}
37
38type clientTrace httptrace.ClientTrace
39
40func reqContext(r *http.Request) context.Context { return r.Context() }
41
42func (t *Transport) idleConnTimeout() time.Duration {
43 if t.t1 != nil {
44 return t.t1.IdleConnTimeout
45 }
46 return 0
47}
48
49func setResponseUncompressed(res *http.Response) { res.Uncompressed = true }
50
51func traceGotConn(req *http.Request, cc *ClientConn) {
52 trace := httptrace.ContextClientTrace(req.Context())
53 if trace == nil || trace.GotConn == nil {
54 return
55 }
56 ci := httptrace.GotConnInfo{Conn: cc.tconn}
57 cc.mu.Lock()
58 ci.Reused = cc.nextStreamID > 1
59 ci.WasIdle = len(cc.streams) == 0 && ci.Reused
60 if ci.WasIdle && !cc.lastActive.IsZero() {
61 ci.IdleTime = time.Now().Sub(cc.lastActive)
62 }
63 cc.mu.Unlock()
64
65 trace.GotConn(ci)
66}
67
68func traceWroteHeaders(trace *clientTrace) {
69 if trace != nil && trace.WroteHeaders != nil {
70 trace.WroteHeaders()
71 }
72}
73
74func traceGot100Continue(trace *clientTrace) {
75 if trace != nil && trace.Got100Continue != nil {
76 trace.Got100Continue()
77 }
78}
79
80func traceWait100Continue(trace *clientTrace) {
81 if trace != nil && trace.Wait100Continue != nil {
82 trace.Wait100Continue()
83 }
84}
85
86func traceWroteRequest(trace *clientTrace, err error) {
87 if trace != nil && trace.WroteRequest != nil {
88 trace.WroteRequest(httptrace.WroteRequestInfo{Err: err})
89 }
90}
91
92func traceFirstResponseByte(trace *clientTrace) {
93 if trace != nil && trace.GotFirstResponseByte != nil {
94 trace.GotFirstResponseByte()
95 }
96}
97
98func requestTrace(req *http.Request) *clientTrace {
99 trace := httptrace.ContextClientTrace(req.Context())
100 return (*clientTrace)(trace)
101}
102
103// Ping sends a PING frame to the server and waits for the ack.
104func (cc *ClientConn) Ping(ctx context.Context) error {
105 return cc.ping(ctx)
106}
diff --git a/vendor/golang.org/x/net/http2/go17_not18.go b/vendor/golang.org/x/net/http2/go17_not18.go
deleted file mode 100644
index b4c52ec..0000000
--- a/vendor/golang.org/x/net/http2/go17_not18.go
+++ /dev/null
@@ -1,36 +0,0 @@
1// Copyright 2016 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build go1.7,!go1.8
6
7package http2
8
9import "crypto/tls"
10
11// temporary copy of Go 1.7's private tls.Config.clone:
12func cloneTLSConfig(c *tls.Config) *tls.Config {
13 return &tls.Config{
14 Rand: c.Rand,
15 Time: c.Time,
16 Certificates: c.Certificates,
17 NameToCertificate: c.NameToCertificate,
18 GetCertificate: c.GetCertificate,
19 RootCAs: c.RootCAs,
20 NextProtos: c.NextProtos,
21 ServerName: c.ServerName,
22 ClientAuth: c.ClientAuth,
23 ClientCAs: c.ClientCAs,
24 InsecureSkipVerify: c.InsecureSkipVerify,
25 CipherSuites: c.CipherSuites,
26 PreferServerCipherSuites: c.PreferServerCipherSuites,
27 SessionTicketsDisabled: c.SessionTicketsDisabled,
28 SessionTicketKey: c.SessionTicketKey,
29 ClientSessionCache: c.ClientSessionCache,
30 MinVersion: c.MinVersion,
31 MaxVersion: c.MaxVersion,
32 CurvePreferences: c.CurvePreferences,
33 DynamicRecordSizingDisabled: c.DynamicRecordSizingDisabled,
34 Renegotiation: c.Renegotiation,
35 }
36}
diff --git a/vendor/golang.org/x/net/http2/go18.go b/vendor/golang.org/x/net/http2/go18.go
deleted file mode 100644
index 4f30d22..0000000
--- a/vendor/golang.org/x/net/http2/go18.go
+++ /dev/null
@@ -1,56 +0,0 @@
1// Copyright 2015 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build go1.8
6
7package http2
8
9import (
10 "crypto/tls"
11 "io"
12 "net/http"
13)
14
15func cloneTLSConfig(c *tls.Config) *tls.Config {
16 c2 := c.Clone()
17 c2.GetClientCertificate = c.GetClientCertificate // golang.org/issue/19264
18 return c2
19}
20
21var _ http.Pusher = (*responseWriter)(nil)
22
23// Push implements http.Pusher.
24func (w *responseWriter) Push(target string, opts *http.PushOptions) error {
25 internalOpts := pushOptions{}
26 if opts != nil {
27 internalOpts.Method = opts.Method
28 internalOpts.Header = opts.Header
29 }
30 return w.push(target, internalOpts)
31}
32
33func configureServer18(h1 *http.Server, h2 *Server) error {
34 if h2.IdleTimeout == 0 {
35 if h1.IdleTimeout != 0 {
36 h2.IdleTimeout = h1.IdleTimeout
37 } else {
38 h2.IdleTimeout = h1.ReadTimeout
39 }
40 }
41 return nil
42}
43
44func shouldLogPanic(panicValue interface{}) bool {
45 return panicValue != nil && panicValue != http.ErrAbortHandler
46}
47
48func reqGetBody(req *http.Request) func() (io.ReadCloser, error) {
49 return req.GetBody
50}
51
52func reqBodyIsNoBody(body io.ReadCloser) bool {
53 return body == http.NoBody
54}
55
56func go18httpNoBody() io.ReadCloser { return http.NoBody } // for tests only
diff --git a/vendor/golang.org/x/net/http2/go19.go b/vendor/golang.org/x/net/http2/go19.go
deleted file mode 100644
index 38124ba..0000000
--- a/vendor/golang.org/x/net/http2/go19.go
+++ /dev/null
@@ -1,16 +0,0 @@
1// Copyright 2015 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build go1.9
6
7package http2
8
9import (
10 "net/http"
11)
12
13func configureServer19(s *http.Server, conf *Server) error {
14 s.RegisterOnShutdown(conf.state.startGracefulShutdown)
15 return nil
16}
diff --git a/vendor/golang.org/x/net/http2/headermap.go b/vendor/golang.org/x/net/http2/headermap.go
index c2805f6..c3ff3fa 100644
--- a/vendor/golang.org/x/net/http2/headermap.go
+++ b/vendor/golang.org/x/net/http2/headermap.go
@@ -7,15 +7,21 @@ package http2
7import ( 7import (
8 "net/http" 8 "net/http"
9 "strings" 9 "strings"
10 "sync"
10) 11)
11 12
12var ( 13var (
13 commonLowerHeader = map[string]string{} // Go-Canonical-Case -> lower-case 14 commonBuildOnce sync.Once
14 commonCanonHeader = map[string]string{} // lower-case -> Go-Canonical-Case 15 commonLowerHeader map[string]string // Go-Canonical-Case -> lower-case
16 commonCanonHeader map[string]string // lower-case -> Go-Canonical-Case
15) 17)
16 18
17func init() { 19func buildCommonHeaderMapsOnce() {
18 for _, v := range []string{ 20 commonBuildOnce.Do(buildCommonHeaderMaps)
21}
22
23func buildCommonHeaderMaps() {
24 common := []string{
19 "accept", 25 "accept",
20 "accept-charset", 26 "accept-charset",
21 "accept-encoding", 27 "accept-encoding",
@@ -63,7 +69,10 @@ func init() {
63 "vary", 69 "vary",
64 "via", 70 "via",
65 "www-authenticate", 71 "www-authenticate",
66 } { 72 }
73 commonLowerHeader = make(map[string]string, len(common))
74 commonCanonHeader = make(map[string]string, len(common))
75 for _, v := range common {
67 chk := http.CanonicalHeaderKey(v) 76 chk := http.CanonicalHeaderKey(v)
68 commonLowerHeader[chk] = v 77 commonLowerHeader[chk] = v
69 commonCanonHeader[v] = chk 78 commonCanonHeader[v] = chk
@@ -71,6 +80,7 @@ func init() {
71} 80}
72 81
73func lowerHeader(v string) string { 82func lowerHeader(v string) string {
83 buildCommonHeaderMapsOnce()
74 if s, ok := commonLowerHeader[v]; ok { 84 if s, ok := commonLowerHeader[v]; ok {
75 return s 85 return s
76 } 86 }
diff --git a/vendor/golang.org/x/net/http2/hpack/encode.go b/vendor/golang.org/x/net/http2/hpack/encode.go
index 54726c2..1565cf2 100644
--- a/vendor/golang.org/x/net/http2/hpack/encode.go
+++ b/vendor/golang.org/x/net/http2/hpack/encode.go
@@ -206,7 +206,7 @@ func appendVarInt(dst []byte, n byte, i uint64) []byte {
206} 206}
207 207
208// appendHpackString appends s, as encoded in "String Literal" 208// appendHpackString appends s, as encoded in "String Literal"
209// representation, to dst and returns the the extended buffer. 209// representation, to dst and returns the extended buffer.
210// 210//
211// s will be encoded in Huffman codes only when it produces strictly 211// s will be encoded in Huffman codes only when it produces strictly
212// shorter byte string. 212// shorter byte string.
diff --git a/vendor/golang.org/x/net/http2/hpack/hpack.go b/vendor/golang.org/x/net/http2/hpack/hpack.go
index 176644a..85f18a2 100644
--- a/vendor/golang.org/x/net/http2/hpack/hpack.go
+++ b/vendor/golang.org/x/net/http2/hpack/hpack.go
@@ -92,6 +92,8 @@ type Decoder struct {
92 // saveBuf is previous data passed to Write which we weren't able 92 // saveBuf is previous data passed to Write which we weren't able
93 // to fully parse before. Unlike buf, we own this data. 93 // to fully parse before. Unlike buf, we own this data.
94 saveBuf bytes.Buffer 94 saveBuf bytes.Buffer
95
96 firstField bool // processing the first field of the header block
95} 97}
96 98
97// NewDecoder returns a new decoder with the provided maximum dynamic 99// NewDecoder returns a new decoder with the provided maximum dynamic
@@ -101,6 +103,7 @@ func NewDecoder(maxDynamicTableSize uint32, emitFunc func(f HeaderField)) *Decod
101 d := &Decoder{ 103 d := &Decoder{
102 emit: emitFunc, 104 emit: emitFunc,
103 emitEnabled: true, 105 emitEnabled: true,
106 firstField: true,
104 } 107 }
105 d.dynTab.table.init() 108 d.dynTab.table.init()
106 d.dynTab.allowedMaxSize = maxDynamicTableSize 109 d.dynTab.allowedMaxSize = maxDynamicTableSize
@@ -226,11 +229,15 @@ func (d *Decoder) DecodeFull(p []byte) ([]HeaderField, error) {
226 return hf, nil 229 return hf, nil
227} 230}
228 231
232// Close declares that the decoding is complete and resets the Decoder
233// to be reused again for a new header block. If there is any remaining
234// data in the decoder's buffer, Close returns an error.
229func (d *Decoder) Close() error { 235func (d *Decoder) Close() error {
230 if d.saveBuf.Len() > 0 { 236 if d.saveBuf.Len() > 0 {
231 d.saveBuf.Reset() 237 d.saveBuf.Reset()
232 return DecodingError{errors.New("truncated headers")} 238 return DecodingError{errors.New("truncated headers")}
233 } 239 }
240 d.firstField = true
234 return nil 241 return nil
235} 242}
236 243
@@ -266,6 +273,7 @@ func (d *Decoder) Write(p []byte) (n int, err error) {
266 d.saveBuf.Write(d.buf) 273 d.saveBuf.Write(d.buf)
267 return len(p), nil 274 return len(p), nil
268 } 275 }
276 d.firstField = false
269 if err != nil { 277 if err != nil {
270 break 278 break
271 } 279 }
@@ -389,6 +397,12 @@ func (d *Decoder) callEmit(hf HeaderField) error {
389 397
390// (same invariants and behavior as parseHeaderFieldRepr) 398// (same invariants and behavior as parseHeaderFieldRepr)
391func (d *Decoder) parseDynamicTableSizeUpdate() error { 399func (d *Decoder) parseDynamicTableSizeUpdate() error {
400 // RFC 7541, sec 4.2: This dynamic table size update MUST occur at the
401 // beginning of the first header block following the change to the dynamic table size.
402 if !d.firstField && d.dynTab.size > 0 {
403 return DecodingError{errors.New("dynamic table size update MUST occur at the beginning of a header block")}
404 }
405
392 buf := d.buf 406 buf := d.buf
393 size, buf, err := readVarInt(5, buf) 407 size, buf, err := readVarInt(5, buf)
394 if err != nil { 408 if err != nil {
diff --git a/vendor/golang.org/x/net/http2/hpack/huffman.go b/vendor/golang.org/x/net/http2/hpack/huffman.go
index 8850e39..b412a96 100644
--- a/vendor/golang.org/x/net/http2/hpack/huffman.go
+++ b/vendor/golang.org/x/net/http2/hpack/huffman.go
@@ -47,6 +47,7 @@ var ErrInvalidHuffman = errors.New("hpack: invalid Huffman-encoded data")
47// If maxLen is greater than 0, attempts to write more to buf than 47// If maxLen is greater than 0, attempts to write more to buf than
48// maxLen bytes will return ErrStringLength. 48// maxLen bytes will return ErrStringLength.
49func huffmanDecode(buf *bytes.Buffer, maxLen int, v []byte) error { 49func huffmanDecode(buf *bytes.Buffer, maxLen int, v []byte) error {
50 rootHuffmanNode := getRootHuffmanNode()
50 n := rootHuffmanNode 51 n := rootHuffmanNode
51 // cur is the bit buffer that has not been fed into n. 52 // cur is the bit buffer that has not been fed into n.
52 // cbits is the number of low order bits in cur that are valid. 53 // cbits is the number of low order bits in cur that are valid.
@@ -106,7 +107,7 @@ func huffmanDecode(buf *bytes.Buffer, maxLen int, v []byte) error {
106 107
107type node struct { 108type node struct {
108 // children is non-nil for internal nodes 109 // children is non-nil for internal nodes
109 children []*node 110 children *[256]*node
110 111
111 // The following are only valid if children is nil: 112 // The following are only valid if children is nil:
112 codeLen uint8 // number of bits that led to the output of sym 113 codeLen uint8 // number of bits that led to the output of sym
@@ -114,22 +115,31 @@ type node struct {
114} 115}
115 116
116func newInternalNode() *node { 117func newInternalNode() *node {
117 return &node{children: make([]*node, 256)} 118 return &node{children: new([256]*node)}
118} 119}
119 120
120var rootHuffmanNode = newInternalNode() 121var (
122 buildRootOnce sync.Once
123 lazyRootHuffmanNode *node
124)
125
126func getRootHuffmanNode() *node {
127 buildRootOnce.Do(buildRootHuffmanNode)
128 return lazyRootHuffmanNode
129}
121 130
122func init() { 131func buildRootHuffmanNode() {
123 if len(huffmanCodes) != 256 { 132 if len(huffmanCodes) != 256 {
124 panic("unexpected size") 133 panic("unexpected size")
125 } 134 }
135 lazyRootHuffmanNode = newInternalNode()
126 for i, code := range huffmanCodes { 136 for i, code := range huffmanCodes {
127 addDecoderNode(byte(i), code, huffmanCodeLen[i]) 137 addDecoderNode(byte(i), code, huffmanCodeLen[i])
128 } 138 }
129} 139}
130 140
131func addDecoderNode(sym byte, code uint32, codeLen uint8) { 141func addDecoderNode(sym byte, code uint32, codeLen uint8) {
132 cur := rootHuffmanNode 142 cur := lazyRootHuffmanNode
133 for codeLen > 8 { 143 for codeLen > 8 {
134 codeLen -= 8 144 codeLen -= 8
135 i := uint8(code >> codeLen) 145 i := uint8(code >> codeLen)
diff --git a/vendor/golang.org/x/net/http2/http2.go b/vendor/golang.org/x/net/http2/http2.go
index d565f40..bdaba1d 100644
--- a/vendor/golang.org/x/net/http2/http2.go
+++ b/vendor/golang.org/x/net/http2/http2.go
@@ -29,7 +29,7 @@ import (
29 "strings" 29 "strings"
30 "sync" 30 "sync"
31 31
32 "golang.org/x/net/lex/httplex" 32 "golang.org/x/net/http/httpguts"
33) 33)
34 34
35var ( 35var (
@@ -179,7 +179,7 @@ var (
179) 179)
180 180
181// validWireHeaderFieldName reports whether v is a valid header field 181// validWireHeaderFieldName reports whether v is a valid header field
182// name (key). See httplex.ValidHeaderName for the base rules. 182// name (key). See httpguts.ValidHeaderName for the base rules.
183// 183//
184// Further, http2 says: 184// Further, http2 says:
185// "Just as in HTTP/1.x, header field names are strings of ASCII 185// "Just as in HTTP/1.x, header field names are strings of ASCII
@@ -191,7 +191,7 @@ func validWireHeaderFieldName(v string) bool {
191 return false 191 return false
192 } 192 }
193 for _, r := range v { 193 for _, r := range v {
194 if !httplex.IsTokenRune(r) { 194 if !httpguts.IsTokenRune(r) {
195 return false 195 return false
196 } 196 }
197 if 'A' <= r && r <= 'Z' { 197 if 'A' <= r && r <= 'Z' {
@@ -201,19 +201,12 @@ func validWireHeaderFieldName(v string) bool {
201 return true 201 return true
202} 202}
203 203
204var httpCodeStringCommon = map[int]string{} // n -> strconv.Itoa(n)
205
206func init() {
207 for i := 100; i <= 999; i++ {
208 if v := http.StatusText(i); v != "" {
209 httpCodeStringCommon[i] = strconv.Itoa(i)
210 }
211 }
212}
213
214func httpCodeString(code int) string { 204func httpCodeString(code int) string {
215 if s, ok := httpCodeStringCommon[code]; ok { 205 switch code {
216 return s 206 case 200:
207 return "200"
208 case 404:
209 return "404"
217 } 210 }
218 return strconv.Itoa(code) 211 return strconv.Itoa(code)
219} 212}
@@ -312,7 +305,7 @@ func mustUint31(v int32) uint32 {
312} 305}
313 306
314// bodyAllowedForStatus reports whether a given response status code 307// bodyAllowedForStatus reports whether a given response status code
315// permits a body. See RFC 2616, section 4.4. 308// permits a body. See RFC 7230, section 3.3.
316func bodyAllowedForStatus(status int) bool { 309func bodyAllowedForStatus(status int) bool {
317 switch { 310 switch {
318 case status >= 100 && status <= 199: 311 case status >= 100 && status <= 199:
diff --git a/vendor/golang.org/x/net/http2/not_go111.go b/vendor/golang.org/x/net/http2/not_go111.go
new file mode 100644
index 0000000..161bca7
--- /dev/null
+++ b/vendor/golang.org/x/net/http2/not_go111.go
@@ -0,0 +1,20 @@
1// Copyright 2018 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build !go1.11
6
7package http2
8
9import (
10 "net/http/httptrace"
11 "net/textproto"
12)
13
14func traceHasWroteHeaderField(trace *httptrace.ClientTrace) bool { return false }
15
16func traceWroteHeaderField(trace *httptrace.ClientTrace, k, v string) {}
17
18func traceGot1xxResponseFunc(trace *httptrace.ClientTrace) func(int, textproto.MIMEHeader) error {
19 return nil
20}
diff --git a/vendor/golang.org/x/net/http2/not_go16.go b/vendor/golang.org/x/net/http2/not_go16.go
deleted file mode 100644
index 508cebc..0000000
--- a/vendor/golang.org/x/net/http2/not_go16.go
+++ /dev/null
@@ -1,21 +0,0 @@
1// Copyright 2015 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build !go1.6
6
7package http2
8
9import (
10 "net/http"
11 "time"
12)
13
14func configureTransport(t1 *http.Transport) (*Transport, error) {
15 return nil, errTransportVersion
16}
17
18func transportExpectContinueTimeout(t1 *http.Transport) time.Duration {
19 return 0
20
21}
diff --git a/vendor/golang.org/x/net/http2/not_go17.go b/vendor/golang.org/x/net/http2/not_go17.go
deleted file mode 100644
index 140434a..0000000
--- a/vendor/golang.org/x/net/http2/not_go17.go
+++ /dev/null
@@ -1,87 +0,0 @@
1// Copyright 2016 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build !go1.7
6
7package http2
8
9import (
10 "crypto/tls"
11 "net"
12 "net/http"
13 "time"
14)
15
16type contextContext interface {
17 Done() <-chan struct{}
18 Err() error
19}
20
21type fakeContext struct{}
22
23func (fakeContext) Done() <-chan struct{} { return nil }
24func (fakeContext) Err() error { panic("should not be called") }
25
26func reqContext(r *http.Request) fakeContext {
27 return fakeContext{}
28}
29
30func setResponseUncompressed(res *http.Response) {
31 // Nothing.
32}
33
34type clientTrace struct{}
35
36func requestTrace(*http.Request) *clientTrace { return nil }
37func traceGotConn(*http.Request, *ClientConn) {}
38func traceFirstResponseByte(*clientTrace) {}
39func traceWroteHeaders(*clientTrace) {}
40func traceWroteRequest(*clientTrace, error) {}
41func traceGot100Continue(trace *clientTrace) {}
42func traceWait100Continue(trace *clientTrace) {}
43
44func nop() {}
45
46func serverConnBaseContext(c net.Conn, opts *ServeConnOpts) (ctx contextContext, cancel func()) {
47 return nil, nop
48}
49
50func contextWithCancel(ctx contextContext) (_ contextContext, cancel func()) {
51 return ctx, nop
52}
53
54func requestWithContext(req *http.Request, ctx contextContext) *http.Request {
55 return req
56}
57
58// temporary copy of Go 1.6's private tls.Config.clone:
59func cloneTLSConfig(c *tls.Config) *tls.Config {
60 return &tls.Config{
61 Rand: c.Rand,
62 Time: c.Time,
63 Certificates: c.Certificates,
64 NameToCertificate: c.NameToCertificate,
65 GetCertificate: c.GetCertificate,
66 RootCAs: c.RootCAs,
67 NextProtos: c.NextProtos,
68 ServerName: c.ServerName,
69 ClientAuth: c.ClientAuth,
70 ClientCAs: c.ClientCAs,
71 InsecureSkipVerify: c.InsecureSkipVerify,
72 CipherSuites: c.CipherSuites,
73 PreferServerCipherSuites: c.PreferServerCipherSuites,
74 SessionTicketsDisabled: c.SessionTicketsDisabled,
75 SessionTicketKey: c.SessionTicketKey,
76 ClientSessionCache: c.ClientSessionCache,
77 MinVersion: c.MinVersion,
78 MaxVersion: c.MaxVersion,
79 CurvePreferences: c.CurvePreferences,
80 }
81}
82
83func (cc *ClientConn) Ping(ctx contextContext) error {
84 return cc.ping(ctx)
85}
86
87func (t *Transport) idleConnTimeout() time.Duration { return 0 }
diff --git a/vendor/golang.org/x/net/http2/not_go18.go b/vendor/golang.org/x/net/http2/not_go18.go
deleted file mode 100644
index 6f8d3f8..0000000
--- a/vendor/golang.org/x/net/http2/not_go18.go
+++ /dev/null
@@ -1,29 +0,0 @@
1// Copyright 2016 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build !go1.8
6
7package http2
8
9import (
10 "io"
11 "net/http"
12)
13
14func configureServer18(h1 *http.Server, h2 *Server) error {
15 // No IdleTimeout to sync prior to Go 1.8.
16 return nil
17}
18
19func shouldLogPanic(panicValue interface{}) bool {
20 return panicValue != nil
21}
22
23func reqGetBody(req *http.Request) func() (io.ReadCloser, error) {
24 return nil
25}
26
27func reqBodyIsNoBody(io.ReadCloser) bool { return false }
28
29func go18httpNoBody() io.ReadCloser { return nil } // for tests only
diff --git a/vendor/golang.org/x/net/http2/not_go19.go b/vendor/golang.org/x/net/http2/not_go19.go
deleted file mode 100644
index 5ae0772..0000000
--- a/vendor/golang.org/x/net/http2/not_go19.go
+++ /dev/null
@@ -1,16 +0,0 @@
1// Copyright 2016 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build !go1.9
6
7package http2
8
9import (
10 "net/http"
11)
12
13func configureServer19(s *http.Server, conf *Server) error {
14 // not supported prior to go1.9
15 return nil
16}
diff --git a/vendor/golang.org/x/net/http2/server.go b/vendor/golang.org/x/net/http2/server.go
index eae143d..d4abeb2 100644
--- a/vendor/golang.org/x/net/http2/server.go
+++ b/vendor/golang.org/x/net/http2/server.go
@@ -28,6 +28,7 @@ package http2
28import ( 28import (
29 "bufio" 29 "bufio"
30 "bytes" 30 "bytes"
31 "context"
31 "crypto/tls" 32 "crypto/tls"
32 "errors" 33 "errors"
33 "fmt" 34 "fmt"
@@ -46,6 +47,7 @@ import (
46 "sync" 47 "sync"
47 "time" 48 "time"
48 49
50 "golang.org/x/net/http/httpguts"
49 "golang.org/x/net/http2/hpack" 51 "golang.org/x/net/http2/hpack"
50) 52)
51 53
@@ -208,24 +210,29 @@ func ConfigureServer(s *http.Server, conf *Server) error {
208 conf = new(Server) 210 conf = new(Server)
209 } 211 }
210 conf.state = &serverInternalState{activeConns: make(map[*serverConn]struct{})} 212 conf.state = &serverInternalState{activeConns: make(map[*serverConn]struct{})}
211 if err := configureServer18(s, conf); err != nil { 213 if h1, h2 := s, conf; h2.IdleTimeout == 0 {
212 return err 214 if h1.IdleTimeout != 0 {
213 } 215 h2.IdleTimeout = h1.IdleTimeout
214 if err := configureServer19(s, conf); err != nil { 216 } else {
215 return err 217 h2.IdleTimeout = h1.ReadTimeout
218 }
216 } 219 }
220 s.RegisterOnShutdown(conf.state.startGracefulShutdown)
217 221
218 if s.TLSConfig == nil { 222 if s.TLSConfig == nil {
219 s.TLSConfig = new(tls.Config) 223 s.TLSConfig = new(tls.Config)
220 } else if s.TLSConfig.CipherSuites != nil { 224 } else if s.TLSConfig.CipherSuites != nil {
221 // If they already provided a CipherSuite list, return 225 // If they already provided a CipherSuite list, return
222 // an error if it has a bad order or is missing 226 // an error if it has a bad order or is missing
223 // ECDHE_RSA_WITH_AES_128_GCM_SHA256. 227 // ECDHE_RSA_WITH_AES_128_GCM_SHA256 or ECDHE_ECDSA_WITH_AES_128_GCM_SHA256.
224 const requiredCipher = tls.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
225 haveRequired := false 228 haveRequired := false
226 sawBad := false 229 sawBad := false
227 for i, cs := range s.TLSConfig.CipherSuites { 230 for i, cs := range s.TLSConfig.CipherSuites {
228 if cs == requiredCipher { 231 switch cs {
232 case tls.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
233 // Alternative MTI cipher to not discourage ECDSA-only servers.
234 // See http://golang.org/cl/30721 for further information.
235 tls.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256:
229 haveRequired = true 236 haveRequired = true
230 } 237 }
231 if isBadCipher(cs) { 238 if isBadCipher(cs) {
@@ -235,7 +242,7 @@ func ConfigureServer(s *http.Server, conf *Server) error {
235 } 242 }
236 } 243 }
237 if !haveRequired { 244 if !haveRequired {
238 return fmt.Errorf("http2: TLSConfig.CipherSuites is missing HTTP/2-required TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256") 245 return fmt.Errorf("http2: TLSConfig.CipherSuites is missing an HTTP/2-required AES_128_GCM_SHA256 cipher.")
239 } 246 }
240 } 247 }
241 248
@@ -403,7 +410,7 @@ func (s *Server) ServeConn(c net.Conn, opts *ServeConnOpts) {
403 // addresses during development. 410 // addresses during development.
404 // 411 //
405 // TODO: optionally enforce? Or enforce at the time we receive 412 // TODO: optionally enforce? Or enforce at the time we receive
406 // a new request, and verify the the ServerName matches the :authority? 413 // a new request, and verify the ServerName matches the :authority?
407 // But that precludes proxy situations, perhaps. 414 // But that precludes proxy situations, perhaps.
408 // 415 //
409 // So for now, do nothing here again. 416 // So for now, do nothing here again.
@@ -431,6 +438,15 @@ func (s *Server) ServeConn(c net.Conn, opts *ServeConnOpts) {
431 sc.serve() 438 sc.serve()
432} 439}
433 440
441func serverConnBaseContext(c net.Conn, opts *ServeConnOpts) (ctx context.Context, cancel func()) {
442 ctx, cancel = context.WithCancel(context.Background())
443 ctx = context.WithValue(ctx, http.LocalAddrContextKey, c.LocalAddr())
444 if hs := opts.baseConfig(); hs != nil {
445 ctx = context.WithValue(ctx, http.ServerContextKey, hs)
446 }
447 return
448}
449
434func (sc *serverConn) rejectConn(err ErrCode, debug string) { 450func (sc *serverConn) rejectConn(err ErrCode, debug string) {
435 sc.vlogf("http2: server rejecting conn: %v, %s", err, debug) 451 sc.vlogf("http2: server rejecting conn: %v, %s", err, debug)
436 // ignoring errors. hanging up anyway. 452 // ignoring errors. hanging up anyway.
@@ -446,7 +462,7 @@ type serverConn struct {
446 conn net.Conn 462 conn net.Conn
447 bw *bufferedWriter // writing to conn 463 bw *bufferedWriter // writing to conn
448 handler http.Handler 464 handler http.Handler
449 baseCtx contextContext 465 baseCtx context.Context
450 framer *Framer 466 framer *Framer
451 doneServing chan struct{} // closed when serverConn.serve ends 467 doneServing chan struct{} // closed when serverConn.serve ends
452 readFrameCh chan readFrameResult // written by serverConn.readFrames 468 readFrameCh chan readFrameResult // written by serverConn.readFrames
@@ -526,7 +542,7 @@ type stream struct {
526 id uint32 542 id uint32
527 body *pipe // non-nil if expecting DATA frames 543 body *pipe // non-nil if expecting DATA frames
528 cw closeWaiter // closed wait stream transitions to closed state 544 cw closeWaiter // closed wait stream transitions to closed state
529 ctx contextContext 545 ctx context.Context
530 cancelCtx func() 546 cancelCtx func()
531 547
532 // owned by serverConn's serve loop: 548 // owned by serverConn's serve loop:
@@ -649,7 +665,7 @@ func (sc *serverConn) condlogf(err error, format string, args ...interface{}) {
649 if err == nil { 665 if err == nil {
650 return 666 return
651 } 667 }
652 if err == io.EOF || err == io.ErrUnexpectedEOF || isClosedConnError(err) { 668 if err == io.EOF || err == io.ErrUnexpectedEOF || isClosedConnError(err) || err == errPrefaceTimeout {
653 // Boring, expected errors. 669 // Boring, expected errors.
654 sc.vlogf(format, args...) 670 sc.vlogf(format, args...)
655 } else { 671 } else {
@@ -659,6 +675,7 @@ func (sc *serverConn) condlogf(err error, format string, args ...interface{}) {
659 675
660func (sc *serverConn) canonicalHeader(v string) string { 676func (sc *serverConn) canonicalHeader(v string) string {
661 sc.serveG.check() 677 sc.serveG.check()
678 buildCommonHeaderMapsOnce()
662 cv, ok := commonCanonHeader[v] 679 cv, ok := commonCanonHeader[v]
663 if ok { 680 if ok {
664 return cv 681 return cv
@@ -853,8 +870,13 @@ func (sc *serverConn) serve() {
853 } 870 }
854 } 871 }
855 872
856 if sc.inGoAway && sc.curOpenStreams() == 0 && !sc.needToSendGoAway && !sc.writingFrame { 873 // Start the shutdown timer after sending a GOAWAY. When sending GOAWAY
857 return 874 // with no error code (graceful shutdown), don't start the timer until
875 // all open streams have been completed.
876 sentGoAway := sc.inGoAway && !sc.needToSendGoAway && !sc.writingFrame
877 gracefulShutdownComplete := sc.goAwayCode == ErrCodeNo && sc.curOpenStreams() == 0
878 if sentGoAway && sc.shutdownTimer == nil && (sc.goAwayCode != ErrCodeNo || gracefulShutdownComplete) {
879 sc.shutDownIn(goAwayTimeout)
858 } 880 }
859 } 881 }
860} 882}
@@ -889,8 +911,11 @@ func (sc *serverConn) sendServeMsg(msg interface{}) {
889 } 911 }
890} 912}
891 913
892// readPreface reads the ClientPreface greeting from the peer 914var errPrefaceTimeout = errors.New("timeout waiting for client preface")
893// or returns an error on timeout or an invalid greeting. 915
916// readPreface reads the ClientPreface greeting from the peer or
917// returns errPrefaceTimeout on timeout, or an error if the greeting
918// is invalid.
894func (sc *serverConn) readPreface() error { 919func (sc *serverConn) readPreface() error {
895 errc := make(chan error, 1) 920 errc := make(chan error, 1)
896 go func() { 921 go func() {
@@ -908,7 +933,7 @@ func (sc *serverConn) readPreface() error {
908 defer timer.Stop() 933 defer timer.Stop()
909 select { 934 select {
910 case <-timer.C: 935 case <-timer.C:
911 return errors.New("timeout waiting for client preface") 936 return errPrefaceTimeout
912 case err := <-errc: 937 case err := <-errc:
913 if err == nil { 938 if err == nil {
914 if VerboseLogs { 939 if VerboseLogs {
@@ -1097,7 +1122,7 @@ func (sc *serverConn) startFrameWrite(wr FrameWriteRequest) {
1097 1122
1098// errHandlerPanicked is the error given to any callers blocked in a read from 1123// errHandlerPanicked is the error given to any callers blocked in a read from
1099// Request.Body when the main goroutine panics. Since most handlers read in the 1124// Request.Body when the main goroutine panics. Since most handlers read in the
1100// the main ServeHTTP goroutine, this will show up rarely. 1125// main ServeHTTP goroutine, this will show up rarely.
1101var errHandlerPanicked = errors.New("http2: handler panicked") 1126var errHandlerPanicked = errors.New("http2: handler panicked")
1102 1127
1103// wroteFrame is called on the serve goroutine with the result of 1128// wroteFrame is called on the serve goroutine with the result of
@@ -1218,30 +1243,31 @@ func (sc *serverConn) startGracefulShutdown() {
1218 sc.shutdownOnce.Do(func() { sc.sendServeMsg(gracefulShutdownMsg) }) 1243 sc.shutdownOnce.Do(func() { sc.sendServeMsg(gracefulShutdownMsg) })
1219} 1244}
1220 1245
1246// After sending GOAWAY, the connection will close after goAwayTimeout.
1247// If we close the connection immediately after sending GOAWAY, there may
1248// be unsent data in our kernel receive buffer, which will cause the kernel
1249// to send a TCP RST on close() instead of a FIN. This RST will abort the
1250// connection immediately, whether or not the client had received the GOAWAY.
1251//
1252// Ideally we should delay for at least 1 RTT + epsilon so the client has
1253// a chance to read the GOAWAY and stop sending messages. Measuring RTT
1254// is hard, so we approximate with 1 second. See golang.org/issue/18701.
1255//
1256// This is a var so it can be shorter in tests, where all requests uses the
1257// loopback interface making the expected RTT very small.
1258//
1259// TODO: configurable?
1260var goAwayTimeout = 1 * time.Second
1261
1221func (sc *serverConn) startGracefulShutdownInternal() { 1262func (sc *serverConn) startGracefulShutdownInternal() {
1222 sc.goAwayIn(ErrCodeNo, 0) 1263 sc.goAway(ErrCodeNo)
1223} 1264}
1224 1265
1225func (sc *serverConn) goAway(code ErrCode) { 1266func (sc *serverConn) goAway(code ErrCode) {
1226 sc.serveG.check() 1267 sc.serveG.check()
1227 var forceCloseIn time.Duration
1228 if code != ErrCodeNo {
1229 forceCloseIn = 250 * time.Millisecond
1230 } else {
1231 // TODO: configurable
1232 forceCloseIn = 1 * time.Second
1233 }
1234 sc.goAwayIn(code, forceCloseIn)
1235}
1236
1237func (sc *serverConn) goAwayIn(code ErrCode, forceCloseIn time.Duration) {
1238 sc.serveG.check()
1239 if sc.inGoAway { 1268 if sc.inGoAway {
1240 return 1269 return
1241 } 1270 }
1242 if forceCloseIn != 0 {
1243 sc.shutDownIn(forceCloseIn)
1244 }
1245 sc.inGoAway = true 1271 sc.inGoAway = true
1246 sc.needToSendGoAway = true 1272 sc.needToSendGoAway = true
1247 sc.goAwayCode = code 1273 sc.goAwayCode = code
@@ -1474,6 +1500,12 @@ func (sc *serverConn) processSettings(f *SettingsFrame) error {
1474 } 1500 }
1475 return nil 1501 return nil
1476 } 1502 }
1503 if f.NumSettings() > 100 || f.HasDuplicates() {
1504 // This isn't actually in the spec, but hang up on
1505 // suspiciously large settings frames or those with
1506 // duplicate entries.
1507 return ConnectionError(ErrCodeProtocol)
1508 }
1477 if err := f.ForeachSetting(sc.processSetting); err != nil { 1509 if err := f.ForeachSetting(sc.processSetting); err != nil {
1478 return err 1510 return err
1479 } 1511 }
@@ -1595,7 +1627,10 @@ func (sc *serverConn) processData(f *DataFrame) error {
1595 // Sender sending more than they'd declared? 1627 // Sender sending more than they'd declared?
1596 if st.declBodyBytes != -1 && st.bodyBytes+int64(len(data)) > st.declBodyBytes { 1628 if st.declBodyBytes != -1 && st.bodyBytes+int64(len(data)) > st.declBodyBytes {
1597 st.body.CloseWithError(fmt.Errorf("sender tried to send more than declared Content-Length of %d bytes", st.declBodyBytes)) 1629 st.body.CloseWithError(fmt.Errorf("sender tried to send more than declared Content-Length of %d bytes", st.declBodyBytes))
1598 return streamError(id, ErrCodeStreamClosed) 1630 // RFC 7540, sec 8.1.2.6: A request or response is also malformed if the
1631 // value of a content-length header field does not equal the sum of the
1632 // DATA frame payload lengths that form the body.
1633 return streamError(id, ErrCodeProtocol)
1599 } 1634 }
1600 if f.Length > 0 { 1635 if f.Length > 0 {
1601 // Check whether the client has flow control quota. 1636 // Check whether the client has flow control quota.
@@ -1705,6 +1740,13 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error {
1705 // processing this frame. 1740 // processing this frame.
1706 return nil 1741 return nil
1707 } 1742 }
1743 // RFC 7540, sec 5.1: If an endpoint receives additional frames, other than
1744 // WINDOW_UPDATE, PRIORITY, or RST_STREAM, for a stream that is in
1745 // this state, it MUST respond with a stream error (Section 5.4.2) of
1746 // type STREAM_CLOSED.
1747 if st.state == stateHalfClosedRemote {
1748 return streamError(id, ErrCodeStreamClosed)
1749 }
1708 return st.processTrailerHeaders(f) 1750 return st.processTrailerHeaders(f)
1709 } 1751 }
1710 1752
@@ -1805,7 +1847,7 @@ func (st *stream) processTrailerHeaders(f *MetaHeadersFrame) error {
1805 if st.trailer != nil { 1847 if st.trailer != nil {
1806 for _, hf := range f.RegularFields() { 1848 for _, hf := range f.RegularFields() {
1807 key := sc.canonicalHeader(hf.Name) 1849 key := sc.canonicalHeader(hf.Name)
1808 if !ValidTrailerHeader(key) { 1850 if !httpguts.ValidTrailerHeader(key) {
1809 // TODO: send more details to the peer somehow. But http2 has 1851 // TODO: send more details to the peer somehow. But http2 has
1810 // no way to send debug data at a stream level. Discuss with 1852 // no way to send debug data at a stream level. Discuss with
1811 // HTTP folk. 1853 // HTTP folk.
@@ -1846,7 +1888,7 @@ func (sc *serverConn) newStream(id, pusherID uint32, state streamState) *stream
1846 panic("internal error: cannot create stream with id 0") 1888 panic("internal error: cannot create stream with id 0")
1847 } 1889 }
1848 1890
1849 ctx, cancelCtx := contextWithCancel(sc.baseCtx) 1891 ctx, cancelCtx := context.WithCancel(sc.baseCtx)
1850 st := &stream{ 1892 st := &stream{
1851 sc: sc, 1893 sc: sc,
1852 id: id, 1894 id: id,
@@ -2012,7 +2054,7 @@ func (sc *serverConn) newWriterAndRequestNoBody(st *stream, rp requestParam) (*r
2012 Body: body, 2054 Body: body,
2013 Trailer: trailer, 2055 Trailer: trailer,
2014 } 2056 }
2015 req = requestWithContext(req, st.ctx) 2057 req = req.WithContext(st.ctx)
2016 2058
2017 rws := responseWriterStatePool.Get().(*responseWriterState) 2059 rws := responseWriterStatePool.Get().(*responseWriterState)
2018 bwSave := rws.bw 2060 bwSave := rws.bw
@@ -2040,7 +2082,7 @@ func (sc *serverConn) runHandler(rw *responseWriter, req *http.Request, handler
2040 stream: rw.rws.stream, 2082 stream: rw.rws.stream,
2041 }) 2083 })
2042 // Same as net/http: 2084 // Same as net/http:
2043 if shouldLogPanic(e) { 2085 if e != nil && e != http.ErrAbortHandler {
2044 const size = 64 << 10 2086 const size = 64 << 10
2045 buf := make([]byte, size) 2087 buf := make([]byte, size)
2046 buf = buf[:runtime.Stack(buf, false)] 2088 buf = buf[:runtime.Stack(buf, false)]
@@ -2265,15 +2307,24 @@ type chunkWriter struct{ rws *responseWriterState }
2265 2307
2266func (cw chunkWriter) Write(p []byte) (n int, err error) { return cw.rws.writeChunk(p) } 2308func (cw chunkWriter) Write(p []byte) (n int, err error) { return cw.rws.writeChunk(p) }
2267 2309
2268func (rws *responseWriterState) hasTrailers() bool { return len(rws.trailers) != 0 } 2310func (rws *responseWriterState) hasTrailers() bool { return len(rws.trailers) > 0 }
2311
2312func (rws *responseWriterState) hasNonemptyTrailers() bool {
2313 for _, trailer := range rws.trailers {
2314 if _, ok := rws.handlerHeader[trailer]; ok {
2315 return true
2316 }
2317 }
2318 return false
2319}
2269 2320
2270// declareTrailer is called for each Trailer header when the 2321// declareTrailer is called for each Trailer header when the
2271// response header is written. It notes that a header will need to be 2322// response header is written. It notes that a header will need to be
2272// written in the trailers at the end of the response. 2323// written in the trailers at the end of the response.
2273func (rws *responseWriterState) declareTrailer(k string) { 2324func (rws *responseWriterState) declareTrailer(k string) {
2274 k = http.CanonicalHeaderKey(k) 2325 k = http.CanonicalHeaderKey(k)
2275 if !ValidTrailerHeader(k) { 2326 if !httpguts.ValidTrailerHeader(k) {
2276 // Forbidden by RFC 2616 14.40. 2327 // Forbidden by RFC 7230, section 4.1.2.
2277 rws.conn.logf("ignoring invalid trailer %q", k) 2328 rws.conn.logf("ignoring invalid trailer %q", k)
2278 return 2329 return
2279 } 2330 }
@@ -2310,7 +2361,7 @@ func (rws *responseWriterState) writeChunk(p []byte) (n int, err error) {
2310 clen = strconv.Itoa(len(p)) 2361 clen = strconv.Itoa(len(p))
2311 } 2362 }
2312 _, hasContentType := rws.snapHeader["Content-Type"] 2363 _, hasContentType := rws.snapHeader["Content-Type"]
2313 if !hasContentType && bodyAllowedForStatus(rws.status) { 2364 if !hasContentType && bodyAllowedForStatus(rws.status) && len(p) > 0 {
2314 ctype = http.DetectContentType(p) 2365 ctype = http.DetectContentType(p)
2315 } 2366 }
2316 var date string 2367 var date string
@@ -2323,6 +2374,19 @@ func (rws *responseWriterState) writeChunk(p []byte) (n int, err error) {
2323 foreachHeaderElement(v, rws.declareTrailer) 2374 foreachHeaderElement(v, rws.declareTrailer)
2324 } 2375 }
2325 2376
2377 // "Connection" headers aren't allowed in HTTP/2 (RFC 7540, 8.1.2.2),
2378 // but respect "Connection" == "close" to mean sending a GOAWAY and tearing
2379 // down the TCP connection when idle, like we do for HTTP/1.
2380 // TODO: remove more Connection-specific header fields here, in addition
2381 // to "Connection".
2382 if _, ok := rws.snapHeader["Connection"]; ok {
2383 v := rws.snapHeader.Get("Connection")
2384 delete(rws.snapHeader, "Connection")
2385 if v == "close" {
2386 rws.conn.startGracefulShutdown()
2387 }
2388 }
2389
2326 endStream := (rws.handlerDone && !rws.hasTrailers() && len(p) == 0) || isHeadResp 2390 endStream := (rws.handlerDone && !rws.hasTrailers() && len(p) == 0) || isHeadResp
2327 err = rws.conn.writeHeaders(rws.stream, &writeResHeaders{ 2391 err = rws.conn.writeHeaders(rws.stream, &writeResHeaders{
2328 streamID: rws.stream.id, 2392 streamID: rws.stream.id,
@@ -2352,7 +2416,10 @@ func (rws *responseWriterState) writeChunk(p []byte) (n int, err error) {
2352 rws.promoteUndeclaredTrailers() 2416 rws.promoteUndeclaredTrailers()
2353 } 2417 }
2354 2418
2355 endStream := rws.handlerDone && !rws.hasTrailers() 2419 // only send trailers if they have actually been defined by the
2420 // server handler.
2421 hasNonemptyTrailers := rws.hasNonemptyTrailers()
2422 endStream := rws.handlerDone && !hasNonemptyTrailers
2356 if len(p) > 0 || endStream { 2423 if len(p) > 0 || endStream {
2357 // only send a 0 byte DATA frame if we're ending the stream. 2424 // only send a 0 byte DATA frame if we're ending the stream.
2358 if err := rws.conn.writeDataFromHandler(rws.stream, p, endStream); err != nil { 2425 if err := rws.conn.writeDataFromHandler(rws.stream, p, endStream); err != nil {
@@ -2361,7 +2428,7 @@ func (rws *responseWriterState) writeChunk(p []byte) (n int, err error) {
2361 } 2428 }
2362 } 2429 }
2363 2430
2364 if rws.handlerDone && rws.hasTrailers() { 2431 if rws.handlerDone && hasNonemptyTrailers {
2365 err = rws.conn.writeHeaders(rws.stream, &writeResHeaders{ 2432 err = rws.conn.writeHeaders(rws.stream, &writeResHeaders{
2366 streamID: rws.stream.id, 2433 streamID: rws.stream.id,
2367 h: rws.handlerHeader, 2434 h: rws.handlerHeader,
@@ -2394,7 +2461,7 @@ const TrailerPrefix = "Trailer:"
2394// after the header has already been flushed. Because the Go 2461// after the header has already been flushed. Because the Go
2395// ResponseWriter interface has no way to set Trailers (only the 2462// ResponseWriter interface has no way to set Trailers (only the
2396// Header), and because we didn't want to expand the ResponseWriter 2463// Header), and because we didn't want to expand the ResponseWriter
2397// interface, and because nobody used trailers, and because RFC 2616 2464// interface, and because nobody used trailers, and because RFC 7230
2398// says you SHOULD (but not must) predeclare any trailers in the 2465// says you SHOULD (but not must) predeclare any trailers in the
2399// header, the official ResponseWriter rules said trailers in Go must 2466// header, the official ResponseWriter rules said trailers in Go must
2400// be predeclared, and then we reuse the same ResponseWriter.Header() 2467// be predeclared, and then we reuse the same ResponseWriter.Header()
@@ -2478,6 +2545,24 @@ func (w *responseWriter) Header() http.Header {
2478 return rws.handlerHeader 2545 return rws.handlerHeader
2479} 2546}
2480 2547
2548// checkWriteHeaderCode is a copy of net/http's checkWriteHeaderCode.
2549func checkWriteHeaderCode(code int) {
2550 // Issue 22880: require valid WriteHeader status codes.
2551 // For now we only enforce that it's three digits.
2552 // In the future we might block things over 599 (600 and above aren't defined
2553 // at http://httpwg.org/specs/rfc7231.html#status.codes)
2554 // and we might block under 200 (once we have more mature 1xx support).
2555 // But for now any three digits.
2556 //
2557 // We used to send "HTTP/1.1 000 0" on the wire in responses but there's
2558 // no equivalent bogus thing we can realistically send in HTTP/2,
2559 // so we'll consistently panic instead and help people find their bugs
2560 // early. (We can't return an error from WriteHeader even if we wanted to.)
2561 if code < 100 || code > 999 {
2562 panic(fmt.Sprintf("invalid WriteHeader code %v", code))
2563 }
2564}
2565
2481func (w *responseWriter) WriteHeader(code int) { 2566func (w *responseWriter) WriteHeader(code int) {
2482 rws := w.rws 2567 rws := w.rws
2483 if rws == nil { 2568 if rws == nil {
@@ -2488,6 +2573,7 @@ func (w *responseWriter) WriteHeader(code int) {
2488 2573
2489func (rws *responseWriterState) writeHeader(code int) { 2574func (rws *responseWriterState) writeHeader(code int) {
2490 if !rws.wroteHeader { 2575 if !rws.wroteHeader {
2576 checkWriteHeaderCode(code)
2491 rws.wroteHeader = true 2577 rws.wroteHeader = true
2492 rws.status = code 2578 rws.status = code
2493 if len(rws.handlerHeader) > 0 { 2579 if len(rws.handlerHeader) > 0 {
@@ -2570,14 +2656,9 @@ var (
2570 ErrPushLimitReached = errors.New("http2: push would exceed peer's SETTINGS_MAX_CONCURRENT_STREAMS") 2656 ErrPushLimitReached = errors.New("http2: push would exceed peer's SETTINGS_MAX_CONCURRENT_STREAMS")
2571) 2657)
2572 2658
2573// pushOptions is the internal version of http.PushOptions, which we 2659var _ http.Pusher = (*responseWriter)(nil)
2574// cannot include here because it's only defined in Go 1.8 and later.
2575type pushOptions struct {
2576 Method string
2577 Header http.Header
2578}
2579 2660
2580func (w *responseWriter) push(target string, opts pushOptions) error { 2661func (w *responseWriter) Push(target string, opts *http.PushOptions) error {
2581 st := w.rws.stream 2662 st := w.rws.stream
2582 sc := st.sc 2663 sc := st.sc
2583 sc.serveG.checkNotOn() 2664 sc.serveG.checkNotOn()
@@ -2588,6 +2669,10 @@ func (w *responseWriter) push(target string, opts pushOptions) error {
2588 return ErrRecursivePush 2669 return ErrRecursivePush
2589 } 2670 }
2590 2671
2672 if opts == nil {
2673 opts = new(http.PushOptions)
2674 }
2675
2591 // Default options. 2676 // Default options.
2592 if opts.Method == "" { 2677 if opts.Method == "" {
2593 opts.Method = "GET" 2678 opts.Method = "GET"
@@ -2759,7 +2844,7 @@ func (sc *serverConn) startPush(msg *startPushRequest) {
2759} 2844}
2760 2845
2761// foreachHeaderElement splits v according to the "#rule" construction 2846// foreachHeaderElement splits v according to the "#rule" construction
2762// in RFC 2616 section 2.1 and calls fn for each non-empty element. 2847// in RFC 7230 section 7 and calls fn for each non-empty element.
2763func foreachHeaderElement(v string, fn func(string)) { 2848func foreachHeaderElement(v string, fn func(string)) {
2764 v = textproto.TrimString(v) 2849 v = textproto.TrimString(v)
2765 if v == "" { 2850 if v == "" {
@@ -2807,41 +2892,6 @@ func new400Handler(err error) http.HandlerFunc {
2807 } 2892 }
2808} 2893}
2809 2894
2810// ValidTrailerHeader reports whether name is a valid header field name to appear
2811// in trailers.
2812// See: http://tools.ietf.org/html/rfc7230#section-4.1.2
2813func ValidTrailerHeader(name string) bool {
2814 name = http.CanonicalHeaderKey(name)
2815 if strings.HasPrefix(name, "If-") || badTrailer[name] {
2816 return false
2817 }
2818 return true
2819}
2820
2821var badTrailer = map[string]bool{
2822 "Authorization": true,
2823 "Cache-Control": true,
2824 "Connection": true,
2825 "Content-Encoding": true,
2826 "Content-Length": true,
2827 "Content-Range": true,
2828 "Content-Type": true,
2829 "Expect": true,
2830 "Host": true,
2831 "Keep-Alive": true,
2832 "Max-Forwards": true,
2833 "Pragma": true,
2834 "Proxy-Authenticate": true,
2835 "Proxy-Authorization": true,
2836 "Proxy-Connection": true,
2837 "Range": true,
2838 "Realm": true,
2839 "Te": true,
2840 "Trailer": true,
2841 "Transfer-Encoding": true,
2842 "Www-Authenticate": true,
2843}
2844
2845// h1ServerKeepAlivesDisabled reports whether hs has its keep-alives 2895// h1ServerKeepAlivesDisabled reports whether hs has its keep-alives
2846// disabled. See comments on h1ServerShutdownChan above for why 2896// disabled. See comments on h1ServerShutdownChan above for why
2847// the code is written this way. 2897// the code is written this way.
diff --git a/vendor/golang.org/x/net/http2/transport.go b/vendor/golang.org/x/net/http2/transport.go
index adb77ff..4ec0792 100644
--- a/vendor/golang.org/x/net/http2/transport.go
+++ b/vendor/golang.org/x/net/http2/transport.go
@@ -10,6 +10,7 @@ import (
10 "bufio" 10 "bufio"
11 "bytes" 11 "bytes"
12 "compress/gzip" 12 "compress/gzip"
13 "context"
13 "crypto/rand" 14 "crypto/rand"
14 "crypto/tls" 15 "crypto/tls"
15 "errors" 16 "errors"
@@ -21,15 +22,17 @@ import (
21 mathrand "math/rand" 22 mathrand "math/rand"
22 "net" 23 "net"
23 "net/http" 24 "net/http"
25 "net/http/httptrace"
26 "net/textproto"
24 "sort" 27 "sort"
25 "strconv" 28 "strconv"
26 "strings" 29 "strings"
27 "sync" 30 "sync"
28 "time" 31 "time"
29 32
33 "golang.org/x/net/http/httpguts"
30 "golang.org/x/net/http2/hpack" 34 "golang.org/x/net/http2/hpack"
31 "golang.org/x/net/idna" 35 "golang.org/x/net/idna"
32 "golang.org/x/net/lex/httplex"
33) 36)
34 37
35const ( 38const (
@@ -94,6 +97,16 @@ type Transport struct {
94 // to mean no limit. 97 // to mean no limit.
95 MaxHeaderListSize uint32 98 MaxHeaderListSize uint32
96 99
100 // StrictMaxConcurrentStreams controls whether the server's
101 // SETTINGS_MAX_CONCURRENT_STREAMS should be respected
102 // globally. If false, new TCP connections are created to the
103 // server as needed to keep each under the per-connection
104 // SETTINGS_MAX_CONCURRENT_STREAMS limit. If true, the
105 // server's SETTINGS_MAX_CONCURRENT_STREAMS is interpreted as
106 // a global limit and callers of RoundTrip block when needed,
107 // waiting for their turn.
108 StrictMaxConcurrentStreams bool
109
97 // t1, if non-nil, is the standard library Transport using 110 // t1, if non-nil, is the standard library Transport using
98 // this transport. Its settings are used (but not its 111 // this transport. Its settings are used (but not its
99 // RoundTrip method, etc). 112 // RoundTrip method, etc).
@@ -117,16 +130,56 @@ func (t *Transport) disableCompression() bool {
117 return t.DisableCompression || (t.t1 != nil && t.t1.DisableCompression) 130 return t.DisableCompression || (t.t1 != nil && t.t1.DisableCompression)
118} 131}
119 132
120var errTransportVersion = errors.New("http2: ConfigureTransport is only supported starting at Go 1.6")
121
122// ConfigureTransport configures a net/http HTTP/1 Transport to use HTTP/2. 133// ConfigureTransport configures a net/http HTTP/1 Transport to use HTTP/2.
123// It requires Go 1.6 or later and returns an error if the net/http package is too old 134// It returns an error if t1 has already been HTTP/2-enabled.
124// or if t1 has already been HTTP/2-enabled.
125func ConfigureTransport(t1 *http.Transport) error { 135func ConfigureTransport(t1 *http.Transport) error {
126 _, err := configureTransport(t1) // in configure_transport.go (go1.6) or not_go16.go 136 _, err := configureTransport(t1)
127 return err 137 return err
128} 138}
129 139
140func configureTransport(t1 *http.Transport) (*Transport, error) {
141 connPool := new(clientConnPool)
142 t2 := &Transport{
143 ConnPool: noDialClientConnPool{connPool},
144 t1: t1,
145 }
146 connPool.t = t2
147 if err := registerHTTPSProtocol(t1, noDialH2RoundTripper{t2}); err != nil {
148 return nil, err
149 }
150 if t1.TLSClientConfig == nil {
151 t1.TLSClientConfig = new(tls.Config)
152 }
153 if !strSliceContains(t1.TLSClientConfig.NextProtos, "h2") {
154 t1.TLSClientConfig.NextProtos = append([]string{"h2"}, t1.TLSClientConfig.NextProtos...)
155 }
156 if !strSliceContains(t1.TLSClientConfig.NextProtos, "http/1.1") {
157 t1.TLSClientConfig.NextProtos = append(t1.TLSClientConfig.NextProtos, "http/1.1")
158 }
159 upgradeFn := func(authority string, c *tls.Conn) http.RoundTripper {
160 addr := authorityAddr("https", authority)
161 if used, err := connPool.addConnIfNeeded(addr, t2, c); err != nil {
162 go c.Close()
163 return erringRoundTripper{err}
164 } else if !used {
165 // Turns out we don't need this c.
166 // For example, two goroutines made requests to the same host
167 // at the same time, both kicking off TCP dials. (since protocol
168 // was unknown)
169 go c.Close()
170 }
171 return t2
172 }
173 if m := t1.TLSNextProto; len(m) == 0 {
174 t1.TLSNextProto = map[string]func(string, *tls.Conn) http.RoundTripper{
175 "h2": upgradeFn,
176 }
177 } else {
178 m["h2"] = upgradeFn
179 }
180 return t2, nil
181}
182
130func (t *Transport) connPool() ClientConnPool { 183func (t *Transport) connPool() ClientConnPool {
131 t.connPoolOnce.Do(t.initConnPool) 184 t.connPoolOnce.Do(t.initConnPool)
132 return t.connPoolOrDef 185 return t.connPoolOrDef
@@ -159,6 +212,7 @@ type ClientConn struct {
159 cond *sync.Cond // hold mu; broadcast on flow/closed changes 212 cond *sync.Cond // hold mu; broadcast on flow/closed changes
160 flow flow // our conn-level flow control quota (cs.flow is per stream) 213 flow flow // our conn-level flow control quota (cs.flow is per stream)
161 inflow flow // peer's conn-level flow control 214 inflow flow // peer's conn-level flow control
215 closing bool
162 closed bool 216 closed bool
163 wantSettingsAck bool // we sent a SETTINGS frame and haven't heard back 217 wantSettingsAck bool // we sent a SETTINGS frame and haven't heard back
164 goAway *GoAwayFrame // if non-nil, the GoAwayFrame we received 218 goAway *GoAwayFrame // if non-nil, the GoAwayFrame we received
@@ -190,7 +244,7 @@ type ClientConn struct {
190type clientStream struct { 244type clientStream struct {
191 cc *ClientConn 245 cc *ClientConn
192 req *http.Request 246 req *http.Request
193 trace *clientTrace // or nil 247 trace *httptrace.ClientTrace // or nil
194 ID uint32 248 ID uint32
195 resc chan resAndError 249 resc chan resAndError
196 bufPipe pipe // buffered pipe with the flow-controlled response payload 250 bufPipe pipe // buffered pipe with the flow-controlled response payload
@@ -211,9 +265,10 @@ type clientStream struct {
211 done chan struct{} // closed when stream remove from cc.streams map; close calls guarded by cc.mu 265 done chan struct{} // closed when stream remove from cc.streams map; close calls guarded by cc.mu
212 266
213 // owned by clientConnReadLoop: 267 // owned by clientConnReadLoop:
214 firstByte bool // got the first response byte 268 firstByte bool // got the first response byte
215 pastHeaders bool // got first MetaHeadersFrame (actual headers) 269 pastHeaders bool // got first MetaHeadersFrame (actual headers)
216 pastTrailers bool // got optional second MetaHeadersFrame (trailers) 270 pastTrailers bool // got optional second MetaHeadersFrame (trailers)
271 num1xx uint8 // number of 1xx responses seen
217 272
218 trailer http.Header // accumulated trailers 273 trailer http.Header // accumulated trailers
219 resTrailer *http.Header // client's Response.Trailer 274 resTrailer *http.Header // client's Response.Trailer
@@ -223,7 +278,7 @@ type clientStream struct {
223// channel to be signaled. A non-nil error is returned only if the request was 278// channel to be signaled. A non-nil error is returned only if the request was
224// canceled. 279// canceled.
225func awaitRequestCancel(req *http.Request, done <-chan struct{}) error { 280func awaitRequestCancel(req *http.Request, done <-chan struct{}) error {
226 ctx := reqContext(req) 281 ctx := req.Context()
227 if req.Cancel == nil && ctx.Done() == nil { 282 if req.Cancel == nil && ctx.Done() == nil {
228 return nil 283 return nil
229 } 284 }
@@ -237,6 +292,17 @@ func awaitRequestCancel(req *http.Request, done <-chan struct{}) error {
237 } 292 }
238} 293}
239 294
295var got1xxFuncForTests func(int, textproto.MIMEHeader) error
296
297// get1xxTraceFunc returns the value of request's httptrace.ClientTrace.Got1xxResponse func,
298// if any. It returns nil if not set or if the Go version is too old.
299func (cs *clientStream) get1xxTraceFunc() func(int, textproto.MIMEHeader) error {
300 if fn := got1xxFuncForTests; fn != nil {
301 return fn
302 }
303 return traceGot1xxResponseFunc(cs.trace)
304}
305
240// awaitRequestCancel waits for the user to cancel a request, its context to 306// awaitRequestCancel waits for the user to cancel a request, its context to
241// expire, or for the request to be done (any way it might be removed from the 307// expire, or for the request to be done (any way it might be removed from the
242// cc.streams map: peer reset, successful completion, TCP connection breakage, 308// cc.streams map: peer reset, successful completion, TCP connection breakage,
@@ -274,6 +340,13 @@ func (cs *clientStream) checkResetOrDone() error {
274 } 340 }
275} 341}
276 342
343func (cs *clientStream) getStartedWrite() bool {
344 cc := cs.cc
345 cc.mu.Lock()
346 defer cc.mu.Unlock()
347 return cs.startedWrite
348}
349
277func (cs *clientStream) abortRequestBodyWrite(err error) { 350func (cs *clientStream) abortRequestBodyWrite(err error) {
278 if err == nil { 351 if err == nil {
279 panic("nil error") 352 panic("nil error")
@@ -299,7 +372,26 @@ func (sew stickyErrWriter) Write(p []byte) (n int, err error) {
299 return 372 return
300} 373}
301 374
302var ErrNoCachedConn = errors.New("http2: no cached connection was available") 375// noCachedConnError is the concrete type of ErrNoCachedConn, which
376// needs to be detected by net/http regardless of whether it's its
377// bundled version (in h2_bundle.go with a rewritten type name) or
378// from a user's x/net/http2. As such, as it has a unique method name
379// (IsHTTP2NoCachedConnError) that net/http sniffs for via func
380// isNoCachedConnError.
381type noCachedConnError struct{}
382
383func (noCachedConnError) IsHTTP2NoCachedConnError() {}
384func (noCachedConnError) Error() string { return "http2: no cached connection was available" }
385
386// isNoCachedConnError reports whether err is of type noCachedConnError
387// or its equivalent renamed type in net/http2's h2_bundle.go. Both types
388// may coexist in the same running program.
389func isNoCachedConnError(err error) bool {
390 _, ok := err.(interface{ IsHTTP2NoCachedConnError() })
391 return ok
392}
393
394var ErrNoCachedConn error = noCachedConnError{}
303 395
304// RoundTripOpt are options for the Transport.RoundTripOpt method. 396// RoundTripOpt are options for the Transport.RoundTripOpt method.
305type RoundTripOpt struct { 397type RoundTripOpt struct {
@@ -349,14 +441,9 @@ func (t *Transport) RoundTripOpt(req *http.Request, opt RoundTripOpt) (*http.Res
349 return nil, err 441 return nil, err
350 } 442 }
351 traceGotConn(req, cc) 443 traceGotConn(req, cc)
352 res, err := cc.RoundTrip(req) 444 res, gotErrAfterReqBodyWrite, err := cc.roundTrip(req)
353 if err != nil && retry <= 6 { 445 if err != nil && retry <= 6 {
354 afterBodyWrite := false 446 if req, err = shouldRetryRequest(req, err, gotErrAfterReqBodyWrite); err == nil {
355 if e, ok := err.(afterReqBodyWriteError); ok {
356 err = e
357 afterBodyWrite = true
358 }
359 if req, err = shouldRetryRequest(req, err, afterBodyWrite); err == nil {
360 // After the first retry, do exponential backoff with 10% jitter. 447 // After the first retry, do exponential backoff with 10% jitter.
361 if retry == 0 { 448 if retry == 0 {
362 continue 449 continue
@@ -366,8 +453,8 @@ func (t *Transport) RoundTripOpt(req *http.Request, opt RoundTripOpt) (*http.Res
366 select { 453 select {
367 case <-time.After(time.Second * time.Duration(backoff)): 454 case <-time.After(time.Second * time.Duration(backoff)):
368 continue 455 continue
369 case <-reqContext(req).Done(): 456 case <-req.Context().Done():
370 return nil, reqContext(req).Err() 457 return nil, req.Context().Err()
371 } 458 }
372 } 459 }
373 } 460 }
@@ -394,16 +481,6 @@ var (
394 errClientConnGotGoAway = errors.New("http2: Transport received Server's graceful shutdown GOAWAY") 481 errClientConnGotGoAway = errors.New("http2: Transport received Server's graceful shutdown GOAWAY")
395) 482)
396 483
397// afterReqBodyWriteError is a wrapper around errors returned by ClientConn.RoundTrip.
398// It is used to signal that err happened after part of Request.Body was sent to the server.
399type afterReqBodyWriteError struct {
400 err error
401}
402
403func (e afterReqBodyWriteError) Error() string {
404 return e.err.Error() + "; some request body already written"
405}
406
407// shouldRetryRequest is called by RoundTrip when a request fails to get 484// shouldRetryRequest is called by RoundTrip when a request fails to get
408// response headers. It is always called with a non-nil error. 485// response headers. It is always called with a non-nil error.
409// It returns either a request to retry (either the same request, or a 486// It returns either a request to retry (either the same request, or a
@@ -412,27 +489,35 @@ func shouldRetryRequest(req *http.Request, err error, afterBodyWrite bool) (*htt
412 if !canRetryError(err) { 489 if !canRetryError(err) {
413 return nil, err 490 return nil, err
414 } 491 }
415 if !afterBodyWrite {
416 return req, nil
417 }
418 // If the Body is nil (or http.NoBody), it's safe to reuse 492 // If the Body is nil (or http.NoBody), it's safe to reuse
419 // this request and its Body. 493 // this request and its Body.
420 if req.Body == nil || reqBodyIsNoBody(req.Body) { 494 if req.Body == nil || req.Body == http.NoBody {
421 return req, nil 495 return req, nil
422 } 496 }
423 // Otherwise we depend on the Request having its GetBody 497
424 // func defined. 498 // If the request body can be reset back to its original
425 getBody := reqGetBody(req) // Go 1.8: getBody = req.GetBody 499 // state via the optional req.GetBody, do that.
426 if getBody == nil { 500 if req.GetBody != nil {
427 return nil, fmt.Errorf("http2: Transport: cannot retry err [%v] after Request.Body was written; define Request.GetBody to avoid this error", err) 501 // TODO: consider a req.Body.Close here? or audit that all caller paths do?
502 body, err := req.GetBody()
503 if err != nil {
504 return nil, err
505 }
506 newReq := *req
507 newReq.Body = body
508 return &newReq, nil
428 } 509 }
429 body, err := getBody() 510
430 if err != nil { 511 // The Request.Body can't reset back to the beginning, but we
431 return nil, err 512 // don't seem to have started to read from it yet, so reuse
513 // the request directly. The "afterBodyWrite" means the
514 // bodyWrite process has started, which becomes true before
515 // the first Read.
516 if !afterBodyWrite {
517 return req, nil
432 } 518 }
433 newReq := *req 519
434 newReq.Body = body 520 return nil, fmt.Errorf("http2: Transport: cannot retry err [%v] after Request.Body was written; define Request.GetBody to avoid this error", err)
435 return &newReq, nil
436} 521}
437 522
438func canRetryError(err error) bool { 523func canRetryError(err error) bool {
@@ -460,7 +545,7 @@ func (t *Transport) dialClientConn(addr string, singleUse bool) (*ClientConn, er
460func (t *Transport) newTLSConfig(host string) *tls.Config { 545func (t *Transport) newTLSConfig(host string) *tls.Config {
461 cfg := new(tls.Config) 546 cfg := new(tls.Config)
462 if t.TLSClientConfig != nil { 547 if t.TLSClientConfig != nil {
463 *cfg = *cloneTLSConfig(t.TLSClientConfig) 548 *cfg = *t.TLSClientConfig.Clone()
464 } 549 }
465 if !strSliceContains(cfg.NextProtos, NextProtoTLS) { 550 if !strSliceContains(cfg.NextProtos, NextProtoTLS) {
466 cfg.NextProtos = append([]string{NextProtoTLS}, cfg.NextProtos...) 551 cfg.NextProtos = append([]string{NextProtoTLS}, cfg.NextProtos...)
@@ -511,7 +596,7 @@ func (t *Transport) expectContinueTimeout() time.Duration {
511 if t.t1 == nil { 596 if t.t1 == nil {
512 return 0 597 return 0
513 } 598 }
514 return transportExpectContinueTimeout(t.t1) 599 return t.t1.ExpectContinueTimeout
515} 600}
516 601
517func (t *Transport) NewClientConn(c net.Conn) (*ClientConn, error) { 602func (t *Transport) NewClientConn(c net.Conn) (*ClientConn, error) {
@@ -556,6 +641,10 @@ func (t *Transport) newClientConn(c net.Conn, singleUse bool) (*ClientConn, erro
556 // henc in response to SETTINGS frames? 641 // henc in response to SETTINGS frames?
557 cc.henc = hpack.NewEncoder(&cc.hbuf) 642 cc.henc = hpack.NewEncoder(&cc.hbuf)
558 643
644 if t.AllowHTTP {
645 cc.nextStreamID = 3
646 }
647
559 if cs, ok := c.(connectionStater); ok { 648 if cs, ok := c.(connectionStater); ok {
560 state := cs.ConnectionState() 649 state := cs.ConnectionState()
561 cc.tlsState = &state 650 cc.tlsState = &state
@@ -615,12 +704,43 @@ func (cc *ClientConn) CanTakeNewRequest() bool {
615 return cc.canTakeNewRequestLocked() 704 return cc.canTakeNewRequestLocked()
616} 705}
617 706
618func (cc *ClientConn) canTakeNewRequestLocked() bool { 707// clientConnIdleState describes the suitability of a client
708// connection to initiate a new RoundTrip request.
709type clientConnIdleState struct {
710 canTakeNewRequest bool
711 freshConn bool // whether it's unused by any previous request
712}
713
714func (cc *ClientConn) idleState() clientConnIdleState {
715 cc.mu.Lock()
716 defer cc.mu.Unlock()
717 return cc.idleStateLocked()
718}
719
720func (cc *ClientConn) idleStateLocked() (st clientConnIdleState) {
619 if cc.singleUse && cc.nextStreamID > 1 { 721 if cc.singleUse && cc.nextStreamID > 1 {
620 return false 722 return
621 } 723 }
622 return cc.goAway == nil && !cc.closed && 724 var maxConcurrentOkay bool
623 int64(cc.nextStreamID)+int64(cc.pendingRequests) < math.MaxInt32 725 if cc.t.StrictMaxConcurrentStreams {
726 // We'll tell the caller we can take a new request to
727 // prevent the caller from dialing a new TCP
728 // connection, but then we'll block later before
729 // writing it.
730 maxConcurrentOkay = true
731 } else {
732 maxConcurrentOkay = int64(len(cc.streams)+1) < int64(cc.maxConcurrentStreams)
733 }
734
735 st.canTakeNewRequest = cc.goAway == nil && !cc.closed && !cc.closing && maxConcurrentOkay &&
736 int64(cc.nextStreamID)+2*int64(cc.pendingRequests) < math.MaxInt32
737 st.freshConn = cc.nextStreamID == 1 && st.canTakeNewRequest
738 return
739}
740
741func (cc *ClientConn) canTakeNewRequestLocked() bool {
742 st := cc.idleStateLocked()
743 return st.canTakeNewRequest
624} 744}
625 745
626// onIdleTimeout is called from a time.AfterFunc goroutine. It will 746// onIdleTimeout is called from a time.AfterFunc goroutine. It will
@@ -650,6 +770,87 @@ func (cc *ClientConn) closeIfIdle() {
650 cc.tconn.Close() 770 cc.tconn.Close()
651} 771}
652 772
773var shutdownEnterWaitStateHook = func() {}
774
775// Shutdown gracefully close the client connection, waiting for running streams to complete.
776func (cc *ClientConn) Shutdown(ctx context.Context) error {
777 if err := cc.sendGoAway(); err != nil {
778 return err
779 }
780 // Wait for all in-flight streams to complete or connection to close
781 done := make(chan error, 1)
782 cancelled := false // guarded by cc.mu
783 go func() {
784 cc.mu.Lock()
785 defer cc.mu.Unlock()
786 for {
787 if len(cc.streams) == 0 || cc.closed {
788 cc.closed = true
789 done <- cc.tconn.Close()
790 break
791 }
792 if cancelled {
793 break
794 }
795 cc.cond.Wait()
796 }
797 }()
798 shutdownEnterWaitStateHook()
799 select {
800 case err := <-done:
801 return err
802 case <-ctx.Done():
803 cc.mu.Lock()
804 // Free the goroutine above
805 cancelled = true
806 cc.cond.Broadcast()
807 cc.mu.Unlock()
808 return ctx.Err()
809 }
810}
811
812func (cc *ClientConn) sendGoAway() error {
813 cc.mu.Lock()
814 defer cc.mu.Unlock()
815 cc.wmu.Lock()
816 defer cc.wmu.Unlock()
817 if cc.closing {
818 // GOAWAY sent already
819 return nil
820 }
821 // Send a graceful shutdown frame to server
822 maxStreamID := cc.nextStreamID
823 if err := cc.fr.WriteGoAway(maxStreamID, ErrCodeNo, nil); err != nil {
824 return err
825 }
826 if err := cc.bw.Flush(); err != nil {
827 return err
828 }
829 // Prevent new requests
830 cc.closing = true
831 return nil
832}
833
834// Close closes the client connection immediately.
835//
836// In-flight requests are interrupted. For a graceful shutdown, use Shutdown instead.
837func (cc *ClientConn) Close() error {
838 cc.mu.Lock()
839 defer cc.cond.Broadcast()
840 defer cc.mu.Unlock()
841 err := errors.New("http2: client connection force closed via ClientConn.Close")
842 for id, cs := range cc.streams {
843 select {
844 case cs.resc <- resAndError{err: err}:
845 default:
846 }
847 cs.bufPipe.CloseWithError(err)
848 delete(cc.streams, id)
849 }
850 cc.closed = true
851 return cc.tconn.Close()
852}
853
653const maxAllocFrameSize = 512 << 10 854const maxAllocFrameSize = 512 << 10
654 855
655// frameBuffer returns a scratch buffer suitable for writing DATA frames. 856// frameBuffer returns a scratch buffer suitable for writing DATA frames.
@@ -732,7 +933,7 @@ func checkConnHeaders(req *http.Request) error {
732 if vv := req.Header["Transfer-Encoding"]; len(vv) > 0 && (len(vv) > 1 || vv[0] != "" && vv[0] != "chunked") { 933 if vv := req.Header["Transfer-Encoding"]; len(vv) > 0 && (len(vv) > 1 || vv[0] != "" && vv[0] != "chunked") {
733 return fmt.Errorf("http2: invalid Transfer-Encoding request header: %q", vv) 934 return fmt.Errorf("http2: invalid Transfer-Encoding request header: %q", vv)
734 } 935 }
735 if vv := req.Header["Connection"]; len(vv) > 0 && (len(vv) > 1 || vv[0] != "" && vv[0] != "close" && vv[0] != "keep-alive") { 936 if vv := req.Header["Connection"]; len(vv) > 0 && (len(vv) > 1 || vv[0] != "" && !strings.EqualFold(vv[0], "close") && !strings.EqualFold(vv[0], "keep-alive")) {
736 return fmt.Errorf("http2: invalid Connection request header: %q", vv) 937 return fmt.Errorf("http2: invalid Connection request header: %q", vv)
737 } 938 }
738 return nil 939 return nil
@@ -742,7 +943,7 @@ func checkConnHeaders(req *http.Request) error {
742// req.ContentLength, where 0 actually means zero (not unknown) and -1 943// req.ContentLength, where 0 actually means zero (not unknown) and -1
743// means unknown. 944// means unknown.
744func actualContentLength(req *http.Request) int64 { 945func actualContentLength(req *http.Request) int64 {
745 if req.Body == nil || reqBodyIsNoBody(req.Body) { 946 if req.Body == nil || req.Body == http.NoBody {
746 return 0 947 return 0
747 } 948 }
748 if req.ContentLength != 0 { 949 if req.ContentLength != 0 {
@@ -752,8 +953,13 @@ func actualContentLength(req *http.Request) int64 {
752} 953}
753 954
754func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) { 955func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) {
956 resp, _, err := cc.roundTrip(req)
957 return resp, err
958}
959
960func (cc *ClientConn) roundTrip(req *http.Request) (res *http.Response, gotErrAfterReqBodyWrite bool, err error) {
755 if err := checkConnHeaders(req); err != nil { 961 if err := checkConnHeaders(req); err != nil {
756 return nil, err 962 return nil, false, err
757 } 963 }
758 if cc.idleTimer != nil { 964 if cc.idleTimer != nil {
759 cc.idleTimer.Stop() 965 cc.idleTimer.Stop()
@@ -761,14 +967,14 @@ func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) {
761 967
762 trailers, err := commaSeparatedTrailers(req) 968 trailers, err := commaSeparatedTrailers(req)
763 if err != nil { 969 if err != nil {
764 return nil, err 970 return nil, false, err
765 } 971 }
766 hasTrailers := trailers != "" 972 hasTrailers := trailers != ""
767 973
768 cc.mu.Lock() 974 cc.mu.Lock()
769 if err := cc.awaitOpenSlotForRequest(req); err != nil { 975 if err := cc.awaitOpenSlotForRequest(req); err != nil {
770 cc.mu.Unlock() 976 cc.mu.Unlock()
771 return nil, err 977 return nil, false, err
772 } 978 }
773 979
774 body := req.Body 980 body := req.Body
@@ -802,19 +1008,19 @@ func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) {
802 hdrs, err := cc.encodeHeaders(req, requestedGzip, trailers, contentLen) 1008 hdrs, err := cc.encodeHeaders(req, requestedGzip, trailers, contentLen)
803 if err != nil { 1009 if err != nil {
804 cc.mu.Unlock() 1010 cc.mu.Unlock()
805 return nil, err 1011 return nil, false, err
806 } 1012 }
807 1013
808 cs := cc.newStream() 1014 cs := cc.newStream()
809 cs.req = req 1015 cs.req = req
810 cs.trace = requestTrace(req) 1016 cs.trace = httptrace.ContextClientTrace(req.Context())
811 cs.requestedGzip = requestedGzip 1017 cs.requestedGzip = requestedGzip
812 bodyWriter := cc.t.getBodyWriterState(cs, body) 1018 bodyWriter := cc.t.getBodyWriterState(cs, body)
813 cs.on100 = bodyWriter.on100 1019 cs.on100 = bodyWriter.on100
814 1020
815 cc.wmu.Lock() 1021 cc.wmu.Lock()
816 endStream := !hasBody && !hasTrailers 1022 endStream := !hasBody && !hasTrailers
817 werr := cc.writeHeaders(cs.ID, endStream, hdrs) 1023 werr := cc.writeHeaders(cs.ID, endStream, int(cc.maxFrameSize), hdrs)
818 cc.wmu.Unlock() 1024 cc.wmu.Unlock()
819 traceWroteHeaders(cs.trace) 1025 traceWroteHeaders(cs.trace)
820 cc.mu.Unlock() 1026 cc.mu.Unlock()
@@ -828,7 +1034,7 @@ func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) {
828 // Don't bother sending a RST_STREAM (our write already failed; 1034 // Don't bother sending a RST_STREAM (our write already failed;
829 // no need to keep writing) 1035 // no need to keep writing)
830 traceWroteRequest(cs.trace, werr) 1036 traceWroteRequest(cs.trace, werr)
831 return nil, werr 1037 return nil, false, werr
832 } 1038 }
833 1039
834 var respHeaderTimer <-chan time.Time 1040 var respHeaderTimer <-chan time.Time
@@ -845,9 +1051,9 @@ func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) {
845 1051
846 readLoopResCh := cs.resc 1052 readLoopResCh := cs.resc
847 bodyWritten := false 1053 bodyWritten := false
848 ctx := reqContext(req) 1054 ctx := req.Context()
849 1055
850 handleReadLoopResponse := func(re resAndError) (*http.Response, error) { 1056 handleReadLoopResponse := func(re resAndError) (*http.Response, bool, error) {
851 res := re.res 1057 res := re.res
852 if re.err != nil || res.StatusCode > 299 { 1058 if re.err != nil || res.StatusCode > 299 {
853 // On error or status code 3xx, 4xx, 5xx, etc abort any 1059 // On error or status code 3xx, 4xx, 5xx, etc abort any
@@ -863,18 +1069,12 @@ func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) {
863 cs.abortRequestBodyWrite(errStopReqBodyWrite) 1069 cs.abortRequestBodyWrite(errStopReqBodyWrite)
864 } 1070 }
865 if re.err != nil { 1071 if re.err != nil {
866 cc.mu.Lock()
867 afterBodyWrite := cs.startedWrite
868 cc.mu.Unlock()
869 cc.forgetStreamID(cs.ID) 1072 cc.forgetStreamID(cs.ID)
870 if afterBodyWrite { 1073 return nil, cs.getStartedWrite(), re.err
871 return nil, afterReqBodyWriteError{re.err}
872 }
873 return nil, re.err
874 } 1074 }
875 res.Request = req 1075 res.Request = req
876 res.TLS = cc.tlsState 1076 res.TLS = cc.tlsState
877 return res, nil 1077 return res, false, nil
878 } 1078 }
879 1079
880 for { 1080 for {
@@ -889,7 +1089,7 @@ func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) {
889 cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel) 1089 cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel)
890 } 1090 }
891 cc.forgetStreamID(cs.ID) 1091 cc.forgetStreamID(cs.ID)
892 return nil, errTimeout 1092 return nil, cs.getStartedWrite(), errTimeout
893 case <-ctx.Done(): 1093 case <-ctx.Done():
894 if !hasBody || bodyWritten { 1094 if !hasBody || bodyWritten {
895 cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) 1095 cc.writeStreamReset(cs.ID, ErrCodeCancel, nil)
@@ -898,7 +1098,7 @@ func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) {
898 cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel) 1098 cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel)
899 } 1099 }
900 cc.forgetStreamID(cs.ID) 1100 cc.forgetStreamID(cs.ID)
901 return nil, ctx.Err() 1101 return nil, cs.getStartedWrite(), ctx.Err()
902 case <-req.Cancel: 1102 case <-req.Cancel:
903 if !hasBody || bodyWritten { 1103 if !hasBody || bodyWritten {
904 cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) 1104 cc.writeStreamReset(cs.ID, ErrCodeCancel, nil)
@@ -907,12 +1107,12 @@ func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) {
907 cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel) 1107 cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel)
908 } 1108 }
909 cc.forgetStreamID(cs.ID) 1109 cc.forgetStreamID(cs.ID)
910 return nil, errRequestCanceled 1110 return nil, cs.getStartedWrite(), errRequestCanceled
911 case <-cs.peerReset: 1111 case <-cs.peerReset:
912 // processResetStream already removed the 1112 // processResetStream already removed the
913 // stream from the streams map; no need for 1113 // stream from the streams map; no need for
914 // forgetStreamID. 1114 // forgetStreamID.
915 return nil, cs.resetErr 1115 return nil, cs.getStartedWrite(), cs.resetErr
916 case err := <-bodyWriter.resc: 1116 case err := <-bodyWriter.resc:
917 // Prefer the read loop's response, if available. Issue 16102. 1117 // Prefer the read loop's response, if available. Issue 16102.
918 select { 1118 select {
@@ -921,7 +1121,8 @@ func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) {
921 default: 1121 default:
922 } 1122 }
923 if err != nil { 1123 if err != nil {
924 return nil, err 1124 cc.forgetStreamID(cs.ID)
1125 return nil, cs.getStartedWrite(), err
925 } 1126 }
926 bodyWritten = true 1127 bodyWritten = true
927 if d := cc.responseHeaderTimeout(); d != 0 { 1128 if d := cc.responseHeaderTimeout(); d != 0 {
@@ -941,6 +1142,9 @@ func (cc *ClientConn) awaitOpenSlotForRequest(req *http.Request) error {
941 for { 1142 for {
942 cc.lastActive = time.Now() 1143 cc.lastActive = time.Now()
943 if cc.closed || !cc.canTakeNewRequestLocked() { 1144 if cc.closed || !cc.canTakeNewRequestLocked() {
1145 if waitingForConn != nil {
1146 close(waitingForConn)
1147 }
944 return errClientConnUnusable 1148 return errClientConnUnusable
945 } 1149 }
946 if int64(len(cc.streams))+1 <= int64(cc.maxConcurrentStreams) { 1150 if int64(len(cc.streams))+1 <= int64(cc.maxConcurrentStreams) {
@@ -973,13 +1177,12 @@ func (cc *ClientConn) awaitOpenSlotForRequest(req *http.Request) error {
973} 1177}
974 1178
975// requires cc.wmu be held 1179// requires cc.wmu be held
976func (cc *ClientConn) writeHeaders(streamID uint32, endStream bool, hdrs []byte) error { 1180func (cc *ClientConn) writeHeaders(streamID uint32, endStream bool, maxFrameSize int, hdrs []byte) error {
977 first := true // first frame written (HEADERS is first, then CONTINUATION) 1181 first := true // first frame written (HEADERS is first, then CONTINUATION)
978 frameSize := int(cc.maxFrameSize)
979 for len(hdrs) > 0 && cc.werr == nil { 1182 for len(hdrs) > 0 && cc.werr == nil {
980 chunk := hdrs 1183 chunk := hdrs
981 if len(chunk) > frameSize { 1184 if len(chunk) > maxFrameSize {
982 chunk = chunk[:frameSize] 1185 chunk = chunk[:maxFrameSize]
983 } 1186 }
984 hdrs = hdrs[len(chunk):] 1187 hdrs = hdrs[len(chunk):]
985 endHeaders := len(hdrs) == 0 1188 endHeaders := len(hdrs) == 0
@@ -1040,6 +1243,7 @@ func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) (
1040 sawEOF = true 1243 sawEOF = true
1041 err = nil 1244 err = nil
1042 } else if err != nil { 1245 } else if err != nil {
1246 cc.writeStreamReset(cs.ID, ErrCodeCancel, err)
1043 return err 1247 return err
1044 } 1248 }
1045 1249
@@ -1096,13 +1300,17 @@ func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) (
1096 } 1300 }
1097 } 1301 }
1098 1302
1303 cc.mu.Lock()
1304 maxFrameSize := int(cc.maxFrameSize)
1305 cc.mu.Unlock()
1306
1099 cc.wmu.Lock() 1307 cc.wmu.Lock()
1100 defer cc.wmu.Unlock() 1308 defer cc.wmu.Unlock()
1101 1309
1102 // Two ways to send END_STREAM: either with trailers, or 1310 // Two ways to send END_STREAM: either with trailers, or
1103 // with an empty DATA frame. 1311 // with an empty DATA frame.
1104 if len(trls) > 0 { 1312 if len(trls) > 0 {
1105 err = cc.writeHeaders(cs.ID, true, trls) 1313 err = cc.writeHeaders(cs.ID, true, maxFrameSize, trls)
1106 } else { 1314 } else {
1107 err = cc.fr.WriteData(cs.ID, true, nil) 1315 err = cc.fr.WriteData(cs.ID, true, nil)
1108 } 1316 }
@@ -1161,7 +1369,7 @@ func (cc *ClientConn) encodeHeaders(req *http.Request, addGzipHeader bool, trail
1161 if host == "" { 1369 if host == "" {
1162 host = req.URL.Host 1370 host = req.URL.Host
1163 } 1371 }
1164 host, err := httplex.PunycodeHostPort(host) 1372 host, err := httpguts.PunycodeHostPort(host)
1165 if err != nil { 1373 if err != nil {
1166 return nil, err 1374 return nil, err
1167 } 1375 }
@@ -1186,11 +1394,11 @@ func (cc *ClientConn) encodeHeaders(req *http.Request, addGzipHeader bool, trail
1186 // potentially pollute our hpack state. (We want to be able to 1394 // potentially pollute our hpack state. (We want to be able to
1187 // continue to reuse the hpack encoder for future requests) 1395 // continue to reuse the hpack encoder for future requests)
1188 for k, vv := range req.Header { 1396 for k, vv := range req.Header {
1189 if !httplex.ValidHeaderFieldName(k) { 1397 if !httpguts.ValidHeaderFieldName(k) {
1190 return nil, fmt.Errorf("invalid HTTP header name %q", k) 1398 return nil, fmt.Errorf("invalid HTTP header name %q", k)
1191 } 1399 }
1192 for _, v := range vv { 1400 for _, v := range vv {
1193 if !httplex.ValidHeaderFieldValue(v) { 1401 if !httpguts.ValidHeaderFieldValue(v) {
1194 return nil, fmt.Errorf("invalid HTTP header value %q for header %q", v, k) 1402 return nil, fmt.Errorf("invalid HTTP header value %q for header %q", v, k)
1195 } 1403 }
1196 } 1404 }
@@ -1203,7 +1411,11 @@ func (cc *ClientConn) encodeHeaders(req *http.Request, addGzipHeader bool, trail
1203 // followed by the query production (see Sections 3.3 and 3.4 of 1411 // followed by the query production (see Sections 3.3 and 3.4 of
1204 // [RFC3986]). 1412 // [RFC3986]).
1205 f(":authority", host) 1413 f(":authority", host)
1206 f(":method", req.Method) 1414 m := req.Method
1415 if m == "" {
1416 m = http.MethodGet
1417 }
1418 f(":method", m)
1207 if req.Method != "CONNECT" { 1419 if req.Method != "CONNECT" {
1208 f(":path", path) 1420 f(":path", path)
1209 f(":scheme", req.URL.Scheme) 1421 f(":scheme", req.URL.Scheme)
@@ -1271,9 +1483,16 @@ func (cc *ClientConn) encodeHeaders(req *http.Request, addGzipHeader bool, trail
1271 return nil, errRequestHeaderListSize 1483 return nil, errRequestHeaderListSize
1272 } 1484 }
1273 1485
1486 trace := httptrace.ContextClientTrace(req.Context())
1487 traceHeaders := traceHasWroteHeaderField(trace)
1488
1274 // Header list size is ok. Write the headers. 1489 // Header list size is ok. Write the headers.
1275 enumerateHeaders(func(name, value string) { 1490 enumerateHeaders(func(name, value string) {
1276 cc.writeHeader(strings.ToLower(name), value) 1491 name = strings.ToLower(name)
1492 cc.writeHeader(name, value)
1493 if traceHeaders {
1494 traceWroteHeaderField(trace, name, value)
1495 }
1277 }) 1496 })
1278 1497
1279 return cc.hbuf.Bytes(), nil 1498 return cc.hbuf.Bytes(), nil
@@ -1382,17 +1601,12 @@ func (cc *ClientConn) streamByID(id uint32, andRemove bool) *clientStream {
1382// clientConnReadLoop is the state owned by the clientConn's frame-reading readLoop. 1601// clientConnReadLoop is the state owned by the clientConn's frame-reading readLoop.
1383type clientConnReadLoop struct { 1602type clientConnReadLoop struct {
1384 cc *ClientConn 1603 cc *ClientConn
1385 activeRes map[uint32]*clientStream // keyed by streamID
1386 closeWhenIdle bool 1604 closeWhenIdle bool
1387} 1605}
1388 1606
1389// readLoop runs in its own goroutine and reads and dispatches frames. 1607// readLoop runs in its own goroutine and reads and dispatches frames.
1390func (cc *ClientConn) readLoop() { 1608func (cc *ClientConn) readLoop() {
1391 rl := &clientConnReadLoop{ 1609 rl := &clientConnReadLoop{cc: cc}
1392 cc: cc,
1393 activeRes: make(map[uint32]*clientStream),
1394 }
1395
1396 defer rl.cleanup() 1610 defer rl.cleanup()
1397 cc.readerErr = rl.run() 1611 cc.readerErr = rl.run()
1398 if ce, ok := cc.readerErr.(ConnectionError); ok { 1612 if ce, ok := cc.readerErr.(ConnectionError); ok {
@@ -1447,10 +1661,8 @@ func (rl *clientConnReadLoop) cleanup() {
1447 } else if err == io.EOF { 1661 } else if err == io.EOF {
1448 err = io.ErrUnexpectedEOF 1662 err = io.ErrUnexpectedEOF
1449 } 1663 }
1450 for _, cs := range rl.activeRes {
1451 cs.bufPipe.CloseWithError(err)
1452 }
1453 for _, cs := range cc.streams { 1664 for _, cs := range cc.streams {
1665 cs.bufPipe.CloseWithError(err) // no-op if already closed
1454 select { 1666 select {
1455 case cs.resc <- resAndError{err: err}: 1667 case cs.resc <- resAndError{err: err}:
1456 default: 1668 default:
@@ -1528,7 +1740,7 @@ func (rl *clientConnReadLoop) run() error {
1528 } 1740 }
1529 return err 1741 return err
1530 } 1742 }
1531 if rl.closeWhenIdle && gotReply && maybeIdle && len(rl.activeRes) == 0 { 1743 if rl.closeWhenIdle && gotReply && maybeIdle {
1532 cc.closeIfIdle() 1744 cc.closeIfIdle()
1533 } 1745 }
1534 } 1746 }
@@ -1536,13 +1748,31 @@ func (rl *clientConnReadLoop) run() error {
1536 1748
1537func (rl *clientConnReadLoop) processHeaders(f *MetaHeadersFrame) error { 1749func (rl *clientConnReadLoop) processHeaders(f *MetaHeadersFrame) error {
1538 cc := rl.cc 1750 cc := rl.cc
1539 cs := cc.streamByID(f.StreamID, f.StreamEnded()) 1751 cs := cc.streamByID(f.StreamID, false)
1540 if cs == nil { 1752 if cs == nil {
1541 // We'd get here if we canceled a request while the 1753 // We'd get here if we canceled a request while the
1542 // server had its response still in flight. So if this 1754 // server had its response still in flight. So if this
1543 // was just something we canceled, ignore it. 1755 // was just something we canceled, ignore it.
1544 return nil 1756 return nil
1545 } 1757 }
1758 if f.StreamEnded() {
1759 // Issue 20521: If the stream has ended, streamByID() causes
1760 // clientStream.done to be closed, which causes the request's bodyWriter
1761 // to be closed with an errStreamClosed, which may be received by
1762 // clientConn.RoundTrip before the result of processing these headers.
1763 // Deferring stream closure allows the header processing to occur first.
1764 // clientConn.RoundTrip may still receive the bodyWriter error first, but
1765 // the fix for issue 16102 prioritises any response.
1766 //
1767 // Issue 22413: If there is no request body, we should close the
1768 // stream before writing to cs.resc so that the stream is closed
1769 // immediately once RoundTrip returns.
1770 if cs.req.Body != nil {
1771 defer cc.forgetStreamID(f.StreamID)
1772 } else {
1773 cc.forgetStreamID(f.StreamID)
1774 }
1775 }
1546 if !cs.firstByte { 1776 if !cs.firstByte {
1547 if cs.trace != nil { 1777 if cs.trace != nil {
1548 // TODO(bradfitz): move first response byte earlier, 1778 // TODO(bradfitz): move first response byte earlier,
@@ -1566,6 +1796,7 @@ func (rl *clientConnReadLoop) processHeaders(f *MetaHeadersFrame) error {
1566 } 1796 }
1567 // Any other error type is a stream error. 1797 // Any other error type is a stream error.
1568 cs.cc.writeStreamReset(f.StreamID, ErrCodeProtocol, err) 1798 cs.cc.writeStreamReset(f.StreamID, ErrCodeProtocol, err)
1799 cc.forgetStreamID(cs.ID)
1569 cs.resc <- resAndError{err: err} 1800 cs.resc <- resAndError{err: err}
1570 return nil // return nil from process* funcs to keep conn alive 1801 return nil // return nil from process* funcs to keep conn alive
1571 } 1802 }
@@ -1573,9 +1804,6 @@ func (rl *clientConnReadLoop) processHeaders(f *MetaHeadersFrame) error {
1573 // (nil, nil) special case. See handleResponse docs. 1804 // (nil, nil) special case. See handleResponse docs.
1574 return nil 1805 return nil
1575 } 1806 }
1576 if res.Body != noBody {
1577 rl.activeRes[cs.ID] = cs
1578 }
1579 cs.resTrailer = &res.Trailer 1807 cs.resTrailer = &res.Trailer
1580 cs.resc <- resAndError{res: res} 1808 cs.resc <- resAndError{res: res}
1581 return nil 1809 return nil
@@ -1586,8 +1814,7 @@ func (rl *clientConnReadLoop) processHeaders(f *MetaHeadersFrame) error {
1586// is the detail. 1814// is the detail.
1587// 1815//
1588// As a special case, handleResponse may return (nil, nil) to skip the 1816// As a special case, handleResponse may return (nil, nil) to skip the
1589// frame (currently only used for 100 expect continue). This special 1817// frame (currently only used for 1xx responses).
1590// case is going away after Issue 13851 is fixed.
1591func (rl *clientConnReadLoop) handleResponse(cs *clientStream, f *MetaHeadersFrame) (*http.Response, error) { 1818func (rl *clientConnReadLoop) handleResponse(cs *clientStream, f *MetaHeadersFrame) (*http.Response, error) {
1592 if f.Truncated { 1819 if f.Truncated {
1593 return nil, errResponseHeaderListSize 1820 return nil, errResponseHeaderListSize
@@ -1595,20 +1822,11 @@ func (rl *clientConnReadLoop) handleResponse(cs *clientStream, f *MetaHeadersFra
1595 1822
1596 status := f.PseudoValue("status") 1823 status := f.PseudoValue("status")
1597 if status == "" { 1824 if status == "" {
1598 return nil, errors.New("missing status pseudo header") 1825 return nil, errors.New("malformed response from server: missing status pseudo header")
1599 } 1826 }
1600 statusCode, err := strconv.Atoi(status) 1827 statusCode, err := strconv.Atoi(status)
1601 if err != nil { 1828 if err != nil {
1602 return nil, errors.New("malformed non-numeric status pseudo header") 1829 return nil, errors.New("malformed response from server: malformed non-numeric status pseudo header")
1603 }
1604
1605 if statusCode == 100 {
1606 traceGot100Continue(cs.trace)
1607 if cs.on100 != nil {
1608 cs.on100() // forces any write delay timer to fire
1609 }
1610 cs.pastHeaders = false // do it all again
1611 return nil, nil
1612 } 1830 }
1613 1831
1614 header := make(http.Header) 1832 header := make(http.Header)
@@ -1635,6 +1853,27 @@ func (rl *clientConnReadLoop) handleResponse(cs *clientStream, f *MetaHeadersFra
1635 } 1853 }
1636 } 1854 }
1637 1855
1856 if statusCode >= 100 && statusCode <= 199 {
1857 cs.num1xx++
1858 const max1xxResponses = 5 // arbitrary bound on number of informational responses, same as net/http
1859 if cs.num1xx > max1xxResponses {
1860 return nil, errors.New("http2: too many 1xx informational responses")
1861 }
1862 if fn := cs.get1xxTraceFunc(); fn != nil {
1863 if err := fn(statusCode, textproto.MIMEHeader(header)); err != nil {
1864 return nil, err
1865 }
1866 }
1867 if statusCode == 100 {
1868 traceGot100Continue(cs.trace)
1869 if cs.on100 != nil {
1870 cs.on100() // forces any write delay timer to fire
1871 }
1872 }
1873 cs.pastHeaders = false // do it all again
1874 return nil, nil
1875 }
1876
1638 streamEnded := f.StreamEnded() 1877 streamEnded := f.StreamEnded()
1639 isHead := cs.req.Method == "HEAD" 1878 isHead := cs.req.Method == "HEAD"
1640 if !streamEnded || isHead { 1879 if !streamEnded || isHead {
@@ -1667,7 +1906,7 @@ func (rl *clientConnReadLoop) handleResponse(cs *clientStream, f *MetaHeadersFra
1667 res.Header.Del("Content-Length") 1906 res.Header.Del("Content-Length")
1668 res.ContentLength = -1 1907 res.ContentLength = -1
1669 res.Body = &gzipReader{body: res.Body} 1908 res.Body = &gzipReader{body: res.Body}
1670 setResponseUncompressed(res) 1909 res.Uncompressed = true
1671 } 1910 }
1672 return res, nil 1911 return res, nil
1673} 1912}
@@ -1841,6 +2080,14 @@ func (rl *clientConnReadLoop) processData(f *DataFrame) error {
1841 return nil 2080 return nil
1842 } 2081 }
1843 if f.Length > 0 { 2082 if f.Length > 0 {
2083 if cs.req.Method == "HEAD" && len(data) > 0 {
2084 cc.logf("protocol error: received DATA on a HEAD request")
2085 rl.endStreamError(cs, StreamError{
2086 StreamID: f.StreamID,
2087 Code: ErrCodeProtocol,
2088 })
2089 return nil
2090 }
1844 // Check connection-level flow control. 2091 // Check connection-level flow control.
1845 cc.mu.Lock() 2092 cc.mu.Lock()
1846 if cs.inflow.available() >= int32(f.Length) { 2093 if cs.inflow.available() >= int32(f.Length) {
@@ -1902,11 +2149,10 @@ func (rl *clientConnReadLoop) endStreamError(cs *clientStream, err error) {
1902 err = io.EOF 2149 err = io.EOF
1903 code = cs.copyTrailers 2150 code = cs.copyTrailers
1904 } 2151 }
1905 cs.bufPipe.closeWithErrorAndCode(err, code)
1906 delete(rl.activeRes, cs.ID)
1907 if isConnectionCloseRequest(cs.req) { 2152 if isConnectionCloseRequest(cs.req) {
1908 rl.closeWhenIdle = true 2153 rl.closeWhenIdle = true
1909 } 2154 }
2155 cs.bufPipe.closeWithErrorAndCode(err, code)
1910 2156
1911 select { 2157 select {
1912 case cs.resc <- resAndError{err: err}: 2158 case cs.resc <- resAndError{err: err}:
@@ -2033,13 +2279,11 @@ func (rl *clientConnReadLoop) processResetStream(f *RSTStreamFrame) error {
2033 cs.bufPipe.CloseWithError(err) 2279 cs.bufPipe.CloseWithError(err)
2034 cs.cc.cond.Broadcast() // wake up checkResetOrDone via clientStream.awaitFlowControl 2280 cs.cc.cond.Broadcast() // wake up checkResetOrDone via clientStream.awaitFlowControl
2035 } 2281 }
2036 delete(rl.activeRes, cs.ID)
2037 return nil 2282 return nil
2038} 2283}
2039 2284
2040// Ping sends a PING frame to the server and waits for the ack. 2285// Ping sends a PING frame to the server and waits for the ack.
2041// Public implementation is in go17.go and not_go17.go 2286func (cc *ClientConn) Ping(ctx context.Context) error {
2042func (cc *ClientConn) ping(ctx contextContext) error {
2043 c := make(chan struct{}) 2287 c := make(chan struct{})
2044 // Generate a random payload 2288 // Generate a random payload
2045 var p [8]byte 2289 var p [8]byte
@@ -2216,7 +2460,7 @@ func (t *Transport) getBodyWriterState(cs *clientStream, body io.Reader) (s body
2216 } 2460 }
2217 s.delay = t.expectContinueTimeout() 2461 s.delay = t.expectContinueTimeout()
2218 if s.delay == 0 || 2462 if s.delay == 0 ||
2219 !httplex.HeaderValuesContainsToken( 2463 !httpguts.HeaderValuesContainsToken(
2220 cs.req.Header["Expect"], 2464 cs.req.Header["Expect"],
2221 "100-continue") { 2465 "100-continue") {
2222 return 2466 return
@@ -2271,5 +2515,93 @@ func (s bodyWriterState) scheduleBodyWrite() {
2271// isConnectionCloseRequest reports whether req should use its own 2515// isConnectionCloseRequest reports whether req should use its own
2272// connection for a single request and then close the connection. 2516// connection for a single request and then close the connection.
2273func isConnectionCloseRequest(req *http.Request) bool { 2517func isConnectionCloseRequest(req *http.Request) bool {
2274 return req.Close || httplex.HeaderValuesContainsToken(req.Header["Connection"], "close") 2518 return req.Close || httpguts.HeaderValuesContainsToken(req.Header["Connection"], "close")
2519}
2520
2521// registerHTTPSProtocol calls Transport.RegisterProtocol but
2522// converting panics into errors.
2523func registerHTTPSProtocol(t *http.Transport, rt noDialH2RoundTripper) (err error) {
2524 defer func() {
2525 if e := recover(); e != nil {
2526 err = fmt.Errorf("%v", e)
2527 }
2528 }()
2529 t.RegisterProtocol("https", rt)
2530 return nil
2531}
2532
2533// noDialH2RoundTripper is a RoundTripper which only tries to complete the request
2534// if there's already has a cached connection to the host.
2535// (The field is exported so it can be accessed via reflect from net/http; tested
2536// by TestNoDialH2RoundTripperType)
2537type noDialH2RoundTripper struct{ *Transport }
2538
2539func (rt noDialH2RoundTripper) RoundTrip(req *http.Request) (*http.Response, error) {
2540 res, err := rt.Transport.RoundTrip(req)
2541 if isNoCachedConnError(err) {
2542 return nil, http.ErrSkipAltProtocol
2543 }
2544 return res, err
2545}
2546
2547func (t *Transport) idleConnTimeout() time.Duration {
2548 if t.t1 != nil {
2549 return t.t1.IdleConnTimeout
2550 }
2551 return 0
2552}
2553
2554func traceGetConn(req *http.Request, hostPort string) {
2555 trace := httptrace.ContextClientTrace(req.Context())
2556 if trace == nil || trace.GetConn == nil {
2557 return
2558 }
2559 trace.GetConn(hostPort)
2560}
2561
2562func traceGotConn(req *http.Request, cc *ClientConn) {
2563 trace := httptrace.ContextClientTrace(req.Context())
2564 if trace == nil || trace.GotConn == nil {
2565 return
2566 }
2567 ci := httptrace.GotConnInfo{Conn: cc.tconn}
2568 cc.mu.Lock()
2569 ci.Reused = cc.nextStreamID > 1
2570 ci.WasIdle = len(cc.streams) == 0 && ci.Reused
2571 if ci.WasIdle && !cc.lastActive.IsZero() {
2572 ci.IdleTime = time.Now().Sub(cc.lastActive)
2573 }
2574 cc.mu.Unlock()
2575
2576 trace.GotConn(ci)
2577}
2578
2579func traceWroteHeaders(trace *httptrace.ClientTrace) {
2580 if trace != nil && trace.WroteHeaders != nil {
2581 trace.WroteHeaders()
2582 }
2583}
2584
2585func traceGot100Continue(trace *httptrace.ClientTrace) {
2586 if trace != nil && trace.Got100Continue != nil {
2587 trace.Got100Continue()
2588 }
2589}
2590
2591func traceWait100Continue(trace *httptrace.ClientTrace) {
2592 if trace != nil && trace.Wait100Continue != nil {
2593 trace.Wait100Continue()
2594 }
2595}
2596
2597func traceWroteRequest(trace *httptrace.ClientTrace, err error) {
2598 if trace != nil && trace.WroteRequest != nil {
2599 trace.WroteRequest(httptrace.WroteRequestInfo{Err: err})
2600 }
2601}
2602
2603func traceFirstResponseByte(trace *httptrace.ClientTrace) {
2604 if trace != nil && trace.GotFirstResponseByte != nil {
2605 trace.GotFirstResponseByte()
2606 }
2275} 2607}
diff --git a/vendor/golang.org/x/net/http2/write.go b/vendor/golang.org/x/net/http2/write.go
index 6b0dfae..3849bc2 100644
--- a/vendor/golang.org/x/net/http2/write.go
+++ b/vendor/golang.org/x/net/http2/write.go
@@ -10,10 +10,9 @@ import (
10 "log" 10 "log"
11 "net/http" 11 "net/http"
12 "net/url" 12 "net/url"
13 "time"
14 13
14 "golang.org/x/net/http/httpguts"
15 "golang.org/x/net/http2/hpack" 15 "golang.org/x/net/http2/hpack"
16 "golang.org/x/net/lex/httplex"
17) 16)
18 17
19// writeFramer is implemented by any type that is used to write frames. 18// writeFramer is implemented by any type that is used to write frames.
@@ -90,11 +89,7 @@ type writeGoAway struct {
90 89
91func (p *writeGoAway) writeFrame(ctx writeContext) error { 90func (p *writeGoAway) writeFrame(ctx writeContext) error {
92 err := ctx.Framer().WriteGoAway(p.maxStreamID, p.code, nil) 91 err := ctx.Framer().WriteGoAway(p.maxStreamID, p.code, nil)
93 if p.code != 0 { 92 ctx.Flush() // ignore error: we're hanging up on them anyway
94 ctx.Flush() // ignore error: we're hanging up on them anyway
95 time.Sleep(50 * time.Millisecond)
96 ctx.CloseConn()
97 }
98 return err 93 return err
99} 94}
100 95
@@ -204,7 +199,7 @@ func (w *writeResHeaders) staysWithinBuffer(max int) bool {
204 // TODO: this is a common one. It'd be nice to return true 199 // TODO: this is a common one. It'd be nice to return true
205 // here and get into the fast path if we could be clever and 200 // here and get into the fast path if we could be clever and
206 // calculate the size fast enough, or at least a conservative 201 // calculate the size fast enough, or at least a conservative
207 // uppper bound that usually fires. (Maybe if w.h and 202 // upper bound that usually fires. (Maybe if w.h and
208 // w.trailers are nil, so we don't need to enumerate it.) 203 // w.trailers are nil, so we don't need to enumerate it.)
209 // Otherwise I'm afraid that just calculating the length to 204 // Otherwise I'm afraid that just calculating the length to
210 // answer this question would be slower than the ~2µs benefit. 205 // answer this question would be slower than the ~2µs benefit.
@@ -334,7 +329,7 @@ func (wu writeWindowUpdate) writeFrame(ctx writeContext) error {
334} 329}
335 330
336// encodeHeaders encodes an http.Header. If keys is not nil, then (k, h[k]) 331// encodeHeaders encodes an http.Header. If keys is not nil, then (k, h[k])
337// is encoded only only if k is in keys. 332// is encoded only if k is in keys.
338func encodeHeaders(enc *hpack.Encoder, h http.Header, keys []string) { 333func encodeHeaders(enc *hpack.Encoder, h http.Header, keys []string) {
339 if keys == nil { 334 if keys == nil {
340 sorter := sorterPool.Get().(*sorter) 335 sorter := sorterPool.Get().(*sorter)
@@ -355,7 +350,7 @@ func encodeHeaders(enc *hpack.Encoder, h http.Header, keys []string) {
355 } 350 }
356 isTE := k == "transfer-encoding" 351 isTE := k == "transfer-encoding"
357 for _, v := range vv { 352 for _, v := range vv {
358 if !httplex.ValidHeaderFieldValue(v) { 353 if !httpguts.ValidHeaderFieldValue(v) {
359 // TODO: return an error? golang.org/issue/14048 354 // TODO: return an error? golang.org/issue/14048
360 // For now just omit it. 355 // For now just omit it.
361 continue 356 continue
diff --git a/vendor/golang.org/x/net/idna/idna10.0.0.go b/vendor/golang.org/x/net/idna/idna10.0.0.go
new file mode 100644
index 0000000..a98a31f
--- /dev/null
+++ b/vendor/golang.org/x/net/idna/idna10.0.0.go
@@ -0,0 +1,734 @@
1// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
2
3// Copyright 2016 The Go Authors. All rights reserved.
4// Use of this source code is governed by a BSD-style
5// license that can be found in the LICENSE file.
6
7// +build go1.10
8
9// Package idna implements IDNA2008 using the compatibility processing
10// defined by UTS (Unicode Technical Standard) #46, which defines a standard to
11// deal with the transition from IDNA2003.
12//
13// IDNA2008 (Internationalized Domain Names for Applications), is defined in RFC
14// 5890, RFC 5891, RFC 5892, RFC 5893 and RFC 5894.
15// UTS #46 is defined in https://www.unicode.org/reports/tr46.
16// See https://unicode.org/cldr/utility/idna.jsp for a visualization of the
17// differences between these two standards.
18package idna // import "golang.org/x/net/idna"
19
20import (
21 "fmt"
22 "strings"
23 "unicode/utf8"
24
25 "golang.org/x/text/secure/bidirule"
26 "golang.org/x/text/unicode/bidi"
27 "golang.org/x/text/unicode/norm"
28)
29
30// NOTE: Unlike common practice in Go APIs, the functions will return a
31// sanitized domain name in case of errors. Browsers sometimes use a partially
32// evaluated string as lookup.
33// TODO: the current error handling is, in my opinion, the least opinionated.
34// Other strategies are also viable, though:
35// Option 1) Return an empty string in case of error, but allow the user to
36// specify explicitly which errors to ignore.
37// Option 2) Return the partially evaluated string if it is itself a valid
38// string, otherwise return the empty string in case of error.
39// Option 3) Option 1 and 2.
40// Option 4) Always return an empty string for now and implement Option 1 as
41// needed, and document that the return string may not be empty in case of
42// error in the future.
43// I think Option 1 is best, but it is quite opinionated.
44
45// ToASCII is a wrapper for Punycode.ToASCII.
46func ToASCII(s string) (string, error) {
47 return Punycode.process(s, true)
48}
49
50// ToUnicode is a wrapper for Punycode.ToUnicode.
51func ToUnicode(s string) (string, error) {
52 return Punycode.process(s, false)
53}
54
55// An Option configures a Profile at creation time.
56type Option func(*options)
57
58// Transitional sets a Profile to use the Transitional mapping as defined in UTS
59// #46. This will cause, for example, "ß" to be mapped to "ss". Using the
60// transitional mapping provides a compromise between IDNA2003 and IDNA2008
61// compatibility. It is used by most browsers when resolving domain names. This
62// option is only meaningful if combined with MapForLookup.
63func Transitional(transitional bool) Option {
64 return func(o *options) { o.transitional = true }
65}
66
67// VerifyDNSLength sets whether a Profile should fail if any of the IDN parts
68// are longer than allowed by the RFC.
69func VerifyDNSLength(verify bool) Option {
70 return func(o *options) { o.verifyDNSLength = verify }
71}
72
73// RemoveLeadingDots removes leading label separators. Leading runes that map to
74// dots, such as U+3002 IDEOGRAPHIC FULL STOP, are removed as well.
75//
76// This is the behavior suggested by the UTS #46 and is adopted by some
77// browsers.
78func RemoveLeadingDots(remove bool) Option {
79 return func(o *options) { o.removeLeadingDots = remove }
80}
81
82// ValidateLabels sets whether to check the mandatory label validation criteria
83// as defined in Section 5.4 of RFC 5891. This includes testing for correct use
84// of hyphens ('-'), normalization, validity of runes, and the context rules.
85func ValidateLabels(enable bool) Option {
86 return func(o *options) {
87 // Don't override existing mappings, but set one that at least checks
88 // normalization if it is not set.
89 if o.mapping == nil && enable {
90 o.mapping = normalize
91 }
92 o.trie = trie
93 o.validateLabels = enable
94 o.fromPuny = validateFromPunycode
95 }
96}
97
98// StrictDomainName limits the set of permissible ASCII characters to those
99// allowed in domain names as defined in RFC 1034 (A-Z, a-z, 0-9 and the
100// hyphen). This is set by default for MapForLookup and ValidateForRegistration.
101//
102// This option is useful, for instance, for browsers that allow characters
103// outside this range, for example a '_' (U+005F LOW LINE). See
104// http://www.rfc-editor.org/std/std3.txt for more details This option
105// corresponds to the UseSTD3ASCIIRules option in UTS #46.
106func StrictDomainName(use bool) Option {
107 return func(o *options) {
108 o.trie = trie
109 o.useSTD3Rules = use
110 o.fromPuny = validateFromPunycode
111 }
112}
113
114// NOTE: the following options pull in tables. The tables should not be linked
115// in as long as the options are not used.
116
117// BidiRule enables the Bidi rule as defined in RFC 5893. Any application
118// that relies on proper validation of labels should include this rule.
119func BidiRule() Option {
120 return func(o *options) { o.bidirule = bidirule.ValidString }
121}
122
123// ValidateForRegistration sets validation options to verify that a given IDN is
124// properly formatted for registration as defined by Section 4 of RFC 5891.
125func ValidateForRegistration() Option {
126 return func(o *options) {
127 o.mapping = validateRegistration
128 StrictDomainName(true)(o)
129 ValidateLabels(true)(o)
130 VerifyDNSLength(true)(o)
131 BidiRule()(o)
132 }
133}
134
135// MapForLookup sets validation and mapping options such that a given IDN is
136// transformed for domain name lookup according to the requirements set out in
137// Section 5 of RFC 5891. The mappings follow the recommendations of RFC 5894,
138// RFC 5895 and UTS 46. It does not add the Bidi Rule. Use the BidiRule option
139// to add this check.
140//
141// The mappings include normalization and mapping case, width and other
142// compatibility mappings.
143func MapForLookup() Option {
144 return func(o *options) {
145 o.mapping = validateAndMap
146 StrictDomainName(true)(o)
147 ValidateLabels(true)(o)
148 }
149}
150
151type options struct {
152 transitional bool
153 useSTD3Rules bool
154 validateLabels bool
155 verifyDNSLength bool
156 removeLeadingDots bool
157
158 trie *idnaTrie
159
160 // fromPuny calls validation rules when converting A-labels to U-labels.
161 fromPuny func(p *Profile, s string) error
162
163 // mapping implements a validation and mapping step as defined in RFC 5895
164 // or UTS 46, tailored to, for example, domain registration or lookup.
165 mapping func(p *Profile, s string) (mapped string, isBidi bool, err error)
166
167 // bidirule, if specified, checks whether s conforms to the Bidi Rule
168 // defined in RFC 5893.
169 bidirule func(s string) bool
170}
171
172// A Profile defines the configuration of an IDNA mapper.
173type Profile struct {
174 options
175}
176
177func apply(o *options, opts []Option) {
178 for _, f := range opts {
179 f(o)
180 }
181}
182
183// New creates a new Profile.
184//
185// With no options, the returned Profile is the most permissive and equals the
186// Punycode Profile. Options can be passed to further restrict the Profile. The
187// MapForLookup and ValidateForRegistration options set a collection of options,
188// for lookup and registration purposes respectively, which can be tailored by
189// adding more fine-grained options, where later options override earlier
190// options.
191func New(o ...Option) *Profile {
192 p := &Profile{}
193 apply(&p.options, o)
194 return p
195}
196
197// ToASCII converts a domain or domain label to its ASCII form. For example,
198// ToASCII("bücher.example.com") is "xn--bcher-kva.example.com", and
199// ToASCII("golang") is "golang". If an error is encountered it will return
200// an error and a (partially) processed result.
201func (p *Profile) ToASCII(s string) (string, error) {
202 return p.process(s, true)
203}
204
205// ToUnicode converts a domain or domain label to its Unicode form. For example,
206// ToUnicode("xn--bcher-kva.example.com") is "bücher.example.com", and
207// ToUnicode("golang") is "golang". If an error is encountered it will return
208// an error and a (partially) processed result.
209func (p *Profile) ToUnicode(s string) (string, error) {
210 pp := *p
211 pp.transitional = false
212 return pp.process(s, false)
213}
214
215// String reports a string with a description of the profile for debugging
216// purposes. The string format may change with different versions.
217func (p *Profile) String() string {
218 s := ""
219 if p.transitional {
220 s = "Transitional"
221 } else {
222 s = "NonTransitional"
223 }
224 if p.useSTD3Rules {
225 s += ":UseSTD3Rules"
226 }
227 if p.validateLabels {
228 s += ":ValidateLabels"
229 }
230 if p.verifyDNSLength {
231 s += ":VerifyDNSLength"
232 }
233 return s
234}
235
236var (
237 // Punycode is a Profile that does raw punycode processing with a minimum
238 // of validation.
239 Punycode *Profile = punycode
240
241 // Lookup is the recommended profile for looking up domain names, according
242 // to Section 5 of RFC 5891. The exact configuration of this profile may
243 // change over time.
244 Lookup *Profile = lookup
245
246 // Display is the recommended profile for displaying domain names.
247 // The configuration of this profile may change over time.
248 Display *Profile = display
249
250 // Registration is the recommended profile for checking whether a given
251 // IDN is valid for registration, according to Section 4 of RFC 5891.
252 Registration *Profile = registration
253
254 punycode = &Profile{}
255 lookup = &Profile{options{
256 transitional: true,
257 useSTD3Rules: true,
258 validateLabels: true,
259 trie: trie,
260 fromPuny: validateFromPunycode,
261 mapping: validateAndMap,
262 bidirule: bidirule.ValidString,
263 }}
264 display = &Profile{options{
265 useSTD3Rules: true,
266 validateLabels: true,
267 trie: trie,
268 fromPuny: validateFromPunycode,
269 mapping: validateAndMap,
270 bidirule: bidirule.ValidString,
271 }}
272 registration = &Profile{options{
273 useSTD3Rules: true,
274 validateLabels: true,
275 verifyDNSLength: true,
276 trie: trie,
277 fromPuny: validateFromPunycode,
278 mapping: validateRegistration,
279 bidirule: bidirule.ValidString,
280 }}
281
282 // TODO: profiles
283 // Register: recommended for approving domain names: don't do any mappings
284 // but rather reject on invalid input. Bundle or block deviation characters.
285)
286
287type labelError struct{ label, code_ string }
288
289func (e labelError) code() string { return e.code_ }
290func (e labelError) Error() string {
291 return fmt.Sprintf("idna: invalid label %q", e.label)
292}
293
294type runeError rune
295
296func (e runeError) code() string { return "P1" }
297func (e runeError) Error() string {
298 return fmt.Sprintf("idna: disallowed rune %U", e)
299}
300
301// process implements the algorithm described in section 4 of UTS #46,
302// see https://www.unicode.org/reports/tr46.
303func (p *Profile) process(s string, toASCII bool) (string, error) {
304 var err error
305 var isBidi bool
306 if p.mapping != nil {
307 s, isBidi, err = p.mapping(p, s)
308 }
309 // Remove leading empty labels.
310 if p.removeLeadingDots {
311 for ; len(s) > 0 && s[0] == '.'; s = s[1:] {
312 }
313 }
314 // TODO: allow for a quick check of the tables data.
315 // It seems like we should only create this error on ToASCII, but the
316 // UTS 46 conformance tests suggests we should always check this.
317 if err == nil && p.verifyDNSLength && s == "" {
318 err = &labelError{s, "A4"}
319 }
320 labels := labelIter{orig: s}
321 for ; !labels.done(); labels.next() {
322 label := labels.label()
323 if label == "" {
324 // Empty labels are not okay. The label iterator skips the last
325 // label if it is empty.
326 if err == nil && p.verifyDNSLength {
327 err = &labelError{s, "A4"}
328 }
329 continue
330 }
331 if strings.HasPrefix(label, acePrefix) {
332 u, err2 := decode(label[len(acePrefix):])
333 if err2 != nil {
334 if err == nil {
335 err = err2
336 }
337 // Spec says keep the old label.
338 continue
339 }
340 isBidi = isBidi || bidirule.DirectionString(u) != bidi.LeftToRight
341 labels.set(u)
342 if err == nil && p.validateLabels {
343 err = p.fromPuny(p, u)
344 }
345 if err == nil {
346 // This should be called on NonTransitional, according to the
347 // spec, but that currently does not have any effect. Use the
348 // original profile to preserve options.
349 err = p.validateLabel(u)
350 }
351 } else if err == nil {
352 err = p.validateLabel(label)
353 }
354 }
355 if isBidi && p.bidirule != nil && err == nil {
356 for labels.reset(); !labels.done(); labels.next() {
357 if !p.bidirule(labels.label()) {
358 err = &labelError{s, "B"}
359 break
360 }
361 }
362 }
363 if toASCII {
364 for labels.reset(); !labels.done(); labels.next() {
365 label := labels.label()
366 if !ascii(label) {
367 a, err2 := encode(acePrefix, label)
368 if err == nil {
369 err = err2
370 }
371 label = a
372 labels.set(a)
373 }
374 n := len(label)
375 if p.verifyDNSLength && err == nil && (n == 0 || n > 63) {
376 err = &labelError{label, "A4"}
377 }
378 }
379 }
380 s = labels.result()
381 if toASCII && p.verifyDNSLength && err == nil {
382 // Compute the length of the domain name minus the root label and its dot.
383 n := len(s)
384 if n > 0 && s[n-1] == '.' {
385 n--
386 }
387 if len(s) < 1 || n > 253 {
388 err = &labelError{s, "A4"}
389 }
390 }
391 return s, err
392}
393
394func normalize(p *Profile, s string) (mapped string, isBidi bool, err error) {
395 // TODO: consider first doing a quick check to see if any of these checks
396 // need to be done. This will make it slower in the general case, but
397 // faster in the common case.
398 mapped = norm.NFC.String(s)
399 isBidi = bidirule.DirectionString(mapped) == bidi.RightToLeft
400 return mapped, isBidi, nil
401}
402
403func validateRegistration(p *Profile, s string) (idem string, bidi bool, err error) {
404 // TODO: filter need for normalization in loop below.
405 if !norm.NFC.IsNormalString(s) {
406 return s, false, &labelError{s, "V1"}
407 }
408 for i := 0; i < len(s); {
409 v, sz := trie.lookupString(s[i:])
410 if sz == 0 {
411 return s, bidi, runeError(utf8.RuneError)
412 }
413 bidi = bidi || info(v).isBidi(s[i:])
414 // Copy bytes not copied so far.
415 switch p.simplify(info(v).category()) {
416 // TODO: handle the NV8 defined in the Unicode idna data set to allow
417 // for strict conformance to IDNA2008.
418 case valid, deviation:
419 case disallowed, mapped, unknown, ignored:
420 r, _ := utf8.DecodeRuneInString(s[i:])
421 return s, bidi, runeError(r)
422 }
423 i += sz
424 }
425 return s, bidi, nil
426}
427
428func (c info) isBidi(s string) bool {
429 if !c.isMapped() {
430 return c&attributesMask == rtl
431 }
432 // TODO: also store bidi info for mapped data. This is possible, but a bit
433 // cumbersome and not for the common case.
434 p, _ := bidi.LookupString(s)
435 switch p.Class() {
436 case bidi.R, bidi.AL, bidi.AN:
437 return true
438 }
439 return false
440}
441
442func validateAndMap(p *Profile, s string) (vm string, bidi bool, err error) {
443 var (
444 b []byte
445 k int
446 )
447 // combinedInfoBits contains the or-ed bits of all runes. We use this
448 // to derive the mayNeedNorm bit later. This may trigger normalization
449 // overeagerly, but it will not do so in the common case. The end result
450 // is another 10% saving on BenchmarkProfile for the common case.
451 var combinedInfoBits info
452 for i := 0; i < len(s); {
453 v, sz := trie.lookupString(s[i:])
454 if sz == 0 {
455 b = append(b, s[k:i]...)
456 b = append(b, "\ufffd"...)
457 k = len(s)
458 if err == nil {
459 err = runeError(utf8.RuneError)
460 }
461 break
462 }
463 combinedInfoBits |= info(v)
464 bidi = bidi || info(v).isBidi(s[i:])
465 start := i
466 i += sz
467 // Copy bytes not copied so far.
468 switch p.simplify(info(v).category()) {
469 case valid:
470 continue
471 case disallowed:
472 if err == nil {
473 r, _ := utf8.DecodeRuneInString(s[start:])
474 err = runeError(r)
475 }
476 continue
477 case mapped, deviation:
478 b = append(b, s[k:start]...)
479 b = info(v).appendMapping(b, s[start:i])
480 case ignored:
481 b = append(b, s[k:start]...)
482 // drop the rune
483 case unknown:
484 b = append(b, s[k:start]...)
485 b = append(b, "\ufffd"...)
486 }
487 k = i
488 }
489 if k == 0 {
490 // No changes so far.
491 if combinedInfoBits&mayNeedNorm != 0 {
492 s = norm.NFC.String(s)
493 }
494 } else {
495 b = append(b, s[k:]...)
496 if norm.NFC.QuickSpan(b) != len(b) {
497 b = norm.NFC.Bytes(b)
498 }
499 // TODO: the punycode converters require strings as input.
500 s = string(b)
501 }
502 return s, bidi, err
503}
504
505// A labelIter allows iterating over domain name labels.
506type labelIter struct {
507 orig string
508 slice []string
509 curStart int
510 curEnd int
511 i int
512}
513
514func (l *labelIter) reset() {
515 l.curStart = 0
516 l.curEnd = 0
517 l.i = 0
518}
519
520func (l *labelIter) done() bool {
521 return l.curStart >= len(l.orig)
522}
523
524func (l *labelIter) result() string {
525 if l.slice != nil {
526 return strings.Join(l.slice, ".")
527 }
528 return l.orig
529}
530
531func (l *labelIter) label() string {
532 if l.slice != nil {
533 return l.slice[l.i]
534 }
535 p := strings.IndexByte(l.orig[l.curStart:], '.')
536 l.curEnd = l.curStart + p
537 if p == -1 {
538 l.curEnd = len(l.orig)
539 }
540 return l.orig[l.curStart:l.curEnd]
541}
542
543// next sets the value to the next label. It skips the last label if it is empty.
544func (l *labelIter) next() {
545 l.i++
546 if l.slice != nil {
547 if l.i >= len(l.slice) || l.i == len(l.slice)-1 && l.slice[l.i] == "" {
548 l.curStart = len(l.orig)
549 }
550 } else {
551 l.curStart = l.curEnd + 1
552 if l.curStart == len(l.orig)-1 && l.orig[l.curStart] == '.' {
553 l.curStart = len(l.orig)
554 }
555 }
556}
557
558func (l *labelIter) set(s string) {
559 if l.slice == nil {
560 l.slice = strings.Split(l.orig, ".")
561 }
562 l.slice[l.i] = s
563}
564
565// acePrefix is the ASCII Compatible Encoding prefix.
566const acePrefix = "xn--"
567
568func (p *Profile) simplify(cat category) category {
569 switch cat {
570 case disallowedSTD3Mapped:
571 if p.useSTD3Rules {
572 cat = disallowed
573 } else {
574 cat = mapped
575 }
576 case disallowedSTD3Valid:
577 if p.useSTD3Rules {
578 cat = disallowed
579 } else {
580 cat = valid
581 }
582 case deviation:
583 if !p.transitional {
584 cat = valid
585 }
586 case validNV8, validXV8:
587 // TODO: handle V2008
588 cat = valid
589 }
590 return cat
591}
592
593func validateFromPunycode(p *Profile, s string) error {
594 if !norm.NFC.IsNormalString(s) {
595 return &labelError{s, "V1"}
596 }
597 // TODO: detect whether string may have to be normalized in the following
598 // loop.
599 for i := 0; i < len(s); {
600 v, sz := trie.lookupString(s[i:])
601 if sz == 0 {
602 return runeError(utf8.RuneError)
603 }
604 if c := p.simplify(info(v).category()); c != valid && c != deviation {
605 return &labelError{s, "V6"}
606 }
607 i += sz
608 }
609 return nil
610}
611
612const (
613 zwnj = "\u200c"
614 zwj = "\u200d"
615)
616
617type joinState int8
618
619const (
620 stateStart joinState = iota
621 stateVirama
622 stateBefore
623 stateBeforeVirama
624 stateAfter
625 stateFAIL
626)
627
628var joinStates = [][numJoinTypes]joinState{
629 stateStart: {
630 joiningL: stateBefore,
631 joiningD: stateBefore,
632 joinZWNJ: stateFAIL,
633 joinZWJ: stateFAIL,
634 joinVirama: stateVirama,
635 },
636 stateVirama: {
637 joiningL: stateBefore,
638 joiningD: stateBefore,
639 },
640 stateBefore: {
641 joiningL: stateBefore,
642 joiningD: stateBefore,
643 joiningT: stateBefore,
644 joinZWNJ: stateAfter,
645 joinZWJ: stateFAIL,
646 joinVirama: stateBeforeVirama,
647 },
648 stateBeforeVirama: {
649 joiningL: stateBefore,
650 joiningD: stateBefore,
651 joiningT: stateBefore,
652 },
653 stateAfter: {
654 joiningL: stateFAIL,
655 joiningD: stateBefore,
656 joiningT: stateAfter,
657 joiningR: stateStart,
658 joinZWNJ: stateFAIL,
659 joinZWJ: stateFAIL,
660 joinVirama: stateAfter, // no-op as we can't accept joiners here
661 },
662 stateFAIL: {
663 0: stateFAIL,
664 joiningL: stateFAIL,
665 joiningD: stateFAIL,
666 joiningT: stateFAIL,
667 joiningR: stateFAIL,
668 joinZWNJ: stateFAIL,
669 joinZWJ: stateFAIL,
670 joinVirama: stateFAIL,
671 },
672}
673
674// validateLabel validates the criteria from Section 4.1. Item 1, 4, and 6 are
675// already implicitly satisfied by the overall implementation.
676func (p *Profile) validateLabel(s string) (err error) {
677 if s == "" {
678 if p.verifyDNSLength {
679 return &labelError{s, "A4"}
680 }
681 return nil
682 }
683 if !p.validateLabels {
684 return nil
685 }
686 trie := p.trie // p.validateLabels is only set if trie is set.
687 if len(s) > 4 && s[2] == '-' && s[3] == '-' {
688 return &labelError{s, "V2"}
689 }
690 if s[0] == '-' || s[len(s)-1] == '-' {
691 return &labelError{s, "V3"}
692 }
693 // TODO: merge the use of this in the trie.
694 v, sz := trie.lookupString(s)
695 x := info(v)
696 if x.isModifier() {
697 return &labelError{s, "V5"}
698 }
699 // Quickly return in the absence of zero-width (non) joiners.
700 if strings.Index(s, zwj) == -1 && strings.Index(s, zwnj) == -1 {
701 return nil
702 }
703 st := stateStart
704 for i := 0; ; {
705 jt := x.joinType()
706 if s[i:i+sz] == zwj {
707 jt = joinZWJ
708 } else if s[i:i+sz] == zwnj {
709 jt = joinZWNJ
710 }
711 st = joinStates[st][jt]
712 if x.isViramaModifier() {
713 st = joinStates[st][joinVirama]
714 }
715 if i += sz; i == len(s) {
716 break
717 }
718 v, sz = trie.lookupString(s[i:])
719 x = info(v)
720 }
721 if st == stateFAIL || st == stateAfter {
722 return &labelError{s, "C"}
723 }
724 return nil
725}
726
727func ascii(s string) bool {
728 for i := 0; i < len(s); i++ {
729 if s[i] >= utf8.RuneSelf {
730 return false
731 }
732 }
733 return true
734}
diff --git a/vendor/golang.org/x/net/idna/idna.go b/vendor/golang.org/x/net/idna/idna9.0.0.go
index ec8232b..8842146 100644
--- a/vendor/golang.org/x/net/idna/idna.go
+++ b/vendor/golang.org/x/net/idna/idna9.0.0.go
@@ -4,14 +4,16 @@
4// Use of this source code is governed by a BSD-style 4// Use of this source code is governed by a BSD-style
5// license that can be found in the LICENSE file. 5// license that can be found in the LICENSE file.
6 6
7// +build !go1.10
8
7// Package idna implements IDNA2008 using the compatibility processing 9// Package idna implements IDNA2008 using the compatibility processing
8// defined by UTS (Unicode Technical Standard) #46, which defines a standard to 10// defined by UTS (Unicode Technical Standard) #46, which defines a standard to
9// deal with the transition from IDNA2003. 11// deal with the transition from IDNA2003.
10// 12//
11// IDNA2008 (Internationalized Domain Names for Applications), is defined in RFC 13// IDNA2008 (Internationalized Domain Names for Applications), is defined in RFC
12// 5890, RFC 5891, RFC 5892, RFC 5893 and RFC 5894. 14// 5890, RFC 5891, RFC 5892, RFC 5893 and RFC 5894.
13// UTS #46 is defined in http://www.unicode.org/reports/tr46. 15// UTS #46 is defined in https://www.unicode.org/reports/tr46.
14// See http://unicode.org/cldr/utility/idna.jsp for a visualization of the 16// See https://unicode.org/cldr/utility/idna.jsp for a visualization of the
15// differences between these two standards. 17// differences between these two standards.
16package idna // import "golang.org/x/net/idna" 18package idna // import "golang.org/x/net/idna"
17 19
@@ -68,7 +70,7 @@ func VerifyDNSLength(verify bool) Option {
68} 70}
69 71
70// RemoveLeadingDots removes leading label separators. Leading runes that map to 72// RemoveLeadingDots removes leading label separators. Leading runes that map to
71// dots, such as U+3002, are removed as well. 73// dots, such as U+3002 IDEOGRAPHIC FULL STOP, are removed as well.
72// 74//
73// This is the behavior suggested by the UTS #46 and is adopted by some 75// This is the behavior suggested by the UTS #46 and is adopted by some
74// browsers. 76// browsers.
@@ -167,7 +169,7 @@ type options struct {
167 bidirule func(s string) bool 169 bidirule func(s string) bool
168} 170}
169 171
170// A Profile defines the configuration of an IDNA mapper. 172// A Profile defines the configuration of a IDNA mapper.
171type Profile struct { 173type Profile struct {
172 options 174 options
173} 175}
@@ -299,7 +301,7 @@ func (e runeError) Error() string {
299} 301}
300 302
301// process implements the algorithm described in section 4 of UTS #46, 303// process implements the algorithm described in section 4 of UTS #46,
302// see http://www.unicode.org/reports/tr46. 304// see https://www.unicode.org/reports/tr46.
303func (p *Profile) process(s string, toASCII bool) (string, error) { 305func (p *Profile) process(s string, toASCII bool) (string, error) {
304 var err error 306 var err error
305 if p.mapping != nil { 307 if p.mapping != nil {
diff --git a/vendor/golang.org/x/net/idna/tables.go b/vendor/golang.org/x/net/idna/tables.go
deleted file mode 100644
index d281934..0000000
--- a/vendor/golang.org/x/net/idna/tables.go
+++ /dev/null
@@ -1,4477 +0,0 @@
1// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
2
3package idna
4
5// UnicodeVersion is the Unicode version from which the tables in this package are derived.
6const UnicodeVersion = "9.0.0"
7
8var mappings string = "" + // Size: 8176 bytes
9 "\x00\x01 \x03 ̈\x01a\x03 ̄\x012\x013\x03 ́\x03 ̧\x011\x01o\x051⁄4\x051⁄2" +
10 "\x053⁄4\x03i̇\x03l·\x03ʼn\x01s\x03dž\x03ⱥ\x03ⱦ\x01h\x01j\x01r\x01w\x01y" +
11 "\x03 ̆\x03 ̇\x03 ̊\x03 ̨\x03 ̃\x03 ̋\x01l\x01x\x04̈́\x03 ι\x01;\x05 ̈́" +
12 "\x04եւ\x04اٴ\x04وٴ\x04ۇٴ\x04يٴ\x06क़\x06ख़\x06ग़\x06ज़\x06ड़\x06ढ़\x06फ़" +
13 "\x06य़\x06ড়\x06ঢ়\x06য়\x06ਲ਼\x06ਸ਼\x06ਖ਼\x06ਗ਼\x06ਜ਼\x06ਫ਼\x06ଡ଼\x06ଢ଼" +
14 "\x06ํา\x06ໍາ\x06ຫນ\x06ຫມ\x06གྷ\x06ཌྷ\x06དྷ\x06བྷ\x06ཛྷ\x06ཀྵ\x06ཱི\x06ཱུ" +
15 "\x06ྲྀ\x09ྲཱྀ\x06ླྀ\x09ླཱྀ\x06ཱྀ\x06ྒྷ\x06ྜྷ\x06ྡྷ\x06ྦྷ\x06ྫྷ\x06ྐྵ\x02" +
16 "в\x02д\x02о\x02с\x02т\x02ъ\x02ѣ\x02æ\x01b\x01d\x01e\x02ǝ\x01g\x01i\x01k" +
17 "\x01m\x01n\x02ȣ\x01p\x01t\x01u\x02ɐ\x02ɑ\x02ə\x02ɛ\x02ɜ\x02ŋ\x02ɔ\x02ɯ" +
18 "\x01v\x02β\x02γ\x02δ\x02φ\x02χ\x02ρ\x02н\x02ɒ\x01c\x02ɕ\x02ð\x01f\x02ɟ" +
19 "\x02ɡ\x02ɥ\x02ɨ\x02ɩ\x02ɪ\x02ʝ\x02ɭ\x02ʟ\x02ɱ\x02ɰ\x02ɲ\x02ɳ\x02ɴ\x02ɵ" +
20 "\x02ɸ\x02ʂ\x02ʃ\x02ƫ\x02ʉ\x02ʊ\x02ʋ\x02ʌ\x01z\x02ʐ\x02ʑ\x02ʒ\x02θ\x02ss" +
21 "\x02ά\x02έ\x02ή\x02ί\x02ό\x02ύ\x02ώ\x05ἀι\x05ἁι\x05ἂι\x05ἃι\x05ἄι\x05ἅι" +
22 "\x05ἆι\x05ἇι\x05ἠι\x05ἡι\x05ἢι\x05ἣι\x05ἤι\x05ἥι\x05ἦι\x05ἧι\x05ὠι\x05ὡι" +
23 "\x05ὢι\x05ὣι\x05ὤι\x05ὥι\x05ὦι\x05ὧι\x05ὰι\x04αι\x04άι\x05ᾶι\x02ι\x05 ̈͂" +
24 "\x05ὴι\x04ηι\x04ήι\x05ῆι\x05 ̓̀\x05 ̓́\x05 ̓͂\x02ΐ\x05 ̔̀\x05 ̔́\x05 ̔͂" +
25 "\x02ΰ\x05 ̈̀\x01`\x05ὼι\x04ωι\x04ώι\x05ῶι\x06′′\x09′′′\x06‵‵\x09‵‵‵\x02!" +
26 "!\x02??\x02?!\x02!?\x0c′′′′\x010\x014\x015\x016\x017\x018\x019\x01+\x01=" +
27 "\x01(\x01)\x02rs\x02ħ\x02no\x01q\x02sm\x02tm\x02ω\x02å\x02א\x02ב\x02ג" +
28 "\x02ד\x02π\x051⁄7\x051⁄9\x061⁄10\x051⁄3\x052⁄3\x051⁄5\x052⁄5\x053⁄5\x054" +
29 "⁄5\x051⁄6\x055⁄6\x051⁄8\x053⁄8\x055⁄8\x057⁄8\x041⁄\x02ii\x02iv\x02vi" +
30 "\x04viii\x02ix\x02xi\x050⁄3\x06∫∫\x09∫∫∫\x06∮∮\x09∮∮∮\x0210\x0211\x0212" +
31 "\x0213\x0214\x0215\x0216\x0217\x0218\x0219\x0220\x04(10)\x04(11)\x04(12)" +
32 "\x04(13)\x04(14)\x04(15)\x04(16)\x04(17)\x04(18)\x04(19)\x04(20)\x0c∫∫∫∫" +
33 "\x02==\x05⫝̸\x02ɫ\x02ɽ\x02ȿ\x02ɀ\x01.\x04 ゙\x04 ゚\x06より\x06コト\x05(ᄀ)\x05" +
34 "(ᄂ)\x05(ᄃ)\x05(ᄅ)\x05(ᄆ)\x05(ᄇ)\x05(ᄉ)\x05(ᄋ)\x05(ᄌ)\x05(ᄎ)\x05(ᄏ)\x05(ᄐ" +
35 ")\x05(ᄑ)\x05(ᄒ)\x05(가)\x05(나)\x05(다)\x05(라)\x05(마)\x05(바)\x05(사)\x05(아)" +
36 "\x05(자)\x05(차)\x05(카)\x05(타)\x05(파)\x05(하)\x05(주)\x08(오전)\x08(오후)\x05(一)" +
37 "\x05(二)\x05(三)\x05(四)\x05(五)\x05(六)\x05(七)\x05(八)\x05(九)\x05(十)\x05(月)" +
38 "\x05(火)\x05(水)\x05(木)\x05(金)\x05(土)\x05(日)\x05(株)\x05(有)\x05(社)\x05(名)" +
39 "\x05(特)\x05(財)\x05(祝)\x05(労)\x05(代)\x05(呼)\x05(学)\x05(監)\x05(企)\x05(資)" +
40 "\x05(協)\x05(祭)\x05(休)\x05(自)\x05(至)\x0221\x0222\x0223\x0224\x0225\x0226" +
41 "\x0227\x0228\x0229\x0230\x0231\x0232\x0233\x0234\x0235\x06참고\x06주의\x0236" +
42 "\x0237\x0238\x0239\x0240\x0241\x0242\x0243\x0244\x0245\x0246\x0247\x0248" +
43 "\x0249\x0250\x041月\x042月\x043月\x044月\x045月\x046月\x047月\x048月\x049月\x0510" +
44 "月\x0511月\x0512月\x02hg\x02ev\x0cアパート\x0cアルファ\x0cアンペア\x09アール\x0cイニング\x09" +
45 "インチ\x09ウォン\x0fエスクード\x0cエーカー\x09オンス\x09オーム\x09カイリ\x0cカラット\x0cカロリー\x09ガロ" +
46 "ン\x09ガンマ\x06ギガ\x09ギニー\x0cキュリー\x0cギルダー\x06キロ\x0fキログラム\x12キロメートル\x0fキロワッ" +
47 "ト\x09グラム\x0fグラムトン\x0fクルゼイロ\x0cクローネ\x09ケース\x09コルナ\x09コーポ\x0cサイクル\x0fサンチ" +
48 "ーム\x0cシリング\x09センチ\x09セント\x09ダース\x06デシ\x06ドル\x06トン\x06ナノ\x09ノット\x09ハイツ" +
49 "\x0fパーセント\x09パーツ\x0cバーレル\x0fピアストル\x09ピクル\x06ピコ\x06ビル\x0fファラッド\x0cフィート" +
50 "\x0fブッシェル\x09フラン\x0fヘクタール\x06ペソ\x09ペニヒ\x09ヘルツ\x09ペンス\x09ページ\x09ベータ\x0cポイ" +
51 "ント\x09ボルト\x06ホン\x09ポンド\x09ホール\x09ホーン\x0cマイクロ\x09マイル\x09マッハ\x09マルク\x0fマ" +
52 "ンション\x0cミクロン\x06ミリ\x0fミリバール\x06メガ\x0cメガトン\x0cメートル\x09ヤード\x09ヤール\x09ユアン" +
53 "\x0cリットル\x06リラ\x09ルピー\x0cルーブル\x06レム\x0fレントゲン\x09ワット\x040点\x041点\x042点" +
54 "\x043点\x044点\x045点\x046点\x047点\x048点\x049点\x0510点\x0511点\x0512点\x0513点" +
55 "\x0514点\x0515点\x0516点\x0517点\x0518点\x0519点\x0520点\x0521点\x0522点\x0523点" +
56 "\x0524点\x02da\x02au\x02ov\x02pc\x02dm\x02iu\x06平成\x06昭和\x06大正\x06明治\x0c株" +
57 "式会社\x02pa\x02na\x02ma\x02ka\x02kb\x02mb\x02gb\x04kcal\x02pf\x02nf\x02m" +
58 "g\x02kg\x02hz\x02ml\x02dl\x02kl\x02fm\x02nm\x02mm\x02cm\x02km\x02m2\x02m" +
59 "3\x05m∕s\x06m∕s2\x07rad∕s\x08rad∕s2\x02ps\x02ns\x02ms\x02pv\x02nv\x02mv" +
60 "\x02kv\x02pw\x02nw\x02mw\x02kw\x02bq\x02cc\x02cd\x06c∕kg\x02db\x02gy\x02" +
61 "ha\x02hp\x02in\x02kk\x02kt\x02lm\x02ln\x02lx\x02ph\x02pr\x02sr\x02sv\x02" +
62 "wb\x05v∕m\x05a∕m\x041日\x042日\x043日\x044日\x045日\x046日\x047日\x048日\x049日" +
63 "\x0510日\x0511日\x0512日\x0513日\x0514日\x0515日\x0516日\x0517日\x0518日\x0519日" +
64 "\x0520日\x0521日\x0522日\x0523日\x0524日\x0525日\x0526日\x0527日\x0528日\x0529日" +
65 "\x0530日\x0531日\x02ь\x02ɦ\x02ɬ\x02ʞ\x02ʇ\x02œ\x04𤋮\x04𢡊\x04𢡄\x04𣏕\x04𥉉" +
66 "\x04𥳐\x04𧻓\x02ff\x02fi\x02fl\x02st\x04մն\x04մե\x04մի\x04վն\x04մխ\x04יִ" +
67 "\x04ײַ\x02ע\x02ה\x02כ\x02ל\x02ם\x02ר\x02ת\x04שׁ\x04שׂ\x06שּׁ\x06שּׂ\x04א" +
68 "ַ\x04אָ\x04אּ\x04בּ\x04גּ\x04דּ\x04הּ\x04וּ\x04זּ\x04טּ\x04יּ\x04ךּ\x04" +
69 "כּ\x04לּ\x04מּ\x04נּ\x04סּ\x04ףּ\x04פּ\x04צּ\x04קּ\x04רּ\x04שּ\x04תּ" +
70 "\x04וֹ\x04בֿ\x04כֿ\x04פֿ\x04אל\x02ٱ\x02ٻ\x02پ\x02ڀ\x02ٺ\x02ٿ\x02ٹ\x02ڤ" +
71 "\x02ڦ\x02ڄ\x02ڃ\x02چ\x02ڇ\x02ڍ\x02ڌ\x02ڎ\x02ڈ\x02ژ\x02ڑ\x02ک\x02گ\x02ڳ" +
72 "\x02ڱ\x02ں\x02ڻ\x02ۀ\x02ہ\x02ھ\x02ے\x02ۓ\x02ڭ\x02ۇ\x02ۆ\x02ۈ\x02ۋ\x02ۅ" +
73 "\x02ۉ\x02ې\x02ى\x04ئا\x04ئە\x04ئو\x04ئۇ\x04ئۆ\x04ئۈ\x04ئې\x04ئى\x02ی\x04" +
74 "ئج\x04ئح\x04ئم\x04ئي\x04بج\x04بح\x04بخ\x04بم\x04بى\x04بي\x04تج\x04تح" +
75 "\x04تخ\x04تم\x04تى\x04تي\x04ثج\x04ثم\x04ثى\x04ثي\x04جح\x04جم\x04حج\x04حم" +
76 "\x04خج\x04خح\x04خم\x04سج\x04سح\x04سخ\x04سم\x04صح\x04صم\x04ضج\x04ضح\x04ضخ" +
77 "\x04ضم\x04طح\x04طم\x04ظم\x04عج\x04عم\x04غج\x04غم\x04فج\x04فح\x04فخ\x04فم" +
78 "\x04فى\x04في\x04قح\x04قم\x04قى\x04قي\x04كا\x04كج\x04كح\x04كخ\x04كل\x04كم" +
79 "\x04كى\x04كي\x04لج\x04لح\x04لخ\x04لم\x04لى\x04لي\x04مج\x04مح\x04مخ\x04مم" +
80 "\x04مى\x04مي\x04نج\x04نح\x04نخ\x04نم\x04نى\x04ني\x04هج\x04هم\x04هى\x04هي" +
81 "\x04يج\x04يح\x04يخ\x04يم\x04يى\x04يي\x04ذٰ\x04رٰ\x04ىٰ\x05 ٌّ\x05 ٍّ\x05" +
82 " َّ\x05 ُّ\x05 ِّ\x05 ّٰ\x04ئر\x04ئز\x04ئن\x04بر\x04بز\x04بن\x04تر\x04تز" +
83 "\x04تن\x04ثر\x04ثز\x04ثن\x04ما\x04نر\x04نز\x04نن\x04ير\x04يز\x04ين\x04ئخ" +
84 "\x04ئه\x04به\x04ته\x04صخ\x04له\x04نه\x04هٰ\x04يه\x04ثه\x04سه\x04شم\x04شه" +
85 "\x06ـَّ\x06ـُّ\x06ـِّ\x04طى\x04طي\x04عى\x04عي\x04غى\x04غي\x04سى\x04سي" +
86 "\x04شى\x04شي\x04حى\x04حي\x04جى\x04جي\x04خى\x04خي\x04صى\x04صي\x04ضى\x04ضي" +
87 "\x04شج\x04شح\x04شخ\x04شر\x04سر\x04صر\x04ضر\x04اً\x06تجم\x06تحج\x06تحم" +
88 "\x06تخم\x06تمج\x06تمح\x06تمخ\x06جمح\x06حمي\x06حمى\x06سحج\x06سجح\x06سجى" +
89 "\x06سمح\x06سمج\x06سمم\x06صحح\x06صمم\x06شحم\x06شجي\x06شمخ\x06شمم\x06ضحى" +
90 "\x06ضخم\x06طمح\x06طمم\x06طمي\x06عجم\x06عمم\x06عمى\x06غمم\x06غمي\x06غمى" +
91 "\x06فخم\x06قمح\x06قمم\x06لحم\x06لحي\x06لحى\x06لجج\x06لخم\x06لمح\x06محج" +
92 "\x06محم\x06محي\x06مجح\x06مجم\x06مخج\x06مخم\x06مجخ\x06همج\x06همم\x06نحم" +
93 "\x06نحى\x06نجم\x06نجى\x06نمي\x06نمى\x06يمم\x06بخي\x06تجي\x06تجى\x06تخي" +
94 "\x06تخى\x06تمي\x06تمى\x06جمي\x06جحى\x06جمى\x06سخى\x06صحي\x06شحي\x06ضحي" +
95 "\x06لجي\x06لمي\x06يحي\x06يجي\x06يمي\x06ممي\x06قمي\x06نحي\x06عمي\x06كمي" +
96 "\x06نجح\x06مخي\x06لجم\x06كمم\x06جحي\x06حجي\x06مجي\x06فمي\x06بحي\x06سخي" +
97 "\x06نجي\x06صلے\x06قلے\x08الله\x08اكبر\x08محمد\x08صلعم\x08رسول\x08عليه" +
98 "\x08وسلم\x06صلى!صلى الله عليه وسلم\x0fجل جلاله\x08ریال\x01,\x01:\x01!" +
99 "\x01?\x01_\x01{\x01}\x01[\x01]\x01#\x01&\x01*\x01-\x01<\x01>\x01\\\x01$" +
100 "\x01%\x01@\x04ـً\x04ـَ\x04ـُ\x04ـِ\x04ـّ\x04ـْ\x02ء\x02آ\x02أ\x02ؤ\x02إ" +
101 "\x02ئ\x02ا\x02ب\x02ة\x02ت\x02ث\x02ج\x02ح\x02خ\x02د\x02ذ\x02ر\x02ز\x02س" +
102 "\x02ش\x02ص\x02ض\x02ط\x02ظ\x02ع\x02غ\x02ف\x02ق\x02ك\x02ل\x02م\x02ن\x02ه" +
103 "\x02و\x02ي\x04لآ\x04لأ\x04لإ\x04لا\x01\x22\x01'\x01/\x01^\x01|\x01~\x02¢" +
104 "\x02£\x02¬\x02¦\x02¥\x08𝅗𝅥\x08𝅘𝅥\x0c𝅘𝅥𝅮\x0c𝅘𝅥𝅯\x0c𝅘𝅥𝅰\x0c𝅘𝅥𝅱\x0c𝅘𝅥𝅲\x08𝆹" +
105 "𝅥\x08𝆺𝅥\x0c𝆹𝅥𝅮\x0c𝆺𝅥𝅮\x0c𝆹𝅥𝅯\x0c𝆺𝅥𝅯\x02ı\x02ȷ\x02α\x02ε\x02ζ\x02η\x02" +
106 "κ\x02λ\x02μ\x02ν\x02ξ\x02ο\x02σ\x02τ\x02υ\x02ψ\x03∇\x03∂\x02ϝ\x02ٮ\x02ڡ" +
107 "\x02ٯ\x020,\x021,\x022,\x023,\x024,\x025,\x026,\x027,\x028,\x029,\x03(a)" +
108 "\x03(b)\x03(c)\x03(d)\x03(e)\x03(f)\x03(g)\x03(h)\x03(i)\x03(j)\x03(k)" +
109 "\x03(l)\x03(m)\x03(n)\x03(o)\x03(p)\x03(q)\x03(r)\x03(s)\x03(t)\x03(u)" +
110 "\x03(v)\x03(w)\x03(x)\x03(y)\x03(z)\x07〔s〕\x02wz\x02hv\x02sd\x03ppv\x02w" +
111 "c\x02mc\x02md\x02dj\x06ほか\x06ココ\x03サ\x03手\x03字\x03双\x03デ\x03二\x03多\x03解" +
112 "\x03天\x03交\x03映\x03無\x03料\x03前\x03後\x03再\x03新\x03初\x03終\x03生\x03販\x03声" +
113 "\x03吹\x03演\x03投\x03捕\x03一\x03三\x03遊\x03左\x03中\x03右\x03指\x03走\x03打\x03禁" +
114 "\x03空\x03合\x03満\x03有\x03月\x03申\x03割\x03営\x03配\x09〔本〕\x09〔三〕\x09〔二〕\x09〔安" +
115 "〕\x09〔点〕\x09〔打〕\x09〔盗〕\x09〔勝〕\x09〔敗〕\x03得\x03可\x03丽\x03丸\x03乁\x03你\x03" +
116 "侮\x03侻\x03倂\x03偺\x03備\x03僧\x03像\x03㒞\x03免\x03兔\x03兤\x03具\x03㒹\x03內\x03" +
117 "冗\x03冤\x03仌\x03冬\x03况\x03凵\x03刃\x03㓟\x03刻\x03剆\x03剷\x03㔕\x03勇\x03勉\x03" +
118 "勤\x03勺\x03包\x03匆\x03北\x03卉\x03卑\x03博\x03即\x03卽\x03卿\x03灰\x03及\x03叟\x03" +
119 "叫\x03叱\x03吆\x03咞\x03吸\x03呈\x03周\x03咢\x03哶\x03唐\x03啓\x03啣\x03善\x03喙\x03" +
120 "喫\x03喳\x03嗂\x03圖\x03嘆\x03圗\x03噑\x03噴\x03切\x03壮\x03城\x03埴\x03堍\x03型\x03" +
121 "堲\x03報\x03墬\x03売\x03壷\x03夆\x03夢\x03奢\x03姬\x03娛\x03娧\x03姘\x03婦\x03㛮\x03" +
122 "嬈\x03嬾\x03寃\x03寘\x03寧\x03寳\x03寿\x03将\x03尢\x03㞁\x03屠\x03屮\x03峀\x03岍\x03" +
123 "嵃\x03嵮\x03嵫\x03嵼\x03巡\x03巢\x03㠯\x03巽\x03帨\x03帽\x03幩\x03㡢\x03㡼\x03庰\x03" +
124 "庳\x03庶\x03廊\x03廾\x03舁\x03弢\x03㣇\x03形\x03彫\x03㣣\x03徚\x03忍\x03志\x03忹\x03" +
125 "悁\x03㤺\x03㤜\x03悔\x03惇\x03慈\x03慌\x03慎\x03慺\x03憎\x03憲\x03憤\x03憯\x03懞\x03" +
126 "懲\x03懶\x03成\x03戛\x03扝\x03抱\x03拔\x03捐\x03挽\x03拼\x03捨\x03掃\x03揤\x03搢\x03" +
127 "揅\x03掩\x03㨮\x03摩\x03摾\x03撝\x03摷\x03㩬\x03敏\x03敬\x03旣\x03書\x03晉\x03㬙\x03" +
128 "暑\x03㬈\x03㫤\x03冒\x03冕\x03最\x03暜\x03肭\x03䏙\x03朗\x03望\x03朡\x03杞\x03杓\x03" +
129 "㭉\x03柺\x03枅\x03桒\x03梅\x03梎\x03栟\x03椔\x03㮝\x03楂\x03榣\x03槪\x03檨\x03櫛\x03" +
130 "㰘\x03次\x03歔\x03㱎\x03歲\x03殟\x03殺\x03殻\x03汎\x03沿\x03泍\x03汧\x03洖\x03派\x03" +
131 "海\x03流\x03浩\x03浸\x03涅\x03洴\x03港\x03湮\x03㴳\x03滋\x03滇\x03淹\x03潮\x03濆\x03" +
132 "瀹\x03瀞\x03瀛\x03㶖\x03灊\x03災\x03灷\x03炭\x03煅\x03熜\x03爨\x03爵\x03牐\x03犀\x03" +
133 "犕\x03獺\x03王\x03㺬\x03玥\x03㺸\x03瑇\x03瑜\x03瑱\x03璅\x03瓊\x03㼛\x03甤\x03甾\x03" +
134 "異\x03瘐\x03㿼\x03䀈\x03直\x03眞\x03真\x03睊\x03䀹\x03瞋\x03䁆\x03䂖\x03硎\x03碌\x03" +
135 "磌\x03䃣\x03祖\x03福\x03秫\x03䄯\x03穀\x03穊\x03穏\x03䈂\x03篆\x03築\x03䈧\x03糒\x03" +
136 "䊠\x03糨\x03糣\x03紀\x03絣\x03䌁\x03緇\x03縂\x03繅\x03䌴\x03䍙\x03罺\x03羕\x03翺\x03" +
137 "者\x03聠\x03聰\x03䏕\x03育\x03脃\x03䐋\x03脾\x03媵\x03舄\x03辞\x03䑫\x03芑\x03芋\x03" +
138 "芝\x03劳\x03花\x03芳\x03芽\x03苦\x03若\x03茝\x03荣\x03莭\x03茣\x03莽\x03菧\x03著\x03" +
139 "荓\x03菊\x03菌\x03菜\x03䔫\x03蓱\x03蓳\x03蔖\x03蕤\x03䕝\x03䕡\x03䕫\x03虐\x03虜\x03" +
140 "虧\x03虩\x03蚩\x03蚈\x03蜎\x03蛢\x03蝹\x03蜨\x03蝫\x03螆\x03蟡\x03蠁\x03䗹\x03衠\x03" +
141 "衣\x03裗\x03裞\x03䘵\x03裺\x03㒻\x03䚾\x03䛇\x03誠\x03諭\x03變\x03豕\x03貫\x03賁\x03" +
142 "贛\x03起\x03跋\x03趼\x03跰\x03軔\x03輸\x03邔\x03郱\x03鄑\x03鄛\x03鈸\x03鋗\x03鋘\x03" +
143 "鉼\x03鏹\x03鐕\x03開\x03䦕\x03閷\x03䧦\x03雃\x03嶲\x03霣\x03䩮\x03䩶\x03韠\x03䪲\x03" +
144 "頋\x03頩\x03飢\x03䬳\x03餩\x03馧\x03駂\x03駾\x03䯎\x03鬒\x03鱀\x03鳽\x03䳎\x03䳭\x03" +
145 "鵧\x03䳸\x03麻\x03䵖\x03黹\x03黾\x03鼅\x03鼏\x03鼖\x03鼻"
146
147var xorData string = "" + // Size: 4855 bytes
148 "\x02\x0c\x09\x02\xb0\xec\x02\xad\xd8\x02\xad\xd9\x02\x06\x07\x02\x0f\x12" +
149 "\x02\x0f\x1f\x02\x0f\x1d\x02\x01\x13\x02\x0f\x16\x02\x0f\x0b\x02\x0f3" +
150 "\x02\x0f7\x02\x0f?\x02\x0f/\x02\x0f*\x02\x0c&\x02\x0c*\x02\x0c;\x02\x0c9" +
151 "\x02\x0c%\x02\xab\xed\x02\xab\xe2\x02\xab\xe3\x02\xa9\xe0\x02\xa9\xe1" +
152 "\x02\xa9\xe6\x02\xa3\xcb\x02\xa3\xc8\x02\xa3\xc9\x02\x01#\x02\x01\x08" +
153 "\x02\x0e>\x02\x0e'\x02\x0f\x03\x02\x03\x0d\x02\x03\x09\x02\x03\x17\x02" +
154 "\x03\x0e\x02\x02\x03\x02\x011\x02\x01\x00\x02\x01\x10\x02\x03<\x02\x07" +
155 "\x0d\x02\x02\x0c\x02\x0c0\x02\x01\x03\x02\x01\x01\x02\x01 \x02\x01\x22" +
156 "\x02\x01)\x02\x01\x0a\x02\x01\x0c\x02\x02\x06\x02\x02\x02\x02\x03\x10" +
157 "\x03\x037 \x03\x0b+\x03\x02\x01\x04\x02\x01\x02\x02\x019\x02\x03\x1c\x02" +
158 "\x02$\x03\x80p$\x02\x03:\x02\x03\x0a\x03\xc1r.\x03\xc1r,\x03\xc1r\x02" +
159 "\x02\x02:\x02\x02>\x02\x02,\x02\x02\x10\x02\x02\x00\x03\xc1s<\x03\xc1s*" +
160 "\x03\xc2L$\x03\xc2L;\x02\x09)\x02\x0a\x19\x03\x83\xab\xe3\x03\x83\xab" +
161 "\xf2\x03 4\xe0\x03\x81\xab\xea\x03\x81\xab\xf3\x03 4\xef\x03\x96\xe1\xcd" +
162 "\x03\x84\xe5\xc3\x02\x0d\x11\x03\x8b\xec\xcb\x03\x94\xec\xcf\x03\x9a\xec" +
163 "\xc2\x03\x8b\xec\xdb\x03\x94\xec\xdf\x03\x9a\xec\xd2\x03\x01\x0c!\x03" +
164 "\x01\x0c#\x03ʠ\x9d\x03ʣ\x9c\x03ʢ\x9f\x03ʥ\x9e\x03ʤ\x91\x03ʧ\x90\x03ʦ\x93" +
165 "\x03ʩ\x92\x03ʨ\x95\x03\xca\xf3\xb5\x03\xca\xf0\xb4\x03\xca\xf1\xb7\x03" +
166 "\xca\xf6\xb6\x03\xca\xf7\x89\x03\xca\xf4\x88\x03\xca\xf5\x8b\x03\xca\xfa" +
167 "\x8a\x03\xca\xfb\x8d\x03\xca\xf8\x8c\x03\xca\xf9\x8f\x03\xca\xfe\x8e\x03" +
168 "\xca\xff\x81\x03\xca\xfc\x80\x03\xca\xfd\x83\x03\xca\xe2\x82\x03\xca\xe3" +
169 "\x85\x03\xca\xe0\x84\x03\xca\xe1\x87\x03\xca\xe6\x86\x03\xca\xe7\x99\x03" +
170 "\xca\xe4\x98\x03\xca\xe5\x9b\x03\xca\xea\x9a\x03\xca\xeb\x9d\x03\xca\xe8" +
171 "\x9c\x03ؓ\x89\x03ߔ\x8b\x02\x010\x03\x03\x04\x1e\x03\x04\x15\x12\x03\x0b" +
172 "\x05,\x03\x06\x04\x00\x03\x06\x04)\x03\x06\x044\x03\x06\x04<\x03\x06\x05" +
173 "\x1d\x03\x06\x06\x00\x03\x06\x06\x0a\x03\x06\x06'\x03\x06\x062\x03\x0786" +
174 "\x03\x079/\x03\x079 \x03\x07:\x0e\x03\x07:\x1b\x03\x07:%\x03\x07;/\x03" +
175 "\x07;%\x03\x074\x11\x03\x076\x09\x03\x077*\x03\x070\x01\x03\x070\x0f\x03" +
176 "\x070.\x03\x071\x16\x03\x071\x04\x03\x0710\x03\x072\x18\x03\x072-\x03" +
177 "\x073\x14\x03\x073>\x03\x07'\x09\x03\x07 \x00\x03\x07\x1f\x0b\x03\x07" +
178 "\x18#\x03\x07\x18(\x03\x07\x186\x03\x07\x18\x03\x03\x07\x19\x16\x03\x07" +
179 "\x116\x03\x07\x12'\x03\x07\x13\x10\x03\x07\x0c&\x03\x07\x0c\x08\x03\x07" +
180 "\x0c\x13\x03\x07\x0d\x02\x03\x07\x0d\x1c\x03\x07\x0b5\x03\x07\x0b\x0a" +
181 "\x03\x07\x0b\x01\x03\x07\x0b\x0f\x03\x07\x05\x00\x03\x07\x05\x09\x03\x07" +
182 "\x05\x0b\x03\x07\x07\x01\x03\x07\x07\x08\x03\x07\x00<\x03\x07\x00+\x03" +
183 "\x07\x01)\x03\x07\x01\x1b\x03\x07\x01\x08\x03\x07\x03?\x03\x0445\x03\x04" +
184 "4\x08\x03\x0454\x03\x04)/\x03\x04)5\x03\x04+\x05\x03\x04+\x14\x03\x04+ " +
185 "\x03\x04+<\x03\x04*&\x03\x04*\x22\x03\x04&8\x03\x04!\x01\x03\x04!\x22" +
186 "\x03\x04\x11+\x03\x04\x10.\x03\x04\x104\x03\x04\x13=\x03\x04\x12\x04\x03" +
187 "\x04\x12\x0a\x03\x04\x0d\x1d\x03\x04\x0d\x07\x03\x04\x0d \x03\x05<>\x03" +
188 "\x055<\x03\x055!\x03\x055#\x03\x055&\x03\x054\x1d\x03\x054\x02\x03\x054" +
189 "\x07\x03\x0571\x03\x053\x1a\x03\x053\x16\x03\x05.<\x03\x05.\x07\x03\x05)" +
190 ":\x03\x05)<\x03\x05)\x0c\x03\x05)\x15\x03\x05+-\x03\x05+5\x03\x05$\x1e" +
191 "\x03\x05$\x14\x03\x05'\x04\x03\x05'\x14\x03\x05&\x02\x03\x05\x226\x03" +
192 "\x05\x22\x0c\x03\x05\x22\x1c\x03\x05\x19\x0a\x03\x05\x1b\x09\x03\x05\x1b" +
193 "\x0c\x03\x05\x14\x07\x03\x05\x16?\x03\x05\x16\x0c\x03\x05\x0c\x05\x03" +
194 "\x05\x0e\x0f\x03\x05\x01\x0e\x03\x05\x00(\x03\x05\x030\x03\x05\x03\x06" +
195 "\x03\x0a==\x03\x0a=1\x03\x0a=,\x03\x0a=\x0c\x03\x0a??\x03\x0a<\x08\x03" +
196 "\x0a9!\x03\x0a9)\x03\x0a97\x03\x0a99\x03\x0a6\x0a\x03\x0a6\x1c\x03\x0a6" +
197 "\x17\x03\x0a7'\x03\x0a78\x03\x0a73\x03\x0a'\x01\x03\x0a'&\x03\x0a\x1f" +
198 "\x0e\x03\x0a\x1f\x03\x03\x0a\x1f3\x03\x0a\x1b/\x03\x0a\x18\x19\x03\x0a" +
199 "\x19\x01\x03\x0a\x16\x14\x03\x0a\x0e\x22\x03\x0a\x0f\x10\x03\x0a\x0f\x02" +
200 "\x03\x0a\x0f \x03\x0a\x0c\x04\x03\x0a\x0b>\x03\x0a\x0b+\x03\x0a\x08/\x03" +
201 "\x0a\x046\x03\x0a\x05\x14\x03\x0a\x00\x04\x03\x0a\x00\x10\x03\x0a\x00" +
202 "\x14\x03\x0b<3\x03\x0b;*\x03\x0b9\x22\x03\x0b9)\x03\x0b97\x03\x0b+\x10" +
203 "\x03\x0b((\x03\x0b&5\x03\x0b$\x1c\x03\x0b$\x12\x03\x0b%\x04\x03\x0b#<" +
204 "\x03\x0b#0\x03\x0b#\x0d\x03\x0b#\x19\x03\x0b!:\x03\x0b!\x1f\x03\x0b!\x00" +
205 "\x03\x0b\x1e5\x03\x0b\x1c\x1d\x03\x0b\x1d-\x03\x0b\x1d(\x03\x0b\x18.\x03" +
206 "\x0b\x18 \x03\x0b\x18\x16\x03\x0b\x14\x13\x03\x0b\x15$\x03\x0b\x15\x22" +
207 "\x03\x0b\x12\x1b\x03\x0b\x12\x10\x03\x0b\x132\x03\x0b\x13=\x03\x0b\x12" +
208 "\x18\x03\x0b\x0c&\x03\x0b\x061\x03\x0b\x06:\x03\x0b\x05#\x03\x0b\x05<" +
209 "\x03\x0b\x04\x0b\x03\x0b\x04\x04\x03\x0b\x04\x1b\x03\x0b\x042\x03\x0b" +
210 "\x041\x03\x0b\x03\x03\x03\x0b\x03\x1d\x03\x0b\x03/\x03\x0b\x03+\x03\x0b" +
211 "\x02\x1b\x03\x0b\x02\x00\x03\x0b\x01\x1e\x03\x0b\x01\x08\x03\x0b\x015" +
212 "\x03\x06\x0d9\x03\x06\x0d=\x03\x06\x0d?\x03\x02\x001\x03\x02\x003\x03" +
213 "\x02\x02\x19\x03\x02\x006\x03\x02\x02\x1b\x03\x02\x004\x03\x02\x00<\x03" +
214 "\x02\x02\x0a\x03\x02\x02\x0e\x03\x02\x01\x1a\x03\x02\x01\x07\x03\x02\x01" +
215 "\x05\x03\x02\x01\x0b\x03\x02\x01%\x03\x02\x01\x0c\x03\x02\x01\x04\x03" +
216 "\x02\x01\x1c\x03\x02\x00.\x03\x02\x002\x03\x02\x00>\x03\x02\x00\x12\x03" +
217 "\x02\x00\x16\x03\x02\x011\x03\x02\x013\x03\x02\x02 \x03\x02\x02%\x03\x02" +
218 "\x02$\x03\x02\x028\x03\x02\x02;\x03\x02\x024\x03\x02\x012\x03\x02\x022" +
219 "\x03\x02\x02/\x03\x02\x01,\x03\x02\x01\x13\x03\x02\x01\x16\x03\x02\x01" +
220 "\x11\x03\x02\x01\x1e\x03\x02\x01\x15\x03\x02\x01\x17\x03\x02\x01\x0f\x03" +
221 "\x02\x01\x08\x03\x02\x00?\x03\x02\x03\x07\x03\x02\x03\x0d\x03\x02\x03" +
222 "\x13\x03\x02\x03\x1d\x03\x02\x03\x1f\x03\x02\x00\x03\x03\x02\x00\x0d\x03" +
223 "\x02\x00\x01\x03\x02\x00\x1b\x03\x02\x00\x19\x03\x02\x00\x18\x03\x02\x00" +
224 "\x13\x03\x02\x00/\x03\x07>\x12\x03\x07<\x1f\x03\x07>\x1d\x03\x06\x1d\x0e" +
225 "\x03\x07>\x1c\x03\x07>:\x03\x07>\x13\x03\x04\x12+\x03\x07?\x03\x03\x07>" +
226 "\x02\x03\x06\x224\x03\x06\x1a.\x03\x07<%\x03\x06\x1c\x0b\x03\x0609\x03" +
227 "\x05\x1f\x01\x03\x04'\x08\x03\x93\xfd\xf5\x03\x02\x0d \x03\x02\x0d#\x03" +
228 "\x02\x0d!\x03\x02\x0d&\x03\x02\x0d\x22\x03\x02\x0d/\x03\x02\x0d,\x03\x02" +
229 "\x0d$\x03\x02\x0d'\x03\x02\x0d%\x03\x02\x0d;\x03\x02\x0d=\x03\x02\x0d?" +
230 "\x03\x099.\x03\x08\x0b7\x03\x08\x02\x14\x03\x08\x14\x0d\x03\x08.:\x03" +
231 "\x089'\x03\x0f\x0b\x18\x03\x0f\x1c1\x03\x0f\x17&\x03\x0f9\x1f\x03\x0f0" +
232 "\x0c\x03\x0e\x0a9\x03\x0e\x056\x03\x0e\x1c#\x03\x0f\x13\x0e\x03\x072\x00" +
233 "\x03\x070\x0d\x03\x072\x0b\x03\x06\x11\x18\x03\x070\x10\x03\x06\x0f(\x03" +
234 "\x072\x05\x03\x06\x0f,\x03\x073\x15\x03\x06\x07\x08\x03\x05\x16\x02\x03" +
235 "\x04\x0b \x03\x05:8\x03\x05\x16%\x03\x0a\x0d\x1f\x03\x06\x16\x10\x03\x05" +
236 "\x1d5\x03\x05*;\x03\x05\x16\x1b\x03\x04.-\x03\x06\x1a\x19\x03\x04\x03," +
237 "\x03\x0b87\x03\x04/\x0a\x03\x06\x00,\x03\x04-\x01\x03\x04\x1e-\x03\x06/(" +
238 "\x03\x0a\x0b5\x03\x06\x0e7\x03\x06\x07.\x03\x0597\x03\x0a*%\x03\x0760" +
239 "\x03\x06\x0c;\x03\x05'\x00\x03\x072.\x03\x072\x08\x03\x06=\x01\x03\x06" +
240 "\x05\x1b\x03\x06\x06\x12\x03\x06$=\x03\x06'\x0d\x03\x04\x11\x0f\x03\x076" +
241 ",\x03\x06\x07;\x03\x06.,\x03\x86\xf9\xea\x03\x8f\xff\xeb\x02\x092\x02" +
242 "\x095\x02\x094\x02\x09;\x02\x09>\x02\x098\x02\x09*\x02\x09/\x02\x09,\x02" +
243 "\x09%\x02\x09&\x02\x09#\x02\x09 \x02\x08!\x02\x08%\x02\x08$\x02\x08+\x02" +
244 "\x08.\x02\x08*\x02\x08&\x02\x088\x02\x08>\x02\x084\x02\x086\x02\x080\x02" +
245 "\x08\x10\x02\x08\x17\x02\x08\x12\x02\x08\x1d\x02\x08\x1f\x02\x08\x13\x02" +
246 "\x08\x15\x02\x08\x14\x02\x08\x0c\x03\x8b\xfd\xd0\x03\x81\xec\xc6\x03\x87" +
247 "\xe0\x8a\x03-2\xe3\x03\x80\xef\xe4\x03-2\xea\x03\x88\xe6\xeb\x03\x8e\xe6" +
248 "\xe8\x03\x84\xe6\xe9\x03\x97\xe6\xee\x03-2\xf9\x03-2\xf6\x03\x8e\xe3\xad" +
249 "\x03\x80\xe3\x92\x03\x88\xe3\x90\x03\x8e\xe3\x90\x03\x80\xe3\x97\x03\x88" +
250 "\xe3\x95\x03\x88\xfe\xcb\x03\x8e\xfe\xca\x03\x84\xfe\xcd\x03\x91\xef\xc9" +
251 "\x03-2\xc1\x03-2\xc0\x03-2\xcb\x03\x88@\x09\x03\x8e@\x08\x03\x8f\xe0\xf5" +
252 "\x03\x8e\xe6\xf9\x03\x8e\xe0\xfa\x03\x93\xff\xf4\x03\x84\xee\xd3\x03\x0b" +
253 "(\x04\x023 \x021;\x02\x01*\x03\x0b#\x10\x03\x0b 0\x03\x0b!\x10\x03\x0b!0" +
254 "\x03\x07\x15\x08\x03\x09?5\x03\x07\x1f\x08\x03\x07\x17\x0b\x03\x09\x1f" +
255 "\x15\x03\x0b\x1c7\x03\x0a+#\x03\x06\x1a\x1b\x03\x06\x1a\x14\x03\x0a\x01" +
256 "\x18\x03\x06#\x1b\x03\x0a2\x0c\x03\x0a\x01\x04\x03\x09#;\x03\x08='\x03" +
257 "\x08\x1a\x0a\x03\x07</\x03\x07:+\x03\x07\x07*\x03\x06&\x1c\x03\x09\x0c" +
258 "\x16\x03\x09\x10\x0e\x03\x08'\x0f\x03\x08+\x09\x03\x074%\x03\x06!3\x03" +
259 "\x06\x03+\x03\x0b\x1e\x19\x03\x0a))\x03\x09\x08\x19\x03\x08,\x05\x03\x07" +
260 "<2\x03\x06\x1c>\x03\x0a\x111\x03\x09\x1b\x09\x03\x073.\x03\x07\x01\x00" +
261 "\x03\x09/,\x03\x07#>\x03\x07\x048\x03\x0a\x1f\x22\x03\x098>\x03\x09\x11" +
262 "\x00\x03\x08/\x17\x03\x06'\x22\x03\x0b\x1a+\x03\x0a\x22\x19\x03\x0a/1" +
263 "\x03\x0974\x03\x09\x0f\x22\x03\x08,\x22\x03\x08?\x14\x03\x07$5\x03\x07<3" +
264 "\x03\x07=*\x03\x07\x13\x18\x03\x068\x0a\x03\x06\x09\x16\x03\x06\x13\x00" +
265 "\x03\x08\x067\x03\x08\x01\x03\x03\x08\x12\x1d\x03\x07+7\x03\x06(;\x03" +
266 "\x06\x1c?\x03\x07\x0e\x17\x03\x0a\x06\x1d\x03\x0a\x19\x07\x03\x08\x14$" +
267 "\x03\x07$;\x03\x08,$\x03\x08\x06\x0d\x03\x07\x16\x0a\x03\x06>>\x03\x0a" +
268 "\x06\x12\x03\x0a\x14)\x03\x09\x0d\x1f\x03\x09\x12\x17\x03\x09\x19\x01" +
269 "\x03\x08\x11 \x03\x08\x1d'\x03\x06<\x1a\x03\x0a.\x00\x03\x07'\x18\x03" +
270 "\x0a\x22\x08\x03\x08\x0d\x0a\x03\x08\x13)\x03\x07*)\x03\x06<,\x03\x07" +
271 "\x0b\x1a\x03\x09.\x14\x03\x09\x0d\x1e\x03\x07\x0e#\x03\x0b\x1d'\x03\x0a" +
272 "\x0a8\x03\x09%2\x03\x08+&\x03\x080\x12\x03\x0a)4\x03\x08\x06\x1f\x03\x0b" +
273 "\x1b\x1a\x03\x0a\x1b\x0f\x03\x0b\x1d*\x03\x09\x16$\x03\x090\x11\x03\x08" +
274 "\x11\x08\x03\x0a*(\x03\x0a\x042\x03\x089,\x03\x074'\x03\x07\x0f\x05\x03" +
275 "\x09\x0b\x0a\x03\x07\x1b\x01\x03\x09\x17:\x03\x09.\x0d\x03\x07.\x11\x03" +
276 "\x09+\x15\x03\x080\x13\x03\x0b\x1f\x19\x03\x0a \x11\x03\x0a\x220\x03\x09" +
277 "\x07;\x03\x08\x16\x1c\x03\x07,\x13\x03\x07\x0e/\x03\x06\x221\x03\x0a." +
278 "\x0a\x03\x0a7\x02\x03\x0a\x032\x03\x0a\x1d.\x03\x091\x06\x03\x09\x19:" +
279 "\x03\x08\x02/\x03\x060+\x03\x06\x0f-\x03\x06\x1c\x1f\x03\x06\x1d\x07\x03" +
280 "\x0a,\x11\x03\x09=\x0d\x03\x09\x0b;\x03\x07\x1b/\x03\x0a\x1f:\x03\x09 " +
281 "\x1f\x03\x09.\x10\x03\x094\x0b\x03\x09\x1a1\x03\x08#\x1a\x03\x084\x1d" +
282 "\x03\x08\x01\x1f\x03\x08\x11\x22\x03\x07'8\x03\x07\x1a>\x03\x0757\x03" +
283 "\x06&9\x03\x06+\x11\x03\x0a.\x0b\x03\x0a,>\x03\x0a4#\x03\x08%\x17\x03" +
284 "\x07\x05\x22\x03\x07\x0c\x0b\x03\x0a\x1d+\x03\x0a\x19\x16\x03\x09+\x1f" +
285 "\x03\x09\x08\x0b\x03\x08\x16\x18\x03\x08+\x12\x03\x0b\x1d\x0c\x03\x0a=" +
286 "\x10\x03\x0a\x09\x0d\x03\x0a\x10\x11\x03\x09&0\x03\x08(\x1f\x03\x087\x07" +
287 "\x03\x08\x185\x03\x07'6\x03\x06.\x05\x03\x06=\x04\x03\x06;;\x03\x06\x06," +
288 "\x03\x0b\x18>\x03\x08\x00\x18\x03\x06 \x03\x03\x06<\x00\x03\x09%\x18\x03" +
289 "\x0b\x1c<\x03\x0a%!\x03\x0a\x09\x12\x03\x0a\x16\x02\x03\x090'\x03\x09" +
290 "\x0e=\x03\x08 \x0e\x03\x08>\x03\x03\x074>\x03\x06&?\x03\x06\x19\x09\x03" +
291 "\x06?(\x03\x0a-\x0e\x03\x09:3\x03\x098:\x03\x09\x12\x0b\x03\x09\x1d\x17" +
292 "\x03\x087\x05\x03\x082\x14\x03\x08\x06%\x03\x08\x13\x1f\x03\x06\x06\x0e" +
293 "\x03\x0a\x22<\x03\x09/<\x03\x06>+\x03\x0a'?\x03\x0a\x13\x0c\x03\x09\x10<" +
294 "\x03\x07\x1b=\x03\x0a\x19\x13\x03\x09\x22\x1d\x03\x09\x07\x0d\x03\x08)" +
295 "\x1c\x03\x06=\x1a\x03\x0a/4\x03\x0a7\x11\x03\x0a\x16:\x03\x09?3\x03\x09:" +
296 "/\x03\x09\x05\x0a\x03\x09\x14\x06\x03\x087\x22\x03\x080\x07\x03\x08\x1a" +
297 "\x1f\x03\x07\x04(\x03\x07\x04\x09\x03\x06 %\x03\x06<\x08\x03\x0a+\x14" +
298 "\x03\x09\x1d\x16\x03\x0a70\x03\x08 >\x03\x0857\x03\x070\x0a\x03\x06=\x12" +
299 "\x03\x06\x16%\x03\x06\x1d,\x03\x099#\x03\x09\x10>\x03\x07 \x1e\x03\x08" +
300 "\x0c<\x03\x08\x0b\x18\x03\x08\x15+\x03\x08,:\x03\x08%\x22\x03\x07\x0a$" +
301 "\x03\x0b\x1c=\x03\x07+\x08\x03\x0a/\x05\x03\x0a \x07\x03\x0a\x12'\x03" +
302 "\x09#\x11\x03\x08\x1b\x15\x03\x0a\x06\x01\x03\x09\x1c\x1b\x03\x0922\x03" +
303 "\x07\x14<\x03\x07\x09\x04\x03\x061\x04\x03\x07\x0e\x01\x03\x0a\x13\x18" +
304 "\x03\x0a-\x0c\x03\x0a?\x0d\x03\x0a\x09\x0a\x03\x091&\x03\x0a/\x0b\x03" +
305 "\x08$<\x03\x083\x1d\x03\x08\x0c$\x03\x08\x0d\x07\x03\x08\x0d?\x03\x08" +
306 "\x0e\x14\x03\x065\x0a\x03\x08\x1a#\x03\x08\x16#\x03\x0702\x03\x07\x03" +
307 "\x1a\x03\x06(\x1d\x03\x06+\x1b\x03\x06\x0b\x05\x03\x06\x0b\x17\x03\x06" +
308 "\x0c\x04\x03\x06\x1e\x19\x03\x06+0\x03\x062\x18\x03\x0b\x16\x1e\x03\x0a+" +
309 "\x16\x03\x0a-?\x03\x0a#:\x03\x0a#\x10\x03\x0a%$\x03\x0a>+\x03\x0a01\x03" +
310 "\x0a1\x10\x03\x0a\x099\x03\x0a\x0a\x12\x03\x0a\x19\x1f\x03\x0a\x19\x12" +
311 "\x03\x09*)\x03\x09-\x16\x03\x09.1\x03\x09.2\x03\x09<\x0e\x03\x09> \x03" +
312 "\x093\x12\x03\x09\x0b\x01\x03\x09\x1c2\x03\x09\x11\x1c\x03\x09\x15%\x03" +
313 "\x08,&\x03\x08!\x22\x03\x089(\x03\x08\x0b\x1a\x03\x08\x0d2\x03\x08\x0c" +
314 "\x04\x03\x08\x0c\x06\x03\x08\x0c\x1f\x03\x08\x0c\x0c\x03\x08\x0f\x1f\x03" +
315 "\x08\x0f\x1d\x03\x08\x00\x14\x03\x08\x03\x14\x03\x08\x06\x16\x03\x08\x1e" +
316 "#\x03\x08\x11\x11\x03\x08\x10\x18\x03\x08\x14(\x03\x07)\x1e\x03\x07.1" +
317 "\x03\x07 $\x03\x07 '\x03\x078\x08\x03\x07\x0d0\x03\x07\x0f7\x03\x07\x05#" +
318 "\x03\x07\x05\x1a\x03\x07\x1a7\x03\x07\x1d-\x03\x07\x17\x10\x03\x06)\x1f" +
319 "\x03\x062\x0b\x03\x066\x16\x03\x06\x09\x11\x03\x09(\x1e\x03\x07!5\x03" +
320 "\x0b\x11\x16\x03\x0a/\x04\x03\x0a,\x1a\x03\x0b\x173\x03\x0a,1\x03\x0a/5" +
321 "\x03\x0a\x221\x03\x0a\x22\x0d\x03\x0a?%\x03\x0a<,\x03\x0a?#\x03\x0a>\x19" +
322 "\x03\x0a\x08&\x03\x0a\x0b\x0e\x03\x0a\x0c:\x03\x0a\x0c+\x03\x0a\x03\x22" +
323 "\x03\x0a\x06)\x03\x0a\x11\x10\x03\x0a\x11\x1a\x03\x0a\x17-\x03\x0a\x14(" +
324 "\x03\x09)\x1e\x03\x09/\x09\x03\x09.\x00\x03\x09,\x07\x03\x09/*\x03\x09-9" +
325 "\x03\x09\x228\x03\x09%\x09\x03\x09:\x12\x03\x09;\x1d\x03\x09?\x06\x03" +
326 "\x093%\x03\x096\x05\x03\x096\x08\x03\x097\x02\x03\x09\x07,\x03\x09\x04," +
327 "\x03\x09\x1f\x16\x03\x09\x11\x03\x03\x09\x11\x12\x03\x09\x168\x03\x08*" +
328 "\x05\x03\x08/2\x03\x084:\x03\x08\x22+\x03\x08 0\x03\x08&\x0a\x03\x08;" +
329 "\x10\x03\x08>$\x03\x08>\x18\x03\x0829\x03\x082:\x03\x081,\x03\x081<\x03" +
330 "\x081\x1c\x03\x087#\x03\x087*\x03\x08\x09'\x03\x08\x00\x1d\x03\x08\x05-" +
331 "\x03\x08\x1f4\x03\x08\x1d\x04\x03\x08\x16\x0f\x03\x07*7\x03\x07'!\x03" +
332 "\x07%\x1b\x03\x077\x0c\x03\x07\x0c1\x03\x07\x0c.\x03\x07\x00\x06\x03\x07" +
333 "\x01\x02\x03\x07\x010\x03\x07\x06=\x03\x07\x01\x03\x03\x07\x01\x13\x03" +
334 "\x07\x06\x06\x03\x07\x05\x0a\x03\x07\x1f\x09\x03\x07\x17:\x03\x06*1\x03" +
335 "\x06-\x1d\x03\x06\x223\x03\x062:\x03\x060$\x03\x066\x1e\x03\x064\x12\x03" +
336 "\x0645\x03\x06\x0b\x00\x03\x06\x0b7\x03\x06\x07\x1f\x03\x06\x15\x12\x03" +
337 "\x0c\x05\x0f\x03\x0b+\x0b\x03\x0b+-\x03\x06\x16\x1b\x03\x06\x15\x17\x03" +
338 "\x89\xca\xea\x03\x89\xca\xe8\x03\x0c8\x10\x03\x0c8\x01\x03\x0c8\x0f\x03" +
339 "\x0d8%\x03\x0d8!\x03\x0c8-\x03\x0c8/\x03\x0c8+\x03\x0c87\x03\x0c85\x03" +
340 "\x0c9\x09\x03\x0c9\x0d\x03\x0c9\x0f\x03\x0c9\x0b\x03\xcfu\x0c\x03\xcfu" +
341 "\x0f\x03\xcfu\x0e\x03\xcfu\x09\x03\x0c9\x10\x03\x0d9\x0c\x03\xcf`;\x03" +
342 "\xcf`>\x03\xcf`9\x03\xcf`8\x03\xcf`7\x03\xcf`*\x03\xcf`-\x03\xcf`,\x03" +
343 "\x0d\x1b\x1a\x03\x0d\x1b&\x03\x0c=.\x03\x0c=%\x03\x0c>\x1e\x03\x0c>\x14" +
344 "\x03\x0c?\x06\x03\x0c?\x0b\x03\x0c?\x0c\x03\x0c?\x0d\x03\x0c?\x02\x03" +
345 "\x0c>\x0f\x03\x0c>\x08\x03\x0c>\x09\x03\x0c>,\x03\x0c>\x0c\x03\x0c?\x13" +
346 "\x03\x0c?\x16\x03\x0c?\x15\x03\x0c?\x1c\x03\x0c?\x1f\x03\x0c?\x1d\x03" +
347 "\x0c?\x1a\x03\x0c?\x17\x03\x0c?\x08\x03\x0c?\x09\x03\x0c?\x0e\x03\x0c?" +
348 "\x04\x03\x0c?\x05\x03\x0c<?\x03\x0c=\x00\x03\x0c=\x06\x03\x0c=\x05\x03" +
349 "\x0c=\x0c\x03\x0c=\x0f\x03\x0c=\x0d\x03\x0c=\x0b\x03\x0c=\x07\x03\x0c=" +
350 "\x19\x03\x0c=\x15\x03\x0c=\x11\x03\x0c=1\x03\x0c=3\x03\x0c=0\x03\x0c=>" +
351 "\x03\x0c=2\x03\x0c=6\x03\x0c<\x07\x03\x0c<\x05\x03\x0e:!\x03\x0e:#\x03" +
352 "\x0e8\x09\x03\x0e:&\x03\x0e8\x0b\x03\x0e:$\x03\x0e:,\x03\x0e8\x1a\x03" +
353 "\x0e8\x1e\x03\x0e:*\x03\x0e:7\x03\x0e:5\x03\x0e:;\x03\x0e:\x15\x03\x0e:<" +
354 "\x03\x0e:4\x03\x0e:'\x03\x0e:-\x03\x0e:%\x03\x0e:?\x03\x0e:=\x03\x0e:)" +
355 "\x03\x0e:/\x03\xcfs'\x03\x0d=\x0f\x03\x0d+*\x03\x0d99\x03\x0d9;\x03\x0d9" +
356 "?\x03\x0d)\x0d\x03\x0d(%\x02\x01\x18\x02\x01(\x02\x01\x1e\x03\x0f$!\x03" +
357 "\x0f87\x03\x0f4\x0e\x03\x0f5\x1d\x03\x06'\x03\x03\x0f\x08\x18\x03\x0f" +
358 "\x0d\x1b\x03\x0e2=\x03\x0e;\x08\x03\x0e:\x0b\x03\x0e\x06$\x03\x0e\x0d)" +
359 "\x03\x0e\x16\x1f\x03\x0e\x16\x1b\x03\x0d$\x0a\x03\x05,\x1d\x03\x0d. \x03" +
360 "\x0d.#\x03\x0c(/\x03\x09%\x02\x03\x0d90\x03\x0d\x0e4\x03\x0d\x0d\x0f\x03" +
361 "\x0c#\x00\x03\x0c,\x1e\x03\x0c2\x0e\x03\x0c\x01\x17\x03\x0c\x09:\x03\x0e" +
362 "\x173\x03\x0c\x08\x03\x03\x0c\x11\x07\x03\x0c\x10\x18\x03\x0c\x1f\x1c" +
363 "\x03\x0c\x19\x0e\x03\x0c\x1a\x1f\x03\x0f0>\x03\x0b->\x03\x0b<+\x03\x0b8" +
364 "\x13\x03\x0b\x043\x03\x0b\x14\x03\x03\x0b\x16%\x03\x0d\x22&\x03\x0b\x1a" +
365 "\x1a\x03\x0b\x1a\x04\x03\x0a%9\x03\x0a&2\x03\x0a&0\x03\x0a!\x1a\x03\x0a!" +
366 "7\x03\x0a5\x10\x03\x0a=4\x03\x0a?\x0e\x03\x0a>\x10\x03\x0a\x00 \x03\x0a" +
367 "\x0f:\x03\x0a\x0f9\x03\x0a\x0b\x0a\x03\x0a\x17%\x03\x0a\x1b-\x03\x09-" +
368 "\x1a\x03\x09,4\x03\x09.,\x03\x09)\x09\x03\x096!\x03\x091\x1f\x03\x093" +
369 "\x16\x03\x0c+\x1f\x03\x098 \x03\x098=\x03\x0c(\x1a\x03\x0c(\x16\x03\x09" +
370 "\x0a+\x03\x09\x16\x12\x03\x09\x13\x0e\x03\x09\x153\x03\x08)!\x03\x09\x1a" +
371 "\x01\x03\x09\x18\x01\x03\x08%#\x03\x08>\x22\x03\x08\x05%\x03\x08\x02*" +
372 "\x03\x08\x15;\x03\x08\x1b7\x03\x0f\x07\x1d\x03\x0f\x04\x03\x03\x070\x0c" +
373 "\x03\x07;\x0b\x03\x07\x08\x17\x03\x07\x12\x06\x03\x06/-\x03\x0671\x03" +
374 "\x065+\x03\x06>7\x03\x06\x049\x03\x05+\x1e\x03\x05,\x17\x03\x05 \x1d\x03" +
375 "\x05\x22\x05\x03\x050\x1d"
376
377// lookup returns the trie value for the first UTF-8 encoding in s and
378// the width in bytes of this encoding. The size will be 0 if s does not
379// hold enough bytes to complete the encoding. len(s) must be greater than 0.
380func (t *idnaTrie) lookup(s []byte) (v uint16, sz int) {
381 c0 := s[0]
382 switch {
383 case c0 < 0x80: // is ASCII
384 return idnaValues[c0], 1
385 case c0 < 0xC2:
386 return 0, 1 // Illegal UTF-8: not a starter, not ASCII.
387 case c0 < 0xE0: // 2-byte UTF-8
388 if len(s) < 2 {
389 return 0, 0
390 }
391 i := idnaIndex[c0]
392 c1 := s[1]
393 if c1 < 0x80 || 0xC0 <= c1 {
394 return 0, 1 // Illegal UTF-8: not a continuation byte.
395 }
396 return t.lookupValue(uint32(i), c1), 2
397 case c0 < 0xF0: // 3-byte UTF-8
398 if len(s) < 3 {
399 return 0, 0
400 }
401 i := idnaIndex[c0]
402 c1 := s[1]
403 if c1 < 0x80 || 0xC0 <= c1 {
404 return 0, 1 // Illegal UTF-8: not a continuation byte.
405 }
406 o := uint32(i)<<6 + uint32(c1)
407 i = idnaIndex[o]
408 c2 := s[2]
409 if c2 < 0x80 || 0xC0 <= c2 {
410 return 0, 2 // Illegal UTF-8: not a continuation byte.
411 }
412 return t.lookupValue(uint32(i), c2), 3
413 case c0 < 0xF8: // 4-byte UTF-8
414 if len(s) < 4 {
415 return 0, 0
416 }
417 i := idnaIndex[c0]
418 c1 := s[1]
419 if c1 < 0x80 || 0xC0 <= c1 {
420 return 0, 1 // Illegal UTF-8: not a continuation byte.
421 }
422 o := uint32(i)<<6 + uint32(c1)
423 i = idnaIndex[o]
424 c2 := s[2]
425 if c2 < 0x80 || 0xC0 <= c2 {
426 return 0, 2 // Illegal UTF-8: not a continuation byte.
427 }
428 o = uint32(i)<<6 + uint32(c2)
429 i = idnaIndex[o]
430 c3 := s[3]
431 if c3 < 0x80 || 0xC0 <= c3 {
432 return 0, 3 // Illegal UTF-8: not a continuation byte.
433 }
434 return t.lookupValue(uint32(i), c3), 4
435 }
436 // Illegal rune
437 return 0, 1
438}
439
440// lookupUnsafe returns the trie value for the first UTF-8 encoding in s.
441// s must start with a full and valid UTF-8 encoded rune.
442func (t *idnaTrie) lookupUnsafe(s []byte) uint16 {
443 c0 := s[0]
444 if c0 < 0x80 { // is ASCII
445 return idnaValues[c0]
446 }
447 i := idnaIndex[c0]
448 if c0 < 0xE0 { // 2-byte UTF-8
449 return t.lookupValue(uint32(i), s[1])
450 }
451 i = idnaIndex[uint32(i)<<6+uint32(s[1])]
452 if c0 < 0xF0 { // 3-byte UTF-8
453 return t.lookupValue(uint32(i), s[2])
454 }
455 i = idnaIndex[uint32(i)<<6+uint32(s[2])]
456 if c0 < 0xF8 { // 4-byte UTF-8
457 return t.lookupValue(uint32(i), s[3])
458 }
459 return 0
460}
461
462// lookupString returns the trie value for the first UTF-8 encoding in s and
463// the width in bytes of this encoding. The size will be 0 if s does not
464// hold enough bytes to complete the encoding. len(s) must be greater than 0.
465func (t *idnaTrie) lookupString(s string) (v uint16, sz int) {
466 c0 := s[0]
467 switch {
468 case c0 < 0x80: // is ASCII
469 return idnaValues[c0], 1
470 case c0 < 0xC2:
471 return 0, 1 // Illegal UTF-8: not a starter, not ASCII.
472 case c0 < 0xE0: // 2-byte UTF-8
473 if len(s) < 2 {
474 return 0, 0
475 }
476 i := idnaIndex[c0]
477 c1 := s[1]
478 if c1 < 0x80 || 0xC0 <= c1 {
479 return 0, 1 // Illegal UTF-8: not a continuation byte.
480 }
481 return t.lookupValue(uint32(i), c1), 2
482 case c0 < 0xF0: // 3-byte UTF-8
483 if len(s) < 3 {
484 return 0, 0
485 }
486 i := idnaIndex[c0]
487 c1 := s[1]
488 if c1 < 0x80 || 0xC0 <= c1 {
489 return 0, 1 // Illegal UTF-8: not a continuation byte.
490 }
491 o := uint32(i)<<6 + uint32(c1)
492 i = idnaIndex[o]
493 c2 := s[2]
494 if c2 < 0x80 || 0xC0 <= c2 {
495 return 0, 2 // Illegal UTF-8: not a continuation byte.
496 }
497 return t.lookupValue(uint32(i), c2), 3
498 case c0 < 0xF8: // 4-byte UTF-8
499 if len(s) < 4 {
500 return 0, 0
501 }
502 i := idnaIndex[c0]
503 c1 := s[1]
504 if c1 < 0x80 || 0xC0 <= c1 {
505 return 0, 1 // Illegal UTF-8: not a continuation byte.
506 }
507 o := uint32(i)<<6 + uint32(c1)
508 i = idnaIndex[o]
509 c2 := s[2]
510 if c2 < 0x80 || 0xC0 <= c2 {
511 return 0, 2 // Illegal UTF-8: not a continuation byte.
512 }
513 o = uint32(i)<<6 + uint32(c2)
514 i = idnaIndex[o]
515 c3 := s[3]
516 if c3 < 0x80 || 0xC0 <= c3 {
517 return 0, 3 // Illegal UTF-8: not a continuation byte.
518 }
519 return t.lookupValue(uint32(i), c3), 4
520 }
521 // Illegal rune
522 return 0, 1
523}
524
525// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s.
526// s must start with a full and valid UTF-8 encoded rune.
527func (t *idnaTrie) lookupStringUnsafe(s string) uint16 {
528 c0 := s[0]
529 if c0 < 0x80 { // is ASCII
530 return idnaValues[c0]
531 }
532 i := idnaIndex[c0]
533 if c0 < 0xE0 { // 2-byte UTF-8
534 return t.lookupValue(uint32(i), s[1])
535 }
536 i = idnaIndex[uint32(i)<<6+uint32(s[1])]
537 if c0 < 0xF0 { // 3-byte UTF-8
538 return t.lookupValue(uint32(i), s[2])
539 }
540 i = idnaIndex[uint32(i)<<6+uint32(s[2])]
541 if c0 < 0xF8 { // 4-byte UTF-8
542 return t.lookupValue(uint32(i), s[3])
543 }
544 return 0
545}
546
547// idnaTrie. Total size: 28496 bytes (27.83 KiB). Checksum: 43288b883596640e.
548type idnaTrie struct{}
549
550func newIdnaTrie(i int) *idnaTrie {
551 return &idnaTrie{}
552}
553
554// lookupValue determines the type of block n and looks up the value for b.
555func (t *idnaTrie) lookupValue(n uint32, b byte) uint16 {
556 switch {
557 case n < 123:
558 return uint16(idnaValues[n<<6+uint32(b)])
559 default:
560 n -= 123
561 return uint16(idnaSparse.lookup(n, b))
562 }
563}
564
565// idnaValues: 125 blocks, 8000 entries, 16000 bytes
566// The third block is the zero block.
567var idnaValues = [8000]uint16{
568 // Block 0x0, offset 0x0
569 0x00: 0x0080, 0x01: 0x0080, 0x02: 0x0080, 0x03: 0x0080, 0x04: 0x0080, 0x05: 0x0080,
570 0x06: 0x0080, 0x07: 0x0080, 0x08: 0x0080, 0x09: 0x0080, 0x0a: 0x0080, 0x0b: 0x0080,
571 0x0c: 0x0080, 0x0d: 0x0080, 0x0e: 0x0080, 0x0f: 0x0080, 0x10: 0x0080, 0x11: 0x0080,
572 0x12: 0x0080, 0x13: 0x0080, 0x14: 0x0080, 0x15: 0x0080, 0x16: 0x0080, 0x17: 0x0080,
573 0x18: 0x0080, 0x19: 0x0080, 0x1a: 0x0080, 0x1b: 0x0080, 0x1c: 0x0080, 0x1d: 0x0080,
574 0x1e: 0x0080, 0x1f: 0x0080, 0x20: 0x0080, 0x21: 0x0080, 0x22: 0x0080, 0x23: 0x0080,
575 0x24: 0x0080, 0x25: 0x0080, 0x26: 0x0080, 0x27: 0x0080, 0x28: 0x0080, 0x29: 0x0080,
576 0x2a: 0x0080, 0x2b: 0x0080, 0x2c: 0x0080, 0x2d: 0x0008, 0x2e: 0x0008, 0x2f: 0x0080,
577 0x30: 0x0008, 0x31: 0x0008, 0x32: 0x0008, 0x33: 0x0008, 0x34: 0x0008, 0x35: 0x0008,
578 0x36: 0x0008, 0x37: 0x0008, 0x38: 0x0008, 0x39: 0x0008, 0x3a: 0x0080, 0x3b: 0x0080,
579 0x3c: 0x0080, 0x3d: 0x0080, 0x3e: 0x0080, 0x3f: 0x0080,
580 // Block 0x1, offset 0x40
581 0x40: 0x0080, 0x41: 0xe105, 0x42: 0xe105, 0x43: 0xe105, 0x44: 0xe105, 0x45: 0xe105,
582 0x46: 0xe105, 0x47: 0xe105, 0x48: 0xe105, 0x49: 0xe105, 0x4a: 0xe105, 0x4b: 0xe105,
583 0x4c: 0xe105, 0x4d: 0xe105, 0x4e: 0xe105, 0x4f: 0xe105, 0x50: 0xe105, 0x51: 0xe105,
584 0x52: 0xe105, 0x53: 0xe105, 0x54: 0xe105, 0x55: 0xe105, 0x56: 0xe105, 0x57: 0xe105,
585 0x58: 0xe105, 0x59: 0xe105, 0x5a: 0xe105, 0x5b: 0x0080, 0x5c: 0x0080, 0x5d: 0x0080,
586 0x5e: 0x0080, 0x5f: 0x0080, 0x60: 0x0080, 0x61: 0x0008, 0x62: 0x0008, 0x63: 0x0008,
587 0x64: 0x0008, 0x65: 0x0008, 0x66: 0x0008, 0x67: 0x0008, 0x68: 0x0008, 0x69: 0x0008,
588 0x6a: 0x0008, 0x6b: 0x0008, 0x6c: 0x0008, 0x6d: 0x0008, 0x6e: 0x0008, 0x6f: 0x0008,
589 0x70: 0x0008, 0x71: 0x0008, 0x72: 0x0008, 0x73: 0x0008, 0x74: 0x0008, 0x75: 0x0008,
590 0x76: 0x0008, 0x77: 0x0008, 0x78: 0x0008, 0x79: 0x0008, 0x7a: 0x0008, 0x7b: 0x0080,
591 0x7c: 0x0080, 0x7d: 0x0080, 0x7e: 0x0080, 0x7f: 0x0080,
592 // Block 0x2, offset 0x80
593 // Block 0x3, offset 0xc0
594 0xc0: 0x0040, 0xc1: 0x0040, 0xc2: 0x0040, 0xc3: 0x0040, 0xc4: 0x0040, 0xc5: 0x0040,
595 0xc6: 0x0040, 0xc7: 0x0040, 0xc8: 0x0040, 0xc9: 0x0040, 0xca: 0x0040, 0xcb: 0x0040,
596 0xcc: 0x0040, 0xcd: 0x0040, 0xce: 0x0040, 0xcf: 0x0040, 0xd0: 0x0040, 0xd1: 0x0040,
597 0xd2: 0x0040, 0xd3: 0x0040, 0xd4: 0x0040, 0xd5: 0x0040, 0xd6: 0x0040, 0xd7: 0x0040,
598 0xd8: 0x0040, 0xd9: 0x0040, 0xda: 0x0040, 0xdb: 0x0040, 0xdc: 0x0040, 0xdd: 0x0040,
599 0xde: 0x0040, 0xdf: 0x0040, 0xe0: 0x000a, 0xe1: 0x0018, 0xe2: 0x0018, 0xe3: 0x0018,
600 0xe4: 0x0018, 0xe5: 0x0018, 0xe6: 0x0018, 0xe7: 0x0018, 0xe8: 0x001a, 0xe9: 0x0018,
601 0xea: 0x0039, 0xeb: 0x0018, 0xec: 0x0018, 0xed: 0x03c0, 0xee: 0x0018, 0xef: 0x004a,
602 0xf0: 0x0018, 0xf1: 0x0018, 0xf2: 0x0069, 0xf3: 0x0079, 0xf4: 0x008a, 0xf5: 0x0005,
603 0xf6: 0x0018, 0xf7: 0x0008, 0xf8: 0x00aa, 0xf9: 0x00c9, 0xfa: 0x00d9, 0xfb: 0x0018,
604 0xfc: 0x00e9, 0xfd: 0x0119, 0xfe: 0x0149, 0xff: 0x0018,
605 // Block 0x4, offset 0x100
606 0x100: 0xe00d, 0x101: 0x0008, 0x102: 0xe00d, 0x103: 0x0008, 0x104: 0xe00d, 0x105: 0x0008,
607 0x106: 0xe00d, 0x107: 0x0008, 0x108: 0xe00d, 0x109: 0x0008, 0x10a: 0xe00d, 0x10b: 0x0008,
608 0x10c: 0xe00d, 0x10d: 0x0008, 0x10e: 0xe00d, 0x10f: 0x0008, 0x110: 0xe00d, 0x111: 0x0008,
609 0x112: 0xe00d, 0x113: 0x0008, 0x114: 0xe00d, 0x115: 0x0008, 0x116: 0xe00d, 0x117: 0x0008,
610 0x118: 0xe00d, 0x119: 0x0008, 0x11a: 0xe00d, 0x11b: 0x0008, 0x11c: 0xe00d, 0x11d: 0x0008,
611 0x11e: 0xe00d, 0x11f: 0x0008, 0x120: 0xe00d, 0x121: 0x0008, 0x122: 0xe00d, 0x123: 0x0008,
612 0x124: 0xe00d, 0x125: 0x0008, 0x126: 0xe00d, 0x127: 0x0008, 0x128: 0xe00d, 0x129: 0x0008,
613 0x12a: 0xe00d, 0x12b: 0x0008, 0x12c: 0xe00d, 0x12d: 0x0008, 0x12e: 0xe00d, 0x12f: 0x0008,
614 0x130: 0x0179, 0x131: 0x0008, 0x132: 0x0035, 0x133: 0x004d, 0x134: 0xe00d, 0x135: 0x0008,
615 0x136: 0xe00d, 0x137: 0x0008, 0x138: 0x0008, 0x139: 0xe01d, 0x13a: 0x0008, 0x13b: 0xe03d,
616 0x13c: 0x0008, 0x13d: 0xe01d, 0x13e: 0x0008, 0x13f: 0x0199,
617 // Block 0x5, offset 0x140
618 0x140: 0x0199, 0x141: 0xe01d, 0x142: 0x0008, 0x143: 0xe03d, 0x144: 0x0008, 0x145: 0xe01d,
619 0x146: 0x0008, 0x147: 0xe07d, 0x148: 0x0008, 0x149: 0x01b9, 0x14a: 0xe00d, 0x14b: 0x0008,
620 0x14c: 0xe00d, 0x14d: 0x0008, 0x14e: 0xe00d, 0x14f: 0x0008, 0x150: 0xe00d, 0x151: 0x0008,
621 0x152: 0xe00d, 0x153: 0x0008, 0x154: 0xe00d, 0x155: 0x0008, 0x156: 0xe00d, 0x157: 0x0008,
622 0x158: 0xe00d, 0x159: 0x0008, 0x15a: 0xe00d, 0x15b: 0x0008, 0x15c: 0xe00d, 0x15d: 0x0008,
623 0x15e: 0xe00d, 0x15f: 0x0008, 0x160: 0xe00d, 0x161: 0x0008, 0x162: 0xe00d, 0x163: 0x0008,
624 0x164: 0xe00d, 0x165: 0x0008, 0x166: 0xe00d, 0x167: 0x0008, 0x168: 0xe00d, 0x169: 0x0008,
625 0x16a: 0xe00d, 0x16b: 0x0008, 0x16c: 0xe00d, 0x16d: 0x0008, 0x16e: 0xe00d, 0x16f: 0x0008,
626 0x170: 0xe00d, 0x171: 0x0008, 0x172: 0xe00d, 0x173: 0x0008, 0x174: 0xe00d, 0x175: 0x0008,
627 0x176: 0xe00d, 0x177: 0x0008, 0x178: 0x0065, 0x179: 0xe01d, 0x17a: 0x0008, 0x17b: 0xe03d,
628 0x17c: 0x0008, 0x17d: 0xe01d, 0x17e: 0x0008, 0x17f: 0x01d9,
629 // Block 0x6, offset 0x180
630 0x180: 0x0008, 0x181: 0x007d, 0x182: 0xe00d, 0x183: 0x0008, 0x184: 0xe00d, 0x185: 0x0008,
631 0x186: 0x007d, 0x187: 0xe07d, 0x188: 0x0008, 0x189: 0x0095, 0x18a: 0x00ad, 0x18b: 0xe03d,
632 0x18c: 0x0008, 0x18d: 0x0008, 0x18e: 0x00c5, 0x18f: 0x00dd, 0x190: 0x00f5, 0x191: 0xe01d,
633 0x192: 0x0008, 0x193: 0x010d, 0x194: 0x0125, 0x195: 0x0008, 0x196: 0x013d, 0x197: 0x013d,
634 0x198: 0xe00d, 0x199: 0x0008, 0x19a: 0x0008, 0x19b: 0x0008, 0x19c: 0x010d, 0x19d: 0x0155,
635 0x19e: 0x0008, 0x19f: 0x016d, 0x1a0: 0xe00d, 0x1a1: 0x0008, 0x1a2: 0xe00d, 0x1a3: 0x0008,
636 0x1a4: 0xe00d, 0x1a5: 0x0008, 0x1a6: 0x0185, 0x1a7: 0xe07d, 0x1a8: 0x0008, 0x1a9: 0x019d,
637 0x1aa: 0x0008, 0x1ab: 0x0008, 0x1ac: 0xe00d, 0x1ad: 0x0008, 0x1ae: 0x0185, 0x1af: 0xe0fd,
638 0x1b0: 0x0008, 0x1b1: 0x01b5, 0x1b2: 0x01cd, 0x1b3: 0xe03d, 0x1b4: 0x0008, 0x1b5: 0xe01d,
639 0x1b6: 0x0008, 0x1b7: 0x01e5, 0x1b8: 0xe00d, 0x1b9: 0x0008, 0x1ba: 0x0008, 0x1bb: 0x0008,
640 0x1bc: 0xe00d, 0x1bd: 0x0008, 0x1be: 0x0008, 0x1bf: 0x0008,
641 // Block 0x7, offset 0x1c0
642 0x1c0: 0x0008, 0x1c1: 0x0008, 0x1c2: 0x0008, 0x1c3: 0x0008, 0x1c4: 0x01e9, 0x1c5: 0x01e9,
643 0x1c6: 0x01e9, 0x1c7: 0x01fd, 0x1c8: 0x0215, 0x1c9: 0x022d, 0x1ca: 0x0245, 0x1cb: 0x025d,
644 0x1cc: 0x0275, 0x1cd: 0xe01d, 0x1ce: 0x0008, 0x1cf: 0xe0fd, 0x1d0: 0x0008, 0x1d1: 0xe01d,
645 0x1d2: 0x0008, 0x1d3: 0xe03d, 0x1d4: 0x0008, 0x1d5: 0xe01d, 0x1d6: 0x0008, 0x1d7: 0xe07d,
646 0x1d8: 0x0008, 0x1d9: 0xe01d, 0x1da: 0x0008, 0x1db: 0xe03d, 0x1dc: 0x0008, 0x1dd: 0x0008,
647 0x1de: 0xe00d, 0x1df: 0x0008, 0x1e0: 0xe00d, 0x1e1: 0x0008, 0x1e2: 0xe00d, 0x1e3: 0x0008,
648 0x1e4: 0xe00d, 0x1e5: 0x0008, 0x1e6: 0xe00d, 0x1e7: 0x0008, 0x1e8: 0xe00d, 0x1e9: 0x0008,
649 0x1ea: 0xe00d, 0x1eb: 0x0008, 0x1ec: 0xe00d, 0x1ed: 0x0008, 0x1ee: 0xe00d, 0x1ef: 0x0008,
650 0x1f0: 0x0008, 0x1f1: 0x028d, 0x1f2: 0x02a5, 0x1f3: 0x02bd, 0x1f4: 0xe00d, 0x1f5: 0x0008,
651 0x1f6: 0x02d5, 0x1f7: 0x02ed, 0x1f8: 0xe00d, 0x1f9: 0x0008, 0x1fa: 0xe00d, 0x1fb: 0x0008,
652 0x1fc: 0xe00d, 0x1fd: 0x0008, 0x1fe: 0xe00d, 0x1ff: 0x0008,
653 // Block 0x8, offset 0x200
654 0x200: 0xe00d, 0x201: 0x0008, 0x202: 0xe00d, 0x203: 0x0008, 0x204: 0xe00d, 0x205: 0x0008,
655 0x206: 0xe00d, 0x207: 0x0008, 0x208: 0xe00d, 0x209: 0x0008, 0x20a: 0xe00d, 0x20b: 0x0008,
656 0x20c: 0xe00d, 0x20d: 0x0008, 0x20e: 0xe00d, 0x20f: 0x0008, 0x210: 0xe00d, 0x211: 0x0008,
657 0x212: 0xe00d, 0x213: 0x0008, 0x214: 0xe00d, 0x215: 0x0008, 0x216: 0xe00d, 0x217: 0x0008,
658 0x218: 0xe00d, 0x219: 0x0008, 0x21a: 0xe00d, 0x21b: 0x0008, 0x21c: 0xe00d, 0x21d: 0x0008,
659 0x21e: 0xe00d, 0x21f: 0x0008, 0x220: 0x0305, 0x221: 0x0008, 0x222: 0xe00d, 0x223: 0x0008,
660 0x224: 0xe00d, 0x225: 0x0008, 0x226: 0xe00d, 0x227: 0x0008, 0x228: 0xe00d, 0x229: 0x0008,
661 0x22a: 0xe00d, 0x22b: 0x0008, 0x22c: 0xe00d, 0x22d: 0x0008, 0x22e: 0xe00d, 0x22f: 0x0008,
662 0x230: 0xe00d, 0x231: 0x0008, 0x232: 0xe00d, 0x233: 0x0008, 0x234: 0x0008, 0x235: 0x0008,
663 0x236: 0x0008, 0x237: 0x0008, 0x238: 0x0008, 0x239: 0x0008, 0x23a: 0x0209, 0x23b: 0xe03d,
664 0x23c: 0x0008, 0x23d: 0x031d, 0x23e: 0x0229, 0x23f: 0x0008,
665 // Block 0x9, offset 0x240
666 0x240: 0x0008, 0x241: 0x0008, 0x242: 0x0018, 0x243: 0x0018, 0x244: 0x0018, 0x245: 0x0018,
667 0x246: 0x0008, 0x247: 0x0008, 0x248: 0x0008, 0x249: 0x0008, 0x24a: 0x0008, 0x24b: 0x0008,
668 0x24c: 0x0008, 0x24d: 0x0008, 0x24e: 0x0008, 0x24f: 0x0008, 0x250: 0x0008, 0x251: 0x0008,
669 0x252: 0x0018, 0x253: 0x0018, 0x254: 0x0018, 0x255: 0x0018, 0x256: 0x0018, 0x257: 0x0018,
670 0x258: 0x029a, 0x259: 0x02ba, 0x25a: 0x02da, 0x25b: 0x02fa, 0x25c: 0x031a, 0x25d: 0x033a,
671 0x25e: 0x0018, 0x25f: 0x0018, 0x260: 0x03ad, 0x261: 0x0359, 0x262: 0x01d9, 0x263: 0x0369,
672 0x264: 0x03c5, 0x265: 0x0018, 0x266: 0x0018, 0x267: 0x0018, 0x268: 0x0018, 0x269: 0x0018,
673 0x26a: 0x0018, 0x26b: 0x0018, 0x26c: 0x0008, 0x26d: 0x0018, 0x26e: 0x0008, 0x26f: 0x0018,
674 0x270: 0x0018, 0x271: 0x0018, 0x272: 0x0018, 0x273: 0x0018, 0x274: 0x0018, 0x275: 0x0018,
675 0x276: 0x0018, 0x277: 0x0018, 0x278: 0x0018, 0x279: 0x0018, 0x27a: 0x0018, 0x27b: 0x0018,
676 0x27c: 0x0018, 0x27d: 0x0018, 0x27e: 0x0018, 0x27f: 0x0018,
677 // Block 0xa, offset 0x280
678 0x280: 0x03dd, 0x281: 0x03dd, 0x282: 0x1308, 0x283: 0x03f5, 0x284: 0x0379, 0x285: 0x040d,
679 0x286: 0x1308, 0x287: 0x1308, 0x288: 0x1308, 0x289: 0x1308, 0x28a: 0x1308, 0x28b: 0x1308,
680 0x28c: 0x1308, 0x28d: 0x1308, 0x28e: 0x1308, 0x28f: 0x13c0, 0x290: 0x1308, 0x291: 0x1308,
681 0x292: 0x1308, 0x293: 0x1308, 0x294: 0x1308, 0x295: 0x1308, 0x296: 0x1308, 0x297: 0x1308,
682 0x298: 0x1308, 0x299: 0x1308, 0x29a: 0x1308, 0x29b: 0x1308, 0x29c: 0x1308, 0x29d: 0x1308,
683 0x29e: 0x1308, 0x29f: 0x1308, 0x2a0: 0x1308, 0x2a1: 0x1308, 0x2a2: 0x1308, 0x2a3: 0x1308,
684 0x2a4: 0x1308, 0x2a5: 0x1308, 0x2a6: 0x1308, 0x2a7: 0x1308, 0x2a8: 0x1308, 0x2a9: 0x1308,
685 0x2aa: 0x1308, 0x2ab: 0x1308, 0x2ac: 0x1308, 0x2ad: 0x1308, 0x2ae: 0x1308, 0x2af: 0x1308,
686 0x2b0: 0xe00d, 0x2b1: 0x0008, 0x2b2: 0xe00d, 0x2b3: 0x0008, 0x2b4: 0x0425, 0x2b5: 0x0008,
687 0x2b6: 0xe00d, 0x2b7: 0x0008, 0x2b8: 0x0040, 0x2b9: 0x0040, 0x2ba: 0x03a2, 0x2bb: 0x0008,
688 0x2bc: 0x0008, 0x2bd: 0x0008, 0x2be: 0x03c2, 0x2bf: 0x043d,
689 // Block 0xb, offset 0x2c0
690 0x2c0: 0x0040, 0x2c1: 0x0040, 0x2c2: 0x0040, 0x2c3: 0x0040, 0x2c4: 0x008a, 0x2c5: 0x03d2,
691 0x2c6: 0xe155, 0x2c7: 0x0455, 0x2c8: 0xe12d, 0x2c9: 0xe13d, 0x2ca: 0xe12d, 0x2cb: 0x0040,
692 0x2cc: 0x03dd, 0x2cd: 0x0040, 0x2ce: 0x046d, 0x2cf: 0x0485, 0x2d0: 0x0008, 0x2d1: 0xe105,
693 0x2d2: 0xe105, 0x2d3: 0xe105, 0x2d4: 0xe105, 0x2d5: 0xe105, 0x2d6: 0xe105, 0x2d7: 0xe105,
694 0x2d8: 0xe105, 0x2d9: 0xe105, 0x2da: 0xe105, 0x2db: 0xe105, 0x2dc: 0xe105, 0x2dd: 0xe105,
695 0x2de: 0xe105, 0x2df: 0xe105, 0x2e0: 0x049d, 0x2e1: 0x049d, 0x2e2: 0x0040, 0x2e3: 0x049d,
696 0x2e4: 0x049d, 0x2e5: 0x049d, 0x2e6: 0x049d, 0x2e7: 0x049d, 0x2e8: 0x049d, 0x2e9: 0x049d,
697 0x2ea: 0x049d, 0x2eb: 0x049d, 0x2ec: 0x0008, 0x2ed: 0x0008, 0x2ee: 0x0008, 0x2ef: 0x0008,
698 0x2f0: 0x0008, 0x2f1: 0x0008, 0x2f2: 0x0008, 0x2f3: 0x0008, 0x2f4: 0x0008, 0x2f5: 0x0008,
699 0x2f6: 0x0008, 0x2f7: 0x0008, 0x2f8: 0x0008, 0x2f9: 0x0008, 0x2fa: 0x0008, 0x2fb: 0x0008,
700 0x2fc: 0x0008, 0x2fd: 0x0008, 0x2fe: 0x0008, 0x2ff: 0x0008,
701 // Block 0xc, offset 0x300
702 0x300: 0x0008, 0x301: 0x0008, 0x302: 0xe00f, 0x303: 0x0008, 0x304: 0x0008, 0x305: 0x0008,
703 0x306: 0x0008, 0x307: 0x0008, 0x308: 0x0008, 0x309: 0x0008, 0x30a: 0x0008, 0x30b: 0x0008,
704 0x30c: 0x0008, 0x30d: 0x0008, 0x30e: 0x0008, 0x30f: 0xe0c5, 0x310: 0x04b5, 0x311: 0x04cd,
705 0x312: 0xe0bd, 0x313: 0xe0f5, 0x314: 0xe0fd, 0x315: 0xe09d, 0x316: 0xe0b5, 0x317: 0x0008,
706 0x318: 0xe00d, 0x319: 0x0008, 0x31a: 0xe00d, 0x31b: 0x0008, 0x31c: 0xe00d, 0x31d: 0x0008,
707 0x31e: 0xe00d, 0x31f: 0x0008, 0x320: 0xe00d, 0x321: 0x0008, 0x322: 0xe00d, 0x323: 0x0008,
708 0x324: 0xe00d, 0x325: 0x0008, 0x326: 0xe00d, 0x327: 0x0008, 0x328: 0xe00d, 0x329: 0x0008,
709 0x32a: 0xe00d, 0x32b: 0x0008, 0x32c: 0xe00d, 0x32d: 0x0008, 0x32e: 0xe00d, 0x32f: 0x0008,
710 0x330: 0x04e5, 0x331: 0xe185, 0x332: 0xe18d, 0x333: 0x0008, 0x334: 0x04fd, 0x335: 0x03dd,
711 0x336: 0x0018, 0x337: 0xe07d, 0x338: 0x0008, 0x339: 0xe1d5, 0x33a: 0xe00d, 0x33b: 0x0008,
712 0x33c: 0x0008, 0x33d: 0x0515, 0x33e: 0x052d, 0x33f: 0x052d,
713 // Block 0xd, offset 0x340
714 0x340: 0x0008, 0x341: 0x0008, 0x342: 0x0008, 0x343: 0x0008, 0x344: 0x0008, 0x345: 0x0008,
715 0x346: 0x0008, 0x347: 0x0008, 0x348: 0x0008, 0x349: 0x0008, 0x34a: 0x0008, 0x34b: 0x0008,
716 0x34c: 0x0008, 0x34d: 0x0008, 0x34e: 0x0008, 0x34f: 0x0008, 0x350: 0x0008, 0x351: 0x0008,
717 0x352: 0x0008, 0x353: 0x0008, 0x354: 0x0008, 0x355: 0x0008, 0x356: 0x0008, 0x357: 0x0008,
718 0x358: 0x0008, 0x359: 0x0008, 0x35a: 0x0008, 0x35b: 0x0008, 0x35c: 0x0008, 0x35d: 0x0008,
719 0x35e: 0x0008, 0x35f: 0x0008, 0x360: 0xe00d, 0x361: 0x0008, 0x362: 0xe00d, 0x363: 0x0008,
720 0x364: 0xe00d, 0x365: 0x0008, 0x366: 0xe00d, 0x367: 0x0008, 0x368: 0xe00d, 0x369: 0x0008,
721 0x36a: 0xe00d, 0x36b: 0x0008, 0x36c: 0xe00d, 0x36d: 0x0008, 0x36e: 0xe00d, 0x36f: 0x0008,
722 0x370: 0xe00d, 0x371: 0x0008, 0x372: 0xe00d, 0x373: 0x0008, 0x374: 0xe00d, 0x375: 0x0008,
723 0x376: 0xe00d, 0x377: 0x0008, 0x378: 0xe00d, 0x379: 0x0008, 0x37a: 0xe00d, 0x37b: 0x0008,
724 0x37c: 0xe00d, 0x37d: 0x0008, 0x37e: 0xe00d, 0x37f: 0x0008,
725 // Block 0xe, offset 0x380
726 0x380: 0xe00d, 0x381: 0x0008, 0x382: 0x0018, 0x383: 0x1308, 0x384: 0x1308, 0x385: 0x1308,
727 0x386: 0x1308, 0x387: 0x1308, 0x388: 0x1318, 0x389: 0x1318, 0x38a: 0xe00d, 0x38b: 0x0008,
728 0x38c: 0xe00d, 0x38d: 0x0008, 0x38e: 0xe00d, 0x38f: 0x0008, 0x390: 0xe00d, 0x391: 0x0008,
729 0x392: 0xe00d, 0x393: 0x0008, 0x394: 0xe00d, 0x395: 0x0008, 0x396: 0xe00d, 0x397: 0x0008,
730 0x398: 0xe00d, 0x399: 0x0008, 0x39a: 0xe00d, 0x39b: 0x0008, 0x39c: 0xe00d, 0x39d: 0x0008,
731 0x39e: 0xe00d, 0x39f: 0x0008, 0x3a0: 0xe00d, 0x3a1: 0x0008, 0x3a2: 0xe00d, 0x3a3: 0x0008,
732 0x3a4: 0xe00d, 0x3a5: 0x0008, 0x3a6: 0xe00d, 0x3a7: 0x0008, 0x3a8: 0xe00d, 0x3a9: 0x0008,
733 0x3aa: 0xe00d, 0x3ab: 0x0008, 0x3ac: 0xe00d, 0x3ad: 0x0008, 0x3ae: 0xe00d, 0x3af: 0x0008,
734 0x3b0: 0xe00d, 0x3b1: 0x0008, 0x3b2: 0xe00d, 0x3b3: 0x0008, 0x3b4: 0xe00d, 0x3b5: 0x0008,
735 0x3b6: 0xe00d, 0x3b7: 0x0008, 0x3b8: 0xe00d, 0x3b9: 0x0008, 0x3ba: 0xe00d, 0x3bb: 0x0008,
736 0x3bc: 0xe00d, 0x3bd: 0x0008, 0x3be: 0xe00d, 0x3bf: 0x0008,
737 // Block 0xf, offset 0x3c0
738 0x3c0: 0x0040, 0x3c1: 0xe01d, 0x3c2: 0x0008, 0x3c3: 0xe03d, 0x3c4: 0x0008, 0x3c5: 0xe01d,
739 0x3c6: 0x0008, 0x3c7: 0xe07d, 0x3c8: 0x0008, 0x3c9: 0xe01d, 0x3ca: 0x0008, 0x3cb: 0xe03d,
740 0x3cc: 0x0008, 0x3cd: 0xe01d, 0x3ce: 0x0008, 0x3cf: 0x0008, 0x3d0: 0xe00d, 0x3d1: 0x0008,
741 0x3d2: 0xe00d, 0x3d3: 0x0008, 0x3d4: 0xe00d, 0x3d5: 0x0008, 0x3d6: 0xe00d, 0x3d7: 0x0008,
742 0x3d8: 0xe00d, 0x3d9: 0x0008, 0x3da: 0xe00d, 0x3db: 0x0008, 0x3dc: 0xe00d, 0x3dd: 0x0008,
743 0x3de: 0xe00d, 0x3df: 0x0008, 0x3e0: 0xe00d, 0x3e1: 0x0008, 0x3e2: 0xe00d, 0x3e3: 0x0008,
744 0x3e4: 0xe00d, 0x3e5: 0x0008, 0x3e6: 0xe00d, 0x3e7: 0x0008, 0x3e8: 0xe00d, 0x3e9: 0x0008,
745 0x3ea: 0xe00d, 0x3eb: 0x0008, 0x3ec: 0xe00d, 0x3ed: 0x0008, 0x3ee: 0xe00d, 0x3ef: 0x0008,
746 0x3f0: 0xe00d, 0x3f1: 0x0008, 0x3f2: 0xe00d, 0x3f3: 0x0008, 0x3f4: 0xe00d, 0x3f5: 0x0008,
747 0x3f6: 0xe00d, 0x3f7: 0x0008, 0x3f8: 0xe00d, 0x3f9: 0x0008, 0x3fa: 0xe00d, 0x3fb: 0x0008,
748 0x3fc: 0xe00d, 0x3fd: 0x0008, 0x3fe: 0xe00d, 0x3ff: 0x0008,
749 // Block 0x10, offset 0x400
750 0x400: 0xe00d, 0x401: 0x0008, 0x402: 0xe00d, 0x403: 0x0008, 0x404: 0xe00d, 0x405: 0x0008,
751 0x406: 0xe00d, 0x407: 0x0008, 0x408: 0xe00d, 0x409: 0x0008, 0x40a: 0xe00d, 0x40b: 0x0008,
752 0x40c: 0xe00d, 0x40d: 0x0008, 0x40e: 0xe00d, 0x40f: 0x0008, 0x410: 0xe00d, 0x411: 0x0008,
753 0x412: 0xe00d, 0x413: 0x0008, 0x414: 0xe00d, 0x415: 0x0008, 0x416: 0xe00d, 0x417: 0x0008,
754 0x418: 0xe00d, 0x419: 0x0008, 0x41a: 0xe00d, 0x41b: 0x0008, 0x41c: 0xe00d, 0x41d: 0x0008,
755 0x41e: 0xe00d, 0x41f: 0x0008, 0x420: 0xe00d, 0x421: 0x0008, 0x422: 0xe00d, 0x423: 0x0008,
756 0x424: 0xe00d, 0x425: 0x0008, 0x426: 0xe00d, 0x427: 0x0008, 0x428: 0xe00d, 0x429: 0x0008,
757 0x42a: 0xe00d, 0x42b: 0x0008, 0x42c: 0xe00d, 0x42d: 0x0008, 0x42e: 0xe00d, 0x42f: 0x0008,
758 0x430: 0x0040, 0x431: 0x03f5, 0x432: 0x03f5, 0x433: 0x03f5, 0x434: 0x03f5, 0x435: 0x03f5,
759 0x436: 0x03f5, 0x437: 0x03f5, 0x438: 0x03f5, 0x439: 0x03f5, 0x43a: 0x03f5, 0x43b: 0x03f5,
760 0x43c: 0x03f5, 0x43d: 0x03f5, 0x43e: 0x03f5, 0x43f: 0x03f5,
761 // Block 0x11, offset 0x440
762 0x440: 0x0040, 0x441: 0x0040, 0x442: 0x0040, 0x443: 0x0040, 0x444: 0x0040, 0x445: 0x0040,
763 0x446: 0x0018, 0x447: 0x0018, 0x448: 0x0018, 0x449: 0x0018, 0x44a: 0x0018, 0x44b: 0x0018,
764 0x44c: 0x0018, 0x44d: 0x0018, 0x44e: 0x0018, 0x44f: 0x0018, 0x450: 0x1308, 0x451: 0x1308,
765 0x452: 0x1308, 0x453: 0x1308, 0x454: 0x1308, 0x455: 0x1308, 0x456: 0x1308, 0x457: 0x1308,
766 0x458: 0x1308, 0x459: 0x1308, 0x45a: 0x1308, 0x45b: 0x0018, 0x45c: 0x0340, 0x45d: 0x0040,
767 0x45e: 0x0018, 0x45f: 0x0018, 0x460: 0x0208, 0x461: 0x0008, 0x462: 0x0408, 0x463: 0x0408,
768 0x464: 0x0408, 0x465: 0x0408, 0x466: 0x0208, 0x467: 0x0408, 0x468: 0x0208, 0x469: 0x0408,
769 0x46a: 0x0208, 0x46b: 0x0208, 0x46c: 0x0208, 0x46d: 0x0208, 0x46e: 0x0208, 0x46f: 0x0408,
770 0x470: 0x0408, 0x471: 0x0408, 0x472: 0x0408, 0x473: 0x0208, 0x474: 0x0208, 0x475: 0x0208,
771 0x476: 0x0208, 0x477: 0x0208, 0x478: 0x0208, 0x479: 0x0208, 0x47a: 0x0208, 0x47b: 0x0208,
772 0x47c: 0x0208, 0x47d: 0x0208, 0x47e: 0x0208, 0x47f: 0x0208,
773 // Block 0x12, offset 0x480
774 0x480: 0x0408, 0x481: 0x0208, 0x482: 0x0208, 0x483: 0x0408, 0x484: 0x0408, 0x485: 0x0408,
775 0x486: 0x0408, 0x487: 0x0408, 0x488: 0x0408, 0x489: 0x0408, 0x48a: 0x0408, 0x48b: 0x0408,
776 0x48c: 0x0208, 0x48d: 0x0408, 0x48e: 0x0208, 0x48f: 0x0408, 0x490: 0x0208, 0x491: 0x0208,
777 0x492: 0x0408, 0x493: 0x0408, 0x494: 0x0018, 0x495: 0x0408, 0x496: 0x1308, 0x497: 0x1308,
778 0x498: 0x1308, 0x499: 0x1308, 0x49a: 0x1308, 0x49b: 0x1308, 0x49c: 0x1308, 0x49d: 0x0040,
779 0x49e: 0x0018, 0x49f: 0x1308, 0x4a0: 0x1308, 0x4a1: 0x1308, 0x4a2: 0x1308, 0x4a3: 0x1308,
780 0x4a4: 0x1308, 0x4a5: 0x0008, 0x4a6: 0x0008, 0x4a7: 0x1308, 0x4a8: 0x1308, 0x4a9: 0x0018,
781 0x4aa: 0x1308, 0x4ab: 0x1308, 0x4ac: 0x1308, 0x4ad: 0x1308, 0x4ae: 0x0408, 0x4af: 0x0408,
782 0x4b0: 0x0008, 0x4b1: 0x0008, 0x4b2: 0x0008, 0x4b3: 0x0008, 0x4b4: 0x0008, 0x4b5: 0x0008,
783 0x4b6: 0x0008, 0x4b7: 0x0008, 0x4b8: 0x0008, 0x4b9: 0x0008, 0x4ba: 0x0208, 0x4bb: 0x0208,
784 0x4bc: 0x0208, 0x4bd: 0x0008, 0x4be: 0x0008, 0x4bf: 0x0208,
785 // Block 0x13, offset 0x4c0
786 0x4c0: 0x0018, 0x4c1: 0x0018, 0x4c2: 0x0018, 0x4c3: 0x0018, 0x4c4: 0x0018, 0x4c5: 0x0018,
787 0x4c6: 0x0018, 0x4c7: 0x0018, 0x4c8: 0x0018, 0x4c9: 0x0018, 0x4ca: 0x0018, 0x4cb: 0x0018,
788 0x4cc: 0x0018, 0x4cd: 0x0018, 0x4ce: 0x0040, 0x4cf: 0x0340, 0x4d0: 0x0408, 0x4d1: 0x1308,
789 0x4d2: 0x0208, 0x4d3: 0x0208, 0x4d4: 0x0208, 0x4d5: 0x0408, 0x4d6: 0x0408, 0x4d7: 0x0408,
790 0x4d8: 0x0408, 0x4d9: 0x0408, 0x4da: 0x0208, 0x4db: 0x0208, 0x4dc: 0x0208, 0x4dd: 0x0208,
791 0x4de: 0x0408, 0x4df: 0x0208, 0x4e0: 0x0208, 0x4e1: 0x0208, 0x4e2: 0x0208, 0x4e3: 0x0208,
792 0x4e4: 0x0208, 0x4e5: 0x0208, 0x4e6: 0x0208, 0x4e7: 0x0208, 0x4e8: 0x0408, 0x4e9: 0x0208,
793 0x4ea: 0x0408, 0x4eb: 0x0208, 0x4ec: 0x0408, 0x4ed: 0x0208, 0x4ee: 0x0208, 0x4ef: 0x0408,
794 0x4f0: 0x1308, 0x4f1: 0x1308, 0x4f2: 0x1308, 0x4f3: 0x1308, 0x4f4: 0x1308, 0x4f5: 0x1308,
795 0x4f6: 0x1308, 0x4f7: 0x1308, 0x4f8: 0x1308, 0x4f9: 0x1308, 0x4fa: 0x1308, 0x4fb: 0x1308,
796 0x4fc: 0x1308, 0x4fd: 0x1308, 0x4fe: 0x1308, 0x4ff: 0x1308,
797 // Block 0x14, offset 0x500
798 0x500: 0x1008, 0x501: 0x1308, 0x502: 0x1308, 0x503: 0x1308, 0x504: 0x1308, 0x505: 0x1308,
799 0x506: 0x1308, 0x507: 0x1308, 0x508: 0x1308, 0x509: 0x1008, 0x50a: 0x1008, 0x50b: 0x1008,
800 0x50c: 0x1008, 0x50d: 0x1b08, 0x50e: 0x1008, 0x50f: 0x1008, 0x510: 0x0008, 0x511: 0x1308,
801 0x512: 0x1308, 0x513: 0x1308, 0x514: 0x1308, 0x515: 0x1308, 0x516: 0x1308, 0x517: 0x1308,
802 0x518: 0x04c9, 0x519: 0x0501, 0x51a: 0x0539, 0x51b: 0x0571, 0x51c: 0x05a9, 0x51d: 0x05e1,
803 0x51e: 0x0619, 0x51f: 0x0651, 0x520: 0x0008, 0x521: 0x0008, 0x522: 0x1308, 0x523: 0x1308,
804 0x524: 0x0018, 0x525: 0x0018, 0x526: 0x0008, 0x527: 0x0008, 0x528: 0x0008, 0x529: 0x0008,
805 0x52a: 0x0008, 0x52b: 0x0008, 0x52c: 0x0008, 0x52d: 0x0008, 0x52e: 0x0008, 0x52f: 0x0008,
806 0x530: 0x0018, 0x531: 0x0008, 0x532: 0x0008, 0x533: 0x0008, 0x534: 0x0008, 0x535: 0x0008,
807 0x536: 0x0008, 0x537: 0x0008, 0x538: 0x0008, 0x539: 0x0008, 0x53a: 0x0008, 0x53b: 0x0008,
808 0x53c: 0x0008, 0x53d: 0x0008, 0x53e: 0x0008, 0x53f: 0x0008,
809 // Block 0x15, offset 0x540
810 0x540: 0x0008, 0x541: 0x1308, 0x542: 0x1008, 0x543: 0x1008, 0x544: 0x0040, 0x545: 0x0008,
811 0x546: 0x0008, 0x547: 0x0008, 0x548: 0x0008, 0x549: 0x0008, 0x54a: 0x0008, 0x54b: 0x0008,
812 0x54c: 0x0008, 0x54d: 0x0040, 0x54e: 0x0040, 0x54f: 0x0008, 0x550: 0x0008, 0x551: 0x0040,
813 0x552: 0x0040, 0x553: 0x0008, 0x554: 0x0008, 0x555: 0x0008, 0x556: 0x0008, 0x557: 0x0008,
814 0x558: 0x0008, 0x559: 0x0008, 0x55a: 0x0008, 0x55b: 0x0008, 0x55c: 0x0008, 0x55d: 0x0008,
815 0x55e: 0x0008, 0x55f: 0x0008, 0x560: 0x0008, 0x561: 0x0008, 0x562: 0x0008, 0x563: 0x0008,
816 0x564: 0x0008, 0x565: 0x0008, 0x566: 0x0008, 0x567: 0x0008, 0x568: 0x0008, 0x569: 0x0040,
817 0x56a: 0x0008, 0x56b: 0x0008, 0x56c: 0x0008, 0x56d: 0x0008, 0x56e: 0x0008, 0x56f: 0x0008,
818 0x570: 0x0008, 0x571: 0x0040, 0x572: 0x0008, 0x573: 0x0040, 0x574: 0x0040, 0x575: 0x0040,
819 0x576: 0x0008, 0x577: 0x0008, 0x578: 0x0008, 0x579: 0x0008, 0x57a: 0x0040, 0x57b: 0x0040,
820 0x57c: 0x1308, 0x57d: 0x0008, 0x57e: 0x1008, 0x57f: 0x1008,
821 // Block 0x16, offset 0x580
822 0x580: 0x1008, 0x581: 0x1308, 0x582: 0x1308, 0x583: 0x1308, 0x584: 0x1308, 0x585: 0x0040,
823 0x586: 0x0040, 0x587: 0x1008, 0x588: 0x1008, 0x589: 0x0040, 0x58a: 0x0040, 0x58b: 0x1008,
824 0x58c: 0x1008, 0x58d: 0x1b08, 0x58e: 0x0008, 0x58f: 0x0040, 0x590: 0x0040, 0x591: 0x0040,
825 0x592: 0x0040, 0x593: 0x0040, 0x594: 0x0040, 0x595: 0x0040, 0x596: 0x0040, 0x597: 0x1008,
826 0x598: 0x0040, 0x599: 0x0040, 0x59a: 0x0040, 0x59b: 0x0040, 0x59c: 0x0689, 0x59d: 0x06c1,
827 0x59e: 0x0040, 0x59f: 0x06f9, 0x5a0: 0x0008, 0x5a1: 0x0008, 0x5a2: 0x1308, 0x5a3: 0x1308,
828 0x5a4: 0x0040, 0x5a5: 0x0040, 0x5a6: 0x0008, 0x5a7: 0x0008, 0x5a8: 0x0008, 0x5a9: 0x0008,
829 0x5aa: 0x0008, 0x5ab: 0x0008, 0x5ac: 0x0008, 0x5ad: 0x0008, 0x5ae: 0x0008, 0x5af: 0x0008,
830 0x5b0: 0x0008, 0x5b1: 0x0008, 0x5b2: 0x0018, 0x5b3: 0x0018, 0x5b4: 0x0018, 0x5b5: 0x0018,
831 0x5b6: 0x0018, 0x5b7: 0x0018, 0x5b8: 0x0018, 0x5b9: 0x0018, 0x5ba: 0x0018, 0x5bb: 0x0018,
832 0x5bc: 0x0040, 0x5bd: 0x0040, 0x5be: 0x0040, 0x5bf: 0x0040,
833 // Block 0x17, offset 0x5c0
834 0x5c0: 0x0040, 0x5c1: 0x1308, 0x5c2: 0x1308, 0x5c3: 0x1008, 0x5c4: 0x0040, 0x5c5: 0x0008,
835 0x5c6: 0x0008, 0x5c7: 0x0008, 0x5c8: 0x0008, 0x5c9: 0x0008, 0x5ca: 0x0008, 0x5cb: 0x0040,
836 0x5cc: 0x0040, 0x5cd: 0x0040, 0x5ce: 0x0040, 0x5cf: 0x0008, 0x5d0: 0x0008, 0x5d1: 0x0040,
837 0x5d2: 0x0040, 0x5d3: 0x0008, 0x5d4: 0x0008, 0x5d5: 0x0008, 0x5d6: 0x0008, 0x5d7: 0x0008,
838 0x5d8: 0x0008, 0x5d9: 0x0008, 0x5da: 0x0008, 0x5db: 0x0008, 0x5dc: 0x0008, 0x5dd: 0x0008,
839 0x5de: 0x0008, 0x5df: 0x0008, 0x5e0: 0x0008, 0x5e1: 0x0008, 0x5e2: 0x0008, 0x5e3: 0x0008,
840 0x5e4: 0x0008, 0x5e5: 0x0008, 0x5e6: 0x0008, 0x5e7: 0x0008, 0x5e8: 0x0008, 0x5e9: 0x0040,
841 0x5ea: 0x0008, 0x5eb: 0x0008, 0x5ec: 0x0008, 0x5ed: 0x0008, 0x5ee: 0x0008, 0x5ef: 0x0008,
842 0x5f0: 0x0008, 0x5f1: 0x0040, 0x5f2: 0x0008, 0x5f3: 0x0731, 0x5f4: 0x0040, 0x5f5: 0x0008,
843 0x5f6: 0x0769, 0x5f7: 0x0040, 0x5f8: 0x0008, 0x5f9: 0x0008, 0x5fa: 0x0040, 0x5fb: 0x0040,
844 0x5fc: 0x1308, 0x5fd: 0x0040, 0x5fe: 0x1008, 0x5ff: 0x1008,
845 // Block 0x18, offset 0x600
846 0x600: 0x1008, 0x601: 0x1308, 0x602: 0x1308, 0x603: 0x0040, 0x604: 0x0040, 0x605: 0x0040,
847 0x606: 0x0040, 0x607: 0x1308, 0x608: 0x1308, 0x609: 0x0040, 0x60a: 0x0040, 0x60b: 0x1308,
848 0x60c: 0x1308, 0x60d: 0x1b08, 0x60e: 0x0040, 0x60f: 0x0040, 0x610: 0x0040, 0x611: 0x1308,
849 0x612: 0x0040, 0x613: 0x0040, 0x614: 0x0040, 0x615: 0x0040, 0x616: 0x0040, 0x617: 0x0040,
850 0x618: 0x0040, 0x619: 0x07a1, 0x61a: 0x07d9, 0x61b: 0x0811, 0x61c: 0x0008, 0x61d: 0x0040,
851 0x61e: 0x0849, 0x61f: 0x0040, 0x620: 0x0040, 0x621: 0x0040, 0x622: 0x0040, 0x623: 0x0040,
852 0x624: 0x0040, 0x625: 0x0040, 0x626: 0x0008, 0x627: 0x0008, 0x628: 0x0008, 0x629: 0x0008,
853 0x62a: 0x0008, 0x62b: 0x0008, 0x62c: 0x0008, 0x62d: 0x0008, 0x62e: 0x0008, 0x62f: 0x0008,
854 0x630: 0x1308, 0x631: 0x1308, 0x632: 0x0008, 0x633: 0x0008, 0x634: 0x0008, 0x635: 0x1308,
855 0x636: 0x0040, 0x637: 0x0040, 0x638: 0x0040, 0x639: 0x0040, 0x63a: 0x0040, 0x63b: 0x0040,
856 0x63c: 0x0040, 0x63d: 0x0040, 0x63e: 0x0040, 0x63f: 0x0040,
857 // Block 0x19, offset 0x640
858 0x640: 0x0040, 0x641: 0x1308, 0x642: 0x1308, 0x643: 0x1008, 0x644: 0x0040, 0x645: 0x0008,
859 0x646: 0x0008, 0x647: 0x0008, 0x648: 0x0008, 0x649: 0x0008, 0x64a: 0x0008, 0x64b: 0x0008,
860 0x64c: 0x0008, 0x64d: 0x0008, 0x64e: 0x0040, 0x64f: 0x0008, 0x650: 0x0008, 0x651: 0x0008,
861 0x652: 0x0040, 0x653: 0x0008, 0x654: 0x0008, 0x655: 0x0008, 0x656: 0x0008, 0x657: 0x0008,
862 0x658: 0x0008, 0x659: 0x0008, 0x65a: 0x0008, 0x65b: 0x0008, 0x65c: 0x0008, 0x65d: 0x0008,
863 0x65e: 0x0008, 0x65f: 0x0008, 0x660: 0x0008, 0x661: 0x0008, 0x662: 0x0008, 0x663: 0x0008,
864 0x664: 0x0008, 0x665: 0x0008, 0x666: 0x0008, 0x667: 0x0008, 0x668: 0x0008, 0x669: 0x0040,
865 0x66a: 0x0008, 0x66b: 0x0008, 0x66c: 0x0008, 0x66d: 0x0008, 0x66e: 0x0008, 0x66f: 0x0008,
866 0x670: 0x0008, 0x671: 0x0040, 0x672: 0x0008, 0x673: 0x0008, 0x674: 0x0040, 0x675: 0x0008,
867 0x676: 0x0008, 0x677: 0x0008, 0x678: 0x0008, 0x679: 0x0008, 0x67a: 0x0040, 0x67b: 0x0040,
868 0x67c: 0x1308, 0x67d: 0x0008, 0x67e: 0x1008, 0x67f: 0x1008,
869 // Block 0x1a, offset 0x680
870 0x680: 0x1008, 0x681: 0x1308, 0x682: 0x1308, 0x683: 0x1308, 0x684: 0x1308, 0x685: 0x1308,
871 0x686: 0x0040, 0x687: 0x1308, 0x688: 0x1308, 0x689: 0x1008, 0x68a: 0x0040, 0x68b: 0x1008,
872 0x68c: 0x1008, 0x68d: 0x1b08, 0x68e: 0x0040, 0x68f: 0x0040, 0x690: 0x0008, 0x691: 0x0040,
873 0x692: 0x0040, 0x693: 0x0040, 0x694: 0x0040, 0x695: 0x0040, 0x696: 0x0040, 0x697: 0x0040,
874 0x698: 0x0040, 0x699: 0x0040, 0x69a: 0x0040, 0x69b: 0x0040, 0x69c: 0x0040, 0x69d: 0x0040,
875 0x69e: 0x0040, 0x69f: 0x0040, 0x6a0: 0x0008, 0x6a1: 0x0008, 0x6a2: 0x1308, 0x6a3: 0x1308,
876 0x6a4: 0x0040, 0x6a5: 0x0040, 0x6a6: 0x0008, 0x6a7: 0x0008, 0x6a8: 0x0008, 0x6a9: 0x0008,
877 0x6aa: 0x0008, 0x6ab: 0x0008, 0x6ac: 0x0008, 0x6ad: 0x0008, 0x6ae: 0x0008, 0x6af: 0x0008,
878 0x6b0: 0x0018, 0x6b1: 0x0018, 0x6b2: 0x0040, 0x6b3: 0x0040, 0x6b4: 0x0040, 0x6b5: 0x0040,
879 0x6b6: 0x0040, 0x6b7: 0x0040, 0x6b8: 0x0040, 0x6b9: 0x0008, 0x6ba: 0x0040, 0x6bb: 0x0040,
880 0x6bc: 0x0040, 0x6bd: 0x0040, 0x6be: 0x0040, 0x6bf: 0x0040,
881 // Block 0x1b, offset 0x6c0
882 0x6c0: 0x0040, 0x6c1: 0x1308, 0x6c2: 0x1008, 0x6c3: 0x1008, 0x6c4: 0x0040, 0x6c5: 0x0008,
883 0x6c6: 0x0008, 0x6c7: 0x0008, 0x6c8: 0x0008, 0x6c9: 0x0008, 0x6ca: 0x0008, 0x6cb: 0x0008,
884 0x6cc: 0x0008, 0x6cd: 0x0040, 0x6ce: 0x0040, 0x6cf: 0x0008, 0x6d0: 0x0008, 0x6d1: 0x0040,
885 0x6d2: 0x0040, 0x6d3: 0x0008, 0x6d4: 0x0008, 0x6d5: 0x0008, 0x6d6: 0x0008, 0x6d7: 0x0008,
886 0x6d8: 0x0008, 0x6d9: 0x0008, 0x6da: 0x0008, 0x6db: 0x0008, 0x6dc: 0x0008, 0x6dd: 0x0008,
887 0x6de: 0x0008, 0x6df: 0x0008, 0x6e0: 0x0008, 0x6e1: 0x0008, 0x6e2: 0x0008, 0x6e3: 0x0008,
888 0x6e4: 0x0008, 0x6e5: 0x0008, 0x6e6: 0x0008, 0x6e7: 0x0008, 0x6e8: 0x0008, 0x6e9: 0x0040,
889 0x6ea: 0x0008, 0x6eb: 0x0008, 0x6ec: 0x0008, 0x6ed: 0x0008, 0x6ee: 0x0008, 0x6ef: 0x0008,
890 0x6f0: 0x0008, 0x6f1: 0x0040, 0x6f2: 0x0008, 0x6f3: 0x0008, 0x6f4: 0x0040, 0x6f5: 0x0008,
891 0x6f6: 0x0008, 0x6f7: 0x0008, 0x6f8: 0x0008, 0x6f9: 0x0008, 0x6fa: 0x0040, 0x6fb: 0x0040,
892 0x6fc: 0x1308, 0x6fd: 0x0008, 0x6fe: 0x1008, 0x6ff: 0x1308,
893 // Block 0x1c, offset 0x700
894 0x700: 0x1008, 0x701: 0x1308, 0x702: 0x1308, 0x703: 0x1308, 0x704: 0x1308, 0x705: 0x0040,
895 0x706: 0x0040, 0x707: 0x1008, 0x708: 0x1008, 0x709: 0x0040, 0x70a: 0x0040, 0x70b: 0x1008,
896 0x70c: 0x1008, 0x70d: 0x1b08, 0x70e: 0x0040, 0x70f: 0x0040, 0x710: 0x0040, 0x711: 0x0040,
897 0x712: 0x0040, 0x713: 0x0040, 0x714: 0x0040, 0x715: 0x0040, 0x716: 0x1308, 0x717: 0x1008,
898 0x718: 0x0040, 0x719: 0x0040, 0x71a: 0x0040, 0x71b: 0x0040, 0x71c: 0x0881, 0x71d: 0x08b9,
899 0x71e: 0x0040, 0x71f: 0x0008, 0x720: 0x0008, 0x721: 0x0008, 0x722: 0x1308, 0x723: 0x1308,
900 0x724: 0x0040, 0x725: 0x0040, 0x726: 0x0008, 0x727: 0x0008, 0x728: 0x0008, 0x729: 0x0008,
901 0x72a: 0x0008, 0x72b: 0x0008, 0x72c: 0x0008, 0x72d: 0x0008, 0x72e: 0x0008, 0x72f: 0x0008,
902 0x730: 0x0018, 0x731: 0x0008, 0x732: 0x0018, 0x733: 0x0018, 0x734: 0x0018, 0x735: 0x0018,
903 0x736: 0x0018, 0x737: 0x0018, 0x738: 0x0040, 0x739: 0x0040, 0x73a: 0x0040, 0x73b: 0x0040,
904 0x73c: 0x0040, 0x73d: 0x0040, 0x73e: 0x0040, 0x73f: 0x0040,
905 // Block 0x1d, offset 0x740
906 0x740: 0x0040, 0x741: 0x0040, 0x742: 0x1308, 0x743: 0x0008, 0x744: 0x0040, 0x745: 0x0008,
907 0x746: 0x0008, 0x747: 0x0008, 0x748: 0x0008, 0x749: 0x0008, 0x74a: 0x0008, 0x74b: 0x0040,
908 0x74c: 0x0040, 0x74d: 0x0040, 0x74e: 0x0008, 0x74f: 0x0008, 0x750: 0x0008, 0x751: 0x0040,
909 0x752: 0x0008, 0x753: 0x0008, 0x754: 0x0008, 0x755: 0x0008, 0x756: 0x0040, 0x757: 0x0040,
910 0x758: 0x0040, 0x759: 0x0008, 0x75a: 0x0008, 0x75b: 0x0040, 0x75c: 0x0008, 0x75d: 0x0040,
911 0x75e: 0x0008, 0x75f: 0x0008, 0x760: 0x0040, 0x761: 0x0040, 0x762: 0x0040, 0x763: 0x0008,
912 0x764: 0x0008, 0x765: 0x0040, 0x766: 0x0040, 0x767: 0x0040, 0x768: 0x0008, 0x769: 0x0008,
913 0x76a: 0x0008, 0x76b: 0x0040, 0x76c: 0x0040, 0x76d: 0x0040, 0x76e: 0x0008, 0x76f: 0x0008,
914 0x770: 0x0008, 0x771: 0x0008, 0x772: 0x0008, 0x773: 0x0008, 0x774: 0x0008, 0x775: 0x0008,
915 0x776: 0x0008, 0x777: 0x0008, 0x778: 0x0008, 0x779: 0x0008, 0x77a: 0x0040, 0x77b: 0x0040,
916 0x77c: 0x0040, 0x77d: 0x0040, 0x77e: 0x1008, 0x77f: 0x1008,
917 // Block 0x1e, offset 0x780
918 0x780: 0x1308, 0x781: 0x1008, 0x782: 0x1008, 0x783: 0x1008, 0x784: 0x1008, 0x785: 0x0040,
919 0x786: 0x1308, 0x787: 0x1308, 0x788: 0x1308, 0x789: 0x0040, 0x78a: 0x1308, 0x78b: 0x1308,
920 0x78c: 0x1308, 0x78d: 0x1b08, 0x78e: 0x0040, 0x78f: 0x0040, 0x790: 0x0040, 0x791: 0x0040,
921 0x792: 0x0040, 0x793: 0x0040, 0x794: 0x0040, 0x795: 0x1308, 0x796: 0x1308, 0x797: 0x0040,
922 0x798: 0x0008, 0x799: 0x0008, 0x79a: 0x0008, 0x79b: 0x0040, 0x79c: 0x0040, 0x79d: 0x0040,
923 0x79e: 0x0040, 0x79f: 0x0040, 0x7a0: 0x0008, 0x7a1: 0x0008, 0x7a2: 0x1308, 0x7a3: 0x1308,
924 0x7a4: 0x0040, 0x7a5: 0x0040, 0x7a6: 0x0008, 0x7a7: 0x0008, 0x7a8: 0x0008, 0x7a9: 0x0008,
925 0x7aa: 0x0008, 0x7ab: 0x0008, 0x7ac: 0x0008, 0x7ad: 0x0008, 0x7ae: 0x0008, 0x7af: 0x0008,
926 0x7b0: 0x0040, 0x7b1: 0x0040, 0x7b2: 0x0040, 0x7b3: 0x0040, 0x7b4: 0x0040, 0x7b5: 0x0040,
927 0x7b6: 0x0040, 0x7b7: 0x0040, 0x7b8: 0x0018, 0x7b9: 0x0018, 0x7ba: 0x0018, 0x7bb: 0x0018,
928 0x7bc: 0x0018, 0x7bd: 0x0018, 0x7be: 0x0018, 0x7bf: 0x0018,
929 // Block 0x1f, offset 0x7c0
930 0x7c0: 0x0008, 0x7c1: 0x1308, 0x7c2: 0x1008, 0x7c3: 0x1008, 0x7c4: 0x0040, 0x7c5: 0x0008,
931 0x7c6: 0x0008, 0x7c7: 0x0008, 0x7c8: 0x0008, 0x7c9: 0x0008, 0x7ca: 0x0008, 0x7cb: 0x0008,
932 0x7cc: 0x0008, 0x7cd: 0x0040, 0x7ce: 0x0008, 0x7cf: 0x0008, 0x7d0: 0x0008, 0x7d1: 0x0040,
933 0x7d2: 0x0008, 0x7d3: 0x0008, 0x7d4: 0x0008, 0x7d5: 0x0008, 0x7d6: 0x0008, 0x7d7: 0x0008,
934 0x7d8: 0x0008, 0x7d9: 0x0008, 0x7da: 0x0008, 0x7db: 0x0008, 0x7dc: 0x0008, 0x7dd: 0x0008,
935 0x7de: 0x0008, 0x7df: 0x0008, 0x7e0: 0x0008, 0x7e1: 0x0008, 0x7e2: 0x0008, 0x7e3: 0x0008,
936 0x7e4: 0x0008, 0x7e5: 0x0008, 0x7e6: 0x0008, 0x7e7: 0x0008, 0x7e8: 0x0008, 0x7e9: 0x0040,
937 0x7ea: 0x0008, 0x7eb: 0x0008, 0x7ec: 0x0008, 0x7ed: 0x0008, 0x7ee: 0x0008, 0x7ef: 0x0008,
938 0x7f0: 0x0008, 0x7f1: 0x0008, 0x7f2: 0x0008, 0x7f3: 0x0008, 0x7f4: 0x0040, 0x7f5: 0x0008,
939 0x7f6: 0x0008, 0x7f7: 0x0008, 0x7f8: 0x0008, 0x7f9: 0x0008, 0x7fa: 0x0040, 0x7fb: 0x0040,
940 0x7fc: 0x1308, 0x7fd: 0x0008, 0x7fe: 0x1008, 0x7ff: 0x1308,
941 // Block 0x20, offset 0x800
942 0x800: 0x1008, 0x801: 0x1008, 0x802: 0x1008, 0x803: 0x1008, 0x804: 0x1008, 0x805: 0x0040,
943 0x806: 0x1308, 0x807: 0x1008, 0x808: 0x1008, 0x809: 0x0040, 0x80a: 0x1008, 0x80b: 0x1008,
944 0x80c: 0x1308, 0x80d: 0x1b08, 0x80e: 0x0040, 0x80f: 0x0040, 0x810: 0x0040, 0x811: 0x0040,
945 0x812: 0x0040, 0x813: 0x0040, 0x814: 0x0040, 0x815: 0x1008, 0x816: 0x1008, 0x817: 0x0040,
946 0x818: 0x0040, 0x819: 0x0040, 0x81a: 0x0040, 0x81b: 0x0040, 0x81c: 0x0040, 0x81d: 0x0040,
947 0x81e: 0x0008, 0x81f: 0x0040, 0x820: 0x0008, 0x821: 0x0008, 0x822: 0x1308, 0x823: 0x1308,
948 0x824: 0x0040, 0x825: 0x0040, 0x826: 0x0008, 0x827: 0x0008, 0x828: 0x0008, 0x829: 0x0008,
949 0x82a: 0x0008, 0x82b: 0x0008, 0x82c: 0x0008, 0x82d: 0x0008, 0x82e: 0x0008, 0x82f: 0x0008,
950 0x830: 0x0040, 0x831: 0x0008, 0x832: 0x0008, 0x833: 0x0040, 0x834: 0x0040, 0x835: 0x0040,
951 0x836: 0x0040, 0x837: 0x0040, 0x838: 0x0040, 0x839: 0x0040, 0x83a: 0x0040, 0x83b: 0x0040,
952 0x83c: 0x0040, 0x83d: 0x0040, 0x83e: 0x0040, 0x83f: 0x0040,
953 // Block 0x21, offset 0x840
954 0x840: 0x1008, 0x841: 0x1308, 0x842: 0x1308, 0x843: 0x1308, 0x844: 0x1308, 0x845: 0x0040,
955 0x846: 0x1008, 0x847: 0x1008, 0x848: 0x1008, 0x849: 0x0040, 0x84a: 0x1008, 0x84b: 0x1008,
956 0x84c: 0x1008, 0x84d: 0x1b08, 0x84e: 0x0008, 0x84f: 0x0018, 0x850: 0x0040, 0x851: 0x0040,
957 0x852: 0x0040, 0x853: 0x0040, 0x854: 0x0008, 0x855: 0x0008, 0x856: 0x0008, 0x857: 0x1008,
958 0x858: 0x0018, 0x859: 0x0018, 0x85a: 0x0018, 0x85b: 0x0018, 0x85c: 0x0018, 0x85d: 0x0018,
959 0x85e: 0x0018, 0x85f: 0x0008, 0x860: 0x0008, 0x861: 0x0008, 0x862: 0x1308, 0x863: 0x1308,
960 0x864: 0x0040, 0x865: 0x0040, 0x866: 0x0008, 0x867: 0x0008, 0x868: 0x0008, 0x869: 0x0008,
961 0x86a: 0x0008, 0x86b: 0x0008, 0x86c: 0x0008, 0x86d: 0x0008, 0x86e: 0x0008, 0x86f: 0x0008,
962 0x870: 0x0018, 0x871: 0x0018, 0x872: 0x0018, 0x873: 0x0018, 0x874: 0x0018, 0x875: 0x0018,
963 0x876: 0x0018, 0x877: 0x0018, 0x878: 0x0018, 0x879: 0x0018, 0x87a: 0x0008, 0x87b: 0x0008,
964 0x87c: 0x0008, 0x87d: 0x0008, 0x87e: 0x0008, 0x87f: 0x0008,
965 // Block 0x22, offset 0x880
966 0x880: 0x0040, 0x881: 0x0008, 0x882: 0x0008, 0x883: 0x0040, 0x884: 0x0008, 0x885: 0x0040,
967 0x886: 0x0040, 0x887: 0x0008, 0x888: 0x0008, 0x889: 0x0040, 0x88a: 0x0008, 0x88b: 0x0040,
968 0x88c: 0x0040, 0x88d: 0x0008, 0x88e: 0x0040, 0x88f: 0x0040, 0x890: 0x0040, 0x891: 0x0040,
969 0x892: 0x0040, 0x893: 0x0040, 0x894: 0x0008, 0x895: 0x0008, 0x896: 0x0008, 0x897: 0x0008,
970 0x898: 0x0040, 0x899: 0x0008, 0x89a: 0x0008, 0x89b: 0x0008, 0x89c: 0x0008, 0x89d: 0x0008,
971 0x89e: 0x0008, 0x89f: 0x0008, 0x8a0: 0x0040, 0x8a1: 0x0008, 0x8a2: 0x0008, 0x8a3: 0x0008,
972 0x8a4: 0x0040, 0x8a5: 0x0008, 0x8a6: 0x0040, 0x8a7: 0x0008, 0x8a8: 0x0040, 0x8a9: 0x0040,
973 0x8aa: 0x0008, 0x8ab: 0x0008, 0x8ac: 0x0040, 0x8ad: 0x0008, 0x8ae: 0x0008, 0x8af: 0x0008,
974 0x8b0: 0x0008, 0x8b1: 0x1308, 0x8b2: 0x0008, 0x8b3: 0x0929, 0x8b4: 0x1308, 0x8b5: 0x1308,
975 0x8b6: 0x1308, 0x8b7: 0x1308, 0x8b8: 0x1308, 0x8b9: 0x1308, 0x8ba: 0x0040, 0x8bb: 0x1308,
976 0x8bc: 0x1308, 0x8bd: 0x0008, 0x8be: 0x0040, 0x8bf: 0x0040,
977 // Block 0x23, offset 0x8c0
978 0x8c0: 0x0008, 0x8c1: 0x0008, 0x8c2: 0x0008, 0x8c3: 0x09d1, 0x8c4: 0x0008, 0x8c5: 0x0008,
979 0x8c6: 0x0008, 0x8c7: 0x0008, 0x8c8: 0x0040, 0x8c9: 0x0008, 0x8ca: 0x0008, 0x8cb: 0x0008,
980 0x8cc: 0x0008, 0x8cd: 0x0a09, 0x8ce: 0x0008, 0x8cf: 0x0008, 0x8d0: 0x0008, 0x8d1: 0x0008,
981 0x8d2: 0x0a41, 0x8d3: 0x0008, 0x8d4: 0x0008, 0x8d5: 0x0008, 0x8d6: 0x0008, 0x8d7: 0x0a79,
982 0x8d8: 0x0008, 0x8d9: 0x0008, 0x8da: 0x0008, 0x8db: 0x0008, 0x8dc: 0x0ab1, 0x8dd: 0x0008,
983 0x8de: 0x0008, 0x8df: 0x0008, 0x8e0: 0x0008, 0x8e1: 0x0008, 0x8e2: 0x0008, 0x8e3: 0x0008,
984 0x8e4: 0x0008, 0x8e5: 0x0008, 0x8e6: 0x0008, 0x8e7: 0x0008, 0x8e8: 0x0008, 0x8e9: 0x0ae9,
985 0x8ea: 0x0008, 0x8eb: 0x0008, 0x8ec: 0x0008, 0x8ed: 0x0040, 0x8ee: 0x0040, 0x8ef: 0x0040,
986 0x8f0: 0x0040, 0x8f1: 0x1308, 0x8f2: 0x1308, 0x8f3: 0x0b21, 0x8f4: 0x1308, 0x8f5: 0x0b59,
987 0x8f6: 0x0b91, 0x8f7: 0x0bc9, 0x8f8: 0x0c19, 0x8f9: 0x0c51, 0x8fa: 0x1308, 0x8fb: 0x1308,
988 0x8fc: 0x1308, 0x8fd: 0x1308, 0x8fe: 0x1308, 0x8ff: 0x1008,
989 // Block 0x24, offset 0x900
990 0x900: 0x1308, 0x901: 0x0ca1, 0x902: 0x1308, 0x903: 0x1308, 0x904: 0x1b08, 0x905: 0x0018,
991 0x906: 0x1308, 0x907: 0x1308, 0x908: 0x0008, 0x909: 0x0008, 0x90a: 0x0008, 0x90b: 0x0008,
992 0x90c: 0x0008, 0x90d: 0x1308, 0x90e: 0x1308, 0x90f: 0x1308, 0x910: 0x1308, 0x911: 0x1308,
993 0x912: 0x1308, 0x913: 0x0cd9, 0x914: 0x1308, 0x915: 0x1308, 0x916: 0x1308, 0x917: 0x1308,
994 0x918: 0x0040, 0x919: 0x1308, 0x91a: 0x1308, 0x91b: 0x1308, 0x91c: 0x1308, 0x91d: 0x0d11,
995 0x91e: 0x1308, 0x91f: 0x1308, 0x920: 0x1308, 0x921: 0x1308, 0x922: 0x0d49, 0x923: 0x1308,
996 0x924: 0x1308, 0x925: 0x1308, 0x926: 0x1308, 0x927: 0x0d81, 0x928: 0x1308, 0x929: 0x1308,
997 0x92a: 0x1308, 0x92b: 0x1308, 0x92c: 0x0db9, 0x92d: 0x1308, 0x92e: 0x1308, 0x92f: 0x1308,
998 0x930: 0x1308, 0x931: 0x1308, 0x932: 0x1308, 0x933: 0x1308, 0x934: 0x1308, 0x935: 0x1308,
999 0x936: 0x1308, 0x937: 0x1308, 0x938: 0x1308, 0x939: 0x0df1, 0x93a: 0x1308, 0x93b: 0x1308,
1000 0x93c: 0x1308, 0x93d: 0x0040, 0x93e: 0x0018, 0x93f: 0x0018,
1001 // Block 0x25, offset 0x940
1002 0x940: 0x0008, 0x941: 0x0008, 0x942: 0x0008, 0x943: 0x0008, 0x944: 0x0008, 0x945: 0x0008,
1003 0x946: 0x0008, 0x947: 0x0008, 0x948: 0x0008, 0x949: 0x0008, 0x94a: 0x0008, 0x94b: 0x0008,
1004 0x94c: 0x0008, 0x94d: 0x0008, 0x94e: 0x0008, 0x94f: 0x0008, 0x950: 0x0008, 0x951: 0x0008,
1005 0x952: 0x0008, 0x953: 0x0008, 0x954: 0x0008, 0x955: 0x0008, 0x956: 0x0008, 0x957: 0x0008,
1006 0x958: 0x0008, 0x959: 0x0008, 0x95a: 0x0008, 0x95b: 0x0008, 0x95c: 0x0008, 0x95d: 0x0008,
1007 0x95e: 0x0008, 0x95f: 0x0008, 0x960: 0x0008, 0x961: 0x0008, 0x962: 0x0008, 0x963: 0x0008,
1008 0x964: 0x0008, 0x965: 0x0008, 0x966: 0x0008, 0x967: 0x0008, 0x968: 0x0008, 0x969: 0x0008,
1009 0x96a: 0x0008, 0x96b: 0x0008, 0x96c: 0x0039, 0x96d: 0x0ed1, 0x96e: 0x0ee9, 0x96f: 0x0008,
1010 0x970: 0x0ef9, 0x971: 0x0f09, 0x972: 0x0f19, 0x973: 0x0f31, 0x974: 0x0249, 0x975: 0x0f41,
1011 0x976: 0x0259, 0x977: 0x0f51, 0x978: 0x0359, 0x979: 0x0f61, 0x97a: 0x0f71, 0x97b: 0x0008,
1012 0x97c: 0x00d9, 0x97d: 0x0f81, 0x97e: 0x0f99, 0x97f: 0x0269,
1013 // Block 0x26, offset 0x980
1014 0x980: 0x0fa9, 0x981: 0x0fb9, 0x982: 0x0279, 0x983: 0x0039, 0x984: 0x0fc9, 0x985: 0x0fe1,
1015 0x986: 0x059d, 0x987: 0x0ee9, 0x988: 0x0ef9, 0x989: 0x0f09, 0x98a: 0x0ff9, 0x98b: 0x1011,
1016 0x98c: 0x1029, 0x98d: 0x0f31, 0x98e: 0x0008, 0x98f: 0x0f51, 0x990: 0x0f61, 0x991: 0x1041,
1017 0x992: 0x00d9, 0x993: 0x1059, 0x994: 0x05b5, 0x995: 0x05b5, 0x996: 0x0f99, 0x997: 0x0fa9,
1018 0x998: 0x0fb9, 0x999: 0x059d, 0x99a: 0x1071, 0x99b: 0x1089, 0x99c: 0x05cd, 0x99d: 0x1099,
1019 0x99e: 0x10b1, 0x99f: 0x10c9, 0x9a0: 0x10e1, 0x9a1: 0x10f9, 0x9a2: 0x0f41, 0x9a3: 0x0269,
1020 0x9a4: 0x0fb9, 0x9a5: 0x1089, 0x9a6: 0x1099, 0x9a7: 0x10b1, 0x9a8: 0x1111, 0x9a9: 0x10e1,
1021 0x9aa: 0x10f9, 0x9ab: 0x0008, 0x9ac: 0x0008, 0x9ad: 0x0008, 0x9ae: 0x0008, 0x9af: 0x0008,
1022 0x9b0: 0x0008, 0x9b1: 0x0008, 0x9b2: 0x0008, 0x9b3: 0x0008, 0x9b4: 0x0008, 0x9b5: 0x0008,
1023 0x9b6: 0x0008, 0x9b7: 0x0008, 0x9b8: 0x1129, 0x9b9: 0x0008, 0x9ba: 0x0008, 0x9bb: 0x0008,
1024 0x9bc: 0x0008, 0x9bd: 0x0008, 0x9be: 0x0008, 0x9bf: 0x0008,
1025 // Block 0x27, offset 0x9c0
1026 0x9c0: 0x0008, 0x9c1: 0x0008, 0x9c2: 0x0008, 0x9c3: 0x0008, 0x9c4: 0x0008, 0x9c5: 0x0008,
1027 0x9c6: 0x0008, 0x9c7: 0x0008, 0x9c8: 0x0008, 0x9c9: 0x0008, 0x9ca: 0x0008, 0x9cb: 0x0008,
1028 0x9cc: 0x0008, 0x9cd: 0x0008, 0x9ce: 0x0008, 0x9cf: 0x0008, 0x9d0: 0x0008, 0x9d1: 0x0008,
1029 0x9d2: 0x0008, 0x9d3: 0x0008, 0x9d4: 0x0008, 0x9d5: 0x0008, 0x9d6: 0x0008, 0x9d7: 0x0008,
1030 0x9d8: 0x0008, 0x9d9: 0x0008, 0x9da: 0x0008, 0x9db: 0x1141, 0x9dc: 0x1159, 0x9dd: 0x1169,
1031 0x9de: 0x1181, 0x9df: 0x1029, 0x9e0: 0x1199, 0x9e1: 0x11a9, 0x9e2: 0x11c1, 0x9e3: 0x11d9,
1032 0x9e4: 0x11f1, 0x9e5: 0x1209, 0x9e6: 0x1221, 0x9e7: 0x05e5, 0x9e8: 0x1239, 0x9e9: 0x1251,
1033 0x9ea: 0xe17d, 0x9eb: 0x1269, 0x9ec: 0x1281, 0x9ed: 0x1299, 0x9ee: 0x12b1, 0x9ef: 0x12c9,
1034 0x9f0: 0x12e1, 0x9f1: 0x12f9, 0x9f2: 0x1311, 0x9f3: 0x1329, 0x9f4: 0x1341, 0x9f5: 0x1359,
1035 0x9f6: 0x1371, 0x9f7: 0x1389, 0x9f8: 0x05fd, 0x9f9: 0x13a1, 0x9fa: 0x13b9, 0x9fb: 0x13d1,
1036 0x9fc: 0x13e1, 0x9fd: 0x13f9, 0x9fe: 0x1411, 0x9ff: 0x1429,
1037 // Block 0x28, offset 0xa00
1038 0xa00: 0xe00d, 0xa01: 0x0008, 0xa02: 0xe00d, 0xa03: 0x0008, 0xa04: 0xe00d, 0xa05: 0x0008,
1039 0xa06: 0xe00d, 0xa07: 0x0008, 0xa08: 0xe00d, 0xa09: 0x0008, 0xa0a: 0xe00d, 0xa0b: 0x0008,
1040 0xa0c: 0xe00d, 0xa0d: 0x0008, 0xa0e: 0xe00d, 0xa0f: 0x0008, 0xa10: 0xe00d, 0xa11: 0x0008,
1041 0xa12: 0xe00d, 0xa13: 0x0008, 0xa14: 0xe00d, 0xa15: 0x0008, 0xa16: 0xe00d, 0xa17: 0x0008,
1042 0xa18: 0xe00d, 0xa19: 0x0008, 0xa1a: 0xe00d, 0xa1b: 0x0008, 0xa1c: 0xe00d, 0xa1d: 0x0008,
1043 0xa1e: 0xe00d, 0xa1f: 0x0008, 0xa20: 0xe00d, 0xa21: 0x0008, 0xa22: 0xe00d, 0xa23: 0x0008,
1044 0xa24: 0xe00d, 0xa25: 0x0008, 0xa26: 0xe00d, 0xa27: 0x0008, 0xa28: 0xe00d, 0xa29: 0x0008,
1045 0xa2a: 0xe00d, 0xa2b: 0x0008, 0xa2c: 0xe00d, 0xa2d: 0x0008, 0xa2e: 0xe00d, 0xa2f: 0x0008,
1046 0xa30: 0xe00d, 0xa31: 0x0008, 0xa32: 0xe00d, 0xa33: 0x0008, 0xa34: 0xe00d, 0xa35: 0x0008,
1047 0xa36: 0xe00d, 0xa37: 0x0008, 0xa38: 0xe00d, 0xa39: 0x0008, 0xa3a: 0xe00d, 0xa3b: 0x0008,
1048 0xa3c: 0xe00d, 0xa3d: 0x0008, 0xa3e: 0xe00d, 0xa3f: 0x0008,
1049 // Block 0x29, offset 0xa40
1050 0xa40: 0xe00d, 0xa41: 0x0008, 0xa42: 0xe00d, 0xa43: 0x0008, 0xa44: 0xe00d, 0xa45: 0x0008,
1051 0xa46: 0xe00d, 0xa47: 0x0008, 0xa48: 0xe00d, 0xa49: 0x0008, 0xa4a: 0xe00d, 0xa4b: 0x0008,
1052 0xa4c: 0xe00d, 0xa4d: 0x0008, 0xa4e: 0xe00d, 0xa4f: 0x0008, 0xa50: 0xe00d, 0xa51: 0x0008,
1053 0xa52: 0xe00d, 0xa53: 0x0008, 0xa54: 0xe00d, 0xa55: 0x0008, 0xa56: 0x0008, 0xa57: 0x0008,
1054 0xa58: 0x0008, 0xa59: 0x0008, 0xa5a: 0x0615, 0xa5b: 0x0635, 0xa5c: 0x0008, 0xa5d: 0x0008,
1055 0xa5e: 0x1441, 0xa5f: 0x0008, 0xa60: 0xe00d, 0xa61: 0x0008, 0xa62: 0xe00d, 0xa63: 0x0008,
1056 0xa64: 0xe00d, 0xa65: 0x0008, 0xa66: 0xe00d, 0xa67: 0x0008, 0xa68: 0xe00d, 0xa69: 0x0008,
1057 0xa6a: 0xe00d, 0xa6b: 0x0008, 0xa6c: 0xe00d, 0xa6d: 0x0008, 0xa6e: 0xe00d, 0xa6f: 0x0008,
1058 0xa70: 0xe00d, 0xa71: 0x0008, 0xa72: 0xe00d, 0xa73: 0x0008, 0xa74: 0xe00d, 0xa75: 0x0008,
1059 0xa76: 0xe00d, 0xa77: 0x0008, 0xa78: 0xe00d, 0xa79: 0x0008, 0xa7a: 0xe00d, 0xa7b: 0x0008,
1060 0xa7c: 0xe00d, 0xa7d: 0x0008, 0xa7e: 0xe00d, 0xa7f: 0x0008,
1061 // Block 0x2a, offset 0xa80
1062 0xa80: 0x0008, 0xa81: 0x0008, 0xa82: 0x0008, 0xa83: 0x0008, 0xa84: 0x0008, 0xa85: 0x0008,
1063 0xa86: 0x0040, 0xa87: 0x0040, 0xa88: 0xe045, 0xa89: 0xe045, 0xa8a: 0xe045, 0xa8b: 0xe045,
1064 0xa8c: 0xe045, 0xa8d: 0xe045, 0xa8e: 0x0040, 0xa8f: 0x0040, 0xa90: 0x0008, 0xa91: 0x0008,
1065 0xa92: 0x0008, 0xa93: 0x0008, 0xa94: 0x0008, 0xa95: 0x0008, 0xa96: 0x0008, 0xa97: 0x0008,
1066 0xa98: 0x0040, 0xa99: 0xe045, 0xa9a: 0x0040, 0xa9b: 0xe045, 0xa9c: 0x0040, 0xa9d: 0xe045,
1067 0xa9e: 0x0040, 0xa9f: 0xe045, 0xaa0: 0x0008, 0xaa1: 0x0008, 0xaa2: 0x0008, 0xaa3: 0x0008,
1068 0xaa4: 0x0008, 0xaa5: 0x0008, 0xaa6: 0x0008, 0xaa7: 0x0008, 0xaa8: 0xe045, 0xaa9: 0xe045,
1069 0xaaa: 0xe045, 0xaab: 0xe045, 0xaac: 0xe045, 0xaad: 0xe045, 0xaae: 0xe045, 0xaaf: 0xe045,
1070 0xab0: 0x0008, 0xab1: 0x1459, 0xab2: 0x0008, 0xab3: 0x1471, 0xab4: 0x0008, 0xab5: 0x1489,
1071 0xab6: 0x0008, 0xab7: 0x14a1, 0xab8: 0x0008, 0xab9: 0x14b9, 0xaba: 0x0008, 0xabb: 0x14d1,
1072 0xabc: 0x0008, 0xabd: 0x14e9, 0xabe: 0x0040, 0xabf: 0x0040,
1073 // Block 0x2b, offset 0xac0
1074 0xac0: 0x1501, 0xac1: 0x1531, 0xac2: 0x1561, 0xac3: 0x1591, 0xac4: 0x15c1, 0xac5: 0x15f1,
1075 0xac6: 0x1621, 0xac7: 0x1651, 0xac8: 0x1501, 0xac9: 0x1531, 0xaca: 0x1561, 0xacb: 0x1591,
1076 0xacc: 0x15c1, 0xacd: 0x15f1, 0xace: 0x1621, 0xacf: 0x1651, 0xad0: 0x1681, 0xad1: 0x16b1,
1077 0xad2: 0x16e1, 0xad3: 0x1711, 0xad4: 0x1741, 0xad5: 0x1771, 0xad6: 0x17a1, 0xad7: 0x17d1,
1078 0xad8: 0x1681, 0xad9: 0x16b1, 0xada: 0x16e1, 0xadb: 0x1711, 0xadc: 0x1741, 0xadd: 0x1771,
1079 0xade: 0x17a1, 0xadf: 0x17d1, 0xae0: 0x1801, 0xae1: 0x1831, 0xae2: 0x1861, 0xae3: 0x1891,
1080 0xae4: 0x18c1, 0xae5: 0x18f1, 0xae6: 0x1921, 0xae7: 0x1951, 0xae8: 0x1801, 0xae9: 0x1831,
1081 0xaea: 0x1861, 0xaeb: 0x1891, 0xaec: 0x18c1, 0xaed: 0x18f1, 0xaee: 0x1921, 0xaef: 0x1951,
1082 0xaf0: 0x0008, 0xaf1: 0x0008, 0xaf2: 0x1981, 0xaf3: 0x19b1, 0xaf4: 0x19d9, 0xaf5: 0x0040,
1083 0xaf6: 0x0008, 0xaf7: 0x1a01, 0xaf8: 0xe045, 0xaf9: 0xe045, 0xafa: 0x064d, 0xafb: 0x1459,
1084 0xafc: 0x19b1, 0xafd: 0x0666, 0xafe: 0x1a31, 0xaff: 0x0686,
1085 // Block 0x2c, offset 0xb00
1086 0xb00: 0x06a6, 0xb01: 0x1a4a, 0xb02: 0x1a79, 0xb03: 0x1aa9, 0xb04: 0x1ad1, 0xb05: 0x0040,
1087 0xb06: 0x0008, 0xb07: 0x1af9, 0xb08: 0x06c5, 0xb09: 0x1471, 0xb0a: 0x06dd, 0xb0b: 0x1489,
1088 0xb0c: 0x1aa9, 0xb0d: 0x1b2a, 0xb0e: 0x1b5a, 0xb0f: 0x1b8a, 0xb10: 0x0008, 0xb11: 0x0008,
1089 0xb12: 0x0008, 0xb13: 0x1bb9, 0xb14: 0x0040, 0xb15: 0x0040, 0xb16: 0x0008, 0xb17: 0x0008,
1090 0xb18: 0xe045, 0xb19: 0xe045, 0xb1a: 0x06f5, 0xb1b: 0x14a1, 0xb1c: 0x0040, 0xb1d: 0x1bd2,
1091 0xb1e: 0x1c02, 0xb1f: 0x1c32, 0xb20: 0x0008, 0xb21: 0x0008, 0xb22: 0x0008, 0xb23: 0x1c61,
1092 0xb24: 0x0008, 0xb25: 0x0008, 0xb26: 0x0008, 0xb27: 0x0008, 0xb28: 0xe045, 0xb29: 0xe045,
1093 0xb2a: 0x070d, 0xb2b: 0x14d1, 0xb2c: 0xe04d, 0xb2d: 0x1c7a, 0xb2e: 0x03d2, 0xb2f: 0x1caa,
1094 0xb30: 0x0040, 0xb31: 0x0040, 0xb32: 0x1cb9, 0xb33: 0x1ce9, 0xb34: 0x1d11, 0xb35: 0x0040,
1095 0xb36: 0x0008, 0xb37: 0x1d39, 0xb38: 0x0725, 0xb39: 0x14b9, 0xb3a: 0x0515, 0xb3b: 0x14e9,
1096 0xb3c: 0x1ce9, 0xb3d: 0x073e, 0xb3e: 0x075e, 0xb3f: 0x0040,
1097 // Block 0x2d, offset 0xb40
1098 0xb40: 0x000a, 0xb41: 0x000a, 0xb42: 0x000a, 0xb43: 0x000a, 0xb44: 0x000a, 0xb45: 0x000a,
1099 0xb46: 0x000a, 0xb47: 0x000a, 0xb48: 0x000a, 0xb49: 0x000a, 0xb4a: 0x000a, 0xb4b: 0x03c0,
1100 0xb4c: 0x0003, 0xb4d: 0x0003, 0xb4e: 0x0340, 0xb4f: 0x0340, 0xb50: 0x0018, 0xb51: 0xe00d,
1101 0xb52: 0x0018, 0xb53: 0x0018, 0xb54: 0x0018, 0xb55: 0x0018, 0xb56: 0x0018, 0xb57: 0x077e,
1102 0xb58: 0x0018, 0xb59: 0x0018, 0xb5a: 0x0018, 0xb5b: 0x0018, 0xb5c: 0x0018, 0xb5d: 0x0018,
1103 0xb5e: 0x0018, 0xb5f: 0x0018, 0xb60: 0x0018, 0xb61: 0x0018, 0xb62: 0x0018, 0xb63: 0x0018,
1104 0xb64: 0x0040, 0xb65: 0x0040, 0xb66: 0x0040, 0xb67: 0x0018, 0xb68: 0x0040, 0xb69: 0x0040,
1105 0xb6a: 0x0340, 0xb6b: 0x0340, 0xb6c: 0x0340, 0xb6d: 0x0340, 0xb6e: 0x0340, 0xb6f: 0x000a,
1106 0xb70: 0x0018, 0xb71: 0x0018, 0xb72: 0x0018, 0xb73: 0x1d69, 0xb74: 0x1da1, 0xb75: 0x0018,
1107 0xb76: 0x1df1, 0xb77: 0x1e29, 0xb78: 0x0018, 0xb79: 0x0018, 0xb7a: 0x0018, 0xb7b: 0x0018,
1108 0xb7c: 0x1e7a, 0xb7d: 0x0018, 0xb7e: 0x079e, 0xb7f: 0x0018,
1109 // Block 0x2e, offset 0xb80
1110 0xb80: 0x0018, 0xb81: 0x0018, 0xb82: 0x0018, 0xb83: 0x0018, 0xb84: 0x0018, 0xb85: 0x0018,
1111 0xb86: 0x0018, 0xb87: 0x1e92, 0xb88: 0x1eaa, 0xb89: 0x1ec2, 0xb8a: 0x0018, 0xb8b: 0x0018,
1112 0xb8c: 0x0018, 0xb8d: 0x0018, 0xb8e: 0x0018, 0xb8f: 0x0018, 0xb90: 0x0018, 0xb91: 0x0018,
1113 0xb92: 0x0018, 0xb93: 0x0018, 0xb94: 0x0018, 0xb95: 0x0018, 0xb96: 0x0018, 0xb97: 0x1ed9,
1114 0xb98: 0x0018, 0xb99: 0x0018, 0xb9a: 0x0018, 0xb9b: 0x0018, 0xb9c: 0x0018, 0xb9d: 0x0018,
1115 0xb9e: 0x0018, 0xb9f: 0x000a, 0xba0: 0x03c0, 0xba1: 0x0340, 0xba2: 0x0340, 0xba3: 0x0340,
1116 0xba4: 0x03c0, 0xba5: 0x0040, 0xba6: 0x0040, 0xba7: 0x0040, 0xba8: 0x0040, 0xba9: 0x0040,
1117 0xbaa: 0x0340, 0xbab: 0x0340, 0xbac: 0x0340, 0xbad: 0x0340, 0xbae: 0x0340, 0xbaf: 0x0340,
1118 0xbb0: 0x1f41, 0xbb1: 0x0f41, 0xbb2: 0x0040, 0xbb3: 0x0040, 0xbb4: 0x1f51, 0xbb5: 0x1f61,
1119 0xbb6: 0x1f71, 0xbb7: 0x1f81, 0xbb8: 0x1f91, 0xbb9: 0x1fa1, 0xbba: 0x1fb2, 0xbbb: 0x07bd,
1120 0xbbc: 0x1fc2, 0xbbd: 0x1fd2, 0xbbe: 0x1fe2, 0xbbf: 0x0f71,
1121 // Block 0x2f, offset 0xbc0
1122 0xbc0: 0x1f41, 0xbc1: 0x00c9, 0xbc2: 0x0069, 0xbc3: 0x0079, 0xbc4: 0x1f51, 0xbc5: 0x1f61,
1123 0xbc6: 0x1f71, 0xbc7: 0x1f81, 0xbc8: 0x1f91, 0xbc9: 0x1fa1, 0xbca: 0x1fb2, 0xbcb: 0x07d5,
1124 0xbcc: 0x1fc2, 0xbcd: 0x1fd2, 0xbce: 0x1fe2, 0xbcf: 0x0040, 0xbd0: 0x0039, 0xbd1: 0x0f09,
1125 0xbd2: 0x00d9, 0xbd3: 0x0369, 0xbd4: 0x0ff9, 0xbd5: 0x0249, 0xbd6: 0x0f51, 0xbd7: 0x0359,
1126 0xbd8: 0x0f61, 0xbd9: 0x0f71, 0xbda: 0x0f99, 0xbdb: 0x01d9, 0xbdc: 0x0fa9, 0xbdd: 0x0040,
1127 0xbde: 0x0040, 0xbdf: 0x0040, 0xbe0: 0x0018, 0xbe1: 0x0018, 0xbe2: 0x0018, 0xbe3: 0x0018,
1128 0xbe4: 0x0018, 0xbe5: 0x0018, 0xbe6: 0x0018, 0xbe7: 0x0018, 0xbe8: 0x1ff1, 0xbe9: 0x0018,
1129 0xbea: 0x0018, 0xbeb: 0x0018, 0xbec: 0x0018, 0xbed: 0x0018, 0xbee: 0x0018, 0xbef: 0x0018,
1130 0xbf0: 0x0018, 0xbf1: 0x0018, 0xbf2: 0x0018, 0xbf3: 0x0018, 0xbf4: 0x0018, 0xbf5: 0x0018,
1131 0xbf6: 0x0018, 0xbf7: 0x0018, 0xbf8: 0x0018, 0xbf9: 0x0018, 0xbfa: 0x0018, 0xbfb: 0x0018,
1132 0xbfc: 0x0018, 0xbfd: 0x0018, 0xbfe: 0x0018, 0xbff: 0x0040,
1133 // Block 0x30, offset 0xc00
1134 0xc00: 0x07ee, 0xc01: 0x080e, 0xc02: 0x1159, 0xc03: 0x082d, 0xc04: 0x0018, 0xc05: 0x084e,
1135 0xc06: 0x086e, 0xc07: 0x1011, 0xc08: 0x0018, 0xc09: 0x088d, 0xc0a: 0x0f31, 0xc0b: 0x0249,
1136 0xc0c: 0x0249, 0xc0d: 0x0249, 0xc0e: 0x0249, 0xc0f: 0x2009, 0xc10: 0x0f41, 0xc11: 0x0f41,
1137 0xc12: 0x0359, 0xc13: 0x0359, 0xc14: 0x0018, 0xc15: 0x0f71, 0xc16: 0x2021, 0xc17: 0x0018,
1138 0xc18: 0x0018, 0xc19: 0x0f99, 0xc1a: 0x2039, 0xc1b: 0x0269, 0xc1c: 0x0269, 0xc1d: 0x0269,
1139 0xc1e: 0x0018, 0xc1f: 0x0018, 0xc20: 0x2049, 0xc21: 0x08ad, 0xc22: 0x2061, 0xc23: 0x0018,
1140 0xc24: 0x13d1, 0xc25: 0x0018, 0xc26: 0x2079, 0xc27: 0x0018, 0xc28: 0x13d1, 0xc29: 0x0018,
1141 0xc2a: 0x0f51, 0xc2b: 0x2091, 0xc2c: 0x0ee9, 0xc2d: 0x1159, 0xc2e: 0x0018, 0xc2f: 0x0f09,
1142 0xc30: 0x0f09, 0xc31: 0x1199, 0xc32: 0x0040, 0xc33: 0x0f61, 0xc34: 0x00d9, 0xc35: 0x20a9,
1143 0xc36: 0x20c1, 0xc37: 0x20d9, 0xc38: 0x20f1, 0xc39: 0x0f41, 0xc3a: 0x0018, 0xc3b: 0x08cd,
1144 0xc3c: 0x2109, 0xc3d: 0x10b1, 0xc3e: 0x10b1, 0xc3f: 0x2109,
1145 // Block 0x31, offset 0xc40
1146 0xc40: 0x08ed, 0xc41: 0x0018, 0xc42: 0x0018, 0xc43: 0x0018, 0xc44: 0x0018, 0xc45: 0x0ef9,
1147 0xc46: 0x0ef9, 0xc47: 0x0f09, 0xc48: 0x0f41, 0xc49: 0x0259, 0xc4a: 0x0018, 0xc4b: 0x0018,
1148 0xc4c: 0x0018, 0xc4d: 0x0018, 0xc4e: 0x0008, 0xc4f: 0x0018, 0xc50: 0x2121, 0xc51: 0x2151,
1149 0xc52: 0x2181, 0xc53: 0x21b9, 0xc54: 0x21e9, 0xc55: 0x2219, 0xc56: 0x2249, 0xc57: 0x2279,
1150 0xc58: 0x22a9, 0xc59: 0x22d9, 0xc5a: 0x2309, 0xc5b: 0x2339, 0xc5c: 0x2369, 0xc5d: 0x2399,
1151 0xc5e: 0x23c9, 0xc5f: 0x23f9, 0xc60: 0x0f41, 0xc61: 0x2421, 0xc62: 0x0905, 0xc63: 0x2439,
1152 0xc64: 0x1089, 0xc65: 0x2451, 0xc66: 0x0925, 0xc67: 0x2469, 0xc68: 0x2491, 0xc69: 0x0369,
1153 0xc6a: 0x24a9, 0xc6b: 0x0945, 0xc6c: 0x0359, 0xc6d: 0x1159, 0xc6e: 0x0ef9, 0xc6f: 0x0f61,
1154 0xc70: 0x0f41, 0xc71: 0x2421, 0xc72: 0x0965, 0xc73: 0x2439, 0xc74: 0x1089, 0xc75: 0x2451,
1155 0xc76: 0x0985, 0xc77: 0x2469, 0xc78: 0x2491, 0xc79: 0x0369, 0xc7a: 0x24a9, 0xc7b: 0x09a5,
1156 0xc7c: 0x0359, 0xc7d: 0x1159, 0xc7e: 0x0ef9, 0xc7f: 0x0f61,
1157 // Block 0x32, offset 0xc80
1158 0xc80: 0x0018, 0xc81: 0x0018, 0xc82: 0x0018, 0xc83: 0x0018, 0xc84: 0x0018, 0xc85: 0x0018,
1159 0xc86: 0x0018, 0xc87: 0x0018, 0xc88: 0x0018, 0xc89: 0x0018, 0xc8a: 0x0018, 0xc8b: 0x0040,
1160 0xc8c: 0x0040, 0xc8d: 0x0040, 0xc8e: 0x0040, 0xc8f: 0x0040, 0xc90: 0x0040, 0xc91: 0x0040,
1161 0xc92: 0x0040, 0xc93: 0x0040, 0xc94: 0x0040, 0xc95: 0x0040, 0xc96: 0x0040, 0xc97: 0x0040,
1162 0xc98: 0x0040, 0xc99: 0x0040, 0xc9a: 0x0040, 0xc9b: 0x0040, 0xc9c: 0x0040, 0xc9d: 0x0040,
1163 0xc9e: 0x0040, 0xc9f: 0x0040, 0xca0: 0x00c9, 0xca1: 0x0069, 0xca2: 0x0079, 0xca3: 0x1f51,
1164 0xca4: 0x1f61, 0xca5: 0x1f71, 0xca6: 0x1f81, 0xca7: 0x1f91, 0xca8: 0x1fa1, 0xca9: 0x2601,
1165 0xcaa: 0x2619, 0xcab: 0x2631, 0xcac: 0x2649, 0xcad: 0x2661, 0xcae: 0x2679, 0xcaf: 0x2691,
1166 0xcb0: 0x26a9, 0xcb1: 0x26c1, 0xcb2: 0x26d9, 0xcb3: 0x26f1, 0xcb4: 0x0a06, 0xcb5: 0x0a26,
1167 0xcb6: 0x0a46, 0xcb7: 0x0a66, 0xcb8: 0x0a86, 0xcb9: 0x0aa6, 0xcba: 0x0ac6, 0xcbb: 0x0ae6,
1168 0xcbc: 0x0b06, 0xcbd: 0x270a, 0xcbe: 0x2732, 0xcbf: 0x275a,
1169 // Block 0x33, offset 0xcc0
1170 0xcc0: 0x2782, 0xcc1: 0x27aa, 0xcc2: 0x27d2, 0xcc3: 0x27fa, 0xcc4: 0x2822, 0xcc5: 0x284a,
1171 0xcc6: 0x2872, 0xcc7: 0x289a, 0xcc8: 0x0040, 0xcc9: 0x0040, 0xcca: 0x0040, 0xccb: 0x0040,
1172 0xccc: 0x0040, 0xccd: 0x0040, 0xcce: 0x0040, 0xccf: 0x0040, 0xcd0: 0x0040, 0xcd1: 0x0040,
1173 0xcd2: 0x0040, 0xcd3: 0x0040, 0xcd4: 0x0040, 0xcd5: 0x0040, 0xcd6: 0x0040, 0xcd7: 0x0040,
1174 0xcd8: 0x0040, 0xcd9: 0x0040, 0xcda: 0x0040, 0xcdb: 0x0040, 0xcdc: 0x0b26, 0xcdd: 0x0b46,
1175 0xcde: 0x0b66, 0xcdf: 0x0b86, 0xce0: 0x0ba6, 0xce1: 0x0bc6, 0xce2: 0x0be6, 0xce3: 0x0c06,
1176 0xce4: 0x0c26, 0xce5: 0x0c46, 0xce6: 0x0c66, 0xce7: 0x0c86, 0xce8: 0x0ca6, 0xce9: 0x0cc6,
1177 0xcea: 0x0ce6, 0xceb: 0x0d06, 0xcec: 0x0d26, 0xced: 0x0d46, 0xcee: 0x0d66, 0xcef: 0x0d86,
1178 0xcf0: 0x0da6, 0xcf1: 0x0dc6, 0xcf2: 0x0de6, 0xcf3: 0x0e06, 0xcf4: 0x0e26, 0xcf5: 0x0e46,
1179 0xcf6: 0x0039, 0xcf7: 0x0ee9, 0xcf8: 0x1159, 0xcf9: 0x0ef9, 0xcfa: 0x0f09, 0xcfb: 0x1199,
1180 0xcfc: 0x0f31, 0xcfd: 0x0249, 0xcfe: 0x0f41, 0xcff: 0x0259,
1181 // Block 0x34, offset 0xd00
1182 0xd00: 0x0f51, 0xd01: 0x0359, 0xd02: 0x0f61, 0xd03: 0x0f71, 0xd04: 0x00d9, 0xd05: 0x0f99,
1183 0xd06: 0x2039, 0xd07: 0x0269, 0xd08: 0x01d9, 0xd09: 0x0fa9, 0xd0a: 0x0fb9, 0xd0b: 0x1089,
1184 0xd0c: 0x0279, 0xd0d: 0x0369, 0xd0e: 0x0289, 0xd0f: 0x13d1, 0xd10: 0x0039, 0xd11: 0x0ee9,
1185 0xd12: 0x1159, 0xd13: 0x0ef9, 0xd14: 0x0f09, 0xd15: 0x1199, 0xd16: 0x0f31, 0xd17: 0x0249,
1186 0xd18: 0x0f41, 0xd19: 0x0259, 0xd1a: 0x0f51, 0xd1b: 0x0359, 0xd1c: 0x0f61, 0xd1d: 0x0f71,
1187 0xd1e: 0x00d9, 0xd1f: 0x0f99, 0xd20: 0x2039, 0xd21: 0x0269, 0xd22: 0x01d9, 0xd23: 0x0fa9,
1188 0xd24: 0x0fb9, 0xd25: 0x1089, 0xd26: 0x0279, 0xd27: 0x0369, 0xd28: 0x0289, 0xd29: 0x13d1,
1189 0xd2a: 0x1f41, 0xd2b: 0x0018, 0xd2c: 0x0018, 0xd2d: 0x0018, 0xd2e: 0x0018, 0xd2f: 0x0018,
1190 0xd30: 0x0018, 0xd31: 0x0018, 0xd32: 0x0018, 0xd33: 0x0018, 0xd34: 0x0018, 0xd35: 0x0018,
1191 0xd36: 0x0018, 0xd37: 0x0018, 0xd38: 0x0018, 0xd39: 0x0018, 0xd3a: 0x0018, 0xd3b: 0x0018,
1192 0xd3c: 0x0018, 0xd3d: 0x0018, 0xd3e: 0x0018, 0xd3f: 0x0018,
1193 // Block 0x35, offset 0xd40
1194 0xd40: 0x0008, 0xd41: 0x0008, 0xd42: 0x0008, 0xd43: 0x0008, 0xd44: 0x0008, 0xd45: 0x0008,
1195 0xd46: 0x0008, 0xd47: 0x0008, 0xd48: 0x0008, 0xd49: 0x0008, 0xd4a: 0x0008, 0xd4b: 0x0008,
1196 0xd4c: 0x0008, 0xd4d: 0x0008, 0xd4e: 0x0008, 0xd4f: 0x0008, 0xd50: 0x0008, 0xd51: 0x0008,
1197 0xd52: 0x0008, 0xd53: 0x0008, 0xd54: 0x0008, 0xd55: 0x0008, 0xd56: 0x0008, 0xd57: 0x0008,
1198 0xd58: 0x0008, 0xd59: 0x0008, 0xd5a: 0x0008, 0xd5b: 0x0008, 0xd5c: 0x0008, 0xd5d: 0x0008,
1199 0xd5e: 0x0008, 0xd5f: 0x0040, 0xd60: 0xe00d, 0xd61: 0x0008, 0xd62: 0x2971, 0xd63: 0x0ebd,
1200 0xd64: 0x2989, 0xd65: 0x0008, 0xd66: 0x0008, 0xd67: 0xe07d, 0xd68: 0x0008, 0xd69: 0xe01d,
1201 0xd6a: 0x0008, 0xd6b: 0xe03d, 0xd6c: 0x0008, 0xd6d: 0x0fe1, 0xd6e: 0x1281, 0xd6f: 0x0fc9,
1202 0xd70: 0x1141, 0xd71: 0x0008, 0xd72: 0xe00d, 0xd73: 0x0008, 0xd74: 0x0008, 0xd75: 0xe01d,
1203 0xd76: 0x0008, 0xd77: 0x0008, 0xd78: 0x0008, 0xd79: 0x0008, 0xd7a: 0x0008, 0xd7b: 0x0008,
1204 0xd7c: 0x0259, 0xd7d: 0x1089, 0xd7e: 0x29a1, 0xd7f: 0x29b9,
1205 // Block 0x36, offset 0xd80
1206 0xd80: 0xe00d, 0xd81: 0x0008, 0xd82: 0xe00d, 0xd83: 0x0008, 0xd84: 0xe00d, 0xd85: 0x0008,
1207 0xd86: 0xe00d, 0xd87: 0x0008, 0xd88: 0xe00d, 0xd89: 0x0008, 0xd8a: 0xe00d, 0xd8b: 0x0008,
1208 0xd8c: 0xe00d, 0xd8d: 0x0008, 0xd8e: 0xe00d, 0xd8f: 0x0008, 0xd90: 0xe00d, 0xd91: 0x0008,
1209 0xd92: 0xe00d, 0xd93: 0x0008, 0xd94: 0xe00d, 0xd95: 0x0008, 0xd96: 0xe00d, 0xd97: 0x0008,
1210 0xd98: 0xe00d, 0xd99: 0x0008, 0xd9a: 0xe00d, 0xd9b: 0x0008, 0xd9c: 0xe00d, 0xd9d: 0x0008,
1211 0xd9e: 0xe00d, 0xd9f: 0x0008, 0xda0: 0xe00d, 0xda1: 0x0008, 0xda2: 0xe00d, 0xda3: 0x0008,
1212 0xda4: 0x0008, 0xda5: 0x0018, 0xda6: 0x0018, 0xda7: 0x0018, 0xda8: 0x0018, 0xda9: 0x0018,
1213 0xdaa: 0x0018, 0xdab: 0xe03d, 0xdac: 0x0008, 0xdad: 0xe01d, 0xdae: 0x0008, 0xdaf: 0x1308,
1214 0xdb0: 0x1308, 0xdb1: 0x1308, 0xdb2: 0xe00d, 0xdb3: 0x0008, 0xdb4: 0x0040, 0xdb5: 0x0040,
1215 0xdb6: 0x0040, 0xdb7: 0x0040, 0xdb8: 0x0040, 0xdb9: 0x0018, 0xdba: 0x0018, 0xdbb: 0x0018,
1216 0xdbc: 0x0018, 0xdbd: 0x0018, 0xdbe: 0x0018, 0xdbf: 0x0018,
1217 // Block 0x37, offset 0xdc0
1218 0xdc0: 0x26fd, 0xdc1: 0x271d, 0xdc2: 0x273d, 0xdc3: 0x275d, 0xdc4: 0x277d, 0xdc5: 0x279d,
1219 0xdc6: 0x27bd, 0xdc7: 0x27dd, 0xdc8: 0x27fd, 0xdc9: 0x281d, 0xdca: 0x283d, 0xdcb: 0x285d,
1220 0xdcc: 0x287d, 0xdcd: 0x289d, 0xdce: 0x28bd, 0xdcf: 0x28dd, 0xdd0: 0x28fd, 0xdd1: 0x291d,
1221 0xdd2: 0x293d, 0xdd3: 0x295d, 0xdd4: 0x297d, 0xdd5: 0x299d, 0xdd6: 0x0040, 0xdd7: 0x0040,
1222 0xdd8: 0x0040, 0xdd9: 0x0040, 0xdda: 0x0040, 0xddb: 0x0040, 0xddc: 0x0040, 0xddd: 0x0040,
1223 0xdde: 0x0040, 0xddf: 0x0040, 0xde0: 0x0040, 0xde1: 0x0040, 0xde2: 0x0040, 0xde3: 0x0040,
1224 0xde4: 0x0040, 0xde5: 0x0040, 0xde6: 0x0040, 0xde7: 0x0040, 0xde8: 0x0040, 0xde9: 0x0040,
1225 0xdea: 0x0040, 0xdeb: 0x0040, 0xdec: 0x0040, 0xded: 0x0040, 0xdee: 0x0040, 0xdef: 0x0040,
1226 0xdf0: 0x0040, 0xdf1: 0x0040, 0xdf2: 0x0040, 0xdf3: 0x0040, 0xdf4: 0x0040, 0xdf5: 0x0040,
1227 0xdf6: 0x0040, 0xdf7: 0x0040, 0xdf8: 0x0040, 0xdf9: 0x0040, 0xdfa: 0x0040, 0xdfb: 0x0040,
1228 0xdfc: 0x0040, 0xdfd: 0x0040, 0xdfe: 0x0040, 0xdff: 0x0040,
1229 // Block 0x38, offset 0xe00
1230 0xe00: 0x000a, 0xe01: 0x0018, 0xe02: 0x29d1, 0xe03: 0x0018, 0xe04: 0x0018, 0xe05: 0x0008,
1231 0xe06: 0x0008, 0xe07: 0x0008, 0xe08: 0x0018, 0xe09: 0x0018, 0xe0a: 0x0018, 0xe0b: 0x0018,
1232 0xe0c: 0x0018, 0xe0d: 0x0018, 0xe0e: 0x0018, 0xe0f: 0x0018, 0xe10: 0x0018, 0xe11: 0x0018,
1233 0xe12: 0x0018, 0xe13: 0x0018, 0xe14: 0x0018, 0xe15: 0x0018, 0xe16: 0x0018, 0xe17: 0x0018,
1234 0xe18: 0x0018, 0xe19: 0x0018, 0xe1a: 0x0018, 0xe1b: 0x0018, 0xe1c: 0x0018, 0xe1d: 0x0018,
1235 0xe1e: 0x0018, 0xe1f: 0x0018, 0xe20: 0x0018, 0xe21: 0x0018, 0xe22: 0x0018, 0xe23: 0x0018,
1236 0xe24: 0x0018, 0xe25: 0x0018, 0xe26: 0x0018, 0xe27: 0x0018, 0xe28: 0x0018, 0xe29: 0x0018,
1237 0xe2a: 0x1308, 0xe2b: 0x1308, 0xe2c: 0x1308, 0xe2d: 0x1308, 0xe2e: 0x1018, 0xe2f: 0x1018,
1238 0xe30: 0x0018, 0xe31: 0x0018, 0xe32: 0x0018, 0xe33: 0x0018, 0xe34: 0x0018, 0xe35: 0x0018,
1239 0xe36: 0xe125, 0xe37: 0x0018, 0xe38: 0x29bd, 0xe39: 0x29dd, 0xe3a: 0x29fd, 0xe3b: 0x0018,
1240 0xe3c: 0x0008, 0xe3d: 0x0018, 0xe3e: 0x0018, 0xe3f: 0x0018,
1241 // Block 0x39, offset 0xe40
1242 0xe40: 0x2b3d, 0xe41: 0x2b5d, 0xe42: 0x2b7d, 0xe43: 0x2b9d, 0xe44: 0x2bbd, 0xe45: 0x2bdd,
1243 0xe46: 0x2bdd, 0xe47: 0x2bdd, 0xe48: 0x2bfd, 0xe49: 0x2bfd, 0xe4a: 0x2bfd, 0xe4b: 0x2bfd,
1244 0xe4c: 0x2c1d, 0xe4d: 0x2c1d, 0xe4e: 0x2c1d, 0xe4f: 0x2c3d, 0xe50: 0x2c5d, 0xe51: 0x2c5d,
1245 0xe52: 0x2a7d, 0xe53: 0x2a7d, 0xe54: 0x2c5d, 0xe55: 0x2c5d, 0xe56: 0x2c7d, 0xe57: 0x2c7d,
1246 0xe58: 0x2c5d, 0xe59: 0x2c5d, 0xe5a: 0x2a7d, 0xe5b: 0x2a7d, 0xe5c: 0x2c5d, 0xe5d: 0x2c5d,
1247 0xe5e: 0x2c3d, 0xe5f: 0x2c3d, 0xe60: 0x2c9d, 0xe61: 0x2c9d, 0xe62: 0x2cbd, 0xe63: 0x2cbd,
1248 0xe64: 0x0040, 0xe65: 0x2cdd, 0xe66: 0x2cfd, 0xe67: 0x2d1d, 0xe68: 0x2d1d, 0xe69: 0x2d3d,
1249 0xe6a: 0x2d5d, 0xe6b: 0x2d7d, 0xe6c: 0x2d9d, 0xe6d: 0x2dbd, 0xe6e: 0x2ddd, 0xe6f: 0x2dfd,
1250 0xe70: 0x2e1d, 0xe71: 0x2e3d, 0xe72: 0x2e3d, 0xe73: 0x2e5d, 0xe74: 0x2e7d, 0xe75: 0x2e7d,
1251 0xe76: 0x2e9d, 0xe77: 0x2ebd, 0xe78: 0x2e5d, 0xe79: 0x2edd, 0xe7a: 0x2efd, 0xe7b: 0x2edd,
1252 0xe7c: 0x2e5d, 0xe7d: 0x2f1d, 0xe7e: 0x2f3d, 0xe7f: 0x2f5d,
1253 // Block 0x3a, offset 0xe80
1254 0xe80: 0x2f7d, 0xe81: 0x2f9d, 0xe82: 0x2cfd, 0xe83: 0x2cdd, 0xe84: 0x2fbd, 0xe85: 0x2fdd,
1255 0xe86: 0x2ffd, 0xe87: 0x301d, 0xe88: 0x303d, 0xe89: 0x305d, 0xe8a: 0x307d, 0xe8b: 0x309d,
1256 0xe8c: 0x30bd, 0xe8d: 0x30dd, 0xe8e: 0x30fd, 0xe8f: 0x0040, 0xe90: 0x0018, 0xe91: 0x0018,
1257 0xe92: 0x311d, 0xe93: 0x313d, 0xe94: 0x315d, 0xe95: 0x317d, 0xe96: 0x319d, 0xe97: 0x31bd,
1258 0xe98: 0x31dd, 0xe99: 0x31fd, 0xe9a: 0x321d, 0xe9b: 0x323d, 0xe9c: 0x315d, 0xe9d: 0x325d,
1259 0xe9e: 0x327d, 0xe9f: 0x329d, 0xea0: 0x0008, 0xea1: 0x0008, 0xea2: 0x0008, 0xea3: 0x0008,
1260 0xea4: 0x0008, 0xea5: 0x0008, 0xea6: 0x0008, 0xea7: 0x0008, 0xea8: 0x0008, 0xea9: 0x0008,
1261 0xeaa: 0x0008, 0xeab: 0x0008, 0xeac: 0x0008, 0xead: 0x0008, 0xeae: 0x0008, 0xeaf: 0x0008,
1262 0xeb0: 0x0008, 0xeb1: 0x0008, 0xeb2: 0x0008, 0xeb3: 0x0008, 0xeb4: 0x0008, 0xeb5: 0x0008,
1263 0xeb6: 0x0008, 0xeb7: 0x0008, 0xeb8: 0x0008, 0xeb9: 0x0008, 0xeba: 0x0008, 0xebb: 0x0040,
1264 0xebc: 0x0040, 0xebd: 0x0040, 0xebe: 0x0040, 0xebf: 0x0040,
1265 // Block 0x3b, offset 0xec0
1266 0xec0: 0x36a2, 0xec1: 0x36d2, 0xec2: 0x3702, 0xec3: 0x3732, 0xec4: 0x32bd, 0xec5: 0x32dd,
1267 0xec6: 0x32fd, 0xec7: 0x331d, 0xec8: 0x0018, 0xec9: 0x0018, 0xeca: 0x0018, 0xecb: 0x0018,
1268 0xecc: 0x0018, 0xecd: 0x0018, 0xece: 0x0018, 0xecf: 0x0018, 0xed0: 0x333d, 0xed1: 0x3761,
1269 0xed2: 0x3779, 0xed3: 0x3791, 0xed4: 0x37a9, 0xed5: 0x37c1, 0xed6: 0x37d9, 0xed7: 0x37f1,
1270 0xed8: 0x3809, 0xed9: 0x3821, 0xeda: 0x3839, 0xedb: 0x3851, 0xedc: 0x3869, 0xedd: 0x3881,
1271 0xede: 0x3899, 0xedf: 0x38b1, 0xee0: 0x335d, 0xee1: 0x337d, 0xee2: 0x339d, 0xee3: 0x33bd,
1272 0xee4: 0x33dd, 0xee5: 0x33dd, 0xee6: 0x33fd, 0xee7: 0x341d, 0xee8: 0x343d, 0xee9: 0x345d,
1273 0xeea: 0x347d, 0xeeb: 0x349d, 0xeec: 0x34bd, 0xeed: 0x34dd, 0xeee: 0x34fd, 0xeef: 0x351d,
1274 0xef0: 0x353d, 0xef1: 0x355d, 0xef2: 0x357d, 0xef3: 0x359d, 0xef4: 0x35bd, 0xef5: 0x35dd,
1275 0xef6: 0x35fd, 0xef7: 0x361d, 0xef8: 0x363d, 0xef9: 0x365d, 0xefa: 0x367d, 0xefb: 0x369d,
1276 0xefc: 0x38c9, 0xefd: 0x3901, 0xefe: 0x36bd, 0xeff: 0x0018,
1277 // Block 0x3c, offset 0xf00
1278 0xf00: 0x36dd, 0xf01: 0x36fd, 0xf02: 0x371d, 0xf03: 0x373d, 0xf04: 0x375d, 0xf05: 0x377d,
1279 0xf06: 0x379d, 0xf07: 0x37bd, 0xf08: 0x37dd, 0xf09: 0x37fd, 0xf0a: 0x381d, 0xf0b: 0x383d,
1280 0xf0c: 0x385d, 0xf0d: 0x387d, 0xf0e: 0x389d, 0xf0f: 0x38bd, 0xf10: 0x38dd, 0xf11: 0x38fd,
1281 0xf12: 0x391d, 0xf13: 0x393d, 0xf14: 0x395d, 0xf15: 0x397d, 0xf16: 0x399d, 0xf17: 0x39bd,
1282 0xf18: 0x39dd, 0xf19: 0x39fd, 0xf1a: 0x3a1d, 0xf1b: 0x3a3d, 0xf1c: 0x3a5d, 0xf1d: 0x3a7d,
1283 0xf1e: 0x3a9d, 0xf1f: 0x3abd, 0xf20: 0x3add, 0xf21: 0x3afd, 0xf22: 0x3b1d, 0xf23: 0x3b3d,
1284 0xf24: 0x3b5d, 0xf25: 0x3b7d, 0xf26: 0x127d, 0xf27: 0x3b9d, 0xf28: 0x3bbd, 0xf29: 0x3bdd,
1285 0xf2a: 0x3bfd, 0xf2b: 0x3c1d, 0xf2c: 0x3c3d, 0xf2d: 0x3c5d, 0xf2e: 0x239d, 0xf2f: 0x3c7d,
1286 0xf30: 0x3c9d, 0xf31: 0x3939, 0xf32: 0x3951, 0xf33: 0x3969, 0xf34: 0x3981, 0xf35: 0x3999,
1287 0xf36: 0x39b1, 0xf37: 0x39c9, 0xf38: 0x39e1, 0xf39: 0x39f9, 0xf3a: 0x3a11, 0xf3b: 0x3a29,
1288 0xf3c: 0x3a41, 0xf3d: 0x3a59, 0xf3e: 0x3a71, 0xf3f: 0x3a89,
1289 // Block 0x3d, offset 0xf40
1290 0xf40: 0x3aa1, 0xf41: 0x3ac9, 0xf42: 0x3af1, 0xf43: 0x3b19, 0xf44: 0x3b41, 0xf45: 0x3b69,
1291 0xf46: 0x3b91, 0xf47: 0x3bb9, 0xf48: 0x3be1, 0xf49: 0x3c09, 0xf4a: 0x3c39, 0xf4b: 0x3c69,
1292 0xf4c: 0x3c99, 0xf4d: 0x3cbd, 0xf4e: 0x3cb1, 0xf4f: 0x3cdd, 0xf50: 0x3cfd, 0xf51: 0x3d15,
1293 0xf52: 0x3d2d, 0xf53: 0x3d45, 0xf54: 0x3d5d, 0xf55: 0x3d5d, 0xf56: 0x3d45, 0xf57: 0x3d75,
1294 0xf58: 0x07bd, 0xf59: 0x3d8d, 0xf5a: 0x3da5, 0xf5b: 0x3dbd, 0xf5c: 0x3dd5, 0xf5d: 0x3ded,
1295 0xf5e: 0x3e05, 0xf5f: 0x3e1d, 0xf60: 0x3e35, 0xf61: 0x3e4d, 0xf62: 0x3e65, 0xf63: 0x3e7d,
1296 0xf64: 0x3e95, 0xf65: 0x3e95, 0xf66: 0x3ead, 0xf67: 0x3ead, 0xf68: 0x3ec5, 0xf69: 0x3ec5,
1297 0xf6a: 0x3edd, 0xf6b: 0x3ef5, 0xf6c: 0x3f0d, 0xf6d: 0x3f25, 0xf6e: 0x3f3d, 0xf6f: 0x3f3d,
1298 0xf70: 0x3f55, 0xf71: 0x3f55, 0xf72: 0x3f55, 0xf73: 0x3f6d, 0xf74: 0x3f85, 0xf75: 0x3f9d,
1299 0xf76: 0x3fb5, 0xf77: 0x3f9d, 0xf78: 0x3fcd, 0xf79: 0x3fe5, 0xf7a: 0x3f6d, 0xf7b: 0x3ffd,
1300 0xf7c: 0x4015, 0xf7d: 0x4015, 0xf7e: 0x4015, 0xf7f: 0x0040,
1301 // Block 0x3e, offset 0xf80
1302 0xf80: 0x3cc9, 0xf81: 0x3d31, 0xf82: 0x3d99, 0xf83: 0x3e01, 0xf84: 0x3e51, 0xf85: 0x3eb9,
1303 0xf86: 0x3f09, 0xf87: 0x3f59, 0xf88: 0x3fd9, 0xf89: 0x4041, 0xf8a: 0x4091, 0xf8b: 0x40e1,
1304 0xf8c: 0x4131, 0xf8d: 0x4199, 0xf8e: 0x4201, 0xf8f: 0x4251, 0xf90: 0x42a1, 0xf91: 0x42d9,
1305 0xf92: 0x4329, 0xf93: 0x4391, 0xf94: 0x43f9, 0xf95: 0x4431, 0xf96: 0x44b1, 0xf97: 0x4549,
1306 0xf98: 0x45c9, 0xf99: 0x4619, 0xf9a: 0x4699, 0xf9b: 0x4719, 0xf9c: 0x4781, 0xf9d: 0x47d1,
1307 0xf9e: 0x4821, 0xf9f: 0x4871, 0xfa0: 0x48d9, 0xfa1: 0x4959, 0xfa2: 0x49c1, 0xfa3: 0x4a11,
1308 0xfa4: 0x4a61, 0xfa5: 0x4ab1, 0xfa6: 0x4ae9, 0xfa7: 0x4b21, 0xfa8: 0x4b59, 0xfa9: 0x4b91,
1309 0xfaa: 0x4be1, 0xfab: 0x4c31, 0xfac: 0x4cb1, 0xfad: 0x4d01, 0xfae: 0x4d69, 0xfaf: 0x4de9,
1310 0xfb0: 0x4e39, 0xfb1: 0x4e71, 0xfb2: 0x4ea9, 0xfb3: 0x4f29, 0xfb4: 0x4f91, 0xfb5: 0x5011,
1311 0xfb6: 0x5061, 0xfb7: 0x50e1, 0xfb8: 0x5119, 0xfb9: 0x5169, 0xfba: 0x51b9, 0xfbb: 0x5209,
1312 0xfbc: 0x5259, 0xfbd: 0x52a9, 0xfbe: 0x5311, 0xfbf: 0x5361,
1313 // Block 0x3f, offset 0xfc0
1314 0xfc0: 0x5399, 0xfc1: 0x53e9, 0xfc2: 0x5439, 0xfc3: 0x5489, 0xfc4: 0x54f1, 0xfc5: 0x5541,
1315 0xfc6: 0x5591, 0xfc7: 0x55e1, 0xfc8: 0x5661, 0xfc9: 0x56c9, 0xfca: 0x5701, 0xfcb: 0x5781,
1316 0xfcc: 0x57b9, 0xfcd: 0x5821, 0xfce: 0x5889, 0xfcf: 0x58d9, 0xfd0: 0x5929, 0xfd1: 0x5979,
1317 0xfd2: 0x59e1, 0xfd3: 0x5a19, 0xfd4: 0x5a69, 0xfd5: 0x5ad1, 0xfd6: 0x5b09, 0xfd7: 0x5b89,
1318 0xfd8: 0x5bd9, 0xfd9: 0x5c01, 0xfda: 0x5c29, 0xfdb: 0x5c51, 0xfdc: 0x5c79, 0xfdd: 0x5ca1,
1319 0xfde: 0x5cc9, 0xfdf: 0x5cf1, 0xfe0: 0x5d19, 0xfe1: 0x5d41, 0xfe2: 0x5d69, 0xfe3: 0x5d99,
1320 0xfe4: 0x5dc9, 0xfe5: 0x5df9, 0xfe6: 0x5e29, 0xfe7: 0x5e59, 0xfe8: 0x5e89, 0xfe9: 0x5eb9,
1321 0xfea: 0x5ee9, 0xfeb: 0x5f19, 0xfec: 0x5f49, 0xfed: 0x5f79, 0xfee: 0x5fa9, 0xfef: 0x5fd9,
1322 0xff0: 0x6009, 0xff1: 0x402d, 0xff2: 0x6039, 0xff3: 0x6051, 0xff4: 0x404d, 0xff5: 0x6069,
1323 0xff6: 0x6081, 0xff7: 0x6099, 0xff8: 0x406d, 0xff9: 0x406d, 0xffa: 0x60b1, 0xffb: 0x60c9,
1324 0xffc: 0x6101, 0xffd: 0x6139, 0xffe: 0x6171, 0xfff: 0x61a9,
1325 // Block 0x40, offset 0x1000
1326 0x1000: 0x6211, 0x1001: 0x6229, 0x1002: 0x408d, 0x1003: 0x6241, 0x1004: 0x6259, 0x1005: 0x6271,
1327 0x1006: 0x6289, 0x1007: 0x62a1, 0x1008: 0x40ad, 0x1009: 0x62b9, 0x100a: 0x62e1, 0x100b: 0x62f9,
1328 0x100c: 0x40cd, 0x100d: 0x40cd, 0x100e: 0x6311, 0x100f: 0x6329, 0x1010: 0x6341, 0x1011: 0x40ed,
1329 0x1012: 0x410d, 0x1013: 0x412d, 0x1014: 0x414d, 0x1015: 0x416d, 0x1016: 0x6359, 0x1017: 0x6371,
1330 0x1018: 0x6389, 0x1019: 0x63a1, 0x101a: 0x63b9, 0x101b: 0x418d, 0x101c: 0x63d1, 0x101d: 0x63e9,
1331 0x101e: 0x6401, 0x101f: 0x41ad, 0x1020: 0x41cd, 0x1021: 0x6419, 0x1022: 0x41ed, 0x1023: 0x420d,
1332 0x1024: 0x422d, 0x1025: 0x6431, 0x1026: 0x424d, 0x1027: 0x6449, 0x1028: 0x6479, 0x1029: 0x6211,
1333 0x102a: 0x426d, 0x102b: 0x428d, 0x102c: 0x42ad, 0x102d: 0x42cd, 0x102e: 0x64b1, 0x102f: 0x64f1,
1334 0x1030: 0x6539, 0x1031: 0x6551, 0x1032: 0x42ed, 0x1033: 0x6569, 0x1034: 0x6581, 0x1035: 0x6599,
1335 0x1036: 0x430d, 0x1037: 0x65b1, 0x1038: 0x65c9, 0x1039: 0x65b1, 0x103a: 0x65e1, 0x103b: 0x65f9,
1336 0x103c: 0x432d, 0x103d: 0x6611, 0x103e: 0x6629, 0x103f: 0x6611,
1337 // Block 0x41, offset 0x1040
1338 0x1040: 0x434d, 0x1041: 0x436d, 0x1042: 0x0040, 0x1043: 0x6641, 0x1044: 0x6659, 0x1045: 0x6671,
1339 0x1046: 0x6689, 0x1047: 0x0040, 0x1048: 0x66c1, 0x1049: 0x66d9, 0x104a: 0x66f1, 0x104b: 0x6709,
1340 0x104c: 0x6721, 0x104d: 0x6739, 0x104e: 0x6401, 0x104f: 0x6751, 0x1050: 0x6769, 0x1051: 0x6781,
1341 0x1052: 0x438d, 0x1053: 0x6799, 0x1054: 0x6289, 0x1055: 0x43ad, 0x1056: 0x43cd, 0x1057: 0x67b1,
1342 0x1058: 0x0040, 0x1059: 0x43ed, 0x105a: 0x67c9, 0x105b: 0x67e1, 0x105c: 0x67f9, 0x105d: 0x6811,
1343 0x105e: 0x6829, 0x105f: 0x6859, 0x1060: 0x6889, 0x1061: 0x68b1, 0x1062: 0x68d9, 0x1063: 0x6901,
1344 0x1064: 0x6929, 0x1065: 0x6951, 0x1066: 0x6979, 0x1067: 0x69a1, 0x1068: 0x69c9, 0x1069: 0x69f1,
1345 0x106a: 0x6a21, 0x106b: 0x6a51, 0x106c: 0x6a81, 0x106d: 0x6ab1, 0x106e: 0x6ae1, 0x106f: 0x6b11,
1346 0x1070: 0x6b41, 0x1071: 0x6b71, 0x1072: 0x6ba1, 0x1073: 0x6bd1, 0x1074: 0x6c01, 0x1075: 0x6c31,
1347 0x1076: 0x6c61, 0x1077: 0x6c91, 0x1078: 0x6cc1, 0x1079: 0x6cf1, 0x107a: 0x6d21, 0x107b: 0x6d51,
1348 0x107c: 0x6d81, 0x107d: 0x6db1, 0x107e: 0x6de1, 0x107f: 0x440d,
1349 // Block 0x42, offset 0x1080
1350 0x1080: 0xe00d, 0x1081: 0x0008, 0x1082: 0xe00d, 0x1083: 0x0008, 0x1084: 0xe00d, 0x1085: 0x0008,
1351 0x1086: 0xe00d, 0x1087: 0x0008, 0x1088: 0xe00d, 0x1089: 0x0008, 0x108a: 0xe00d, 0x108b: 0x0008,
1352 0x108c: 0xe00d, 0x108d: 0x0008, 0x108e: 0xe00d, 0x108f: 0x0008, 0x1090: 0xe00d, 0x1091: 0x0008,
1353 0x1092: 0xe00d, 0x1093: 0x0008, 0x1094: 0xe00d, 0x1095: 0x0008, 0x1096: 0xe00d, 0x1097: 0x0008,
1354 0x1098: 0xe00d, 0x1099: 0x0008, 0x109a: 0xe00d, 0x109b: 0x0008, 0x109c: 0xe00d, 0x109d: 0x0008,
1355 0x109e: 0xe00d, 0x109f: 0x0008, 0x10a0: 0xe00d, 0x10a1: 0x0008, 0x10a2: 0xe00d, 0x10a3: 0x0008,
1356 0x10a4: 0xe00d, 0x10a5: 0x0008, 0x10a6: 0xe00d, 0x10a7: 0x0008, 0x10a8: 0xe00d, 0x10a9: 0x0008,
1357 0x10aa: 0xe00d, 0x10ab: 0x0008, 0x10ac: 0xe00d, 0x10ad: 0x0008, 0x10ae: 0x0008, 0x10af: 0x1308,
1358 0x10b0: 0x1318, 0x10b1: 0x1318, 0x10b2: 0x1318, 0x10b3: 0x0018, 0x10b4: 0x1308, 0x10b5: 0x1308,
1359 0x10b6: 0x1308, 0x10b7: 0x1308, 0x10b8: 0x1308, 0x10b9: 0x1308, 0x10ba: 0x1308, 0x10bb: 0x1308,
1360 0x10bc: 0x1308, 0x10bd: 0x1308, 0x10be: 0x0018, 0x10bf: 0x0008,
1361 // Block 0x43, offset 0x10c0
1362 0x10c0: 0xe00d, 0x10c1: 0x0008, 0x10c2: 0xe00d, 0x10c3: 0x0008, 0x10c4: 0xe00d, 0x10c5: 0x0008,
1363 0x10c6: 0xe00d, 0x10c7: 0x0008, 0x10c8: 0xe00d, 0x10c9: 0x0008, 0x10ca: 0xe00d, 0x10cb: 0x0008,
1364 0x10cc: 0xe00d, 0x10cd: 0x0008, 0x10ce: 0xe00d, 0x10cf: 0x0008, 0x10d0: 0xe00d, 0x10d1: 0x0008,
1365 0x10d2: 0xe00d, 0x10d3: 0x0008, 0x10d4: 0xe00d, 0x10d5: 0x0008, 0x10d6: 0xe00d, 0x10d7: 0x0008,
1366 0x10d8: 0xe00d, 0x10d9: 0x0008, 0x10da: 0xe00d, 0x10db: 0x0008, 0x10dc: 0x0ea1, 0x10dd: 0x6e11,
1367 0x10de: 0x1308, 0x10df: 0x1308, 0x10e0: 0x0008, 0x10e1: 0x0008, 0x10e2: 0x0008, 0x10e3: 0x0008,
1368 0x10e4: 0x0008, 0x10e5: 0x0008, 0x10e6: 0x0008, 0x10e7: 0x0008, 0x10e8: 0x0008, 0x10e9: 0x0008,
1369 0x10ea: 0x0008, 0x10eb: 0x0008, 0x10ec: 0x0008, 0x10ed: 0x0008, 0x10ee: 0x0008, 0x10ef: 0x0008,
1370 0x10f0: 0x0008, 0x10f1: 0x0008, 0x10f2: 0x0008, 0x10f3: 0x0008, 0x10f4: 0x0008, 0x10f5: 0x0008,
1371 0x10f6: 0x0008, 0x10f7: 0x0008, 0x10f8: 0x0008, 0x10f9: 0x0008, 0x10fa: 0x0008, 0x10fb: 0x0008,
1372 0x10fc: 0x0008, 0x10fd: 0x0008, 0x10fe: 0x0008, 0x10ff: 0x0008,
1373 // Block 0x44, offset 0x1100
1374 0x1100: 0x0018, 0x1101: 0x0018, 0x1102: 0x0018, 0x1103: 0x0018, 0x1104: 0x0018, 0x1105: 0x0018,
1375 0x1106: 0x0018, 0x1107: 0x0018, 0x1108: 0x0018, 0x1109: 0x0018, 0x110a: 0x0018, 0x110b: 0x0018,
1376 0x110c: 0x0018, 0x110d: 0x0018, 0x110e: 0x0018, 0x110f: 0x0018, 0x1110: 0x0018, 0x1111: 0x0018,
1377 0x1112: 0x0018, 0x1113: 0x0018, 0x1114: 0x0018, 0x1115: 0x0018, 0x1116: 0x0018, 0x1117: 0x0008,
1378 0x1118: 0x0008, 0x1119: 0x0008, 0x111a: 0x0008, 0x111b: 0x0008, 0x111c: 0x0008, 0x111d: 0x0008,
1379 0x111e: 0x0008, 0x111f: 0x0008, 0x1120: 0x0018, 0x1121: 0x0018, 0x1122: 0xe00d, 0x1123: 0x0008,
1380 0x1124: 0xe00d, 0x1125: 0x0008, 0x1126: 0xe00d, 0x1127: 0x0008, 0x1128: 0xe00d, 0x1129: 0x0008,
1381 0x112a: 0xe00d, 0x112b: 0x0008, 0x112c: 0xe00d, 0x112d: 0x0008, 0x112e: 0xe00d, 0x112f: 0x0008,
1382 0x1130: 0x0008, 0x1131: 0x0008, 0x1132: 0xe00d, 0x1133: 0x0008, 0x1134: 0xe00d, 0x1135: 0x0008,
1383 0x1136: 0xe00d, 0x1137: 0x0008, 0x1138: 0xe00d, 0x1139: 0x0008, 0x113a: 0xe00d, 0x113b: 0x0008,
1384 0x113c: 0xe00d, 0x113d: 0x0008, 0x113e: 0xe00d, 0x113f: 0x0008,
1385 // Block 0x45, offset 0x1140
1386 0x1140: 0xe00d, 0x1141: 0x0008, 0x1142: 0xe00d, 0x1143: 0x0008, 0x1144: 0xe00d, 0x1145: 0x0008,
1387 0x1146: 0xe00d, 0x1147: 0x0008, 0x1148: 0xe00d, 0x1149: 0x0008, 0x114a: 0xe00d, 0x114b: 0x0008,
1388 0x114c: 0xe00d, 0x114d: 0x0008, 0x114e: 0xe00d, 0x114f: 0x0008, 0x1150: 0xe00d, 0x1151: 0x0008,
1389 0x1152: 0xe00d, 0x1153: 0x0008, 0x1154: 0xe00d, 0x1155: 0x0008, 0x1156: 0xe00d, 0x1157: 0x0008,
1390 0x1158: 0xe00d, 0x1159: 0x0008, 0x115a: 0xe00d, 0x115b: 0x0008, 0x115c: 0xe00d, 0x115d: 0x0008,
1391 0x115e: 0xe00d, 0x115f: 0x0008, 0x1160: 0xe00d, 0x1161: 0x0008, 0x1162: 0xe00d, 0x1163: 0x0008,
1392 0x1164: 0xe00d, 0x1165: 0x0008, 0x1166: 0xe00d, 0x1167: 0x0008, 0x1168: 0xe00d, 0x1169: 0x0008,
1393 0x116a: 0xe00d, 0x116b: 0x0008, 0x116c: 0xe00d, 0x116d: 0x0008, 0x116e: 0xe00d, 0x116f: 0x0008,
1394 0x1170: 0xe0fd, 0x1171: 0x0008, 0x1172: 0x0008, 0x1173: 0x0008, 0x1174: 0x0008, 0x1175: 0x0008,
1395 0x1176: 0x0008, 0x1177: 0x0008, 0x1178: 0x0008, 0x1179: 0xe01d, 0x117a: 0x0008, 0x117b: 0xe03d,
1396 0x117c: 0x0008, 0x117d: 0x442d, 0x117e: 0xe00d, 0x117f: 0x0008,
1397 // Block 0x46, offset 0x1180
1398 0x1180: 0xe00d, 0x1181: 0x0008, 0x1182: 0xe00d, 0x1183: 0x0008, 0x1184: 0xe00d, 0x1185: 0x0008,
1399 0x1186: 0xe00d, 0x1187: 0x0008, 0x1188: 0x0008, 0x1189: 0x0018, 0x118a: 0x0018, 0x118b: 0xe03d,
1400 0x118c: 0x0008, 0x118d: 0x11d9, 0x118e: 0x0008, 0x118f: 0x0008, 0x1190: 0xe00d, 0x1191: 0x0008,
1401 0x1192: 0xe00d, 0x1193: 0x0008, 0x1194: 0x0008, 0x1195: 0x0008, 0x1196: 0xe00d, 0x1197: 0x0008,
1402 0x1198: 0xe00d, 0x1199: 0x0008, 0x119a: 0xe00d, 0x119b: 0x0008, 0x119c: 0xe00d, 0x119d: 0x0008,
1403 0x119e: 0xe00d, 0x119f: 0x0008, 0x11a0: 0xe00d, 0x11a1: 0x0008, 0x11a2: 0xe00d, 0x11a3: 0x0008,
1404 0x11a4: 0xe00d, 0x11a5: 0x0008, 0x11a6: 0xe00d, 0x11a7: 0x0008, 0x11a8: 0xe00d, 0x11a9: 0x0008,
1405 0x11aa: 0x6e29, 0x11ab: 0x1029, 0x11ac: 0x11c1, 0x11ad: 0x6e41, 0x11ae: 0x1221, 0x11af: 0x0040,
1406 0x11b0: 0x6e59, 0x11b1: 0x6e71, 0x11b2: 0x1239, 0x11b3: 0x444d, 0x11b4: 0xe00d, 0x11b5: 0x0008,
1407 0x11b6: 0xe00d, 0x11b7: 0x0008, 0x11b8: 0x0040, 0x11b9: 0x0040, 0x11ba: 0x0040, 0x11bb: 0x0040,
1408 0x11bc: 0x0040, 0x11bd: 0x0040, 0x11be: 0x0040, 0x11bf: 0x0040,
1409 // Block 0x47, offset 0x11c0
1410 0x11c0: 0x64d5, 0x11c1: 0x64f5, 0x11c2: 0x6515, 0x11c3: 0x6535, 0x11c4: 0x6555, 0x11c5: 0x6575,
1411 0x11c6: 0x6595, 0x11c7: 0x65b5, 0x11c8: 0x65d5, 0x11c9: 0x65f5, 0x11ca: 0x6615, 0x11cb: 0x6635,
1412 0x11cc: 0x6655, 0x11cd: 0x6675, 0x11ce: 0x0008, 0x11cf: 0x0008, 0x11d0: 0x6695, 0x11d1: 0x0008,
1413 0x11d2: 0x66b5, 0x11d3: 0x0008, 0x11d4: 0x0008, 0x11d5: 0x66d5, 0x11d6: 0x66f5, 0x11d7: 0x6715,
1414 0x11d8: 0x6735, 0x11d9: 0x6755, 0x11da: 0x6775, 0x11db: 0x6795, 0x11dc: 0x67b5, 0x11dd: 0x67d5,
1415 0x11de: 0x67f5, 0x11df: 0x0008, 0x11e0: 0x6815, 0x11e1: 0x0008, 0x11e2: 0x6835, 0x11e3: 0x0008,
1416 0x11e4: 0x0008, 0x11e5: 0x6855, 0x11e6: 0x6875, 0x11e7: 0x0008, 0x11e8: 0x0008, 0x11e9: 0x0008,
1417 0x11ea: 0x6895, 0x11eb: 0x68b5, 0x11ec: 0x68d5, 0x11ed: 0x68f5, 0x11ee: 0x6915, 0x11ef: 0x6935,
1418 0x11f0: 0x6955, 0x11f1: 0x6975, 0x11f2: 0x6995, 0x11f3: 0x69b5, 0x11f4: 0x69d5, 0x11f5: 0x69f5,
1419 0x11f6: 0x6a15, 0x11f7: 0x6a35, 0x11f8: 0x6a55, 0x11f9: 0x6a75, 0x11fa: 0x6a95, 0x11fb: 0x6ab5,
1420 0x11fc: 0x6ad5, 0x11fd: 0x6af5, 0x11fe: 0x6b15, 0x11ff: 0x6b35,
1421 // Block 0x48, offset 0x1200
1422 0x1200: 0x7a95, 0x1201: 0x7ab5, 0x1202: 0x7ad5, 0x1203: 0x7af5, 0x1204: 0x7b15, 0x1205: 0x7b35,
1423 0x1206: 0x7b55, 0x1207: 0x7b75, 0x1208: 0x7b95, 0x1209: 0x7bb5, 0x120a: 0x7bd5, 0x120b: 0x7bf5,
1424 0x120c: 0x7c15, 0x120d: 0x7c35, 0x120e: 0x7c55, 0x120f: 0x6ec9, 0x1210: 0x6ef1, 0x1211: 0x6f19,
1425 0x1212: 0x7c75, 0x1213: 0x7c95, 0x1214: 0x7cb5, 0x1215: 0x6f41, 0x1216: 0x6f69, 0x1217: 0x6f91,
1426 0x1218: 0x7cd5, 0x1219: 0x7cf5, 0x121a: 0x0040, 0x121b: 0x0040, 0x121c: 0x0040, 0x121d: 0x0040,
1427 0x121e: 0x0040, 0x121f: 0x0040, 0x1220: 0x0040, 0x1221: 0x0040, 0x1222: 0x0040, 0x1223: 0x0040,
1428 0x1224: 0x0040, 0x1225: 0x0040, 0x1226: 0x0040, 0x1227: 0x0040, 0x1228: 0x0040, 0x1229: 0x0040,
1429 0x122a: 0x0040, 0x122b: 0x0040, 0x122c: 0x0040, 0x122d: 0x0040, 0x122e: 0x0040, 0x122f: 0x0040,
1430 0x1230: 0x0040, 0x1231: 0x0040, 0x1232: 0x0040, 0x1233: 0x0040, 0x1234: 0x0040, 0x1235: 0x0040,
1431 0x1236: 0x0040, 0x1237: 0x0040, 0x1238: 0x0040, 0x1239: 0x0040, 0x123a: 0x0040, 0x123b: 0x0040,
1432 0x123c: 0x0040, 0x123d: 0x0040, 0x123e: 0x0040, 0x123f: 0x0040,
1433 // Block 0x49, offset 0x1240
1434 0x1240: 0x6fb9, 0x1241: 0x6fd1, 0x1242: 0x6fe9, 0x1243: 0x7d15, 0x1244: 0x7d35, 0x1245: 0x7001,
1435 0x1246: 0x7001, 0x1247: 0x0040, 0x1248: 0x0040, 0x1249: 0x0040, 0x124a: 0x0040, 0x124b: 0x0040,
1436 0x124c: 0x0040, 0x124d: 0x0040, 0x124e: 0x0040, 0x124f: 0x0040, 0x1250: 0x0040, 0x1251: 0x0040,
1437 0x1252: 0x0040, 0x1253: 0x7019, 0x1254: 0x7041, 0x1255: 0x7069, 0x1256: 0x7091, 0x1257: 0x70b9,
1438 0x1258: 0x0040, 0x1259: 0x0040, 0x125a: 0x0040, 0x125b: 0x0040, 0x125c: 0x0040, 0x125d: 0x70e1,
1439 0x125e: 0x1308, 0x125f: 0x7109, 0x1260: 0x7131, 0x1261: 0x20a9, 0x1262: 0x20f1, 0x1263: 0x7149,
1440 0x1264: 0x7161, 0x1265: 0x7179, 0x1266: 0x7191, 0x1267: 0x71a9, 0x1268: 0x71c1, 0x1269: 0x1fb2,
1441 0x126a: 0x71d9, 0x126b: 0x7201, 0x126c: 0x7229, 0x126d: 0x7261, 0x126e: 0x7299, 0x126f: 0x72c1,
1442 0x1270: 0x72e9, 0x1271: 0x7311, 0x1272: 0x7339, 0x1273: 0x7361, 0x1274: 0x7389, 0x1275: 0x73b1,
1443 0x1276: 0x73d9, 0x1277: 0x0040, 0x1278: 0x7401, 0x1279: 0x7429, 0x127a: 0x7451, 0x127b: 0x7479,
1444 0x127c: 0x74a1, 0x127d: 0x0040, 0x127e: 0x74c9, 0x127f: 0x0040,
1445 // Block 0x4a, offset 0x1280
1446 0x1280: 0x74f1, 0x1281: 0x7519, 0x1282: 0x0040, 0x1283: 0x7541, 0x1284: 0x7569, 0x1285: 0x0040,
1447 0x1286: 0x7591, 0x1287: 0x75b9, 0x1288: 0x75e1, 0x1289: 0x7609, 0x128a: 0x7631, 0x128b: 0x7659,
1448 0x128c: 0x7681, 0x128d: 0x76a9, 0x128e: 0x76d1, 0x128f: 0x76f9, 0x1290: 0x7721, 0x1291: 0x7721,
1449 0x1292: 0x7739, 0x1293: 0x7739, 0x1294: 0x7739, 0x1295: 0x7739, 0x1296: 0x7751, 0x1297: 0x7751,
1450 0x1298: 0x7751, 0x1299: 0x7751, 0x129a: 0x7769, 0x129b: 0x7769, 0x129c: 0x7769, 0x129d: 0x7769,
1451 0x129e: 0x7781, 0x129f: 0x7781, 0x12a0: 0x7781, 0x12a1: 0x7781, 0x12a2: 0x7799, 0x12a3: 0x7799,
1452 0x12a4: 0x7799, 0x12a5: 0x7799, 0x12a6: 0x77b1, 0x12a7: 0x77b1, 0x12a8: 0x77b1, 0x12a9: 0x77b1,
1453 0x12aa: 0x77c9, 0x12ab: 0x77c9, 0x12ac: 0x77c9, 0x12ad: 0x77c9, 0x12ae: 0x77e1, 0x12af: 0x77e1,
1454 0x12b0: 0x77e1, 0x12b1: 0x77e1, 0x12b2: 0x77f9, 0x12b3: 0x77f9, 0x12b4: 0x77f9, 0x12b5: 0x77f9,
1455 0x12b6: 0x7811, 0x12b7: 0x7811, 0x12b8: 0x7811, 0x12b9: 0x7811, 0x12ba: 0x7829, 0x12bb: 0x7829,
1456 0x12bc: 0x7829, 0x12bd: 0x7829, 0x12be: 0x7841, 0x12bf: 0x7841,
1457 // Block 0x4b, offset 0x12c0
1458 0x12c0: 0x7841, 0x12c1: 0x7841, 0x12c2: 0x7859, 0x12c3: 0x7859, 0x12c4: 0x7871, 0x12c5: 0x7871,
1459 0x12c6: 0x7889, 0x12c7: 0x7889, 0x12c8: 0x78a1, 0x12c9: 0x78a1, 0x12ca: 0x78b9, 0x12cb: 0x78b9,
1460 0x12cc: 0x78d1, 0x12cd: 0x78d1, 0x12ce: 0x78e9, 0x12cf: 0x78e9, 0x12d0: 0x78e9, 0x12d1: 0x78e9,
1461 0x12d2: 0x7901, 0x12d3: 0x7901, 0x12d4: 0x7901, 0x12d5: 0x7901, 0x12d6: 0x7919, 0x12d7: 0x7919,
1462 0x12d8: 0x7919, 0x12d9: 0x7919, 0x12da: 0x7931, 0x12db: 0x7931, 0x12dc: 0x7931, 0x12dd: 0x7931,
1463 0x12de: 0x7949, 0x12df: 0x7949, 0x12e0: 0x7961, 0x12e1: 0x7961, 0x12e2: 0x7961, 0x12e3: 0x7961,
1464 0x12e4: 0x7979, 0x12e5: 0x7979, 0x12e6: 0x7991, 0x12e7: 0x7991, 0x12e8: 0x7991, 0x12e9: 0x7991,
1465 0x12ea: 0x79a9, 0x12eb: 0x79a9, 0x12ec: 0x79a9, 0x12ed: 0x79a9, 0x12ee: 0x79c1, 0x12ef: 0x79c1,
1466 0x12f0: 0x79d9, 0x12f1: 0x79d9, 0x12f2: 0x0018, 0x12f3: 0x0018, 0x12f4: 0x0018, 0x12f5: 0x0018,
1467 0x12f6: 0x0018, 0x12f7: 0x0018, 0x12f8: 0x0018, 0x12f9: 0x0018, 0x12fa: 0x0018, 0x12fb: 0x0018,
1468 0x12fc: 0x0018, 0x12fd: 0x0018, 0x12fe: 0x0018, 0x12ff: 0x0018,
1469 // Block 0x4c, offset 0x1300
1470 0x1300: 0x0018, 0x1301: 0x0018, 0x1302: 0x0040, 0x1303: 0x0040, 0x1304: 0x0040, 0x1305: 0x0040,
1471 0x1306: 0x0040, 0x1307: 0x0040, 0x1308: 0x0040, 0x1309: 0x0040, 0x130a: 0x0040, 0x130b: 0x0040,
1472 0x130c: 0x0040, 0x130d: 0x0040, 0x130e: 0x0040, 0x130f: 0x0040, 0x1310: 0x0040, 0x1311: 0x0040,
1473 0x1312: 0x0040, 0x1313: 0x79f1, 0x1314: 0x79f1, 0x1315: 0x79f1, 0x1316: 0x79f1, 0x1317: 0x7a09,
1474 0x1318: 0x7a09, 0x1319: 0x7a21, 0x131a: 0x7a21, 0x131b: 0x7a39, 0x131c: 0x7a39, 0x131d: 0x0479,
1475 0x131e: 0x7a51, 0x131f: 0x7a51, 0x1320: 0x7a69, 0x1321: 0x7a69, 0x1322: 0x7a81, 0x1323: 0x7a81,
1476 0x1324: 0x7a99, 0x1325: 0x7a99, 0x1326: 0x7a99, 0x1327: 0x7a99, 0x1328: 0x7ab1, 0x1329: 0x7ab1,
1477 0x132a: 0x7ac9, 0x132b: 0x7ac9, 0x132c: 0x7af1, 0x132d: 0x7af1, 0x132e: 0x7b19, 0x132f: 0x7b19,
1478 0x1330: 0x7b41, 0x1331: 0x7b41, 0x1332: 0x7b69, 0x1333: 0x7b69, 0x1334: 0x7b91, 0x1335: 0x7b91,
1479 0x1336: 0x7bb9, 0x1337: 0x7bb9, 0x1338: 0x7bb9, 0x1339: 0x7be1, 0x133a: 0x7be1, 0x133b: 0x7be1,
1480 0x133c: 0x7c09, 0x133d: 0x7c09, 0x133e: 0x7c09, 0x133f: 0x7c09,
1481 // Block 0x4d, offset 0x1340
1482 0x1340: 0x85f9, 0x1341: 0x8621, 0x1342: 0x8649, 0x1343: 0x8671, 0x1344: 0x8699, 0x1345: 0x86c1,
1483 0x1346: 0x86e9, 0x1347: 0x8711, 0x1348: 0x8739, 0x1349: 0x8761, 0x134a: 0x8789, 0x134b: 0x87b1,
1484 0x134c: 0x87d9, 0x134d: 0x8801, 0x134e: 0x8829, 0x134f: 0x8851, 0x1350: 0x8879, 0x1351: 0x88a1,
1485 0x1352: 0x88c9, 0x1353: 0x88f1, 0x1354: 0x8919, 0x1355: 0x8941, 0x1356: 0x8969, 0x1357: 0x8991,
1486 0x1358: 0x89b9, 0x1359: 0x89e1, 0x135a: 0x8a09, 0x135b: 0x8a31, 0x135c: 0x8a59, 0x135d: 0x8a81,
1487 0x135e: 0x8aaa, 0x135f: 0x8ada, 0x1360: 0x8b0a, 0x1361: 0x8b3a, 0x1362: 0x8b6a, 0x1363: 0x8b9a,
1488 0x1364: 0x8bc9, 0x1365: 0x8bf1, 0x1366: 0x7c71, 0x1367: 0x8c19, 0x1368: 0x7be1, 0x1369: 0x7c99,
1489 0x136a: 0x8c41, 0x136b: 0x8c69, 0x136c: 0x7d39, 0x136d: 0x8c91, 0x136e: 0x7d61, 0x136f: 0x7d89,
1490 0x1370: 0x8cb9, 0x1371: 0x8ce1, 0x1372: 0x7e29, 0x1373: 0x8d09, 0x1374: 0x7e51, 0x1375: 0x7e79,
1491 0x1376: 0x8d31, 0x1377: 0x8d59, 0x1378: 0x7ec9, 0x1379: 0x8d81, 0x137a: 0x7ef1, 0x137b: 0x7f19,
1492 0x137c: 0x83a1, 0x137d: 0x83c9, 0x137e: 0x8441, 0x137f: 0x8469,
1493 // Block 0x4e, offset 0x1380
1494 0x1380: 0x8491, 0x1381: 0x8531, 0x1382: 0x8559, 0x1383: 0x8581, 0x1384: 0x85a9, 0x1385: 0x8649,
1495 0x1386: 0x8671, 0x1387: 0x8699, 0x1388: 0x8da9, 0x1389: 0x8739, 0x138a: 0x8dd1, 0x138b: 0x8df9,
1496 0x138c: 0x8829, 0x138d: 0x8e21, 0x138e: 0x8851, 0x138f: 0x8879, 0x1390: 0x8a81, 0x1391: 0x8e49,
1497 0x1392: 0x8e71, 0x1393: 0x89b9, 0x1394: 0x8e99, 0x1395: 0x89e1, 0x1396: 0x8a09, 0x1397: 0x7c21,
1498 0x1398: 0x7c49, 0x1399: 0x8ec1, 0x139a: 0x7c71, 0x139b: 0x8ee9, 0x139c: 0x7cc1, 0x139d: 0x7ce9,
1499 0x139e: 0x7d11, 0x139f: 0x7d39, 0x13a0: 0x8f11, 0x13a1: 0x7db1, 0x13a2: 0x7dd9, 0x13a3: 0x7e01,
1500 0x13a4: 0x7e29, 0x13a5: 0x8f39, 0x13a6: 0x7ec9, 0x13a7: 0x7f41, 0x13a8: 0x7f69, 0x13a9: 0x7f91,
1501 0x13aa: 0x7fb9, 0x13ab: 0x7fe1, 0x13ac: 0x8031, 0x13ad: 0x8059, 0x13ae: 0x8081, 0x13af: 0x80a9,
1502 0x13b0: 0x80d1, 0x13b1: 0x80f9, 0x13b2: 0x8f61, 0x13b3: 0x8121, 0x13b4: 0x8149, 0x13b5: 0x8171,
1503 0x13b6: 0x8199, 0x13b7: 0x81c1, 0x13b8: 0x81e9, 0x13b9: 0x8239, 0x13ba: 0x8261, 0x13bb: 0x8289,
1504 0x13bc: 0x82b1, 0x13bd: 0x82d9, 0x13be: 0x8301, 0x13bf: 0x8329,
1505 // Block 0x4f, offset 0x13c0
1506 0x13c0: 0x8351, 0x13c1: 0x8379, 0x13c2: 0x83f1, 0x13c3: 0x8419, 0x13c4: 0x84b9, 0x13c5: 0x84e1,
1507 0x13c6: 0x8509, 0x13c7: 0x8531, 0x13c8: 0x8559, 0x13c9: 0x85d1, 0x13ca: 0x85f9, 0x13cb: 0x8621,
1508 0x13cc: 0x8649, 0x13cd: 0x8f89, 0x13ce: 0x86c1, 0x13cf: 0x86e9, 0x13d0: 0x8711, 0x13d1: 0x8739,
1509 0x13d2: 0x87b1, 0x13d3: 0x87d9, 0x13d4: 0x8801, 0x13d5: 0x8829, 0x13d6: 0x8fb1, 0x13d7: 0x88a1,
1510 0x13d8: 0x88c9, 0x13d9: 0x8fd9, 0x13da: 0x8941, 0x13db: 0x8969, 0x13dc: 0x8991, 0x13dd: 0x89b9,
1511 0x13de: 0x9001, 0x13df: 0x7c71, 0x13e0: 0x8ee9, 0x13e1: 0x7d39, 0x13e2: 0x8f11, 0x13e3: 0x7e29,
1512 0x13e4: 0x8f39, 0x13e5: 0x7ec9, 0x13e6: 0x9029, 0x13e7: 0x80d1, 0x13e8: 0x9051, 0x13e9: 0x9079,
1513 0x13ea: 0x90a1, 0x13eb: 0x8531, 0x13ec: 0x8559, 0x13ed: 0x8649, 0x13ee: 0x8829, 0x13ef: 0x8fb1,
1514 0x13f0: 0x89b9, 0x13f1: 0x9001, 0x13f2: 0x90c9, 0x13f3: 0x9101, 0x13f4: 0x9139, 0x13f5: 0x9171,
1515 0x13f6: 0x9199, 0x13f7: 0x91c1, 0x13f8: 0x91e9, 0x13f9: 0x9211, 0x13fa: 0x9239, 0x13fb: 0x9261,
1516 0x13fc: 0x9289, 0x13fd: 0x92b1, 0x13fe: 0x92d9, 0x13ff: 0x9301,
1517 // Block 0x50, offset 0x1400
1518 0x1400: 0x9329, 0x1401: 0x9351, 0x1402: 0x9379, 0x1403: 0x93a1, 0x1404: 0x93c9, 0x1405: 0x93f1,
1519 0x1406: 0x9419, 0x1407: 0x9441, 0x1408: 0x9469, 0x1409: 0x9491, 0x140a: 0x94b9, 0x140b: 0x94e1,
1520 0x140c: 0x9079, 0x140d: 0x9509, 0x140e: 0x9531, 0x140f: 0x9559, 0x1410: 0x9581, 0x1411: 0x9171,
1521 0x1412: 0x9199, 0x1413: 0x91c1, 0x1414: 0x91e9, 0x1415: 0x9211, 0x1416: 0x9239, 0x1417: 0x9261,
1522 0x1418: 0x9289, 0x1419: 0x92b1, 0x141a: 0x92d9, 0x141b: 0x9301, 0x141c: 0x9329, 0x141d: 0x9351,
1523 0x141e: 0x9379, 0x141f: 0x93a1, 0x1420: 0x93c9, 0x1421: 0x93f1, 0x1422: 0x9419, 0x1423: 0x9441,
1524 0x1424: 0x9469, 0x1425: 0x9491, 0x1426: 0x94b9, 0x1427: 0x94e1, 0x1428: 0x9079, 0x1429: 0x9509,
1525 0x142a: 0x9531, 0x142b: 0x9559, 0x142c: 0x9581, 0x142d: 0x9491, 0x142e: 0x94b9, 0x142f: 0x94e1,
1526 0x1430: 0x9079, 0x1431: 0x9051, 0x1432: 0x90a1, 0x1433: 0x8211, 0x1434: 0x8059, 0x1435: 0x8081,
1527 0x1436: 0x80a9, 0x1437: 0x9491, 0x1438: 0x94b9, 0x1439: 0x94e1, 0x143a: 0x8211, 0x143b: 0x8239,
1528 0x143c: 0x95a9, 0x143d: 0x95a9, 0x143e: 0x0018, 0x143f: 0x0018,
1529 // Block 0x51, offset 0x1440
1530 0x1440: 0x0040, 0x1441: 0x0040, 0x1442: 0x0040, 0x1443: 0x0040, 0x1444: 0x0040, 0x1445: 0x0040,
1531 0x1446: 0x0040, 0x1447: 0x0040, 0x1448: 0x0040, 0x1449: 0x0040, 0x144a: 0x0040, 0x144b: 0x0040,
1532 0x144c: 0x0040, 0x144d: 0x0040, 0x144e: 0x0040, 0x144f: 0x0040, 0x1450: 0x95d1, 0x1451: 0x9609,
1533 0x1452: 0x9609, 0x1453: 0x9641, 0x1454: 0x9679, 0x1455: 0x96b1, 0x1456: 0x96e9, 0x1457: 0x9721,
1534 0x1458: 0x9759, 0x1459: 0x9759, 0x145a: 0x9791, 0x145b: 0x97c9, 0x145c: 0x9801, 0x145d: 0x9839,
1535 0x145e: 0x9871, 0x145f: 0x98a9, 0x1460: 0x98a9, 0x1461: 0x98e1, 0x1462: 0x9919, 0x1463: 0x9919,
1536 0x1464: 0x9951, 0x1465: 0x9951, 0x1466: 0x9989, 0x1467: 0x99c1, 0x1468: 0x99c1, 0x1469: 0x99f9,
1537 0x146a: 0x9a31, 0x146b: 0x9a31, 0x146c: 0x9a69, 0x146d: 0x9a69, 0x146e: 0x9aa1, 0x146f: 0x9ad9,
1538 0x1470: 0x9ad9, 0x1471: 0x9b11, 0x1472: 0x9b11, 0x1473: 0x9b49, 0x1474: 0x9b81, 0x1475: 0x9bb9,
1539 0x1476: 0x9bf1, 0x1477: 0x9bf1, 0x1478: 0x9c29, 0x1479: 0x9c61, 0x147a: 0x9c99, 0x147b: 0x9cd1,
1540 0x147c: 0x9d09, 0x147d: 0x9d09, 0x147e: 0x9d41, 0x147f: 0x9d79,
1541 // Block 0x52, offset 0x1480
1542 0x1480: 0xa949, 0x1481: 0xa981, 0x1482: 0xa9b9, 0x1483: 0xa8a1, 0x1484: 0x9bb9, 0x1485: 0x9989,
1543 0x1486: 0xa9f1, 0x1487: 0xaa29, 0x1488: 0x0040, 0x1489: 0x0040, 0x148a: 0x0040, 0x148b: 0x0040,
1544 0x148c: 0x0040, 0x148d: 0x0040, 0x148e: 0x0040, 0x148f: 0x0040, 0x1490: 0x0040, 0x1491: 0x0040,
1545 0x1492: 0x0040, 0x1493: 0x0040, 0x1494: 0x0040, 0x1495: 0x0040, 0x1496: 0x0040, 0x1497: 0x0040,
1546 0x1498: 0x0040, 0x1499: 0x0040, 0x149a: 0x0040, 0x149b: 0x0040, 0x149c: 0x0040, 0x149d: 0x0040,
1547 0x149e: 0x0040, 0x149f: 0x0040, 0x14a0: 0x0040, 0x14a1: 0x0040, 0x14a2: 0x0040, 0x14a3: 0x0040,
1548 0x14a4: 0x0040, 0x14a5: 0x0040, 0x14a6: 0x0040, 0x14a7: 0x0040, 0x14a8: 0x0040, 0x14a9: 0x0040,
1549 0x14aa: 0x0040, 0x14ab: 0x0040, 0x14ac: 0x0040, 0x14ad: 0x0040, 0x14ae: 0x0040, 0x14af: 0x0040,
1550 0x14b0: 0xaa61, 0x14b1: 0xaa99, 0x14b2: 0xaad1, 0x14b3: 0xab19, 0x14b4: 0xab61, 0x14b5: 0xaba9,
1551 0x14b6: 0xabf1, 0x14b7: 0xac39, 0x14b8: 0xac81, 0x14b9: 0xacc9, 0x14ba: 0xad02, 0x14bb: 0xae12,
1552 0x14bc: 0xae91, 0x14bd: 0x0018, 0x14be: 0x0040, 0x14bf: 0x0040,
1553 // Block 0x53, offset 0x14c0
1554 0x14c0: 0x13c0, 0x14c1: 0x13c0, 0x14c2: 0x13c0, 0x14c3: 0x13c0, 0x14c4: 0x13c0, 0x14c5: 0x13c0,
1555 0x14c6: 0x13c0, 0x14c7: 0x13c0, 0x14c8: 0x13c0, 0x14c9: 0x13c0, 0x14ca: 0x13c0, 0x14cb: 0x13c0,
1556 0x14cc: 0x13c0, 0x14cd: 0x13c0, 0x14ce: 0x13c0, 0x14cf: 0x13c0, 0x14d0: 0xaeda, 0x14d1: 0x7d55,
1557 0x14d2: 0x0040, 0x14d3: 0xaeea, 0x14d4: 0x03c2, 0x14d5: 0xaefa, 0x14d6: 0xaf0a, 0x14d7: 0x7d75,
1558 0x14d8: 0x7d95, 0x14d9: 0x0040, 0x14da: 0x0040, 0x14db: 0x0040, 0x14dc: 0x0040, 0x14dd: 0x0040,
1559 0x14de: 0x0040, 0x14df: 0x0040, 0x14e0: 0x1308, 0x14e1: 0x1308, 0x14e2: 0x1308, 0x14e3: 0x1308,
1560 0x14e4: 0x1308, 0x14e5: 0x1308, 0x14e6: 0x1308, 0x14e7: 0x1308, 0x14e8: 0x1308, 0x14e9: 0x1308,
1561 0x14ea: 0x1308, 0x14eb: 0x1308, 0x14ec: 0x1308, 0x14ed: 0x1308, 0x14ee: 0x1308, 0x14ef: 0x1308,
1562 0x14f0: 0x0040, 0x14f1: 0x7db5, 0x14f2: 0x7dd5, 0x14f3: 0xaf1a, 0x14f4: 0xaf1a, 0x14f5: 0x1fd2,
1563 0x14f6: 0x1fe2, 0x14f7: 0xaf2a, 0x14f8: 0xaf3a, 0x14f9: 0x7df5, 0x14fa: 0x7e15, 0x14fb: 0x7e35,
1564 0x14fc: 0x7df5, 0x14fd: 0x7e55, 0x14fe: 0x7e75, 0x14ff: 0x7e55,
1565 // Block 0x54, offset 0x1500
1566 0x1500: 0x7e95, 0x1501: 0x7eb5, 0x1502: 0x7ed5, 0x1503: 0x7eb5, 0x1504: 0x7ef5, 0x1505: 0x0018,
1567 0x1506: 0x0018, 0x1507: 0xaf4a, 0x1508: 0xaf5a, 0x1509: 0x7f16, 0x150a: 0x7f36, 0x150b: 0x7f56,
1568 0x150c: 0x7f76, 0x150d: 0xaf1a, 0x150e: 0xaf1a, 0x150f: 0xaf1a, 0x1510: 0xaeda, 0x1511: 0x7f95,
1569 0x1512: 0x0040, 0x1513: 0x0040, 0x1514: 0x03c2, 0x1515: 0xaeea, 0x1516: 0xaf0a, 0x1517: 0xaefa,
1570 0x1518: 0x7fb5, 0x1519: 0x1fd2, 0x151a: 0x1fe2, 0x151b: 0xaf2a, 0x151c: 0xaf3a, 0x151d: 0x7e95,
1571 0x151e: 0x7ef5, 0x151f: 0xaf6a, 0x1520: 0xaf7a, 0x1521: 0xaf8a, 0x1522: 0x1fb2, 0x1523: 0xaf99,
1572 0x1524: 0xafaa, 0x1525: 0xafba, 0x1526: 0x1fc2, 0x1527: 0x0040, 0x1528: 0xafca, 0x1529: 0xafda,
1573 0x152a: 0xafea, 0x152b: 0xaffa, 0x152c: 0x0040, 0x152d: 0x0040, 0x152e: 0x0040, 0x152f: 0x0040,
1574 0x1530: 0x7fd6, 0x1531: 0xb009, 0x1532: 0x7ff6, 0x1533: 0x0008, 0x1534: 0x8016, 0x1535: 0x0040,
1575 0x1536: 0x8036, 0x1537: 0xb031, 0x1538: 0x8056, 0x1539: 0xb059, 0x153a: 0x8076, 0x153b: 0xb081,
1576 0x153c: 0x8096, 0x153d: 0xb0a9, 0x153e: 0x80b6, 0x153f: 0xb0d1,
1577 // Block 0x55, offset 0x1540
1578 0x1540: 0xb0f9, 0x1541: 0xb111, 0x1542: 0xb111, 0x1543: 0xb129, 0x1544: 0xb129, 0x1545: 0xb141,
1579 0x1546: 0xb141, 0x1547: 0xb159, 0x1548: 0xb159, 0x1549: 0xb171, 0x154a: 0xb171, 0x154b: 0xb171,
1580 0x154c: 0xb171, 0x154d: 0xb189, 0x154e: 0xb189, 0x154f: 0xb1a1, 0x1550: 0xb1a1, 0x1551: 0xb1a1,
1581 0x1552: 0xb1a1, 0x1553: 0xb1b9, 0x1554: 0xb1b9, 0x1555: 0xb1d1, 0x1556: 0xb1d1, 0x1557: 0xb1d1,
1582 0x1558: 0xb1d1, 0x1559: 0xb1e9, 0x155a: 0xb1e9, 0x155b: 0xb1e9, 0x155c: 0xb1e9, 0x155d: 0xb201,
1583 0x155e: 0xb201, 0x155f: 0xb201, 0x1560: 0xb201, 0x1561: 0xb219, 0x1562: 0xb219, 0x1563: 0xb219,
1584 0x1564: 0xb219, 0x1565: 0xb231, 0x1566: 0xb231, 0x1567: 0xb231, 0x1568: 0xb231, 0x1569: 0xb249,
1585 0x156a: 0xb249, 0x156b: 0xb261, 0x156c: 0xb261, 0x156d: 0xb279, 0x156e: 0xb279, 0x156f: 0xb291,
1586 0x1570: 0xb291, 0x1571: 0xb2a9, 0x1572: 0xb2a9, 0x1573: 0xb2a9, 0x1574: 0xb2a9, 0x1575: 0xb2c1,
1587 0x1576: 0xb2c1, 0x1577: 0xb2c1, 0x1578: 0xb2c1, 0x1579: 0xb2d9, 0x157a: 0xb2d9, 0x157b: 0xb2d9,
1588 0x157c: 0xb2d9, 0x157d: 0xb2f1, 0x157e: 0xb2f1, 0x157f: 0xb2f1,
1589 // Block 0x56, offset 0x1580
1590 0x1580: 0xb2f1, 0x1581: 0xb309, 0x1582: 0xb309, 0x1583: 0xb309, 0x1584: 0xb309, 0x1585: 0xb321,
1591 0x1586: 0xb321, 0x1587: 0xb321, 0x1588: 0xb321, 0x1589: 0xb339, 0x158a: 0xb339, 0x158b: 0xb339,
1592 0x158c: 0xb339, 0x158d: 0xb351, 0x158e: 0xb351, 0x158f: 0xb351, 0x1590: 0xb351, 0x1591: 0xb369,
1593 0x1592: 0xb369, 0x1593: 0xb369, 0x1594: 0xb369, 0x1595: 0xb381, 0x1596: 0xb381, 0x1597: 0xb381,
1594 0x1598: 0xb381, 0x1599: 0xb399, 0x159a: 0xb399, 0x159b: 0xb399, 0x159c: 0xb399, 0x159d: 0xb3b1,
1595 0x159e: 0xb3b1, 0x159f: 0xb3b1, 0x15a0: 0xb3b1, 0x15a1: 0xb3c9, 0x15a2: 0xb3c9, 0x15a3: 0xb3c9,
1596 0x15a4: 0xb3c9, 0x15a5: 0xb3e1, 0x15a6: 0xb3e1, 0x15a7: 0xb3e1, 0x15a8: 0xb3e1, 0x15a9: 0xb3f9,
1597 0x15aa: 0xb3f9, 0x15ab: 0xb3f9, 0x15ac: 0xb3f9, 0x15ad: 0xb411, 0x15ae: 0xb411, 0x15af: 0x7ab1,
1598 0x15b0: 0x7ab1, 0x15b1: 0xb429, 0x15b2: 0xb429, 0x15b3: 0xb429, 0x15b4: 0xb429, 0x15b5: 0xb441,
1599 0x15b6: 0xb441, 0x15b7: 0xb469, 0x15b8: 0xb469, 0x15b9: 0xb491, 0x15ba: 0xb491, 0x15bb: 0xb4b9,
1600 0x15bc: 0xb4b9, 0x15bd: 0x0040, 0x15be: 0x0040, 0x15bf: 0x03c0,
1601 // Block 0x57, offset 0x15c0
1602 0x15c0: 0x0040, 0x15c1: 0xaefa, 0x15c2: 0xb4e2, 0x15c3: 0xaf6a, 0x15c4: 0xafda, 0x15c5: 0xafea,
1603 0x15c6: 0xaf7a, 0x15c7: 0xb4f2, 0x15c8: 0x1fd2, 0x15c9: 0x1fe2, 0x15ca: 0xaf8a, 0x15cb: 0x1fb2,
1604 0x15cc: 0xaeda, 0x15cd: 0xaf99, 0x15ce: 0x29d1, 0x15cf: 0xb502, 0x15d0: 0x1f41, 0x15d1: 0x00c9,
1605 0x15d2: 0x0069, 0x15d3: 0x0079, 0x15d4: 0x1f51, 0x15d5: 0x1f61, 0x15d6: 0x1f71, 0x15d7: 0x1f81,
1606 0x15d8: 0x1f91, 0x15d9: 0x1fa1, 0x15da: 0xaeea, 0x15db: 0x03c2, 0x15dc: 0xafaa, 0x15dd: 0x1fc2,
1607 0x15de: 0xafba, 0x15df: 0xaf0a, 0x15e0: 0xaffa, 0x15e1: 0x0039, 0x15e2: 0x0ee9, 0x15e3: 0x1159,
1608 0x15e4: 0x0ef9, 0x15e5: 0x0f09, 0x15e6: 0x1199, 0x15e7: 0x0f31, 0x15e8: 0x0249, 0x15e9: 0x0f41,
1609 0x15ea: 0x0259, 0x15eb: 0x0f51, 0x15ec: 0x0359, 0x15ed: 0x0f61, 0x15ee: 0x0f71, 0x15ef: 0x00d9,
1610 0x15f0: 0x0f99, 0x15f1: 0x2039, 0x15f2: 0x0269, 0x15f3: 0x01d9, 0x15f4: 0x0fa9, 0x15f5: 0x0fb9,
1611 0x15f6: 0x1089, 0x15f7: 0x0279, 0x15f8: 0x0369, 0x15f9: 0x0289, 0x15fa: 0x13d1, 0x15fb: 0xaf4a,
1612 0x15fc: 0xafca, 0x15fd: 0xaf5a, 0x15fe: 0xb512, 0x15ff: 0xaf1a,
1613 // Block 0x58, offset 0x1600
1614 0x1600: 0x1caa, 0x1601: 0x0039, 0x1602: 0x0ee9, 0x1603: 0x1159, 0x1604: 0x0ef9, 0x1605: 0x0f09,
1615 0x1606: 0x1199, 0x1607: 0x0f31, 0x1608: 0x0249, 0x1609: 0x0f41, 0x160a: 0x0259, 0x160b: 0x0f51,
1616 0x160c: 0x0359, 0x160d: 0x0f61, 0x160e: 0x0f71, 0x160f: 0x00d9, 0x1610: 0x0f99, 0x1611: 0x2039,
1617 0x1612: 0x0269, 0x1613: 0x01d9, 0x1614: 0x0fa9, 0x1615: 0x0fb9, 0x1616: 0x1089, 0x1617: 0x0279,
1618 0x1618: 0x0369, 0x1619: 0x0289, 0x161a: 0x13d1, 0x161b: 0xaf2a, 0x161c: 0xb522, 0x161d: 0xaf3a,
1619 0x161e: 0xb532, 0x161f: 0x80d5, 0x1620: 0x80f5, 0x1621: 0x29d1, 0x1622: 0x8115, 0x1623: 0x8115,
1620 0x1624: 0x8135, 0x1625: 0x8155, 0x1626: 0x8175, 0x1627: 0x8195, 0x1628: 0x81b5, 0x1629: 0x81d5,
1621 0x162a: 0x81f5, 0x162b: 0x8215, 0x162c: 0x8235, 0x162d: 0x8255, 0x162e: 0x8275, 0x162f: 0x8295,
1622 0x1630: 0x82b5, 0x1631: 0x82d5, 0x1632: 0x82f5, 0x1633: 0x8315, 0x1634: 0x8335, 0x1635: 0x8355,
1623 0x1636: 0x8375, 0x1637: 0x8395, 0x1638: 0x83b5, 0x1639: 0x83d5, 0x163a: 0x83f5, 0x163b: 0x8415,
1624 0x163c: 0x81b5, 0x163d: 0x8435, 0x163e: 0x8455, 0x163f: 0x8215,
1625 // Block 0x59, offset 0x1640
1626 0x1640: 0x8475, 0x1641: 0x8495, 0x1642: 0x84b5, 0x1643: 0x84d5, 0x1644: 0x84f5, 0x1645: 0x8515,
1627 0x1646: 0x8535, 0x1647: 0x8555, 0x1648: 0x84d5, 0x1649: 0x8575, 0x164a: 0x84d5, 0x164b: 0x8595,
1628 0x164c: 0x8595, 0x164d: 0x85b5, 0x164e: 0x85b5, 0x164f: 0x85d5, 0x1650: 0x8515, 0x1651: 0x85f5,
1629 0x1652: 0x8615, 0x1653: 0x85f5, 0x1654: 0x8635, 0x1655: 0x8615, 0x1656: 0x8655, 0x1657: 0x8655,
1630 0x1658: 0x8675, 0x1659: 0x8675, 0x165a: 0x8695, 0x165b: 0x8695, 0x165c: 0x8615, 0x165d: 0x8115,
1631 0x165e: 0x86b5, 0x165f: 0x86d5, 0x1660: 0x0040, 0x1661: 0x86f5, 0x1662: 0x8715, 0x1663: 0x8735,
1632 0x1664: 0x8755, 0x1665: 0x8735, 0x1666: 0x8775, 0x1667: 0x8795, 0x1668: 0x87b5, 0x1669: 0x87b5,
1633 0x166a: 0x87d5, 0x166b: 0x87d5, 0x166c: 0x87f5, 0x166d: 0x87f5, 0x166e: 0x87d5, 0x166f: 0x87d5,
1634 0x1670: 0x8815, 0x1671: 0x8835, 0x1672: 0x8855, 0x1673: 0x8875, 0x1674: 0x8895, 0x1675: 0x88b5,
1635 0x1676: 0x88b5, 0x1677: 0x88b5, 0x1678: 0x88d5, 0x1679: 0x88d5, 0x167a: 0x88d5, 0x167b: 0x88d5,
1636 0x167c: 0x87b5, 0x167d: 0x87b5, 0x167e: 0x87b5, 0x167f: 0x0040,
1637 // Block 0x5a, offset 0x1680
1638 0x1680: 0x0040, 0x1681: 0x0040, 0x1682: 0x8715, 0x1683: 0x86f5, 0x1684: 0x88f5, 0x1685: 0x86f5,
1639 0x1686: 0x8715, 0x1687: 0x86f5, 0x1688: 0x0040, 0x1689: 0x0040, 0x168a: 0x8915, 0x168b: 0x8715,
1640 0x168c: 0x8935, 0x168d: 0x88f5, 0x168e: 0x8935, 0x168f: 0x8715, 0x1690: 0x0040, 0x1691: 0x0040,
1641 0x1692: 0x8955, 0x1693: 0x8975, 0x1694: 0x8875, 0x1695: 0x8935, 0x1696: 0x88f5, 0x1697: 0x8935,
1642 0x1698: 0x0040, 0x1699: 0x0040, 0x169a: 0x8995, 0x169b: 0x89b5, 0x169c: 0x8995, 0x169d: 0x0040,
1643 0x169e: 0x0040, 0x169f: 0x0040, 0x16a0: 0xb541, 0x16a1: 0xb559, 0x16a2: 0xb571, 0x16a3: 0x89d6,
1644 0x16a4: 0xb589, 0x16a5: 0xb5a1, 0x16a6: 0x89f5, 0x16a7: 0x0040, 0x16a8: 0x8a15, 0x16a9: 0x8a35,
1645 0x16aa: 0x8a55, 0x16ab: 0x8a35, 0x16ac: 0x8a75, 0x16ad: 0x8a95, 0x16ae: 0x8ab5, 0x16af: 0x0040,
1646 0x16b0: 0x0040, 0x16b1: 0x0040, 0x16b2: 0x0040, 0x16b3: 0x0040, 0x16b4: 0x0040, 0x16b5: 0x0040,
1647 0x16b6: 0x0040, 0x16b7: 0x0040, 0x16b8: 0x0040, 0x16b9: 0x0340, 0x16ba: 0x0340, 0x16bb: 0x0340,
1648 0x16bc: 0x0040, 0x16bd: 0x0040, 0x16be: 0x0040, 0x16bf: 0x0040,
1649 // Block 0x5b, offset 0x16c0
1650 0x16c0: 0x0208, 0x16c1: 0x0208, 0x16c2: 0x0208, 0x16c3: 0x0208, 0x16c4: 0x0208, 0x16c5: 0x0408,
1651 0x16c6: 0x0008, 0x16c7: 0x0408, 0x16c8: 0x0018, 0x16c9: 0x0408, 0x16ca: 0x0408, 0x16cb: 0x0008,
1652 0x16cc: 0x0008, 0x16cd: 0x0108, 0x16ce: 0x0408, 0x16cf: 0x0408, 0x16d0: 0x0408, 0x16d1: 0x0408,
1653 0x16d2: 0x0408, 0x16d3: 0x0208, 0x16d4: 0x0208, 0x16d5: 0x0208, 0x16d6: 0x0208, 0x16d7: 0x0108,
1654 0x16d8: 0x0208, 0x16d9: 0x0208, 0x16da: 0x0208, 0x16db: 0x0208, 0x16dc: 0x0208, 0x16dd: 0x0408,
1655 0x16de: 0x0208, 0x16df: 0x0208, 0x16e0: 0x0208, 0x16e1: 0x0408, 0x16e2: 0x0008, 0x16e3: 0x0008,
1656 0x16e4: 0x0408, 0x16e5: 0x1308, 0x16e6: 0x1308, 0x16e7: 0x0040, 0x16e8: 0x0040, 0x16e9: 0x0040,
1657 0x16ea: 0x0040, 0x16eb: 0x0218, 0x16ec: 0x0218, 0x16ed: 0x0218, 0x16ee: 0x0218, 0x16ef: 0x0418,
1658 0x16f0: 0x0018, 0x16f1: 0x0018, 0x16f2: 0x0018, 0x16f3: 0x0018, 0x16f4: 0x0018, 0x16f5: 0x0018,
1659 0x16f6: 0x0018, 0x16f7: 0x0040, 0x16f8: 0x0040, 0x16f9: 0x0040, 0x16fa: 0x0040, 0x16fb: 0x0040,
1660 0x16fc: 0x0040, 0x16fd: 0x0040, 0x16fe: 0x0040, 0x16ff: 0x0040,
1661 // Block 0x5c, offset 0x1700
1662 0x1700: 0x0208, 0x1701: 0x0408, 0x1702: 0x0208, 0x1703: 0x0408, 0x1704: 0x0408, 0x1705: 0x0408,
1663 0x1706: 0x0208, 0x1707: 0x0208, 0x1708: 0x0208, 0x1709: 0x0408, 0x170a: 0x0208, 0x170b: 0x0208,
1664 0x170c: 0x0408, 0x170d: 0x0208, 0x170e: 0x0408, 0x170f: 0x0408, 0x1710: 0x0208, 0x1711: 0x0408,
1665 0x1712: 0x0040, 0x1713: 0x0040, 0x1714: 0x0040, 0x1715: 0x0040, 0x1716: 0x0040, 0x1717: 0x0040,
1666 0x1718: 0x0040, 0x1719: 0x0018, 0x171a: 0x0018, 0x171b: 0x0018, 0x171c: 0x0018, 0x171d: 0x0040,
1667 0x171e: 0x0040, 0x171f: 0x0040, 0x1720: 0x0040, 0x1721: 0x0040, 0x1722: 0x0040, 0x1723: 0x0040,
1668 0x1724: 0x0040, 0x1725: 0x0040, 0x1726: 0x0040, 0x1727: 0x0040, 0x1728: 0x0040, 0x1729: 0x0418,
1669 0x172a: 0x0418, 0x172b: 0x0418, 0x172c: 0x0418, 0x172d: 0x0218, 0x172e: 0x0218, 0x172f: 0x0018,
1670 0x1730: 0x0040, 0x1731: 0x0040, 0x1732: 0x0040, 0x1733: 0x0040, 0x1734: 0x0040, 0x1735: 0x0040,
1671 0x1736: 0x0040, 0x1737: 0x0040, 0x1738: 0x0040, 0x1739: 0x0040, 0x173a: 0x0040, 0x173b: 0x0040,
1672 0x173c: 0x0040, 0x173d: 0x0040, 0x173e: 0x0040, 0x173f: 0x0040,
1673 // Block 0x5d, offset 0x1740
1674 0x1740: 0x1308, 0x1741: 0x1308, 0x1742: 0x1008, 0x1743: 0x1008, 0x1744: 0x0040, 0x1745: 0x0008,
1675 0x1746: 0x0008, 0x1747: 0x0008, 0x1748: 0x0008, 0x1749: 0x0008, 0x174a: 0x0008, 0x174b: 0x0008,
1676 0x174c: 0x0008, 0x174d: 0x0040, 0x174e: 0x0040, 0x174f: 0x0008, 0x1750: 0x0008, 0x1751: 0x0040,
1677 0x1752: 0x0040, 0x1753: 0x0008, 0x1754: 0x0008, 0x1755: 0x0008, 0x1756: 0x0008, 0x1757: 0x0008,
1678 0x1758: 0x0008, 0x1759: 0x0008, 0x175a: 0x0008, 0x175b: 0x0008, 0x175c: 0x0008, 0x175d: 0x0008,
1679 0x175e: 0x0008, 0x175f: 0x0008, 0x1760: 0x0008, 0x1761: 0x0008, 0x1762: 0x0008, 0x1763: 0x0008,
1680 0x1764: 0x0008, 0x1765: 0x0008, 0x1766: 0x0008, 0x1767: 0x0008, 0x1768: 0x0008, 0x1769: 0x0040,
1681 0x176a: 0x0008, 0x176b: 0x0008, 0x176c: 0x0008, 0x176d: 0x0008, 0x176e: 0x0008, 0x176f: 0x0008,
1682 0x1770: 0x0008, 0x1771: 0x0040, 0x1772: 0x0008, 0x1773: 0x0008, 0x1774: 0x0040, 0x1775: 0x0008,
1683 0x1776: 0x0008, 0x1777: 0x0008, 0x1778: 0x0008, 0x1779: 0x0008, 0x177a: 0x0040, 0x177b: 0x0040,
1684 0x177c: 0x1308, 0x177d: 0x0008, 0x177e: 0x1008, 0x177f: 0x1008,
1685 // Block 0x5e, offset 0x1780
1686 0x1780: 0x1308, 0x1781: 0x1008, 0x1782: 0x1008, 0x1783: 0x1008, 0x1784: 0x1008, 0x1785: 0x0040,
1687 0x1786: 0x0040, 0x1787: 0x1008, 0x1788: 0x1008, 0x1789: 0x0040, 0x178a: 0x0040, 0x178b: 0x1008,
1688 0x178c: 0x1008, 0x178d: 0x1808, 0x178e: 0x0040, 0x178f: 0x0040, 0x1790: 0x0008, 0x1791: 0x0040,
1689 0x1792: 0x0040, 0x1793: 0x0040, 0x1794: 0x0040, 0x1795: 0x0040, 0x1796: 0x0040, 0x1797: 0x1008,
1690 0x1798: 0x0040, 0x1799: 0x0040, 0x179a: 0x0040, 0x179b: 0x0040, 0x179c: 0x0040, 0x179d: 0x0008,
1691 0x179e: 0x0008, 0x179f: 0x0008, 0x17a0: 0x0008, 0x17a1: 0x0008, 0x17a2: 0x1008, 0x17a3: 0x1008,
1692 0x17a4: 0x0040, 0x17a5: 0x0040, 0x17a6: 0x1308, 0x17a7: 0x1308, 0x17a8: 0x1308, 0x17a9: 0x1308,
1693 0x17aa: 0x1308, 0x17ab: 0x1308, 0x17ac: 0x1308, 0x17ad: 0x0040, 0x17ae: 0x0040, 0x17af: 0x0040,
1694 0x17b0: 0x1308, 0x17b1: 0x1308, 0x17b2: 0x1308, 0x17b3: 0x1308, 0x17b4: 0x1308, 0x17b5: 0x0040,
1695 0x17b6: 0x0040, 0x17b7: 0x0040, 0x17b8: 0x0040, 0x17b9: 0x0040, 0x17ba: 0x0040, 0x17bb: 0x0040,
1696 0x17bc: 0x0040, 0x17bd: 0x0040, 0x17be: 0x0040, 0x17bf: 0x0040,
1697 // Block 0x5f, offset 0x17c0
1698 0x17c0: 0x0039, 0x17c1: 0x0ee9, 0x17c2: 0x1159, 0x17c3: 0x0ef9, 0x17c4: 0x0f09, 0x17c5: 0x1199,
1699 0x17c6: 0x0f31, 0x17c7: 0x0249, 0x17c8: 0x0f41, 0x17c9: 0x0259, 0x17ca: 0x0f51, 0x17cb: 0x0359,
1700 0x17cc: 0x0f61, 0x17cd: 0x0f71, 0x17ce: 0x00d9, 0x17cf: 0x0f99, 0x17d0: 0x2039, 0x17d1: 0x0269,
1701 0x17d2: 0x01d9, 0x17d3: 0x0fa9, 0x17d4: 0x0fb9, 0x17d5: 0x1089, 0x17d6: 0x0279, 0x17d7: 0x0369,
1702 0x17d8: 0x0289, 0x17d9: 0x13d1, 0x17da: 0x0039, 0x17db: 0x0ee9, 0x17dc: 0x1159, 0x17dd: 0x0ef9,
1703 0x17de: 0x0f09, 0x17df: 0x1199, 0x17e0: 0x0f31, 0x17e1: 0x0249, 0x17e2: 0x0f41, 0x17e3: 0x0259,
1704 0x17e4: 0x0f51, 0x17e5: 0x0359, 0x17e6: 0x0f61, 0x17e7: 0x0f71, 0x17e8: 0x00d9, 0x17e9: 0x0f99,
1705 0x17ea: 0x2039, 0x17eb: 0x0269, 0x17ec: 0x01d9, 0x17ed: 0x0fa9, 0x17ee: 0x0fb9, 0x17ef: 0x1089,
1706 0x17f0: 0x0279, 0x17f1: 0x0369, 0x17f2: 0x0289, 0x17f3: 0x13d1, 0x17f4: 0x0039, 0x17f5: 0x0ee9,
1707 0x17f6: 0x1159, 0x17f7: 0x0ef9, 0x17f8: 0x0f09, 0x17f9: 0x1199, 0x17fa: 0x0f31, 0x17fb: 0x0249,
1708 0x17fc: 0x0f41, 0x17fd: 0x0259, 0x17fe: 0x0f51, 0x17ff: 0x0359,
1709 // Block 0x60, offset 0x1800
1710 0x1800: 0x0f61, 0x1801: 0x0f71, 0x1802: 0x00d9, 0x1803: 0x0f99, 0x1804: 0x2039, 0x1805: 0x0269,
1711 0x1806: 0x01d9, 0x1807: 0x0fa9, 0x1808: 0x0fb9, 0x1809: 0x1089, 0x180a: 0x0279, 0x180b: 0x0369,
1712 0x180c: 0x0289, 0x180d: 0x13d1, 0x180e: 0x0039, 0x180f: 0x0ee9, 0x1810: 0x1159, 0x1811: 0x0ef9,
1713 0x1812: 0x0f09, 0x1813: 0x1199, 0x1814: 0x0f31, 0x1815: 0x0040, 0x1816: 0x0f41, 0x1817: 0x0259,
1714 0x1818: 0x0f51, 0x1819: 0x0359, 0x181a: 0x0f61, 0x181b: 0x0f71, 0x181c: 0x00d9, 0x181d: 0x0f99,
1715 0x181e: 0x2039, 0x181f: 0x0269, 0x1820: 0x01d9, 0x1821: 0x0fa9, 0x1822: 0x0fb9, 0x1823: 0x1089,
1716 0x1824: 0x0279, 0x1825: 0x0369, 0x1826: 0x0289, 0x1827: 0x13d1, 0x1828: 0x0039, 0x1829: 0x0ee9,
1717 0x182a: 0x1159, 0x182b: 0x0ef9, 0x182c: 0x0f09, 0x182d: 0x1199, 0x182e: 0x0f31, 0x182f: 0x0249,
1718 0x1830: 0x0f41, 0x1831: 0x0259, 0x1832: 0x0f51, 0x1833: 0x0359, 0x1834: 0x0f61, 0x1835: 0x0f71,
1719 0x1836: 0x00d9, 0x1837: 0x0f99, 0x1838: 0x2039, 0x1839: 0x0269, 0x183a: 0x01d9, 0x183b: 0x0fa9,
1720 0x183c: 0x0fb9, 0x183d: 0x1089, 0x183e: 0x0279, 0x183f: 0x0369,
1721 // Block 0x61, offset 0x1840
1722 0x1840: 0x0289, 0x1841: 0x13d1, 0x1842: 0x0039, 0x1843: 0x0ee9, 0x1844: 0x1159, 0x1845: 0x0ef9,
1723 0x1846: 0x0f09, 0x1847: 0x1199, 0x1848: 0x0f31, 0x1849: 0x0249, 0x184a: 0x0f41, 0x184b: 0x0259,
1724 0x184c: 0x0f51, 0x184d: 0x0359, 0x184e: 0x0f61, 0x184f: 0x0f71, 0x1850: 0x00d9, 0x1851: 0x0f99,
1725 0x1852: 0x2039, 0x1853: 0x0269, 0x1854: 0x01d9, 0x1855: 0x0fa9, 0x1856: 0x0fb9, 0x1857: 0x1089,
1726 0x1858: 0x0279, 0x1859: 0x0369, 0x185a: 0x0289, 0x185b: 0x13d1, 0x185c: 0x0039, 0x185d: 0x0040,
1727 0x185e: 0x1159, 0x185f: 0x0ef9, 0x1860: 0x0040, 0x1861: 0x0040, 0x1862: 0x0f31, 0x1863: 0x0040,
1728 0x1864: 0x0040, 0x1865: 0x0259, 0x1866: 0x0f51, 0x1867: 0x0040, 0x1868: 0x0040, 0x1869: 0x0f71,
1729 0x186a: 0x00d9, 0x186b: 0x0f99, 0x186c: 0x2039, 0x186d: 0x0040, 0x186e: 0x01d9, 0x186f: 0x0fa9,
1730 0x1870: 0x0fb9, 0x1871: 0x1089, 0x1872: 0x0279, 0x1873: 0x0369, 0x1874: 0x0289, 0x1875: 0x13d1,
1731 0x1876: 0x0039, 0x1877: 0x0ee9, 0x1878: 0x1159, 0x1879: 0x0ef9, 0x187a: 0x0040, 0x187b: 0x1199,
1732 0x187c: 0x0040, 0x187d: 0x0249, 0x187e: 0x0f41, 0x187f: 0x0259,
1733 // Block 0x62, offset 0x1880
1734 0x1880: 0x0f51, 0x1881: 0x0359, 0x1882: 0x0f61, 0x1883: 0x0f71, 0x1884: 0x0040, 0x1885: 0x0f99,
1735 0x1886: 0x2039, 0x1887: 0x0269, 0x1888: 0x01d9, 0x1889: 0x0fa9, 0x188a: 0x0fb9, 0x188b: 0x1089,
1736 0x188c: 0x0279, 0x188d: 0x0369, 0x188e: 0x0289, 0x188f: 0x13d1, 0x1890: 0x0039, 0x1891: 0x0ee9,
1737 0x1892: 0x1159, 0x1893: 0x0ef9, 0x1894: 0x0f09, 0x1895: 0x1199, 0x1896: 0x0f31, 0x1897: 0x0249,
1738 0x1898: 0x0f41, 0x1899: 0x0259, 0x189a: 0x0f51, 0x189b: 0x0359, 0x189c: 0x0f61, 0x189d: 0x0f71,
1739 0x189e: 0x00d9, 0x189f: 0x0f99, 0x18a0: 0x2039, 0x18a1: 0x0269, 0x18a2: 0x01d9, 0x18a3: 0x0fa9,
1740 0x18a4: 0x0fb9, 0x18a5: 0x1089, 0x18a6: 0x0279, 0x18a7: 0x0369, 0x18a8: 0x0289, 0x18a9: 0x13d1,
1741 0x18aa: 0x0039, 0x18ab: 0x0ee9, 0x18ac: 0x1159, 0x18ad: 0x0ef9, 0x18ae: 0x0f09, 0x18af: 0x1199,
1742 0x18b0: 0x0f31, 0x18b1: 0x0249, 0x18b2: 0x0f41, 0x18b3: 0x0259, 0x18b4: 0x0f51, 0x18b5: 0x0359,
1743 0x18b6: 0x0f61, 0x18b7: 0x0f71, 0x18b8: 0x00d9, 0x18b9: 0x0f99, 0x18ba: 0x2039, 0x18bb: 0x0269,
1744 0x18bc: 0x01d9, 0x18bd: 0x0fa9, 0x18be: 0x0fb9, 0x18bf: 0x1089,
1745 // Block 0x63, offset 0x18c0
1746 0x18c0: 0x0279, 0x18c1: 0x0369, 0x18c2: 0x0289, 0x18c3: 0x13d1, 0x18c4: 0x0039, 0x18c5: 0x0ee9,
1747 0x18c6: 0x0040, 0x18c7: 0x0ef9, 0x18c8: 0x0f09, 0x18c9: 0x1199, 0x18ca: 0x0f31, 0x18cb: 0x0040,
1748 0x18cc: 0x0040, 0x18cd: 0x0259, 0x18ce: 0x0f51, 0x18cf: 0x0359, 0x18d0: 0x0f61, 0x18d1: 0x0f71,
1749 0x18d2: 0x00d9, 0x18d3: 0x0f99, 0x18d4: 0x2039, 0x18d5: 0x0040, 0x18d6: 0x01d9, 0x18d7: 0x0fa9,
1750 0x18d8: 0x0fb9, 0x18d9: 0x1089, 0x18da: 0x0279, 0x18db: 0x0369, 0x18dc: 0x0289, 0x18dd: 0x0040,
1751 0x18de: 0x0039, 0x18df: 0x0ee9, 0x18e0: 0x1159, 0x18e1: 0x0ef9, 0x18e2: 0x0f09, 0x18e3: 0x1199,
1752 0x18e4: 0x0f31, 0x18e5: 0x0249, 0x18e6: 0x0f41, 0x18e7: 0x0259, 0x18e8: 0x0f51, 0x18e9: 0x0359,
1753 0x18ea: 0x0f61, 0x18eb: 0x0f71, 0x18ec: 0x00d9, 0x18ed: 0x0f99, 0x18ee: 0x2039, 0x18ef: 0x0269,
1754 0x18f0: 0x01d9, 0x18f1: 0x0fa9, 0x18f2: 0x0fb9, 0x18f3: 0x1089, 0x18f4: 0x0279, 0x18f5: 0x0369,
1755 0x18f6: 0x0289, 0x18f7: 0x13d1, 0x18f8: 0x0039, 0x18f9: 0x0ee9, 0x18fa: 0x0040, 0x18fb: 0x0ef9,
1756 0x18fc: 0x0f09, 0x18fd: 0x1199, 0x18fe: 0x0f31, 0x18ff: 0x0040,
1757 // Block 0x64, offset 0x1900
1758 0x1900: 0x0f41, 0x1901: 0x0259, 0x1902: 0x0f51, 0x1903: 0x0359, 0x1904: 0x0f61, 0x1905: 0x0040,
1759 0x1906: 0x00d9, 0x1907: 0x0040, 0x1908: 0x0040, 0x1909: 0x0040, 0x190a: 0x01d9, 0x190b: 0x0fa9,
1760 0x190c: 0x0fb9, 0x190d: 0x1089, 0x190e: 0x0279, 0x190f: 0x0369, 0x1910: 0x0289, 0x1911: 0x0040,
1761 0x1912: 0x0039, 0x1913: 0x0ee9, 0x1914: 0x1159, 0x1915: 0x0ef9, 0x1916: 0x0f09, 0x1917: 0x1199,
1762 0x1918: 0x0f31, 0x1919: 0x0249, 0x191a: 0x0f41, 0x191b: 0x0259, 0x191c: 0x0f51, 0x191d: 0x0359,
1763 0x191e: 0x0f61, 0x191f: 0x0f71, 0x1920: 0x00d9, 0x1921: 0x0f99, 0x1922: 0x2039, 0x1923: 0x0269,
1764 0x1924: 0x01d9, 0x1925: 0x0fa9, 0x1926: 0x0fb9, 0x1927: 0x1089, 0x1928: 0x0279, 0x1929: 0x0369,
1765 0x192a: 0x0289, 0x192b: 0x13d1, 0x192c: 0x0039, 0x192d: 0x0ee9, 0x192e: 0x1159, 0x192f: 0x0ef9,
1766 0x1930: 0x0f09, 0x1931: 0x1199, 0x1932: 0x0f31, 0x1933: 0x0249, 0x1934: 0x0f41, 0x1935: 0x0259,
1767 0x1936: 0x0f51, 0x1937: 0x0359, 0x1938: 0x0f61, 0x1939: 0x0f71, 0x193a: 0x00d9, 0x193b: 0x0f99,
1768 0x193c: 0x2039, 0x193d: 0x0269, 0x193e: 0x01d9, 0x193f: 0x0fa9,
1769 // Block 0x65, offset 0x1940
1770 0x1940: 0x0fb9, 0x1941: 0x1089, 0x1942: 0x0279, 0x1943: 0x0369, 0x1944: 0x0289, 0x1945: 0x13d1,
1771 0x1946: 0x0039, 0x1947: 0x0ee9, 0x1948: 0x1159, 0x1949: 0x0ef9, 0x194a: 0x0f09, 0x194b: 0x1199,
1772 0x194c: 0x0f31, 0x194d: 0x0249, 0x194e: 0x0f41, 0x194f: 0x0259, 0x1950: 0x0f51, 0x1951: 0x0359,
1773 0x1952: 0x0f61, 0x1953: 0x0f71, 0x1954: 0x00d9, 0x1955: 0x0f99, 0x1956: 0x2039, 0x1957: 0x0269,
1774 0x1958: 0x01d9, 0x1959: 0x0fa9, 0x195a: 0x0fb9, 0x195b: 0x1089, 0x195c: 0x0279, 0x195d: 0x0369,
1775 0x195e: 0x0289, 0x195f: 0x13d1, 0x1960: 0x0039, 0x1961: 0x0ee9, 0x1962: 0x1159, 0x1963: 0x0ef9,
1776 0x1964: 0x0f09, 0x1965: 0x1199, 0x1966: 0x0f31, 0x1967: 0x0249, 0x1968: 0x0f41, 0x1969: 0x0259,
1777 0x196a: 0x0f51, 0x196b: 0x0359, 0x196c: 0x0f61, 0x196d: 0x0f71, 0x196e: 0x00d9, 0x196f: 0x0f99,
1778 0x1970: 0x2039, 0x1971: 0x0269, 0x1972: 0x01d9, 0x1973: 0x0fa9, 0x1974: 0x0fb9, 0x1975: 0x1089,
1779 0x1976: 0x0279, 0x1977: 0x0369, 0x1978: 0x0289, 0x1979: 0x13d1, 0x197a: 0x0039, 0x197b: 0x0ee9,
1780 0x197c: 0x1159, 0x197d: 0x0ef9, 0x197e: 0x0f09, 0x197f: 0x1199,
1781 // Block 0x66, offset 0x1980
1782 0x1980: 0x0f31, 0x1981: 0x0249, 0x1982: 0x0f41, 0x1983: 0x0259, 0x1984: 0x0f51, 0x1985: 0x0359,
1783 0x1986: 0x0f61, 0x1987: 0x0f71, 0x1988: 0x00d9, 0x1989: 0x0f99, 0x198a: 0x2039, 0x198b: 0x0269,
1784 0x198c: 0x01d9, 0x198d: 0x0fa9, 0x198e: 0x0fb9, 0x198f: 0x1089, 0x1990: 0x0279, 0x1991: 0x0369,
1785 0x1992: 0x0289, 0x1993: 0x13d1, 0x1994: 0x0039, 0x1995: 0x0ee9, 0x1996: 0x1159, 0x1997: 0x0ef9,
1786 0x1998: 0x0f09, 0x1999: 0x1199, 0x199a: 0x0f31, 0x199b: 0x0249, 0x199c: 0x0f41, 0x199d: 0x0259,
1787 0x199e: 0x0f51, 0x199f: 0x0359, 0x19a0: 0x0f61, 0x19a1: 0x0f71, 0x19a2: 0x00d9, 0x19a3: 0x0f99,
1788 0x19a4: 0x2039, 0x19a5: 0x0269, 0x19a6: 0x01d9, 0x19a7: 0x0fa9, 0x19a8: 0x0fb9, 0x19a9: 0x1089,
1789 0x19aa: 0x0279, 0x19ab: 0x0369, 0x19ac: 0x0289, 0x19ad: 0x13d1, 0x19ae: 0x0039, 0x19af: 0x0ee9,
1790 0x19b0: 0x1159, 0x19b1: 0x0ef9, 0x19b2: 0x0f09, 0x19b3: 0x1199, 0x19b4: 0x0f31, 0x19b5: 0x0249,
1791 0x19b6: 0x0f41, 0x19b7: 0x0259, 0x19b8: 0x0f51, 0x19b9: 0x0359, 0x19ba: 0x0f61, 0x19bb: 0x0f71,
1792 0x19bc: 0x00d9, 0x19bd: 0x0f99, 0x19be: 0x2039, 0x19bf: 0x0269,
1793 // Block 0x67, offset 0x19c0
1794 0x19c0: 0x01d9, 0x19c1: 0x0fa9, 0x19c2: 0x0fb9, 0x19c3: 0x1089, 0x19c4: 0x0279, 0x19c5: 0x0369,
1795 0x19c6: 0x0289, 0x19c7: 0x13d1, 0x19c8: 0x0039, 0x19c9: 0x0ee9, 0x19ca: 0x1159, 0x19cb: 0x0ef9,
1796 0x19cc: 0x0f09, 0x19cd: 0x1199, 0x19ce: 0x0f31, 0x19cf: 0x0249, 0x19d0: 0x0f41, 0x19d1: 0x0259,
1797 0x19d2: 0x0f51, 0x19d3: 0x0359, 0x19d4: 0x0f61, 0x19d5: 0x0f71, 0x19d6: 0x00d9, 0x19d7: 0x0f99,
1798 0x19d8: 0x2039, 0x19d9: 0x0269, 0x19da: 0x01d9, 0x19db: 0x0fa9, 0x19dc: 0x0fb9, 0x19dd: 0x1089,
1799 0x19de: 0x0279, 0x19df: 0x0369, 0x19e0: 0x0289, 0x19e1: 0x13d1, 0x19e2: 0x0039, 0x19e3: 0x0ee9,
1800 0x19e4: 0x1159, 0x19e5: 0x0ef9, 0x19e6: 0x0f09, 0x19e7: 0x1199, 0x19e8: 0x0f31, 0x19e9: 0x0249,
1801 0x19ea: 0x0f41, 0x19eb: 0x0259, 0x19ec: 0x0f51, 0x19ed: 0x0359, 0x19ee: 0x0f61, 0x19ef: 0x0f71,
1802 0x19f0: 0x00d9, 0x19f1: 0x0f99, 0x19f2: 0x2039, 0x19f3: 0x0269, 0x19f4: 0x01d9, 0x19f5: 0x0fa9,
1803 0x19f6: 0x0fb9, 0x19f7: 0x1089, 0x19f8: 0x0279, 0x19f9: 0x0369, 0x19fa: 0x0289, 0x19fb: 0x13d1,
1804 0x19fc: 0x0039, 0x19fd: 0x0ee9, 0x19fe: 0x1159, 0x19ff: 0x0ef9,
1805 // Block 0x68, offset 0x1a00
1806 0x1a00: 0x0f09, 0x1a01: 0x1199, 0x1a02: 0x0f31, 0x1a03: 0x0249, 0x1a04: 0x0f41, 0x1a05: 0x0259,
1807 0x1a06: 0x0f51, 0x1a07: 0x0359, 0x1a08: 0x0f61, 0x1a09: 0x0f71, 0x1a0a: 0x00d9, 0x1a0b: 0x0f99,
1808 0x1a0c: 0x2039, 0x1a0d: 0x0269, 0x1a0e: 0x01d9, 0x1a0f: 0x0fa9, 0x1a10: 0x0fb9, 0x1a11: 0x1089,
1809 0x1a12: 0x0279, 0x1a13: 0x0369, 0x1a14: 0x0289, 0x1a15: 0x13d1, 0x1a16: 0x0039, 0x1a17: 0x0ee9,
1810 0x1a18: 0x1159, 0x1a19: 0x0ef9, 0x1a1a: 0x0f09, 0x1a1b: 0x1199, 0x1a1c: 0x0f31, 0x1a1d: 0x0249,
1811 0x1a1e: 0x0f41, 0x1a1f: 0x0259, 0x1a20: 0x0f51, 0x1a21: 0x0359, 0x1a22: 0x0f61, 0x1a23: 0x0f71,
1812 0x1a24: 0x00d9, 0x1a25: 0x0f99, 0x1a26: 0x2039, 0x1a27: 0x0269, 0x1a28: 0x01d9, 0x1a29: 0x0fa9,
1813 0x1a2a: 0x0fb9, 0x1a2b: 0x1089, 0x1a2c: 0x0279, 0x1a2d: 0x0369, 0x1a2e: 0x0289, 0x1a2f: 0x13d1,
1814 0x1a30: 0x0039, 0x1a31: 0x0ee9, 0x1a32: 0x1159, 0x1a33: 0x0ef9, 0x1a34: 0x0f09, 0x1a35: 0x1199,
1815 0x1a36: 0x0f31, 0x1a37: 0x0249, 0x1a38: 0x0f41, 0x1a39: 0x0259, 0x1a3a: 0x0f51, 0x1a3b: 0x0359,
1816 0x1a3c: 0x0f61, 0x1a3d: 0x0f71, 0x1a3e: 0x00d9, 0x1a3f: 0x0f99,
1817 // Block 0x69, offset 0x1a40
1818 0x1a40: 0x2039, 0x1a41: 0x0269, 0x1a42: 0x01d9, 0x1a43: 0x0fa9, 0x1a44: 0x0fb9, 0x1a45: 0x1089,
1819 0x1a46: 0x0279, 0x1a47: 0x0369, 0x1a48: 0x0289, 0x1a49: 0x13d1, 0x1a4a: 0x0039, 0x1a4b: 0x0ee9,
1820 0x1a4c: 0x1159, 0x1a4d: 0x0ef9, 0x1a4e: 0x0f09, 0x1a4f: 0x1199, 0x1a50: 0x0f31, 0x1a51: 0x0249,
1821 0x1a52: 0x0f41, 0x1a53: 0x0259, 0x1a54: 0x0f51, 0x1a55: 0x0359, 0x1a56: 0x0f61, 0x1a57: 0x0f71,
1822 0x1a58: 0x00d9, 0x1a59: 0x0f99, 0x1a5a: 0x2039, 0x1a5b: 0x0269, 0x1a5c: 0x01d9, 0x1a5d: 0x0fa9,
1823 0x1a5e: 0x0fb9, 0x1a5f: 0x1089, 0x1a60: 0x0279, 0x1a61: 0x0369, 0x1a62: 0x0289, 0x1a63: 0x13d1,
1824 0x1a64: 0xba81, 0x1a65: 0xba99, 0x1a66: 0x0040, 0x1a67: 0x0040, 0x1a68: 0xbab1, 0x1a69: 0x1099,
1825 0x1a6a: 0x10b1, 0x1a6b: 0x10c9, 0x1a6c: 0xbac9, 0x1a6d: 0xbae1, 0x1a6e: 0xbaf9, 0x1a6f: 0x1429,
1826 0x1a70: 0x1a31, 0x1a71: 0xbb11, 0x1a72: 0xbb29, 0x1a73: 0xbb41, 0x1a74: 0xbb59, 0x1a75: 0xbb71,
1827 0x1a76: 0xbb89, 0x1a77: 0x2109, 0x1a78: 0x1111, 0x1a79: 0x1429, 0x1a7a: 0xbba1, 0x1a7b: 0xbbb9,
1828 0x1a7c: 0xbbd1, 0x1a7d: 0x10e1, 0x1a7e: 0x10f9, 0x1a7f: 0xbbe9,
1829 // Block 0x6a, offset 0x1a80
1830 0x1a80: 0x2079, 0x1a81: 0xbc01, 0x1a82: 0xbab1, 0x1a83: 0x1099, 0x1a84: 0x10b1, 0x1a85: 0x10c9,
1831 0x1a86: 0xbac9, 0x1a87: 0xbae1, 0x1a88: 0xbaf9, 0x1a89: 0x1429, 0x1a8a: 0x1a31, 0x1a8b: 0xbb11,
1832 0x1a8c: 0xbb29, 0x1a8d: 0xbb41, 0x1a8e: 0xbb59, 0x1a8f: 0xbb71, 0x1a90: 0xbb89, 0x1a91: 0x2109,
1833 0x1a92: 0x1111, 0x1a93: 0xbba1, 0x1a94: 0xbba1, 0x1a95: 0xbbb9, 0x1a96: 0xbbd1, 0x1a97: 0x10e1,
1834 0x1a98: 0x10f9, 0x1a99: 0xbbe9, 0x1a9a: 0x2079, 0x1a9b: 0xbc21, 0x1a9c: 0xbac9, 0x1a9d: 0x1429,
1835 0x1a9e: 0xbb11, 0x1a9f: 0x10e1, 0x1aa0: 0x1111, 0x1aa1: 0x2109, 0x1aa2: 0xbab1, 0x1aa3: 0x1099,
1836 0x1aa4: 0x10b1, 0x1aa5: 0x10c9, 0x1aa6: 0xbac9, 0x1aa7: 0xbae1, 0x1aa8: 0xbaf9, 0x1aa9: 0x1429,
1837 0x1aaa: 0x1a31, 0x1aab: 0xbb11, 0x1aac: 0xbb29, 0x1aad: 0xbb41, 0x1aae: 0xbb59, 0x1aaf: 0xbb71,
1838 0x1ab0: 0xbb89, 0x1ab1: 0x2109, 0x1ab2: 0x1111, 0x1ab3: 0x1429, 0x1ab4: 0xbba1, 0x1ab5: 0xbbb9,
1839 0x1ab6: 0xbbd1, 0x1ab7: 0x10e1, 0x1ab8: 0x10f9, 0x1ab9: 0xbbe9, 0x1aba: 0x2079, 0x1abb: 0xbc01,
1840 0x1abc: 0xbab1, 0x1abd: 0x1099, 0x1abe: 0x10b1, 0x1abf: 0x10c9,
1841 // Block 0x6b, offset 0x1ac0
1842 0x1ac0: 0xbac9, 0x1ac1: 0xbae1, 0x1ac2: 0xbaf9, 0x1ac3: 0x1429, 0x1ac4: 0x1a31, 0x1ac5: 0xbb11,
1843 0x1ac6: 0xbb29, 0x1ac7: 0xbb41, 0x1ac8: 0xbb59, 0x1ac9: 0xbb71, 0x1aca: 0xbb89, 0x1acb: 0x2109,
1844 0x1acc: 0x1111, 0x1acd: 0xbba1, 0x1ace: 0xbba1, 0x1acf: 0xbbb9, 0x1ad0: 0xbbd1, 0x1ad1: 0x10e1,
1845 0x1ad2: 0x10f9, 0x1ad3: 0xbbe9, 0x1ad4: 0x2079, 0x1ad5: 0xbc21, 0x1ad6: 0xbac9, 0x1ad7: 0x1429,
1846 0x1ad8: 0xbb11, 0x1ad9: 0x10e1, 0x1ada: 0x1111, 0x1adb: 0x2109, 0x1adc: 0xbab1, 0x1add: 0x1099,
1847 0x1ade: 0x10b1, 0x1adf: 0x10c9, 0x1ae0: 0xbac9, 0x1ae1: 0xbae1, 0x1ae2: 0xbaf9, 0x1ae3: 0x1429,
1848 0x1ae4: 0x1a31, 0x1ae5: 0xbb11, 0x1ae6: 0xbb29, 0x1ae7: 0xbb41, 0x1ae8: 0xbb59, 0x1ae9: 0xbb71,
1849 0x1aea: 0xbb89, 0x1aeb: 0x2109, 0x1aec: 0x1111, 0x1aed: 0x1429, 0x1aee: 0xbba1, 0x1aef: 0xbbb9,
1850 0x1af0: 0xbbd1, 0x1af1: 0x10e1, 0x1af2: 0x10f9, 0x1af3: 0xbbe9, 0x1af4: 0x2079, 0x1af5: 0xbc01,
1851 0x1af6: 0xbab1, 0x1af7: 0x1099, 0x1af8: 0x10b1, 0x1af9: 0x10c9, 0x1afa: 0xbac9, 0x1afb: 0xbae1,
1852 0x1afc: 0xbaf9, 0x1afd: 0x1429, 0x1afe: 0x1a31, 0x1aff: 0xbb11,
1853 // Block 0x6c, offset 0x1b00
1854 0x1b00: 0xbb29, 0x1b01: 0xbb41, 0x1b02: 0xbb59, 0x1b03: 0xbb71, 0x1b04: 0xbb89, 0x1b05: 0x2109,
1855 0x1b06: 0x1111, 0x1b07: 0xbba1, 0x1b08: 0xbba1, 0x1b09: 0xbbb9, 0x1b0a: 0xbbd1, 0x1b0b: 0x10e1,
1856 0x1b0c: 0x10f9, 0x1b0d: 0xbbe9, 0x1b0e: 0x2079, 0x1b0f: 0xbc21, 0x1b10: 0xbac9, 0x1b11: 0x1429,
1857 0x1b12: 0xbb11, 0x1b13: 0x10e1, 0x1b14: 0x1111, 0x1b15: 0x2109, 0x1b16: 0xbab1, 0x1b17: 0x1099,
1858 0x1b18: 0x10b1, 0x1b19: 0x10c9, 0x1b1a: 0xbac9, 0x1b1b: 0xbae1, 0x1b1c: 0xbaf9, 0x1b1d: 0x1429,
1859 0x1b1e: 0x1a31, 0x1b1f: 0xbb11, 0x1b20: 0xbb29, 0x1b21: 0xbb41, 0x1b22: 0xbb59, 0x1b23: 0xbb71,
1860 0x1b24: 0xbb89, 0x1b25: 0x2109, 0x1b26: 0x1111, 0x1b27: 0x1429, 0x1b28: 0xbba1, 0x1b29: 0xbbb9,
1861 0x1b2a: 0xbbd1, 0x1b2b: 0x10e1, 0x1b2c: 0x10f9, 0x1b2d: 0xbbe9, 0x1b2e: 0x2079, 0x1b2f: 0xbc01,
1862 0x1b30: 0xbab1, 0x1b31: 0x1099, 0x1b32: 0x10b1, 0x1b33: 0x10c9, 0x1b34: 0xbac9, 0x1b35: 0xbae1,
1863 0x1b36: 0xbaf9, 0x1b37: 0x1429, 0x1b38: 0x1a31, 0x1b39: 0xbb11, 0x1b3a: 0xbb29, 0x1b3b: 0xbb41,
1864 0x1b3c: 0xbb59, 0x1b3d: 0xbb71, 0x1b3e: 0xbb89, 0x1b3f: 0x2109,
1865 // Block 0x6d, offset 0x1b40
1866 0x1b40: 0x1111, 0x1b41: 0xbba1, 0x1b42: 0xbba1, 0x1b43: 0xbbb9, 0x1b44: 0xbbd1, 0x1b45: 0x10e1,
1867 0x1b46: 0x10f9, 0x1b47: 0xbbe9, 0x1b48: 0x2079, 0x1b49: 0xbc21, 0x1b4a: 0xbac9, 0x1b4b: 0x1429,
1868 0x1b4c: 0xbb11, 0x1b4d: 0x10e1, 0x1b4e: 0x1111, 0x1b4f: 0x2109, 0x1b50: 0xbab1, 0x1b51: 0x1099,
1869 0x1b52: 0x10b1, 0x1b53: 0x10c9, 0x1b54: 0xbac9, 0x1b55: 0xbae1, 0x1b56: 0xbaf9, 0x1b57: 0x1429,
1870 0x1b58: 0x1a31, 0x1b59: 0xbb11, 0x1b5a: 0xbb29, 0x1b5b: 0xbb41, 0x1b5c: 0xbb59, 0x1b5d: 0xbb71,
1871 0x1b5e: 0xbb89, 0x1b5f: 0x2109, 0x1b60: 0x1111, 0x1b61: 0x1429, 0x1b62: 0xbba1, 0x1b63: 0xbbb9,
1872 0x1b64: 0xbbd1, 0x1b65: 0x10e1, 0x1b66: 0x10f9, 0x1b67: 0xbbe9, 0x1b68: 0x2079, 0x1b69: 0xbc01,
1873 0x1b6a: 0xbab1, 0x1b6b: 0x1099, 0x1b6c: 0x10b1, 0x1b6d: 0x10c9, 0x1b6e: 0xbac9, 0x1b6f: 0xbae1,
1874 0x1b70: 0xbaf9, 0x1b71: 0x1429, 0x1b72: 0x1a31, 0x1b73: 0xbb11, 0x1b74: 0xbb29, 0x1b75: 0xbb41,
1875 0x1b76: 0xbb59, 0x1b77: 0xbb71, 0x1b78: 0xbb89, 0x1b79: 0x2109, 0x1b7a: 0x1111, 0x1b7b: 0xbba1,
1876 0x1b7c: 0xbba1, 0x1b7d: 0xbbb9, 0x1b7e: 0xbbd1, 0x1b7f: 0x10e1,
1877 // Block 0x6e, offset 0x1b80
1878 0x1b80: 0x10f9, 0x1b81: 0xbbe9, 0x1b82: 0x2079, 0x1b83: 0xbc21, 0x1b84: 0xbac9, 0x1b85: 0x1429,
1879 0x1b86: 0xbb11, 0x1b87: 0x10e1, 0x1b88: 0x1111, 0x1b89: 0x2109, 0x1b8a: 0xbc41, 0x1b8b: 0xbc41,
1880 0x1b8c: 0x0040, 0x1b8d: 0x0040, 0x1b8e: 0x1f41, 0x1b8f: 0x00c9, 0x1b90: 0x0069, 0x1b91: 0x0079,
1881 0x1b92: 0x1f51, 0x1b93: 0x1f61, 0x1b94: 0x1f71, 0x1b95: 0x1f81, 0x1b96: 0x1f91, 0x1b97: 0x1fa1,
1882 0x1b98: 0x1f41, 0x1b99: 0x00c9, 0x1b9a: 0x0069, 0x1b9b: 0x0079, 0x1b9c: 0x1f51, 0x1b9d: 0x1f61,
1883 0x1b9e: 0x1f71, 0x1b9f: 0x1f81, 0x1ba0: 0x1f91, 0x1ba1: 0x1fa1, 0x1ba2: 0x1f41, 0x1ba3: 0x00c9,
1884 0x1ba4: 0x0069, 0x1ba5: 0x0079, 0x1ba6: 0x1f51, 0x1ba7: 0x1f61, 0x1ba8: 0x1f71, 0x1ba9: 0x1f81,
1885 0x1baa: 0x1f91, 0x1bab: 0x1fa1, 0x1bac: 0x1f41, 0x1bad: 0x00c9, 0x1bae: 0x0069, 0x1baf: 0x0079,
1886 0x1bb0: 0x1f51, 0x1bb1: 0x1f61, 0x1bb2: 0x1f71, 0x1bb3: 0x1f81, 0x1bb4: 0x1f91, 0x1bb5: 0x1fa1,
1887 0x1bb6: 0x1f41, 0x1bb7: 0x00c9, 0x1bb8: 0x0069, 0x1bb9: 0x0079, 0x1bba: 0x1f51, 0x1bbb: 0x1f61,
1888 0x1bbc: 0x1f71, 0x1bbd: 0x1f81, 0x1bbe: 0x1f91, 0x1bbf: 0x1fa1,
1889 // Block 0x6f, offset 0x1bc0
1890 0x1bc0: 0xe115, 0x1bc1: 0xe115, 0x1bc2: 0xe135, 0x1bc3: 0xe135, 0x1bc4: 0xe115, 0x1bc5: 0xe115,
1891 0x1bc6: 0xe175, 0x1bc7: 0xe175, 0x1bc8: 0xe115, 0x1bc9: 0xe115, 0x1bca: 0xe135, 0x1bcb: 0xe135,
1892 0x1bcc: 0xe115, 0x1bcd: 0xe115, 0x1bce: 0xe1f5, 0x1bcf: 0xe1f5, 0x1bd0: 0xe115, 0x1bd1: 0xe115,
1893 0x1bd2: 0xe135, 0x1bd3: 0xe135, 0x1bd4: 0xe115, 0x1bd5: 0xe115, 0x1bd6: 0xe175, 0x1bd7: 0xe175,
1894 0x1bd8: 0xe115, 0x1bd9: 0xe115, 0x1bda: 0xe135, 0x1bdb: 0xe135, 0x1bdc: 0xe115, 0x1bdd: 0xe115,
1895 0x1bde: 0x8b05, 0x1bdf: 0x8b05, 0x1be0: 0x04b5, 0x1be1: 0x04b5, 0x1be2: 0x0208, 0x1be3: 0x0208,
1896 0x1be4: 0x0208, 0x1be5: 0x0208, 0x1be6: 0x0208, 0x1be7: 0x0208, 0x1be8: 0x0208, 0x1be9: 0x0208,
1897 0x1bea: 0x0208, 0x1beb: 0x0208, 0x1bec: 0x0208, 0x1bed: 0x0208, 0x1bee: 0x0208, 0x1bef: 0x0208,
1898 0x1bf0: 0x0208, 0x1bf1: 0x0208, 0x1bf2: 0x0208, 0x1bf3: 0x0208, 0x1bf4: 0x0208, 0x1bf5: 0x0208,
1899 0x1bf6: 0x0208, 0x1bf7: 0x0208, 0x1bf8: 0x0208, 0x1bf9: 0x0208, 0x1bfa: 0x0208, 0x1bfb: 0x0208,
1900 0x1bfc: 0x0208, 0x1bfd: 0x0208, 0x1bfe: 0x0208, 0x1bff: 0x0208,
1901 // Block 0x70, offset 0x1c00
1902 0x1c00: 0xb189, 0x1c01: 0xb1a1, 0x1c02: 0xb201, 0x1c03: 0xb249, 0x1c04: 0x0040, 0x1c05: 0xb411,
1903 0x1c06: 0xb291, 0x1c07: 0xb219, 0x1c08: 0xb309, 0x1c09: 0xb429, 0x1c0a: 0xb399, 0x1c0b: 0xb3b1,
1904 0x1c0c: 0xb3c9, 0x1c0d: 0xb3e1, 0x1c0e: 0xb2a9, 0x1c0f: 0xb339, 0x1c10: 0xb369, 0x1c11: 0xb2d9,
1905 0x1c12: 0xb381, 0x1c13: 0xb279, 0x1c14: 0xb2c1, 0x1c15: 0xb1d1, 0x1c16: 0xb1e9, 0x1c17: 0xb231,
1906 0x1c18: 0xb261, 0x1c19: 0xb2f1, 0x1c1a: 0xb321, 0x1c1b: 0xb351, 0x1c1c: 0xbc59, 0x1c1d: 0x7949,
1907 0x1c1e: 0xbc71, 0x1c1f: 0xbc89, 0x1c20: 0x0040, 0x1c21: 0xb1a1, 0x1c22: 0xb201, 0x1c23: 0x0040,
1908 0x1c24: 0xb3f9, 0x1c25: 0x0040, 0x1c26: 0x0040, 0x1c27: 0xb219, 0x1c28: 0x0040, 0x1c29: 0xb429,
1909 0x1c2a: 0xb399, 0x1c2b: 0xb3b1, 0x1c2c: 0xb3c9, 0x1c2d: 0xb3e1, 0x1c2e: 0xb2a9, 0x1c2f: 0xb339,
1910 0x1c30: 0xb369, 0x1c31: 0xb2d9, 0x1c32: 0xb381, 0x1c33: 0x0040, 0x1c34: 0xb2c1, 0x1c35: 0xb1d1,
1911 0x1c36: 0xb1e9, 0x1c37: 0xb231, 0x1c38: 0x0040, 0x1c39: 0xb2f1, 0x1c3a: 0x0040, 0x1c3b: 0xb351,
1912 0x1c3c: 0x0040, 0x1c3d: 0x0040, 0x1c3e: 0x0040, 0x1c3f: 0x0040,
1913 // Block 0x71, offset 0x1c40
1914 0x1c40: 0x0040, 0x1c41: 0x0040, 0x1c42: 0xb201, 0x1c43: 0x0040, 0x1c44: 0x0040, 0x1c45: 0x0040,
1915 0x1c46: 0x0040, 0x1c47: 0xb219, 0x1c48: 0x0040, 0x1c49: 0xb429, 0x1c4a: 0x0040, 0x1c4b: 0xb3b1,
1916 0x1c4c: 0x0040, 0x1c4d: 0xb3e1, 0x1c4e: 0xb2a9, 0x1c4f: 0xb339, 0x1c50: 0x0040, 0x1c51: 0xb2d9,
1917 0x1c52: 0xb381, 0x1c53: 0x0040, 0x1c54: 0xb2c1, 0x1c55: 0x0040, 0x1c56: 0x0040, 0x1c57: 0xb231,
1918 0x1c58: 0x0040, 0x1c59: 0xb2f1, 0x1c5a: 0x0040, 0x1c5b: 0xb351, 0x1c5c: 0x0040, 0x1c5d: 0x7949,
1919 0x1c5e: 0x0040, 0x1c5f: 0xbc89, 0x1c60: 0x0040, 0x1c61: 0xb1a1, 0x1c62: 0xb201, 0x1c63: 0x0040,
1920 0x1c64: 0xb3f9, 0x1c65: 0x0040, 0x1c66: 0x0040, 0x1c67: 0xb219, 0x1c68: 0xb309, 0x1c69: 0xb429,
1921 0x1c6a: 0xb399, 0x1c6b: 0x0040, 0x1c6c: 0xb3c9, 0x1c6d: 0xb3e1, 0x1c6e: 0xb2a9, 0x1c6f: 0xb339,
1922 0x1c70: 0xb369, 0x1c71: 0xb2d9, 0x1c72: 0xb381, 0x1c73: 0x0040, 0x1c74: 0xb2c1, 0x1c75: 0xb1d1,
1923 0x1c76: 0xb1e9, 0x1c77: 0xb231, 0x1c78: 0x0040, 0x1c79: 0xb2f1, 0x1c7a: 0xb321, 0x1c7b: 0xb351,
1924 0x1c7c: 0xbc59, 0x1c7d: 0x0040, 0x1c7e: 0xbc71, 0x1c7f: 0x0040,
1925 // Block 0x72, offset 0x1c80
1926 0x1c80: 0xb189, 0x1c81: 0xb1a1, 0x1c82: 0xb201, 0x1c83: 0xb249, 0x1c84: 0xb3f9, 0x1c85: 0xb411,
1927 0x1c86: 0xb291, 0x1c87: 0xb219, 0x1c88: 0xb309, 0x1c89: 0xb429, 0x1c8a: 0x0040, 0x1c8b: 0xb3b1,
1928 0x1c8c: 0xb3c9, 0x1c8d: 0xb3e1, 0x1c8e: 0xb2a9, 0x1c8f: 0xb339, 0x1c90: 0xb369, 0x1c91: 0xb2d9,
1929 0x1c92: 0xb381, 0x1c93: 0xb279, 0x1c94: 0xb2c1, 0x1c95: 0xb1d1, 0x1c96: 0xb1e9, 0x1c97: 0xb231,
1930 0x1c98: 0xb261, 0x1c99: 0xb2f1, 0x1c9a: 0xb321, 0x1c9b: 0xb351, 0x1c9c: 0x0040, 0x1c9d: 0x0040,
1931 0x1c9e: 0x0040, 0x1c9f: 0x0040, 0x1ca0: 0x0040, 0x1ca1: 0xb1a1, 0x1ca2: 0xb201, 0x1ca3: 0xb249,
1932 0x1ca4: 0x0040, 0x1ca5: 0xb411, 0x1ca6: 0xb291, 0x1ca7: 0xb219, 0x1ca8: 0xb309, 0x1ca9: 0xb429,
1933 0x1caa: 0x0040, 0x1cab: 0xb3b1, 0x1cac: 0xb3c9, 0x1cad: 0xb3e1, 0x1cae: 0xb2a9, 0x1caf: 0xb339,
1934 0x1cb0: 0xb369, 0x1cb1: 0xb2d9, 0x1cb2: 0xb381, 0x1cb3: 0xb279, 0x1cb4: 0xb2c1, 0x1cb5: 0xb1d1,
1935 0x1cb6: 0xb1e9, 0x1cb7: 0xb231, 0x1cb8: 0xb261, 0x1cb9: 0xb2f1, 0x1cba: 0xb321, 0x1cbb: 0xb351,
1936 0x1cbc: 0x0040, 0x1cbd: 0x0040, 0x1cbe: 0x0040, 0x1cbf: 0x0040,
1937 // Block 0x73, offset 0x1cc0
1938 0x1cc0: 0x0040, 0x1cc1: 0xbca2, 0x1cc2: 0xbcba, 0x1cc3: 0xbcd2, 0x1cc4: 0xbcea, 0x1cc5: 0xbd02,
1939 0x1cc6: 0xbd1a, 0x1cc7: 0xbd32, 0x1cc8: 0xbd4a, 0x1cc9: 0xbd62, 0x1cca: 0xbd7a, 0x1ccb: 0x0018,
1940 0x1ccc: 0x0018, 0x1ccd: 0x0040, 0x1cce: 0x0040, 0x1ccf: 0x0040, 0x1cd0: 0xbd92, 0x1cd1: 0xbdb2,
1941 0x1cd2: 0xbdd2, 0x1cd3: 0xbdf2, 0x1cd4: 0xbe12, 0x1cd5: 0xbe32, 0x1cd6: 0xbe52, 0x1cd7: 0xbe72,
1942 0x1cd8: 0xbe92, 0x1cd9: 0xbeb2, 0x1cda: 0xbed2, 0x1cdb: 0xbef2, 0x1cdc: 0xbf12, 0x1cdd: 0xbf32,
1943 0x1cde: 0xbf52, 0x1cdf: 0xbf72, 0x1ce0: 0xbf92, 0x1ce1: 0xbfb2, 0x1ce2: 0xbfd2, 0x1ce3: 0xbff2,
1944 0x1ce4: 0xc012, 0x1ce5: 0xc032, 0x1ce6: 0xc052, 0x1ce7: 0xc072, 0x1ce8: 0xc092, 0x1ce9: 0xc0b2,
1945 0x1cea: 0xc0d1, 0x1ceb: 0x1159, 0x1cec: 0x0269, 0x1ced: 0x6671, 0x1cee: 0xc111, 0x1cef: 0x0040,
1946 0x1cf0: 0x0039, 0x1cf1: 0x0ee9, 0x1cf2: 0x1159, 0x1cf3: 0x0ef9, 0x1cf4: 0x0f09, 0x1cf5: 0x1199,
1947 0x1cf6: 0x0f31, 0x1cf7: 0x0249, 0x1cf8: 0x0f41, 0x1cf9: 0x0259, 0x1cfa: 0x0f51, 0x1cfb: 0x0359,
1948 0x1cfc: 0x0f61, 0x1cfd: 0x0f71, 0x1cfe: 0x00d9, 0x1cff: 0x0f99,
1949 // Block 0x74, offset 0x1d00
1950 0x1d00: 0x2039, 0x1d01: 0x0269, 0x1d02: 0x01d9, 0x1d03: 0x0fa9, 0x1d04: 0x0fb9, 0x1d05: 0x1089,
1951 0x1d06: 0x0279, 0x1d07: 0x0369, 0x1d08: 0x0289, 0x1d09: 0x13d1, 0x1d0a: 0xc129, 0x1d0b: 0x65b1,
1952 0x1d0c: 0xc141, 0x1d0d: 0x1441, 0x1d0e: 0xc159, 0x1d0f: 0xc179, 0x1d10: 0x0018, 0x1d11: 0x0018,
1953 0x1d12: 0x0018, 0x1d13: 0x0018, 0x1d14: 0x0018, 0x1d15: 0x0018, 0x1d16: 0x0018, 0x1d17: 0x0018,
1954 0x1d18: 0x0018, 0x1d19: 0x0018, 0x1d1a: 0x0018, 0x1d1b: 0x0018, 0x1d1c: 0x0018, 0x1d1d: 0x0018,
1955 0x1d1e: 0x0018, 0x1d1f: 0x0018, 0x1d20: 0x0018, 0x1d21: 0x0018, 0x1d22: 0x0018, 0x1d23: 0x0018,
1956 0x1d24: 0x0018, 0x1d25: 0x0018, 0x1d26: 0x0018, 0x1d27: 0x0018, 0x1d28: 0x0018, 0x1d29: 0x0018,
1957 0x1d2a: 0xc191, 0x1d2b: 0xc1a9, 0x1d2c: 0x0040, 0x1d2d: 0x0040, 0x1d2e: 0x0040, 0x1d2f: 0x0040,
1958 0x1d30: 0x0018, 0x1d31: 0x0018, 0x1d32: 0x0018, 0x1d33: 0x0018, 0x1d34: 0x0018, 0x1d35: 0x0018,
1959 0x1d36: 0x0018, 0x1d37: 0x0018, 0x1d38: 0x0018, 0x1d39: 0x0018, 0x1d3a: 0x0018, 0x1d3b: 0x0018,
1960 0x1d3c: 0x0018, 0x1d3d: 0x0018, 0x1d3e: 0x0018, 0x1d3f: 0x0018,
1961 // Block 0x75, offset 0x1d40
1962 0x1d40: 0xc1d9, 0x1d41: 0xc211, 0x1d42: 0xc249, 0x1d43: 0x0040, 0x1d44: 0x0040, 0x1d45: 0x0040,
1963 0x1d46: 0x0040, 0x1d47: 0x0040, 0x1d48: 0x0040, 0x1d49: 0x0040, 0x1d4a: 0x0040, 0x1d4b: 0x0040,
1964 0x1d4c: 0x0040, 0x1d4d: 0x0040, 0x1d4e: 0x0040, 0x1d4f: 0x0040, 0x1d50: 0xc269, 0x1d51: 0xc289,
1965 0x1d52: 0xc2a9, 0x1d53: 0xc2c9, 0x1d54: 0xc2e9, 0x1d55: 0xc309, 0x1d56: 0xc329, 0x1d57: 0xc349,
1966 0x1d58: 0xc369, 0x1d59: 0xc389, 0x1d5a: 0xc3a9, 0x1d5b: 0xc3c9, 0x1d5c: 0xc3e9, 0x1d5d: 0xc409,
1967 0x1d5e: 0xc429, 0x1d5f: 0xc449, 0x1d60: 0xc469, 0x1d61: 0xc489, 0x1d62: 0xc4a9, 0x1d63: 0xc4c9,
1968 0x1d64: 0xc4e9, 0x1d65: 0xc509, 0x1d66: 0xc529, 0x1d67: 0xc549, 0x1d68: 0xc569, 0x1d69: 0xc589,
1969 0x1d6a: 0xc5a9, 0x1d6b: 0xc5c9, 0x1d6c: 0xc5e9, 0x1d6d: 0xc609, 0x1d6e: 0xc629, 0x1d6f: 0xc649,
1970 0x1d70: 0xc669, 0x1d71: 0xc689, 0x1d72: 0xc6a9, 0x1d73: 0xc6c9, 0x1d74: 0xc6e9, 0x1d75: 0xc709,
1971 0x1d76: 0xc729, 0x1d77: 0xc749, 0x1d78: 0xc769, 0x1d79: 0xc789, 0x1d7a: 0xc7a9, 0x1d7b: 0xc7c9,
1972 0x1d7c: 0x0040, 0x1d7d: 0x0040, 0x1d7e: 0x0040, 0x1d7f: 0x0040,
1973 // Block 0x76, offset 0x1d80
1974 0x1d80: 0xcaf9, 0x1d81: 0xcb19, 0x1d82: 0xcb39, 0x1d83: 0x8b1d, 0x1d84: 0xcb59, 0x1d85: 0xcb79,
1975 0x1d86: 0xcb99, 0x1d87: 0xcbb9, 0x1d88: 0xcbd9, 0x1d89: 0xcbf9, 0x1d8a: 0xcc19, 0x1d8b: 0xcc39,
1976 0x1d8c: 0xcc59, 0x1d8d: 0x8b3d, 0x1d8e: 0xcc79, 0x1d8f: 0xcc99, 0x1d90: 0xccb9, 0x1d91: 0xccd9,
1977 0x1d92: 0x8b5d, 0x1d93: 0xccf9, 0x1d94: 0xcd19, 0x1d95: 0xc429, 0x1d96: 0x8b7d, 0x1d97: 0xcd39,
1978 0x1d98: 0xcd59, 0x1d99: 0xcd79, 0x1d9a: 0xcd99, 0x1d9b: 0xcdb9, 0x1d9c: 0x8b9d, 0x1d9d: 0xcdd9,
1979 0x1d9e: 0xcdf9, 0x1d9f: 0xce19, 0x1da0: 0xce39, 0x1da1: 0xce59, 0x1da2: 0xc789, 0x1da3: 0xce79,
1980 0x1da4: 0xce99, 0x1da5: 0xceb9, 0x1da6: 0xced9, 0x1da7: 0xcef9, 0x1da8: 0xcf19, 0x1da9: 0xcf39,
1981 0x1daa: 0xcf59, 0x1dab: 0xcf79, 0x1dac: 0xcf99, 0x1dad: 0xcfb9, 0x1dae: 0xcfd9, 0x1daf: 0xcff9,
1982 0x1db0: 0xd019, 0x1db1: 0xd039, 0x1db2: 0xd039, 0x1db3: 0xd039, 0x1db4: 0x8bbd, 0x1db5: 0xd059,
1983 0x1db6: 0xd079, 0x1db7: 0xd099, 0x1db8: 0x8bdd, 0x1db9: 0xd0b9, 0x1dba: 0xd0d9, 0x1dbb: 0xd0f9,
1984 0x1dbc: 0xd119, 0x1dbd: 0xd139, 0x1dbe: 0xd159, 0x1dbf: 0xd179,
1985 // Block 0x77, offset 0x1dc0
1986 0x1dc0: 0xd199, 0x1dc1: 0xd1b9, 0x1dc2: 0xd1d9, 0x1dc3: 0xd1f9, 0x1dc4: 0xd219, 0x1dc5: 0xd239,
1987 0x1dc6: 0xd239, 0x1dc7: 0xd259, 0x1dc8: 0xd279, 0x1dc9: 0xd299, 0x1dca: 0xd2b9, 0x1dcb: 0xd2d9,
1988 0x1dcc: 0xd2f9, 0x1dcd: 0xd319, 0x1dce: 0xd339, 0x1dcf: 0xd359, 0x1dd0: 0xd379, 0x1dd1: 0xd399,
1989 0x1dd2: 0xd3b9, 0x1dd3: 0xd3d9, 0x1dd4: 0xd3f9, 0x1dd5: 0xd419, 0x1dd6: 0xd439, 0x1dd7: 0xd459,
1990 0x1dd8: 0xd479, 0x1dd9: 0x8bfd, 0x1dda: 0xd499, 0x1ddb: 0xd4b9, 0x1ddc: 0xd4d9, 0x1ddd: 0xc309,
1991 0x1dde: 0xd4f9, 0x1ddf: 0xd519, 0x1de0: 0x8c1d, 0x1de1: 0x8c3d, 0x1de2: 0xd539, 0x1de3: 0xd559,
1992 0x1de4: 0xd579, 0x1de5: 0xd599, 0x1de6: 0xd5b9, 0x1de7: 0xd5d9, 0x1de8: 0x0040, 0x1de9: 0xd5f9,
1993 0x1dea: 0xd619, 0x1deb: 0xd619, 0x1dec: 0x8c5d, 0x1ded: 0xd639, 0x1dee: 0xd659, 0x1def: 0xd679,
1994 0x1df0: 0xd699, 0x1df1: 0x8c7d, 0x1df2: 0xd6b9, 0x1df3: 0xd6d9, 0x1df4: 0x0040, 0x1df5: 0xd6f9,
1995 0x1df6: 0xd719, 0x1df7: 0xd739, 0x1df8: 0xd759, 0x1df9: 0xd779, 0x1dfa: 0xd799, 0x1dfb: 0x8c9d,
1996 0x1dfc: 0xd7b9, 0x1dfd: 0x8cbd, 0x1dfe: 0xd7d9, 0x1dff: 0xd7f9,
1997 // Block 0x78, offset 0x1e00
1998 0x1e00: 0xd819, 0x1e01: 0xd839, 0x1e02: 0xd859, 0x1e03: 0xd879, 0x1e04: 0xd899, 0x1e05: 0xd8b9,
1999 0x1e06: 0xd8d9, 0x1e07: 0xd8f9, 0x1e08: 0xd919, 0x1e09: 0x8cdd, 0x1e0a: 0xd939, 0x1e0b: 0xd959,
2000 0x1e0c: 0xd979, 0x1e0d: 0xd999, 0x1e0e: 0xd9b9, 0x1e0f: 0x8cfd, 0x1e10: 0xd9d9, 0x1e11: 0x8d1d,
2001 0x1e12: 0x8d3d, 0x1e13: 0xd9f9, 0x1e14: 0xda19, 0x1e15: 0xda19, 0x1e16: 0xda39, 0x1e17: 0x8d5d,
2002 0x1e18: 0x8d7d, 0x1e19: 0xda59, 0x1e1a: 0xda79, 0x1e1b: 0xda99, 0x1e1c: 0xdab9, 0x1e1d: 0xdad9,
2003 0x1e1e: 0xdaf9, 0x1e1f: 0xdb19, 0x1e20: 0xdb39, 0x1e21: 0xdb59, 0x1e22: 0xdb79, 0x1e23: 0xdb99,
2004 0x1e24: 0x8d9d, 0x1e25: 0xdbb9, 0x1e26: 0xdbd9, 0x1e27: 0xdbf9, 0x1e28: 0xdc19, 0x1e29: 0xdbf9,
2005 0x1e2a: 0xdc39, 0x1e2b: 0xdc59, 0x1e2c: 0xdc79, 0x1e2d: 0xdc99, 0x1e2e: 0xdcb9, 0x1e2f: 0xdcd9,
2006 0x1e30: 0xdcf9, 0x1e31: 0xdd19, 0x1e32: 0xdd39, 0x1e33: 0xdd59, 0x1e34: 0xdd79, 0x1e35: 0xdd99,
2007 0x1e36: 0xddb9, 0x1e37: 0xddd9, 0x1e38: 0x8dbd, 0x1e39: 0xddf9, 0x1e3a: 0xde19, 0x1e3b: 0xde39,
2008 0x1e3c: 0xde59, 0x1e3d: 0xde79, 0x1e3e: 0x8ddd, 0x1e3f: 0xde99,
2009 // Block 0x79, offset 0x1e40
2010 0x1e40: 0xe599, 0x1e41: 0xe5b9, 0x1e42: 0xe5d9, 0x1e43: 0xe5f9, 0x1e44: 0xe619, 0x1e45: 0xe639,
2011 0x1e46: 0x8efd, 0x1e47: 0xe659, 0x1e48: 0xe679, 0x1e49: 0xe699, 0x1e4a: 0xe6b9, 0x1e4b: 0xe6d9,
2012 0x1e4c: 0xe6f9, 0x1e4d: 0x8f1d, 0x1e4e: 0xe719, 0x1e4f: 0xe739, 0x1e50: 0x8f3d, 0x1e51: 0x8f5d,
2013 0x1e52: 0xe759, 0x1e53: 0xe779, 0x1e54: 0xe799, 0x1e55: 0xe7b9, 0x1e56: 0xe7d9, 0x1e57: 0xe7f9,
2014 0x1e58: 0xe819, 0x1e59: 0xe839, 0x1e5a: 0xe859, 0x1e5b: 0x8f7d, 0x1e5c: 0xe879, 0x1e5d: 0x8f9d,
2015 0x1e5e: 0xe899, 0x1e5f: 0x0040, 0x1e60: 0xe8b9, 0x1e61: 0xe8d9, 0x1e62: 0xe8f9, 0x1e63: 0x8fbd,
2016 0x1e64: 0xe919, 0x1e65: 0xe939, 0x1e66: 0x8fdd, 0x1e67: 0x8ffd, 0x1e68: 0xe959, 0x1e69: 0xe979,
2017 0x1e6a: 0xe999, 0x1e6b: 0xe9b9, 0x1e6c: 0xe9d9, 0x1e6d: 0xe9d9, 0x1e6e: 0xe9f9, 0x1e6f: 0xea19,
2018 0x1e70: 0xea39, 0x1e71: 0xea59, 0x1e72: 0xea79, 0x1e73: 0xea99, 0x1e74: 0xeab9, 0x1e75: 0x901d,
2019 0x1e76: 0xead9, 0x1e77: 0x903d, 0x1e78: 0xeaf9, 0x1e79: 0x905d, 0x1e7a: 0xeb19, 0x1e7b: 0x907d,
2020 0x1e7c: 0x909d, 0x1e7d: 0x90bd, 0x1e7e: 0xeb39, 0x1e7f: 0xeb59,
2021 // Block 0x7a, offset 0x1e80
2022 0x1e80: 0xeb79, 0x1e81: 0x90dd, 0x1e82: 0x90fd, 0x1e83: 0x911d, 0x1e84: 0x913d, 0x1e85: 0xeb99,
2023 0x1e86: 0xebb9, 0x1e87: 0xebb9, 0x1e88: 0xebd9, 0x1e89: 0xebf9, 0x1e8a: 0xec19, 0x1e8b: 0xec39,
2024 0x1e8c: 0xec59, 0x1e8d: 0x915d, 0x1e8e: 0xec79, 0x1e8f: 0xec99, 0x1e90: 0xecb9, 0x1e91: 0xecd9,
2025 0x1e92: 0x917d, 0x1e93: 0xecf9, 0x1e94: 0x919d, 0x1e95: 0x91bd, 0x1e96: 0xed19, 0x1e97: 0xed39,
2026 0x1e98: 0xed59, 0x1e99: 0xed79, 0x1e9a: 0xed99, 0x1e9b: 0xedb9, 0x1e9c: 0x91dd, 0x1e9d: 0x91fd,
2027 0x1e9e: 0x921d, 0x1e9f: 0x0040, 0x1ea0: 0xedd9, 0x1ea1: 0x923d, 0x1ea2: 0xedf9, 0x1ea3: 0xee19,
2028 0x1ea4: 0xee39, 0x1ea5: 0x925d, 0x1ea6: 0xee59, 0x1ea7: 0xee79, 0x1ea8: 0xee99, 0x1ea9: 0xeeb9,
2029 0x1eaa: 0xeed9, 0x1eab: 0x927d, 0x1eac: 0xeef9, 0x1ead: 0xef19, 0x1eae: 0xef39, 0x1eaf: 0xef59,
2030 0x1eb0: 0xef79, 0x1eb1: 0xef99, 0x1eb2: 0x929d, 0x1eb3: 0x92bd, 0x1eb4: 0xefb9, 0x1eb5: 0x92dd,
2031 0x1eb6: 0xefd9, 0x1eb7: 0x92fd, 0x1eb8: 0xeff9, 0x1eb9: 0xf019, 0x1eba: 0xf039, 0x1ebb: 0x931d,
2032 0x1ebc: 0x933d, 0x1ebd: 0xf059, 0x1ebe: 0x935d, 0x1ebf: 0xf079,
2033 // Block 0x7b, offset 0x1ec0
2034 0x1ec0: 0xf6b9, 0x1ec1: 0xf6d9, 0x1ec2: 0xf6f9, 0x1ec3: 0xf719, 0x1ec4: 0xf739, 0x1ec5: 0x951d,
2035 0x1ec6: 0xf759, 0x1ec7: 0xf779, 0x1ec8: 0xf799, 0x1ec9: 0xf7b9, 0x1eca: 0xf7d9, 0x1ecb: 0x953d,
2036 0x1ecc: 0x955d, 0x1ecd: 0xf7f9, 0x1ece: 0xf819, 0x1ecf: 0xf839, 0x1ed0: 0xf859, 0x1ed1: 0xf879,
2037 0x1ed2: 0xf899, 0x1ed3: 0x957d, 0x1ed4: 0xf8b9, 0x1ed5: 0xf8d9, 0x1ed6: 0xf8f9, 0x1ed7: 0xf919,
2038 0x1ed8: 0x959d, 0x1ed9: 0x95bd, 0x1eda: 0xf939, 0x1edb: 0xf959, 0x1edc: 0xf979, 0x1edd: 0x95dd,
2039 0x1ede: 0xf999, 0x1edf: 0xf9b9, 0x1ee0: 0x6815, 0x1ee1: 0x95fd, 0x1ee2: 0xf9d9, 0x1ee3: 0xf9f9,
2040 0x1ee4: 0xfa19, 0x1ee5: 0x961d, 0x1ee6: 0xfa39, 0x1ee7: 0xfa59, 0x1ee8: 0xfa79, 0x1ee9: 0xfa99,
2041 0x1eea: 0xfab9, 0x1eeb: 0xfad9, 0x1eec: 0xfaf9, 0x1eed: 0x963d, 0x1eee: 0xfb19, 0x1eef: 0xfb39,
2042 0x1ef0: 0xfb59, 0x1ef1: 0x965d, 0x1ef2: 0xfb79, 0x1ef3: 0xfb99, 0x1ef4: 0xfbb9, 0x1ef5: 0xfbd9,
2043 0x1ef6: 0x7b35, 0x1ef7: 0x967d, 0x1ef8: 0xfbf9, 0x1ef9: 0xfc19, 0x1efa: 0xfc39, 0x1efb: 0x969d,
2044 0x1efc: 0xfc59, 0x1efd: 0x96bd, 0x1efe: 0xfc79, 0x1eff: 0xfc79,
2045 // Block 0x7c, offset 0x1f00
2046 0x1f00: 0xfc99, 0x1f01: 0x96dd, 0x1f02: 0xfcb9, 0x1f03: 0xfcd9, 0x1f04: 0xfcf9, 0x1f05: 0xfd19,
2047 0x1f06: 0xfd39, 0x1f07: 0xfd59, 0x1f08: 0xfd79, 0x1f09: 0x96fd, 0x1f0a: 0xfd99, 0x1f0b: 0xfdb9,
2048 0x1f0c: 0xfdd9, 0x1f0d: 0xfdf9, 0x1f0e: 0xfe19, 0x1f0f: 0xfe39, 0x1f10: 0x971d, 0x1f11: 0xfe59,
2049 0x1f12: 0x973d, 0x1f13: 0x975d, 0x1f14: 0x977d, 0x1f15: 0xfe79, 0x1f16: 0xfe99, 0x1f17: 0xfeb9,
2050 0x1f18: 0xfed9, 0x1f19: 0xfef9, 0x1f1a: 0xff19, 0x1f1b: 0xff39, 0x1f1c: 0xff59, 0x1f1d: 0x979d,
2051 0x1f1e: 0x0040, 0x1f1f: 0x0040, 0x1f20: 0x0040, 0x1f21: 0x0040, 0x1f22: 0x0040, 0x1f23: 0x0040,
2052 0x1f24: 0x0040, 0x1f25: 0x0040, 0x1f26: 0x0040, 0x1f27: 0x0040, 0x1f28: 0x0040, 0x1f29: 0x0040,
2053 0x1f2a: 0x0040, 0x1f2b: 0x0040, 0x1f2c: 0x0040, 0x1f2d: 0x0040, 0x1f2e: 0x0040, 0x1f2f: 0x0040,
2054 0x1f30: 0x0040, 0x1f31: 0x0040, 0x1f32: 0x0040, 0x1f33: 0x0040, 0x1f34: 0x0040, 0x1f35: 0x0040,
2055 0x1f36: 0x0040, 0x1f37: 0x0040, 0x1f38: 0x0040, 0x1f39: 0x0040, 0x1f3a: 0x0040, 0x1f3b: 0x0040,
2056 0x1f3c: 0x0040, 0x1f3d: 0x0040, 0x1f3e: 0x0040, 0x1f3f: 0x0040,
2057}
2058
2059// idnaIndex: 35 blocks, 2240 entries, 4480 bytes
2060// Block 0 is the zero block.
2061var idnaIndex = [2240]uint16{
2062 // Block 0x0, offset 0x0
2063 // Block 0x1, offset 0x40
2064 // Block 0x2, offset 0x80
2065 // Block 0x3, offset 0xc0
2066 0xc2: 0x01, 0xc3: 0x7b, 0xc4: 0x02, 0xc5: 0x03, 0xc6: 0x04, 0xc7: 0x05,
2067 0xc8: 0x06, 0xc9: 0x7c, 0xca: 0x7d, 0xcb: 0x07, 0xcc: 0x7e, 0xcd: 0x08, 0xce: 0x09, 0xcf: 0x0a,
2068 0xd0: 0x7f, 0xd1: 0x0b, 0xd2: 0x0c, 0xd3: 0x0d, 0xd4: 0x0e, 0xd5: 0x80, 0xd6: 0x81, 0xd7: 0x82,
2069 0xd8: 0x0f, 0xd9: 0x83, 0xda: 0x84, 0xdb: 0x10, 0xdc: 0x11, 0xdd: 0x85, 0xde: 0x86, 0xdf: 0x87,
2070 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, 0xe4: 0x06, 0xe5: 0x07, 0xe6: 0x07, 0xe7: 0x07,
2071 0xe8: 0x07, 0xe9: 0x08, 0xea: 0x09, 0xeb: 0x07, 0xec: 0x07, 0xed: 0x0a, 0xee: 0x0b, 0xef: 0x0c,
2072 0xf0: 0x1c, 0xf1: 0x1d, 0xf2: 0x1d, 0xf3: 0x1f, 0xf4: 0x20,
2073 // Block 0x4, offset 0x100
2074 0x120: 0x88, 0x121: 0x89, 0x122: 0x8a, 0x123: 0x8b, 0x124: 0x8c, 0x125: 0x12, 0x126: 0x13, 0x127: 0x14,
2075 0x128: 0x15, 0x129: 0x16, 0x12a: 0x17, 0x12b: 0x18, 0x12c: 0x19, 0x12d: 0x1a, 0x12e: 0x1b, 0x12f: 0x8d,
2076 0x130: 0x8e, 0x131: 0x1c, 0x132: 0x1d, 0x133: 0x1e, 0x134: 0x8f, 0x135: 0x1f, 0x136: 0x90, 0x137: 0x91,
2077 0x138: 0x92, 0x139: 0x93, 0x13a: 0x20, 0x13b: 0x94, 0x13c: 0x95, 0x13d: 0x21, 0x13e: 0x22, 0x13f: 0x96,
2078 // Block 0x5, offset 0x140
2079 0x140: 0x97, 0x141: 0x98, 0x142: 0x99, 0x143: 0x9a, 0x144: 0x9b, 0x145: 0x9c, 0x146: 0x9b, 0x147: 0x9b,
2080 0x148: 0x9d, 0x149: 0x9e, 0x14a: 0x9f, 0x14b: 0xa0, 0x14c: 0xa1, 0x14d: 0xa2, 0x14e: 0xa3, 0x14f: 0xa4,
2081 0x150: 0xa5, 0x151: 0x9d, 0x152: 0x9d, 0x153: 0x9d, 0x154: 0x9d, 0x155: 0x9d, 0x156: 0x9d, 0x157: 0x9d,
2082 0x158: 0x9d, 0x159: 0xa6, 0x15a: 0xa7, 0x15b: 0xa8, 0x15c: 0xa9, 0x15d: 0xaa, 0x15e: 0xab, 0x15f: 0xac,
2083 0x160: 0xad, 0x161: 0xae, 0x162: 0xaf, 0x163: 0xb0, 0x164: 0xb1, 0x165: 0xb2, 0x166: 0xb3, 0x167: 0xb4,
2084 0x168: 0xb5, 0x169: 0xb6, 0x16a: 0xb7, 0x16b: 0xb8, 0x16c: 0xb9, 0x16d: 0xba, 0x16e: 0xbb, 0x16f: 0xbc,
2085 0x170: 0xbd, 0x171: 0xbe, 0x172: 0xbf, 0x173: 0xc0, 0x174: 0x23, 0x175: 0x24, 0x176: 0x25, 0x177: 0xc1,
2086 0x178: 0x26, 0x179: 0x26, 0x17a: 0x27, 0x17b: 0x26, 0x17c: 0xc2, 0x17d: 0x28, 0x17e: 0x29, 0x17f: 0x2a,
2087 // Block 0x6, offset 0x180
2088 0x180: 0x2b, 0x181: 0x2c, 0x182: 0x2d, 0x183: 0xc3, 0x184: 0x2e, 0x185: 0x2f, 0x186: 0xc4, 0x187: 0x9b,
2089 0x188: 0xc5, 0x189: 0xc6, 0x18a: 0x9b, 0x18b: 0x9b, 0x18c: 0xc7, 0x18d: 0x9b, 0x18e: 0x9b, 0x18f: 0xc8,
2090 0x190: 0xc9, 0x191: 0x30, 0x192: 0x31, 0x193: 0x32, 0x194: 0x9b, 0x195: 0x9b, 0x196: 0x9b, 0x197: 0x9b,
2091 0x198: 0x9b, 0x199: 0x9b, 0x19a: 0x9b, 0x19b: 0x9b, 0x19c: 0x9b, 0x19d: 0x9b, 0x19e: 0x9b, 0x19f: 0x9b,
2092 0x1a0: 0x9b, 0x1a1: 0x9b, 0x1a2: 0x9b, 0x1a3: 0x9b, 0x1a4: 0x9b, 0x1a5: 0x9b, 0x1a6: 0x9b, 0x1a7: 0x9b,
2093 0x1a8: 0xca, 0x1a9: 0xcb, 0x1aa: 0x9b, 0x1ab: 0xcc, 0x1ac: 0x9b, 0x1ad: 0xcd, 0x1ae: 0xce, 0x1af: 0xcf,
2094 0x1b0: 0xd0, 0x1b1: 0x33, 0x1b2: 0x26, 0x1b3: 0x34, 0x1b4: 0xd1, 0x1b5: 0xd2, 0x1b6: 0xd3, 0x1b7: 0xd4,
2095 0x1b8: 0xd5, 0x1b9: 0xd6, 0x1ba: 0xd7, 0x1bb: 0xd8, 0x1bc: 0xd9, 0x1bd: 0xda, 0x1be: 0xdb, 0x1bf: 0x35,
2096 // Block 0x7, offset 0x1c0
2097 0x1c0: 0x36, 0x1c1: 0xdc, 0x1c2: 0xdd, 0x1c3: 0xde, 0x1c4: 0xdf, 0x1c5: 0x37, 0x1c6: 0x38, 0x1c7: 0xe0,
2098 0x1c8: 0xe1, 0x1c9: 0x39, 0x1ca: 0x3a, 0x1cb: 0x3b, 0x1cc: 0x3c, 0x1cd: 0x3d, 0x1ce: 0x3e, 0x1cf: 0x3f,
2099 0x1d0: 0x9d, 0x1d1: 0x9d, 0x1d2: 0x9d, 0x1d3: 0x9d, 0x1d4: 0x9d, 0x1d5: 0x9d, 0x1d6: 0x9d, 0x1d7: 0x9d,
2100 0x1d8: 0x9d, 0x1d9: 0x9d, 0x1da: 0x9d, 0x1db: 0x9d, 0x1dc: 0x9d, 0x1dd: 0x9d, 0x1de: 0x9d, 0x1df: 0x9d,
2101 0x1e0: 0x9d, 0x1e1: 0x9d, 0x1e2: 0x9d, 0x1e3: 0x9d, 0x1e4: 0x9d, 0x1e5: 0x9d, 0x1e6: 0x9d, 0x1e7: 0x9d,
2102 0x1e8: 0x9d, 0x1e9: 0x9d, 0x1ea: 0x9d, 0x1eb: 0x9d, 0x1ec: 0x9d, 0x1ed: 0x9d, 0x1ee: 0x9d, 0x1ef: 0x9d,
2103 0x1f0: 0x9d, 0x1f1: 0x9d, 0x1f2: 0x9d, 0x1f3: 0x9d, 0x1f4: 0x9d, 0x1f5: 0x9d, 0x1f6: 0x9d, 0x1f7: 0x9d,
2104 0x1f8: 0x9d, 0x1f9: 0x9d, 0x1fa: 0x9d, 0x1fb: 0x9d, 0x1fc: 0x9d, 0x1fd: 0x9d, 0x1fe: 0x9d, 0x1ff: 0x9d,
2105 // Block 0x8, offset 0x200
2106 0x200: 0x9d, 0x201: 0x9d, 0x202: 0x9d, 0x203: 0x9d, 0x204: 0x9d, 0x205: 0x9d, 0x206: 0x9d, 0x207: 0x9d,
2107 0x208: 0x9d, 0x209: 0x9d, 0x20a: 0x9d, 0x20b: 0x9d, 0x20c: 0x9d, 0x20d: 0x9d, 0x20e: 0x9d, 0x20f: 0x9d,
2108 0x210: 0x9d, 0x211: 0x9d, 0x212: 0x9d, 0x213: 0x9d, 0x214: 0x9d, 0x215: 0x9d, 0x216: 0x9d, 0x217: 0x9d,
2109 0x218: 0x9d, 0x219: 0x9d, 0x21a: 0x9d, 0x21b: 0x9d, 0x21c: 0x9d, 0x21d: 0x9d, 0x21e: 0x9d, 0x21f: 0x9d,
2110 0x220: 0x9d, 0x221: 0x9d, 0x222: 0x9d, 0x223: 0x9d, 0x224: 0x9d, 0x225: 0x9d, 0x226: 0x9d, 0x227: 0x9d,
2111 0x228: 0x9d, 0x229: 0x9d, 0x22a: 0x9d, 0x22b: 0x9d, 0x22c: 0x9d, 0x22d: 0x9d, 0x22e: 0x9d, 0x22f: 0x9d,
2112 0x230: 0x9d, 0x231: 0x9d, 0x232: 0x9d, 0x233: 0x9d, 0x234: 0x9d, 0x235: 0x9d, 0x236: 0xb0, 0x237: 0x9b,
2113 0x238: 0x9d, 0x239: 0x9d, 0x23a: 0x9d, 0x23b: 0x9d, 0x23c: 0x9d, 0x23d: 0x9d, 0x23e: 0x9d, 0x23f: 0x9d,
2114 // Block 0x9, offset 0x240
2115 0x240: 0x9d, 0x241: 0x9d, 0x242: 0x9d, 0x243: 0x9d, 0x244: 0x9d, 0x245: 0x9d, 0x246: 0x9d, 0x247: 0x9d,
2116 0x248: 0x9d, 0x249: 0x9d, 0x24a: 0x9d, 0x24b: 0x9d, 0x24c: 0x9d, 0x24d: 0x9d, 0x24e: 0x9d, 0x24f: 0x9d,
2117 0x250: 0x9d, 0x251: 0x9d, 0x252: 0x9d, 0x253: 0x9d, 0x254: 0x9d, 0x255: 0x9d, 0x256: 0x9d, 0x257: 0x9d,
2118 0x258: 0x9d, 0x259: 0x9d, 0x25a: 0x9d, 0x25b: 0x9d, 0x25c: 0x9d, 0x25d: 0x9d, 0x25e: 0x9d, 0x25f: 0x9d,
2119 0x260: 0x9d, 0x261: 0x9d, 0x262: 0x9d, 0x263: 0x9d, 0x264: 0x9d, 0x265: 0x9d, 0x266: 0x9d, 0x267: 0x9d,
2120 0x268: 0x9d, 0x269: 0x9d, 0x26a: 0x9d, 0x26b: 0x9d, 0x26c: 0x9d, 0x26d: 0x9d, 0x26e: 0x9d, 0x26f: 0x9d,
2121 0x270: 0x9d, 0x271: 0x9d, 0x272: 0x9d, 0x273: 0x9d, 0x274: 0x9d, 0x275: 0x9d, 0x276: 0x9d, 0x277: 0x9d,
2122 0x278: 0x9d, 0x279: 0x9d, 0x27a: 0x9d, 0x27b: 0x9d, 0x27c: 0x9d, 0x27d: 0x9d, 0x27e: 0x9d, 0x27f: 0x9d,
2123 // Block 0xa, offset 0x280
2124 0x280: 0x9d, 0x281: 0x9d, 0x282: 0x9d, 0x283: 0x9d, 0x284: 0x9d, 0x285: 0x9d, 0x286: 0x9d, 0x287: 0x9d,
2125 0x288: 0x9d, 0x289: 0x9d, 0x28a: 0x9d, 0x28b: 0x9d, 0x28c: 0x9d, 0x28d: 0x9d, 0x28e: 0x9d, 0x28f: 0x9d,
2126 0x290: 0x9d, 0x291: 0x9d, 0x292: 0x9d, 0x293: 0x9d, 0x294: 0x9d, 0x295: 0x9d, 0x296: 0x9d, 0x297: 0x9d,
2127 0x298: 0x9d, 0x299: 0x9d, 0x29a: 0x9d, 0x29b: 0x9d, 0x29c: 0x9d, 0x29d: 0x9d, 0x29e: 0x9d, 0x29f: 0x9d,
2128 0x2a0: 0x9d, 0x2a1: 0x9d, 0x2a2: 0x9d, 0x2a3: 0x9d, 0x2a4: 0x9d, 0x2a5: 0x9d, 0x2a6: 0x9d, 0x2a7: 0x9d,
2129 0x2a8: 0x9d, 0x2a9: 0x9d, 0x2aa: 0x9d, 0x2ab: 0x9d, 0x2ac: 0x9d, 0x2ad: 0x9d, 0x2ae: 0x9d, 0x2af: 0x9d,
2130 0x2b0: 0x9d, 0x2b1: 0x9d, 0x2b2: 0x9d, 0x2b3: 0x9d, 0x2b4: 0x9d, 0x2b5: 0x9d, 0x2b6: 0x9d, 0x2b7: 0x9d,
2131 0x2b8: 0x9d, 0x2b9: 0x9d, 0x2ba: 0x9d, 0x2bb: 0x9d, 0x2bc: 0x9d, 0x2bd: 0x9d, 0x2be: 0x9d, 0x2bf: 0xe2,
2132 // Block 0xb, offset 0x2c0
2133 0x2c0: 0x9d, 0x2c1: 0x9d, 0x2c2: 0x9d, 0x2c3: 0x9d, 0x2c4: 0x9d, 0x2c5: 0x9d, 0x2c6: 0x9d, 0x2c7: 0x9d,
2134 0x2c8: 0x9d, 0x2c9: 0x9d, 0x2ca: 0x9d, 0x2cb: 0x9d, 0x2cc: 0x9d, 0x2cd: 0x9d, 0x2ce: 0x9d, 0x2cf: 0x9d,
2135 0x2d0: 0x9d, 0x2d1: 0x9d, 0x2d2: 0xe3, 0x2d3: 0xe4, 0x2d4: 0x9d, 0x2d5: 0x9d, 0x2d6: 0x9d, 0x2d7: 0x9d,
2136 0x2d8: 0xe5, 0x2d9: 0x40, 0x2da: 0x41, 0x2db: 0xe6, 0x2dc: 0x42, 0x2dd: 0x43, 0x2de: 0x44, 0x2df: 0xe7,
2137 0x2e0: 0xe8, 0x2e1: 0xe9, 0x2e2: 0xea, 0x2e3: 0xeb, 0x2e4: 0xec, 0x2e5: 0xed, 0x2e6: 0xee, 0x2e7: 0xef,
2138 0x2e8: 0xf0, 0x2e9: 0xf1, 0x2ea: 0xf2, 0x2eb: 0xf3, 0x2ec: 0xf4, 0x2ed: 0xf5, 0x2ee: 0xf6, 0x2ef: 0xf7,
2139 0x2f0: 0x9d, 0x2f1: 0x9d, 0x2f2: 0x9d, 0x2f3: 0x9d, 0x2f4: 0x9d, 0x2f5: 0x9d, 0x2f6: 0x9d, 0x2f7: 0x9d,
2140 0x2f8: 0x9d, 0x2f9: 0x9d, 0x2fa: 0x9d, 0x2fb: 0x9d, 0x2fc: 0x9d, 0x2fd: 0x9d, 0x2fe: 0x9d, 0x2ff: 0x9d,
2141 // Block 0xc, offset 0x300
2142 0x300: 0x9d, 0x301: 0x9d, 0x302: 0x9d, 0x303: 0x9d, 0x304: 0x9d, 0x305: 0x9d, 0x306: 0x9d, 0x307: 0x9d,
2143 0x308: 0x9d, 0x309: 0x9d, 0x30a: 0x9d, 0x30b: 0x9d, 0x30c: 0x9d, 0x30d: 0x9d, 0x30e: 0x9d, 0x30f: 0x9d,
2144 0x310: 0x9d, 0x311: 0x9d, 0x312: 0x9d, 0x313: 0x9d, 0x314: 0x9d, 0x315: 0x9d, 0x316: 0x9d, 0x317: 0x9d,
2145 0x318: 0x9d, 0x319: 0x9d, 0x31a: 0x9d, 0x31b: 0x9d, 0x31c: 0x9d, 0x31d: 0x9d, 0x31e: 0xf8, 0x31f: 0xf9,
2146 // Block 0xd, offset 0x340
2147 0x340: 0xb8, 0x341: 0xb8, 0x342: 0xb8, 0x343: 0xb8, 0x344: 0xb8, 0x345: 0xb8, 0x346: 0xb8, 0x347: 0xb8,
2148 0x348: 0xb8, 0x349: 0xb8, 0x34a: 0xb8, 0x34b: 0xb8, 0x34c: 0xb8, 0x34d: 0xb8, 0x34e: 0xb8, 0x34f: 0xb8,
2149 0x350: 0xb8, 0x351: 0xb8, 0x352: 0xb8, 0x353: 0xb8, 0x354: 0xb8, 0x355: 0xb8, 0x356: 0xb8, 0x357: 0xb8,
2150 0x358: 0xb8, 0x359: 0xb8, 0x35a: 0xb8, 0x35b: 0xb8, 0x35c: 0xb8, 0x35d: 0xb8, 0x35e: 0xb8, 0x35f: 0xb8,
2151 0x360: 0xb8, 0x361: 0xb8, 0x362: 0xb8, 0x363: 0xb8, 0x364: 0xb8, 0x365: 0xb8, 0x366: 0xb8, 0x367: 0xb8,
2152 0x368: 0xb8, 0x369: 0xb8, 0x36a: 0xb8, 0x36b: 0xb8, 0x36c: 0xb8, 0x36d: 0xb8, 0x36e: 0xb8, 0x36f: 0xb8,
2153 0x370: 0xb8, 0x371: 0xb8, 0x372: 0xb8, 0x373: 0xb8, 0x374: 0xb8, 0x375: 0xb8, 0x376: 0xb8, 0x377: 0xb8,
2154 0x378: 0xb8, 0x379: 0xb8, 0x37a: 0xb8, 0x37b: 0xb8, 0x37c: 0xb8, 0x37d: 0xb8, 0x37e: 0xb8, 0x37f: 0xb8,
2155 // Block 0xe, offset 0x380
2156 0x380: 0xb8, 0x381: 0xb8, 0x382: 0xb8, 0x383: 0xb8, 0x384: 0xb8, 0x385: 0xb8, 0x386: 0xb8, 0x387: 0xb8,
2157 0x388: 0xb8, 0x389: 0xb8, 0x38a: 0xb8, 0x38b: 0xb8, 0x38c: 0xb8, 0x38d: 0xb8, 0x38e: 0xb8, 0x38f: 0xb8,
2158 0x390: 0xb8, 0x391: 0xb8, 0x392: 0xb8, 0x393: 0xb8, 0x394: 0xb8, 0x395: 0xb8, 0x396: 0xb8, 0x397: 0xb8,
2159 0x398: 0xb8, 0x399: 0xb8, 0x39a: 0xb8, 0x39b: 0xb8, 0x39c: 0xb8, 0x39d: 0xb8, 0x39e: 0xb8, 0x39f: 0xb8,
2160 0x3a0: 0xb8, 0x3a1: 0xb8, 0x3a2: 0xb8, 0x3a3: 0xb8, 0x3a4: 0xfa, 0x3a5: 0xfb, 0x3a6: 0xfc, 0x3a7: 0xfd,
2161 0x3a8: 0x45, 0x3a9: 0xfe, 0x3aa: 0xff, 0x3ab: 0x46, 0x3ac: 0x47, 0x3ad: 0x48, 0x3ae: 0x49, 0x3af: 0x4a,
2162 0x3b0: 0x100, 0x3b1: 0x4b, 0x3b2: 0x4c, 0x3b3: 0x4d, 0x3b4: 0x4e, 0x3b5: 0x4f, 0x3b6: 0x101, 0x3b7: 0x50,
2163 0x3b8: 0x51, 0x3b9: 0x52, 0x3ba: 0x53, 0x3bb: 0x54, 0x3bc: 0x55, 0x3bd: 0x56, 0x3be: 0x57, 0x3bf: 0x58,
2164 // Block 0xf, offset 0x3c0
2165 0x3c0: 0x102, 0x3c1: 0x103, 0x3c2: 0x9d, 0x3c3: 0x104, 0x3c4: 0x105, 0x3c5: 0x9b, 0x3c6: 0x106, 0x3c7: 0x107,
2166 0x3c8: 0xb8, 0x3c9: 0xb8, 0x3ca: 0x108, 0x3cb: 0x109, 0x3cc: 0x10a, 0x3cd: 0x10b, 0x3ce: 0x10c, 0x3cf: 0x10d,
2167 0x3d0: 0x10e, 0x3d1: 0x9d, 0x3d2: 0x10f, 0x3d3: 0x110, 0x3d4: 0x111, 0x3d5: 0x112, 0x3d6: 0xb8, 0x3d7: 0xb8,
2168 0x3d8: 0x9d, 0x3d9: 0x9d, 0x3da: 0x9d, 0x3db: 0x9d, 0x3dc: 0x113, 0x3dd: 0x114, 0x3de: 0xb8, 0x3df: 0xb8,
2169 0x3e0: 0x115, 0x3e1: 0x116, 0x3e2: 0x117, 0x3e3: 0x118, 0x3e4: 0x119, 0x3e5: 0xb8, 0x3e6: 0x11a, 0x3e7: 0x11b,
2170 0x3e8: 0x11c, 0x3e9: 0x11d, 0x3ea: 0x11e, 0x3eb: 0x59, 0x3ec: 0x11f, 0x3ed: 0x120, 0x3ee: 0x5a, 0x3ef: 0xb8,
2171 0x3f0: 0x9d, 0x3f1: 0x121, 0x3f2: 0x122, 0x3f3: 0x123, 0x3f4: 0xb8, 0x3f5: 0xb8, 0x3f6: 0xb8, 0x3f7: 0xb8,
2172 0x3f8: 0xb8, 0x3f9: 0x124, 0x3fa: 0xb8, 0x3fb: 0xb8, 0x3fc: 0xb8, 0x3fd: 0xb8, 0x3fe: 0xb8, 0x3ff: 0xb8,
2173 // Block 0x10, offset 0x400
2174 0x400: 0x125, 0x401: 0x126, 0x402: 0x127, 0x403: 0x128, 0x404: 0x129, 0x405: 0x12a, 0x406: 0x12b, 0x407: 0x12c,
2175 0x408: 0x12d, 0x409: 0xb8, 0x40a: 0x12e, 0x40b: 0x12f, 0x40c: 0x5b, 0x40d: 0x5c, 0x40e: 0xb8, 0x40f: 0xb8,
2176 0x410: 0x130, 0x411: 0x131, 0x412: 0x132, 0x413: 0x133, 0x414: 0xb8, 0x415: 0xb8, 0x416: 0x134, 0x417: 0x135,
2177 0x418: 0x136, 0x419: 0x137, 0x41a: 0x138, 0x41b: 0x139, 0x41c: 0x13a, 0x41d: 0xb8, 0x41e: 0xb8, 0x41f: 0xb8,
2178 0x420: 0xb8, 0x421: 0xb8, 0x422: 0x13b, 0x423: 0x13c, 0x424: 0xb8, 0x425: 0xb8, 0x426: 0xb8, 0x427: 0xb8,
2179 0x428: 0xb8, 0x429: 0xb8, 0x42a: 0xb8, 0x42b: 0x13d, 0x42c: 0xb8, 0x42d: 0xb8, 0x42e: 0xb8, 0x42f: 0xb8,
2180 0x430: 0x13e, 0x431: 0x13f, 0x432: 0x140, 0x433: 0xb8, 0x434: 0xb8, 0x435: 0xb8, 0x436: 0xb8, 0x437: 0xb8,
2181 0x438: 0xb8, 0x439: 0xb8, 0x43a: 0xb8, 0x43b: 0xb8, 0x43c: 0xb8, 0x43d: 0xb8, 0x43e: 0xb8, 0x43f: 0xb8,
2182 // Block 0x11, offset 0x440
2183 0x440: 0x9d, 0x441: 0x9d, 0x442: 0x9d, 0x443: 0x9d, 0x444: 0x9d, 0x445: 0x9d, 0x446: 0x9d, 0x447: 0x9d,
2184 0x448: 0x9d, 0x449: 0x9d, 0x44a: 0x9d, 0x44b: 0x9d, 0x44c: 0x9d, 0x44d: 0x9d, 0x44e: 0x141, 0x44f: 0xb8,
2185 0x450: 0x9b, 0x451: 0x142, 0x452: 0x9d, 0x453: 0x9d, 0x454: 0x9d, 0x455: 0x143, 0x456: 0xb8, 0x457: 0xb8,
2186 0x458: 0xb8, 0x459: 0xb8, 0x45a: 0xb8, 0x45b: 0xb8, 0x45c: 0xb8, 0x45d: 0xb8, 0x45e: 0xb8, 0x45f: 0xb8,
2187 0x460: 0xb8, 0x461: 0xb8, 0x462: 0xb8, 0x463: 0xb8, 0x464: 0xb8, 0x465: 0xb8, 0x466: 0xb8, 0x467: 0xb8,
2188 0x468: 0xb8, 0x469: 0xb8, 0x46a: 0xb8, 0x46b: 0xb8, 0x46c: 0xb8, 0x46d: 0xb8, 0x46e: 0xb8, 0x46f: 0xb8,
2189 0x470: 0xb8, 0x471: 0xb8, 0x472: 0xb8, 0x473: 0xb8, 0x474: 0xb8, 0x475: 0xb8, 0x476: 0xb8, 0x477: 0xb8,
2190 0x478: 0xb8, 0x479: 0xb8, 0x47a: 0xb8, 0x47b: 0xb8, 0x47c: 0xb8, 0x47d: 0xb8, 0x47e: 0xb8, 0x47f: 0xb8,
2191 // Block 0x12, offset 0x480
2192 0x480: 0x9d, 0x481: 0x9d, 0x482: 0x9d, 0x483: 0x9d, 0x484: 0x9d, 0x485: 0x9d, 0x486: 0x9d, 0x487: 0x9d,
2193 0x488: 0x9d, 0x489: 0x9d, 0x48a: 0x9d, 0x48b: 0x9d, 0x48c: 0x9d, 0x48d: 0x9d, 0x48e: 0x9d, 0x48f: 0x9d,
2194 0x490: 0x144, 0x491: 0xb8, 0x492: 0xb8, 0x493: 0xb8, 0x494: 0xb8, 0x495: 0xb8, 0x496: 0xb8, 0x497: 0xb8,
2195 0x498: 0xb8, 0x499: 0xb8, 0x49a: 0xb8, 0x49b: 0xb8, 0x49c: 0xb8, 0x49d: 0xb8, 0x49e: 0xb8, 0x49f: 0xb8,
2196 0x4a0: 0xb8, 0x4a1: 0xb8, 0x4a2: 0xb8, 0x4a3: 0xb8, 0x4a4: 0xb8, 0x4a5: 0xb8, 0x4a6: 0xb8, 0x4a7: 0xb8,
2197 0x4a8: 0xb8, 0x4a9: 0xb8, 0x4aa: 0xb8, 0x4ab: 0xb8, 0x4ac: 0xb8, 0x4ad: 0xb8, 0x4ae: 0xb8, 0x4af: 0xb8,
2198 0x4b0: 0xb8, 0x4b1: 0xb8, 0x4b2: 0xb8, 0x4b3: 0xb8, 0x4b4: 0xb8, 0x4b5: 0xb8, 0x4b6: 0xb8, 0x4b7: 0xb8,
2199 0x4b8: 0xb8, 0x4b9: 0xb8, 0x4ba: 0xb8, 0x4bb: 0xb8, 0x4bc: 0xb8, 0x4bd: 0xb8, 0x4be: 0xb8, 0x4bf: 0xb8,
2200 // Block 0x13, offset 0x4c0
2201 0x4c0: 0xb8, 0x4c1: 0xb8, 0x4c2: 0xb8, 0x4c3: 0xb8, 0x4c4: 0xb8, 0x4c5: 0xb8, 0x4c6: 0xb8, 0x4c7: 0xb8,
2202 0x4c8: 0xb8, 0x4c9: 0xb8, 0x4ca: 0xb8, 0x4cb: 0xb8, 0x4cc: 0xb8, 0x4cd: 0xb8, 0x4ce: 0xb8, 0x4cf: 0xb8,
2203 0x4d0: 0x9d, 0x4d1: 0x9d, 0x4d2: 0x9d, 0x4d3: 0x9d, 0x4d4: 0x9d, 0x4d5: 0x9d, 0x4d6: 0x9d, 0x4d7: 0x9d,
2204 0x4d8: 0x9d, 0x4d9: 0x145, 0x4da: 0xb8, 0x4db: 0xb8, 0x4dc: 0xb8, 0x4dd: 0xb8, 0x4de: 0xb8, 0x4df: 0xb8,
2205 0x4e0: 0xb8, 0x4e1: 0xb8, 0x4e2: 0xb8, 0x4e3: 0xb8, 0x4e4: 0xb8, 0x4e5: 0xb8, 0x4e6: 0xb8, 0x4e7: 0xb8,
2206 0x4e8: 0xb8, 0x4e9: 0xb8, 0x4ea: 0xb8, 0x4eb: 0xb8, 0x4ec: 0xb8, 0x4ed: 0xb8, 0x4ee: 0xb8, 0x4ef: 0xb8,
2207 0x4f0: 0xb8, 0x4f1: 0xb8, 0x4f2: 0xb8, 0x4f3: 0xb8, 0x4f4: 0xb8, 0x4f5: 0xb8, 0x4f6: 0xb8, 0x4f7: 0xb8,
2208 0x4f8: 0xb8, 0x4f9: 0xb8, 0x4fa: 0xb8, 0x4fb: 0xb8, 0x4fc: 0xb8, 0x4fd: 0xb8, 0x4fe: 0xb8, 0x4ff: 0xb8,
2209 // Block 0x14, offset 0x500
2210 0x500: 0xb8, 0x501: 0xb8, 0x502: 0xb8, 0x503: 0xb8, 0x504: 0xb8, 0x505: 0xb8, 0x506: 0xb8, 0x507: 0xb8,
2211 0x508: 0xb8, 0x509: 0xb8, 0x50a: 0xb8, 0x50b: 0xb8, 0x50c: 0xb8, 0x50d: 0xb8, 0x50e: 0xb8, 0x50f: 0xb8,
2212 0x510: 0xb8, 0x511: 0xb8, 0x512: 0xb8, 0x513: 0xb8, 0x514: 0xb8, 0x515: 0xb8, 0x516: 0xb8, 0x517: 0xb8,
2213 0x518: 0xb8, 0x519: 0xb8, 0x51a: 0xb8, 0x51b: 0xb8, 0x51c: 0xb8, 0x51d: 0xb8, 0x51e: 0xb8, 0x51f: 0xb8,
2214 0x520: 0x9d, 0x521: 0x9d, 0x522: 0x9d, 0x523: 0x9d, 0x524: 0x9d, 0x525: 0x9d, 0x526: 0x9d, 0x527: 0x9d,
2215 0x528: 0x13d, 0x529: 0x146, 0x52a: 0xb8, 0x52b: 0x147, 0x52c: 0x148, 0x52d: 0x149, 0x52e: 0x14a, 0x52f: 0xb8,
2216 0x530: 0xb8, 0x531: 0xb8, 0x532: 0xb8, 0x533: 0xb8, 0x534: 0xb8, 0x535: 0xb8, 0x536: 0xb8, 0x537: 0xb8,
2217 0x538: 0xb8, 0x539: 0xb8, 0x53a: 0xb8, 0x53b: 0xb8, 0x53c: 0x9d, 0x53d: 0x14b, 0x53e: 0x14c, 0x53f: 0x14d,
2218 // Block 0x15, offset 0x540
2219 0x540: 0x9d, 0x541: 0x9d, 0x542: 0x9d, 0x543: 0x9d, 0x544: 0x9d, 0x545: 0x9d, 0x546: 0x9d, 0x547: 0x9d,
2220 0x548: 0x9d, 0x549: 0x9d, 0x54a: 0x9d, 0x54b: 0x9d, 0x54c: 0x9d, 0x54d: 0x9d, 0x54e: 0x9d, 0x54f: 0x9d,
2221 0x550: 0x9d, 0x551: 0x9d, 0x552: 0x9d, 0x553: 0x9d, 0x554: 0x9d, 0x555: 0x9d, 0x556: 0x9d, 0x557: 0x9d,
2222 0x558: 0x9d, 0x559: 0x9d, 0x55a: 0x9d, 0x55b: 0x9d, 0x55c: 0x9d, 0x55d: 0x9d, 0x55e: 0x9d, 0x55f: 0x14e,
2223 0x560: 0x9d, 0x561: 0x9d, 0x562: 0x9d, 0x563: 0x9d, 0x564: 0x9d, 0x565: 0x9d, 0x566: 0x9d, 0x567: 0x9d,
2224 0x568: 0x9d, 0x569: 0x9d, 0x56a: 0x9d, 0x56b: 0x14f, 0x56c: 0xb8, 0x56d: 0xb8, 0x56e: 0xb8, 0x56f: 0xb8,
2225 0x570: 0xb8, 0x571: 0xb8, 0x572: 0xb8, 0x573: 0xb8, 0x574: 0xb8, 0x575: 0xb8, 0x576: 0xb8, 0x577: 0xb8,
2226 0x578: 0xb8, 0x579: 0xb8, 0x57a: 0xb8, 0x57b: 0xb8, 0x57c: 0xb8, 0x57d: 0xb8, 0x57e: 0xb8, 0x57f: 0xb8,
2227 // Block 0x16, offset 0x580
2228 0x580: 0x150, 0x581: 0xb8, 0x582: 0xb8, 0x583: 0xb8, 0x584: 0xb8, 0x585: 0xb8, 0x586: 0xb8, 0x587: 0xb8,
2229 0x588: 0xb8, 0x589: 0xb8, 0x58a: 0xb8, 0x58b: 0xb8, 0x58c: 0xb8, 0x58d: 0xb8, 0x58e: 0xb8, 0x58f: 0xb8,
2230 0x590: 0xb8, 0x591: 0xb8, 0x592: 0xb8, 0x593: 0xb8, 0x594: 0xb8, 0x595: 0xb8, 0x596: 0xb8, 0x597: 0xb8,
2231 0x598: 0xb8, 0x599: 0xb8, 0x59a: 0xb8, 0x59b: 0xb8, 0x59c: 0xb8, 0x59d: 0xb8, 0x59e: 0xb8, 0x59f: 0xb8,
2232 0x5a0: 0xb8, 0x5a1: 0xb8, 0x5a2: 0xb8, 0x5a3: 0xb8, 0x5a4: 0xb8, 0x5a5: 0xb8, 0x5a6: 0xb8, 0x5a7: 0xb8,
2233 0x5a8: 0xb8, 0x5a9: 0xb8, 0x5aa: 0xb8, 0x5ab: 0xb8, 0x5ac: 0xb8, 0x5ad: 0xb8, 0x5ae: 0xb8, 0x5af: 0xb8,
2234 0x5b0: 0x9d, 0x5b1: 0x151, 0x5b2: 0x152, 0x5b3: 0xb8, 0x5b4: 0xb8, 0x5b5: 0xb8, 0x5b6: 0xb8, 0x5b7: 0xb8,
2235 0x5b8: 0xb8, 0x5b9: 0xb8, 0x5ba: 0xb8, 0x5bb: 0xb8, 0x5bc: 0xb8, 0x5bd: 0xb8, 0x5be: 0xb8, 0x5bf: 0xb8,
2236 // Block 0x17, offset 0x5c0
2237 0x5c0: 0x9b, 0x5c1: 0x9b, 0x5c2: 0x9b, 0x5c3: 0x153, 0x5c4: 0x154, 0x5c5: 0x155, 0x5c6: 0x156, 0x5c7: 0x157,
2238 0x5c8: 0x9b, 0x5c9: 0x158, 0x5ca: 0xb8, 0x5cb: 0xb8, 0x5cc: 0x9b, 0x5cd: 0x159, 0x5ce: 0xb8, 0x5cf: 0xb8,
2239 0x5d0: 0x5d, 0x5d1: 0x5e, 0x5d2: 0x5f, 0x5d3: 0x60, 0x5d4: 0x61, 0x5d5: 0x62, 0x5d6: 0x63, 0x5d7: 0x64,
2240 0x5d8: 0x65, 0x5d9: 0x66, 0x5da: 0x67, 0x5db: 0x68, 0x5dc: 0x69, 0x5dd: 0x6a, 0x5de: 0x6b, 0x5df: 0x6c,
2241 0x5e0: 0x9b, 0x5e1: 0x9b, 0x5e2: 0x9b, 0x5e3: 0x9b, 0x5e4: 0x9b, 0x5e5: 0x9b, 0x5e6: 0x9b, 0x5e7: 0x9b,
2242 0x5e8: 0x15a, 0x5e9: 0x15b, 0x5ea: 0x15c, 0x5eb: 0xb8, 0x5ec: 0xb8, 0x5ed: 0xb8, 0x5ee: 0xb8, 0x5ef: 0xb8,
2243 0x5f0: 0xb8, 0x5f1: 0xb8, 0x5f2: 0xb8, 0x5f3: 0xb8, 0x5f4: 0xb8, 0x5f5: 0xb8, 0x5f6: 0xb8, 0x5f7: 0xb8,
2244 0x5f8: 0xb8, 0x5f9: 0xb8, 0x5fa: 0xb8, 0x5fb: 0xb8, 0x5fc: 0xb8, 0x5fd: 0xb8, 0x5fe: 0xb8, 0x5ff: 0xb8,
2245 // Block 0x18, offset 0x600
2246 0x600: 0x15d, 0x601: 0xb8, 0x602: 0xb8, 0x603: 0xb8, 0x604: 0xb8, 0x605: 0xb8, 0x606: 0xb8, 0x607: 0xb8,
2247 0x608: 0xb8, 0x609: 0xb8, 0x60a: 0xb8, 0x60b: 0xb8, 0x60c: 0xb8, 0x60d: 0xb8, 0x60e: 0xb8, 0x60f: 0xb8,
2248 0x610: 0xb8, 0x611: 0xb8, 0x612: 0xb8, 0x613: 0xb8, 0x614: 0xb8, 0x615: 0xb8, 0x616: 0xb8, 0x617: 0xb8,
2249 0x618: 0xb8, 0x619: 0xb8, 0x61a: 0xb8, 0x61b: 0xb8, 0x61c: 0xb8, 0x61d: 0xb8, 0x61e: 0xb8, 0x61f: 0xb8,
2250 0x620: 0x9d, 0x621: 0x9d, 0x622: 0x9d, 0x623: 0x15e, 0x624: 0x6d, 0x625: 0x15f, 0x626: 0xb8, 0x627: 0xb8,
2251 0x628: 0xb8, 0x629: 0xb8, 0x62a: 0xb8, 0x62b: 0xb8, 0x62c: 0xb8, 0x62d: 0xb8, 0x62e: 0xb8, 0x62f: 0xb8,
2252 0x630: 0xb8, 0x631: 0xb8, 0x632: 0xb8, 0x633: 0xb8, 0x634: 0xb8, 0x635: 0xb8, 0x636: 0xb8, 0x637: 0xb8,
2253 0x638: 0x6e, 0x639: 0x6f, 0x63a: 0x70, 0x63b: 0x160, 0x63c: 0xb8, 0x63d: 0xb8, 0x63e: 0xb8, 0x63f: 0xb8,
2254 // Block 0x19, offset 0x640
2255 0x640: 0x161, 0x641: 0x9b, 0x642: 0x162, 0x643: 0x163, 0x644: 0x71, 0x645: 0x72, 0x646: 0x164, 0x647: 0x165,
2256 0x648: 0x73, 0x649: 0x166, 0x64a: 0xb8, 0x64b: 0xb8, 0x64c: 0x9b, 0x64d: 0x9b, 0x64e: 0x9b, 0x64f: 0x9b,
2257 0x650: 0x9b, 0x651: 0x9b, 0x652: 0x9b, 0x653: 0x9b, 0x654: 0x9b, 0x655: 0x9b, 0x656: 0x9b, 0x657: 0x9b,
2258 0x658: 0x9b, 0x659: 0x9b, 0x65a: 0x9b, 0x65b: 0x167, 0x65c: 0x9b, 0x65d: 0x168, 0x65e: 0x9b, 0x65f: 0x169,
2259 0x660: 0x16a, 0x661: 0x16b, 0x662: 0x16c, 0x663: 0xb8, 0x664: 0x16d, 0x665: 0x16e, 0x666: 0x16f, 0x667: 0x170,
2260 0x668: 0xb8, 0x669: 0xb8, 0x66a: 0xb8, 0x66b: 0xb8, 0x66c: 0xb8, 0x66d: 0xb8, 0x66e: 0xb8, 0x66f: 0xb8,
2261 0x670: 0xb8, 0x671: 0xb8, 0x672: 0xb8, 0x673: 0xb8, 0x674: 0xb8, 0x675: 0xb8, 0x676: 0xb8, 0x677: 0xb8,
2262 0x678: 0xb8, 0x679: 0xb8, 0x67a: 0xb8, 0x67b: 0xb8, 0x67c: 0xb8, 0x67d: 0xb8, 0x67e: 0xb8, 0x67f: 0xb8,
2263 // Block 0x1a, offset 0x680
2264 0x680: 0x9d, 0x681: 0x9d, 0x682: 0x9d, 0x683: 0x9d, 0x684: 0x9d, 0x685: 0x9d, 0x686: 0x9d, 0x687: 0x9d,
2265 0x688: 0x9d, 0x689: 0x9d, 0x68a: 0x9d, 0x68b: 0x9d, 0x68c: 0x9d, 0x68d: 0x9d, 0x68e: 0x9d, 0x68f: 0x9d,
2266 0x690: 0x9d, 0x691: 0x9d, 0x692: 0x9d, 0x693: 0x9d, 0x694: 0x9d, 0x695: 0x9d, 0x696: 0x9d, 0x697: 0x9d,
2267 0x698: 0x9d, 0x699: 0x9d, 0x69a: 0x9d, 0x69b: 0x171, 0x69c: 0x9d, 0x69d: 0x9d, 0x69e: 0x9d, 0x69f: 0x9d,
2268 0x6a0: 0x9d, 0x6a1: 0x9d, 0x6a2: 0x9d, 0x6a3: 0x9d, 0x6a4: 0x9d, 0x6a5: 0x9d, 0x6a6: 0x9d, 0x6a7: 0x9d,
2269 0x6a8: 0x9d, 0x6a9: 0x9d, 0x6aa: 0x9d, 0x6ab: 0x9d, 0x6ac: 0x9d, 0x6ad: 0x9d, 0x6ae: 0x9d, 0x6af: 0x9d,
2270 0x6b0: 0x9d, 0x6b1: 0x9d, 0x6b2: 0x9d, 0x6b3: 0x9d, 0x6b4: 0x9d, 0x6b5: 0x9d, 0x6b6: 0x9d, 0x6b7: 0x9d,
2271 0x6b8: 0x9d, 0x6b9: 0x9d, 0x6ba: 0x9d, 0x6bb: 0x9d, 0x6bc: 0x9d, 0x6bd: 0x9d, 0x6be: 0x9d, 0x6bf: 0x9d,
2272 // Block 0x1b, offset 0x6c0
2273 0x6c0: 0x9d, 0x6c1: 0x9d, 0x6c2: 0x9d, 0x6c3: 0x9d, 0x6c4: 0x9d, 0x6c5: 0x9d, 0x6c6: 0x9d, 0x6c7: 0x9d,
2274 0x6c8: 0x9d, 0x6c9: 0x9d, 0x6ca: 0x9d, 0x6cb: 0x9d, 0x6cc: 0x9d, 0x6cd: 0x9d, 0x6ce: 0x9d, 0x6cf: 0x9d,
2275 0x6d0: 0x9d, 0x6d1: 0x9d, 0x6d2: 0x9d, 0x6d3: 0x9d, 0x6d4: 0x9d, 0x6d5: 0x9d, 0x6d6: 0x9d, 0x6d7: 0x9d,
2276 0x6d8: 0x9d, 0x6d9: 0x9d, 0x6da: 0x9d, 0x6db: 0x9d, 0x6dc: 0x172, 0x6dd: 0x9d, 0x6de: 0x9d, 0x6df: 0x9d,
2277 0x6e0: 0x173, 0x6e1: 0x9d, 0x6e2: 0x9d, 0x6e3: 0x9d, 0x6e4: 0x9d, 0x6e5: 0x9d, 0x6e6: 0x9d, 0x6e7: 0x9d,
2278 0x6e8: 0x9d, 0x6e9: 0x9d, 0x6ea: 0x9d, 0x6eb: 0x9d, 0x6ec: 0x9d, 0x6ed: 0x9d, 0x6ee: 0x9d, 0x6ef: 0x9d,
2279 0x6f0: 0x9d, 0x6f1: 0x9d, 0x6f2: 0x9d, 0x6f3: 0x9d, 0x6f4: 0x9d, 0x6f5: 0x9d, 0x6f6: 0x9d, 0x6f7: 0x9d,
2280 0x6f8: 0x9d, 0x6f9: 0x9d, 0x6fa: 0x9d, 0x6fb: 0x9d, 0x6fc: 0x9d, 0x6fd: 0x9d, 0x6fe: 0x9d, 0x6ff: 0x9d,
2281 // Block 0x1c, offset 0x700
2282 0x700: 0x9d, 0x701: 0x9d, 0x702: 0x9d, 0x703: 0x9d, 0x704: 0x9d, 0x705: 0x9d, 0x706: 0x9d, 0x707: 0x9d,
2283 0x708: 0x9d, 0x709: 0x9d, 0x70a: 0x9d, 0x70b: 0x9d, 0x70c: 0x9d, 0x70d: 0x9d, 0x70e: 0x9d, 0x70f: 0x9d,
2284 0x710: 0x9d, 0x711: 0x9d, 0x712: 0x9d, 0x713: 0x9d, 0x714: 0x9d, 0x715: 0x9d, 0x716: 0x9d, 0x717: 0x9d,
2285 0x718: 0x9d, 0x719: 0x9d, 0x71a: 0x9d, 0x71b: 0x9d, 0x71c: 0x9d, 0x71d: 0x9d, 0x71e: 0x9d, 0x71f: 0x9d,
2286 0x720: 0x9d, 0x721: 0x9d, 0x722: 0x9d, 0x723: 0x9d, 0x724: 0x9d, 0x725: 0x9d, 0x726: 0x9d, 0x727: 0x9d,
2287 0x728: 0x9d, 0x729: 0x9d, 0x72a: 0x9d, 0x72b: 0x9d, 0x72c: 0x9d, 0x72d: 0x9d, 0x72e: 0x9d, 0x72f: 0x9d,
2288 0x730: 0x9d, 0x731: 0x9d, 0x732: 0x9d, 0x733: 0x9d, 0x734: 0x9d, 0x735: 0x9d, 0x736: 0x9d, 0x737: 0x9d,
2289 0x738: 0x9d, 0x739: 0x9d, 0x73a: 0x174, 0x73b: 0xb8, 0x73c: 0xb8, 0x73d: 0xb8, 0x73e: 0xb8, 0x73f: 0xb8,
2290 // Block 0x1d, offset 0x740
2291 0x740: 0xb8, 0x741: 0xb8, 0x742: 0xb8, 0x743: 0xb8, 0x744: 0xb8, 0x745: 0xb8, 0x746: 0xb8, 0x747: 0xb8,
2292 0x748: 0xb8, 0x749: 0xb8, 0x74a: 0xb8, 0x74b: 0xb8, 0x74c: 0xb8, 0x74d: 0xb8, 0x74e: 0xb8, 0x74f: 0xb8,
2293 0x750: 0xb8, 0x751: 0xb8, 0x752: 0xb8, 0x753: 0xb8, 0x754: 0xb8, 0x755: 0xb8, 0x756: 0xb8, 0x757: 0xb8,
2294 0x758: 0xb8, 0x759: 0xb8, 0x75a: 0xb8, 0x75b: 0xb8, 0x75c: 0xb8, 0x75d: 0xb8, 0x75e: 0xb8, 0x75f: 0xb8,
2295 0x760: 0x74, 0x761: 0x75, 0x762: 0x76, 0x763: 0x175, 0x764: 0x77, 0x765: 0x78, 0x766: 0x176, 0x767: 0x79,
2296 0x768: 0x7a, 0x769: 0xb8, 0x76a: 0xb8, 0x76b: 0xb8, 0x76c: 0xb8, 0x76d: 0xb8, 0x76e: 0xb8, 0x76f: 0xb8,
2297 0x770: 0xb8, 0x771: 0xb8, 0x772: 0xb8, 0x773: 0xb8, 0x774: 0xb8, 0x775: 0xb8, 0x776: 0xb8, 0x777: 0xb8,
2298 0x778: 0xb8, 0x779: 0xb8, 0x77a: 0xb8, 0x77b: 0xb8, 0x77c: 0xb8, 0x77d: 0xb8, 0x77e: 0xb8, 0x77f: 0xb8,
2299 // Block 0x1e, offset 0x780
2300 0x790: 0x0d, 0x791: 0x0e, 0x792: 0x0f, 0x793: 0x10, 0x794: 0x11, 0x795: 0x0b, 0x796: 0x12, 0x797: 0x07,
2301 0x798: 0x13, 0x799: 0x0b, 0x79a: 0x0b, 0x79b: 0x14, 0x79c: 0x0b, 0x79d: 0x15, 0x79e: 0x16, 0x79f: 0x17,
2302 0x7a0: 0x07, 0x7a1: 0x07, 0x7a2: 0x07, 0x7a3: 0x07, 0x7a4: 0x07, 0x7a5: 0x07, 0x7a6: 0x07, 0x7a7: 0x07,
2303 0x7a8: 0x07, 0x7a9: 0x07, 0x7aa: 0x18, 0x7ab: 0x19, 0x7ac: 0x1a, 0x7ad: 0x0b, 0x7ae: 0x0b, 0x7af: 0x1b,
2304 0x7b0: 0x0b, 0x7b1: 0x0b, 0x7b2: 0x0b, 0x7b3: 0x0b, 0x7b4: 0x0b, 0x7b5: 0x0b, 0x7b6: 0x0b, 0x7b7: 0x0b,
2305 0x7b8: 0x0b, 0x7b9: 0x0b, 0x7ba: 0x0b, 0x7bb: 0x0b, 0x7bc: 0x0b, 0x7bd: 0x0b, 0x7be: 0x0b, 0x7bf: 0x0b,
2306 // Block 0x1f, offset 0x7c0
2307 0x7c0: 0x0b, 0x7c1: 0x0b, 0x7c2: 0x0b, 0x7c3: 0x0b, 0x7c4: 0x0b, 0x7c5: 0x0b, 0x7c6: 0x0b, 0x7c7: 0x0b,
2308 0x7c8: 0x0b, 0x7c9: 0x0b, 0x7ca: 0x0b, 0x7cb: 0x0b, 0x7cc: 0x0b, 0x7cd: 0x0b, 0x7ce: 0x0b, 0x7cf: 0x0b,
2309 0x7d0: 0x0b, 0x7d1: 0x0b, 0x7d2: 0x0b, 0x7d3: 0x0b, 0x7d4: 0x0b, 0x7d5: 0x0b, 0x7d6: 0x0b, 0x7d7: 0x0b,
2310 0x7d8: 0x0b, 0x7d9: 0x0b, 0x7da: 0x0b, 0x7db: 0x0b, 0x7dc: 0x0b, 0x7dd: 0x0b, 0x7de: 0x0b, 0x7df: 0x0b,
2311 0x7e0: 0x0b, 0x7e1: 0x0b, 0x7e2: 0x0b, 0x7e3: 0x0b, 0x7e4: 0x0b, 0x7e5: 0x0b, 0x7e6: 0x0b, 0x7e7: 0x0b,
2312 0x7e8: 0x0b, 0x7e9: 0x0b, 0x7ea: 0x0b, 0x7eb: 0x0b, 0x7ec: 0x0b, 0x7ed: 0x0b, 0x7ee: 0x0b, 0x7ef: 0x0b,
2313 0x7f0: 0x0b, 0x7f1: 0x0b, 0x7f2: 0x0b, 0x7f3: 0x0b, 0x7f4: 0x0b, 0x7f5: 0x0b, 0x7f6: 0x0b, 0x7f7: 0x0b,
2314 0x7f8: 0x0b, 0x7f9: 0x0b, 0x7fa: 0x0b, 0x7fb: 0x0b, 0x7fc: 0x0b, 0x7fd: 0x0b, 0x7fe: 0x0b, 0x7ff: 0x0b,
2315 // Block 0x20, offset 0x800
2316 0x800: 0x177, 0x801: 0x178, 0x802: 0xb8, 0x803: 0xb8, 0x804: 0x179, 0x805: 0x179, 0x806: 0x179, 0x807: 0x17a,
2317 0x808: 0xb8, 0x809: 0xb8, 0x80a: 0xb8, 0x80b: 0xb8, 0x80c: 0xb8, 0x80d: 0xb8, 0x80e: 0xb8, 0x80f: 0xb8,
2318 0x810: 0xb8, 0x811: 0xb8, 0x812: 0xb8, 0x813: 0xb8, 0x814: 0xb8, 0x815: 0xb8, 0x816: 0xb8, 0x817: 0xb8,
2319 0x818: 0xb8, 0x819: 0xb8, 0x81a: 0xb8, 0x81b: 0xb8, 0x81c: 0xb8, 0x81d: 0xb8, 0x81e: 0xb8, 0x81f: 0xb8,
2320 0x820: 0xb8, 0x821: 0xb8, 0x822: 0xb8, 0x823: 0xb8, 0x824: 0xb8, 0x825: 0xb8, 0x826: 0xb8, 0x827: 0xb8,
2321 0x828: 0xb8, 0x829: 0xb8, 0x82a: 0xb8, 0x82b: 0xb8, 0x82c: 0xb8, 0x82d: 0xb8, 0x82e: 0xb8, 0x82f: 0xb8,
2322 0x830: 0xb8, 0x831: 0xb8, 0x832: 0xb8, 0x833: 0xb8, 0x834: 0xb8, 0x835: 0xb8, 0x836: 0xb8, 0x837: 0xb8,
2323 0x838: 0xb8, 0x839: 0xb8, 0x83a: 0xb8, 0x83b: 0xb8, 0x83c: 0xb8, 0x83d: 0xb8, 0x83e: 0xb8, 0x83f: 0xb8,
2324 // Block 0x21, offset 0x840
2325 0x840: 0x0b, 0x841: 0x0b, 0x842: 0x0b, 0x843: 0x0b, 0x844: 0x0b, 0x845: 0x0b, 0x846: 0x0b, 0x847: 0x0b,
2326 0x848: 0x0b, 0x849: 0x0b, 0x84a: 0x0b, 0x84b: 0x0b, 0x84c: 0x0b, 0x84d: 0x0b, 0x84e: 0x0b, 0x84f: 0x0b,
2327 0x850: 0x0b, 0x851: 0x0b, 0x852: 0x0b, 0x853: 0x0b, 0x854: 0x0b, 0x855: 0x0b, 0x856: 0x0b, 0x857: 0x0b,
2328 0x858: 0x0b, 0x859: 0x0b, 0x85a: 0x0b, 0x85b: 0x0b, 0x85c: 0x0b, 0x85d: 0x0b, 0x85e: 0x0b, 0x85f: 0x0b,
2329 0x860: 0x1e, 0x861: 0x0b, 0x862: 0x0b, 0x863: 0x0b, 0x864: 0x0b, 0x865: 0x0b, 0x866: 0x0b, 0x867: 0x0b,
2330 0x868: 0x0b, 0x869: 0x0b, 0x86a: 0x0b, 0x86b: 0x0b, 0x86c: 0x0b, 0x86d: 0x0b, 0x86e: 0x0b, 0x86f: 0x0b,
2331 0x870: 0x0b, 0x871: 0x0b, 0x872: 0x0b, 0x873: 0x0b, 0x874: 0x0b, 0x875: 0x0b, 0x876: 0x0b, 0x877: 0x0b,
2332 0x878: 0x0b, 0x879: 0x0b, 0x87a: 0x0b, 0x87b: 0x0b, 0x87c: 0x0b, 0x87d: 0x0b, 0x87e: 0x0b, 0x87f: 0x0b,
2333 // Block 0x22, offset 0x880
2334 0x880: 0x0b, 0x881: 0x0b, 0x882: 0x0b, 0x883: 0x0b, 0x884: 0x0b, 0x885: 0x0b, 0x886: 0x0b, 0x887: 0x0b,
2335 0x888: 0x0b, 0x889: 0x0b, 0x88a: 0x0b, 0x88b: 0x0b, 0x88c: 0x0b, 0x88d: 0x0b, 0x88e: 0x0b, 0x88f: 0x0b,
2336}
2337
2338// idnaSparseOffset: 256 entries, 512 bytes
2339var idnaSparseOffset = []uint16{0x0, 0x8, 0x19, 0x25, 0x27, 0x2c, 0x34, 0x3f, 0x4b, 0x5c, 0x60, 0x6f, 0x74, 0x7b, 0x87, 0x95, 0xa3, 0xa8, 0xb1, 0xc1, 0xcf, 0xdc, 0xe8, 0xf9, 0x103, 0x10a, 0x117, 0x128, 0x12f, 0x13a, 0x149, 0x157, 0x161, 0x163, 0x167, 0x169, 0x175, 0x180, 0x188, 0x18e, 0x194, 0x199, 0x19e, 0x1a1, 0x1a5, 0x1ab, 0x1b0, 0x1bc, 0x1c6, 0x1cc, 0x1dd, 0x1e7, 0x1ea, 0x1f2, 0x1f5, 0x202, 0x20a, 0x20e, 0x215, 0x21d, 0x22d, 0x239, 0x23b, 0x245, 0x251, 0x25d, 0x269, 0x271, 0x276, 0x280, 0x291, 0x295, 0x2a0, 0x2a4, 0x2ad, 0x2b5, 0x2bb, 0x2c0, 0x2c3, 0x2c6, 0x2ca, 0x2d0, 0x2d4, 0x2d8, 0x2de, 0x2e5, 0x2eb, 0x2f3, 0x2fa, 0x305, 0x30f, 0x313, 0x316, 0x31c, 0x320, 0x322, 0x325, 0x327, 0x32a, 0x334, 0x337, 0x346, 0x34a, 0x34f, 0x352, 0x356, 0x35b, 0x360, 0x366, 0x36c, 0x37b, 0x381, 0x385, 0x394, 0x399, 0x3a1, 0x3ab, 0x3b6, 0x3be, 0x3cf, 0x3d8, 0x3e8, 0x3f5, 0x3ff, 0x404, 0x411, 0x415, 0x41a, 0x41c, 0x420, 0x422, 0x426, 0x42f, 0x435, 0x439, 0x449, 0x453, 0x458, 0x45b, 0x461, 0x468, 0x46d, 0x471, 0x477, 0x47c, 0x485, 0x48a, 0x490, 0x497, 0x49e, 0x4a5, 0x4a9, 0x4ae, 0x4b1, 0x4b6, 0x4c2, 0x4c8, 0x4cd, 0x4d4, 0x4dc, 0x4e1, 0x4e5, 0x4f5, 0x4fc, 0x500, 0x504, 0x50b, 0x50e, 0x511, 0x515, 0x519, 0x51f, 0x528, 0x534, 0x53b, 0x544, 0x54c, 0x553, 0x561, 0x56e, 0x57b, 0x584, 0x588, 0x596, 0x59e, 0x5a9, 0x5b2, 0x5b8, 0x5c0, 0x5c9, 0x5d3, 0x5d6, 0x5e2, 0x5e5, 0x5ea, 0x5ed, 0x5f7, 0x600, 0x60c, 0x60f, 0x614, 0x617, 0x61a, 0x61d, 0x624, 0x62b, 0x62f, 0x63a, 0x63d, 0x643, 0x648, 0x64c, 0x64f, 0x652, 0x655, 0x65a, 0x664, 0x667, 0x66b, 0x67a, 0x686, 0x68a, 0x68f, 0x694, 0x698, 0x69d, 0x6a6, 0x6b1, 0x6b7, 0x6bf, 0x6c3, 0x6c7, 0x6cd, 0x6d3, 0x6d8, 0x6db, 0x6e9, 0x6f0, 0x6f3, 0x6f6, 0x6fa, 0x700, 0x705, 0x70f, 0x714, 0x717, 0x71a, 0x71d, 0x720, 0x724, 0x727, 0x737, 0x748, 0x74d, 0x74f, 0x751}
2340
2341// idnaSparseValues: 1876 entries, 7504 bytes
2342var idnaSparseValues = [1876]valueRange{
2343 // Block 0x0, offset 0x0
2344 {value: 0x0000, lo: 0x07},
2345 {value: 0xe105, lo: 0x80, hi: 0x96},
2346 {value: 0x0018, lo: 0x97, hi: 0x97},
2347 {value: 0xe105, lo: 0x98, hi: 0x9e},
2348 {value: 0x001f, lo: 0x9f, hi: 0x9f},
2349 {value: 0x0008, lo: 0xa0, hi: 0xb6},
2350 {value: 0x0018, lo: 0xb7, hi: 0xb7},
2351 {value: 0x0008, lo: 0xb8, hi: 0xbf},
2352 // Block 0x1, offset 0x8
2353 {value: 0x0000, lo: 0x10},
2354 {value: 0x0008, lo: 0x80, hi: 0x80},
2355 {value: 0xe01d, lo: 0x81, hi: 0x81},
2356 {value: 0x0008, lo: 0x82, hi: 0x82},
2357 {value: 0x0335, lo: 0x83, hi: 0x83},
2358 {value: 0x034d, lo: 0x84, hi: 0x84},
2359 {value: 0x0365, lo: 0x85, hi: 0x85},
2360 {value: 0xe00d, lo: 0x86, hi: 0x86},
2361 {value: 0x0008, lo: 0x87, hi: 0x87},
2362 {value: 0xe00d, lo: 0x88, hi: 0x88},
2363 {value: 0x0008, lo: 0x89, hi: 0x89},
2364 {value: 0xe00d, lo: 0x8a, hi: 0x8a},
2365 {value: 0x0008, lo: 0x8b, hi: 0x8b},
2366 {value: 0xe00d, lo: 0x8c, hi: 0x8c},
2367 {value: 0x0008, lo: 0x8d, hi: 0x8d},
2368 {value: 0xe00d, lo: 0x8e, hi: 0x8e},
2369 {value: 0x0008, lo: 0x8f, hi: 0xbf},
2370 // Block 0x2, offset 0x19
2371 {value: 0x0000, lo: 0x0b},
2372 {value: 0x0008, lo: 0x80, hi: 0xaf},
2373 {value: 0x0249, lo: 0xb0, hi: 0xb0},
2374 {value: 0x037d, lo: 0xb1, hi: 0xb1},
2375 {value: 0x0259, lo: 0xb2, hi: 0xb2},
2376 {value: 0x0269, lo: 0xb3, hi: 0xb3},
2377 {value: 0x034d, lo: 0xb4, hi: 0xb4},
2378 {value: 0x0395, lo: 0xb5, hi: 0xb5},
2379 {value: 0xe1bd, lo: 0xb6, hi: 0xb6},
2380 {value: 0x0279, lo: 0xb7, hi: 0xb7},
2381 {value: 0x0289, lo: 0xb8, hi: 0xb8},
2382 {value: 0x0008, lo: 0xb9, hi: 0xbf},
2383 // Block 0x3, offset 0x25
2384 {value: 0x0000, lo: 0x01},
2385 {value: 0x1308, lo: 0x80, hi: 0xbf},
2386 // Block 0x4, offset 0x27
2387 {value: 0x0000, lo: 0x04},
2388 {value: 0x03f5, lo: 0x80, hi: 0x8f},
2389 {value: 0xe105, lo: 0x90, hi: 0x9f},
2390 {value: 0x049d, lo: 0xa0, hi: 0xaf},
2391 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2392 // Block 0x5, offset 0x2c
2393 {value: 0x0000, lo: 0x07},
2394 {value: 0xe185, lo: 0x80, hi: 0x8f},
2395 {value: 0x0545, lo: 0x90, hi: 0x96},
2396 {value: 0x0040, lo: 0x97, hi: 0x98},
2397 {value: 0x0008, lo: 0x99, hi: 0x99},
2398 {value: 0x0018, lo: 0x9a, hi: 0x9f},
2399 {value: 0x0040, lo: 0xa0, hi: 0xa0},
2400 {value: 0x0008, lo: 0xa1, hi: 0xbf},
2401 // Block 0x6, offset 0x34
2402 {value: 0x0000, lo: 0x0a},
2403 {value: 0x0008, lo: 0x80, hi: 0x86},
2404 {value: 0x0401, lo: 0x87, hi: 0x87},
2405 {value: 0x0040, lo: 0x88, hi: 0x88},
2406 {value: 0x0018, lo: 0x89, hi: 0x8a},
2407 {value: 0x0040, lo: 0x8b, hi: 0x8c},
2408 {value: 0x0018, lo: 0x8d, hi: 0x8f},
2409 {value: 0x0040, lo: 0x90, hi: 0x90},
2410 {value: 0x1308, lo: 0x91, hi: 0xbd},
2411 {value: 0x0018, lo: 0xbe, hi: 0xbe},
2412 {value: 0x1308, lo: 0xbf, hi: 0xbf},
2413 // Block 0x7, offset 0x3f
2414 {value: 0x0000, lo: 0x0b},
2415 {value: 0x0018, lo: 0x80, hi: 0x80},
2416 {value: 0x1308, lo: 0x81, hi: 0x82},
2417 {value: 0x0018, lo: 0x83, hi: 0x83},
2418 {value: 0x1308, lo: 0x84, hi: 0x85},
2419 {value: 0x0018, lo: 0x86, hi: 0x86},
2420 {value: 0x1308, lo: 0x87, hi: 0x87},
2421 {value: 0x0040, lo: 0x88, hi: 0x8f},
2422 {value: 0x0008, lo: 0x90, hi: 0xaa},
2423 {value: 0x0040, lo: 0xab, hi: 0xaf},
2424 {value: 0x0008, lo: 0xb0, hi: 0xb4},
2425 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2426 // Block 0x8, offset 0x4b
2427 {value: 0x0000, lo: 0x10},
2428 {value: 0x0018, lo: 0x80, hi: 0x80},
2429 {value: 0x0208, lo: 0x81, hi: 0x87},
2430 {value: 0x0408, lo: 0x88, hi: 0x88},
2431 {value: 0x0208, lo: 0x89, hi: 0x8a},
2432 {value: 0x1308, lo: 0x8b, hi: 0x9f},
2433 {value: 0x0008, lo: 0xa0, hi: 0xa9},
2434 {value: 0x0018, lo: 0xaa, hi: 0xad},
2435 {value: 0x0208, lo: 0xae, hi: 0xaf},
2436 {value: 0x1308, lo: 0xb0, hi: 0xb0},
2437 {value: 0x0408, lo: 0xb1, hi: 0xb3},
2438 {value: 0x0008, lo: 0xb4, hi: 0xb4},
2439 {value: 0x0429, lo: 0xb5, hi: 0xb5},
2440 {value: 0x0451, lo: 0xb6, hi: 0xb6},
2441 {value: 0x0479, lo: 0xb7, hi: 0xb7},
2442 {value: 0x04a1, lo: 0xb8, hi: 0xb8},
2443 {value: 0x0208, lo: 0xb9, hi: 0xbf},
2444 // Block 0x9, offset 0x5c
2445 {value: 0x0000, lo: 0x03},
2446 {value: 0x0208, lo: 0x80, hi: 0x87},
2447 {value: 0x0408, lo: 0x88, hi: 0x99},
2448 {value: 0x0208, lo: 0x9a, hi: 0xbf},
2449 // Block 0xa, offset 0x60
2450 {value: 0x0000, lo: 0x0e},
2451 {value: 0x1308, lo: 0x80, hi: 0x8a},
2452 {value: 0x0040, lo: 0x8b, hi: 0x8c},
2453 {value: 0x0408, lo: 0x8d, hi: 0x8d},
2454 {value: 0x0208, lo: 0x8e, hi: 0x98},
2455 {value: 0x0408, lo: 0x99, hi: 0x9b},
2456 {value: 0x0208, lo: 0x9c, hi: 0xaa},
2457 {value: 0x0408, lo: 0xab, hi: 0xac},
2458 {value: 0x0208, lo: 0xad, hi: 0xb0},
2459 {value: 0x0408, lo: 0xb1, hi: 0xb1},
2460 {value: 0x0208, lo: 0xb2, hi: 0xb2},
2461 {value: 0x0408, lo: 0xb3, hi: 0xb4},
2462 {value: 0x0208, lo: 0xb5, hi: 0xb7},
2463 {value: 0x0408, lo: 0xb8, hi: 0xb9},
2464 {value: 0x0208, lo: 0xba, hi: 0xbf},
2465 // Block 0xb, offset 0x6f
2466 {value: 0x0000, lo: 0x04},
2467 {value: 0x0008, lo: 0x80, hi: 0xa5},
2468 {value: 0x1308, lo: 0xa6, hi: 0xb0},
2469 {value: 0x0008, lo: 0xb1, hi: 0xb1},
2470 {value: 0x0040, lo: 0xb2, hi: 0xbf},
2471 // Block 0xc, offset 0x74
2472 {value: 0x0000, lo: 0x06},
2473 {value: 0x0008, lo: 0x80, hi: 0x89},
2474 {value: 0x0208, lo: 0x8a, hi: 0xaa},
2475 {value: 0x1308, lo: 0xab, hi: 0xb3},
2476 {value: 0x0008, lo: 0xb4, hi: 0xb5},
2477 {value: 0x0018, lo: 0xb6, hi: 0xba},
2478 {value: 0x0040, lo: 0xbb, hi: 0xbf},
2479 // Block 0xd, offset 0x7b
2480 {value: 0x0000, lo: 0x0b},
2481 {value: 0x0008, lo: 0x80, hi: 0x95},
2482 {value: 0x1308, lo: 0x96, hi: 0x99},
2483 {value: 0x0008, lo: 0x9a, hi: 0x9a},
2484 {value: 0x1308, lo: 0x9b, hi: 0xa3},
2485 {value: 0x0008, lo: 0xa4, hi: 0xa4},
2486 {value: 0x1308, lo: 0xa5, hi: 0xa7},
2487 {value: 0x0008, lo: 0xa8, hi: 0xa8},
2488 {value: 0x1308, lo: 0xa9, hi: 0xad},
2489 {value: 0x0040, lo: 0xae, hi: 0xaf},
2490 {value: 0x0018, lo: 0xb0, hi: 0xbe},
2491 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2492 // Block 0xe, offset 0x87
2493 {value: 0x0000, lo: 0x0d},
2494 {value: 0x0408, lo: 0x80, hi: 0x80},
2495 {value: 0x0208, lo: 0x81, hi: 0x85},
2496 {value: 0x0408, lo: 0x86, hi: 0x87},
2497 {value: 0x0208, lo: 0x88, hi: 0x88},
2498 {value: 0x0408, lo: 0x89, hi: 0x89},
2499 {value: 0x0208, lo: 0x8a, hi: 0x93},
2500 {value: 0x0408, lo: 0x94, hi: 0x94},
2501 {value: 0x0208, lo: 0x95, hi: 0x95},
2502 {value: 0x0008, lo: 0x96, hi: 0x98},
2503 {value: 0x1308, lo: 0x99, hi: 0x9b},
2504 {value: 0x0040, lo: 0x9c, hi: 0x9d},
2505 {value: 0x0018, lo: 0x9e, hi: 0x9e},
2506 {value: 0x0040, lo: 0x9f, hi: 0xbf},
2507 // Block 0xf, offset 0x95
2508 {value: 0x0000, lo: 0x0d},
2509 {value: 0x0040, lo: 0x80, hi: 0x9f},
2510 {value: 0x0208, lo: 0xa0, hi: 0xa9},
2511 {value: 0x0408, lo: 0xaa, hi: 0xac},
2512 {value: 0x0008, lo: 0xad, hi: 0xad},
2513 {value: 0x0408, lo: 0xae, hi: 0xae},
2514 {value: 0x0208, lo: 0xaf, hi: 0xb0},
2515 {value: 0x0408, lo: 0xb1, hi: 0xb2},
2516 {value: 0x0208, lo: 0xb3, hi: 0xb4},
2517 {value: 0x0040, lo: 0xb5, hi: 0xb5},
2518 {value: 0x0208, lo: 0xb6, hi: 0xb8},
2519 {value: 0x0408, lo: 0xb9, hi: 0xb9},
2520 {value: 0x0208, lo: 0xba, hi: 0xbd},
2521 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2522 // Block 0x10, offset 0xa3
2523 {value: 0x0000, lo: 0x04},
2524 {value: 0x0040, lo: 0x80, hi: 0x93},
2525 {value: 0x1308, lo: 0x94, hi: 0xa1},
2526 {value: 0x0040, lo: 0xa2, hi: 0xa2},
2527 {value: 0x1308, lo: 0xa3, hi: 0xbf},
2528 // Block 0x11, offset 0xa8
2529 {value: 0x0000, lo: 0x08},
2530 {value: 0x1308, lo: 0x80, hi: 0x82},
2531 {value: 0x1008, lo: 0x83, hi: 0x83},
2532 {value: 0x0008, lo: 0x84, hi: 0xb9},
2533 {value: 0x1308, lo: 0xba, hi: 0xba},
2534 {value: 0x1008, lo: 0xbb, hi: 0xbb},
2535 {value: 0x1308, lo: 0xbc, hi: 0xbc},
2536 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2537 {value: 0x1008, lo: 0xbe, hi: 0xbf},
2538 // Block 0x12, offset 0xb1
2539 {value: 0x0000, lo: 0x0f},
2540 {value: 0x1308, lo: 0x80, hi: 0x80},
2541 {value: 0x1008, lo: 0x81, hi: 0x82},
2542 {value: 0x0040, lo: 0x83, hi: 0x85},
2543 {value: 0x1008, lo: 0x86, hi: 0x88},
2544 {value: 0x0040, lo: 0x89, hi: 0x89},
2545 {value: 0x1008, lo: 0x8a, hi: 0x8c},
2546 {value: 0x1b08, lo: 0x8d, hi: 0x8d},
2547 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2548 {value: 0x0008, lo: 0x90, hi: 0x90},
2549 {value: 0x0040, lo: 0x91, hi: 0x96},
2550 {value: 0x1008, lo: 0x97, hi: 0x97},
2551 {value: 0x0040, lo: 0x98, hi: 0xa5},
2552 {value: 0x0008, lo: 0xa6, hi: 0xaf},
2553 {value: 0x0018, lo: 0xb0, hi: 0xba},
2554 {value: 0x0040, lo: 0xbb, hi: 0xbf},
2555 // Block 0x13, offset 0xc1
2556 {value: 0x0000, lo: 0x0d},
2557 {value: 0x1308, lo: 0x80, hi: 0x80},
2558 {value: 0x1008, lo: 0x81, hi: 0x83},
2559 {value: 0x0040, lo: 0x84, hi: 0x84},
2560 {value: 0x0008, lo: 0x85, hi: 0x8c},
2561 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2562 {value: 0x0008, lo: 0x8e, hi: 0x90},
2563 {value: 0x0040, lo: 0x91, hi: 0x91},
2564 {value: 0x0008, lo: 0x92, hi: 0xa8},
2565 {value: 0x0040, lo: 0xa9, hi: 0xa9},
2566 {value: 0x0008, lo: 0xaa, hi: 0xb9},
2567 {value: 0x0040, lo: 0xba, hi: 0xbc},
2568 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2569 {value: 0x1308, lo: 0xbe, hi: 0xbf},
2570 // Block 0x14, offset 0xcf
2571 {value: 0x0000, lo: 0x0c},
2572 {value: 0x0040, lo: 0x80, hi: 0x80},
2573 {value: 0x1308, lo: 0x81, hi: 0x81},
2574 {value: 0x1008, lo: 0x82, hi: 0x83},
2575 {value: 0x0040, lo: 0x84, hi: 0x84},
2576 {value: 0x0008, lo: 0x85, hi: 0x8c},
2577 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2578 {value: 0x0008, lo: 0x8e, hi: 0x90},
2579 {value: 0x0040, lo: 0x91, hi: 0x91},
2580 {value: 0x0008, lo: 0x92, hi: 0xba},
2581 {value: 0x0040, lo: 0xbb, hi: 0xbc},
2582 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2583 {value: 0x1008, lo: 0xbe, hi: 0xbf},
2584 // Block 0x15, offset 0xdc
2585 {value: 0x0000, lo: 0x0b},
2586 {value: 0x0040, lo: 0x80, hi: 0x81},
2587 {value: 0x1008, lo: 0x82, hi: 0x83},
2588 {value: 0x0040, lo: 0x84, hi: 0x84},
2589 {value: 0x0008, lo: 0x85, hi: 0x96},
2590 {value: 0x0040, lo: 0x97, hi: 0x99},
2591 {value: 0x0008, lo: 0x9a, hi: 0xb1},
2592 {value: 0x0040, lo: 0xb2, hi: 0xb2},
2593 {value: 0x0008, lo: 0xb3, hi: 0xbb},
2594 {value: 0x0040, lo: 0xbc, hi: 0xbc},
2595 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2596 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2597 // Block 0x16, offset 0xe8
2598 {value: 0x0000, lo: 0x10},
2599 {value: 0x0008, lo: 0x80, hi: 0x86},
2600 {value: 0x0040, lo: 0x87, hi: 0x89},
2601 {value: 0x1b08, lo: 0x8a, hi: 0x8a},
2602 {value: 0x0040, lo: 0x8b, hi: 0x8e},
2603 {value: 0x1008, lo: 0x8f, hi: 0x91},
2604 {value: 0x1308, lo: 0x92, hi: 0x94},
2605 {value: 0x0040, lo: 0x95, hi: 0x95},
2606 {value: 0x1308, lo: 0x96, hi: 0x96},
2607 {value: 0x0040, lo: 0x97, hi: 0x97},
2608 {value: 0x1008, lo: 0x98, hi: 0x9f},
2609 {value: 0x0040, lo: 0xa0, hi: 0xa5},
2610 {value: 0x0008, lo: 0xa6, hi: 0xaf},
2611 {value: 0x0040, lo: 0xb0, hi: 0xb1},
2612 {value: 0x1008, lo: 0xb2, hi: 0xb3},
2613 {value: 0x0018, lo: 0xb4, hi: 0xb4},
2614 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2615 // Block 0x17, offset 0xf9
2616 {value: 0x0000, lo: 0x09},
2617 {value: 0x0040, lo: 0x80, hi: 0x80},
2618 {value: 0x0008, lo: 0x81, hi: 0xb0},
2619 {value: 0x1308, lo: 0xb1, hi: 0xb1},
2620 {value: 0x0008, lo: 0xb2, hi: 0xb2},
2621 {value: 0x08f1, lo: 0xb3, hi: 0xb3},
2622 {value: 0x1308, lo: 0xb4, hi: 0xb9},
2623 {value: 0x1b08, lo: 0xba, hi: 0xba},
2624 {value: 0x0040, lo: 0xbb, hi: 0xbe},
2625 {value: 0x0018, lo: 0xbf, hi: 0xbf},
2626 // Block 0x18, offset 0x103
2627 {value: 0x0000, lo: 0x06},
2628 {value: 0x0008, lo: 0x80, hi: 0x86},
2629 {value: 0x1308, lo: 0x87, hi: 0x8e},
2630 {value: 0x0018, lo: 0x8f, hi: 0x8f},
2631 {value: 0x0008, lo: 0x90, hi: 0x99},
2632 {value: 0x0018, lo: 0x9a, hi: 0x9b},
2633 {value: 0x0040, lo: 0x9c, hi: 0xbf},
2634 // Block 0x19, offset 0x10a
2635 {value: 0x0000, lo: 0x0c},
2636 {value: 0x0008, lo: 0x80, hi: 0x84},
2637 {value: 0x0040, lo: 0x85, hi: 0x85},
2638 {value: 0x0008, lo: 0x86, hi: 0x86},
2639 {value: 0x0040, lo: 0x87, hi: 0x87},
2640 {value: 0x1308, lo: 0x88, hi: 0x8d},
2641 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2642 {value: 0x0008, lo: 0x90, hi: 0x99},
2643 {value: 0x0040, lo: 0x9a, hi: 0x9b},
2644 {value: 0x0961, lo: 0x9c, hi: 0x9c},
2645 {value: 0x0999, lo: 0x9d, hi: 0x9d},
2646 {value: 0x0008, lo: 0x9e, hi: 0x9f},
2647 {value: 0x0040, lo: 0xa0, hi: 0xbf},
2648 // Block 0x1a, offset 0x117
2649 {value: 0x0000, lo: 0x10},
2650 {value: 0x0008, lo: 0x80, hi: 0x80},
2651 {value: 0x0018, lo: 0x81, hi: 0x8a},
2652 {value: 0x0008, lo: 0x8b, hi: 0x8b},
2653 {value: 0xe03d, lo: 0x8c, hi: 0x8c},
2654 {value: 0x0018, lo: 0x8d, hi: 0x97},
2655 {value: 0x1308, lo: 0x98, hi: 0x99},
2656 {value: 0x0018, lo: 0x9a, hi: 0x9f},
2657 {value: 0x0008, lo: 0xa0, hi: 0xa9},
2658 {value: 0x0018, lo: 0xaa, hi: 0xb4},
2659 {value: 0x1308, lo: 0xb5, hi: 0xb5},
2660 {value: 0x0018, lo: 0xb6, hi: 0xb6},
2661 {value: 0x1308, lo: 0xb7, hi: 0xb7},
2662 {value: 0x0018, lo: 0xb8, hi: 0xb8},
2663 {value: 0x1308, lo: 0xb9, hi: 0xb9},
2664 {value: 0x0018, lo: 0xba, hi: 0xbd},
2665 {value: 0x1008, lo: 0xbe, hi: 0xbf},
2666 // Block 0x1b, offset 0x128
2667 {value: 0x0000, lo: 0x06},
2668 {value: 0x0018, lo: 0x80, hi: 0x85},
2669 {value: 0x1308, lo: 0x86, hi: 0x86},
2670 {value: 0x0018, lo: 0x87, hi: 0x8c},
2671 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2672 {value: 0x0018, lo: 0x8e, hi: 0x9a},
2673 {value: 0x0040, lo: 0x9b, hi: 0xbf},
2674 // Block 0x1c, offset 0x12f
2675 {value: 0x0000, lo: 0x0a},
2676 {value: 0x0008, lo: 0x80, hi: 0xaa},
2677 {value: 0x1008, lo: 0xab, hi: 0xac},
2678 {value: 0x1308, lo: 0xad, hi: 0xb0},
2679 {value: 0x1008, lo: 0xb1, hi: 0xb1},
2680 {value: 0x1308, lo: 0xb2, hi: 0xb7},
2681 {value: 0x1008, lo: 0xb8, hi: 0xb8},
2682 {value: 0x1b08, lo: 0xb9, hi: 0xba},
2683 {value: 0x1008, lo: 0xbb, hi: 0xbc},
2684 {value: 0x1308, lo: 0xbd, hi: 0xbe},
2685 {value: 0x0008, lo: 0xbf, hi: 0xbf},
2686 // Block 0x1d, offset 0x13a
2687 {value: 0x0000, lo: 0x0e},
2688 {value: 0x0008, lo: 0x80, hi: 0x89},
2689 {value: 0x0018, lo: 0x8a, hi: 0x8f},
2690 {value: 0x0008, lo: 0x90, hi: 0x95},
2691 {value: 0x1008, lo: 0x96, hi: 0x97},
2692 {value: 0x1308, lo: 0x98, hi: 0x99},
2693 {value: 0x0008, lo: 0x9a, hi: 0x9d},
2694 {value: 0x1308, lo: 0x9e, hi: 0xa0},
2695 {value: 0x0008, lo: 0xa1, hi: 0xa1},
2696 {value: 0x1008, lo: 0xa2, hi: 0xa4},
2697 {value: 0x0008, lo: 0xa5, hi: 0xa6},
2698 {value: 0x1008, lo: 0xa7, hi: 0xad},
2699 {value: 0x0008, lo: 0xae, hi: 0xb0},
2700 {value: 0x1308, lo: 0xb1, hi: 0xb4},
2701 {value: 0x0008, lo: 0xb5, hi: 0xbf},
2702 // Block 0x1e, offset 0x149
2703 {value: 0x0000, lo: 0x0d},
2704 {value: 0x0008, lo: 0x80, hi: 0x81},
2705 {value: 0x1308, lo: 0x82, hi: 0x82},
2706 {value: 0x1008, lo: 0x83, hi: 0x84},
2707 {value: 0x1308, lo: 0x85, hi: 0x86},
2708 {value: 0x1008, lo: 0x87, hi: 0x8c},
2709 {value: 0x1308, lo: 0x8d, hi: 0x8d},
2710 {value: 0x0008, lo: 0x8e, hi: 0x8e},
2711 {value: 0x1008, lo: 0x8f, hi: 0x8f},
2712 {value: 0x0008, lo: 0x90, hi: 0x99},
2713 {value: 0x1008, lo: 0x9a, hi: 0x9c},
2714 {value: 0x1308, lo: 0x9d, hi: 0x9d},
2715 {value: 0x0018, lo: 0x9e, hi: 0x9f},
2716 {value: 0x0040, lo: 0xa0, hi: 0xbf},
2717 // Block 0x1f, offset 0x157
2718 {value: 0x0000, lo: 0x09},
2719 {value: 0x0040, lo: 0x80, hi: 0x86},
2720 {value: 0x055d, lo: 0x87, hi: 0x87},
2721 {value: 0x0040, lo: 0x88, hi: 0x8c},
2722 {value: 0x055d, lo: 0x8d, hi: 0x8d},
2723 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2724 {value: 0x0008, lo: 0x90, hi: 0xba},
2725 {value: 0x0018, lo: 0xbb, hi: 0xbb},
2726 {value: 0xe105, lo: 0xbc, hi: 0xbc},
2727 {value: 0x0008, lo: 0xbd, hi: 0xbf},
2728 // Block 0x20, offset 0x161
2729 {value: 0x0000, lo: 0x01},
2730 {value: 0x0018, lo: 0x80, hi: 0xbf},
2731 // Block 0x21, offset 0x163
2732 {value: 0x0000, lo: 0x03},
2733 {value: 0x0018, lo: 0x80, hi: 0x9e},
2734 {value: 0x0040, lo: 0x9f, hi: 0xa0},
2735 {value: 0x0018, lo: 0xa1, hi: 0xbf},
2736 // Block 0x22, offset 0x167
2737 {value: 0x0000, lo: 0x01},
2738 {value: 0x0008, lo: 0x80, hi: 0xbf},
2739 // Block 0x23, offset 0x169
2740 {value: 0x0000, lo: 0x0b},
2741 {value: 0x0008, lo: 0x80, hi: 0x88},
2742 {value: 0x0040, lo: 0x89, hi: 0x89},
2743 {value: 0x0008, lo: 0x8a, hi: 0x8d},
2744 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2745 {value: 0x0008, lo: 0x90, hi: 0x96},
2746 {value: 0x0040, lo: 0x97, hi: 0x97},
2747 {value: 0x0008, lo: 0x98, hi: 0x98},
2748 {value: 0x0040, lo: 0x99, hi: 0x99},
2749 {value: 0x0008, lo: 0x9a, hi: 0x9d},
2750 {value: 0x0040, lo: 0x9e, hi: 0x9f},
2751 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2752 // Block 0x24, offset 0x175
2753 {value: 0x0000, lo: 0x0a},
2754 {value: 0x0008, lo: 0x80, hi: 0x88},
2755 {value: 0x0040, lo: 0x89, hi: 0x89},
2756 {value: 0x0008, lo: 0x8a, hi: 0x8d},
2757 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2758 {value: 0x0008, lo: 0x90, hi: 0xb0},
2759 {value: 0x0040, lo: 0xb1, hi: 0xb1},
2760 {value: 0x0008, lo: 0xb2, hi: 0xb5},
2761 {value: 0x0040, lo: 0xb6, hi: 0xb7},
2762 {value: 0x0008, lo: 0xb8, hi: 0xbe},
2763 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2764 // Block 0x25, offset 0x180
2765 {value: 0x0000, lo: 0x07},
2766 {value: 0x0008, lo: 0x80, hi: 0x80},
2767 {value: 0x0040, lo: 0x81, hi: 0x81},
2768 {value: 0x0008, lo: 0x82, hi: 0x85},
2769 {value: 0x0040, lo: 0x86, hi: 0x87},
2770 {value: 0x0008, lo: 0x88, hi: 0x96},
2771 {value: 0x0040, lo: 0x97, hi: 0x97},
2772 {value: 0x0008, lo: 0x98, hi: 0xbf},
2773 // Block 0x26, offset 0x188
2774 {value: 0x0000, lo: 0x05},
2775 {value: 0x0008, lo: 0x80, hi: 0x90},
2776 {value: 0x0040, lo: 0x91, hi: 0x91},
2777 {value: 0x0008, lo: 0x92, hi: 0x95},
2778 {value: 0x0040, lo: 0x96, hi: 0x97},
2779 {value: 0x0008, lo: 0x98, hi: 0xbf},
2780 // Block 0x27, offset 0x18e
2781 {value: 0x0000, lo: 0x05},
2782 {value: 0x0008, lo: 0x80, hi: 0x9a},
2783 {value: 0x0040, lo: 0x9b, hi: 0x9c},
2784 {value: 0x1308, lo: 0x9d, hi: 0x9f},
2785 {value: 0x0018, lo: 0xa0, hi: 0xbc},
2786 {value: 0x0040, lo: 0xbd, hi: 0xbf},
2787 // Block 0x28, offset 0x194
2788 {value: 0x0000, lo: 0x04},
2789 {value: 0x0008, lo: 0x80, hi: 0x8f},
2790 {value: 0x0018, lo: 0x90, hi: 0x99},
2791 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2792 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2793 // Block 0x29, offset 0x199
2794 {value: 0x0000, lo: 0x04},
2795 {value: 0x0008, lo: 0x80, hi: 0xb5},
2796 {value: 0x0040, lo: 0xb6, hi: 0xb7},
2797 {value: 0xe045, lo: 0xb8, hi: 0xbd},
2798 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2799 // Block 0x2a, offset 0x19e
2800 {value: 0x0000, lo: 0x02},
2801 {value: 0x0018, lo: 0x80, hi: 0x80},
2802 {value: 0x0008, lo: 0x81, hi: 0xbf},
2803 // Block 0x2b, offset 0x1a1
2804 {value: 0x0000, lo: 0x03},
2805 {value: 0x0008, lo: 0x80, hi: 0xac},
2806 {value: 0x0018, lo: 0xad, hi: 0xae},
2807 {value: 0x0008, lo: 0xaf, hi: 0xbf},
2808 // Block 0x2c, offset 0x1a5
2809 {value: 0x0000, lo: 0x05},
2810 {value: 0x0040, lo: 0x80, hi: 0x80},
2811 {value: 0x0008, lo: 0x81, hi: 0x9a},
2812 {value: 0x0018, lo: 0x9b, hi: 0x9c},
2813 {value: 0x0040, lo: 0x9d, hi: 0x9f},
2814 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2815 // Block 0x2d, offset 0x1ab
2816 {value: 0x0000, lo: 0x04},
2817 {value: 0x0008, lo: 0x80, hi: 0xaa},
2818 {value: 0x0018, lo: 0xab, hi: 0xb0},
2819 {value: 0x0008, lo: 0xb1, hi: 0xb8},
2820 {value: 0x0040, lo: 0xb9, hi: 0xbf},
2821 // Block 0x2e, offset 0x1b0
2822 {value: 0x0000, lo: 0x0b},
2823 {value: 0x0008, lo: 0x80, hi: 0x8c},
2824 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2825 {value: 0x0008, lo: 0x8e, hi: 0x91},
2826 {value: 0x1308, lo: 0x92, hi: 0x93},
2827 {value: 0x1b08, lo: 0x94, hi: 0x94},
2828 {value: 0x0040, lo: 0x95, hi: 0x9f},
2829 {value: 0x0008, lo: 0xa0, hi: 0xb1},
2830 {value: 0x1308, lo: 0xb2, hi: 0xb3},
2831 {value: 0x1b08, lo: 0xb4, hi: 0xb4},
2832 {value: 0x0018, lo: 0xb5, hi: 0xb6},
2833 {value: 0x0040, lo: 0xb7, hi: 0xbf},
2834 // Block 0x2f, offset 0x1bc
2835 {value: 0x0000, lo: 0x09},
2836 {value: 0x0008, lo: 0x80, hi: 0x91},
2837 {value: 0x1308, lo: 0x92, hi: 0x93},
2838 {value: 0x0040, lo: 0x94, hi: 0x9f},
2839 {value: 0x0008, lo: 0xa0, hi: 0xac},
2840 {value: 0x0040, lo: 0xad, hi: 0xad},
2841 {value: 0x0008, lo: 0xae, hi: 0xb0},
2842 {value: 0x0040, lo: 0xb1, hi: 0xb1},
2843 {value: 0x1308, lo: 0xb2, hi: 0xb3},
2844 {value: 0x0040, lo: 0xb4, hi: 0xbf},
2845 // Block 0x30, offset 0x1c6
2846 {value: 0x0000, lo: 0x05},
2847 {value: 0x0008, lo: 0x80, hi: 0xb3},
2848 {value: 0x1340, lo: 0xb4, hi: 0xb5},
2849 {value: 0x1008, lo: 0xb6, hi: 0xb6},
2850 {value: 0x1308, lo: 0xb7, hi: 0xbd},
2851 {value: 0x1008, lo: 0xbe, hi: 0xbf},
2852 // Block 0x31, offset 0x1cc
2853 {value: 0x0000, lo: 0x10},
2854 {value: 0x1008, lo: 0x80, hi: 0x85},
2855 {value: 0x1308, lo: 0x86, hi: 0x86},
2856 {value: 0x1008, lo: 0x87, hi: 0x88},
2857 {value: 0x1308, lo: 0x89, hi: 0x91},
2858 {value: 0x1b08, lo: 0x92, hi: 0x92},
2859 {value: 0x1308, lo: 0x93, hi: 0x93},
2860 {value: 0x0018, lo: 0x94, hi: 0x96},
2861 {value: 0x0008, lo: 0x97, hi: 0x97},
2862 {value: 0x0018, lo: 0x98, hi: 0x9b},
2863 {value: 0x0008, lo: 0x9c, hi: 0x9c},
2864 {value: 0x1308, lo: 0x9d, hi: 0x9d},
2865 {value: 0x0040, lo: 0x9e, hi: 0x9f},
2866 {value: 0x0008, lo: 0xa0, hi: 0xa9},
2867 {value: 0x0040, lo: 0xaa, hi: 0xaf},
2868 {value: 0x0018, lo: 0xb0, hi: 0xb9},
2869 {value: 0x0040, lo: 0xba, hi: 0xbf},
2870 // Block 0x32, offset 0x1dd
2871 {value: 0x0000, lo: 0x09},
2872 {value: 0x0018, lo: 0x80, hi: 0x85},
2873 {value: 0x0040, lo: 0x86, hi: 0x86},
2874 {value: 0x0218, lo: 0x87, hi: 0x87},
2875 {value: 0x0018, lo: 0x88, hi: 0x8a},
2876 {value: 0x13c0, lo: 0x8b, hi: 0x8d},
2877 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2878 {value: 0x0008, lo: 0x90, hi: 0x99},
2879 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2880 {value: 0x0208, lo: 0xa0, hi: 0xbf},
2881 // Block 0x33, offset 0x1e7
2882 {value: 0x0000, lo: 0x02},
2883 {value: 0x0208, lo: 0x80, hi: 0xb7},
2884 {value: 0x0040, lo: 0xb8, hi: 0xbf},
2885 // Block 0x34, offset 0x1ea
2886 {value: 0x0000, lo: 0x07},
2887 {value: 0x0008, lo: 0x80, hi: 0x84},
2888 {value: 0x1308, lo: 0x85, hi: 0x86},
2889 {value: 0x0208, lo: 0x87, hi: 0xa8},
2890 {value: 0x1308, lo: 0xa9, hi: 0xa9},
2891 {value: 0x0208, lo: 0xaa, hi: 0xaa},
2892 {value: 0x0040, lo: 0xab, hi: 0xaf},
2893 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2894 // Block 0x35, offset 0x1f2
2895 {value: 0x0000, lo: 0x02},
2896 {value: 0x0008, lo: 0x80, hi: 0xb5},
2897 {value: 0x0040, lo: 0xb6, hi: 0xbf},
2898 // Block 0x36, offset 0x1f5
2899 {value: 0x0000, lo: 0x0c},
2900 {value: 0x0008, lo: 0x80, hi: 0x9e},
2901 {value: 0x0040, lo: 0x9f, hi: 0x9f},
2902 {value: 0x1308, lo: 0xa0, hi: 0xa2},
2903 {value: 0x1008, lo: 0xa3, hi: 0xa6},
2904 {value: 0x1308, lo: 0xa7, hi: 0xa8},
2905 {value: 0x1008, lo: 0xa9, hi: 0xab},
2906 {value: 0x0040, lo: 0xac, hi: 0xaf},
2907 {value: 0x1008, lo: 0xb0, hi: 0xb1},
2908 {value: 0x1308, lo: 0xb2, hi: 0xb2},
2909 {value: 0x1008, lo: 0xb3, hi: 0xb8},
2910 {value: 0x1308, lo: 0xb9, hi: 0xbb},
2911 {value: 0x0040, lo: 0xbc, hi: 0xbf},
2912 // Block 0x37, offset 0x202
2913 {value: 0x0000, lo: 0x07},
2914 {value: 0x0018, lo: 0x80, hi: 0x80},
2915 {value: 0x0040, lo: 0x81, hi: 0x83},
2916 {value: 0x0018, lo: 0x84, hi: 0x85},
2917 {value: 0x0008, lo: 0x86, hi: 0xad},
2918 {value: 0x0040, lo: 0xae, hi: 0xaf},
2919 {value: 0x0008, lo: 0xb0, hi: 0xb4},
2920 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2921 // Block 0x38, offset 0x20a
2922 {value: 0x0000, lo: 0x03},
2923 {value: 0x0008, lo: 0x80, hi: 0xab},
2924 {value: 0x0040, lo: 0xac, hi: 0xaf},
2925 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2926 // Block 0x39, offset 0x20e
2927 {value: 0x0000, lo: 0x06},
2928 {value: 0x0008, lo: 0x80, hi: 0x89},
2929 {value: 0x0040, lo: 0x8a, hi: 0x8f},
2930 {value: 0x0008, lo: 0x90, hi: 0x99},
2931 {value: 0x0028, lo: 0x9a, hi: 0x9a},
2932 {value: 0x0040, lo: 0x9b, hi: 0x9d},
2933 {value: 0x0018, lo: 0x9e, hi: 0xbf},
2934 // Block 0x3a, offset 0x215
2935 {value: 0x0000, lo: 0x07},
2936 {value: 0x0008, lo: 0x80, hi: 0x96},
2937 {value: 0x1308, lo: 0x97, hi: 0x98},
2938 {value: 0x1008, lo: 0x99, hi: 0x9a},
2939 {value: 0x1308, lo: 0x9b, hi: 0x9b},
2940 {value: 0x0040, lo: 0x9c, hi: 0x9d},
2941 {value: 0x0018, lo: 0x9e, hi: 0x9f},
2942 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2943 // Block 0x3b, offset 0x21d
2944 {value: 0x0000, lo: 0x0f},
2945 {value: 0x0008, lo: 0x80, hi: 0x94},
2946 {value: 0x1008, lo: 0x95, hi: 0x95},
2947 {value: 0x1308, lo: 0x96, hi: 0x96},
2948 {value: 0x1008, lo: 0x97, hi: 0x97},
2949 {value: 0x1308, lo: 0x98, hi: 0x9e},
2950 {value: 0x0040, lo: 0x9f, hi: 0x9f},
2951 {value: 0x1b08, lo: 0xa0, hi: 0xa0},
2952 {value: 0x1008, lo: 0xa1, hi: 0xa1},
2953 {value: 0x1308, lo: 0xa2, hi: 0xa2},
2954 {value: 0x1008, lo: 0xa3, hi: 0xa4},
2955 {value: 0x1308, lo: 0xa5, hi: 0xac},
2956 {value: 0x1008, lo: 0xad, hi: 0xb2},
2957 {value: 0x1308, lo: 0xb3, hi: 0xbc},
2958 {value: 0x0040, lo: 0xbd, hi: 0xbe},
2959 {value: 0x1308, lo: 0xbf, hi: 0xbf},
2960 // Block 0x3c, offset 0x22d
2961 {value: 0x0000, lo: 0x0b},
2962 {value: 0x0008, lo: 0x80, hi: 0x89},
2963 {value: 0x0040, lo: 0x8a, hi: 0x8f},
2964 {value: 0x0008, lo: 0x90, hi: 0x99},
2965 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2966 {value: 0x0018, lo: 0xa0, hi: 0xa6},
2967 {value: 0x0008, lo: 0xa7, hi: 0xa7},
2968 {value: 0x0018, lo: 0xa8, hi: 0xad},
2969 {value: 0x0040, lo: 0xae, hi: 0xaf},
2970 {value: 0x1308, lo: 0xb0, hi: 0xbd},
2971 {value: 0x1318, lo: 0xbe, hi: 0xbe},
2972 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2973 // Block 0x3d, offset 0x239
2974 {value: 0x0000, lo: 0x01},
2975 {value: 0x0040, lo: 0x80, hi: 0xbf},
2976 // Block 0x3e, offset 0x23b
2977 {value: 0x0000, lo: 0x09},
2978 {value: 0x1308, lo: 0x80, hi: 0x83},
2979 {value: 0x1008, lo: 0x84, hi: 0x84},
2980 {value: 0x0008, lo: 0x85, hi: 0xb3},
2981 {value: 0x1308, lo: 0xb4, hi: 0xb4},
2982 {value: 0x1008, lo: 0xb5, hi: 0xb5},
2983 {value: 0x1308, lo: 0xb6, hi: 0xba},
2984 {value: 0x1008, lo: 0xbb, hi: 0xbb},
2985 {value: 0x1308, lo: 0xbc, hi: 0xbc},
2986 {value: 0x1008, lo: 0xbd, hi: 0xbf},
2987 // Block 0x3f, offset 0x245
2988 {value: 0x0000, lo: 0x0b},
2989 {value: 0x1008, lo: 0x80, hi: 0x81},
2990 {value: 0x1308, lo: 0x82, hi: 0x82},
2991 {value: 0x1008, lo: 0x83, hi: 0x83},
2992 {value: 0x1808, lo: 0x84, hi: 0x84},
2993 {value: 0x0008, lo: 0x85, hi: 0x8b},
2994 {value: 0x0040, lo: 0x8c, hi: 0x8f},
2995 {value: 0x0008, lo: 0x90, hi: 0x99},
2996 {value: 0x0018, lo: 0x9a, hi: 0xaa},
2997 {value: 0x1308, lo: 0xab, hi: 0xb3},
2998 {value: 0x0018, lo: 0xb4, hi: 0xbc},
2999 {value: 0x0040, lo: 0xbd, hi: 0xbf},
3000 // Block 0x40, offset 0x251
3001 {value: 0x0000, lo: 0x0b},
3002 {value: 0x1308, lo: 0x80, hi: 0x81},
3003 {value: 0x1008, lo: 0x82, hi: 0x82},
3004 {value: 0x0008, lo: 0x83, hi: 0xa0},
3005 {value: 0x1008, lo: 0xa1, hi: 0xa1},
3006 {value: 0x1308, lo: 0xa2, hi: 0xa5},
3007 {value: 0x1008, lo: 0xa6, hi: 0xa7},
3008 {value: 0x1308, lo: 0xa8, hi: 0xa9},
3009 {value: 0x1808, lo: 0xaa, hi: 0xaa},
3010 {value: 0x1b08, lo: 0xab, hi: 0xab},
3011 {value: 0x1308, lo: 0xac, hi: 0xad},
3012 {value: 0x0008, lo: 0xae, hi: 0xbf},
3013 // Block 0x41, offset 0x25d
3014 {value: 0x0000, lo: 0x0b},
3015 {value: 0x0008, lo: 0x80, hi: 0xa5},
3016 {value: 0x1308, lo: 0xa6, hi: 0xa6},
3017 {value: 0x1008, lo: 0xa7, hi: 0xa7},
3018 {value: 0x1308, lo: 0xa8, hi: 0xa9},
3019 {value: 0x1008, lo: 0xaa, hi: 0xac},
3020 {value: 0x1308, lo: 0xad, hi: 0xad},
3021 {value: 0x1008, lo: 0xae, hi: 0xae},
3022 {value: 0x1308, lo: 0xaf, hi: 0xb1},
3023 {value: 0x1808, lo: 0xb2, hi: 0xb3},
3024 {value: 0x0040, lo: 0xb4, hi: 0xbb},
3025 {value: 0x0018, lo: 0xbc, hi: 0xbf},
3026 // Block 0x42, offset 0x269
3027 {value: 0x0000, lo: 0x07},
3028 {value: 0x0008, lo: 0x80, hi: 0xa3},
3029 {value: 0x1008, lo: 0xa4, hi: 0xab},
3030 {value: 0x1308, lo: 0xac, hi: 0xb3},
3031 {value: 0x1008, lo: 0xb4, hi: 0xb5},
3032 {value: 0x1308, lo: 0xb6, hi: 0xb7},
3033 {value: 0x0040, lo: 0xb8, hi: 0xba},
3034 {value: 0x0018, lo: 0xbb, hi: 0xbf},
3035 // Block 0x43, offset 0x271
3036 {value: 0x0000, lo: 0x04},
3037 {value: 0x0008, lo: 0x80, hi: 0x89},
3038 {value: 0x0040, lo: 0x8a, hi: 0x8c},
3039 {value: 0x0008, lo: 0x8d, hi: 0xbd},
3040 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3041 // Block 0x44, offset 0x276
3042 {value: 0x0000, lo: 0x09},
3043 {value: 0x0e29, lo: 0x80, hi: 0x80},
3044 {value: 0x0e41, lo: 0x81, hi: 0x81},
3045 {value: 0x0e59, lo: 0x82, hi: 0x82},
3046 {value: 0x0e71, lo: 0x83, hi: 0x83},
3047 {value: 0x0e89, lo: 0x84, hi: 0x85},
3048 {value: 0x0ea1, lo: 0x86, hi: 0x86},
3049 {value: 0x0eb9, lo: 0x87, hi: 0x87},
3050 {value: 0x057d, lo: 0x88, hi: 0x88},
3051 {value: 0x0040, lo: 0x89, hi: 0xbf},
3052 // Block 0x45, offset 0x280
3053 {value: 0x0000, lo: 0x10},
3054 {value: 0x0018, lo: 0x80, hi: 0x87},
3055 {value: 0x0040, lo: 0x88, hi: 0x8f},
3056 {value: 0x1308, lo: 0x90, hi: 0x92},
3057 {value: 0x0018, lo: 0x93, hi: 0x93},
3058 {value: 0x1308, lo: 0x94, hi: 0xa0},
3059 {value: 0x1008, lo: 0xa1, hi: 0xa1},
3060 {value: 0x1308, lo: 0xa2, hi: 0xa8},
3061 {value: 0x0008, lo: 0xa9, hi: 0xac},
3062 {value: 0x1308, lo: 0xad, hi: 0xad},
3063 {value: 0x0008, lo: 0xae, hi: 0xb1},
3064 {value: 0x1008, lo: 0xb2, hi: 0xb3},
3065 {value: 0x1308, lo: 0xb4, hi: 0xb4},
3066 {value: 0x0008, lo: 0xb5, hi: 0xb6},
3067 {value: 0x0040, lo: 0xb7, hi: 0xb7},
3068 {value: 0x1308, lo: 0xb8, hi: 0xb9},
3069 {value: 0x0040, lo: 0xba, hi: 0xbf},
3070 // Block 0x46, offset 0x291
3071 {value: 0x0000, lo: 0x03},
3072 {value: 0x1308, lo: 0x80, hi: 0xb5},
3073 {value: 0x0040, lo: 0xb6, hi: 0xba},
3074 {value: 0x1308, lo: 0xbb, hi: 0xbf},
3075 // Block 0x47, offset 0x295
3076 {value: 0x0000, lo: 0x0a},
3077 {value: 0x0008, lo: 0x80, hi: 0x87},
3078 {value: 0xe045, lo: 0x88, hi: 0x8f},
3079 {value: 0x0008, lo: 0x90, hi: 0x95},
3080 {value: 0x0040, lo: 0x96, hi: 0x97},
3081 {value: 0xe045, lo: 0x98, hi: 0x9d},
3082 {value: 0x0040, lo: 0x9e, hi: 0x9f},
3083 {value: 0x0008, lo: 0xa0, hi: 0xa7},
3084 {value: 0xe045, lo: 0xa8, hi: 0xaf},
3085 {value: 0x0008, lo: 0xb0, hi: 0xb7},
3086 {value: 0xe045, lo: 0xb8, hi: 0xbf},
3087 // Block 0x48, offset 0x2a0
3088 {value: 0x0000, lo: 0x03},
3089 {value: 0x0040, lo: 0x80, hi: 0x8f},
3090 {value: 0x1318, lo: 0x90, hi: 0xb0},
3091 {value: 0x0040, lo: 0xb1, hi: 0xbf},
3092 // Block 0x49, offset 0x2a4
3093 {value: 0x0000, lo: 0x08},
3094 {value: 0x0018, lo: 0x80, hi: 0x82},
3095 {value: 0x0040, lo: 0x83, hi: 0x83},
3096 {value: 0x0008, lo: 0x84, hi: 0x84},
3097 {value: 0x0018, lo: 0x85, hi: 0x88},
3098 {value: 0x24c1, lo: 0x89, hi: 0x89},
3099 {value: 0x0018, lo: 0x8a, hi: 0x8b},
3100 {value: 0x0040, lo: 0x8c, hi: 0x8f},
3101 {value: 0x0018, lo: 0x90, hi: 0xbf},
3102 // Block 0x4a, offset 0x2ad
3103 {value: 0x0000, lo: 0x07},
3104 {value: 0x0018, lo: 0x80, hi: 0xab},
3105 {value: 0x24f1, lo: 0xac, hi: 0xac},
3106 {value: 0x2529, lo: 0xad, hi: 0xad},
3107 {value: 0x0018, lo: 0xae, hi: 0xae},
3108 {value: 0x2579, lo: 0xaf, hi: 0xaf},
3109 {value: 0x25b1, lo: 0xb0, hi: 0xb0},
3110 {value: 0x0018, lo: 0xb1, hi: 0xbf},
3111 // Block 0x4b, offset 0x2b5
3112 {value: 0x0000, lo: 0x05},
3113 {value: 0x0018, lo: 0x80, hi: 0x9f},
3114 {value: 0x0080, lo: 0xa0, hi: 0xa0},
3115 {value: 0x0018, lo: 0xa1, hi: 0xad},
3116 {value: 0x0080, lo: 0xae, hi: 0xaf},
3117 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3118 // Block 0x4c, offset 0x2bb
3119 {value: 0x0000, lo: 0x04},
3120 {value: 0x0018, lo: 0x80, hi: 0xa8},
3121 {value: 0x09c5, lo: 0xa9, hi: 0xa9},
3122 {value: 0x09e5, lo: 0xaa, hi: 0xaa},
3123 {value: 0x0018, lo: 0xab, hi: 0xbf},
3124 // Block 0x4d, offset 0x2c0
3125 {value: 0x0000, lo: 0x02},
3126 {value: 0x0018, lo: 0x80, hi: 0xbe},
3127 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3128 // Block 0x4e, offset 0x2c3
3129 {value: 0x0000, lo: 0x02},
3130 {value: 0x0018, lo: 0x80, hi: 0xa6},
3131 {value: 0x0040, lo: 0xa7, hi: 0xbf},
3132 // Block 0x4f, offset 0x2c6
3133 {value: 0x0000, lo: 0x03},
3134 {value: 0x0018, lo: 0x80, hi: 0x8b},
3135 {value: 0x28c1, lo: 0x8c, hi: 0x8c},
3136 {value: 0x0018, lo: 0x8d, hi: 0xbf},
3137 // Block 0x50, offset 0x2ca
3138 {value: 0x0000, lo: 0x05},
3139 {value: 0x0018, lo: 0x80, hi: 0xb3},
3140 {value: 0x0e66, lo: 0xb4, hi: 0xb4},
3141 {value: 0x292a, lo: 0xb5, hi: 0xb5},
3142 {value: 0x0e86, lo: 0xb6, hi: 0xb6},
3143 {value: 0x0018, lo: 0xb7, hi: 0xbf},
3144 // Block 0x51, offset 0x2d0
3145 {value: 0x0000, lo: 0x03},
3146 {value: 0x0018, lo: 0x80, hi: 0x9b},
3147 {value: 0x2941, lo: 0x9c, hi: 0x9c},
3148 {value: 0x0018, lo: 0x9d, hi: 0xbf},
3149 // Block 0x52, offset 0x2d4
3150 {value: 0x0000, lo: 0x03},
3151 {value: 0x0018, lo: 0x80, hi: 0xb3},
3152 {value: 0x0040, lo: 0xb4, hi: 0xb5},
3153 {value: 0x0018, lo: 0xb6, hi: 0xbf},
3154 // Block 0x53, offset 0x2d8
3155 {value: 0x0000, lo: 0x05},
3156 {value: 0x0018, lo: 0x80, hi: 0x95},
3157 {value: 0x0040, lo: 0x96, hi: 0x97},
3158 {value: 0x0018, lo: 0x98, hi: 0xb9},
3159 {value: 0x0040, lo: 0xba, hi: 0xbc},
3160 {value: 0x0018, lo: 0xbd, hi: 0xbf},
3161 // Block 0x54, offset 0x2de
3162 {value: 0x0000, lo: 0x06},
3163 {value: 0x0018, lo: 0x80, hi: 0x88},
3164 {value: 0x0040, lo: 0x89, hi: 0x89},
3165 {value: 0x0018, lo: 0x8a, hi: 0x91},
3166 {value: 0x0040, lo: 0x92, hi: 0xab},
3167 {value: 0x0018, lo: 0xac, hi: 0xaf},
3168 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3169 // Block 0x55, offset 0x2e5
3170 {value: 0x0000, lo: 0x05},
3171 {value: 0xe185, lo: 0x80, hi: 0x8f},
3172 {value: 0x03f5, lo: 0x90, hi: 0x9f},
3173 {value: 0x0ea5, lo: 0xa0, hi: 0xae},
3174 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3175 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3176 // Block 0x56, offset 0x2eb
3177 {value: 0x0000, lo: 0x07},
3178 {value: 0x0008, lo: 0x80, hi: 0xa5},
3179 {value: 0x0040, lo: 0xa6, hi: 0xa6},
3180 {value: 0x0008, lo: 0xa7, hi: 0xa7},
3181 {value: 0x0040, lo: 0xa8, hi: 0xac},
3182 {value: 0x0008, lo: 0xad, hi: 0xad},
3183 {value: 0x0040, lo: 0xae, hi: 0xaf},
3184 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3185 // Block 0x57, offset 0x2f3
3186 {value: 0x0000, lo: 0x06},
3187 {value: 0x0008, lo: 0x80, hi: 0xa7},
3188 {value: 0x0040, lo: 0xa8, hi: 0xae},
3189 {value: 0xe075, lo: 0xaf, hi: 0xaf},
3190 {value: 0x0018, lo: 0xb0, hi: 0xb0},
3191 {value: 0x0040, lo: 0xb1, hi: 0xbe},
3192 {value: 0x1b08, lo: 0xbf, hi: 0xbf},
3193 // Block 0x58, offset 0x2fa
3194 {value: 0x0000, lo: 0x0a},
3195 {value: 0x0008, lo: 0x80, hi: 0x96},
3196 {value: 0x0040, lo: 0x97, hi: 0x9f},
3197 {value: 0x0008, lo: 0xa0, hi: 0xa6},
3198 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3199 {value: 0x0008, lo: 0xa8, hi: 0xae},
3200 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3201 {value: 0x0008, lo: 0xb0, hi: 0xb6},
3202 {value: 0x0040, lo: 0xb7, hi: 0xb7},
3203 {value: 0x0008, lo: 0xb8, hi: 0xbe},
3204 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3205 // Block 0x59, offset 0x305
3206 {value: 0x0000, lo: 0x09},
3207 {value: 0x0008, lo: 0x80, hi: 0x86},
3208 {value: 0x0040, lo: 0x87, hi: 0x87},
3209 {value: 0x0008, lo: 0x88, hi: 0x8e},
3210 {value: 0x0040, lo: 0x8f, hi: 0x8f},
3211 {value: 0x0008, lo: 0x90, hi: 0x96},
3212 {value: 0x0040, lo: 0x97, hi: 0x97},
3213 {value: 0x0008, lo: 0x98, hi: 0x9e},
3214 {value: 0x0040, lo: 0x9f, hi: 0x9f},
3215 {value: 0x1308, lo: 0xa0, hi: 0xbf},
3216 // Block 0x5a, offset 0x30f
3217 {value: 0x0000, lo: 0x03},
3218 {value: 0x0018, lo: 0x80, hi: 0xae},
3219 {value: 0x0008, lo: 0xaf, hi: 0xaf},
3220 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3221 // Block 0x5b, offset 0x313
3222 {value: 0x0000, lo: 0x02},
3223 {value: 0x0018, lo: 0x80, hi: 0x84},
3224 {value: 0x0040, lo: 0x85, hi: 0xbf},
3225 // Block 0x5c, offset 0x316
3226 {value: 0x0000, lo: 0x05},
3227 {value: 0x0018, lo: 0x80, hi: 0x99},
3228 {value: 0x0040, lo: 0x9a, hi: 0x9a},
3229 {value: 0x0018, lo: 0x9b, hi: 0x9e},
3230 {value: 0x0edd, lo: 0x9f, hi: 0x9f},
3231 {value: 0x0018, lo: 0xa0, hi: 0xbf},
3232 // Block 0x5d, offset 0x31c
3233 {value: 0x0000, lo: 0x03},
3234 {value: 0x0018, lo: 0x80, hi: 0xb2},
3235 {value: 0x0efd, lo: 0xb3, hi: 0xb3},
3236 {value: 0x0040, lo: 0xb4, hi: 0xbf},
3237 // Block 0x5e, offset 0x320
3238 {value: 0x0020, lo: 0x01},
3239 {value: 0x0f1d, lo: 0x80, hi: 0xbf},
3240 // Block 0x5f, offset 0x322
3241 {value: 0x0020, lo: 0x02},
3242 {value: 0x171d, lo: 0x80, hi: 0x8f},
3243 {value: 0x18fd, lo: 0x90, hi: 0xbf},
3244 // Block 0x60, offset 0x325
3245 {value: 0x0020, lo: 0x01},
3246 {value: 0x1efd, lo: 0x80, hi: 0xbf},
3247 // Block 0x61, offset 0x327
3248 {value: 0x0000, lo: 0x02},
3249 {value: 0x0040, lo: 0x80, hi: 0x80},
3250 {value: 0x0008, lo: 0x81, hi: 0xbf},
3251 // Block 0x62, offset 0x32a
3252 {value: 0x0000, lo: 0x09},
3253 {value: 0x0008, lo: 0x80, hi: 0x96},
3254 {value: 0x0040, lo: 0x97, hi: 0x98},
3255 {value: 0x1308, lo: 0x99, hi: 0x9a},
3256 {value: 0x29e2, lo: 0x9b, hi: 0x9b},
3257 {value: 0x2a0a, lo: 0x9c, hi: 0x9c},
3258 {value: 0x0008, lo: 0x9d, hi: 0x9e},
3259 {value: 0x2a31, lo: 0x9f, hi: 0x9f},
3260 {value: 0x0018, lo: 0xa0, hi: 0xa0},
3261 {value: 0x0008, lo: 0xa1, hi: 0xbf},
3262 // Block 0x63, offset 0x334
3263 {value: 0x0000, lo: 0x02},
3264 {value: 0x0008, lo: 0x80, hi: 0xbe},
3265 {value: 0x2a69, lo: 0xbf, hi: 0xbf},
3266 // Block 0x64, offset 0x337
3267 {value: 0x0000, lo: 0x0e},
3268 {value: 0x0040, lo: 0x80, hi: 0x84},
3269 {value: 0x0008, lo: 0x85, hi: 0xad},
3270 {value: 0x0040, lo: 0xae, hi: 0xb0},
3271 {value: 0x2a1d, lo: 0xb1, hi: 0xb1},
3272 {value: 0x2a3d, lo: 0xb2, hi: 0xb2},
3273 {value: 0x2a5d, lo: 0xb3, hi: 0xb3},
3274 {value: 0x2a7d, lo: 0xb4, hi: 0xb4},
3275 {value: 0x2a5d, lo: 0xb5, hi: 0xb5},
3276 {value: 0x2a9d, lo: 0xb6, hi: 0xb6},
3277 {value: 0x2abd, lo: 0xb7, hi: 0xb7},
3278 {value: 0x2add, lo: 0xb8, hi: 0xb9},
3279 {value: 0x2afd, lo: 0xba, hi: 0xbb},
3280 {value: 0x2b1d, lo: 0xbc, hi: 0xbd},
3281 {value: 0x2afd, lo: 0xbe, hi: 0xbf},
3282 // Block 0x65, offset 0x346
3283 {value: 0x0000, lo: 0x03},
3284 {value: 0x0018, lo: 0x80, hi: 0xa3},
3285 {value: 0x0040, lo: 0xa4, hi: 0xaf},
3286 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3287 // Block 0x66, offset 0x34a
3288 {value: 0x0030, lo: 0x04},
3289 {value: 0x2aa2, lo: 0x80, hi: 0x9d},
3290 {value: 0x305a, lo: 0x9e, hi: 0x9e},
3291 {value: 0x0040, lo: 0x9f, hi: 0x9f},
3292 {value: 0x30a2, lo: 0xa0, hi: 0xbf},
3293 // Block 0x67, offset 0x34f
3294 {value: 0x0000, lo: 0x02},
3295 {value: 0x0008, lo: 0x80, hi: 0x95},
3296 {value: 0x0040, lo: 0x96, hi: 0xbf},
3297 // Block 0x68, offset 0x352
3298 {value: 0x0000, lo: 0x03},
3299 {value: 0x0008, lo: 0x80, hi: 0x8c},
3300 {value: 0x0040, lo: 0x8d, hi: 0x8f},
3301 {value: 0x0018, lo: 0x90, hi: 0xbf},
3302 // Block 0x69, offset 0x356
3303 {value: 0x0000, lo: 0x04},
3304 {value: 0x0018, lo: 0x80, hi: 0x86},
3305 {value: 0x0040, lo: 0x87, hi: 0x8f},
3306 {value: 0x0008, lo: 0x90, hi: 0xbd},
3307 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3308 // Block 0x6a, offset 0x35b
3309 {value: 0x0000, lo: 0x04},
3310 {value: 0x0008, lo: 0x80, hi: 0x8c},
3311 {value: 0x0018, lo: 0x8d, hi: 0x8f},
3312 {value: 0x0008, lo: 0x90, hi: 0xab},
3313 {value: 0x0040, lo: 0xac, hi: 0xbf},
3314 // Block 0x6b, offset 0x360
3315 {value: 0x0000, lo: 0x05},
3316 {value: 0x0008, lo: 0x80, hi: 0xa5},
3317 {value: 0x0018, lo: 0xa6, hi: 0xaf},
3318 {value: 0x1308, lo: 0xb0, hi: 0xb1},
3319 {value: 0x0018, lo: 0xb2, hi: 0xb7},
3320 {value: 0x0040, lo: 0xb8, hi: 0xbf},
3321 // Block 0x6c, offset 0x366
3322 {value: 0x0000, lo: 0x05},
3323 {value: 0x0040, lo: 0x80, hi: 0xb6},
3324 {value: 0x0008, lo: 0xb7, hi: 0xb7},
3325 {value: 0x2009, lo: 0xb8, hi: 0xb8},
3326 {value: 0x6e89, lo: 0xb9, hi: 0xb9},
3327 {value: 0x0008, lo: 0xba, hi: 0xbf},
3328 // Block 0x6d, offset 0x36c
3329 {value: 0x0000, lo: 0x0e},
3330 {value: 0x0008, lo: 0x80, hi: 0x81},
3331 {value: 0x1308, lo: 0x82, hi: 0x82},
3332 {value: 0x0008, lo: 0x83, hi: 0x85},
3333 {value: 0x1b08, lo: 0x86, hi: 0x86},
3334 {value: 0x0008, lo: 0x87, hi: 0x8a},
3335 {value: 0x1308, lo: 0x8b, hi: 0x8b},
3336 {value: 0x0008, lo: 0x8c, hi: 0xa2},
3337 {value: 0x1008, lo: 0xa3, hi: 0xa4},
3338 {value: 0x1308, lo: 0xa5, hi: 0xa6},
3339 {value: 0x1008, lo: 0xa7, hi: 0xa7},
3340 {value: 0x0018, lo: 0xa8, hi: 0xab},
3341 {value: 0x0040, lo: 0xac, hi: 0xaf},
3342 {value: 0x0018, lo: 0xb0, hi: 0xb9},
3343 {value: 0x0040, lo: 0xba, hi: 0xbf},
3344 // Block 0x6e, offset 0x37b
3345 {value: 0x0000, lo: 0x05},
3346 {value: 0x0208, lo: 0x80, hi: 0xb1},
3347 {value: 0x0108, lo: 0xb2, hi: 0xb2},
3348 {value: 0x0008, lo: 0xb3, hi: 0xb3},
3349 {value: 0x0018, lo: 0xb4, hi: 0xb7},
3350 {value: 0x0040, lo: 0xb8, hi: 0xbf},
3351 // Block 0x6f, offset 0x381
3352 {value: 0x0000, lo: 0x03},
3353 {value: 0x1008, lo: 0x80, hi: 0x81},
3354 {value: 0x0008, lo: 0x82, hi: 0xb3},
3355 {value: 0x1008, lo: 0xb4, hi: 0xbf},
3356 // Block 0x70, offset 0x385
3357 {value: 0x0000, lo: 0x0e},
3358 {value: 0x1008, lo: 0x80, hi: 0x83},
3359 {value: 0x1b08, lo: 0x84, hi: 0x84},
3360 {value: 0x1308, lo: 0x85, hi: 0x85},
3361 {value: 0x0040, lo: 0x86, hi: 0x8d},
3362 {value: 0x0018, lo: 0x8e, hi: 0x8f},
3363 {value: 0x0008, lo: 0x90, hi: 0x99},
3364 {value: 0x0040, lo: 0x9a, hi: 0x9f},
3365 {value: 0x1308, lo: 0xa0, hi: 0xb1},
3366 {value: 0x0008, lo: 0xb2, hi: 0xb7},
3367 {value: 0x0018, lo: 0xb8, hi: 0xba},
3368 {value: 0x0008, lo: 0xbb, hi: 0xbb},
3369 {value: 0x0018, lo: 0xbc, hi: 0xbc},
3370 {value: 0x0008, lo: 0xbd, hi: 0xbd},
3371 {value: 0x0040, lo: 0xbe, hi: 0xbf},
3372 // Block 0x71, offset 0x394
3373 {value: 0x0000, lo: 0x04},
3374 {value: 0x0008, lo: 0x80, hi: 0xa5},
3375 {value: 0x1308, lo: 0xa6, hi: 0xad},
3376 {value: 0x0018, lo: 0xae, hi: 0xaf},
3377 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3378 // Block 0x72, offset 0x399
3379 {value: 0x0000, lo: 0x07},
3380 {value: 0x0008, lo: 0x80, hi: 0x86},
3381 {value: 0x1308, lo: 0x87, hi: 0x91},
3382 {value: 0x1008, lo: 0x92, hi: 0x92},
3383 {value: 0x1808, lo: 0x93, hi: 0x93},
3384 {value: 0x0040, lo: 0x94, hi: 0x9e},
3385 {value: 0x0018, lo: 0x9f, hi: 0xbc},
3386 {value: 0x0040, lo: 0xbd, hi: 0xbf},
3387 // Block 0x73, offset 0x3a1
3388 {value: 0x0000, lo: 0x09},
3389 {value: 0x1308, lo: 0x80, hi: 0x82},
3390 {value: 0x1008, lo: 0x83, hi: 0x83},
3391 {value: 0x0008, lo: 0x84, hi: 0xb2},
3392 {value: 0x1308, lo: 0xb3, hi: 0xb3},
3393 {value: 0x1008, lo: 0xb4, hi: 0xb5},
3394 {value: 0x1308, lo: 0xb6, hi: 0xb9},
3395 {value: 0x1008, lo: 0xba, hi: 0xbb},
3396 {value: 0x1308, lo: 0xbc, hi: 0xbc},
3397 {value: 0x1008, lo: 0xbd, hi: 0xbf},
3398 // Block 0x74, offset 0x3ab
3399 {value: 0x0000, lo: 0x0a},
3400 {value: 0x1808, lo: 0x80, hi: 0x80},
3401 {value: 0x0018, lo: 0x81, hi: 0x8d},
3402 {value: 0x0040, lo: 0x8e, hi: 0x8e},
3403 {value: 0x0008, lo: 0x8f, hi: 0x99},
3404 {value: 0x0040, lo: 0x9a, hi: 0x9d},
3405 {value: 0x0018, lo: 0x9e, hi: 0x9f},
3406 {value: 0x0008, lo: 0xa0, hi: 0xa4},
3407 {value: 0x1308, lo: 0xa5, hi: 0xa5},
3408 {value: 0x0008, lo: 0xa6, hi: 0xbe},
3409 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3410 // Block 0x75, offset 0x3b6
3411 {value: 0x0000, lo: 0x07},
3412 {value: 0x0008, lo: 0x80, hi: 0xa8},
3413 {value: 0x1308, lo: 0xa9, hi: 0xae},
3414 {value: 0x1008, lo: 0xaf, hi: 0xb0},
3415 {value: 0x1308, lo: 0xb1, hi: 0xb2},
3416 {value: 0x1008, lo: 0xb3, hi: 0xb4},
3417 {value: 0x1308, lo: 0xb5, hi: 0xb6},
3418 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3419 // Block 0x76, offset 0x3be
3420 {value: 0x0000, lo: 0x10},
3421 {value: 0x0008, lo: 0x80, hi: 0x82},
3422 {value: 0x1308, lo: 0x83, hi: 0x83},
3423 {value: 0x0008, lo: 0x84, hi: 0x8b},
3424 {value: 0x1308, lo: 0x8c, hi: 0x8c},
3425 {value: 0x1008, lo: 0x8d, hi: 0x8d},
3426 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3427 {value: 0x0008, lo: 0x90, hi: 0x99},
3428 {value: 0x0040, lo: 0x9a, hi: 0x9b},
3429 {value: 0x0018, lo: 0x9c, hi: 0x9f},
3430 {value: 0x0008, lo: 0xa0, hi: 0xb6},
3431 {value: 0x0018, lo: 0xb7, hi: 0xb9},
3432 {value: 0x0008, lo: 0xba, hi: 0xba},
3433 {value: 0x1008, lo: 0xbb, hi: 0xbb},
3434 {value: 0x1308, lo: 0xbc, hi: 0xbc},
3435 {value: 0x1008, lo: 0xbd, hi: 0xbd},
3436 {value: 0x0008, lo: 0xbe, hi: 0xbf},
3437 // Block 0x77, offset 0x3cf
3438 {value: 0x0000, lo: 0x08},
3439 {value: 0x0008, lo: 0x80, hi: 0xaf},
3440 {value: 0x1308, lo: 0xb0, hi: 0xb0},
3441 {value: 0x0008, lo: 0xb1, hi: 0xb1},
3442 {value: 0x1308, lo: 0xb2, hi: 0xb4},
3443 {value: 0x0008, lo: 0xb5, hi: 0xb6},
3444 {value: 0x1308, lo: 0xb7, hi: 0xb8},
3445 {value: 0x0008, lo: 0xb9, hi: 0xbd},
3446 {value: 0x1308, lo: 0xbe, hi: 0xbf},
3447 // Block 0x78, offset 0x3d8
3448 {value: 0x0000, lo: 0x0f},
3449 {value: 0x0008, lo: 0x80, hi: 0x80},
3450 {value: 0x1308, lo: 0x81, hi: 0x81},
3451 {value: 0x0008, lo: 0x82, hi: 0x82},
3452 {value: 0x0040, lo: 0x83, hi: 0x9a},
3453 {value: 0x0008, lo: 0x9b, hi: 0x9d},
3454 {value: 0x0018, lo: 0x9e, hi: 0x9f},
3455 {value: 0x0008, lo: 0xa0, hi: 0xaa},
3456 {value: 0x1008, lo: 0xab, hi: 0xab},
3457 {value: 0x1308, lo: 0xac, hi: 0xad},
3458 {value: 0x1008, lo: 0xae, hi: 0xaf},
3459 {value: 0x0018, lo: 0xb0, hi: 0xb1},
3460 {value: 0x0008, lo: 0xb2, hi: 0xb4},
3461 {value: 0x1008, lo: 0xb5, hi: 0xb5},
3462 {value: 0x1b08, lo: 0xb6, hi: 0xb6},
3463 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3464 // Block 0x79, offset 0x3e8
3465 {value: 0x0000, lo: 0x0c},
3466 {value: 0x0040, lo: 0x80, hi: 0x80},
3467 {value: 0x0008, lo: 0x81, hi: 0x86},
3468 {value: 0x0040, lo: 0x87, hi: 0x88},
3469 {value: 0x0008, lo: 0x89, hi: 0x8e},
3470 {value: 0x0040, lo: 0x8f, hi: 0x90},
3471 {value: 0x0008, lo: 0x91, hi: 0x96},
3472 {value: 0x0040, lo: 0x97, hi: 0x9f},
3473 {value: 0x0008, lo: 0xa0, hi: 0xa6},
3474 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3475 {value: 0x0008, lo: 0xa8, hi: 0xae},
3476 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3477 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3478 // Block 0x7a, offset 0x3f5
3479 {value: 0x0000, lo: 0x09},
3480 {value: 0x0008, lo: 0x80, hi: 0x9a},
3481 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3482 {value: 0x4465, lo: 0x9c, hi: 0x9c},
3483 {value: 0x447d, lo: 0x9d, hi: 0x9d},
3484 {value: 0x2971, lo: 0x9e, hi: 0x9e},
3485 {value: 0xe06d, lo: 0x9f, hi: 0x9f},
3486 {value: 0x0008, lo: 0xa0, hi: 0xa5},
3487 {value: 0x0040, lo: 0xa6, hi: 0xaf},
3488 {value: 0x4495, lo: 0xb0, hi: 0xbf},
3489 // Block 0x7b, offset 0x3ff
3490 {value: 0x0000, lo: 0x04},
3491 {value: 0x44b5, lo: 0x80, hi: 0x8f},
3492 {value: 0x44d5, lo: 0x90, hi: 0x9f},
3493 {value: 0x44f5, lo: 0xa0, hi: 0xaf},
3494 {value: 0x44d5, lo: 0xb0, hi: 0xbf},
3495 // Block 0x7c, offset 0x404
3496 {value: 0x0000, lo: 0x0c},
3497 {value: 0x0008, lo: 0x80, hi: 0xa2},
3498 {value: 0x1008, lo: 0xa3, hi: 0xa4},
3499 {value: 0x1308, lo: 0xa5, hi: 0xa5},
3500 {value: 0x1008, lo: 0xa6, hi: 0xa7},
3501 {value: 0x1308, lo: 0xa8, hi: 0xa8},
3502 {value: 0x1008, lo: 0xa9, hi: 0xaa},
3503 {value: 0x0018, lo: 0xab, hi: 0xab},
3504 {value: 0x1008, lo: 0xac, hi: 0xac},
3505 {value: 0x1b08, lo: 0xad, hi: 0xad},
3506 {value: 0x0040, lo: 0xae, hi: 0xaf},
3507 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3508 {value: 0x0040, lo: 0xba, hi: 0xbf},
3509 // Block 0x7d, offset 0x411
3510 {value: 0x0000, lo: 0x03},
3511 {value: 0x0008, lo: 0x80, hi: 0xa3},
3512 {value: 0x0040, lo: 0xa4, hi: 0xaf},
3513 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3514 // Block 0x7e, offset 0x415
3515 {value: 0x0000, lo: 0x04},
3516 {value: 0x0018, lo: 0x80, hi: 0x86},
3517 {value: 0x0040, lo: 0x87, hi: 0x8a},
3518 {value: 0x0018, lo: 0x8b, hi: 0xbb},
3519 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3520 // Block 0x7f, offset 0x41a
3521 {value: 0x0020, lo: 0x01},
3522 {value: 0x4515, lo: 0x80, hi: 0xbf},
3523 // Block 0x80, offset 0x41c
3524 {value: 0x0020, lo: 0x03},
3525 {value: 0x4d15, lo: 0x80, hi: 0x94},
3526 {value: 0x4ad5, lo: 0x95, hi: 0x95},
3527 {value: 0x4fb5, lo: 0x96, hi: 0xbf},
3528 // Block 0x81, offset 0x420
3529 {value: 0x0020, lo: 0x01},
3530 {value: 0x54f5, lo: 0x80, hi: 0xbf},
3531 // Block 0x82, offset 0x422
3532 {value: 0x0020, lo: 0x03},
3533 {value: 0x5cf5, lo: 0x80, hi: 0x84},
3534 {value: 0x5655, lo: 0x85, hi: 0x85},
3535 {value: 0x5d95, lo: 0x86, hi: 0xbf},
3536 // Block 0x83, offset 0x426
3537 {value: 0x0020, lo: 0x08},
3538 {value: 0x6b55, lo: 0x80, hi: 0x8f},
3539 {value: 0x6d15, lo: 0x90, hi: 0x90},
3540 {value: 0x6d55, lo: 0x91, hi: 0xab},
3541 {value: 0x6ea1, lo: 0xac, hi: 0xac},
3542 {value: 0x70b5, lo: 0xad, hi: 0xad},
3543 {value: 0x0040, lo: 0xae, hi: 0xae},
3544 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3545 {value: 0x70d5, lo: 0xb0, hi: 0xbf},
3546 // Block 0x84, offset 0x42f
3547 {value: 0x0020, lo: 0x05},
3548 {value: 0x72d5, lo: 0x80, hi: 0xad},
3549 {value: 0x6535, lo: 0xae, hi: 0xae},
3550 {value: 0x7895, lo: 0xaf, hi: 0xb5},
3551 {value: 0x6f55, lo: 0xb6, hi: 0xb6},
3552 {value: 0x7975, lo: 0xb7, hi: 0xbf},
3553 // Block 0x85, offset 0x435
3554 {value: 0x0028, lo: 0x03},
3555 {value: 0x7c21, lo: 0x80, hi: 0x82},
3556 {value: 0x7be1, lo: 0x83, hi: 0x83},
3557 {value: 0x7c99, lo: 0x84, hi: 0xbf},
3558 // Block 0x86, offset 0x439
3559 {value: 0x0038, lo: 0x0f},
3560 {value: 0x9db1, lo: 0x80, hi: 0x83},
3561 {value: 0x9e59, lo: 0x84, hi: 0x85},
3562 {value: 0x9e91, lo: 0x86, hi: 0x87},
3563 {value: 0x9ec9, lo: 0x88, hi: 0x8f},
3564 {value: 0x0040, lo: 0x90, hi: 0x90},
3565 {value: 0x0040, lo: 0x91, hi: 0x91},
3566 {value: 0xa089, lo: 0x92, hi: 0x97},
3567 {value: 0xa1a1, lo: 0x98, hi: 0x9c},
3568 {value: 0xa281, lo: 0x9d, hi: 0xb3},
3569 {value: 0x9d41, lo: 0xb4, hi: 0xb4},
3570 {value: 0x9db1, lo: 0xb5, hi: 0xb5},
3571 {value: 0xa789, lo: 0xb6, hi: 0xbb},
3572 {value: 0xa869, lo: 0xbc, hi: 0xbc},
3573 {value: 0xa7f9, lo: 0xbd, hi: 0xbd},
3574 {value: 0xa8d9, lo: 0xbe, hi: 0xbf},
3575 // Block 0x87, offset 0x449
3576 {value: 0x0000, lo: 0x09},
3577 {value: 0x0008, lo: 0x80, hi: 0x8b},
3578 {value: 0x0040, lo: 0x8c, hi: 0x8c},
3579 {value: 0x0008, lo: 0x8d, hi: 0xa6},
3580 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3581 {value: 0x0008, lo: 0xa8, hi: 0xba},
3582 {value: 0x0040, lo: 0xbb, hi: 0xbb},
3583 {value: 0x0008, lo: 0xbc, hi: 0xbd},
3584 {value: 0x0040, lo: 0xbe, hi: 0xbe},
3585 {value: 0x0008, lo: 0xbf, hi: 0xbf},
3586 // Block 0x88, offset 0x453
3587 {value: 0x0000, lo: 0x04},
3588 {value: 0x0008, lo: 0x80, hi: 0x8d},
3589 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3590 {value: 0x0008, lo: 0x90, hi: 0x9d},
3591 {value: 0x0040, lo: 0x9e, hi: 0xbf},
3592 // Block 0x89, offset 0x458
3593 {value: 0x0000, lo: 0x02},
3594 {value: 0x0008, lo: 0x80, hi: 0xba},
3595 {value: 0x0040, lo: 0xbb, hi: 0xbf},
3596 // Block 0x8a, offset 0x45b
3597 {value: 0x0000, lo: 0x05},
3598 {value: 0x0018, lo: 0x80, hi: 0x82},
3599 {value: 0x0040, lo: 0x83, hi: 0x86},
3600 {value: 0x0018, lo: 0x87, hi: 0xb3},
3601 {value: 0x0040, lo: 0xb4, hi: 0xb6},
3602 {value: 0x0018, lo: 0xb7, hi: 0xbf},
3603 // Block 0x8b, offset 0x461
3604 {value: 0x0000, lo: 0x06},
3605 {value: 0x0018, lo: 0x80, hi: 0x8e},
3606 {value: 0x0040, lo: 0x8f, hi: 0x8f},
3607 {value: 0x0018, lo: 0x90, hi: 0x9b},
3608 {value: 0x0040, lo: 0x9c, hi: 0x9f},
3609 {value: 0x0018, lo: 0xa0, hi: 0xa0},
3610 {value: 0x0040, lo: 0xa1, hi: 0xbf},
3611 // Block 0x8c, offset 0x468
3612 {value: 0x0000, lo: 0x04},
3613 {value: 0x0040, lo: 0x80, hi: 0x8f},
3614 {value: 0x0018, lo: 0x90, hi: 0xbc},
3615 {value: 0x1308, lo: 0xbd, hi: 0xbd},
3616 {value: 0x0040, lo: 0xbe, hi: 0xbf},
3617 // Block 0x8d, offset 0x46d
3618 {value: 0x0000, lo: 0x03},
3619 {value: 0x0008, lo: 0x80, hi: 0x9c},
3620 {value: 0x0040, lo: 0x9d, hi: 0x9f},
3621 {value: 0x0008, lo: 0xa0, hi: 0xbf},
3622 // Block 0x8e, offset 0x471
3623 {value: 0x0000, lo: 0x05},
3624 {value: 0x0008, lo: 0x80, hi: 0x90},
3625 {value: 0x0040, lo: 0x91, hi: 0x9f},
3626 {value: 0x1308, lo: 0xa0, hi: 0xa0},
3627 {value: 0x0018, lo: 0xa1, hi: 0xbb},
3628 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3629 // Block 0x8f, offset 0x477
3630 {value: 0x0000, lo: 0x04},
3631 {value: 0x0008, lo: 0x80, hi: 0x9f},
3632 {value: 0x0018, lo: 0xa0, hi: 0xa3},
3633 {value: 0x0040, lo: 0xa4, hi: 0xaf},
3634 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3635 // Block 0x90, offset 0x47c
3636 {value: 0x0000, lo: 0x08},
3637 {value: 0x0008, lo: 0x80, hi: 0x80},
3638 {value: 0x0018, lo: 0x81, hi: 0x81},
3639 {value: 0x0008, lo: 0x82, hi: 0x89},
3640 {value: 0x0018, lo: 0x8a, hi: 0x8a},
3641 {value: 0x0040, lo: 0x8b, hi: 0x8f},
3642 {value: 0x0008, lo: 0x90, hi: 0xb5},
3643 {value: 0x1308, lo: 0xb6, hi: 0xba},
3644 {value: 0x0040, lo: 0xbb, hi: 0xbf},
3645 // Block 0x91, offset 0x485
3646 {value: 0x0000, lo: 0x04},
3647 {value: 0x0008, lo: 0x80, hi: 0x9d},
3648 {value: 0x0040, lo: 0x9e, hi: 0x9e},
3649 {value: 0x0018, lo: 0x9f, hi: 0x9f},
3650 {value: 0x0008, lo: 0xa0, hi: 0xbf},
3651 // Block 0x92, offset 0x48a
3652 {value: 0x0000, lo: 0x05},
3653 {value: 0x0008, lo: 0x80, hi: 0x83},
3654 {value: 0x0040, lo: 0x84, hi: 0x87},
3655 {value: 0x0008, lo: 0x88, hi: 0x8f},
3656 {value: 0x0018, lo: 0x90, hi: 0x95},
3657 {value: 0x0040, lo: 0x96, hi: 0xbf},
3658 // Block 0x93, offset 0x490
3659 {value: 0x0000, lo: 0x06},
3660 {value: 0xe145, lo: 0x80, hi: 0x87},
3661 {value: 0xe1c5, lo: 0x88, hi: 0x8f},
3662 {value: 0xe145, lo: 0x90, hi: 0x97},
3663 {value: 0x8ad5, lo: 0x98, hi: 0x9f},
3664 {value: 0x8aed, lo: 0xa0, hi: 0xa7},
3665 {value: 0x0008, lo: 0xa8, hi: 0xbf},
3666 // Block 0x94, offset 0x497
3667 {value: 0x0000, lo: 0x06},
3668 {value: 0x0008, lo: 0x80, hi: 0x9d},
3669 {value: 0x0040, lo: 0x9e, hi: 0x9f},
3670 {value: 0x0008, lo: 0xa0, hi: 0xa9},
3671 {value: 0x0040, lo: 0xaa, hi: 0xaf},
3672 {value: 0x8aed, lo: 0xb0, hi: 0xb7},
3673 {value: 0x8ad5, lo: 0xb8, hi: 0xbf},
3674 // Block 0x95, offset 0x49e
3675 {value: 0x0000, lo: 0x06},
3676 {value: 0xe145, lo: 0x80, hi: 0x87},
3677 {value: 0xe1c5, lo: 0x88, hi: 0x8f},
3678 {value: 0xe145, lo: 0x90, hi: 0x93},
3679 {value: 0x0040, lo: 0x94, hi: 0x97},
3680 {value: 0x0008, lo: 0x98, hi: 0xbb},
3681 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3682 // Block 0x96, offset 0x4a5
3683 {value: 0x0000, lo: 0x03},
3684 {value: 0x0008, lo: 0x80, hi: 0xa7},
3685 {value: 0x0040, lo: 0xa8, hi: 0xaf},
3686 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3687 // Block 0x97, offset 0x4a9
3688 {value: 0x0000, lo: 0x04},
3689 {value: 0x0008, lo: 0x80, hi: 0xa3},
3690 {value: 0x0040, lo: 0xa4, hi: 0xae},
3691 {value: 0x0018, lo: 0xaf, hi: 0xaf},
3692 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3693 // Block 0x98, offset 0x4ae
3694 {value: 0x0000, lo: 0x02},
3695 {value: 0x0008, lo: 0x80, hi: 0xb6},
3696 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3697 // Block 0x99, offset 0x4b1
3698 {value: 0x0000, lo: 0x04},
3699 {value: 0x0008, lo: 0x80, hi: 0x95},
3700 {value: 0x0040, lo: 0x96, hi: 0x9f},
3701 {value: 0x0008, lo: 0xa0, hi: 0xa7},
3702 {value: 0x0040, lo: 0xa8, hi: 0xbf},
3703 // Block 0x9a, offset 0x4b6
3704 {value: 0x0000, lo: 0x0b},
3705 {value: 0x0008, lo: 0x80, hi: 0x85},
3706 {value: 0x0040, lo: 0x86, hi: 0x87},
3707 {value: 0x0008, lo: 0x88, hi: 0x88},
3708 {value: 0x0040, lo: 0x89, hi: 0x89},
3709 {value: 0x0008, lo: 0x8a, hi: 0xb5},
3710 {value: 0x0040, lo: 0xb6, hi: 0xb6},
3711 {value: 0x0008, lo: 0xb7, hi: 0xb8},
3712 {value: 0x0040, lo: 0xb9, hi: 0xbb},
3713 {value: 0x0008, lo: 0xbc, hi: 0xbc},
3714 {value: 0x0040, lo: 0xbd, hi: 0xbe},
3715 {value: 0x0008, lo: 0xbf, hi: 0xbf},
3716 // Block 0x9b, offset 0x4c2
3717 {value: 0x0000, lo: 0x05},
3718 {value: 0x0008, lo: 0x80, hi: 0x95},
3719 {value: 0x0040, lo: 0x96, hi: 0x96},
3720 {value: 0x0018, lo: 0x97, hi: 0x9f},
3721 {value: 0x0008, lo: 0xa0, hi: 0xb6},
3722 {value: 0x0018, lo: 0xb7, hi: 0xbf},
3723 // Block 0x9c, offset 0x4c8
3724 {value: 0x0000, lo: 0x04},
3725 {value: 0x0008, lo: 0x80, hi: 0x9e},
3726 {value: 0x0040, lo: 0x9f, hi: 0xa6},
3727 {value: 0x0018, lo: 0xa7, hi: 0xaf},
3728 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3729 // Block 0x9d, offset 0x4cd
3730 {value: 0x0000, lo: 0x06},
3731 {value: 0x0040, lo: 0x80, hi: 0x9f},
3732 {value: 0x0008, lo: 0xa0, hi: 0xb2},
3733 {value: 0x0040, lo: 0xb3, hi: 0xb3},
3734 {value: 0x0008, lo: 0xb4, hi: 0xb5},
3735 {value: 0x0040, lo: 0xb6, hi: 0xba},
3736 {value: 0x0018, lo: 0xbb, hi: 0xbf},
3737 // Block 0x9e, offset 0x4d4
3738 {value: 0x0000, lo: 0x07},
3739 {value: 0x0008, lo: 0x80, hi: 0x95},
3740 {value: 0x0018, lo: 0x96, hi: 0x9b},
3741 {value: 0x0040, lo: 0x9c, hi: 0x9e},
3742 {value: 0x0018, lo: 0x9f, hi: 0x9f},
3743 {value: 0x0008, lo: 0xa0, hi: 0xb9},
3744 {value: 0x0040, lo: 0xba, hi: 0xbe},
3745 {value: 0x0018, lo: 0xbf, hi: 0xbf},
3746 // Block 0x9f, offset 0x4dc
3747 {value: 0x0000, lo: 0x04},
3748 {value: 0x0008, lo: 0x80, hi: 0xb7},
3749 {value: 0x0040, lo: 0xb8, hi: 0xbb},
3750 {value: 0x0018, lo: 0xbc, hi: 0xbd},
3751 {value: 0x0008, lo: 0xbe, hi: 0xbf},
3752 // Block 0xa0, offset 0x4e1
3753 {value: 0x0000, lo: 0x03},
3754 {value: 0x0018, lo: 0x80, hi: 0x8f},
3755 {value: 0x0040, lo: 0x90, hi: 0x91},
3756 {value: 0x0018, lo: 0x92, hi: 0xbf},
3757 // Block 0xa1, offset 0x4e5
3758 {value: 0x0000, lo: 0x0f},
3759 {value: 0x0008, lo: 0x80, hi: 0x80},
3760 {value: 0x1308, lo: 0x81, hi: 0x83},
3761 {value: 0x0040, lo: 0x84, hi: 0x84},
3762 {value: 0x1308, lo: 0x85, hi: 0x86},
3763 {value: 0x0040, lo: 0x87, hi: 0x8b},
3764 {value: 0x1308, lo: 0x8c, hi: 0x8f},
3765 {value: 0x0008, lo: 0x90, hi: 0x93},
3766 {value: 0x0040, lo: 0x94, hi: 0x94},
3767 {value: 0x0008, lo: 0x95, hi: 0x97},
3768 {value: 0x0040, lo: 0x98, hi: 0x98},
3769 {value: 0x0008, lo: 0x99, hi: 0xb3},
3770 {value: 0x0040, lo: 0xb4, hi: 0xb7},
3771 {value: 0x1308, lo: 0xb8, hi: 0xba},
3772 {value: 0x0040, lo: 0xbb, hi: 0xbe},
3773 {value: 0x1b08, lo: 0xbf, hi: 0xbf},
3774 // Block 0xa2, offset 0x4f5
3775 {value: 0x0000, lo: 0x06},
3776 {value: 0x0018, lo: 0x80, hi: 0x87},
3777 {value: 0x0040, lo: 0x88, hi: 0x8f},
3778 {value: 0x0018, lo: 0x90, hi: 0x98},
3779 {value: 0x0040, lo: 0x99, hi: 0x9f},
3780 {value: 0x0008, lo: 0xa0, hi: 0xbc},
3781 {value: 0x0018, lo: 0xbd, hi: 0xbf},
3782 // Block 0xa3, offset 0x4fc
3783 {value: 0x0000, lo: 0x03},
3784 {value: 0x0008, lo: 0x80, hi: 0x9c},
3785 {value: 0x0018, lo: 0x9d, hi: 0x9f},
3786 {value: 0x0040, lo: 0xa0, hi: 0xbf},
3787 // Block 0xa4, offset 0x500
3788 {value: 0x0000, lo: 0x03},
3789 {value: 0x0008, lo: 0x80, hi: 0xb5},
3790 {value: 0x0040, lo: 0xb6, hi: 0xb8},
3791 {value: 0x0018, lo: 0xb9, hi: 0xbf},
3792 // Block 0xa5, offset 0x504
3793 {value: 0x0000, lo: 0x06},
3794 {value: 0x0008, lo: 0x80, hi: 0x95},
3795 {value: 0x0040, lo: 0x96, hi: 0x97},
3796 {value: 0x0018, lo: 0x98, hi: 0x9f},
3797 {value: 0x0008, lo: 0xa0, hi: 0xb2},
3798 {value: 0x0040, lo: 0xb3, hi: 0xb7},
3799 {value: 0x0018, lo: 0xb8, hi: 0xbf},
3800 // Block 0xa6, offset 0x50b
3801 {value: 0x0000, lo: 0x02},
3802 {value: 0x0008, lo: 0x80, hi: 0x88},
3803 {value: 0x0040, lo: 0x89, hi: 0xbf},
3804 // Block 0xa7, offset 0x50e
3805 {value: 0x0000, lo: 0x02},
3806 {value: 0x03dd, lo: 0x80, hi: 0xb2},
3807 {value: 0x0040, lo: 0xb3, hi: 0xbf},
3808 // Block 0xa8, offset 0x511
3809 {value: 0x0000, lo: 0x03},
3810 {value: 0x0008, lo: 0x80, hi: 0xb2},
3811 {value: 0x0040, lo: 0xb3, hi: 0xb9},
3812 {value: 0x0018, lo: 0xba, hi: 0xbf},
3813 // Block 0xa9, offset 0x515
3814 {value: 0x0000, lo: 0x03},
3815 {value: 0x0040, lo: 0x80, hi: 0x9f},
3816 {value: 0x0018, lo: 0xa0, hi: 0xbe},
3817 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3818 // Block 0xaa, offset 0x519
3819 {value: 0x0000, lo: 0x05},
3820 {value: 0x1008, lo: 0x80, hi: 0x80},
3821 {value: 0x1308, lo: 0x81, hi: 0x81},
3822 {value: 0x1008, lo: 0x82, hi: 0x82},
3823 {value: 0x0008, lo: 0x83, hi: 0xb7},
3824 {value: 0x1308, lo: 0xb8, hi: 0xbf},
3825 // Block 0xab, offset 0x51f
3826 {value: 0x0000, lo: 0x08},
3827 {value: 0x1308, lo: 0x80, hi: 0x85},
3828 {value: 0x1b08, lo: 0x86, hi: 0x86},
3829 {value: 0x0018, lo: 0x87, hi: 0x8d},
3830 {value: 0x0040, lo: 0x8e, hi: 0x91},
3831 {value: 0x0018, lo: 0x92, hi: 0xa5},
3832 {value: 0x0008, lo: 0xa6, hi: 0xaf},
3833 {value: 0x0040, lo: 0xb0, hi: 0xbe},
3834 {value: 0x1b08, lo: 0xbf, hi: 0xbf},
3835 // Block 0xac, offset 0x528
3836 {value: 0x0000, lo: 0x0b},
3837 {value: 0x1308, lo: 0x80, hi: 0x81},
3838 {value: 0x1008, lo: 0x82, hi: 0x82},
3839 {value: 0x0008, lo: 0x83, hi: 0xaf},
3840 {value: 0x1008, lo: 0xb0, hi: 0xb2},
3841 {value: 0x1308, lo: 0xb3, hi: 0xb6},
3842 {value: 0x1008, lo: 0xb7, hi: 0xb8},
3843 {value: 0x1b08, lo: 0xb9, hi: 0xb9},
3844 {value: 0x1308, lo: 0xba, hi: 0xba},
3845 {value: 0x0018, lo: 0xbb, hi: 0xbc},
3846 {value: 0x0340, lo: 0xbd, hi: 0xbd},
3847 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3848 // Block 0xad, offset 0x534
3849 {value: 0x0000, lo: 0x06},
3850 {value: 0x0018, lo: 0x80, hi: 0x81},
3851 {value: 0x0040, lo: 0x82, hi: 0x8f},
3852 {value: 0x0008, lo: 0x90, hi: 0xa8},
3853 {value: 0x0040, lo: 0xa9, hi: 0xaf},
3854 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3855 {value: 0x0040, lo: 0xba, hi: 0xbf},
3856 // Block 0xae, offset 0x53b
3857 {value: 0x0000, lo: 0x08},
3858 {value: 0x1308, lo: 0x80, hi: 0x82},
3859 {value: 0x0008, lo: 0x83, hi: 0xa6},
3860 {value: 0x1308, lo: 0xa7, hi: 0xab},
3861 {value: 0x1008, lo: 0xac, hi: 0xac},
3862 {value: 0x1308, lo: 0xad, hi: 0xb2},
3863 {value: 0x1b08, lo: 0xb3, hi: 0xb4},
3864 {value: 0x0040, lo: 0xb5, hi: 0xb5},
3865 {value: 0x0008, lo: 0xb6, hi: 0xbf},
3866 // Block 0xaf, offset 0x544
3867 {value: 0x0000, lo: 0x07},
3868 {value: 0x0018, lo: 0x80, hi: 0x83},
3869 {value: 0x0040, lo: 0x84, hi: 0x8f},
3870 {value: 0x0008, lo: 0x90, hi: 0xb2},
3871 {value: 0x1308, lo: 0xb3, hi: 0xb3},
3872 {value: 0x0018, lo: 0xb4, hi: 0xb5},
3873 {value: 0x0008, lo: 0xb6, hi: 0xb6},
3874 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3875 // Block 0xb0, offset 0x54c
3876 {value: 0x0000, lo: 0x06},
3877 {value: 0x1308, lo: 0x80, hi: 0x81},
3878 {value: 0x1008, lo: 0x82, hi: 0x82},
3879 {value: 0x0008, lo: 0x83, hi: 0xb2},
3880 {value: 0x1008, lo: 0xb3, hi: 0xb5},
3881 {value: 0x1308, lo: 0xb6, hi: 0xbe},
3882 {value: 0x1008, lo: 0xbf, hi: 0xbf},
3883 // Block 0xb1, offset 0x553
3884 {value: 0x0000, lo: 0x0d},
3885 {value: 0x1808, lo: 0x80, hi: 0x80},
3886 {value: 0x0008, lo: 0x81, hi: 0x84},
3887 {value: 0x0018, lo: 0x85, hi: 0x89},
3888 {value: 0x1308, lo: 0x8a, hi: 0x8c},
3889 {value: 0x0018, lo: 0x8d, hi: 0x8d},
3890 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3891 {value: 0x0008, lo: 0x90, hi: 0x9a},
3892 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3893 {value: 0x0008, lo: 0x9c, hi: 0x9c},
3894 {value: 0x0018, lo: 0x9d, hi: 0x9f},
3895 {value: 0x0040, lo: 0xa0, hi: 0xa0},
3896 {value: 0x0018, lo: 0xa1, hi: 0xb4},
3897 {value: 0x0040, lo: 0xb5, hi: 0xbf},
3898 // Block 0xb2, offset 0x561
3899 {value: 0x0000, lo: 0x0c},
3900 {value: 0x0008, lo: 0x80, hi: 0x91},
3901 {value: 0x0040, lo: 0x92, hi: 0x92},
3902 {value: 0x0008, lo: 0x93, hi: 0xab},
3903 {value: 0x1008, lo: 0xac, hi: 0xae},
3904 {value: 0x1308, lo: 0xaf, hi: 0xb1},
3905 {value: 0x1008, lo: 0xb2, hi: 0xb3},
3906 {value: 0x1308, lo: 0xb4, hi: 0xb4},
3907 {value: 0x1808, lo: 0xb5, hi: 0xb5},
3908 {value: 0x1308, lo: 0xb6, hi: 0xb7},
3909 {value: 0x0018, lo: 0xb8, hi: 0xbd},
3910 {value: 0x1308, lo: 0xbe, hi: 0xbe},
3911 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3912 // Block 0xb3, offset 0x56e
3913 {value: 0x0000, lo: 0x0c},
3914 {value: 0x0008, lo: 0x80, hi: 0x86},
3915 {value: 0x0040, lo: 0x87, hi: 0x87},
3916 {value: 0x0008, lo: 0x88, hi: 0x88},
3917 {value: 0x0040, lo: 0x89, hi: 0x89},
3918 {value: 0x0008, lo: 0x8a, hi: 0x8d},
3919 {value: 0x0040, lo: 0x8e, hi: 0x8e},
3920 {value: 0x0008, lo: 0x8f, hi: 0x9d},
3921 {value: 0x0040, lo: 0x9e, hi: 0x9e},
3922 {value: 0x0008, lo: 0x9f, hi: 0xa8},
3923 {value: 0x0018, lo: 0xa9, hi: 0xa9},
3924 {value: 0x0040, lo: 0xaa, hi: 0xaf},
3925 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3926 // Block 0xb4, offset 0x57b
3927 {value: 0x0000, lo: 0x08},
3928 {value: 0x0008, lo: 0x80, hi: 0x9e},
3929 {value: 0x1308, lo: 0x9f, hi: 0x9f},
3930 {value: 0x1008, lo: 0xa0, hi: 0xa2},
3931 {value: 0x1308, lo: 0xa3, hi: 0xa9},
3932 {value: 0x1b08, lo: 0xaa, hi: 0xaa},
3933 {value: 0x0040, lo: 0xab, hi: 0xaf},
3934 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3935 {value: 0x0040, lo: 0xba, hi: 0xbf},
3936 // Block 0xb5, offset 0x584
3937 {value: 0x0000, lo: 0x03},
3938 {value: 0x0008, lo: 0x80, hi: 0xb4},
3939 {value: 0x1008, lo: 0xb5, hi: 0xb7},
3940 {value: 0x1308, lo: 0xb8, hi: 0xbf},
3941 // Block 0xb6, offset 0x588
3942 {value: 0x0000, lo: 0x0d},
3943 {value: 0x1008, lo: 0x80, hi: 0x81},
3944 {value: 0x1b08, lo: 0x82, hi: 0x82},
3945 {value: 0x1308, lo: 0x83, hi: 0x84},
3946 {value: 0x1008, lo: 0x85, hi: 0x85},
3947 {value: 0x1308, lo: 0x86, hi: 0x86},
3948 {value: 0x0008, lo: 0x87, hi: 0x8a},
3949 {value: 0x0018, lo: 0x8b, hi: 0x8f},
3950 {value: 0x0008, lo: 0x90, hi: 0x99},
3951 {value: 0x0040, lo: 0x9a, hi: 0x9a},
3952 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3953 {value: 0x0040, lo: 0x9c, hi: 0x9c},
3954 {value: 0x0018, lo: 0x9d, hi: 0x9d},
3955 {value: 0x0040, lo: 0x9e, hi: 0xbf},
3956 // Block 0xb7, offset 0x596
3957 {value: 0x0000, lo: 0x07},
3958 {value: 0x0008, lo: 0x80, hi: 0xaf},
3959 {value: 0x1008, lo: 0xb0, hi: 0xb2},
3960 {value: 0x1308, lo: 0xb3, hi: 0xb8},
3961 {value: 0x1008, lo: 0xb9, hi: 0xb9},
3962 {value: 0x1308, lo: 0xba, hi: 0xba},
3963 {value: 0x1008, lo: 0xbb, hi: 0xbe},
3964 {value: 0x1308, lo: 0xbf, hi: 0xbf},
3965 // Block 0xb8, offset 0x59e
3966 {value: 0x0000, lo: 0x0a},
3967 {value: 0x1308, lo: 0x80, hi: 0x80},
3968 {value: 0x1008, lo: 0x81, hi: 0x81},
3969 {value: 0x1b08, lo: 0x82, hi: 0x82},
3970 {value: 0x1308, lo: 0x83, hi: 0x83},
3971 {value: 0x0008, lo: 0x84, hi: 0x85},
3972 {value: 0x0018, lo: 0x86, hi: 0x86},
3973 {value: 0x0008, lo: 0x87, hi: 0x87},
3974 {value: 0x0040, lo: 0x88, hi: 0x8f},
3975 {value: 0x0008, lo: 0x90, hi: 0x99},
3976 {value: 0x0040, lo: 0x9a, hi: 0xbf},
3977 // Block 0xb9, offset 0x5a9
3978 {value: 0x0000, lo: 0x08},
3979 {value: 0x0008, lo: 0x80, hi: 0xae},
3980 {value: 0x1008, lo: 0xaf, hi: 0xb1},
3981 {value: 0x1308, lo: 0xb2, hi: 0xb5},
3982 {value: 0x0040, lo: 0xb6, hi: 0xb7},
3983 {value: 0x1008, lo: 0xb8, hi: 0xbb},
3984 {value: 0x1308, lo: 0xbc, hi: 0xbd},
3985 {value: 0x1008, lo: 0xbe, hi: 0xbe},
3986 {value: 0x1b08, lo: 0xbf, hi: 0xbf},
3987 // Block 0xba, offset 0x5b2
3988 {value: 0x0000, lo: 0x05},
3989 {value: 0x1308, lo: 0x80, hi: 0x80},
3990 {value: 0x0018, lo: 0x81, hi: 0x97},
3991 {value: 0x0008, lo: 0x98, hi: 0x9b},
3992 {value: 0x1308, lo: 0x9c, hi: 0x9d},
3993 {value: 0x0040, lo: 0x9e, hi: 0xbf},
3994 // Block 0xbb, offset 0x5b8
3995 {value: 0x0000, lo: 0x07},
3996 {value: 0x0008, lo: 0x80, hi: 0xaf},
3997 {value: 0x1008, lo: 0xb0, hi: 0xb2},
3998 {value: 0x1308, lo: 0xb3, hi: 0xba},
3999 {value: 0x1008, lo: 0xbb, hi: 0xbc},
4000 {value: 0x1308, lo: 0xbd, hi: 0xbd},
4001 {value: 0x1008, lo: 0xbe, hi: 0xbe},
4002 {value: 0x1b08, lo: 0xbf, hi: 0xbf},
4003 // Block 0xbc, offset 0x5c0
4004 {value: 0x0000, lo: 0x08},
4005 {value: 0x1308, lo: 0x80, hi: 0x80},
4006 {value: 0x0018, lo: 0x81, hi: 0x83},
4007 {value: 0x0008, lo: 0x84, hi: 0x84},
4008 {value: 0x0040, lo: 0x85, hi: 0x8f},
4009 {value: 0x0008, lo: 0x90, hi: 0x99},
4010 {value: 0x0040, lo: 0x9a, hi: 0x9f},
4011 {value: 0x0018, lo: 0xa0, hi: 0xac},
4012 {value: 0x0040, lo: 0xad, hi: 0xbf},
4013 // Block 0xbd, offset 0x5c9
4014 {value: 0x0000, lo: 0x09},
4015 {value: 0x0008, lo: 0x80, hi: 0xaa},
4016 {value: 0x1308, lo: 0xab, hi: 0xab},
4017 {value: 0x1008, lo: 0xac, hi: 0xac},
4018 {value: 0x1308, lo: 0xad, hi: 0xad},
4019 {value: 0x1008, lo: 0xae, hi: 0xaf},
4020 {value: 0x1308, lo: 0xb0, hi: 0xb5},
4021 {value: 0x1808, lo: 0xb6, hi: 0xb6},
4022 {value: 0x1308, lo: 0xb7, hi: 0xb7},
4023 {value: 0x0040, lo: 0xb8, hi: 0xbf},
4024 // Block 0xbe, offset 0x5d3
4025 {value: 0x0000, lo: 0x02},
4026 {value: 0x0008, lo: 0x80, hi: 0x89},
4027 {value: 0x0040, lo: 0x8a, hi: 0xbf},
4028 // Block 0xbf, offset 0x5d6
4029 {value: 0x0000, lo: 0x0b},
4030 {value: 0x0008, lo: 0x80, hi: 0x99},
4031 {value: 0x0040, lo: 0x9a, hi: 0x9c},
4032 {value: 0x1308, lo: 0x9d, hi: 0x9f},
4033 {value: 0x1008, lo: 0xa0, hi: 0xa1},
4034 {value: 0x1308, lo: 0xa2, hi: 0xa5},
4035 {value: 0x1008, lo: 0xa6, hi: 0xa6},
4036 {value: 0x1308, lo: 0xa7, hi: 0xaa},
4037 {value: 0x1b08, lo: 0xab, hi: 0xab},
4038 {value: 0x0040, lo: 0xac, hi: 0xaf},
4039 {value: 0x0008, lo: 0xb0, hi: 0xb9},
4040 {value: 0x0018, lo: 0xba, hi: 0xbf},
4041 // Block 0xc0, offset 0x5e2
4042 {value: 0x0000, lo: 0x02},
4043 {value: 0x0040, lo: 0x80, hi: 0x9f},
4044 {value: 0x049d, lo: 0xa0, hi: 0xbf},
4045 // Block 0xc1, offset 0x5e5
4046 {value: 0x0000, lo: 0x04},
4047 {value: 0x0008, lo: 0x80, hi: 0xa9},
4048 {value: 0x0018, lo: 0xaa, hi: 0xb2},
4049 {value: 0x0040, lo: 0xb3, hi: 0xbe},
4050 {value: 0x0008, lo: 0xbf, hi: 0xbf},
4051 // Block 0xc2, offset 0x5ea
4052 {value: 0x0000, lo: 0x02},
4053 {value: 0x0008, lo: 0x80, hi: 0xb8},
4054 {value: 0x0040, lo: 0xb9, hi: 0xbf},
4055 // Block 0xc3, offset 0x5ed
4056 {value: 0x0000, lo: 0x09},
4057 {value: 0x0008, lo: 0x80, hi: 0x88},
4058 {value: 0x0040, lo: 0x89, hi: 0x89},
4059 {value: 0x0008, lo: 0x8a, hi: 0xae},
4060 {value: 0x1008, lo: 0xaf, hi: 0xaf},
4061 {value: 0x1308, lo: 0xb0, hi: 0xb6},
4062 {value: 0x0040, lo: 0xb7, hi: 0xb7},
4063 {value: 0x1308, lo: 0xb8, hi: 0xbd},
4064 {value: 0x1008, lo: 0xbe, hi: 0xbe},
4065 {value: 0x1b08, lo: 0xbf, hi: 0xbf},
4066 // Block 0xc4, offset 0x5f7
4067 {value: 0x0000, lo: 0x08},
4068 {value: 0x0008, lo: 0x80, hi: 0x80},
4069 {value: 0x0018, lo: 0x81, hi: 0x85},
4070 {value: 0x0040, lo: 0x86, hi: 0x8f},
4071 {value: 0x0008, lo: 0x90, hi: 0x99},
4072 {value: 0x0018, lo: 0x9a, hi: 0xac},
4073 {value: 0x0040, lo: 0xad, hi: 0xaf},
4074 {value: 0x0018, lo: 0xb0, hi: 0xb1},
4075 {value: 0x0008, lo: 0xb2, hi: 0xbf},
4076 // Block 0xc5, offset 0x600
4077 {value: 0x0000, lo: 0x0b},
4078 {value: 0x0008, lo: 0x80, hi: 0x8f},
4079 {value: 0x0040, lo: 0x90, hi: 0x91},
4080 {value: 0x1308, lo: 0x92, hi: 0xa7},
4081 {value: 0x0040, lo: 0xa8, hi: 0xa8},
4082 {value: 0x1008, lo: 0xa9, hi: 0xa9},
4083 {value: 0x1308, lo: 0xaa, hi: 0xb0},
4084 {value: 0x1008, lo: 0xb1, hi: 0xb1},
4085 {value: 0x1308, lo: 0xb2, hi: 0xb3},
4086 {value: 0x1008, lo: 0xb4, hi: 0xb4},
4087 {value: 0x1308, lo: 0xb5, hi: 0xb6},
4088 {value: 0x0040, lo: 0xb7, hi: 0xbf},
4089 // Block 0xc6, offset 0x60c
4090 {value: 0x0000, lo: 0x02},
4091 {value: 0x0008, lo: 0x80, hi: 0x99},
4092 {value: 0x0040, lo: 0x9a, hi: 0xbf},
4093 // Block 0xc7, offset 0x60f
4094 {value: 0x0000, lo: 0x04},
4095 {value: 0x0018, lo: 0x80, hi: 0xae},
4096 {value: 0x0040, lo: 0xaf, hi: 0xaf},
4097 {value: 0x0018, lo: 0xb0, hi: 0xb4},
4098 {value: 0x0040, lo: 0xb5, hi: 0xbf},
4099 // Block 0xc8, offset 0x614
4100 {value: 0x0000, lo: 0x02},
4101 {value: 0x0008, lo: 0x80, hi: 0x83},
4102 {value: 0x0040, lo: 0x84, hi: 0xbf},
4103 // Block 0xc9, offset 0x617
4104 {value: 0x0000, lo: 0x02},
4105 {value: 0x0008, lo: 0x80, hi: 0xae},
4106 {value: 0x0040, lo: 0xaf, hi: 0xbf},
4107 // Block 0xca, offset 0x61a
4108 {value: 0x0000, lo: 0x02},
4109 {value: 0x0008, lo: 0x80, hi: 0x86},
4110 {value: 0x0040, lo: 0x87, hi: 0xbf},
4111 // Block 0xcb, offset 0x61d
4112 {value: 0x0000, lo: 0x06},
4113 {value: 0x0008, lo: 0x80, hi: 0x9e},
4114 {value: 0x0040, lo: 0x9f, hi: 0x9f},
4115 {value: 0x0008, lo: 0xa0, hi: 0xa9},
4116 {value: 0x0040, lo: 0xaa, hi: 0xad},
4117 {value: 0x0018, lo: 0xae, hi: 0xaf},
4118 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4119 // Block 0xcc, offset 0x624
4120 {value: 0x0000, lo: 0x06},
4121 {value: 0x0040, lo: 0x80, hi: 0x8f},
4122 {value: 0x0008, lo: 0x90, hi: 0xad},
4123 {value: 0x0040, lo: 0xae, hi: 0xaf},
4124 {value: 0x1308, lo: 0xb0, hi: 0xb4},
4125 {value: 0x0018, lo: 0xb5, hi: 0xb5},
4126 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4127 // Block 0xcd, offset 0x62b
4128 {value: 0x0000, lo: 0x03},
4129 {value: 0x0008, lo: 0x80, hi: 0xaf},
4130 {value: 0x1308, lo: 0xb0, hi: 0xb6},
4131 {value: 0x0018, lo: 0xb7, hi: 0xbf},
4132 // Block 0xce, offset 0x62f
4133 {value: 0x0000, lo: 0x0a},
4134 {value: 0x0008, lo: 0x80, hi: 0x83},
4135 {value: 0x0018, lo: 0x84, hi: 0x85},
4136 {value: 0x0040, lo: 0x86, hi: 0x8f},
4137 {value: 0x0008, lo: 0x90, hi: 0x99},
4138 {value: 0x0040, lo: 0x9a, hi: 0x9a},
4139 {value: 0x0018, lo: 0x9b, hi: 0xa1},
4140 {value: 0x0040, lo: 0xa2, hi: 0xa2},
4141 {value: 0x0008, lo: 0xa3, hi: 0xb7},
4142 {value: 0x0040, lo: 0xb8, hi: 0xbc},
4143 {value: 0x0008, lo: 0xbd, hi: 0xbf},
4144 // Block 0xcf, offset 0x63a
4145 {value: 0x0000, lo: 0x02},
4146 {value: 0x0008, lo: 0x80, hi: 0x8f},
4147 {value: 0x0040, lo: 0x90, hi: 0xbf},
4148 // Block 0xd0, offset 0x63d
4149 {value: 0x0000, lo: 0x05},
4150 {value: 0x0008, lo: 0x80, hi: 0x84},
4151 {value: 0x0040, lo: 0x85, hi: 0x8f},
4152 {value: 0x0008, lo: 0x90, hi: 0x90},
4153 {value: 0x1008, lo: 0x91, hi: 0xbe},
4154 {value: 0x0040, lo: 0xbf, hi: 0xbf},
4155 // Block 0xd1, offset 0x643
4156 {value: 0x0000, lo: 0x04},
4157 {value: 0x0040, lo: 0x80, hi: 0x8e},
4158 {value: 0x1308, lo: 0x8f, hi: 0x92},
4159 {value: 0x0008, lo: 0x93, hi: 0x9f},
4160 {value: 0x0040, lo: 0xa0, hi: 0xbf},
4161 // Block 0xd2, offset 0x648
4162 {value: 0x0000, lo: 0x03},
4163 {value: 0x0040, lo: 0x80, hi: 0x9f},
4164 {value: 0x0008, lo: 0xa0, hi: 0xa0},
4165 {value: 0x0040, lo: 0xa1, hi: 0xbf},
4166 // Block 0xd3, offset 0x64c
4167 {value: 0x0000, lo: 0x02},
4168 {value: 0x0008, lo: 0x80, hi: 0xac},
4169 {value: 0x0040, lo: 0xad, hi: 0xbf},
4170 // Block 0xd4, offset 0x64f
4171 {value: 0x0000, lo: 0x02},
4172 {value: 0x0008, lo: 0x80, hi: 0xb2},
4173 {value: 0x0040, lo: 0xb3, hi: 0xbf},
4174 // Block 0xd5, offset 0x652
4175 {value: 0x0000, lo: 0x02},
4176 {value: 0x0008, lo: 0x80, hi: 0x81},
4177 {value: 0x0040, lo: 0x82, hi: 0xbf},
4178 // Block 0xd6, offset 0x655
4179 {value: 0x0000, lo: 0x04},
4180 {value: 0x0008, lo: 0x80, hi: 0xaa},
4181 {value: 0x0040, lo: 0xab, hi: 0xaf},
4182 {value: 0x0008, lo: 0xb0, hi: 0xbc},
4183 {value: 0x0040, lo: 0xbd, hi: 0xbf},
4184 // Block 0xd7, offset 0x65a
4185 {value: 0x0000, lo: 0x09},
4186 {value: 0x0008, lo: 0x80, hi: 0x88},
4187 {value: 0x0040, lo: 0x89, hi: 0x8f},
4188 {value: 0x0008, lo: 0x90, hi: 0x99},
4189 {value: 0x0040, lo: 0x9a, hi: 0x9b},
4190 {value: 0x0018, lo: 0x9c, hi: 0x9c},
4191 {value: 0x1308, lo: 0x9d, hi: 0x9e},
4192 {value: 0x0018, lo: 0x9f, hi: 0x9f},
4193 {value: 0x03c0, lo: 0xa0, hi: 0xa3},
4194 {value: 0x0040, lo: 0xa4, hi: 0xbf},
4195 // Block 0xd8, offset 0x664
4196 {value: 0x0000, lo: 0x02},
4197 {value: 0x0018, lo: 0x80, hi: 0xb5},
4198 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4199 // Block 0xd9, offset 0x667
4200 {value: 0x0000, lo: 0x03},
4201 {value: 0x0018, lo: 0x80, hi: 0xa6},
4202 {value: 0x0040, lo: 0xa7, hi: 0xa8},
4203 {value: 0x0018, lo: 0xa9, hi: 0xbf},
4204 // Block 0xda, offset 0x66b
4205 {value: 0x0000, lo: 0x0e},
4206 {value: 0x0018, lo: 0x80, hi: 0x9d},
4207 {value: 0xb5b9, lo: 0x9e, hi: 0x9e},
4208 {value: 0xb601, lo: 0x9f, hi: 0x9f},
4209 {value: 0xb649, lo: 0xa0, hi: 0xa0},
4210 {value: 0xb6b1, lo: 0xa1, hi: 0xa1},
4211 {value: 0xb719, lo: 0xa2, hi: 0xa2},
4212 {value: 0xb781, lo: 0xa3, hi: 0xa3},
4213 {value: 0xb7e9, lo: 0xa4, hi: 0xa4},
4214 {value: 0x1018, lo: 0xa5, hi: 0xa6},
4215 {value: 0x1318, lo: 0xa7, hi: 0xa9},
4216 {value: 0x0018, lo: 0xaa, hi: 0xac},
4217 {value: 0x1018, lo: 0xad, hi: 0xb2},
4218 {value: 0x0340, lo: 0xb3, hi: 0xba},
4219 {value: 0x1318, lo: 0xbb, hi: 0xbf},
4220 // Block 0xdb, offset 0x67a
4221 {value: 0x0000, lo: 0x0b},
4222 {value: 0x1318, lo: 0x80, hi: 0x82},
4223 {value: 0x0018, lo: 0x83, hi: 0x84},
4224 {value: 0x1318, lo: 0x85, hi: 0x8b},
4225 {value: 0x0018, lo: 0x8c, hi: 0xa9},
4226 {value: 0x1318, lo: 0xaa, hi: 0xad},
4227 {value: 0x0018, lo: 0xae, hi: 0xba},
4228 {value: 0xb851, lo: 0xbb, hi: 0xbb},
4229 {value: 0xb899, lo: 0xbc, hi: 0xbc},
4230 {value: 0xb8e1, lo: 0xbd, hi: 0xbd},
4231 {value: 0xb949, lo: 0xbe, hi: 0xbe},
4232 {value: 0xb9b1, lo: 0xbf, hi: 0xbf},
4233 // Block 0xdc, offset 0x686
4234 {value: 0x0000, lo: 0x03},
4235 {value: 0xba19, lo: 0x80, hi: 0x80},
4236 {value: 0x0018, lo: 0x81, hi: 0xa8},
4237 {value: 0x0040, lo: 0xa9, hi: 0xbf},
4238 // Block 0xdd, offset 0x68a
4239 {value: 0x0000, lo: 0x04},
4240 {value: 0x0018, lo: 0x80, hi: 0x81},
4241 {value: 0x1318, lo: 0x82, hi: 0x84},
4242 {value: 0x0018, lo: 0x85, hi: 0x85},
4243 {value: 0x0040, lo: 0x86, hi: 0xbf},
4244 // Block 0xde, offset 0x68f
4245 {value: 0x0000, lo: 0x04},
4246 {value: 0x0018, lo: 0x80, hi: 0x96},
4247 {value: 0x0040, lo: 0x97, hi: 0x9f},
4248 {value: 0x0018, lo: 0xa0, hi: 0xb1},
4249 {value: 0x0040, lo: 0xb2, hi: 0xbf},
4250 // Block 0xdf, offset 0x694
4251 {value: 0x0000, lo: 0x03},
4252 {value: 0x1308, lo: 0x80, hi: 0xb6},
4253 {value: 0x0018, lo: 0xb7, hi: 0xba},
4254 {value: 0x1308, lo: 0xbb, hi: 0xbf},
4255 // Block 0xe0, offset 0x698
4256 {value: 0x0000, lo: 0x04},
4257 {value: 0x1308, lo: 0x80, hi: 0xac},
4258 {value: 0x0018, lo: 0xad, hi: 0xb4},
4259 {value: 0x1308, lo: 0xb5, hi: 0xb5},
4260 {value: 0x0018, lo: 0xb6, hi: 0xbf},
4261 // Block 0xe1, offset 0x69d
4262 {value: 0x0000, lo: 0x08},
4263 {value: 0x0018, lo: 0x80, hi: 0x83},
4264 {value: 0x1308, lo: 0x84, hi: 0x84},
4265 {value: 0x0018, lo: 0x85, hi: 0x8b},
4266 {value: 0x0040, lo: 0x8c, hi: 0x9a},
4267 {value: 0x1308, lo: 0x9b, hi: 0x9f},
4268 {value: 0x0040, lo: 0xa0, hi: 0xa0},
4269 {value: 0x1308, lo: 0xa1, hi: 0xaf},
4270 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4271 // Block 0xe2, offset 0x6a6
4272 {value: 0x0000, lo: 0x0a},
4273 {value: 0x1308, lo: 0x80, hi: 0x86},
4274 {value: 0x0040, lo: 0x87, hi: 0x87},
4275 {value: 0x1308, lo: 0x88, hi: 0x98},
4276 {value: 0x0040, lo: 0x99, hi: 0x9a},
4277 {value: 0x1308, lo: 0x9b, hi: 0xa1},
4278 {value: 0x0040, lo: 0xa2, hi: 0xa2},
4279 {value: 0x1308, lo: 0xa3, hi: 0xa4},
4280 {value: 0x0040, lo: 0xa5, hi: 0xa5},
4281 {value: 0x1308, lo: 0xa6, hi: 0xaa},
4282 {value: 0x0040, lo: 0xab, hi: 0xbf},
4283 // Block 0xe3, offset 0x6b1
4284 {value: 0x0000, lo: 0x05},
4285 {value: 0x0008, lo: 0x80, hi: 0x84},
4286 {value: 0x0040, lo: 0x85, hi: 0x86},
4287 {value: 0x0018, lo: 0x87, hi: 0x8f},
4288 {value: 0x1308, lo: 0x90, hi: 0x96},
4289 {value: 0x0040, lo: 0x97, hi: 0xbf},
4290 // Block 0xe4, offset 0x6b7
4291 {value: 0x0000, lo: 0x07},
4292 {value: 0x0208, lo: 0x80, hi: 0x83},
4293 {value: 0x1308, lo: 0x84, hi: 0x8a},
4294 {value: 0x0040, lo: 0x8b, hi: 0x8f},
4295 {value: 0x0008, lo: 0x90, hi: 0x99},
4296 {value: 0x0040, lo: 0x9a, hi: 0x9d},
4297 {value: 0x0018, lo: 0x9e, hi: 0x9f},
4298 {value: 0x0040, lo: 0xa0, hi: 0xbf},
4299 // Block 0xe5, offset 0x6bf
4300 {value: 0x0000, lo: 0x03},
4301 {value: 0x0040, lo: 0x80, hi: 0xaf},
4302 {value: 0x0018, lo: 0xb0, hi: 0xb1},
4303 {value: 0x0040, lo: 0xb2, hi: 0xbf},
4304 // Block 0xe6, offset 0x6c3
4305 {value: 0x0000, lo: 0x03},
4306 {value: 0x0018, lo: 0x80, hi: 0xab},
4307 {value: 0x0040, lo: 0xac, hi: 0xaf},
4308 {value: 0x0018, lo: 0xb0, hi: 0xbf},
4309 // Block 0xe7, offset 0x6c7
4310 {value: 0x0000, lo: 0x05},
4311 {value: 0x0018, lo: 0x80, hi: 0x93},
4312 {value: 0x0040, lo: 0x94, hi: 0x9f},
4313 {value: 0x0018, lo: 0xa0, hi: 0xae},
4314 {value: 0x0040, lo: 0xaf, hi: 0xb0},
4315 {value: 0x0018, lo: 0xb1, hi: 0xbf},
4316 // Block 0xe8, offset 0x6cd
4317 {value: 0x0000, lo: 0x05},
4318 {value: 0x0040, lo: 0x80, hi: 0x80},
4319 {value: 0x0018, lo: 0x81, hi: 0x8f},
4320 {value: 0x0040, lo: 0x90, hi: 0x90},
4321 {value: 0x0018, lo: 0x91, hi: 0xb5},
4322 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4323 // Block 0xe9, offset 0x6d3
4324 {value: 0x0000, lo: 0x04},
4325 {value: 0x0018, lo: 0x80, hi: 0x8f},
4326 {value: 0xc1c1, lo: 0x90, hi: 0x90},
4327 {value: 0x0018, lo: 0x91, hi: 0xac},
4328 {value: 0x0040, lo: 0xad, hi: 0xbf},
4329 // Block 0xea, offset 0x6d8
4330 {value: 0x0000, lo: 0x02},
4331 {value: 0x0040, lo: 0x80, hi: 0xa5},
4332 {value: 0x0018, lo: 0xa6, hi: 0xbf},
4333 // Block 0xeb, offset 0x6db
4334 {value: 0x0000, lo: 0x0d},
4335 {value: 0xc7e9, lo: 0x80, hi: 0x80},
4336 {value: 0xc839, lo: 0x81, hi: 0x81},
4337 {value: 0xc889, lo: 0x82, hi: 0x82},
4338 {value: 0xc8d9, lo: 0x83, hi: 0x83},
4339 {value: 0xc929, lo: 0x84, hi: 0x84},
4340 {value: 0xc979, lo: 0x85, hi: 0x85},
4341 {value: 0xc9c9, lo: 0x86, hi: 0x86},
4342 {value: 0xca19, lo: 0x87, hi: 0x87},
4343 {value: 0xca69, lo: 0x88, hi: 0x88},
4344 {value: 0x0040, lo: 0x89, hi: 0x8f},
4345 {value: 0xcab9, lo: 0x90, hi: 0x90},
4346 {value: 0xcad9, lo: 0x91, hi: 0x91},
4347 {value: 0x0040, lo: 0x92, hi: 0xbf},
4348 // Block 0xec, offset 0x6e9
4349 {value: 0x0000, lo: 0x06},
4350 {value: 0x0018, lo: 0x80, hi: 0x92},
4351 {value: 0x0040, lo: 0x93, hi: 0x9f},
4352 {value: 0x0018, lo: 0xa0, hi: 0xac},
4353 {value: 0x0040, lo: 0xad, hi: 0xaf},
4354 {value: 0x0018, lo: 0xb0, hi: 0xb6},
4355 {value: 0x0040, lo: 0xb7, hi: 0xbf},
4356 // Block 0xed, offset 0x6f0
4357 {value: 0x0000, lo: 0x02},
4358 {value: 0x0018, lo: 0x80, hi: 0xb3},
4359 {value: 0x0040, lo: 0xb4, hi: 0xbf},
4360 // Block 0xee, offset 0x6f3
4361 {value: 0x0000, lo: 0x02},
4362 {value: 0x0018, lo: 0x80, hi: 0x94},
4363 {value: 0x0040, lo: 0x95, hi: 0xbf},
4364 // Block 0xef, offset 0x6f6
4365 {value: 0x0000, lo: 0x03},
4366 {value: 0x0018, lo: 0x80, hi: 0x8b},
4367 {value: 0x0040, lo: 0x8c, hi: 0x8f},
4368 {value: 0x0018, lo: 0x90, hi: 0xbf},
4369 // Block 0xf0, offset 0x6fa
4370 {value: 0x0000, lo: 0x05},
4371 {value: 0x0018, lo: 0x80, hi: 0x87},
4372 {value: 0x0040, lo: 0x88, hi: 0x8f},
4373 {value: 0x0018, lo: 0x90, hi: 0x99},
4374 {value: 0x0040, lo: 0x9a, hi: 0x9f},
4375 {value: 0x0018, lo: 0xa0, hi: 0xbf},
4376 // Block 0xf1, offset 0x700
4377 {value: 0x0000, lo: 0x04},
4378 {value: 0x0018, lo: 0x80, hi: 0x87},
4379 {value: 0x0040, lo: 0x88, hi: 0x8f},
4380 {value: 0x0018, lo: 0x90, hi: 0xad},
4381 {value: 0x0040, lo: 0xae, hi: 0xbf},
4382 // Block 0xf2, offset 0x705
4383 {value: 0x0000, lo: 0x09},
4384 {value: 0x0040, lo: 0x80, hi: 0x8f},
4385 {value: 0x0018, lo: 0x90, hi: 0x9e},
4386 {value: 0x0040, lo: 0x9f, hi: 0x9f},
4387 {value: 0x0018, lo: 0xa0, hi: 0xa7},
4388 {value: 0x0040, lo: 0xa8, hi: 0xaf},
4389 {value: 0x0018, lo: 0xb0, hi: 0xb0},
4390 {value: 0x0040, lo: 0xb1, hi: 0xb2},
4391 {value: 0x0018, lo: 0xb3, hi: 0xbe},
4392 {value: 0x0040, lo: 0xbf, hi: 0xbf},
4393 // Block 0xf3, offset 0x70f
4394 {value: 0x0000, lo: 0x04},
4395 {value: 0x0018, lo: 0x80, hi: 0x8b},
4396 {value: 0x0040, lo: 0x8c, hi: 0x8f},
4397 {value: 0x0018, lo: 0x90, hi: 0x9e},
4398 {value: 0x0040, lo: 0x9f, hi: 0xbf},
4399 // Block 0xf4, offset 0x714
4400 {value: 0x0000, lo: 0x02},
4401 {value: 0x0018, lo: 0x80, hi: 0x91},
4402 {value: 0x0040, lo: 0x92, hi: 0xbf},
4403 // Block 0xf5, offset 0x717
4404 {value: 0x0000, lo: 0x02},
4405 {value: 0x0018, lo: 0x80, hi: 0x80},
4406 {value: 0x0040, lo: 0x81, hi: 0xbf},
4407 // Block 0xf6, offset 0x71a
4408 {value: 0x0000, lo: 0x02},
4409 {value: 0x0008, lo: 0x80, hi: 0x96},
4410 {value: 0x0040, lo: 0x97, hi: 0xbf},
4411 // Block 0xf7, offset 0x71d
4412 {value: 0x0000, lo: 0x02},
4413 {value: 0x0008, lo: 0x80, hi: 0xb4},
4414 {value: 0x0040, lo: 0xb5, hi: 0xbf},
4415 // Block 0xf8, offset 0x720
4416 {value: 0x0000, lo: 0x03},
4417 {value: 0x0008, lo: 0x80, hi: 0x9d},
4418 {value: 0x0040, lo: 0x9e, hi: 0x9f},
4419 {value: 0x0008, lo: 0xa0, hi: 0xbf},
4420 // Block 0xf9, offset 0x724
4421 {value: 0x0000, lo: 0x02},
4422 {value: 0x0008, lo: 0x80, hi: 0xa1},
4423 {value: 0x0040, lo: 0xa2, hi: 0xbf},
4424 // Block 0xfa, offset 0x727
4425 {value: 0x0020, lo: 0x0f},
4426 {value: 0xdeb9, lo: 0x80, hi: 0x89},
4427 {value: 0x8dfd, lo: 0x8a, hi: 0x8a},
4428 {value: 0xdff9, lo: 0x8b, hi: 0x9c},
4429 {value: 0x8e1d, lo: 0x9d, hi: 0x9d},
4430 {value: 0xe239, lo: 0x9e, hi: 0xa2},
4431 {value: 0x8e3d, lo: 0xa3, hi: 0xa3},
4432 {value: 0xe2d9, lo: 0xa4, hi: 0xab},
4433 {value: 0x7ed5, lo: 0xac, hi: 0xac},
4434 {value: 0xe3d9, lo: 0xad, hi: 0xaf},
4435 {value: 0x8e5d, lo: 0xb0, hi: 0xb0},
4436 {value: 0xe439, lo: 0xb1, hi: 0xb6},
4437 {value: 0x8e7d, lo: 0xb7, hi: 0xb9},
4438 {value: 0xe4f9, lo: 0xba, hi: 0xba},
4439 {value: 0x8edd, lo: 0xbb, hi: 0xbb},
4440 {value: 0xe519, lo: 0xbc, hi: 0xbf},
4441 // Block 0xfb, offset 0x737
4442 {value: 0x0020, lo: 0x10},
4443 {value: 0x937d, lo: 0x80, hi: 0x80},
4444 {value: 0xf099, lo: 0x81, hi: 0x86},
4445 {value: 0x939d, lo: 0x87, hi: 0x8a},
4446 {value: 0xd9f9, lo: 0x8b, hi: 0x8b},
4447 {value: 0xf159, lo: 0x8c, hi: 0x96},
4448 {value: 0x941d, lo: 0x97, hi: 0x97},
4449 {value: 0xf2b9, lo: 0x98, hi: 0xa3},
4450 {value: 0x943d, lo: 0xa4, hi: 0xa6},
4451 {value: 0xf439, lo: 0xa7, hi: 0xaa},
4452 {value: 0x949d, lo: 0xab, hi: 0xab},
4453 {value: 0xf4b9, lo: 0xac, hi: 0xac},
4454 {value: 0x94bd, lo: 0xad, hi: 0xad},
4455 {value: 0xf4d9, lo: 0xae, hi: 0xaf},
4456 {value: 0x94dd, lo: 0xb0, hi: 0xb1},
4457 {value: 0xf519, lo: 0xb2, hi: 0xbe},
4458 {value: 0x0040, lo: 0xbf, hi: 0xbf},
4459 // Block 0xfc, offset 0x748
4460 {value: 0x0000, lo: 0x04},
4461 {value: 0x0040, lo: 0x80, hi: 0x80},
4462 {value: 0x0340, lo: 0x81, hi: 0x81},
4463 {value: 0x0040, lo: 0x82, hi: 0x9f},
4464 {value: 0x0340, lo: 0xa0, hi: 0xbf},
4465 // Block 0xfd, offset 0x74d
4466 {value: 0x0000, lo: 0x01},
4467 {value: 0x0340, lo: 0x80, hi: 0xbf},
4468 // Block 0xfe, offset 0x74f
4469 {value: 0x0000, lo: 0x01},
4470 {value: 0x13c0, lo: 0x80, hi: 0xbf},
4471 // Block 0xff, offset 0x751
4472 {value: 0x0000, lo: 0x02},
4473 {value: 0x13c0, lo: 0x80, hi: 0xaf},
4474 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4475}
4476
4477// Total table size 41559 bytes (40KiB); checksum: F4A1FA4E
diff --git a/vendor/golang.org/x/net/idna/tables10.0.0.go b/vendor/golang.org/x/net/idna/tables10.0.0.go
new file mode 100644
index 0000000..54fddb4
--- /dev/null
+++ b/vendor/golang.org/x/net/idna/tables10.0.0.go
@@ -0,0 +1,4559 @@
1// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
2
3// +build go1.10,!go1.13
4
5package idna
6
7// UnicodeVersion is the Unicode version from which the tables in this package are derived.
8const UnicodeVersion = "10.0.0"
9
10var mappings string = "" + // Size: 8175 bytes
11 "\x00\x01 \x03 ̈\x01a\x03 ̄\x012\x013\x03 ́\x03 ̧\x011\x01o\x051⁄4\x051⁄2" +
12 "\x053⁄4\x03i̇\x03l·\x03ʼn\x01s\x03dž\x03ⱥ\x03ⱦ\x01h\x01j\x01r\x01w\x01y" +
13 "\x03 ̆\x03 ̇\x03 ̊\x03 ̨\x03 ̃\x03 ̋\x01l\x01x\x04̈́\x03 ι\x01;\x05 ̈́" +
14 "\x04եւ\x04اٴ\x04وٴ\x04ۇٴ\x04يٴ\x06क़\x06ख़\x06ग़\x06ज़\x06ड़\x06ढ़\x06फ़" +
15 "\x06य़\x06ড়\x06ঢ়\x06য়\x06ਲ਼\x06ਸ਼\x06ਖ਼\x06ਗ਼\x06ਜ਼\x06ਫ਼\x06ଡ଼\x06ଢ଼" +
16 "\x06ํา\x06ໍາ\x06ຫນ\x06ຫມ\x06གྷ\x06ཌྷ\x06དྷ\x06བྷ\x06ཛྷ\x06ཀྵ\x06ཱི\x06ཱུ" +
17 "\x06ྲྀ\x09ྲཱྀ\x06ླྀ\x09ླཱྀ\x06ཱྀ\x06ྒྷ\x06ྜྷ\x06ྡྷ\x06ྦྷ\x06ྫྷ\x06ྐྵ\x02" +
18 "в\x02д\x02о\x02с\x02т\x02ъ\x02ѣ\x02æ\x01b\x01d\x01e\x02ǝ\x01g\x01i\x01k" +
19 "\x01m\x01n\x02ȣ\x01p\x01t\x01u\x02ɐ\x02ɑ\x02ə\x02ɛ\x02ɜ\x02ŋ\x02ɔ\x02ɯ" +
20 "\x01v\x02β\x02γ\x02δ\x02φ\x02χ\x02ρ\x02н\x02ɒ\x01c\x02ɕ\x02ð\x01f\x02ɟ" +
21 "\x02ɡ\x02ɥ\x02ɨ\x02ɩ\x02ɪ\x02ʝ\x02ɭ\x02ʟ\x02ɱ\x02ɰ\x02ɲ\x02ɳ\x02ɴ\x02ɵ" +
22 "\x02ɸ\x02ʂ\x02ʃ\x02ƫ\x02ʉ\x02ʊ\x02ʋ\x02ʌ\x01z\x02ʐ\x02ʑ\x02ʒ\x02θ\x02ss" +
23 "\x02ά\x02έ\x02ή\x02ί\x02ό\x02ύ\x02ώ\x05ἀι\x05ἁι\x05ἂι\x05ἃι\x05ἄι\x05ἅι" +
24 "\x05ἆι\x05ἇι\x05ἠι\x05ἡι\x05ἢι\x05ἣι\x05ἤι\x05ἥι\x05ἦι\x05ἧι\x05ὠι\x05ὡι" +
25 "\x05ὢι\x05ὣι\x05ὤι\x05ὥι\x05ὦι\x05ὧι\x05ὰι\x04αι\x04άι\x05ᾶι\x02ι\x05 ̈͂" +
26 "\x05ὴι\x04ηι\x04ήι\x05ῆι\x05 ̓̀\x05 ̓́\x05 ̓͂\x02ΐ\x05 ̔̀\x05 ̔́\x05 ̔͂" +
27 "\x02ΰ\x05 ̈̀\x01`\x05ὼι\x04ωι\x04ώι\x05ῶι\x06′′\x09′′′\x06‵‵\x09‵‵‵\x02!" +
28 "!\x02??\x02?!\x02!?\x0c′′′′\x010\x014\x015\x016\x017\x018\x019\x01+\x01=" +
29 "\x01(\x01)\x02rs\x02ħ\x02no\x01q\x02sm\x02tm\x02ω\x02å\x02א\x02ב\x02ג" +
30 "\x02ד\x02π\x051⁄7\x051⁄9\x061⁄10\x051⁄3\x052⁄3\x051⁄5\x052⁄5\x053⁄5\x054" +
31 "⁄5\x051⁄6\x055⁄6\x051⁄8\x053⁄8\x055⁄8\x057⁄8\x041⁄\x02ii\x02iv\x02vi" +
32 "\x04viii\x02ix\x02xi\x050⁄3\x06∫∫\x09∫∫∫\x06∮∮\x09∮∮∮\x0210\x0211\x0212" +
33 "\x0213\x0214\x0215\x0216\x0217\x0218\x0219\x0220\x04(10)\x04(11)\x04(12)" +
34 "\x04(13)\x04(14)\x04(15)\x04(16)\x04(17)\x04(18)\x04(19)\x04(20)\x0c∫∫∫∫" +
35 "\x02==\x05⫝̸\x02ɫ\x02ɽ\x02ȿ\x02ɀ\x01.\x04 ゙\x04 ゚\x06より\x06コト\x05(ᄀ)\x05" +
36 "(ᄂ)\x05(ᄃ)\x05(ᄅ)\x05(ᄆ)\x05(ᄇ)\x05(ᄉ)\x05(ᄋ)\x05(ᄌ)\x05(ᄎ)\x05(ᄏ)\x05(ᄐ" +
37 ")\x05(ᄑ)\x05(ᄒ)\x05(가)\x05(나)\x05(다)\x05(라)\x05(마)\x05(바)\x05(사)\x05(아)" +
38 "\x05(자)\x05(차)\x05(카)\x05(타)\x05(파)\x05(하)\x05(주)\x08(오전)\x08(오후)\x05(一)" +
39 "\x05(二)\x05(三)\x05(四)\x05(五)\x05(六)\x05(七)\x05(八)\x05(九)\x05(十)\x05(月)" +
40 "\x05(火)\x05(水)\x05(木)\x05(金)\x05(土)\x05(日)\x05(株)\x05(有)\x05(社)\x05(名)" +
41 "\x05(特)\x05(財)\x05(祝)\x05(労)\x05(代)\x05(呼)\x05(学)\x05(監)\x05(企)\x05(資)" +
42 "\x05(協)\x05(祭)\x05(休)\x05(自)\x05(至)\x0221\x0222\x0223\x0224\x0225\x0226" +
43 "\x0227\x0228\x0229\x0230\x0231\x0232\x0233\x0234\x0235\x06참고\x06주의\x0236" +
44 "\x0237\x0238\x0239\x0240\x0241\x0242\x0243\x0244\x0245\x0246\x0247\x0248" +
45 "\x0249\x0250\x041月\x042月\x043月\x044月\x045月\x046月\x047月\x048月\x049月\x0510" +
46 "月\x0511月\x0512月\x02hg\x02ev\x0cアパート\x0cアルファ\x0cアンペア\x09アール\x0cイニング\x09" +
47 "インチ\x09ウォン\x0fエスクード\x0cエーカー\x09オンス\x09オーム\x09カイリ\x0cカラット\x0cカロリー\x09ガロ" +
48 "ン\x09ガンマ\x06ギガ\x09ギニー\x0cキュリー\x0cギルダー\x06キロ\x0fキログラム\x12キロメートル\x0fキロワッ" +
49 "ト\x09グラム\x0fグラムトン\x0fクルゼイロ\x0cクローネ\x09ケース\x09コルナ\x09コーポ\x0cサイクル\x0fサンチ" +
50 "ーム\x0cシリング\x09センチ\x09セント\x09ダース\x06デシ\x06ドル\x06トン\x06ナノ\x09ノット\x09ハイツ" +
51 "\x0fパーセント\x09パーツ\x0cバーレル\x0fピアストル\x09ピクル\x06ピコ\x06ビル\x0fファラッド\x0cフィート" +
52 "\x0fブッシェル\x09フラン\x0fヘクタール\x06ペソ\x09ペニヒ\x09ヘルツ\x09ペンス\x09ページ\x09ベータ\x0cポイ" +
53 "ント\x09ボルト\x06ホン\x09ポンド\x09ホール\x09ホーン\x0cマイクロ\x09マイル\x09マッハ\x09マルク\x0fマ" +
54 "ンション\x0cミクロン\x06ミリ\x0fミリバール\x06メガ\x0cメガトン\x0cメートル\x09ヤード\x09ヤール\x09ユアン" +
55 "\x0cリットル\x06リラ\x09ルピー\x0cルーブル\x06レム\x0fレントゲン\x09ワット\x040点\x041点\x042点" +
56 "\x043点\x044点\x045点\x046点\x047点\x048点\x049点\x0510点\x0511点\x0512点\x0513点" +
57 "\x0514点\x0515点\x0516点\x0517点\x0518点\x0519点\x0520点\x0521点\x0522点\x0523点" +
58 "\x0524点\x02da\x02au\x02ov\x02pc\x02dm\x02iu\x06平成\x06昭和\x06大正\x06明治\x0c株" +
59 "式会社\x02pa\x02na\x02ma\x02ka\x02kb\x02mb\x02gb\x04kcal\x02pf\x02nf\x02m" +
60 "g\x02kg\x02hz\x02ml\x02dl\x02kl\x02fm\x02nm\x02mm\x02cm\x02km\x02m2\x02m" +
61 "3\x05m∕s\x06m∕s2\x07rad∕s\x08rad∕s2\x02ps\x02ns\x02ms\x02pv\x02nv\x02mv" +
62 "\x02kv\x02pw\x02nw\x02mw\x02kw\x02bq\x02cc\x02cd\x06c∕kg\x02db\x02gy\x02" +
63 "ha\x02hp\x02in\x02kk\x02kt\x02lm\x02ln\x02lx\x02ph\x02pr\x02sr\x02sv\x02" +
64 "wb\x05v∕m\x05a∕m\x041日\x042日\x043日\x044日\x045日\x046日\x047日\x048日\x049日" +
65 "\x0510日\x0511日\x0512日\x0513日\x0514日\x0515日\x0516日\x0517日\x0518日\x0519日" +
66 "\x0520日\x0521日\x0522日\x0523日\x0524日\x0525日\x0526日\x0527日\x0528日\x0529日" +
67 "\x0530日\x0531日\x02ь\x02ɦ\x02ɬ\x02ʞ\x02ʇ\x02œ\x04𤋮\x04𢡊\x04𢡄\x04𣏕\x04𥉉" +
68 "\x04𥳐\x04𧻓\x02ff\x02fi\x02fl\x02st\x04մն\x04մե\x04մի\x04վն\x04մխ\x04יִ" +
69 "\x04ײַ\x02ע\x02ה\x02כ\x02ל\x02ם\x02ר\x02ת\x04שׁ\x04שׂ\x06שּׁ\x06שּׂ\x04א" +
70 "ַ\x04אָ\x04אּ\x04בּ\x04גּ\x04דּ\x04הּ\x04וּ\x04זּ\x04טּ\x04יּ\x04ךּ\x04" +
71 "כּ\x04לּ\x04מּ\x04נּ\x04סּ\x04ףּ\x04פּ\x04צּ\x04קּ\x04רּ\x04שּ\x04תּ" +
72 "\x04וֹ\x04בֿ\x04כֿ\x04פֿ\x04אל\x02ٱ\x02ٻ\x02پ\x02ڀ\x02ٺ\x02ٿ\x02ٹ\x02ڤ" +
73 "\x02ڦ\x02ڄ\x02ڃ\x02چ\x02ڇ\x02ڍ\x02ڌ\x02ڎ\x02ڈ\x02ژ\x02ڑ\x02ک\x02گ\x02ڳ" +
74 "\x02ڱ\x02ں\x02ڻ\x02ۀ\x02ہ\x02ھ\x02ے\x02ۓ\x02ڭ\x02ۇ\x02ۆ\x02ۈ\x02ۋ\x02ۅ" +
75 "\x02ۉ\x02ې\x02ى\x04ئا\x04ئە\x04ئو\x04ئۇ\x04ئۆ\x04ئۈ\x04ئې\x04ئى\x02ی\x04" +
76 "ئج\x04ئح\x04ئم\x04ئي\x04بج\x04بح\x04بخ\x04بم\x04بى\x04بي\x04تج\x04تح" +
77 "\x04تخ\x04تم\x04تى\x04تي\x04ثج\x04ثم\x04ثى\x04ثي\x04جح\x04جم\x04حج\x04حم" +
78 "\x04خج\x04خح\x04خم\x04سج\x04سح\x04سخ\x04سم\x04صح\x04صم\x04ضج\x04ضح\x04ضخ" +
79 "\x04ضم\x04طح\x04طم\x04ظم\x04عج\x04عم\x04غج\x04غم\x04فج\x04فح\x04فخ\x04فم" +
80 "\x04فى\x04في\x04قح\x04قم\x04قى\x04قي\x04كا\x04كج\x04كح\x04كخ\x04كل\x04كم" +
81 "\x04كى\x04كي\x04لج\x04لح\x04لخ\x04لم\x04لى\x04لي\x04مج\x04مح\x04مخ\x04مم" +
82 "\x04مى\x04مي\x04نج\x04نح\x04نخ\x04نم\x04نى\x04ني\x04هج\x04هم\x04هى\x04هي" +
83 "\x04يج\x04يح\x04يخ\x04يم\x04يى\x04يي\x04ذٰ\x04رٰ\x04ىٰ\x05 ٌّ\x05 ٍّ\x05" +
84 " َّ\x05 ُّ\x05 ِّ\x05 ّٰ\x04ئر\x04ئز\x04ئن\x04بر\x04بز\x04بن\x04تر\x04تز" +
85 "\x04تن\x04ثر\x04ثز\x04ثن\x04ما\x04نر\x04نز\x04نن\x04ير\x04يز\x04ين\x04ئخ" +
86 "\x04ئه\x04به\x04ته\x04صخ\x04له\x04نه\x04هٰ\x04يه\x04ثه\x04سه\x04شم\x04شه" +
87 "\x06ـَّ\x06ـُّ\x06ـِّ\x04طى\x04طي\x04عى\x04عي\x04غى\x04غي\x04سى\x04سي" +
88 "\x04شى\x04شي\x04حى\x04حي\x04جى\x04جي\x04خى\x04خي\x04صى\x04صي\x04ضى\x04ضي" +
89 "\x04شج\x04شح\x04شخ\x04شر\x04سر\x04صر\x04ضر\x04اً\x06تجم\x06تحج\x06تحم" +
90 "\x06تخم\x06تمج\x06تمح\x06تمخ\x06جمح\x06حمي\x06حمى\x06سحج\x06سجح\x06سجى" +
91 "\x06سمح\x06سمج\x06سمم\x06صحح\x06صمم\x06شحم\x06شجي\x06شمخ\x06شمم\x06ضحى" +
92 "\x06ضخم\x06طمح\x06طمم\x06طمي\x06عجم\x06عمم\x06عمى\x06غمم\x06غمي\x06غمى" +
93 "\x06فخم\x06قمح\x06قمم\x06لحم\x06لحي\x06لحى\x06لجج\x06لخم\x06لمح\x06محج" +
94 "\x06محم\x06محي\x06مجح\x06مجم\x06مخج\x06مخم\x06مجخ\x06همج\x06همم\x06نحم" +
95 "\x06نحى\x06نجم\x06نجى\x06نمي\x06نمى\x06يمم\x06بخي\x06تجي\x06تجى\x06تخي" +
96 "\x06تخى\x06تمي\x06تمى\x06جمي\x06جحى\x06جمى\x06سخى\x06صحي\x06شحي\x06ضحي" +
97 "\x06لجي\x06لمي\x06يحي\x06يجي\x06يمي\x06ممي\x06قمي\x06نحي\x06عمي\x06كمي" +
98 "\x06نجح\x06مخي\x06لجم\x06كمم\x06جحي\x06حجي\x06مجي\x06فمي\x06بحي\x06سخي" +
99 "\x06نجي\x06صلے\x06قلے\x08الله\x08اكبر\x08محمد\x08صلعم\x08رسول\x08عليه" +
100 "\x08وسلم\x06صلى!صلى الله عليه وسلم\x0fجل جلاله\x08ریال\x01,\x01:\x01!" +
101 "\x01?\x01_\x01{\x01}\x01[\x01]\x01#\x01&\x01*\x01-\x01<\x01>\x01\\\x01$" +
102 "\x01%\x01@\x04ـً\x04ـَ\x04ـُ\x04ـِ\x04ـّ\x04ـْ\x02ء\x02آ\x02أ\x02ؤ\x02إ" +
103 "\x02ئ\x02ا\x02ب\x02ة\x02ت\x02ث\x02ج\x02ح\x02خ\x02د\x02ذ\x02ر\x02ز\x02س" +
104 "\x02ش\x02ص\x02ض\x02ط\x02ظ\x02ع\x02غ\x02ف\x02ق\x02ك\x02ل\x02م\x02ن\x02ه" +
105 "\x02و\x02ي\x04لآ\x04لأ\x04لإ\x04لا\x01\x22\x01'\x01/\x01^\x01|\x01~\x02¢" +
106 "\x02£\x02¬\x02¦\x02¥\x08𝅗𝅥\x08𝅘𝅥\x0c𝅘𝅥𝅮\x0c𝅘𝅥𝅯\x0c𝅘𝅥𝅰\x0c𝅘𝅥𝅱\x0c𝅘𝅥𝅲\x08𝆹" +
107 "𝅥\x08𝆺𝅥\x0c𝆹𝅥𝅮\x0c𝆺𝅥𝅮\x0c𝆹𝅥𝅯\x0c𝆺𝅥𝅯\x02ı\x02ȷ\x02α\x02ε\x02ζ\x02η\x02" +
108 "κ\x02λ\x02μ\x02ν\x02ξ\x02ο\x02σ\x02τ\x02υ\x02ψ\x03∇\x03∂\x02ϝ\x02ٮ\x02ڡ" +
109 "\x02ٯ\x020,\x021,\x022,\x023,\x024,\x025,\x026,\x027,\x028,\x029,\x03(a)" +
110 "\x03(b)\x03(c)\x03(d)\x03(e)\x03(f)\x03(g)\x03(h)\x03(i)\x03(j)\x03(k)" +
111 "\x03(l)\x03(m)\x03(n)\x03(o)\x03(p)\x03(q)\x03(r)\x03(s)\x03(t)\x03(u)" +
112 "\x03(v)\x03(w)\x03(x)\x03(y)\x03(z)\x07〔s〕\x02wz\x02hv\x02sd\x03ppv\x02w" +
113 "c\x02mc\x02md\x02dj\x06ほか\x06ココ\x03サ\x03手\x03字\x03双\x03デ\x03二\x03多\x03解" +
114 "\x03天\x03交\x03映\x03無\x03料\x03前\x03後\x03再\x03新\x03初\x03終\x03生\x03販\x03声" +
115 "\x03吹\x03演\x03投\x03捕\x03一\x03三\x03遊\x03左\x03中\x03右\x03指\x03走\x03打\x03禁" +
116 "\x03空\x03合\x03満\x03有\x03月\x03申\x03割\x03営\x03配\x09〔本〕\x09〔三〕\x09〔二〕\x09〔安" +
117 "〕\x09〔点〕\x09〔打〕\x09〔盗〕\x09〔勝〕\x09〔敗〕\x03得\x03可\x03丽\x03丸\x03乁\x03你\x03" +
118 "侮\x03侻\x03倂\x03偺\x03備\x03僧\x03像\x03㒞\x03免\x03兔\x03兤\x03具\x03㒹\x03內\x03" +
119 "冗\x03冤\x03仌\x03冬\x03况\x03凵\x03刃\x03㓟\x03刻\x03剆\x03剷\x03㔕\x03勇\x03勉\x03" +
120 "勤\x03勺\x03包\x03匆\x03北\x03卉\x03卑\x03博\x03即\x03卽\x03卿\x03灰\x03及\x03叟\x03" +
121 "叫\x03叱\x03吆\x03咞\x03吸\x03呈\x03周\x03咢\x03哶\x03唐\x03啓\x03啣\x03善\x03喙\x03" +
122 "喫\x03喳\x03嗂\x03圖\x03嘆\x03圗\x03噑\x03噴\x03切\x03壮\x03城\x03埴\x03堍\x03型\x03" +
123 "堲\x03報\x03墬\x03売\x03壷\x03夆\x03夢\x03奢\x03姬\x03娛\x03娧\x03姘\x03婦\x03㛮\x03" +
124 "嬈\x03嬾\x03寃\x03寘\x03寧\x03寳\x03寿\x03将\x03尢\x03㞁\x03屠\x03屮\x03峀\x03岍\x03" +
125 "嵃\x03嵮\x03嵫\x03嵼\x03巡\x03巢\x03㠯\x03巽\x03帨\x03帽\x03幩\x03㡢\x03㡼\x03庰\x03" +
126 "庳\x03庶\x03廊\x03廾\x03舁\x03弢\x03㣇\x03形\x03彫\x03㣣\x03徚\x03忍\x03志\x03忹\x03" +
127 "悁\x03㤺\x03㤜\x03悔\x03惇\x03慈\x03慌\x03慎\x03慺\x03憎\x03憲\x03憤\x03憯\x03懞\x03" +
128 "懲\x03懶\x03成\x03戛\x03扝\x03抱\x03拔\x03捐\x03挽\x03拼\x03捨\x03掃\x03揤\x03搢\x03" +
129 "揅\x03掩\x03㨮\x03摩\x03摾\x03撝\x03摷\x03㩬\x03敏\x03敬\x03旣\x03書\x03晉\x03㬙\x03" +
130 "暑\x03㬈\x03㫤\x03冒\x03冕\x03最\x03暜\x03肭\x03䏙\x03朗\x03望\x03朡\x03杞\x03杓\x03" +
131 "㭉\x03柺\x03枅\x03桒\x03梅\x03梎\x03栟\x03椔\x03㮝\x03楂\x03榣\x03槪\x03檨\x03櫛\x03" +
132 "㰘\x03次\x03歔\x03㱎\x03歲\x03殟\x03殺\x03殻\x03汎\x03沿\x03泍\x03汧\x03洖\x03派\x03" +
133 "海\x03流\x03浩\x03浸\x03涅\x03洴\x03港\x03湮\x03㴳\x03滋\x03滇\x03淹\x03潮\x03濆\x03" +
134 "瀹\x03瀞\x03瀛\x03㶖\x03灊\x03災\x03灷\x03炭\x03煅\x03熜\x03爨\x03爵\x03牐\x03犀\x03" +
135 "犕\x03獺\x03王\x03㺬\x03玥\x03㺸\x03瑇\x03瑜\x03瑱\x03璅\x03瓊\x03㼛\x03甤\x03甾\x03" +
136 "異\x03瘐\x03㿼\x03䀈\x03直\x03眞\x03真\x03睊\x03䀹\x03瞋\x03䁆\x03䂖\x03硎\x03碌\x03" +
137 "磌\x03䃣\x03祖\x03福\x03秫\x03䄯\x03穀\x03穊\x03穏\x03䈂\x03篆\x03築\x03䈧\x03糒\x03" +
138 "䊠\x03糨\x03糣\x03紀\x03絣\x03䌁\x03緇\x03縂\x03繅\x03䌴\x03䍙\x03罺\x03羕\x03翺\x03" +
139 "者\x03聠\x03聰\x03䏕\x03育\x03脃\x03䐋\x03脾\x03媵\x03舄\x03辞\x03䑫\x03芑\x03芋\x03" +
140 "芝\x03劳\x03花\x03芳\x03芽\x03苦\x03若\x03茝\x03荣\x03莭\x03茣\x03莽\x03菧\x03著\x03" +
141 "荓\x03菊\x03菌\x03菜\x03䔫\x03蓱\x03蓳\x03蔖\x03蕤\x03䕝\x03䕡\x03䕫\x03虐\x03虜\x03" +
142 "虧\x03虩\x03蚩\x03蚈\x03蜎\x03蛢\x03蝹\x03蜨\x03蝫\x03螆\x03蟡\x03蠁\x03䗹\x03衠\x03" +
143 "衣\x03裗\x03裞\x03䘵\x03裺\x03㒻\x03䚾\x03䛇\x03誠\x03諭\x03變\x03豕\x03貫\x03賁\x03" +
144 "贛\x03起\x03跋\x03趼\x03跰\x03軔\x03輸\x03邔\x03郱\x03鄑\x03鄛\x03鈸\x03鋗\x03鋘\x03" +
145 "鉼\x03鏹\x03鐕\x03開\x03䦕\x03閷\x03䧦\x03雃\x03嶲\x03霣\x03䩮\x03䩶\x03韠\x03䪲\x03" +
146 "頋\x03頩\x03飢\x03䬳\x03餩\x03馧\x03駂\x03駾\x03䯎\x03鬒\x03鱀\x03鳽\x03䳎\x03䳭\x03" +
147 "鵧\x03䳸\x03麻\x03䵖\x03黹\x03黾\x03鼅\x03鼏\x03鼖\x03鼻"
148
149var xorData string = "" + // Size: 4855 bytes
150 "\x02\x0c\x09\x02\xb0\xec\x02\xad\xd8\x02\xad\xd9\x02\x06\x07\x02\x0f\x12" +
151 "\x02\x0f\x1f\x02\x0f\x1d\x02\x01\x13\x02\x0f\x16\x02\x0f\x0b\x02\x0f3" +
152 "\x02\x0f7\x02\x0f?\x02\x0f/\x02\x0f*\x02\x0c&\x02\x0c*\x02\x0c;\x02\x0c9" +
153 "\x02\x0c%\x02\xab\xed\x02\xab\xe2\x02\xab\xe3\x02\xa9\xe0\x02\xa9\xe1" +
154 "\x02\xa9\xe6\x02\xa3\xcb\x02\xa3\xc8\x02\xa3\xc9\x02\x01#\x02\x01\x08" +
155 "\x02\x0e>\x02\x0e'\x02\x0f\x03\x02\x03\x0d\x02\x03\x09\x02\x03\x17\x02" +
156 "\x03\x0e\x02\x02\x03\x02\x011\x02\x01\x00\x02\x01\x10\x02\x03<\x02\x07" +
157 "\x0d\x02\x02\x0c\x02\x0c0\x02\x01\x03\x02\x01\x01\x02\x01 \x02\x01\x22" +
158 "\x02\x01)\x02\x01\x0a\x02\x01\x0c\x02\x02\x06\x02\x02\x02\x02\x03\x10" +
159 "\x03\x037 \x03\x0b+\x03\x02\x01\x04\x02\x01\x02\x02\x019\x02\x03\x1c\x02" +
160 "\x02$\x03\x80p$\x02\x03:\x02\x03\x0a\x03\xc1r.\x03\xc1r,\x03\xc1r\x02" +
161 "\x02\x02:\x02\x02>\x02\x02,\x02\x02\x10\x02\x02\x00\x03\xc1s<\x03\xc1s*" +
162 "\x03\xc2L$\x03\xc2L;\x02\x09)\x02\x0a\x19\x03\x83\xab\xe3\x03\x83\xab" +
163 "\xf2\x03 4\xe0\x03\x81\xab\xea\x03\x81\xab\xf3\x03 4\xef\x03\x96\xe1\xcd" +
164 "\x03\x84\xe5\xc3\x02\x0d\x11\x03\x8b\xec\xcb\x03\x94\xec\xcf\x03\x9a\xec" +
165 "\xc2\x03\x8b\xec\xdb\x03\x94\xec\xdf\x03\x9a\xec\xd2\x03\x01\x0c!\x03" +
166 "\x01\x0c#\x03ʠ\x9d\x03ʣ\x9c\x03ʢ\x9f\x03ʥ\x9e\x03ʤ\x91\x03ʧ\x90\x03ʦ\x93" +
167 "\x03ʩ\x92\x03ʨ\x95\x03\xca\xf3\xb5\x03\xca\xf0\xb4\x03\xca\xf1\xb7\x03" +
168 "\xca\xf6\xb6\x03\xca\xf7\x89\x03\xca\xf4\x88\x03\xca\xf5\x8b\x03\xca\xfa" +
169 "\x8a\x03\xca\xfb\x8d\x03\xca\xf8\x8c\x03\xca\xf9\x8f\x03\xca\xfe\x8e\x03" +
170 "\xca\xff\x81\x03\xca\xfc\x80\x03\xca\xfd\x83\x03\xca\xe2\x82\x03\xca\xe3" +
171 "\x85\x03\xca\xe0\x84\x03\xca\xe1\x87\x03\xca\xe6\x86\x03\xca\xe7\x99\x03" +
172 "\xca\xe4\x98\x03\xca\xe5\x9b\x03\xca\xea\x9a\x03\xca\xeb\x9d\x03\xca\xe8" +
173 "\x9c\x03ؓ\x89\x03ߔ\x8b\x02\x010\x03\x03\x04\x1e\x03\x04\x15\x12\x03\x0b" +
174 "\x05,\x03\x06\x04\x00\x03\x06\x04)\x03\x06\x044\x03\x06\x04<\x03\x06\x05" +
175 "\x1d\x03\x06\x06\x00\x03\x06\x06\x0a\x03\x06\x06'\x03\x06\x062\x03\x0786" +
176 "\x03\x079/\x03\x079 \x03\x07:\x0e\x03\x07:\x1b\x03\x07:%\x03\x07;/\x03" +
177 "\x07;%\x03\x074\x11\x03\x076\x09\x03\x077*\x03\x070\x01\x03\x070\x0f\x03" +
178 "\x070.\x03\x071\x16\x03\x071\x04\x03\x0710\x03\x072\x18\x03\x072-\x03" +
179 "\x073\x14\x03\x073>\x03\x07'\x09\x03\x07 \x00\x03\x07\x1f\x0b\x03\x07" +
180 "\x18#\x03\x07\x18(\x03\x07\x186\x03\x07\x18\x03\x03\x07\x19\x16\x03\x07" +
181 "\x116\x03\x07\x12'\x03\x07\x13\x10\x03\x07\x0c&\x03\x07\x0c\x08\x03\x07" +
182 "\x0c\x13\x03\x07\x0d\x02\x03\x07\x0d\x1c\x03\x07\x0b5\x03\x07\x0b\x0a" +
183 "\x03\x07\x0b\x01\x03\x07\x0b\x0f\x03\x07\x05\x00\x03\x07\x05\x09\x03\x07" +
184 "\x05\x0b\x03\x07\x07\x01\x03\x07\x07\x08\x03\x07\x00<\x03\x07\x00+\x03" +
185 "\x07\x01)\x03\x07\x01\x1b\x03\x07\x01\x08\x03\x07\x03?\x03\x0445\x03\x04" +
186 "4\x08\x03\x0454\x03\x04)/\x03\x04)5\x03\x04+\x05\x03\x04+\x14\x03\x04+ " +
187 "\x03\x04+<\x03\x04*&\x03\x04*\x22\x03\x04&8\x03\x04!\x01\x03\x04!\x22" +
188 "\x03\x04\x11+\x03\x04\x10.\x03\x04\x104\x03\x04\x13=\x03\x04\x12\x04\x03" +
189 "\x04\x12\x0a\x03\x04\x0d\x1d\x03\x04\x0d\x07\x03\x04\x0d \x03\x05<>\x03" +
190 "\x055<\x03\x055!\x03\x055#\x03\x055&\x03\x054\x1d\x03\x054\x02\x03\x054" +
191 "\x07\x03\x0571\x03\x053\x1a\x03\x053\x16\x03\x05.<\x03\x05.\x07\x03\x05)" +
192 ":\x03\x05)<\x03\x05)\x0c\x03\x05)\x15\x03\x05+-\x03\x05+5\x03\x05$\x1e" +
193 "\x03\x05$\x14\x03\x05'\x04\x03\x05'\x14\x03\x05&\x02\x03\x05\x226\x03" +
194 "\x05\x22\x0c\x03\x05\x22\x1c\x03\x05\x19\x0a\x03\x05\x1b\x09\x03\x05\x1b" +
195 "\x0c\x03\x05\x14\x07\x03\x05\x16?\x03\x05\x16\x0c\x03\x05\x0c\x05\x03" +
196 "\x05\x0e\x0f\x03\x05\x01\x0e\x03\x05\x00(\x03\x05\x030\x03\x05\x03\x06" +
197 "\x03\x0a==\x03\x0a=1\x03\x0a=,\x03\x0a=\x0c\x03\x0a??\x03\x0a<\x08\x03" +
198 "\x0a9!\x03\x0a9)\x03\x0a97\x03\x0a99\x03\x0a6\x0a\x03\x0a6\x1c\x03\x0a6" +
199 "\x17\x03\x0a7'\x03\x0a78\x03\x0a73\x03\x0a'\x01\x03\x0a'&\x03\x0a\x1f" +
200 "\x0e\x03\x0a\x1f\x03\x03\x0a\x1f3\x03\x0a\x1b/\x03\x0a\x18\x19\x03\x0a" +
201 "\x19\x01\x03\x0a\x16\x14\x03\x0a\x0e\x22\x03\x0a\x0f\x10\x03\x0a\x0f\x02" +
202 "\x03\x0a\x0f \x03\x0a\x0c\x04\x03\x0a\x0b>\x03\x0a\x0b+\x03\x0a\x08/\x03" +
203 "\x0a\x046\x03\x0a\x05\x14\x03\x0a\x00\x04\x03\x0a\x00\x10\x03\x0a\x00" +
204 "\x14\x03\x0b<3\x03\x0b;*\x03\x0b9\x22\x03\x0b9)\x03\x0b97\x03\x0b+\x10" +
205 "\x03\x0b((\x03\x0b&5\x03\x0b$\x1c\x03\x0b$\x12\x03\x0b%\x04\x03\x0b#<" +
206 "\x03\x0b#0\x03\x0b#\x0d\x03\x0b#\x19\x03\x0b!:\x03\x0b!\x1f\x03\x0b!\x00" +
207 "\x03\x0b\x1e5\x03\x0b\x1c\x1d\x03\x0b\x1d-\x03\x0b\x1d(\x03\x0b\x18.\x03" +
208 "\x0b\x18 \x03\x0b\x18\x16\x03\x0b\x14\x13\x03\x0b\x15$\x03\x0b\x15\x22" +
209 "\x03\x0b\x12\x1b\x03\x0b\x12\x10\x03\x0b\x132\x03\x0b\x13=\x03\x0b\x12" +
210 "\x18\x03\x0b\x0c&\x03\x0b\x061\x03\x0b\x06:\x03\x0b\x05#\x03\x0b\x05<" +
211 "\x03\x0b\x04\x0b\x03\x0b\x04\x04\x03\x0b\x04\x1b\x03\x0b\x042\x03\x0b" +
212 "\x041\x03\x0b\x03\x03\x03\x0b\x03\x1d\x03\x0b\x03/\x03\x0b\x03+\x03\x0b" +
213 "\x02\x1b\x03\x0b\x02\x00\x03\x0b\x01\x1e\x03\x0b\x01\x08\x03\x0b\x015" +
214 "\x03\x06\x0d9\x03\x06\x0d=\x03\x06\x0d?\x03\x02\x001\x03\x02\x003\x03" +
215 "\x02\x02\x19\x03\x02\x006\x03\x02\x02\x1b\x03\x02\x004\x03\x02\x00<\x03" +
216 "\x02\x02\x0a\x03\x02\x02\x0e\x03\x02\x01\x1a\x03\x02\x01\x07\x03\x02\x01" +
217 "\x05\x03\x02\x01\x0b\x03\x02\x01%\x03\x02\x01\x0c\x03\x02\x01\x04\x03" +
218 "\x02\x01\x1c\x03\x02\x00.\x03\x02\x002\x03\x02\x00>\x03\x02\x00\x12\x03" +
219 "\x02\x00\x16\x03\x02\x011\x03\x02\x013\x03\x02\x02 \x03\x02\x02%\x03\x02" +
220 "\x02$\x03\x02\x028\x03\x02\x02;\x03\x02\x024\x03\x02\x012\x03\x02\x022" +
221 "\x03\x02\x02/\x03\x02\x01,\x03\x02\x01\x13\x03\x02\x01\x16\x03\x02\x01" +
222 "\x11\x03\x02\x01\x1e\x03\x02\x01\x15\x03\x02\x01\x17\x03\x02\x01\x0f\x03" +
223 "\x02\x01\x08\x03\x02\x00?\x03\x02\x03\x07\x03\x02\x03\x0d\x03\x02\x03" +
224 "\x13\x03\x02\x03\x1d\x03\x02\x03\x1f\x03\x02\x00\x03\x03\x02\x00\x0d\x03" +
225 "\x02\x00\x01\x03\x02\x00\x1b\x03\x02\x00\x19\x03\x02\x00\x18\x03\x02\x00" +
226 "\x13\x03\x02\x00/\x03\x07>\x12\x03\x07<\x1f\x03\x07>\x1d\x03\x06\x1d\x0e" +
227 "\x03\x07>\x1c\x03\x07>:\x03\x07>\x13\x03\x04\x12+\x03\x07?\x03\x03\x07>" +
228 "\x02\x03\x06\x224\x03\x06\x1a.\x03\x07<%\x03\x06\x1c\x0b\x03\x0609\x03" +
229 "\x05\x1f\x01\x03\x04'\x08\x03\x93\xfd\xf5\x03\x02\x0d \x03\x02\x0d#\x03" +
230 "\x02\x0d!\x03\x02\x0d&\x03\x02\x0d\x22\x03\x02\x0d/\x03\x02\x0d,\x03\x02" +
231 "\x0d$\x03\x02\x0d'\x03\x02\x0d%\x03\x02\x0d;\x03\x02\x0d=\x03\x02\x0d?" +
232 "\x03\x099.\x03\x08\x0b7\x03\x08\x02\x14\x03\x08\x14\x0d\x03\x08.:\x03" +
233 "\x089'\x03\x0f\x0b\x18\x03\x0f\x1c1\x03\x0f\x17&\x03\x0f9\x1f\x03\x0f0" +
234 "\x0c\x03\x0e\x0a9\x03\x0e\x056\x03\x0e\x1c#\x03\x0f\x13\x0e\x03\x072\x00" +
235 "\x03\x070\x0d\x03\x072\x0b\x03\x06\x11\x18\x03\x070\x10\x03\x06\x0f(\x03" +
236 "\x072\x05\x03\x06\x0f,\x03\x073\x15\x03\x06\x07\x08\x03\x05\x16\x02\x03" +
237 "\x04\x0b \x03\x05:8\x03\x05\x16%\x03\x0a\x0d\x1f\x03\x06\x16\x10\x03\x05" +
238 "\x1d5\x03\x05*;\x03\x05\x16\x1b\x03\x04.-\x03\x06\x1a\x19\x03\x04\x03," +
239 "\x03\x0b87\x03\x04/\x0a\x03\x06\x00,\x03\x04-\x01\x03\x04\x1e-\x03\x06/(" +
240 "\x03\x0a\x0b5\x03\x06\x0e7\x03\x06\x07.\x03\x0597\x03\x0a*%\x03\x0760" +
241 "\x03\x06\x0c;\x03\x05'\x00\x03\x072.\x03\x072\x08\x03\x06=\x01\x03\x06" +
242 "\x05\x1b\x03\x06\x06\x12\x03\x06$=\x03\x06'\x0d\x03\x04\x11\x0f\x03\x076" +
243 ",\x03\x06\x07;\x03\x06.,\x03\x86\xf9\xea\x03\x8f\xff\xeb\x02\x092\x02" +
244 "\x095\x02\x094\x02\x09;\x02\x09>\x02\x098\x02\x09*\x02\x09/\x02\x09,\x02" +
245 "\x09%\x02\x09&\x02\x09#\x02\x09 \x02\x08!\x02\x08%\x02\x08$\x02\x08+\x02" +
246 "\x08.\x02\x08*\x02\x08&\x02\x088\x02\x08>\x02\x084\x02\x086\x02\x080\x02" +
247 "\x08\x10\x02\x08\x17\x02\x08\x12\x02\x08\x1d\x02\x08\x1f\x02\x08\x13\x02" +
248 "\x08\x15\x02\x08\x14\x02\x08\x0c\x03\x8b\xfd\xd0\x03\x81\xec\xc6\x03\x87" +
249 "\xe0\x8a\x03-2\xe3\x03\x80\xef\xe4\x03-2\xea\x03\x88\xe6\xeb\x03\x8e\xe6" +
250 "\xe8\x03\x84\xe6\xe9\x03\x97\xe6\xee\x03-2\xf9\x03-2\xf6\x03\x8e\xe3\xad" +
251 "\x03\x80\xe3\x92\x03\x88\xe3\x90\x03\x8e\xe3\x90\x03\x80\xe3\x97\x03\x88" +
252 "\xe3\x95\x03\x88\xfe\xcb\x03\x8e\xfe\xca\x03\x84\xfe\xcd\x03\x91\xef\xc9" +
253 "\x03-2\xc1\x03-2\xc0\x03-2\xcb\x03\x88@\x09\x03\x8e@\x08\x03\x8f\xe0\xf5" +
254 "\x03\x8e\xe6\xf9\x03\x8e\xe0\xfa\x03\x93\xff\xf4\x03\x84\xee\xd3\x03\x0b" +
255 "(\x04\x023 \x021;\x02\x01*\x03\x0b#\x10\x03\x0b 0\x03\x0b!\x10\x03\x0b!0" +
256 "\x03\x07\x15\x08\x03\x09?5\x03\x07\x1f\x08\x03\x07\x17\x0b\x03\x09\x1f" +
257 "\x15\x03\x0b\x1c7\x03\x0a+#\x03\x06\x1a\x1b\x03\x06\x1a\x14\x03\x0a\x01" +
258 "\x18\x03\x06#\x1b\x03\x0a2\x0c\x03\x0a\x01\x04\x03\x09#;\x03\x08='\x03" +
259 "\x08\x1a\x0a\x03\x07</\x03\x07:+\x03\x07\x07*\x03\x06&\x1c\x03\x09\x0c" +
260 "\x16\x03\x09\x10\x0e\x03\x08'\x0f\x03\x08+\x09\x03\x074%\x03\x06!3\x03" +
261 "\x06\x03+\x03\x0b\x1e\x19\x03\x0a))\x03\x09\x08\x19\x03\x08,\x05\x03\x07" +
262 "<2\x03\x06\x1c>\x03\x0a\x111\x03\x09\x1b\x09\x03\x073.\x03\x07\x01\x00" +
263 "\x03\x09/,\x03\x07#>\x03\x07\x048\x03\x0a\x1f\x22\x03\x098>\x03\x09\x11" +
264 "\x00\x03\x08/\x17\x03\x06'\x22\x03\x0b\x1a+\x03\x0a\x22\x19\x03\x0a/1" +
265 "\x03\x0974\x03\x09\x0f\x22\x03\x08,\x22\x03\x08?\x14\x03\x07$5\x03\x07<3" +
266 "\x03\x07=*\x03\x07\x13\x18\x03\x068\x0a\x03\x06\x09\x16\x03\x06\x13\x00" +
267 "\x03\x08\x067\x03\x08\x01\x03\x03\x08\x12\x1d\x03\x07+7\x03\x06(;\x03" +
268 "\x06\x1c?\x03\x07\x0e\x17\x03\x0a\x06\x1d\x03\x0a\x19\x07\x03\x08\x14$" +
269 "\x03\x07$;\x03\x08,$\x03\x08\x06\x0d\x03\x07\x16\x0a\x03\x06>>\x03\x0a" +
270 "\x06\x12\x03\x0a\x14)\x03\x09\x0d\x1f\x03\x09\x12\x17\x03\x09\x19\x01" +
271 "\x03\x08\x11 \x03\x08\x1d'\x03\x06<\x1a\x03\x0a.\x00\x03\x07'\x18\x03" +
272 "\x0a\x22\x08\x03\x08\x0d\x0a\x03\x08\x13)\x03\x07*)\x03\x06<,\x03\x07" +
273 "\x0b\x1a\x03\x09.\x14\x03\x09\x0d\x1e\x03\x07\x0e#\x03\x0b\x1d'\x03\x0a" +
274 "\x0a8\x03\x09%2\x03\x08+&\x03\x080\x12\x03\x0a)4\x03\x08\x06\x1f\x03\x0b" +
275 "\x1b\x1a\x03\x0a\x1b\x0f\x03\x0b\x1d*\x03\x09\x16$\x03\x090\x11\x03\x08" +
276 "\x11\x08\x03\x0a*(\x03\x0a\x042\x03\x089,\x03\x074'\x03\x07\x0f\x05\x03" +
277 "\x09\x0b\x0a\x03\x07\x1b\x01\x03\x09\x17:\x03\x09.\x0d\x03\x07.\x11\x03" +
278 "\x09+\x15\x03\x080\x13\x03\x0b\x1f\x19\x03\x0a \x11\x03\x0a\x220\x03\x09" +
279 "\x07;\x03\x08\x16\x1c\x03\x07,\x13\x03\x07\x0e/\x03\x06\x221\x03\x0a." +
280 "\x0a\x03\x0a7\x02\x03\x0a\x032\x03\x0a\x1d.\x03\x091\x06\x03\x09\x19:" +
281 "\x03\x08\x02/\x03\x060+\x03\x06\x0f-\x03\x06\x1c\x1f\x03\x06\x1d\x07\x03" +
282 "\x0a,\x11\x03\x09=\x0d\x03\x09\x0b;\x03\x07\x1b/\x03\x0a\x1f:\x03\x09 " +
283 "\x1f\x03\x09.\x10\x03\x094\x0b\x03\x09\x1a1\x03\x08#\x1a\x03\x084\x1d" +
284 "\x03\x08\x01\x1f\x03\x08\x11\x22\x03\x07'8\x03\x07\x1a>\x03\x0757\x03" +
285 "\x06&9\x03\x06+\x11\x03\x0a.\x0b\x03\x0a,>\x03\x0a4#\x03\x08%\x17\x03" +
286 "\x07\x05\x22\x03\x07\x0c\x0b\x03\x0a\x1d+\x03\x0a\x19\x16\x03\x09+\x1f" +
287 "\x03\x09\x08\x0b\x03\x08\x16\x18\x03\x08+\x12\x03\x0b\x1d\x0c\x03\x0a=" +
288 "\x10\x03\x0a\x09\x0d\x03\x0a\x10\x11\x03\x09&0\x03\x08(\x1f\x03\x087\x07" +
289 "\x03\x08\x185\x03\x07'6\x03\x06.\x05\x03\x06=\x04\x03\x06;;\x03\x06\x06," +
290 "\x03\x0b\x18>\x03\x08\x00\x18\x03\x06 \x03\x03\x06<\x00\x03\x09%\x18\x03" +
291 "\x0b\x1c<\x03\x0a%!\x03\x0a\x09\x12\x03\x0a\x16\x02\x03\x090'\x03\x09" +
292 "\x0e=\x03\x08 \x0e\x03\x08>\x03\x03\x074>\x03\x06&?\x03\x06\x19\x09\x03" +
293 "\x06?(\x03\x0a-\x0e\x03\x09:3\x03\x098:\x03\x09\x12\x0b\x03\x09\x1d\x17" +
294 "\x03\x087\x05\x03\x082\x14\x03\x08\x06%\x03\x08\x13\x1f\x03\x06\x06\x0e" +
295 "\x03\x0a\x22<\x03\x09/<\x03\x06>+\x03\x0a'?\x03\x0a\x13\x0c\x03\x09\x10<" +
296 "\x03\x07\x1b=\x03\x0a\x19\x13\x03\x09\x22\x1d\x03\x09\x07\x0d\x03\x08)" +
297 "\x1c\x03\x06=\x1a\x03\x0a/4\x03\x0a7\x11\x03\x0a\x16:\x03\x09?3\x03\x09:" +
298 "/\x03\x09\x05\x0a\x03\x09\x14\x06\x03\x087\x22\x03\x080\x07\x03\x08\x1a" +
299 "\x1f\x03\x07\x04(\x03\x07\x04\x09\x03\x06 %\x03\x06<\x08\x03\x0a+\x14" +
300 "\x03\x09\x1d\x16\x03\x0a70\x03\x08 >\x03\x0857\x03\x070\x0a\x03\x06=\x12" +
301 "\x03\x06\x16%\x03\x06\x1d,\x03\x099#\x03\x09\x10>\x03\x07 \x1e\x03\x08" +
302 "\x0c<\x03\x08\x0b\x18\x03\x08\x15+\x03\x08,:\x03\x08%\x22\x03\x07\x0a$" +
303 "\x03\x0b\x1c=\x03\x07+\x08\x03\x0a/\x05\x03\x0a \x07\x03\x0a\x12'\x03" +
304 "\x09#\x11\x03\x08\x1b\x15\x03\x0a\x06\x01\x03\x09\x1c\x1b\x03\x0922\x03" +
305 "\x07\x14<\x03\x07\x09\x04\x03\x061\x04\x03\x07\x0e\x01\x03\x0a\x13\x18" +
306 "\x03\x0a-\x0c\x03\x0a?\x0d\x03\x0a\x09\x0a\x03\x091&\x03\x0a/\x0b\x03" +
307 "\x08$<\x03\x083\x1d\x03\x08\x0c$\x03\x08\x0d\x07\x03\x08\x0d?\x03\x08" +
308 "\x0e\x14\x03\x065\x0a\x03\x08\x1a#\x03\x08\x16#\x03\x0702\x03\x07\x03" +
309 "\x1a\x03\x06(\x1d\x03\x06+\x1b\x03\x06\x0b\x05\x03\x06\x0b\x17\x03\x06" +
310 "\x0c\x04\x03\x06\x1e\x19\x03\x06+0\x03\x062\x18\x03\x0b\x16\x1e\x03\x0a+" +
311 "\x16\x03\x0a-?\x03\x0a#:\x03\x0a#\x10\x03\x0a%$\x03\x0a>+\x03\x0a01\x03" +
312 "\x0a1\x10\x03\x0a\x099\x03\x0a\x0a\x12\x03\x0a\x19\x1f\x03\x0a\x19\x12" +
313 "\x03\x09*)\x03\x09-\x16\x03\x09.1\x03\x09.2\x03\x09<\x0e\x03\x09> \x03" +
314 "\x093\x12\x03\x09\x0b\x01\x03\x09\x1c2\x03\x09\x11\x1c\x03\x09\x15%\x03" +
315 "\x08,&\x03\x08!\x22\x03\x089(\x03\x08\x0b\x1a\x03\x08\x0d2\x03\x08\x0c" +
316 "\x04\x03\x08\x0c\x06\x03\x08\x0c\x1f\x03\x08\x0c\x0c\x03\x08\x0f\x1f\x03" +
317 "\x08\x0f\x1d\x03\x08\x00\x14\x03\x08\x03\x14\x03\x08\x06\x16\x03\x08\x1e" +
318 "#\x03\x08\x11\x11\x03\x08\x10\x18\x03\x08\x14(\x03\x07)\x1e\x03\x07.1" +
319 "\x03\x07 $\x03\x07 '\x03\x078\x08\x03\x07\x0d0\x03\x07\x0f7\x03\x07\x05#" +
320 "\x03\x07\x05\x1a\x03\x07\x1a7\x03\x07\x1d-\x03\x07\x17\x10\x03\x06)\x1f" +
321 "\x03\x062\x0b\x03\x066\x16\x03\x06\x09\x11\x03\x09(\x1e\x03\x07!5\x03" +
322 "\x0b\x11\x16\x03\x0a/\x04\x03\x0a,\x1a\x03\x0b\x173\x03\x0a,1\x03\x0a/5" +
323 "\x03\x0a\x221\x03\x0a\x22\x0d\x03\x0a?%\x03\x0a<,\x03\x0a?#\x03\x0a>\x19" +
324 "\x03\x0a\x08&\x03\x0a\x0b\x0e\x03\x0a\x0c:\x03\x0a\x0c+\x03\x0a\x03\x22" +
325 "\x03\x0a\x06)\x03\x0a\x11\x10\x03\x0a\x11\x1a\x03\x0a\x17-\x03\x0a\x14(" +
326 "\x03\x09)\x1e\x03\x09/\x09\x03\x09.\x00\x03\x09,\x07\x03\x09/*\x03\x09-9" +
327 "\x03\x09\x228\x03\x09%\x09\x03\x09:\x12\x03\x09;\x1d\x03\x09?\x06\x03" +
328 "\x093%\x03\x096\x05\x03\x096\x08\x03\x097\x02\x03\x09\x07,\x03\x09\x04," +
329 "\x03\x09\x1f\x16\x03\x09\x11\x03\x03\x09\x11\x12\x03\x09\x168\x03\x08*" +
330 "\x05\x03\x08/2\x03\x084:\x03\x08\x22+\x03\x08 0\x03\x08&\x0a\x03\x08;" +
331 "\x10\x03\x08>$\x03\x08>\x18\x03\x0829\x03\x082:\x03\x081,\x03\x081<\x03" +
332 "\x081\x1c\x03\x087#\x03\x087*\x03\x08\x09'\x03\x08\x00\x1d\x03\x08\x05-" +
333 "\x03\x08\x1f4\x03\x08\x1d\x04\x03\x08\x16\x0f\x03\x07*7\x03\x07'!\x03" +
334 "\x07%\x1b\x03\x077\x0c\x03\x07\x0c1\x03\x07\x0c.\x03\x07\x00\x06\x03\x07" +
335 "\x01\x02\x03\x07\x010\x03\x07\x06=\x03\x07\x01\x03\x03\x07\x01\x13\x03" +
336 "\x07\x06\x06\x03\x07\x05\x0a\x03\x07\x1f\x09\x03\x07\x17:\x03\x06*1\x03" +
337 "\x06-\x1d\x03\x06\x223\x03\x062:\x03\x060$\x03\x066\x1e\x03\x064\x12\x03" +
338 "\x0645\x03\x06\x0b\x00\x03\x06\x0b7\x03\x06\x07\x1f\x03\x06\x15\x12\x03" +
339 "\x0c\x05\x0f\x03\x0b+\x0b\x03\x0b+-\x03\x06\x16\x1b\x03\x06\x15\x17\x03" +
340 "\x89\xca\xea\x03\x89\xca\xe8\x03\x0c8\x10\x03\x0c8\x01\x03\x0c8\x0f\x03" +
341 "\x0d8%\x03\x0d8!\x03\x0c8-\x03\x0c8/\x03\x0c8+\x03\x0c87\x03\x0c85\x03" +
342 "\x0c9\x09\x03\x0c9\x0d\x03\x0c9\x0f\x03\x0c9\x0b\x03\xcfu\x0c\x03\xcfu" +
343 "\x0f\x03\xcfu\x0e\x03\xcfu\x09\x03\x0c9\x10\x03\x0d9\x0c\x03\xcf`;\x03" +
344 "\xcf`>\x03\xcf`9\x03\xcf`8\x03\xcf`7\x03\xcf`*\x03\xcf`-\x03\xcf`,\x03" +
345 "\x0d\x1b\x1a\x03\x0d\x1b&\x03\x0c=.\x03\x0c=%\x03\x0c>\x1e\x03\x0c>\x14" +
346 "\x03\x0c?\x06\x03\x0c?\x0b\x03\x0c?\x0c\x03\x0c?\x0d\x03\x0c?\x02\x03" +
347 "\x0c>\x0f\x03\x0c>\x08\x03\x0c>\x09\x03\x0c>,\x03\x0c>\x0c\x03\x0c?\x13" +
348 "\x03\x0c?\x16\x03\x0c?\x15\x03\x0c?\x1c\x03\x0c?\x1f\x03\x0c?\x1d\x03" +
349 "\x0c?\x1a\x03\x0c?\x17\x03\x0c?\x08\x03\x0c?\x09\x03\x0c?\x0e\x03\x0c?" +
350 "\x04\x03\x0c?\x05\x03\x0c<?\x03\x0c=\x00\x03\x0c=\x06\x03\x0c=\x05\x03" +
351 "\x0c=\x0c\x03\x0c=\x0f\x03\x0c=\x0d\x03\x0c=\x0b\x03\x0c=\x07\x03\x0c=" +
352 "\x19\x03\x0c=\x15\x03\x0c=\x11\x03\x0c=1\x03\x0c=3\x03\x0c=0\x03\x0c=>" +
353 "\x03\x0c=2\x03\x0c=6\x03\x0c<\x07\x03\x0c<\x05\x03\x0e:!\x03\x0e:#\x03" +
354 "\x0e8\x09\x03\x0e:&\x03\x0e8\x0b\x03\x0e:$\x03\x0e:,\x03\x0e8\x1a\x03" +
355 "\x0e8\x1e\x03\x0e:*\x03\x0e:7\x03\x0e:5\x03\x0e:;\x03\x0e:\x15\x03\x0e:<" +
356 "\x03\x0e:4\x03\x0e:'\x03\x0e:-\x03\x0e:%\x03\x0e:?\x03\x0e:=\x03\x0e:)" +
357 "\x03\x0e:/\x03\xcfs'\x03\x0d=\x0f\x03\x0d+*\x03\x0d99\x03\x0d9;\x03\x0d9" +
358 "?\x03\x0d)\x0d\x03\x0d(%\x02\x01\x18\x02\x01(\x02\x01\x1e\x03\x0f$!\x03" +
359 "\x0f87\x03\x0f4\x0e\x03\x0f5\x1d\x03\x06'\x03\x03\x0f\x08\x18\x03\x0f" +
360 "\x0d\x1b\x03\x0e2=\x03\x0e;\x08\x03\x0e:\x0b\x03\x0e\x06$\x03\x0e\x0d)" +
361 "\x03\x0e\x16\x1f\x03\x0e\x16\x1b\x03\x0d$\x0a\x03\x05,\x1d\x03\x0d. \x03" +
362 "\x0d.#\x03\x0c(/\x03\x09%\x02\x03\x0d90\x03\x0d\x0e4\x03\x0d\x0d\x0f\x03" +
363 "\x0c#\x00\x03\x0c,\x1e\x03\x0c2\x0e\x03\x0c\x01\x17\x03\x0c\x09:\x03\x0e" +
364 "\x173\x03\x0c\x08\x03\x03\x0c\x11\x07\x03\x0c\x10\x18\x03\x0c\x1f\x1c" +
365 "\x03\x0c\x19\x0e\x03\x0c\x1a\x1f\x03\x0f0>\x03\x0b->\x03\x0b<+\x03\x0b8" +
366 "\x13\x03\x0b\x043\x03\x0b\x14\x03\x03\x0b\x16%\x03\x0d\x22&\x03\x0b\x1a" +
367 "\x1a\x03\x0b\x1a\x04\x03\x0a%9\x03\x0a&2\x03\x0a&0\x03\x0a!\x1a\x03\x0a!" +
368 "7\x03\x0a5\x10\x03\x0a=4\x03\x0a?\x0e\x03\x0a>\x10\x03\x0a\x00 \x03\x0a" +
369 "\x0f:\x03\x0a\x0f9\x03\x0a\x0b\x0a\x03\x0a\x17%\x03\x0a\x1b-\x03\x09-" +
370 "\x1a\x03\x09,4\x03\x09.,\x03\x09)\x09\x03\x096!\x03\x091\x1f\x03\x093" +
371 "\x16\x03\x0c+\x1f\x03\x098 \x03\x098=\x03\x0c(\x1a\x03\x0c(\x16\x03\x09" +
372 "\x0a+\x03\x09\x16\x12\x03\x09\x13\x0e\x03\x09\x153\x03\x08)!\x03\x09\x1a" +
373 "\x01\x03\x09\x18\x01\x03\x08%#\x03\x08>\x22\x03\x08\x05%\x03\x08\x02*" +
374 "\x03\x08\x15;\x03\x08\x1b7\x03\x0f\x07\x1d\x03\x0f\x04\x03\x03\x070\x0c" +
375 "\x03\x07;\x0b\x03\x07\x08\x17\x03\x07\x12\x06\x03\x06/-\x03\x0671\x03" +
376 "\x065+\x03\x06>7\x03\x06\x049\x03\x05+\x1e\x03\x05,\x17\x03\x05 \x1d\x03" +
377 "\x05\x22\x05\x03\x050\x1d"
378
379// lookup returns the trie value for the first UTF-8 encoding in s and
380// the width in bytes of this encoding. The size will be 0 if s does not
381// hold enough bytes to complete the encoding. len(s) must be greater than 0.
382func (t *idnaTrie) lookup(s []byte) (v uint16, sz int) {
383 c0 := s[0]
384 switch {
385 case c0 < 0x80: // is ASCII
386 return idnaValues[c0], 1
387 case c0 < 0xC2:
388 return 0, 1 // Illegal UTF-8: not a starter, not ASCII.
389 case c0 < 0xE0: // 2-byte UTF-8
390 if len(s) < 2 {
391 return 0, 0
392 }
393 i := idnaIndex[c0]
394 c1 := s[1]
395 if c1 < 0x80 || 0xC0 <= c1 {
396 return 0, 1 // Illegal UTF-8: not a continuation byte.
397 }
398 return t.lookupValue(uint32(i), c1), 2
399 case c0 < 0xF0: // 3-byte UTF-8
400 if len(s) < 3 {
401 return 0, 0
402 }
403 i := idnaIndex[c0]
404 c1 := s[1]
405 if c1 < 0x80 || 0xC0 <= c1 {
406 return 0, 1 // Illegal UTF-8: not a continuation byte.
407 }
408 o := uint32(i)<<6 + uint32(c1)
409 i = idnaIndex[o]
410 c2 := s[2]
411 if c2 < 0x80 || 0xC0 <= c2 {
412 return 0, 2 // Illegal UTF-8: not a continuation byte.
413 }
414 return t.lookupValue(uint32(i), c2), 3
415 case c0 < 0xF8: // 4-byte UTF-8
416 if len(s) < 4 {
417 return 0, 0
418 }
419 i := idnaIndex[c0]
420 c1 := s[1]
421 if c1 < 0x80 || 0xC0 <= c1 {
422 return 0, 1 // Illegal UTF-8: not a continuation byte.
423 }
424 o := uint32(i)<<6 + uint32(c1)
425 i = idnaIndex[o]
426 c2 := s[2]
427 if c2 < 0x80 || 0xC0 <= c2 {
428 return 0, 2 // Illegal UTF-8: not a continuation byte.
429 }
430 o = uint32(i)<<6 + uint32(c2)
431 i = idnaIndex[o]
432 c3 := s[3]
433 if c3 < 0x80 || 0xC0 <= c3 {
434 return 0, 3 // Illegal UTF-8: not a continuation byte.
435 }
436 return t.lookupValue(uint32(i), c3), 4
437 }
438 // Illegal rune
439 return 0, 1
440}
441
442// lookupUnsafe returns the trie value for the first UTF-8 encoding in s.
443// s must start with a full and valid UTF-8 encoded rune.
444func (t *idnaTrie) lookupUnsafe(s []byte) uint16 {
445 c0 := s[0]
446 if c0 < 0x80 { // is ASCII
447 return idnaValues[c0]
448 }
449 i := idnaIndex[c0]
450 if c0 < 0xE0 { // 2-byte UTF-8
451 return t.lookupValue(uint32(i), s[1])
452 }
453 i = idnaIndex[uint32(i)<<6+uint32(s[1])]
454 if c0 < 0xF0 { // 3-byte UTF-8
455 return t.lookupValue(uint32(i), s[2])
456 }
457 i = idnaIndex[uint32(i)<<6+uint32(s[2])]
458 if c0 < 0xF8 { // 4-byte UTF-8
459 return t.lookupValue(uint32(i), s[3])
460 }
461 return 0
462}
463
464// lookupString returns the trie value for the first UTF-8 encoding in s and
465// the width in bytes of this encoding. The size will be 0 if s does not
466// hold enough bytes to complete the encoding. len(s) must be greater than 0.
467func (t *idnaTrie) lookupString(s string) (v uint16, sz int) {
468 c0 := s[0]
469 switch {
470 case c0 < 0x80: // is ASCII
471 return idnaValues[c0], 1
472 case c0 < 0xC2:
473 return 0, 1 // Illegal UTF-8: not a starter, not ASCII.
474 case c0 < 0xE0: // 2-byte UTF-8
475 if len(s) < 2 {
476 return 0, 0
477 }
478 i := idnaIndex[c0]
479 c1 := s[1]
480 if c1 < 0x80 || 0xC0 <= c1 {
481 return 0, 1 // Illegal UTF-8: not a continuation byte.
482 }
483 return t.lookupValue(uint32(i), c1), 2
484 case c0 < 0xF0: // 3-byte UTF-8
485 if len(s) < 3 {
486 return 0, 0
487 }
488 i := idnaIndex[c0]
489 c1 := s[1]
490 if c1 < 0x80 || 0xC0 <= c1 {
491 return 0, 1 // Illegal UTF-8: not a continuation byte.
492 }
493 o := uint32(i)<<6 + uint32(c1)
494 i = idnaIndex[o]
495 c2 := s[2]
496 if c2 < 0x80 || 0xC0 <= c2 {
497 return 0, 2 // Illegal UTF-8: not a continuation byte.
498 }
499 return t.lookupValue(uint32(i), c2), 3
500 case c0 < 0xF8: // 4-byte UTF-8
501 if len(s) < 4 {
502 return 0, 0
503 }
504 i := idnaIndex[c0]
505 c1 := s[1]
506 if c1 < 0x80 || 0xC0 <= c1 {
507 return 0, 1 // Illegal UTF-8: not a continuation byte.
508 }
509 o := uint32(i)<<6 + uint32(c1)
510 i = idnaIndex[o]
511 c2 := s[2]
512 if c2 < 0x80 || 0xC0 <= c2 {
513 return 0, 2 // Illegal UTF-8: not a continuation byte.
514 }
515 o = uint32(i)<<6 + uint32(c2)
516 i = idnaIndex[o]
517 c3 := s[3]
518 if c3 < 0x80 || 0xC0 <= c3 {
519 return 0, 3 // Illegal UTF-8: not a continuation byte.
520 }
521 return t.lookupValue(uint32(i), c3), 4
522 }
523 // Illegal rune
524 return 0, 1
525}
526
527// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s.
528// s must start with a full and valid UTF-8 encoded rune.
529func (t *idnaTrie) lookupStringUnsafe(s string) uint16 {
530 c0 := s[0]
531 if c0 < 0x80 { // is ASCII
532 return idnaValues[c0]
533 }
534 i := idnaIndex[c0]
535 if c0 < 0xE0 { // 2-byte UTF-8
536 return t.lookupValue(uint32(i), s[1])
537 }
538 i = idnaIndex[uint32(i)<<6+uint32(s[1])]
539 if c0 < 0xF0 { // 3-byte UTF-8
540 return t.lookupValue(uint32(i), s[2])
541 }
542 i = idnaIndex[uint32(i)<<6+uint32(s[2])]
543 if c0 < 0xF8 { // 4-byte UTF-8
544 return t.lookupValue(uint32(i), s[3])
545 }
546 return 0
547}
548
549// idnaTrie. Total size: 29052 bytes (28.37 KiB). Checksum: ef06e7ecc26f36dd.
550type idnaTrie struct{}
551
552func newIdnaTrie(i int) *idnaTrie {
553 return &idnaTrie{}
554}
555
556// lookupValue determines the type of block n and looks up the value for b.
557func (t *idnaTrie) lookupValue(n uint32, b byte) uint16 {
558 switch {
559 case n < 125:
560 return uint16(idnaValues[n<<6+uint32(b)])
561 default:
562 n -= 125
563 return uint16(idnaSparse.lookup(n, b))
564 }
565}
566
567// idnaValues: 127 blocks, 8128 entries, 16256 bytes
568// The third block is the zero block.
569var idnaValues = [8128]uint16{
570 // Block 0x0, offset 0x0
571 0x00: 0x0080, 0x01: 0x0080, 0x02: 0x0080, 0x03: 0x0080, 0x04: 0x0080, 0x05: 0x0080,
572 0x06: 0x0080, 0x07: 0x0080, 0x08: 0x0080, 0x09: 0x0080, 0x0a: 0x0080, 0x0b: 0x0080,
573 0x0c: 0x0080, 0x0d: 0x0080, 0x0e: 0x0080, 0x0f: 0x0080, 0x10: 0x0080, 0x11: 0x0080,
574 0x12: 0x0080, 0x13: 0x0080, 0x14: 0x0080, 0x15: 0x0080, 0x16: 0x0080, 0x17: 0x0080,
575 0x18: 0x0080, 0x19: 0x0080, 0x1a: 0x0080, 0x1b: 0x0080, 0x1c: 0x0080, 0x1d: 0x0080,
576 0x1e: 0x0080, 0x1f: 0x0080, 0x20: 0x0080, 0x21: 0x0080, 0x22: 0x0080, 0x23: 0x0080,
577 0x24: 0x0080, 0x25: 0x0080, 0x26: 0x0080, 0x27: 0x0080, 0x28: 0x0080, 0x29: 0x0080,
578 0x2a: 0x0080, 0x2b: 0x0080, 0x2c: 0x0080, 0x2d: 0x0008, 0x2e: 0x0008, 0x2f: 0x0080,
579 0x30: 0x0008, 0x31: 0x0008, 0x32: 0x0008, 0x33: 0x0008, 0x34: 0x0008, 0x35: 0x0008,
580 0x36: 0x0008, 0x37: 0x0008, 0x38: 0x0008, 0x39: 0x0008, 0x3a: 0x0080, 0x3b: 0x0080,
581 0x3c: 0x0080, 0x3d: 0x0080, 0x3e: 0x0080, 0x3f: 0x0080,
582 // Block 0x1, offset 0x40
583 0x40: 0x0080, 0x41: 0xe105, 0x42: 0xe105, 0x43: 0xe105, 0x44: 0xe105, 0x45: 0xe105,
584 0x46: 0xe105, 0x47: 0xe105, 0x48: 0xe105, 0x49: 0xe105, 0x4a: 0xe105, 0x4b: 0xe105,
585 0x4c: 0xe105, 0x4d: 0xe105, 0x4e: 0xe105, 0x4f: 0xe105, 0x50: 0xe105, 0x51: 0xe105,
586 0x52: 0xe105, 0x53: 0xe105, 0x54: 0xe105, 0x55: 0xe105, 0x56: 0xe105, 0x57: 0xe105,
587 0x58: 0xe105, 0x59: 0xe105, 0x5a: 0xe105, 0x5b: 0x0080, 0x5c: 0x0080, 0x5d: 0x0080,
588 0x5e: 0x0080, 0x5f: 0x0080, 0x60: 0x0080, 0x61: 0x0008, 0x62: 0x0008, 0x63: 0x0008,
589 0x64: 0x0008, 0x65: 0x0008, 0x66: 0x0008, 0x67: 0x0008, 0x68: 0x0008, 0x69: 0x0008,
590 0x6a: 0x0008, 0x6b: 0x0008, 0x6c: 0x0008, 0x6d: 0x0008, 0x6e: 0x0008, 0x6f: 0x0008,
591 0x70: 0x0008, 0x71: 0x0008, 0x72: 0x0008, 0x73: 0x0008, 0x74: 0x0008, 0x75: 0x0008,
592 0x76: 0x0008, 0x77: 0x0008, 0x78: 0x0008, 0x79: 0x0008, 0x7a: 0x0008, 0x7b: 0x0080,
593 0x7c: 0x0080, 0x7d: 0x0080, 0x7e: 0x0080, 0x7f: 0x0080,
594 // Block 0x2, offset 0x80
595 // Block 0x3, offset 0xc0
596 0xc0: 0x0040, 0xc1: 0x0040, 0xc2: 0x0040, 0xc3: 0x0040, 0xc4: 0x0040, 0xc5: 0x0040,
597 0xc6: 0x0040, 0xc7: 0x0040, 0xc8: 0x0040, 0xc9: 0x0040, 0xca: 0x0040, 0xcb: 0x0040,
598 0xcc: 0x0040, 0xcd: 0x0040, 0xce: 0x0040, 0xcf: 0x0040, 0xd0: 0x0040, 0xd1: 0x0040,
599 0xd2: 0x0040, 0xd3: 0x0040, 0xd4: 0x0040, 0xd5: 0x0040, 0xd6: 0x0040, 0xd7: 0x0040,
600 0xd8: 0x0040, 0xd9: 0x0040, 0xda: 0x0040, 0xdb: 0x0040, 0xdc: 0x0040, 0xdd: 0x0040,
601 0xde: 0x0040, 0xdf: 0x0040, 0xe0: 0x000a, 0xe1: 0x0018, 0xe2: 0x0018, 0xe3: 0x0018,
602 0xe4: 0x0018, 0xe5: 0x0018, 0xe6: 0x0018, 0xe7: 0x0018, 0xe8: 0x001a, 0xe9: 0x0018,
603 0xea: 0x0039, 0xeb: 0x0018, 0xec: 0x0018, 0xed: 0x03c0, 0xee: 0x0018, 0xef: 0x004a,
604 0xf0: 0x0018, 0xf1: 0x0018, 0xf2: 0x0069, 0xf3: 0x0079, 0xf4: 0x008a, 0xf5: 0x0005,
605 0xf6: 0x0018, 0xf7: 0x0008, 0xf8: 0x00aa, 0xf9: 0x00c9, 0xfa: 0x00d9, 0xfb: 0x0018,
606 0xfc: 0x00e9, 0xfd: 0x0119, 0xfe: 0x0149, 0xff: 0x0018,
607 // Block 0x4, offset 0x100
608 0x100: 0xe00d, 0x101: 0x0008, 0x102: 0xe00d, 0x103: 0x0008, 0x104: 0xe00d, 0x105: 0x0008,
609 0x106: 0xe00d, 0x107: 0x0008, 0x108: 0xe00d, 0x109: 0x0008, 0x10a: 0xe00d, 0x10b: 0x0008,
610 0x10c: 0xe00d, 0x10d: 0x0008, 0x10e: 0xe00d, 0x10f: 0x0008, 0x110: 0xe00d, 0x111: 0x0008,
611 0x112: 0xe00d, 0x113: 0x0008, 0x114: 0xe00d, 0x115: 0x0008, 0x116: 0xe00d, 0x117: 0x0008,
612 0x118: 0xe00d, 0x119: 0x0008, 0x11a: 0xe00d, 0x11b: 0x0008, 0x11c: 0xe00d, 0x11d: 0x0008,
613 0x11e: 0xe00d, 0x11f: 0x0008, 0x120: 0xe00d, 0x121: 0x0008, 0x122: 0xe00d, 0x123: 0x0008,
614 0x124: 0xe00d, 0x125: 0x0008, 0x126: 0xe00d, 0x127: 0x0008, 0x128: 0xe00d, 0x129: 0x0008,
615 0x12a: 0xe00d, 0x12b: 0x0008, 0x12c: 0xe00d, 0x12d: 0x0008, 0x12e: 0xe00d, 0x12f: 0x0008,
616 0x130: 0x0179, 0x131: 0x0008, 0x132: 0x0035, 0x133: 0x004d, 0x134: 0xe00d, 0x135: 0x0008,
617 0x136: 0xe00d, 0x137: 0x0008, 0x138: 0x0008, 0x139: 0xe01d, 0x13a: 0x0008, 0x13b: 0xe03d,
618 0x13c: 0x0008, 0x13d: 0xe01d, 0x13e: 0x0008, 0x13f: 0x0199,
619 // Block 0x5, offset 0x140
620 0x140: 0x0199, 0x141: 0xe01d, 0x142: 0x0008, 0x143: 0xe03d, 0x144: 0x0008, 0x145: 0xe01d,
621 0x146: 0x0008, 0x147: 0xe07d, 0x148: 0x0008, 0x149: 0x01b9, 0x14a: 0xe00d, 0x14b: 0x0008,
622 0x14c: 0xe00d, 0x14d: 0x0008, 0x14e: 0xe00d, 0x14f: 0x0008, 0x150: 0xe00d, 0x151: 0x0008,
623 0x152: 0xe00d, 0x153: 0x0008, 0x154: 0xe00d, 0x155: 0x0008, 0x156: 0xe00d, 0x157: 0x0008,
624 0x158: 0xe00d, 0x159: 0x0008, 0x15a: 0xe00d, 0x15b: 0x0008, 0x15c: 0xe00d, 0x15d: 0x0008,
625 0x15e: 0xe00d, 0x15f: 0x0008, 0x160: 0xe00d, 0x161: 0x0008, 0x162: 0xe00d, 0x163: 0x0008,
626 0x164: 0xe00d, 0x165: 0x0008, 0x166: 0xe00d, 0x167: 0x0008, 0x168: 0xe00d, 0x169: 0x0008,
627 0x16a: 0xe00d, 0x16b: 0x0008, 0x16c: 0xe00d, 0x16d: 0x0008, 0x16e: 0xe00d, 0x16f: 0x0008,
628 0x170: 0xe00d, 0x171: 0x0008, 0x172: 0xe00d, 0x173: 0x0008, 0x174: 0xe00d, 0x175: 0x0008,
629 0x176: 0xe00d, 0x177: 0x0008, 0x178: 0x0065, 0x179: 0xe01d, 0x17a: 0x0008, 0x17b: 0xe03d,
630 0x17c: 0x0008, 0x17d: 0xe01d, 0x17e: 0x0008, 0x17f: 0x01d9,
631 // Block 0x6, offset 0x180
632 0x180: 0x0008, 0x181: 0x007d, 0x182: 0xe00d, 0x183: 0x0008, 0x184: 0xe00d, 0x185: 0x0008,
633 0x186: 0x007d, 0x187: 0xe07d, 0x188: 0x0008, 0x189: 0x0095, 0x18a: 0x00ad, 0x18b: 0xe03d,
634 0x18c: 0x0008, 0x18d: 0x0008, 0x18e: 0x00c5, 0x18f: 0x00dd, 0x190: 0x00f5, 0x191: 0xe01d,
635 0x192: 0x0008, 0x193: 0x010d, 0x194: 0x0125, 0x195: 0x0008, 0x196: 0x013d, 0x197: 0x013d,
636 0x198: 0xe00d, 0x199: 0x0008, 0x19a: 0x0008, 0x19b: 0x0008, 0x19c: 0x010d, 0x19d: 0x0155,
637 0x19e: 0x0008, 0x19f: 0x016d, 0x1a0: 0xe00d, 0x1a1: 0x0008, 0x1a2: 0xe00d, 0x1a3: 0x0008,
638 0x1a4: 0xe00d, 0x1a5: 0x0008, 0x1a6: 0x0185, 0x1a7: 0xe07d, 0x1a8: 0x0008, 0x1a9: 0x019d,
639 0x1aa: 0x0008, 0x1ab: 0x0008, 0x1ac: 0xe00d, 0x1ad: 0x0008, 0x1ae: 0x0185, 0x1af: 0xe0fd,
640 0x1b0: 0x0008, 0x1b1: 0x01b5, 0x1b2: 0x01cd, 0x1b3: 0xe03d, 0x1b4: 0x0008, 0x1b5: 0xe01d,
641 0x1b6: 0x0008, 0x1b7: 0x01e5, 0x1b8: 0xe00d, 0x1b9: 0x0008, 0x1ba: 0x0008, 0x1bb: 0x0008,
642 0x1bc: 0xe00d, 0x1bd: 0x0008, 0x1be: 0x0008, 0x1bf: 0x0008,
643 // Block 0x7, offset 0x1c0
644 0x1c0: 0x0008, 0x1c1: 0x0008, 0x1c2: 0x0008, 0x1c3: 0x0008, 0x1c4: 0x01e9, 0x1c5: 0x01e9,
645 0x1c6: 0x01e9, 0x1c7: 0x01fd, 0x1c8: 0x0215, 0x1c9: 0x022d, 0x1ca: 0x0245, 0x1cb: 0x025d,
646 0x1cc: 0x0275, 0x1cd: 0xe01d, 0x1ce: 0x0008, 0x1cf: 0xe0fd, 0x1d0: 0x0008, 0x1d1: 0xe01d,
647 0x1d2: 0x0008, 0x1d3: 0xe03d, 0x1d4: 0x0008, 0x1d5: 0xe01d, 0x1d6: 0x0008, 0x1d7: 0xe07d,
648 0x1d8: 0x0008, 0x1d9: 0xe01d, 0x1da: 0x0008, 0x1db: 0xe03d, 0x1dc: 0x0008, 0x1dd: 0x0008,
649 0x1de: 0xe00d, 0x1df: 0x0008, 0x1e0: 0xe00d, 0x1e1: 0x0008, 0x1e2: 0xe00d, 0x1e3: 0x0008,
650 0x1e4: 0xe00d, 0x1e5: 0x0008, 0x1e6: 0xe00d, 0x1e7: 0x0008, 0x1e8: 0xe00d, 0x1e9: 0x0008,
651 0x1ea: 0xe00d, 0x1eb: 0x0008, 0x1ec: 0xe00d, 0x1ed: 0x0008, 0x1ee: 0xe00d, 0x1ef: 0x0008,
652 0x1f0: 0x0008, 0x1f1: 0x028d, 0x1f2: 0x02a5, 0x1f3: 0x02bd, 0x1f4: 0xe00d, 0x1f5: 0x0008,
653 0x1f6: 0x02d5, 0x1f7: 0x02ed, 0x1f8: 0xe00d, 0x1f9: 0x0008, 0x1fa: 0xe00d, 0x1fb: 0x0008,
654 0x1fc: 0xe00d, 0x1fd: 0x0008, 0x1fe: 0xe00d, 0x1ff: 0x0008,
655 // Block 0x8, offset 0x200
656 0x200: 0xe00d, 0x201: 0x0008, 0x202: 0xe00d, 0x203: 0x0008, 0x204: 0xe00d, 0x205: 0x0008,
657 0x206: 0xe00d, 0x207: 0x0008, 0x208: 0xe00d, 0x209: 0x0008, 0x20a: 0xe00d, 0x20b: 0x0008,
658 0x20c: 0xe00d, 0x20d: 0x0008, 0x20e: 0xe00d, 0x20f: 0x0008, 0x210: 0xe00d, 0x211: 0x0008,
659 0x212: 0xe00d, 0x213: 0x0008, 0x214: 0xe00d, 0x215: 0x0008, 0x216: 0xe00d, 0x217: 0x0008,
660 0x218: 0xe00d, 0x219: 0x0008, 0x21a: 0xe00d, 0x21b: 0x0008, 0x21c: 0xe00d, 0x21d: 0x0008,
661 0x21e: 0xe00d, 0x21f: 0x0008, 0x220: 0x0305, 0x221: 0x0008, 0x222: 0xe00d, 0x223: 0x0008,
662 0x224: 0xe00d, 0x225: 0x0008, 0x226: 0xe00d, 0x227: 0x0008, 0x228: 0xe00d, 0x229: 0x0008,
663 0x22a: 0xe00d, 0x22b: 0x0008, 0x22c: 0xe00d, 0x22d: 0x0008, 0x22e: 0xe00d, 0x22f: 0x0008,
664 0x230: 0xe00d, 0x231: 0x0008, 0x232: 0xe00d, 0x233: 0x0008, 0x234: 0x0008, 0x235: 0x0008,
665 0x236: 0x0008, 0x237: 0x0008, 0x238: 0x0008, 0x239: 0x0008, 0x23a: 0x0209, 0x23b: 0xe03d,
666 0x23c: 0x0008, 0x23d: 0x031d, 0x23e: 0x0229, 0x23f: 0x0008,
667 // Block 0x9, offset 0x240
668 0x240: 0x0008, 0x241: 0x0008, 0x242: 0x0018, 0x243: 0x0018, 0x244: 0x0018, 0x245: 0x0018,
669 0x246: 0x0008, 0x247: 0x0008, 0x248: 0x0008, 0x249: 0x0008, 0x24a: 0x0008, 0x24b: 0x0008,
670 0x24c: 0x0008, 0x24d: 0x0008, 0x24e: 0x0008, 0x24f: 0x0008, 0x250: 0x0008, 0x251: 0x0008,
671 0x252: 0x0018, 0x253: 0x0018, 0x254: 0x0018, 0x255: 0x0018, 0x256: 0x0018, 0x257: 0x0018,
672 0x258: 0x029a, 0x259: 0x02ba, 0x25a: 0x02da, 0x25b: 0x02fa, 0x25c: 0x031a, 0x25d: 0x033a,
673 0x25e: 0x0018, 0x25f: 0x0018, 0x260: 0x03ad, 0x261: 0x0359, 0x262: 0x01d9, 0x263: 0x0369,
674 0x264: 0x03c5, 0x265: 0x0018, 0x266: 0x0018, 0x267: 0x0018, 0x268: 0x0018, 0x269: 0x0018,
675 0x26a: 0x0018, 0x26b: 0x0018, 0x26c: 0x0008, 0x26d: 0x0018, 0x26e: 0x0008, 0x26f: 0x0018,
676 0x270: 0x0018, 0x271: 0x0018, 0x272: 0x0018, 0x273: 0x0018, 0x274: 0x0018, 0x275: 0x0018,
677 0x276: 0x0018, 0x277: 0x0018, 0x278: 0x0018, 0x279: 0x0018, 0x27a: 0x0018, 0x27b: 0x0018,
678 0x27c: 0x0018, 0x27d: 0x0018, 0x27e: 0x0018, 0x27f: 0x0018,
679 // Block 0xa, offset 0x280
680 0x280: 0x03dd, 0x281: 0x03dd, 0x282: 0x3308, 0x283: 0x03f5, 0x284: 0x0379, 0x285: 0x040d,
681 0x286: 0x3308, 0x287: 0x3308, 0x288: 0x3308, 0x289: 0x3308, 0x28a: 0x3308, 0x28b: 0x3308,
682 0x28c: 0x3308, 0x28d: 0x3308, 0x28e: 0x3308, 0x28f: 0x33c0, 0x290: 0x3308, 0x291: 0x3308,
683 0x292: 0x3308, 0x293: 0x3308, 0x294: 0x3308, 0x295: 0x3308, 0x296: 0x3308, 0x297: 0x3308,
684 0x298: 0x3308, 0x299: 0x3308, 0x29a: 0x3308, 0x29b: 0x3308, 0x29c: 0x3308, 0x29d: 0x3308,
685 0x29e: 0x3308, 0x29f: 0x3308, 0x2a0: 0x3308, 0x2a1: 0x3308, 0x2a2: 0x3308, 0x2a3: 0x3308,
686 0x2a4: 0x3308, 0x2a5: 0x3308, 0x2a6: 0x3308, 0x2a7: 0x3308, 0x2a8: 0x3308, 0x2a9: 0x3308,
687 0x2aa: 0x3308, 0x2ab: 0x3308, 0x2ac: 0x3308, 0x2ad: 0x3308, 0x2ae: 0x3308, 0x2af: 0x3308,
688 0x2b0: 0xe00d, 0x2b1: 0x0008, 0x2b2: 0xe00d, 0x2b3: 0x0008, 0x2b4: 0x0425, 0x2b5: 0x0008,
689 0x2b6: 0xe00d, 0x2b7: 0x0008, 0x2b8: 0x0040, 0x2b9: 0x0040, 0x2ba: 0x03a2, 0x2bb: 0x0008,
690 0x2bc: 0x0008, 0x2bd: 0x0008, 0x2be: 0x03c2, 0x2bf: 0x043d,
691 // Block 0xb, offset 0x2c0
692 0x2c0: 0x0040, 0x2c1: 0x0040, 0x2c2: 0x0040, 0x2c3: 0x0040, 0x2c4: 0x008a, 0x2c5: 0x03d2,
693 0x2c6: 0xe155, 0x2c7: 0x0455, 0x2c8: 0xe12d, 0x2c9: 0xe13d, 0x2ca: 0xe12d, 0x2cb: 0x0040,
694 0x2cc: 0x03dd, 0x2cd: 0x0040, 0x2ce: 0x046d, 0x2cf: 0x0485, 0x2d0: 0x0008, 0x2d1: 0xe105,
695 0x2d2: 0xe105, 0x2d3: 0xe105, 0x2d4: 0xe105, 0x2d5: 0xe105, 0x2d6: 0xe105, 0x2d7: 0xe105,
696 0x2d8: 0xe105, 0x2d9: 0xe105, 0x2da: 0xe105, 0x2db: 0xe105, 0x2dc: 0xe105, 0x2dd: 0xe105,
697 0x2de: 0xe105, 0x2df: 0xe105, 0x2e0: 0x049d, 0x2e1: 0x049d, 0x2e2: 0x0040, 0x2e3: 0x049d,
698 0x2e4: 0x049d, 0x2e5: 0x049d, 0x2e6: 0x049d, 0x2e7: 0x049d, 0x2e8: 0x049d, 0x2e9: 0x049d,
699 0x2ea: 0x049d, 0x2eb: 0x049d, 0x2ec: 0x0008, 0x2ed: 0x0008, 0x2ee: 0x0008, 0x2ef: 0x0008,
700 0x2f0: 0x0008, 0x2f1: 0x0008, 0x2f2: 0x0008, 0x2f3: 0x0008, 0x2f4: 0x0008, 0x2f5: 0x0008,
701 0x2f6: 0x0008, 0x2f7: 0x0008, 0x2f8: 0x0008, 0x2f9: 0x0008, 0x2fa: 0x0008, 0x2fb: 0x0008,
702 0x2fc: 0x0008, 0x2fd: 0x0008, 0x2fe: 0x0008, 0x2ff: 0x0008,
703 // Block 0xc, offset 0x300
704 0x300: 0x0008, 0x301: 0x0008, 0x302: 0xe00f, 0x303: 0x0008, 0x304: 0x0008, 0x305: 0x0008,
705 0x306: 0x0008, 0x307: 0x0008, 0x308: 0x0008, 0x309: 0x0008, 0x30a: 0x0008, 0x30b: 0x0008,
706 0x30c: 0x0008, 0x30d: 0x0008, 0x30e: 0x0008, 0x30f: 0xe0c5, 0x310: 0x04b5, 0x311: 0x04cd,
707 0x312: 0xe0bd, 0x313: 0xe0f5, 0x314: 0xe0fd, 0x315: 0xe09d, 0x316: 0xe0b5, 0x317: 0x0008,
708 0x318: 0xe00d, 0x319: 0x0008, 0x31a: 0xe00d, 0x31b: 0x0008, 0x31c: 0xe00d, 0x31d: 0x0008,
709 0x31e: 0xe00d, 0x31f: 0x0008, 0x320: 0xe00d, 0x321: 0x0008, 0x322: 0xe00d, 0x323: 0x0008,
710 0x324: 0xe00d, 0x325: 0x0008, 0x326: 0xe00d, 0x327: 0x0008, 0x328: 0xe00d, 0x329: 0x0008,
711 0x32a: 0xe00d, 0x32b: 0x0008, 0x32c: 0xe00d, 0x32d: 0x0008, 0x32e: 0xe00d, 0x32f: 0x0008,
712 0x330: 0x04e5, 0x331: 0xe185, 0x332: 0xe18d, 0x333: 0x0008, 0x334: 0x04fd, 0x335: 0x03dd,
713 0x336: 0x0018, 0x337: 0xe07d, 0x338: 0x0008, 0x339: 0xe1d5, 0x33a: 0xe00d, 0x33b: 0x0008,
714 0x33c: 0x0008, 0x33d: 0x0515, 0x33e: 0x052d, 0x33f: 0x052d,
715 // Block 0xd, offset 0x340
716 0x340: 0x0008, 0x341: 0x0008, 0x342: 0x0008, 0x343: 0x0008, 0x344: 0x0008, 0x345: 0x0008,
717 0x346: 0x0008, 0x347: 0x0008, 0x348: 0x0008, 0x349: 0x0008, 0x34a: 0x0008, 0x34b: 0x0008,
718 0x34c: 0x0008, 0x34d: 0x0008, 0x34e: 0x0008, 0x34f: 0x0008, 0x350: 0x0008, 0x351: 0x0008,
719 0x352: 0x0008, 0x353: 0x0008, 0x354: 0x0008, 0x355: 0x0008, 0x356: 0x0008, 0x357: 0x0008,
720 0x358: 0x0008, 0x359: 0x0008, 0x35a: 0x0008, 0x35b: 0x0008, 0x35c: 0x0008, 0x35d: 0x0008,
721 0x35e: 0x0008, 0x35f: 0x0008, 0x360: 0xe00d, 0x361: 0x0008, 0x362: 0xe00d, 0x363: 0x0008,
722 0x364: 0xe00d, 0x365: 0x0008, 0x366: 0xe00d, 0x367: 0x0008, 0x368: 0xe00d, 0x369: 0x0008,
723 0x36a: 0xe00d, 0x36b: 0x0008, 0x36c: 0xe00d, 0x36d: 0x0008, 0x36e: 0xe00d, 0x36f: 0x0008,
724 0x370: 0xe00d, 0x371: 0x0008, 0x372: 0xe00d, 0x373: 0x0008, 0x374: 0xe00d, 0x375: 0x0008,
725 0x376: 0xe00d, 0x377: 0x0008, 0x378: 0xe00d, 0x379: 0x0008, 0x37a: 0xe00d, 0x37b: 0x0008,
726 0x37c: 0xe00d, 0x37d: 0x0008, 0x37e: 0xe00d, 0x37f: 0x0008,
727 // Block 0xe, offset 0x380
728 0x380: 0xe00d, 0x381: 0x0008, 0x382: 0x0018, 0x383: 0x3308, 0x384: 0x3308, 0x385: 0x3308,
729 0x386: 0x3308, 0x387: 0x3308, 0x388: 0x3318, 0x389: 0x3318, 0x38a: 0xe00d, 0x38b: 0x0008,
730 0x38c: 0xe00d, 0x38d: 0x0008, 0x38e: 0xe00d, 0x38f: 0x0008, 0x390: 0xe00d, 0x391: 0x0008,
731 0x392: 0xe00d, 0x393: 0x0008, 0x394: 0xe00d, 0x395: 0x0008, 0x396: 0xe00d, 0x397: 0x0008,
732 0x398: 0xe00d, 0x399: 0x0008, 0x39a: 0xe00d, 0x39b: 0x0008, 0x39c: 0xe00d, 0x39d: 0x0008,
733 0x39e: 0xe00d, 0x39f: 0x0008, 0x3a0: 0xe00d, 0x3a1: 0x0008, 0x3a2: 0xe00d, 0x3a3: 0x0008,
734 0x3a4: 0xe00d, 0x3a5: 0x0008, 0x3a6: 0xe00d, 0x3a7: 0x0008, 0x3a8: 0xe00d, 0x3a9: 0x0008,
735 0x3aa: 0xe00d, 0x3ab: 0x0008, 0x3ac: 0xe00d, 0x3ad: 0x0008, 0x3ae: 0xe00d, 0x3af: 0x0008,
736 0x3b0: 0xe00d, 0x3b1: 0x0008, 0x3b2: 0xe00d, 0x3b3: 0x0008, 0x3b4: 0xe00d, 0x3b5: 0x0008,
737 0x3b6: 0xe00d, 0x3b7: 0x0008, 0x3b8: 0xe00d, 0x3b9: 0x0008, 0x3ba: 0xe00d, 0x3bb: 0x0008,
738 0x3bc: 0xe00d, 0x3bd: 0x0008, 0x3be: 0xe00d, 0x3bf: 0x0008,
739 // Block 0xf, offset 0x3c0
740 0x3c0: 0x0040, 0x3c1: 0xe01d, 0x3c2: 0x0008, 0x3c3: 0xe03d, 0x3c4: 0x0008, 0x3c5: 0xe01d,
741 0x3c6: 0x0008, 0x3c7: 0xe07d, 0x3c8: 0x0008, 0x3c9: 0xe01d, 0x3ca: 0x0008, 0x3cb: 0xe03d,
742 0x3cc: 0x0008, 0x3cd: 0xe01d, 0x3ce: 0x0008, 0x3cf: 0x0008, 0x3d0: 0xe00d, 0x3d1: 0x0008,
743 0x3d2: 0xe00d, 0x3d3: 0x0008, 0x3d4: 0xe00d, 0x3d5: 0x0008, 0x3d6: 0xe00d, 0x3d7: 0x0008,
744 0x3d8: 0xe00d, 0x3d9: 0x0008, 0x3da: 0xe00d, 0x3db: 0x0008, 0x3dc: 0xe00d, 0x3dd: 0x0008,
745 0x3de: 0xe00d, 0x3df: 0x0008, 0x3e0: 0xe00d, 0x3e1: 0x0008, 0x3e2: 0xe00d, 0x3e3: 0x0008,
746 0x3e4: 0xe00d, 0x3e5: 0x0008, 0x3e6: 0xe00d, 0x3e7: 0x0008, 0x3e8: 0xe00d, 0x3e9: 0x0008,
747 0x3ea: 0xe00d, 0x3eb: 0x0008, 0x3ec: 0xe00d, 0x3ed: 0x0008, 0x3ee: 0xe00d, 0x3ef: 0x0008,
748 0x3f0: 0xe00d, 0x3f1: 0x0008, 0x3f2: 0xe00d, 0x3f3: 0x0008, 0x3f4: 0xe00d, 0x3f5: 0x0008,
749 0x3f6: 0xe00d, 0x3f7: 0x0008, 0x3f8: 0xe00d, 0x3f9: 0x0008, 0x3fa: 0xe00d, 0x3fb: 0x0008,
750 0x3fc: 0xe00d, 0x3fd: 0x0008, 0x3fe: 0xe00d, 0x3ff: 0x0008,
751 // Block 0x10, offset 0x400
752 0x400: 0xe00d, 0x401: 0x0008, 0x402: 0xe00d, 0x403: 0x0008, 0x404: 0xe00d, 0x405: 0x0008,
753 0x406: 0xe00d, 0x407: 0x0008, 0x408: 0xe00d, 0x409: 0x0008, 0x40a: 0xe00d, 0x40b: 0x0008,
754 0x40c: 0xe00d, 0x40d: 0x0008, 0x40e: 0xe00d, 0x40f: 0x0008, 0x410: 0xe00d, 0x411: 0x0008,
755 0x412: 0xe00d, 0x413: 0x0008, 0x414: 0xe00d, 0x415: 0x0008, 0x416: 0xe00d, 0x417: 0x0008,
756 0x418: 0xe00d, 0x419: 0x0008, 0x41a: 0xe00d, 0x41b: 0x0008, 0x41c: 0xe00d, 0x41d: 0x0008,
757 0x41e: 0xe00d, 0x41f: 0x0008, 0x420: 0xe00d, 0x421: 0x0008, 0x422: 0xe00d, 0x423: 0x0008,
758 0x424: 0xe00d, 0x425: 0x0008, 0x426: 0xe00d, 0x427: 0x0008, 0x428: 0xe00d, 0x429: 0x0008,
759 0x42a: 0xe00d, 0x42b: 0x0008, 0x42c: 0xe00d, 0x42d: 0x0008, 0x42e: 0xe00d, 0x42f: 0x0008,
760 0x430: 0x0040, 0x431: 0x03f5, 0x432: 0x03f5, 0x433: 0x03f5, 0x434: 0x03f5, 0x435: 0x03f5,
761 0x436: 0x03f5, 0x437: 0x03f5, 0x438: 0x03f5, 0x439: 0x03f5, 0x43a: 0x03f5, 0x43b: 0x03f5,
762 0x43c: 0x03f5, 0x43d: 0x03f5, 0x43e: 0x03f5, 0x43f: 0x03f5,
763 // Block 0x11, offset 0x440
764 0x440: 0x0840, 0x441: 0x0840, 0x442: 0x0840, 0x443: 0x0840, 0x444: 0x0840, 0x445: 0x0840,
765 0x446: 0x0018, 0x447: 0x0018, 0x448: 0x0818, 0x449: 0x0018, 0x44a: 0x0018, 0x44b: 0x0818,
766 0x44c: 0x0018, 0x44d: 0x0818, 0x44e: 0x0018, 0x44f: 0x0018, 0x450: 0x3308, 0x451: 0x3308,
767 0x452: 0x3308, 0x453: 0x3308, 0x454: 0x3308, 0x455: 0x3308, 0x456: 0x3308, 0x457: 0x3308,
768 0x458: 0x3308, 0x459: 0x3308, 0x45a: 0x3308, 0x45b: 0x0818, 0x45c: 0x0b40, 0x45d: 0x0040,
769 0x45e: 0x0818, 0x45f: 0x0818, 0x460: 0x0a08, 0x461: 0x0808, 0x462: 0x0c08, 0x463: 0x0c08,
770 0x464: 0x0c08, 0x465: 0x0c08, 0x466: 0x0a08, 0x467: 0x0c08, 0x468: 0x0a08, 0x469: 0x0c08,
771 0x46a: 0x0a08, 0x46b: 0x0a08, 0x46c: 0x0a08, 0x46d: 0x0a08, 0x46e: 0x0a08, 0x46f: 0x0c08,
772 0x470: 0x0c08, 0x471: 0x0c08, 0x472: 0x0c08, 0x473: 0x0a08, 0x474: 0x0a08, 0x475: 0x0a08,
773 0x476: 0x0a08, 0x477: 0x0a08, 0x478: 0x0a08, 0x479: 0x0a08, 0x47a: 0x0a08, 0x47b: 0x0a08,
774 0x47c: 0x0a08, 0x47d: 0x0a08, 0x47e: 0x0a08, 0x47f: 0x0a08,
775 // Block 0x12, offset 0x480
776 0x480: 0x0818, 0x481: 0x0a08, 0x482: 0x0a08, 0x483: 0x0a08, 0x484: 0x0a08, 0x485: 0x0a08,
777 0x486: 0x0a08, 0x487: 0x0a08, 0x488: 0x0c08, 0x489: 0x0a08, 0x48a: 0x0a08, 0x48b: 0x3308,
778 0x48c: 0x3308, 0x48d: 0x3308, 0x48e: 0x3308, 0x48f: 0x3308, 0x490: 0x3308, 0x491: 0x3308,
779 0x492: 0x3308, 0x493: 0x3308, 0x494: 0x3308, 0x495: 0x3308, 0x496: 0x3308, 0x497: 0x3308,
780 0x498: 0x3308, 0x499: 0x3308, 0x49a: 0x3308, 0x49b: 0x3308, 0x49c: 0x3308, 0x49d: 0x3308,
781 0x49e: 0x3308, 0x49f: 0x3308, 0x4a0: 0x0808, 0x4a1: 0x0808, 0x4a2: 0x0808, 0x4a3: 0x0808,
782 0x4a4: 0x0808, 0x4a5: 0x0808, 0x4a6: 0x0808, 0x4a7: 0x0808, 0x4a8: 0x0808, 0x4a9: 0x0808,
783 0x4aa: 0x0018, 0x4ab: 0x0818, 0x4ac: 0x0818, 0x4ad: 0x0818, 0x4ae: 0x0a08, 0x4af: 0x0a08,
784 0x4b0: 0x3308, 0x4b1: 0x0c08, 0x4b2: 0x0c08, 0x4b3: 0x0c08, 0x4b4: 0x0808, 0x4b5: 0x0429,
785 0x4b6: 0x0451, 0x4b7: 0x0479, 0x4b8: 0x04a1, 0x4b9: 0x0a08, 0x4ba: 0x0a08, 0x4bb: 0x0a08,
786 0x4bc: 0x0a08, 0x4bd: 0x0a08, 0x4be: 0x0a08, 0x4bf: 0x0a08,
787 // Block 0x13, offset 0x4c0
788 0x4c0: 0x0c08, 0x4c1: 0x0a08, 0x4c2: 0x0a08, 0x4c3: 0x0c08, 0x4c4: 0x0c08, 0x4c5: 0x0c08,
789 0x4c6: 0x0c08, 0x4c7: 0x0c08, 0x4c8: 0x0c08, 0x4c9: 0x0c08, 0x4ca: 0x0c08, 0x4cb: 0x0c08,
790 0x4cc: 0x0a08, 0x4cd: 0x0c08, 0x4ce: 0x0a08, 0x4cf: 0x0c08, 0x4d0: 0x0a08, 0x4d1: 0x0a08,
791 0x4d2: 0x0c08, 0x4d3: 0x0c08, 0x4d4: 0x0818, 0x4d5: 0x0c08, 0x4d6: 0x3308, 0x4d7: 0x3308,
792 0x4d8: 0x3308, 0x4d9: 0x3308, 0x4da: 0x3308, 0x4db: 0x3308, 0x4dc: 0x3308, 0x4dd: 0x0840,
793 0x4de: 0x0018, 0x4df: 0x3308, 0x4e0: 0x3308, 0x4e1: 0x3308, 0x4e2: 0x3308, 0x4e3: 0x3308,
794 0x4e4: 0x3308, 0x4e5: 0x0808, 0x4e6: 0x0808, 0x4e7: 0x3308, 0x4e8: 0x3308, 0x4e9: 0x0018,
795 0x4ea: 0x3308, 0x4eb: 0x3308, 0x4ec: 0x3308, 0x4ed: 0x3308, 0x4ee: 0x0c08, 0x4ef: 0x0c08,
796 0x4f0: 0x0008, 0x4f1: 0x0008, 0x4f2: 0x0008, 0x4f3: 0x0008, 0x4f4: 0x0008, 0x4f5: 0x0008,
797 0x4f6: 0x0008, 0x4f7: 0x0008, 0x4f8: 0x0008, 0x4f9: 0x0008, 0x4fa: 0x0a08, 0x4fb: 0x0a08,
798 0x4fc: 0x0a08, 0x4fd: 0x0808, 0x4fe: 0x0808, 0x4ff: 0x0a08,
799 // Block 0x14, offset 0x500
800 0x500: 0x0818, 0x501: 0x0818, 0x502: 0x0818, 0x503: 0x0818, 0x504: 0x0818, 0x505: 0x0818,
801 0x506: 0x0818, 0x507: 0x0818, 0x508: 0x0818, 0x509: 0x0818, 0x50a: 0x0818, 0x50b: 0x0818,
802 0x50c: 0x0818, 0x50d: 0x0818, 0x50e: 0x0040, 0x50f: 0x0b40, 0x510: 0x0c08, 0x511: 0x3308,
803 0x512: 0x0a08, 0x513: 0x0a08, 0x514: 0x0a08, 0x515: 0x0c08, 0x516: 0x0c08, 0x517: 0x0c08,
804 0x518: 0x0c08, 0x519: 0x0c08, 0x51a: 0x0a08, 0x51b: 0x0a08, 0x51c: 0x0a08, 0x51d: 0x0a08,
805 0x51e: 0x0c08, 0x51f: 0x0a08, 0x520: 0x0a08, 0x521: 0x0a08, 0x522: 0x0a08, 0x523: 0x0a08,
806 0x524: 0x0a08, 0x525: 0x0a08, 0x526: 0x0a08, 0x527: 0x0a08, 0x528: 0x0c08, 0x529: 0x0a08,
807 0x52a: 0x0c08, 0x52b: 0x0a08, 0x52c: 0x0c08, 0x52d: 0x0a08, 0x52e: 0x0a08, 0x52f: 0x0c08,
808 0x530: 0x3308, 0x531: 0x3308, 0x532: 0x3308, 0x533: 0x3308, 0x534: 0x3308, 0x535: 0x3308,
809 0x536: 0x3308, 0x537: 0x3308, 0x538: 0x3308, 0x539: 0x3308, 0x53a: 0x3308, 0x53b: 0x3308,
810 0x53c: 0x3308, 0x53d: 0x3308, 0x53e: 0x3308, 0x53f: 0x3308,
811 // Block 0x15, offset 0x540
812 0x540: 0x0c08, 0x541: 0x0a08, 0x542: 0x0a08, 0x543: 0x0a08, 0x544: 0x0a08, 0x545: 0x0a08,
813 0x546: 0x0c08, 0x547: 0x0c08, 0x548: 0x0a08, 0x549: 0x0c08, 0x54a: 0x0a08, 0x54b: 0x0a08,
814 0x54c: 0x0a08, 0x54d: 0x0a08, 0x54e: 0x0a08, 0x54f: 0x0a08, 0x550: 0x0a08, 0x551: 0x0a08,
815 0x552: 0x0a08, 0x553: 0x0a08, 0x554: 0x0c08, 0x555: 0x0a08, 0x556: 0x0808, 0x557: 0x0808,
816 0x558: 0x0808, 0x559: 0x3308, 0x55a: 0x3308, 0x55b: 0x3308, 0x55c: 0x0040, 0x55d: 0x0040,
817 0x55e: 0x0818, 0x55f: 0x0040, 0x560: 0x0a08, 0x561: 0x0808, 0x562: 0x0a08, 0x563: 0x0a08,
818 0x564: 0x0a08, 0x565: 0x0a08, 0x566: 0x0808, 0x567: 0x0c08, 0x568: 0x0a08, 0x569: 0x0c08,
819 0x56a: 0x0c08, 0x56b: 0x0040, 0x56c: 0x0040, 0x56d: 0x0040, 0x56e: 0x0040, 0x56f: 0x0040,
820 0x570: 0x0040, 0x571: 0x0040, 0x572: 0x0040, 0x573: 0x0040, 0x574: 0x0040, 0x575: 0x0040,
821 0x576: 0x0040, 0x577: 0x0040, 0x578: 0x0040, 0x579: 0x0040, 0x57a: 0x0040, 0x57b: 0x0040,
822 0x57c: 0x0040, 0x57d: 0x0040, 0x57e: 0x0040, 0x57f: 0x0040,
823 // Block 0x16, offset 0x580
824 0x580: 0x3008, 0x581: 0x3308, 0x582: 0x3308, 0x583: 0x3308, 0x584: 0x3308, 0x585: 0x3308,
825 0x586: 0x3308, 0x587: 0x3308, 0x588: 0x3308, 0x589: 0x3008, 0x58a: 0x3008, 0x58b: 0x3008,
826 0x58c: 0x3008, 0x58d: 0x3b08, 0x58e: 0x3008, 0x58f: 0x3008, 0x590: 0x0008, 0x591: 0x3308,
827 0x592: 0x3308, 0x593: 0x3308, 0x594: 0x3308, 0x595: 0x3308, 0x596: 0x3308, 0x597: 0x3308,
828 0x598: 0x04c9, 0x599: 0x0501, 0x59a: 0x0539, 0x59b: 0x0571, 0x59c: 0x05a9, 0x59d: 0x05e1,
829 0x59e: 0x0619, 0x59f: 0x0651, 0x5a0: 0x0008, 0x5a1: 0x0008, 0x5a2: 0x3308, 0x5a3: 0x3308,
830 0x5a4: 0x0018, 0x5a5: 0x0018, 0x5a6: 0x0008, 0x5a7: 0x0008, 0x5a8: 0x0008, 0x5a9: 0x0008,
831 0x5aa: 0x0008, 0x5ab: 0x0008, 0x5ac: 0x0008, 0x5ad: 0x0008, 0x5ae: 0x0008, 0x5af: 0x0008,
832 0x5b0: 0x0018, 0x5b1: 0x0008, 0x5b2: 0x0008, 0x5b3: 0x0008, 0x5b4: 0x0008, 0x5b5: 0x0008,
833 0x5b6: 0x0008, 0x5b7: 0x0008, 0x5b8: 0x0008, 0x5b9: 0x0008, 0x5ba: 0x0008, 0x5bb: 0x0008,
834 0x5bc: 0x0008, 0x5bd: 0x0008, 0x5be: 0x0008, 0x5bf: 0x0008,
835 // Block 0x17, offset 0x5c0
836 0x5c0: 0x0008, 0x5c1: 0x3308, 0x5c2: 0x3008, 0x5c3: 0x3008, 0x5c4: 0x0040, 0x5c5: 0x0008,
837 0x5c6: 0x0008, 0x5c7: 0x0008, 0x5c8: 0x0008, 0x5c9: 0x0008, 0x5ca: 0x0008, 0x5cb: 0x0008,
838 0x5cc: 0x0008, 0x5cd: 0x0040, 0x5ce: 0x0040, 0x5cf: 0x0008, 0x5d0: 0x0008, 0x5d1: 0x0040,
839 0x5d2: 0x0040, 0x5d3: 0x0008, 0x5d4: 0x0008, 0x5d5: 0x0008, 0x5d6: 0x0008, 0x5d7: 0x0008,
840 0x5d8: 0x0008, 0x5d9: 0x0008, 0x5da: 0x0008, 0x5db: 0x0008, 0x5dc: 0x0008, 0x5dd: 0x0008,
841 0x5de: 0x0008, 0x5df: 0x0008, 0x5e0: 0x0008, 0x5e1: 0x0008, 0x5e2: 0x0008, 0x5e3: 0x0008,
842 0x5e4: 0x0008, 0x5e5: 0x0008, 0x5e6: 0x0008, 0x5e7: 0x0008, 0x5e8: 0x0008, 0x5e9: 0x0040,
843 0x5ea: 0x0008, 0x5eb: 0x0008, 0x5ec: 0x0008, 0x5ed: 0x0008, 0x5ee: 0x0008, 0x5ef: 0x0008,
844 0x5f0: 0x0008, 0x5f1: 0x0040, 0x5f2: 0x0008, 0x5f3: 0x0040, 0x5f4: 0x0040, 0x5f5: 0x0040,
845 0x5f6: 0x0008, 0x5f7: 0x0008, 0x5f8: 0x0008, 0x5f9: 0x0008, 0x5fa: 0x0040, 0x5fb: 0x0040,
846 0x5fc: 0x3308, 0x5fd: 0x0008, 0x5fe: 0x3008, 0x5ff: 0x3008,
847 // Block 0x18, offset 0x600
848 0x600: 0x3008, 0x601: 0x3308, 0x602: 0x3308, 0x603: 0x3308, 0x604: 0x3308, 0x605: 0x0040,
849 0x606: 0x0040, 0x607: 0x3008, 0x608: 0x3008, 0x609: 0x0040, 0x60a: 0x0040, 0x60b: 0x3008,
850 0x60c: 0x3008, 0x60d: 0x3b08, 0x60e: 0x0008, 0x60f: 0x0040, 0x610: 0x0040, 0x611: 0x0040,
851 0x612: 0x0040, 0x613: 0x0040, 0x614: 0x0040, 0x615: 0x0040, 0x616: 0x0040, 0x617: 0x3008,
852 0x618: 0x0040, 0x619: 0x0040, 0x61a: 0x0040, 0x61b: 0x0040, 0x61c: 0x0689, 0x61d: 0x06c1,
853 0x61e: 0x0040, 0x61f: 0x06f9, 0x620: 0x0008, 0x621: 0x0008, 0x622: 0x3308, 0x623: 0x3308,
854 0x624: 0x0040, 0x625: 0x0040, 0x626: 0x0008, 0x627: 0x0008, 0x628: 0x0008, 0x629: 0x0008,
855 0x62a: 0x0008, 0x62b: 0x0008, 0x62c: 0x0008, 0x62d: 0x0008, 0x62e: 0x0008, 0x62f: 0x0008,
856 0x630: 0x0008, 0x631: 0x0008, 0x632: 0x0018, 0x633: 0x0018, 0x634: 0x0018, 0x635: 0x0018,
857 0x636: 0x0018, 0x637: 0x0018, 0x638: 0x0018, 0x639: 0x0018, 0x63a: 0x0018, 0x63b: 0x0018,
858 0x63c: 0x0008, 0x63d: 0x0018, 0x63e: 0x0040, 0x63f: 0x0040,
859 // Block 0x19, offset 0x640
860 0x640: 0x0040, 0x641: 0x3308, 0x642: 0x3308, 0x643: 0x3008, 0x644: 0x0040, 0x645: 0x0008,
861 0x646: 0x0008, 0x647: 0x0008, 0x648: 0x0008, 0x649: 0x0008, 0x64a: 0x0008, 0x64b: 0x0040,
862 0x64c: 0x0040, 0x64d: 0x0040, 0x64e: 0x0040, 0x64f: 0x0008, 0x650: 0x0008, 0x651: 0x0040,
863 0x652: 0x0040, 0x653: 0x0008, 0x654: 0x0008, 0x655: 0x0008, 0x656: 0x0008, 0x657: 0x0008,
864 0x658: 0x0008, 0x659: 0x0008, 0x65a: 0x0008, 0x65b: 0x0008, 0x65c: 0x0008, 0x65d: 0x0008,
865 0x65e: 0x0008, 0x65f: 0x0008, 0x660: 0x0008, 0x661: 0x0008, 0x662: 0x0008, 0x663: 0x0008,
866 0x664: 0x0008, 0x665: 0x0008, 0x666: 0x0008, 0x667: 0x0008, 0x668: 0x0008, 0x669: 0x0040,
867 0x66a: 0x0008, 0x66b: 0x0008, 0x66c: 0x0008, 0x66d: 0x0008, 0x66e: 0x0008, 0x66f: 0x0008,
868 0x670: 0x0008, 0x671: 0x0040, 0x672: 0x0008, 0x673: 0x0731, 0x674: 0x0040, 0x675: 0x0008,
869 0x676: 0x0769, 0x677: 0x0040, 0x678: 0x0008, 0x679: 0x0008, 0x67a: 0x0040, 0x67b: 0x0040,
870 0x67c: 0x3308, 0x67d: 0x0040, 0x67e: 0x3008, 0x67f: 0x3008,
871 // Block 0x1a, offset 0x680
872 0x680: 0x3008, 0x681: 0x3308, 0x682: 0x3308, 0x683: 0x0040, 0x684: 0x0040, 0x685: 0x0040,
873 0x686: 0x0040, 0x687: 0x3308, 0x688: 0x3308, 0x689: 0x0040, 0x68a: 0x0040, 0x68b: 0x3308,
874 0x68c: 0x3308, 0x68d: 0x3b08, 0x68e: 0x0040, 0x68f: 0x0040, 0x690: 0x0040, 0x691: 0x3308,
875 0x692: 0x0040, 0x693: 0x0040, 0x694: 0x0040, 0x695: 0x0040, 0x696: 0x0040, 0x697: 0x0040,
876 0x698: 0x0040, 0x699: 0x07a1, 0x69a: 0x07d9, 0x69b: 0x0811, 0x69c: 0x0008, 0x69d: 0x0040,
877 0x69e: 0x0849, 0x69f: 0x0040, 0x6a0: 0x0040, 0x6a1: 0x0040, 0x6a2: 0x0040, 0x6a3: 0x0040,
878 0x6a4: 0x0040, 0x6a5: 0x0040, 0x6a6: 0x0008, 0x6a7: 0x0008, 0x6a8: 0x0008, 0x6a9: 0x0008,
879 0x6aa: 0x0008, 0x6ab: 0x0008, 0x6ac: 0x0008, 0x6ad: 0x0008, 0x6ae: 0x0008, 0x6af: 0x0008,
880 0x6b0: 0x3308, 0x6b1: 0x3308, 0x6b2: 0x0008, 0x6b3: 0x0008, 0x6b4: 0x0008, 0x6b5: 0x3308,
881 0x6b6: 0x0040, 0x6b7: 0x0040, 0x6b8: 0x0040, 0x6b9: 0x0040, 0x6ba: 0x0040, 0x6bb: 0x0040,
882 0x6bc: 0x0040, 0x6bd: 0x0040, 0x6be: 0x0040, 0x6bf: 0x0040,
883 // Block 0x1b, offset 0x6c0
884 0x6c0: 0x0040, 0x6c1: 0x3308, 0x6c2: 0x3308, 0x6c3: 0x3008, 0x6c4: 0x0040, 0x6c5: 0x0008,
885 0x6c6: 0x0008, 0x6c7: 0x0008, 0x6c8: 0x0008, 0x6c9: 0x0008, 0x6ca: 0x0008, 0x6cb: 0x0008,
886 0x6cc: 0x0008, 0x6cd: 0x0008, 0x6ce: 0x0040, 0x6cf: 0x0008, 0x6d0: 0x0008, 0x6d1: 0x0008,
887 0x6d2: 0x0040, 0x6d3: 0x0008, 0x6d4: 0x0008, 0x6d5: 0x0008, 0x6d6: 0x0008, 0x6d7: 0x0008,
888 0x6d8: 0x0008, 0x6d9: 0x0008, 0x6da: 0x0008, 0x6db: 0x0008, 0x6dc: 0x0008, 0x6dd: 0x0008,
889 0x6de: 0x0008, 0x6df: 0x0008, 0x6e0: 0x0008, 0x6e1: 0x0008, 0x6e2: 0x0008, 0x6e3: 0x0008,
890 0x6e4: 0x0008, 0x6e5: 0x0008, 0x6e6: 0x0008, 0x6e7: 0x0008, 0x6e8: 0x0008, 0x6e9: 0x0040,
891 0x6ea: 0x0008, 0x6eb: 0x0008, 0x6ec: 0x0008, 0x6ed: 0x0008, 0x6ee: 0x0008, 0x6ef: 0x0008,
892 0x6f0: 0x0008, 0x6f1: 0x0040, 0x6f2: 0x0008, 0x6f3: 0x0008, 0x6f4: 0x0040, 0x6f5: 0x0008,
893 0x6f6: 0x0008, 0x6f7: 0x0008, 0x6f8: 0x0008, 0x6f9: 0x0008, 0x6fa: 0x0040, 0x6fb: 0x0040,
894 0x6fc: 0x3308, 0x6fd: 0x0008, 0x6fe: 0x3008, 0x6ff: 0x3008,
895 // Block 0x1c, offset 0x700
896 0x700: 0x3008, 0x701: 0x3308, 0x702: 0x3308, 0x703: 0x3308, 0x704: 0x3308, 0x705: 0x3308,
897 0x706: 0x0040, 0x707: 0x3308, 0x708: 0x3308, 0x709: 0x3008, 0x70a: 0x0040, 0x70b: 0x3008,
898 0x70c: 0x3008, 0x70d: 0x3b08, 0x70e: 0x0040, 0x70f: 0x0040, 0x710: 0x0008, 0x711: 0x0040,
899 0x712: 0x0040, 0x713: 0x0040, 0x714: 0x0040, 0x715: 0x0040, 0x716: 0x0040, 0x717: 0x0040,
900 0x718: 0x0040, 0x719: 0x0040, 0x71a: 0x0040, 0x71b: 0x0040, 0x71c: 0x0040, 0x71d: 0x0040,
901 0x71e: 0x0040, 0x71f: 0x0040, 0x720: 0x0008, 0x721: 0x0008, 0x722: 0x3308, 0x723: 0x3308,
902 0x724: 0x0040, 0x725: 0x0040, 0x726: 0x0008, 0x727: 0x0008, 0x728: 0x0008, 0x729: 0x0008,
903 0x72a: 0x0008, 0x72b: 0x0008, 0x72c: 0x0008, 0x72d: 0x0008, 0x72e: 0x0008, 0x72f: 0x0008,
904 0x730: 0x0018, 0x731: 0x0018, 0x732: 0x0040, 0x733: 0x0040, 0x734: 0x0040, 0x735: 0x0040,
905 0x736: 0x0040, 0x737: 0x0040, 0x738: 0x0040, 0x739: 0x0008, 0x73a: 0x3308, 0x73b: 0x3308,
906 0x73c: 0x3308, 0x73d: 0x3308, 0x73e: 0x3308, 0x73f: 0x3308,
907 // Block 0x1d, offset 0x740
908 0x740: 0x0040, 0x741: 0x3308, 0x742: 0x3008, 0x743: 0x3008, 0x744: 0x0040, 0x745: 0x0008,
909 0x746: 0x0008, 0x747: 0x0008, 0x748: 0x0008, 0x749: 0x0008, 0x74a: 0x0008, 0x74b: 0x0008,
910 0x74c: 0x0008, 0x74d: 0x0040, 0x74e: 0x0040, 0x74f: 0x0008, 0x750: 0x0008, 0x751: 0x0040,
911 0x752: 0x0040, 0x753: 0x0008, 0x754: 0x0008, 0x755: 0x0008, 0x756: 0x0008, 0x757: 0x0008,
912 0x758: 0x0008, 0x759: 0x0008, 0x75a: 0x0008, 0x75b: 0x0008, 0x75c: 0x0008, 0x75d: 0x0008,
913 0x75e: 0x0008, 0x75f: 0x0008, 0x760: 0x0008, 0x761: 0x0008, 0x762: 0x0008, 0x763: 0x0008,
914 0x764: 0x0008, 0x765: 0x0008, 0x766: 0x0008, 0x767: 0x0008, 0x768: 0x0008, 0x769: 0x0040,
915 0x76a: 0x0008, 0x76b: 0x0008, 0x76c: 0x0008, 0x76d: 0x0008, 0x76e: 0x0008, 0x76f: 0x0008,
916 0x770: 0x0008, 0x771: 0x0040, 0x772: 0x0008, 0x773: 0x0008, 0x774: 0x0040, 0x775: 0x0008,
917 0x776: 0x0008, 0x777: 0x0008, 0x778: 0x0008, 0x779: 0x0008, 0x77a: 0x0040, 0x77b: 0x0040,
918 0x77c: 0x3308, 0x77d: 0x0008, 0x77e: 0x3008, 0x77f: 0x3308,
919 // Block 0x1e, offset 0x780
920 0x780: 0x3008, 0x781: 0x3308, 0x782: 0x3308, 0x783: 0x3308, 0x784: 0x3308, 0x785: 0x0040,
921 0x786: 0x0040, 0x787: 0x3008, 0x788: 0x3008, 0x789: 0x0040, 0x78a: 0x0040, 0x78b: 0x3008,
922 0x78c: 0x3008, 0x78d: 0x3b08, 0x78e: 0x0040, 0x78f: 0x0040, 0x790: 0x0040, 0x791: 0x0040,
923 0x792: 0x0040, 0x793: 0x0040, 0x794: 0x0040, 0x795: 0x0040, 0x796: 0x3308, 0x797: 0x3008,
924 0x798: 0x0040, 0x799: 0x0040, 0x79a: 0x0040, 0x79b: 0x0040, 0x79c: 0x0881, 0x79d: 0x08b9,
925 0x79e: 0x0040, 0x79f: 0x0008, 0x7a0: 0x0008, 0x7a1: 0x0008, 0x7a2: 0x3308, 0x7a3: 0x3308,
926 0x7a4: 0x0040, 0x7a5: 0x0040, 0x7a6: 0x0008, 0x7a7: 0x0008, 0x7a8: 0x0008, 0x7a9: 0x0008,
927 0x7aa: 0x0008, 0x7ab: 0x0008, 0x7ac: 0x0008, 0x7ad: 0x0008, 0x7ae: 0x0008, 0x7af: 0x0008,
928 0x7b0: 0x0018, 0x7b1: 0x0008, 0x7b2: 0x0018, 0x7b3: 0x0018, 0x7b4: 0x0018, 0x7b5: 0x0018,
929 0x7b6: 0x0018, 0x7b7: 0x0018, 0x7b8: 0x0040, 0x7b9: 0x0040, 0x7ba: 0x0040, 0x7bb: 0x0040,
930 0x7bc: 0x0040, 0x7bd: 0x0040, 0x7be: 0x0040, 0x7bf: 0x0040,
931 // Block 0x1f, offset 0x7c0
932 0x7c0: 0x0040, 0x7c1: 0x0040, 0x7c2: 0x3308, 0x7c3: 0x0008, 0x7c4: 0x0040, 0x7c5: 0x0008,
933 0x7c6: 0x0008, 0x7c7: 0x0008, 0x7c8: 0x0008, 0x7c9: 0x0008, 0x7ca: 0x0008, 0x7cb: 0x0040,
934 0x7cc: 0x0040, 0x7cd: 0x0040, 0x7ce: 0x0008, 0x7cf: 0x0008, 0x7d0: 0x0008, 0x7d1: 0x0040,
935 0x7d2: 0x0008, 0x7d3: 0x0008, 0x7d4: 0x0008, 0x7d5: 0x0008, 0x7d6: 0x0040, 0x7d7: 0x0040,
936 0x7d8: 0x0040, 0x7d9: 0x0008, 0x7da: 0x0008, 0x7db: 0x0040, 0x7dc: 0x0008, 0x7dd: 0x0040,
937 0x7de: 0x0008, 0x7df: 0x0008, 0x7e0: 0x0040, 0x7e1: 0x0040, 0x7e2: 0x0040, 0x7e3: 0x0008,
938 0x7e4: 0x0008, 0x7e5: 0x0040, 0x7e6: 0x0040, 0x7e7: 0x0040, 0x7e8: 0x0008, 0x7e9: 0x0008,
939 0x7ea: 0x0008, 0x7eb: 0x0040, 0x7ec: 0x0040, 0x7ed: 0x0040, 0x7ee: 0x0008, 0x7ef: 0x0008,
940 0x7f0: 0x0008, 0x7f1: 0x0008, 0x7f2: 0x0008, 0x7f3: 0x0008, 0x7f4: 0x0008, 0x7f5: 0x0008,
941 0x7f6: 0x0008, 0x7f7: 0x0008, 0x7f8: 0x0008, 0x7f9: 0x0008, 0x7fa: 0x0040, 0x7fb: 0x0040,
942 0x7fc: 0x0040, 0x7fd: 0x0040, 0x7fe: 0x3008, 0x7ff: 0x3008,
943 // Block 0x20, offset 0x800
944 0x800: 0x3308, 0x801: 0x3008, 0x802: 0x3008, 0x803: 0x3008, 0x804: 0x3008, 0x805: 0x0040,
945 0x806: 0x3308, 0x807: 0x3308, 0x808: 0x3308, 0x809: 0x0040, 0x80a: 0x3308, 0x80b: 0x3308,
946 0x80c: 0x3308, 0x80d: 0x3b08, 0x80e: 0x0040, 0x80f: 0x0040, 0x810: 0x0040, 0x811: 0x0040,
947 0x812: 0x0040, 0x813: 0x0040, 0x814: 0x0040, 0x815: 0x3308, 0x816: 0x3308, 0x817: 0x0040,
948 0x818: 0x0008, 0x819: 0x0008, 0x81a: 0x0008, 0x81b: 0x0040, 0x81c: 0x0040, 0x81d: 0x0040,
949 0x81e: 0x0040, 0x81f: 0x0040, 0x820: 0x0008, 0x821: 0x0008, 0x822: 0x3308, 0x823: 0x3308,
950 0x824: 0x0040, 0x825: 0x0040, 0x826: 0x0008, 0x827: 0x0008, 0x828: 0x0008, 0x829: 0x0008,
951 0x82a: 0x0008, 0x82b: 0x0008, 0x82c: 0x0008, 0x82d: 0x0008, 0x82e: 0x0008, 0x82f: 0x0008,
952 0x830: 0x0040, 0x831: 0x0040, 0x832: 0x0040, 0x833: 0x0040, 0x834: 0x0040, 0x835: 0x0040,
953 0x836: 0x0040, 0x837: 0x0040, 0x838: 0x0018, 0x839: 0x0018, 0x83a: 0x0018, 0x83b: 0x0018,
954 0x83c: 0x0018, 0x83d: 0x0018, 0x83e: 0x0018, 0x83f: 0x0018,
955 // Block 0x21, offset 0x840
956 0x840: 0x0008, 0x841: 0x3308, 0x842: 0x3008, 0x843: 0x3008, 0x844: 0x0040, 0x845: 0x0008,
957 0x846: 0x0008, 0x847: 0x0008, 0x848: 0x0008, 0x849: 0x0008, 0x84a: 0x0008, 0x84b: 0x0008,
958 0x84c: 0x0008, 0x84d: 0x0040, 0x84e: 0x0008, 0x84f: 0x0008, 0x850: 0x0008, 0x851: 0x0040,
959 0x852: 0x0008, 0x853: 0x0008, 0x854: 0x0008, 0x855: 0x0008, 0x856: 0x0008, 0x857: 0x0008,
960 0x858: 0x0008, 0x859: 0x0008, 0x85a: 0x0008, 0x85b: 0x0008, 0x85c: 0x0008, 0x85d: 0x0008,
961 0x85e: 0x0008, 0x85f: 0x0008, 0x860: 0x0008, 0x861: 0x0008, 0x862: 0x0008, 0x863: 0x0008,
962 0x864: 0x0008, 0x865: 0x0008, 0x866: 0x0008, 0x867: 0x0008, 0x868: 0x0008, 0x869: 0x0040,
963 0x86a: 0x0008, 0x86b: 0x0008, 0x86c: 0x0008, 0x86d: 0x0008, 0x86e: 0x0008, 0x86f: 0x0008,
964 0x870: 0x0008, 0x871: 0x0008, 0x872: 0x0008, 0x873: 0x0008, 0x874: 0x0040, 0x875: 0x0008,
965 0x876: 0x0008, 0x877: 0x0008, 0x878: 0x0008, 0x879: 0x0008, 0x87a: 0x0040, 0x87b: 0x0040,
966 0x87c: 0x3308, 0x87d: 0x0008, 0x87e: 0x3008, 0x87f: 0x3308,
967 // Block 0x22, offset 0x880
968 0x880: 0x3008, 0x881: 0x3008, 0x882: 0x3008, 0x883: 0x3008, 0x884: 0x3008, 0x885: 0x0040,
969 0x886: 0x3308, 0x887: 0x3008, 0x888: 0x3008, 0x889: 0x0040, 0x88a: 0x3008, 0x88b: 0x3008,
970 0x88c: 0x3308, 0x88d: 0x3b08, 0x88e: 0x0040, 0x88f: 0x0040, 0x890: 0x0040, 0x891: 0x0040,
971 0x892: 0x0040, 0x893: 0x0040, 0x894: 0x0040, 0x895: 0x3008, 0x896: 0x3008, 0x897: 0x0040,
972 0x898: 0x0040, 0x899: 0x0040, 0x89a: 0x0040, 0x89b: 0x0040, 0x89c: 0x0040, 0x89d: 0x0040,
973 0x89e: 0x0008, 0x89f: 0x0040, 0x8a0: 0x0008, 0x8a1: 0x0008, 0x8a2: 0x3308, 0x8a3: 0x3308,
974 0x8a4: 0x0040, 0x8a5: 0x0040, 0x8a6: 0x0008, 0x8a7: 0x0008, 0x8a8: 0x0008, 0x8a9: 0x0008,
975 0x8aa: 0x0008, 0x8ab: 0x0008, 0x8ac: 0x0008, 0x8ad: 0x0008, 0x8ae: 0x0008, 0x8af: 0x0008,
976 0x8b0: 0x0040, 0x8b1: 0x0008, 0x8b2: 0x0008, 0x8b3: 0x0040, 0x8b4: 0x0040, 0x8b5: 0x0040,
977 0x8b6: 0x0040, 0x8b7: 0x0040, 0x8b8: 0x0040, 0x8b9: 0x0040, 0x8ba: 0x0040, 0x8bb: 0x0040,
978 0x8bc: 0x0040, 0x8bd: 0x0040, 0x8be: 0x0040, 0x8bf: 0x0040,
979 // Block 0x23, offset 0x8c0
980 0x8c0: 0x3008, 0x8c1: 0x3308, 0x8c2: 0x3308, 0x8c3: 0x3308, 0x8c4: 0x3308, 0x8c5: 0x0040,
981 0x8c6: 0x3008, 0x8c7: 0x3008, 0x8c8: 0x3008, 0x8c9: 0x0040, 0x8ca: 0x3008, 0x8cb: 0x3008,
982 0x8cc: 0x3008, 0x8cd: 0x3b08, 0x8ce: 0x0008, 0x8cf: 0x0018, 0x8d0: 0x0040, 0x8d1: 0x0040,
983 0x8d2: 0x0040, 0x8d3: 0x0040, 0x8d4: 0x0008, 0x8d5: 0x0008, 0x8d6: 0x0008, 0x8d7: 0x3008,
984 0x8d8: 0x0018, 0x8d9: 0x0018, 0x8da: 0x0018, 0x8db: 0x0018, 0x8dc: 0x0018, 0x8dd: 0x0018,
985 0x8de: 0x0018, 0x8df: 0x0008, 0x8e0: 0x0008, 0x8e1: 0x0008, 0x8e2: 0x3308, 0x8e3: 0x3308,
986 0x8e4: 0x0040, 0x8e5: 0x0040, 0x8e6: 0x0008, 0x8e7: 0x0008, 0x8e8: 0x0008, 0x8e9: 0x0008,
987 0x8ea: 0x0008, 0x8eb: 0x0008, 0x8ec: 0x0008, 0x8ed: 0x0008, 0x8ee: 0x0008, 0x8ef: 0x0008,
988 0x8f0: 0x0018, 0x8f1: 0x0018, 0x8f2: 0x0018, 0x8f3: 0x0018, 0x8f4: 0x0018, 0x8f5: 0x0018,
989 0x8f6: 0x0018, 0x8f7: 0x0018, 0x8f8: 0x0018, 0x8f9: 0x0018, 0x8fa: 0x0008, 0x8fb: 0x0008,
990 0x8fc: 0x0008, 0x8fd: 0x0008, 0x8fe: 0x0008, 0x8ff: 0x0008,
991 // Block 0x24, offset 0x900
992 0x900: 0x0040, 0x901: 0x0008, 0x902: 0x0008, 0x903: 0x0040, 0x904: 0x0008, 0x905: 0x0040,
993 0x906: 0x0040, 0x907: 0x0008, 0x908: 0x0008, 0x909: 0x0040, 0x90a: 0x0008, 0x90b: 0x0040,
994 0x90c: 0x0040, 0x90d: 0x0008, 0x90e: 0x0040, 0x90f: 0x0040, 0x910: 0x0040, 0x911: 0x0040,
995 0x912: 0x0040, 0x913: 0x0040, 0x914: 0x0008, 0x915: 0x0008, 0x916: 0x0008, 0x917: 0x0008,
996 0x918: 0x0040, 0x919: 0x0008, 0x91a: 0x0008, 0x91b: 0x0008, 0x91c: 0x0008, 0x91d: 0x0008,
997 0x91e: 0x0008, 0x91f: 0x0008, 0x920: 0x0040, 0x921: 0x0008, 0x922: 0x0008, 0x923: 0x0008,
998 0x924: 0x0040, 0x925: 0x0008, 0x926: 0x0040, 0x927: 0x0008, 0x928: 0x0040, 0x929: 0x0040,
999 0x92a: 0x0008, 0x92b: 0x0008, 0x92c: 0x0040, 0x92d: 0x0008, 0x92e: 0x0008, 0x92f: 0x0008,
1000 0x930: 0x0008, 0x931: 0x3308, 0x932: 0x0008, 0x933: 0x0929, 0x934: 0x3308, 0x935: 0x3308,
1001 0x936: 0x3308, 0x937: 0x3308, 0x938: 0x3308, 0x939: 0x3308, 0x93a: 0x0040, 0x93b: 0x3308,
1002 0x93c: 0x3308, 0x93d: 0x0008, 0x93e: 0x0040, 0x93f: 0x0040,
1003 // Block 0x25, offset 0x940
1004 0x940: 0x0008, 0x941: 0x0008, 0x942: 0x0008, 0x943: 0x09d1, 0x944: 0x0008, 0x945: 0x0008,
1005 0x946: 0x0008, 0x947: 0x0008, 0x948: 0x0040, 0x949: 0x0008, 0x94a: 0x0008, 0x94b: 0x0008,
1006 0x94c: 0x0008, 0x94d: 0x0a09, 0x94e: 0x0008, 0x94f: 0x0008, 0x950: 0x0008, 0x951: 0x0008,
1007 0x952: 0x0a41, 0x953: 0x0008, 0x954: 0x0008, 0x955: 0x0008, 0x956: 0x0008, 0x957: 0x0a79,
1008 0x958: 0x0008, 0x959: 0x0008, 0x95a: 0x0008, 0x95b: 0x0008, 0x95c: 0x0ab1, 0x95d: 0x0008,
1009 0x95e: 0x0008, 0x95f: 0x0008, 0x960: 0x0008, 0x961: 0x0008, 0x962: 0x0008, 0x963: 0x0008,
1010 0x964: 0x0008, 0x965: 0x0008, 0x966: 0x0008, 0x967: 0x0008, 0x968: 0x0008, 0x969: 0x0ae9,
1011 0x96a: 0x0008, 0x96b: 0x0008, 0x96c: 0x0008, 0x96d: 0x0040, 0x96e: 0x0040, 0x96f: 0x0040,
1012 0x970: 0x0040, 0x971: 0x3308, 0x972: 0x3308, 0x973: 0x0b21, 0x974: 0x3308, 0x975: 0x0b59,
1013 0x976: 0x0b91, 0x977: 0x0bc9, 0x978: 0x0c19, 0x979: 0x0c51, 0x97a: 0x3308, 0x97b: 0x3308,
1014 0x97c: 0x3308, 0x97d: 0x3308, 0x97e: 0x3308, 0x97f: 0x3008,
1015 // Block 0x26, offset 0x980
1016 0x980: 0x3308, 0x981: 0x0ca1, 0x982: 0x3308, 0x983: 0x3308, 0x984: 0x3b08, 0x985: 0x0018,
1017 0x986: 0x3308, 0x987: 0x3308, 0x988: 0x0008, 0x989: 0x0008, 0x98a: 0x0008, 0x98b: 0x0008,
1018 0x98c: 0x0008, 0x98d: 0x3308, 0x98e: 0x3308, 0x98f: 0x3308, 0x990: 0x3308, 0x991: 0x3308,
1019 0x992: 0x3308, 0x993: 0x0cd9, 0x994: 0x3308, 0x995: 0x3308, 0x996: 0x3308, 0x997: 0x3308,
1020 0x998: 0x0040, 0x999: 0x3308, 0x99a: 0x3308, 0x99b: 0x3308, 0x99c: 0x3308, 0x99d: 0x0d11,
1021 0x99e: 0x3308, 0x99f: 0x3308, 0x9a0: 0x3308, 0x9a1: 0x3308, 0x9a2: 0x0d49, 0x9a3: 0x3308,
1022 0x9a4: 0x3308, 0x9a5: 0x3308, 0x9a6: 0x3308, 0x9a7: 0x0d81, 0x9a8: 0x3308, 0x9a9: 0x3308,
1023 0x9aa: 0x3308, 0x9ab: 0x3308, 0x9ac: 0x0db9, 0x9ad: 0x3308, 0x9ae: 0x3308, 0x9af: 0x3308,
1024 0x9b0: 0x3308, 0x9b1: 0x3308, 0x9b2: 0x3308, 0x9b3: 0x3308, 0x9b4: 0x3308, 0x9b5: 0x3308,
1025 0x9b6: 0x3308, 0x9b7: 0x3308, 0x9b8: 0x3308, 0x9b9: 0x0df1, 0x9ba: 0x3308, 0x9bb: 0x3308,
1026 0x9bc: 0x3308, 0x9bd: 0x0040, 0x9be: 0x0018, 0x9bf: 0x0018,
1027 // Block 0x27, offset 0x9c0
1028 0x9c0: 0x0008, 0x9c1: 0x0008, 0x9c2: 0x0008, 0x9c3: 0x0008, 0x9c4: 0x0008, 0x9c5: 0x0008,
1029 0x9c6: 0x0008, 0x9c7: 0x0008, 0x9c8: 0x0008, 0x9c9: 0x0008, 0x9ca: 0x0008, 0x9cb: 0x0008,
1030 0x9cc: 0x0008, 0x9cd: 0x0008, 0x9ce: 0x0008, 0x9cf: 0x0008, 0x9d0: 0x0008, 0x9d1: 0x0008,
1031 0x9d2: 0x0008, 0x9d3: 0x0008, 0x9d4: 0x0008, 0x9d5: 0x0008, 0x9d6: 0x0008, 0x9d7: 0x0008,
1032 0x9d8: 0x0008, 0x9d9: 0x0008, 0x9da: 0x0008, 0x9db: 0x0008, 0x9dc: 0x0008, 0x9dd: 0x0008,
1033 0x9de: 0x0008, 0x9df: 0x0008, 0x9e0: 0x0008, 0x9e1: 0x0008, 0x9e2: 0x0008, 0x9e3: 0x0008,
1034 0x9e4: 0x0008, 0x9e5: 0x0008, 0x9e6: 0x0008, 0x9e7: 0x0008, 0x9e8: 0x0008, 0x9e9: 0x0008,
1035 0x9ea: 0x0008, 0x9eb: 0x0008, 0x9ec: 0x0039, 0x9ed: 0x0ed1, 0x9ee: 0x0ee9, 0x9ef: 0x0008,
1036 0x9f0: 0x0ef9, 0x9f1: 0x0f09, 0x9f2: 0x0f19, 0x9f3: 0x0f31, 0x9f4: 0x0249, 0x9f5: 0x0f41,
1037 0x9f6: 0x0259, 0x9f7: 0x0f51, 0x9f8: 0x0359, 0x9f9: 0x0f61, 0x9fa: 0x0f71, 0x9fb: 0x0008,
1038 0x9fc: 0x00d9, 0x9fd: 0x0f81, 0x9fe: 0x0f99, 0x9ff: 0x0269,
1039 // Block 0x28, offset 0xa00
1040 0xa00: 0x0fa9, 0xa01: 0x0fb9, 0xa02: 0x0279, 0xa03: 0x0039, 0xa04: 0x0fc9, 0xa05: 0x0fe1,
1041 0xa06: 0x059d, 0xa07: 0x0ee9, 0xa08: 0x0ef9, 0xa09: 0x0f09, 0xa0a: 0x0ff9, 0xa0b: 0x1011,
1042 0xa0c: 0x1029, 0xa0d: 0x0f31, 0xa0e: 0x0008, 0xa0f: 0x0f51, 0xa10: 0x0f61, 0xa11: 0x1041,
1043 0xa12: 0x00d9, 0xa13: 0x1059, 0xa14: 0x05b5, 0xa15: 0x05b5, 0xa16: 0x0f99, 0xa17: 0x0fa9,
1044 0xa18: 0x0fb9, 0xa19: 0x059d, 0xa1a: 0x1071, 0xa1b: 0x1089, 0xa1c: 0x05cd, 0xa1d: 0x1099,
1045 0xa1e: 0x10b1, 0xa1f: 0x10c9, 0xa20: 0x10e1, 0xa21: 0x10f9, 0xa22: 0x0f41, 0xa23: 0x0269,
1046 0xa24: 0x0fb9, 0xa25: 0x1089, 0xa26: 0x1099, 0xa27: 0x10b1, 0xa28: 0x1111, 0xa29: 0x10e1,
1047 0xa2a: 0x10f9, 0xa2b: 0x0008, 0xa2c: 0x0008, 0xa2d: 0x0008, 0xa2e: 0x0008, 0xa2f: 0x0008,
1048 0xa30: 0x0008, 0xa31: 0x0008, 0xa32: 0x0008, 0xa33: 0x0008, 0xa34: 0x0008, 0xa35: 0x0008,
1049 0xa36: 0x0008, 0xa37: 0x0008, 0xa38: 0x1129, 0xa39: 0x0008, 0xa3a: 0x0008, 0xa3b: 0x0008,
1050 0xa3c: 0x0008, 0xa3d: 0x0008, 0xa3e: 0x0008, 0xa3f: 0x0008,
1051 // Block 0x29, offset 0xa40
1052 0xa40: 0x0008, 0xa41: 0x0008, 0xa42: 0x0008, 0xa43: 0x0008, 0xa44: 0x0008, 0xa45: 0x0008,
1053 0xa46: 0x0008, 0xa47: 0x0008, 0xa48: 0x0008, 0xa49: 0x0008, 0xa4a: 0x0008, 0xa4b: 0x0008,
1054 0xa4c: 0x0008, 0xa4d: 0x0008, 0xa4e: 0x0008, 0xa4f: 0x0008, 0xa50: 0x0008, 0xa51: 0x0008,
1055 0xa52: 0x0008, 0xa53: 0x0008, 0xa54: 0x0008, 0xa55: 0x0008, 0xa56: 0x0008, 0xa57: 0x0008,
1056 0xa58: 0x0008, 0xa59: 0x0008, 0xa5a: 0x0008, 0xa5b: 0x1141, 0xa5c: 0x1159, 0xa5d: 0x1169,
1057 0xa5e: 0x1181, 0xa5f: 0x1029, 0xa60: 0x1199, 0xa61: 0x11a9, 0xa62: 0x11c1, 0xa63: 0x11d9,
1058 0xa64: 0x11f1, 0xa65: 0x1209, 0xa66: 0x1221, 0xa67: 0x05e5, 0xa68: 0x1239, 0xa69: 0x1251,
1059 0xa6a: 0xe17d, 0xa6b: 0x1269, 0xa6c: 0x1281, 0xa6d: 0x1299, 0xa6e: 0x12b1, 0xa6f: 0x12c9,
1060 0xa70: 0x12e1, 0xa71: 0x12f9, 0xa72: 0x1311, 0xa73: 0x1329, 0xa74: 0x1341, 0xa75: 0x1359,
1061 0xa76: 0x1371, 0xa77: 0x1389, 0xa78: 0x05fd, 0xa79: 0x13a1, 0xa7a: 0x13b9, 0xa7b: 0x13d1,
1062 0xa7c: 0x13e1, 0xa7d: 0x13f9, 0xa7e: 0x1411, 0xa7f: 0x1429,
1063 // Block 0x2a, offset 0xa80
1064 0xa80: 0xe00d, 0xa81: 0x0008, 0xa82: 0xe00d, 0xa83: 0x0008, 0xa84: 0xe00d, 0xa85: 0x0008,
1065 0xa86: 0xe00d, 0xa87: 0x0008, 0xa88: 0xe00d, 0xa89: 0x0008, 0xa8a: 0xe00d, 0xa8b: 0x0008,
1066 0xa8c: 0xe00d, 0xa8d: 0x0008, 0xa8e: 0xe00d, 0xa8f: 0x0008, 0xa90: 0xe00d, 0xa91: 0x0008,
1067 0xa92: 0xe00d, 0xa93: 0x0008, 0xa94: 0xe00d, 0xa95: 0x0008, 0xa96: 0xe00d, 0xa97: 0x0008,
1068 0xa98: 0xe00d, 0xa99: 0x0008, 0xa9a: 0xe00d, 0xa9b: 0x0008, 0xa9c: 0xe00d, 0xa9d: 0x0008,
1069 0xa9e: 0xe00d, 0xa9f: 0x0008, 0xaa0: 0xe00d, 0xaa1: 0x0008, 0xaa2: 0xe00d, 0xaa3: 0x0008,
1070 0xaa4: 0xe00d, 0xaa5: 0x0008, 0xaa6: 0xe00d, 0xaa7: 0x0008, 0xaa8: 0xe00d, 0xaa9: 0x0008,
1071 0xaaa: 0xe00d, 0xaab: 0x0008, 0xaac: 0xe00d, 0xaad: 0x0008, 0xaae: 0xe00d, 0xaaf: 0x0008,
1072 0xab0: 0xe00d, 0xab1: 0x0008, 0xab2: 0xe00d, 0xab3: 0x0008, 0xab4: 0xe00d, 0xab5: 0x0008,
1073 0xab6: 0xe00d, 0xab7: 0x0008, 0xab8: 0xe00d, 0xab9: 0x0008, 0xaba: 0xe00d, 0xabb: 0x0008,
1074 0xabc: 0xe00d, 0xabd: 0x0008, 0xabe: 0xe00d, 0xabf: 0x0008,
1075 // Block 0x2b, offset 0xac0
1076 0xac0: 0xe00d, 0xac1: 0x0008, 0xac2: 0xe00d, 0xac3: 0x0008, 0xac4: 0xe00d, 0xac5: 0x0008,
1077 0xac6: 0xe00d, 0xac7: 0x0008, 0xac8: 0xe00d, 0xac9: 0x0008, 0xaca: 0xe00d, 0xacb: 0x0008,
1078 0xacc: 0xe00d, 0xacd: 0x0008, 0xace: 0xe00d, 0xacf: 0x0008, 0xad0: 0xe00d, 0xad1: 0x0008,
1079 0xad2: 0xe00d, 0xad3: 0x0008, 0xad4: 0xe00d, 0xad5: 0x0008, 0xad6: 0x0008, 0xad7: 0x0008,
1080 0xad8: 0x0008, 0xad9: 0x0008, 0xada: 0x0615, 0xadb: 0x0635, 0xadc: 0x0008, 0xadd: 0x0008,
1081 0xade: 0x1441, 0xadf: 0x0008, 0xae0: 0xe00d, 0xae1: 0x0008, 0xae2: 0xe00d, 0xae3: 0x0008,
1082 0xae4: 0xe00d, 0xae5: 0x0008, 0xae6: 0xe00d, 0xae7: 0x0008, 0xae8: 0xe00d, 0xae9: 0x0008,
1083 0xaea: 0xe00d, 0xaeb: 0x0008, 0xaec: 0xe00d, 0xaed: 0x0008, 0xaee: 0xe00d, 0xaef: 0x0008,
1084 0xaf0: 0xe00d, 0xaf1: 0x0008, 0xaf2: 0xe00d, 0xaf3: 0x0008, 0xaf4: 0xe00d, 0xaf5: 0x0008,
1085 0xaf6: 0xe00d, 0xaf7: 0x0008, 0xaf8: 0xe00d, 0xaf9: 0x0008, 0xafa: 0xe00d, 0xafb: 0x0008,
1086 0xafc: 0xe00d, 0xafd: 0x0008, 0xafe: 0xe00d, 0xaff: 0x0008,
1087 // Block 0x2c, offset 0xb00
1088 0xb00: 0x0008, 0xb01: 0x0008, 0xb02: 0x0008, 0xb03: 0x0008, 0xb04: 0x0008, 0xb05: 0x0008,
1089 0xb06: 0x0040, 0xb07: 0x0040, 0xb08: 0xe045, 0xb09: 0xe045, 0xb0a: 0xe045, 0xb0b: 0xe045,
1090 0xb0c: 0xe045, 0xb0d: 0xe045, 0xb0e: 0x0040, 0xb0f: 0x0040, 0xb10: 0x0008, 0xb11: 0x0008,
1091 0xb12: 0x0008, 0xb13: 0x0008, 0xb14: 0x0008, 0xb15: 0x0008, 0xb16: 0x0008, 0xb17: 0x0008,
1092 0xb18: 0x0040, 0xb19: 0xe045, 0xb1a: 0x0040, 0xb1b: 0xe045, 0xb1c: 0x0040, 0xb1d: 0xe045,
1093 0xb1e: 0x0040, 0xb1f: 0xe045, 0xb20: 0x0008, 0xb21: 0x0008, 0xb22: 0x0008, 0xb23: 0x0008,
1094 0xb24: 0x0008, 0xb25: 0x0008, 0xb26: 0x0008, 0xb27: 0x0008, 0xb28: 0xe045, 0xb29: 0xe045,
1095 0xb2a: 0xe045, 0xb2b: 0xe045, 0xb2c: 0xe045, 0xb2d: 0xe045, 0xb2e: 0xe045, 0xb2f: 0xe045,
1096 0xb30: 0x0008, 0xb31: 0x1459, 0xb32: 0x0008, 0xb33: 0x1471, 0xb34: 0x0008, 0xb35: 0x1489,
1097 0xb36: 0x0008, 0xb37: 0x14a1, 0xb38: 0x0008, 0xb39: 0x14b9, 0xb3a: 0x0008, 0xb3b: 0x14d1,
1098 0xb3c: 0x0008, 0xb3d: 0x14e9, 0xb3e: 0x0040, 0xb3f: 0x0040,
1099 // Block 0x2d, offset 0xb40
1100 0xb40: 0x1501, 0xb41: 0x1531, 0xb42: 0x1561, 0xb43: 0x1591, 0xb44: 0x15c1, 0xb45: 0x15f1,
1101 0xb46: 0x1621, 0xb47: 0x1651, 0xb48: 0x1501, 0xb49: 0x1531, 0xb4a: 0x1561, 0xb4b: 0x1591,
1102 0xb4c: 0x15c1, 0xb4d: 0x15f1, 0xb4e: 0x1621, 0xb4f: 0x1651, 0xb50: 0x1681, 0xb51: 0x16b1,
1103 0xb52: 0x16e1, 0xb53: 0x1711, 0xb54: 0x1741, 0xb55: 0x1771, 0xb56: 0x17a1, 0xb57: 0x17d1,
1104 0xb58: 0x1681, 0xb59: 0x16b1, 0xb5a: 0x16e1, 0xb5b: 0x1711, 0xb5c: 0x1741, 0xb5d: 0x1771,
1105 0xb5e: 0x17a1, 0xb5f: 0x17d1, 0xb60: 0x1801, 0xb61: 0x1831, 0xb62: 0x1861, 0xb63: 0x1891,
1106 0xb64: 0x18c1, 0xb65: 0x18f1, 0xb66: 0x1921, 0xb67: 0x1951, 0xb68: 0x1801, 0xb69: 0x1831,
1107 0xb6a: 0x1861, 0xb6b: 0x1891, 0xb6c: 0x18c1, 0xb6d: 0x18f1, 0xb6e: 0x1921, 0xb6f: 0x1951,
1108 0xb70: 0x0008, 0xb71: 0x0008, 0xb72: 0x1981, 0xb73: 0x19b1, 0xb74: 0x19d9, 0xb75: 0x0040,
1109 0xb76: 0x0008, 0xb77: 0x1a01, 0xb78: 0xe045, 0xb79: 0xe045, 0xb7a: 0x064d, 0xb7b: 0x1459,
1110 0xb7c: 0x19b1, 0xb7d: 0x0666, 0xb7e: 0x1a31, 0xb7f: 0x0686,
1111 // Block 0x2e, offset 0xb80
1112 0xb80: 0x06a6, 0xb81: 0x1a4a, 0xb82: 0x1a79, 0xb83: 0x1aa9, 0xb84: 0x1ad1, 0xb85: 0x0040,
1113 0xb86: 0x0008, 0xb87: 0x1af9, 0xb88: 0x06c5, 0xb89: 0x1471, 0xb8a: 0x06dd, 0xb8b: 0x1489,
1114 0xb8c: 0x1aa9, 0xb8d: 0x1b2a, 0xb8e: 0x1b5a, 0xb8f: 0x1b8a, 0xb90: 0x0008, 0xb91: 0x0008,
1115 0xb92: 0x0008, 0xb93: 0x1bb9, 0xb94: 0x0040, 0xb95: 0x0040, 0xb96: 0x0008, 0xb97: 0x0008,
1116 0xb98: 0xe045, 0xb99: 0xe045, 0xb9a: 0x06f5, 0xb9b: 0x14a1, 0xb9c: 0x0040, 0xb9d: 0x1bd2,
1117 0xb9e: 0x1c02, 0xb9f: 0x1c32, 0xba0: 0x0008, 0xba1: 0x0008, 0xba2: 0x0008, 0xba3: 0x1c61,
1118 0xba4: 0x0008, 0xba5: 0x0008, 0xba6: 0x0008, 0xba7: 0x0008, 0xba8: 0xe045, 0xba9: 0xe045,
1119 0xbaa: 0x070d, 0xbab: 0x14d1, 0xbac: 0xe04d, 0xbad: 0x1c7a, 0xbae: 0x03d2, 0xbaf: 0x1caa,
1120 0xbb0: 0x0040, 0xbb1: 0x0040, 0xbb2: 0x1cb9, 0xbb3: 0x1ce9, 0xbb4: 0x1d11, 0xbb5: 0x0040,
1121 0xbb6: 0x0008, 0xbb7: 0x1d39, 0xbb8: 0x0725, 0xbb9: 0x14b9, 0xbba: 0x0515, 0xbbb: 0x14e9,
1122 0xbbc: 0x1ce9, 0xbbd: 0x073e, 0xbbe: 0x075e, 0xbbf: 0x0040,
1123 // Block 0x2f, offset 0xbc0
1124 0xbc0: 0x000a, 0xbc1: 0x000a, 0xbc2: 0x000a, 0xbc3: 0x000a, 0xbc4: 0x000a, 0xbc5: 0x000a,
1125 0xbc6: 0x000a, 0xbc7: 0x000a, 0xbc8: 0x000a, 0xbc9: 0x000a, 0xbca: 0x000a, 0xbcb: 0x03c0,
1126 0xbcc: 0x0003, 0xbcd: 0x0003, 0xbce: 0x0340, 0xbcf: 0x0b40, 0xbd0: 0x0018, 0xbd1: 0xe00d,
1127 0xbd2: 0x0018, 0xbd3: 0x0018, 0xbd4: 0x0018, 0xbd5: 0x0018, 0xbd6: 0x0018, 0xbd7: 0x077e,
1128 0xbd8: 0x0018, 0xbd9: 0x0018, 0xbda: 0x0018, 0xbdb: 0x0018, 0xbdc: 0x0018, 0xbdd: 0x0018,
1129 0xbde: 0x0018, 0xbdf: 0x0018, 0xbe0: 0x0018, 0xbe1: 0x0018, 0xbe2: 0x0018, 0xbe3: 0x0018,
1130 0xbe4: 0x0040, 0xbe5: 0x0040, 0xbe6: 0x0040, 0xbe7: 0x0018, 0xbe8: 0x0040, 0xbe9: 0x0040,
1131 0xbea: 0x0340, 0xbeb: 0x0340, 0xbec: 0x0340, 0xbed: 0x0340, 0xbee: 0x0340, 0xbef: 0x000a,
1132 0xbf0: 0x0018, 0xbf1: 0x0018, 0xbf2: 0x0018, 0xbf3: 0x1d69, 0xbf4: 0x1da1, 0xbf5: 0x0018,
1133 0xbf6: 0x1df1, 0xbf7: 0x1e29, 0xbf8: 0x0018, 0xbf9: 0x0018, 0xbfa: 0x0018, 0xbfb: 0x0018,
1134 0xbfc: 0x1e7a, 0xbfd: 0x0018, 0xbfe: 0x079e, 0xbff: 0x0018,
1135 // Block 0x30, offset 0xc00
1136 0xc00: 0x0018, 0xc01: 0x0018, 0xc02: 0x0018, 0xc03: 0x0018, 0xc04: 0x0018, 0xc05: 0x0018,
1137 0xc06: 0x0018, 0xc07: 0x1e92, 0xc08: 0x1eaa, 0xc09: 0x1ec2, 0xc0a: 0x0018, 0xc0b: 0x0018,
1138 0xc0c: 0x0018, 0xc0d: 0x0018, 0xc0e: 0x0018, 0xc0f: 0x0018, 0xc10: 0x0018, 0xc11: 0x0018,
1139 0xc12: 0x0018, 0xc13: 0x0018, 0xc14: 0x0018, 0xc15: 0x0018, 0xc16: 0x0018, 0xc17: 0x1ed9,
1140 0xc18: 0x0018, 0xc19: 0x0018, 0xc1a: 0x0018, 0xc1b: 0x0018, 0xc1c: 0x0018, 0xc1d: 0x0018,
1141 0xc1e: 0x0018, 0xc1f: 0x000a, 0xc20: 0x03c0, 0xc21: 0x0340, 0xc22: 0x0340, 0xc23: 0x0340,
1142 0xc24: 0x03c0, 0xc25: 0x0040, 0xc26: 0x0040, 0xc27: 0x0040, 0xc28: 0x0040, 0xc29: 0x0040,
1143 0xc2a: 0x0340, 0xc2b: 0x0340, 0xc2c: 0x0340, 0xc2d: 0x0340, 0xc2e: 0x0340, 0xc2f: 0x0340,
1144 0xc30: 0x1f41, 0xc31: 0x0f41, 0xc32: 0x0040, 0xc33: 0x0040, 0xc34: 0x1f51, 0xc35: 0x1f61,
1145 0xc36: 0x1f71, 0xc37: 0x1f81, 0xc38: 0x1f91, 0xc39: 0x1fa1, 0xc3a: 0x1fb2, 0xc3b: 0x07bd,
1146 0xc3c: 0x1fc2, 0xc3d: 0x1fd2, 0xc3e: 0x1fe2, 0xc3f: 0x0f71,
1147 // Block 0x31, offset 0xc40
1148 0xc40: 0x1f41, 0xc41: 0x00c9, 0xc42: 0x0069, 0xc43: 0x0079, 0xc44: 0x1f51, 0xc45: 0x1f61,
1149 0xc46: 0x1f71, 0xc47: 0x1f81, 0xc48: 0x1f91, 0xc49: 0x1fa1, 0xc4a: 0x1fb2, 0xc4b: 0x07d5,
1150 0xc4c: 0x1fc2, 0xc4d: 0x1fd2, 0xc4e: 0x1fe2, 0xc4f: 0x0040, 0xc50: 0x0039, 0xc51: 0x0f09,
1151 0xc52: 0x00d9, 0xc53: 0x0369, 0xc54: 0x0ff9, 0xc55: 0x0249, 0xc56: 0x0f51, 0xc57: 0x0359,
1152 0xc58: 0x0f61, 0xc59: 0x0f71, 0xc5a: 0x0f99, 0xc5b: 0x01d9, 0xc5c: 0x0fa9, 0xc5d: 0x0040,
1153 0xc5e: 0x0040, 0xc5f: 0x0040, 0xc60: 0x0018, 0xc61: 0x0018, 0xc62: 0x0018, 0xc63: 0x0018,
1154 0xc64: 0x0018, 0xc65: 0x0018, 0xc66: 0x0018, 0xc67: 0x0018, 0xc68: 0x1ff1, 0xc69: 0x0018,
1155 0xc6a: 0x0018, 0xc6b: 0x0018, 0xc6c: 0x0018, 0xc6d: 0x0018, 0xc6e: 0x0018, 0xc6f: 0x0018,
1156 0xc70: 0x0018, 0xc71: 0x0018, 0xc72: 0x0018, 0xc73: 0x0018, 0xc74: 0x0018, 0xc75: 0x0018,
1157 0xc76: 0x0018, 0xc77: 0x0018, 0xc78: 0x0018, 0xc79: 0x0018, 0xc7a: 0x0018, 0xc7b: 0x0018,
1158 0xc7c: 0x0018, 0xc7d: 0x0018, 0xc7e: 0x0018, 0xc7f: 0x0018,
1159 // Block 0x32, offset 0xc80
1160 0xc80: 0x07ee, 0xc81: 0x080e, 0xc82: 0x1159, 0xc83: 0x082d, 0xc84: 0x0018, 0xc85: 0x084e,
1161 0xc86: 0x086e, 0xc87: 0x1011, 0xc88: 0x0018, 0xc89: 0x088d, 0xc8a: 0x0f31, 0xc8b: 0x0249,
1162 0xc8c: 0x0249, 0xc8d: 0x0249, 0xc8e: 0x0249, 0xc8f: 0x2009, 0xc90: 0x0f41, 0xc91: 0x0f41,
1163 0xc92: 0x0359, 0xc93: 0x0359, 0xc94: 0x0018, 0xc95: 0x0f71, 0xc96: 0x2021, 0xc97: 0x0018,
1164 0xc98: 0x0018, 0xc99: 0x0f99, 0xc9a: 0x2039, 0xc9b: 0x0269, 0xc9c: 0x0269, 0xc9d: 0x0269,
1165 0xc9e: 0x0018, 0xc9f: 0x0018, 0xca0: 0x2049, 0xca1: 0x08ad, 0xca2: 0x2061, 0xca3: 0x0018,
1166 0xca4: 0x13d1, 0xca5: 0x0018, 0xca6: 0x2079, 0xca7: 0x0018, 0xca8: 0x13d1, 0xca9: 0x0018,
1167 0xcaa: 0x0f51, 0xcab: 0x2091, 0xcac: 0x0ee9, 0xcad: 0x1159, 0xcae: 0x0018, 0xcaf: 0x0f09,
1168 0xcb0: 0x0f09, 0xcb1: 0x1199, 0xcb2: 0x0040, 0xcb3: 0x0f61, 0xcb4: 0x00d9, 0xcb5: 0x20a9,
1169 0xcb6: 0x20c1, 0xcb7: 0x20d9, 0xcb8: 0x20f1, 0xcb9: 0x0f41, 0xcba: 0x0018, 0xcbb: 0x08cd,
1170 0xcbc: 0x2109, 0xcbd: 0x10b1, 0xcbe: 0x10b1, 0xcbf: 0x2109,
1171 // Block 0x33, offset 0xcc0
1172 0xcc0: 0x08ed, 0xcc1: 0x0018, 0xcc2: 0x0018, 0xcc3: 0x0018, 0xcc4: 0x0018, 0xcc5: 0x0ef9,
1173 0xcc6: 0x0ef9, 0xcc7: 0x0f09, 0xcc8: 0x0f41, 0xcc9: 0x0259, 0xcca: 0x0018, 0xccb: 0x0018,
1174 0xccc: 0x0018, 0xccd: 0x0018, 0xcce: 0x0008, 0xccf: 0x0018, 0xcd0: 0x2121, 0xcd1: 0x2151,
1175 0xcd2: 0x2181, 0xcd3: 0x21b9, 0xcd4: 0x21e9, 0xcd5: 0x2219, 0xcd6: 0x2249, 0xcd7: 0x2279,
1176 0xcd8: 0x22a9, 0xcd9: 0x22d9, 0xcda: 0x2309, 0xcdb: 0x2339, 0xcdc: 0x2369, 0xcdd: 0x2399,
1177 0xcde: 0x23c9, 0xcdf: 0x23f9, 0xce0: 0x0f41, 0xce1: 0x2421, 0xce2: 0x0905, 0xce3: 0x2439,
1178 0xce4: 0x1089, 0xce5: 0x2451, 0xce6: 0x0925, 0xce7: 0x2469, 0xce8: 0x2491, 0xce9: 0x0369,
1179 0xcea: 0x24a9, 0xceb: 0x0945, 0xcec: 0x0359, 0xced: 0x1159, 0xcee: 0x0ef9, 0xcef: 0x0f61,
1180 0xcf0: 0x0f41, 0xcf1: 0x2421, 0xcf2: 0x0965, 0xcf3: 0x2439, 0xcf4: 0x1089, 0xcf5: 0x2451,
1181 0xcf6: 0x0985, 0xcf7: 0x2469, 0xcf8: 0x2491, 0xcf9: 0x0369, 0xcfa: 0x24a9, 0xcfb: 0x09a5,
1182 0xcfc: 0x0359, 0xcfd: 0x1159, 0xcfe: 0x0ef9, 0xcff: 0x0f61,
1183 // Block 0x34, offset 0xd00
1184 0xd00: 0x0018, 0xd01: 0x0018, 0xd02: 0x0018, 0xd03: 0x0018, 0xd04: 0x0018, 0xd05: 0x0018,
1185 0xd06: 0x0018, 0xd07: 0x0018, 0xd08: 0x0018, 0xd09: 0x0018, 0xd0a: 0x0018, 0xd0b: 0x0040,
1186 0xd0c: 0x0040, 0xd0d: 0x0040, 0xd0e: 0x0040, 0xd0f: 0x0040, 0xd10: 0x0040, 0xd11: 0x0040,
1187 0xd12: 0x0040, 0xd13: 0x0040, 0xd14: 0x0040, 0xd15: 0x0040, 0xd16: 0x0040, 0xd17: 0x0040,
1188 0xd18: 0x0040, 0xd19: 0x0040, 0xd1a: 0x0040, 0xd1b: 0x0040, 0xd1c: 0x0040, 0xd1d: 0x0040,
1189 0xd1e: 0x0040, 0xd1f: 0x0040, 0xd20: 0x00c9, 0xd21: 0x0069, 0xd22: 0x0079, 0xd23: 0x1f51,
1190 0xd24: 0x1f61, 0xd25: 0x1f71, 0xd26: 0x1f81, 0xd27: 0x1f91, 0xd28: 0x1fa1, 0xd29: 0x2601,
1191 0xd2a: 0x2619, 0xd2b: 0x2631, 0xd2c: 0x2649, 0xd2d: 0x2661, 0xd2e: 0x2679, 0xd2f: 0x2691,
1192 0xd30: 0x26a9, 0xd31: 0x26c1, 0xd32: 0x26d9, 0xd33: 0x26f1, 0xd34: 0x0a06, 0xd35: 0x0a26,
1193 0xd36: 0x0a46, 0xd37: 0x0a66, 0xd38: 0x0a86, 0xd39: 0x0aa6, 0xd3a: 0x0ac6, 0xd3b: 0x0ae6,
1194 0xd3c: 0x0b06, 0xd3d: 0x270a, 0xd3e: 0x2732, 0xd3f: 0x275a,
1195 // Block 0x35, offset 0xd40
1196 0xd40: 0x2782, 0xd41: 0x27aa, 0xd42: 0x27d2, 0xd43: 0x27fa, 0xd44: 0x2822, 0xd45: 0x284a,
1197 0xd46: 0x2872, 0xd47: 0x289a, 0xd48: 0x0040, 0xd49: 0x0040, 0xd4a: 0x0040, 0xd4b: 0x0040,
1198 0xd4c: 0x0040, 0xd4d: 0x0040, 0xd4e: 0x0040, 0xd4f: 0x0040, 0xd50: 0x0040, 0xd51: 0x0040,
1199 0xd52: 0x0040, 0xd53: 0x0040, 0xd54: 0x0040, 0xd55: 0x0040, 0xd56: 0x0040, 0xd57: 0x0040,
1200 0xd58: 0x0040, 0xd59: 0x0040, 0xd5a: 0x0040, 0xd5b: 0x0040, 0xd5c: 0x0b26, 0xd5d: 0x0b46,
1201 0xd5e: 0x0b66, 0xd5f: 0x0b86, 0xd60: 0x0ba6, 0xd61: 0x0bc6, 0xd62: 0x0be6, 0xd63: 0x0c06,
1202 0xd64: 0x0c26, 0xd65: 0x0c46, 0xd66: 0x0c66, 0xd67: 0x0c86, 0xd68: 0x0ca6, 0xd69: 0x0cc6,
1203 0xd6a: 0x0ce6, 0xd6b: 0x0d06, 0xd6c: 0x0d26, 0xd6d: 0x0d46, 0xd6e: 0x0d66, 0xd6f: 0x0d86,
1204 0xd70: 0x0da6, 0xd71: 0x0dc6, 0xd72: 0x0de6, 0xd73: 0x0e06, 0xd74: 0x0e26, 0xd75: 0x0e46,
1205 0xd76: 0x0039, 0xd77: 0x0ee9, 0xd78: 0x1159, 0xd79: 0x0ef9, 0xd7a: 0x0f09, 0xd7b: 0x1199,
1206 0xd7c: 0x0f31, 0xd7d: 0x0249, 0xd7e: 0x0f41, 0xd7f: 0x0259,
1207 // Block 0x36, offset 0xd80
1208 0xd80: 0x0f51, 0xd81: 0x0359, 0xd82: 0x0f61, 0xd83: 0x0f71, 0xd84: 0x00d9, 0xd85: 0x0f99,
1209 0xd86: 0x2039, 0xd87: 0x0269, 0xd88: 0x01d9, 0xd89: 0x0fa9, 0xd8a: 0x0fb9, 0xd8b: 0x1089,
1210 0xd8c: 0x0279, 0xd8d: 0x0369, 0xd8e: 0x0289, 0xd8f: 0x13d1, 0xd90: 0x0039, 0xd91: 0x0ee9,
1211 0xd92: 0x1159, 0xd93: 0x0ef9, 0xd94: 0x0f09, 0xd95: 0x1199, 0xd96: 0x0f31, 0xd97: 0x0249,
1212 0xd98: 0x0f41, 0xd99: 0x0259, 0xd9a: 0x0f51, 0xd9b: 0x0359, 0xd9c: 0x0f61, 0xd9d: 0x0f71,
1213 0xd9e: 0x00d9, 0xd9f: 0x0f99, 0xda0: 0x2039, 0xda1: 0x0269, 0xda2: 0x01d9, 0xda3: 0x0fa9,
1214 0xda4: 0x0fb9, 0xda5: 0x1089, 0xda6: 0x0279, 0xda7: 0x0369, 0xda8: 0x0289, 0xda9: 0x13d1,
1215 0xdaa: 0x1f41, 0xdab: 0x0018, 0xdac: 0x0018, 0xdad: 0x0018, 0xdae: 0x0018, 0xdaf: 0x0018,
1216 0xdb0: 0x0018, 0xdb1: 0x0018, 0xdb2: 0x0018, 0xdb3: 0x0018, 0xdb4: 0x0018, 0xdb5: 0x0018,
1217 0xdb6: 0x0018, 0xdb7: 0x0018, 0xdb8: 0x0018, 0xdb9: 0x0018, 0xdba: 0x0018, 0xdbb: 0x0018,
1218 0xdbc: 0x0018, 0xdbd: 0x0018, 0xdbe: 0x0018, 0xdbf: 0x0018,
1219 // Block 0x37, offset 0xdc0
1220 0xdc0: 0x0008, 0xdc1: 0x0008, 0xdc2: 0x0008, 0xdc3: 0x0008, 0xdc4: 0x0008, 0xdc5: 0x0008,
1221 0xdc6: 0x0008, 0xdc7: 0x0008, 0xdc8: 0x0008, 0xdc9: 0x0008, 0xdca: 0x0008, 0xdcb: 0x0008,
1222 0xdcc: 0x0008, 0xdcd: 0x0008, 0xdce: 0x0008, 0xdcf: 0x0008, 0xdd0: 0x0008, 0xdd1: 0x0008,
1223 0xdd2: 0x0008, 0xdd3: 0x0008, 0xdd4: 0x0008, 0xdd5: 0x0008, 0xdd6: 0x0008, 0xdd7: 0x0008,
1224 0xdd8: 0x0008, 0xdd9: 0x0008, 0xdda: 0x0008, 0xddb: 0x0008, 0xddc: 0x0008, 0xddd: 0x0008,
1225 0xdde: 0x0008, 0xddf: 0x0040, 0xde0: 0xe00d, 0xde1: 0x0008, 0xde2: 0x2971, 0xde3: 0x0ebd,
1226 0xde4: 0x2989, 0xde5: 0x0008, 0xde6: 0x0008, 0xde7: 0xe07d, 0xde8: 0x0008, 0xde9: 0xe01d,
1227 0xdea: 0x0008, 0xdeb: 0xe03d, 0xdec: 0x0008, 0xded: 0x0fe1, 0xdee: 0x1281, 0xdef: 0x0fc9,
1228 0xdf0: 0x1141, 0xdf1: 0x0008, 0xdf2: 0xe00d, 0xdf3: 0x0008, 0xdf4: 0x0008, 0xdf5: 0xe01d,
1229 0xdf6: 0x0008, 0xdf7: 0x0008, 0xdf8: 0x0008, 0xdf9: 0x0008, 0xdfa: 0x0008, 0xdfb: 0x0008,
1230 0xdfc: 0x0259, 0xdfd: 0x1089, 0xdfe: 0x29a1, 0xdff: 0x29b9,
1231 // Block 0x38, offset 0xe00
1232 0xe00: 0xe00d, 0xe01: 0x0008, 0xe02: 0xe00d, 0xe03: 0x0008, 0xe04: 0xe00d, 0xe05: 0x0008,
1233 0xe06: 0xe00d, 0xe07: 0x0008, 0xe08: 0xe00d, 0xe09: 0x0008, 0xe0a: 0xe00d, 0xe0b: 0x0008,
1234 0xe0c: 0xe00d, 0xe0d: 0x0008, 0xe0e: 0xe00d, 0xe0f: 0x0008, 0xe10: 0xe00d, 0xe11: 0x0008,
1235 0xe12: 0xe00d, 0xe13: 0x0008, 0xe14: 0xe00d, 0xe15: 0x0008, 0xe16: 0xe00d, 0xe17: 0x0008,
1236 0xe18: 0xe00d, 0xe19: 0x0008, 0xe1a: 0xe00d, 0xe1b: 0x0008, 0xe1c: 0xe00d, 0xe1d: 0x0008,
1237 0xe1e: 0xe00d, 0xe1f: 0x0008, 0xe20: 0xe00d, 0xe21: 0x0008, 0xe22: 0xe00d, 0xe23: 0x0008,
1238 0xe24: 0x0008, 0xe25: 0x0018, 0xe26: 0x0018, 0xe27: 0x0018, 0xe28: 0x0018, 0xe29: 0x0018,
1239 0xe2a: 0x0018, 0xe2b: 0xe03d, 0xe2c: 0x0008, 0xe2d: 0xe01d, 0xe2e: 0x0008, 0xe2f: 0x3308,
1240 0xe30: 0x3308, 0xe31: 0x3308, 0xe32: 0xe00d, 0xe33: 0x0008, 0xe34: 0x0040, 0xe35: 0x0040,
1241 0xe36: 0x0040, 0xe37: 0x0040, 0xe38: 0x0040, 0xe39: 0x0018, 0xe3a: 0x0018, 0xe3b: 0x0018,
1242 0xe3c: 0x0018, 0xe3d: 0x0018, 0xe3e: 0x0018, 0xe3f: 0x0018,
1243 // Block 0x39, offset 0xe40
1244 0xe40: 0x26fd, 0xe41: 0x271d, 0xe42: 0x273d, 0xe43: 0x275d, 0xe44: 0x277d, 0xe45: 0x279d,
1245 0xe46: 0x27bd, 0xe47: 0x27dd, 0xe48: 0x27fd, 0xe49: 0x281d, 0xe4a: 0x283d, 0xe4b: 0x285d,
1246 0xe4c: 0x287d, 0xe4d: 0x289d, 0xe4e: 0x28bd, 0xe4f: 0x28dd, 0xe50: 0x28fd, 0xe51: 0x291d,
1247 0xe52: 0x293d, 0xe53: 0x295d, 0xe54: 0x297d, 0xe55: 0x299d, 0xe56: 0x0040, 0xe57: 0x0040,
1248 0xe58: 0x0040, 0xe59: 0x0040, 0xe5a: 0x0040, 0xe5b: 0x0040, 0xe5c: 0x0040, 0xe5d: 0x0040,
1249 0xe5e: 0x0040, 0xe5f: 0x0040, 0xe60: 0x0040, 0xe61: 0x0040, 0xe62: 0x0040, 0xe63: 0x0040,
1250 0xe64: 0x0040, 0xe65: 0x0040, 0xe66: 0x0040, 0xe67: 0x0040, 0xe68: 0x0040, 0xe69: 0x0040,
1251 0xe6a: 0x0040, 0xe6b: 0x0040, 0xe6c: 0x0040, 0xe6d: 0x0040, 0xe6e: 0x0040, 0xe6f: 0x0040,
1252 0xe70: 0x0040, 0xe71: 0x0040, 0xe72: 0x0040, 0xe73: 0x0040, 0xe74: 0x0040, 0xe75: 0x0040,
1253 0xe76: 0x0040, 0xe77: 0x0040, 0xe78: 0x0040, 0xe79: 0x0040, 0xe7a: 0x0040, 0xe7b: 0x0040,
1254 0xe7c: 0x0040, 0xe7d: 0x0040, 0xe7e: 0x0040, 0xe7f: 0x0040,
1255 // Block 0x3a, offset 0xe80
1256 0xe80: 0x000a, 0xe81: 0x0018, 0xe82: 0x29d1, 0xe83: 0x0018, 0xe84: 0x0018, 0xe85: 0x0008,
1257 0xe86: 0x0008, 0xe87: 0x0008, 0xe88: 0x0018, 0xe89: 0x0018, 0xe8a: 0x0018, 0xe8b: 0x0018,
1258 0xe8c: 0x0018, 0xe8d: 0x0018, 0xe8e: 0x0018, 0xe8f: 0x0018, 0xe90: 0x0018, 0xe91: 0x0018,
1259 0xe92: 0x0018, 0xe93: 0x0018, 0xe94: 0x0018, 0xe95: 0x0018, 0xe96: 0x0018, 0xe97: 0x0018,
1260 0xe98: 0x0018, 0xe99: 0x0018, 0xe9a: 0x0018, 0xe9b: 0x0018, 0xe9c: 0x0018, 0xe9d: 0x0018,
1261 0xe9e: 0x0018, 0xe9f: 0x0018, 0xea0: 0x0018, 0xea1: 0x0018, 0xea2: 0x0018, 0xea3: 0x0018,
1262 0xea4: 0x0018, 0xea5: 0x0018, 0xea6: 0x0018, 0xea7: 0x0018, 0xea8: 0x0018, 0xea9: 0x0018,
1263 0xeaa: 0x3308, 0xeab: 0x3308, 0xeac: 0x3308, 0xead: 0x3308, 0xeae: 0x3018, 0xeaf: 0x3018,
1264 0xeb0: 0x0018, 0xeb1: 0x0018, 0xeb2: 0x0018, 0xeb3: 0x0018, 0xeb4: 0x0018, 0xeb5: 0x0018,
1265 0xeb6: 0xe125, 0xeb7: 0x0018, 0xeb8: 0x29bd, 0xeb9: 0x29dd, 0xeba: 0x29fd, 0xebb: 0x0018,
1266 0xebc: 0x0008, 0xebd: 0x0018, 0xebe: 0x0018, 0xebf: 0x0018,
1267 // Block 0x3b, offset 0xec0
1268 0xec0: 0x2b3d, 0xec1: 0x2b5d, 0xec2: 0x2b7d, 0xec3: 0x2b9d, 0xec4: 0x2bbd, 0xec5: 0x2bdd,
1269 0xec6: 0x2bdd, 0xec7: 0x2bdd, 0xec8: 0x2bfd, 0xec9: 0x2bfd, 0xeca: 0x2bfd, 0xecb: 0x2bfd,
1270 0xecc: 0x2c1d, 0xecd: 0x2c1d, 0xece: 0x2c1d, 0xecf: 0x2c3d, 0xed0: 0x2c5d, 0xed1: 0x2c5d,
1271 0xed2: 0x2a7d, 0xed3: 0x2a7d, 0xed4: 0x2c5d, 0xed5: 0x2c5d, 0xed6: 0x2c7d, 0xed7: 0x2c7d,
1272 0xed8: 0x2c5d, 0xed9: 0x2c5d, 0xeda: 0x2a7d, 0xedb: 0x2a7d, 0xedc: 0x2c5d, 0xedd: 0x2c5d,
1273 0xede: 0x2c3d, 0xedf: 0x2c3d, 0xee0: 0x2c9d, 0xee1: 0x2c9d, 0xee2: 0x2cbd, 0xee3: 0x2cbd,
1274 0xee4: 0x0040, 0xee5: 0x2cdd, 0xee6: 0x2cfd, 0xee7: 0x2d1d, 0xee8: 0x2d1d, 0xee9: 0x2d3d,
1275 0xeea: 0x2d5d, 0xeeb: 0x2d7d, 0xeec: 0x2d9d, 0xeed: 0x2dbd, 0xeee: 0x2ddd, 0xeef: 0x2dfd,
1276 0xef0: 0x2e1d, 0xef1: 0x2e3d, 0xef2: 0x2e3d, 0xef3: 0x2e5d, 0xef4: 0x2e7d, 0xef5: 0x2e7d,
1277 0xef6: 0x2e9d, 0xef7: 0x2ebd, 0xef8: 0x2e5d, 0xef9: 0x2edd, 0xefa: 0x2efd, 0xefb: 0x2edd,
1278 0xefc: 0x2e5d, 0xefd: 0x2f1d, 0xefe: 0x2f3d, 0xeff: 0x2f5d,
1279 // Block 0x3c, offset 0xf00
1280 0xf00: 0x2f7d, 0xf01: 0x2f9d, 0xf02: 0x2cfd, 0xf03: 0x2cdd, 0xf04: 0x2fbd, 0xf05: 0x2fdd,
1281 0xf06: 0x2ffd, 0xf07: 0x301d, 0xf08: 0x303d, 0xf09: 0x305d, 0xf0a: 0x307d, 0xf0b: 0x309d,
1282 0xf0c: 0x30bd, 0xf0d: 0x30dd, 0xf0e: 0x30fd, 0xf0f: 0x0040, 0xf10: 0x0018, 0xf11: 0x0018,
1283 0xf12: 0x311d, 0xf13: 0x313d, 0xf14: 0x315d, 0xf15: 0x317d, 0xf16: 0x319d, 0xf17: 0x31bd,
1284 0xf18: 0x31dd, 0xf19: 0x31fd, 0xf1a: 0x321d, 0xf1b: 0x323d, 0xf1c: 0x315d, 0xf1d: 0x325d,
1285 0xf1e: 0x327d, 0xf1f: 0x329d, 0xf20: 0x0008, 0xf21: 0x0008, 0xf22: 0x0008, 0xf23: 0x0008,
1286 0xf24: 0x0008, 0xf25: 0x0008, 0xf26: 0x0008, 0xf27: 0x0008, 0xf28: 0x0008, 0xf29: 0x0008,
1287 0xf2a: 0x0008, 0xf2b: 0x0008, 0xf2c: 0x0008, 0xf2d: 0x0008, 0xf2e: 0x0008, 0xf2f: 0x0008,
1288 0xf30: 0x0008, 0xf31: 0x0008, 0xf32: 0x0008, 0xf33: 0x0008, 0xf34: 0x0008, 0xf35: 0x0008,
1289 0xf36: 0x0008, 0xf37: 0x0008, 0xf38: 0x0008, 0xf39: 0x0008, 0xf3a: 0x0008, 0xf3b: 0x0040,
1290 0xf3c: 0x0040, 0xf3d: 0x0040, 0xf3e: 0x0040, 0xf3f: 0x0040,
1291 // Block 0x3d, offset 0xf40
1292 0xf40: 0x36a2, 0xf41: 0x36d2, 0xf42: 0x3702, 0xf43: 0x3732, 0xf44: 0x32bd, 0xf45: 0x32dd,
1293 0xf46: 0x32fd, 0xf47: 0x331d, 0xf48: 0x0018, 0xf49: 0x0018, 0xf4a: 0x0018, 0xf4b: 0x0018,
1294 0xf4c: 0x0018, 0xf4d: 0x0018, 0xf4e: 0x0018, 0xf4f: 0x0018, 0xf50: 0x333d, 0xf51: 0x3761,
1295 0xf52: 0x3779, 0xf53: 0x3791, 0xf54: 0x37a9, 0xf55: 0x37c1, 0xf56: 0x37d9, 0xf57: 0x37f1,
1296 0xf58: 0x3809, 0xf59: 0x3821, 0xf5a: 0x3839, 0xf5b: 0x3851, 0xf5c: 0x3869, 0xf5d: 0x3881,
1297 0xf5e: 0x3899, 0xf5f: 0x38b1, 0xf60: 0x335d, 0xf61: 0x337d, 0xf62: 0x339d, 0xf63: 0x33bd,
1298 0xf64: 0x33dd, 0xf65: 0x33dd, 0xf66: 0x33fd, 0xf67: 0x341d, 0xf68: 0x343d, 0xf69: 0x345d,
1299 0xf6a: 0x347d, 0xf6b: 0x349d, 0xf6c: 0x34bd, 0xf6d: 0x34dd, 0xf6e: 0x34fd, 0xf6f: 0x351d,
1300 0xf70: 0x353d, 0xf71: 0x355d, 0xf72: 0x357d, 0xf73: 0x359d, 0xf74: 0x35bd, 0xf75: 0x35dd,
1301 0xf76: 0x35fd, 0xf77: 0x361d, 0xf78: 0x363d, 0xf79: 0x365d, 0xf7a: 0x367d, 0xf7b: 0x369d,
1302 0xf7c: 0x38c9, 0xf7d: 0x3901, 0xf7e: 0x36bd, 0xf7f: 0x0018,
1303 // Block 0x3e, offset 0xf80
1304 0xf80: 0x36dd, 0xf81: 0x36fd, 0xf82: 0x371d, 0xf83: 0x373d, 0xf84: 0x375d, 0xf85: 0x377d,
1305 0xf86: 0x379d, 0xf87: 0x37bd, 0xf88: 0x37dd, 0xf89: 0x37fd, 0xf8a: 0x381d, 0xf8b: 0x383d,
1306 0xf8c: 0x385d, 0xf8d: 0x387d, 0xf8e: 0x389d, 0xf8f: 0x38bd, 0xf90: 0x38dd, 0xf91: 0x38fd,
1307 0xf92: 0x391d, 0xf93: 0x393d, 0xf94: 0x395d, 0xf95: 0x397d, 0xf96: 0x399d, 0xf97: 0x39bd,
1308 0xf98: 0x39dd, 0xf99: 0x39fd, 0xf9a: 0x3a1d, 0xf9b: 0x3a3d, 0xf9c: 0x3a5d, 0xf9d: 0x3a7d,
1309 0xf9e: 0x3a9d, 0xf9f: 0x3abd, 0xfa0: 0x3add, 0xfa1: 0x3afd, 0xfa2: 0x3b1d, 0xfa3: 0x3b3d,
1310 0xfa4: 0x3b5d, 0xfa5: 0x3b7d, 0xfa6: 0x127d, 0xfa7: 0x3b9d, 0xfa8: 0x3bbd, 0xfa9: 0x3bdd,
1311 0xfaa: 0x3bfd, 0xfab: 0x3c1d, 0xfac: 0x3c3d, 0xfad: 0x3c5d, 0xfae: 0x239d, 0xfaf: 0x3c7d,
1312 0xfb0: 0x3c9d, 0xfb1: 0x3939, 0xfb2: 0x3951, 0xfb3: 0x3969, 0xfb4: 0x3981, 0xfb5: 0x3999,
1313 0xfb6: 0x39b1, 0xfb7: 0x39c9, 0xfb8: 0x39e1, 0xfb9: 0x39f9, 0xfba: 0x3a11, 0xfbb: 0x3a29,
1314 0xfbc: 0x3a41, 0xfbd: 0x3a59, 0xfbe: 0x3a71, 0xfbf: 0x3a89,
1315 // Block 0x3f, offset 0xfc0
1316 0xfc0: 0x3aa1, 0xfc1: 0x3ac9, 0xfc2: 0x3af1, 0xfc3: 0x3b19, 0xfc4: 0x3b41, 0xfc5: 0x3b69,
1317 0xfc6: 0x3b91, 0xfc7: 0x3bb9, 0xfc8: 0x3be1, 0xfc9: 0x3c09, 0xfca: 0x3c39, 0xfcb: 0x3c69,
1318 0xfcc: 0x3c99, 0xfcd: 0x3cbd, 0xfce: 0x3cb1, 0xfcf: 0x3cdd, 0xfd0: 0x3cfd, 0xfd1: 0x3d15,
1319 0xfd2: 0x3d2d, 0xfd3: 0x3d45, 0xfd4: 0x3d5d, 0xfd5: 0x3d5d, 0xfd6: 0x3d45, 0xfd7: 0x3d75,
1320 0xfd8: 0x07bd, 0xfd9: 0x3d8d, 0xfda: 0x3da5, 0xfdb: 0x3dbd, 0xfdc: 0x3dd5, 0xfdd: 0x3ded,
1321 0xfde: 0x3e05, 0xfdf: 0x3e1d, 0xfe0: 0x3e35, 0xfe1: 0x3e4d, 0xfe2: 0x3e65, 0xfe3: 0x3e7d,
1322 0xfe4: 0x3e95, 0xfe5: 0x3e95, 0xfe6: 0x3ead, 0xfe7: 0x3ead, 0xfe8: 0x3ec5, 0xfe9: 0x3ec5,
1323 0xfea: 0x3edd, 0xfeb: 0x3ef5, 0xfec: 0x3f0d, 0xfed: 0x3f25, 0xfee: 0x3f3d, 0xfef: 0x3f3d,
1324 0xff0: 0x3f55, 0xff1: 0x3f55, 0xff2: 0x3f55, 0xff3: 0x3f6d, 0xff4: 0x3f85, 0xff5: 0x3f9d,
1325 0xff6: 0x3fb5, 0xff7: 0x3f9d, 0xff8: 0x3fcd, 0xff9: 0x3fe5, 0xffa: 0x3f6d, 0xffb: 0x3ffd,
1326 0xffc: 0x4015, 0xffd: 0x4015, 0xffe: 0x4015, 0xfff: 0x0040,
1327 // Block 0x40, offset 0x1000
1328 0x1000: 0x3cc9, 0x1001: 0x3d31, 0x1002: 0x3d99, 0x1003: 0x3e01, 0x1004: 0x3e51, 0x1005: 0x3eb9,
1329 0x1006: 0x3f09, 0x1007: 0x3f59, 0x1008: 0x3fd9, 0x1009: 0x4041, 0x100a: 0x4091, 0x100b: 0x40e1,
1330 0x100c: 0x4131, 0x100d: 0x4199, 0x100e: 0x4201, 0x100f: 0x4251, 0x1010: 0x42a1, 0x1011: 0x42d9,
1331 0x1012: 0x4329, 0x1013: 0x4391, 0x1014: 0x43f9, 0x1015: 0x4431, 0x1016: 0x44b1, 0x1017: 0x4549,
1332 0x1018: 0x45c9, 0x1019: 0x4619, 0x101a: 0x4699, 0x101b: 0x4719, 0x101c: 0x4781, 0x101d: 0x47d1,
1333 0x101e: 0x4821, 0x101f: 0x4871, 0x1020: 0x48d9, 0x1021: 0x4959, 0x1022: 0x49c1, 0x1023: 0x4a11,
1334 0x1024: 0x4a61, 0x1025: 0x4ab1, 0x1026: 0x4ae9, 0x1027: 0x4b21, 0x1028: 0x4b59, 0x1029: 0x4b91,
1335 0x102a: 0x4be1, 0x102b: 0x4c31, 0x102c: 0x4cb1, 0x102d: 0x4d01, 0x102e: 0x4d69, 0x102f: 0x4de9,
1336 0x1030: 0x4e39, 0x1031: 0x4e71, 0x1032: 0x4ea9, 0x1033: 0x4f29, 0x1034: 0x4f91, 0x1035: 0x5011,
1337 0x1036: 0x5061, 0x1037: 0x50e1, 0x1038: 0x5119, 0x1039: 0x5169, 0x103a: 0x51b9, 0x103b: 0x5209,
1338 0x103c: 0x5259, 0x103d: 0x52a9, 0x103e: 0x5311, 0x103f: 0x5361,
1339 // Block 0x41, offset 0x1040
1340 0x1040: 0x5399, 0x1041: 0x53e9, 0x1042: 0x5439, 0x1043: 0x5489, 0x1044: 0x54f1, 0x1045: 0x5541,
1341 0x1046: 0x5591, 0x1047: 0x55e1, 0x1048: 0x5661, 0x1049: 0x56c9, 0x104a: 0x5701, 0x104b: 0x5781,
1342 0x104c: 0x57b9, 0x104d: 0x5821, 0x104e: 0x5889, 0x104f: 0x58d9, 0x1050: 0x5929, 0x1051: 0x5979,
1343 0x1052: 0x59e1, 0x1053: 0x5a19, 0x1054: 0x5a69, 0x1055: 0x5ad1, 0x1056: 0x5b09, 0x1057: 0x5b89,
1344 0x1058: 0x5bd9, 0x1059: 0x5c01, 0x105a: 0x5c29, 0x105b: 0x5c51, 0x105c: 0x5c79, 0x105d: 0x5ca1,
1345 0x105e: 0x5cc9, 0x105f: 0x5cf1, 0x1060: 0x5d19, 0x1061: 0x5d41, 0x1062: 0x5d69, 0x1063: 0x5d99,
1346 0x1064: 0x5dc9, 0x1065: 0x5df9, 0x1066: 0x5e29, 0x1067: 0x5e59, 0x1068: 0x5e89, 0x1069: 0x5eb9,
1347 0x106a: 0x5ee9, 0x106b: 0x5f19, 0x106c: 0x5f49, 0x106d: 0x5f79, 0x106e: 0x5fa9, 0x106f: 0x5fd9,
1348 0x1070: 0x6009, 0x1071: 0x402d, 0x1072: 0x6039, 0x1073: 0x6051, 0x1074: 0x404d, 0x1075: 0x6069,
1349 0x1076: 0x6081, 0x1077: 0x6099, 0x1078: 0x406d, 0x1079: 0x406d, 0x107a: 0x60b1, 0x107b: 0x60c9,
1350 0x107c: 0x6101, 0x107d: 0x6139, 0x107e: 0x6171, 0x107f: 0x61a9,
1351 // Block 0x42, offset 0x1080
1352 0x1080: 0x6211, 0x1081: 0x6229, 0x1082: 0x408d, 0x1083: 0x6241, 0x1084: 0x6259, 0x1085: 0x6271,
1353 0x1086: 0x6289, 0x1087: 0x62a1, 0x1088: 0x40ad, 0x1089: 0x62b9, 0x108a: 0x62e1, 0x108b: 0x62f9,
1354 0x108c: 0x40cd, 0x108d: 0x40cd, 0x108e: 0x6311, 0x108f: 0x6329, 0x1090: 0x6341, 0x1091: 0x40ed,
1355 0x1092: 0x410d, 0x1093: 0x412d, 0x1094: 0x414d, 0x1095: 0x416d, 0x1096: 0x6359, 0x1097: 0x6371,
1356 0x1098: 0x6389, 0x1099: 0x63a1, 0x109a: 0x63b9, 0x109b: 0x418d, 0x109c: 0x63d1, 0x109d: 0x63e9,
1357 0x109e: 0x6401, 0x109f: 0x41ad, 0x10a0: 0x41cd, 0x10a1: 0x6419, 0x10a2: 0x41ed, 0x10a3: 0x420d,
1358 0x10a4: 0x422d, 0x10a5: 0x6431, 0x10a6: 0x424d, 0x10a7: 0x6449, 0x10a8: 0x6479, 0x10a9: 0x6211,
1359 0x10aa: 0x426d, 0x10ab: 0x428d, 0x10ac: 0x42ad, 0x10ad: 0x42cd, 0x10ae: 0x64b1, 0x10af: 0x64f1,
1360 0x10b0: 0x6539, 0x10b1: 0x6551, 0x10b2: 0x42ed, 0x10b3: 0x6569, 0x10b4: 0x6581, 0x10b5: 0x6599,
1361 0x10b6: 0x430d, 0x10b7: 0x65b1, 0x10b8: 0x65c9, 0x10b9: 0x65b1, 0x10ba: 0x65e1, 0x10bb: 0x65f9,
1362 0x10bc: 0x432d, 0x10bd: 0x6611, 0x10be: 0x6629, 0x10bf: 0x6611,
1363 // Block 0x43, offset 0x10c0
1364 0x10c0: 0x434d, 0x10c1: 0x436d, 0x10c2: 0x0040, 0x10c3: 0x6641, 0x10c4: 0x6659, 0x10c5: 0x6671,
1365 0x10c6: 0x6689, 0x10c7: 0x0040, 0x10c8: 0x66c1, 0x10c9: 0x66d9, 0x10ca: 0x66f1, 0x10cb: 0x6709,
1366 0x10cc: 0x6721, 0x10cd: 0x6739, 0x10ce: 0x6401, 0x10cf: 0x6751, 0x10d0: 0x6769, 0x10d1: 0x6781,
1367 0x10d2: 0x438d, 0x10d3: 0x6799, 0x10d4: 0x6289, 0x10d5: 0x43ad, 0x10d6: 0x43cd, 0x10d7: 0x67b1,
1368 0x10d8: 0x0040, 0x10d9: 0x43ed, 0x10da: 0x67c9, 0x10db: 0x67e1, 0x10dc: 0x67f9, 0x10dd: 0x6811,
1369 0x10de: 0x6829, 0x10df: 0x6859, 0x10e0: 0x6889, 0x10e1: 0x68b1, 0x10e2: 0x68d9, 0x10e3: 0x6901,
1370 0x10e4: 0x6929, 0x10e5: 0x6951, 0x10e6: 0x6979, 0x10e7: 0x69a1, 0x10e8: 0x69c9, 0x10e9: 0x69f1,
1371 0x10ea: 0x6a21, 0x10eb: 0x6a51, 0x10ec: 0x6a81, 0x10ed: 0x6ab1, 0x10ee: 0x6ae1, 0x10ef: 0x6b11,
1372 0x10f0: 0x6b41, 0x10f1: 0x6b71, 0x10f2: 0x6ba1, 0x10f3: 0x6bd1, 0x10f4: 0x6c01, 0x10f5: 0x6c31,
1373 0x10f6: 0x6c61, 0x10f7: 0x6c91, 0x10f8: 0x6cc1, 0x10f9: 0x6cf1, 0x10fa: 0x6d21, 0x10fb: 0x6d51,
1374 0x10fc: 0x6d81, 0x10fd: 0x6db1, 0x10fe: 0x6de1, 0x10ff: 0x440d,
1375 // Block 0x44, offset 0x1100
1376 0x1100: 0xe00d, 0x1101: 0x0008, 0x1102: 0xe00d, 0x1103: 0x0008, 0x1104: 0xe00d, 0x1105: 0x0008,
1377 0x1106: 0xe00d, 0x1107: 0x0008, 0x1108: 0xe00d, 0x1109: 0x0008, 0x110a: 0xe00d, 0x110b: 0x0008,
1378 0x110c: 0xe00d, 0x110d: 0x0008, 0x110e: 0xe00d, 0x110f: 0x0008, 0x1110: 0xe00d, 0x1111: 0x0008,
1379 0x1112: 0xe00d, 0x1113: 0x0008, 0x1114: 0xe00d, 0x1115: 0x0008, 0x1116: 0xe00d, 0x1117: 0x0008,
1380 0x1118: 0xe00d, 0x1119: 0x0008, 0x111a: 0xe00d, 0x111b: 0x0008, 0x111c: 0xe00d, 0x111d: 0x0008,
1381 0x111e: 0xe00d, 0x111f: 0x0008, 0x1120: 0xe00d, 0x1121: 0x0008, 0x1122: 0xe00d, 0x1123: 0x0008,
1382 0x1124: 0xe00d, 0x1125: 0x0008, 0x1126: 0xe00d, 0x1127: 0x0008, 0x1128: 0xe00d, 0x1129: 0x0008,
1383 0x112a: 0xe00d, 0x112b: 0x0008, 0x112c: 0xe00d, 0x112d: 0x0008, 0x112e: 0x0008, 0x112f: 0x3308,
1384 0x1130: 0x3318, 0x1131: 0x3318, 0x1132: 0x3318, 0x1133: 0x0018, 0x1134: 0x3308, 0x1135: 0x3308,
1385 0x1136: 0x3308, 0x1137: 0x3308, 0x1138: 0x3308, 0x1139: 0x3308, 0x113a: 0x3308, 0x113b: 0x3308,
1386 0x113c: 0x3308, 0x113d: 0x3308, 0x113e: 0x0018, 0x113f: 0x0008,
1387 // Block 0x45, offset 0x1140
1388 0x1140: 0xe00d, 0x1141: 0x0008, 0x1142: 0xe00d, 0x1143: 0x0008, 0x1144: 0xe00d, 0x1145: 0x0008,
1389 0x1146: 0xe00d, 0x1147: 0x0008, 0x1148: 0xe00d, 0x1149: 0x0008, 0x114a: 0xe00d, 0x114b: 0x0008,
1390 0x114c: 0xe00d, 0x114d: 0x0008, 0x114e: 0xe00d, 0x114f: 0x0008, 0x1150: 0xe00d, 0x1151: 0x0008,
1391 0x1152: 0xe00d, 0x1153: 0x0008, 0x1154: 0xe00d, 0x1155: 0x0008, 0x1156: 0xe00d, 0x1157: 0x0008,
1392 0x1158: 0xe00d, 0x1159: 0x0008, 0x115a: 0xe00d, 0x115b: 0x0008, 0x115c: 0x0ea1, 0x115d: 0x6e11,
1393 0x115e: 0x3308, 0x115f: 0x3308, 0x1160: 0x0008, 0x1161: 0x0008, 0x1162: 0x0008, 0x1163: 0x0008,
1394 0x1164: 0x0008, 0x1165: 0x0008, 0x1166: 0x0008, 0x1167: 0x0008, 0x1168: 0x0008, 0x1169: 0x0008,
1395 0x116a: 0x0008, 0x116b: 0x0008, 0x116c: 0x0008, 0x116d: 0x0008, 0x116e: 0x0008, 0x116f: 0x0008,
1396 0x1170: 0x0008, 0x1171: 0x0008, 0x1172: 0x0008, 0x1173: 0x0008, 0x1174: 0x0008, 0x1175: 0x0008,
1397 0x1176: 0x0008, 0x1177: 0x0008, 0x1178: 0x0008, 0x1179: 0x0008, 0x117a: 0x0008, 0x117b: 0x0008,
1398 0x117c: 0x0008, 0x117d: 0x0008, 0x117e: 0x0008, 0x117f: 0x0008,
1399 // Block 0x46, offset 0x1180
1400 0x1180: 0x0018, 0x1181: 0x0018, 0x1182: 0x0018, 0x1183: 0x0018, 0x1184: 0x0018, 0x1185: 0x0018,
1401 0x1186: 0x0018, 0x1187: 0x0018, 0x1188: 0x0018, 0x1189: 0x0018, 0x118a: 0x0018, 0x118b: 0x0018,
1402 0x118c: 0x0018, 0x118d: 0x0018, 0x118e: 0x0018, 0x118f: 0x0018, 0x1190: 0x0018, 0x1191: 0x0018,
1403 0x1192: 0x0018, 0x1193: 0x0018, 0x1194: 0x0018, 0x1195: 0x0018, 0x1196: 0x0018, 0x1197: 0x0008,
1404 0x1198: 0x0008, 0x1199: 0x0008, 0x119a: 0x0008, 0x119b: 0x0008, 0x119c: 0x0008, 0x119d: 0x0008,
1405 0x119e: 0x0008, 0x119f: 0x0008, 0x11a0: 0x0018, 0x11a1: 0x0018, 0x11a2: 0xe00d, 0x11a3: 0x0008,
1406 0x11a4: 0xe00d, 0x11a5: 0x0008, 0x11a6: 0xe00d, 0x11a7: 0x0008, 0x11a8: 0xe00d, 0x11a9: 0x0008,
1407 0x11aa: 0xe00d, 0x11ab: 0x0008, 0x11ac: 0xe00d, 0x11ad: 0x0008, 0x11ae: 0xe00d, 0x11af: 0x0008,
1408 0x11b0: 0x0008, 0x11b1: 0x0008, 0x11b2: 0xe00d, 0x11b3: 0x0008, 0x11b4: 0xe00d, 0x11b5: 0x0008,
1409 0x11b6: 0xe00d, 0x11b7: 0x0008, 0x11b8: 0xe00d, 0x11b9: 0x0008, 0x11ba: 0xe00d, 0x11bb: 0x0008,
1410 0x11bc: 0xe00d, 0x11bd: 0x0008, 0x11be: 0xe00d, 0x11bf: 0x0008,
1411 // Block 0x47, offset 0x11c0
1412 0x11c0: 0xe00d, 0x11c1: 0x0008, 0x11c2: 0xe00d, 0x11c3: 0x0008, 0x11c4: 0xe00d, 0x11c5: 0x0008,
1413 0x11c6: 0xe00d, 0x11c7: 0x0008, 0x11c8: 0xe00d, 0x11c9: 0x0008, 0x11ca: 0xe00d, 0x11cb: 0x0008,
1414 0x11cc: 0xe00d, 0x11cd: 0x0008, 0x11ce: 0xe00d, 0x11cf: 0x0008, 0x11d0: 0xe00d, 0x11d1: 0x0008,
1415 0x11d2: 0xe00d, 0x11d3: 0x0008, 0x11d4: 0xe00d, 0x11d5: 0x0008, 0x11d6: 0xe00d, 0x11d7: 0x0008,
1416 0x11d8: 0xe00d, 0x11d9: 0x0008, 0x11da: 0xe00d, 0x11db: 0x0008, 0x11dc: 0xe00d, 0x11dd: 0x0008,
1417 0x11de: 0xe00d, 0x11df: 0x0008, 0x11e0: 0xe00d, 0x11e1: 0x0008, 0x11e2: 0xe00d, 0x11e3: 0x0008,
1418 0x11e4: 0xe00d, 0x11e5: 0x0008, 0x11e6: 0xe00d, 0x11e7: 0x0008, 0x11e8: 0xe00d, 0x11e9: 0x0008,
1419 0x11ea: 0xe00d, 0x11eb: 0x0008, 0x11ec: 0xe00d, 0x11ed: 0x0008, 0x11ee: 0xe00d, 0x11ef: 0x0008,
1420 0x11f0: 0xe0fd, 0x11f1: 0x0008, 0x11f2: 0x0008, 0x11f3: 0x0008, 0x11f4: 0x0008, 0x11f5: 0x0008,
1421 0x11f6: 0x0008, 0x11f7: 0x0008, 0x11f8: 0x0008, 0x11f9: 0xe01d, 0x11fa: 0x0008, 0x11fb: 0xe03d,
1422 0x11fc: 0x0008, 0x11fd: 0x442d, 0x11fe: 0xe00d, 0x11ff: 0x0008,
1423 // Block 0x48, offset 0x1200
1424 0x1200: 0xe00d, 0x1201: 0x0008, 0x1202: 0xe00d, 0x1203: 0x0008, 0x1204: 0xe00d, 0x1205: 0x0008,
1425 0x1206: 0xe00d, 0x1207: 0x0008, 0x1208: 0x0008, 0x1209: 0x0018, 0x120a: 0x0018, 0x120b: 0xe03d,
1426 0x120c: 0x0008, 0x120d: 0x11d9, 0x120e: 0x0008, 0x120f: 0x0008, 0x1210: 0xe00d, 0x1211: 0x0008,
1427 0x1212: 0xe00d, 0x1213: 0x0008, 0x1214: 0x0008, 0x1215: 0x0008, 0x1216: 0xe00d, 0x1217: 0x0008,
1428 0x1218: 0xe00d, 0x1219: 0x0008, 0x121a: 0xe00d, 0x121b: 0x0008, 0x121c: 0xe00d, 0x121d: 0x0008,
1429 0x121e: 0xe00d, 0x121f: 0x0008, 0x1220: 0xe00d, 0x1221: 0x0008, 0x1222: 0xe00d, 0x1223: 0x0008,
1430 0x1224: 0xe00d, 0x1225: 0x0008, 0x1226: 0xe00d, 0x1227: 0x0008, 0x1228: 0xe00d, 0x1229: 0x0008,
1431 0x122a: 0x6e29, 0x122b: 0x1029, 0x122c: 0x11c1, 0x122d: 0x6e41, 0x122e: 0x1221, 0x122f: 0x0040,
1432 0x1230: 0x6e59, 0x1231: 0x6e71, 0x1232: 0x1239, 0x1233: 0x444d, 0x1234: 0xe00d, 0x1235: 0x0008,
1433 0x1236: 0xe00d, 0x1237: 0x0008, 0x1238: 0x0040, 0x1239: 0x0040, 0x123a: 0x0040, 0x123b: 0x0040,
1434 0x123c: 0x0040, 0x123d: 0x0040, 0x123e: 0x0040, 0x123f: 0x0040,
1435 // Block 0x49, offset 0x1240
1436 0x1240: 0x64d5, 0x1241: 0x64f5, 0x1242: 0x6515, 0x1243: 0x6535, 0x1244: 0x6555, 0x1245: 0x6575,
1437 0x1246: 0x6595, 0x1247: 0x65b5, 0x1248: 0x65d5, 0x1249: 0x65f5, 0x124a: 0x6615, 0x124b: 0x6635,
1438 0x124c: 0x6655, 0x124d: 0x6675, 0x124e: 0x0008, 0x124f: 0x0008, 0x1250: 0x6695, 0x1251: 0x0008,
1439 0x1252: 0x66b5, 0x1253: 0x0008, 0x1254: 0x0008, 0x1255: 0x66d5, 0x1256: 0x66f5, 0x1257: 0x6715,
1440 0x1258: 0x6735, 0x1259: 0x6755, 0x125a: 0x6775, 0x125b: 0x6795, 0x125c: 0x67b5, 0x125d: 0x67d5,
1441 0x125e: 0x67f5, 0x125f: 0x0008, 0x1260: 0x6815, 0x1261: 0x0008, 0x1262: 0x6835, 0x1263: 0x0008,
1442 0x1264: 0x0008, 0x1265: 0x6855, 0x1266: 0x6875, 0x1267: 0x0008, 0x1268: 0x0008, 0x1269: 0x0008,
1443 0x126a: 0x6895, 0x126b: 0x68b5, 0x126c: 0x68d5, 0x126d: 0x68f5, 0x126e: 0x6915, 0x126f: 0x6935,
1444 0x1270: 0x6955, 0x1271: 0x6975, 0x1272: 0x6995, 0x1273: 0x69b5, 0x1274: 0x69d5, 0x1275: 0x69f5,
1445 0x1276: 0x6a15, 0x1277: 0x6a35, 0x1278: 0x6a55, 0x1279: 0x6a75, 0x127a: 0x6a95, 0x127b: 0x6ab5,
1446 0x127c: 0x6ad5, 0x127d: 0x6af5, 0x127e: 0x6b15, 0x127f: 0x6b35,
1447 // Block 0x4a, offset 0x1280
1448 0x1280: 0x7a95, 0x1281: 0x7ab5, 0x1282: 0x7ad5, 0x1283: 0x7af5, 0x1284: 0x7b15, 0x1285: 0x7b35,
1449 0x1286: 0x7b55, 0x1287: 0x7b75, 0x1288: 0x7b95, 0x1289: 0x7bb5, 0x128a: 0x7bd5, 0x128b: 0x7bf5,
1450 0x128c: 0x7c15, 0x128d: 0x7c35, 0x128e: 0x7c55, 0x128f: 0x6ec9, 0x1290: 0x6ef1, 0x1291: 0x6f19,
1451 0x1292: 0x7c75, 0x1293: 0x7c95, 0x1294: 0x7cb5, 0x1295: 0x6f41, 0x1296: 0x6f69, 0x1297: 0x6f91,
1452 0x1298: 0x7cd5, 0x1299: 0x7cf5, 0x129a: 0x0040, 0x129b: 0x0040, 0x129c: 0x0040, 0x129d: 0x0040,
1453 0x129e: 0x0040, 0x129f: 0x0040, 0x12a0: 0x0040, 0x12a1: 0x0040, 0x12a2: 0x0040, 0x12a3: 0x0040,
1454 0x12a4: 0x0040, 0x12a5: 0x0040, 0x12a6: 0x0040, 0x12a7: 0x0040, 0x12a8: 0x0040, 0x12a9: 0x0040,
1455 0x12aa: 0x0040, 0x12ab: 0x0040, 0x12ac: 0x0040, 0x12ad: 0x0040, 0x12ae: 0x0040, 0x12af: 0x0040,
1456 0x12b0: 0x0040, 0x12b1: 0x0040, 0x12b2: 0x0040, 0x12b3: 0x0040, 0x12b4: 0x0040, 0x12b5: 0x0040,
1457 0x12b6: 0x0040, 0x12b7: 0x0040, 0x12b8: 0x0040, 0x12b9: 0x0040, 0x12ba: 0x0040, 0x12bb: 0x0040,
1458 0x12bc: 0x0040, 0x12bd: 0x0040, 0x12be: 0x0040, 0x12bf: 0x0040,
1459 // Block 0x4b, offset 0x12c0
1460 0x12c0: 0x6fb9, 0x12c1: 0x6fd1, 0x12c2: 0x6fe9, 0x12c3: 0x7d15, 0x12c4: 0x7d35, 0x12c5: 0x7001,
1461 0x12c6: 0x7001, 0x12c7: 0x0040, 0x12c8: 0x0040, 0x12c9: 0x0040, 0x12ca: 0x0040, 0x12cb: 0x0040,
1462 0x12cc: 0x0040, 0x12cd: 0x0040, 0x12ce: 0x0040, 0x12cf: 0x0040, 0x12d0: 0x0040, 0x12d1: 0x0040,
1463 0x12d2: 0x0040, 0x12d3: 0x7019, 0x12d4: 0x7041, 0x12d5: 0x7069, 0x12d6: 0x7091, 0x12d7: 0x70b9,
1464 0x12d8: 0x0040, 0x12d9: 0x0040, 0x12da: 0x0040, 0x12db: 0x0040, 0x12dc: 0x0040, 0x12dd: 0x70e1,
1465 0x12de: 0x3308, 0x12df: 0x7109, 0x12e0: 0x7131, 0x12e1: 0x20a9, 0x12e2: 0x20f1, 0x12e3: 0x7149,
1466 0x12e4: 0x7161, 0x12e5: 0x7179, 0x12e6: 0x7191, 0x12e7: 0x71a9, 0x12e8: 0x71c1, 0x12e9: 0x1fb2,
1467 0x12ea: 0x71d9, 0x12eb: 0x7201, 0x12ec: 0x7229, 0x12ed: 0x7261, 0x12ee: 0x7299, 0x12ef: 0x72c1,
1468 0x12f0: 0x72e9, 0x12f1: 0x7311, 0x12f2: 0x7339, 0x12f3: 0x7361, 0x12f4: 0x7389, 0x12f5: 0x73b1,
1469 0x12f6: 0x73d9, 0x12f7: 0x0040, 0x12f8: 0x7401, 0x12f9: 0x7429, 0x12fa: 0x7451, 0x12fb: 0x7479,
1470 0x12fc: 0x74a1, 0x12fd: 0x0040, 0x12fe: 0x74c9, 0x12ff: 0x0040,
1471 // Block 0x4c, offset 0x1300
1472 0x1300: 0x74f1, 0x1301: 0x7519, 0x1302: 0x0040, 0x1303: 0x7541, 0x1304: 0x7569, 0x1305: 0x0040,
1473 0x1306: 0x7591, 0x1307: 0x75b9, 0x1308: 0x75e1, 0x1309: 0x7609, 0x130a: 0x7631, 0x130b: 0x7659,
1474 0x130c: 0x7681, 0x130d: 0x76a9, 0x130e: 0x76d1, 0x130f: 0x76f9, 0x1310: 0x7721, 0x1311: 0x7721,
1475 0x1312: 0x7739, 0x1313: 0x7739, 0x1314: 0x7739, 0x1315: 0x7739, 0x1316: 0x7751, 0x1317: 0x7751,
1476 0x1318: 0x7751, 0x1319: 0x7751, 0x131a: 0x7769, 0x131b: 0x7769, 0x131c: 0x7769, 0x131d: 0x7769,
1477 0x131e: 0x7781, 0x131f: 0x7781, 0x1320: 0x7781, 0x1321: 0x7781, 0x1322: 0x7799, 0x1323: 0x7799,
1478 0x1324: 0x7799, 0x1325: 0x7799, 0x1326: 0x77b1, 0x1327: 0x77b1, 0x1328: 0x77b1, 0x1329: 0x77b1,
1479 0x132a: 0x77c9, 0x132b: 0x77c9, 0x132c: 0x77c9, 0x132d: 0x77c9, 0x132e: 0x77e1, 0x132f: 0x77e1,
1480 0x1330: 0x77e1, 0x1331: 0x77e1, 0x1332: 0x77f9, 0x1333: 0x77f9, 0x1334: 0x77f9, 0x1335: 0x77f9,
1481 0x1336: 0x7811, 0x1337: 0x7811, 0x1338: 0x7811, 0x1339: 0x7811, 0x133a: 0x7829, 0x133b: 0x7829,
1482 0x133c: 0x7829, 0x133d: 0x7829, 0x133e: 0x7841, 0x133f: 0x7841,
1483 // Block 0x4d, offset 0x1340
1484 0x1340: 0x7841, 0x1341: 0x7841, 0x1342: 0x7859, 0x1343: 0x7859, 0x1344: 0x7871, 0x1345: 0x7871,
1485 0x1346: 0x7889, 0x1347: 0x7889, 0x1348: 0x78a1, 0x1349: 0x78a1, 0x134a: 0x78b9, 0x134b: 0x78b9,
1486 0x134c: 0x78d1, 0x134d: 0x78d1, 0x134e: 0x78e9, 0x134f: 0x78e9, 0x1350: 0x78e9, 0x1351: 0x78e9,
1487 0x1352: 0x7901, 0x1353: 0x7901, 0x1354: 0x7901, 0x1355: 0x7901, 0x1356: 0x7919, 0x1357: 0x7919,
1488 0x1358: 0x7919, 0x1359: 0x7919, 0x135a: 0x7931, 0x135b: 0x7931, 0x135c: 0x7931, 0x135d: 0x7931,
1489 0x135e: 0x7949, 0x135f: 0x7949, 0x1360: 0x7961, 0x1361: 0x7961, 0x1362: 0x7961, 0x1363: 0x7961,
1490 0x1364: 0x7979, 0x1365: 0x7979, 0x1366: 0x7991, 0x1367: 0x7991, 0x1368: 0x7991, 0x1369: 0x7991,
1491 0x136a: 0x79a9, 0x136b: 0x79a9, 0x136c: 0x79a9, 0x136d: 0x79a9, 0x136e: 0x79c1, 0x136f: 0x79c1,
1492 0x1370: 0x79d9, 0x1371: 0x79d9, 0x1372: 0x0818, 0x1373: 0x0818, 0x1374: 0x0818, 0x1375: 0x0818,
1493 0x1376: 0x0818, 0x1377: 0x0818, 0x1378: 0x0818, 0x1379: 0x0818, 0x137a: 0x0818, 0x137b: 0x0818,
1494 0x137c: 0x0818, 0x137d: 0x0818, 0x137e: 0x0818, 0x137f: 0x0818,
1495 // Block 0x4e, offset 0x1380
1496 0x1380: 0x0818, 0x1381: 0x0818, 0x1382: 0x0040, 0x1383: 0x0040, 0x1384: 0x0040, 0x1385: 0x0040,
1497 0x1386: 0x0040, 0x1387: 0x0040, 0x1388: 0x0040, 0x1389: 0x0040, 0x138a: 0x0040, 0x138b: 0x0040,
1498 0x138c: 0x0040, 0x138d: 0x0040, 0x138e: 0x0040, 0x138f: 0x0040, 0x1390: 0x0040, 0x1391: 0x0040,
1499 0x1392: 0x0040, 0x1393: 0x79f1, 0x1394: 0x79f1, 0x1395: 0x79f1, 0x1396: 0x79f1, 0x1397: 0x7a09,
1500 0x1398: 0x7a09, 0x1399: 0x7a21, 0x139a: 0x7a21, 0x139b: 0x7a39, 0x139c: 0x7a39, 0x139d: 0x0479,
1501 0x139e: 0x7a51, 0x139f: 0x7a51, 0x13a0: 0x7a69, 0x13a1: 0x7a69, 0x13a2: 0x7a81, 0x13a3: 0x7a81,
1502 0x13a4: 0x7a99, 0x13a5: 0x7a99, 0x13a6: 0x7a99, 0x13a7: 0x7a99, 0x13a8: 0x7ab1, 0x13a9: 0x7ab1,
1503 0x13aa: 0x7ac9, 0x13ab: 0x7ac9, 0x13ac: 0x7af1, 0x13ad: 0x7af1, 0x13ae: 0x7b19, 0x13af: 0x7b19,
1504 0x13b0: 0x7b41, 0x13b1: 0x7b41, 0x13b2: 0x7b69, 0x13b3: 0x7b69, 0x13b4: 0x7b91, 0x13b5: 0x7b91,
1505 0x13b6: 0x7bb9, 0x13b7: 0x7bb9, 0x13b8: 0x7bb9, 0x13b9: 0x7be1, 0x13ba: 0x7be1, 0x13bb: 0x7be1,
1506 0x13bc: 0x7c09, 0x13bd: 0x7c09, 0x13be: 0x7c09, 0x13bf: 0x7c09,
1507 // Block 0x4f, offset 0x13c0
1508 0x13c0: 0x85f9, 0x13c1: 0x8621, 0x13c2: 0x8649, 0x13c3: 0x8671, 0x13c4: 0x8699, 0x13c5: 0x86c1,
1509 0x13c6: 0x86e9, 0x13c7: 0x8711, 0x13c8: 0x8739, 0x13c9: 0x8761, 0x13ca: 0x8789, 0x13cb: 0x87b1,
1510 0x13cc: 0x87d9, 0x13cd: 0x8801, 0x13ce: 0x8829, 0x13cf: 0x8851, 0x13d0: 0x8879, 0x13d1: 0x88a1,
1511 0x13d2: 0x88c9, 0x13d3: 0x88f1, 0x13d4: 0x8919, 0x13d5: 0x8941, 0x13d6: 0x8969, 0x13d7: 0x8991,
1512 0x13d8: 0x89b9, 0x13d9: 0x89e1, 0x13da: 0x8a09, 0x13db: 0x8a31, 0x13dc: 0x8a59, 0x13dd: 0x8a81,
1513 0x13de: 0x8aaa, 0x13df: 0x8ada, 0x13e0: 0x8b0a, 0x13e1: 0x8b3a, 0x13e2: 0x8b6a, 0x13e3: 0x8b9a,
1514 0x13e4: 0x8bc9, 0x13e5: 0x8bf1, 0x13e6: 0x7c71, 0x13e7: 0x8c19, 0x13e8: 0x7be1, 0x13e9: 0x7c99,
1515 0x13ea: 0x8c41, 0x13eb: 0x8c69, 0x13ec: 0x7d39, 0x13ed: 0x8c91, 0x13ee: 0x7d61, 0x13ef: 0x7d89,
1516 0x13f0: 0x8cb9, 0x13f1: 0x8ce1, 0x13f2: 0x7e29, 0x13f3: 0x8d09, 0x13f4: 0x7e51, 0x13f5: 0x7e79,
1517 0x13f6: 0x8d31, 0x13f7: 0x8d59, 0x13f8: 0x7ec9, 0x13f9: 0x8d81, 0x13fa: 0x7ef1, 0x13fb: 0x7f19,
1518 0x13fc: 0x83a1, 0x13fd: 0x83c9, 0x13fe: 0x8441, 0x13ff: 0x8469,
1519 // Block 0x50, offset 0x1400
1520 0x1400: 0x8491, 0x1401: 0x8531, 0x1402: 0x8559, 0x1403: 0x8581, 0x1404: 0x85a9, 0x1405: 0x8649,
1521 0x1406: 0x8671, 0x1407: 0x8699, 0x1408: 0x8da9, 0x1409: 0x8739, 0x140a: 0x8dd1, 0x140b: 0x8df9,
1522 0x140c: 0x8829, 0x140d: 0x8e21, 0x140e: 0x8851, 0x140f: 0x8879, 0x1410: 0x8a81, 0x1411: 0x8e49,
1523 0x1412: 0x8e71, 0x1413: 0x89b9, 0x1414: 0x8e99, 0x1415: 0x89e1, 0x1416: 0x8a09, 0x1417: 0x7c21,
1524 0x1418: 0x7c49, 0x1419: 0x8ec1, 0x141a: 0x7c71, 0x141b: 0x8ee9, 0x141c: 0x7cc1, 0x141d: 0x7ce9,
1525 0x141e: 0x7d11, 0x141f: 0x7d39, 0x1420: 0x8f11, 0x1421: 0x7db1, 0x1422: 0x7dd9, 0x1423: 0x7e01,
1526 0x1424: 0x7e29, 0x1425: 0x8f39, 0x1426: 0x7ec9, 0x1427: 0x7f41, 0x1428: 0x7f69, 0x1429: 0x7f91,
1527 0x142a: 0x7fb9, 0x142b: 0x7fe1, 0x142c: 0x8031, 0x142d: 0x8059, 0x142e: 0x8081, 0x142f: 0x80a9,
1528 0x1430: 0x80d1, 0x1431: 0x80f9, 0x1432: 0x8f61, 0x1433: 0x8121, 0x1434: 0x8149, 0x1435: 0x8171,
1529 0x1436: 0x8199, 0x1437: 0x81c1, 0x1438: 0x81e9, 0x1439: 0x8239, 0x143a: 0x8261, 0x143b: 0x8289,
1530 0x143c: 0x82b1, 0x143d: 0x82d9, 0x143e: 0x8301, 0x143f: 0x8329,
1531 // Block 0x51, offset 0x1440
1532 0x1440: 0x8351, 0x1441: 0x8379, 0x1442: 0x83f1, 0x1443: 0x8419, 0x1444: 0x84b9, 0x1445: 0x84e1,
1533 0x1446: 0x8509, 0x1447: 0x8531, 0x1448: 0x8559, 0x1449: 0x85d1, 0x144a: 0x85f9, 0x144b: 0x8621,
1534 0x144c: 0x8649, 0x144d: 0x8f89, 0x144e: 0x86c1, 0x144f: 0x86e9, 0x1450: 0x8711, 0x1451: 0x8739,
1535 0x1452: 0x87b1, 0x1453: 0x87d9, 0x1454: 0x8801, 0x1455: 0x8829, 0x1456: 0x8fb1, 0x1457: 0x88a1,
1536 0x1458: 0x88c9, 0x1459: 0x8fd9, 0x145a: 0x8941, 0x145b: 0x8969, 0x145c: 0x8991, 0x145d: 0x89b9,
1537 0x145e: 0x9001, 0x145f: 0x7c71, 0x1460: 0x8ee9, 0x1461: 0x7d39, 0x1462: 0x8f11, 0x1463: 0x7e29,
1538 0x1464: 0x8f39, 0x1465: 0x7ec9, 0x1466: 0x9029, 0x1467: 0x80d1, 0x1468: 0x9051, 0x1469: 0x9079,
1539 0x146a: 0x90a1, 0x146b: 0x8531, 0x146c: 0x8559, 0x146d: 0x8649, 0x146e: 0x8829, 0x146f: 0x8fb1,
1540 0x1470: 0x89b9, 0x1471: 0x9001, 0x1472: 0x90c9, 0x1473: 0x9101, 0x1474: 0x9139, 0x1475: 0x9171,
1541 0x1476: 0x9199, 0x1477: 0x91c1, 0x1478: 0x91e9, 0x1479: 0x9211, 0x147a: 0x9239, 0x147b: 0x9261,
1542 0x147c: 0x9289, 0x147d: 0x92b1, 0x147e: 0x92d9, 0x147f: 0x9301,
1543 // Block 0x52, offset 0x1480
1544 0x1480: 0x9329, 0x1481: 0x9351, 0x1482: 0x9379, 0x1483: 0x93a1, 0x1484: 0x93c9, 0x1485: 0x93f1,
1545 0x1486: 0x9419, 0x1487: 0x9441, 0x1488: 0x9469, 0x1489: 0x9491, 0x148a: 0x94b9, 0x148b: 0x94e1,
1546 0x148c: 0x9079, 0x148d: 0x9509, 0x148e: 0x9531, 0x148f: 0x9559, 0x1490: 0x9581, 0x1491: 0x9171,
1547 0x1492: 0x9199, 0x1493: 0x91c1, 0x1494: 0x91e9, 0x1495: 0x9211, 0x1496: 0x9239, 0x1497: 0x9261,
1548 0x1498: 0x9289, 0x1499: 0x92b1, 0x149a: 0x92d9, 0x149b: 0x9301, 0x149c: 0x9329, 0x149d: 0x9351,
1549 0x149e: 0x9379, 0x149f: 0x93a1, 0x14a0: 0x93c9, 0x14a1: 0x93f1, 0x14a2: 0x9419, 0x14a3: 0x9441,
1550 0x14a4: 0x9469, 0x14a5: 0x9491, 0x14a6: 0x94b9, 0x14a7: 0x94e1, 0x14a8: 0x9079, 0x14a9: 0x9509,
1551 0x14aa: 0x9531, 0x14ab: 0x9559, 0x14ac: 0x9581, 0x14ad: 0x9491, 0x14ae: 0x94b9, 0x14af: 0x94e1,
1552 0x14b0: 0x9079, 0x14b1: 0x9051, 0x14b2: 0x90a1, 0x14b3: 0x8211, 0x14b4: 0x8059, 0x14b5: 0x8081,
1553 0x14b6: 0x80a9, 0x14b7: 0x9491, 0x14b8: 0x94b9, 0x14b9: 0x94e1, 0x14ba: 0x8211, 0x14bb: 0x8239,
1554 0x14bc: 0x95a9, 0x14bd: 0x95a9, 0x14be: 0x0018, 0x14bf: 0x0018,
1555 // Block 0x53, offset 0x14c0
1556 0x14c0: 0x0040, 0x14c1: 0x0040, 0x14c2: 0x0040, 0x14c3: 0x0040, 0x14c4: 0x0040, 0x14c5: 0x0040,
1557 0x14c6: 0x0040, 0x14c7: 0x0040, 0x14c8: 0x0040, 0x14c9: 0x0040, 0x14ca: 0x0040, 0x14cb: 0x0040,
1558 0x14cc: 0x0040, 0x14cd: 0x0040, 0x14ce: 0x0040, 0x14cf: 0x0040, 0x14d0: 0x95d1, 0x14d1: 0x9609,
1559 0x14d2: 0x9609, 0x14d3: 0x9641, 0x14d4: 0x9679, 0x14d5: 0x96b1, 0x14d6: 0x96e9, 0x14d7: 0x9721,
1560 0x14d8: 0x9759, 0x14d9: 0x9759, 0x14da: 0x9791, 0x14db: 0x97c9, 0x14dc: 0x9801, 0x14dd: 0x9839,
1561 0x14de: 0x9871, 0x14df: 0x98a9, 0x14e0: 0x98a9, 0x14e1: 0x98e1, 0x14e2: 0x9919, 0x14e3: 0x9919,
1562 0x14e4: 0x9951, 0x14e5: 0x9951, 0x14e6: 0x9989, 0x14e7: 0x99c1, 0x14e8: 0x99c1, 0x14e9: 0x99f9,
1563 0x14ea: 0x9a31, 0x14eb: 0x9a31, 0x14ec: 0x9a69, 0x14ed: 0x9a69, 0x14ee: 0x9aa1, 0x14ef: 0x9ad9,
1564 0x14f0: 0x9ad9, 0x14f1: 0x9b11, 0x14f2: 0x9b11, 0x14f3: 0x9b49, 0x14f4: 0x9b81, 0x14f5: 0x9bb9,
1565 0x14f6: 0x9bf1, 0x14f7: 0x9bf1, 0x14f8: 0x9c29, 0x14f9: 0x9c61, 0x14fa: 0x9c99, 0x14fb: 0x9cd1,
1566 0x14fc: 0x9d09, 0x14fd: 0x9d09, 0x14fe: 0x9d41, 0x14ff: 0x9d79,
1567 // Block 0x54, offset 0x1500
1568 0x1500: 0xa949, 0x1501: 0xa981, 0x1502: 0xa9b9, 0x1503: 0xa8a1, 0x1504: 0x9bb9, 0x1505: 0x9989,
1569 0x1506: 0xa9f1, 0x1507: 0xaa29, 0x1508: 0x0040, 0x1509: 0x0040, 0x150a: 0x0040, 0x150b: 0x0040,
1570 0x150c: 0x0040, 0x150d: 0x0040, 0x150e: 0x0040, 0x150f: 0x0040, 0x1510: 0x0040, 0x1511: 0x0040,
1571 0x1512: 0x0040, 0x1513: 0x0040, 0x1514: 0x0040, 0x1515: 0x0040, 0x1516: 0x0040, 0x1517: 0x0040,
1572 0x1518: 0x0040, 0x1519: 0x0040, 0x151a: 0x0040, 0x151b: 0x0040, 0x151c: 0x0040, 0x151d: 0x0040,
1573 0x151e: 0x0040, 0x151f: 0x0040, 0x1520: 0x0040, 0x1521: 0x0040, 0x1522: 0x0040, 0x1523: 0x0040,
1574 0x1524: 0x0040, 0x1525: 0x0040, 0x1526: 0x0040, 0x1527: 0x0040, 0x1528: 0x0040, 0x1529: 0x0040,
1575 0x152a: 0x0040, 0x152b: 0x0040, 0x152c: 0x0040, 0x152d: 0x0040, 0x152e: 0x0040, 0x152f: 0x0040,
1576 0x1530: 0xaa61, 0x1531: 0xaa99, 0x1532: 0xaad1, 0x1533: 0xab19, 0x1534: 0xab61, 0x1535: 0xaba9,
1577 0x1536: 0xabf1, 0x1537: 0xac39, 0x1538: 0xac81, 0x1539: 0xacc9, 0x153a: 0xad02, 0x153b: 0xae12,
1578 0x153c: 0xae91, 0x153d: 0x0018, 0x153e: 0x0040, 0x153f: 0x0040,
1579 // Block 0x55, offset 0x1540
1580 0x1540: 0x33c0, 0x1541: 0x33c0, 0x1542: 0x33c0, 0x1543: 0x33c0, 0x1544: 0x33c0, 0x1545: 0x33c0,
1581 0x1546: 0x33c0, 0x1547: 0x33c0, 0x1548: 0x33c0, 0x1549: 0x33c0, 0x154a: 0x33c0, 0x154b: 0x33c0,
1582 0x154c: 0x33c0, 0x154d: 0x33c0, 0x154e: 0x33c0, 0x154f: 0x33c0, 0x1550: 0xaeda, 0x1551: 0x7d55,
1583 0x1552: 0x0040, 0x1553: 0xaeea, 0x1554: 0x03c2, 0x1555: 0xaefa, 0x1556: 0xaf0a, 0x1557: 0x7d75,
1584 0x1558: 0x7d95, 0x1559: 0x0040, 0x155a: 0x0040, 0x155b: 0x0040, 0x155c: 0x0040, 0x155d: 0x0040,
1585 0x155e: 0x0040, 0x155f: 0x0040, 0x1560: 0x3308, 0x1561: 0x3308, 0x1562: 0x3308, 0x1563: 0x3308,
1586 0x1564: 0x3308, 0x1565: 0x3308, 0x1566: 0x3308, 0x1567: 0x3308, 0x1568: 0x3308, 0x1569: 0x3308,
1587 0x156a: 0x3308, 0x156b: 0x3308, 0x156c: 0x3308, 0x156d: 0x3308, 0x156e: 0x3308, 0x156f: 0x3308,
1588 0x1570: 0x0040, 0x1571: 0x7db5, 0x1572: 0x7dd5, 0x1573: 0xaf1a, 0x1574: 0xaf1a, 0x1575: 0x1fd2,
1589 0x1576: 0x1fe2, 0x1577: 0xaf2a, 0x1578: 0xaf3a, 0x1579: 0x7df5, 0x157a: 0x7e15, 0x157b: 0x7e35,
1590 0x157c: 0x7df5, 0x157d: 0x7e55, 0x157e: 0x7e75, 0x157f: 0x7e55,
1591 // Block 0x56, offset 0x1580
1592 0x1580: 0x7e95, 0x1581: 0x7eb5, 0x1582: 0x7ed5, 0x1583: 0x7eb5, 0x1584: 0x7ef5, 0x1585: 0x0018,
1593 0x1586: 0x0018, 0x1587: 0xaf4a, 0x1588: 0xaf5a, 0x1589: 0x7f16, 0x158a: 0x7f36, 0x158b: 0x7f56,
1594 0x158c: 0x7f76, 0x158d: 0xaf1a, 0x158e: 0xaf1a, 0x158f: 0xaf1a, 0x1590: 0xaeda, 0x1591: 0x7f95,
1595 0x1592: 0x0040, 0x1593: 0x0040, 0x1594: 0x03c2, 0x1595: 0xaeea, 0x1596: 0xaf0a, 0x1597: 0xaefa,
1596 0x1598: 0x7fb5, 0x1599: 0x1fd2, 0x159a: 0x1fe2, 0x159b: 0xaf2a, 0x159c: 0xaf3a, 0x159d: 0x7e95,
1597 0x159e: 0x7ef5, 0x159f: 0xaf6a, 0x15a0: 0xaf7a, 0x15a1: 0xaf8a, 0x15a2: 0x1fb2, 0x15a3: 0xaf99,
1598 0x15a4: 0xafaa, 0x15a5: 0xafba, 0x15a6: 0x1fc2, 0x15a7: 0x0040, 0x15a8: 0xafca, 0x15a9: 0xafda,
1599 0x15aa: 0xafea, 0x15ab: 0xaffa, 0x15ac: 0x0040, 0x15ad: 0x0040, 0x15ae: 0x0040, 0x15af: 0x0040,
1600 0x15b0: 0x7fd6, 0x15b1: 0xb009, 0x15b2: 0x7ff6, 0x15b3: 0x0808, 0x15b4: 0x8016, 0x15b5: 0x0040,
1601 0x15b6: 0x8036, 0x15b7: 0xb031, 0x15b8: 0x8056, 0x15b9: 0xb059, 0x15ba: 0x8076, 0x15bb: 0xb081,
1602 0x15bc: 0x8096, 0x15bd: 0xb0a9, 0x15be: 0x80b6, 0x15bf: 0xb0d1,
1603 // Block 0x57, offset 0x15c0
1604 0x15c0: 0xb0f9, 0x15c1: 0xb111, 0x15c2: 0xb111, 0x15c3: 0xb129, 0x15c4: 0xb129, 0x15c5: 0xb141,
1605 0x15c6: 0xb141, 0x15c7: 0xb159, 0x15c8: 0xb159, 0x15c9: 0xb171, 0x15ca: 0xb171, 0x15cb: 0xb171,
1606 0x15cc: 0xb171, 0x15cd: 0xb189, 0x15ce: 0xb189, 0x15cf: 0xb1a1, 0x15d0: 0xb1a1, 0x15d1: 0xb1a1,
1607 0x15d2: 0xb1a1, 0x15d3: 0xb1b9, 0x15d4: 0xb1b9, 0x15d5: 0xb1d1, 0x15d6: 0xb1d1, 0x15d7: 0xb1d1,
1608 0x15d8: 0xb1d1, 0x15d9: 0xb1e9, 0x15da: 0xb1e9, 0x15db: 0xb1e9, 0x15dc: 0xb1e9, 0x15dd: 0xb201,
1609 0x15de: 0xb201, 0x15df: 0xb201, 0x15e0: 0xb201, 0x15e1: 0xb219, 0x15e2: 0xb219, 0x15e3: 0xb219,
1610 0x15e4: 0xb219, 0x15e5: 0xb231, 0x15e6: 0xb231, 0x15e7: 0xb231, 0x15e8: 0xb231, 0x15e9: 0xb249,
1611 0x15ea: 0xb249, 0x15eb: 0xb261, 0x15ec: 0xb261, 0x15ed: 0xb279, 0x15ee: 0xb279, 0x15ef: 0xb291,
1612 0x15f0: 0xb291, 0x15f1: 0xb2a9, 0x15f2: 0xb2a9, 0x15f3: 0xb2a9, 0x15f4: 0xb2a9, 0x15f5: 0xb2c1,
1613 0x15f6: 0xb2c1, 0x15f7: 0xb2c1, 0x15f8: 0xb2c1, 0x15f9: 0xb2d9, 0x15fa: 0xb2d9, 0x15fb: 0xb2d9,
1614 0x15fc: 0xb2d9, 0x15fd: 0xb2f1, 0x15fe: 0xb2f1, 0x15ff: 0xb2f1,
1615 // Block 0x58, offset 0x1600
1616 0x1600: 0xb2f1, 0x1601: 0xb309, 0x1602: 0xb309, 0x1603: 0xb309, 0x1604: 0xb309, 0x1605: 0xb321,
1617 0x1606: 0xb321, 0x1607: 0xb321, 0x1608: 0xb321, 0x1609: 0xb339, 0x160a: 0xb339, 0x160b: 0xb339,
1618 0x160c: 0xb339, 0x160d: 0xb351, 0x160e: 0xb351, 0x160f: 0xb351, 0x1610: 0xb351, 0x1611: 0xb369,
1619 0x1612: 0xb369, 0x1613: 0xb369, 0x1614: 0xb369, 0x1615: 0xb381, 0x1616: 0xb381, 0x1617: 0xb381,
1620 0x1618: 0xb381, 0x1619: 0xb399, 0x161a: 0xb399, 0x161b: 0xb399, 0x161c: 0xb399, 0x161d: 0xb3b1,
1621 0x161e: 0xb3b1, 0x161f: 0xb3b1, 0x1620: 0xb3b1, 0x1621: 0xb3c9, 0x1622: 0xb3c9, 0x1623: 0xb3c9,
1622 0x1624: 0xb3c9, 0x1625: 0xb3e1, 0x1626: 0xb3e1, 0x1627: 0xb3e1, 0x1628: 0xb3e1, 0x1629: 0xb3f9,
1623 0x162a: 0xb3f9, 0x162b: 0xb3f9, 0x162c: 0xb3f9, 0x162d: 0xb411, 0x162e: 0xb411, 0x162f: 0x7ab1,
1624 0x1630: 0x7ab1, 0x1631: 0xb429, 0x1632: 0xb429, 0x1633: 0xb429, 0x1634: 0xb429, 0x1635: 0xb441,
1625 0x1636: 0xb441, 0x1637: 0xb469, 0x1638: 0xb469, 0x1639: 0xb491, 0x163a: 0xb491, 0x163b: 0xb4b9,
1626 0x163c: 0xb4b9, 0x163d: 0x0040, 0x163e: 0x0040, 0x163f: 0x03c0,
1627 // Block 0x59, offset 0x1640
1628 0x1640: 0x0040, 0x1641: 0xaefa, 0x1642: 0xb4e2, 0x1643: 0xaf6a, 0x1644: 0xafda, 0x1645: 0xafea,
1629 0x1646: 0xaf7a, 0x1647: 0xb4f2, 0x1648: 0x1fd2, 0x1649: 0x1fe2, 0x164a: 0xaf8a, 0x164b: 0x1fb2,
1630 0x164c: 0xaeda, 0x164d: 0xaf99, 0x164e: 0x29d1, 0x164f: 0xb502, 0x1650: 0x1f41, 0x1651: 0x00c9,
1631 0x1652: 0x0069, 0x1653: 0x0079, 0x1654: 0x1f51, 0x1655: 0x1f61, 0x1656: 0x1f71, 0x1657: 0x1f81,
1632 0x1658: 0x1f91, 0x1659: 0x1fa1, 0x165a: 0xaeea, 0x165b: 0x03c2, 0x165c: 0xafaa, 0x165d: 0x1fc2,
1633 0x165e: 0xafba, 0x165f: 0xaf0a, 0x1660: 0xaffa, 0x1661: 0x0039, 0x1662: 0x0ee9, 0x1663: 0x1159,
1634 0x1664: 0x0ef9, 0x1665: 0x0f09, 0x1666: 0x1199, 0x1667: 0x0f31, 0x1668: 0x0249, 0x1669: 0x0f41,
1635 0x166a: 0x0259, 0x166b: 0x0f51, 0x166c: 0x0359, 0x166d: 0x0f61, 0x166e: 0x0f71, 0x166f: 0x00d9,
1636 0x1670: 0x0f99, 0x1671: 0x2039, 0x1672: 0x0269, 0x1673: 0x01d9, 0x1674: 0x0fa9, 0x1675: 0x0fb9,
1637 0x1676: 0x1089, 0x1677: 0x0279, 0x1678: 0x0369, 0x1679: 0x0289, 0x167a: 0x13d1, 0x167b: 0xaf4a,
1638 0x167c: 0xafca, 0x167d: 0xaf5a, 0x167e: 0xb512, 0x167f: 0xaf1a,
1639 // Block 0x5a, offset 0x1680
1640 0x1680: 0x1caa, 0x1681: 0x0039, 0x1682: 0x0ee9, 0x1683: 0x1159, 0x1684: 0x0ef9, 0x1685: 0x0f09,
1641 0x1686: 0x1199, 0x1687: 0x0f31, 0x1688: 0x0249, 0x1689: 0x0f41, 0x168a: 0x0259, 0x168b: 0x0f51,
1642 0x168c: 0x0359, 0x168d: 0x0f61, 0x168e: 0x0f71, 0x168f: 0x00d9, 0x1690: 0x0f99, 0x1691: 0x2039,
1643 0x1692: 0x0269, 0x1693: 0x01d9, 0x1694: 0x0fa9, 0x1695: 0x0fb9, 0x1696: 0x1089, 0x1697: 0x0279,
1644 0x1698: 0x0369, 0x1699: 0x0289, 0x169a: 0x13d1, 0x169b: 0xaf2a, 0x169c: 0xb522, 0x169d: 0xaf3a,
1645 0x169e: 0xb532, 0x169f: 0x80d5, 0x16a0: 0x80f5, 0x16a1: 0x29d1, 0x16a2: 0x8115, 0x16a3: 0x8115,
1646 0x16a4: 0x8135, 0x16a5: 0x8155, 0x16a6: 0x8175, 0x16a7: 0x8195, 0x16a8: 0x81b5, 0x16a9: 0x81d5,
1647 0x16aa: 0x81f5, 0x16ab: 0x8215, 0x16ac: 0x8235, 0x16ad: 0x8255, 0x16ae: 0x8275, 0x16af: 0x8295,
1648 0x16b0: 0x82b5, 0x16b1: 0x82d5, 0x16b2: 0x82f5, 0x16b3: 0x8315, 0x16b4: 0x8335, 0x16b5: 0x8355,
1649 0x16b6: 0x8375, 0x16b7: 0x8395, 0x16b8: 0x83b5, 0x16b9: 0x83d5, 0x16ba: 0x83f5, 0x16bb: 0x8415,
1650 0x16bc: 0x81b5, 0x16bd: 0x8435, 0x16be: 0x8455, 0x16bf: 0x8215,
1651 // Block 0x5b, offset 0x16c0
1652 0x16c0: 0x8475, 0x16c1: 0x8495, 0x16c2: 0x84b5, 0x16c3: 0x84d5, 0x16c4: 0x84f5, 0x16c5: 0x8515,
1653 0x16c6: 0x8535, 0x16c7: 0x8555, 0x16c8: 0x84d5, 0x16c9: 0x8575, 0x16ca: 0x84d5, 0x16cb: 0x8595,
1654 0x16cc: 0x8595, 0x16cd: 0x85b5, 0x16ce: 0x85b5, 0x16cf: 0x85d5, 0x16d0: 0x8515, 0x16d1: 0x85f5,
1655 0x16d2: 0x8615, 0x16d3: 0x85f5, 0x16d4: 0x8635, 0x16d5: 0x8615, 0x16d6: 0x8655, 0x16d7: 0x8655,
1656 0x16d8: 0x8675, 0x16d9: 0x8675, 0x16da: 0x8695, 0x16db: 0x8695, 0x16dc: 0x8615, 0x16dd: 0x8115,
1657 0x16de: 0x86b5, 0x16df: 0x86d5, 0x16e0: 0x0040, 0x16e1: 0x86f5, 0x16e2: 0x8715, 0x16e3: 0x8735,
1658 0x16e4: 0x8755, 0x16e5: 0x8735, 0x16e6: 0x8775, 0x16e7: 0x8795, 0x16e8: 0x87b5, 0x16e9: 0x87b5,
1659 0x16ea: 0x87d5, 0x16eb: 0x87d5, 0x16ec: 0x87f5, 0x16ed: 0x87f5, 0x16ee: 0x87d5, 0x16ef: 0x87d5,
1660 0x16f0: 0x8815, 0x16f1: 0x8835, 0x16f2: 0x8855, 0x16f3: 0x8875, 0x16f4: 0x8895, 0x16f5: 0x88b5,
1661 0x16f6: 0x88b5, 0x16f7: 0x88b5, 0x16f8: 0x88d5, 0x16f9: 0x88d5, 0x16fa: 0x88d5, 0x16fb: 0x88d5,
1662 0x16fc: 0x87b5, 0x16fd: 0x87b5, 0x16fe: 0x87b5, 0x16ff: 0x0040,
1663 // Block 0x5c, offset 0x1700
1664 0x1700: 0x0040, 0x1701: 0x0040, 0x1702: 0x8715, 0x1703: 0x86f5, 0x1704: 0x88f5, 0x1705: 0x86f5,
1665 0x1706: 0x8715, 0x1707: 0x86f5, 0x1708: 0x0040, 0x1709: 0x0040, 0x170a: 0x8915, 0x170b: 0x8715,
1666 0x170c: 0x8935, 0x170d: 0x88f5, 0x170e: 0x8935, 0x170f: 0x8715, 0x1710: 0x0040, 0x1711: 0x0040,
1667 0x1712: 0x8955, 0x1713: 0x8975, 0x1714: 0x8875, 0x1715: 0x8935, 0x1716: 0x88f5, 0x1717: 0x8935,
1668 0x1718: 0x0040, 0x1719: 0x0040, 0x171a: 0x8995, 0x171b: 0x89b5, 0x171c: 0x8995, 0x171d: 0x0040,
1669 0x171e: 0x0040, 0x171f: 0x0040, 0x1720: 0xb541, 0x1721: 0xb559, 0x1722: 0xb571, 0x1723: 0x89d6,
1670 0x1724: 0xb589, 0x1725: 0xb5a1, 0x1726: 0x89f5, 0x1727: 0x0040, 0x1728: 0x8a15, 0x1729: 0x8a35,
1671 0x172a: 0x8a55, 0x172b: 0x8a35, 0x172c: 0x8a75, 0x172d: 0x8a95, 0x172e: 0x8ab5, 0x172f: 0x0040,
1672 0x1730: 0x0040, 0x1731: 0x0040, 0x1732: 0x0040, 0x1733: 0x0040, 0x1734: 0x0040, 0x1735: 0x0040,
1673 0x1736: 0x0040, 0x1737: 0x0040, 0x1738: 0x0040, 0x1739: 0x0340, 0x173a: 0x0340, 0x173b: 0x0340,
1674 0x173c: 0x0040, 0x173d: 0x0040, 0x173e: 0x0040, 0x173f: 0x0040,
1675 // Block 0x5d, offset 0x1740
1676 0x1740: 0x0a08, 0x1741: 0x0a08, 0x1742: 0x0a08, 0x1743: 0x0a08, 0x1744: 0x0a08, 0x1745: 0x0c08,
1677 0x1746: 0x0808, 0x1747: 0x0c08, 0x1748: 0x0818, 0x1749: 0x0c08, 0x174a: 0x0c08, 0x174b: 0x0808,
1678 0x174c: 0x0808, 0x174d: 0x0908, 0x174e: 0x0c08, 0x174f: 0x0c08, 0x1750: 0x0c08, 0x1751: 0x0c08,
1679 0x1752: 0x0c08, 0x1753: 0x0a08, 0x1754: 0x0a08, 0x1755: 0x0a08, 0x1756: 0x0a08, 0x1757: 0x0908,
1680 0x1758: 0x0a08, 0x1759: 0x0a08, 0x175a: 0x0a08, 0x175b: 0x0a08, 0x175c: 0x0a08, 0x175d: 0x0c08,
1681 0x175e: 0x0a08, 0x175f: 0x0a08, 0x1760: 0x0a08, 0x1761: 0x0c08, 0x1762: 0x0808, 0x1763: 0x0808,
1682 0x1764: 0x0c08, 0x1765: 0x3308, 0x1766: 0x3308, 0x1767: 0x0040, 0x1768: 0x0040, 0x1769: 0x0040,
1683 0x176a: 0x0040, 0x176b: 0x0a18, 0x176c: 0x0a18, 0x176d: 0x0a18, 0x176e: 0x0a18, 0x176f: 0x0c18,
1684 0x1770: 0x0818, 0x1771: 0x0818, 0x1772: 0x0818, 0x1773: 0x0818, 0x1774: 0x0818, 0x1775: 0x0818,
1685 0x1776: 0x0818, 0x1777: 0x0040, 0x1778: 0x0040, 0x1779: 0x0040, 0x177a: 0x0040, 0x177b: 0x0040,
1686 0x177c: 0x0040, 0x177d: 0x0040, 0x177e: 0x0040, 0x177f: 0x0040,
1687 // Block 0x5e, offset 0x1780
1688 0x1780: 0x0a08, 0x1781: 0x0c08, 0x1782: 0x0a08, 0x1783: 0x0c08, 0x1784: 0x0c08, 0x1785: 0x0c08,
1689 0x1786: 0x0a08, 0x1787: 0x0a08, 0x1788: 0x0a08, 0x1789: 0x0c08, 0x178a: 0x0a08, 0x178b: 0x0a08,
1690 0x178c: 0x0c08, 0x178d: 0x0a08, 0x178e: 0x0c08, 0x178f: 0x0c08, 0x1790: 0x0a08, 0x1791: 0x0c08,
1691 0x1792: 0x0040, 0x1793: 0x0040, 0x1794: 0x0040, 0x1795: 0x0040, 0x1796: 0x0040, 0x1797: 0x0040,
1692 0x1798: 0x0040, 0x1799: 0x0818, 0x179a: 0x0818, 0x179b: 0x0818, 0x179c: 0x0818, 0x179d: 0x0040,
1693 0x179e: 0x0040, 0x179f: 0x0040, 0x17a0: 0x0040, 0x17a1: 0x0040, 0x17a2: 0x0040, 0x17a3: 0x0040,
1694 0x17a4: 0x0040, 0x17a5: 0x0040, 0x17a6: 0x0040, 0x17a7: 0x0040, 0x17a8: 0x0040, 0x17a9: 0x0c18,
1695 0x17aa: 0x0c18, 0x17ab: 0x0c18, 0x17ac: 0x0c18, 0x17ad: 0x0a18, 0x17ae: 0x0a18, 0x17af: 0x0818,
1696 0x17b0: 0x0040, 0x17b1: 0x0040, 0x17b2: 0x0040, 0x17b3: 0x0040, 0x17b4: 0x0040, 0x17b5: 0x0040,
1697 0x17b6: 0x0040, 0x17b7: 0x0040, 0x17b8: 0x0040, 0x17b9: 0x0040, 0x17ba: 0x0040, 0x17bb: 0x0040,
1698 0x17bc: 0x0040, 0x17bd: 0x0040, 0x17be: 0x0040, 0x17bf: 0x0040,
1699 // Block 0x5f, offset 0x17c0
1700 0x17c0: 0x3308, 0x17c1: 0x3308, 0x17c2: 0x3008, 0x17c3: 0x3008, 0x17c4: 0x0040, 0x17c5: 0x0008,
1701 0x17c6: 0x0008, 0x17c7: 0x0008, 0x17c8: 0x0008, 0x17c9: 0x0008, 0x17ca: 0x0008, 0x17cb: 0x0008,
1702 0x17cc: 0x0008, 0x17cd: 0x0040, 0x17ce: 0x0040, 0x17cf: 0x0008, 0x17d0: 0x0008, 0x17d1: 0x0040,
1703 0x17d2: 0x0040, 0x17d3: 0x0008, 0x17d4: 0x0008, 0x17d5: 0x0008, 0x17d6: 0x0008, 0x17d7: 0x0008,
1704 0x17d8: 0x0008, 0x17d9: 0x0008, 0x17da: 0x0008, 0x17db: 0x0008, 0x17dc: 0x0008, 0x17dd: 0x0008,
1705 0x17de: 0x0008, 0x17df: 0x0008, 0x17e0: 0x0008, 0x17e1: 0x0008, 0x17e2: 0x0008, 0x17e3: 0x0008,
1706 0x17e4: 0x0008, 0x17e5: 0x0008, 0x17e6: 0x0008, 0x17e7: 0x0008, 0x17e8: 0x0008, 0x17e9: 0x0040,
1707 0x17ea: 0x0008, 0x17eb: 0x0008, 0x17ec: 0x0008, 0x17ed: 0x0008, 0x17ee: 0x0008, 0x17ef: 0x0008,
1708 0x17f0: 0x0008, 0x17f1: 0x0040, 0x17f2: 0x0008, 0x17f3: 0x0008, 0x17f4: 0x0040, 0x17f5: 0x0008,
1709 0x17f6: 0x0008, 0x17f7: 0x0008, 0x17f8: 0x0008, 0x17f9: 0x0008, 0x17fa: 0x0040, 0x17fb: 0x0040,
1710 0x17fc: 0x3308, 0x17fd: 0x0008, 0x17fe: 0x3008, 0x17ff: 0x3008,
1711 // Block 0x60, offset 0x1800
1712 0x1800: 0x3308, 0x1801: 0x3008, 0x1802: 0x3008, 0x1803: 0x3008, 0x1804: 0x3008, 0x1805: 0x0040,
1713 0x1806: 0x0040, 0x1807: 0x3008, 0x1808: 0x3008, 0x1809: 0x0040, 0x180a: 0x0040, 0x180b: 0x3008,
1714 0x180c: 0x3008, 0x180d: 0x3808, 0x180e: 0x0040, 0x180f: 0x0040, 0x1810: 0x0008, 0x1811: 0x0040,
1715 0x1812: 0x0040, 0x1813: 0x0040, 0x1814: 0x0040, 0x1815: 0x0040, 0x1816: 0x0040, 0x1817: 0x3008,
1716 0x1818: 0x0040, 0x1819: 0x0040, 0x181a: 0x0040, 0x181b: 0x0040, 0x181c: 0x0040, 0x181d: 0x0008,
1717 0x181e: 0x0008, 0x181f: 0x0008, 0x1820: 0x0008, 0x1821: 0x0008, 0x1822: 0x3008, 0x1823: 0x3008,
1718 0x1824: 0x0040, 0x1825: 0x0040, 0x1826: 0x3308, 0x1827: 0x3308, 0x1828: 0x3308, 0x1829: 0x3308,
1719 0x182a: 0x3308, 0x182b: 0x3308, 0x182c: 0x3308, 0x182d: 0x0040, 0x182e: 0x0040, 0x182f: 0x0040,
1720 0x1830: 0x3308, 0x1831: 0x3308, 0x1832: 0x3308, 0x1833: 0x3308, 0x1834: 0x3308, 0x1835: 0x0040,
1721 0x1836: 0x0040, 0x1837: 0x0040, 0x1838: 0x0040, 0x1839: 0x0040, 0x183a: 0x0040, 0x183b: 0x0040,
1722 0x183c: 0x0040, 0x183d: 0x0040, 0x183e: 0x0040, 0x183f: 0x0040,
1723 // Block 0x61, offset 0x1840
1724 0x1840: 0x0039, 0x1841: 0x0ee9, 0x1842: 0x1159, 0x1843: 0x0ef9, 0x1844: 0x0f09, 0x1845: 0x1199,
1725 0x1846: 0x0f31, 0x1847: 0x0249, 0x1848: 0x0f41, 0x1849: 0x0259, 0x184a: 0x0f51, 0x184b: 0x0359,
1726 0x184c: 0x0f61, 0x184d: 0x0f71, 0x184e: 0x00d9, 0x184f: 0x0f99, 0x1850: 0x2039, 0x1851: 0x0269,
1727 0x1852: 0x01d9, 0x1853: 0x0fa9, 0x1854: 0x0fb9, 0x1855: 0x1089, 0x1856: 0x0279, 0x1857: 0x0369,
1728 0x1858: 0x0289, 0x1859: 0x13d1, 0x185a: 0x0039, 0x185b: 0x0ee9, 0x185c: 0x1159, 0x185d: 0x0ef9,
1729 0x185e: 0x0f09, 0x185f: 0x1199, 0x1860: 0x0f31, 0x1861: 0x0249, 0x1862: 0x0f41, 0x1863: 0x0259,
1730 0x1864: 0x0f51, 0x1865: 0x0359, 0x1866: 0x0f61, 0x1867: 0x0f71, 0x1868: 0x00d9, 0x1869: 0x0f99,
1731 0x186a: 0x2039, 0x186b: 0x0269, 0x186c: 0x01d9, 0x186d: 0x0fa9, 0x186e: 0x0fb9, 0x186f: 0x1089,
1732 0x1870: 0x0279, 0x1871: 0x0369, 0x1872: 0x0289, 0x1873: 0x13d1, 0x1874: 0x0039, 0x1875: 0x0ee9,
1733 0x1876: 0x1159, 0x1877: 0x0ef9, 0x1878: 0x0f09, 0x1879: 0x1199, 0x187a: 0x0f31, 0x187b: 0x0249,
1734 0x187c: 0x0f41, 0x187d: 0x0259, 0x187e: 0x0f51, 0x187f: 0x0359,
1735 // Block 0x62, offset 0x1880
1736 0x1880: 0x0f61, 0x1881: 0x0f71, 0x1882: 0x00d9, 0x1883: 0x0f99, 0x1884: 0x2039, 0x1885: 0x0269,
1737 0x1886: 0x01d9, 0x1887: 0x0fa9, 0x1888: 0x0fb9, 0x1889: 0x1089, 0x188a: 0x0279, 0x188b: 0x0369,
1738 0x188c: 0x0289, 0x188d: 0x13d1, 0x188e: 0x0039, 0x188f: 0x0ee9, 0x1890: 0x1159, 0x1891: 0x0ef9,
1739 0x1892: 0x0f09, 0x1893: 0x1199, 0x1894: 0x0f31, 0x1895: 0x0040, 0x1896: 0x0f41, 0x1897: 0x0259,
1740 0x1898: 0x0f51, 0x1899: 0x0359, 0x189a: 0x0f61, 0x189b: 0x0f71, 0x189c: 0x00d9, 0x189d: 0x0f99,
1741 0x189e: 0x2039, 0x189f: 0x0269, 0x18a0: 0x01d9, 0x18a1: 0x0fa9, 0x18a2: 0x0fb9, 0x18a3: 0x1089,
1742 0x18a4: 0x0279, 0x18a5: 0x0369, 0x18a6: 0x0289, 0x18a7: 0x13d1, 0x18a8: 0x0039, 0x18a9: 0x0ee9,
1743 0x18aa: 0x1159, 0x18ab: 0x0ef9, 0x18ac: 0x0f09, 0x18ad: 0x1199, 0x18ae: 0x0f31, 0x18af: 0x0249,
1744 0x18b0: 0x0f41, 0x18b1: 0x0259, 0x18b2: 0x0f51, 0x18b3: 0x0359, 0x18b4: 0x0f61, 0x18b5: 0x0f71,
1745 0x18b6: 0x00d9, 0x18b7: 0x0f99, 0x18b8: 0x2039, 0x18b9: 0x0269, 0x18ba: 0x01d9, 0x18bb: 0x0fa9,
1746 0x18bc: 0x0fb9, 0x18bd: 0x1089, 0x18be: 0x0279, 0x18bf: 0x0369,
1747 // Block 0x63, offset 0x18c0
1748 0x18c0: 0x0289, 0x18c1: 0x13d1, 0x18c2: 0x0039, 0x18c3: 0x0ee9, 0x18c4: 0x1159, 0x18c5: 0x0ef9,
1749 0x18c6: 0x0f09, 0x18c7: 0x1199, 0x18c8: 0x0f31, 0x18c9: 0x0249, 0x18ca: 0x0f41, 0x18cb: 0x0259,
1750 0x18cc: 0x0f51, 0x18cd: 0x0359, 0x18ce: 0x0f61, 0x18cf: 0x0f71, 0x18d0: 0x00d9, 0x18d1: 0x0f99,
1751 0x18d2: 0x2039, 0x18d3: 0x0269, 0x18d4: 0x01d9, 0x18d5: 0x0fa9, 0x18d6: 0x0fb9, 0x18d7: 0x1089,
1752 0x18d8: 0x0279, 0x18d9: 0x0369, 0x18da: 0x0289, 0x18db: 0x13d1, 0x18dc: 0x0039, 0x18dd: 0x0040,
1753 0x18de: 0x1159, 0x18df: 0x0ef9, 0x18e0: 0x0040, 0x18e1: 0x0040, 0x18e2: 0x0f31, 0x18e3: 0x0040,
1754 0x18e4: 0x0040, 0x18e5: 0x0259, 0x18e6: 0x0f51, 0x18e7: 0x0040, 0x18e8: 0x0040, 0x18e9: 0x0f71,
1755 0x18ea: 0x00d9, 0x18eb: 0x0f99, 0x18ec: 0x2039, 0x18ed: 0x0040, 0x18ee: 0x01d9, 0x18ef: 0x0fa9,
1756 0x18f0: 0x0fb9, 0x18f1: 0x1089, 0x18f2: 0x0279, 0x18f3: 0x0369, 0x18f4: 0x0289, 0x18f5: 0x13d1,
1757 0x18f6: 0x0039, 0x18f7: 0x0ee9, 0x18f8: 0x1159, 0x18f9: 0x0ef9, 0x18fa: 0x0040, 0x18fb: 0x1199,
1758 0x18fc: 0x0040, 0x18fd: 0x0249, 0x18fe: 0x0f41, 0x18ff: 0x0259,
1759 // Block 0x64, offset 0x1900
1760 0x1900: 0x0f51, 0x1901: 0x0359, 0x1902: 0x0f61, 0x1903: 0x0f71, 0x1904: 0x0040, 0x1905: 0x0f99,
1761 0x1906: 0x2039, 0x1907: 0x0269, 0x1908: 0x01d9, 0x1909: 0x0fa9, 0x190a: 0x0fb9, 0x190b: 0x1089,
1762 0x190c: 0x0279, 0x190d: 0x0369, 0x190e: 0x0289, 0x190f: 0x13d1, 0x1910: 0x0039, 0x1911: 0x0ee9,
1763 0x1912: 0x1159, 0x1913: 0x0ef9, 0x1914: 0x0f09, 0x1915: 0x1199, 0x1916: 0x0f31, 0x1917: 0x0249,
1764 0x1918: 0x0f41, 0x1919: 0x0259, 0x191a: 0x0f51, 0x191b: 0x0359, 0x191c: 0x0f61, 0x191d: 0x0f71,
1765 0x191e: 0x00d9, 0x191f: 0x0f99, 0x1920: 0x2039, 0x1921: 0x0269, 0x1922: 0x01d9, 0x1923: 0x0fa9,
1766 0x1924: 0x0fb9, 0x1925: 0x1089, 0x1926: 0x0279, 0x1927: 0x0369, 0x1928: 0x0289, 0x1929: 0x13d1,
1767 0x192a: 0x0039, 0x192b: 0x0ee9, 0x192c: 0x1159, 0x192d: 0x0ef9, 0x192e: 0x0f09, 0x192f: 0x1199,
1768 0x1930: 0x0f31, 0x1931: 0x0249, 0x1932: 0x0f41, 0x1933: 0x0259, 0x1934: 0x0f51, 0x1935: 0x0359,
1769 0x1936: 0x0f61, 0x1937: 0x0f71, 0x1938: 0x00d9, 0x1939: 0x0f99, 0x193a: 0x2039, 0x193b: 0x0269,
1770 0x193c: 0x01d9, 0x193d: 0x0fa9, 0x193e: 0x0fb9, 0x193f: 0x1089,
1771 // Block 0x65, offset 0x1940
1772 0x1940: 0x0279, 0x1941: 0x0369, 0x1942: 0x0289, 0x1943: 0x13d1, 0x1944: 0x0039, 0x1945: 0x0ee9,
1773 0x1946: 0x0040, 0x1947: 0x0ef9, 0x1948: 0x0f09, 0x1949: 0x1199, 0x194a: 0x0f31, 0x194b: 0x0040,
1774 0x194c: 0x0040, 0x194d: 0x0259, 0x194e: 0x0f51, 0x194f: 0x0359, 0x1950: 0x0f61, 0x1951: 0x0f71,
1775 0x1952: 0x00d9, 0x1953: 0x0f99, 0x1954: 0x2039, 0x1955: 0x0040, 0x1956: 0x01d9, 0x1957: 0x0fa9,
1776 0x1958: 0x0fb9, 0x1959: 0x1089, 0x195a: 0x0279, 0x195b: 0x0369, 0x195c: 0x0289, 0x195d: 0x0040,
1777 0x195e: 0x0039, 0x195f: 0x0ee9, 0x1960: 0x1159, 0x1961: 0x0ef9, 0x1962: 0x0f09, 0x1963: 0x1199,
1778 0x1964: 0x0f31, 0x1965: 0x0249, 0x1966: 0x0f41, 0x1967: 0x0259, 0x1968: 0x0f51, 0x1969: 0x0359,
1779 0x196a: 0x0f61, 0x196b: 0x0f71, 0x196c: 0x00d9, 0x196d: 0x0f99, 0x196e: 0x2039, 0x196f: 0x0269,
1780 0x1970: 0x01d9, 0x1971: 0x0fa9, 0x1972: 0x0fb9, 0x1973: 0x1089, 0x1974: 0x0279, 0x1975: 0x0369,
1781 0x1976: 0x0289, 0x1977: 0x13d1, 0x1978: 0x0039, 0x1979: 0x0ee9, 0x197a: 0x0040, 0x197b: 0x0ef9,
1782 0x197c: 0x0f09, 0x197d: 0x1199, 0x197e: 0x0f31, 0x197f: 0x0040,
1783 // Block 0x66, offset 0x1980
1784 0x1980: 0x0f41, 0x1981: 0x0259, 0x1982: 0x0f51, 0x1983: 0x0359, 0x1984: 0x0f61, 0x1985: 0x0040,
1785 0x1986: 0x00d9, 0x1987: 0x0040, 0x1988: 0x0040, 0x1989: 0x0040, 0x198a: 0x01d9, 0x198b: 0x0fa9,
1786 0x198c: 0x0fb9, 0x198d: 0x1089, 0x198e: 0x0279, 0x198f: 0x0369, 0x1990: 0x0289, 0x1991: 0x0040,
1787 0x1992: 0x0039, 0x1993: 0x0ee9, 0x1994: 0x1159, 0x1995: 0x0ef9, 0x1996: 0x0f09, 0x1997: 0x1199,
1788 0x1998: 0x0f31, 0x1999: 0x0249, 0x199a: 0x0f41, 0x199b: 0x0259, 0x199c: 0x0f51, 0x199d: 0x0359,
1789 0x199e: 0x0f61, 0x199f: 0x0f71, 0x19a0: 0x00d9, 0x19a1: 0x0f99, 0x19a2: 0x2039, 0x19a3: 0x0269,
1790 0x19a4: 0x01d9, 0x19a5: 0x0fa9, 0x19a6: 0x0fb9, 0x19a7: 0x1089, 0x19a8: 0x0279, 0x19a9: 0x0369,
1791 0x19aa: 0x0289, 0x19ab: 0x13d1, 0x19ac: 0x0039, 0x19ad: 0x0ee9, 0x19ae: 0x1159, 0x19af: 0x0ef9,
1792 0x19b0: 0x0f09, 0x19b1: 0x1199, 0x19b2: 0x0f31, 0x19b3: 0x0249, 0x19b4: 0x0f41, 0x19b5: 0x0259,
1793 0x19b6: 0x0f51, 0x19b7: 0x0359, 0x19b8: 0x0f61, 0x19b9: 0x0f71, 0x19ba: 0x00d9, 0x19bb: 0x0f99,
1794 0x19bc: 0x2039, 0x19bd: 0x0269, 0x19be: 0x01d9, 0x19bf: 0x0fa9,
1795 // Block 0x67, offset 0x19c0
1796 0x19c0: 0x0fb9, 0x19c1: 0x1089, 0x19c2: 0x0279, 0x19c3: 0x0369, 0x19c4: 0x0289, 0x19c5: 0x13d1,
1797 0x19c6: 0x0039, 0x19c7: 0x0ee9, 0x19c8: 0x1159, 0x19c9: 0x0ef9, 0x19ca: 0x0f09, 0x19cb: 0x1199,
1798 0x19cc: 0x0f31, 0x19cd: 0x0249, 0x19ce: 0x0f41, 0x19cf: 0x0259, 0x19d0: 0x0f51, 0x19d1: 0x0359,
1799 0x19d2: 0x0f61, 0x19d3: 0x0f71, 0x19d4: 0x00d9, 0x19d5: 0x0f99, 0x19d6: 0x2039, 0x19d7: 0x0269,
1800 0x19d8: 0x01d9, 0x19d9: 0x0fa9, 0x19da: 0x0fb9, 0x19db: 0x1089, 0x19dc: 0x0279, 0x19dd: 0x0369,
1801 0x19de: 0x0289, 0x19df: 0x13d1, 0x19e0: 0x0039, 0x19e1: 0x0ee9, 0x19e2: 0x1159, 0x19e3: 0x0ef9,
1802 0x19e4: 0x0f09, 0x19e5: 0x1199, 0x19e6: 0x0f31, 0x19e7: 0x0249, 0x19e8: 0x0f41, 0x19e9: 0x0259,
1803 0x19ea: 0x0f51, 0x19eb: 0x0359, 0x19ec: 0x0f61, 0x19ed: 0x0f71, 0x19ee: 0x00d9, 0x19ef: 0x0f99,
1804 0x19f0: 0x2039, 0x19f1: 0x0269, 0x19f2: 0x01d9, 0x19f3: 0x0fa9, 0x19f4: 0x0fb9, 0x19f5: 0x1089,
1805 0x19f6: 0x0279, 0x19f7: 0x0369, 0x19f8: 0x0289, 0x19f9: 0x13d1, 0x19fa: 0x0039, 0x19fb: 0x0ee9,
1806 0x19fc: 0x1159, 0x19fd: 0x0ef9, 0x19fe: 0x0f09, 0x19ff: 0x1199,
1807 // Block 0x68, offset 0x1a00
1808 0x1a00: 0x0f31, 0x1a01: 0x0249, 0x1a02: 0x0f41, 0x1a03: 0x0259, 0x1a04: 0x0f51, 0x1a05: 0x0359,
1809 0x1a06: 0x0f61, 0x1a07: 0x0f71, 0x1a08: 0x00d9, 0x1a09: 0x0f99, 0x1a0a: 0x2039, 0x1a0b: 0x0269,
1810 0x1a0c: 0x01d9, 0x1a0d: 0x0fa9, 0x1a0e: 0x0fb9, 0x1a0f: 0x1089, 0x1a10: 0x0279, 0x1a11: 0x0369,
1811 0x1a12: 0x0289, 0x1a13: 0x13d1, 0x1a14: 0x0039, 0x1a15: 0x0ee9, 0x1a16: 0x1159, 0x1a17: 0x0ef9,
1812 0x1a18: 0x0f09, 0x1a19: 0x1199, 0x1a1a: 0x0f31, 0x1a1b: 0x0249, 0x1a1c: 0x0f41, 0x1a1d: 0x0259,
1813 0x1a1e: 0x0f51, 0x1a1f: 0x0359, 0x1a20: 0x0f61, 0x1a21: 0x0f71, 0x1a22: 0x00d9, 0x1a23: 0x0f99,
1814 0x1a24: 0x2039, 0x1a25: 0x0269, 0x1a26: 0x01d9, 0x1a27: 0x0fa9, 0x1a28: 0x0fb9, 0x1a29: 0x1089,
1815 0x1a2a: 0x0279, 0x1a2b: 0x0369, 0x1a2c: 0x0289, 0x1a2d: 0x13d1, 0x1a2e: 0x0039, 0x1a2f: 0x0ee9,
1816 0x1a30: 0x1159, 0x1a31: 0x0ef9, 0x1a32: 0x0f09, 0x1a33: 0x1199, 0x1a34: 0x0f31, 0x1a35: 0x0249,
1817 0x1a36: 0x0f41, 0x1a37: 0x0259, 0x1a38: 0x0f51, 0x1a39: 0x0359, 0x1a3a: 0x0f61, 0x1a3b: 0x0f71,
1818 0x1a3c: 0x00d9, 0x1a3d: 0x0f99, 0x1a3e: 0x2039, 0x1a3f: 0x0269,
1819 // Block 0x69, offset 0x1a40
1820 0x1a40: 0x01d9, 0x1a41: 0x0fa9, 0x1a42: 0x0fb9, 0x1a43: 0x1089, 0x1a44: 0x0279, 0x1a45: 0x0369,
1821 0x1a46: 0x0289, 0x1a47: 0x13d1, 0x1a48: 0x0039, 0x1a49: 0x0ee9, 0x1a4a: 0x1159, 0x1a4b: 0x0ef9,
1822 0x1a4c: 0x0f09, 0x1a4d: 0x1199, 0x1a4e: 0x0f31, 0x1a4f: 0x0249, 0x1a50: 0x0f41, 0x1a51: 0x0259,
1823 0x1a52: 0x0f51, 0x1a53: 0x0359, 0x1a54: 0x0f61, 0x1a55: 0x0f71, 0x1a56: 0x00d9, 0x1a57: 0x0f99,
1824 0x1a58: 0x2039, 0x1a59: 0x0269, 0x1a5a: 0x01d9, 0x1a5b: 0x0fa9, 0x1a5c: 0x0fb9, 0x1a5d: 0x1089,
1825 0x1a5e: 0x0279, 0x1a5f: 0x0369, 0x1a60: 0x0289, 0x1a61: 0x13d1, 0x1a62: 0x0039, 0x1a63: 0x0ee9,
1826 0x1a64: 0x1159, 0x1a65: 0x0ef9, 0x1a66: 0x0f09, 0x1a67: 0x1199, 0x1a68: 0x0f31, 0x1a69: 0x0249,
1827 0x1a6a: 0x0f41, 0x1a6b: 0x0259, 0x1a6c: 0x0f51, 0x1a6d: 0x0359, 0x1a6e: 0x0f61, 0x1a6f: 0x0f71,
1828 0x1a70: 0x00d9, 0x1a71: 0x0f99, 0x1a72: 0x2039, 0x1a73: 0x0269, 0x1a74: 0x01d9, 0x1a75: 0x0fa9,
1829 0x1a76: 0x0fb9, 0x1a77: 0x1089, 0x1a78: 0x0279, 0x1a79: 0x0369, 0x1a7a: 0x0289, 0x1a7b: 0x13d1,
1830 0x1a7c: 0x0039, 0x1a7d: 0x0ee9, 0x1a7e: 0x1159, 0x1a7f: 0x0ef9,
1831 // Block 0x6a, offset 0x1a80
1832 0x1a80: 0x0f09, 0x1a81: 0x1199, 0x1a82: 0x0f31, 0x1a83: 0x0249, 0x1a84: 0x0f41, 0x1a85: 0x0259,
1833 0x1a86: 0x0f51, 0x1a87: 0x0359, 0x1a88: 0x0f61, 0x1a89: 0x0f71, 0x1a8a: 0x00d9, 0x1a8b: 0x0f99,
1834 0x1a8c: 0x2039, 0x1a8d: 0x0269, 0x1a8e: 0x01d9, 0x1a8f: 0x0fa9, 0x1a90: 0x0fb9, 0x1a91: 0x1089,
1835 0x1a92: 0x0279, 0x1a93: 0x0369, 0x1a94: 0x0289, 0x1a95: 0x13d1, 0x1a96: 0x0039, 0x1a97: 0x0ee9,
1836 0x1a98: 0x1159, 0x1a99: 0x0ef9, 0x1a9a: 0x0f09, 0x1a9b: 0x1199, 0x1a9c: 0x0f31, 0x1a9d: 0x0249,
1837 0x1a9e: 0x0f41, 0x1a9f: 0x0259, 0x1aa0: 0x0f51, 0x1aa1: 0x0359, 0x1aa2: 0x0f61, 0x1aa3: 0x0f71,
1838 0x1aa4: 0x00d9, 0x1aa5: 0x0f99, 0x1aa6: 0x2039, 0x1aa7: 0x0269, 0x1aa8: 0x01d9, 0x1aa9: 0x0fa9,
1839 0x1aaa: 0x0fb9, 0x1aab: 0x1089, 0x1aac: 0x0279, 0x1aad: 0x0369, 0x1aae: 0x0289, 0x1aaf: 0x13d1,
1840 0x1ab0: 0x0039, 0x1ab1: 0x0ee9, 0x1ab2: 0x1159, 0x1ab3: 0x0ef9, 0x1ab4: 0x0f09, 0x1ab5: 0x1199,
1841 0x1ab6: 0x0f31, 0x1ab7: 0x0249, 0x1ab8: 0x0f41, 0x1ab9: 0x0259, 0x1aba: 0x0f51, 0x1abb: 0x0359,
1842 0x1abc: 0x0f61, 0x1abd: 0x0f71, 0x1abe: 0x00d9, 0x1abf: 0x0f99,
1843 // Block 0x6b, offset 0x1ac0
1844 0x1ac0: 0x2039, 0x1ac1: 0x0269, 0x1ac2: 0x01d9, 0x1ac3: 0x0fa9, 0x1ac4: 0x0fb9, 0x1ac5: 0x1089,
1845 0x1ac6: 0x0279, 0x1ac7: 0x0369, 0x1ac8: 0x0289, 0x1ac9: 0x13d1, 0x1aca: 0x0039, 0x1acb: 0x0ee9,
1846 0x1acc: 0x1159, 0x1acd: 0x0ef9, 0x1ace: 0x0f09, 0x1acf: 0x1199, 0x1ad0: 0x0f31, 0x1ad1: 0x0249,
1847 0x1ad2: 0x0f41, 0x1ad3: 0x0259, 0x1ad4: 0x0f51, 0x1ad5: 0x0359, 0x1ad6: 0x0f61, 0x1ad7: 0x0f71,
1848 0x1ad8: 0x00d9, 0x1ad9: 0x0f99, 0x1ada: 0x2039, 0x1adb: 0x0269, 0x1adc: 0x01d9, 0x1add: 0x0fa9,
1849 0x1ade: 0x0fb9, 0x1adf: 0x1089, 0x1ae0: 0x0279, 0x1ae1: 0x0369, 0x1ae2: 0x0289, 0x1ae3: 0x13d1,
1850 0x1ae4: 0xba81, 0x1ae5: 0xba99, 0x1ae6: 0x0040, 0x1ae7: 0x0040, 0x1ae8: 0xbab1, 0x1ae9: 0x1099,
1851 0x1aea: 0x10b1, 0x1aeb: 0x10c9, 0x1aec: 0xbac9, 0x1aed: 0xbae1, 0x1aee: 0xbaf9, 0x1aef: 0x1429,
1852 0x1af0: 0x1a31, 0x1af1: 0xbb11, 0x1af2: 0xbb29, 0x1af3: 0xbb41, 0x1af4: 0xbb59, 0x1af5: 0xbb71,
1853 0x1af6: 0xbb89, 0x1af7: 0x2109, 0x1af8: 0x1111, 0x1af9: 0x1429, 0x1afa: 0xbba1, 0x1afb: 0xbbb9,
1854 0x1afc: 0xbbd1, 0x1afd: 0x10e1, 0x1afe: 0x10f9, 0x1aff: 0xbbe9,
1855 // Block 0x6c, offset 0x1b00
1856 0x1b00: 0x2079, 0x1b01: 0xbc01, 0x1b02: 0xbab1, 0x1b03: 0x1099, 0x1b04: 0x10b1, 0x1b05: 0x10c9,
1857 0x1b06: 0xbac9, 0x1b07: 0xbae1, 0x1b08: 0xbaf9, 0x1b09: 0x1429, 0x1b0a: 0x1a31, 0x1b0b: 0xbb11,
1858 0x1b0c: 0xbb29, 0x1b0d: 0xbb41, 0x1b0e: 0xbb59, 0x1b0f: 0xbb71, 0x1b10: 0xbb89, 0x1b11: 0x2109,
1859 0x1b12: 0x1111, 0x1b13: 0xbba1, 0x1b14: 0xbba1, 0x1b15: 0xbbb9, 0x1b16: 0xbbd1, 0x1b17: 0x10e1,
1860 0x1b18: 0x10f9, 0x1b19: 0xbbe9, 0x1b1a: 0x2079, 0x1b1b: 0xbc21, 0x1b1c: 0xbac9, 0x1b1d: 0x1429,
1861 0x1b1e: 0xbb11, 0x1b1f: 0x10e1, 0x1b20: 0x1111, 0x1b21: 0x2109, 0x1b22: 0xbab1, 0x1b23: 0x1099,
1862 0x1b24: 0x10b1, 0x1b25: 0x10c9, 0x1b26: 0xbac9, 0x1b27: 0xbae1, 0x1b28: 0xbaf9, 0x1b29: 0x1429,
1863 0x1b2a: 0x1a31, 0x1b2b: 0xbb11, 0x1b2c: 0xbb29, 0x1b2d: 0xbb41, 0x1b2e: 0xbb59, 0x1b2f: 0xbb71,
1864 0x1b30: 0xbb89, 0x1b31: 0x2109, 0x1b32: 0x1111, 0x1b33: 0x1429, 0x1b34: 0xbba1, 0x1b35: 0xbbb9,
1865 0x1b36: 0xbbd1, 0x1b37: 0x10e1, 0x1b38: 0x10f9, 0x1b39: 0xbbe9, 0x1b3a: 0x2079, 0x1b3b: 0xbc01,
1866 0x1b3c: 0xbab1, 0x1b3d: 0x1099, 0x1b3e: 0x10b1, 0x1b3f: 0x10c9,
1867 // Block 0x6d, offset 0x1b40
1868 0x1b40: 0xbac9, 0x1b41: 0xbae1, 0x1b42: 0xbaf9, 0x1b43: 0x1429, 0x1b44: 0x1a31, 0x1b45: 0xbb11,
1869 0x1b46: 0xbb29, 0x1b47: 0xbb41, 0x1b48: 0xbb59, 0x1b49: 0xbb71, 0x1b4a: 0xbb89, 0x1b4b: 0x2109,
1870 0x1b4c: 0x1111, 0x1b4d: 0xbba1, 0x1b4e: 0xbba1, 0x1b4f: 0xbbb9, 0x1b50: 0xbbd1, 0x1b51: 0x10e1,
1871 0x1b52: 0x10f9, 0x1b53: 0xbbe9, 0x1b54: 0x2079, 0x1b55: 0xbc21, 0x1b56: 0xbac9, 0x1b57: 0x1429,
1872 0x1b58: 0xbb11, 0x1b59: 0x10e1, 0x1b5a: 0x1111, 0x1b5b: 0x2109, 0x1b5c: 0xbab1, 0x1b5d: 0x1099,
1873 0x1b5e: 0x10b1, 0x1b5f: 0x10c9, 0x1b60: 0xbac9, 0x1b61: 0xbae1, 0x1b62: 0xbaf9, 0x1b63: 0x1429,
1874 0x1b64: 0x1a31, 0x1b65: 0xbb11, 0x1b66: 0xbb29, 0x1b67: 0xbb41, 0x1b68: 0xbb59, 0x1b69: 0xbb71,
1875 0x1b6a: 0xbb89, 0x1b6b: 0x2109, 0x1b6c: 0x1111, 0x1b6d: 0x1429, 0x1b6e: 0xbba1, 0x1b6f: 0xbbb9,
1876 0x1b70: 0xbbd1, 0x1b71: 0x10e1, 0x1b72: 0x10f9, 0x1b73: 0xbbe9, 0x1b74: 0x2079, 0x1b75: 0xbc01,
1877 0x1b76: 0xbab1, 0x1b77: 0x1099, 0x1b78: 0x10b1, 0x1b79: 0x10c9, 0x1b7a: 0xbac9, 0x1b7b: 0xbae1,
1878 0x1b7c: 0xbaf9, 0x1b7d: 0x1429, 0x1b7e: 0x1a31, 0x1b7f: 0xbb11,
1879 // Block 0x6e, offset 0x1b80
1880 0x1b80: 0xbb29, 0x1b81: 0xbb41, 0x1b82: 0xbb59, 0x1b83: 0xbb71, 0x1b84: 0xbb89, 0x1b85: 0x2109,
1881 0x1b86: 0x1111, 0x1b87: 0xbba1, 0x1b88: 0xbba1, 0x1b89: 0xbbb9, 0x1b8a: 0xbbd1, 0x1b8b: 0x10e1,
1882 0x1b8c: 0x10f9, 0x1b8d: 0xbbe9, 0x1b8e: 0x2079, 0x1b8f: 0xbc21, 0x1b90: 0xbac9, 0x1b91: 0x1429,
1883 0x1b92: 0xbb11, 0x1b93: 0x10e1, 0x1b94: 0x1111, 0x1b95: 0x2109, 0x1b96: 0xbab1, 0x1b97: 0x1099,
1884 0x1b98: 0x10b1, 0x1b99: 0x10c9, 0x1b9a: 0xbac9, 0x1b9b: 0xbae1, 0x1b9c: 0xbaf9, 0x1b9d: 0x1429,
1885 0x1b9e: 0x1a31, 0x1b9f: 0xbb11, 0x1ba0: 0xbb29, 0x1ba1: 0xbb41, 0x1ba2: 0xbb59, 0x1ba3: 0xbb71,
1886 0x1ba4: 0xbb89, 0x1ba5: 0x2109, 0x1ba6: 0x1111, 0x1ba7: 0x1429, 0x1ba8: 0xbba1, 0x1ba9: 0xbbb9,
1887 0x1baa: 0xbbd1, 0x1bab: 0x10e1, 0x1bac: 0x10f9, 0x1bad: 0xbbe9, 0x1bae: 0x2079, 0x1baf: 0xbc01,
1888 0x1bb0: 0xbab1, 0x1bb1: 0x1099, 0x1bb2: 0x10b1, 0x1bb3: 0x10c9, 0x1bb4: 0xbac9, 0x1bb5: 0xbae1,
1889 0x1bb6: 0xbaf9, 0x1bb7: 0x1429, 0x1bb8: 0x1a31, 0x1bb9: 0xbb11, 0x1bba: 0xbb29, 0x1bbb: 0xbb41,
1890 0x1bbc: 0xbb59, 0x1bbd: 0xbb71, 0x1bbe: 0xbb89, 0x1bbf: 0x2109,
1891 // Block 0x6f, offset 0x1bc0
1892 0x1bc0: 0x1111, 0x1bc1: 0xbba1, 0x1bc2: 0xbba1, 0x1bc3: 0xbbb9, 0x1bc4: 0xbbd1, 0x1bc5: 0x10e1,
1893 0x1bc6: 0x10f9, 0x1bc7: 0xbbe9, 0x1bc8: 0x2079, 0x1bc9: 0xbc21, 0x1bca: 0xbac9, 0x1bcb: 0x1429,
1894 0x1bcc: 0xbb11, 0x1bcd: 0x10e1, 0x1bce: 0x1111, 0x1bcf: 0x2109, 0x1bd0: 0xbab1, 0x1bd1: 0x1099,
1895 0x1bd2: 0x10b1, 0x1bd3: 0x10c9, 0x1bd4: 0xbac9, 0x1bd5: 0xbae1, 0x1bd6: 0xbaf9, 0x1bd7: 0x1429,
1896 0x1bd8: 0x1a31, 0x1bd9: 0xbb11, 0x1bda: 0xbb29, 0x1bdb: 0xbb41, 0x1bdc: 0xbb59, 0x1bdd: 0xbb71,
1897 0x1bde: 0xbb89, 0x1bdf: 0x2109, 0x1be0: 0x1111, 0x1be1: 0x1429, 0x1be2: 0xbba1, 0x1be3: 0xbbb9,
1898 0x1be4: 0xbbd1, 0x1be5: 0x10e1, 0x1be6: 0x10f9, 0x1be7: 0xbbe9, 0x1be8: 0x2079, 0x1be9: 0xbc01,
1899 0x1bea: 0xbab1, 0x1beb: 0x1099, 0x1bec: 0x10b1, 0x1bed: 0x10c9, 0x1bee: 0xbac9, 0x1bef: 0xbae1,
1900 0x1bf0: 0xbaf9, 0x1bf1: 0x1429, 0x1bf2: 0x1a31, 0x1bf3: 0xbb11, 0x1bf4: 0xbb29, 0x1bf5: 0xbb41,
1901 0x1bf6: 0xbb59, 0x1bf7: 0xbb71, 0x1bf8: 0xbb89, 0x1bf9: 0x2109, 0x1bfa: 0x1111, 0x1bfb: 0xbba1,
1902 0x1bfc: 0xbba1, 0x1bfd: 0xbbb9, 0x1bfe: 0xbbd1, 0x1bff: 0x10e1,
1903 // Block 0x70, offset 0x1c00
1904 0x1c00: 0x10f9, 0x1c01: 0xbbe9, 0x1c02: 0x2079, 0x1c03: 0xbc21, 0x1c04: 0xbac9, 0x1c05: 0x1429,
1905 0x1c06: 0xbb11, 0x1c07: 0x10e1, 0x1c08: 0x1111, 0x1c09: 0x2109, 0x1c0a: 0xbc41, 0x1c0b: 0xbc41,
1906 0x1c0c: 0x0040, 0x1c0d: 0x0040, 0x1c0e: 0x1f41, 0x1c0f: 0x00c9, 0x1c10: 0x0069, 0x1c11: 0x0079,
1907 0x1c12: 0x1f51, 0x1c13: 0x1f61, 0x1c14: 0x1f71, 0x1c15: 0x1f81, 0x1c16: 0x1f91, 0x1c17: 0x1fa1,
1908 0x1c18: 0x1f41, 0x1c19: 0x00c9, 0x1c1a: 0x0069, 0x1c1b: 0x0079, 0x1c1c: 0x1f51, 0x1c1d: 0x1f61,
1909 0x1c1e: 0x1f71, 0x1c1f: 0x1f81, 0x1c20: 0x1f91, 0x1c21: 0x1fa1, 0x1c22: 0x1f41, 0x1c23: 0x00c9,
1910 0x1c24: 0x0069, 0x1c25: 0x0079, 0x1c26: 0x1f51, 0x1c27: 0x1f61, 0x1c28: 0x1f71, 0x1c29: 0x1f81,
1911 0x1c2a: 0x1f91, 0x1c2b: 0x1fa1, 0x1c2c: 0x1f41, 0x1c2d: 0x00c9, 0x1c2e: 0x0069, 0x1c2f: 0x0079,
1912 0x1c30: 0x1f51, 0x1c31: 0x1f61, 0x1c32: 0x1f71, 0x1c33: 0x1f81, 0x1c34: 0x1f91, 0x1c35: 0x1fa1,
1913 0x1c36: 0x1f41, 0x1c37: 0x00c9, 0x1c38: 0x0069, 0x1c39: 0x0079, 0x1c3a: 0x1f51, 0x1c3b: 0x1f61,
1914 0x1c3c: 0x1f71, 0x1c3d: 0x1f81, 0x1c3e: 0x1f91, 0x1c3f: 0x1fa1,
1915 // Block 0x71, offset 0x1c40
1916 0x1c40: 0xe115, 0x1c41: 0xe115, 0x1c42: 0xe135, 0x1c43: 0xe135, 0x1c44: 0xe115, 0x1c45: 0xe115,
1917 0x1c46: 0xe175, 0x1c47: 0xe175, 0x1c48: 0xe115, 0x1c49: 0xe115, 0x1c4a: 0xe135, 0x1c4b: 0xe135,
1918 0x1c4c: 0xe115, 0x1c4d: 0xe115, 0x1c4e: 0xe1f5, 0x1c4f: 0xe1f5, 0x1c50: 0xe115, 0x1c51: 0xe115,
1919 0x1c52: 0xe135, 0x1c53: 0xe135, 0x1c54: 0xe115, 0x1c55: 0xe115, 0x1c56: 0xe175, 0x1c57: 0xe175,
1920 0x1c58: 0xe115, 0x1c59: 0xe115, 0x1c5a: 0xe135, 0x1c5b: 0xe135, 0x1c5c: 0xe115, 0x1c5d: 0xe115,
1921 0x1c5e: 0x8b05, 0x1c5f: 0x8b05, 0x1c60: 0x04b5, 0x1c61: 0x04b5, 0x1c62: 0x0a08, 0x1c63: 0x0a08,
1922 0x1c64: 0x0a08, 0x1c65: 0x0a08, 0x1c66: 0x0a08, 0x1c67: 0x0a08, 0x1c68: 0x0a08, 0x1c69: 0x0a08,
1923 0x1c6a: 0x0a08, 0x1c6b: 0x0a08, 0x1c6c: 0x0a08, 0x1c6d: 0x0a08, 0x1c6e: 0x0a08, 0x1c6f: 0x0a08,
1924 0x1c70: 0x0a08, 0x1c71: 0x0a08, 0x1c72: 0x0a08, 0x1c73: 0x0a08, 0x1c74: 0x0a08, 0x1c75: 0x0a08,
1925 0x1c76: 0x0a08, 0x1c77: 0x0a08, 0x1c78: 0x0a08, 0x1c79: 0x0a08, 0x1c7a: 0x0a08, 0x1c7b: 0x0a08,
1926 0x1c7c: 0x0a08, 0x1c7d: 0x0a08, 0x1c7e: 0x0a08, 0x1c7f: 0x0a08,
1927 // Block 0x72, offset 0x1c80
1928 0x1c80: 0xb189, 0x1c81: 0xb1a1, 0x1c82: 0xb201, 0x1c83: 0xb249, 0x1c84: 0x0040, 0x1c85: 0xb411,
1929 0x1c86: 0xb291, 0x1c87: 0xb219, 0x1c88: 0xb309, 0x1c89: 0xb429, 0x1c8a: 0xb399, 0x1c8b: 0xb3b1,
1930 0x1c8c: 0xb3c9, 0x1c8d: 0xb3e1, 0x1c8e: 0xb2a9, 0x1c8f: 0xb339, 0x1c90: 0xb369, 0x1c91: 0xb2d9,
1931 0x1c92: 0xb381, 0x1c93: 0xb279, 0x1c94: 0xb2c1, 0x1c95: 0xb1d1, 0x1c96: 0xb1e9, 0x1c97: 0xb231,
1932 0x1c98: 0xb261, 0x1c99: 0xb2f1, 0x1c9a: 0xb321, 0x1c9b: 0xb351, 0x1c9c: 0xbc59, 0x1c9d: 0x7949,
1933 0x1c9e: 0xbc71, 0x1c9f: 0xbc89, 0x1ca0: 0x0040, 0x1ca1: 0xb1a1, 0x1ca2: 0xb201, 0x1ca3: 0x0040,
1934 0x1ca4: 0xb3f9, 0x1ca5: 0x0040, 0x1ca6: 0x0040, 0x1ca7: 0xb219, 0x1ca8: 0x0040, 0x1ca9: 0xb429,
1935 0x1caa: 0xb399, 0x1cab: 0xb3b1, 0x1cac: 0xb3c9, 0x1cad: 0xb3e1, 0x1cae: 0xb2a9, 0x1caf: 0xb339,
1936 0x1cb0: 0xb369, 0x1cb1: 0xb2d9, 0x1cb2: 0xb381, 0x1cb3: 0x0040, 0x1cb4: 0xb2c1, 0x1cb5: 0xb1d1,
1937 0x1cb6: 0xb1e9, 0x1cb7: 0xb231, 0x1cb8: 0x0040, 0x1cb9: 0xb2f1, 0x1cba: 0x0040, 0x1cbb: 0xb351,
1938 0x1cbc: 0x0040, 0x1cbd: 0x0040, 0x1cbe: 0x0040, 0x1cbf: 0x0040,
1939 // Block 0x73, offset 0x1cc0
1940 0x1cc0: 0x0040, 0x1cc1: 0x0040, 0x1cc2: 0xb201, 0x1cc3: 0x0040, 0x1cc4: 0x0040, 0x1cc5: 0x0040,
1941 0x1cc6: 0x0040, 0x1cc7: 0xb219, 0x1cc8: 0x0040, 0x1cc9: 0xb429, 0x1cca: 0x0040, 0x1ccb: 0xb3b1,
1942 0x1ccc: 0x0040, 0x1ccd: 0xb3e1, 0x1cce: 0xb2a9, 0x1ccf: 0xb339, 0x1cd0: 0x0040, 0x1cd1: 0xb2d9,
1943 0x1cd2: 0xb381, 0x1cd3: 0x0040, 0x1cd4: 0xb2c1, 0x1cd5: 0x0040, 0x1cd6: 0x0040, 0x1cd7: 0xb231,
1944 0x1cd8: 0x0040, 0x1cd9: 0xb2f1, 0x1cda: 0x0040, 0x1cdb: 0xb351, 0x1cdc: 0x0040, 0x1cdd: 0x7949,
1945 0x1cde: 0x0040, 0x1cdf: 0xbc89, 0x1ce0: 0x0040, 0x1ce1: 0xb1a1, 0x1ce2: 0xb201, 0x1ce3: 0x0040,
1946 0x1ce4: 0xb3f9, 0x1ce5: 0x0040, 0x1ce6: 0x0040, 0x1ce7: 0xb219, 0x1ce8: 0xb309, 0x1ce9: 0xb429,
1947 0x1cea: 0xb399, 0x1ceb: 0x0040, 0x1cec: 0xb3c9, 0x1ced: 0xb3e1, 0x1cee: 0xb2a9, 0x1cef: 0xb339,
1948 0x1cf0: 0xb369, 0x1cf1: 0xb2d9, 0x1cf2: 0xb381, 0x1cf3: 0x0040, 0x1cf4: 0xb2c1, 0x1cf5: 0xb1d1,
1949 0x1cf6: 0xb1e9, 0x1cf7: 0xb231, 0x1cf8: 0x0040, 0x1cf9: 0xb2f1, 0x1cfa: 0xb321, 0x1cfb: 0xb351,
1950 0x1cfc: 0xbc59, 0x1cfd: 0x0040, 0x1cfe: 0xbc71, 0x1cff: 0x0040,
1951 // Block 0x74, offset 0x1d00
1952 0x1d00: 0xb189, 0x1d01: 0xb1a1, 0x1d02: 0xb201, 0x1d03: 0xb249, 0x1d04: 0xb3f9, 0x1d05: 0xb411,
1953 0x1d06: 0xb291, 0x1d07: 0xb219, 0x1d08: 0xb309, 0x1d09: 0xb429, 0x1d0a: 0x0040, 0x1d0b: 0xb3b1,
1954 0x1d0c: 0xb3c9, 0x1d0d: 0xb3e1, 0x1d0e: 0xb2a9, 0x1d0f: 0xb339, 0x1d10: 0xb369, 0x1d11: 0xb2d9,
1955 0x1d12: 0xb381, 0x1d13: 0xb279, 0x1d14: 0xb2c1, 0x1d15: 0xb1d1, 0x1d16: 0xb1e9, 0x1d17: 0xb231,
1956 0x1d18: 0xb261, 0x1d19: 0xb2f1, 0x1d1a: 0xb321, 0x1d1b: 0xb351, 0x1d1c: 0x0040, 0x1d1d: 0x0040,
1957 0x1d1e: 0x0040, 0x1d1f: 0x0040, 0x1d20: 0x0040, 0x1d21: 0xb1a1, 0x1d22: 0xb201, 0x1d23: 0xb249,
1958 0x1d24: 0x0040, 0x1d25: 0xb411, 0x1d26: 0xb291, 0x1d27: 0xb219, 0x1d28: 0xb309, 0x1d29: 0xb429,
1959 0x1d2a: 0x0040, 0x1d2b: 0xb3b1, 0x1d2c: 0xb3c9, 0x1d2d: 0xb3e1, 0x1d2e: 0xb2a9, 0x1d2f: 0xb339,
1960 0x1d30: 0xb369, 0x1d31: 0xb2d9, 0x1d32: 0xb381, 0x1d33: 0xb279, 0x1d34: 0xb2c1, 0x1d35: 0xb1d1,
1961 0x1d36: 0xb1e9, 0x1d37: 0xb231, 0x1d38: 0xb261, 0x1d39: 0xb2f1, 0x1d3a: 0xb321, 0x1d3b: 0xb351,
1962 0x1d3c: 0x0040, 0x1d3d: 0x0040, 0x1d3e: 0x0040, 0x1d3f: 0x0040,
1963 // Block 0x75, offset 0x1d40
1964 0x1d40: 0x0040, 0x1d41: 0xbca2, 0x1d42: 0xbcba, 0x1d43: 0xbcd2, 0x1d44: 0xbcea, 0x1d45: 0xbd02,
1965 0x1d46: 0xbd1a, 0x1d47: 0xbd32, 0x1d48: 0xbd4a, 0x1d49: 0xbd62, 0x1d4a: 0xbd7a, 0x1d4b: 0x0018,
1966 0x1d4c: 0x0018, 0x1d4d: 0x0040, 0x1d4e: 0x0040, 0x1d4f: 0x0040, 0x1d50: 0xbd92, 0x1d51: 0xbdb2,
1967 0x1d52: 0xbdd2, 0x1d53: 0xbdf2, 0x1d54: 0xbe12, 0x1d55: 0xbe32, 0x1d56: 0xbe52, 0x1d57: 0xbe72,
1968 0x1d58: 0xbe92, 0x1d59: 0xbeb2, 0x1d5a: 0xbed2, 0x1d5b: 0xbef2, 0x1d5c: 0xbf12, 0x1d5d: 0xbf32,
1969 0x1d5e: 0xbf52, 0x1d5f: 0xbf72, 0x1d60: 0xbf92, 0x1d61: 0xbfb2, 0x1d62: 0xbfd2, 0x1d63: 0xbff2,
1970 0x1d64: 0xc012, 0x1d65: 0xc032, 0x1d66: 0xc052, 0x1d67: 0xc072, 0x1d68: 0xc092, 0x1d69: 0xc0b2,
1971 0x1d6a: 0xc0d1, 0x1d6b: 0x1159, 0x1d6c: 0x0269, 0x1d6d: 0x6671, 0x1d6e: 0xc111, 0x1d6f: 0x0040,
1972 0x1d70: 0x0039, 0x1d71: 0x0ee9, 0x1d72: 0x1159, 0x1d73: 0x0ef9, 0x1d74: 0x0f09, 0x1d75: 0x1199,
1973 0x1d76: 0x0f31, 0x1d77: 0x0249, 0x1d78: 0x0f41, 0x1d79: 0x0259, 0x1d7a: 0x0f51, 0x1d7b: 0x0359,
1974 0x1d7c: 0x0f61, 0x1d7d: 0x0f71, 0x1d7e: 0x00d9, 0x1d7f: 0x0f99,
1975 // Block 0x76, offset 0x1d80
1976 0x1d80: 0x2039, 0x1d81: 0x0269, 0x1d82: 0x01d9, 0x1d83: 0x0fa9, 0x1d84: 0x0fb9, 0x1d85: 0x1089,
1977 0x1d86: 0x0279, 0x1d87: 0x0369, 0x1d88: 0x0289, 0x1d89: 0x13d1, 0x1d8a: 0xc129, 0x1d8b: 0x65b1,
1978 0x1d8c: 0xc141, 0x1d8d: 0x1441, 0x1d8e: 0xc159, 0x1d8f: 0xc179, 0x1d90: 0x0018, 0x1d91: 0x0018,
1979 0x1d92: 0x0018, 0x1d93: 0x0018, 0x1d94: 0x0018, 0x1d95: 0x0018, 0x1d96: 0x0018, 0x1d97: 0x0018,
1980 0x1d98: 0x0018, 0x1d99: 0x0018, 0x1d9a: 0x0018, 0x1d9b: 0x0018, 0x1d9c: 0x0018, 0x1d9d: 0x0018,
1981 0x1d9e: 0x0018, 0x1d9f: 0x0018, 0x1da0: 0x0018, 0x1da1: 0x0018, 0x1da2: 0x0018, 0x1da3: 0x0018,
1982 0x1da4: 0x0018, 0x1da5: 0x0018, 0x1da6: 0x0018, 0x1da7: 0x0018, 0x1da8: 0x0018, 0x1da9: 0x0018,
1983 0x1daa: 0xc191, 0x1dab: 0xc1a9, 0x1dac: 0x0040, 0x1dad: 0x0040, 0x1dae: 0x0040, 0x1daf: 0x0040,
1984 0x1db0: 0x0018, 0x1db1: 0x0018, 0x1db2: 0x0018, 0x1db3: 0x0018, 0x1db4: 0x0018, 0x1db5: 0x0018,
1985 0x1db6: 0x0018, 0x1db7: 0x0018, 0x1db8: 0x0018, 0x1db9: 0x0018, 0x1dba: 0x0018, 0x1dbb: 0x0018,
1986 0x1dbc: 0x0018, 0x1dbd: 0x0018, 0x1dbe: 0x0018, 0x1dbf: 0x0018,
1987 // Block 0x77, offset 0x1dc0
1988 0x1dc0: 0xc1d9, 0x1dc1: 0xc211, 0x1dc2: 0xc249, 0x1dc3: 0x0040, 0x1dc4: 0x0040, 0x1dc5: 0x0040,
1989 0x1dc6: 0x0040, 0x1dc7: 0x0040, 0x1dc8: 0x0040, 0x1dc9: 0x0040, 0x1dca: 0x0040, 0x1dcb: 0x0040,
1990 0x1dcc: 0x0040, 0x1dcd: 0x0040, 0x1dce: 0x0040, 0x1dcf: 0x0040, 0x1dd0: 0xc269, 0x1dd1: 0xc289,
1991 0x1dd2: 0xc2a9, 0x1dd3: 0xc2c9, 0x1dd4: 0xc2e9, 0x1dd5: 0xc309, 0x1dd6: 0xc329, 0x1dd7: 0xc349,
1992 0x1dd8: 0xc369, 0x1dd9: 0xc389, 0x1dda: 0xc3a9, 0x1ddb: 0xc3c9, 0x1ddc: 0xc3e9, 0x1ddd: 0xc409,
1993 0x1dde: 0xc429, 0x1ddf: 0xc449, 0x1de0: 0xc469, 0x1de1: 0xc489, 0x1de2: 0xc4a9, 0x1de3: 0xc4c9,
1994 0x1de4: 0xc4e9, 0x1de5: 0xc509, 0x1de6: 0xc529, 0x1de7: 0xc549, 0x1de8: 0xc569, 0x1de9: 0xc589,
1995 0x1dea: 0xc5a9, 0x1deb: 0xc5c9, 0x1dec: 0xc5e9, 0x1ded: 0xc609, 0x1dee: 0xc629, 0x1def: 0xc649,
1996 0x1df0: 0xc669, 0x1df1: 0xc689, 0x1df2: 0xc6a9, 0x1df3: 0xc6c9, 0x1df4: 0xc6e9, 0x1df5: 0xc709,
1997 0x1df6: 0xc729, 0x1df7: 0xc749, 0x1df8: 0xc769, 0x1df9: 0xc789, 0x1dfa: 0xc7a9, 0x1dfb: 0xc7c9,
1998 0x1dfc: 0x0040, 0x1dfd: 0x0040, 0x1dfe: 0x0040, 0x1dff: 0x0040,
1999 // Block 0x78, offset 0x1e00
2000 0x1e00: 0xcaf9, 0x1e01: 0xcb19, 0x1e02: 0xcb39, 0x1e03: 0x8b1d, 0x1e04: 0xcb59, 0x1e05: 0xcb79,
2001 0x1e06: 0xcb99, 0x1e07: 0xcbb9, 0x1e08: 0xcbd9, 0x1e09: 0xcbf9, 0x1e0a: 0xcc19, 0x1e0b: 0xcc39,
2002 0x1e0c: 0xcc59, 0x1e0d: 0x8b3d, 0x1e0e: 0xcc79, 0x1e0f: 0xcc99, 0x1e10: 0xccb9, 0x1e11: 0xccd9,
2003 0x1e12: 0x8b5d, 0x1e13: 0xccf9, 0x1e14: 0xcd19, 0x1e15: 0xc429, 0x1e16: 0x8b7d, 0x1e17: 0xcd39,
2004 0x1e18: 0xcd59, 0x1e19: 0xcd79, 0x1e1a: 0xcd99, 0x1e1b: 0xcdb9, 0x1e1c: 0x8b9d, 0x1e1d: 0xcdd9,
2005 0x1e1e: 0xcdf9, 0x1e1f: 0xce19, 0x1e20: 0xce39, 0x1e21: 0xce59, 0x1e22: 0xc789, 0x1e23: 0xce79,
2006 0x1e24: 0xce99, 0x1e25: 0xceb9, 0x1e26: 0xced9, 0x1e27: 0xcef9, 0x1e28: 0xcf19, 0x1e29: 0xcf39,
2007 0x1e2a: 0xcf59, 0x1e2b: 0xcf79, 0x1e2c: 0xcf99, 0x1e2d: 0xcfb9, 0x1e2e: 0xcfd9, 0x1e2f: 0xcff9,
2008 0x1e30: 0xd019, 0x1e31: 0xd039, 0x1e32: 0xd039, 0x1e33: 0xd039, 0x1e34: 0x8bbd, 0x1e35: 0xd059,
2009 0x1e36: 0xd079, 0x1e37: 0xd099, 0x1e38: 0x8bdd, 0x1e39: 0xd0b9, 0x1e3a: 0xd0d9, 0x1e3b: 0xd0f9,
2010 0x1e3c: 0xd119, 0x1e3d: 0xd139, 0x1e3e: 0xd159, 0x1e3f: 0xd179,
2011 // Block 0x79, offset 0x1e40
2012 0x1e40: 0xd199, 0x1e41: 0xd1b9, 0x1e42: 0xd1d9, 0x1e43: 0xd1f9, 0x1e44: 0xd219, 0x1e45: 0xd239,
2013 0x1e46: 0xd239, 0x1e47: 0xd259, 0x1e48: 0xd279, 0x1e49: 0xd299, 0x1e4a: 0xd2b9, 0x1e4b: 0xd2d9,
2014 0x1e4c: 0xd2f9, 0x1e4d: 0xd319, 0x1e4e: 0xd339, 0x1e4f: 0xd359, 0x1e50: 0xd379, 0x1e51: 0xd399,
2015 0x1e52: 0xd3b9, 0x1e53: 0xd3d9, 0x1e54: 0xd3f9, 0x1e55: 0xd419, 0x1e56: 0xd439, 0x1e57: 0xd459,
2016 0x1e58: 0xd479, 0x1e59: 0x8bfd, 0x1e5a: 0xd499, 0x1e5b: 0xd4b9, 0x1e5c: 0xd4d9, 0x1e5d: 0xc309,
2017 0x1e5e: 0xd4f9, 0x1e5f: 0xd519, 0x1e60: 0x8c1d, 0x1e61: 0x8c3d, 0x1e62: 0xd539, 0x1e63: 0xd559,
2018 0x1e64: 0xd579, 0x1e65: 0xd599, 0x1e66: 0xd5b9, 0x1e67: 0xd5d9, 0x1e68: 0x2040, 0x1e69: 0xd5f9,
2019 0x1e6a: 0xd619, 0x1e6b: 0xd619, 0x1e6c: 0x8c5d, 0x1e6d: 0xd639, 0x1e6e: 0xd659, 0x1e6f: 0xd679,
2020 0x1e70: 0xd699, 0x1e71: 0x8c7d, 0x1e72: 0xd6b9, 0x1e73: 0xd6d9, 0x1e74: 0x2040, 0x1e75: 0xd6f9,
2021 0x1e76: 0xd719, 0x1e77: 0xd739, 0x1e78: 0xd759, 0x1e79: 0xd779, 0x1e7a: 0xd799, 0x1e7b: 0x8c9d,
2022 0x1e7c: 0xd7b9, 0x1e7d: 0x8cbd, 0x1e7e: 0xd7d9, 0x1e7f: 0xd7f9,
2023 // Block 0x7a, offset 0x1e80
2024 0x1e80: 0xd819, 0x1e81: 0xd839, 0x1e82: 0xd859, 0x1e83: 0xd879, 0x1e84: 0xd899, 0x1e85: 0xd8b9,
2025 0x1e86: 0xd8d9, 0x1e87: 0xd8f9, 0x1e88: 0xd919, 0x1e89: 0x8cdd, 0x1e8a: 0xd939, 0x1e8b: 0xd959,
2026 0x1e8c: 0xd979, 0x1e8d: 0xd999, 0x1e8e: 0xd9b9, 0x1e8f: 0x8cfd, 0x1e90: 0xd9d9, 0x1e91: 0x8d1d,
2027 0x1e92: 0x8d3d, 0x1e93: 0xd9f9, 0x1e94: 0xda19, 0x1e95: 0xda19, 0x1e96: 0xda39, 0x1e97: 0x8d5d,
2028 0x1e98: 0x8d7d, 0x1e99: 0xda59, 0x1e9a: 0xda79, 0x1e9b: 0xda99, 0x1e9c: 0xdab9, 0x1e9d: 0xdad9,
2029 0x1e9e: 0xdaf9, 0x1e9f: 0xdb19, 0x1ea0: 0xdb39, 0x1ea1: 0xdb59, 0x1ea2: 0xdb79, 0x1ea3: 0xdb99,
2030 0x1ea4: 0x8d9d, 0x1ea5: 0xdbb9, 0x1ea6: 0xdbd9, 0x1ea7: 0xdbf9, 0x1ea8: 0xdc19, 0x1ea9: 0xdbf9,
2031 0x1eaa: 0xdc39, 0x1eab: 0xdc59, 0x1eac: 0xdc79, 0x1ead: 0xdc99, 0x1eae: 0xdcb9, 0x1eaf: 0xdcd9,
2032 0x1eb0: 0xdcf9, 0x1eb1: 0xdd19, 0x1eb2: 0xdd39, 0x1eb3: 0xdd59, 0x1eb4: 0xdd79, 0x1eb5: 0xdd99,
2033 0x1eb6: 0xddb9, 0x1eb7: 0xddd9, 0x1eb8: 0x8dbd, 0x1eb9: 0xddf9, 0x1eba: 0xde19, 0x1ebb: 0xde39,
2034 0x1ebc: 0xde59, 0x1ebd: 0xde79, 0x1ebe: 0x8ddd, 0x1ebf: 0xde99,
2035 // Block 0x7b, offset 0x1ec0
2036 0x1ec0: 0xe599, 0x1ec1: 0xe5b9, 0x1ec2: 0xe5d9, 0x1ec3: 0xe5f9, 0x1ec4: 0xe619, 0x1ec5: 0xe639,
2037 0x1ec6: 0x8efd, 0x1ec7: 0xe659, 0x1ec8: 0xe679, 0x1ec9: 0xe699, 0x1eca: 0xe6b9, 0x1ecb: 0xe6d9,
2038 0x1ecc: 0xe6f9, 0x1ecd: 0x8f1d, 0x1ece: 0xe719, 0x1ecf: 0xe739, 0x1ed0: 0x8f3d, 0x1ed1: 0x8f5d,
2039 0x1ed2: 0xe759, 0x1ed3: 0xe779, 0x1ed4: 0xe799, 0x1ed5: 0xe7b9, 0x1ed6: 0xe7d9, 0x1ed7: 0xe7f9,
2040 0x1ed8: 0xe819, 0x1ed9: 0xe839, 0x1eda: 0xe859, 0x1edb: 0x8f7d, 0x1edc: 0xe879, 0x1edd: 0x8f9d,
2041 0x1ede: 0xe899, 0x1edf: 0x2040, 0x1ee0: 0xe8b9, 0x1ee1: 0xe8d9, 0x1ee2: 0xe8f9, 0x1ee3: 0x8fbd,
2042 0x1ee4: 0xe919, 0x1ee5: 0xe939, 0x1ee6: 0x8fdd, 0x1ee7: 0x8ffd, 0x1ee8: 0xe959, 0x1ee9: 0xe979,
2043 0x1eea: 0xe999, 0x1eeb: 0xe9b9, 0x1eec: 0xe9d9, 0x1eed: 0xe9d9, 0x1eee: 0xe9f9, 0x1eef: 0xea19,
2044 0x1ef0: 0xea39, 0x1ef1: 0xea59, 0x1ef2: 0xea79, 0x1ef3: 0xea99, 0x1ef4: 0xeab9, 0x1ef5: 0x901d,
2045 0x1ef6: 0xead9, 0x1ef7: 0x903d, 0x1ef8: 0xeaf9, 0x1ef9: 0x905d, 0x1efa: 0xeb19, 0x1efb: 0x907d,
2046 0x1efc: 0x909d, 0x1efd: 0x90bd, 0x1efe: 0xeb39, 0x1eff: 0xeb59,
2047 // Block 0x7c, offset 0x1f00
2048 0x1f00: 0xeb79, 0x1f01: 0x90dd, 0x1f02: 0x90fd, 0x1f03: 0x911d, 0x1f04: 0x913d, 0x1f05: 0xeb99,
2049 0x1f06: 0xebb9, 0x1f07: 0xebb9, 0x1f08: 0xebd9, 0x1f09: 0xebf9, 0x1f0a: 0xec19, 0x1f0b: 0xec39,
2050 0x1f0c: 0xec59, 0x1f0d: 0x915d, 0x1f0e: 0xec79, 0x1f0f: 0xec99, 0x1f10: 0xecb9, 0x1f11: 0xecd9,
2051 0x1f12: 0x917d, 0x1f13: 0xecf9, 0x1f14: 0x919d, 0x1f15: 0x91bd, 0x1f16: 0xed19, 0x1f17: 0xed39,
2052 0x1f18: 0xed59, 0x1f19: 0xed79, 0x1f1a: 0xed99, 0x1f1b: 0xedb9, 0x1f1c: 0x91dd, 0x1f1d: 0x91fd,
2053 0x1f1e: 0x921d, 0x1f1f: 0x2040, 0x1f20: 0xedd9, 0x1f21: 0x923d, 0x1f22: 0xedf9, 0x1f23: 0xee19,
2054 0x1f24: 0xee39, 0x1f25: 0x925d, 0x1f26: 0xee59, 0x1f27: 0xee79, 0x1f28: 0xee99, 0x1f29: 0xeeb9,
2055 0x1f2a: 0xeed9, 0x1f2b: 0x927d, 0x1f2c: 0xeef9, 0x1f2d: 0xef19, 0x1f2e: 0xef39, 0x1f2f: 0xef59,
2056 0x1f30: 0xef79, 0x1f31: 0xef99, 0x1f32: 0x929d, 0x1f33: 0x92bd, 0x1f34: 0xefb9, 0x1f35: 0x92dd,
2057 0x1f36: 0xefd9, 0x1f37: 0x92fd, 0x1f38: 0xeff9, 0x1f39: 0xf019, 0x1f3a: 0xf039, 0x1f3b: 0x931d,
2058 0x1f3c: 0x933d, 0x1f3d: 0xf059, 0x1f3e: 0x935d, 0x1f3f: 0xf079,
2059 // Block 0x7d, offset 0x1f40
2060 0x1f40: 0xf6b9, 0x1f41: 0xf6d9, 0x1f42: 0xf6f9, 0x1f43: 0xf719, 0x1f44: 0xf739, 0x1f45: 0x951d,
2061 0x1f46: 0xf759, 0x1f47: 0xf779, 0x1f48: 0xf799, 0x1f49: 0xf7b9, 0x1f4a: 0xf7d9, 0x1f4b: 0x953d,
2062 0x1f4c: 0x955d, 0x1f4d: 0xf7f9, 0x1f4e: 0xf819, 0x1f4f: 0xf839, 0x1f50: 0xf859, 0x1f51: 0xf879,
2063 0x1f52: 0xf899, 0x1f53: 0x957d, 0x1f54: 0xf8b9, 0x1f55: 0xf8d9, 0x1f56: 0xf8f9, 0x1f57: 0xf919,
2064 0x1f58: 0x959d, 0x1f59: 0x95bd, 0x1f5a: 0xf939, 0x1f5b: 0xf959, 0x1f5c: 0xf979, 0x1f5d: 0x95dd,
2065 0x1f5e: 0xf999, 0x1f5f: 0xf9b9, 0x1f60: 0x6815, 0x1f61: 0x95fd, 0x1f62: 0xf9d9, 0x1f63: 0xf9f9,
2066 0x1f64: 0xfa19, 0x1f65: 0x961d, 0x1f66: 0xfa39, 0x1f67: 0xfa59, 0x1f68: 0xfa79, 0x1f69: 0xfa99,
2067 0x1f6a: 0xfab9, 0x1f6b: 0xfad9, 0x1f6c: 0xfaf9, 0x1f6d: 0x963d, 0x1f6e: 0xfb19, 0x1f6f: 0xfb39,
2068 0x1f70: 0xfb59, 0x1f71: 0x965d, 0x1f72: 0xfb79, 0x1f73: 0xfb99, 0x1f74: 0xfbb9, 0x1f75: 0xfbd9,
2069 0x1f76: 0x7b35, 0x1f77: 0x967d, 0x1f78: 0xfbf9, 0x1f79: 0xfc19, 0x1f7a: 0xfc39, 0x1f7b: 0x969d,
2070 0x1f7c: 0xfc59, 0x1f7d: 0x96bd, 0x1f7e: 0xfc79, 0x1f7f: 0xfc79,
2071 // Block 0x7e, offset 0x1f80
2072 0x1f80: 0xfc99, 0x1f81: 0x96dd, 0x1f82: 0xfcb9, 0x1f83: 0xfcd9, 0x1f84: 0xfcf9, 0x1f85: 0xfd19,
2073 0x1f86: 0xfd39, 0x1f87: 0xfd59, 0x1f88: 0xfd79, 0x1f89: 0x96fd, 0x1f8a: 0xfd99, 0x1f8b: 0xfdb9,
2074 0x1f8c: 0xfdd9, 0x1f8d: 0xfdf9, 0x1f8e: 0xfe19, 0x1f8f: 0xfe39, 0x1f90: 0x971d, 0x1f91: 0xfe59,
2075 0x1f92: 0x973d, 0x1f93: 0x975d, 0x1f94: 0x977d, 0x1f95: 0xfe79, 0x1f96: 0xfe99, 0x1f97: 0xfeb9,
2076 0x1f98: 0xfed9, 0x1f99: 0xfef9, 0x1f9a: 0xff19, 0x1f9b: 0xff39, 0x1f9c: 0xff59, 0x1f9d: 0x979d,
2077 0x1f9e: 0x0040, 0x1f9f: 0x0040, 0x1fa0: 0x0040, 0x1fa1: 0x0040, 0x1fa2: 0x0040, 0x1fa3: 0x0040,
2078 0x1fa4: 0x0040, 0x1fa5: 0x0040, 0x1fa6: 0x0040, 0x1fa7: 0x0040, 0x1fa8: 0x0040, 0x1fa9: 0x0040,
2079 0x1faa: 0x0040, 0x1fab: 0x0040, 0x1fac: 0x0040, 0x1fad: 0x0040, 0x1fae: 0x0040, 0x1faf: 0x0040,
2080 0x1fb0: 0x0040, 0x1fb1: 0x0040, 0x1fb2: 0x0040, 0x1fb3: 0x0040, 0x1fb4: 0x0040, 0x1fb5: 0x0040,
2081 0x1fb6: 0x0040, 0x1fb7: 0x0040, 0x1fb8: 0x0040, 0x1fb9: 0x0040, 0x1fba: 0x0040, 0x1fbb: 0x0040,
2082 0x1fbc: 0x0040, 0x1fbd: 0x0040, 0x1fbe: 0x0040, 0x1fbf: 0x0040,
2083}
2084
2085// idnaIndex: 36 blocks, 2304 entries, 4608 bytes
2086// Block 0 is the zero block.
2087var idnaIndex = [2304]uint16{
2088 // Block 0x0, offset 0x0
2089 // Block 0x1, offset 0x40
2090 // Block 0x2, offset 0x80
2091 // Block 0x3, offset 0xc0
2092 0xc2: 0x01, 0xc3: 0x7d, 0xc4: 0x02, 0xc5: 0x03, 0xc6: 0x04, 0xc7: 0x05,
2093 0xc8: 0x06, 0xc9: 0x7e, 0xca: 0x7f, 0xcb: 0x07, 0xcc: 0x80, 0xcd: 0x08, 0xce: 0x09, 0xcf: 0x0a,
2094 0xd0: 0x81, 0xd1: 0x0b, 0xd2: 0x0c, 0xd3: 0x0d, 0xd4: 0x0e, 0xd5: 0x82, 0xd6: 0x83, 0xd7: 0x84,
2095 0xd8: 0x0f, 0xd9: 0x10, 0xda: 0x85, 0xdb: 0x11, 0xdc: 0x12, 0xdd: 0x86, 0xde: 0x87, 0xdf: 0x88,
2096 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, 0xe4: 0x06, 0xe5: 0x07, 0xe6: 0x07, 0xe7: 0x07,
2097 0xe8: 0x07, 0xe9: 0x08, 0xea: 0x09, 0xeb: 0x07, 0xec: 0x07, 0xed: 0x0a, 0xee: 0x0b, 0xef: 0x0c,
2098 0xf0: 0x1d, 0xf1: 0x1e, 0xf2: 0x1e, 0xf3: 0x20, 0xf4: 0x21,
2099 // Block 0x4, offset 0x100
2100 0x120: 0x89, 0x121: 0x13, 0x122: 0x8a, 0x123: 0x8b, 0x124: 0x8c, 0x125: 0x14, 0x126: 0x15, 0x127: 0x16,
2101 0x128: 0x17, 0x129: 0x18, 0x12a: 0x19, 0x12b: 0x1a, 0x12c: 0x1b, 0x12d: 0x1c, 0x12e: 0x1d, 0x12f: 0x8d,
2102 0x130: 0x8e, 0x131: 0x1e, 0x132: 0x1f, 0x133: 0x20, 0x134: 0x8f, 0x135: 0x21, 0x136: 0x90, 0x137: 0x91,
2103 0x138: 0x92, 0x139: 0x93, 0x13a: 0x22, 0x13b: 0x94, 0x13c: 0x95, 0x13d: 0x23, 0x13e: 0x24, 0x13f: 0x96,
2104 // Block 0x5, offset 0x140
2105 0x140: 0x97, 0x141: 0x98, 0x142: 0x99, 0x143: 0x9a, 0x144: 0x9b, 0x145: 0x9c, 0x146: 0x9d, 0x147: 0x9e,
2106 0x148: 0x9f, 0x149: 0xa0, 0x14a: 0xa1, 0x14b: 0xa2, 0x14c: 0xa3, 0x14d: 0xa4, 0x14e: 0xa5, 0x14f: 0xa6,
2107 0x150: 0xa7, 0x151: 0x9f, 0x152: 0x9f, 0x153: 0x9f, 0x154: 0x9f, 0x155: 0x9f, 0x156: 0x9f, 0x157: 0x9f,
2108 0x158: 0x9f, 0x159: 0xa8, 0x15a: 0xa9, 0x15b: 0xaa, 0x15c: 0xab, 0x15d: 0xac, 0x15e: 0xad, 0x15f: 0xae,
2109 0x160: 0xaf, 0x161: 0xb0, 0x162: 0xb1, 0x163: 0xb2, 0x164: 0xb3, 0x165: 0xb4, 0x166: 0xb5, 0x167: 0xb6,
2110 0x168: 0xb7, 0x169: 0xb8, 0x16a: 0xb9, 0x16b: 0xba, 0x16c: 0xbb, 0x16d: 0xbc, 0x16e: 0xbd, 0x16f: 0xbe,
2111 0x170: 0xbf, 0x171: 0xc0, 0x172: 0xc1, 0x173: 0xc2, 0x174: 0x25, 0x175: 0x26, 0x176: 0x27, 0x177: 0xc3,
2112 0x178: 0x28, 0x179: 0x28, 0x17a: 0x29, 0x17b: 0x28, 0x17c: 0xc4, 0x17d: 0x2a, 0x17e: 0x2b, 0x17f: 0x2c,
2113 // Block 0x6, offset 0x180
2114 0x180: 0x2d, 0x181: 0x2e, 0x182: 0x2f, 0x183: 0xc5, 0x184: 0x30, 0x185: 0x31, 0x186: 0xc6, 0x187: 0x9b,
2115 0x188: 0xc7, 0x189: 0xc8, 0x18a: 0x9b, 0x18b: 0x9b, 0x18c: 0xc9, 0x18d: 0x9b, 0x18e: 0x9b, 0x18f: 0x9b,
2116 0x190: 0xca, 0x191: 0x32, 0x192: 0x33, 0x193: 0x34, 0x194: 0x9b, 0x195: 0x9b, 0x196: 0x9b, 0x197: 0x9b,
2117 0x198: 0x9b, 0x199: 0x9b, 0x19a: 0x9b, 0x19b: 0x9b, 0x19c: 0x9b, 0x19d: 0x9b, 0x19e: 0x9b, 0x19f: 0x9b,
2118 0x1a0: 0x9b, 0x1a1: 0x9b, 0x1a2: 0x9b, 0x1a3: 0x9b, 0x1a4: 0x9b, 0x1a5: 0x9b, 0x1a6: 0x9b, 0x1a7: 0x9b,
2119 0x1a8: 0xcb, 0x1a9: 0xcc, 0x1aa: 0x9b, 0x1ab: 0xcd, 0x1ac: 0x9b, 0x1ad: 0xce, 0x1ae: 0xcf, 0x1af: 0xd0,
2120 0x1b0: 0xd1, 0x1b1: 0x35, 0x1b2: 0x28, 0x1b3: 0x36, 0x1b4: 0xd2, 0x1b5: 0xd3, 0x1b6: 0xd4, 0x1b7: 0xd5,
2121 0x1b8: 0xd6, 0x1b9: 0xd7, 0x1ba: 0xd8, 0x1bb: 0xd9, 0x1bc: 0xda, 0x1bd: 0xdb, 0x1be: 0xdc, 0x1bf: 0x37,
2122 // Block 0x7, offset 0x1c0
2123 0x1c0: 0x38, 0x1c1: 0xdd, 0x1c2: 0xde, 0x1c3: 0xdf, 0x1c4: 0xe0, 0x1c5: 0x39, 0x1c6: 0x3a, 0x1c7: 0xe1,
2124 0x1c8: 0xe2, 0x1c9: 0x3b, 0x1ca: 0x3c, 0x1cb: 0x3d, 0x1cc: 0x3e, 0x1cd: 0x3f, 0x1ce: 0x40, 0x1cf: 0x41,
2125 0x1d0: 0x9f, 0x1d1: 0x9f, 0x1d2: 0x9f, 0x1d3: 0x9f, 0x1d4: 0x9f, 0x1d5: 0x9f, 0x1d6: 0x9f, 0x1d7: 0x9f,
2126 0x1d8: 0x9f, 0x1d9: 0x9f, 0x1da: 0x9f, 0x1db: 0x9f, 0x1dc: 0x9f, 0x1dd: 0x9f, 0x1de: 0x9f, 0x1df: 0x9f,
2127 0x1e0: 0x9f, 0x1e1: 0x9f, 0x1e2: 0x9f, 0x1e3: 0x9f, 0x1e4: 0x9f, 0x1e5: 0x9f, 0x1e6: 0x9f, 0x1e7: 0x9f,
2128 0x1e8: 0x9f, 0x1e9: 0x9f, 0x1ea: 0x9f, 0x1eb: 0x9f, 0x1ec: 0x9f, 0x1ed: 0x9f, 0x1ee: 0x9f, 0x1ef: 0x9f,
2129 0x1f0: 0x9f, 0x1f1: 0x9f, 0x1f2: 0x9f, 0x1f3: 0x9f, 0x1f4: 0x9f, 0x1f5: 0x9f, 0x1f6: 0x9f, 0x1f7: 0x9f,
2130 0x1f8: 0x9f, 0x1f9: 0x9f, 0x1fa: 0x9f, 0x1fb: 0x9f, 0x1fc: 0x9f, 0x1fd: 0x9f, 0x1fe: 0x9f, 0x1ff: 0x9f,
2131 // Block 0x8, offset 0x200
2132 0x200: 0x9f, 0x201: 0x9f, 0x202: 0x9f, 0x203: 0x9f, 0x204: 0x9f, 0x205: 0x9f, 0x206: 0x9f, 0x207: 0x9f,
2133 0x208: 0x9f, 0x209: 0x9f, 0x20a: 0x9f, 0x20b: 0x9f, 0x20c: 0x9f, 0x20d: 0x9f, 0x20e: 0x9f, 0x20f: 0x9f,
2134 0x210: 0x9f, 0x211: 0x9f, 0x212: 0x9f, 0x213: 0x9f, 0x214: 0x9f, 0x215: 0x9f, 0x216: 0x9f, 0x217: 0x9f,
2135 0x218: 0x9f, 0x219: 0x9f, 0x21a: 0x9f, 0x21b: 0x9f, 0x21c: 0x9f, 0x21d: 0x9f, 0x21e: 0x9f, 0x21f: 0x9f,
2136 0x220: 0x9f, 0x221: 0x9f, 0x222: 0x9f, 0x223: 0x9f, 0x224: 0x9f, 0x225: 0x9f, 0x226: 0x9f, 0x227: 0x9f,
2137 0x228: 0x9f, 0x229: 0x9f, 0x22a: 0x9f, 0x22b: 0x9f, 0x22c: 0x9f, 0x22d: 0x9f, 0x22e: 0x9f, 0x22f: 0x9f,
2138 0x230: 0x9f, 0x231: 0x9f, 0x232: 0x9f, 0x233: 0x9f, 0x234: 0x9f, 0x235: 0x9f, 0x236: 0xb2, 0x237: 0x9b,
2139 0x238: 0x9f, 0x239: 0x9f, 0x23a: 0x9f, 0x23b: 0x9f, 0x23c: 0x9f, 0x23d: 0x9f, 0x23e: 0x9f, 0x23f: 0x9f,
2140 // Block 0x9, offset 0x240
2141 0x240: 0x9f, 0x241: 0x9f, 0x242: 0x9f, 0x243: 0x9f, 0x244: 0x9f, 0x245: 0x9f, 0x246: 0x9f, 0x247: 0x9f,
2142 0x248: 0x9f, 0x249: 0x9f, 0x24a: 0x9f, 0x24b: 0x9f, 0x24c: 0x9f, 0x24d: 0x9f, 0x24e: 0x9f, 0x24f: 0x9f,
2143 0x250: 0x9f, 0x251: 0x9f, 0x252: 0x9f, 0x253: 0x9f, 0x254: 0x9f, 0x255: 0x9f, 0x256: 0x9f, 0x257: 0x9f,
2144 0x258: 0x9f, 0x259: 0x9f, 0x25a: 0x9f, 0x25b: 0x9f, 0x25c: 0x9f, 0x25d: 0x9f, 0x25e: 0x9f, 0x25f: 0x9f,
2145 0x260: 0x9f, 0x261: 0x9f, 0x262: 0x9f, 0x263: 0x9f, 0x264: 0x9f, 0x265: 0x9f, 0x266: 0x9f, 0x267: 0x9f,
2146 0x268: 0x9f, 0x269: 0x9f, 0x26a: 0x9f, 0x26b: 0x9f, 0x26c: 0x9f, 0x26d: 0x9f, 0x26e: 0x9f, 0x26f: 0x9f,
2147 0x270: 0x9f, 0x271: 0x9f, 0x272: 0x9f, 0x273: 0x9f, 0x274: 0x9f, 0x275: 0x9f, 0x276: 0x9f, 0x277: 0x9f,
2148 0x278: 0x9f, 0x279: 0x9f, 0x27a: 0x9f, 0x27b: 0x9f, 0x27c: 0x9f, 0x27d: 0x9f, 0x27e: 0x9f, 0x27f: 0x9f,
2149 // Block 0xa, offset 0x280
2150 0x280: 0x9f, 0x281: 0x9f, 0x282: 0x9f, 0x283: 0x9f, 0x284: 0x9f, 0x285: 0x9f, 0x286: 0x9f, 0x287: 0x9f,
2151 0x288: 0x9f, 0x289: 0x9f, 0x28a: 0x9f, 0x28b: 0x9f, 0x28c: 0x9f, 0x28d: 0x9f, 0x28e: 0x9f, 0x28f: 0x9f,
2152 0x290: 0x9f, 0x291: 0x9f, 0x292: 0x9f, 0x293: 0x9f, 0x294: 0x9f, 0x295: 0x9f, 0x296: 0x9f, 0x297: 0x9f,
2153 0x298: 0x9f, 0x299: 0x9f, 0x29a: 0x9f, 0x29b: 0x9f, 0x29c: 0x9f, 0x29d: 0x9f, 0x29e: 0x9f, 0x29f: 0x9f,
2154 0x2a0: 0x9f, 0x2a1: 0x9f, 0x2a2: 0x9f, 0x2a3: 0x9f, 0x2a4: 0x9f, 0x2a5: 0x9f, 0x2a6: 0x9f, 0x2a7: 0x9f,
2155 0x2a8: 0x9f, 0x2a9: 0x9f, 0x2aa: 0x9f, 0x2ab: 0x9f, 0x2ac: 0x9f, 0x2ad: 0x9f, 0x2ae: 0x9f, 0x2af: 0x9f,
2156 0x2b0: 0x9f, 0x2b1: 0x9f, 0x2b2: 0x9f, 0x2b3: 0x9f, 0x2b4: 0x9f, 0x2b5: 0x9f, 0x2b6: 0x9f, 0x2b7: 0x9f,
2157 0x2b8: 0x9f, 0x2b9: 0x9f, 0x2ba: 0x9f, 0x2bb: 0x9f, 0x2bc: 0x9f, 0x2bd: 0x9f, 0x2be: 0x9f, 0x2bf: 0xe3,
2158 // Block 0xb, offset 0x2c0
2159 0x2c0: 0x9f, 0x2c1: 0x9f, 0x2c2: 0x9f, 0x2c3: 0x9f, 0x2c4: 0x9f, 0x2c5: 0x9f, 0x2c6: 0x9f, 0x2c7: 0x9f,
2160 0x2c8: 0x9f, 0x2c9: 0x9f, 0x2ca: 0x9f, 0x2cb: 0x9f, 0x2cc: 0x9f, 0x2cd: 0x9f, 0x2ce: 0x9f, 0x2cf: 0x9f,
2161 0x2d0: 0x9f, 0x2d1: 0x9f, 0x2d2: 0xe4, 0x2d3: 0xe5, 0x2d4: 0x9f, 0x2d5: 0x9f, 0x2d6: 0x9f, 0x2d7: 0x9f,
2162 0x2d8: 0xe6, 0x2d9: 0x42, 0x2da: 0x43, 0x2db: 0xe7, 0x2dc: 0x44, 0x2dd: 0x45, 0x2de: 0x46, 0x2df: 0xe8,
2163 0x2e0: 0xe9, 0x2e1: 0xea, 0x2e2: 0xeb, 0x2e3: 0xec, 0x2e4: 0xed, 0x2e5: 0xee, 0x2e6: 0xef, 0x2e7: 0xf0,
2164 0x2e8: 0xf1, 0x2e9: 0xf2, 0x2ea: 0xf3, 0x2eb: 0xf4, 0x2ec: 0xf5, 0x2ed: 0xf6, 0x2ee: 0xf7, 0x2ef: 0xf8,
2165 0x2f0: 0x9f, 0x2f1: 0x9f, 0x2f2: 0x9f, 0x2f3: 0x9f, 0x2f4: 0x9f, 0x2f5: 0x9f, 0x2f6: 0x9f, 0x2f7: 0x9f,
2166 0x2f8: 0x9f, 0x2f9: 0x9f, 0x2fa: 0x9f, 0x2fb: 0x9f, 0x2fc: 0x9f, 0x2fd: 0x9f, 0x2fe: 0x9f, 0x2ff: 0x9f,
2167 // Block 0xc, offset 0x300
2168 0x300: 0x9f, 0x301: 0x9f, 0x302: 0x9f, 0x303: 0x9f, 0x304: 0x9f, 0x305: 0x9f, 0x306: 0x9f, 0x307: 0x9f,
2169 0x308: 0x9f, 0x309: 0x9f, 0x30a: 0x9f, 0x30b: 0x9f, 0x30c: 0x9f, 0x30d: 0x9f, 0x30e: 0x9f, 0x30f: 0x9f,
2170 0x310: 0x9f, 0x311: 0x9f, 0x312: 0x9f, 0x313: 0x9f, 0x314: 0x9f, 0x315: 0x9f, 0x316: 0x9f, 0x317: 0x9f,
2171 0x318: 0x9f, 0x319: 0x9f, 0x31a: 0x9f, 0x31b: 0x9f, 0x31c: 0x9f, 0x31d: 0x9f, 0x31e: 0xf9, 0x31f: 0xfa,
2172 // Block 0xd, offset 0x340
2173 0x340: 0xba, 0x341: 0xba, 0x342: 0xba, 0x343: 0xba, 0x344: 0xba, 0x345: 0xba, 0x346: 0xba, 0x347: 0xba,
2174 0x348: 0xba, 0x349: 0xba, 0x34a: 0xba, 0x34b: 0xba, 0x34c: 0xba, 0x34d: 0xba, 0x34e: 0xba, 0x34f: 0xba,
2175 0x350: 0xba, 0x351: 0xba, 0x352: 0xba, 0x353: 0xba, 0x354: 0xba, 0x355: 0xba, 0x356: 0xba, 0x357: 0xba,
2176 0x358: 0xba, 0x359: 0xba, 0x35a: 0xba, 0x35b: 0xba, 0x35c: 0xba, 0x35d: 0xba, 0x35e: 0xba, 0x35f: 0xba,
2177 0x360: 0xba, 0x361: 0xba, 0x362: 0xba, 0x363: 0xba, 0x364: 0xba, 0x365: 0xba, 0x366: 0xba, 0x367: 0xba,
2178 0x368: 0xba, 0x369: 0xba, 0x36a: 0xba, 0x36b: 0xba, 0x36c: 0xba, 0x36d: 0xba, 0x36e: 0xba, 0x36f: 0xba,
2179 0x370: 0xba, 0x371: 0xba, 0x372: 0xba, 0x373: 0xba, 0x374: 0xba, 0x375: 0xba, 0x376: 0xba, 0x377: 0xba,
2180 0x378: 0xba, 0x379: 0xba, 0x37a: 0xba, 0x37b: 0xba, 0x37c: 0xba, 0x37d: 0xba, 0x37e: 0xba, 0x37f: 0xba,
2181 // Block 0xe, offset 0x380
2182 0x380: 0xba, 0x381: 0xba, 0x382: 0xba, 0x383: 0xba, 0x384: 0xba, 0x385: 0xba, 0x386: 0xba, 0x387: 0xba,
2183 0x388: 0xba, 0x389: 0xba, 0x38a: 0xba, 0x38b: 0xba, 0x38c: 0xba, 0x38d: 0xba, 0x38e: 0xba, 0x38f: 0xba,
2184 0x390: 0xba, 0x391: 0xba, 0x392: 0xba, 0x393: 0xba, 0x394: 0xba, 0x395: 0xba, 0x396: 0xba, 0x397: 0xba,
2185 0x398: 0xba, 0x399: 0xba, 0x39a: 0xba, 0x39b: 0xba, 0x39c: 0xba, 0x39d: 0xba, 0x39e: 0xba, 0x39f: 0xba,
2186 0x3a0: 0xba, 0x3a1: 0xba, 0x3a2: 0xba, 0x3a3: 0xba, 0x3a4: 0xfb, 0x3a5: 0xfc, 0x3a6: 0xfd, 0x3a7: 0xfe,
2187 0x3a8: 0x47, 0x3a9: 0xff, 0x3aa: 0x100, 0x3ab: 0x48, 0x3ac: 0x49, 0x3ad: 0x4a, 0x3ae: 0x4b, 0x3af: 0x4c,
2188 0x3b0: 0x101, 0x3b1: 0x4d, 0x3b2: 0x4e, 0x3b3: 0x4f, 0x3b4: 0x50, 0x3b5: 0x51, 0x3b6: 0x102, 0x3b7: 0x52,
2189 0x3b8: 0x53, 0x3b9: 0x54, 0x3ba: 0x55, 0x3bb: 0x56, 0x3bc: 0x57, 0x3bd: 0x58, 0x3be: 0x59, 0x3bf: 0x5a,
2190 // Block 0xf, offset 0x3c0
2191 0x3c0: 0x103, 0x3c1: 0x104, 0x3c2: 0x9f, 0x3c3: 0x105, 0x3c4: 0x106, 0x3c5: 0x9b, 0x3c6: 0x107, 0x3c7: 0x108,
2192 0x3c8: 0xba, 0x3c9: 0xba, 0x3ca: 0x109, 0x3cb: 0x10a, 0x3cc: 0x10b, 0x3cd: 0x10c, 0x3ce: 0x10d, 0x3cf: 0x10e,
2193 0x3d0: 0x10f, 0x3d1: 0x9f, 0x3d2: 0x110, 0x3d3: 0x111, 0x3d4: 0x112, 0x3d5: 0x113, 0x3d6: 0xba, 0x3d7: 0xba,
2194 0x3d8: 0x9f, 0x3d9: 0x9f, 0x3da: 0x9f, 0x3db: 0x9f, 0x3dc: 0x114, 0x3dd: 0x115, 0x3de: 0xba, 0x3df: 0xba,
2195 0x3e0: 0x116, 0x3e1: 0x117, 0x3e2: 0x118, 0x3e3: 0x119, 0x3e4: 0x11a, 0x3e5: 0xba, 0x3e6: 0x11b, 0x3e7: 0x11c,
2196 0x3e8: 0x11d, 0x3e9: 0x11e, 0x3ea: 0x11f, 0x3eb: 0x5b, 0x3ec: 0x120, 0x3ed: 0x121, 0x3ee: 0x5c, 0x3ef: 0xba,
2197 0x3f0: 0x122, 0x3f1: 0x123, 0x3f2: 0x124, 0x3f3: 0x125, 0x3f4: 0xba, 0x3f5: 0xba, 0x3f6: 0xba, 0x3f7: 0xba,
2198 0x3f8: 0xba, 0x3f9: 0x126, 0x3fa: 0xba, 0x3fb: 0xba, 0x3fc: 0xba, 0x3fd: 0xba, 0x3fe: 0xba, 0x3ff: 0xba,
2199 // Block 0x10, offset 0x400
2200 0x400: 0x127, 0x401: 0x128, 0x402: 0x129, 0x403: 0x12a, 0x404: 0x12b, 0x405: 0x12c, 0x406: 0x12d, 0x407: 0x12e,
2201 0x408: 0x12f, 0x409: 0xba, 0x40a: 0x130, 0x40b: 0x131, 0x40c: 0x5d, 0x40d: 0x5e, 0x40e: 0xba, 0x40f: 0xba,
2202 0x410: 0x132, 0x411: 0x133, 0x412: 0x134, 0x413: 0x135, 0x414: 0xba, 0x415: 0xba, 0x416: 0x136, 0x417: 0x137,
2203 0x418: 0x138, 0x419: 0x139, 0x41a: 0x13a, 0x41b: 0x13b, 0x41c: 0x13c, 0x41d: 0xba, 0x41e: 0xba, 0x41f: 0xba,
2204 0x420: 0xba, 0x421: 0xba, 0x422: 0x13d, 0x423: 0x13e, 0x424: 0xba, 0x425: 0xba, 0x426: 0xba, 0x427: 0xba,
2205 0x428: 0x13f, 0x429: 0x140, 0x42a: 0x141, 0x42b: 0x142, 0x42c: 0xba, 0x42d: 0xba, 0x42e: 0xba, 0x42f: 0xba,
2206 0x430: 0x143, 0x431: 0x144, 0x432: 0x145, 0x433: 0xba, 0x434: 0x146, 0x435: 0x147, 0x436: 0xba, 0x437: 0xba,
2207 0x438: 0xba, 0x439: 0xba, 0x43a: 0xba, 0x43b: 0xba, 0x43c: 0xba, 0x43d: 0xba, 0x43e: 0xba, 0x43f: 0xba,
2208 // Block 0x11, offset 0x440
2209 0x440: 0x9f, 0x441: 0x9f, 0x442: 0x9f, 0x443: 0x9f, 0x444: 0x9f, 0x445: 0x9f, 0x446: 0x9f, 0x447: 0x9f,
2210 0x448: 0x9f, 0x449: 0x9f, 0x44a: 0x9f, 0x44b: 0x9f, 0x44c: 0x9f, 0x44d: 0x9f, 0x44e: 0x148, 0x44f: 0xba,
2211 0x450: 0x9b, 0x451: 0x149, 0x452: 0x9f, 0x453: 0x9f, 0x454: 0x9f, 0x455: 0x14a, 0x456: 0xba, 0x457: 0xba,
2212 0x458: 0xba, 0x459: 0xba, 0x45a: 0xba, 0x45b: 0xba, 0x45c: 0xba, 0x45d: 0xba, 0x45e: 0xba, 0x45f: 0xba,
2213 0x460: 0xba, 0x461: 0xba, 0x462: 0xba, 0x463: 0xba, 0x464: 0xba, 0x465: 0xba, 0x466: 0xba, 0x467: 0xba,
2214 0x468: 0xba, 0x469: 0xba, 0x46a: 0xba, 0x46b: 0xba, 0x46c: 0xba, 0x46d: 0xba, 0x46e: 0xba, 0x46f: 0xba,
2215 0x470: 0xba, 0x471: 0xba, 0x472: 0xba, 0x473: 0xba, 0x474: 0xba, 0x475: 0xba, 0x476: 0xba, 0x477: 0xba,
2216 0x478: 0xba, 0x479: 0xba, 0x47a: 0xba, 0x47b: 0xba, 0x47c: 0xba, 0x47d: 0xba, 0x47e: 0xba, 0x47f: 0xba,
2217 // Block 0x12, offset 0x480
2218 0x480: 0x9f, 0x481: 0x9f, 0x482: 0x9f, 0x483: 0x9f, 0x484: 0x9f, 0x485: 0x9f, 0x486: 0x9f, 0x487: 0x9f,
2219 0x488: 0x9f, 0x489: 0x9f, 0x48a: 0x9f, 0x48b: 0x9f, 0x48c: 0x9f, 0x48d: 0x9f, 0x48e: 0x9f, 0x48f: 0x9f,
2220 0x490: 0x14b, 0x491: 0xba, 0x492: 0xba, 0x493: 0xba, 0x494: 0xba, 0x495: 0xba, 0x496: 0xba, 0x497: 0xba,
2221 0x498: 0xba, 0x499: 0xba, 0x49a: 0xba, 0x49b: 0xba, 0x49c: 0xba, 0x49d: 0xba, 0x49e: 0xba, 0x49f: 0xba,
2222 0x4a0: 0xba, 0x4a1: 0xba, 0x4a2: 0xba, 0x4a3: 0xba, 0x4a4: 0xba, 0x4a5: 0xba, 0x4a6: 0xba, 0x4a7: 0xba,
2223 0x4a8: 0xba, 0x4a9: 0xba, 0x4aa: 0xba, 0x4ab: 0xba, 0x4ac: 0xba, 0x4ad: 0xba, 0x4ae: 0xba, 0x4af: 0xba,
2224 0x4b0: 0xba, 0x4b1: 0xba, 0x4b2: 0xba, 0x4b3: 0xba, 0x4b4: 0xba, 0x4b5: 0xba, 0x4b6: 0xba, 0x4b7: 0xba,
2225 0x4b8: 0xba, 0x4b9: 0xba, 0x4ba: 0xba, 0x4bb: 0xba, 0x4bc: 0xba, 0x4bd: 0xba, 0x4be: 0xba, 0x4bf: 0xba,
2226 // Block 0x13, offset 0x4c0
2227 0x4c0: 0xba, 0x4c1: 0xba, 0x4c2: 0xba, 0x4c3: 0xba, 0x4c4: 0xba, 0x4c5: 0xba, 0x4c6: 0xba, 0x4c7: 0xba,
2228 0x4c8: 0xba, 0x4c9: 0xba, 0x4ca: 0xba, 0x4cb: 0xba, 0x4cc: 0xba, 0x4cd: 0xba, 0x4ce: 0xba, 0x4cf: 0xba,
2229 0x4d0: 0x9f, 0x4d1: 0x9f, 0x4d2: 0x9f, 0x4d3: 0x9f, 0x4d4: 0x9f, 0x4d5: 0x9f, 0x4d6: 0x9f, 0x4d7: 0x9f,
2230 0x4d8: 0x9f, 0x4d9: 0x14c, 0x4da: 0xba, 0x4db: 0xba, 0x4dc: 0xba, 0x4dd: 0xba, 0x4de: 0xba, 0x4df: 0xba,
2231 0x4e0: 0xba, 0x4e1: 0xba, 0x4e2: 0xba, 0x4e3: 0xba, 0x4e4: 0xba, 0x4e5: 0xba, 0x4e6: 0xba, 0x4e7: 0xba,
2232 0x4e8: 0xba, 0x4e9: 0xba, 0x4ea: 0xba, 0x4eb: 0xba, 0x4ec: 0xba, 0x4ed: 0xba, 0x4ee: 0xba, 0x4ef: 0xba,
2233 0x4f0: 0xba, 0x4f1: 0xba, 0x4f2: 0xba, 0x4f3: 0xba, 0x4f4: 0xba, 0x4f5: 0xba, 0x4f6: 0xba, 0x4f7: 0xba,
2234 0x4f8: 0xba, 0x4f9: 0xba, 0x4fa: 0xba, 0x4fb: 0xba, 0x4fc: 0xba, 0x4fd: 0xba, 0x4fe: 0xba, 0x4ff: 0xba,
2235 // Block 0x14, offset 0x500
2236 0x500: 0xba, 0x501: 0xba, 0x502: 0xba, 0x503: 0xba, 0x504: 0xba, 0x505: 0xba, 0x506: 0xba, 0x507: 0xba,
2237 0x508: 0xba, 0x509: 0xba, 0x50a: 0xba, 0x50b: 0xba, 0x50c: 0xba, 0x50d: 0xba, 0x50e: 0xba, 0x50f: 0xba,
2238 0x510: 0xba, 0x511: 0xba, 0x512: 0xba, 0x513: 0xba, 0x514: 0xba, 0x515: 0xba, 0x516: 0xba, 0x517: 0xba,
2239 0x518: 0xba, 0x519: 0xba, 0x51a: 0xba, 0x51b: 0xba, 0x51c: 0xba, 0x51d: 0xba, 0x51e: 0xba, 0x51f: 0xba,
2240 0x520: 0x9f, 0x521: 0x9f, 0x522: 0x9f, 0x523: 0x9f, 0x524: 0x9f, 0x525: 0x9f, 0x526: 0x9f, 0x527: 0x9f,
2241 0x528: 0x142, 0x529: 0x14d, 0x52a: 0xba, 0x52b: 0x14e, 0x52c: 0x14f, 0x52d: 0x150, 0x52e: 0x151, 0x52f: 0xba,
2242 0x530: 0xba, 0x531: 0xba, 0x532: 0xba, 0x533: 0xba, 0x534: 0xba, 0x535: 0xba, 0x536: 0xba, 0x537: 0xba,
2243 0x538: 0xba, 0x539: 0xba, 0x53a: 0xba, 0x53b: 0xba, 0x53c: 0x9f, 0x53d: 0x152, 0x53e: 0x153, 0x53f: 0x154,
2244 // Block 0x15, offset 0x540
2245 0x540: 0x9f, 0x541: 0x9f, 0x542: 0x9f, 0x543: 0x9f, 0x544: 0x9f, 0x545: 0x9f, 0x546: 0x9f, 0x547: 0x9f,
2246 0x548: 0x9f, 0x549: 0x9f, 0x54a: 0x9f, 0x54b: 0x9f, 0x54c: 0x9f, 0x54d: 0x9f, 0x54e: 0x9f, 0x54f: 0x9f,
2247 0x550: 0x9f, 0x551: 0x9f, 0x552: 0x9f, 0x553: 0x9f, 0x554: 0x9f, 0x555: 0x9f, 0x556: 0x9f, 0x557: 0x9f,
2248 0x558: 0x9f, 0x559: 0x9f, 0x55a: 0x9f, 0x55b: 0x9f, 0x55c: 0x9f, 0x55d: 0x9f, 0x55e: 0x9f, 0x55f: 0x155,
2249 0x560: 0x9f, 0x561: 0x9f, 0x562: 0x9f, 0x563: 0x9f, 0x564: 0x9f, 0x565: 0x9f, 0x566: 0x9f, 0x567: 0x9f,
2250 0x568: 0x9f, 0x569: 0x9f, 0x56a: 0x9f, 0x56b: 0x156, 0x56c: 0xba, 0x56d: 0xba, 0x56e: 0xba, 0x56f: 0xba,
2251 0x570: 0xba, 0x571: 0xba, 0x572: 0xba, 0x573: 0xba, 0x574: 0xba, 0x575: 0xba, 0x576: 0xba, 0x577: 0xba,
2252 0x578: 0xba, 0x579: 0xba, 0x57a: 0xba, 0x57b: 0xba, 0x57c: 0xba, 0x57d: 0xba, 0x57e: 0xba, 0x57f: 0xba,
2253 // Block 0x16, offset 0x580
2254 0x580: 0x9f, 0x581: 0x9f, 0x582: 0x9f, 0x583: 0x9f, 0x584: 0x157, 0x585: 0x158, 0x586: 0x9f, 0x587: 0x9f,
2255 0x588: 0x9f, 0x589: 0x9f, 0x58a: 0x9f, 0x58b: 0x159, 0x58c: 0xba, 0x58d: 0xba, 0x58e: 0xba, 0x58f: 0xba,
2256 0x590: 0xba, 0x591: 0xba, 0x592: 0xba, 0x593: 0xba, 0x594: 0xba, 0x595: 0xba, 0x596: 0xba, 0x597: 0xba,
2257 0x598: 0xba, 0x599: 0xba, 0x59a: 0xba, 0x59b: 0xba, 0x59c: 0xba, 0x59d: 0xba, 0x59e: 0xba, 0x59f: 0xba,
2258 0x5a0: 0xba, 0x5a1: 0xba, 0x5a2: 0xba, 0x5a3: 0xba, 0x5a4: 0xba, 0x5a5: 0xba, 0x5a6: 0xba, 0x5a7: 0xba,
2259 0x5a8: 0xba, 0x5a9: 0xba, 0x5aa: 0xba, 0x5ab: 0xba, 0x5ac: 0xba, 0x5ad: 0xba, 0x5ae: 0xba, 0x5af: 0xba,
2260 0x5b0: 0x9f, 0x5b1: 0x15a, 0x5b2: 0x15b, 0x5b3: 0xba, 0x5b4: 0xba, 0x5b5: 0xba, 0x5b6: 0xba, 0x5b7: 0xba,
2261 0x5b8: 0xba, 0x5b9: 0xba, 0x5ba: 0xba, 0x5bb: 0xba, 0x5bc: 0xba, 0x5bd: 0xba, 0x5be: 0xba, 0x5bf: 0xba,
2262 // Block 0x17, offset 0x5c0
2263 0x5c0: 0x9b, 0x5c1: 0x9b, 0x5c2: 0x9b, 0x5c3: 0x15c, 0x5c4: 0x15d, 0x5c5: 0x15e, 0x5c6: 0x15f, 0x5c7: 0x160,
2264 0x5c8: 0x9b, 0x5c9: 0x161, 0x5ca: 0xba, 0x5cb: 0xba, 0x5cc: 0x9b, 0x5cd: 0x162, 0x5ce: 0xba, 0x5cf: 0xba,
2265 0x5d0: 0x5f, 0x5d1: 0x60, 0x5d2: 0x61, 0x5d3: 0x62, 0x5d4: 0x63, 0x5d5: 0x64, 0x5d6: 0x65, 0x5d7: 0x66,
2266 0x5d8: 0x67, 0x5d9: 0x68, 0x5da: 0x69, 0x5db: 0x6a, 0x5dc: 0x6b, 0x5dd: 0x6c, 0x5de: 0x6d, 0x5df: 0x6e,
2267 0x5e0: 0x9b, 0x5e1: 0x9b, 0x5e2: 0x9b, 0x5e3: 0x9b, 0x5e4: 0x9b, 0x5e5: 0x9b, 0x5e6: 0x9b, 0x5e7: 0x9b,
2268 0x5e8: 0x163, 0x5e9: 0x164, 0x5ea: 0x165, 0x5eb: 0xba, 0x5ec: 0xba, 0x5ed: 0xba, 0x5ee: 0xba, 0x5ef: 0xba,
2269 0x5f0: 0xba, 0x5f1: 0xba, 0x5f2: 0xba, 0x5f3: 0xba, 0x5f4: 0xba, 0x5f5: 0xba, 0x5f6: 0xba, 0x5f7: 0xba,
2270 0x5f8: 0xba, 0x5f9: 0xba, 0x5fa: 0xba, 0x5fb: 0xba, 0x5fc: 0xba, 0x5fd: 0xba, 0x5fe: 0xba, 0x5ff: 0xba,
2271 // Block 0x18, offset 0x600
2272 0x600: 0x166, 0x601: 0xba, 0x602: 0xba, 0x603: 0xba, 0x604: 0xba, 0x605: 0xba, 0x606: 0xba, 0x607: 0xba,
2273 0x608: 0xba, 0x609: 0xba, 0x60a: 0xba, 0x60b: 0xba, 0x60c: 0xba, 0x60d: 0xba, 0x60e: 0xba, 0x60f: 0xba,
2274 0x610: 0xba, 0x611: 0xba, 0x612: 0xba, 0x613: 0xba, 0x614: 0xba, 0x615: 0xba, 0x616: 0xba, 0x617: 0xba,
2275 0x618: 0xba, 0x619: 0xba, 0x61a: 0xba, 0x61b: 0xba, 0x61c: 0xba, 0x61d: 0xba, 0x61e: 0xba, 0x61f: 0xba,
2276 0x620: 0x122, 0x621: 0x122, 0x622: 0x122, 0x623: 0x167, 0x624: 0x6f, 0x625: 0x168, 0x626: 0xba, 0x627: 0xba,
2277 0x628: 0xba, 0x629: 0xba, 0x62a: 0xba, 0x62b: 0xba, 0x62c: 0xba, 0x62d: 0xba, 0x62e: 0xba, 0x62f: 0xba,
2278 0x630: 0xba, 0x631: 0xba, 0x632: 0xba, 0x633: 0xba, 0x634: 0xba, 0x635: 0xba, 0x636: 0xba, 0x637: 0xba,
2279 0x638: 0x70, 0x639: 0x71, 0x63a: 0x72, 0x63b: 0x169, 0x63c: 0xba, 0x63d: 0xba, 0x63e: 0xba, 0x63f: 0xba,
2280 // Block 0x19, offset 0x640
2281 0x640: 0x16a, 0x641: 0x9b, 0x642: 0x16b, 0x643: 0x16c, 0x644: 0x73, 0x645: 0x74, 0x646: 0x16d, 0x647: 0x16e,
2282 0x648: 0x75, 0x649: 0x16f, 0x64a: 0xba, 0x64b: 0xba, 0x64c: 0x9b, 0x64d: 0x9b, 0x64e: 0x9b, 0x64f: 0x9b,
2283 0x650: 0x9b, 0x651: 0x9b, 0x652: 0x9b, 0x653: 0x9b, 0x654: 0x9b, 0x655: 0x9b, 0x656: 0x9b, 0x657: 0x9b,
2284 0x658: 0x9b, 0x659: 0x9b, 0x65a: 0x9b, 0x65b: 0x170, 0x65c: 0x9b, 0x65d: 0x171, 0x65e: 0x9b, 0x65f: 0x172,
2285 0x660: 0x173, 0x661: 0x174, 0x662: 0x175, 0x663: 0xba, 0x664: 0x176, 0x665: 0x177, 0x666: 0x178, 0x667: 0x179,
2286 0x668: 0xba, 0x669: 0xba, 0x66a: 0xba, 0x66b: 0xba, 0x66c: 0xba, 0x66d: 0xba, 0x66e: 0xba, 0x66f: 0xba,
2287 0x670: 0xba, 0x671: 0xba, 0x672: 0xba, 0x673: 0xba, 0x674: 0xba, 0x675: 0xba, 0x676: 0xba, 0x677: 0xba,
2288 0x678: 0xba, 0x679: 0xba, 0x67a: 0xba, 0x67b: 0xba, 0x67c: 0xba, 0x67d: 0xba, 0x67e: 0xba, 0x67f: 0xba,
2289 // Block 0x1a, offset 0x680
2290 0x680: 0x9f, 0x681: 0x9f, 0x682: 0x9f, 0x683: 0x9f, 0x684: 0x9f, 0x685: 0x9f, 0x686: 0x9f, 0x687: 0x9f,
2291 0x688: 0x9f, 0x689: 0x9f, 0x68a: 0x9f, 0x68b: 0x9f, 0x68c: 0x9f, 0x68d: 0x9f, 0x68e: 0x9f, 0x68f: 0x9f,
2292 0x690: 0x9f, 0x691: 0x9f, 0x692: 0x9f, 0x693: 0x9f, 0x694: 0x9f, 0x695: 0x9f, 0x696: 0x9f, 0x697: 0x9f,
2293 0x698: 0x9f, 0x699: 0x9f, 0x69a: 0x9f, 0x69b: 0x17a, 0x69c: 0x9f, 0x69d: 0x9f, 0x69e: 0x9f, 0x69f: 0x9f,
2294 0x6a0: 0x9f, 0x6a1: 0x9f, 0x6a2: 0x9f, 0x6a3: 0x9f, 0x6a4: 0x9f, 0x6a5: 0x9f, 0x6a6: 0x9f, 0x6a7: 0x9f,
2295 0x6a8: 0x9f, 0x6a9: 0x9f, 0x6aa: 0x9f, 0x6ab: 0x9f, 0x6ac: 0x9f, 0x6ad: 0x9f, 0x6ae: 0x9f, 0x6af: 0x9f,
2296 0x6b0: 0x9f, 0x6b1: 0x9f, 0x6b2: 0x9f, 0x6b3: 0x9f, 0x6b4: 0x9f, 0x6b5: 0x9f, 0x6b6: 0x9f, 0x6b7: 0x9f,
2297 0x6b8: 0x9f, 0x6b9: 0x9f, 0x6ba: 0x9f, 0x6bb: 0x9f, 0x6bc: 0x9f, 0x6bd: 0x9f, 0x6be: 0x9f, 0x6bf: 0x9f,
2298 // Block 0x1b, offset 0x6c0
2299 0x6c0: 0x9f, 0x6c1: 0x9f, 0x6c2: 0x9f, 0x6c3: 0x9f, 0x6c4: 0x9f, 0x6c5: 0x9f, 0x6c6: 0x9f, 0x6c7: 0x9f,
2300 0x6c8: 0x9f, 0x6c9: 0x9f, 0x6ca: 0x9f, 0x6cb: 0x9f, 0x6cc: 0x9f, 0x6cd: 0x9f, 0x6ce: 0x9f, 0x6cf: 0x9f,
2301 0x6d0: 0x9f, 0x6d1: 0x9f, 0x6d2: 0x9f, 0x6d3: 0x9f, 0x6d4: 0x9f, 0x6d5: 0x9f, 0x6d6: 0x9f, 0x6d7: 0x9f,
2302 0x6d8: 0x9f, 0x6d9: 0x9f, 0x6da: 0x9f, 0x6db: 0x9f, 0x6dc: 0x17b, 0x6dd: 0x9f, 0x6de: 0x9f, 0x6df: 0x9f,
2303 0x6e0: 0x17c, 0x6e1: 0x9f, 0x6e2: 0x9f, 0x6e3: 0x9f, 0x6e4: 0x9f, 0x6e5: 0x9f, 0x6e6: 0x9f, 0x6e7: 0x9f,
2304 0x6e8: 0x9f, 0x6e9: 0x9f, 0x6ea: 0x9f, 0x6eb: 0x9f, 0x6ec: 0x9f, 0x6ed: 0x9f, 0x6ee: 0x9f, 0x6ef: 0x9f,
2305 0x6f0: 0x9f, 0x6f1: 0x9f, 0x6f2: 0x9f, 0x6f3: 0x9f, 0x6f4: 0x9f, 0x6f5: 0x9f, 0x6f6: 0x9f, 0x6f7: 0x9f,
2306 0x6f8: 0x9f, 0x6f9: 0x9f, 0x6fa: 0x9f, 0x6fb: 0x9f, 0x6fc: 0x9f, 0x6fd: 0x9f, 0x6fe: 0x9f, 0x6ff: 0x9f,
2307 // Block 0x1c, offset 0x700
2308 0x700: 0x9f, 0x701: 0x9f, 0x702: 0x9f, 0x703: 0x9f, 0x704: 0x9f, 0x705: 0x9f, 0x706: 0x9f, 0x707: 0x9f,
2309 0x708: 0x9f, 0x709: 0x9f, 0x70a: 0x9f, 0x70b: 0x9f, 0x70c: 0x9f, 0x70d: 0x9f, 0x70e: 0x9f, 0x70f: 0x9f,
2310 0x710: 0x9f, 0x711: 0x9f, 0x712: 0x9f, 0x713: 0x9f, 0x714: 0x9f, 0x715: 0x9f, 0x716: 0x9f, 0x717: 0x9f,
2311 0x718: 0x9f, 0x719: 0x9f, 0x71a: 0x9f, 0x71b: 0x9f, 0x71c: 0x9f, 0x71d: 0x9f, 0x71e: 0x9f, 0x71f: 0x9f,
2312 0x720: 0x9f, 0x721: 0x9f, 0x722: 0x9f, 0x723: 0x9f, 0x724: 0x9f, 0x725: 0x9f, 0x726: 0x9f, 0x727: 0x9f,
2313 0x728: 0x9f, 0x729: 0x9f, 0x72a: 0x9f, 0x72b: 0x9f, 0x72c: 0x9f, 0x72d: 0x9f, 0x72e: 0x9f, 0x72f: 0x9f,
2314 0x730: 0x9f, 0x731: 0x9f, 0x732: 0x9f, 0x733: 0x9f, 0x734: 0x9f, 0x735: 0x9f, 0x736: 0x9f, 0x737: 0x9f,
2315 0x738: 0x9f, 0x739: 0x9f, 0x73a: 0x17d, 0x73b: 0x9f, 0x73c: 0x9f, 0x73d: 0x9f, 0x73e: 0x9f, 0x73f: 0x9f,
2316 // Block 0x1d, offset 0x740
2317 0x740: 0x9f, 0x741: 0x9f, 0x742: 0x9f, 0x743: 0x9f, 0x744: 0x9f, 0x745: 0x9f, 0x746: 0x9f, 0x747: 0x9f,
2318 0x748: 0x9f, 0x749: 0x9f, 0x74a: 0x9f, 0x74b: 0x9f, 0x74c: 0x9f, 0x74d: 0x9f, 0x74e: 0x9f, 0x74f: 0x9f,
2319 0x750: 0x9f, 0x751: 0x9f, 0x752: 0x9f, 0x753: 0x9f, 0x754: 0x9f, 0x755: 0x9f, 0x756: 0x9f, 0x757: 0x9f,
2320 0x758: 0x9f, 0x759: 0x9f, 0x75a: 0x9f, 0x75b: 0x9f, 0x75c: 0x9f, 0x75d: 0x9f, 0x75e: 0x9f, 0x75f: 0x9f,
2321 0x760: 0x9f, 0x761: 0x9f, 0x762: 0x9f, 0x763: 0x9f, 0x764: 0x9f, 0x765: 0x9f, 0x766: 0x9f, 0x767: 0x9f,
2322 0x768: 0x9f, 0x769: 0x9f, 0x76a: 0x9f, 0x76b: 0x9f, 0x76c: 0x9f, 0x76d: 0x9f, 0x76e: 0x9f, 0x76f: 0x17e,
2323 0x770: 0xba, 0x771: 0xba, 0x772: 0xba, 0x773: 0xba, 0x774: 0xba, 0x775: 0xba, 0x776: 0xba, 0x777: 0xba,
2324 0x778: 0xba, 0x779: 0xba, 0x77a: 0xba, 0x77b: 0xba, 0x77c: 0xba, 0x77d: 0xba, 0x77e: 0xba, 0x77f: 0xba,
2325 // Block 0x1e, offset 0x780
2326 0x780: 0xba, 0x781: 0xba, 0x782: 0xba, 0x783: 0xba, 0x784: 0xba, 0x785: 0xba, 0x786: 0xba, 0x787: 0xba,
2327 0x788: 0xba, 0x789: 0xba, 0x78a: 0xba, 0x78b: 0xba, 0x78c: 0xba, 0x78d: 0xba, 0x78e: 0xba, 0x78f: 0xba,
2328 0x790: 0xba, 0x791: 0xba, 0x792: 0xba, 0x793: 0xba, 0x794: 0xba, 0x795: 0xba, 0x796: 0xba, 0x797: 0xba,
2329 0x798: 0xba, 0x799: 0xba, 0x79a: 0xba, 0x79b: 0xba, 0x79c: 0xba, 0x79d: 0xba, 0x79e: 0xba, 0x79f: 0xba,
2330 0x7a0: 0x76, 0x7a1: 0x77, 0x7a2: 0x78, 0x7a3: 0x17f, 0x7a4: 0x79, 0x7a5: 0x7a, 0x7a6: 0x180, 0x7a7: 0x7b,
2331 0x7a8: 0x7c, 0x7a9: 0xba, 0x7aa: 0xba, 0x7ab: 0xba, 0x7ac: 0xba, 0x7ad: 0xba, 0x7ae: 0xba, 0x7af: 0xba,
2332 0x7b0: 0xba, 0x7b1: 0xba, 0x7b2: 0xba, 0x7b3: 0xba, 0x7b4: 0xba, 0x7b5: 0xba, 0x7b6: 0xba, 0x7b7: 0xba,
2333 0x7b8: 0xba, 0x7b9: 0xba, 0x7ba: 0xba, 0x7bb: 0xba, 0x7bc: 0xba, 0x7bd: 0xba, 0x7be: 0xba, 0x7bf: 0xba,
2334 // Block 0x1f, offset 0x7c0
2335 0x7d0: 0x0d, 0x7d1: 0x0e, 0x7d2: 0x0f, 0x7d3: 0x10, 0x7d4: 0x11, 0x7d5: 0x0b, 0x7d6: 0x12, 0x7d7: 0x07,
2336 0x7d8: 0x13, 0x7d9: 0x0b, 0x7da: 0x0b, 0x7db: 0x14, 0x7dc: 0x0b, 0x7dd: 0x15, 0x7de: 0x16, 0x7df: 0x17,
2337 0x7e0: 0x07, 0x7e1: 0x07, 0x7e2: 0x07, 0x7e3: 0x07, 0x7e4: 0x07, 0x7e5: 0x07, 0x7e6: 0x07, 0x7e7: 0x07,
2338 0x7e8: 0x07, 0x7e9: 0x07, 0x7ea: 0x18, 0x7eb: 0x19, 0x7ec: 0x1a, 0x7ed: 0x07, 0x7ee: 0x1b, 0x7ef: 0x1c,
2339 0x7f0: 0x0b, 0x7f1: 0x0b, 0x7f2: 0x0b, 0x7f3: 0x0b, 0x7f4: 0x0b, 0x7f5: 0x0b, 0x7f6: 0x0b, 0x7f7: 0x0b,
2340 0x7f8: 0x0b, 0x7f9: 0x0b, 0x7fa: 0x0b, 0x7fb: 0x0b, 0x7fc: 0x0b, 0x7fd: 0x0b, 0x7fe: 0x0b, 0x7ff: 0x0b,
2341 // Block 0x20, offset 0x800
2342 0x800: 0x0b, 0x801: 0x0b, 0x802: 0x0b, 0x803: 0x0b, 0x804: 0x0b, 0x805: 0x0b, 0x806: 0x0b, 0x807: 0x0b,
2343 0x808: 0x0b, 0x809: 0x0b, 0x80a: 0x0b, 0x80b: 0x0b, 0x80c: 0x0b, 0x80d: 0x0b, 0x80e: 0x0b, 0x80f: 0x0b,
2344 0x810: 0x0b, 0x811: 0x0b, 0x812: 0x0b, 0x813: 0x0b, 0x814: 0x0b, 0x815: 0x0b, 0x816: 0x0b, 0x817: 0x0b,
2345 0x818: 0x0b, 0x819: 0x0b, 0x81a: 0x0b, 0x81b: 0x0b, 0x81c: 0x0b, 0x81d: 0x0b, 0x81e: 0x0b, 0x81f: 0x0b,
2346 0x820: 0x0b, 0x821: 0x0b, 0x822: 0x0b, 0x823: 0x0b, 0x824: 0x0b, 0x825: 0x0b, 0x826: 0x0b, 0x827: 0x0b,
2347 0x828: 0x0b, 0x829: 0x0b, 0x82a: 0x0b, 0x82b: 0x0b, 0x82c: 0x0b, 0x82d: 0x0b, 0x82e: 0x0b, 0x82f: 0x0b,
2348 0x830: 0x0b, 0x831: 0x0b, 0x832: 0x0b, 0x833: 0x0b, 0x834: 0x0b, 0x835: 0x0b, 0x836: 0x0b, 0x837: 0x0b,
2349 0x838: 0x0b, 0x839: 0x0b, 0x83a: 0x0b, 0x83b: 0x0b, 0x83c: 0x0b, 0x83d: 0x0b, 0x83e: 0x0b, 0x83f: 0x0b,
2350 // Block 0x21, offset 0x840
2351 0x840: 0x181, 0x841: 0x182, 0x842: 0xba, 0x843: 0xba, 0x844: 0x183, 0x845: 0x183, 0x846: 0x183, 0x847: 0x184,
2352 0x848: 0xba, 0x849: 0xba, 0x84a: 0xba, 0x84b: 0xba, 0x84c: 0xba, 0x84d: 0xba, 0x84e: 0xba, 0x84f: 0xba,
2353 0x850: 0xba, 0x851: 0xba, 0x852: 0xba, 0x853: 0xba, 0x854: 0xba, 0x855: 0xba, 0x856: 0xba, 0x857: 0xba,
2354 0x858: 0xba, 0x859: 0xba, 0x85a: 0xba, 0x85b: 0xba, 0x85c: 0xba, 0x85d: 0xba, 0x85e: 0xba, 0x85f: 0xba,
2355 0x860: 0xba, 0x861: 0xba, 0x862: 0xba, 0x863: 0xba, 0x864: 0xba, 0x865: 0xba, 0x866: 0xba, 0x867: 0xba,
2356 0x868: 0xba, 0x869: 0xba, 0x86a: 0xba, 0x86b: 0xba, 0x86c: 0xba, 0x86d: 0xba, 0x86e: 0xba, 0x86f: 0xba,
2357 0x870: 0xba, 0x871: 0xba, 0x872: 0xba, 0x873: 0xba, 0x874: 0xba, 0x875: 0xba, 0x876: 0xba, 0x877: 0xba,
2358 0x878: 0xba, 0x879: 0xba, 0x87a: 0xba, 0x87b: 0xba, 0x87c: 0xba, 0x87d: 0xba, 0x87e: 0xba, 0x87f: 0xba,
2359 // Block 0x22, offset 0x880
2360 0x880: 0x0b, 0x881: 0x0b, 0x882: 0x0b, 0x883: 0x0b, 0x884: 0x0b, 0x885: 0x0b, 0x886: 0x0b, 0x887: 0x0b,
2361 0x888: 0x0b, 0x889: 0x0b, 0x88a: 0x0b, 0x88b: 0x0b, 0x88c: 0x0b, 0x88d: 0x0b, 0x88e: 0x0b, 0x88f: 0x0b,
2362 0x890: 0x0b, 0x891: 0x0b, 0x892: 0x0b, 0x893: 0x0b, 0x894: 0x0b, 0x895: 0x0b, 0x896: 0x0b, 0x897: 0x0b,
2363 0x898: 0x0b, 0x899: 0x0b, 0x89a: 0x0b, 0x89b: 0x0b, 0x89c: 0x0b, 0x89d: 0x0b, 0x89e: 0x0b, 0x89f: 0x0b,
2364 0x8a0: 0x1f, 0x8a1: 0x0b, 0x8a2: 0x0b, 0x8a3: 0x0b, 0x8a4: 0x0b, 0x8a5: 0x0b, 0x8a6: 0x0b, 0x8a7: 0x0b,
2365 0x8a8: 0x0b, 0x8a9: 0x0b, 0x8aa: 0x0b, 0x8ab: 0x0b, 0x8ac: 0x0b, 0x8ad: 0x0b, 0x8ae: 0x0b, 0x8af: 0x0b,
2366 0x8b0: 0x0b, 0x8b1: 0x0b, 0x8b2: 0x0b, 0x8b3: 0x0b, 0x8b4: 0x0b, 0x8b5: 0x0b, 0x8b6: 0x0b, 0x8b7: 0x0b,
2367 0x8b8: 0x0b, 0x8b9: 0x0b, 0x8ba: 0x0b, 0x8bb: 0x0b, 0x8bc: 0x0b, 0x8bd: 0x0b, 0x8be: 0x0b, 0x8bf: 0x0b,
2368 // Block 0x23, offset 0x8c0
2369 0x8c0: 0x0b, 0x8c1: 0x0b, 0x8c2: 0x0b, 0x8c3: 0x0b, 0x8c4: 0x0b, 0x8c5: 0x0b, 0x8c6: 0x0b, 0x8c7: 0x0b,
2370 0x8c8: 0x0b, 0x8c9: 0x0b, 0x8ca: 0x0b, 0x8cb: 0x0b, 0x8cc: 0x0b, 0x8cd: 0x0b, 0x8ce: 0x0b, 0x8cf: 0x0b,
2371}
2372
2373// idnaSparseOffset: 264 entries, 528 bytes
2374var idnaSparseOffset = []uint16{0x0, 0x8, 0x19, 0x25, 0x27, 0x2c, 0x34, 0x3f, 0x4b, 0x4f, 0x5e, 0x63, 0x6b, 0x77, 0x85, 0x8a, 0x93, 0xa3, 0xb1, 0xbd, 0xc9, 0xda, 0xe4, 0xeb, 0xf8, 0x109, 0x110, 0x11b, 0x12a, 0x138, 0x142, 0x144, 0x149, 0x14c, 0x14f, 0x151, 0x15d, 0x168, 0x170, 0x176, 0x17c, 0x181, 0x186, 0x189, 0x18d, 0x193, 0x198, 0x1a4, 0x1ae, 0x1b4, 0x1c5, 0x1cf, 0x1d2, 0x1da, 0x1dd, 0x1ea, 0x1f2, 0x1f6, 0x1fd, 0x205, 0x215, 0x221, 0x223, 0x22d, 0x239, 0x245, 0x251, 0x259, 0x25e, 0x268, 0x279, 0x27d, 0x288, 0x28c, 0x295, 0x29d, 0x2a3, 0x2a8, 0x2ab, 0x2af, 0x2b5, 0x2b9, 0x2bd, 0x2c3, 0x2ca, 0x2d0, 0x2d8, 0x2df, 0x2ea, 0x2f4, 0x2f8, 0x2fb, 0x301, 0x305, 0x307, 0x30a, 0x30c, 0x30f, 0x319, 0x31c, 0x32b, 0x32f, 0x334, 0x337, 0x33b, 0x340, 0x345, 0x34b, 0x351, 0x360, 0x366, 0x36a, 0x379, 0x37e, 0x386, 0x390, 0x39b, 0x3a3, 0x3b4, 0x3bd, 0x3cd, 0x3da, 0x3e4, 0x3e9, 0x3f6, 0x3fa, 0x3ff, 0x401, 0x405, 0x407, 0x40b, 0x414, 0x41a, 0x41e, 0x42e, 0x438, 0x43d, 0x440, 0x446, 0x44d, 0x452, 0x456, 0x45c, 0x461, 0x46a, 0x46f, 0x475, 0x47c, 0x483, 0x48a, 0x48e, 0x493, 0x496, 0x49b, 0x4a7, 0x4ad, 0x4b2, 0x4b9, 0x4c1, 0x4c6, 0x4ca, 0x4da, 0x4e1, 0x4e5, 0x4e9, 0x4f0, 0x4f2, 0x4f5, 0x4f8, 0x4fc, 0x500, 0x506, 0x50f, 0x51b, 0x522, 0x52b, 0x533, 0x53a, 0x548, 0x555, 0x562, 0x56b, 0x56f, 0x57d, 0x585, 0x590, 0x599, 0x59f, 0x5a7, 0x5b0, 0x5ba, 0x5bd, 0x5c9, 0x5cc, 0x5d1, 0x5de, 0x5e7, 0x5f3, 0x5f6, 0x600, 0x609, 0x615, 0x622, 0x62a, 0x62d, 0x632, 0x635, 0x638, 0x63b, 0x642, 0x649, 0x64d, 0x658, 0x65b, 0x661, 0x666, 0x66a, 0x66d, 0x670, 0x673, 0x676, 0x679, 0x67e, 0x688, 0x68b, 0x68f, 0x69e, 0x6aa, 0x6ae, 0x6b3, 0x6b8, 0x6bc, 0x6c1, 0x6ca, 0x6d5, 0x6db, 0x6e3, 0x6e7, 0x6eb, 0x6f1, 0x6f7, 0x6fc, 0x6ff, 0x70f, 0x716, 0x719, 0x71c, 0x720, 0x726, 0x72b, 0x730, 0x735, 0x738, 0x73d, 0x740, 0x743, 0x747, 0x74b, 0x74e, 0x75e, 0x76f, 0x774, 0x776, 0x778}
2375
2376// idnaSparseValues: 1915 entries, 7660 bytes
2377var idnaSparseValues = [1915]valueRange{
2378 // Block 0x0, offset 0x0
2379 {value: 0x0000, lo: 0x07},
2380 {value: 0xe105, lo: 0x80, hi: 0x96},
2381 {value: 0x0018, lo: 0x97, hi: 0x97},
2382 {value: 0xe105, lo: 0x98, hi: 0x9e},
2383 {value: 0x001f, lo: 0x9f, hi: 0x9f},
2384 {value: 0x0008, lo: 0xa0, hi: 0xb6},
2385 {value: 0x0018, lo: 0xb7, hi: 0xb7},
2386 {value: 0x0008, lo: 0xb8, hi: 0xbf},
2387 // Block 0x1, offset 0x8
2388 {value: 0x0000, lo: 0x10},
2389 {value: 0x0008, lo: 0x80, hi: 0x80},
2390 {value: 0xe01d, lo: 0x81, hi: 0x81},
2391 {value: 0x0008, lo: 0x82, hi: 0x82},
2392 {value: 0x0335, lo: 0x83, hi: 0x83},
2393 {value: 0x034d, lo: 0x84, hi: 0x84},
2394 {value: 0x0365, lo: 0x85, hi: 0x85},
2395 {value: 0xe00d, lo: 0x86, hi: 0x86},
2396 {value: 0x0008, lo: 0x87, hi: 0x87},
2397 {value: 0xe00d, lo: 0x88, hi: 0x88},
2398 {value: 0x0008, lo: 0x89, hi: 0x89},
2399 {value: 0xe00d, lo: 0x8a, hi: 0x8a},
2400 {value: 0x0008, lo: 0x8b, hi: 0x8b},
2401 {value: 0xe00d, lo: 0x8c, hi: 0x8c},
2402 {value: 0x0008, lo: 0x8d, hi: 0x8d},
2403 {value: 0xe00d, lo: 0x8e, hi: 0x8e},
2404 {value: 0x0008, lo: 0x8f, hi: 0xbf},
2405 // Block 0x2, offset 0x19
2406 {value: 0x0000, lo: 0x0b},
2407 {value: 0x0008, lo: 0x80, hi: 0xaf},
2408 {value: 0x0249, lo: 0xb0, hi: 0xb0},
2409 {value: 0x037d, lo: 0xb1, hi: 0xb1},
2410 {value: 0x0259, lo: 0xb2, hi: 0xb2},
2411 {value: 0x0269, lo: 0xb3, hi: 0xb3},
2412 {value: 0x034d, lo: 0xb4, hi: 0xb4},
2413 {value: 0x0395, lo: 0xb5, hi: 0xb5},
2414 {value: 0xe1bd, lo: 0xb6, hi: 0xb6},
2415 {value: 0x0279, lo: 0xb7, hi: 0xb7},
2416 {value: 0x0289, lo: 0xb8, hi: 0xb8},
2417 {value: 0x0008, lo: 0xb9, hi: 0xbf},
2418 // Block 0x3, offset 0x25
2419 {value: 0x0000, lo: 0x01},
2420 {value: 0x3308, lo: 0x80, hi: 0xbf},
2421 // Block 0x4, offset 0x27
2422 {value: 0x0000, lo: 0x04},
2423 {value: 0x03f5, lo: 0x80, hi: 0x8f},
2424 {value: 0xe105, lo: 0x90, hi: 0x9f},
2425 {value: 0x049d, lo: 0xa0, hi: 0xaf},
2426 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2427 // Block 0x5, offset 0x2c
2428 {value: 0x0000, lo: 0x07},
2429 {value: 0xe185, lo: 0x80, hi: 0x8f},
2430 {value: 0x0545, lo: 0x90, hi: 0x96},
2431 {value: 0x0040, lo: 0x97, hi: 0x98},
2432 {value: 0x0008, lo: 0x99, hi: 0x99},
2433 {value: 0x0018, lo: 0x9a, hi: 0x9f},
2434 {value: 0x0040, lo: 0xa0, hi: 0xa0},
2435 {value: 0x0008, lo: 0xa1, hi: 0xbf},
2436 // Block 0x6, offset 0x34
2437 {value: 0x0000, lo: 0x0a},
2438 {value: 0x0008, lo: 0x80, hi: 0x86},
2439 {value: 0x0401, lo: 0x87, hi: 0x87},
2440 {value: 0x0040, lo: 0x88, hi: 0x88},
2441 {value: 0x0018, lo: 0x89, hi: 0x8a},
2442 {value: 0x0040, lo: 0x8b, hi: 0x8c},
2443 {value: 0x0018, lo: 0x8d, hi: 0x8f},
2444 {value: 0x0040, lo: 0x90, hi: 0x90},
2445 {value: 0x3308, lo: 0x91, hi: 0xbd},
2446 {value: 0x0818, lo: 0xbe, hi: 0xbe},
2447 {value: 0x3308, lo: 0xbf, hi: 0xbf},
2448 // Block 0x7, offset 0x3f
2449 {value: 0x0000, lo: 0x0b},
2450 {value: 0x0818, lo: 0x80, hi: 0x80},
2451 {value: 0x3308, lo: 0x81, hi: 0x82},
2452 {value: 0x0818, lo: 0x83, hi: 0x83},
2453 {value: 0x3308, lo: 0x84, hi: 0x85},
2454 {value: 0x0818, lo: 0x86, hi: 0x86},
2455 {value: 0x3308, lo: 0x87, hi: 0x87},
2456 {value: 0x0040, lo: 0x88, hi: 0x8f},
2457 {value: 0x0808, lo: 0x90, hi: 0xaa},
2458 {value: 0x0040, lo: 0xab, hi: 0xaf},
2459 {value: 0x0808, lo: 0xb0, hi: 0xb4},
2460 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2461 // Block 0x8, offset 0x4b
2462 {value: 0x0000, lo: 0x03},
2463 {value: 0x0a08, lo: 0x80, hi: 0x87},
2464 {value: 0x0c08, lo: 0x88, hi: 0x99},
2465 {value: 0x0a08, lo: 0x9a, hi: 0xbf},
2466 // Block 0x9, offset 0x4f
2467 {value: 0x0000, lo: 0x0e},
2468 {value: 0x3308, lo: 0x80, hi: 0x8a},
2469 {value: 0x0040, lo: 0x8b, hi: 0x8c},
2470 {value: 0x0c08, lo: 0x8d, hi: 0x8d},
2471 {value: 0x0a08, lo: 0x8e, hi: 0x98},
2472 {value: 0x0c08, lo: 0x99, hi: 0x9b},
2473 {value: 0x0a08, lo: 0x9c, hi: 0xaa},
2474 {value: 0x0c08, lo: 0xab, hi: 0xac},
2475 {value: 0x0a08, lo: 0xad, hi: 0xb0},
2476 {value: 0x0c08, lo: 0xb1, hi: 0xb1},
2477 {value: 0x0a08, lo: 0xb2, hi: 0xb2},
2478 {value: 0x0c08, lo: 0xb3, hi: 0xb4},
2479 {value: 0x0a08, lo: 0xb5, hi: 0xb7},
2480 {value: 0x0c08, lo: 0xb8, hi: 0xb9},
2481 {value: 0x0a08, lo: 0xba, hi: 0xbf},
2482 // Block 0xa, offset 0x5e
2483 {value: 0x0000, lo: 0x04},
2484 {value: 0x0808, lo: 0x80, hi: 0xa5},
2485 {value: 0x3308, lo: 0xa6, hi: 0xb0},
2486 {value: 0x0808, lo: 0xb1, hi: 0xb1},
2487 {value: 0x0040, lo: 0xb2, hi: 0xbf},
2488 // Block 0xb, offset 0x63
2489 {value: 0x0000, lo: 0x07},
2490 {value: 0x0808, lo: 0x80, hi: 0x89},
2491 {value: 0x0a08, lo: 0x8a, hi: 0xaa},
2492 {value: 0x3308, lo: 0xab, hi: 0xb3},
2493 {value: 0x0808, lo: 0xb4, hi: 0xb5},
2494 {value: 0x0018, lo: 0xb6, hi: 0xb9},
2495 {value: 0x0818, lo: 0xba, hi: 0xba},
2496 {value: 0x0040, lo: 0xbb, hi: 0xbf},
2497 // Block 0xc, offset 0x6b
2498 {value: 0x0000, lo: 0x0b},
2499 {value: 0x0808, lo: 0x80, hi: 0x95},
2500 {value: 0x3308, lo: 0x96, hi: 0x99},
2501 {value: 0x0808, lo: 0x9a, hi: 0x9a},
2502 {value: 0x3308, lo: 0x9b, hi: 0xa3},
2503 {value: 0x0808, lo: 0xa4, hi: 0xa4},
2504 {value: 0x3308, lo: 0xa5, hi: 0xa7},
2505 {value: 0x0808, lo: 0xa8, hi: 0xa8},
2506 {value: 0x3308, lo: 0xa9, hi: 0xad},
2507 {value: 0x0040, lo: 0xae, hi: 0xaf},
2508 {value: 0x0818, lo: 0xb0, hi: 0xbe},
2509 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2510 // Block 0xd, offset 0x77
2511 {value: 0x0000, lo: 0x0d},
2512 {value: 0x0040, lo: 0x80, hi: 0x9f},
2513 {value: 0x0a08, lo: 0xa0, hi: 0xa9},
2514 {value: 0x0c08, lo: 0xaa, hi: 0xac},
2515 {value: 0x0808, lo: 0xad, hi: 0xad},
2516 {value: 0x0c08, lo: 0xae, hi: 0xae},
2517 {value: 0x0a08, lo: 0xaf, hi: 0xb0},
2518 {value: 0x0c08, lo: 0xb1, hi: 0xb2},
2519 {value: 0x0a08, lo: 0xb3, hi: 0xb4},
2520 {value: 0x0040, lo: 0xb5, hi: 0xb5},
2521 {value: 0x0a08, lo: 0xb6, hi: 0xb8},
2522 {value: 0x0c08, lo: 0xb9, hi: 0xb9},
2523 {value: 0x0a08, lo: 0xba, hi: 0xbd},
2524 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2525 // Block 0xe, offset 0x85
2526 {value: 0x0000, lo: 0x04},
2527 {value: 0x0040, lo: 0x80, hi: 0x93},
2528 {value: 0x3308, lo: 0x94, hi: 0xa1},
2529 {value: 0x0840, lo: 0xa2, hi: 0xa2},
2530 {value: 0x3308, lo: 0xa3, hi: 0xbf},
2531 // Block 0xf, offset 0x8a
2532 {value: 0x0000, lo: 0x08},
2533 {value: 0x3308, lo: 0x80, hi: 0x82},
2534 {value: 0x3008, lo: 0x83, hi: 0x83},
2535 {value: 0x0008, lo: 0x84, hi: 0xb9},
2536 {value: 0x3308, lo: 0xba, hi: 0xba},
2537 {value: 0x3008, lo: 0xbb, hi: 0xbb},
2538 {value: 0x3308, lo: 0xbc, hi: 0xbc},
2539 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2540 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2541 // Block 0x10, offset 0x93
2542 {value: 0x0000, lo: 0x0f},
2543 {value: 0x3308, lo: 0x80, hi: 0x80},
2544 {value: 0x3008, lo: 0x81, hi: 0x82},
2545 {value: 0x0040, lo: 0x83, hi: 0x85},
2546 {value: 0x3008, lo: 0x86, hi: 0x88},
2547 {value: 0x0040, lo: 0x89, hi: 0x89},
2548 {value: 0x3008, lo: 0x8a, hi: 0x8c},
2549 {value: 0x3b08, lo: 0x8d, hi: 0x8d},
2550 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2551 {value: 0x0008, lo: 0x90, hi: 0x90},
2552 {value: 0x0040, lo: 0x91, hi: 0x96},
2553 {value: 0x3008, lo: 0x97, hi: 0x97},
2554 {value: 0x0040, lo: 0x98, hi: 0xa5},
2555 {value: 0x0008, lo: 0xa6, hi: 0xaf},
2556 {value: 0x0018, lo: 0xb0, hi: 0xba},
2557 {value: 0x0040, lo: 0xbb, hi: 0xbf},
2558 // Block 0x11, offset 0xa3
2559 {value: 0x0000, lo: 0x0d},
2560 {value: 0x3308, lo: 0x80, hi: 0x80},
2561 {value: 0x3008, lo: 0x81, hi: 0x83},
2562 {value: 0x0040, lo: 0x84, hi: 0x84},
2563 {value: 0x0008, lo: 0x85, hi: 0x8c},
2564 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2565 {value: 0x0008, lo: 0x8e, hi: 0x90},
2566 {value: 0x0040, lo: 0x91, hi: 0x91},
2567 {value: 0x0008, lo: 0x92, hi: 0xa8},
2568 {value: 0x0040, lo: 0xa9, hi: 0xa9},
2569 {value: 0x0008, lo: 0xaa, hi: 0xb9},
2570 {value: 0x0040, lo: 0xba, hi: 0xbc},
2571 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2572 {value: 0x3308, lo: 0xbe, hi: 0xbf},
2573 // Block 0x12, offset 0xb1
2574 {value: 0x0000, lo: 0x0b},
2575 {value: 0x3308, lo: 0x80, hi: 0x81},
2576 {value: 0x3008, lo: 0x82, hi: 0x83},
2577 {value: 0x0040, lo: 0x84, hi: 0x84},
2578 {value: 0x0008, lo: 0x85, hi: 0x8c},
2579 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2580 {value: 0x0008, lo: 0x8e, hi: 0x90},
2581 {value: 0x0040, lo: 0x91, hi: 0x91},
2582 {value: 0x0008, lo: 0x92, hi: 0xba},
2583 {value: 0x3b08, lo: 0xbb, hi: 0xbc},
2584 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2585 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2586 // Block 0x13, offset 0xbd
2587 {value: 0x0000, lo: 0x0b},
2588 {value: 0x0040, lo: 0x80, hi: 0x81},
2589 {value: 0x3008, lo: 0x82, hi: 0x83},
2590 {value: 0x0040, lo: 0x84, hi: 0x84},
2591 {value: 0x0008, lo: 0x85, hi: 0x96},
2592 {value: 0x0040, lo: 0x97, hi: 0x99},
2593 {value: 0x0008, lo: 0x9a, hi: 0xb1},
2594 {value: 0x0040, lo: 0xb2, hi: 0xb2},
2595 {value: 0x0008, lo: 0xb3, hi: 0xbb},
2596 {value: 0x0040, lo: 0xbc, hi: 0xbc},
2597 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2598 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2599 // Block 0x14, offset 0xc9
2600 {value: 0x0000, lo: 0x10},
2601 {value: 0x0008, lo: 0x80, hi: 0x86},
2602 {value: 0x0040, lo: 0x87, hi: 0x89},
2603 {value: 0x3b08, lo: 0x8a, hi: 0x8a},
2604 {value: 0x0040, lo: 0x8b, hi: 0x8e},
2605 {value: 0x3008, lo: 0x8f, hi: 0x91},
2606 {value: 0x3308, lo: 0x92, hi: 0x94},
2607 {value: 0x0040, lo: 0x95, hi: 0x95},
2608 {value: 0x3308, lo: 0x96, hi: 0x96},
2609 {value: 0x0040, lo: 0x97, hi: 0x97},
2610 {value: 0x3008, lo: 0x98, hi: 0x9f},
2611 {value: 0x0040, lo: 0xa0, hi: 0xa5},
2612 {value: 0x0008, lo: 0xa6, hi: 0xaf},
2613 {value: 0x0040, lo: 0xb0, hi: 0xb1},
2614 {value: 0x3008, lo: 0xb2, hi: 0xb3},
2615 {value: 0x0018, lo: 0xb4, hi: 0xb4},
2616 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2617 // Block 0x15, offset 0xda
2618 {value: 0x0000, lo: 0x09},
2619 {value: 0x0040, lo: 0x80, hi: 0x80},
2620 {value: 0x0008, lo: 0x81, hi: 0xb0},
2621 {value: 0x3308, lo: 0xb1, hi: 0xb1},
2622 {value: 0x0008, lo: 0xb2, hi: 0xb2},
2623 {value: 0x08f1, lo: 0xb3, hi: 0xb3},
2624 {value: 0x3308, lo: 0xb4, hi: 0xb9},
2625 {value: 0x3b08, lo: 0xba, hi: 0xba},
2626 {value: 0x0040, lo: 0xbb, hi: 0xbe},
2627 {value: 0x0018, lo: 0xbf, hi: 0xbf},
2628 // Block 0x16, offset 0xe4
2629 {value: 0x0000, lo: 0x06},
2630 {value: 0x0008, lo: 0x80, hi: 0x86},
2631 {value: 0x3308, lo: 0x87, hi: 0x8e},
2632 {value: 0x0018, lo: 0x8f, hi: 0x8f},
2633 {value: 0x0008, lo: 0x90, hi: 0x99},
2634 {value: 0x0018, lo: 0x9a, hi: 0x9b},
2635 {value: 0x0040, lo: 0x9c, hi: 0xbf},
2636 // Block 0x17, offset 0xeb
2637 {value: 0x0000, lo: 0x0c},
2638 {value: 0x0008, lo: 0x80, hi: 0x84},
2639 {value: 0x0040, lo: 0x85, hi: 0x85},
2640 {value: 0x0008, lo: 0x86, hi: 0x86},
2641 {value: 0x0040, lo: 0x87, hi: 0x87},
2642 {value: 0x3308, lo: 0x88, hi: 0x8d},
2643 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2644 {value: 0x0008, lo: 0x90, hi: 0x99},
2645 {value: 0x0040, lo: 0x9a, hi: 0x9b},
2646 {value: 0x0961, lo: 0x9c, hi: 0x9c},
2647 {value: 0x0999, lo: 0x9d, hi: 0x9d},
2648 {value: 0x0008, lo: 0x9e, hi: 0x9f},
2649 {value: 0x0040, lo: 0xa0, hi: 0xbf},
2650 // Block 0x18, offset 0xf8
2651 {value: 0x0000, lo: 0x10},
2652 {value: 0x0008, lo: 0x80, hi: 0x80},
2653 {value: 0x0018, lo: 0x81, hi: 0x8a},
2654 {value: 0x0008, lo: 0x8b, hi: 0x8b},
2655 {value: 0xe03d, lo: 0x8c, hi: 0x8c},
2656 {value: 0x0018, lo: 0x8d, hi: 0x97},
2657 {value: 0x3308, lo: 0x98, hi: 0x99},
2658 {value: 0x0018, lo: 0x9a, hi: 0x9f},
2659 {value: 0x0008, lo: 0xa0, hi: 0xa9},
2660 {value: 0x0018, lo: 0xaa, hi: 0xb4},
2661 {value: 0x3308, lo: 0xb5, hi: 0xb5},
2662 {value: 0x0018, lo: 0xb6, hi: 0xb6},
2663 {value: 0x3308, lo: 0xb7, hi: 0xb7},
2664 {value: 0x0018, lo: 0xb8, hi: 0xb8},
2665 {value: 0x3308, lo: 0xb9, hi: 0xb9},
2666 {value: 0x0018, lo: 0xba, hi: 0xbd},
2667 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2668 // Block 0x19, offset 0x109
2669 {value: 0x0000, lo: 0x06},
2670 {value: 0x0018, lo: 0x80, hi: 0x85},
2671 {value: 0x3308, lo: 0x86, hi: 0x86},
2672 {value: 0x0018, lo: 0x87, hi: 0x8c},
2673 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2674 {value: 0x0018, lo: 0x8e, hi: 0x9a},
2675 {value: 0x0040, lo: 0x9b, hi: 0xbf},
2676 // Block 0x1a, offset 0x110
2677 {value: 0x0000, lo: 0x0a},
2678 {value: 0x0008, lo: 0x80, hi: 0xaa},
2679 {value: 0x3008, lo: 0xab, hi: 0xac},
2680 {value: 0x3308, lo: 0xad, hi: 0xb0},
2681 {value: 0x3008, lo: 0xb1, hi: 0xb1},
2682 {value: 0x3308, lo: 0xb2, hi: 0xb7},
2683 {value: 0x3008, lo: 0xb8, hi: 0xb8},
2684 {value: 0x3b08, lo: 0xb9, hi: 0xba},
2685 {value: 0x3008, lo: 0xbb, hi: 0xbc},
2686 {value: 0x3308, lo: 0xbd, hi: 0xbe},
2687 {value: 0x0008, lo: 0xbf, hi: 0xbf},
2688 // Block 0x1b, offset 0x11b
2689 {value: 0x0000, lo: 0x0e},
2690 {value: 0x0008, lo: 0x80, hi: 0x89},
2691 {value: 0x0018, lo: 0x8a, hi: 0x8f},
2692 {value: 0x0008, lo: 0x90, hi: 0x95},
2693 {value: 0x3008, lo: 0x96, hi: 0x97},
2694 {value: 0x3308, lo: 0x98, hi: 0x99},
2695 {value: 0x0008, lo: 0x9a, hi: 0x9d},
2696 {value: 0x3308, lo: 0x9e, hi: 0xa0},
2697 {value: 0x0008, lo: 0xa1, hi: 0xa1},
2698 {value: 0x3008, lo: 0xa2, hi: 0xa4},
2699 {value: 0x0008, lo: 0xa5, hi: 0xa6},
2700 {value: 0x3008, lo: 0xa7, hi: 0xad},
2701 {value: 0x0008, lo: 0xae, hi: 0xb0},
2702 {value: 0x3308, lo: 0xb1, hi: 0xb4},
2703 {value: 0x0008, lo: 0xb5, hi: 0xbf},
2704 // Block 0x1c, offset 0x12a
2705 {value: 0x0000, lo: 0x0d},
2706 {value: 0x0008, lo: 0x80, hi: 0x81},
2707 {value: 0x3308, lo: 0x82, hi: 0x82},
2708 {value: 0x3008, lo: 0x83, hi: 0x84},
2709 {value: 0x3308, lo: 0x85, hi: 0x86},
2710 {value: 0x3008, lo: 0x87, hi: 0x8c},
2711 {value: 0x3308, lo: 0x8d, hi: 0x8d},
2712 {value: 0x0008, lo: 0x8e, hi: 0x8e},
2713 {value: 0x3008, lo: 0x8f, hi: 0x8f},
2714 {value: 0x0008, lo: 0x90, hi: 0x99},
2715 {value: 0x3008, lo: 0x9a, hi: 0x9c},
2716 {value: 0x3308, lo: 0x9d, hi: 0x9d},
2717 {value: 0x0018, lo: 0x9e, hi: 0x9f},
2718 {value: 0x0040, lo: 0xa0, hi: 0xbf},
2719 // Block 0x1d, offset 0x138
2720 {value: 0x0000, lo: 0x09},
2721 {value: 0x0040, lo: 0x80, hi: 0x86},
2722 {value: 0x055d, lo: 0x87, hi: 0x87},
2723 {value: 0x0040, lo: 0x88, hi: 0x8c},
2724 {value: 0x055d, lo: 0x8d, hi: 0x8d},
2725 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2726 {value: 0x0008, lo: 0x90, hi: 0xba},
2727 {value: 0x0018, lo: 0xbb, hi: 0xbb},
2728 {value: 0xe105, lo: 0xbc, hi: 0xbc},
2729 {value: 0x0008, lo: 0xbd, hi: 0xbf},
2730 // Block 0x1e, offset 0x142
2731 {value: 0x0000, lo: 0x01},
2732 {value: 0x0018, lo: 0x80, hi: 0xbf},
2733 // Block 0x1f, offset 0x144
2734 {value: 0x0000, lo: 0x04},
2735 {value: 0x0018, lo: 0x80, hi: 0x9e},
2736 {value: 0x0040, lo: 0x9f, hi: 0xa0},
2737 {value: 0x2018, lo: 0xa1, hi: 0xb5},
2738 {value: 0x0018, lo: 0xb6, hi: 0xbf},
2739 // Block 0x20, offset 0x149
2740 {value: 0x0000, lo: 0x02},
2741 {value: 0x0018, lo: 0x80, hi: 0xa7},
2742 {value: 0x2018, lo: 0xa8, hi: 0xbf},
2743 // Block 0x21, offset 0x14c
2744 {value: 0x0000, lo: 0x02},
2745 {value: 0x2018, lo: 0x80, hi: 0x82},
2746 {value: 0x0018, lo: 0x83, hi: 0xbf},
2747 // Block 0x22, offset 0x14f
2748 {value: 0x0000, lo: 0x01},
2749 {value: 0x0008, lo: 0x80, hi: 0xbf},
2750 // Block 0x23, offset 0x151
2751 {value: 0x0000, lo: 0x0b},
2752 {value: 0x0008, lo: 0x80, hi: 0x88},
2753 {value: 0x0040, lo: 0x89, hi: 0x89},
2754 {value: 0x0008, lo: 0x8a, hi: 0x8d},
2755 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2756 {value: 0x0008, lo: 0x90, hi: 0x96},
2757 {value: 0x0040, lo: 0x97, hi: 0x97},
2758 {value: 0x0008, lo: 0x98, hi: 0x98},
2759 {value: 0x0040, lo: 0x99, hi: 0x99},
2760 {value: 0x0008, lo: 0x9a, hi: 0x9d},
2761 {value: 0x0040, lo: 0x9e, hi: 0x9f},
2762 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2763 // Block 0x24, offset 0x15d
2764 {value: 0x0000, lo: 0x0a},
2765 {value: 0x0008, lo: 0x80, hi: 0x88},
2766 {value: 0x0040, lo: 0x89, hi: 0x89},
2767 {value: 0x0008, lo: 0x8a, hi: 0x8d},
2768 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2769 {value: 0x0008, lo: 0x90, hi: 0xb0},
2770 {value: 0x0040, lo: 0xb1, hi: 0xb1},
2771 {value: 0x0008, lo: 0xb2, hi: 0xb5},
2772 {value: 0x0040, lo: 0xb6, hi: 0xb7},
2773 {value: 0x0008, lo: 0xb8, hi: 0xbe},
2774 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2775 // Block 0x25, offset 0x168
2776 {value: 0x0000, lo: 0x07},
2777 {value: 0x0008, lo: 0x80, hi: 0x80},
2778 {value: 0x0040, lo: 0x81, hi: 0x81},
2779 {value: 0x0008, lo: 0x82, hi: 0x85},
2780 {value: 0x0040, lo: 0x86, hi: 0x87},
2781 {value: 0x0008, lo: 0x88, hi: 0x96},
2782 {value: 0x0040, lo: 0x97, hi: 0x97},
2783 {value: 0x0008, lo: 0x98, hi: 0xbf},
2784 // Block 0x26, offset 0x170
2785 {value: 0x0000, lo: 0x05},
2786 {value: 0x0008, lo: 0x80, hi: 0x90},
2787 {value: 0x0040, lo: 0x91, hi: 0x91},
2788 {value: 0x0008, lo: 0x92, hi: 0x95},
2789 {value: 0x0040, lo: 0x96, hi: 0x97},
2790 {value: 0x0008, lo: 0x98, hi: 0xbf},
2791 // Block 0x27, offset 0x176
2792 {value: 0x0000, lo: 0x05},
2793 {value: 0x0008, lo: 0x80, hi: 0x9a},
2794 {value: 0x0040, lo: 0x9b, hi: 0x9c},
2795 {value: 0x3308, lo: 0x9d, hi: 0x9f},
2796 {value: 0x0018, lo: 0xa0, hi: 0xbc},
2797 {value: 0x0040, lo: 0xbd, hi: 0xbf},
2798 // Block 0x28, offset 0x17c
2799 {value: 0x0000, lo: 0x04},
2800 {value: 0x0008, lo: 0x80, hi: 0x8f},
2801 {value: 0x0018, lo: 0x90, hi: 0x99},
2802 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2803 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2804 // Block 0x29, offset 0x181
2805 {value: 0x0000, lo: 0x04},
2806 {value: 0x0008, lo: 0x80, hi: 0xb5},
2807 {value: 0x0040, lo: 0xb6, hi: 0xb7},
2808 {value: 0xe045, lo: 0xb8, hi: 0xbd},
2809 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2810 // Block 0x2a, offset 0x186
2811 {value: 0x0000, lo: 0x02},
2812 {value: 0x0018, lo: 0x80, hi: 0x80},
2813 {value: 0x0008, lo: 0x81, hi: 0xbf},
2814 // Block 0x2b, offset 0x189
2815 {value: 0x0000, lo: 0x03},
2816 {value: 0x0008, lo: 0x80, hi: 0xac},
2817 {value: 0x0018, lo: 0xad, hi: 0xae},
2818 {value: 0x0008, lo: 0xaf, hi: 0xbf},
2819 // Block 0x2c, offset 0x18d
2820 {value: 0x0000, lo: 0x05},
2821 {value: 0x0040, lo: 0x80, hi: 0x80},
2822 {value: 0x0008, lo: 0x81, hi: 0x9a},
2823 {value: 0x0018, lo: 0x9b, hi: 0x9c},
2824 {value: 0x0040, lo: 0x9d, hi: 0x9f},
2825 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2826 // Block 0x2d, offset 0x193
2827 {value: 0x0000, lo: 0x04},
2828 {value: 0x0008, lo: 0x80, hi: 0xaa},
2829 {value: 0x0018, lo: 0xab, hi: 0xb0},
2830 {value: 0x0008, lo: 0xb1, hi: 0xb8},
2831 {value: 0x0040, lo: 0xb9, hi: 0xbf},
2832 // Block 0x2e, offset 0x198
2833 {value: 0x0000, lo: 0x0b},
2834 {value: 0x0008, lo: 0x80, hi: 0x8c},
2835 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2836 {value: 0x0008, lo: 0x8e, hi: 0x91},
2837 {value: 0x3308, lo: 0x92, hi: 0x93},
2838 {value: 0x3b08, lo: 0x94, hi: 0x94},
2839 {value: 0x0040, lo: 0x95, hi: 0x9f},
2840 {value: 0x0008, lo: 0xa0, hi: 0xb1},
2841 {value: 0x3308, lo: 0xb2, hi: 0xb3},
2842 {value: 0x3b08, lo: 0xb4, hi: 0xb4},
2843 {value: 0x0018, lo: 0xb5, hi: 0xb6},
2844 {value: 0x0040, lo: 0xb7, hi: 0xbf},
2845 // Block 0x2f, offset 0x1a4
2846 {value: 0x0000, lo: 0x09},
2847 {value: 0x0008, lo: 0x80, hi: 0x91},
2848 {value: 0x3308, lo: 0x92, hi: 0x93},
2849 {value: 0x0040, lo: 0x94, hi: 0x9f},
2850 {value: 0x0008, lo: 0xa0, hi: 0xac},
2851 {value: 0x0040, lo: 0xad, hi: 0xad},
2852 {value: 0x0008, lo: 0xae, hi: 0xb0},
2853 {value: 0x0040, lo: 0xb1, hi: 0xb1},
2854 {value: 0x3308, lo: 0xb2, hi: 0xb3},
2855 {value: 0x0040, lo: 0xb4, hi: 0xbf},
2856 // Block 0x30, offset 0x1ae
2857 {value: 0x0000, lo: 0x05},
2858 {value: 0x0008, lo: 0x80, hi: 0xb3},
2859 {value: 0x3340, lo: 0xb4, hi: 0xb5},
2860 {value: 0x3008, lo: 0xb6, hi: 0xb6},
2861 {value: 0x3308, lo: 0xb7, hi: 0xbd},
2862 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2863 // Block 0x31, offset 0x1b4
2864 {value: 0x0000, lo: 0x10},
2865 {value: 0x3008, lo: 0x80, hi: 0x85},
2866 {value: 0x3308, lo: 0x86, hi: 0x86},
2867 {value: 0x3008, lo: 0x87, hi: 0x88},
2868 {value: 0x3308, lo: 0x89, hi: 0x91},
2869 {value: 0x3b08, lo: 0x92, hi: 0x92},
2870 {value: 0x3308, lo: 0x93, hi: 0x93},
2871 {value: 0x0018, lo: 0x94, hi: 0x96},
2872 {value: 0x0008, lo: 0x97, hi: 0x97},
2873 {value: 0x0018, lo: 0x98, hi: 0x9b},
2874 {value: 0x0008, lo: 0x9c, hi: 0x9c},
2875 {value: 0x3308, lo: 0x9d, hi: 0x9d},
2876 {value: 0x0040, lo: 0x9e, hi: 0x9f},
2877 {value: 0x0008, lo: 0xa0, hi: 0xa9},
2878 {value: 0x0040, lo: 0xaa, hi: 0xaf},
2879 {value: 0x0018, lo: 0xb0, hi: 0xb9},
2880 {value: 0x0040, lo: 0xba, hi: 0xbf},
2881 // Block 0x32, offset 0x1c5
2882 {value: 0x0000, lo: 0x09},
2883 {value: 0x0018, lo: 0x80, hi: 0x85},
2884 {value: 0x0040, lo: 0x86, hi: 0x86},
2885 {value: 0x0218, lo: 0x87, hi: 0x87},
2886 {value: 0x0018, lo: 0x88, hi: 0x8a},
2887 {value: 0x33c0, lo: 0x8b, hi: 0x8d},
2888 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2889 {value: 0x0008, lo: 0x90, hi: 0x99},
2890 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2891 {value: 0x0208, lo: 0xa0, hi: 0xbf},
2892 // Block 0x33, offset 0x1cf
2893 {value: 0x0000, lo: 0x02},
2894 {value: 0x0208, lo: 0x80, hi: 0xb7},
2895 {value: 0x0040, lo: 0xb8, hi: 0xbf},
2896 // Block 0x34, offset 0x1d2
2897 {value: 0x0000, lo: 0x07},
2898 {value: 0x0008, lo: 0x80, hi: 0x84},
2899 {value: 0x3308, lo: 0x85, hi: 0x86},
2900 {value: 0x0208, lo: 0x87, hi: 0xa8},
2901 {value: 0x3308, lo: 0xa9, hi: 0xa9},
2902 {value: 0x0208, lo: 0xaa, hi: 0xaa},
2903 {value: 0x0040, lo: 0xab, hi: 0xaf},
2904 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2905 // Block 0x35, offset 0x1da
2906 {value: 0x0000, lo: 0x02},
2907 {value: 0x0008, lo: 0x80, hi: 0xb5},
2908 {value: 0x0040, lo: 0xb6, hi: 0xbf},
2909 // Block 0x36, offset 0x1dd
2910 {value: 0x0000, lo: 0x0c},
2911 {value: 0x0008, lo: 0x80, hi: 0x9e},
2912 {value: 0x0040, lo: 0x9f, hi: 0x9f},
2913 {value: 0x3308, lo: 0xa0, hi: 0xa2},
2914 {value: 0x3008, lo: 0xa3, hi: 0xa6},
2915 {value: 0x3308, lo: 0xa7, hi: 0xa8},
2916 {value: 0x3008, lo: 0xa9, hi: 0xab},
2917 {value: 0x0040, lo: 0xac, hi: 0xaf},
2918 {value: 0x3008, lo: 0xb0, hi: 0xb1},
2919 {value: 0x3308, lo: 0xb2, hi: 0xb2},
2920 {value: 0x3008, lo: 0xb3, hi: 0xb8},
2921 {value: 0x3308, lo: 0xb9, hi: 0xbb},
2922 {value: 0x0040, lo: 0xbc, hi: 0xbf},
2923 // Block 0x37, offset 0x1ea
2924 {value: 0x0000, lo: 0x07},
2925 {value: 0x0018, lo: 0x80, hi: 0x80},
2926 {value: 0x0040, lo: 0x81, hi: 0x83},
2927 {value: 0x0018, lo: 0x84, hi: 0x85},
2928 {value: 0x0008, lo: 0x86, hi: 0xad},
2929 {value: 0x0040, lo: 0xae, hi: 0xaf},
2930 {value: 0x0008, lo: 0xb0, hi: 0xb4},
2931 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2932 // Block 0x38, offset 0x1f2
2933 {value: 0x0000, lo: 0x03},
2934 {value: 0x0008, lo: 0x80, hi: 0xab},
2935 {value: 0x0040, lo: 0xac, hi: 0xaf},
2936 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2937 // Block 0x39, offset 0x1f6
2938 {value: 0x0000, lo: 0x06},
2939 {value: 0x0008, lo: 0x80, hi: 0x89},
2940 {value: 0x0040, lo: 0x8a, hi: 0x8f},
2941 {value: 0x0008, lo: 0x90, hi: 0x99},
2942 {value: 0x0028, lo: 0x9a, hi: 0x9a},
2943 {value: 0x0040, lo: 0x9b, hi: 0x9d},
2944 {value: 0x0018, lo: 0x9e, hi: 0xbf},
2945 // Block 0x3a, offset 0x1fd
2946 {value: 0x0000, lo: 0x07},
2947 {value: 0x0008, lo: 0x80, hi: 0x96},
2948 {value: 0x3308, lo: 0x97, hi: 0x98},
2949 {value: 0x3008, lo: 0x99, hi: 0x9a},
2950 {value: 0x3308, lo: 0x9b, hi: 0x9b},
2951 {value: 0x0040, lo: 0x9c, hi: 0x9d},
2952 {value: 0x0018, lo: 0x9e, hi: 0x9f},
2953 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2954 // Block 0x3b, offset 0x205
2955 {value: 0x0000, lo: 0x0f},
2956 {value: 0x0008, lo: 0x80, hi: 0x94},
2957 {value: 0x3008, lo: 0x95, hi: 0x95},
2958 {value: 0x3308, lo: 0x96, hi: 0x96},
2959 {value: 0x3008, lo: 0x97, hi: 0x97},
2960 {value: 0x3308, lo: 0x98, hi: 0x9e},
2961 {value: 0x0040, lo: 0x9f, hi: 0x9f},
2962 {value: 0x3b08, lo: 0xa0, hi: 0xa0},
2963 {value: 0x3008, lo: 0xa1, hi: 0xa1},
2964 {value: 0x3308, lo: 0xa2, hi: 0xa2},
2965 {value: 0x3008, lo: 0xa3, hi: 0xa4},
2966 {value: 0x3308, lo: 0xa5, hi: 0xac},
2967 {value: 0x3008, lo: 0xad, hi: 0xb2},
2968 {value: 0x3308, lo: 0xb3, hi: 0xbc},
2969 {value: 0x0040, lo: 0xbd, hi: 0xbe},
2970 {value: 0x3308, lo: 0xbf, hi: 0xbf},
2971 // Block 0x3c, offset 0x215
2972 {value: 0x0000, lo: 0x0b},
2973 {value: 0x0008, lo: 0x80, hi: 0x89},
2974 {value: 0x0040, lo: 0x8a, hi: 0x8f},
2975 {value: 0x0008, lo: 0x90, hi: 0x99},
2976 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2977 {value: 0x0018, lo: 0xa0, hi: 0xa6},
2978 {value: 0x0008, lo: 0xa7, hi: 0xa7},
2979 {value: 0x0018, lo: 0xa8, hi: 0xad},
2980 {value: 0x0040, lo: 0xae, hi: 0xaf},
2981 {value: 0x3308, lo: 0xb0, hi: 0xbd},
2982 {value: 0x3318, lo: 0xbe, hi: 0xbe},
2983 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2984 // Block 0x3d, offset 0x221
2985 {value: 0x0000, lo: 0x01},
2986 {value: 0x0040, lo: 0x80, hi: 0xbf},
2987 // Block 0x3e, offset 0x223
2988 {value: 0x0000, lo: 0x09},
2989 {value: 0x3308, lo: 0x80, hi: 0x83},
2990 {value: 0x3008, lo: 0x84, hi: 0x84},
2991 {value: 0x0008, lo: 0x85, hi: 0xb3},
2992 {value: 0x3308, lo: 0xb4, hi: 0xb4},
2993 {value: 0x3008, lo: 0xb5, hi: 0xb5},
2994 {value: 0x3308, lo: 0xb6, hi: 0xba},
2995 {value: 0x3008, lo: 0xbb, hi: 0xbb},
2996 {value: 0x3308, lo: 0xbc, hi: 0xbc},
2997 {value: 0x3008, lo: 0xbd, hi: 0xbf},
2998 // Block 0x3f, offset 0x22d
2999 {value: 0x0000, lo: 0x0b},
3000 {value: 0x3008, lo: 0x80, hi: 0x81},
3001 {value: 0x3308, lo: 0x82, hi: 0x82},
3002 {value: 0x3008, lo: 0x83, hi: 0x83},
3003 {value: 0x3808, lo: 0x84, hi: 0x84},
3004 {value: 0x0008, lo: 0x85, hi: 0x8b},
3005 {value: 0x0040, lo: 0x8c, hi: 0x8f},
3006 {value: 0x0008, lo: 0x90, hi: 0x99},
3007 {value: 0x0018, lo: 0x9a, hi: 0xaa},
3008 {value: 0x3308, lo: 0xab, hi: 0xb3},
3009 {value: 0x0018, lo: 0xb4, hi: 0xbc},
3010 {value: 0x0040, lo: 0xbd, hi: 0xbf},
3011 // Block 0x40, offset 0x239
3012 {value: 0x0000, lo: 0x0b},
3013 {value: 0x3308, lo: 0x80, hi: 0x81},
3014 {value: 0x3008, lo: 0x82, hi: 0x82},
3015 {value: 0x0008, lo: 0x83, hi: 0xa0},
3016 {value: 0x3008, lo: 0xa1, hi: 0xa1},
3017 {value: 0x3308, lo: 0xa2, hi: 0xa5},
3018 {value: 0x3008, lo: 0xa6, hi: 0xa7},
3019 {value: 0x3308, lo: 0xa8, hi: 0xa9},
3020 {value: 0x3808, lo: 0xaa, hi: 0xaa},
3021 {value: 0x3b08, lo: 0xab, hi: 0xab},
3022 {value: 0x3308, lo: 0xac, hi: 0xad},
3023 {value: 0x0008, lo: 0xae, hi: 0xbf},
3024 // Block 0x41, offset 0x245
3025 {value: 0x0000, lo: 0x0b},
3026 {value: 0x0008, lo: 0x80, hi: 0xa5},
3027 {value: 0x3308, lo: 0xa6, hi: 0xa6},
3028 {value: 0x3008, lo: 0xa7, hi: 0xa7},
3029 {value: 0x3308, lo: 0xa8, hi: 0xa9},
3030 {value: 0x3008, lo: 0xaa, hi: 0xac},
3031 {value: 0x3308, lo: 0xad, hi: 0xad},
3032 {value: 0x3008, lo: 0xae, hi: 0xae},
3033 {value: 0x3308, lo: 0xaf, hi: 0xb1},
3034 {value: 0x3808, lo: 0xb2, hi: 0xb3},
3035 {value: 0x0040, lo: 0xb4, hi: 0xbb},
3036 {value: 0x0018, lo: 0xbc, hi: 0xbf},
3037 // Block 0x42, offset 0x251
3038 {value: 0x0000, lo: 0x07},
3039 {value: 0x0008, lo: 0x80, hi: 0xa3},
3040 {value: 0x3008, lo: 0xa4, hi: 0xab},
3041 {value: 0x3308, lo: 0xac, hi: 0xb3},
3042 {value: 0x3008, lo: 0xb4, hi: 0xb5},
3043 {value: 0x3308, lo: 0xb6, hi: 0xb7},
3044 {value: 0x0040, lo: 0xb8, hi: 0xba},
3045 {value: 0x0018, lo: 0xbb, hi: 0xbf},
3046 // Block 0x43, offset 0x259
3047 {value: 0x0000, lo: 0x04},
3048 {value: 0x0008, lo: 0x80, hi: 0x89},
3049 {value: 0x0040, lo: 0x8a, hi: 0x8c},
3050 {value: 0x0008, lo: 0x8d, hi: 0xbd},
3051 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3052 // Block 0x44, offset 0x25e
3053 {value: 0x0000, lo: 0x09},
3054 {value: 0x0e29, lo: 0x80, hi: 0x80},
3055 {value: 0x0e41, lo: 0x81, hi: 0x81},
3056 {value: 0x0e59, lo: 0x82, hi: 0x82},
3057 {value: 0x0e71, lo: 0x83, hi: 0x83},
3058 {value: 0x0e89, lo: 0x84, hi: 0x85},
3059 {value: 0x0ea1, lo: 0x86, hi: 0x86},
3060 {value: 0x0eb9, lo: 0x87, hi: 0x87},
3061 {value: 0x057d, lo: 0x88, hi: 0x88},
3062 {value: 0x0040, lo: 0x89, hi: 0xbf},
3063 // Block 0x45, offset 0x268
3064 {value: 0x0000, lo: 0x10},
3065 {value: 0x0018, lo: 0x80, hi: 0x87},
3066 {value: 0x0040, lo: 0x88, hi: 0x8f},
3067 {value: 0x3308, lo: 0x90, hi: 0x92},
3068 {value: 0x0018, lo: 0x93, hi: 0x93},
3069 {value: 0x3308, lo: 0x94, hi: 0xa0},
3070 {value: 0x3008, lo: 0xa1, hi: 0xa1},
3071 {value: 0x3308, lo: 0xa2, hi: 0xa8},
3072 {value: 0x0008, lo: 0xa9, hi: 0xac},
3073 {value: 0x3308, lo: 0xad, hi: 0xad},
3074 {value: 0x0008, lo: 0xae, hi: 0xb1},
3075 {value: 0x3008, lo: 0xb2, hi: 0xb3},
3076 {value: 0x3308, lo: 0xb4, hi: 0xb4},
3077 {value: 0x0008, lo: 0xb5, hi: 0xb6},
3078 {value: 0x3008, lo: 0xb7, hi: 0xb7},
3079 {value: 0x3308, lo: 0xb8, hi: 0xb9},
3080 {value: 0x0040, lo: 0xba, hi: 0xbf},
3081 // Block 0x46, offset 0x279
3082 {value: 0x0000, lo: 0x03},
3083 {value: 0x3308, lo: 0x80, hi: 0xb9},
3084 {value: 0x0040, lo: 0xba, hi: 0xba},
3085 {value: 0x3308, lo: 0xbb, hi: 0xbf},
3086 // Block 0x47, offset 0x27d
3087 {value: 0x0000, lo: 0x0a},
3088 {value: 0x0008, lo: 0x80, hi: 0x87},
3089 {value: 0xe045, lo: 0x88, hi: 0x8f},
3090 {value: 0x0008, lo: 0x90, hi: 0x95},
3091 {value: 0x0040, lo: 0x96, hi: 0x97},
3092 {value: 0xe045, lo: 0x98, hi: 0x9d},
3093 {value: 0x0040, lo: 0x9e, hi: 0x9f},
3094 {value: 0x0008, lo: 0xa0, hi: 0xa7},
3095 {value: 0xe045, lo: 0xa8, hi: 0xaf},
3096 {value: 0x0008, lo: 0xb0, hi: 0xb7},
3097 {value: 0xe045, lo: 0xb8, hi: 0xbf},
3098 // Block 0x48, offset 0x288
3099 {value: 0x0000, lo: 0x03},
3100 {value: 0x0040, lo: 0x80, hi: 0x8f},
3101 {value: 0x3318, lo: 0x90, hi: 0xb0},
3102 {value: 0x0040, lo: 0xb1, hi: 0xbf},
3103 // Block 0x49, offset 0x28c
3104 {value: 0x0000, lo: 0x08},
3105 {value: 0x0018, lo: 0x80, hi: 0x82},
3106 {value: 0x0040, lo: 0x83, hi: 0x83},
3107 {value: 0x0008, lo: 0x84, hi: 0x84},
3108 {value: 0x0018, lo: 0x85, hi: 0x88},
3109 {value: 0x24c1, lo: 0x89, hi: 0x89},
3110 {value: 0x0018, lo: 0x8a, hi: 0x8b},
3111 {value: 0x0040, lo: 0x8c, hi: 0x8f},
3112 {value: 0x0018, lo: 0x90, hi: 0xbf},
3113 // Block 0x4a, offset 0x295
3114 {value: 0x0000, lo: 0x07},
3115 {value: 0x0018, lo: 0x80, hi: 0xab},
3116 {value: 0x24f1, lo: 0xac, hi: 0xac},
3117 {value: 0x2529, lo: 0xad, hi: 0xad},
3118 {value: 0x0018, lo: 0xae, hi: 0xae},
3119 {value: 0x2579, lo: 0xaf, hi: 0xaf},
3120 {value: 0x25b1, lo: 0xb0, hi: 0xb0},
3121 {value: 0x0018, lo: 0xb1, hi: 0xbf},
3122 // Block 0x4b, offset 0x29d
3123 {value: 0x0000, lo: 0x05},
3124 {value: 0x0018, lo: 0x80, hi: 0x9f},
3125 {value: 0x0080, lo: 0xa0, hi: 0xa0},
3126 {value: 0x0018, lo: 0xa1, hi: 0xad},
3127 {value: 0x0080, lo: 0xae, hi: 0xaf},
3128 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3129 // Block 0x4c, offset 0x2a3
3130 {value: 0x0000, lo: 0x04},
3131 {value: 0x0018, lo: 0x80, hi: 0xa8},
3132 {value: 0x09c5, lo: 0xa9, hi: 0xa9},
3133 {value: 0x09e5, lo: 0xaa, hi: 0xaa},
3134 {value: 0x0018, lo: 0xab, hi: 0xbf},
3135 // Block 0x4d, offset 0x2a8
3136 {value: 0x0000, lo: 0x02},
3137 {value: 0x0018, lo: 0x80, hi: 0xa6},
3138 {value: 0x0040, lo: 0xa7, hi: 0xbf},
3139 // Block 0x4e, offset 0x2ab
3140 {value: 0x0000, lo: 0x03},
3141 {value: 0x0018, lo: 0x80, hi: 0x8b},
3142 {value: 0x28c1, lo: 0x8c, hi: 0x8c},
3143 {value: 0x0018, lo: 0x8d, hi: 0xbf},
3144 // Block 0x4f, offset 0x2af
3145 {value: 0x0000, lo: 0x05},
3146 {value: 0x0018, lo: 0x80, hi: 0xb3},
3147 {value: 0x0e66, lo: 0xb4, hi: 0xb4},
3148 {value: 0x292a, lo: 0xb5, hi: 0xb5},
3149 {value: 0x0e86, lo: 0xb6, hi: 0xb6},
3150 {value: 0x0018, lo: 0xb7, hi: 0xbf},
3151 // Block 0x50, offset 0x2b5
3152 {value: 0x0000, lo: 0x03},
3153 {value: 0x0018, lo: 0x80, hi: 0x9b},
3154 {value: 0x2941, lo: 0x9c, hi: 0x9c},
3155 {value: 0x0018, lo: 0x9d, hi: 0xbf},
3156 // Block 0x51, offset 0x2b9
3157 {value: 0x0000, lo: 0x03},
3158 {value: 0x0018, lo: 0x80, hi: 0xb3},
3159 {value: 0x0040, lo: 0xb4, hi: 0xb5},
3160 {value: 0x0018, lo: 0xb6, hi: 0xbf},
3161 // Block 0x52, offset 0x2bd
3162 {value: 0x0000, lo: 0x05},
3163 {value: 0x0018, lo: 0x80, hi: 0x95},
3164 {value: 0x0040, lo: 0x96, hi: 0x97},
3165 {value: 0x0018, lo: 0x98, hi: 0xb9},
3166 {value: 0x0040, lo: 0xba, hi: 0xbc},
3167 {value: 0x0018, lo: 0xbd, hi: 0xbf},
3168 // Block 0x53, offset 0x2c3
3169 {value: 0x0000, lo: 0x06},
3170 {value: 0x0018, lo: 0x80, hi: 0x88},
3171 {value: 0x0040, lo: 0x89, hi: 0x89},
3172 {value: 0x0018, lo: 0x8a, hi: 0x92},
3173 {value: 0x0040, lo: 0x93, hi: 0xab},
3174 {value: 0x0018, lo: 0xac, hi: 0xaf},
3175 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3176 // Block 0x54, offset 0x2ca
3177 {value: 0x0000, lo: 0x05},
3178 {value: 0xe185, lo: 0x80, hi: 0x8f},
3179 {value: 0x03f5, lo: 0x90, hi: 0x9f},
3180 {value: 0x0ea5, lo: 0xa0, hi: 0xae},
3181 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3182 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3183 // Block 0x55, offset 0x2d0
3184 {value: 0x0000, lo: 0x07},
3185 {value: 0x0008, lo: 0x80, hi: 0xa5},
3186 {value: 0x0040, lo: 0xa6, hi: 0xa6},
3187 {value: 0x0008, lo: 0xa7, hi: 0xa7},
3188 {value: 0x0040, lo: 0xa8, hi: 0xac},
3189 {value: 0x0008, lo: 0xad, hi: 0xad},
3190 {value: 0x0040, lo: 0xae, hi: 0xaf},
3191 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3192 // Block 0x56, offset 0x2d8
3193 {value: 0x0000, lo: 0x06},
3194 {value: 0x0008, lo: 0x80, hi: 0xa7},
3195 {value: 0x0040, lo: 0xa8, hi: 0xae},
3196 {value: 0xe075, lo: 0xaf, hi: 0xaf},
3197 {value: 0x0018, lo: 0xb0, hi: 0xb0},
3198 {value: 0x0040, lo: 0xb1, hi: 0xbe},
3199 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
3200 // Block 0x57, offset 0x2df
3201 {value: 0x0000, lo: 0x0a},
3202 {value: 0x0008, lo: 0x80, hi: 0x96},
3203 {value: 0x0040, lo: 0x97, hi: 0x9f},
3204 {value: 0x0008, lo: 0xa0, hi: 0xa6},
3205 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3206 {value: 0x0008, lo: 0xa8, hi: 0xae},
3207 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3208 {value: 0x0008, lo: 0xb0, hi: 0xb6},
3209 {value: 0x0040, lo: 0xb7, hi: 0xb7},
3210 {value: 0x0008, lo: 0xb8, hi: 0xbe},
3211 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3212 // Block 0x58, offset 0x2ea
3213 {value: 0x0000, lo: 0x09},
3214 {value: 0x0008, lo: 0x80, hi: 0x86},
3215 {value: 0x0040, lo: 0x87, hi: 0x87},
3216 {value: 0x0008, lo: 0x88, hi: 0x8e},
3217 {value: 0x0040, lo: 0x8f, hi: 0x8f},
3218 {value: 0x0008, lo: 0x90, hi: 0x96},
3219 {value: 0x0040, lo: 0x97, hi: 0x97},
3220 {value: 0x0008, lo: 0x98, hi: 0x9e},
3221 {value: 0x0040, lo: 0x9f, hi: 0x9f},
3222 {value: 0x3308, lo: 0xa0, hi: 0xbf},
3223 // Block 0x59, offset 0x2f4
3224 {value: 0x0000, lo: 0x03},
3225 {value: 0x0018, lo: 0x80, hi: 0xae},
3226 {value: 0x0008, lo: 0xaf, hi: 0xaf},
3227 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3228 // Block 0x5a, offset 0x2f8
3229 {value: 0x0000, lo: 0x02},
3230 {value: 0x0018, lo: 0x80, hi: 0x89},
3231 {value: 0x0040, lo: 0x8a, hi: 0xbf},
3232 // Block 0x5b, offset 0x2fb
3233 {value: 0x0000, lo: 0x05},
3234 {value: 0x0018, lo: 0x80, hi: 0x99},
3235 {value: 0x0040, lo: 0x9a, hi: 0x9a},
3236 {value: 0x0018, lo: 0x9b, hi: 0x9e},
3237 {value: 0x0edd, lo: 0x9f, hi: 0x9f},
3238 {value: 0x0018, lo: 0xa0, hi: 0xbf},
3239 // Block 0x5c, offset 0x301
3240 {value: 0x0000, lo: 0x03},
3241 {value: 0x0018, lo: 0x80, hi: 0xb2},
3242 {value: 0x0efd, lo: 0xb3, hi: 0xb3},
3243 {value: 0x0040, lo: 0xb4, hi: 0xbf},
3244 // Block 0x5d, offset 0x305
3245 {value: 0x0020, lo: 0x01},
3246 {value: 0x0f1d, lo: 0x80, hi: 0xbf},
3247 // Block 0x5e, offset 0x307
3248 {value: 0x0020, lo: 0x02},
3249 {value: 0x171d, lo: 0x80, hi: 0x8f},
3250 {value: 0x18fd, lo: 0x90, hi: 0xbf},
3251 // Block 0x5f, offset 0x30a
3252 {value: 0x0020, lo: 0x01},
3253 {value: 0x1efd, lo: 0x80, hi: 0xbf},
3254 // Block 0x60, offset 0x30c
3255 {value: 0x0000, lo: 0x02},
3256 {value: 0x0040, lo: 0x80, hi: 0x80},
3257 {value: 0x0008, lo: 0x81, hi: 0xbf},
3258 // Block 0x61, offset 0x30f
3259 {value: 0x0000, lo: 0x09},
3260 {value: 0x0008, lo: 0x80, hi: 0x96},
3261 {value: 0x0040, lo: 0x97, hi: 0x98},
3262 {value: 0x3308, lo: 0x99, hi: 0x9a},
3263 {value: 0x29e2, lo: 0x9b, hi: 0x9b},
3264 {value: 0x2a0a, lo: 0x9c, hi: 0x9c},
3265 {value: 0x0008, lo: 0x9d, hi: 0x9e},
3266 {value: 0x2a31, lo: 0x9f, hi: 0x9f},
3267 {value: 0x0018, lo: 0xa0, hi: 0xa0},
3268 {value: 0x0008, lo: 0xa1, hi: 0xbf},
3269 // Block 0x62, offset 0x319
3270 {value: 0x0000, lo: 0x02},
3271 {value: 0x0008, lo: 0x80, hi: 0xbe},
3272 {value: 0x2a69, lo: 0xbf, hi: 0xbf},
3273 // Block 0x63, offset 0x31c
3274 {value: 0x0000, lo: 0x0e},
3275 {value: 0x0040, lo: 0x80, hi: 0x84},
3276 {value: 0x0008, lo: 0x85, hi: 0xae},
3277 {value: 0x0040, lo: 0xaf, hi: 0xb0},
3278 {value: 0x2a1d, lo: 0xb1, hi: 0xb1},
3279 {value: 0x2a3d, lo: 0xb2, hi: 0xb2},
3280 {value: 0x2a5d, lo: 0xb3, hi: 0xb3},
3281 {value: 0x2a7d, lo: 0xb4, hi: 0xb4},
3282 {value: 0x2a5d, lo: 0xb5, hi: 0xb5},
3283 {value: 0x2a9d, lo: 0xb6, hi: 0xb6},
3284 {value: 0x2abd, lo: 0xb7, hi: 0xb7},
3285 {value: 0x2add, lo: 0xb8, hi: 0xb9},
3286 {value: 0x2afd, lo: 0xba, hi: 0xbb},
3287 {value: 0x2b1d, lo: 0xbc, hi: 0xbd},
3288 {value: 0x2afd, lo: 0xbe, hi: 0xbf},
3289 // Block 0x64, offset 0x32b
3290 {value: 0x0000, lo: 0x03},
3291 {value: 0x0018, lo: 0x80, hi: 0xa3},
3292 {value: 0x0040, lo: 0xa4, hi: 0xaf},
3293 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3294 // Block 0x65, offset 0x32f
3295 {value: 0x0030, lo: 0x04},
3296 {value: 0x2aa2, lo: 0x80, hi: 0x9d},
3297 {value: 0x305a, lo: 0x9e, hi: 0x9e},
3298 {value: 0x0040, lo: 0x9f, hi: 0x9f},
3299 {value: 0x30a2, lo: 0xa0, hi: 0xbf},
3300 // Block 0x66, offset 0x334
3301 {value: 0x0000, lo: 0x02},
3302 {value: 0x0008, lo: 0x80, hi: 0xaa},
3303 {value: 0x0040, lo: 0xab, hi: 0xbf},
3304 // Block 0x67, offset 0x337
3305 {value: 0x0000, lo: 0x03},
3306 {value: 0x0008, lo: 0x80, hi: 0x8c},
3307 {value: 0x0040, lo: 0x8d, hi: 0x8f},
3308 {value: 0x0018, lo: 0x90, hi: 0xbf},
3309 // Block 0x68, offset 0x33b
3310 {value: 0x0000, lo: 0x04},
3311 {value: 0x0018, lo: 0x80, hi: 0x86},
3312 {value: 0x0040, lo: 0x87, hi: 0x8f},
3313 {value: 0x0008, lo: 0x90, hi: 0xbd},
3314 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3315 // Block 0x69, offset 0x340
3316 {value: 0x0000, lo: 0x04},
3317 {value: 0x0008, lo: 0x80, hi: 0x8c},
3318 {value: 0x0018, lo: 0x8d, hi: 0x8f},
3319 {value: 0x0008, lo: 0x90, hi: 0xab},
3320 {value: 0x0040, lo: 0xac, hi: 0xbf},
3321 // Block 0x6a, offset 0x345
3322 {value: 0x0000, lo: 0x05},
3323 {value: 0x0008, lo: 0x80, hi: 0xa5},
3324 {value: 0x0018, lo: 0xa6, hi: 0xaf},
3325 {value: 0x3308, lo: 0xb0, hi: 0xb1},
3326 {value: 0x0018, lo: 0xb2, hi: 0xb7},
3327 {value: 0x0040, lo: 0xb8, hi: 0xbf},
3328 // Block 0x6b, offset 0x34b
3329 {value: 0x0000, lo: 0x05},
3330 {value: 0x0040, lo: 0x80, hi: 0xb6},
3331 {value: 0x0008, lo: 0xb7, hi: 0xb7},
3332 {value: 0x2009, lo: 0xb8, hi: 0xb8},
3333 {value: 0x6e89, lo: 0xb9, hi: 0xb9},
3334 {value: 0x0008, lo: 0xba, hi: 0xbf},
3335 // Block 0x6c, offset 0x351
3336 {value: 0x0000, lo: 0x0e},
3337 {value: 0x0008, lo: 0x80, hi: 0x81},
3338 {value: 0x3308, lo: 0x82, hi: 0x82},
3339 {value: 0x0008, lo: 0x83, hi: 0x85},
3340 {value: 0x3b08, lo: 0x86, hi: 0x86},
3341 {value: 0x0008, lo: 0x87, hi: 0x8a},
3342 {value: 0x3308, lo: 0x8b, hi: 0x8b},
3343 {value: 0x0008, lo: 0x8c, hi: 0xa2},
3344 {value: 0x3008, lo: 0xa3, hi: 0xa4},
3345 {value: 0x3308, lo: 0xa5, hi: 0xa6},
3346 {value: 0x3008, lo: 0xa7, hi: 0xa7},
3347 {value: 0x0018, lo: 0xa8, hi: 0xab},
3348 {value: 0x0040, lo: 0xac, hi: 0xaf},
3349 {value: 0x0018, lo: 0xb0, hi: 0xb9},
3350 {value: 0x0040, lo: 0xba, hi: 0xbf},
3351 // Block 0x6d, offset 0x360
3352 {value: 0x0000, lo: 0x05},
3353 {value: 0x0208, lo: 0x80, hi: 0xb1},
3354 {value: 0x0108, lo: 0xb2, hi: 0xb2},
3355 {value: 0x0008, lo: 0xb3, hi: 0xb3},
3356 {value: 0x0018, lo: 0xb4, hi: 0xb7},
3357 {value: 0x0040, lo: 0xb8, hi: 0xbf},
3358 // Block 0x6e, offset 0x366
3359 {value: 0x0000, lo: 0x03},
3360 {value: 0x3008, lo: 0x80, hi: 0x81},
3361 {value: 0x0008, lo: 0x82, hi: 0xb3},
3362 {value: 0x3008, lo: 0xb4, hi: 0xbf},
3363 // Block 0x6f, offset 0x36a
3364 {value: 0x0000, lo: 0x0e},
3365 {value: 0x3008, lo: 0x80, hi: 0x83},
3366 {value: 0x3b08, lo: 0x84, hi: 0x84},
3367 {value: 0x3308, lo: 0x85, hi: 0x85},
3368 {value: 0x0040, lo: 0x86, hi: 0x8d},
3369 {value: 0x0018, lo: 0x8e, hi: 0x8f},
3370 {value: 0x0008, lo: 0x90, hi: 0x99},
3371 {value: 0x0040, lo: 0x9a, hi: 0x9f},
3372 {value: 0x3308, lo: 0xa0, hi: 0xb1},
3373 {value: 0x0008, lo: 0xb2, hi: 0xb7},
3374 {value: 0x0018, lo: 0xb8, hi: 0xba},
3375 {value: 0x0008, lo: 0xbb, hi: 0xbb},
3376 {value: 0x0018, lo: 0xbc, hi: 0xbc},
3377 {value: 0x0008, lo: 0xbd, hi: 0xbd},
3378 {value: 0x0040, lo: 0xbe, hi: 0xbf},
3379 // Block 0x70, offset 0x379
3380 {value: 0x0000, lo: 0x04},
3381 {value: 0x0008, lo: 0x80, hi: 0xa5},
3382 {value: 0x3308, lo: 0xa6, hi: 0xad},
3383 {value: 0x0018, lo: 0xae, hi: 0xaf},
3384 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3385 // Block 0x71, offset 0x37e
3386 {value: 0x0000, lo: 0x07},
3387 {value: 0x0008, lo: 0x80, hi: 0x86},
3388 {value: 0x3308, lo: 0x87, hi: 0x91},
3389 {value: 0x3008, lo: 0x92, hi: 0x92},
3390 {value: 0x3808, lo: 0x93, hi: 0x93},
3391 {value: 0x0040, lo: 0x94, hi: 0x9e},
3392 {value: 0x0018, lo: 0x9f, hi: 0xbc},
3393 {value: 0x0040, lo: 0xbd, hi: 0xbf},
3394 // Block 0x72, offset 0x386
3395 {value: 0x0000, lo: 0x09},
3396 {value: 0x3308, lo: 0x80, hi: 0x82},
3397 {value: 0x3008, lo: 0x83, hi: 0x83},
3398 {value: 0x0008, lo: 0x84, hi: 0xb2},
3399 {value: 0x3308, lo: 0xb3, hi: 0xb3},
3400 {value: 0x3008, lo: 0xb4, hi: 0xb5},
3401 {value: 0x3308, lo: 0xb6, hi: 0xb9},
3402 {value: 0x3008, lo: 0xba, hi: 0xbb},
3403 {value: 0x3308, lo: 0xbc, hi: 0xbc},
3404 {value: 0x3008, lo: 0xbd, hi: 0xbf},
3405 // Block 0x73, offset 0x390
3406 {value: 0x0000, lo: 0x0a},
3407 {value: 0x3808, lo: 0x80, hi: 0x80},
3408 {value: 0x0018, lo: 0x81, hi: 0x8d},
3409 {value: 0x0040, lo: 0x8e, hi: 0x8e},
3410 {value: 0x0008, lo: 0x8f, hi: 0x99},
3411 {value: 0x0040, lo: 0x9a, hi: 0x9d},
3412 {value: 0x0018, lo: 0x9e, hi: 0x9f},
3413 {value: 0x0008, lo: 0xa0, hi: 0xa4},
3414 {value: 0x3308, lo: 0xa5, hi: 0xa5},
3415 {value: 0x0008, lo: 0xa6, hi: 0xbe},
3416 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3417 // Block 0x74, offset 0x39b
3418 {value: 0x0000, lo: 0x07},
3419 {value: 0x0008, lo: 0x80, hi: 0xa8},
3420 {value: 0x3308, lo: 0xa9, hi: 0xae},
3421 {value: 0x3008, lo: 0xaf, hi: 0xb0},
3422 {value: 0x3308, lo: 0xb1, hi: 0xb2},
3423 {value: 0x3008, lo: 0xb3, hi: 0xb4},
3424 {value: 0x3308, lo: 0xb5, hi: 0xb6},
3425 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3426 // Block 0x75, offset 0x3a3
3427 {value: 0x0000, lo: 0x10},
3428 {value: 0x0008, lo: 0x80, hi: 0x82},
3429 {value: 0x3308, lo: 0x83, hi: 0x83},
3430 {value: 0x0008, lo: 0x84, hi: 0x8b},
3431 {value: 0x3308, lo: 0x8c, hi: 0x8c},
3432 {value: 0x3008, lo: 0x8d, hi: 0x8d},
3433 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3434 {value: 0x0008, lo: 0x90, hi: 0x99},
3435 {value: 0x0040, lo: 0x9a, hi: 0x9b},
3436 {value: 0x0018, lo: 0x9c, hi: 0x9f},
3437 {value: 0x0008, lo: 0xa0, hi: 0xb6},
3438 {value: 0x0018, lo: 0xb7, hi: 0xb9},
3439 {value: 0x0008, lo: 0xba, hi: 0xba},
3440 {value: 0x3008, lo: 0xbb, hi: 0xbb},
3441 {value: 0x3308, lo: 0xbc, hi: 0xbc},
3442 {value: 0x3008, lo: 0xbd, hi: 0xbd},
3443 {value: 0x0008, lo: 0xbe, hi: 0xbf},
3444 // Block 0x76, offset 0x3b4
3445 {value: 0x0000, lo: 0x08},
3446 {value: 0x0008, lo: 0x80, hi: 0xaf},
3447 {value: 0x3308, lo: 0xb0, hi: 0xb0},
3448 {value: 0x0008, lo: 0xb1, hi: 0xb1},
3449 {value: 0x3308, lo: 0xb2, hi: 0xb4},
3450 {value: 0x0008, lo: 0xb5, hi: 0xb6},
3451 {value: 0x3308, lo: 0xb7, hi: 0xb8},
3452 {value: 0x0008, lo: 0xb9, hi: 0xbd},
3453 {value: 0x3308, lo: 0xbe, hi: 0xbf},
3454 // Block 0x77, offset 0x3bd
3455 {value: 0x0000, lo: 0x0f},
3456 {value: 0x0008, lo: 0x80, hi: 0x80},
3457 {value: 0x3308, lo: 0x81, hi: 0x81},
3458 {value: 0x0008, lo: 0x82, hi: 0x82},
3459 {value: 0x0040, lo: 0x83, hi: 0x9a},
3460 {value: 0x0008, lo: 0x9b, hi: 0x9d},
3461 {value: 0x0018, lo: 0x9e, hi: 0x9f},
3462 {value: 0x0008, lo: 0xa0, hi: 0xaa},
3463 {value: 0x3008, lo: 0xab, hi: 0xab},
3464 {value: 0x3308, lo: 0xac, hi: 0xad},
3465 {value: 0x3008, lo: 0xae, hi: 0xaf},
3466 {value: 0x0018, lo: 0xb0, hi: 0xb1},
3467 {value: 0x0008, lo: 0xb2, hi: 0xb4},
3468 {value: 0x3008, lo: 0xb5, hi: 0xb5},
3469 {value: 0x3b08, lo: 0xb6, hi: 0xb6},
3470 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3471 // Block 0x78, offset 0x3cd
3472 {value: 0x0000, lo: 0x0c},
3473 {value: 0x0040, lo: 0x80, hi: 0x80},
3474 {value: 0x0008, lo: 0x81, hi: 0x86},
3475 {value: 0x0040, lo: 0x87, hi: 0x88},
3476 {value: 0x0008, lo: 0x89, hi: 0x8e},
3477 {value: 0x0040, lo: 0x8f, hi: 0x90},
3478 {value: 0x0008, lo: 0x91, hi: 0x96},
3479 {value: 0x0040, lo: 0x97, hi: 0x9f},
3480 {value: 0x0008, lo: 0xa0, hi: 0xa6},
3481 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3482 {value: 0x0008, lo: 0xa8, hi: 0xae},
3483 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3484 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3485 // Block 0x79, offset 0x3da
3486 {value: 0x0000, lo: 0x09},
3487 {value: 0x0008, lo: 0x80, hi: 0x9a},
3488 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3489 {value: 0x4465, lo: 0x9c, hi: 0x9c},
3490 {value: 0x447d, lo: 0x9d, hi: 0x9d},
3491 {value: 0x2971, lo: 0x9e, hi: 0x9e},
3492 {value: 0xe06d, lo: 0x9f, hi: 0x9f},
3493 {value: 0x0008, lo: 0xa0, hi: 0xa5},
3494 {value: 0x0040, lo: 0xa6, hi: 0xaf},
3495 {value: 0x4495, lo: 0xb0, hi: 0xbf},
3496 // Block 0x7a, offset 0x3e4
3497 {value: 0x0000, lo: 0x04},
3498 {value: 0x44b5, lo: 0x80, hi: 0x8f},
3499 {value: 0x44d5, lo: 0x90, hi: 0x9f},
3500 {value: 0x44f5, lo: 0xa0, hi: 0xaf},
3501 {value: 0x44d5, lo: 0xb0, hi: 0xbf},
3502 // Block 0x7b, offset 0x3e9
3503 {value: 0x0000, lo: 0x0c},
3504 {value: 0x0008, lo: 0x80, hi: 0xa2},
3505 {value: 0x3008, lo: 0xa3, hi: 0xa4},
3506 {value: 0x3308, lo: 0xa5, hi: 0xa5},
3507 {value: 0x3008, lo: 0xa6, hi: 0xa7},
3508 {value: 0x3308, lo: 0xa8, hi: 0xa8},
3509 {value: 0x3008, lo: 0xa9, hi: 0xaa},
3510 {value: 0x0018, lo: 0xab, hi: 0xab},
3511 {value: 0x3008, lo: 0xac, hi: 0xac},
3512 {value: 0x3b08, lo: 0xad, hi: 0xad},
3513 {value: 0x0040, lo: 0xae, hi: 0xaf},
3514 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3515 {value: 0x0040, lo: 0xba, hi: 0xbf},
3516 // Block 0x7c, offset 0x3f6
3517 {value: 0x0000, lo: 0x03},
3518 {value: 0x0008, lo: 0x80, hi: 0xa3},
3519 {value: 0x0040, lo: 0xa4, hi: 0xaf},
3520 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3521 // Block 0x7d, offset 0x3fa
3522 {value: 0x0000, lo: 0x04},
3523 {value: 0x0018, lo: 0x80, hi: 0x86},
3524 {value: 0x0040, lo: 0x87, hi: 0x8a},
3525 {value: 0x0018, lo: 0x8b, hi: 0xbb},
3526 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3527 // Block 0x7e, offset 0x3ff
3528 {value: 0x0020, lo: 0x01},
3529 {value: 0x4515, lo: 0x80, hi: 0xbf},
3530 // Block 0x7f, offset 0x401
3531 {value: 0x0020, lo: 0x03},
3532 {value: 0x4d15, lo: 0x80, hi: 0x94},
3533 {value: 0x4ad5, lo: 0x95, hi: 0x95},
3534 {value: 0x4fb5, lo: 0x96, hi: 0xbf},
3535 // Block 0x80, offset 0x405
3536 {value: 0x0020, lo: 0x01},
3537 {value: 0x54f5, lo: 0x80, hi: 0xbf},
3538 // Block 0x81, offset 0x407
3539 {value: 0x0020, lo: 0x03},
3540 {value: 0x5cf5, lo: 0x80, hi: 0x84},
3541 {value: 0x5655, lo: 0x85, hi: 0x85},
3542 {value: 0x5d95, lo: 0x86, hi: 0xbf},
3543 // Block 0x82, offset 0x40b
3544 {value: 0x0020, lo: 0x08},
3545 {value: 0x6b55, lo: 0x80, hi: 0x8f},
3546 {value: 0x6d15, lo: 0x90, hi: 0x90},
3547 {value: 0x6d55, lo: 0x91, hi: 0xab},
3548 {value: 0x6ea1, lo: 0xac, hi: 0xac},
3549 {value: 0x70b5, lo: 0xad, hi: 0xad},
3550 {value: 0x0040, lo: 0xae, hi: 0xae},
3551 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3552 {value: 0x70d5, lo: 0xb0, hi: 0xbf},
3553 // Block 0x83, offset 0x414
3554 {value: 0x0020, lo: 0x05},
3555 {value: 0x72d5, lo: 0x80, hi: 0xad},
3556 {value: 0x6535, lo: 0xae, hi: 0xae},
3557 {value: 0x7895, lo: 0xaf, hi: 0xb5},
3558 {value: 0x6f55, lo: 0xb6, hi: 0xb6},
3559 {value: 0x7975, lo: 0xb7, hi: 0xbf},
3560 // Block 0x84, offset 0x41a
3561 {value: 0x0028, lo: 0x03},
3562 {value: 0x7c21, lo: 0x80, hi: 0x82},
3563 {value: 0x7be1, lo: 0x83, hi: 0x83},
3564 {value: 0x7c99, lo: 0x84, hi: 0xbf},
3565 // Block 0x85, offset 0x41e
3566 {value: 0x0038, lo: 0x0f},
3567 {value: 0x9db1, lo: 0x80, hi: 0x83},
3568 {value: 0x9e59, lo: 0x84, hi: 0x85},
3569 {value: 0x9e91, lo: 0x86, hi: 0x87},
3570 {value: 0x9ec9, lo: 0x88, hi: 0x8f},
3571 {value: 0x0040, lo: 0x90, hi: 0x90},
3572 {value: 0x0040, lo: 0x91, hi: 0x91},
3573 {value: 0xa089, lo: 0x92, hi: 0x97},
3574 {value: 0xa1a1, lo: 0x98, hi: 0x9c},
3575 {value: 0xa281, lo: 0x9d, hi: 0xb3},
3576 {value: 0x9d41, lo: 0xb4, hi: 0xb4},
3577 {value: 0x9db1, lo: 0xb5, hi: 0xb5},
3578 {value: 0xa789, lo: 0xb6, hi: 0xbb},
3579 {value: 0xa869, lo: 0xbc, hi: 0xbc},
3580 {value: 0xa7f9, lo: 0xbd, hi: 0xbd},
3581 {value: 0xa8d9, lo: 0xbe, hi: 0xbf},
3582 // Block 0x86, offset 0x42e
3583 {value: 0x0000, lo: 0x09},
3584 {value: 0x0008, lo: 0x80, hi: 0x8b},
3585 {value: 0x0040, lo: 0x8c, hi: 0x8c},
3586 {value: 0x0008, lo: 0x8d, hi: 0xa6},
3587 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3588 {value: 0x0008, lo: 0xa8, hi: 0xba},
3589 {value: 0x0040, lo: 0xbb, hi: 0xbb},
3590 {value: 0x0008, lo: 0xbc, hi: 0xbd},
3591 {value: 0x0040, lo: 0xbe, hi: 0xbe},
3592 {value: 0x0008, lo: 0xbf, hi: 0xbf},
3593 // Block 0x87, offset 0x438
3594 {value: 0x0000, lo: 0x04},
3595 {value: 0x0008, lo: 0x80, hi: 0x8d},
3596 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3597 {value: 0x0008, lo: 0x90, hi: 0x9d},
3598 {value: 0x0040, lo: 0x9e, hi: 0xbf},
3599 // Block 0x88, offset 0x43d
3600 {value: 0x0000, lo: 0x02},
3601 {value: 0x0008, lo: 0x80, hi: 0xba},
3602 {value: 0x0040, lo: 0xbb, hi: 0xbf},
3603 // Block 0x89, offset 0x440
3604 {value: 0x0000, lo: 0x05},
3605 {value: 0x0018, lo: 0x80, hi: 0x82},
3606 {value: 0x0040, lo: 0x83, hi: 0x86},
3607 {value: 0x0018, lo: 0x87, hi: 0xb3},
3608 {value: 0x0040, lo: 0xb4, hi: 0xb6},
3609 {value: 0x0018, lo: 0xb7, hi: 0xbf},
3610 // Block 0x8a, offset 0x446
3611 {value: 0x0000, lo: 0x06},
3612 {value: 0x0018, lo: 0x80, hi: 0x8e},
3613 {value: 0x0040, lo: 0x8f, hi: 0x8f},
3614 {value: 0x0018, lo: 0x90, hi: 0x9b},
3615 {value: 0x0040, lo: 0x9c, hi: 0x9f},
3616 {value: 0x0018, lo: 0xa0, hi: 0xa0},
3617 {value: 0x0040, lo: 0xa1, hi: 0xbf},
3618 // Block 0x8b, offset 0x44d
3619 {value: 0x0000, lo: 0x04},
3620 {value: 0x0040, lo: 0x80, hi: 0x8f},
3621 {value: 0x0018, lo: 0x90, hi: 0xbc},
3622 {value: 0x3308, lo: 0xbd, hi: 0xbd},
3623 {value: 0x0040, lo: 0xbe, hi: 0xbf},
3624 // Block 0x8c, offset 0x452
3625 {value: 0x0000, lo: 0x03},
3626 {value: 0x0008, lo: 0x80, hi: 0x9c},
3627 {value: 0x0040, lo: 0x9d, hi: 0x9f},
3628 {value: 0x0008, lo: 0xa0, hi: 0xbf},
3629 // Block 0x8d, offset 0x456
3630 {value: 0x0000, lo: 0x05},
3631 {value: 0x0008, lo: 0x80, hi: 0x90},
3632 {value: 0x0040, lo: 0x91, hi: 0x9f},
3633 {value: 0x3308, lo: 0xa0, hi: 0xa0},
3634 {value: 0x0018, lo: 0xa1, hi: 0xbb},
3635 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3636 // Block 0x8e, offset 0x45c
3637 {value: 0x0000, lo: 0x04},
3638 {value: 0x0008, lo: 0x80, hi: 0x9f},
3639 {value: 0x0018, lo: 0xa0, hi: 0xa3},
3640 {value: 0x0040, lo: 0xa4, hi: 0xac},
3641 {value: 0x0008, lo: 0xad, hi: 0xbf},
3642 // Block 0x8f, offset 0x461
3643 {value: 0x0000, lo: 0x08},
3644 {value: 0x0008, lo: 0x80, hi: 0x80},
3645 {value: 0x0018, lo: 0x81, hi: 0x81},
3646 {value: 0x0008, lo: 0x82, hi: 0x89},
3647 {value: 0x0018, lo: 0x8a, hi: 0x8a},
3648 {value: 0x0040, lo: 0x8b, hi: 0x8f},
3649 {value: 0x0008, lo: 0x90, hi: 0xb5},
3650 {value: 0x3308, lo: 0xb6, hi: 0xba},
3651 {value: 0x0040, lo: 0xbb, hi: 0xbf},
3652 // Block 0x90, offset 0x46a
3653 {value: 0x0000, lo: 0x04},
3654 {value: 0x0008, lo: 0x80, hi: 0x9d},
3655 {value: 0x0040, lo: 0x9e, hi: 0x9e},
3656 {value: 0x0018, lo: 0x9f, hi: 0x9f},
3657 {value: 0x0008, lo: 0xa0, hi: 0xbf},
3658 // Block 0x91, offset 0x46f
3659 {value: 0x0000, lo: 0x05},
3660 {value: 0x0008, lo: 0x80, hi: 0x83},
3661 {value: 0x0040, lo: 0x84, hi: 0x87},
3662 {value: 0x0008, lo: 0x88, hi: 0x8f},
3663 {value: 0x0018, lo: 0x90, hi: 0x95},
3664 {value: 0x0040, lo: 0x96, hi: 0xbf},
3665 // Block 0x92, offset 0x475
3666 {value: 0x0000, lo: 0x06},
3667 {value: 0xe145, lo: 0x80, hi: 0x87},
3668 {value: 0xe1c5, lo: 0x88, hi: 0x8f},
3669 {value: 0xe145, lo: 0x90, hi: 0x97},
3670 {value: 0x8ad5, lo: 0x98, hi: 0x9f},
3671 {value: 0x8aed, lo: 0xa0, hi: 0xa7},
3672 {value: 0x0008, lo: 0xa8, hi: 0xbf},
3673 // Block 0x93, offset 0x47c
3674 {value: 0x0000, lo: 0x06},
3675 {value: 0x0008, lo: 0x80, hi: 0x9d},
3676 {value: 0x0040, lo: 0x9e, hi: 0x9f},
3677 {value: 0x0008, lo: 0xa0, hi: 0xa9},
3678 {value: 0x0040, lo: 0xaa, hi: 0xaf},
3679 {value: 0x8aed, lo: 0xb0, hi: 0xb7},
3680 {value: 0x8ad5, lo: 0xb8, hi: 0xbf},
3681 // Block 0x94, offset 0x483
3682 {value: 0x0000, lo: 0x06},
3683 {value: 0xe145, lo: 0x80, hi: 0x87},
3684 {value: 0xe1c5, lo: 0x88, hi: 0x8f},
3685 {value: 0xe145, lo: 0x90, hi: 0x93},
3686 {value: 0x0040, lo: 0x94, hi: 0x97},
3687 {value: 0x0008, lo: 0x98, hi: 0xbb},
3688 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3689 // Block 0x95, offset 0x48a
3690 {value: 0x0000, lo: 0x03},
3691 {value: 0x0008, lo: 0x80, hi: 0xa7},
3692 {value: 0x0040, lo: 0xa8, hi: 0xaf},
3693 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3694 // Block 0x96, offset 0x48e
3695 {value: 0x0000, lo: 0x04},
3696 {value: 0x0008, lo: 0x80, hi: 0xa3},
3697 {value: 0x0040, lo: 0xa4, hi: 0xae},
3698 {value: 0x0018, lo: 0xaf, hi: 0xaf},
3699 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3700 // Block 0x97, offset 0x493
3701 {value: 0x0000, lo: 0x02},
3702 {value: 0x0008, lo: 0x80, hi: 0xb6},
3703 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3704 // Block 0x98, offset 0x496
3705 {value: 0x0000, lo: 0x04},
3706 {value: 0x0008, lo: 0x80, hi: 0x95},
3707 {value: 0x0040, lo: 0x96, hi: 0x9f},
3708 {value: 0x0008, lo: 0xa0, hi: 0xa7},
3709 {value: 0x0040, lo: 0xa8, hi: 0xbf},
3710 // Block 0x99, offset 0x49b
3711 {value: 0x0000, lo: 0x0b},
3712 {value: 0x0808, lo: 0x80, hi: 0x85},
3713 {value: 0x0040, lo: 0x86, hi: 0x87},
3714 {value: 0x0808, lo: 0x88, hi: 0x88},
3715 {value: 0x0040, lo: 0x89, hi: 0x89},
3716 {value: 0x0808, lo: 0x8a, hi: 0xb5},
3717 {value: 0x0040, lo: 0xb6, hi: 0xb6},
3718 {value: 0x0808, lo: 0xb7, hi: 0xb8},
3719 {value: 0x0040, lo: 0xb9, hi: 0xbb},
3720 {value: 0x0808, lo: 0xbc, hi: 0xbc},
3721 {value: 0x0040, lo: 0xbd, hi: 0xbe},
3722 {value: 0x0808, lo: 0xbf, hi: 0xbf},
3723 // Block 0x9a, offset 0x4a7
3724 {value: 0x0000, lo: 0x05},
3725 {value: 0x0808, lo: 0x80, hi: 0x95},
3726 {value: 0x0040, lo: 0x96, hi: 0x96},
3727 {value: 0x0818, lo: 0x97, hi: 0x9f},
3728 {value: 0x0808, lo: 0xa0, hi: 0xb6},
3729 {value: 0x0818, lo: 0xb7, hi: 0xbf},
3730 // Block 0x9b, offset 0x4ad
3731 {value: 0x0000, lo: 0x04},
3732 {value: 0x0808, lo: 0x80, hi: 0x9e},
3733 {value: 0x0040, lo: 0x9f, hi: 0xa6},
3734 {value: 0x0818, lo: 0xa7, hi: 0xaf},
3735 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3736 // Block 0x9c, offset 0x4b2
3737 {value: 0x0000, lo: 0x06},
3738 {value: 0x0040, lo: 0x80, hi: 0x9f},
3739 {value: 0x0808, lo: 0xa0, hi: 0xb2},
3740 {value: 0x0040, lo: 0xb3, hi: 0xb3},
3741 {value: 0x0808, lo: 0xb4, hi: 0xb5},
3742 {value: 0x0040, lo: 0xb6, hi: 0xba},
3743 {value: 0x0818, lo: 0xbb, hi: 0xbf},
3744 // Block 0x9d, offset 0x4b9
3745 {value: 0x0000, lo: 0x07},
3746 {value: 0x0808, lo: 0x80, hi: 0x95},
3747 {value: 0x0818, lo: 0x96, hi: 0x9b},
3748 {value: 0x0040, lo: 0x9c, hi: 0x9e},
3749 {value: 0x0018, lo: 0x9f, hi: 0x9f},
3750 {value: 0x0808, lo: 0xa0, hi: 0xb9},
3751 {value: 0x0040, lo: 0xba, hi: 0xbe},
3752 {value: 0x0818, lo: 0xbf, hi: 0xbf},
3753 // Block 0x9e, offset 0x4c1
3754 {value: 0x0000, lo: 0x04},
3755 {value: 0x0808, lo: 0x80, hi: 0xb7},
3756 {value: 0x0040, lo: 0xb8, hi: 0xbb},
3757 {value: 0x0818, lo: 0xbc, hi: 0xbd},
3758 {value: 0x0808, lo: 0xbe, hi: 0xbf},
3759 // Block 0x9f, offset 0x4c6
3760 {value: 0x0000, lo: 0x03},
3761 {value: 0x0818, lo: 0x80, hi: 0x8f},
3762 {value: 0x0040, lo: 0x90, hi: 0x91},
3763 {value: 0x0818, lo: 0x92, hi: 0xbf},
3764 // Block 0xa0, offset 0x4ca
3765 {value: 0x0000, lo: 0x0f},
3766 {value: 0x0808, lo: 0x80, hi: 0x80},
3767 {value: 0x3308, lo: 0x81, hi: 0x83},
3768 {value: 0x0040, lo: 0x84, hi: 0x84},
3769 {value: 0x3308, lo: 0x85, hi: 0x86},
3770 {value: 0x0040, lo: 0x87, hi: 0x8b},
3771 {value: 0x3308, lo: 0x8c, hi: 0x8f},
3772 {value: 0x0808, lo: 0x90, hi: 0x93},
3773 {value: 0x0040, lo: 0x94, hi: 0x94},
3774 {value: 0x0808, lo: 0x95, hi: 0x97},
3775 {value: 0x0040, lo: 0x98, hi: 0x98},
3776 {value: 0x0808, lo: 0x99, hi: 0xb3},
3777 {value: 0x0040, lo: 0xb4, hi: 0xb7},
3778 {value: 0x3308, lo: 0xb8, hi: 0xba},
3779 {value: 0x0040, lo: 0xbb, hi: 0xbe},
3780 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
3781 // Block 0xa1, offset 0x4da
3782 {value: 0x0000, lo: 0x06},
3783 {value: 0x0818, lo: 0x80, hi: 0x87},
3784 {value: 0x0040, lo: 0x88, hi: 0x8f},
3785 {value: 0x0818, lo: 0x90, hi: 0x98},
3786 {value: 0x0040, lo: 0x99, hi: 0x9f},
3787 {value: 0x0808, lo: 0xa0, hi: 0xbc},
3788 {value: 0x0818, lo: 0xbd, hi: 0xbf},
3789 // Block 0xa2, offset 0x4e1
3790 {value: 0x0000, lo: 0x03},
3791 {value: 0x0808, lo: 0x80, hi: 0x9c},
3792 {value: 0x0818, lo: 0x9d, hi: 0x9f},
3793 {value: 0x0040, lo: 0xa0, hi: 0xbf},
3794 // Block 0xa3, offset 0x4e5
3795 {value: 0x0000, lo: 0x03},
3796 {value: 0x0808, lo: 0x80, hi: 0xb5},
3797 {value: 0x0040, lo: 0xb6, hi: 0xb8},
3798 {value: 0x0018, lo: 0xb9, hi: 0xbf},
3799 // Block 0xa4, offset 0x4e9
3800 {value: 0x0000, lo: 0x06},
3801 {value: 0x0808, lo: 0x80, hi: 0x95},
3802 {value: 0x0040, lo: 0x96, hi: 0x97},
3803 {value: 0x0818, lo: 0x98, hi: 0x9f},
3804 {value: 0x0808, lo: 0xa0, hi: 0xb2},
3805 {value: 0x0040, lo: 0xb3, hi: 0xb7},
3806 {value: 0x0818, lo: 0xb8, hi: 0xbf},
3807 // Block 0xa5, offset 0x4f0
3808 {value: 0x0000, lo: 0x01},
3809 {value: 0x0808, lo: 0x80, hi: 0xbf},
3810 // Block 0xa6, offset 0x4f2
3811 {value: 0x0000, lo: 0x02},
3812 {value: 0x0808, lo: 0x80, hi: 0x88},
3813 {value: 0x0040, lo: 0x89, hi: 0xbf},
3814 // Block 0xa7, offset 0x4f5
3815 {value: 0x0000, lo: 0x02},
3816 {value: 0x03dd, lo: 0x80, hi: 0xb2},
3817 {value: 0x0040, lo: 0xb3, hi: 0xbf},
3818 // Block 0xa8, offset 0x4f8
3819 {value: 0x0000, lo: 0x03},
3820 {value: 0x0808, lo: 0x80, hi: 0xb2},
3821 {value: 0x0040, lo: 0xb3, hi: 0xb9},
3822 {value: 0x0818, lo: 0xba, hi: 0xbf},
3823 // Block 0xa9, offset 0x4fc
3824 {value: 0x0000, lo: 0x03},
3825 {value: 0x0040, lo: 0x80, hi: 0x9f},
3826 {value: 0x0818, lo: 0xa0, hi: 0xbe},
3827 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3828 // Block 0xaa, offset 0x500
3829 {value: 0x0000, lo: 0x05},
3830 {value: 0x3008, lo: 0x80, hi: 0x80},
3831 {value: 0x3308, lo: 0x81, hi: 0x81},
3832 {value: 0x3008, lo: 0x82, hi: 0x82},
3833 {value: 0x0008, lo: 0x83, hi: 0xb7},
3834 {value: 0x3308, lo: 0xb8, hi: 0xbf},
3835 // Block 0xab, offset 0x506
3836 {value: 0x0000, lo: 0x08},
3837 {value: 0x3308, lo: 0x80, hi: 0x85},
3838 {value: 0x3b08, lo: 0x86, hi: 0x86},
3839 {value: 0x0018, lo: 0x87, hi: 0x8d},
3840 {value: 0x0040, lo: 0x8e, hi: 0x91},
3841 {value: 0x0018, lo: 0x92, hi: 0xa5},
3842 {value: 0x0008, lo: 0xa6, hi: 0xaf},
3843 {value: 0x0040, lo: 0xb0, hi: 0xbe},
3844 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
3845 // Block 0xac, offset 0x50f
3846 {value: 0x0000, lo: 0x0b},
3847 {value: 0x3308, lo: 0x80, hi: 0x81},
3848 {value: 0x3008, lo: 0x82, hi: 0x82},
3849 {value: 0x0008, lo: 0x83, hi: 0xaf},
3850 {value: 0x3008, lo: 0xb0, hi: 0xb2},
3851 {value: 0x3308, lo: 0xb3, hi: 0xb6},
3852 {value: 0x3008, lo: 0xb7, hi: 0xb8},
3853 {value: 0x3b08, lo: 0xb9, hi: 0xb9},
3854 {value: 0x3308, lo: 0xba, hi: 0xba},
3855 {value: 0x0018, lo: 0xbb, hi: 0xbc},
3856 {value: 0x0340, lo: 0xbd, hi: 0xbd},
3857 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3858 // Block 0xad, offset 0x51b
3859 {value: 0x0000, lo: 0x06},
3860 {value: 0x0018, lo: 0x80, hi: 0x81},
3861 {value: 0x0040, lo: 0x82, hi: 0x8f},
3862 {value: 0x0008, lo: 0x90, hi: 0xa8},
3863 {value: 0x0040, lo: 0xa9, hi: 0xaf},
3864 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3865 {value: 0x0040, lo: 0xba, hi: 0xbf},
3866 // Block 0xae, offset 0x522
3867 {value: 0x0000, lo: 0x08},
3868 {value: 0x3308, lo: 0x80, hi: 0x82},
3869 {value: 0x0008, lo: 0x83, hi: 0xa6},
3870 {value: 0x3308, lo: 0xa7, hi: 0xab},
3871 {value: 0x3008, lo: 0xac, hi: 0xac},
3872 {value: 0x3308, lo: 0xad, hi: 0xb2},
3873 {value: 0x3b08, lo: 0xb3, hi: 0xb4},
3874 {value: 0x0040, lo: 0xb5, hi: 0xb5},
3875 {value: 0x0008, lo: 0xb6, hi: 0xbf},
3876 // Block 0xaf, offset 0x52b
3877 {value: 0x0000, lo: 0x07},
3878 {value: 0x0018, lo: 0x80, hi: 0x83},
3879 {value: 0x0040, lo: 0x84, hi: 0x8f},
3880 {value: 0x0008, lo: 0x90, hi: 0xb2},
3881 {value: 0x3308, lo: 0xb3, hi: 0xb3},
3882 {value: 0x0018, lo: 0xb4, hi: 0xb5},
3883 {value: 0x0008, lo: 0xb6, hi: 0xb6},
3884 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3885 // Block 0xb0, offset 0x533
3886 {value: 0x0000, lo: 0x06},
3887 {value: 0x3308, lo: 0x80, hi: 0x81},
3888 {value: 0x3008, lo: 0x82, hi: 0x82},
3889 {value: 0x0008, lo: 0x83, hi: 0xb2},
3890 {value: 0x3008, lo: 0xb3, hi: 0xb5},
3891 {value: 0x3308, lo: 0xb6, hi: 0xbe},
3892 {value: 0x3008, lo: 0xbf, hi: 0xbf},
3893 // Block 0xb1, offset 0x53a
3894 {value: 0x0000, lo: 0x0d},
3895 {value: 0x3808, lo: 0x80, hi: 0x80},
3896 {value: 0x0008, lo: 0x81, hi: 0x84},
3897 {value: 0x0018, lo: 0x85, hi: 0x89},
3898 {value: 0x3308, lo: 0x8a, hi: 0x8c},
3899 {value: 0x0018, lo: 0x8d, hi: 0x8d},
3900 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3901 {value: 0x0008, lo: 0x90, hi: 0x9a},
3902 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3903 {value: 0x0008, lo: 0x9c, hi: 0x9c},
3904 {value: 0x0018, lo: 0x9d, hi: 0x9f},
3905 {value: 0x0040, lo: 0xa0, hi: 0xa0},
3906 {value: 0x0018, lo: 0xa1, hi: 0xb4},
3907 {value: 0x0040, lo: 0xb5, hi: 0xbf},
3908 // Block 0xb2, offset 0x548
3909 {value: 0x0000, lo: 0x0c},
3910 {value: 0x0008, lo: 0x80, hi: 0x91},
3911 {value: 0x0040, lo: 0x92, hi: 0x92},
3912 {value: 0x0008, lo: 0x93, hi: 0xab},
3913 {value: 0x3008, lo: 0xac, hi: 0xae},
3914 {value: 0x3308, lo: 0xaf, hi: 0xb1},
3915 {value: 0x3008, lo: 0xb2, hi: 0xb3},
3916 {value: 0x3308, lo: 0xb4, hi: 0xb4},
3917 {value: 0x3808, lo: 0xb5, hi: 0xb5},
3918 {value: 0x3308, lo: 0xb6, hi: 0xb7},
3919 {value: 0x0018, lo: 0xb8, hi: 0xbd},
3920 {value: 0x3308, lo: 0xbe, hi: 0xbe},
3921 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3922 // Block 0xb3, offset 0x555
3923 {value: 0x0000, lo: 0x0c},
3924 {value: 0x0008, lo: 0x80, hi: 0x86},
3925 {value: 0x0040, lo: 0x87, hi: 0x87},
3926 {value: 0x0008, lo: 0x88, hi: 0x88},
3927 {value: 0x0040, lo: 0x89, hi: 0x89},
3928 {value: 0x0008, lo: 0x8a, hi: 0x8d},
3929 {value: 0x0040, lo: 0x8e, hi: 0x8e},
3930 {value: 0x0008, lo: 0x8f, hi: 0x9d},
3931 {value: 0x0040, lo: 0x9e, hi: 0x9e},
3932 {value: 0x0008, lo: 0x9f, hi: 0xa8},
3933 {value: 0x0018, lo: 0xa9, hi: 0xa9},
3934 {value: 0x0040, lo: 0xaa, hi: 0xaf},
3935 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3936 // Block 0xb4, offset 0x562
3937 {value: 0x0000, lo: 0x08},
3938 {value: 0x0008, lo: 0x80, hi: 0x9e},
3939 {value: 0x3308, lo: 0x9f, hi: 0x9f},
3940 {value: 0x3008, lo: 0xa0, hi: 0xa2},
3941 {value: 0x3308, lo: 0xa3, hi: 0xa9},
3942 {value: 0x3b08, lo: 0xaa, hi: 0xaa},
3943 {value: 0x0040, lo: 0xab, hi: 0xaf},
3944 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3945 {value: 0x0040, lo: 0xba, hi: 0xbf},
3946 // Block 0xb5, offset 0x56b
3947 {value: 0x0000, lo: 0x03},
3948 {value: 0x0008, lo: 0x80, hi: 0xb4},
3949 {value: 0x3008, lo: 0xb5, hi: 0xb7},
3950 {value: 0x3308, lo: 0xb8, hi: 0xbf},
3951 // Block 0xb6, offset 0x56f
3952 {value: 0x0000, lo: 0x0d},
3953 {value: 0x3008, lo: 0x80, hi: 0x81},
3954 {value: 0x3b08, lo: 0x82, hi: 0x82},
3955 {value: 0x3308, lo: 0x83, hi: 0x84},
3956 {value: 0x3008, lo: 0x85, hi: 0x85},
3957 {value: 0x3308, lo: 0x86, hi: 0x86},
3958 {value: 0x0008, lo: 0x87, hi: 0x8a},
3959 {value: 0x0018, lo: 0x8b, hi: 0x8f},
3960 {value: 0x0008, lo: 0x90, hi: 0x99},
3961 {value: 0x0040, lo: 0x9a, hi: 0x9a},
3962 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3963 {value: 0x0040, lo: 0x9c, hi: 0x9c},
3964 {value: 0x0018, lo: 0x9d, hi: 0x9d},
3965 {value: 0x0040, lo: 0x9e, hi: 0xbf},
3966 // Block 0xb7, offset 0x57d
3967 {value: 0x0000, lo: 0x07},
3968 {value: 0x0008, lo: 0x80, hi: 0xaf},
3969 {value: 0x3008, lo: 0xb0, hi: 0xb2},
3970 {value: 0x3308, lo: 0xb3, hi: 0xb8},
3971 {value: 0x3008, lo: 0xb9, hi: 0xb9},
3972 {value: 0x3308, lo: 0xba, hi: 0xba},
3973 {value: 0x3008, lo: 0xbb, hi: 0xbe},
3974 {value: 0x3308, lo: 0xbf, hi: 0xbf},
3975 // Block 0xb8, offset 0x585
3976 {value: 0x0000, lo: 0x0a},
3977 {value: 0x3308, lo: 0x80, hi: 0x80},
3978 {value: 0x3008, lo: 0x81, hi: 0x81},
3979 {value: 0x3b08, lo: 0x82, hi: 0x82},
3980 {value: 0x3308, lo: 0x83, hi: 0x83},
3981 {value: 0x0008, lo: 0x84, hi: 0x85},
3982 {value: 0x0018, lo: 0x86, hi: 0x86},
3983 {value: 0x0008, lo: 0x87, hi: 0x87},
3984 {value: 0x0040, lo: 0x88, hi: 0x8f},
3985 {value: 0x0008, lo: 0x90, hi: 0x99},
3986 {value: 0x0040, lo: 0x9a, hi: 0xbf},
3987 // Block 0xb9, offset 0x590
3988 {value: 0x0000, lo: 0x08},
3989 {value: 0x0008, lo: 0x80, hi: 0xae},
3990 {value: 0x3008, lo: 0xaf, hi: 0xb1},
3991 {value: 0x3308, lo: 0xb2, hi: 0xb5},
3992 {value: 0x0040, lo: 0xb6, hi: 0xb7},
3993 {value: 0x3008, lo: 0xb8, hi: 0xbb},
3994 {value: 0x3308, lo: 0xbc, hi: 0xbd},
3995 {value: 0x3008, lo: 0xbe, hi: 0xbe},
3996 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
3997 // Block 0xba, offset 0x599
3998 {value: 0x0000, lo: 0x05},
3999 {value: 0x3308, lo: 0x80, hi: 0x80},
4000 {value: 0x0018, lo: 0x81, hi: 0x97},
4001 {value: 0x0008, lo: 0x98, hi: 0x9b},
4002 {value: 0x3308, lo: 0x9c, hi: 0x9d},
4003 {value: 0x0040, lo: 0x9e, hi: 0xbf},
4004 // Block 0xbb, offset 0x59f
4005 {value: 0x0000, lo: 0x07},
4006 {value: 0x0008, lo: 0x80, hi: 0xaf},
4007 {value: 0x3008, lo: 0xb0, hi: 0xb2},
4008 {value: 0x3308, lo: 0xb3, hi: 0xba},
4009 {value: 0x3008, lo: 0xbb, hi: 0xbc},
4010 {value: 0x3308, lo: 0xbd, hi: 0xbd},
4011 {value: 0x3008, lo: 0xbe, hi: 0xbe},
4012 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
4013 // Block 0xbc, offset 0x5a7
4014 {value: 0x0000, lo: 0x08},
4015 {value: 0x3308, lo: 0x80, hi: 0x80},
4016 {value: 0x0018, lo: 0x81, hi: 0x83},
4017 {value: 0x0008, lo: 0x84, hi: 0x84},
4018 {value: 0x0040, lo: 0x85, hi: 0x8f},
4019 {value: 0x0008, lo: 0x90, hi: 0x99},
4020 {value: 0x0040, lo: 0x9a, hi: 0x9f},
4021 {value: 0x0018, lo: 0xa0, hi: 0xac},
4022 {value: 0x0040, lo: 0xad, hi: 0xbf},
4023 // Block 0xbd, offset 0x5b0
4024 {value: 0x0000, lo: 0x09},
4025 {value: 0x0008, lo: 0x80, hi: 0xaa},
4026 {value: 0x3308, lo: 0xab, hi: 0xab},
4027 {value: 0x3008, lo: 0xac, hi: 0xac},
4028 {value: 0x3308, lo: 0xad, hi: 0xad},
4029 {value: 0x3008, lo: 0xae, hi: 0xaf},
4030 {value: 0x3308, lo: 0xb0, hi: 0xb5},
4031 {value: 0x3808, lo: 0xb6, hi: 0xb6},
4032 {value: 0x3308, lo: 0xb7, hi: 0xb7},
4033 {value: 0x0040, lo: 0xb8, hi: 0xbf},
4034 // Block 0xbe, offset 0x5ba
4035 {value: 0x0000, lo: 0x02},
4036 {value: 0x0008, lo: 0x80, hi: 0x89},
4037 {value: 0x0040, lo: 0x8a, hi: 0xbf},
4038 // Block 0xbf, offset 0x5bd
4039 {value: 0x0000, lo: 0x0b},
4040 {value: 0x0008, lo: 0x80, hi: 0x99},
4041 {value: 0x0040, lo: 0x9a, hi: 0x9c},
4042 {value: 0x3308, lo: 0x9d, hi: 0x9f},
4043 {value: 0x3008, lo: 0xa0, hi: 0xa1},
4044 {value: 0x3308, lo: 0xa2, hi: 0xa5},
4045 {value: 0x3008, lo: 0xa6, hi: 0xa6},
4046 {value: 0x3308, lo: 0xa7, hi: 0xaa},
4047 {value: 0x3b08, lo: 0xab, hi: 0xab},
4048 {value: 0x0040, lo: 0xac, hi: 0xaf},
4049 {value: 0x0008, lo: 0xb0, hi: 0xb9},
4050 {value: 0x0018, lo: 0xba, hi: 0xbf},
4051 // Block 0xc0, offset 0x5c9
4052 {value: 0x0000, lo: 0x02},
4053 {value: 0x0040, lo: 0x80, hi: 0x9f},
4054 {value: 0x049d, lo: 0xa0, hi: 0xbf},
4055 // Block 0xc1, offset 0x5cc
4056 {value: 0x0000, lo: 0x04},
4057 {value: 0x0008, lo: 0x80, hi: 0xa9},
4058 {value: 0x0018, lo: 0xaa, hi: 0xb2},
4059 {value: 0x0040, lo: 0xb3, hi: 0xbe},
4060 {value: 0x0008, lo: 0xbf, hi: 0xbf},
4061 // Block 0xc2, offset 0x5d1
4062 {value: 0x0000, lo: 0x0c},
4063 {value: 0x0008, lo: 0x80, hi: 0x80},
4064 {value: 0x3308, lo: 0x81, hi: 0x86},
4065 {value: 0x3008, lo: 0x87, hi: 0x88},
4066 {value: 0x3308, lo: 0x89, hi: 0x8a},
4067 {value: 0x0008, lo: 0x8b, hi: 0xb2},
4068 {value: 0x3308, lo: 0xb3, hi: 0xb3},
4069 {value: 0x3b08, lo: 0xb4, hi: 0xb4},
4070 {value: 0x3308, lo: 0xb5, hi: 0xb8},
4071 {value: 0x3008, lo: 0xb9, hi: 0xb9},
4072 {value: 0x0008, lo: 0xba, hi: 0xba},
4073 {value: 0x3308, lo: 0xbb, hi: 0xbe},
4074 {value: 0x0018, lo: 0xbf, hi: 0xbf},
4075 // Block 0xc3, offset 0x5de
4076 {value: 0x0000, lo: 0x08},
4077 {value: 0x0018, lo: 0x80, hi: 0x86},
4078 {value: 0x3b08, lo: 0x87, hi: 0x87},
4079 {value: 0x0040, lo: 0x88, hi: 0x8f},
4080 {value: 0x0008, lo: 0x90, hi: 0x90},
4081 {value: 0x3308, lo: 0x91, hi: 0x96},
4082 {value: 0x3008, lo: 0x97, hi: 0x98},
4083 {value: 0x3308, lo: 0x99, hi: 0x9b},
4084 {value: 0x0008, lo: 0x9c, hi: 0xbf},
4085 // Block 0xc4, offset 0x5e7
4086 {value: 0x0000, lo: 0x0b},
4087 {value: 0x0008, lo: 0x80, hi: 0x83},
4088 {value: 0x0040, lo: 0x84, hi: 0x85},
4089 {value: 0x0008, lo: 0x86, hi: 0x89},
4090 {value: 0x3308, lo: 0x8a, hi: 0x96},
4091 {value: 0x3008, lo: 0x97, hi: 0x97},
4092 {value: 0x3308, lo: 0x98, hi: 0x98},
4093 {value: 0x3b08, lo: 0x99, hi: 0x99},
4094 {value: 0x0018, lo: 0x9a, hi: 0x9c},
4095 {value: 0x0040, lo: 0x9d, hi: 0x9d},
4096 {value: 0x0018, lo: 0x9e, hi: 0xa2},
4097 {value: 0x0040, lo: 0xa3, hi: 0xbf},
4098 // Block 0xc5, offset 0x5f3
4099 {value: 0x0000, lo: 0x02},
4100 {value: 0x0008, lo: 0x80, hi: 0xb8},
4101 {value: 0x0040, lo: 0xb9, hi: 0xbf},
4102 // Block 0xc6, offset 0x5f6
4103 {value: 0x0000, lo: 0x09},
4104 {value: 0x0008, lo: 0x80, hi: 0x88},
4105 {value: 0x0040, lo: 0x89, hi: 0x89},
4106 {value: 0x0008, lo: 0x8a, hi: 0xae},
4107 {value: 0x3008, lo: 0xaf, hi: 0xaf},
4108 {value: 0x3308, lo: 0xb0, hi: 0xb6},
4109 {value: 0x0040, lo: 0xb7, hi: 0xb7},
4110 {value: 0x3308, lo: 0xb8, hi: 0xbd},
4111 {value: 0x3008, lo: 0xbe, hi: 0xbe},
4112 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
4113 // Block 0xc7, offset 0x600
4114 {value: 0x0000, lo: 0x08},
4115 {value: 0x0008, lo: 0x80, hi: 0x80},
4116 {value: 0x0018, lo: 0x81, hi: 0x85},
4117 {value: 0x0040, lo: 0x86, hi: 0x8f},
4118 {value: 0x0008, lo: 0x90, hi: 0x99},
4119 {value: 0x0018, lo: 0x9a, hi: 0xac},
4120 {value: 0x0040, lo: 0xad, hi: 0xaf},
4121 {value: 0x0018, lo: 0xb0, hi: 0xb1},
4122 {value: 0x0008, lo: 0xb2, hi: 0xbf},
4123 // Block 0xc8, offset 0x609
4124 {value: 0x0000, lo: 0x0b},
4125 {value: 0x0008, lo: 0x80, hi: 0x8f},
4126 {value: 0x0040, lo: 0x90, hi: 0x91},
4127 {value: 0x3308, lo: 0x92, hi: 0xa7},
4128 {value: 0x0040, lo: 0xa8, hi: 0xa8},
4129 {value: 0x3008, lo: 0xa9, hi: 0xa9},
4130 {value: 0x3308, lo: 0xaa, hi: 0xb0},
4131 {value: 0x3008, lo: 0xb1, hi: 0xb1},
4132 {value: 0x3308, lo: 0xb2, hi: 0xb3},
4133 {value: 0x3008, lo: 0xb4, hi: 0xb4},
4134 {value: 0x3308, lo: 0xb5, hi: 0xb6},
4135 {value: 0x0040, lo: 0xb7, hi: 0xbf},
4136 // Block 0xc9, offset 0x615
4137 {value: 0x0000, lo: 0x0c},
4138 {value: 0x0008, lo: 0x80, hi: 0x86},
4139 {value: 0x0040, lo: 0x87, hi: 0x87},
4140 {value: 0x0008, lo: 0x88, hi: 0x89},
4141 {value: 0x0040, lo: 0x8a, hi: 0x8a},
4142 {value: 0x0008, lo: 0x8b, hi: 0xb0},
4143 {value: 0x3308, lo: 0xb1, hi: 0xb6},
4144 {value: 0x0040, lo: 0xb7, hi: 0xb9},
4145 {value: 0x3308, lo: 0xba, hi: 0xba},
4146 {value: 0x0040, lo: 0xbb, hi: 0xbb},
4147 {value: 0x3308, lo: 0xbc, hi: 0xbd},
4148 {value: 0x0040, lo: 0xbe, hi: 0xbe},
4149 {value: 0x3308, lo: 0xbf, hi: 0xbf},
4150 // Block 0xca, offset 0x622
4151 {value: 0x0000, lo: 0x07},
4152 {value: 0x3308, lo: 0x80, hi: 0x83},
4153 {value: 0x3b08, lo: 0x84, hi: 0x85},
4154 {value: 0x0008, lo: 0x86, hi: 0x86},
4155 {value: 0x3308, lo: 0x87, hi: 0x87},
4156 {value: 0x0040, lo: 0x88, hi: 0x8f},
4157 {value: 0x0008, lo: 0x90, hi: 0x99},
4158 {value: 0x0040, lo: 0x9a, hi: 0xbf},
4159 // Block 0xcb, offset 0x62a
4160 {value: 0x0000, lo: 0x02},
4161 {value: 0x0008, lo: 0x80, hi: 0x99},
4162 {value: 0x0040, lo: 0x9a, hi: 0xbf},
4163 // Block 0xcc, offset 0x62d
4164 {value: 0x0000, lo: 0x04},
4165 {value: 0x0018, lo: 0x80, hi: 0xae},
4166 {value: 0x0040, lo: 0xaf, hi: 0xaf},
4167 {value: 0x0018, lo: 0xb0, hi: 0xb4},
4168 {value: 0x0040, lo: 0xb5, hi: 0xbf},
4169 // Block 0xcd, offset 0x632
4170 {value: 0x0000, lo: 0x02},
4171 {value: 0x0008, lo: 0x80, hi: 0x83},
4172 {value: 0x0040, lo: 0x84, hi: 0xbf},
4173 // Block 0xce, offset 0x635
4174 {value: 0x0000, lo: 0x02},
4175 {value: 0x0008, lo: 0x80, hi: 0xae},
4176 {value: 0x0040, lo: 0xaf, hi: 0xbf},
4177 // Block 0xcf, offset 0x638
4178 {value: 0x0000, lo: 0x02},
4179 {value: 0x0008, lo: 0x80, hi: 0x86},
4180 {value: 0x0040, lo: 0x87, hi: 0xbf},
4181 // Block 0xd0, offset 0x63b
4182 {value: 0x0000, lo: 0x06},
4183 {value: 0x0008, lo: 0x80, hi: 0x9e},
4184 {value: 0x0040, lo: 0x9f, hi: 0x9f},
4185 {value: 0x0008, lo: 0xa0, hi: 0xa9},
4186 {value: 0x0040, lo: 0xaa, hi: 0xad},
4187 {value: 0x0018, lo: 0xae, hi: 0xaf},
4188 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4189 // Block 0xd1, offset 0x642
4190 {value: 0x0000, lo: 0x06},
4191 {value: 0x0040, lo: 0x80, hi: 0x8f},
4192 {value: 0x0008, lo: 0x90, hi: 0xad},
4193 {value: 0x0040, lo: 0xae, hi: 0xaf},
4194 {value: 0x3308, lo: 0xb0, hi: 0xb4},
4195 {value: 0x0018, lo: 0xb5, hi: 0xb5},
4196 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4197 // Block 0xd2, offset 0x649
4198 {value: 0x0000, lo: 0x03},
4199 {value: 0x0008, lo: 0x80, hi: 0xaf},
4200 {value: 0x3308, lo: 0xb0, hi: 0xb6},
4201 {value: 0x0018, lo: 0xb7, hi: 0xbf},
4202 // Block 0xd3, offset 0x64d
4203 {value: 0x0000, lo: 0x0a},
4204 {value: 0x0008, lo: 0x80, hi: 0x83},
4205 {value: 0x0018, lo: 0x84, hi: 0x85},
4206 {value: 0x0040, lo: 0x86, hi: 0x8f},
4207 {value: 0x0008, lo: 0x90, hi: 0x99},
4208 {value: 0x0040, lo: 0x9a, hi: 0x9a},
4209 {value: 0x0018, lo: 0x9b, hi: 0xa1},
4210 {value: 0x0040, lo: 0xa2, hi: 0xa2},
4211 {value: 0x0008, lo: 0xa3, hi: 0xb7},
4212 {value: 0x0040, lo: 0xb8, hi: 0xbc},
4213 {value: 0x0008, lo: 0xbd, hi: 0xbf},
4214 // Block 0xd4, offset 0x658
4215 {value: 0x0000, lo: 0x02},
4216 {value: 0x0008, lo: 0x80, hi: 0x8f},
4217 {value: 0x0040, lo: 0x90, hi: 0xbf},
4218 // Block 0xd5, offset 0x65b
4219 {value: 0x0000, lo: 0x05},
4220 {value: 0x0008, lo: 0x80, hi: 0x84},
4221 {value: 0x0040, lo: 0x85, hi: 0x8f},
4222 {value: 0x0008, lo: 0x90, hi: 0x90},
4223 {value: 0x3008, lo: 0x91, hi: 0xbe},
4224 {value: 0x0040, lo: 0xbf, hi: 0xbf},
4225 // Block 0xd6, offset 0x661
4226 {value: 0x0000, lo: 0x04},
4227 {value: 0x0040, lo: 0x80, hi: 0x8e},
4228 {value: 0x3308, lo: 0x8f, hi: 0x92},
4229 {value: 0x0008, lo: 0x93, hi: 0x9f},
4230 {value: 0x0040, lo: 0xa0, hi: 0xbf},
4231 // Block 0xd7, offset 0x666
4232 {value: 0x0000, lo: 0x03},
4233 {value: 0x0040, lo: 0x80, hi: 0x9f},
4234 {value: 0x0008, lo: 0xa0, hi: 0xa1},
4235 {value: 0x0040, lo: 0xa2, hi: 0xbf},
4236 // Block 0xd8, offset 0x66a
4237 {value: 0x0000, lo: 0x02},
4238 {value: 0x0008, lo: 0x80, hi: 0xac},
4239 {value: 0x0040, lo: 0xad, hi: 0xbf},
4240 // Block 0xd9, offset 0x66d
4241 {value: 0x0000, lo: 0x02},
4242 {value: 0x0008, lo: 0x80, hi: 0xb2},
4243 {value: 0x0040, lo: 0xb3, hi: 0xbf},
4244 // Block 0xda, offset 0x670
4245 {value: 0x0000, lo: 0x02},
4246 {value: 0x0008, lo: 0x80, hi: 0x9e},
4247 {value: 0x0040, lo: 0x9f, hi: 0xbf},
4248 // Block 0xdb, offset 0x673
4249 {value: 0x0000, lo: 0x02},
4250 {value: 0x0040, lo: 0x80, hi: 0xaf},
4251 {value: 0x0008, lo: 0xb0, hi: 0xbf},
4252 // Block 0xdc, offset 0x676
4253 {value: 0x0000, lo: 0x02},
4254 {value: 0x0008, lo: 0x80, hi: 0xbb},
4255 {value: 0x0040, lo: 0xbc, hi: 0xbf},
4256 // Block 0xdd, offset 0x679
4257 {value: 0x0000, lo: 0x04},
4258 {value: 0x0008, lo: 0x80, hi: 0xaa},
4259 {value: 0x0040, lo: 0xab, hi: 0xaf},
4260 {value: 0x0008, lo: 0xb0, hi: 0xbc},
4261 {value: 0x0040, lo: 0xbd, hi: 0xbf},
4262 // Block 0xde, offset 0x67e
4263 {value: 0x0000, lo: 0x09},
4264 {value: 0x0008, lo: 0x80, hi: 0x88},
4265 {value: 0x0040, lo: 0x89, hi: 0x8f},
4266 {value: 0x0008, lo: 0x90, hi: 0x99},
4267 {value: 0x0040, lo: 0x9a, hi: 0x9b},
4268 {value: 0x0018, lo: 0x9c, hi: 0x9c},
4269 {value: 0x3308, lo: 0x9d, hi: 0x9e},
4270 {value: 0x0018, lo: 0x9f, hi: 0x9f},
4271 {value: 0x03c0, lo: 0xa0, hi: 0xa3},
4272 {value: 0x0040, lo: 0xa4, hi: 0xbf},
4273 // Block 0xdf, offset 0x688
4274 {value: 0x0000, lo: 0x02},
4275 {value: 0x0018, lo: 0x80, hi: 0xb5},
4276 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4277 // Block 0xe0, offset 0x68b
4278 {value: 0x0000, lo: 0x03},
4279 {value: 0x0018, lo: 0x80, hi: 0xa6},
4280 {value: 0x0040, lo: 0xa7, hi: 0xa8},
4281 {value: 0x0018, lo: 0xa9, hi: 0xbf},
4282 // Block 0xe1, offset 0x68f
4283 {value: 0x0000, lo: 0x0e},
4284 {value: 0x0018, lo: 0x80, hi: 0x9d},
4285 {value: 0xb5b9, lo: 0x9e, hi: 0x9e},
4286 {value: 0xb601, lo: 0x9f, hi: 0x9f},
4287 {value: 0xb649, lo: 0xa0, hi: 0xa0},
4288 {value: 0xb6b1, lo: 0xa1, hi: 0xa1},
4289 {value: 0xb719, lo: 0xa2, hi: 0xa2},
4290 {value: 0xb781, lo: 0xa3, hi: 0xa3},
4291 {value: 0xb7e9, lo: 0xa4, hi: 0xa4},
4292 {value: 0x3018, lo: 0xa5, hi: 0xa6},
4293 {value: 0x3318, lo: 0xa7, hi: 0xa9},
4294 {value: 0x0018, lo: 0xaa, hi: 0xac},
4295 {value: 0x3018, lo: 0xad, hi: 0xb2},
4296 {value: 0x0340, lo: 0xb3, hi: 0xba},
4297 {value: 0x3318, lo: 0xbb, hi: 0xbf},
4298 // Block 0xe2, offset 0x69e
4299 {value: 0x0000, lo: 0x0b},
4300 {value: 0x3318, lo: 0x80, hi: 0x82},
4301 {value: 0x0018, lo: 0x83, hi: 0x84},
4302 {value: 0x3318, lo: 0x85, hi: 0x8b},
4303 {value: 0x0018, lo: 0x8c, hi: 0xa9},
4304 {value: 0x3318, lo: 0xaa, hi: 0xad},
4305 {value: 0x0018, lo: 0xae, hi: 0xba},
4306 {value: 0xb851, lo: 0xbb, hi: 0xbb},
4307 {value: 0xb899, lo: 0xbc, hi: 0xbc},
4308 {value: 0xb8e1, lo: 0xbd, hi: 0xbd},
4309 {value: 0xb949, lo: 0xbe, hi: 0xbe},
4310 {value: 0xb9b1, lo: 0xbf, hi: 0xbf},
4311 // Block 0xe3, offset 0x6aa
4312 {value: 0x0000, lo: 0x03},
4313 {value: 0xba19, lo: 0x80, hi: 0x80},
4314 {value: 0x0018, lo: 0x81, hi: 0xa8},
4315 {value: 0x0040, lo: 0xa9, hi: 0xbf},
4316 // Block 0xe4, offset 0x6ae
4317 {value: 0x0000, lo: 0x04},
4318 {value: 0x0018, lo: 0x80, hi: 0x81},
4319 {value: 0x3318, lo: 0x82, hi: 0x84},
4320 {value: 0x0018, lo: 0x85, hi: 0x85},
4321 {value: 0x0040, lo: 0x86, hi: 0xbf},
4322 // Block 0xe5, offset 0x6b3
4323 {value: 0x0000, lo: 0x04},
4324 {value: 0x0018, lo: 0x80, hi: 0x96},
4325 {value: 0x0040, lo: 0x97, hi: 0x9f},
4326 {value: 0x0018, lo: 0xa0, hi: 0xb1},
4327 {value: 0x0040, lo: 0xb2, hi: 0xbf},
4328 // Block 0xe6, offset 0x6b8
4329 {value: 0x0000, lo: 0x03},
4330 {value: 0x3308, lo: 0x80, hi: 0xb6},
4331 {value: 0x0018, lo: 0xb7, hi: 0xba},
4332 {value: 0x3308, lo: 0xbb, hi: 0xbf},
4333 // Block 0xe7, offset 0x6bc
4334 {value: 0x0000, lo: 0x04},
4335 {value: 0x3308, lo: 0x80, hi: 0xac},
4336 {value: 0x0018, lo: 0xad, hi: 0xb4},
4337 {value: 0x3308, lo: 0xb5, hi: 0xb5},
4338 {value: 0x0018, lo: 0xb6, hi: 0xbf},
4339 // Block 0xe8, offset 0x6c1
4340 {value: 0x0000, lo: 0x08},
4341 {value: 0x0018, lo: 0x80, hi: 0x83},
4342 {value: 0x3308, lo: 0x84, hi: 0x84},
4343 {value: 0x0018, lo: 0x85, hi: 0x8b},
4344 {value: 0x0040, lo: 0x8c, hi: 0x9a},
4345 {value: 0x3308, lo: 0x9b, hi: 0x9f},
4346 {value: 0x0040, lo: 0xa0, hi: 0xa0},
4347 {value: 0x3308, lo: 0xa1, hi: 0xaf},
4348 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4349 // Block 0xe9, offset 0x6ca
4350 {value: 0x0000, lo: 0x0a},
4351 {value: 0x3308, lo: 0x80, hi: 0x86},
4352 {value: 0x0040, lo: 0x87, hi: 0x87},
4353 {value: 0x3308, lo: 0x88, hi: 0x98},
4354 {value: 0x0040, lo: 0x99, hi: 0x9a},
4355 {value: 0x3308, lo: 0x9b, hi: 0xa1},
4356 {value: 0x0040, lo: 0xa2, hi: 0xa2},
4357 {value: 0x3308, lo: 0xa3, hi: 0xa4},
4358 {value: 0x0040, lo: 0xa5, hi: 0xa5},
4359 {value: 0x3308, lo: 0xa6, hi: 0xaa},
4360 {value: 0x0040, lo: 0xab, hi: 0xbf},
4361 // Block 0xea, offset 0x6d5
4362 {value: 0x0000, lo: 0x05},
4363 {value: 0x0808, lo: 0x80, hi: 0x84},
4364 {value: 0x0040, lo: 0x85, hi: 0x86},
4365 {value: 0x0818, lo: 0x87, hi: 0x8f},
4366 {value: 0x3308, lo: 0x90, hi: 0x96},
4367 {value: 0x0040, lo: 0x97, hi: 0xbf},
4368 // Block 0xeb, offset 0x6db
4369 {value: 0x0000, lo: 0x07},
4370 {value: 0x0a08, lo: 0x80, hi: 0x83},
4371 {value: 0x3308, lo: 0x84, hi: 0x8a},
4372 {value: 0x0040, lo: 0x8b, hi: 0x8f},
4373 {value: 0x0808, lo: 0x90, hi: 0x99},
4374 {value: 0x0040, lo: 0x9a, hi: 0x9d},
4375 {value: 0x0818, lo: 0x9e, hi: 0x9f},
4376 {value: 0x0040, lo: 0xa0, hi: 0xbf},
4377 // Block 0xec, offset 0x6e3
4378 {value: 0x0000, lo: 0x03},
4379 {value: 0x0040, lo: 0x80, hi: 0xaf},
4380 {value: 0x0018, lo: 0xb0, hi: 0xb1},
4381 {value: 0x0040, lo: 0xb2, hi: 0xbf},
4382 // Block 0xed, offset 0x6e7
4383 {value: 0x0000, lo: 0x03},
4384 {value: 0x0018, lo: 0x80, hi: 0xab},
4385 {value: 0x0040, lo: 0xac, hi: 0xaf},
4386 {value: 0x0018, lo: 0xb0, hi: 0xbf},
4387 // Block 0xee, offset 0x6eb
4388 {value: 0x0000, lo: 0x05},
4389 {value: 0x0018, lo: 0x80, hi: 0x93},
4390 {value: 0x0040, lo: 0x94, hi: 0x9f},
4391 {value: 0x0018, lo: 0xa0, hi: 0xae},
4392 {value: 0x0040, lo: 0xaf, hi: 0xb0},
4393 {value: 0x0018, lo: 0xb1, hi: 0xbf},
4394 // Block 0xef, offset 0x6f1
4395 {value: 0x0000, lo: 0x05},
4396 {value: 0x0040, lo: 0x80, hi: 0x80},
4397 {value: 0x0018, lo: 0x81, hi: 0x8f},
4398 {value: 0x0040, lo: 0x90, hi: 0x90},
4399 {value: 0x0018, lo: 0x91, hi: 0xb5},
4400 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4401 // Block 0xf0, offset 0x6f7
4402 {value: 0x0000, lo: 0x04},
4403 {value: 0x0018, lo: 0x80, hi: 0x8f},
4404 {value: 0xc1c1, lo: 0x90, hi: 0x90},
4405 {value: 0x0018, lo: 0x91, hi: 0xac},
4406 {value: 0x0040, lo: 0xad, hi: 0xbf},
4407 // Block 0xf1, offset 0x6fc
4408 {value: 0x0000, lo: 0x02},
4409 {value: 0x0040, lo: 0x80, hi: 0xa5},
4410 {value: 0x0018, lo: 0xa6, hi: 0xbf},
4411 // Block 0xf2, offset 0x6ff
4412 {value: 0x0000, lo: 0x0f},
4413 {value: 0xc7e9, lo: 0x80, hi: 0x80},
4414 {value: 0xc839, lo: 0x81, hi: 0x81},
4415 {value: 0xc889, lo: 0x82, hi: 0x82},
4416 {value: 0xc8d9, lo: 0x83, hi: 0x83},
4417 {value: 0xc929, lo: 0x84, hi: 0x84},
4418 {value: 0xc979, lo: 0x85, hi: 0x85},
4419 {value: 0xc9c9, lo: 0x86, hi: 0x86},
4420 {value: 0xca19, lo: 0x87, hi: 0x87},
4421 {value: 0xca69, lo: 0x88, hi: 0x88},
4422 {value: 0x0040, lo: 0x89, hi: 0x8f},
4423 {value: 0xcab9, lo: 0x90, hi: 0x90},
4424 {value: 0xcad9, lo: 0x91, hi: 0x91},
4425 {value: 0x0040, lo: 0x92, hi: 0x9f},
4426 {value: 0x0018, lo: 0xa0, hi: 0xa5},
4427 {value: 0x0040, lo: 0xa6, hi: 0xbf},
4428 // Block 0xf3, offset 0x70f
4429 {value: 0x0000, lo: 0x06},
4430 {value: 0x0018, lo: 0x80, hi: 0x94},
4431 {value: 0x0040, lo: 0x95, hi: 0x9f},
4432 {value: 0x0018, lo: 0xa0, hi: 0xac},
4433 {value: 0x0040, lo: 0xad, hi: 0xaf},
4434 {value: 0x0018, lo: 0xb0, hi: 0xb8},
4435 {value: 0x0040, lo: 0xb9, hi: 0xbf},
4436 // Block 0xf4, offset 0x716
4437 {value: 0x0000, lo: 0x02},
4438 {value: 0x0018, lo: 0x80, hi: 0xb3},
4439 {value: 0x0040, lo: 0xb4, hi: 0xbf},
4440 // Block 0xf5, offset 0x719
4441 {value: 0x0000, lo: 0x02},
4442 {value: 0x0018, lo: 0x80, hi: 0x94},
4443 {value: 0x0040, lo: 0x95, hi: 0xbf},
4444 // Block 0xf6, offset 0x71c
4445 {value: 0x0000, lo: 0x03},
4446 {value: 0x0018, lo: 0x80, hi: 0x8b},
4447 {value: 0x0040, lo: 0x8c, hi: 0x8f},
4448 {value: 0x0018, lo: 0x90, hi: 0xbf},
4449 // Block 0xf7, offset 0x720
4450 {value: 0x0000, lo: 0x05},
4451 {value: 0x0018, lo: 0x80, hi: 0x87},
4452 {value: 0x0040, lo: 0x88, hi: 0x8f},
4453 {value: 0x0018, lo: 0x90, hi: 0x99},
4454 {value: 0x0040, lo: 0x9a, hi: 0x9f},
4455 {value: 0x0018, lo: 0xa0, hi: 0xbf},
4456 // Block 0xf8, offset 0x726
4457 {value: 0x0000, lo: 0x04},
4458 {value: 0x0018, lo: 0x80, hi: 0x87},
4459 {value: 0x0040, lo: 0x88, hi: 0x8f},
4460 {value: 0x0018, lo: 0x90, hi: 0xad},
4461 {value: 0x0040, lo: 0xae, hi: 0xbf},
4462 // Block 0xf9, offset 0x72b
4463 {value: 0x0000, lo: 0x04},
4464 {value: 0x0018, lo: 0x80, hi: 0x8b},
4465 {value: 0x0040, lo: 0x8c, hi: 0x8f},
4466 {value: 0x0018, lo: 0x90, hi: 0xbe},
4467 {value: 0x0040, lo: 0xbf, hi: 0xbf},
4468 // Block 0xfa, offset 0x730
4469 {value: 0x0000, lo: 0x04},
4470 {value: 0x0018, lo: 0x80, hi: 0x8c},
4471 {value: 0x0040, lo: 0x8d, hi: 0x8f},
4472 {value: 0x0018, lo: 0x90, hi: 0xab},
4473 {value: 0x0040, lo: 0xac, hi: 0xbf},
4474 // Block 0xfb, offset 0x735
4475 {value: 0x0000, lo: 0x02},
4476 {value: 0x0018, lo: 0x80, hi: 0x97},
4477 {value: 0x0040, lo: 0x98, hi: 0xbf},
4478 // Block 0xfc, offset 0x738
4479 {value: 0x0000, lo: 0x04},
4480 {value: 0x0018, lo: 0x80, hi: 0x80},
4481 {value: 0x0040, lo: 0x81, hi: 0x8f},
4482 {value: 0x0018, lo: 0x90, hi: 0xa6},
4483 {value: 0x0040, lo: 0xa7, hi: 0xbf},
4484 // Block 0xfd, offset 0x73d
4485 {value: 0x0000, lo: 0x02},
4486 {value: 0x0008, lo: 0x80, hi: 0x96},
4487 {value: 0x0040, lo: 0x97, hi: 0xbf},
4488 // Block 0xfe, offset 0x740
4489 {value: 0x0000, lo: 0x02},
4490 {value: 0x0008, lo: 0x80, hi: 0xb4},
4491 {value: 0x0040, lo: 0xb5, hi: 0xbf},
4492 // Block 0xff, offset 0x743
4493 {value: 0x0000, lo: 0x03},
4494 {value: 0x0008, lo: 0x80, hi: 0x9d},
4495 {value: 0x0040, lo: 0x9e, hi: 0x9f},
4496 {value: 0x0008, lo: 0xa0, hi: 0xbf},
4497 // Block 0x100, offset 0x747
4498 {value: 0x0000, lo: 0x03},
4499 {value: 0x0008, lo: 0x80, hi: 0xa1},
4500 {value: 0x0040, lo: 0xa2, hi: 0xaf},
4501 {value: 0x0008, lo: 0xb0, hi: 0xbf},
4502 // Block 0x101, offset 0x74b
4503 {value: 0x0000, lo: 0x02},
4504 {value: 0x0008, lo: 0x80, hi: 0xa0},
4505 {value: 0x0040, lo: 0xa1, hi: 0xbf},
4506 // Block 0x102, offset 0x74e
4507 {value: 0x0020, lo: 0x0f},
4508 {value: 0xdeb9, lo: 0x80, hi: 0x89},
4509 {value: 0x8dfd, lo: 0x8a, hi: 0x8a},
4510 {value: 0xdff9, lo: 0x8b, hi: 0x9c},
4511 {value: 0x8e1d, lo: 0x9d, hi: 0x9d},
4512 {value: 0xe239, lo: 0x9e, hi: 0xa2},
4513 {value: 0x8e3d, lo: 0xa3, hi: 0xa3},
4514 {value: 0xe2d9, lo: 0xa4, hi: 0xab},
4515 {value: 0x7ed5, lo: 0xac, hi: 0xac},
4516 {value: 0xe3d9, lo: 0xad, hi: 0xaf},
4517 {value: 0x8e5d, lo: 0xb0, hi: 0xb0},
4518 {value: 0xe439, lo: 0xb1, hi: 0xb6},
4519 {value: 0x8e7d, lo: 0xb7, hi: 0xb9},
4520 {value: 0xe4f9, lo: 0xba, hi: 0xba},
4521 {value: 0x8edd, lo: 0xbb, hi: 0xbb},
4522 {value: 0xe519, lo: 0xbc, hi: 0xbf},
4523 // Block 0x103, offset 0x75e
4524 {value: 0x0020, lo: 0x10},
4525 {value: 0x937d, lo: 0x80, hi: 0x80},
4526 {value: 0xf099, lo: 0x81, hi: 0x86},
4527 {value: 0x939d, lo: 0x87, hi: 0x8a},
4528 {value: 0xd9f9, lo: 0x8b, hi: 0x8b},
4529 {value: 0xf159, lo: 0x8c, hi: 0x96},
4530 {value: 0x941d, lo: 0x97, hi: 0x97},
4531 {value: 0xf2b9, lo: 0x98, hi: 0xa3},
4532 {value: 0x943d, lo: 0xa4, hi: 0xa6},
4533 {value: 0xf439, lo: 0xa7, hi: 0xaa},
4534 {value: 0x949d, lo: 0xab, hi: 0xab},
4535 {value: 0xf4b9, lo: 0xac, hi: 0xac},
4536 {value: 0x94bd, lo: 0xad, hi: 0xad},
4537 {value: 0xf4d9, lo: 0xae, hi: 0xaf},
4538 {value: 0x94dd, lo: 0xb0, hi: 0xb1},
4539 {value: 0xf519, lo: 0xb2, hi: 0xbe},
4540 {value: 0x2040, lo: 0xbf, hi: 0xbf},
4541 // Block 0x104, offset 0x76f
4542 {value: 0x0000, lo: 0x04},
4543 {value: 0x0040, lo: 0x80, hi: 0x80},
4544 {value: 0x0340, lo: 0x81, hi: 0x81},
4545 {value: 0x0040, lo: 0x82, hi: 0x9f},
4546 {value: 0x0340, lo: 0xa0, hi: 0xbf},
4547 // Block 0x105, offset 0x774
4548 {value: 0x0000, lo: 0x01},
4549 {value: 0x0340, lo: 0x80, hi: 0xbf},
4550 // Block 0x106, offset 0x776
4551 {value: 0x0000, lo: 0x01},
4552 {value: 0x33c0, lo: 0x80, hi: 0xbf},
4553 // Block 0x107, offset 0x778
4554 {value: 0x0000, lo: 0x02},
4555 {value: 0x33c0, lo: 0x80, hi: 0xaf},
4556 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4557}
4558
4559// Total table size 42114 bytes (41KiB); checksum: 355A58A4
diff --git a/vendor/golang.org/x/net/idna/tables11.0.0.go b/vendor/golang.org/x/net/idna/tables11.0.0.go
new file mode 100644
index 0000000..c515d7a
--- /dev/null
+++ b/vendor/golang.org/x/net/idna/tables11.0.0.go
@@ -0,0 +1,4653 @@
1// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
2
3// +build go1.13
4
5package idna
6
7// UnicodeVersion is the Unicode version from which the tables in this package are derived.
8const UnicodeVersion = "11.0.0"
9
10var mappings string = "" + // Size: 8175 bytes
11 "\x00\x01 \x03 ̈\x01a\x03 ̄\x012\x013\x03 ́\x03 ̧\x011\x01o\x051⁄4\x051⁄2" +
12 "\x053⁄4\x03i̇\x03l·\x03ʼn\x01s\x03dž\x03ⱥ\x03ⱦ\x01h\x01j\x01r\x01w\x01y" +
13 "\x03 ̆\x03 ̇\x03 ̊\x03 ̨\x03 ̃\x03 ̋\x01l\x01x\x04̈́\x03 ι\x01;\x05 ̈́" +
14 "\x04եւ\x04اٴ\x04وٴ\x04ۇٴ\x04يٴ\x06क़\x06ख़\x06ग़\x06ज़\x06ड़\x06ढ़\x06फ़" +
15 "\x06य़\x06ড়\x06ঢ়\x06য়\x06ਲ਼\x06ਸ਼\x06ਖ਼\x06ਗ਼\x06ਜ਼\x06ਫ਼\x06ଡ଼\x06ଢ଼" +
16 "\x06ํา\x06ໍາ\x06ຫນ\x06ຫມ\x06གྷ\x06ཌྷ\x06དྷ\x06བྷ\x06ཛྷ\x06ཀྵ\x06ཱི\x06ཱུ" +
17 "\x06ྲྀ\x09ྲཱྀ\x06ླྀ\x09ླཱྀ\x06ཱྀ\x06ྒྷ\x06ྜྷ\x06ྡྷ\x06ྦྷ\x06ྫྷ\x06ྐྵ\x02" +
18 "в\x02д\x02о\x02с\x02т\x02ъ\x02ѣ\x02æ\x01b\x01d\x01e\x02ǝ\x01g\x01i\x01k" +
19 "\x01m\x01n\x02ȣ\x01p\x01t\x01u\x02ɐ\x02ɑ\x02ə\x02ɛ\x02ɜ\x02ŋ\x02ɔ\x02ɯ" +
20 "\x01v\x02β\x02γ\x02δ\x02φ\x02χ\x02ρ\x02н\x02ɒ\x01c\x02ɕ\x02ð\x01f\x02ɟ" +
21 "\x02ɡ\x02ɥ\x02ɨ\x02ɩ\x02ɪ\x02ʝ\x02ɭ\x02ʟ\x02ɱ\x02ɰ\x02ɲ\x02ɳ\x02ɴ\x02ɵ" +
22 "\x02ɸ\x02ʂ\x02ʃ\x02ƫ\x02ʉ\x02ʊ\x02ʋ\x02ʌ\x01z\x02ʐ\x02ʑ\x02ʒ\x02θ\x02ss" +
23 "\x02ά\x02έ\x02ή\x02ί\x02ό\x02ύ\x02ώ\x05ἀι\x05ἁι\x05ἂι\x05ἃι\x05ἄι\x05ἅι" +
24 "\x05ἆι\x05ἇι\x05ἠι\x05ἡι\x05ἢι\x05ἣι\x05ἤι\x05ἥι\x05ἦι\x05ἧι\x05ὠι\x05ὡι" +
25 "\x05ὢι\x05ὣι\x05ὤι\x05ὥι\x05ὦι\x05ὧι\x05ὰι\x04αι\x04άι\x05ᾶι\x02ι\x05 ̈͂" +
26 "\x05ὴι\x04ηι\x04ήι\x05ῆι\x05 ̓̀\x05 ̓́\x05 ̓͂\x02ΐ\x05 ̔̀\x05 ̔́\x05 ̔͂" +
27 "\x02ΰ\x05 ̈̀\x01`\x05ὼι\x04ωι\x04ώι\x05ῶι\x06′′\x09′′′\x06‵‵\x09‵‵‵\x02!" +
28 "!\x02??\x02?!\x02!?\x0c′′′′\x010\x014\x015\x016\x017\x018\x019\x01+\x01=" +
29 "\x01(\x01)\x02rs\x02ħ\x02no\x01q\x02sm\x02tm\x02ω\x02å\x02א\x02ב\x02ג" +
30 "\x02ד\x02π\x051⁄7\x051⁄9\x061⁄10\x051⁄3\x052⁄3\x051⁄5\x052⁄5\x053⁄5\x054" +
31 "⁄5\x051⁄6\x055⁄6\x051⁄8\x053⁄8\x055⁄8\x057⁄8\x041⁄\x02ii\x02iv\x02vi" +
32 "\x04viii\x02ix\x02xi\x050⁄3\x06∫∫\x09∫∫∫\x06∮∮\x09∮∮∮\x0210\x0211\x0212" +
33 "\x0213\x0214\x0215\x0216\x0217\x0218\x0219\x0220\x04(10)\x04(11)\x04(12)" +
34 "\x04(13)\x04(14)\x04(15)\x04(16)\x04(17)\x04(18)\x04(19)\x04(20)\x0c∫∫∫∫" +
35 "\x02==\x05⫝̸\x02ɫ\x02ɽ\x02ȿ\x02ɀ\x01.\x04 ゙\x04 ゚\x06より\x06コト\x05(ᄀ)\x05" +
36 "(ᄂ)\x05(ᄃ)\x05(ᄅ)\x05(ᄆ)\x05(ᄇ)\x05(ᄉ)\x05(ᄋ)\x05(ᄌ)\x05(ᄎ)\x05(ᄏ)\x05(ᄐ" +
37 ")\x05(ᄑ)\x05(ᄒ)\x05(가)\x05(나)\x05(다)\x05(라)\x05(마)\x05(바)\x05(사)\x05(아)" +
38 "\x05(자)\x05(차)\x05(카)\x05(타)\x05(파)\x05(하)\x05(주)\x08(오전)\x08(오후)\x05(一)" +
39 "\x05(二)\x05(三)\x05(四)\x05(五)\x05(六)\x05(七)\x05(八)\x05(九)\x05(十)\x05(月)" +
40 "\x05(火)\x05(水)\x05(木)\x05(金)\x05(土)\x05(日)\x05(株)\x05(有)\x05(社)\x05(名)" +
41 "\x05(特)\x05(財)\x05(祝)\x05(労)\x05(代)\x05(呼)\x05(学)\x05(監)\x05(企)\x05(資)" +
42 "\x05(協)\x05(祭)\x05(休)\x05(自)\x05(至)\x0221\x0222\x0223\x0224\x0225\x0226" +
43 "\x0227\x0228\x0229\x0230\x0231\x0232\x0233\x0234\x0235\x06참고\x06주의\x0236" +
44 "\x0237\x0238\x0239\x0240\x0241\x0242\x0243\x0244\x0245\x0246\x0247\x0248" +
45 "\x0249\x0250\x041月\x042月\x043月\x044月\x045月\x046月\x047月\x048月\x049月\x0510" +
46 "月\x0511月\x0512月\x02hg\x02ev\x0cアパート\x0cアルファ\x0cアンペア\x09アール\x0cイニング\x09" +
47 "インチ\x09ウォン\x0fエスクード\x0cエーカー\x09オンス\x09オーム\x09カイリ\x0cカラット\x0cカロリー\x09ガロ" +
48 "ン\x09ガンマ\x06ギガ\x09ギニー\x0cキュリー\x0cギルダー\x06キロ\x0fキログラム\x12キロメートル\x0fキロワッ" +
49 "ト\x09グラム\x0fグラムトン\x0fクルゼイロ\x0cクローネ\x09ケース\x09コルナ\x09コーポ\x0cサイクル\x0fサンチ" +
50 "ーム\x0cシリング\x09センチ\x09セント\x09ダース\x06デシ\x06ドル\x06トン\x06ナノ\x09ノット\x09ハイツ" +
51 "\x0fパーセント\x09パーツ\x0cバーレル\x0fピアストル\x09ピクル\x06ピコ\x06ビル\x0fファラッド\x0cフィート" +
52 "\x0fブッシェル\x09フラン\x0fヘクタール\x06ペソ\x09ペニヒ\x09ヘルツ\x09ペンス\x09ページ\x09ベータ\x0cポイ" +
53 "ント\x09ボルト\x06ホン\x09ポンド\x09ホール\x09ホーン\x0cマイクロ\x09マイル\x09マッハ\x09マルク\x0fマ" +
54 "ンション\x0cミクロン\x06ミリ\x0fミリバール\x06メガ\x0cメガトン\x0cメートル\x09ヤード\x09ヤール\x09ユアン" +
55 "\x0cリットル\x06リラ\x09ルピー\x0cルーブル\x06レム\x0fレントゲン\x09ワット\x040点\x041点\x042点" +
56 "\x043点\x044点\x045点\x046点\x047点\x048点\x049点\x0510点\x0511点\x0512点\x0513点" +
57 "\x0514点\x0515点\x0516点\x0517点\x0518点\x0519点\x0520点\x0521点\x0522点\x0523点" +
58 "\x0524点\x02da\x02au\x02ov\x02pc\x02dm\x02iu\x06平成\x06昭和\x06大正\x06明治\x0c株" +
59 "式会社\x02pa\x02na\x02ma\x02ka\x02kb\x02mb\x02gb\x04kcal\x02pf\x02nf\x02m" +
60 "g\x02kg\x02hz\x02ml\x02dl\x02kl\x02fm\x02nm\x02mm\x02cm\x02km\x02m2\x02m" +
61 "3\x05m∕s\x06m∕s2\x07rad∕s\x08rad∕s2\x02ps\x02ns\x02ms\x02pv\x02nv\x02mv" +
62 "\x02kv\x02pw\x02nw\x02mw\x02kw\x02bq\x02cc\x02cd\x06c∕kg\x02db\x02gy\x02" +
63 "ha\x02hp\x02in\x02kk\x02kt\x02lm\x02ln\x02lx\x02ph\x02pr\x02sr\x02sv\x02" +
64 "wb\x05v∕m\x05a∕m\x041日\x042日\x043日\x044日\x045日\x046日\x047日\x048日\x049日" +
65 "\x0510日\x0511日\x0512日\x0513日\x0514日\x0515日\x0516日\x0517日\x0518日\x0519日" +
66 "\x0520日\x0521日\x0522日\x0523日\x0524日\x0525日\x0526日\x0527日\x0528日\x0529日" +
67 "\x0530日\x0531日\x02ь\x02ɦ\x02ɬ\x02ʞ\x02ʇ\x02œ\x04𤋮\x04𢡊\x04𢡄\x04𣏕\x04𥉉" +
68 "\x04𥳐\x04𧻓\x02ff\x02fi\x02fl\x02st\x04մն\x04մե\x04մի\x04վն\x04մխ\x04יִ" +
69 "\x04ײַ\x02ע\x02ה\x02כ\x02ל\x02ם\x02ר\x02ת\x04שׁ\x04שׂ\x06שּׁ\x06שּׂ\x04א" +
70 "ַ\x04אָ\x04אּ\x04בּ\x04גּ\x04דּ\x04הּ\x04וּ\x04זּ\x04טּ\x04יּ\x04ךּ\x04" +
71 "כּ\x04לּ\x04מּ\x04נּ\x04סּ\x04ףּ\x04פּ\x04צּ\x04קּ\x04רּ\x04שּ\x04תּ" +
72 "\x04וֹ\x04בֿ\x04כֿ\x04פֿ\x04אל\x02ٱ\x02ٻ\x02پ\x02ڀ\x02ٺ\x02ٿ\x02ٹ\x02ڤ" +
73 "\x02ڦ\x02ڄ\x02ڃ\x02چ\x02ڇ\x02ڍ\x02ڌ\x02ڎ\x02ڈ\x02ژ\x02ڑ\x02ک\x02گ\x02ڳ" +
74 "\x02ڱ\x02ں\x02ڻ\x02ۀ\x02ہ\x02ھ\x02ے\x02ۓ\x02ڭ\x02ۇ\x02ۆ\x02ۈ\x02ۋ\x02ۅ" +
75 "\x02ۉ\x02ې\x02ى\x04ئا\x04ئە\x04ئو\x04ئۇ\x04ئۆ\x04ئۈ\x04ئې\x04ئى\x02ی\x04" +
76 "ئج\x04ئح\x04ئم\x04ئي\x04بج\x04بح\x04بخ\x04بم\x04بى\x04بي\x04تج\x04تح" +
77 "\x04تخ\x04تم\x04تى\x04تي\x04ثج\x04ثم\x04ثى\x04ثي\x04جح\x04جم\x04حج\x04حم" +
78 "\x04خج\x04خح\x04خم\x04سج\x04سح\x04سخ\x04سم\x04صح\x04صم\x04ضج\x04ضح\x04ضخ" +
79 "\x04ضم\x04طح\x04طم\x04ظم\x04عج\x04عم\x04غج\x04غم\x04فج\x04فح\x04فخ\x04فم" +
80 "\x04فى\x04في\x04قح\x04قم\x04قى\x04قي\x04كا\x04كج\x04كح\x04كخ\x04كل\x04كم" +
81 "\x04كى\x04كي\x04لج\x04لح\x04لخ\x04لم\x04لى\x04لي\x04مج\x04مح\x04مخ\x04مم" +
82 "\x04مى\x04مي\x04نج\x04نح\x04نخ\x04نم\x04نى\x04ني\x04هج\x04هم\x04هى\x04هي" +
83 "\x04يج\x04يح\x04يخ\x04يم\x04يى\x04يي\x04ذٰ\x04رٰ\x04ىٰ\x05 ٌّ\x05 ٍّ\x05" +
84 " َّ\x05 ُّ\x05 ِّ\x05 ّٰ\x04ئر\x04ئز\x04ئن\x04بر\x04بز\x04بن\x04تر\x04تز" +
85 "\x04تن\x04ثر\x04ثز\x04ثن\x04ما\x04نر\x04نز\x04نن\x04ير\x04يز\x04ين\x04ئخ" +
86 "\x04ئه\x04به\x04ته\x04صخ\x04له\x04نه\x04هٰ\x04يه\x04ثه\x04سه\x04شم\x04شه" +
87 "\x06ـَّ\x06ـُّ\x06ـِّ\x04طى\x04طي\x04عى\x04عي\x04غى\x04غي\x04سى\x04سي" +
88 "\x04شى\x04شي\x04حى\x04حي\x04جى\x04جي\x04خى\x04خي\x04صى\x04صي\x04ضى\x04ضي" +
89 "\x04شج\x04شح\x04شخ\x04شر\x04سر\x04صر\x04ضر\x04اً\x06تجم\x06تحج\x06تحم" +
90 "\x06تخم\x06تمج\x06تمح\x06تمخ\x06جمح\x06حمي\x06حمى\x06سحج\x06سجح\x06سجى" +
91 "\x06سمح\x06سمج\x06سمم\x06صحح\x06صمم\x06شحم\x06شجي\x06شمخ\x06شمم\x06ضحى" +
92 "\x06ضخم\x06طمح\x06طمم\x06طمي\x06عجم\x06عمم\x06عمى\x06غمم\x06غمي\x06غمى" +
93 "\x06فخم\x06قمح\x06قمم\x06لحم\x06لحي\x06لحى\x06لجج\x06لخم\x06لمح\x06محج" +
94 "\x06محم\x06محي\x06مجح\x06مجم\x06مخج\x06مخم\x06مجخ\x06همج\x06همم\x06نحم" +
95 "\x06نحى\x06نجم\x06نجى\x06نمي\x06نمى\x06يمم\x06بخي\x06تجي\x06تجى\x06تخي" +
96 "\x06تخى\x06تمي\x06تمى\x06جمي\x06جحى\x06جمى\x06سخى\x06صحي\x06شحي\x06ضحي" +
97 "\x06لجي\x06لمي\x06يحي\x06يجي\x06يمي\x06ممي\x06قمي\x06نحي\x06عمي\x06كمي" +
98 "\x06نجح\x06مخي\x06لجم\x06كمم\x06جحي\x06حجي\x06مجي\x06فمي\x06بحي\x06سخي" +
99 "\x06نجي\x06صلے\x06قلے\x08الله\x08اكبر\x08محمد\x08صلعم\x08رسول\x08عليه" +
100 "\x08وسلم\x06صلى!صلى الله عليه وسلم\x0fجل جلاله\x08ریال\x01,\x01:\x01!" +
101 "\x01?\x01_\x01{\x01}\x01[\x01]\x01#\x01&\x01*\x01-\x01<\x01>\x01\\\x01$" +
102 "\x01%\x01@\x04ـً\x04ـَ\x04ـُ\x04ـِ\x04ـّ\x04ـْ\x02ء\x02آ\x02أ\x02ؤ\x02إ" +
103 "\x02ئ\x02ا\x02ب\x02ة\x02ت\x02ث\x02ج\x02ح\x02خ\x02د\x02ذ\x02ر\x02ز\x02س" +
104 "\x02ش\x02ص\x02ض\x02ط\x02ظ\x02ع\x02غ\x02ف\x02ق\x02ك\x02ل\x02م\x02ن\x02ه" +
105 "\x02و\x02ي\x04لآ\x04لأ\x04لإ\x04لا\x01\x22\x01'\x01/\x01^\x01|\x01~\x02¢" +
106 "\x02£\x02¬\x02¦\x02¥\x08𝅗𝅥\x08𝅘𝅥\x0c𝅘𝅥𝅮\x0c𝅘𝅥𝅯\x0c𝅘𝅥𝅰\x0c𝅘𝅥𝅱\x0c𝅘𝅥𝅲\x08𝆹" +
107 "𝅥\x08𝆺𝅥\x0c𝆹𝅥𝅮\x0c𝆺𝅥𝅮\x0c𝆹𝅥𝅯\x0c𝆺𝅥𝅯\x02ı\x02ȷ\x02α\x02ε\x02ζ\x02η\x02" +
108 "κ\x02λ\x02μ\x02ν\x02ξ\x02ο\x02σ\x02τ\x02υ\x02ψ\x03∇\x03∂\x02ϝ\x02ٮ\x02ڡ" +
109 "\x02ٯ\x020,\x021,\x022,\x023,\x024,\x025,\x026,\x027,\x028,\x029,\x03(a)" +
110 "\x03(b)\x03(c)\x03(d)\x03(e)\x03(f)\x03(g)\x03(h)\x03(i)\x03(j)\x03(k)" +
111 "\x03(l)\x03(m)\x03(n)\x03(o)\x03(p)\x03(q)\x03(r)\x03(s)\x03(t)\x03(u)" +
112 "\x03(v)\x03(w)\x03(x)\x03(y)\x03(z)\x07〔s〕\x02wz\x02hv\x02sd\x03ppv\x02w" +
113 "c\x02mc\x02md\x02dj\x06ほか\x06ココ\x03サ\x03手\x03字\x03双\x03デ\x03二\x03多\x03解" +
114 "\x03天\x03交\x03映\x03無\x03料\x03前\x03後\x03再\x03新\x03初\x03終\x03生\x03販\x03声" +
115 "\x03吹\x03演\x03投\x03捕\x03一\x03三\x03遊\x03左\x03中\x03右\x03指\x03走\x03打\x03禁" +
116 "\x03空\x03合\x03満\x03有\x03月\x03申\x03割\x03営\x03配\x09〔本〕\x09〔三〕\x09〔二〕\x09〔安" +
117 "〕\x09〔点〕\x09〔打〕\x09〔盗〕\x09〔勝〕\x09〔敗〕\x03得\x03可\x03丽\x03丸\x03乁\x03你\x03" +
118 "侮\x03侻\x03倂\x03偺\x03備\x03僧\x03像\x03㒞\x03免\x03兔\x03兤\x03具\x03㒹\x03內\x03" +
119 "冗\x03冤\x03仌\x03冬\x03况\x03凵\x03刃\x03㓟\x03刻\x03剆\x03剷\x03㔕\x03勇\x03勉\x03" +
120 "勤\x03勺\x03包\x03匆\x03北\x03卉\x03卑\x03博\x03即\x03卽\x03卿\x03灰\x03及\x03叟\x03" +
121 "叫\x03叱\x03吆\x03咞\x03吸\x03呈\x03周\x03咢\x03哶\x03唐\x03啓\x03啣\x03善\x03喙\x03" +
122 "喫\x03喳\x03嗂\x03圖\x03嘆\x03圗\x03噑\x03噴\x03切\x03壮\x03城\x03埴\x03堍\x03型\x03" +
123 "堲\x03報\x03墬\x03売\x03壷\x03夆\x03夢\x03奢\x03姬\x03娛\x03娧\x03姘\x03婦\x03㛮\x03" +
124 "嬈\x03嬾\x03寃\x03寘\x03寧\x03寳\x03寿\x03将\x03尢\x03㞁\x03屠\x03屮\x03峀\x03岍\x03" +
125 "嵃\x03嵮\x03嵫\x03嵼\x03巡\x03巢\x03㠯\x03巽\x03帨\x03帽\x03幩\x03㡢\x03㡼\x03庰\x03" +
126 "庳\x03庶\x03廊\x03廾\x03舁\x03弢\x03㣇\x03形\x03彫\x03㣣\x03徚\x03忍\x03志\x03忹\x03" +
127 "悁\x03㤺\x03㤜\x03悔\x03惇\x03慈\x03慌\x03慎\x03慺\x03憎\x03憲\x03憤\x03憯\x03懞\x03" +
128 "懲\x03懶\x03成\x03戛\x03扝\x03抱\x03拔\x03捐\x03挽\x03拼\x03捨\x03掃\x03揤\x03搢\x03" +
129 "揅\x03掩\x03㨮\x03摩\x03摾\x03撝\x03摷\x03㩬\x03敏\x03敬\x03旣\x03書\x03晉\x03㬙\x03" +
130 "暑\x03㬈\x03㫤\x03冒\x03冕\x03最\x03暜\x03肭\x03䏙\x03朗\x03望\x03朡\x03杞\x03杓\x03" +
131 "㭉\x03柺\x03枅\x03桒\x03梅\x03梎\x03栟\x03椔\x03㮝\x03楂\x03榣\x03槪\x03檨\x03櫛\x03" +
132 "㰘\x03次\x03歔\x03㱎\x03歲\x03殟\x03殺\x03殻\x03汎\x03沿\x03泍\x03汧\x03洖\x03派\x03" +
133 "海\x03流\x03浩\x03浸\x03涅\x03洴\x03港\x03湮\x03㴳\x03滋\x03滇\x03淹\x03潮\x03濆\x03" +
134 "瀹\x03瀞\x03瀛\x03㶖\x03灊\x03災\x03灷\x03炭\x03煅\x03熜\x03爨\x03爵\x03牐\x03犀\x03" +
135 "犕\x03獺\x03王\x03㺬\x03玥\x03㺸\x03瑇\x03瑜\x03瑱\x03璅\x03瓊\x03㼛\x03甤\x03甾\x03" +
136 "異\x03瘐\x03㿼\x03䀈\x03直\x03眞\x03真\x03睊\x03䀹\x03瞋\x03䁆\x03䂖\x03硎\x03碌\x03" +
137 "磌\x03䃣\x03祖\x03福\x03秫\x03䄯\x03穀\x03穊\x03穏\x03䈂\x03篆\x03築\x03䈧\x03糒\x03" +
138 "䊠\x03糨\x03糣\x03紀\x03絣\x03䌁\x03緇\x03縂\x03繅\x03䌴\x03䍙\x03罺\x03羕\x03翺\x03" +
139 "者\x03聠\x03聰\x03䏕\x03育\x03脃\x03䐋\x03脾\x03媵\x03舄\x03辞\x03䑫\x03芑\x03芋\x03" +
140 "芝\x03劳\x03花\x03芳\x03芽\x03苦\x03若\x03茝\x03荣\x03莭\x03茣\x03莽\x03菧\x03著\x03" +
141 "荓\x03菊\x03菌\x03菜\x03䔫\x03蓱\x03蓳\x03蔖\x03蕤\x03䕝\x03䕡\x03䕫\x03虐\x03虜\x03" +
142 "虧\x03虩\x03蚩\x03蚈\x03蜎\x03蛢\x03蝹\x03蜨\x03蝫\x03螆\x03蟡\x03蠁\x03䗹\x03衠\x03" +
143 "衣\x03裗\x03裞\x03䘵\x03裺\x03㒻\x03䚾\x03䛇\x03誠\x03諭\x03變\x03豕\x03貫\x03賁\x03" +
144 "贛\x03起\x03跋\x03趼\x03跰\x03軔\x03輸\x03邔\x03郱\x03鄑\x03鄛\x03鈸\x03鋗\x03鋘\x03" +
145 "鉼\x03鏹\x03鐕\x03開\x03䦕\x03閷\x03䧦\x03雃\x03嶲\x03霣\x03䩮\x03䩶\x03韠\x03䪲\x03" +
146 "頋\x03頩\x03飢\x03䬳\x03餩\x03馧\x03駂\x03駾\x03䯎\x03鬒\x03鱀\x03鳽\x03䳎\x03䳭\x03" +
147 "鵧\x03䳸\x03麻\x03䵖\x03黹\x03黾\x03鼅\x03鼏\x03鼖\x03鼻"
148
149var xorData string = "" + // Size: 4855 bytes
150 "\x02\x0c\x09\x02\xb0\xec\x02\xad\xd8\x02\xad\xd9\x02\x06\x07\x02\x0f\x12" +
151 "\x02\x0f\x1f\x02\x0f\x1d\x02\x01\x13\x02\x0f\x16\x02\x0f\x0b\x02\x0f3" +
152 "\x02\x0f7\x02\x0f?\x02\x0f/\x02\x0f*\x02\x0c&\x02\x0c*\x02\x0c;\x02\x0c9" +
153 "\x02\x0c%\x02\xab\xed\x02\xab\xe2\x02\xab\xe3\x02\xa9\xe0\x02\xa9\xe1" +
154 "\x02\xa9\xe6\x02\xa3\xcb\x02\xa3\xc8\x02\xa3\xc9\x02\x01#\x02\x01\x08" +
155 "\x02\x0e>\x02\x0e'\x02\x0f\x03\x02\x03\x0d\x02\x03\x09\x02\x03\x17\x02" +
156 "\x03\x0e\x02\x02\x03\x02\x011\x02\x01\x00\x02\x01\x10\x02\x03<\x02\x07" +
157 "\x0d\x02\x02\x0c\x02\x0c0\x02\x01\x03\x02\x01\x01\x02\x01 \x02\x01\x22" +
158 "\x02\x01)\x02\x01\x0a\x02\x01\x0c\x02\x02\x06\x02\x02\x02\x02\x03\x10" +
159 "\x03\x037 \x03\x0b+\x03\x02\x01\x04\x02\x01\x02\x02\x019\x02\x03\x1c\x02" +
160 "\x02$\x03\x80p$\x02\x03:\x02\x03\x0a\x03\xc1r.\x03\xc1r,\x03\xc1r\x02" +
161 "\x02\x02:\x02\x02>\x02\x02,\x02\x02\x10\x02\x02\x00\x03\xc1s<\x03\xc1s*" +
162 "\x03\xc2L$\x03\xc2L;\x02\x09)\x02\x0a\x19\x03\x83\xab\xe3\x03\x83\xab" +
163 "\xf2\x03 4\xe0\x03\x81\xab\xea\x03\x81\xab\xf3\x03 4\xef\x03\x96\xe1\xcd" +
164 "\x03\x84\xe5\xc3\x02\x0d\x11\x03\x8b\xec\xcb\x03\x94\xec\xcf\x03\x9a\xec" +
165 "\xc2\x03\x8b\xec\xdb\x03\x94\xec\xdf\x03\x9a\xec\xd2\x03\x01\x0c!\x03" +
166 "\x01\x0c#\x03ʠ\x9d\x03ʣ\x9c\x03ʢ\x9f\x03ʥ\x9e\x03ʤ\x91\x03ʧ\x90\x03ʦ\x93" +
167 "\x03ʩ\x92\x03ʨ\x95\x03\xca\xf3\xb5\x03\xca\xf0\xb4\x03\xca\xf1\xb7\x03" +
168 "\xca\xf6\xb6\x03\xca\xf7\x89\x03\xca\xf4\x88\x03\xca\xf5\x8b\x03\xca\xfa" +
169 "\x8a\x03\xca\xfb\x8d\x03\xca\xf8\x8c\x03\xca\xf9\x8f\x03\xca\xfe\x8e\x03" +
170 "\xca\xff\x81\x03\xca\xfc\x80\x03\xca\xfd\x83\x03\xca\xe2\x82\x03\xca\xe3" +
171 "\x85\x03\xca\xe0\x84\x03\xca\xe1\x87\x03\xca\xe6\x86\x03\xca\xe7\x99\x03" +
172 "\xca\xe4\x98\x03\xca\xe5\x9b\x03\xca\xea\x9a\x03\xca\xeb\x9d\x03\xca\xe8" +
173 "\x9c\x03ؓ\x89\x03ߔ\x8b\x02\x010\x03\x03\x04\x1e\x03\x04\x15\x12\x03\x0b" +
174 "\x05,\x03\x06\x04\x00\x03\x06\x04)\x03\x06\x044\x03\x06\x04<\x03\x06\x05" +
175 "\x1d\x03\x06\x06\x00\x03\x06\x06\x0a\x03\x06\x06'\x03\x06\x062\x03\x0786" +
176 "\x03\x079/\x03\x079 \x03\x07:\x0e\x03\x07:\x1b\x03\x07:%\x03\x07;/\x03" +
177 "\x07;%\x03\x074\x11\x03\x076\x09\x03\x077*\x03\x070\x01\x03\x070\x0f\x03" +
178 "\x070.\x03\x071\x16\x03\x071\x04\x03\x0710\x03\x072\x18\x03\x072-\x03" +
179 "\x073\x14\x03\x073>\x03\x07'\x09\x03\x07 \x00\x03\x07\x1f\x0b\x03\x07" +
180 "\x18#\x03\x07\x18(\x03\x07\x186\x03\x07\x18\x03\x03\x07\x19\x16\x03\x07" +
181 "\x116\x03\x07\x12'\x03\x07\x13\x10\x03\x07\x0c&\x03\x07\x0c\x08\x03\x07" +
182 "\x0c\x13\x03\x07\x0d\x02\x03\x07\x0d\x1c\x03\x07\x0b5\x03\x07\x0b\x0a" +
183 "\x03\x07\x0b\x01\x03\x07\x0b\x0f\x03\x07\x05\x00\x03\x07\x05\x09\x03\x07" +
184 "\x05\x0b\x03\x07\x07\x01\x03\x07\x07\x08\x03\x07\x00<\x03\x07\x00+\x03" +
185 "\x07\x01)\x03\x07\x01\x1b\x03\x07\x01\x08\x03\x07\x03?\x03\x0445\x03\x04" +
186 "4\x08\x03\x0454\x03\x04)/\x03\x04)5\x03\x04+\x05\x03\x04+\x14\x03\x04+ " +
187 "\x03\x04+<\x03\x04*&\x03\x04*\x22\x03\x04&8\x03\x04!\x01\x03\x04!\x22" +
188 "\x03\x04\x11+\x03\x04\x10.\x03\x04\x104\x03\x04\x13=\x03\x04\x12\x04\x03" +
189 "\x04\x12\x0a\x03\x04\x0d\x1d\x03\x04\x0d\x07\x03\x04\x0d \x03\x05<>\x03" +
190 "\x055<\x03\x055!\x03\x055#\x03\x055&\x03\x054\x1d\x03\x054\x02\x03\x054" +
191 "\x07\x03\x0571\x03\x053\x1a\x03\x053\x16\x03\x05.<\x03\x05.\x07\x03\x05)" +
192 ":\x03\x05)<\x03\x05)\x0c\x03\x05)\x15\x03\x05+-\x03\x05+5\x03\x05$\x1e" +
193 "\x03\x05$\x14\x03\x05'\x04\x03\x05'\x14\x03\x05&\x02\x03\x05\x226\x03" +
194 "\x05\x22\x0c\x03\x05\x22\x1c\x03\x05\x19\x0a\x03\x05\x1b\x09\x03\x05\x1b" +
195 "\x0c\x03\x05\x14\x07\x03\x05\x16?\x03\x05\x16\x0c\x03\x05\x0c\x05\x03" +
196 "\x05\x0e\x0f\x03\x05\x01\x0e\x03\x05\x00(\x03\x05\x030\x03\x05\x03\x06" +
197 "\x03\x0a==\x03\x0a=1\x03\x0a=,\x03\x0a=\x0c\x03\x0a??\x03\x0a<\x08\x03" +
198 "\x0a9!\x03\x0a9)\x03\x0a97\x03\x0a99\x03\x0a6\x0a\x03\x0a6\x1c\x03\x0a6" +
199 "\x17\x03\x0a7'\x03\x0a78\x03\x0a73\x03\x0a'\x01\x03\x0a'&\x03\x0a\x1f" +
200 "\x0e\x03\x0a\x1f\x03\x03\x0a\x1f3\x03\x0a\x1b/\x03\x0a\x18\x19\x03\x0a" +
201 "\x19\x01\x03\x0a\x16\x14\x03\x0a\x0e\x22\x03\x0a\x0f\x10\x03\x0a\x0f\x02" +
202 "\x03\x0a\x0f \x03\x0a\x0c\x04\x03\x0a\x0b>\x03\x0a\x0b+\x03\x0a\x08/\x03" +
203 "\x0a\x046\x03\x0a\x05\x14\x03\x0a\x00\x04\x03\x0a\x00\x10\x03\x0a\x00" +
204 "\x14\x03\x0b<3\x03\x0b;*\x03\x0b9\x22\x03\x0b9)\x03\x0b97\x03\x0b+\x10" +
205 "\x03\x0b((\x03\x0b&5\x03\x0b$\x1c\x03\x0b$\x12\x03\x0b%\x04\x03\x0b#<" +
206 "\x03\x0b#0\x03\x0b#\x0d\x03\x0b#\x19\x03\x0b!:\x03\x0b!\x1f\x03\x0b!\x00" +
207 "\x03\x0b\x1e5\x03\x0b\x1c\x1d\x03\x0b\x1d-\x03\x0b\x1d(\x03\x0b\x18.\x03" +
208 "\x0b\x18 \x03\x0b\x18\x16\x03\x0b\x14\x13\x03\x0b\x15$\x03\x0b\x15\x22" +
209 "\x03\x0b\x12\x1b\x03\x0b\x12\x10\x03\x0b\x132\x03\x0b\x13=\x03\x0b\x12" +
210 "\x18\x03\x0b\x0c&\x03\x0b\x061\x03\x0b\x06:\x03\x0b\x05#\x03\x0b\x05<" +
211 "\x03\x0b\x04\x0b\x03\x0b\x04\x04\x03\x0b\x04\x1b\x03\x0b\x042\x03\x0b" +
212 "\x041\x03\x0b\x03\x03\x03\x0b\x03\x1d\x03\x0b\x03/\x03\x0b\x03+\x03\x0b" +
213 "\x02\x1b\x03\x0b\x02\x00\x03\x0b\x01\x1e\x03\x0b\x01\x08\x03\x0b\x015" +
214 "\x03\x06\x0d9\x03\x06\x0d=\x03\x06\x0d?\x03\x02\x001\x03\x02\x003\x03" +
215 "\x02\x02\x19\x03\x02\x006\x03\x02\x02\x1b\x03\x02\x004\x03\x02\x00<\x03" +
216 "\x02\x02\x0a\x03\x02\x02\x0e\x03\x02\x01\x1a\x03\x02\x01\x07\x03\x02\x01" +
217 "\x05\x03\x02\x01\x0b\x03\x02\x01%\x03\x02\x01\x0c\x03\x02\x01\x04\x03" +
218 "\x02\x01\x1c\x03\x02\x00.\x03\x02\x002\x03\x02\x00>\x03\x02\x00\x12\x03" +
219 "\x02\x00\x16\x03\x02\x011\x03\x02\x013\x03\x02\x02 \x03\x02\x02%\x03\x02" +
220 "\x02$\x03\x02\x028\x03\x02\x02;\x03\x02\x024\x03\x02\x012\x03\x02\x022" +
221 "\x03\x02\x02/\x03\x02\x01,\x03\x02\x01\x13\x03\x02\x01\x16\x03\x02\x01" +
222 "\x11\x03\x02\x01\x1e\x03\x02\x01\x15\x03\x02\x01\x17\x03\x02\x01\x0f\x03" +
223 "\x02\x01\x08\x03\x02\x00?\x03\x02\x03\x07\x03\x02\x03\x0d\x03\x02\x03" +
224 "\x13\x03\x02\x03\x1d\x03\x02\x03\x1f\x03\x02\x00\x03\x03\x02\x00\x0d\x03" +
225 "\x02\x00\x01\x03\x02\x00\x1b\x03\x02\x00\x19\x03\x02\x00\x18\x03\x02\x00" +
226 "\x13\x03\x02\x00/\x03\x07>\x12\x03\x07<\x1f\x03\x07>\x1d\x03\x06\x1d\x0e" +
227 "\x03\x07>\x1c\x03\x07>:\x03\x07>\x13\x03\x04\x12+\x03\x07?\x03\x03\x07>" +
228 "\x02\x03\x06\x224\x03\x06\x1a.\x03\x07<%\x03\x06\x1c\x0b\x03\x0609\x03" +
229 "\x05\x1f\x01\x03\x04'\x08\x03\x93\xfd\xf5\x03\x02\x0d \x03\x02\x0d#\x03" +
230 "\x02\x0d!\x03\x02\x0d&\x03\x02\x0d\x22\x03\x02\x0d/\x03\x02\x0d,\x03\x02" +
231 "\x0d$\x03\x02\x0d'\x03\x02\x0d%\x03\x02\x0d;\x03\x02\x0d=\x03\x02\x0d?" +
232 "\x03\x099.\x03\x08\x0b7\x03\x08\x02\x14\x03\x08\x14\x0d\x03\x08.:\x03" +
233 "\x089'\x03\x0f\x0b\x18\x03\x0f\x1c1\x03\x0f\x17&\x03\x0f9\x1f\x03\x0f0" +
234 "\x0c\x03\x0e\x0a9\x03\x0e\x056\x03\x0e\x1c#\x03\x0f\x13\x0e\x03\x072\x00" +
235 "\x03\x070\x0d\x03\x072\x0b\x03\x06\x11\x18\x03\x070\x10\x03\x06\x0f(\x03" +
236 "\x072\x05\x03\x06\x0f,\x03\x073\x15\x03\x06\x07\x08\x03\x05\x16\x02\x03" +
237 "\x04\x0b \x03\x05:8\x03\x05\x16%\x03\x0a\x0d\x1f\x03\x06\x16\x10\x03\x05" +
238 "\x1d5\x03\x05*;\x03\x05\x16\x1b\x03\x04.-\x03\x06\x1a\x19\x03\x04\x03," +
239 "\x03\x0b87\x03\x04/\x0a\x03\x06\x00,\x03\x04-\x01\x03\x04\x1e-\x03\x06/(" +
240 "\x03\x0a\x0b5\x03\x06\x0e7\x03\x06\x07.\x03\x0597\x03\x0a*%\x03\x0760" +
241 "\x03\x06\x0c;\x03\x05'\x00\x03\x072.\x03\x072\x08\x03\x06=\x01\x03\x06" +
242 "\x05\x1b\x03\x06\x06\x12\x03\x06$=\x03\x06'\x0d\x03\x04\x11\x0f\x03\x076" +
243 ",\x03\x06\x07;\x03\x06.,\x03\x86\xf9\xea\x03\x8f\xff\xeb\x02\x092\x02" +
244 "\x095\x02\x094\x02\x09;\x02\x09>\x02\x098\x02\x09*\x02\x09/\x02\x09,\x02" +
245 "\x09%\x02\x09&\x02\x09#\x02\x09 \x02\x08!\x02\x08%\x02\x08$\x02\x08+\x02" +
246 "\x08.\x02\x08*\x02\x08&\x02\x088\x02\x08>\x02\x084\x02\x086\x02\x080\x02" +
247 "\x08\x10\x02\x08\x17\x02\x08\x12\x02\x08\x1d\x02\x08\x1f\x02\x08\x13\x02" +
248 "\x08\x15\x02\x08\x14\x02\x08\x0c\x03\x8b\xfd\xd0\x03\x81\xec\xc6\x03\x87" +
249 "\xe0\x8a\x03-2\xe3\x03\x80\xef\xe4\x03-2\xea\x03\x88\xe6\xeb\x03\x8e\xe6" +
250 "\xe8\x03\x84\xe6\xe9\x03\x97\xe6\xee\x03-2\xf9\x03-2\xf6\x03\x8e\xe3\xad" +
251 "\x03\x80\xe3\x92\x03\x88\xe3\x90\x03\x8e\xe3\x90\x03\x80\xe3\x97\x03\x88" +
252 "\xe3\x95\x03\x88\xfe\xcb\x03\x8e\xfe\xca\x03\x84\xfe\xcd\x03\x91\xef\xc9" +
253 "\x03-2\xc1\x03-2\xc0\x03-2\xcb\x03\x88@\x09\x03\x8e@\x08\x03\x8f\xe0\xf5" +
254 "\x03\x8e\xe6\xf9\x03\x8e\xe0\xfa\x03\x93\xff\xf4\x03\x84\xee\xd3\x03\x0b" +
255 "(\x04\x023 \x021;\x02\x01*\x03\x0b#\x10\x03\x0b 0\x03\x0b!\x10\x03\x0b!0" +
256 "\x03\x07\x15\x08\x03\x09?5\x03\x07\x1f\x08\x03\x07\x17\x0b\x03\x09\x1f" +
257 "\x15\x03\x0b\x1c7\x03\x0a+#\x03\x06\x1a\x1b\x03\x06\x1a\x14\x03\x0a\x01" +
258 "\x18\x03\x06#\x1b\x03\x0a2\x0c\x03\x0a\x01\x04\x03\x09#;\x03\x08='\x03" +
259 "\x08\x1a\x0a\x03\x07</\x03\x07:+\x03\x07\x07*\x03\x06&\x1c\x03\x09\x0c" +
260 "\x16\x03\x09\x10\x0e\x03\x08'\x0f\x03\x08+\x09\x03\x074%\x03\x06!3\x03" +
261 "\x06\x03+\x03\x0b\x1e\x19\x03\x0a))\x03\x09\x08\x19\x03\x08,\x05\x03\x07" +
262 "<2\x03\x06\x1c>\x03\x0a\x111\x03\x09\x1b\x09\x03\x073.\x03\x07\x01\x00" +
263 "\x03\x09/,\x03\x07#>\x03\x07\x048\x03\x0a\x1f\x22\x03\x098>\x03\x09\x11" +
264 "\x00\x03\x08/\x17\x03\x06'\x22\x03\x0b\x1a+\x03\x0a\x22\x19\x03\x0a/1" +
265 "\x03\x0974\x03\x09\x0f\x22\x03\x08,\x22\x03\x08?\x14\x03\x07$5\x03\x07<3" +
266 "\x03\x07=*\x03\x07\x13\x18\x03\x068\x0a\x03\x06\x09\x16\x03\x06\x13\x00" +
267 "\x03\x08\x067\x03\x08\x01\x03\x03\x08\x12\x1d\x03\x07+7\x03\x06(;\x03" +
268 "\x06\x1c?\x03\x07\x0e\x17\x03\x0a\x06\x1d\x03\x0a\x19\x07\x03\x08\x14$" +
269 "\x03\x07$;\x03\x08,$\x03\x08\x06\x0d\x03\x07\x16\x0a\x03\x06>>\x03\x0a" +
270 "\x06\x12\x03\x0a\x14)\x03\x09\x0d\x1f\x03\x09\x12\x17\x03\x09\x19\x01" +
271 "\x03\x08\x11 \x03\x08\x1d'\x03\x06<\x1a\x03\x0a.\x00\x03\x07'\x18\x03" +
272 "\x0a\x22\x08\x03\x08\x0d\x0a\x03\x08\x13)\x03\x07*)\x03\x06<,\x03\x07" +
273 "\x0b\x1a\x03\x09.\x14\x03\x09\x0d\x1e\x03\x07\x0e#\x03\x0b\x1d'\x03\x0a" +
274 "\x0a8\x03\x09%2\x03\x08+&\x03\x080\x12\x03\x0a)4\x03\x08\x06\x1f\x03\x0b" +
275 "\x1b\x1a\x03\x0a\x1b\x0f\x03\x0b\x1d*\x03\x09\x16$\x03\x090\x11\x03\x08" +
276 "\x11\x08\x03\x0a*(\x03\x0a\x042\x03\x089,\x03\x074'\x03\x07\x0f\x05\x03" +
277 "\x09\x0b\x0a\x03\x07\x1b\x01\x03\x09\x17:\x03\x09.\x0d\x03\x07.\x11\x03" +
278 "\x09+\x15\x03\x080\x13\x03\x0b\x1f\x19\x03\x0a \x11\x03\x0a\x220\x03\x09" +
279 "\x07;\x03\x08\x16\x1c\x03\x07,\x13\x03\x07\x0e/\x03\x06\x221\x03\x0a." +
280 "\x0a\x03\x0a7\x02\x03\x0a\x032\x03\x0a\x1d.\x03\x091\x06\x03\x09\x19:" +
281 "\x03\x08\x02/\x03\x060+\x03\x06\x0f-\x03\x06\x1c\x1f\x03\x06\x1d\x07\x03" +
282 "\x0a,\x11\x03\x09=\x0d\x03\x09\x0b;\x03\x07\x1b/\x03\x0a\x1f:\x03\x09 " +
283 "\x1f\x03\x09.\x10\x03\x094\x0b\x03\x09\x1a1\x03\x08#\x1a\x03\x084\x1d" +
284 "\x03\x08\x01\x1f\x03\x08\x11\x22\x03\x07'8\x03\x07\x1a>\x03\x0757\x03" +
285 "\x06&9\x03\x06+\x11\x03\x0a.\x0b\x03\x0a,>\x03\x0a4#\x03\x08%\x17\x03" +
286 "\x07\x05\x22\x03\x07\x0c\x0b\x03\x0a\x1d+\x03\x0a\x19\x16\x03\x09+\x1f" +
287 "\x03\x09\x08\x0b\x03\x08\x16\x18\x03\x08+\x12\x03\x0b\x1d\x0c\x03\x0a=" +
288 "\x10\x03\x0a\x09\x0d\x03\x0a\x10\x11\x03\x09&0\x03\x08(\x1f\x03\x087\x07" +
289 "\x03\x08\x185\x03\x07'6\x03\x06.\x05\x03\x06=\x04\x03\x06;;\x03\x06\x06," +
290 "\x03\x0b\x18>\x03\x08\x00\x18\x03\x06 \x03\x03\x06<\x00\x03\x09%\x18\x03" +
291 "\x0b\x1c<\x03\x0a%!\x03\x0a\x09\x12\x03\x0a\x16\x02\x03\x090'\x03\x09" +
292 "\x0e=\x03\x08 \x0e\x03\x08>\x03\x03\x074>\x03\x06&?\x03\x06\x19\x09\x03" +
293 "\x06?(\x03\x0a-\x0e\x03\x09:3\x03\x098:\x03\x09\x12\x0b\x03\x09\x1d\x17" +
294 "\x03\x087\x05\x03\x082\x14\x03\x08\x06%\x03\x08\x13\x1f\x03\x06\x06\x0e" +
295 "\x03\x0a\x22<\x03\x09/<\x03\x06>+\x03\x0a'?\x03\x0a\x13\x0c\x03\x09\x10<" +
296 "\x03\x07\x1b=\x03\x0a\x19\x13\x03\x09\x22\x1d\x03\x09\x07\x0d\x03\x08)" +
297 "\x1c\x03\x06=\x1a\x03\x0a/4\x03\x0a7\x11\x03\x0a\x16:\x03\x09?3\x03\x09:" +
298 "/\x03\x09\x05\x0a\x03\x09\x14\x06\x03\x087\x22\x03\x080\x07\x03\x08\x1a" +
299 "\x1f\x03\x07\x04(\x03\x07\x04\x09\x03\x06 %\x03\x06<\x08\x03\x0a+\x14" +
300 "\x03\x09\x1d\x16\x03\x0a70\x03\x08 >\x03\x0857\x03\x070\x0a\x03\x06=\x12" +
301 "\x03\x06\x16%\x03\x06\x1d,\x03\x099#\x03\x09\x10>\x03\x07 \x1e\x03\x08" +
302 "\x0c<\x03\x08\x0b\x18\x03\x08\x15+\x03\x08,:\x03\x08%\x22\x03\x07\x0a$" +
303 "\x03\x0b\x1c=\x03\x07+\x08\x03\x0a/\x05\x03\x0a \x07\x03\x0a\x12'\x03" +
304 "\x09#\x11\x03\x08\x1b\x15\x03\x0a\x06\x01\x03\x09\x1c\x1b\x03\x0922\x03" +
305 "\x07\x14<\x03\x07\x09\x04\x03\x061\x04\x03\x07\x0e\x01\x03\x0a\x13\x18" +
306 "\x03\x0a-\x0c\x03\x0a?\x0d\x03\x0a\x09\x0a\x03\x091&\x03\x0a/\x0b\x03" +
307 "\x08$<\x03\x083\x1d\x03\x08\x0c$\x03\x08\x0d\x07\x03\x08\x0d?\x03\x08" +
308 "\x0e\x14\x03\x065\x0a\x03\x08\x1a#\x03\x08\x16#\x03\x0702\x03\x07\x03" +
309 "\x1a\x03\x06(\x1d\x03\x06+\x1b\x03\x06\x0b\x05\x03\x06\x0b\x17\x03\x06" +
310 "\x0c\x04\x03\x06\x1e\x19\x03\x06+0\x03\x062\x18\x03\x0b\x16\x1e\x03\x0a+" +
311 "\x16\x03\x0a-?\x03\x0a#:\x03\x0a#\x10\x03\x0a%$\x03\x0a>+\x03\x0a01\x03" +
312 "\x0a1\x10\x03\x0a\x099\x03\x0a\x0a\x12\x03\x0a\x19\x1f\x03\x0a\x19\x12" +
313 "\x03\x09*)\x03\x09-\x16\x03\x09.1\x03\x09.2\x03\x09<\x0e\x03\x09> \x03" +
314 "\x093\x12\x03\x09\x0b\x01\x03\x09\x1c2\x03\x09\x11\x1c\x03\x09\x15%\x03" +
315 "\x08,&\x03\x08!\x22\x03\x089(\x03\x08\x0b\x1a\x03\x08\x0d2\x03\x08\x0c" +
316 "\x04\x03\x08\x0c\x06\x03\x08\x0c\x1f\x03\x08\x0c\x0c\x03\x08\x0f\x1f\x03" +
317 "\x08\x0f\x1d\x03\x08\x00\x14\x03\x08\x03\x14\x03\x08\x06\x16\x03\x08\x1e" +
318 "#\x03\x08\x11\x11\x03\x08\x10\x18\x03\x08\x14(\x03\x07)\x1e\x03\x07.1" +
319 "\x03\x07 $\x03\x07 '\x03\x078\x08\x03\x07\x0d0\x03\x07\x0f7\x03\x07\x05#" +
320 "\x03\x07\x05\x1a\x03\x07\x1a7\x03\x07\x1d-\x03\x07\x17\x10\x03\x06)\x1f" +
321 "\x03\x062\x0b\x03\x066\x16\x03\x06\x09\x11\x03\x09(\x1e\x03\x07!5\x03" +
322 "\x0b\x11\x16\x03\x0a/\x04\x03\x0a,\x1a\x03\x0b\x173\x03\x0a,1\x03\x0a/5" +
323 "\x03\x0a\x221\x03\x0a\x22\x0d\x03\x0a?%\x03\x0a<,\x03\x0a?#\x03\x0a>\x19" +
324 "\x03\x0a\x08&\x03\x0a\x0b\x0e\x03\x0a\x0c:\x03\x0a\x0c+\x03\x0a\x03\x22" +
325 "\x03\x0a\x06)\x03\x0a\x11\x10\x03\x0a\x11\x1a\x03\x0a\x17-\x03\x0a\x14(" +
326 "\x03\x09)\x1e\x03\x09/\x09\x03\x09.\x00\x03\x09,\x07\x03\x09/*\x03\x09-9" +
327 "\x03\x09\x228\x03\x09%\x09\x03\x09:\x12\x03\x09;\x1d\x03\x09?\x06\x03" +
328 "\x093%\x03\x096\x05\x03\x096\x08\x03\x097\x02\x03\x09\x07,\x03\x09\x04," +
329 "\x03\x09\x1f\x16\x03\x09\x11\x03\x03\x09\x11\x12\x03\x09\x168\x03\x08*" +
330 "\x05\x03\x08/2\x03\x084:\x03\x08\x22+\x03\x08 0\x03\x08&\x0a\x03\x08;" +
331 "\x10\x03\x08>$\x03\x08>\x18\x03\x0829\x03\x082:\x03\x081,\x03\x081<\x03" +
332 "\x081\x1c\x03\x087#\x03\x087*\x03\x08\x09'\x03\x08\x00\x1d\x03\x08\x05-" +
333 "\x03\x08\x1f4\x03\x08\x1d\x04\x03\x08\x16\x0f\x03\x07*7\x03\x07'!\x03" +
334 "\x07%\x1b\x03\x077\x0c\x03\x07\x0c1\x03\x07\x0c.\x03\x07\x00\x06\x03\x07" +
335 "\x01\x02\x03\x07\x010\x03\x07\x06=\x03\x07\x01\x03\x03\x07\x01\x13\x03" +
336 "\x07\x06\x06\x03\x07\x05\x0a\x03\x07\x1f\x09\x03\x07\x17:\x03\x06*1\x03" +
337 "\x06-\x1d\x03\x06\x223\x03\x062:\x03\x060$\x03\x066\x1e\x03\x064\x12\x03" +
338 "\x0645\x03\x06\x0b\x00\x03\x06\x0b7\x03\x06\x07\x1f\x03\x06\x15\x12\x03" +
339 "\x0c\x05\x0f\x03\x0b+\x0b\x03\x0b+-\x03\x06\x16\x1b\x03\x06\x15\x17\x03" +
340 "\x89\xca\xea\x03\x89\xca\xe8\x03\x0c8\x10\x03\x0c8\x01\x03\x0c8\x0f\x03" +
341 "\x0d8%\x03\x0d8!\x03\x0c8-\x03\x0c8/\x03\x0c8+\x03\x0c87\x03\x0c85\x03" +
342 "\x0c9\x09\x03\x0c9\x0d\x03\x0c9\x0f\x03\x0c9\x0b\x03\xcfu\x0c\x03\xcfu" +
343 "\x0f\x03\xcfu\x0e\x03\xcfu\x09\x03\x0c9\x10\x03\x0d9\x0c\x03\xcf`;\x03" +
344 "\xcf`>\x03\xcf`9\x03\xcf`8\x03\xcf`7\x03\xcf`*\x03\xcf`-\x03\xcf`,\x03" +
345 "\x0d\x1b\x1a\x03\x0d\x1b&\x03\x0c=.\x03\x0c=%\x03\x0c>\x1e\x03\x0c>\x14" +
346 "\x03\x0c?\x06\x03\x0c?\x0b\x03\x0c?\x0c\x03\x0c?\x0d\x03\x0c?\x02\x03" +
347 "\x0c>\x0f\x03\x0c>\x08\x03\x0c>\x09\x03\x0c>,\x03\x0c>\x0c\x03\x0c?\x13" +
348 "\x03\x0c?\x16\x03\x0c?\x15\x03\x0c?\x1c\x03\x0c?\x1f\x03\x0c?\x1d\x03" +
349 "\x0c?\x1a\x03\x0c?\x17\x03\x0c?\x08\x03\x0c?\x09\x03\x0c?\x0e\x03\x0c?" +
350 "\x04\x03\x0c?\x05\x03\x0c<?\x03\x0c=\x00\x03\x0c=\x06\x03\x0c=\x05\x03" +
351 "\x0c=\x0c\x03\x0c=\x0f\x03\x0c=\x0d\x03\x0c=\x0b\x03\x0c=\x07\x03\x0c=" +
352 "\x19\x03\x0c=\x15\x03\x0c=\x11\x03\x0c=1\x03\x0c=3\x03\x0c=0\x03\x0c=>" +
353 "\x03\x0c=2\x03\x0c=6\x03\x0c<\x07\x03\x0c<\x05\x03\x0e:!\x03\x0e:#\x03" +
354 "\x0e8\x09\x03\x0e:&\x03\x0e8\x0b\x03\x0e:$\x03\x0e:,\x03\x0e8\x1a\x03" +
355 "\x0e8\x1e\x03\x0e:*\x03\x0e:7\x03\x0e:5\x03\x0e:;\x03\x0e:\x15\x03\x0e:<" +
356 "\x03\x0e:4\x03\x0e:'\x03\x0e:-\x03\x0e:%\x03\x0e:?\x03\x0e:=\x03\x0e:)" +
357 "\x03\x0e:/\x03\xcfs'\x03\x0d=\x0f\x03\x0d+*\x03\x0d99\x03\x0d9;\x03\x0d9" +
358 "?\x03\x0d)\x0d\x03\x0d(%\x02\x01\x18\x02\x01(\x02\x01\x1e\x03\x0f$!\x03" +
359 "\x0f87\x03\x0f4\x0e\x03\x0f5\x1d\x03\x06'\x03\x03\x0f\x08\x18\x03\x0f" +
360 "\x0d\x1b\x03\x0e2=\x03\x0e;\x08\x03\x0e:\x0b\x03\x0e\x06$\x03\x0e\x0d)" +
361 "\x03\x0e\x16\x1f\x03\x0e\x16\x1b\x03\x0d$\x0a\x03\x05,\x1d\x03\x0d. \x03" +
362 "\x0d.#\x03\x0c(/\x03\x09%\x02\x03\x0d90\x03\x0d\x0e4\x03\x0d\x0d\x0f\x03" +
363 "\x0c#\x00\x03\x0c,\x1e\x03\x0c2\x0e\x03\x0c\x01\x17\x03\x0c\x09:\x03\x0e" +
364 "\x173\x03\x0c\x08\x03\x03\x0c\x11\x07\x03\x0c\x10\x18\x03\x0c\x1f\x1c" +
365 "\x03\x0c\x19\x0e\x03\x0c\x1a\x1f\x03\x0f0>\x03\x0b->\x03\x0b<+\x03\x0b8" +
366 "\x13\x03\x0b\x043\x03\x0b\x14\x03\x03\x0b\x16%\x03\x0d\x22&\x03\x0b\x1a" +
367 "\x1a\x03\x0b\x1a\x04\x03\x0a%9\x03\x0a&2\x03\x0a&0\x03\x0a!\x1a\x03\x0a!" +
368 "7\x03\x0a5\x10\x03\x0a=4\x03\x0a?\x0e\x03\x0a>\x10\x03\x0a\x00 \x03\x0a" +
369 "\x0f:\x03\x0a\x0f9\x03\x0a\x0b\x0a\x03\x0a\x17%\x03\x0a\x1b-\x03\x09-" +
370 "\x1a\x03\x09,4\x03\x09.,\x03\x09)\x09\x03\x096!\x03\x091\x1f\x03\x093" +
371 "\x16\x03\x0c+\x1f\x03\x098 \x03\x098=\x03\x0c(\x1a\x03\x0c(\x16\x03\x09" +
372 "\x0a+\x03\x09\x16\x12\x03\x09\x13\x0e\x03\x09\x153\x03\x08)!\x03\x09\x1a" +
373 "\x01\x03\x09\x18\x01\x03\x08%#\x03\x08>\x22\x03\x08\x05%\x03\x08\x02*" +
374 "\x03\x08\x15;\x03\x08\x1b7\x03\x0f\x07\x1d\x03\x0f\x04\x03\x03\x070\x0c" +
375 "\x03\x07;\x0b\x03\x07\x08\x17\x03\x07\x12\x06\x03\x06/-\x03\x0671\x03" +
376 "\x065+\x03\x06>7\x03\x06\x049\x03\x05+\x1e\x03\x05,\x17\x03\x05 \x1d\x03" +
377 "\x05\x22\x05\x03\x050\x1d"
378
379// lookup returns the trie value for the first UTF-8 encoding in s and
380// the width in bytes of this encoding. The size will be 0 if s does not
381// hold enough bytes to complete the encoding. len(s) must be greater than 0.
382func (t *idnaTrie) lookup(s []byte) (v uint16, sz int) {
383 c0 := s[0]
384 switch {
385 case c0 < 0x80: // is ASCII
386 return idnaValues[c0], 1
387 case c0 < 0xC2:
388 return 0, 1 // Illegal UTF-8: not a starter, not ASCII.
389 case c0 < 0xE0: // 2-byte UTF-8
390 if len(s) < 2 {
391 return 0, 0
392 }
393 i := idnaIndex[c0]
394 c1 := s[1]
395 if c1 < 0x80 || 0xC0 <= c1 {
396 return 0, 1 // Illegal UTF-8: not a continuation byte.
397 }
398 return t.lookupValue(uint32(i), c1), 2
399 case c0 < 0xF0: // 3-byte UTF-8
400 if len(s) < 3 {
401 return 0, 0
402 }
403 i := idnaIndex[c0]
404 c1 := s[1]
405 if c1 < 0x80 || 0xC0 <= c1 {
406 return 0, 1 // Illegal UTF-8: not a continuation byte.
407 }
408 o := uint32(i)<<6 + uint32(c1)
409 i = idnaIndex[o]
410 c2 := s[2]
411 if c2 < 0x80 || 0xC0 <= c2 {
412 return 0, 2 // Illegal UTF-8: not a continuation byte.
413 }
414 return t.lookupValue(uint32(i), c2), 3
415 case c0 < 0xF8: // 4-byte UTF-8
416 if len(s) < 4 {
417 return 0, 0
418 }
419 i := idnaIndex[c0]
420 c1 := s[1]
421 if c1 < 0x80 || 0xC0 <= c1 {
422 return 0, 1 // Illegal UTF-8: not a continuation byte.
423 }
424 o := uint32(i)<<6 + uint32(c1)
425 i = idnaIndex[o]
426 c2 := s[2]
427 if c2 < 0x80 || 0xC0 <= c2 {
428 return 0, 2 // Illegal UTF-8: not a continuation byte.
429 }
430 o = uint32(i)<<6 + uint32(c2)
431 i = idnaIndex[o]
432 c3 := s[3]
433 if c3 < 0x80 || 0xC0 <= c3 {
434 return 0, 3 // Illegal UTF-8: not a continuation byte.
435 }
436 return t.lookupValue(uint32(i), c3), 4
437 }
438 // Illegal rune
439 return 0, 1
440}
441
442// lookupUnsafe returns the trie value for the first UTF-8 encoding in s.
443// s must start with a full and valid UTF-8 encoded rune.
444func (t *idnaTrie) lookupUnsafe(s []byte) uint16 {
445 c0 := s[0]
446 if c0 < 0x80 { // is ASCII
447 return idnaValues[c0]
448 }
449 i := idnaIndex[c0]
450 if c0 < 0xE0 { // 2-byte UTF-8
451 return t.lookupValue(uint32(i), s[1])
452 }
453 i = idnaIndex[uint32(i)<<6+uint32(s[1])]
454 if c0 < 0xF0 { // 3-byte UTF-8
455 return t.lookupValue(uint32(i), s[2])
456 }
457 i = idnaIndex[uint32(i)<<6+uint32(s[2])]
458 if c0 < 0xF8 { // 4-byte UTF-8
459 return t.lookupValue(uint32(i), s[3])
460 }
461 return 0
462}
463
464// lookupString returns the trie value for the first UTF-8 encoding in s and
465// the width in bytes of this encoding. The size will be 0 if s does not
466// hold enough bytes to complete the encoding. len(s) must be greater than 0.
467func (t *idnaTrie) lookupString(s string) (v uint16, sz int) {
468 c0 := s[0]
469 switch {
470 case c0 < 0x80: // is ASCII
471 return idnaValues[c0], 1
472 case c0 < 0xC2:
473 return 0, 1 // Illegal UTF-8: not a starter, not ASCII.
474 case c0 < 0xE0: // 2-byte UTF-8
475 if len(s) < 2 {
476 return 0, 0
477 }
478 i := idnaIndex[c0]
479 c1 := s[1]
480 if c1 < 0x80 || 0xC0 <= c1 {
481 return 0, 1 // Illegal UTF-8: not a continuation byte.
482 }
483 return t.lookupValue(uint32(i), c1), 2
484 case c0 < 0xF0: // 3-byte UTF-8
485 if len(s) < 3 {
486 return 0, 0
487 }
488 i := idnaIndex[c0]
489 c1 := s[1]
490 if c1 < 0x80 || 0xC0 <= c1 {
491 return 0, 1 // Illegal UTF-8: not a continuation byte.
492 }
493 o := uint32(i)<<6 + uint32(c1)
494 i = idnaIndex[o]
495 c2 := s[2]
496 if c2 < 0x80 || 0xC0 <= c2 {
497 return 0, 2 // Illegal UTF-8: not a continuation byte.
498 }
499 return t.lookupValue(uint32(i), c2), 3
500 case c0 < 0xF8: // 4-byte UTF-8
501 if len(s) < 4 {
502 return 0, 0
503 }
504 i := idnaIndex[c0]
505 c1 := s[1]
506 if c1 < 0x80 || 0xC0 <= c1 {
507 return 0, 1 // Illegal UTF-8: not a continuation byte.
508 }
509 o := uint32(i)<<6 + uint32(c1)
510 i = idnaIndex[o]
511 c2 := s[2]
512 if c2 < 0x80 || 0xC0 <= c2 {
513 return 0, 2 // Illegal UTF-8: not a continuation byte.
514 }
515 o = uint32(i)<<6 + uint32(c2)
516 i = idnaIndex[o]
517 c3 := s[3]
518 if c3 < 0x80 || 0xC0 <= c3 {
519 return 0, 3 // Illegal UTF-8: not a continuation byte.
520 }
521 return t.lookupValue(uint32(i), c3), 4
522 }
523 // Illegal rune
524 return 0, 1
525}
526
527// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s.
528// s must start with a full and valid UTF-8 encoded rune.
529func (t *idnaTrie) lookupStringUnsafe(s string) uint16 {
530 c0 := s[0]
531 if c0 < 0x80 { // is ASCII
532 return idnaValues[c0]
533 }
534 i := idnaIndex[c0]
535 if c0 < 0xE0 { // 2-byte UTF-8
536 return t.lookupValue(uint32(i), s[1])
537 }
538 i = idnaIndex[uint32(i)<<6+uint32(s[1])]
539 if c0 < 0xF0 { // 3-byte UTF-8
540 return t.lookupValue(uint32(i), s[2])
541 }
542 i = idnaIndex[uint32(i)<<6+uint32(s[2])]
543 if c0 < 0xF8 { // 4-byte UTF-8
544 return t.lookupValue(uint32(i), s[3])
545 }
546 return 0
547}
548
549// idnaTrie. Total size: 29404 bytes (28.71 KiB). Checksum: 848c45acb5f7991c.
550type idnaTrie struct{}
551
552func newIdnaTrie(i int) *idnaTrie {
553 return &idnaTrie{}
554}
555
556// lookupValue determines the type of block n and looks up the value for b.
557func (t *idnaTrie) lookupValue(n uint32, b byte) uint16 {
558 switch {
559 case n < 125:
560 return uint16(idnaValues[n<<6+uint32(b)])
561 default:
562 n -= 125
563 return uint16(idnaSparse.lookup(n, b))
564 }
565}
566
567// idnaValues: 127 blocks, 8128 entries, 16256 bytes
568// The third block is the zero block.
569var idnaValues = [8128]uint16{
570 // Block 0x0, offset 0x0
571 0x00: 0x0080, 0x01: 0x0080, 0x02: 0x0080, 0x03: 0x0080, 0x04: 0x0080, 0x05: 0x0080,
572 0x06: 0x0080, 0x07: 0x0080, 0x08: 0x0080, 0x09: 0x0080, 0x0a: 0x0080, 0x0b: 0x0080,
573 0x0c: 0x0080, 0x0d: 0x0080, 0x0e: 0x0080, 0x0f: 0x0080, 0x10: 0x0080, 0x11: 0x0080,
574 0x12: 0x0080, 0x13: 0x0080, 0x14: 0x0080, 0x15: 0x0080, 0x16: 0x0080, 0x17: 0x0080,
575 0x18: 0x0080, 0x19: 0x0080, 0x1a: 0x0080, 0x1b: 0x0080, 0x1c: 0x0080, 0x1d: 0x0080,
576 0x1e: 0x0080, 0x1f: 0x0080, 0x20: 0x0080, 0x21: 0x0080, 0x22: 0x0080, 0x23: 0x0080,
577 0x24: 0x0080, 0x25: 0x0080, 0x26: 0x0080, 0x27: 0x0080, 0x28: 0x0080, 0x29: 0x0080,
578 0x2a: 0x0080, 0x2b: 0x0080, 0x2c: 0x0080, 0x2d: 0x0008, 0x2e: 0x0008, 0x2f: 0x0080,
579 0x30: 0x0008, 0x31: 0x0008, 0x32: 0x0008, 0x33: 0x0008, 0x34: 0x0008, 0x35: 0x0008,
580 0x36: 0x0008, 0x37: 0x0008, 0x38: 0x0008, 0x39: 0x0008, 0x3a: 0x0080, 0x3b: 0x0080,
581 0x3c: 0x0080, 0x3d: 0x0080, 0x3e: 0x0080, 0x3f: 0x0080,
582 // Block 0x1, offset 0x40
583 0x40: 0x0080, 0x41: 0xe105, 0x42: 0xe105, 0x43: 0xe105, 0x44: 0xe105, 0x45: 0xe105,
584 0x46: 0xe105, 0x47: 0xe105, 0x48: 0xe105, 0x49: 0xe105, 0x4a: 0xe105, 0x4b: 0xe105,
585 0x4c: 0xe105, 0x4d: 0xe105, 0x4e: 0xe105, 0x4f: 0xe105, 0x50: 0xe105, 0x51: 0xe105,
586 0x52: 0xe105, 0x53: 0xe105, 0x54: 0xe105, 0x55: 0xe105, 0x56: 0xe105, 0x57: 0xe105,
587 0x58: 0xe105, 0x59: 0xe105, 0x5a: 0xe105, 0x5b: 0x0080, 0x5c: 0x0080, 0x5d: 0x0080,
588 0x5e: 0x0080, 0x5f: 0x0080, 0x60: 0x0080, 0x61: 0x0008, 0x62: 0x0008, 0x63: 0x0008,
589 0x64: 0x0008, 0x65: 0x0008, 0x66: 0x0008, 0x67: 0x0008, 0x68: 0x0008, 0x69: 0x0008,
590 0x6a: 0x0008, 0x6b: 0x0008, 0x6c: 0x0008, 0x6d: 0x0008, 0x6e: 0x0008, 0x6f: 0x0008,
591 0x70: 0x0008, 0x71: 0x0008, 0x72: 0x0008, 0x73: 0x0008, 0x74: 0x0008, 0x75: 0x0008,
592 0x76: 0x0008, 0x77: 0x0008, 0x78: 0x0008, 0x79: 0x0008, 0x7a: 0x0008, 0x7b: 0x0080,
593 0x7c: 0x0080, 0x7d: 0x0080, 0x7e: 0x0080, 0x7f: 0x0080,
594 // Block 0x2, offset 0x80
595 // Block 0x3, offset 0xc0
596 0xc0: 0x0040, 0xc1: 0x0040, 0xc2: 0x0040, 0xc3: 0x0040, 0xc4: 0x0040, 0xc5: 0x0040,
597 0xc6: 0x0040, 0xc7: 0x0040, 0xc8: 0x0040, 0xc9: 0x0040, 0xca: 0x0040, 0xcb: 0x0040,
598 0xcc: 0x0040, 0xcd: 0x0040, 0xce: 0x0040, 0xcf: 0x0040, 0xd0: 0x0040, 0xd1: 0x0040,
599 0xd2: 0x0040, 0xd3: 0x0040, 0xd4: 0x0040, 0xd5: 0x0040, 0xd6: 0x0040, 0xd7: 0x0040,
600 0xd8: 0x0040, 0xd9: 0x0040, 0xda: 0x0040, 0xdb: 0x0040, 0xdc: 0x0040, 0xdd: 0x0040,
601 0xde: 0x0040, 0xdf: 0x0040, 0xe0: 0x000a, 0xe1: 0x0018, 0xe2: 0x0018, 0xe3: 0x0018,
602 0xe4: 0x0018, 0xe5: 0x0018, 0xe6: 0x0018, 0xe7: 0x0018, 0xe8: 0x001a, 0xe9: 0x0018,
603 0xea: 0x0039, 0xeb: 0x0018, 0xec: 0x0018, 0xed: 0x03c0, 0xee: 0x0018, 0xef: 0x004a,
604 0xf0: 0x0018, 0xf1: 0x0018, 0xf2: 0x0069, 0xf3: 0x0079, 0xf4: 0x008a, 0xf5: 0x0005,
605 0xf6: 0x0018, 0xf7: 0x0008, 0xf8: 0x00aa, 0xf9: 0x00c9, 0xfa: 0x00d9, 0xfb: 0x0018,
606 0xfc: 0x00e9, 0xfd: 0x0119, 0xfe: 0x0149, 0xff: 0x0018,
607 // Block 0x4, offset 0x100
608 0x100: 0xe00d, 0x101: 0x0008, 0x102: 0xe00d, 0x103: 0x0008, 0x104: 0xe00d, 0x105: 0x0008,
609 0x106: 0xe00d, 0x107: 0x0008, 0x108: 0xe00d, 0x109: 0x0008, 0x10a: 0xe00d, 0x10b: 0x0008,
610 0x10c: 0xe00d, 0x10d: 0x0008, 0x10e: 0xe00d, 0x10f: 0x0008, 0x110: 0xe00d, 0x111: 0x0008,
611 0x112: 0xe00d, 0x113: 0x0008, 0x114: 0xe00d, 0x115: 0x0008, 0x116: 0xe00d, 0x117: 0x0008,
612 0x118: 0xe00d, 0x119: 0x0008, 0x11a: 0xe00d, 0x11b: 0x0008, 0x11c: 0xe00d, 0x11d: 0x0008,
613 0x11e: 0xe00d, 0x11f: 0x0008, 0x120: 0xe00d, 0x121: 0x0008, 0x122: 0xe00d, 0x123: 0x0008,
614 0x124: 0xe00d, 0x125: 0x0008, 0x126: 0xe00d, 0x127: 0x0008, 0x128: 0xe00d, 0x129: 0x0008,
615 0x12a: 0xe00d, 0x12b: 0x0008, 0x12c: 0xe00d, 0x12d: 0x0008, 0x12e: 0xe00d, 0x12f: 0x0008,
616 0x130: 0x0179, 0x131: 0x0008, 0x132: 0x0035, 0x133: 0x004d, 0x134: 0xe00d, 0x135: 0x0008,
617 0x136: 0xe00d, 0x137: 0x0008, 0x138: 0x0008, 0x139: 0xe01d, 0x13a: 0x0008, 0x13b: 0xe03d,
618 0x13c: 0x0008, 0x13d: 0xe01d, 0x13e: 0x0008, 0x13f: 0x0199,
619 // Block 0x5, offset 0x140
620 0x140: 0x0199, 0x141: 0xe01d, 0x142: 0x0008, 0x143: 0xe03d, 0x144: 0x0008, 0x145: 0xe01d,
621 0x146: 0x0008, 0x147: 0xe07d, 0x148: 0x0008, 0x149: 0x01b9, 0x14a: 0xe00d, 0x14b: 0x0008,
622 0x14c: 0xe00d, 0x14d: 0x0008, 0x14e: 0xe00d, 0x14f: 0x0008, 0x150: 0xe00d, 0x151: 0x0008,
623 0x152: 0xe00d, 0x153: 0x0008, 0x154: 0xe00d, 0x155: 0x0008, 0x156: 0xe00d, 0x157: 0x0008,
624 0x158: 0xe00d, 0x159: 0x0008, 0x15a: 0xe00d, 0x15b: 0x0008, 0x15c: 0xe00d, 0x15d: 0x0008,
625 0x15e: 0xe00d, 0x15f: 0x0008, 0x160: 0xe00d, 0x161: 0x0008, 0x162: 0xe00d, 0x163: 0x0008,
626 0x164: 0xe00d, 0x165: 0x0008, 0x166: 0xe00d, 0x167: 0x0008, 0x168: 0xe00d, 0x169: 0x0008,
627 0x16a: 0xe00d, 0x16b: 0x0008, 0x16c: 0xe00d, 0x16d: 0x0008, 0x16e: 0xe00d, 0x16f: 0x0008,
628 0x170: 0xe00d, 0x171: 0x0008, 0x172: 0xe00d, 0x173: 0x0008, 0x174: 0xe00d, 0x175: 0x0008,
629 0x176: 0xe00d, 0x177: 0x0008, 0x178: 0x0065, 0x179: 0xe01d, 0x17a: 0x0008, 0x17b: 0xe03d,
630 0x17c: 0x0008, 0x17d: 0xe01d, 0x17e: 0x0008, 0x17f: 0x01d9,
631 // Block 0x6, offset 0x180
632 0x180: 0x0008, 0x181: 0x007d, 0x182: 0xe00d, 0x183: 0x0008, 0x184: 0xe00d, 0x185: 0x0008,
633 0x186: 0x007d, 0x187: 0xe07d, 0x188: 0x0008, 0x189: 0x0095, 0x18a: 0x00ad, 0x18b: 0xe03d,
634 0x18c: 0x0008, 0x18d: 0x0008, 0x18e: 0x00c5, 0x18f: 0x00dd, 0x190: 0x00f5, 0x191: 0xe01d,
635 0x192: 0x0008, 0x193: 0x010d, 0x194: 0x0125, 0x195: 0x0008, 0x196: 0x013d, 0x197: 0x013d,
636 0x198: 0xe00d, 0x199: 0x0008, 0x19a: 0x0008, 0x19b: 0x0008, 0x19c: 0x010d, 0x19d: 0x0155,
637 0x19e: 0x0008, 0x19f: 0x016d, 0x1a0: 0xe00d, 0x1a1: 0x0008, 0x1a2: 0xe00d, 0x1a3: 0x0008,
638 0x1a4: 0xe00d, 0x1a5: 0x0008, 0x1a6: 0x0185, 0x1a7: 0xe07d, 0x1a8: 0x0008, 0x1a9: 0x019d,
639 0x1aa: 0x0008, 0x1ab: 0x0008, 0x1ac: 0xe00d, 0x1ad: 0x0008, 0x1ae: 0x0185, 0x1af: 0xe0fd,
640 0x1b0: 0x0008, 0x1b1: 0x01b5, 0x1b2: 0x01cd, 0x1b3: 0xe03d, 0x1b4: 0x0008, 0x1b5: 0xe01d,
641 0x1b6: 0x0008, 0x1b7: 0x01e5, 0x1b8: 0xe00d, 0x1b9: 0x0008, 0x1ba: 0x0008, 0x1bb: 0x0008,
642 0x1bc: 0xe00d, 0x1bd: 0x0008, 0x1be: 0x0008, 0x1bf: 0x0008,
643 // Block 0x7, offset 0x1c0
644 0x1c0: 0x0008, 0x1c1: 0x0008, 0x1c2: 0x0008, 0x1c3: 0x0008, 0x1c4: 0x01e9, 0x1c5: 0x01e9,
645 0x1c6: 0x01e9, 0x1c7: 0x01fd, 0x1c8: 0x0215, 0x1c9: 0x022d, 0x1ca: 0x0245, 0x1cb: 0x025d,
646 0x1cc: 0x0275, 0x1cd: 0xe01d, 0x1ce: 0x0008, 0x1cf: 0xe0fd, 0x1d0: 0x0008, 0x1d1: 0xe01d,
647 0x1d2: 0x0008, 0x1d3: 0xe03d, 0x1d4: 0x0008, 0x1d5: 0xe01d, 0x1d6: 0x0008, 0x1d7: 0xe07d,
648 0x1d8: 0x0008, 0x1d9: 0xe01d, 0x1da: 0x0008, 0x1db: 0xe03d, 0x1dc: 0x0008, 0x1dd: 0x0008,
649 0x1de: 0xe00d, 0x1df: 0x0008, 0x1e0: 0xe00d, 0x1e1: 0x0008, 0x1e2: 0xe00d, 0x1e3: 0x0008,
650 0x1e4: 0xe00d, 0x1e5: 0x0008, 0x1e6: 0xe00d, 0x1e7: 0x0008, 0x1e8: 0xe00d, 0x1e9: 0x0008,
651 0x1ea: 0xe00d, 0x1eb: 0x0008, 0x1ec: 0xe00d, 0x1ed: 0x0008, 0x1ee: 0xe00d, 0x1ef: 0x0008,
652 0x1f0: 0x0008, 0x1f1: 0x028d, 0x1f2: 0x02a5, 0x1f3: 0x02bd, 0x1f4: 0xe00d, 0x1f5: 0x0008,
653 0x1f6: 0x02d5, 0x1f7: 0x02ed, 0x1f8: 0xe00d, 0x1f9: 0x0008, 0x1fa: 0xe00d, 0x1fb: 0x0008,
654 0x1fc: 0xe00d, 0x1fd: 0x0008, 0x1fe: 0xe00d, 0x1ff: 0x0008,
655 // Block 0x8, offset 0x200
656 0x200: 0xe00d, 0x201: 0x0008, 0x202: 0xe00d, 0x203: 0x0008, 0x204: 0xe00d, 0x205: 0x0008,
657 0x206: 0xe00d, 0x207: 0x0008, 0x208: 0xe00d, 0x209: 0x0008, 0x20a: 0xe00d, 0x20b: 0x0008,
658 0x20c: 0xe00d, 0x20d: 0x0008, 0x20e: 0xe00d, 0x20f: 0x0008, 0x210: 0xe00d, 0x211: 0x0008,
659 0x212: 0xe00d, 0x213: 0x0008, 0x214: 0xe00d, 0x215: 0x0008, 0x216: 0xe00d, 0x217: 0x0008,
660 0x218: 0xe00d, 0x219: 0x0008, 0x21a: 0xe00d, 0x21b: 0x0008, 0x21c: 0xe00d, 0x21d: 0x0008,
661 0x21e: 0xe00d, 0x21f: 0x0008, 0x220: 0x0305, 0x221: 0x0008, 0x222: 0xe00d, 0x223: 0x0008,
662 0x224: 0xe00d, 0x225: 0x0008, 0x226: 0xe00d, 0x227: 0x0008, 0x228: 0xe00d, 0x229: 0x0008,
663 0x22a: 0xe00d, 0x22b: 0x0008, 0x22c: 0xe00d, 0x22d: 0x0008, 0x22e: 0xe00d, 0x22f: 0x0008,
664 0x230: 0xe00d, 0x231: 0x0008, 0x232: 0xe00d, 0x233: 0x0008, 0x234: 0x0008, 0x235: 0x0008,
665 0x236: 0x0008, 0x237: 0x0008, 0x238: 0x0008, 0x239: 0x0008, 0x23a: 0x0209, 0x23b: 0xe03d,
666 0x23c: 0x0008, 0x23d: 0x031d, 0x23e: 0x0229, 0x23f: 0x0008,
667 // Block 0x9, offset 0x240
668 0x240: 0x0008, 0x241: 0x0008, 0x242: 0x0018, 0x243: 0x0018, 0x244: 0x0018, 0x245: 0x0018,
669 0x246: 0x0008, 0x247: 0x0008, 0x248: 0x0008, 0x249: 0x0008, 0x24a: 0x0008, 0x24b: 0x0008,
670 0x24c: 0x0008, 0x24d: 0x0008, 0x24e: 0x0008, 0x24f: 0x0008, 0x250: 0x0008, 0x251: 0x0008,
671 0x252: 0x0018, 0x253: 0x0018, 0x254: 0x0018, 0x255: 0x0018, 0x256: 0x0018, 0x257: 0x0018,
672 0x258: 0x029a, 0x259: 0x02ba, 0x25a: 0x02da, 0x25b: 0x02fa, 0x25c: 0x031a, 0x25d: 0x033a,
673 0x25e: 0x0018, 0x25f: 0x0018, 0x260: 0x03ad, 0x261: 0x0359, 0x262: 0x01d9, 0x263: 0x0369,
674 0x264: 0x03c5, 0x265: 0x0018, 0x266: 0x0018, 0x267: 0x0018, 0x268: 0x0018, 0x269: 0x0018,
675 0x26a: 0x0018, 0x26b: 0x0018, 0x26c: 0x0008, 0x26d: 0x0018, 0x26e: 0x0008, 0x26f: 0x0018,
676 0x270: 0x0018, 0x271: 0x0018, 0x272: 0x0018, 0x273: 0x0018, 0x274: 0x0018, 0x275: 0x0018,
677 0x276: 0x0018, 0x277: 0x0018, 0x278: 0x0018, 0x279: 0x0018, 0x27a: 0x0018, 0x27b: 0x0018,
678 0x27c: 0x0018, 0x27d: 0x0018, 0x27e: 0x0018, 0x27f: 0x0018,
679 // Block 0xa, offset 0x280
680 0x280: 0x03dd, 0x281: 0x03dd, 0x282: 0x3308, 0x283: 0x03f5, 0x284: 0x0379, 0x285: 0x040d,
681 0x286: 0x3308, 0x287: 0x3308, 0x288: 0x3308, 0x289: 0x3308, 0x28a: 0x3308, 0x28b: 0x3308,
682 0x28c: 0x3308, 0x28d: 0x3308, 0x28e: 0x3308, 0x28f: 0x33c0, 0x290: 0x3308, 0x291: 0x3308,
683 0x292: 0x3308, 0x293: 0x3308, 0x294: 0x3308, 0x295: 0x3308, 0x296: 0x3308, 0x297: 0x3308,
684 0x298: 0x3308, 0x299: 0x3308, 0x29a: 0x3308, 0x29b: 0x3308, 0x29c: 0x3308, 0x29d: 0x3308,
685 0x29e: 0x3308, 0x29f: 0x3308, 0x2a0: 0x3308, 0x2a1: 0x3308, 0x2a2: 0x3308, 0x2a3: 0x3308,
686 0x2a4: 0x3308, 0x2a5: 0x3308, 0x2a6: 0x3308, 0x2a7: 0x3308, 0x2a8: 0x3308, 0x2a9: 0x3308,
687 0x2aa: 0x3308, 0x2ab: 0x3308, 0x2ac: 0x3308, 0x2ad: 0x3308, 0x2ae: 0x3308, 0x2af: 0x3308,
688 0x2b0: 0xe00d, 0x2b1: 0x0008, 0x2b2: 0xe00d, 0x2b3: 0x0008, 0x2b4: 0x0425, 0x2b5: 0x0008,
689 0x2b6: 0xe00d, 0x2b7: 0x0008, 0x2b8: 0x0040, 0x2b9: 0x0040, 0x2ba: 0x03a2, 0x2bb: 0x0008,
690 0x2bc: 0x0008, 0x2bd: 0x0008, 0x2be: 0x03c2, 0x2bf: 0x043d,
691 // Block 0xb, offset 0x2c0
692 0x2c0: 0x0040, 0x2c1: 0x0040, 0x2c2: 0x0040, 0x2c3: 0x0040, 0x2c4: 0x008a, 0x2c5: 0x03d2,
693 0x2c6: 0xe155, 0x2c7: 0x0455, 0x2c8: 0xe12d, 0x2c9: 0xe13d, 0x2ca: 0xe12d, 0x2cb: 0x0040,
694 0x2cc: 0x03dd, 0x2cd: 0x0040, 0x2ce: 0x046d, 0x2cf: 0x0485, 0x2d0: 0x0008, 0x2d1: 0xe105,
695 0x2d2: 0xe105, 0x2d3: 0xe105, 0x2d4: 0xe105, 0x2d5: 0xe105, 0x2d6: 0xe105, 0x2d7: 0xe105,
696 0x2d8: 0xe105, 0x2d9: 0xe105, 0x2da: 0xe105, 0x2db: 0xe105, 0x2dc: 0xe105, 0x2dd: 0xe105,
697 0x2de: 0xe105, 0x2df: 0xe105, 0x2e0: 0x049d, 0x2e1: 0x049d, 0x2e2: 0x0040, 0x2e3: 0x049d,
698 0x2e4: 0x049d, 0x2e5: 0x049d, 0x2e6: 0x049d, 0x2e7: 0x049d, 0x2e8: 0x049d, 0x2e9: 0x049d,
699 0x2ea: 0x049d, 0x2eb: 0x049d, 0x2ec: 0x0008, 0x2ed: 0x0008, 0x2ee: 0x0008, 0x2ef: 0x0008,
700 0x2f0: 0x0008, 0x2f1: 0x0008, 0x2f2: 0x0008, 0x2f3: 0x0008, 0x2f4: 0x0008, 0x2f5: 0x0008,
701 0x2f6: 0x0008, 0x2f7: 0x0008, 0x2f8: 0x0008, 0x2f9: 0x0008, 0x2fa: 0x0008, 0x2fb: 0x0008,
702 0x2fc: 0x0008, 0x2fd: 0x0008, 0x2fe: 0x0008, 0x2ff: 0x0008,
703 // Block 0xc, offset 0x300
704 0x300: 0x0008, 0x301: 0x0008, 0x302: 0xe00f, 0x303: 0x0008, 0x304: 0x0008, 0x305: 0x0008,
705 0x306: 0x0008, 0x307: 0x0008, 0x308: 0x0008, 0x309: 0x0008, 0x30a: 0x0008, 0x30b: 0x0008,
706 0x30c: 0x0008, 0x30d: 0x0008, 0x30e: 0x0008, 0x30f: 0xe0c5, 0x310: 0x04b5, 0x311: 0x04cd,
707 0x312: 0xe0bd, 0x313: 0xe0f5, 0x314: 0xe0fd, 0x315: 0xe09d, 0x316: 0xe0b5, 0x317: 0x0008,
708 0x318: 0xe00d, 0x319: 0x0008, 0x31a: 0xe00d, 0x31b: 0x0008, 0x31c: 0xe00d, 0x31d: 0x0008,
709 0x31e: 0xe00d, 0x31f: 0x0008, 0x320: 0xe00d, 0x321: 0x0008, 0x322: 0xe00d, 0x323: 0x0008,
710 0x324: 0xe00d, 0x325: 0x0008, 0x326: 0xe00d, 0x327: 0x0008, 0x328: 0xe00d, 0x329: 0x0008,
711 0x32a: 0xe00d, 0x32b: 0x0008, 0x32c: 0xe00d, 0x32d: 0x0008, 0x32e: 0xe00d, 0x32f: 0x0008,
712 0x330: 0x04e5, 0x331: 0xe185, 0x332: 0xe18d, 0x333: 0x0008, 0x334: 0x04fd, 0x335: 0x03dd,
713 0x336: 0x0018, 0x337: 0xe07d, 0x338: 0x0008, 0x339: 0xe1d5, 0x33a: 0xe00d, 0x33b: 0x0008,
714 0x33c: 0x0008, 0x33d: 0x0515, 0x33e: 0x052d, 0x33f: 0x052d,
715 // Block 0xd, offset 0x340
716 0x340: 0x0008, 0x341: 0x0008, 0x342: 0x0008, 0x343: 0x0008, 0x344: 0x0008, 0x345: 0x0008,
717 0x346: 0x0008, 0x347: 0x0008, 0x348: 0x0008, 0x349: 0x0008, 0x34a: 0x0008, 0x34b: 0x0008,
718 0x34c: 0x0008, 0x34d: 0x0008, 0x34e: 0x0008, 0x34f: 0x0008, 0x350: 0x0008, 0x351: 0x0008,
719 0x352: 0x0008, 0x353: 0x0008, 0x354: 0x0008, 0x355: 0x0008, 0x356: 0x0008, 0x357: 0x0008,
720 0x358: 0x0008, 0x359: 0x0008, 0x35a: 0x0008, 0x35b: 0x0008, 0x35c: 0x0008, 0x35d: 0x0008,
721 0x35e: 0x0008, 0x35f: 0x0008, 0x360: 0xe00d, 0x361: 0x0008, 0x362: 0xe00d, 0x363: 0x0008,
722 0x364: 0xe00d, 0x365: 0x0008, 0x366: 0xe00d, 0x367: 0x0008, 0x368: 0xe00d, 0x369: 0x0008,
723 0x36a: 0xe00d, 0x36b: 0x0008, 0x36c: 0xe00d, 0x36d: 0x0008, 0x36e: 0xe00d, 0x36f: 0x0008,
724 0x370: 0xe00d, 0x371: 0x0008, 0x372: 0xe00d, 0x373: 0x0008, 0x374: 0xe00d, 0x375: 0x0008,
725 0x376: 0xe00d, 0x377: 0x0008, 0x378: 0xe00d, 0x379: 0x0008, 0x37a: 0xe00d, 0x37b: 0x0008,
726 0x37c: 0xe00d, 0x37d: 0x0008, 0x37e: 0xe00d, 0x37f: 0x0008,
727 // Block 0xe, offset 0x380
728 0x380: 0xe00d, 0x381: 0x0008, 0x382: 0x0018, 0x383: 0x3308, 0x384: 0x3308, 0x385: 0x3308,
729 0x386: 0x3308, 0x387: 0x3308, 0x388: 0x3318, 0x389: 0x3318, 0x38a: 0xe00d, 0x38b: 0x0008,
730 0x38c: 0xe00d, 0x38d: 0x0008, 0x38e: 0xe00d, 0x38f: 0x0008, 0x390: 0xe00d, 0x391: 0x0008,
731 0x392: 0xe00d, 0x393: 0x0008, 0x394: 0xe00d, 0x395: 0x0008, 0x396: 0xe00d, 0x397: 0x0008,
732 0x398: 0xe00d, 0x399: 0x0008, 0x39a: 0xe00d, 0x39b: 0x0008, 0x39c: 0xe00d, 0x39d: 0x0008,
733 0x39e: 0xe00d, 0x39f: 0x0008, 0x3a0: 0xe00d, 0x3a1: 0x0008, 0x3a2: 0xe00d, 0x3a3: 0x0008,
734 0x3a4: 0xe00d, 0x3a5: 0x0008, 0x3a6: 0xe00d, 0x3a7: 0x0008, 0x3a8: 0xe00d, 0x3a9: 0x0008,
735 0x3aa: 0xe00d, 0x3ab: 0x0008, 0x3ac: 0xe00d, 0x3ad: 0x0008, 0x3ae: 0xe00d, 0x3af: 0x0008,
736 0x3b0: 0xe00d, 0x3b1: 0x0008, 0x3b2: 0xe00d, 0x3b3: 0x0008, 0x3b4: 0xe00d, 0x3b5: 0x0008,
737 0x3b6: 0xe00d, 0x3b7: 0x0008, 0x3b8: 0xe00d, 0x3b9: 0x0008, 0x3ba: 0xe00d, 0x3bb: 0x0008,
738 0x3bc: 0xe00d, 0x3bd: 0x0008, 0x3be: 0xe00d, 0x3bf: 0x0008,
739 // Block 0xf, offset 0x3c0
740 0x3c0: 0x0040, 0x3c1: 0xe01d, 0x3c2: 0x0008, 0x3c3: 0xe03d, 0x3c4: 0x0008, 0x3c5: 0xe01d,
741 0x3c6: 0x0008, 0x3c7: 0xe07d, 0x3c8: 0x0008, 0x3c9: 0xe01d, 0x3ca: 0x0008, 0x3cb: 0xe03d,
742 0x3cc: 0x0008, 0x3cd: 0xe01d, 0x3ce: 0x0008, 0x3cf: 0x0008, 0x3d0: 0xe00d, 0x3d1: 0x0008,
743 0x3d2: 0xe00d, 0x3d3: 0x0008, 0x3d4: 0xe00d, 0x3d5: 0x0008, 0x3d6: 0xe00d, 0x3d7: 0x0008,
744 0x3d8: 0xe00d, 0x3d9: 0x0008, 0x3da: 0xe00d, 0x3db: 0x0008, 0x3dc: 0xe00d, 0x3dd: 0x0008,
745 0x3de: 0xe00d, 0x3df: 0x0008, 0x3e0: 0xe00d, 0x3e1: 0x0008, 0x3e2: 0xe00d, 0x3e3: 0x0008,
746 0x3e4: 0xe00d, 0x3e5: 0x0008, 0x3e6: 0xe00d, 0x3e7: 0x0008, 0x3e8: 0xe00d, 0x3e9: 0x0008,
747 0x3ea: 0xe00d, 0x3eb: 0x0008, 0x3ec: 0xe00d, 0x3ed: 0x0008, 0x3ee: 0xe00d, 0x3ef: 0x0008,
748 0x3f0: 0xe00d, 0x3f1: 0x0008, 0x3f2: 0xe00d, 0x3f3: 0x0008, 0x3f4: 0xe00d, 0x3f5: 0x0008,
749 0x3f6: 0xe00d, 0x3f7: 0x0008, 0x3f8: 0xe00d, 0x3f9: 0x0008, 0x3fa: 0xe00d, 0x3fb: 0x0008,
750 0x3fc: 0xe00d, 0x3fd: 0x0008, 0x3fe: 0xe00d, 0x3ff: 0x0008,
751 // Block 0x10, offset 0x400
752 0x400: 0xe00d, 0x401: 0x0008, 0x402: 0xe00d, 0x403: 0x0008, 0x404: 0xe00d, 0x405: 0x0008,
753 0x406: 0xe00d, 0x407: 0x0008, 0x408: 0xe00d, 0x409: 0x0008, 0x40a: 0xe00d, 0x40b: 0x0008,
754 0x40c: 0xe00d, 0x40d: 0x0008, 0x40e: 0xe00d, 0x40f: 0x0008, 0x410: 0xe00d, 0x411: 0x0008,
755 0x412: 0xe00d, 0x413: 0x0008, 0x414: 0xe00d, 0x415: 0x0008, 0x416: 0xe00d, 0x417: 0x0008,
756 0x418: 0xe00d, 0x419: 0x0008, 0x41a: 0xe00d, 0x41b: 0x0008, 0x41c: 0xe00d, 0x41d: 0x0008,
757 0x41e: 0xe00d, 0x41f: 0x0008, 0x420: 0xe00d, 0x421: 0x0008, 0x422: 0xe00d, 0x423: 0x0008,
758 0x424: 0xe00d, 0x425: 0x0008, 0x426: 0xe00d, 0x427: 0x0008, 0x428: 0xe00d, 0x429: 0x0008,
759 0x42a: 0xe00d, 0x42b: 0x0008, 0x42c: 0xe00d, 0x42d: 0x0008, 0x42e: 0xe00d, 0x42f: 0x0008,
760 0x430: 0x0040, 0x431: 0x03f5, 0x432: 0x03f5, 0x433: 0x03f5, 0x434: 0x03f5, 0x435: 0x03f5,
761 0x436: 0x03f5, 0x437: 0x03f5, 0x438: 0x03f5, 0x439: 0x03f5, 0x43a: 0x03f5, 0x43b: 0x03f5,
762 0x43c: 0x03f5, 0x43d: 0x03f5, 0x43e: 0x03f5, 0x43f: 0x03f5,
763 // Block 0x11, offset 0x440
764 0x440: 0x0840, 0x441: 0x0840, 0x442: 0x0840, 0x443: 0x0840, 0x444: 0x0840, 0x445: 0x0840,
765 0x446: 0x0018, 0x447: 0x0018, 0x448: 0x0818, 0x449: 0x0018, 0x44a: 0x0018, 0x44b: 0x0818,
766 0x44c: 0x0018, 0x44d: 0x0818, 0x44e: 0x0018, 0x44f: 0x0018, 0x450: 0x3308, 0x451: 0x3308,
767 0x452: 0x3308, 0x453: 0x3308, 0x454: 0x3308, 0x455: 0x3308, 0x456: 0x3308, 0x457: 0x3308,
768 0x458: 0x3308, 0x459: 0x3308, 0x45a: 0x3308, 0x45b: 0x0818, 0x45c: 0x0b40, 0x45d: 0x0040,
769 0x45e: 0x0818, 0x45f: 0x0818, 0x460: 0x0a08, 0x461: 0x0808, 0x462: 0x0c08, 0x463: 0x0c08,
770 0x464: 0x0c08, 0x465: 0x0c08, 0x466: 0x0a08, 0x467: 0x0c08, 0x468: 0x0a08, 0x469: 0x0c08,
771 0x46a: 0x0a08, 0x46b: 0x0a08, 0x46c: 0x0a08, 0x46d: 0x0a08, 0x46e: 0x0a08, 0x46f: 0x0c08,
772 0x470: 0x0c08, 0x471: 0x0c08, 0x472: 0x0c08, 0x473: 0x0a08, 0x474: 0x0a08, 0x475: 0x0a08,
773 0x476: 0x0a08, 0x477: 0x0a08, 0x478: 0x0a08, 0x479: 0x0a08, 0x47a: 0x0a08, 0x47b: 0x0a08,
774 0x47c: 0x0a08, 0x47d: 0x0a08, 0x47e: 0x0a08, 0x47f: 0x0a08,
775 // Block 0x12, offset 0x480
776 0x480: 0x0818, 0x481: 0x0a08, 0x482: 0x0a08, 0x483: 0x0a08, 0x484: 0x0a08, 0x485: 0x0a08,
777 0x486: 0x0a08, 0x487: 0x0a08, 0x488: 0x0c08, 0x489: 0x0a08, 0x48a: 0x0a08, 0x48b: 0x3308,
778 0x48c: 0x3308, 0x48d: 0x3308, 0x48e: 0x3308, 0x48f: 0x3308, 0x490: 0x3308, 0x491: 0x3308,
779 0x492: 0x3308, 0x493: 0x3308, 0x494: 0x3308, 0x495: 0x3308, 0x496: 0x3308, 0x497: 0x3308,
780 0x498: 0x3308, 0x499: 0x3308, 0x49a: 0x3308, 0x49b: 0x3308, 0x49c: 0x3308, 0x49d: 0x3308,
781 0x49e: 0x3308, 0x49f: 0x3308, 0x4a0: 0x0808, 0x4a1: 0x0808, 0x4a2: 0x0808, 0x4a3: 0x0808,
782 0x4a4: 0x0808, 0x4a5: 0x0808, 0x4a6: 0x0808, 0x4a7: 0x0808, 0x4a8: 0x0808, 0x4a9: 0x0808,
783 0x4aa: 0x0018, 0x4ab: 0x0818, 0x4ac: 0x0818, 0x4ad: 0x0818, 0x4ae: 0x0a08, 0x4af: 0x0a08,
784 0x4b0: 0x3308, 0x4b1: 0x0c08, 0x4b2: 0x0c08, 0x4b3: 0x0c08, 0x4b4: 0x0808, 0x4b5: 0x0429,
785 0x4b6: 0x0451, 0x4b7: 0x0479, 0x4b8: 0x04a1, 0x4b9: 0x0a08, 0x4ba: 0x0a08, 0x4bb: 0x0a08,
786 0x4bc: 0x0a08, 0x4bd: 0x0a08, 0x4be: 0x0a08, 0x4bf: 0x0a08,
787 // Block 0x13, offset 0x4c0
788 0x4c0: 0x0c08, 0x4c1: 0x0a08, 0x4c2: 0x0a08, 0x4c3: 0x0c08, 0x4c4: 0x0c08, 0x4c5: 0x0c08,
789 0x4c6: 0x0c08, 0x4c7: 0x0c08, 0x4c8: 0x0c08, 0x4c9: 0x0c08, 0x4ca: 0x0c08, 0x4cb: 0x0c08,
790 0x4cc: 0x0a08, 0x4cd: 0x0c08, 0x4ce: 0x0a08, 0x4cf: 0x0c08, 0x4d0: 0x0a08, 0x4d1: 0x0a08,
791 0x4d2: 0x0c08, 0x4d3: 0x0c08, 0x4d4: 0x0818, 0x4d5: 0x0c08, 0x4d6: 0x3308, 0x4d7: 0x3308,
792 0x4d8: 0x3308, 0x4d9: 0x3308, 0x4da: 0x3308, 0x4db: 0x3308, 0x4dc: 0x3308, 0x4dd: 0x0840,
793 0x4de: 0x0018, 0x4df: 0x3308, 0x4e0: 0x3308, 0x4e1: 0x3308, 0x4e2: 0x3308, 0x4e3: 0x3308,
794 0x4e4: 0x3308, 0x4e5: 0x0808, 0x4e6: 0x0808, 0x4e7: 0x3308, 0x4e8: 0x3308, 0x4e9: 0x0018,
795 0x4ea: 0x3308, 0x4eb: 0x3308, 0x4ec: 0x3308, 0x4ed: 0x3308, 0x4ee: 0x0c08, 0x4ef: 0x0c08,
796 0x4f0: 0x0008, 0x4f1: 0x0008, 0x4f2: 0x0008, 0x4f3: 0x0008, 0x4f4: 0x0008, 0x4f5: 0x0008,
797 0x4f6: 0x0008, 0x4f7: 0x0008, 0x4f8: 0x0008, 0x4f9: 0x0008, 0x4fa: 0x0a08, 0x4fb: 0x0a08,
798 0x4fc: 0x0a08, 0x4fd: 0x0808, 0x4fe: 0x0808, 0x4ff: 0x0a08,
799 // Block 0x14, offset 0x500
800 0x500: 0x0818, 0x501: 0x0818, 0x502: 0x0818, 0x503: 0x0818, 0x504: 0x0818, 0x505: 0x0818,
801 0x506: 0x0818, 0x507: 0x0818, 0x508: 0x0818, 0x509: 0x0818, 0x50a: 0x0818, 0x50b: 0x0818,
802 0x50c: 0x0818, 0x50d: 0x0818, 0x50e: 0x0040, 0x50f: 0x0b40, 0x510: 0x0c08, 0x511: 0x3308,
803 0x512: 0x0a08, 0x513: 0x0a08, 0x514: 0x0a08, 0x515: 0x0c08, 0x516: 0x0c08, 0x517: 0x0c08,
804 0x518: 0x0c08, 0x519: 0x0c08, 0x51a: 0x0a08, 0x51b: 0x0a08, 0x51c: 0x0a08, 0x51d: 0x0a08,
805 0x51e: 0x0c08, 0x51f: 0x0a08, 0x520: 0x0a08, 0x521: 0x0a08, 0x522: 0x0a08, 0x523: 0x0a08,
806 0x524: 0x0a08, 0x525: 0x0a08, 0x526: 0x0a08, 0x527: 0x0a08, 0x528: 0x0c08, 0x529: 0x0a08,
807 0x52a: 0x0c08, 0x52b: 0x0a08, 0x52c: 0x0c08, 0x52d: 0x0a08, 0x52e: 0x0a08, 0x52f: 0x0c08,
808 0x530: 0x3308, 0x531: 0x3308, 0x532: 0x3308, 0x533: 0x3308, 0x534: 0x3308, 0x535: 0x3308,
809 0x536: 0x3308, 0x537: 0x3308, 0x538: 0x3308, 0x539: 0x3308, 0x53a: 0x3308, 0x53b: 0x3308,
810 0x53c: 0x3308, 0x53d: 0x3308, 0x53e: 0x3308, 0x53f: 0x3308,
811 // Block 0x15, offset 0x540
812 0x540: 0x0c08, 0x541: 0x0a08, 0x542: 0x0a08, 0x543: 0x0a08, 0x544: 0x0a08, 0x545: 0x0a08,
813 0x546: 0x0c08, 0x547: 0x0c08, 0x548: 0x0a08, 0x549: 0x0c08, 0x54a: 0x0a08, 0x54b: 0x0a08,
814 0x54c: 0x0a08, 0x54d: 0x0a08, 0x54e: 0x0a08, 0x54f: 0x0a08, 0x550: 0x0a08, 0x551: 0x0a08,
815 0x552: 0x0a08, 0x553: 0x0a08, 0x554: 0x0c08, 0x555: 0x0a08, 0x556: 0x0808, 0x557: 0x0808,
816 0x558: 0x0808, 0x559: 0x3308, 0x55a: 0x3308, 0x55b: 0x3308, 0x55c: 0x0040, 0x55d: 0x0040,
817 0x55e: 0x0818, 0x55f: 0x0040, 0x560: 0x0a08, 0x561: 0x0808, 0x562: 0x0a08, 0x563: 0x0a08,
818 0x564: 0x0a08, 0x565: 0x0a08, 0x566: 0x0808, 0x567: 0x0c08, 0x568: 0x0a08, 0x569: 0x0c08,
819 0x56a: 0x0c08, 0x56b: 0x0040, 0x56c: 0x0040, 0x56d: 0x0040, 0x56e: 0x0040, 0x56f: 0x0040,
820 0x570: 0x0040, 0x571: 0x0040, 0x572: 0x0040, 0x573: 0x0040, 0x574: 0x0040, 0x575: 0x0040,
821 0x576: 0x0040, 0x577: 0x0040, 0x578: 0x0040, 0x579: 0x0040, 0x57a: 0x0040, 0x57b: 0x0040,
822 0x57c: 0x0040, 0x57d: 0x0040, 0x57e: 0x0040, 0x57f: 0x0040,
823 // Block 0x16, offset 0x580
824 0x580: 0x3008, 0x581: 0x3308, 0x582: 0x3308, 0x583: 0x3308, 0x584: 0x3308, 0x585: 0x3308,
825 0x586: 0x3308, 0x587: 0x3308, 0x588: 0x3308, 0x589: 0x3008, 0x58a: 0x3008, 0x58b: 0x3008,
826 0x58c: 0x3008, 0x58d: 0x3b08, 0x58e: 0x3008, 0x58f: 0x3008, 0x590: 0x0008, 0x591: 0x3308,
827 0x592: 0x3308, 0x593: 0x3308, 0x594: 0x3308, 0x595: 0x3308, 0x596: 0x3308, 0x597: 0x3308,
828 0x598: 0x04c9, 0x599: 0x0501, 0x59a: 0x0539, 0x59b: 0x0571, 0x59c: 0x05a9, 0x59d: 0x05e1,
829 0x59e: 0x0619, 0x59f: 0x0651, 0x5a0: 0x0008, 0x5a1: 0x0008, 0x5a2: 0x3308, 0x5a3: 0x3308,
830 0x5a4: 0x0018, 0x5a5: 0x0018, 0x5a6: 0x0008, 0x5a7: 0x0008, 0x5a8: 0x0008, 0x5a9: 0x0008,
831 0x5aa: 0x0008, 0x5ab: 0x0008, 0x5ac: 0x0008, 0x5ad: 0x0008, 0x5ae: 0x0008, 0x5af: 0x0008,
832 0x5b0: 0x0018, 0x5b1: 0x0008, 0x5b2: 0x0008, 0x5b3: 0x0008, 0x5b4: 0x0008, 0x5b5: 0x0008,
833 0x5b6: 0x0008, 0x5b7: 0x0008, 0x5b8: 0x0008, 0x5b9: 0x0008, 0x5ba: 0x0008, 0x5bb: 0x0008,
834 0x5bc: 0x0008, 0x5bd: 0x0008, 0x5be: 0x0008, 0x5bf: 0x0008,
835 // Block 0x17, offset 0x5c0
836 0x5c0: 0x0008, 0x5c1: 0x3308, 0x5c2: 0x3008, 0x5c3: 0x3008, 0x5c4: 0x0040, 0x5c5: 0x0008,
837 0x5c6: 0x0008, 0x5c7: 0x0008, 0x5c8: 0x0008, 0x5c9: 0x0008, 0x5ca: 0x0008, 0x5cb: 0x0008,
838 0x5cc: 0x0008, 0x5cd: 0x0040, 0x5ce: 0x0040, 0x5cf: 0x0008, 0x5d0: 0x0008, 0x5d1: 0x0040,
839 0x5d2: 0x0040, 0x5d3: 0x0008, 0x5d4: 0x0008, 0x5d5: 0x0008, 0x5d6: 0x0008, 0x5d7: 0x0008,
840 0x5d8: 0x0008, 0x5d9: 0x0008, 0x5da: 0x0008, 0x5db: 0x0008, 0x5dc: 0x0008, 0x5dd: 0x0008,
841 0x5de: 0x0008, 0x5df: 0x0008, 0x5e0: 0x0008, 0x5e1: 0x0008, 0x5e2: 0x0008, 0x5e3: 0x0008,
842 0x5e4: 0x0008, 0x5e5: 0x0008, 0x5e6: 0x0008, 0x5e7: 0x0008, 0x5e8: 0x0008, 0x5e9: 0x0040,
843 0x5ea: 0x0008, 0x5eb: 0x0008, 0x5ec: 0x0008, 0x5ed: 0x0008, 0x5ee: 0x0008, 0x5ef: 0x0008,
844 0x5f0: 0x0008, 0x5f1: 0x0040, 0x5f2: 0x0008, 0x5f3: 0x0040, 0x5f4: 0x0040, 0x5f5: 0x0040,
845 0x5f6: 0x0008, 0x5f7: 0x0008, 0x5f8: 0x0008, 0x5f9: 0x0008, 0x5fa: 0x0040, 0x5fb: 0x0040,
846 0x5fc: 0x3308, 0x5fd: 0x0008, 0x5fe: 0x3008, 0x5ff: 0x3008,
847 // Block 0x18, offset 0x600
848 0x600: 0x3008, 0x601: 0x3308, 0x602: 0x3308, 0x603: 0x3308, 0x604: 0x3308, 0x605: 0x0040,
849 0x606: 0x0040, 0x607: 0x3008, 0x608: 0x3008, 0x609: 0x0040, 0x60a: 0x0040, 0x60b: 0x3008,
850 0x60c: 0x3008, 0x60d: 0x3b08, 0x60e: 0x0008, 0x60f: 0x0040, 0x610: 0x0040, 0x611: 0x0040,
851 0x612: 0x0040, 0x613: 0x0040, 0x614: 0x0040, 0x615: 0x0040, 0x616: 0x0040, 0x617: 0x3008,
852 0x618: 0x0040, 0x619: 0x0040, 0x61a: 0x0040, 0x61b: 0x0040, 0x61c: 0x0689, 0x61d: 0x06c1,
853 0x61e: 0x0040, 0x61f: 0x06f9, 0x620: 0x0008, 0x621: 0x0008, 0x622: 0x3308, 0x623: 0x3308,
854 0x624: 0x0040, 0x625: 0x0040, 0x626: 0x0008, 0x627: 0x0008, 0x628: 0x0008, 0x629: 0x0008,
855 0x62a: 0x0008, 0x62b: 0x0008, 0x62c: 0x0008, 0x62d: 0x0008, 0x62e: 0x0008, 0x62f: 0x0008,
856 0x630: 0x0008, 0x631: 0x0008, 0x632: 0x0018, 0x633: 0x0018, 0x634: 0x0018, 0x635: 0x0018,
857 0x636: 0x0018, 0x637: 0x0018, 0x638: 0x0018, 0x639: 0x0018, 0x63a: 0x0018, 0x63b: 0x0018,
858 0x63c: 0x0008, 0x63d: 0x0018, 0x63e: 0x3308, 0x63f: 0x0040,
859 // Block 0x19, offset 0x640
860 0x640: 0x0040, 0x641: 0x3308, 0x642: 0x3308, 0x643: 0x3008, 0x644: 0x0040, 0x645: 0x0008,
861 0x646: 0x0008, 0x647: 0x0008, 0x648: 0x0008, 0x649: 0x0008, 0x64a: 0x0008, 0x64b: 0x0040,
862 0x64c: 0x0040, 0x64d: 0x0040, 0x64e: 0x0040, 0x64f: 0x0008, 0x650: 0x0008, 0x651: 0x0040,
863 0x652: 0x0040, 0x653: 0x0008, 0x654: 0x0008, 0x655: 0x0008, 0x656: 0x0008, 0x657: 0x0008,
864 0x658: 0x0008, 0x659: 0x0008, 0x65a: 0x0008, 0x65b: 0x0008, 0x65c: 0x0008, 0x65d: 0x0008,
865 0x65e: 0x0008, 0x65f: 0x0008, 0x660: 0x0008, 0x661: 0x0008, 0x662: 0x0008, 0x663: 0x0008,
866 0x664: 0x0008, 0x665: 0x0008, 0x666: 0x0008, 0x667: 0x0008, 0x668: 0x0008, 0x669: 0x0040,
867 0x66a: 0x0008, 0x66b: 0x0008, 0x66c: 0x0008, 0x66d: 0x0008, 0x66e: 0x0008, 0x66f: 0x0008,
868 0x670: 0x0008, 0x671: 0x0040, 0x672: 0x0008, 0x673: 0x0731, 0x674: 0x0040, 0x675: 0x0008,
869 0x676: 0x0769, 0x677: 0x0040, 0x678: 0x0008, 0x679: 0x0008, 0x67a: 0x0040, 0x67b: 0x0040,
870 0x67c: 0x3308, 0x67d: 0x0040, 0x67e: 0x3008, 0x67f: 0x3008,
871 // Block 0x1a, offset 0x680
872 0x680: 0x3008, 0x681: 0x3308, 0x682: 0x3308, 0x683: 0x0040, 0x684: 0x0040, 0x685: 0x0040,
873 0x686: 0x0040, 0x687: 0x3308, 0x688: 0x3308, 0x689: 0x0040, 0x68a: 0x0040, 0x68b: 0x3308,
874 0x68c: 0x3308, 0x68d: 0x3b08, 0x68e: 0x0040, 0x68f: 0x0040, 0x690: 0x0040, 0x691: 0x3308,
875 0x692: 0x0040, 0x693: 0x0040, 0x694: 0x0040, 0x695: 0x0040, 0x696: 0x0040, 0x697: 0x0040,
876 0x698: 0x0040, 0x699: 0x07a1, 0x69a: 0x07d9, 0x69b: 0x0811, 0x69c: 0x0008, 0x69d: 0x0040,
877 0x69e: 0x0849, 0x69f: 0x0040, 0x6a0: 0x0040, 0x6a1: 0x0040, 0x6a2: 0x0040, 0x6a3: 0x0040,
878 0x6a4: 0x0040, 0x6a5: 0x0040, 0x6a6: 0x0008, 0x6a7: 0x0008, 0x6a8: 0x0008, 0x6a9: 0x0008,
879 0x6aa: 0x0008, 0x6ab: 0x0008, 0x6ac: 0x0008, 0x6ad: 0x0008, 0x6ae: 0x0008, 0x6af: 0x0008,
880 0x6b0: 0x3308, 0x6b1: 0x3308, 0x6b2: 0x0008, 0x6b3: 0x0008, 0x6b4: 0x0008, 0x6b5: 0x3308,
881 0x6b6: 0x0018, 0x6b7: 0x0040, 0x6b8: 0x0040, 0x6b9: 0x0040, 0x6ba: 0x0040, 0x6bb: 0x0040,
882 0x6bc: 0x0040, 0x6bd: 0x0040, 0x6be: 0x0040, 0x6bf: 0x0040,
883 // Block 0x1b, offset 0x6c0
884 0x6c0: 0x0040, 0x6c1: 0x3308, 0x6c2: 0x3308, 0x6c3: 0x3008, 0x6c4: 0x0040, 0x6c5: 0x0008,
885 0x6c6: 0x0008, 0x6c7: 0x0008, 0x6c8: 0x0008, 0x6c9: 0x0008, 0x6ca: 0x0008, 0x6cb: 0x0008,
886 0x6cc: 0x0008, 0x6cd: 0x0008, 0x6ce: 0x0040, 0x6cf: 0x0008, 0x6d0: 0x0008, 0x6d1: 0x0008,
887 0x6d2: 0x0040, 0x6d3: 0x0008, 0x6d4: 0x0008, 0x6d5: 0x0008, 0x6d6: 0x0008, 0x6d7: 0x0008,
888 0x6d8: 0x0008, 0x6d9: 0x0008, 0x6da: 0x0008, 0x6db: 0x0008, 0x6dc: 0x0008, 0x6dd: 0x0008,
889 0x6de: 0x0008, 0x6df: 0x0008, 0x6e0: 0x0008, 0x6e1: 0x0008, 0x6e2: 0x0008, 0x6e3: 0x0008,
890 0x6e4: 0x0008, 0x6e5: 0x0008, 0x6e6: 0x0008, 0x6e7: 0x0008, 0x6e8: 0x0008, 0x6e9: 0x0040,
891 0x6ea: 0x0008, 0x6eb: 0x0008, 0x6ec: 0x0008, 0x6ed: 0x0008, 0x6ee: 0x0008, 0x6ef: 0x0008,
892 0x6f0: 0x0008, 0x6f1: 0x0040, 0x6f2: 0x0008, 0x6f3: 0x0008, 0x6f4: 0x0040, 0x6f5: 0x0008,
893 0x6f6: 0x0008, 0x6f7: 0x0008, 0x6f8: 0x0008, 0x6f9: 0x0008, 0x6fa: 0x0040, 0x6fb: 0x0040,
894 0x6fc: 0x3308, 0x6fd: 0x0008, 0x6fe: 0x3008, 0x6ff: 0x3008,
895 // Block 0x1c, offset 0x700
896 0x700: 0x3008, 0x701: 0x3308, 0x702: 0x3308, 0x703: 0x3308, 0x704: 0x3308, 0x705: 0x3308,
897 0x706: 0x0040, 0x707: 0x3308, 0x708: 0x3308, 0x709: 0x3008, 0x70a: 0x0040, 0x70b: 0x3008,
898 0x70c: 0x3008, 0x70d: 0x3b08, 0x70e: 0x0040, 0x70f: 0x0040, 0x710: 0x0008, 0x711: 0x0040,
899 0x712: 0x0040, 0x713: 0x0040, 0x714: 0x0040, 0x715: 0x0040, 0x716: 0x0040, 0x717: 0x0040,
900 0x718: 0x0040, 0x719: 0x0040, 0x71a: 0x0040, 0x71b: 0x0040, 0x71c: 0x0040, 0x71d: 0x0040,
901 0x71e: 0x0040, 0x71f: 0x0040, 0x720: 0x0008, 0x721: 0x0008, 0x722: 0x3308, 0x723: 0x3308,
902 0x724: 0x0040, 0x725: 0x0040, 0x726: 0x0008, 0x727: 0x0008, 0x728: 0x0008, 0x729: 0x0008,
903 0x72a: 0x0008, 0x72b: 0x0008, 0x72c: 0x0008, 0x72d: 0x0008, 0x72e: 0x0008, 0x72f: 0x0008,
904 0x730: 0x0018, 0x731: 0x0018, 0x732: 0x0040, 0x733: 0x0040, 0x734: 0x0040, 0x735: 0x0040,
905 0x736: 0x0040, 0x737: 0x0040, 0x738: 0x0040, 0x739: 0x0008, 0x73a: 0x3308, 0x73b: 0x3308,
906 0x73c: 0x3308, 0x73d: 0x3308, 0x73e: 0x3308, 0x73f: 0x3308,
907 // Block 0x1d, offset 0x740
908 0x740: 0x0040, 0x741: 0x3308, 0x742: 0x3008, 0x743: 0x3008, 0x744: 0x0040, 0x745: 0x0008,
909 0x746: 0x0008, 0x747: 0x0008, 0x748: 0x0008, 0x749: 0x0008, 0x74a: 0x0008, 0x74b: 0x0008,
910 0x74c: 0x0008, 0x74d: 0x0040, 0x74e: 0x0040, 0x74f: 0x0008, 0x750: 0x0008, 0x751: 0x0040,
911 0x752: 0x0040, 0x753: 0x0008, 0x754: 0x0008, 0x755: 0x0008, 0x756: 0x0008, 0x757: 0x0008,
912 0x758: 0x0008, 0x759: 0x0008, 0x75a: 0x0008, 0x75b: 0x0008, 0x75c: 0x0008, 0x75d: 0x0008,
913 0x75e: 0x0008, 0x75f: 0x0008, 0x760: 0x0008, 0x761: 0x0008, 0x762: 0x0008, 0x763: 0x0008,
914 0x764: 0x0008, 0x765: 0x0008, 0x766: 0x0008, 0x767: 0x0008, 0x768: 0x0008, 0x769: 0x0040,
915 0x76a: 0x0008, 0x76b: 0x0008, 0x76c: 0x0008, 0x76d: 0x0008, 0x76e: 0x0008, 0x76f: 0x0008,
916 0x770: 0x0008, 0x771: 0x0040, 0x772: 0x0008, 0x773: 0x0008, 0x774: 0x0040, 0x775: 0x0008,
917 0x776: 0x0008, 0x777: 0x0008, 0x778: 0x0008, 0x779: 0x0008, 0x77a: 0x0040, 0x77b: 0x0040,
918 0x77c: 0x3308, 0x77d: 0x0008, 0x77e: 0x3008, 0x77f: 0x3308,
919 // Block 0x1e, offset 0x780
920 0x780: 0x3008, 0x781: 0x3308, 0x782: 0x3308, 0x783: 0x3308, 0x784: 0x3308, 0x785: 0x0040,
921 0x786: 0x0040, 0x787: 0x3008, 0x788: 0x3008, 0x789: 0x0040, 0x78a: 0x0040, 0x78b: 0x3008,
922 0x78c: 0x3008, 0x78d: 0x3b08, 0x78e: 0x0040, 0x78f: 0x0040, 0x790: 0x0040, 0x791: 0x0040,
923 0x792: 0x0040, 0x793: 0x0040, 0x794: 0x0040, 0x795: 0x0040, 0x796: 0x3308, 0x797: 0x3008,
924 0x798: 0x0040, 0x799: 0x0040, 0x79a: 0x0040, 0x79b: 0x0040, 0x79c: 0x0881, 0x79d: 0x08b9,
925 0x79e: 0x0040, 0x79f: 0x0008, 0x7a0: 0x0008, 0x7a1: 0x0008, 0x7a2: 0x3308, 0x7a3: 0x3308,
926 0x7a4: 0x0040, 0x7a5: 0x0040, 0x7a6: 0x0008, 0x7a7: 0x0008, 0x7a8: 0x0008, 0x7a9: 0x0008,
927 0x7aa: 0x0008, 0x7ab: 0x0008, 0x7ac: 0x0008, 0x7ad: 0x0008, 0x7ae: 0x0008, 0x7af: 0x0008,
928 0x7b0: 0x0018, 0x7b1: 0x0008, 0x7b2: 0x0018, 0x7b3: 0x0018, 0x7b4: 0x0018, 0x7b5: 0x0018,
929 0x7b6: 0x0018, 0x7b7: 0x0018, 0x7b8: 0x0040, 0x7b9: 0x0040, 0x7ba: 0x0040, 0x7bb: 0x0040,
930 0x7bc: 0x0040, 0x7bd: 0x0040, 0x7be: 0x0040, 0x7bf: 0x0040,
931 // Block 0x1f, offset 0x7c0
932 0x7c0: 0x0040, 0x7c1: 0x0040, 0x7c2: 0x3308, 0x7c3: 0x0008, 0x7c4: 0x0040, 0x7c5: 0x0008,
933 0x7c6: 0x0008, 0x7c7: 0x0008, 0x7c8: 0x0008, 0x7c9: 0x0008, 0x7ca: 0x0008, 0x7cb: 0x0040,
934 0x7cc: 0x0040, 0x7cd: 0x0040, 0x7ce: 0x0008, 0x7cf: 0x0008, 0x7d0: 0x0008, 0x7d1: 0x0040,
935 0x7d2: 0x0008, 0x7d3: 0x0008, 0x7d4: 0x0008, 0x7d5: 0x0008, 0x7d6: 0x0040, 0x7d7: 0x0040,
936 0x7d8: 0x0040, 0x7d9: 0x0008, 0x7da: 0x0008, 0x7db: 0x0040, 0x7dc: 0x0008, 0x7dd: 0x0040,
937 0x7de: 0x0008, 0x7df: 0x0008, 0x7e0: 0x0040, 0x7e1: 0x0040, 0x7e2: 0x0040, 0x7e3: 0x0008,
938 0x7e4: 0x0008, 0x7e5: 0x0040, 0x7e6: 0x0040, 0x7e7: 0x0040, 0x7e8: 0x0008, 0x7e9: 0x0008,
939 0x7ea: 0x0008, 0x7eb: 0x0040, 0x7ec: 0x0040, 0x7ed: 0x0040, 0x7ee: 0x0008, 0x7ef: 0x0008,
940 0x7f0: 0x0008, 0x7f1: 0x0008, 0x7f2: 0x0008, 0x7f3: 0x0008, 0x7f4: 0x0008, 0x7f5: 0x0008,
941 0x7f6: 0x0008, 0x7f7: 0x0008, 0x7f8: 0x0008, 0x7f9: 0x0008, 0x7fa: 0x0040, 0x7fb: 0x0040,
942 0x7fc: 0x0040, 0x7fd: 0x0040, 0x7fe: 0x3008, 0x7ff: 0x3008,
943 // Block 0x20, offset 0x800
944 0x800: 0x3308, 0x801: 0x3008, 0x802: 0x3008, 0x803: 0x3008, 0x804: 0x3008, 0x805: 0x0040,
945 0x806: 0x3308, 0x807: 0x3308, 0x808: 0x3308, 0x809: 0x0040, 0x80a: 0x3308, 0x80b: 0x3308,
946 0x80c: 0x3308, 0x80d: 0x3b08, 0x80e: 0x0040, 0x80f: 0x0040, 0x810: 0x0040, 0x811: 0x0040,
947 0x812: 0x0040, 0x813: 0x0040, 0x814: 0x0040, 0x815: 0x3308, 0x816: 0x3308, 0x817: 0x0040,
948 0x818: 0x0008, 0x819: 0x0008, 0x81a: 0x0008, 0x81b: 0x0040, 0x81c: 0x0040, 0x81d: 0x0040,
949 0x81e: 0x0040, 0x81f: 0x0040, 0x820: 0x0008, 0x821: 0x0008, 0x822: 0x3308, 0x823: 0x3308,
950 0x824: 0x0040, 0x825: 0x0040, 0x826: 0x0008, 0x827: 0x0008, 0x828: 0x0008, 0x829: 0x0008,
951 0x82a: 0x0008, 0x82b: 0x0008, 0x82c: 0x0008, 0x82d: 0x0008, 0x82e: 0x0008, 0x82f: 0x0008,
952 0x830: 0x0040, 0x831: 0x0040, 0x832: 0x0040, 0x833: 0x0040, 0x834: 0x0040, 0x835: 0x0040,
953 0x836: 0x0040, 0x837: 0x0040, 0x838: 0x0018, 0x839: 0x0018, 0x83a: 0x0018, 0x83b: 0x0018,
954 0x83c: 0x0018, 0x83d: 0x0018, 0x83e: 0x0018, 0x83f: 0x0018,
955 // Block 0x21, offset 0x840
956 0x840: 0x0008, 0x841: 0x3308, 0x842: 0x3008, 0x843: 0x3008, 0x844: 0x0018, 0x845: 0x0008,
957 0x846: 0x0008, 0x847: 0x0008, 0x848: 0x0008, 0x849: 0x0008, 0x84a: 0x0008, 0x84b: 0x0008,
958 0x84c: 0x0008, 0x84d: 0x0040, 0x84e: 0x0008, 0x84f: 0x0008, 0x850: 0x0008, 0x851: 0x0040,
959 0x852: 0x0008, 0x853: 0x0008, 0x854: 0x0008, 0x855: 0x0008, 0x856: 0x0008, 0x857: 0x0008,
960 0x858: 0x0008, 0x859: 0x0008, 0x85a: 0x0008, 0x85b: 0x0008, 0x85c: 0x0008, 0x85d: 0x0008,
961 0x85e: 0x0008, 0x85f: 0x0008, 0x860: 0x0008, 0x861: 0x0008, 0x862: 0x0008, 0x863: 0x0008,
962 0x864: 0x0008, 0x865: 0x0008, 0x866: 0x0008, 0x867: 0x0008, 0x868: 0x0008, 0x869: 0x0040,
963 0x86a: 0x0008, 0x86b: 0x0008, 0x86c: 0x0008, 0x86d: 0x0008, 0x86e: 0x0008, 0x86f: 0x0008,
964 0x870: 0x0008, 0x871: 0x0008, 0x872: 0x0008, 0x873: 0x0008, 0x874: 0x0040, 0x875: 0x0008,
965 0x876: 0x0008, 0x877: 0x0008, 0x878: 0x0008, 0x879: 0x0008, 0x87a: 0x0040, 0x87b: 0x0040,
966 0x87c: 0x3308, 0x87d: 0x0008, 0x87e: 0x3008, 0x87f: 0x3308,
967 // Block 0x22, offset 0x880
968 0x880: 0x3008, 0x881: 0x3008, 0x882: 0x3008, 0x883: 0x3008, 0x884: 0x3008, 0x885: 0x0040,
969 0x886: 0x3308, 0x887: 0x3008, 0x888: 0x3008, 0x889: 0x0040, 0x88a: 0x3008, 0x88b: 0x3008,
970 0x88c: 0x3308, 0x88d: 0x3b08, 0x88e: 0x0040, 0x88f: 0x0040, 0x890: 0x0040, 0x891: 0x0040,
971 0x892: 0x0040, 0x893: 0x0040, 0x894: 0x0040, 0x895: 0x3008, 0x896: 0x3008, 0x897: 0x0040,
972 0x898: 0x0040, 0x899: 0x0040, 0x89a: 0x0040, 0x89b: 0x0040, 0x89c: 0x0040, 0x89d: 0x0040,
973 0x89e: 0x0008, 0x89f: 0x0040, 0x8a0: 0x0008, 0x8a1: 0x0008, 0x8a2: 0x3308, 0x8a3: 0x3308,
974 0x8a4: 0x0040, 0x8a5: 0x0040, 0x8a6: 0x0008, 0x8a7: 0x0008, 0x8a8: 0x0008, 0x8a9: 0x0008,
975 0x8aa: 0x0008, 0x8ab: 0x0008, 0x8ac: 0x0008, 0x8ad: 0x0008, 0x8ae: 0x0008, 0x8af: 0x0008,
976 0x8b0: 0x0040, 0x8b1: 0x0008, 0x8b2: 0x0008, 0x8b3: 0x0040, 0x8b4: 0x0040, 0x8b5: 0x0040,
977 0x8b6: 0x0040, 0x8b7: 0x0040, 0x8b8: 0x0040, 0x8b9: 0x0040, 0x8ba: 0x0040, 0x8bb: 0x0040,
978 0x8bc: 0x0040, 0x8bd: 0x0040, 0x8be: 0x0040, 0x8bf: 0x0040,
979 // Block 0x23, offset 0x8c0
980 0x8c0: 0x3008, 0x8c1: 0x3308, 0x8c2: 0x3308, 0x8c3: 0x3308, 0x8c4: 0x3308, 0x8c5: 0x0040,
981 0x8c6: 0x3008, 0x8c7: 0x3008, 0x8c8: 0x3008, 0x8c9: 0x0040, 0x8ca: 0x3008, 0x8cb: 0x3008,
982 0x8cc: 0x3008, 0x8cd: 0x3b08, 0x8ce: 0x0008, 0x8cf: 0x0018, 0x8d0: 0x0040, 0x8d1: 0x0040,
983 0x8d2: 0x0040, 0x8d3: 0x0040, 0x8d4: 0x0008, 0x8d5: 0x0008, 0x8d6: 0x0008, 0x8d7: 0x3008,
984 0x8d8: 0x0018, 0x8d9: 0x0018, 0x8da: 0x0018, 0x8db: 0x0018, 0x8dc: 0x0018, 0x8dd: 0x0018,
985 0x8de: 0x0018, 0x8df: 0x0008, 0x8e0: 0x0008, 0x8e1: 0x0008, 0x8e2: 0x3308, 0x8e3: 0x3308,
986 0x8e4: 0x0040, 0x8e5: 0x0040, 0x8e6: 0x0008, 0x8e7: 0x0008, 0x8e8: 0x0008, 0x8e9: 0x0008,
987 0x8ea: 0x0008, 0x8eb: 0x0008, 0x8ec: 0x0008, 0x8ed: 0x0008, 0x8ee: 0x0008, 0x8ef: 0x0008,
988 0x8f0: 0x0018, 0x8f1: 0x0018, 0x8f2: 0x0018, 0x8f3: 0x0018, 0x8f4: 0x0018, 0x8f5: 0x0018,
989 0x8f6: 0x0018, 0x8f7: 0x0018, 0x8f8: 0x0018, 0x8f9: 0x0018, 0x8fa: 0x0008, 0x8fb: 0x0008,
990 0x8fc: 0x0008, 0x8fd: 0x0008, 0x8fe: 0x0008, 0x8ff: 0x0008,
991 // Block 0x24, offset 0x900
992 0x900: 0x0040, 0x901: 0x0008, 0x902: 0x0008, 0x903: 0x0040, 0x904: 0x0008, 0x905: 0x0040,
993 0x906: 0x0040, 0x907: 0x0008, 0x908: 0x0008, 0x909: 0x0040, 0x90a: 0x0008, 0x90b: 0x0040,
994 0x90c: 0x0040, 0x90d: 0x0008, 0x90e: 0x0040, 0x90f: 0x0040, 0x910: 0x0040, 0x911: 0x0040,
995 0x912: 0x0040, 0x913: 0x0040, 0x914: 0x0008, 0x915: 0x0008, 0x916: 0x0008, 0x917: 0x0008,
996 0x918: 0x0040, 0x919: 0x0008, 0x91a: 0x0008, 0x91b: 0x0008, 0x91c: 0x0008, 0x91d: 0x0008,
997 0x91e: 0x0008, 0x91f: 0x0008, 0x920: 0x0040, 0x921: 0x0008, 0x922: 0x0008, 0x923: 0x0008,
998 0x924: 0x0040, 0x925: 0x0008, 0x926: 0x0040, 0x927: 0x0008, 0x928: 0x0040, 0x929: 0x0040,
999 0x92a: 0x0008, 0x92b: 0x0008, 0x92c: 0x0040, 0x92d: 0x0008, 0x92e: 0x0008, 0x92f: 0x0008,
1000 0x930: 0x0008, 0x931: 0x3308, 0x932: 0x0008, 0x933: 0x0929, 0x934: 0x3308, 0x935: 0x3308,
1001 0x936: 0x3308, 0x937: 0x3308, 0x938: 0x3308, 0x939: 0x3308, 0x93a: 0x0040, 0x93b: 0x3308,
1002 0x93c: 0x3308, 0x93d: 0x0008, 0x93e: 0x0040, 0x93f: 0x0040,
1003 // Block 0x25, offset 0x940
1004 0x940: 0x0008, 0x941: 0x0008, 0x942: 0x0008, 0x943: 0x09d1, 0x944: 0x0008, 0x945: 0x0008,
1005 0x946: 0x0008, 0x947: 0x0008, 0x948: 0x0040, 0x949: 0x0008, 0x94a: 0x0008, 0x94b: 0x0008,
1006 0x94c: 0x0008, 0x94d: 0x0a09, 0x94e: 0x0008, 0x94f: 0x0008, 0x950: 0x0008, 0x951: 0x0008,
1007 0x952: 0x0a41, 0x953: 0x0008, 0x954: 0x0008, 0x955: 0x0008, 0x956: 0x0008, 0x957: 0x0a79,
1008 0x958: 0x0008, 0x959: 0x0008, 0x95a: 0x0008, 0x95b: 0x0008, 0x95c: 0x0ab1, 0x95d: 0x0008,
1009 0x95e: 0x0008, 0x95f: 0x0008, 0x960: 0x0008, 0x961: 0x0008, 0x962: 0x0008, 0x963: 0x0008,
1010 0x964: 0x0008, 0x965: 0x0008, 0x966: 0x0008, 0x967: 0x0008, 0x968: 0x0008, 0x969: 0x0ae9,
1011 0x96a: 0x0008, 0x96b: 0x0008, 0x96c: 0x0008, 0x96d: 0x0040, 0x96e: 0x0040, 0x96f: 0x0040,
1012 0x970: 0x0040, 0x971: 0x3308, 0x972: 0x3308, 0x973: 0x0b21, 0x974: 0x3308, 0x975: 0x0b59,
1013 0x976: 0x0b91, 0x977: 0x0bc9, 0x978: 0x0c19, 0x979: 0x0c51, 0x97a: 0x3308, 0x97b: 0x3308,
1014 0x97c: 0x3308, 0x97d: 0x3308, 0x97e: 0x3308, 0x97f: 0x3008,
1015 // Block 0x26, offset 0x980
1016 0x980: 0x3308, 0x981: 0x0ca1, 0x982: 0x3308, 0x983: 0x3308, 0x984: 0x3b08, 0x985: 0x0018,
1017 0x986: 0x3308, 0x987: 0x3308, 0x988: 0x0008, 0x989: 0x0008, 0x98a: 0x0008, 0x98b: 0x0008,
1018 0x98c: 0x0008, 0x98d: 0x3308, 0x98e: 0x3308, 0x98f: 0x3308, 0x990: 0x3308, 0x991: 0x3308,
1019 0x992: 0x3308, 0x993: 0x0cd9, 0x994: 0x3308, 0x995: 0x3308, 0x996: 0x3308, 0x997: 0x3308,
1020 0x998: 0x0040, 0x999: 0x3308, 0x99a: 0x3308, 0x99b: 0x3308, 0x99c: 0x3308, 0x99d: 0x0d11,
1021 0x99e: 0x3308, 0x99f: 0x3308, 0x9a0: 0x3308, 0x9a1: 0x3308, 0x9a2: 0x0d49, 0x9a3: 0x3308,
1022 0x9a4: 0x3308, 0x9a5: 0x3308, 0x9a6: 0x3308, 0x9a7: 0x0d81, 0x9a8: 0x3308, 0x9a9: 0x3308,
1023 0x9aa: 0x3308, 0x9ab: 0x3308, 0x9ac: 0x0db9, 0x9ad: 0x3308, 0x9ae: 0x3308, 0x9af: 0x3308,
1024 0x9b0: 0x3308, 0x9b1: 0x3308, 0x9b2: 0x3308, 0x9b3: 0x3308, 0x9b4: 0x3308, 0x9b5: 0x3308,
1025 0x9b6: 0x3308, 0x9b7: 0x3308, 0x9b8: 0x3308, 0x9b9: 0x0df1, 0x9ba: 0x3308, 0x9bb: 0x3308,
1026 0x9bc: 0x3308, 0x9bd: 0x0040, 0x9be: 0x0018, 0x9bf: 0x0018,
1027 // Block 0x27, offset 0x9c0
1028 0x9c0: 0x0008, 0x9c1: 0x0008, 0x9c2: 0x0008, 0x9c3: 0x0008, 0x9c4: 0x0008, 0x9c5: 0x0008,
1029 0x9c6: 0x0008, 0x9c7: 0x0008, 0x9c8: 0x0008, 0x9c9: 0x0008, 0x9ca: 0x0008, 0x9cb: 0x0008,
1030 0x9cc: 0x0008, 0x9cd: 0x0008, 0x9ce: 0x0008, 0x9cf: 0x0008, 0x9d0: 0x0008, 0x9d1: 0x0008,
1031 0x9d2: 0x0008, 0x9d3: 0x0008, 0x9d4: 0x0008, 0x9d5: 0x0008, 0x9d6: 0x0008, 0x9d7: 0x0008,
1032 0x9d8: 0x0008, 0x9d9: 0x0008, 0x9da: 0x0008, 0x9db: 0x0008, 0x9dc: 0x0008, 0x9dd: 0x0008,
1033 0x9de: 0x0008, 0x9df: 0x0008, 0x9e0: 0x0008, 0x9e1: 0x0008, 0x9e2: 0x0008, 0x9e3: 0x0008,
1034 0x9e4: 0x0008, 0x9e5: 0x0008, 0x9e6: 0x0008, 0x9e7: 0x0008, 0x9e8: 0x0008, 0x9e9: 0x0008,
1035 0x9ea: 0x0008, 0x9eb: 0x0008, 0x9ec: 0x0039, 0x9ed: 0x0ed1, 0x9ee: 0x0ee9, 0x9ef: 0x0008,
1036 0x9f0: 0x0ef9, 0x9f1: 0x0f09, 0x9f2: 0x0f19, 0x9f3: 0x0f31, 0x9f4: 0x0249, 0x9f5: 0x0f41,
1037 0x9f6: 0x0259, 0x9f7: 0x0f51, 0x9f8: 0x0359, 0x9f9: 0x0f61, 0x9fa: 0x0f71, 0x9fb: 0x0008,
1038 0x9fc: 0x00d9, 0x9fd: 0x0f81, 0x9fe: 0x0f99, 0x9ff: 0x0269,
1039 // Block 0x28, offset 0xa00
1040 0xa00: 0x0fa9, 0xa01: 0x0fb9, 0xa02: 0x0279, 0xa03: 0x0039, 0xa04: 0x0fc9, 0xa05: 0x0fe1,
1041 0xa06: 0x059d, 0xa07: 0x0ee9, 0xa08: 0x0ef9, 0xa09: 0x0f09, 0xa0a: 0x0ff9, 0xa0b: 0x1011,
1042 0xa0c: 0x1029, 0xa0d: 0x0f31, 0xa0e: 0x0008, 0xa0f: 0x0f51, 0xa10: 0x0f61, 0xa11: 0x1041,
1043 0xa12: 0x00d9, 0xa13: 0x1059, 0xa14: 0x05b5, 0xa15: 0x05b5, 0xa16: 0x0f99, 0xa17: 0x0fa9,
1044 0xa18: 0x0fb9, 0xa19: 0x059d, 0xa1a: 0x1071, 0xa1b: 0x1089, 0xa1c: 0x05cd, 0xa1d: 0x1099,
1045 0xa1e: 0x10b1, 0xa1f: 0x10c9, 0xa20: 0x10e1, 0xa21: 0x10f9, 0xa22: 0x0f41, 0xa23: 0x0269,
1046 0xa24: 0x0fb9, 0xa25: 0x1089, 0xa26: 0x1099, 0xa27: 0x10b1, 0xa28: 0x1111, 0xa29: 0x10e1,
1047 0xa2a: 0x10f9, 0xa2b: 0x0008, 0xa2c: 0x0008, 0xa2d: 0x0008, 0xa2e: 0x0008, 0xa2f: 0x0008,
1048 0xa30: 0x0008, 0xa31: 0x0008, 0xa32: 0x0008, 0xa33: 0x0008, 0xa34: 0x0008, 0xa35: 0x0008,
1049 0xa36: 0x0008, 0xa37: 0x0008, 0xa38: 0x1129, 0xa39: 0x0008, 0xa3a: 0x0008, 0xa3b: 0x0008,
1050 0xa3c: 0x0008, 0xa3d: 0x0008, 0xa3e: 0x0008, 0xa3f: 0x0008,
1051 // Block 0x29, offset 0xa40
1052 0xa40: 0x0008, 0xa41: 0x0008, 0xa42: 0x0008, 0xa43: 0x0008, 0xa44: 0x0008, 0xa45: 0x0008,
1053 0xa46: 0x0008, 0xa47: 0x0008, 0xa48: 0x0008, 0xa49: 0x0008, 0xa4a: 0x0008, 0xa4b: 0x0008,
1054 0xa4c: 0x0008, 0xa4d: 0x0008, 0xa4e: 0x0008, 0xa4f: 0x0008, 0xa50: 0x0008, 0xa51: 0x0008,
1055 0xa52: 0x0008, 0xa53: 0x0008, 0xa54: 0x0008, 0xa55: 0x0008, 0xa56: 0x0008, 0xa57: 0x0008,
1056 0xa58: 0x0008, 0xa59: 0x0008, 0xa5a: 0x0008, 0xa5b: 0x1141, 0xa5c: 0x1159, 0xa5d: 0x1169,
1057 0xa5e: 0x1181, 0xa5f: 0x1029, 0xa60: 0x1199, 0xa61: 0x11a9, 0xa62: 0x11c1, 0xa63: 0x11d9,
1058 0xa64: 0x11f1, 0xa65: 0x1209, 0xa66: 0x1221, 0xa67: 0x05e5, 0xa68: 0x1239, 0xa69: 0x1251,
1059 0xa6a: 0xe17d, 0xa6b: 0x1269, 0xa6c: 0x1281, 0xa6d: 0x1299, 0xa6e: 0x12b1, 0xa6f: 0x12c9,
1060 0xa70: 0x12e1, 0xa71: 0x12f9, 0xa72: 0x1311, 0xa73: 0x1329, 0xa74: 0x1341, 0xa75: 0x1359,
1061 0xa76: 0x1371, 0xa77: 0x1389, 0xa78: 0x05fd, 0xa79: 0x13a1, 0xa7a: 0x13b9, 0xa7b: 0x13d1,
1062 0xa7c: 0x13e1, 0xa7d: 0x13f9, 0xa7e: 0x1411, 0xa7f: 0x1429,
1063 // Block 0x2a, offset 0xa80
1064 0xa80: 0xe00d, 0xa81: 0x0008, 0xa82: 0xe00d, 0xa83: 0x0008, 0xa84: 0xe00d, 0xa85: 0x0008,
1065 0xa86: 0xe00d, 0xa87: 0x0008, 0xa88: 0xe00d, 0xa89: 0x0008, 0xa8a: 0xe00d, 0xa8b: 0x0008,
1066 0xa8c: 0xe00d, 0xa8d: 0x0008, 0xa8e: 0xe00d, 0xa8f: 0x0008, 0xa90: 0xe00d, 0xa91: 0x0008,
1067 0xa92: 0xe00d, 0xa93: 0x0008, 0xa94: 0xe00d, 0xa95: 0x0008, 0xa96: 0xe00d, 0xa97: 0x0008,
1068 0xa98: 0xe00d, 0xa99: 0x0008, 0xa9a: 0xe00d, 0xa9b: 0x0008, 0xa9c: 0xe00d, 0xa9d: 0x0008,
1069 0xa9e: 0xe00d, 0xa9f: 0x0008, 0xaa0: 0xe00d, 0xaa1: 0x0008, 0xaa2: 0xe00d, 0xaa3: 0x0008,
1070 0xaa4: 0xe00d, 0xaa5: 0x0008, 0xaa6: 0xe00d, 0xaa7: 0x0008, 0xaa8: 0xe00d, 0xaa9: 0x0008,
1071 0xaaa: 0xe00d, 0xaab: 0x0008, 0xaac: 0xe00d, 0xaad: 0x0008, 0xaae: 0xe00d, 0xaaf: 0x0008,
1072 0xab0: 0xe00d, 0xab1: 0x0008, 0xab2: 0xe00d, 0xab3: 0x0008, 0xab4: 0xe00d, 0xab5: 0x0008,
1073 0xab6: 0xe00d, 0xab7: 0x0008, 0xab8: 0xe00d, 0xab9: 0x0008, 0xaba: 0xe00d, 0xabb: 0x0008,
1074 0xabc: 0xe00d, 0xabd: 0x0008, 0xabe: 0xe00d, 0xabf: 0x0008,
1075 // Block 0x2b, offset 0xac0
1076 0xac0: 0xe00d, 0xac1: 0x0008, 0xac2: 0xe00d, 0xac3: 0x0008, 0xac4: 0xe00d, 0xac5: 0x0008,
1077 0xac6: 0xe00d, 0xac7: 0x0008, 0xac8: 0xe00d, 0xac9: 0x0008, 0xaca: 0xe00d, 0xacb: 0x0008,
1078 0xacc: 0xe00d, 0xacd: 0x0008, 0xace: 0xe00d, 0xacf: 0x0008, 0xad0: 0xe00d, 0xad1: 0x0008,
1079 0xad2: 0xe00d, 0xad3: 0x0008, 0xad4: 0xe00d, 0xad5: 0x0008, 0xad6: 0x0008, 0xad7: 0x0008,
1080 0xad8: 0x0008, 0xad9: 0x0008, 0xada: 0x0615, 0xadb: 0x0635, 0xadc: 0x0008, 0xadd: 0x0008,
1081 0xade: 0x1441, 0xadf: 0x0008, 0xae0: 0xe00d, 0xae1: 0x0008, 0xae2: 0xe00d, 0xae3: 0x0008,
1082 0xae4: 0xe00d, 0xae5: 0x0008, 0xae6: 0xe00d, 0xae7: 0x0008, 0xae8: 0xe00d, 0xae9: 0x0008,
1083 0xaea: 0xe00d, 0xaeb: 0x0008, 0xaec: 0xe00d, 0xaed: 0x0008, 0xaee: 0xe00d, 0xaef: 0x0008,
1084 0xaf0: 0xe00d, 0xaf1: 0x0008, 0xaf2: 0xe00d, 0xaf3: 0x0008, 0xaf4: 0xe00d, 0xaf5: 0x0008,
1085 0xaf6: 0xe00d, 0xaf7: 0x0008, 0xaf8: 0xe00d, 0xaf9: 0x0008, 0xafa: 0xe00d, 0xafb: 0x0008,
1086 0xafc: 0xe00d, 0xafd: 0x0008, 0xafe: 0xe00d, 0xaff: 0x0008,
1087 // Block 0x2c, offset 0xb00
1088 0xb00: 0x0008, 0xb01: 0x0008, 0xb02: 0x0008, 0xb03: 0x0008, 0xb04: 0x0008, 0xb05: 0x0008,
1089 0xb06: 0x0040, 0xb07: 0x0040, 0xb08: 0xe045, 0xb09: 0xe045, 0xb0a: 0xe045, 0xb0b: 0xe045,
1090 0xb0c: 0xe045, 0xb0d: 0xe045, 0xb0e: 0x0040, 0xb0f: 0x0040, 0xb10: 0x0008, 0xb11: 0x0008,
1091 0xb12: 0x0008, 0xb13: 0x0008, 0xb14: 0x0008, 0xb15: 0x0008, 0xb16: 0x0008, 0xb17: 0x0008,
1092 0xb18: 0x0040, 0xb19: 0xe045, 0xb1a: 0x0040, 0xb1b: 0xe045, 0xb1c: 0x0040, 0xb1d: 0xe045,
1093 0xb1e: 0x0040, 0xb1f: 0xe045, 0xb20: 0x0008, 0xb21: 0x0008, 0xb22: 0x0008, 0xb23: 0x0008,
1094 0xb24: 0x0008, 0xb25: 0x0008, 0xb26: 0x0008, 0xb27: 0x0008, 0xb28: 0xe045, 0xb29: 0xe045,
1095 0xb2a: 0xe045, 0xb2b: 0xe045, 0xb2c: 0xe045, 0xb2d: 0xe045, 0xb2e: 0xe045, 0xb2f: 0xe045,
1096 0xb30: 0x0008, 0xb31: 0x1459, 0xb32: 0x0008, 0xb33: 0x1471, 0xb34: 0x0008, 0xb35: 0x1489,
1097 0xb36: 0x0008, 0xb37: 0x14a1, 0xb38: 0x0008, 0xb39: 0x14b9, 0xb3a: 0x0008, 0xb3b: 0x14d1,
1098 0xb3c: 0x0008, 0xb3d: 0x14e9, 0xb3e: 0x0040, 0xb3f: 0x0040,
1099 // Block 0x2d, offset 0xb40
1100 0xb40: 0x1501, 0xb41: 0x1531, 0xb42: 0x1561, 0xb43: 0x1591, 0xb44: 0x15c1, 0xb45: 0x15f1,
1101 0xb46: 0x1621, 0xb47: 0x1651, 0xb48: 0x1501, 0xb49: 0x1531, 0xb4a: 0x1561, 0xb4b: 0x1591,
1102 0xb4c: 0x15c1, 0xb4d: 0x15f1, 0xb4e: 0x1621, 0xb4f: 0x1651, 0xb50: 0x1681, 0xb51: 0x16b1,
1103 0xb52: 0x16e1, 0xb53: 0x1711, 0xb54: 0x1741, 0xb55: 0x1771, 0xb56: 0x17a1, 0xb57: 0x17d1,
1104 0xb58: 0x1681, 0xb59: 0x16b1, 0xb5a: 0x16e1, 0xb5b: 0x1711, 0xb5c: 0x1741, 0xb5d: 0x1771,
1105 0xb5e: 0x17a1, 0xb5f: 0x17d1, 0xb60: 0x1801, 0xb61: 0x1831, 0xb62: 0x1861, 0xb63: 0x1891,
1106 0xb64: 0x18c1, 0xb65: 0x18f1, 0xb66: 0x1921, 0xb67: 0x1951, 0xb68: 0x1801, 0xb69: 0x1831,
1107 0xb6a: 0x1861, 0xb6b: 0x1891, 0xb6c: 0x18c1, 0xb6d: 0x18f1, 0xb6e: 0x1921, 0xb6f: 0x1951,
1108 0xb70: 0x0008, 0xb71: 0x0008, 0xb72: 0x1981, 0xb73: 0x19b1, 0xb74: 0x19d9, 0xb75: 0x0040,
1109 0xb76: 0x0008, 0xb77: 0x1a01, 0xb78: 0xe045, 0xb79: 0xe045, 0xb7a: 0x064d, 0xb7b: 0x1459,
1110 0xb7c: 0x19b1, 0xb7d: 0x0666, 0xb7e: 0x1a31, 0xb7f: 0x0686,
1111 // Block 0x2e, offset 0xb80
1112 0xb80: 0x06a6, 0xb81: 0x1a4a, 0xb82: 0x1a79, 0xb83: 0x1aa9, 0xb84: 0x1ad1, 0xb85: 0x0040,
1113 0xb86: 0x0008, 0xb87: 0x1af9, 0xb88: 0x06c5, 0xb89: 0x1471, 0xb8a: 0x06dd, 0xb8b: 0x1489,
1114 0xb8c: 0x1aa9, 0xb8d: 0x1b2a, 0xb8e: 0x1b5a, 0xb8f: 0x1b8a, 0xb90: 0x0008, 0xb91: 0x0008,
1115 0xb92: 0x0008, 0xb93: 0x1bb9, 0xb94: 0x0040, 0xb95: 0x0040, 0xb96: 0x0008, 0xb97: 0x0008,
1116 0xb98: 0xe045, 0xb99: 0xe045, 0xb9a: 0x06f5, 0xb9b: 0x14a1, 0xb9c: 0x0040, 0xb9d: 0x1bd2,
1117 0xb9e: 0x1c02, 0xb9f: 0x1c32, 0xba0: 0x0008, 0xba1: 0x0008, 0xba2: 0x0008, 0xba3: 0x1c61,
1118 0xba4: 0x0008, 0xba5: 0x0008, 0xba6: 0x0008, 0xba7: 0x0008, 0xba8: 0xe045, 0xba9: 0xe045,
1119 0xbaa: 0x070d, 0xbab: 0x14d1, 0xbac: 0xe04d, 0xbad: 0x1c7a, 0xbae: 0x03d2, 0xbaf: 0x1caa,
1120 0xbb0: 0x0040, 0xbb1: 0x0040, 0xbb2: 0x1cb9, 0xbb3: 0x1ce9, 0xbb4: 0x1d11, 0xbb5: 0x0040,
1121 0xbb6: 0x0008, 0xbb7: 0x1d39, 0xbb8: 0x0725, 0xbb9: 0x14b9, 0xbba: 0x0515, 0xbbb: 0x14e9,
1122 0xbbc: 0x1ce9, 0xbbd: 0x073e, 0xbbe: 0x075e, 0xbbf: 0x0040,
1123 // Block 0x2f, offset 0xbc0
1124 0xbc0: 0x000a, 0xbc1: 0x000a, 0xbc2: 0x000a, 0xbc3: 0x000a, 0xbc4: 0x000a, 0xbc5: 0x000a,
1125 0xbc6: 0x000a, 0xbc7: 0x000a, 0xbc8: 0x000a, 0xbc9: 0x000a, 0xbca: 0x000a, 0xbcb: 0x03c0,
1126 0xbcc: 0x0003, 0xbcd: 0x0003, 0xbce: 0x0340, 0xbcf: 0x0b40, 0xbd0: 0x0018, 0xbd1: 0xe00d,
1127 0xbd2: 0x0018, 0xbd3: 0x0018, 0xbd4: 0x0018, 0xbd5: 0x0018, 0xbd6: 0x0018, 0xbd7: 0x077e,
1128 0xbd8: 0x0018, 0xbd9: 0x0018, 0xbda: 0x0018, 0xbdb: 0x0018, 0xbdc: 0x0018, 0xbdd: 0x0018,
1129 0xbde: 0x0018, 0xbdf: 0x0018, 0xbe0: 0x0018, 0xbe1: 0x0018, 0xbe2: 0x0018, 0xbe3: 0x0018,
1130 0xbe4: 0x0040, 0xbe5: 0x0040, 0xbe6: 0x0040, 0xbe7: 0x0018, 0xbe8: 0x0040, 0xbe9: 0x0040,
1131 0xbea: 0x0340, 0xbeb: 0x0340, 0xbec: 0x0340, 0xbed: 0x0340, 0xbee: 0x0340, 0xbef: 0x000a,
1132 0xbf0: 0x0018, 0xbf1: 0x0018, 0xbf2: 0x0018, 0xbf3: 0x1d69, 0xbf4: 0x1da1, 0xbf5: 0x0018,
1133 0xbf6: 0x1df1, 0xbf7: 0x1e29, 0xbf8: 0x0018, 0xbf9: 0x0018, 0xbfa: 0x0018, 0xbfb: 0x0018,
1134 0xbfc: 0x1e7a, 0xbfd: 0x0018, 0xbfe: 0x079e, 0xbff: 0x0018,
1135 // Block 0x30, offset 0xc00
1136 0xc00: 0x0018, 0xc01: 0x0018, 0xc02: 0x0018, 0xc03: 0x0018, 0xc04: 0x0018, 0xc05: 0x0018,
1137 0xc06: 0x0018, 0xc07: 0x1e92, 0xc08: 0x1eaa, 0xc09: 0x1ec2, 0xc0a: 0x0018, 0xc0b: 0x0018,
1138 0xc0c: 0x0018, 0xc0d: 0x0018, 0xc0e: 0x0018, 0xc0f: 0x0018, 0xc10: 0x0018, 0xc11: 0x0018,
1139 0xc12: 0x0018, 0xc13: 0x0018, 0xc14: 0x0018, 0xc15: 0x0018, 0xc16: 0x0018, 0xc17: 0x1ed9,
1140 0xc18: 0x0018, 0xc19: 0x0018, 0xc1a: 0x0018, 0xc1b: 0x0018, 0xc1c: 0x0018, 0xc1d: 0x0018,
1141 0xc1e: 0x0018, 0xc1f: 0x000a, 0xc20: 0x03c0, 0xc21: 0x0340, 0xc22: 0x0340, 0xc23: 0x0340,
1142 0xc24: 0x03c0, 0xc25: 0x0040, 0xc26: 0x0040, 0xc27: 0x0040, 0xc28: 0x0040, 0xc29: 0x0040,
1143 0xc2a: 0x0340, 0xc2b: 0x0340, 0xc2c: 0x0340, 0xc2d: 0x0340, 0xc2e: 0x0340, 0xc2f: 0x0340,
1144 0xc30: 0x1f41, 0xc31: 0x0f41, 0xc32: 0x0040, 0xc33: 0x0040, 0xc34: 0x1f51, 0xc35: 0x1f61,
1145 0xc36: 0x1f71, 0xc37: 0x1f81, 0xc38: 0x1f91, 0xc39: 0x1fa1, 0xc3a: 0x1fb2, 0xc3b: 0x07bd,
1146 0xc3c: 0x1fc2, 0xc3d: 0x1fd2, 0xc3e: 0x1fe2, 0xc3f: 0x0f71,
1147 // Block 0x31, offset 0xc40
1148 0xc40: 0x1f41, 0xc41: 0x00c9, 0xc42: 0x0069, 0xc43: 0x0079, 0xc44: 0x1f51, 0xc45: 0x1f61,
1149 0xc46: 0x1f71, 0xc47: 0x1f81, 0xc48: 0x1f91, 0xc49: 0x1fa1, 0xc4a: 0x1fb2, 0xc4b: 0x07d5,
1150 0xc4c: 0x1fc2, 0xc4d: 0x1fd2, 0xc4e: 0x1fe2, 0xc4f: 0x0040, 0xc50: 0x0039, 0xc51: 0x0f09,
1151 0xc52: 0x00d9, 0xc53: 0x0369, 0xc54: 0x0ff9, 0xc55: 0x0249, 0xc56: 0x0f51, 0xc57: 0x0359,
1152 0xc58: 0x0f61, 0xc59: 0x0f71, 0xc5a: 0x0f99, 0xc5b: 0x01d9, 0xc5c: 0x0fa9, 0xc5d: 0x0040,
1153 0xc5e: 0x0040, 0xc5f: 0x0040, 0xc60: 0x0018, 0xc61: 0x0018, 0xc62: 0x0018, 0xc63: 0x0018,
1154 0xc64: 0x0018, 0xc65: 0x0018, 0xc66: 0x0018, 0xc67: 0x0018, 0xc68: 0x1ff1, 0xc69: 0x0018,
1155 0xc6a: 0x0018, 0xc6b: 0x0018, 0xc6c: 0x0018, 0xc6d: 0x0018, 0xc6e: 0x0018, 0xc6f: 0x0018,
1156 0xc70: 0x0018, 0xc71: 0x0018, 0xc72: 0x0018, 0xc73: 0x0018, 0xc74: 0x0018, 0xc75: 0x0018,
1157 0xc76: 0x0018, 0xc77: 0x0018, 0xc78: 0x0018, 0xc79: 0x0018, 0xc7a: 0x0018, 0xc7b: 0x0018,
1158 0xc7c: 0x0018, 0xc7d: 0x0018, 0xc7e: 0x0018, 0xc7f: 0x0018,
1159 // Block 0x32, offset 0xc80
1160 0xc80: 0x07ee, 0xc81: 0x080e, 0xc82: 0x1159, 0xc83: 0x082d, 0xc84: 0x0018, 0xc85: 0x084e,
1161 0xc86: 0x086e, 0xc87: 0x1011, 0xc88: 0x0018, 0xc89: 0x088d, 0xc8a: 0x0f31, 0xc8b: 0x0249,
1162 0xc8c: 0x0249, 0xc8d: 0x0249, 0xc8e: 0x0249, 0xc8f: 0x2009, 0xc90: 0x0f41, 0xc91: 0x0f41,
1163 0xc92: 0x0359, 0xc93: 0x0359, 0xc94: 0x0018, 0xc95: 0x0f71, 0xc96: 0x2021, 0xc97: 0x0018,
1164 0xc98: 0x0018, 0xc99: 0x0f99, 0xc9a: 0x2039, 0xc9b: 0x0269, 0xc9c: 0x0269, 0xc9d: 0x0269,
1165 0xc9e: 0x0018, 0xc9f: 0x0018, 0xca0: 0x2049, 0xca1: 0x08ad, 0xca2: 0x2061, 0xca3: 0x0018,
1166 0xca4: 0x13d1, 0xca5: 0x0018, 0xca6: 0x2079, 0xca7: 0x0018, 0xca8: 0x13d1, 0xca9: 0x0018,
1167 0xcaa: 0x0f51, 0xcab: 0x2091, 0xcac: 0x0ee9, 0xcad: 0x1159, 0xcae: 0x0018, 0xcaf: 0x0f09,
1168 0xcb0: 0x0f09, 0xcb1: 0x1199, 0xcb2: 0x0040, 0xcb3: 0x0f61, 0xcb4: 0x00d9, 0xcb5: 0x20a9,
1169 0xcb6: 0x20c1, 0xcb7: 0x20d9, 0xcb8: 0x20f1, 0xcb9: 0x0f41, 0xcba: 0x0018, 0xcbb: 0x08cd,
1170 0xcbc: 0x2109, 0xcbd: 0x10b1, 0xcbe: 0x10b1, 0xcbf: 0x2109,
1171 // Block 0x33, offset 0xcc0
1172 0xcc0: 0x08ed, 0xcc1: 0x0018, 0xcc2: 0x0018, 0xcc3: 0x0018, 0xcc4: 0x0018, 0xcc5: 0x0ef9,
1173 0xcc6: 0x0ef9, 0xcc7: 0x0f09, 0xcc8: 0x0f41, 0xcc9: 0x0259, 0xcca: 0x0018, 0xccb: 0x0018,
1174 0xccc: 0x0018, 0xccd: 0x0018, 0xcce: 0x0008, 0xccf: 0x0018, 0xcd0: 0x2121, 0xcd1: 0x2151,
1175 0xcd2: 0x2181, 0xcd3: 0x21b9, 0xcd4: 0x21e9, 0xcd5: 0x2219, 0xcd6: 0x2249, 0xcd7: 0x2279,
1176 0xcd8: 0x22a9, 0xcd9: 0x22d9, 0xcda: 0x2309, 0xcdb: 0x2339, 0xcdc: 0x2369, 0xcdd: 0x2399,
1177 0xcde: 0x23c9, 0xcdf: 0x23f9, 0xce0: 0x0f41, 0xce1: 0x2421, 0xce2: 0x0905, 0xce3: 0x2439,
1178 0xce4: 0x1089, 0xce5: 0x2451, 0xce6: 0x0925, 0xce7: 0x2469, 0xce8: 0x2491, 0xce9: 0x0369,
1179 0xcea: 0x24a9, 0xceb: 0x0945, 0xcec: 0x0359, 0xced: 0x1159, 0xcee: 0x0ef9, 0xcef: 0x0f61,
1180 0xcf0: 0x0f41, 0xcf1: 0x2421, 0xcf2: 0x0965, 0xcf3: 0x2439, 0xcf4: 0x1089, 0xcf5: 0x2451,
1181 0xcf6: 0x0985, 0xcf7: 0x2469, 0xcf8: 0x2491, 0xcf9: 0x0369, 0xcfa: 0x24a9, 0xcfb: 0x09a5,
1182 0xcfc: 0x0359, 0xcfd: 0x1159, 0xcfe: 0x0ef9, 0xcff: 0x0f61,
1183 // Block 0x34, offset 0xd00
1184 0xd00: 0x0018, 0xd01: 0x0018, 0xd02: 0x0018, 0xd03: 0x0018, 0xd04: 0x0018, 0xd05: 0x0018,
1185 0xd06: 0x0018, 0xd07: 0x0018, 0xd08: 0x0018, 0xd09: 0x0018, 0xd0a: 0x0018, 0xd0b: 0x0040,
1186 0xd0c: 0x0040, 0xd0d: 0x0040, 0xd0e: 0x0040, 0xd0f: 0x0040, 0xd10: 0x0040, 0xd11: 0x0040,
1187 0xd12: 0x0040, 0xd13: 0x0040, 0xd14: 0x0040, 0xd15: 0x0040, 0xd16: 0x0040, 0xd17: 0x0040,
1188 0xd18: 0x0040, 0xd19: 0x0040, 0xd1a: 0x0040, 0xd1b: 0x0040, 0xd1c: 0x0040, 0xd1d: 0x0040,
1189 0xd1e: 0x0040, 0xd1f: 0x0040, 0xd20: 0x00c9, 0xd21: 0x0069, 0xd22: 0x0079, 0xd23: 0x1f51,
1190 0xd24: 0x1f61, 0xd25: 0x1f71, 0xd26: 0x1f81, 0xd27: 0x1f91, 0xd28: 0x1fa1, 0xd29: 0x2601,
1191 0xd2a: 0x2619, 0xd2b: 0x2631, 0xd2c: 0x2649, 0xd2d: 0x2661, 0xd2e: 0x2679, 0xd2f: 0x2691,
1192 0xd30: 0x26a9, 0xd31: 0x26c1, 0xd32: 0x26d9, 0xd33: 0x26f1, 0xd34: 0x0a06, 0xd35: 0x0a26,
1193 0xd36: 0x0a46, 0xd37: 0x0a66, 0xd38: 0x0a86, 0xd39: 0x0aa6, 0xd3a: 0x0ac6, 0xd3b: 0x0ae6,
1194 0xd3c: 0x0b06, 0xd3d: 0x270a, 0xd3e: 0x2732, 0xd3f: 0x275a,
1195 // Block 0x35, offset 0xd40
1196 0xd40: 0x2782, 0xd41: 0x27aa, 0xd42: 0x27d2, 0xd43: 0x27fa, 0xd44: 0x2822, 0xd45: 0x284a,
1197 0xd46: 0x2872, 0xd47: 0x289a, 0xd48: 0x0040, 0xd49: 0x0040, 0xd4a: 0x0040, 0xd4b: 0x0040,
1198 0xd4c: 0x0040, 0xd4d: 0x0040, 0xd4e: 0x0040, 0xd4f: 0x0040, 0xd50: 0x0040, 0xd51: 0x0040,
1199 0xd52: 0x0040, 0xd53: 0x0040, 0xd54: 0x0040, 0xd55: 0x0040, 0xd56: 0x0040, 0xd57: 0x0040,
1200 0xd58: 0x0040, 0xd59: 0x0040, 0xd5a: 0x0040, 0xd5b: 0x0040, 0xd5c: 0x0b26, 0xd5d: 0x0b46,
1201 0xd5e: 0x0b66, 0xd5f: 0x0b86, 0xd60: 0x0ba6, 0xd61: 0x0bc6, 0xd62: 0x0be6, 0xd63: 0x0c06,
1202 0xd64: 0x0c26, 0xd65: 0x0c46, 0xd66: 0x0c66, 0xd67: 0x0c86, 0xd68: 0x0ca6, 0xd69: 0x0cc6,
1203 0xd6a: 0x0ce6, 0xd6b: 0x0d06, 0xd6c: 0x0d26, 0xd6d: 0x0d46, 0xd6e: 0x0d66, 0xd6f: 0x0d86,
1204 0xd70: 0x0da6, 0xd71: 0x0dc6, 0xd72: 0x0de6, 0xd73: 0x0e06, 0xd74: 0x0e26, 0xd75: 0x0e46,
1205 0xd76: 0x0039, 0xd77: 0x0ee9, 0xd78: 0x1159, 0xd79: 0x0ef9, 0xd7a: 0x0f09, 0xd7b: 0x1199,
1206 0xd7c: 0x0f31, 0xd7d: 0x0249, 0xd7e: 0x0f41, 0xd7f: 0x0259,
1207 // Block 0x36, offset 0xd80
1208 0xd80: 0x0f51, 0xd81: 0x0359, 0xd82: 0x0f61, 0xd83: 0x0f71, 0xd84: 0x00d9, 0xd85: 0x0f99,
1209 0xd86: 0x2039, 0xd87: 0x0269, 0xd88: 0x01d9, 0xd89: 0x0fa9, 0xd8a: 0x0fb9, 0xd8b: 0x1089,
1210 0xd8c: 0x0279, 0xd8d: 0x0369, 0xd8e: 0x0289, 0xd8f: 0x13d1, 0xd90: 0x0039, 0xd91: 0x0ee9,
1211 0xd92: 0x1159, 0xd93: 0x0ef9, 0xd94: 0x0f09, 0xd95: 0x1199, 0xd96: 0x0f31, 0xd97: 0x0249,
1212 0xd98: 0x0f41, 0xd99: 0x0259, 0xd9a: 0x0f51, 0xd9b: 0x0359, 0xd9c: 0x0f61, 0xd9d: 0x0f71,
1213 0xd9e: 0x00d9, 0xd9f: 0x0f99, 0xda0: 0x2039, 0xda1: 0x0269, 0xda2: 0x01d9, 0xda3: 0x0fa9,
1214 0xda4: 0x0fb9, 0xda5: 0x1089, 0xda6: 0x0279, 0xda7: 0x0369, 0xda8: 0x0289, 0xda9: 0x13d1,
1215 0xdaa: 0x1f41, 0xdab: 0x0018, 0xdac: 0x0018, 0xdad: 0x0018, 0xdae: 0x0018, 0xdaf: 0x0018,
1216 0xdb0: 0x0018, 0xdb1: 0x0018, 0xdb2: 0x0018, 0xdb3: 0x0018, 0xdb4: 0x0018, 0xdb5: 0x0018,
1217 0xdb6: 0x0018, 0xdb7: 0x0018, 0xdb8: 0x0018, 0xdb9: 0x0018, 0xdba: 0x0018, 0xdbb: 0x0018,
1218 0xdbc: 0x0018, 0xdbd: 0x0018, 0xdbe: 0x0018, 0xdbf: 0x0018,
1219 // Block 0x37, offset 0xdc0
1220 0xdc0: 0x0008, 0xdc1: 0x0008, 0xdc2: 0x0008, 0xdc3: 0x0008, 0xdc4: 0x0008, 0xdc5: 0x0008,
1221 0xdc6: 0x0008, 0xdc7: 0x0008, 0xdc8: 0x0008, 0xdc9: 0x0008, 0xdca: 0x0008, 0xdcb: 0x0008,
1222 0xdcc: 0x0008, 0xdcd: 0x0008, 0xdce: 0x0008, 0xdcf: 0x0008, 0xdd0: 0x0008, 0xdd1: 0x0008,
1223 0xdd2: 0x0008, 0xdd3: 0x0008, 0xdd4: 0x0008, 0xdd5: 0x0008, 0xdd6: 0x0008, 0xdd7: 0x0008,
1224 0xdd8: 0x0008, 0xdd9: 0x0008, 0xdda: 0x0008, 0xddb: 0x0008, 0xddc: 0x0008, 0xddd: 0x0008,
1225 0xdde: 0x0008, 0xddf: 0x0040, 0xde0: 0xe00d, 0xde1: 0x0008, 0xde2: 0x2971, 0xde3: 0x0ebd,
1226 0xde4: 0x2989, 0xde5: 0x0008, 0xde6: 0x0008, 0xde7: 0xe07d, 0xde8: 0x0008, 0xde9: 0xe01d,
1227 0xdea: 0x0008, 0xdeb: 0xe03d, 0xdec: 0x0008, 0xded: 0x0fe1, 0xdee: 0x1281, 0xdef: 0x0fc9,
1228 0xdf0: 0x1141, 0xdf1: 0x0008, 0xdf2: 0xe00d, 0xdf3: 0x0008, 0xdf4: 0x0008, 0xdf5: 0xe01d,
1229 0xdf6: 0x0008, 0xdf7: 0x0008, 0xdf8: 0x0008, 0xdf9: 0x0008, 0xdfa: 0x0008, 0xdfb: 0x0008,
1230 0xdfc: 0x0259, 0xdfd: 0x1089, 0xdfe: 0x29a1, 0xdff: 0x29b9,
1231 // Block 0x38, offset 0xe00
1232 0xe00: 0xe00d, 0xe01: 0x0008, 0xe02: 0xe00d, 0xe03: 0x0008, 0xe04: 0xe00d, 0xe05: 0x0008,
1233 0xe06: 0xe00d, 0xe07: 0x0008, 0xe08: 0xe00d, 0xe09: 0x0008, 0xe0a: 0xe00d, 0xe0b: 0x0008,
1234 0xe0c: 0xe00d, 0xe0d: 0x0008, 0xe0e: 0xe00d, 0xe0f: 0x0008, 0xe10: 0xe00d, 0xe11: 0x0008,
1235 0xe12: 0xe00d, 0xe13: 0x0008, 0xe14: 0xe00d, 0xe15: 0x0008, 0xe16: 0xe00d, 0xe17: 0x0008,
1236 0xe18: 0xe00d, 0xe19: 0x0008, 0xe1a: 0xe00d, 0xe1b: 0x0008, 0xe1c: 0xe00d, 0xe1d: 0x0008,
1237 0xe1e: 0xe00d, 0xe1f: 0x0008, 0xe20: 0xe00d, 0xe21: 0x0008, 0xe22: 0xe00d, 0xe23: 0x0008,
1238 0xe24: 0x0008, 0xe25: 0x0018, 0xe26: 0x0018, 0xe27: 0x0018, 0xe28: 0x0018, 0xe29: 0x0018,
1239 0xe2a: 0x0018, 0xe2b: 0xe03d, 0xe2c: 0x0008, 0xe2d: 0xe01d, 0xe2e: 0x0008, 0xe2f: 0x3308,
1240 0xe30: 0x3308, 0xe31: 0x3308, 0xe32: 0xe00d, 0xe33: 0x0008, 0xe34: 0x0040, 0xe35: 0x0040,
1241 0xe36: 0x0040, 0xe37: 0x0040, 0xe38: 0x0040, 0xe39: 0x0018, 0xe3a: 0x0018, 0xe3b: 0x0018,
1242 0xe3c: 0x0018, 0xe3d: 0x0018, 0xe3e: 0x0018, 0xe3f: 0x0018,
1243 // Block 0x39, offset 0xe40
1244 0xe40: 0x26fd, 0xe41: 0x271d, 0xe42: 0x273d, 0xe43: 0x275d, 0xe44: 0x277d, 0xe45: 0x279d,
1245 0xe46: 0x27bd, 0xe47: 0x27dd, 0xe48: 0x27fd, 0xe49: 0x281d, 0xe4a: 0x283d, 0xe4b: 0x285d,
1246 0xe4c: 0x287d, 0xe4d: 0x289d, 0xe4e: 0x28bd, 0xe4f: 0x28dd, 0xe50: 0x28fd, 0xe51: 0x291d,
1247 0xe52: 0x293d, 0xe53: 0x295d, 0xe54: 0x297d, 0xe55: 0x299d, 0xe56: 0x0040, 0xe57: 0x0040,
1248 0xe58: 0x0040, 0xe59: 0x0040, 0xe5a: 0x0040, 0xe5b: 0x0040, 0xe5c: 0x0040, 0xe5d: 0x0040,
1249 0xe5e: 0x0040, 0xe5f: 0x0040, 0xe60: 0x0040, 0xe61: 0x0040, 0xe62: 0x0040, 0xe63: 0x0040,
1250 0xe64: 0x0040, 0xe65: 0x0040, 0xe66: 0x0040, 0xe67: 0x0040, 0xe68: 0x0040, 0xe69: 0x0040,
1251 0xe6a: 0x0040, 0xe6b: 0x0040, 0xe6c: 0x0040, 0xe6d: 0x0040, 0xe6e: 0x0040, 0xe6f: 0x0040,
1252 0xe70: 0x0040, 0xe71: 0x0040, 0xe72: 0x0040, 0xe73: 0x0040, 0xe74: 0x0040, 0xe75: 0x0040,
1253 0xe76: 0x0040, 0xe77: 0x0040, 0xe78: 0x0040, 0xe79: 0x0040, 0xe7a: 0x0040, 0xe7b: 0x0040,
1254 0xe7c: 0x0040, 0xe7d: 0x0040, 0xe7e: 0x0040, 0xe7f: 0x0040,
1255 // Block 0x3a, offset 0xe80
1256 0xe80: 0x000a, 0xe81: 0x0018, 0xe82: 0x29d1, 0xe83: 0x0018, 0xe84: 0x0018, 0xe85: 0x0008,
1257 0xe86: 0x0008, 0xe87: 0x0008, 0xe88: 0x0018, 0xe89: 0x0018, 0xe8a: 0x0018, 0xe8b: 0x0018,
1258 0xe8c: 0x0018, 0xe8d: 0x0018, 0xe8e: 0x0018, 0xe8f: 0x0018, 0xe90: 0x0018, 0xe91: 0x0018,
1259 0xe92: 0x0018, 0xe93: 0x0018, 0xe94: 0x0018, 0xe95: 0x0018, 0xe96: 0x0018, 0xe97: 0x0018,
1260 0xe98: 0x0018, 0xe99: 0x0018, 0xe9a: 0x0018, 0xe9b: 0x0018, 0xe9c: 0x0018, 0xe9d: 0x0018,
1261 0xe9e: 0x0018, 0xe9f: 0x0018, 0xea0: 0x0018, 0xea1: 0x0018, 0xea2: 0x0018, 0xea3: 0x0018,
1262 0xea4: 0x0018, 0xea5: 0x0018, 0xea6: 0x0018, 0xea7: 0x0018, 0xea8: 0x0018, 0xea9: 0x0018,
1263 0xeaa: 0x3308, 0xeab: 0x3308, 0xeac: 0x3308, 0xead: 0x3308, 0xeae: 0x3018, 0xeaf: 0x3018,
1264 0xeb0: 0x0018, 0xeb1: 0x0018, 0xeb2: 0x0018, 0xeb3: 0x0018, 0xeb4: 0x0018, 0xeb5: 0x0018,
1265 0xeb6: 0xe125, 0xeb7: 0x0018, 0xeb8: 0x29bd, 0xeb9: 0x29dd, 0xeba: 0x29fd, 0xebb: 0x0018,
1266 0xebc: 0x0008, 0xebd: 0x0018, 0xebe: 0x0018, 0xebf: 0x0018,
1267 // Block 0x3b, offset 0xec0
1268 0xec0: 0x2b3d, 0xec1: 0x2b5d, 0xec2: 0x2b7d, 0xec3: 0x2b9d, 0xec4: 0x2bbd, 0xec5: 0x2bdd,
1269 0xec6: 0x2bdd, 0xec7: 0x2bdd, 0xec8: 0x2bfd, 0xec9: 0x2bfd, 0xeca: 0x2bfd, 0xecb: 0x2bfd,
1270 0xecc: 0x2c1d, 0xecd: 0x2c1d, 0xece: 0x2c1d, 0xecf: 0x2c3d, 0xed0: 0x2c5d, 0xed1: 0x2c5d,
1271 0xed2: 0x2a7d, 0xed3: 0x2a7d, 0xed4: 0x2c5d, 0xed5: 0x2c5d, 0xed6: 0x2c7d, 0xed7: 0x2c7d,
1272 0xed8: 0x2c5d, 0xed9: 0x2c5d, 0xeda: 0x2a7d, 0xedb: 0x2a7d, 0xedc: 0x2c5d, 0xedd: 0x2c5d,
1273 0xede: 0x2c3d, 0xedf: 0x2c3d, 0xee0: 0x2c9d, 0xee1: 0x2c9d, 0xee2: 0x2cbd, 0xee3: 0x2cbd,
1274 0xee4: 0x0040, 0xee5: 0x2cdd, 0xee6: 0x2cfd, 0xee7: 0x2d1d, 0xee8: 0x2d1d, 0xee9: 0x2d3d,
1275 0xeea: 0x2d5d, 0xeeb: 0x2d7d, 0xeec: 0x2d9d, 0xeed: 0x2dbd, 0xeee: 0x2ddd, 0xeef: 0x2dfd,
1276 0xef0: 0x2e1d, 0xef1: 0x2e3d, 0xef2: 0x2e3d, 0xef3: 0x2e5d, 0xef4: 0x2e7d, 0xef5: 0x2e7d,
1277 0xef6: 0x2e9d, 0xef7: 0x2ebd, 0xef8: 0x2e5d, 0xef9: 0x2edd, 0xefa: 0x2efd, 0xefb: 0x2edd,
1278 0xefc: 0x2e5d, 0xefd: 0x2f1d, 0xefe: 0x2f3d, 0xeff: 0x2f5d,
1279 // Block 0x3c, offset 0xf00
1280 0xf00: 0x2f7d, 0xf01: 0x2f9d, 0xf02: 0x2cfd, 0xf03: 0x2cdd, 0xf04: 0x2fbd, 0xf05: 0x2fdd,
1281 0xf06: 0x2ffd, 0xf07: 0x301d, 0xf08: 0x303d, 0xf09: 0x305d, 0xf0a: 0x307d, 0xf0b: 0x309d,
1282 0xf0c: 0x30bd, 0xf0d: 0x30dd, 0xf0e: 0x30fd, 0xf0f: 0x0040, 0xf10: 0x0018, 0xf11: 0x0018,
1283 0xf12: 0x311d, 0xf13: 0x313d, 0xf14: 0x315d, 0xf15: 0x317d, 0xf16: 0x319d, 0xf17: 0x31bd,
1284 0xf18: 0x31dd, 0xf19: 0x31fd, 0xf1a: 0x321d, 0xf1b: 0x323d, 0xf1c: 0x315d, 0xf1d: 0x325d,
1285 0xf1e: 0x327d, 0xf1f: 0x329d, 0xf20: 0x0008, 0xf21: 0x0008, 0xf22: 0x0008, 0xf23: 0x0008,
1286 0xf24: 0x0008, 0xf25: 0x0008, 0xf26: 0x0008, 0xf27: 0x0008, 0xf28: 0x0008, 0xf29: 0x0008,
1287 0xf2a: 0x0008, 0xf2b: 0x0008, 0xf2c: 0x0008, 0xf2d: 0x0008, 0xf2e: 0x0008, 0xf2f: 0x0008,
1288 0xf30: 0x0008, 0xf31: 0x0008, 0xf32: 0x0008, 0xf33: 0x0008, 0xf34: 0x0008, 0xf35: 0x0008,
1289 0xf36: 0x0008, 0xf37: 0x0008, 0xf38: 0x0008, 0xf39: 0x0008, 0xf3a: 0x0008, 0xf3b: 0x0040,
1290 0xf3c: 0x0040, 0xf3d: 0x0040, 0xf3e: 0x0040, 0xf3f: 0x0040,
1291 // Block 0x3d, offset 0xf40
1292 0xf40: 0x36a2, 0xf41: 0x36d2, 0xf42: 0x3702, 0xf43: 0x3732, 0xf44: 0x32bd, 0xf45: 0x32dd,
1293 0xf46: 0x32fd, 0xf47: 0x331d, 0xf48: 0x0018, 0xf49: 0x0018, 0xf4a: 0x0018, 0xf4b: 0x0018,
1294 0xf4c: 0x0018, 0xf4d: 0x0018, 0xf4e: 0x0018, 0xf4f: 0x0018, 0xf50: 0x333d, 0xf51: 0x3761,
1295 0xf52: 0x3779, 0xf53: 0x3791, 0xf54: 0x37a9, 0xf55: 0x37c1, 0xf56: 0x37d9, 0xf57: 0x37f1,
1296 0xf58: 0x3809, 0xf59: 0x3821, 0xf5a: 0x3839, 0xf5b: 0x3851, 0xf5c: 0x3869, 0xf5d: 0x3881,
1297 0xf5e: 0x3899, 0xf5f: 0x38b1, 0xf60: 0x335d, 0xf61: 0x337d, 0xf62: 0x339d, 0xf63: 0x33bd,
1298 0xf64: 0x33dd, 0xf65: 0x33dd, 0xf66: 0x33fd, 0xf67: 0x341d, 0xf68: 0x343d, 0xf69: 0x345d,
1299 0xf6a: 0x347d, 0xf6b: 0x349d, 0xf6c: 0x34bd, 0xf6d: 0x34dd, 0xf6e: 0x34fd, 0xf6f: 0x351d,
1300 0xf70: 0x353d, 0xf71: 0x355d, 0xf72: 0x357d, 0xf73: 0x359d, 0xf74: 0x35bd, 0xf75: 0x35dd,
1301 0xf76: 0x35fd, 0xf77: 0x361d, 0xf78: 0x363d, 0xf79: 0x365d, 0xf7a: 0x367d, 0xf7b: 0x369d,
1302 0xf7c: 0x38c9, 0xf7d: 0x3901, 0xf7e: 0x36bd, 0xf7f: 0x0018,
1303 // Block 0x3e, offset 0xf80
1304 0xf80: 0x36dd, 0xf81: 0x36fd, 0xf82: 0x371d, 0xf83: 0x373d, 0xf84: 0x375d, 0xf85: 0x377d,
1305 0xf86: 0x379d, 0xf87: 0x37bd, 0xf88: 0x37dd, 0xf89: 0x37fd, 0xf8a: 0x381d, 0xf8b: 0x383d,
1306 0xf8c: 0x385d, 0xf8d: 0x387d, 0xf8e: 0x389d, 0xf8f: 0x38bd, 0xf90: 0x38dd, 0xf91: 0x38fd,
1307 0xf92: 0x391d, 0xf93: 0x393d, 0xf94: 0x395d, 0xf95: 0x397d, 0xf96: 0x399d, 0xf97: 0x39bd,
1308 0xf98: 0x39dd, 0xf99: 0x39fd, 0xf9a: 0x3a1d, 0xf9b: 0x3a3d, 0xf9c: 0x3a5d, 0xf9d: 0x3a7d,
1309 0xf9e: 0x3a9d, 0xf9f: 0x3abd, 0xfa0: 0x3add, 0xfa1: 0x3afd, 0xfa2: 0x3b1d, 0xfa3: 0x3b3d,
1310 0xfa4: 0x3b5d, 0xfa5: 0x3b7d, 0xfa6: 0x127d, 0xfa7: 0x3b9d, 0xfa8: 0x3bbd, 0xfa9: 0x3bdd,
1311 0xfaa: 0x3bfd, 0xfab: 0x3c1d, 0xfac: 0x3c3d, 0xfad: 0x3c5d, 0xfae: 0x239d, 0xfaf: 0x3c7d,
1312 0xfb0: 0x3c9d, 0xfb1: 0x3939, 0xfb2: 0x3951, 0xfb3: 0x3969, 0xfb4: 0x3981, 0xfb5: 0x3999,
1313 0xfb6: 0x39b1, 0xfb7: 0x39c9, 0xfb8: 0x39e1, 0xfb9: 0x39f9, 0xfba: 0x3a11, 0xfbb: 0x3a29,
1314 0xfbc: 0x3a41, 0xfbd: 0x3a59, 0xfbe: 0x3a71, 0xfbf: 0x3a89,
1315 // Block 0x3f, offset 0xfc0
1316 0xfc0: 0x3aa1, 0xfc1: 0x3ac9, 0xfc2: 0x3af1, 0xfc3: 0x3b19, 0xfc4: 0x3b41, 0xfc5: 0x3b69,
1317 0xfc6: 0x3b91, 0xfc7: 0x3bb9, 0xfc8: 0x3be1, 0xfc9: 0x3c09, 0xfca: 0x3c39, 0xfcb: 0x3c69,
1318 0xfcc: 0x3c99, 0xfcd: 0x3cbd, 0xfce: 0x3cb1, 0xfcf: 0x3cdd, 0xfd0: 0x3cfd, 0xfd1: 0x3d15,
1319 0xfd2: 0x3d2d, 0xfd3: 0x3d45, 0xfd4: 0x3d5d, 0xfd5: 0x3d5d, 0xfd6: 0x3d45, 0xfd7: 0x3d75,
1320 0xfd8: 0x07bd, 0xfd9: 0x3d8d, 0xfda: 0x3da5, 0xfdb: 0x3dbd, 0xfdc: 0x3dd5, 0xfdd: 0x3ded,
1321 0xfde: 0x3e05, 0xfdf: 0x3e1d, 0xfe0: 0x3e35, 0xfe1: 0x3e4d, 0xfe2: 0x3e65, 0xfe3: 0x3e7d,
1322 0xfe4: 0x3e95, 0xfe5: 0x3e95, 0xfe6: 0x3ead, 0xfe7: 0x3ead, 0xfe8: 0x3ec5, 0xfe9: 0x3ec5,
1323 0xfea: 0x3edd, 0xfeb: 0x3ef5, 0xfec: 0x3f0d, 0xfed: 0x3f25, 0xfee: 0x3f3d, 0xfef: 0x3f3d,
1324 0xff0: 0x3f55, 0xff1: 0x3f55, 0xff2: 0x3f55, 0xff3: 0x3f6d, 0xff4: 0x3f85, 0xff5: 0x3f9d,
1325 0xff6: 0x3fb5, 0xff7: 0x3f9d, 0xff8: 0x3fcd, 0xff9: 0x3fe5, 0xffa: 0x3f6d, 0xffb: 0x3ffd,
1326 0xffc: 0x4015, 0xffd: 0x4015, 0xffe: 0x4015, 0xfff: 0x0040,
1327 // Block 0x40, offset 0x1000
1328 0x1000: 0x3cc9, 0x1001: 0x3d31, 0x1002: 0x3d99, 0x1003: 0x3e01, 0x1004: 0x3e51, 0x1005: 0x3eb9,
1329 0x1006: 0x3f09, 0x1007: 0x3f59, 0x1008: 0x3fd9, 0x1009: 0x4041, 0x100a: 0x4091, 0x100b: 0x40e1,
1330 0x100c: 0x4131, 0x100d: 0x4199, 0x100e: 0x4201, 0x100f: 0x4251, 0x1010: 0x42a1, 0x1011: 0x42d9,
1331 0x1012: 0x4329, 0x1013: 0x4391, 0x1014: 0x43f9, 0x1015: 0x4431, 0x1016: 0x44b1, 0x1017: 0x4549,
1332 0x1018: 0x45c9, 0x1019: 0x4619, 0x101a: 0x4699, 0x101b: 0x4719, 0x101c: 0x4781, 0x101d: 0x47d1,
1333 0x101e: 0x4821, 0x101f: 0x4871, 0x1020: 0x48d9, 0x1021: 0x4959, 0x1022: 0x49c1, 0x1023: 0x4a11,
1334 0x1024: 0x4a61, 0x1025: 0x4ab1, 0x1026: 0x4ae9, 0x1027: 0x4b21, 0x1028: 0x4b59, 0x1029: 0x4b91,
1335 0x102a: 0x4be1, 0x102b: 0x4c31, 0x102c: 0x4cb1, 0x102d: 0x4d01, 0x102e: 0x4d69, 0x102f: 0x4de9,
1336 0x1030: 0x4e39, 0x1031: 0x4e71, 0x1032: 0x4ea9, 0x1033: 0x4f29, 0x1034: 0x4f91, 0x1035: 0x5011,
1337 0x1036: 0x5061, 0x1037: 0x50e1, 0x1038: 0x5119, 0x1039: 0x5169, 0x103a: 0x51b9, 0x103b: 0x5209,
1338 0x103c: 0x5259, 0x103d: 0x52a9, 0x103e: 0x5311, 0x103f: 0x5361,
1339 // Block 0x41, offset 0x1040
1340 0x1040: 0x5399, 0x1041: 0x53e9, 0x1042: 0x5439, 0x1043: 0x5489, 0x1044: 0x54f1, 0x1045: 0x5541,
1341 0x1046: 0x5591, 0x1047: 0x55e1, 0x1048: 0x5661, 0x1049: 0x56c9, 0x104a: 0x5701, 0x104b: 0x5781,
1342 0x104c: 0x57b9, 0x104d: 0x5821, 0x104e: 0x5889, 0x104f: 0x58d9, 0x1050: 0x5929, 0x1051: 0x5979,
1343 0x1052: 0x59e1, 0x1053: 0x5a19, 0x1054: 0x5a69, 0x1055: 0x5ad1, 0x1056: 0x5b09, 0x1057: 0x5b89,
1344 0x1058: 0x5bd9, 0x1059: 0x5c01, 0x105a: 0x5c29, 0x105b: 0x5c51, 0x105c: 0x5c79, 0x105d: 0x5ca1,
1345 0x105e: 0x5cc9, 0x105f: 0x5cf1, 0x1060: 0x5d19, 0x1061: 0x5d41, 0x1062: 0x5d69, 0x1063: 0x5d99,
1346 0x1064: 0x5dc9, 0x1065: 0x5df9, 0x1066: 0x5e29, 0x1067: 0x5e59, 0x1068: 0x5e89, 0x1069: 0x5eb9,
1347 0x106a: 0x5ee9, 0x106b: 0x5f19, 0x106c: 0x5f49, 0x106d: 0x5f79, 0x106e: 0x5fa9, 0x106f: 0x5fd9,
1348 0x1070: 0x6009, 0x1071: 0x402d, 0x1072: 0x6039, 0x1073: 0x6051, 0x1074: 0x404d, 0x1075: 0x6069,
1349 0x1076: 0x6081, 0x1077: 0x6099, 0x1078: 0x406d, 0x1079: 0x406d, 0x107a: 0x60b1, 0x107b: 0x60c9,
1350 0x107c: 0x6101, 0x107d: 0x6139, 0x107e: 0x6171, 0x107f: 0x61a9,
1351 // Block 0x42, offset 0x1080
1352 0x1080: 0x6211, 0x1081: 0x6229, 0x1082: 0x408d, 0x1083: 0x6241, 0x1084: 0x6259, 0x1085: 0x6271,
1353 0x1086: 0x6289, 0x1087: 0x62a1, 0x1088: 0x40ad, 0x1089: 0x62b9, 0x108a: 0x62e1, 0x108b: 0x62f9,
1354 0x108c: 0x40cd, 0x108d: 0x40cd, 0x108e: 0x6311, 0x108f: 0x6329, 0x1090: 0x6341, 0x1091: 0x40ed,
1355 0x1092: 0x410d, 0x1093: 0x412d, 0x1094: 0x414d, 0x1095: 0x416d, 0x1096: 0x6359, 0x1097: 0x6371,
1356 0x1098: 0x6389, 0x1099: 0x63a1, 0x109a: 0x63b9, 0x109b: 0x418d, 0x109c: 0x63d1, 0x109d: 0x63e9,
1357 0x109e: 0x6401, 0x109f: 0x41ad, 0x10a0: 0x41cd, 0x10a1: 0x6419, 0x10a2: 0x41ed, 0x10a3: 0x420d,
1358 0x10a4: 0x422d, 0x10a5: 0x6431, 0x10a6: 0x424d, 0x10a7: 0x6449, 0x10a8: 0x6479, 0x10a9: 0x6211,
1359 0x10aa: 0x426d, 0x10ab: 0x428d, 0x10ac: 0x42ad, 0x10ad: 0x42cd, 0x10ae: 0x64b1, 0x10af: 0x64f1,
1360 0x10b0: 0x6539, 0x10b1: 0x6551, 0x10b2: 0x42ed, 0x10b3: 0x6569, 0x10b4: 0x6581, 0x10b5: 0x6599,
1361 0x10b6: 0x430d, 0x10b7: 0x65b1, 0x10b8: 0x65c9, 0x10b9: 0x65b1, 0x10ba: 0x65e1, 0x10bb: 0x65f9,
1362 0x10bc: 0x432d, 0x10bd: 0x6611, 0x10be: 0x6629, 0x10bf: 0x6611,
1363 // Block 0x43, offset 0x10c0
1364 0x10c0: 0x434d, 0x10c1: 0x436d, 0x10c2: 0x0040, 0x10c3: 0x6641, 0x10c4: 0x6659, 0x10c5: 0x6671,
1365 0x10c6: 0x6689, 0x10c7: 0x0040, 0x10c8: 0x66c1, 0x10c9: 0x66d9, 0x10ca: 0x66f1, 0x10cb: 0x6709,
1366 0x10cc: 0x6721, 0x10cd: 0x6739, 0x10ce: 0x6401, 0x10cf: 0x6751, 0x10d0: 0x6769, 0x10d1: 0x6781,
1367 0x10d2: 0x438d, 0x10d3: 0x6799, 0x10d4: 0x6289, 0x10d5: 0x43ad, 0x10d6: 0x43cd, 0x10d7: 0x67b1,
1368 0x10d8: 0x0040, 0x10d9: 0x43ed, 0x10da: 0x67c9, 0x10db: 0x67e1, 0x10dc: 0x67f9, 0x10dd: 0x6811,
1369 0x10de: 0x6829, 0x10df: 0x6859, 0x10e0: 0x6889, 0x10e1: 0x68b1, 0x10e2: 0x68d9, 0x10e3: 0x6901,
1370 0x10e4: 0x6929, 0x10e5: 0x6951, 0x10e6: 0x6979, 0x10e7: 0x69a1, 0x10e8: 0x69c9, 0x10e9: 0x69f1,
1371 0x10ea: 0x6a21, 0x10eb: 0x6a51, 0x10ec: 0x6a81, 0x10ed: 0x6ab1, 0x10ee: 0x6ae1, 0x10ef: 0x6b11,
1372 0x10f0: 0x6b41, 0x10f1: 0x6b71, 0x10f2: 0x6ba1, 0x10f3: 0x6bd1, 0x10f4: 0x6c01, 0x10f5: 0x6c31,
1373 0x10f6: 0x6c61, 0x10f7: 0x6c91, 0x10f8: 0x6cc1, 0x10f9: 0x6cf1, 0x10fa: 0x6d21, 0x10fb: 0x6d51,
1374 0x10fc: 0x6d81, 0x10fd: 0x6db1, 0x10fe: 0x6de1, 0x10ff: 0x440d,
1375 // Block 0x44, offset 0x1100
1376 0x1100: 0xe00d, 0x1101: 0x0008, 0x1102: 0xe00d, 0x1103: 0x0008, 0x1104: 0xe00d, 0x1105: 0x0008,
1377 0x1106: 0xe00d, 0x1107: 0x0008, 0x1108: 0xe00d, 0x1109: 0x0008, 0x110a: 0xe00d, 0x110b: 0x0008,
1378 0x110c: 0xe00d, 0x110d: 0x0008, 0x110e: 0xe00d, 0x110f: 0x0008, 0x1110: 0xe00d, 0x1111: 0x0008,
1379 0x1112: 0xe00d, 0x1113: 0x0008, 0x1114: 0xe00d, 0x1115: 0x0008, 0x1116: 0xe00d, 0x1117: 0x0008,
1380 0x1118: 0xe00d, 0x1119: 0x0008, 0x111a: 0xe00d, 0x111b: 0x0008, 0x111c: 0xe00d, 0x111d: 0x0008,
1381 0x111e: 0xe00d, 0x111f: 0x0008, 0x1120: 0xe00d, 0x1121: 0x0008, 0x1122: 0xe00d, 0x1123: 0x0008,
1382 0x1124: 0xe00d, 0x1125: 0x0008, 0x1126: 0xe00d, 0x1127: 0x0008, 0x1128: 0xe00d, 0x1129: 0x0008,
1383 0x112a: 0xe00d, 0x112b: 0x0008, 0x112c: 0xe00d, 0x112d: 0x0008, 0x112e: 0x0008, 0x112f: 0x3308,
1384 0x1130: 0x3318, 0x1131: 0x3318, 0x1132: 0x3318, 0x1133: 0x0018, 0x1134: 0x3308, 0x1135: 0x3308,
1385 0x1136: 0x3308, 0x1137: 0x3308, 0x1138: 0x3308, 0x1139: 0x3308, 0x113a: 0x3308, 0x113b: 0x3308,
1386 0x113c: 0x3308, 0x113d: 0x3308, 0x113e: 0x0018, 0x113f: 0x0008,
1387 // Block 0x45, offset 0x1140
1388 0x1140: 0xe00d, 0x1141: 0x0008, 0x1142: 0xe00d, 0x1143: 0x0008, 0x1144: 0xe00d, 0x1145: 0x0008,
1389 0x1146: 0xe00d, 0x1147: 0x0008, 0x1148: 0xe00d, 0x1149: 0x0008, 0x114a: 0xe00d, 0x114b: 0x0008,
1390 0x114c: 0xe00d, 0x114d: 0x0008, 0x114e: 0xe00d, 0x114f: 0x0008, 0x1150: 0xe00d, 0x1151: 0x0008,
1391 0x1152: 0xe00d, 0x1153: 0x0008, 0x1154: 0xe00d, 0x1155: 0x0008, 0x1156: 0xe00d, 0x1157: 0x0008,
1392 0x1158: 0xe00d, 0x1159: 0x0008, 0x115a: 0xe00d, 0x115b: 0x0008, 0x115c: 0x0ea1, 0x115d: 0x6e11,
1393 0x115e: 0x3308, 0x115f: 0x3308, 0x1160: 0x0008, 0x1161: 0x0008, 0x1162: 0x0008, 0x1163: 0x0008,
1394 0x1164: 0x0008, 0x1165: 0x0008, 0x1166: 0x0008, 0x1167: 0x0008, 0x1168: 0x0008, 0x1169: 0x0008,
1395 0x116a: 0x0008, 0x116b: 0x0008, 0x116c: 0x0008, 0x116d: 0x0008, 0x116e: 0x0008, 0x116f: 0x0008,
1396 0x1170: 0x0008, 0x1171: 0x0008, 0x1172: 0x0008, 0x1173: 0x0008, 0x1174: 0x0008, 0x1175: 0x0008,
1397 0x1176: 0x0008, 0x1177: 0x0008, 0x1178: 0x0008, 0x1179: 0x0008, 0x117a: 0x0008, 0x117b: 0x0008,
1398 0x117c: 0x0008, 0x117d: 0x0008, 0x117e: 0x0008, 0x117f: 0x0008,
1399 // Block 0x46, offset 0x1180
1400 0x1180: 0x0018, 0x1181: 0x0018, 0x1182: 0x0018, 0x1183: 0x0018, 0x1184: 0x0018, 0x1185: 0x0018,
1401 0x1186: 0x0018, 0x1187: 0x0018, 0x1188: 0x0018, 0x1189: 0x0018, 0x118a: 0x0018, 0x118b: 0x0018,
1402 0x118c: 0x0018, 0x118d: 0x0018, 0x118e: 0x0018, 0x118f: 0x0018, 0x1190: 0x0018, 0x1191: 0x0018,
1403 0x1192: 0x0018, 0x1193: 0x0018, 0x1194: 0x0018, 0x1195: 0x0018, 0x1196: 0x0018, 0x1197: 0x0008,
1404 0x1198: 0x0008, 0x1199: 0x0008, 0x119a: 0x0008, 0x119b: 0x0008, 0x119c: 0x0008, 0x119d: 0x0008,
1405 0x119e: 0x0008, 0x119f: 0x0008, 0x11a0: 0x0018, 0x11a1: 0x0018, 0x11a2: 0xe00d, 0x11a3: 0x0008,
1406 0x11a4: 0xe00d, 0x11a5: 0x0008, 0x11a6: 0xe00d, 0x11a7: 0x0008, 0x11a8: 0xe00d, 0x11a9: 0x0008,
1407 0x11aa: 0xe00d, 0x11ab: 0x0008, 0x11ac: 0xe00d, 0x11ad: 0x0008, 0x11ae: 0xe00d, 0x11af: 0x0008,
1408 0x11b0: 0x0008, 0x11b1: 0x0008, 0x11b2: 0xe00d, 0x11b3: 0x0008, 0x11b4: 0xe00d, 0x11b5: 0x0008,
1409 0x11b6: 0xe00d, 0x11b7: 0x0008, 0x11b8: 0xe00d, 0x11b9: 0x0008, 0x11ba: 0xe00d, 0x11bb: 0x0008,
1410 0x11bc: 0xe00d, 0x11bd: 0x0008, 0x11be: 0xe00d, 0x11bf: 0x0008,
1411 // Block 0x47, offset 0x11c0
1412 0x11c0: 0xe00d, 0x11c1: 0x0008, 0x11c2: 0xe00d, 0x11c3: 0x0008, 0x11c4: 0xe00d, 0x11c5: 0x0008,
1413 0x11c6: 0xe00d, 0x11c7: 0x0008, 0x11c8: 0xe00d, 0x11c9: 0x0008, 0x11ca: 0xe00d, 0x11cb: 0x0008,
1414 0x11cc: 0xe00d, 0x11cd: 0x0008, 0x11ce: 0xe00d, 0x11cf: 0x0008, 0x11d0: 0xe00d, 0x11d1: 0x0008,
1415 0x11d2: 0xe00d, 0x11d3: 0x0008, 0x11d4: 0xe00d, 0x11d5: 0x0008, 0x11d6: 0xe00d, 0x11d7: 0x0008,
1416 0x11d8: 0xe00d, 0x11d9: 0x0008, 0x11da: 0xe00d, 0x11db: 0x0008, 0x11dc: 0xe00d, 0x11dd: 0x0008,
1417 0x11de: 0xe00d, 0x11df: 0x0008, 0x11e0: 0xe00d, 0x11e1: 0x0008, 0x11e2: 0xe00d, 0x11e3: 0x0008,
1418 0x11e4: 0xe00d, 0x11e5: 0x0008, 0x11e6: 0xe00d, 0x11e7: 0x0008, 0x11e8: 0xe00d, 0x11e9: 0x0008,
1419 0x11ea: 0xe00d, 0x11eb: 0x0008, 0x11ec: 0xe00d, 0x11ed: 0x0008, 0x11ee: 0xe00d, 0x11ef: 0x0008,
1420 0x11f0: 0xe0fd, 0x11f1: 0x0008, 0x11f2: 0x0008, 0x11f3: 0x0008, 0x11f4: 0x0008, 0x11f5: 0x0008,
1421 0x11f6: 0x0008, 0x11f7: 0x0008, 0x11f8: 0x0008, 0x11f9: 0xe01d, 0x11fa: 0x0008, 0x11fb: 0xe03d,
1422 0x11fc: 0x0008, 0x11fd: 0x442d, 0x11fe: 0xe00d, 0x11ff: 0x0008,
1423 // Block 0x48, offset 0x1200
1424 0x1200: 0xe00d, 0x1201: 0x0008, 0x1202: 0xe00d, 0x1203: 0x0008, 0x1204: 0xe00d, 0x1205: 0x0008,
1425 0x1206: 0xe00d, 0x1207: 0x0008, 0x1208: 0x0008, 0x1209: 0x0018, 0x120a: 0x0018, 0x120b: 0xe03d,
1426 0x120c: 0x0008, 0x120d: 0x11d9, 0x120e: 0x0008, 0x120f: 0x0008, 0x1210: 0xe00d, 0x1211: 0x0008,
1427 0x1212: 0xe00d, 0x1213: 0x0008, 0x1214: 0x0008, 0x1215: 0x0008, 0x1216: 0xe00d, 0x1217: 0x0008,
1428 0x1218: 0xe00d, 0x1219: 0x0008, 0x121a: 0xe00d, 0x121b: 0x0008, 0x121c: 0xe00d, 0x121d: 0x0008,
1429 0x121e: 0xe00d, 0x121f: 0x0008, 0x1220: 0xe00d, 0x1221: 0x0008, 0x1222: 0xe00d, 0x1223: 0x0008,
1430 0x1224: 0xe00d, 0x1225: 0x0008, 0x1226: 0xe00d, 0x1227: 0x0008, 0x1228: 0xe00d, 0x1229: 0x0008,
1431 0x122a: 0x6e29, 0x122b: 0x1029, 0x122c: 0x11c1, 0x122d: 0x6e41, 0x122e: 0x1221, 0x122f: 0x0008,
1432 0x1230: 0x6e59, 0x1231: 0x6e71, 0x1232: 0x1239, 0x1233: 0x444d, 0x1234: 0xe00d, 0x1235: 0x0008,
1433 0x1236: 0xe00d, 0x1237: 0x0008, 0x1238: 0x0040, 0x1239: 0x0008, 0x123a: 0x0040, 0x123b: 0x0040,
1434 0x123c: 0x0040, 0x123d: 0x0040, 0x123e: 0x0040, 0x123f: 0x0040,
1435 // Block 0x49, offset 0x1240
1436 0x1240: 0x64d5, 0x1241: 0x64f5, 0x1242: 0x6515, 0x1243: 0x6535, 0x1244: 0x6555, 0x1245: 0x6575,
1437 0x1246: 0x6595, 0x1247: 0x65b5, 0x1248: 0x65d5, 0x1249: 0x65f5, 0x124a: 0x6615, 0x124b: 0x6635,
1438 0x124c: 0x6655, 0x124d: 0x6675, 0x124e: 0x0008, 0x124f: 0x0008, 0x1250: 0x6695, 0x1251: 0x0008,
1439 0x1252: 0x66b5, 0x1253: 0x0008, 0x1254: 0x0008, 0x1255: 0x66d5, 0x1256: 0x66f5, 0x1257: 0x6715,
1440 0x1258: 0x6735, 0x1259: 0x6755, 0x125a: 0x6775, 0x125b: 0x6795, 0x125c: 0x67b5, 0x125d: 0x67d5,
1441 0x125e: 0x67f5, 0x125f: 0x0008, 0x1260: 0x6815, 0x1261: 0x0008, 0x1262: 0x6835, 0x1263: 0x0008,
1442 0x1264: 0x0008, 0x1265: 0x6855, 0x1266: 0x6875, 0x1267: 0x0008, 0x1268: 0x0008, 0x1269: 0x0008,
1443 0x126a: 0x6895, 0x126b: 0x68b5, 0x126c: 0x68d5, 0x126d: 0x68f5, 0x126e: 0x6915, 0x126f: 0x6935,
1444 0x1270: 0x6955, 0x1271: 0x6975, 0x1272: 0x6995, 0x1273: 0x69b5, 0x1274: 0x69d5, 0x1275: 0x69f5,
1445 0x1276: 0x6a15, 0x1277: 0x6a35, 0x1278: 0x6a55, 0x1279: 0x6a75, 0x127a: 0x6a95, 0x127b: 0x6ab5,
1446 0x127c: 0x6ad5, 0x127d: 0x6af5, 0x127e: 0x6b15, 0x127f: 0x6b35,
1447 // Block 0x4a, offset 0x1280
1448 0x1280: 0x7a95, 0x1281: 0x7ab5, 0x1282: 0x7ad5, 0x1283: 0x7af5, 0x1284: 0x7b15, 0x1285: 0x7b35,
1449 0x1286: 0x7b55, 0x1287: 0x7b75, 0x1288: 0x7b95, 0x1289: 0x7bb5, 0x128a: 0x7bd5, 0x128b: 0x7bf5,
1450 0x128c: 0x7c15, 0x128d: 0x7c35, 0x128e: 0x7c55, 0x128f: 0x6ec9, 0x1290: 0x6ef1, 0x1291: 0x6f19,
1451 0x1292: 0x7c75, 0x1293: 0x7c95, 0x1294: 0x7cb5, 0x1295: 0x6f41, 0x1296: 0x6f69, 0x1297: 0x6f91,
1452 0x1298: 0x7cd5, 0x1299: 0x7cf5, 0x129a: 0x0040, 0x129b: 0x0040, 0x129c: 0x0040, 0x129d: 0x0040,
1453 0x129e: 0x0040, 0x129f: 0x0040, 0x12a0: 0x0040, 0x12a1: 0x0040, 0x12a2: 0x0040, 0x12a3: 0x0040,
1454 0x12a4: 0x0040, 0x12a5: 0x0040, 0x12a6: 0x0040, 0x12a7: 0x0040, 0x12a8: 0x0040, 0x12a9: 0x0040,
1455 0x12aa: 0x0040, 0x12ab: 0x0040, 0x12ac: 0x0040, 0x12ad: 0x0040, 0x12ae: 0x0040, 0x12af: 0x0040,
1456 0x12b0: 0x0040, 0x12b1: 0x0040, 0x12b2: 0x0040, 0x12b3: 0x0040, 0x12b4: 0x0040, 0x12b5: 0x0040,
1457 0x12b6: 0x0040, 0x12b7: 0x0040, 0x12b8: 0x0040, 0x12b9: 0x0040, 0x12ba: 0x0040, 0x12bb: 0x0040,
1458 0x12bc: 0x0040, 0x12bd: 0x0040, 0x12be: 0x0040, 0x12bf: 0x0040,
1459 // Block 0x4b, offset 0x12c0
1460 0x12c0: 0x6fb9, 0x12c1: 0x6fd1, 0x12c2: 0x6fe9, 0x12c3: 0x7d15, 0x12c4: 0x7d35, 0x12c5: 0x7001,
1461 0x12c6: 0x7001, 0x12c7: 0x0040, 0x12c8: 0x0040, 0x12c9: 0x0040, 0x12ca: 0x0040, 0x12cb: 0x0040,
1462 0x12cc: 0x0040, 0x12cd: 0x0040, 0x12ce: 0x0040, 0x12cf: 0x0040, 0x12d0: 0x0040, 0x12d1: 0x0040,
1463 0x12d2: 0x0040, 0x12d3: 0x7019, 0x12d4: 0x7041, 0x12d5: 0x7069, 0x12d6: 0x7091, 0x12d7: 0x70b9,
1464 0x12d8: 0x0040, 0x12d9: 0x0040, 0x12da: 0x0040, 0x12db: 0x0040, 0x12dc: 0x0040, 0x12dd: 0x70e1,
1465 0x12de: 0x3308, 0x12df: 0x7109, 0x12e0: 0x7131, 0x12e1: 0x20a9, 0x12e2: 0x20f1, 0x12e3: 0x7149,
1466 0x12e4: 0x7161, 0x12e5: 0x7179, 0x12e6: 0x7191, 0x12e7: 0x71a9, 0x12e8: 0x71c1, 0x12e9: 0x1fb2,
1467 0x12ea: 0x71d9, 0x12eb: 0x7201, 0x12ec: 0x7229, 0x12ed: 0x7261, 0x12ee: 0x7299, 0x12ef: 0x72c1,
1468 0x12f0: 0x72e9, 0x12f1: 0x7311, 0x12f2: 0x7339, 0x12f3: 0x7361, 0x12f4: 0x7389, 0x12f5: 0x73b1,
1469 0x12f6: 0x73d9, 0x12f7: 0x0040, 0x12f8: 0x7401, 0x12f9: 0x7429, 0x12fa: 0x7451, 0x12fb: 0x7479,
1470 0x12fc: 0x74a1, 0x12fd: 0x0040, 0x12fe: 0x74c9, 0x12ff: 0x0040,
1471 // Block 0x4c, offset 0x1300
1472 0x1300: 0x74f1, 0x1301: 0x7519, 0x1302: 0x0040, 0x1303: 0x7541, 0x1304: 0x7569, 0x1305: 0x0040,
1473 0x1306: 0x7591, 0x1307: 0x75b9, 0x1308: 0x75e1, 0x1309: 0x7609, 0x130a: 0x7631, 0x130b: 0x7659,
1474 0x130c: 0x7681, 0x130d: 0x76a9, 0x130e: 0x76d1, 0x130f: 0x76f9, 0x1310: 0x7721, 0x1311: 0x7721,
1475 0x1312: 0x7739, 0x1313: 0x7739, 0x1314: 0x7739, 0x1315: 0x7739, 0x1316: 0x7751, 0x1317: 0x7751,
1476 0x1318: 0x7751, 0x1319: 0x7751, 0x131a: 0x7769, 0x131b: 0x7769, 0x131c: 0x7769, 0x131d: 0x7769,
1477 0x131e: 0x7781, 0x131f: 0x7781, 0x1320: 0x7781, 0x1321: 0x7781, 0x1322: 0x7799, 0x1323: 0x7799,
1478 0x1324: 0x7799, 0x1325: 0x7799, 0x1326: 0x77b1, 0x1327: 0x77b1, 0x1328: 0x77b1, 0x1329: 0x77b1,
1479 0x132a: 0x77c9, 0x132b: 0x77c9, 0x132c: 0x77c9, 0x132d: 0x77c9, 0x132e: 0x77e1, 0x132f: 0x77e1,
1480 0x1330: 0x77e1, 0x1331: 0x77e1, 0x1332: 0x77f9, 0x1333: 0x77f9, 0x1334: 0x77f9, 0x1335: 0x77f9,
1481 0x1336: 0x7811, 0x1337: 0x7811, 0x1338: 0x7811, 0x1339: 0x7811, 0x133a: 0x7829, 0x133b: 0x7829,
1482 0x133c: 0x7829, 0x133d: 0x7829, 0x133e: 0x7841, 0x133f: 0x7841,
1483 // Block 0x4d, offset 0x1340
1484 0x1340: 0x7841, 0x1341: 0x7841, 0x1342: 0x7859, 0x1343: 0x7859, 0x1344: 0x7871, 0x1345: 0x7871,
1485 0x1346: 0x7889, 0x1347: 0x7889, 0x1348: 0x78a1, 0x1349: 0x78a1, 0x134a: 0x78b9, 0x134b: 0x78b9,
1486 0x134c: 0x78d1, 0x134d: 0x78d1, 0x134e: 0x78e9, 0x134f: 0x78e9, 0x1350: 0x78e9, 0x1351: 0x78e9,
1487 0x1352: 0x7901, 0x1353: 0x7901, 0x1354: 0x7901, 0x1355: 0x7901, 0x1356: 0x7919, 0x1357: 0x7919,
1488 0x1358: 0x7919, 0x1359: 0x7919, 0x135a: 0x7931, 0x135b: 0x7931, 0x135c: 0x7931, 0x135d: 0x7931,
1489 0x135e: 0x7949, 0x135f: 0x7949, 0x1360: 0x7961, 0x1361: 0x7961, 0x1362: 0x7961, 0x1363: 0x7961,
1490 0x1364: 0x7979, 0x1365: 0x7979, 0x1366: 0x7991, 0x1367: 0x7991, 0x1368: 0x7991, 0x1369: 0x7991,
1491 0x136a: 0x79a9, 0x136b: 0x79a9, 0x136c: 0x79a9, 0x136d: 0x79a9, 0x136e: 0x79c1, 0x136f: 0x79c1,
1492 0x1370: 0x79d9, 0x1371: 0x79d9, 0x1372: 0x0818, 0x1373: 0x0818, 0x1374: 0x0818, 0x1375: 0x0818,
1493 0x1376: 0x0818, 0x1377: 0x0818, 0x1378: 0x0818, 0x1379: 0x0818, 0x137a: 0x0818, 0x137b: 0x0818,
1494 0x137c: 0x0818, 0x137d: 0x0818, 0x137e: 0x0818, 0x137f: 0x0818,
1495 // Block 0x4e, offset 0x1380
1496 0x1380: 0x0818, 0x1381: 0x0818, 0x1382: 0x0040, 0x1383: 0x0040, 0x1384: 0x0040, 0x1385: 0x0040,
1497 0x1386: 0x0040, 0x1387: 0x0040, 0x1388: 0x0040, 0x1389: 0x0040, 0x138a: 0x0040, 0x138b: 0x0040,
1498 0x138c: 0x0040, 0x138d: 0x0040, 0x138e: 0x0040, 0x138f: 0x0040, 0x1390: 0x0040, 0x1391: 0x0040,
1499 0x1392: 0x0040, 0x1393: 0x79f1, 0x1394: 0x79f1, 0x1395: 0x79f1, 0x1396: 0x79f1, 0x1397: 0x7a09,
1500 0x1398: 0x7a09, 0x1399: 0x7a21, 0x139a: 0x7a21, 0x139b: 0x7a39, 0x139c: 0x7a39, 0x139d: 0x0479,
1501 0x139e: 0x7a51, 0x139f: 0x7a51, 0x13a0: 0x7a69, 0x13a1: 0x7a69, 0x13a2: 0x7a81, 0x13a3: 0x7a81,
1502 0x13a4: 0x7a99, 0x13a5: 0x7a99, 0x13a6: 0x7a99, 0x13a7: 0x7a99, 0x13a8: 0x7ab1, 0x13a9: 0x7ab1,
1503 0x13aa: 0x7ac9, 0x13ab: 0x7ac9, 0x13ac: 0x7af1, 0x13ad: 0x7af1, 0x13ae: 0x7b19, 0x13af: 0x7b19,
1504 0x13b0: 0x7b41, 0x13b1: 0x7b41, 0x13b2: 0x7b69, 0x13b3: 0x7b69, 0x13b4: 0x7b91, 0x13b5: 0x7b91,
1505 0x13b6: 0x7bb9, 0x13b7: 0x7bb9, 0x13b8: 0x7bb9, 0x13b9: 0x7be1, 0x13ba: 0x7be1, 0x13bb: 0x7be1,
1506 0x13bc: 0x7c09, 0x13bd: 0x7c09, 0x13be: 0x7c09, 0x13bf: 0x7c09,
1507 // Block 0x4f, offset 0x13c0
1508 0x13c0: 0x85f9, 0x13c1: 0x8621, 0x13c2: 0x8649, 0x13c3: 0x8671, 0x13c4: 0x8699, 0x13c5: 0x86c1,
1509 0x13c6: 0x86e9, 0x13c7: 0x8711, 0x13c8: 0x8739, 0x13c9: 0x8761, 0x13ca: 0x8789, 0x13cb: 0x87b1,
1510 0x13cc: 0x87d9, 0x13cd: 0x8801, 0x13ce: 0x8829, 0x13cf: 0x8851, 0x13d0: 0x8879, 0x13d1: 0x88a1,
1511 0x13d2: 0x88c9, 0x13d3: 0x88f1, 0x13d4: 0x8919, 0x13d5: 0x8941, 0x13d6: 0x8969, 0x13d7: 0x8991,
1512 0x13d8: 0x89b9, 0x13d9: 0x89e1, 0x13da: 0x8a09, 0x13db: 0x8a31, 0x13dc: 0x8a59, 0x13dd: 0x8a81,
1513 0x13de: 0x8aaa, 0x13df: 0x8ada, 0x13e0: 0x8b0a, 0x13e1: 0x8b3a, 0x13e2: 0x8b6a, 0x13e3: 0x8b9a,
1514 0x13e4: 0x8bc9, 0x13e5: 0x8bf1, 0x13e6: 0x7c71, 0x13e7: 0x8c19, 0x13e8: 0x7be1, 0x13e9: 0x7c99,
1515 0x13ea: 0x8c41, 0x13eb: 0x8c69, 0x13ec: 0x7d39, 0x13ed: 0x8c91, 0x13ee: 0x7d61, 0x13ef: 0x7d89,
1516 0x13f0: 0x8cb9, 0x13f1: 0x8ce1, 0x13f2: 0x7e29, 0x13f3: 0x8d09, 0x13f4: 0x7e51, 0x13f5: 0x7e79,
1517 0x13f6: 0x8d31, 0x13f7: 0x8d59, 0x13f8: 0x7ec9, 0x13f9: 0x8d81, 0x13fa: 0x7ef1, 0x13fb: 0x7f19,
1518 0x13fc: 0x83a1, 0x13fd: 0x83c9, 0x13fe: 0x8441, 0x13ff: 0x8469,
1519 // Block 0x50, offset 0x1400
1520 0x1400: 0x8491, 0x1401: 0x8531, 0x1402: 0x8559, 0x1403: 0x8581, 0x1404: 0x85a9, 0x1405: 0x8649,
1521 0x1406: 0x8671, 0x1407: 0x8699, 0x1408: 0x8da9, 0x1409: 0x8739, 0x140a: 0x8dd1, 0x140b: 0x8df9,
1522 0x140c: 0x8829, 0x140d: 0x8e21, 0x140e: 0x8851, 0x140f: 0x8879, 0x1410: 0x8a81, 0x1411: 0x8e49,
1523 0x1412: 0x8e71, 0x1413: 0x89b9, 0x1414: 0x8e99, 0x1415: 0x89e1, 0x1416: 0x8a09, 0x1417: 0x7c21,
1524 0x1418: 0x7c49, 0x1419: 0x8ec1, 0x141a: 0x7c71, 0x141b: 0x8ee9, 0x141c: 0x7cc1, 0x141d: 0x7ce9,
1525 0x141e: 0x7d11, 0x141f: 0x7d39, 0x1420: 0x8f11, 0x1421: 0x7db1, 0x1422: 0x7dd9, 0x1423: 0x7e01,
1526 0x1424: 0x7e29, 0x1425: 0x8f39, 0x1426: 0x7ec9, 0x1427: 0x7f41, 0x1428: 0x7f69, 0x1429: 0x7f91,
1527 0x142a: 0x7fb9, 0x142b: 0x7fe1, 0x142c: 0x8031, 0x142d: 0x8059, 0x142e: 0x8081, 0x142f: 0x80a9,
1528 0x1430: 0x80d1, 0x1431: 0x80f9, 0x1432: 0x8f61, 0x1433: 0x8121, 0x1434: 0x8149, 0x1435: 0x8171,
1529 0x1436: 0x8199, 0x1437: 0x81c1, 0x1438: 0x81e9, 0x1439: 0x8239, 0x143a: 0x8261, 0x143b: 0x8289,
1530 0x143c: 0x82b1, 0x143d: 0x82d9, 0x143e: 0x8301, 0x143f: 0x8329,
1531 // Block 0x51, offset 0x1440
1532 0x1440: 0x8351, 0x1441: 0x8379, 0x1442: 0x83f1, 0x1443: 0x8419, 0x1444: 0x84b9, 0x1445: 0x84e1,
1533 0x1446: 0x8509, 0x1447: 0x8531, 0x1448: 0x8559, 0x1449: 0x85d1, 0x144a: 0x85f9, 0x144b: 0x8621,
1534 0x144c: 0x8649, 0x144d: 0x8f89, 0x144e: 0x86c1, 0x144f: 0x86e9, 0x1450: 0x8711, 0x1451: 0x8739,
1535 0x1452: 0x87b1, 0x1453: 0x87d9, 0x1454: 0x8801, 0x1455: 0x8829, 0x1456: 0x8fb1, 0x1457: 0x88a1,
1536 0x1458: 0x88c9, 0x1459: 0x8fd9, 0x145a: 0x8941, 0x145b: 0x8969, 0x145c: 0x8991, 0x145d: 0x89b9,
1537 0x145e: 0x9001, 0x145f: 0x7c71, 0x1460: 0x8ee9, 0x1461: 0x7d39, 0x1462: 0x8f11, 0x1463: 0x7e29,
1538 0x1464: 0x8f39, 0x1465: 0x7ec9, 0x1466: 0x9029, 0x1467: 0x80d1, 0x1468: 0x9051, 0x1469: 0x9079,
1539 0x146a: 0x90a1, 0x146b: 0x8531, 0x146c: 0x8559, 0x146d: 0x8649, 0x146e: 0x8829, 0x146f: 0x8fb1,
1540 0x1470: 0x89b9, 0x1471: 0x9001, 0x1472: 0x90c9, 0x1473: 0x9101, 0x1474: 0x9139, 0x1475: 0x9171,
1541 0x1476: 0x9199, 0x1477: 0x91c1, 0x1478: 0x91e9, 0x1479: 0x9211, 0x147a: 0x9239, 0x147b: 0x9261,
1542 0x147c: 0x9289, 0x147d: 0x92b1, 0x147e: 0x92d9, 0x147f: 0x9301,
1543 // Block 0x52, offset 0x1480
1544 0x1480: 0x9329, 0x1481: 0x9351, 0x1482: 0x9379, 0x1483: 0x93a1, 0x1484: 0x93c9, 0x1485: 0x93f1,
1545 0x1486: 0x9419, 0x1487: 0x9441, 0x1488: 0x9469, 0x1489: 0x9491, 0x148a: 0x94b9, 0x148b: 0x94e1,
1546 0x148c: 0x9079, 0x148d: 0x9509, 0x148e: 0x9531, 0x148f: 0x9559, 0x1490: 0x9581, 0x1491: 0x9171,
1547 0x1492: 0x9199, 0x1493: 0x91c1, 0x1494: 0x91e9, 0x1495: 0x9211, 0x1496: 0x9239, 0x1497: 0x9261,
1548 0x1498: 0x9289, 0x1499: 0x92b1, 0x149a: 0x92d9, 0x149b: 0x9301, 0x149c: 0x9329, 0x149d: 0x9351,
1549 0x149e: 0x9379, 0x149f: 0x93a1, 0x14a0: 0x93c9, 0x14a1: 0x93f1, 0x14a2: 0x9419, 0x14a3: 0x9441,
1550 0x14a4: 0x9469, 0x14a5: 0x9491, 0x14a6: 0x94b9, 0x14a7: 0x94e1, 0x14a8: 0x9079, 0x14a9: 0x9509,
1551 0x14aa: 0x9531, 0x14ab: 0x9559, 0x14ac: 0x9581, 0x14ad: 0x9491, 0x14ae: 0x94b9, 0x14af: 0x94e1,
1552 0x14b0: 0x9079, 0x14b1: 0x9051, 0x14b2: 0x90a1, 0x14b3: 0x8211, 0x14b4: 0x8059, 0x14b5: 0x8081,
1553 0x14b6: 0x80a9, 0x14b7: 0x9491, 0x14b8: 0x94b9, 0x14b9: 0x94e1, 0x14ba: 0x8211, 0x14bb: 0x8239,
1554 0x14bc: 0x95a9, 0x14bd: 0x95a9, 0x14be: 0x0018, 0x14bf: 0x0018,
1555 // Block 0x53, offset 0x14c0
1556 0x14c0: 0x0040, 0x14c1: 0x0040, 0x14c2: 0x0040, 0x14c3: 0x0040, 0x14c4: 0x0040, 0x14c5: 0x0040,
1557 0x14c6: 0x0040, 0x14c7: 0x0040, 0x14c8: 0x0040, 0x14c9: 0x0040, 0x14ca: 0x0040, 0x14cb: 0x0040,
1558 0x14cc: 0x0040, 0x14cd: 0x0040, 0x14ce: 0x0040, 0x14cf: 0x0040, 0x14d0: 0x95d1, 0x14d1: 0x9609,
1559 0x14d2: 0x9609, 0x14d3: 0x9641, 0x14d4: 0x9679, 0x14d5: 0x96b1, 0x14d6: 0x96e9, 0x14d7: 0x9721,
1560 0x14d8: 0x9759, 0x14d9: 0x9759, 0x14da: 0x9791, 0x14db: 0x97c9, 0x14dc: 0x9801, 0x14dd: 0x9839,
1561 0x14de: 0x9871, 0x14df: 0x98a9, 0x14e0: 0x98a9, 0x14e1: 0x98e1, 0x14e2: 0x9919, 0x14e3: 0x9919,
1562 0x14e4: 0x9951, 0x14e5: 0x9951, 0x14e6: 0x9989, 0x14e7: 0x99c1, 0x14e8: 0x99c1, 0x14e9: 0x99f9,
1563 0x14ea: 0x9a31, 0x14eb: 0x9a31, 0x14ec: 0x9a69, 0x14ed: 0x9a69, 0x14ee: 0x9aa1, 0x14ef: 0x9ad9,
1564 0x14f0: 0x9ad9, 0x14f1: 0x9b11, 0x14f2: 0x9b11, 0x14f3: 0x9b49, 0x14f4: 0x9b81, 0x14f5: 0x9bb9,
1565 0x14f6: 0x9bf1, 0x14f7: 0x9bf1, 0x14f8: 0x9c29, 0x14f9: 0x9c61, 0x14fa: 0x9c99, 0x14fb: 0x9cd1,
1566 0x14fc: 0x9d09, 0x14fd: 0x9d09, 0x14fe: 0x9d41, 0x14ff: 0x9d79,
1567 // Block 0x54, offset 0x1500
1568 0x1500: 0xa949, 0x1501: 0xa981, 0x1502: 0xa9b9, 0x1503: 0xa8a1, 0x1504: 0x9bb9, 0x1505: 0x9989,
1569 0x1506: 0xa9f1, 0x1507: 0xaa29, 0x1508: 0x0040, 0x1509: 0x0040, 0x150a: 0x0040, 0x150b: 0x0040,
1570 0x150c: 0x0040, 0x150d: 0x0040, 0x150e: 0x0040, 0x150f: 0x0040, 0x1510: 0x0040, 0x1511: 0x0040,
1571 0x1512: 0x0040, 0x1513: 0x0040, 0x1514: 0x0040, 0x1515: 0x0040, 0x1516: 0x0040, 0x1517: 0x0040,
1572 0x1518: 0x0040, 0x1519: 0x0040, 0x151a: 0x0040, 0x151b: 0x0040, 0x151c: 0x0040, 0x151d: 0x0040,
1573 0x151e: 0x0040, 0x151f: 0x0040, 0x1520: 0x0040, 0x1521: 0x0040, 0x1522: 0x0040, 0x1523: 0x0040,
1574 0x1524: 0x0040, 0x1525: 0x0040, 0x1526: 0x0040, 0x1527: 0x0040, 0x1528: 0x0040, 0x1529: 0x0040,
1575 0x152a: 0x0040, 0x152b: 0x0040, 0x152c: 0x0040, 0x152d: 0x0040, 0x152e: 0x0040, 0x152f: 0x0040,
1576 0x1530: 0xaa61, 0x1531: 0xaa99, 0x1532: 0xaad1, 0x1533: 0xab19, 0x1534: 0xab61, 0x1535: 0xaba9,
1577 0x1536: 0xabf1, 0x1537: 0xac39, 0x1538: 0xac81, 0x1539: 0xacc9, 0x153a: 0xad02, 0x153b: 0xae12,
1578 0x153c: 0xae91, 0x153d: 0x0018, 0x153e: 0x0040, 0x153f: 0x0040,
1579 // Block 0x55, offset 0x1540
1580 0x1540: 0x33c0, 0x1541: 0x33c0, 0x1542: 0x33c0, 0x1543: 0x33c0, 0x1544: 0x33c0, 0x1545: 0x33c0,
1581 0x1546: 0x33c0, 0x1547: 0x33c0, 0x1548: 0x33c0, 0x1549: 0x33c0, 0x154a: 0x33c0, 0x154b: 0x33c0,
1582 0x154c: 0x33c0, 0x154d: 0x33c0, 0x154e: 0x33c0, 0x154f: 0x33c0, 0x1550: 0xaeda, 0x1551: 0x7d55,
1583 0x1552: 0x0040, 0x1553: 0xaeea, 0x1554: 0x03c2, 0x1555: 0xaefa, 0x1556: 0xaf0a, 0x1557: 0x7d75,
1584 0x1558: 0x7d95, 0x1559: 0x0040, 0x155a: 0x0040, 0x155b: 0x0040, 0x155c: 0x0040, 0x155d: 0x0040,
1585 0x155e: 0x0040, 0x155f: 0x0040, 0x1560: 0x3308, 0x1561: 0x3308, 0x1562: 0x3308, 0x1563: 0x3308,
1586 0x1564: 0x3308, 0x1565: 0x3308, 0x1566: 0x3308, 0x1567: 0x3308, 0x1568: 0x3308, 0x1569: 0x3308,
1587 0x156a: 0x3308, 0x156b: 0x3308, 0x156c: 0x3308, 0x156d: 0x3308, 0x156e: 0x3308, 0x156f: 0x3308,
1588 0x1570: 0x0040, 0x1571: 0x7db5, 0x1572: 0x7dd5, 0x1573: 0xaf1a, 0x1574: 0xaf1a, 0x1575: 0x1fd2,
1589 0x1576: 0x1fe2, 0x1577: 0xaf2a, 0x1578: 0xaf3a, 0x1579: 0x7df5, 0x157a: 0x7e15, 0x157b: 0x7e35,
1590 0x157c: 0x7df5, 0x157d: 0x7e55, 0x157e: 0x7e75, 0x157f: 0x7e55,
1591 // Block 0x56, offset 0x1580
1592 0x1580: 0x7e95, 0x1581: 0x7eb5, 0x1582: 0x7ed5, 0x1583: 0x7eb5, 0x1584: 0x7ef5, 0x1585: 0x0018,
1593 0x1586: 0x0018, 0x1587: 0xaf4a, 0x1588: 0xaf5a, 0x1589: 0x7f16, 0x158a: 0x7f36, 0x158b: 0x7f56,
1594 0x158c: 0x7f76, 0x158d: 0xaf1a, 0x158e: 0xaf1a, 0x158f: 0xaf1a, 0x1590: 0xaeda, 0x1591: 0x7f95,
1595 0x1592: 0x0040, 0x1593: 0x0040, 0x1594: 0x03c2, 0x1595: 0xaeea, 0x1596: 0xaf0a, 0x1597: 0xaefa,
1596 0x1598: 0x7fb5, 0x1599: 0x1fd2, 0x159a: 0x1fe2, 0x159b: 0xaf2a, 0x159c: 0xaf3a, 0x159d: 0x7e95,
1597 0x159e: 0x7ef5, 0x159f: 0xaf6a, 0x15a0: 0xaf7a, 0x15a1: 0xaf8a, 0x15a2: 0x1fb2, 0x15a3: 0xaf99,
1598 0x15a4: 0xafaa, 0x15a5: 0xafba, 0x15a6: 0x1fc2, 0x15a7: 0x0040, 0x15a8: 0xafca, 0x15a9: 0xafda,
1599 0x15aa: 0xafea, 0x15ab: 0xaffa, 0x15ac: 0x0040, 0x15ad: 0x0040, 0x15ae: 0x0040, 0x15af: 0x0040,
1600 0x15b0: 0x7fd6, 0x15b1: 0xb009, 0x15b2: 0x7ff6, 0x15b3: 0x0808, 0x15b4: 0x8016, 0x15b5: 0x0040,
1601 0x15b6: 0x8036, 0x15b7: 0xb031, 0x15b8: 0x8056, 0x15b9: 0xb059, 0x15ba: 0x8076, 0x15bb: 0xb081,
1602 0x15bc: 0x8096, 0x15bd: 0xb0a9, 0x15be: 0x80b6, 0x15bf: 0xb0d1,
1603 // Block 0x57, offset 0x15c0
1604 0x15c0: 0xb0f9, 0x15c1: 0xb111, 0x15c2: 0xb111, 0x15c3: 0xb129, 0x15c4: 0xb129, 0x15c5: 0xb141,
1605 0x15c6: 0xb141, 0x15c7: 0xb159, 0x15c8: 0xb159, 0x15c9: 0xb171, 0x15ca: 0xb171, 0x15cb: 0xb171,
1606 0x15cc: 0xb171, 0x15cd: 0xb189, 0x15ce: 0xb189, 0x15cf: 0xb1a1, 0x15d0: 0xb1a1, 0x15d1: 0xb1a1,
1607 0x15d2: 0xb1a1, 0x15d3: 0xb1b9, 0x15d4: 0xb1b9, 0x15d5: 0xb1d1, 0x15d6: 0xb1d1, 0x15d7: 0xb1d1,
1608 0x15d8: 0xb1d1, 0x15d9: 0xb1e9, 0x15da: 0xb1e9, 0x15db: 0xb1e9, 0x15dc: 0xb1e9, 0x15dd: 0xb201,
1609 0x15de: 0xb201, 0x15df: 0xb201, 0x15e0: 0xb201, 0x15e1: 0xb219, 0x15e2: 0xb219, 0x15e3: 0xb219,
1610 0x15e4: 0xb219, 0x15e5: 0xb231, 0x15e6: 0xb231, 0x15e7: 0xb231, 0x15e8: 0xb231, 0x15e9: 0xb249,
1611 0x15ea: 0xb249, 0x15eb: 0xb261, 0x15ec: 0xb261, 0x15ed: 0xb279, 0x15ee: 0xb279, 0x15ef: 0xb291,
1612 0x15f0: 0xb291, 0x15f1: 0xb2a9, 0x15f2: 0xb2a9, 0x15f3: 0xb2a9, 0x15f4: 0xb2a9, 0x15f5: 0xb2c1,
1613 0x15f6: 0xb2c1, 0x15f7: 0xb2c1, 0x15f8: 0xb2c1, 0x15f9: 0xb2d9, 0x15fa: 0xb2d9, 0x15fb: 0xb2d9,
1614 0x15fc: 0xb2d9, 0x15fd: 0xb2f1, 0x15fe: 0xb2f1, 0x15ff: 0xb2f1,
1615 // Block 0x58, offset 0x1600
1616 0x1600: 0xb2f1, 0x1601: 0xb309, 0x1602: 0xb309, 0x1603: 0xb309, 0x1604: 0xb309, 0x1605: 0xb321,
1617 0x1606: 0xb321, 0x1607: 0xb321, 0x1608: 0xb321, 0x1609: 0xb339, 0x160a: 0xb339, 0x160b: 0xb339,
1618 0x160c: 0xb339, 0x160d: 0xb351, 0x160e: 0xb351, 0x160f: 0xb351, 0x1610: 0xb351, 0x1611: 0xb369,
1619 0x1612: 0xb369, 0x1613: 0xb369, 0x1614: 0xb369, 0x1615: 0xb381, 0x1616: 0xb381, 0x1617: 0xb381,
1620 0x1618: 0xb381, 0x1619: 0xb399, 0x161a: 0xb399, 0x161b: 0xb399, 0x161c: 0xb399, 0x161d: 0xb3b1,
1621 0x161e: 0xb3b1, 0x161f: 0xb3b1, 0x1620: 0xb3b1, 0x1621: 0xb3c9, 0x1622: 0xb3c9, 0x1623: 0xb3c9,
1622 0x1624: 0xb3c9, 0x1625: 0xb3e1, 0x1626: 0xb3e1, 0x1627: 0xb3e1, 0x1628: 0xb3e1, 0x1629: 0xb3f9,
1623 0x162a: 0xb3f9, 0x162b: 0xb3f9, 0x162c: 0xb3f9, 0x162d: 0xb411, 0x162e: 0xb411, 0x162f: 0x7ab1,
1624 0x1630: 0x7ab1, 0x1631: 0xb429, 0x1632: 0xb429, 0x1633: 0xb429, 0x1634: 0xb429, 0x1635: 0xb441,
1625 0x1636: 0xb441, 0x1637: 0xb469, 0x1638: 0xb469, 0x1639: 0xb491, 0x163a: 0xb491, 0x163b: 0xb4b9,
1626 0x163c: 0xb4b9, 0x163d: 0x0040, 0x163e: 0x0040, 0x163f: 0x03c0,
1627 // Block 0x59, offset 0x1640
1628 0x1640: 0x0040, 0x1641: 0xaefa, 0x1642: 0xb4e2, 0x1643: 0xaf6a, 0x1644: 0xafda, 0x1645: 0xafea,
1629 0x1646: 0xaf7a, 0x1647: 0xb4f2, 0x1648: 0x1fd2, 0x1649: 0x1fe2, 0x164a: 0xaf8a, 0x164b: 0x1fb2,
1630 0x164c: 0xaeda, 0x164d: 0xaf99, 0x164e: 0x29d1, 0x164f: 0xb502, 0x1650: 0x1f41, 0x1651: 0x00c9,
1631 0x1652: 0x0069, 0x1653: 0x0079, 0x1654: 0x1f51, 0x1655: 0x1f61, 0x1656: 0x1f71, 0x1657: 0x1f81,
1632 0x1658: 0x1f91, 0x1659: 0x1fa1, 0x165a: 0xaeea, 0x165b: 0x03c2, 0x165c: 0xafaa, 0x165d: 0x1fc2,
1633 0x165e: 0xafba, 0x165f: 0xaf0a, 0x1660: 0xaffa, 0x1661: 0x0039, 0x1662: 0x0ee9, 0x1663: 0x1159,
1634 0x1664: 0x0ef9, 0x1665: 0x0f09, 0x1666: 0x1199, 0x1667: 0x0f31, 0x1668: 0x0249, 0x1669: 0x0f41,
1635 0x166a: 0x0259, 0x166b: 0x0f51, 0x166c: 0x0359, 0x166d: 0x0f61, 0x166e: 0x0f71, 0x166f: 0x00d9,
1636 0x1670: 0x0f99, 0x1671: 0x2039, 0x1672: 0x0269, 0x1673: 0x01d9, 0x1674: 0x0fa9, 0x1675: 0x0fb9,
1637 0x1676: 0x1089, 0x1677: 0x0279, 0x1678: 0x0369, 0x1679: 0x0289, 0x167a: 0x13d1, 0x167b: 0xaf4a,
1638 0x167c: 0xafca, 0x167d: 0xaf5a, 0x167e: 0xb512, 0x167f: 0xaf1a,
1639 // Block 0x5a, offset 0x1680
1640 0x1680: 0x1caa, 0x1681: 0x0039, 0x1682: 0x0ee9, 0x1683: 0x1159, 0x1684: 0x0ef9, 0x1685: 0x0f09,
1641 0x1686: 0x1199, 0x1687: 0x0f31, 0x1688: 0x0249, 0x1689: 0x0f41, 0x168a: 0x0259, 0x168b: 0x0f51,
1642 0x168c: 0x0359, 0x168d: 0x0f61, 0x168e: 0x0f71, 0x168f: 0x00d9, 0x1690: 0x0f99, 0x1691: 0x2039,
1643 0x1692: 0x0269, 0x1693: 0x01d9, 0x1694: 0x0fa9, 0x1695: 0x0fb9, 0x1696: 0x1089, 0x1697: 0x0279,
1644 0x1698: 0x0369, 0x1699: 0x0289, 0x169a: 0x13d1, 0x169b: 0xaf2a, 0x169c: 0xb522, 0x169d: 0xaf3a,
1645 0x169e: 0xb532, 0x169f: 0x80d5, 0x16a0: 0x80f5, 0x16a1: 0x29d1, 0x16a2: 0x8115, 0x16a3: 0x8115,
1646 0x16a4: 0x8135, 0x16a5: 0x8155, 0x16a6: 0x8175, 0x16a7: 0x8195, 0x16a8: 0x81b5, 0x16a9: 0x81d5,
1647 0x16aa: 0x81f5, 0x16ab: 0x8215, 0x16ac: 0x8235, 0x16ad: 0x8255, 0x16ae: 0x8275, 0x16af: 0x8295,
1648 0x16b0: 0x82b5, 0x16b1: 0x82d5, 0x16b2: 0x82f5, 0x16b3: 0x8315, 0x16b4: 0x8335, 0x16b5: 0x8355,
1649 0x16b6: 0x8375, 0x16b7: 0x8395, 0x16b8: 0x83b5, 0x16b9: 0x83d5, 0x16ba: 0x83f5, 0x16bb: 0x8415,
1650 0x16bc: 0x81b5, 0x16bd: 0x8435, 0x16be: 0x8455, 0x16bf: 0x8215,
1651 // Block 0x5b, offset 0x16c0
1652 0x16c0: 0x8475, 0x16c1: 0x8495, 0x16c2: 0x84b5, 0x16c3: 0x84d5, 0x16c4: 0x84f5, 0x16c5: 0x8515,
1653 0x16c6: 0x8535, 0x16c7: 0x8555, 0x16c8: 0x84d5, 0x16c9: 0x8575, 0x16ca: 0x84d5, 0x16cb: 0x8595,
1654 0x16cc: 0x8595, 0x16cd: 0x85b5, 0x16ce: 0x85b5, 0x16cf: 0x85d5, 0x16d0: 0x8515, 0x16d1: 0x85f5,
1655 0x16d2: 0x8615, 0x16d3: 0x85f5, 0x16d4: 0x8635, 0x16d5: 0x8615, 0x16d6: 0x8655, 0x16d7: 0x8655,
1656 0x16d8: 0x8675, 0x16d9: 0x8675, 0x16da: 0x8695, 0x16db: 0x8695, 0x16dc: 0x8615, 0x16dd: 0x8115,
1657 0x16de: 0x86b5, 0x16df: 0x86d5, 0x16e0: 0x0040, 0x16e1: 0x86f5, 0x16e2: 0x8715, 0x16e3: 0x8735,
1658 0x16e4: 0x8755, 0x16e5: 0x8735, 0x16e6: 0x8775, 0x16e7: 0x8795, 0x16e8: 0x87b5, 0x16e9: 0x87b5,
1659 0x16ea: 0x87d5, 0x16eb: 0x87d5, 0x16ec: 0x87f5, 0x16ed: 0x87f5, 0x16ee: 0x87d5, 0x16ef: 0x87d5,
1660 0x16f0: 0x8815, 0x16f1: 0x8835, 0x16f2: 0x8855, 0x16f3: 0x8875, 0x16f4: 0x8895, 0x16f5: 0x88b5,
1661 0x16f6: 0x88b5, 0x16f7: 0x88b5, 0x16f8: 0x88d5, 0x16f9: 0x88d5, 0x16fa: 0x88d5, 0x16fb: 0x88d5,
1662 0x16fc: 0x87b5, 0x16fd: 0x87b5, 0x16fe: 0x87b5, 0x16ff: 0x0040,
1663 // Block 0x5c, offset 0x1700
1664 0x1700: 0x0040, 0x1701: 0x0040, 0x1702: 0x8715, 0x1703: 0x86f5, 0x1704: 0x88f5, 0x1705: 0x86f5,
1665 0x1706: 0x8715, 0x1707: 0x86f5, 0x1708: 0x0040, 0x1709: 0x0040, 0x170a: 0x8915, 0x170b: 0x8715,
1666 0x170c: 0x8935, 0x170d: 0x88f5, 0x170e: 0x8935, 0x170f: 0x8715, 0x1710: 0x0040, 0x1711: 0x0040,
1667 0x1712: 0x8955, 0x1713: 0x8975, 0x1714: 0x8875, 0x1715: 0x8935, 0x1716: 0x88f5, 0x1717: 0x8935,
1668 0x1718: 0x0040, 0x1719: 0x0040, 0x171a: 0x8995, 0x171b: 0x89b5, 0x171c: 0x8995, 0x171d: 0x0040,
1669 0x171e: 0x0040, 0x171f: 0x0040, 0x1720: 0xb541, 0x1721: 0xb559, 0x1722: 0xb571, 0x1723: 0x89d6,
1670 0x1724: 0xb589, 0x1725: 0xb5a1, 0x1726: 0x89f5, 0x1727: 0x0040, 0x1728: 0x8a15, 0x1729: 0x8a35,
1671 0x172a: 0x8a55, 0x172b: 0x8a35, 0x172c: 0x8a75, 0x172d: 0x8a95, 0x172e: 0x8ab5, 0x172f: 0x0040,
1672 0x1730: 0x0040, 0x1731: 0x0040, 0x1732: 0x0040, 0x1733: 0x0040, 0x1734: 0x0040, 0x1735: 0x0040,
1673 0x1736: 0x0040, 0x1737: 0x0040, 0x1738: 0x0040, 0x1739: 0x0340, 0x173a: 0x0340, 0x173b: 0x0340,
1674 0x173c: 0x0040, 0x173d: 0x0040, 0x173e: 0x0040, 0x173f: 0x0040,
1675 // Block 0x5d, offset 0x1740
1676 0x1740: 0x0a08, 0x1741: 0x0a08, 0x1742: 0x0a08, 0x1743: 0x0a08, 0x1744: 0x0a08, 0x1745: 0x0c08,
1677 0x1746: 0x0808, 0x1747: 0x0c08, 0x1748: 0x0818, 0x1749: 0x0c08, 0x174a: 0x0c08, 0x174b: 0x0808,
1678 0x174c: 0x0808, 0x174d: 0x0908, 0x174e: 0x0c08, 0x174f: 0x0c08, 0x1750: 0x0c08, 0x1751: 0x0c08,
1679 0x1752: 0x0c08, 0x1753: 0x0a08, 0x1754: 0x0a08, 0x1755: 0x0a08, 0x1756: 0x0a08, 0x1757: 0x0908,
1680 0x1758: 0x0a08, 0x1759: 0x0a08, 0x175a: 0x0a08, 0x175b: 0x0a08, 0x175c: 0x0a08, 0x175d: 0x0c08,
1681 0x175e: 0x0a08, 0x175f: 0x0a08, 0x1760: 0x0a08, 0x1761: 0x0c08, 0x1762: 0x0808, 0x1763: 0x0808,
1682 0x1764: 0x0c08, 0x1765: 0x3308, 0x1766: 0x3308, 0x1767: 0x0040, 0x1768: 0x0040, 0x1769: 0x0040,
1683 0x176a: 0x0040, 0x176b: 0x0a18, 0x176c: 0x0a18, 0x176d: 0x0a18, 0x176e: 0x0a18, 0x176f: 0x0c18,
1684 0x1770: 0x0818, 0x1771: 0x0818, 0x1772: 0x0818, 0x1773: 0x0818, 0x1774: 0x0818, 0x1775: 0x0818,
1685 0x1776: 0x0818, 0x1777: 0x0040, 0x1778: 0x0040, 0x1779: 0x0040, 0x177a: 0x0040, 0x177b: 0x0040,
1686 0x177c: 0x0040, 0x177d: 0x0040, 0x177e: 0x0040, 0x177f: 0x0040,
1687 // Block 0x5e, offset 0x1780
1688 0x1780: 0x0a08, 0x1781: 0x0c08, 0x1782: 0x0a08, 0x1783: 0x0c08, 0x1784: 0x0c08, 0x1785: 0x0c08,
1689 0x1786: 0x0a08, 0x1787: 0x0a08, 0x1788: 0x0a08, 0x1789: 0x0c08, 0x178a: 0x0a08, 0x178b: 0x0a08,
1690 0x178c: 0x0c08, 0x178d: 0x0a08, 0x178e: 0x0c08, 0x178f: 0x0c08, 0x1790: 0x0a08, 0x1791: 0x0c08,
1691 0x1792: 0x0040, 0x1793: 0x0040, 0x1794: 0x0040, 0x1795: 0x0040, 0x1796: 0x0040, 0x1797: 0x0040,
1692 0x1798: 0x0040, 0x1799: 0x0818, 0x179a: 0x0818, 0x179b: 0x0818, 0x179c: 0x0818, 0x179d: 0x0040,
1693 0x179e: 0x0040, 0x179f: 0x0040, 0x17a0: 0x0040, 0x17a1: 0x0040, 0x17a2: 0x0040, 0x17a3: 0x0040,
1694 0x17a4: 0x0040, 0x17a5: 0x0040, 0x17a6: 0x0040, 0x17a7: 0x0040, 0x17a8: 0x0040, 0x17a9: 0x0c18,
1695 0x17aa: 0x0c18, 0x17ab: 0x0c18, 0x17ac: 0x0c18, 0x17ad: 0x0a18, 0x17ae: 0x0a18, 0x17af: 0x0818,
1696 0x17b0: 0x0040, 0x17b1: 0x0040, 0x17b2: 0x0040, 0x17b3: 0x0040, 0x17b4: 0x0040, 0x17b5: 0x0040,
1697 0x17b6: 0x0040, 0x17b7: 0x0040, 0x17b8: 0x0040, 0x17b9: 0x0040, 0x17ba: 0x0040, 0x17bb: 0x0040,
1698 0x17bc: 0x0040, 0x17bd: 0x0040, 0x17be: 0x0040, 0x17bf: 0x0040,
1699 // Block 0x5f, offset 0x17c0
1700 0x17c0: 0x3308, 0x17c1: 0x3308, 0x17c2: 0x3008, 0x17c3: 0x3008, 0x17c4: 0x0040, 0x17c5: 0x0008,
1701 0x17c6: 0x0008, 0x17c7: 0x0008, 0x17c8: 0x0008, 0x17c9: 0x0008, 0x17ca: 0x0008, 0x17cb: 0x0008,
1702 0x17cc: 0x0008, 0x17cd: 0x0040, 0x17ce: 0x0040, 0x17cf: 0x0008, 0x17d0: 0x0008, 0x17d1: 0x0040,
1703 0x17d2: 0x0040, 0x17d3: 0x0008, 0x17d4: 0x0008, 0x17d5: 0x0008, 0x17d6: 0x0008, 0x17d7: 0x0008,
1704 0x17d8: 0x0008, 0x17d9: 0x0008, 0x17da: 0x0008, 0x17db: 0x0008, 0x17dc: 0x0008, 0x17dd: 0x0008,
1705 0x17de: 0x0008, 0x17df: 0x0008, 0x17e0: 0x0008, 0x17e1: 0x0008, 0x17e2: 0x0008, 0x17e3: 0x0008,
1706 0x17e4: 0x0008, 0x17e5: 0x0008, 0x17e6: 0x0008, 0x17e7: 0x0008, 0x17e8: 0x0008, 0x17e9: 0x0040,
1707 0x17ea: 0x0008, 0x17eb: 0x0008, 0x17ec: 0x0008, 0x17ed: 0x0008, 0x17ee: 0x0008, 0x17ef: 0x0008,
1708 0x17f0: 0x0008, 0x17f1: 0x0040, 0x17f2: 0x0008, 0x17f3: 0x0008, 0x17f4: 0x0040, 0x17f5: 0x0008,
1709 0x17f6: 0x0008, 0x17f7: 0x0008, 0x17f8: 0x0008, 0x17f9: 0x0008, 0x17fa: 0x0040, 0x17fb: 0x3308,
1710 0x17fc: 0x3308, 0x17fd: 0x0008, 0x17fe: 0x3008, 0x17ff: 0x3008,
1711 // Block 0x60, offset 0x1800
1712 0x1800: 0x3308, 0x1801: 0x3008, 0x1802: 0x3008, 0x1803: 0x3008, 0x1804: 0x3008, 0x1805: 0x0040,
1713 0x1806: 0x0040, 0x1807: 0x3008, 0x1808: 0x3008, 0x1809: 0x0040, 0x180a: 0x0040, 0x180b: 0x3008,
1714 0x180c: 0x3008, 0x180d: 0x3808, 0x180e: 0x0040, 0x180f: 0x0040, 0x1810: 0x0008, 0x1811: 0x0040,
1715 0x1812: 0x0040, 0x1813: 0x0040, 0x1814: 0x0040, 0x1815: 0x0040, 0x1816: 0x0040, 0x1817: 0x3008,
1716 0x1818: 0x0040, 0x1819: 0x0040, 0x181a: 0x0040, 0x181b: 0x0040, 0x181c: 0x0040, 0x181d: 0x0008,
1717 0x181e: 0x0008, 0x181f: 0x0008, 0x1820: 0x0008, 0x1821: 0x0008, 0x1822: 0x3008, 0x1823: 0x3008,
1718 0x1824: 0x0040, 0x1825: 0x0040, 0x1826: 0x3308, 0x1827: 0x3308, 0x1828: 0x3308, 0x1829: 0x3308,
1719 0x182a: 0x3308, 0x182b: 0x3308, 0x182c: 0x3308, 0x182d: 0x0040, 0x182e: 0x0040, 0x182f: 0x0040,
1720 0x1830: 0x3308, 0x1831: 0x3308, 0x1832: 0x3308, 0x1833: 0x3308, 0x1834: 0x3308, 0x1835: 0x0040,
1721 0x1836: 0x0040, 0x1837: 0x0040, 0x1838: 0x0040, 0x1839: 0x0040, 0x183a: 0x0040, 0x183b: 0x0040,
1722 0x183c: 0x0040, 0x183d: 0x0040, 0x183e: 0x0040, 0x183f: 0x0040,
1723 // Block 0x61, offset 0x1840
1724 0x1840: 0x0039, 0x1841: 0x0ee9, 0x1842: 0x1159, 0x1843: 0x0ef9, 0x1844: 0x0f09, 0x1845: 0x1199,
1725 0x1846: 0x0f31, 0x1847: 0x0249, 0x1848: 0x0f41, 0x1849: 0x0259, 0x184a: 0x0f51, 0x184b: 0x0359,
1726 0x184c: 0x0f61, 0x184d: 0x0f71, 0x184e: 0x00d9, 0x184f: 0x0f99, 0x1850: 0x2039, 0x1851: 0x0269,
1727 0x1852: 0x01d9, 0x1853: 0x0fa9, 0x1854: 0x0fb9, 0x1855: 0x1089, 0x1856: 0x0279, 0x1857: 0x0369,
1728 0x1858: 0x0289, 0x1859: 0x13d1, 0x185a: 0x0039, 0x185b: 0x0ee9, 0x185c: 0x1159, 0x185d: 0x0ef9,
1729 0x185e: 0x0f09, 0x185f: 0x1199, 0x1860: 0x0f31, 0x1861: 0x0249, 0x1862: 0x0f41, 0x1863: 0x0259,
1730 0x1864: 0x0f51, 0x1865: 0x0359, 0x1866: 0x0f61, 0x1867: 0x0f71, 0x1868: 0x00d9, 0x1869: 0x0f99,
1731 0x186a: 0x2039, 0x186b: 0x0269, 0x186c: 0x01d9, 0x186d: 0x0fa9, 0x186e: 0x0fb9, 0x186f: 0x1089,
1732 0x1870: 0x0279, 0x1871: 0x0369, 0x1872: 0x0289, 0x1873: 0x13d1, 0x1874: 0x0039, 0x1875: 0x0ee9,
1733 0x1876: 0x1159, 0x1877: 0x0ef9, 0x1878: 0x0f09, 0x1879: 0x1199, 0x187a: 0x0f31, 0x187b: 0x0249,
1734 0x187c: 0x0f41, 0x187d: 0x0259, 0x187e: 0x0f51, 0x187f: 0x0359,
1735 // Block 0x62, offset 0x1880
1736 0x1880: 0x0f61, 0x1881: 0x0f71, 0x1882: 0x00d9, 0x1883: 0x0f99, 0x1884: 0x2039, 0x1885: 0x0269,
1737 0x1886: 0x01d9, 0x1887: 0x0fa9, 0x1888: 0x0fb9, 0x1889: 0x1089, 0x188a: 0x0279, 0x188b: 0x0369,
1738 0x188c: 0x0289, 0x188d: 0x13d1, 0x188e: 0x0039, 0x188f: 0x0ee9, 0x1890: 0x1159, 0x1891: 0x0ef9,
1739 0x1892: 0x0f09, 0x1893: 0x1199, 0x1894: 0x0f31, 0x1895: 0x0040, 0x1896: 0x0f41, 0x1897: 0x0259,
1740 0x1898: 0x0f51, 0x1899: 0x0359, 0x189a: 0x0f61, 0x189b: 0x0f71, 0x189c: 0x00d9, 0x189d: 0x0f99,
1741 0x189e: 0x2039, 0x189f: 0x0269, 0x18a0: 0x01d9, 0x18a1: 0x0fa9, 0x18a2: 0x0fb9, 0x18a3: 0x1089,
1742 0x18a4: 0x0279, 0x18a5: 0x0369, 0x18a6: 0x0289, 0x18a7: 0x13d1, 0x18a8: 0x0039, 0x18a9: 0x0ee9,
1743 0x18aa: 0x1159, 0x18ab: 0x0ef9, 0x18ac: 0x0f09, 0x18ad: 0x1199, 0x18ae: 0x0f31, 0x18af: 0x0249,
1744 0x18b0: 0x0f41, 0x18b1: 0x0259, 0x18b2: 0x0f51, 0x18b3: 0x0359, 0x18b4: 0x0f61, 0x18b5: 0x0f71,
1745 0x18b6: 0x00d9, 0x18b7: 0x0f99, 0x18b8: 0x2039, 0x18b9: 0x0269, 0x18ba: 0x01d9, 0x18bb: 0x0fa9,
1746 0x18bc: 0x0fb9, 0x18bd: 0x1089, 0x18be: 0x0279, 0x18bf: 0x0369,
1747 // Block 0x63, offset 0x18c0
1748 0x18c0: 0x0289, 0x18c1: 0x13d1, 0x18c2: 0x0039, 0x18c3: 0x0ee9, 0x18c4: 0x1159, 0x18c5: 0x0ef9,
1749 0x18c6: 0x0f09, 0x18c7: 0x1199, 0x18c8: 0x0f31, 0x18c9: 0x0249, 0x18ca: 0x0f41, 0x18cb: 0x0259,
1750 0x18cc: 0x0f51, 0x18cd: 0x0359, 0x18ce: 0x0f61, 0x18cf: 0x0f71, 0x18d0: 0x00d9, 0x18d1: 0x0f99,
1751 0x18d2: 0x2039, 0x18d3: 0x0269, 0x18d4: 0x01d9, 0x18d5: 0x0fa9, 0x18d6: 0x0fb9, 0x18d7: 0x1089,
1752 0x18d8: 0x0279, 0x18d9: 0x0369, 0x18da: 0x0289, 0x18db: 0x13d1, 0x18dc: 0x0039, 0x18dd: 0x0040,
1753 0x18de: 0x1159, 0x18df: 0x0ef9, 0x18e0: 0x0040, 0x18e1: 0x0040, 0x18e2: 0x0f31, 0x18e3: 0x0040,
1754 0x18e4: 0x0040, 0x18e5: 0x0259, 0x18e6: 0x0f51, 0x18e7: 0x0040, 0x18e8: 0x0040, 0x18e9: 0x0f71,
1755 0x18ea: 0x00d9, 0x18eb: 0x0f99, 0x18ec: 0x2039, 0x18ed: 0x0040, 0x18ee: 0x01d9, 0x18ef: 0x0fa9,
1756 0x18f0: 0x0fb9, 0x18f1: 0x1089, 0x18f2: 0x0279, 0x18f3: 0x0369, 0x18f4: 0x0289, 0x18f5: 0x13d1,
1757 0x18f6: 0x0039, 0x18f7: 0x0ee9, 0x18f8: 0x1159, 0x18f9: 0x0ef9, 0x18fa: 0x0040, 0x18fb: 0x1199,
1758 0x18fc: 0x0040, 0x18fd: 0x0249, 0x18fe: 0x0f41, 0x18ff: 0x0259,
1759 // Block 0x64, offset 0x1900
1760 0x1900: 0x0f51, 0x1901: 0x0359, 0x1902: 0x0f61, 0x1903: 0x0f71, 0x1904: 0x0040, 0x1905: 0x0f99,
1761 0x1906: 0x2039, 0x1907: 0x0269, 0x1908: 0x01d9, 0x1909: 0x0fa9, 0x190a: 0x0fb9, 0x190b: 0x1089,
1762 0x190c: 0x0279, 0x190d: 0x0369, 0x190e: 0x0289, 0x190f: 0x13d1, 0x1910: 0x0039, 0x1911: 0x0ee9,
1763 0x1912: 0x1159, 0x1913: 0x0ef9, 0x1914: 0x0f09, 0x1915: 0x1199, 0x1916: 0x0f31, 0x1917: 0x0249,
1764 0x1918: 0x0f41, 0x1919: 0x0259, 0x191a: 0x0f51, 0x191b: 0x0359, 0x191c: 0x0f61, 0x191d: 0x0f71,
1765 0x191e: 0x00d9, 0x191f: 0x0f99, 0x1920: 0x2039, 0x1921: 0x0269, 0x1922: 0x01d9, 0x1923: 0x0fa9,
1766 0x1924: 0x0fb9, 0x1925: 0x1089, 0x1926: 0x0279, 0x1927: 0x0369, 0x1928: 0x0289, 0x1929: 0x13d1,
1767 0x192a: 0x0039, 0x192b: 0x0ee9, 0x192c: 0x1159, 0x192d: 0x0ef9, 0x192e: 0x0f09, 0x192f: 0x1199,
1768 0x1930: 0x0f31, 0x1931: 0x0249, 0x1932: 0x0f41, 0x1933: 0x0259, 0x1934: 0x0f51, 0x1935: 0x0359,
1769 0x1936: 0x0f61, 0x1937: 0x0f71, 0x1938: 0x00d9, 0x1939: 0x0f99, 0x193a: 0x2039, 0x193b: 0x0269,
1770 0x193c: 0x01d9, 0x193d: 0x0fa9, 0x193e: 0x0fb9, 0x193f: 0x1089,
1771 // Block 0x65, offset 0x1940
1772 0x1940: 0x0279, 0x1941: 0x0369, 0x1942: 0x0289, 0x1943: 0x13d1, 0x1944: 0x0039, 0x1945: 0x0ee9,
1773 0x1946: 0x0040, 0x1947: 0x0ef9, 0x1948: 0x0f09, 0x1949: 0x1199, 0x194a: 0x0f31, 0x194b: 0x0040,
1774 0x194c: 0x0040, 0x194d: 0x0259, 0x194e: 0x0f51, 0x194f: 0x0359, 0x1950: 0x0f61, 0x1951: 0x0f71,
1775 0x1952: 0x00d9, 0x1953: 0x0f99, 0x1954: 0x2039, 0x1955: 0x0040, 0x1956: 0x01d9, 0x1957: 0x0fa9,
1776 0x1958: 0x0fb9, 0x1959: 0x1089, 0x195a: 0x0279, 0x195b: 0x0369, 0x195c: 0x0289, 0x195d: 0x0040,
1777 0x195e: 0x0039, 0x195f: 0x0ee9, 0x1960: 0x1159, 0x1961: 0x0ef9, 0x1962: 0x0f09, 0x1963: 0x1199,
1778 0x1964: 0x0f31, 0x1965: 0x0249, 0x1966: 0x0f41, 0x1967: 0x0259, 0x1968: 0x0f51, 0x1969: 0x0359,
1779 0x196a: 0x0f61, 0x196b: 0x0f71, 0x196c: 0x00d9, 0x196d: 0x0f99, 0x196e: 0x2039, 0x196f: 0x0269,
1780 0x1970: 0x01d9, 0x1971: 0x0fa9, 0x1972: 0x0fb9, 0x1973: 0x1089, 0x1974: 0x0279, 0x1975: 0x0369,
1781 0x1976: 0x0289, 0x1977: 0x13d1, 0x1978: 0x0039, 0x1979: 0x0ee9, 0x197a: 0x0040, 0x197b: 0x0ef9,
1782 0x197c: 0x0f09, 0x197d: 0x1199, 0x197e: 0x0f31, 0x197f: 0x0040,
1783 // Block 0x66, offset 0x1980
1784 0x1980: 0x0f41, 0x1981: 0x0259, 0x1982: 0x0f51, 0x1983: 0x0359, 0x1984: 0x0f61, 0x1985: 0x0040,
1785 0x1986: 0x00d9, 0x1987: 0x0040, 0x1988: 0x0040, 0x1989: 0x0040, 0x198a: 0x01d9, 0x198b: 0x0fa9,
1786 0x198c: 0x0fb9, 0x198d: 0x1089, 0x198e: 0x0279, 0x198f: 0x0369, 0x1990: 0x0289, 0x1991: 0x0040,
1787 0x1992: 0x0039, 0x1993: 0x0ee9, 0x1994: 0x1159, 0x1995: 0x0ef9, 0x1996: 0x0f09, 0x1997: 0x1199,
1788 0x1998: 0x0f31, 0x1999: 0x0249, 0x199a: 0x0f41, 0x199b: 0x0259, 0x199c: 0x0f51, 0x199d: 0x0359,
1789 0x199e: 0x0f61, 0x199f: 0x0f71, 0x19a0: 0x00d9, 0x19a1: 0x0f99, 0x19a2: 0x2039, 0x19a3: 0x0269,
1790 0x19a4: 0x01d9, 0x19a5: 0x0fa9, 0x19a6: 0x0fb9, 0x19a7: 0x1089, 0x19a8: 0x0279, 0x19a9: 0x0369,
1791 0x19aa: 0x0289, 0x19ab: 0x13d1, 0x19ac: 0x0039, 0x19ad: 0x0ee9, 0x19ae: 0x1159, 0x19af: 0x0ef9,
1792 0x19b0: 0x0f09, 0x19b1: 0x1199, 0x19b2: 0x0f31, 0x19b3: 0x0249, 0x19b4: 0x0f41, 0x19b5: 0x0259,
1793 0x19b6: 0x0f51, 0x19b7: 0x0359, 0x19b8: 0x0f61, 0x19b9: 0x0f71, 0x19ba: 0x00d9, 0x19bb: 0x0f99,
1794 0x19bc: 0x2039, 0x19bd: 0x0269, 0x19be: 0x01d9, 0x19bf: 0x0fa9,
1795 // Block 0x67, offset 0x19c0
1796 0x19c0: 0x0fb9, 0x19c1: 0x1089, 0x19c2: 0x0279, 0x19c3: 0x0369, 0x19c4: 0x0289, 0x19c5: 0x13d1,
1797 0x19c6: 0x0039, 0x19c7: 0x0ee9, 0x19c8: 0x1159, 0x19c9: 0x0ef9, 0x19ca: 0x0f09, 0x19cb: 0x1199,
1798 0x19cc: 0x0f31, 0x19cd: 0x0249, 0x19ce: 0x0f41, 0x19cf: 0x0259, 0x19d0: 0x0f51, 0x19d1: 0x0359,
1799 0x19d2: 0x0f61, 0x19d3: 0x0f71, 0x19d4: 0x00d9, 0x19d5: 0x0f99, 0x19d6: 0x2039, 0x19d7: 0x0269,
1800 0x19d8: 0x01d9, 0x19d9: 0x0fa9, 0x19da: 0x0fb9, 0x19db: 0x1089, 0x19dc: 0x0279, 0x19dd: 0x0369,
1801 0x19de: 0x0289, 0x19df: 0x13d1, 0x19e0: 0x0039, 0x19e1: 0x0ee9, 0x19e2: 0x1159, 0x19e3: 0x0ef9,
1802 0x19e4: 0x0f09, 0x19e5: 0x1199, 0x19e6: 0x0f31, 0x19e7: 0x0249, 0x19e8: 0x0f41, 0x19e9: 0x0259,
1803 0x19ea: 0x0f51, 0x19eb: 0x0359, 0x19ec: 0x0f61, 0x19ed: 0x0f71, 0x19ee: 0x00d9, 0x19ef: 0x0f99,
1804 0x19f0: 0x2039, 0x19f1: 0x0269, 0x19f2: 0x01d9, 0x19f3: 0x0fa9, 0x19f4: 0x0fb9, 0x19f5: 0x1089,
1805 0x19f6: 0x0279, 0x19f7: 0x0369, 0x19f8: 0x0289, 0x19f9: 0x13d1, 0x19fa: 0x0039, 0x19fb: 0x0ee9,
1806 0x19fc: 0x1159, 0x19fd: 0x0ef9, 0x19fe: 0x0f09, 0x19ff: 0x1199,
1807 // Block 0x68, offset 0x1a00
1808 0x1a00: 0x0f31, 0x1a01: 0x0249, 0x1a02: 0x0f41, 0x1a03: 0x0259, 0x1a04: 0x0f51, 0x1a05: 0x0359,
1809 0x1a06: 0x0f61, 0x1a07: 0x0f71, 0x1a08: 0x00d9, 0x1a09: 0x0f99, 0x1a0a: 0x2039, 0x1a0b: 0x0269,
1810 0x1a0c: 0x01d9, 0x1a0d: 0x0fa9, 0x1a0e: 0x0fb9, 0x1a0f: 0x1089, 0x1a10: 0x0279, 0x1a11: 0x0369,
1811 0x1a12: 0x0289, 0x1a13: 0x13d1, 0x1a14: 0x0039, 0x1a15: 0x0ee9, 0x1a16: 0x1159, 0x1a17: 0x0ef9,
1812 0x1a18: 0x0f09, 0x1a19: 0x1199, 0x1a1a: 0x0f31, 0x1a1b: 0x0249, 0x1a1c: 0x0f41, 0x1a1d: 0x0259,
1813 0x1a1e: 0x0f51, 0x1a1f: 0x0359, 0x1a20: 0x0f61, 0x1a21: 0x0f71, 0x1a22: 0x00d9, 0x1a23: 0x0f99,
1814 0x1a24: 0x2039, 0x1a25: 0x0269, 0x1a26: 0x01d9, 0x1a27: 0x0fa9, 0x1a28: 0x0fb9, 0x1a29: 0x1089,
1815 0x1a2a: 0x0279, 0x1a2b: 0x0369, 0x1a2c: 0x0289, 0x1a2d: 0x13d1, 0x1a2e: 0x0039, 0x1a2f: 0x0ee9,
1816 0x1a30: 0x1159, 0x1a31: 0x0ef9, 0x1a32: 0x0f09, 0x1a33: 0x1199, 0x1a34: 0x0f31, 0x1a35: 0x0249,
1817 0x1a36: 0x0f41, 0x1a37: 0x0259, 0x1a38: 0x0f51, 0x1a39: 0x0359, 0x1a3a: 0x0f61, 0x1a3b: 0x0f71,
1818 0x1a3c: 0x00d9, 0x1a3d: 0x0f99, 0x1a3e: 0x2039, 0x1a3f: 0x0269,
1819 // Block 0x69, offset 0x1a40
1820 0x1a40: 0x01d9, 0x1a41: 0x0fa9, 0x1a42: 0x0fb9, 0x1a43: 0x1089, 0x1a44: 0x0279, 0x1a45: 0x0369,
1821 0x1a46: 0x0289, 0x1a47: 0x13d1, 0x1a48: 0x0039, 0x1a49: 0x0ee9, 0x1a4a: 0x1159, 0x1a4b: 0x0ef9,
1822 0x1a4c: 0x0f09, 0x1a4d: 0x1199, 0x1a4e: 0x0f31, 0x1a4f: 0x0249, 0x1a50: 0x0f41, 0x1a51: 0x0259,
1823 0x1a52: 0x0f51, 0x1a53: 0x0359, 0x1a54: 0x0f61, 0x1a55: 0x0f71, 0x1a56: 0x00d9, 0x1a57: 0x0f99,
1824 0x1a58: 0x2039, 0x1a59: 0x0269, 0x1a5a: 0x01d9, 0x1a5b: 0x0fa9, 0x1a5c: 0x0fb9, 0x1a5d: 0x1089,
1825 0x1a5e: 0x0279, 0x1a5f: 0x0369, 0x1a60: 0x0289, 0x1a61: 0x13d1, 0x1a62: 0x0039, 0x1a63: 0x0ee9,
1826 0x1a64: 0x1159, 0x1a65: 0x0ef9, 0x1a66: 0x0f09, 0x1a67: 0x1199, 0x1a68: 0x0f31, 0x1a69: 0x0249,
1827 0x1a6a: 0x0f41, 0x1a6b: 0x0259, 0x1a6c: 0x0f51, 0x1a6d: 0x0359, 0x1a6e: 0x0f61, 0x1a6f: 0x0f71,
1828 0x1a70: 0x00d9, 0x1a71: 0x0f99, 0x1a72: 0x2039, 0x1a73: 0x0269, 0x1a74: 0x01d9, 0x1a75: 0x0fa9,
1829 0x1a76: 0x0fb9, 0x1a77: 0x1089, 0x1a78: 0x0279, 0x1a79: 0x0369, 0x1a7a: 0x0289, 0x1a7b: 0x13d1,
1830 0x1a7c: 0x0039, 0x1a7d: 0x0ee9, 0x1a7e: 0x1159, 0x1a7f: 0x0ef9,
1831 // Block 0x6a, offset 0x1a80
1832 0x1a80: 0x0f09, 0x1a81: 0x1199, 0x1a82: 0x0f31, 0x1a83: 0x0249, 0x1a84: 0x0f41, 0x1a85: 0x0259,
1833 0x1a86: 0x0f51, 0x1a87: 0x0359, 0x1a88: 0x0f61, 0x1a89: 0x0f71, 0x1a8a: 0x00d9, 0x1a8b: 0x0f99,
1834 0x1a8c: 0x2039, 0x1a8d: 0x0269, 0x1a8e: 0x01d9, 0x1a8f: 0x0fa9, 0x1a90: 0x0fb9, 0x1a91: 0x1089,
1835 0x1a92: 0x0279, 0x1a93: 0x0369, 0x1a94: 0x0289, 0x1a95: 0x13d1, 0x1a96: 0x0039, 0x1a97: 0x0ee9,
1836 0x1a98: 0x1159, 0x1a99: 0x0ef9, 0x1a9a: 0x0f09, 0x1a9b: 0x1199, 0x1a9c: 0x0f31, 0x1a9d: 0x0249,
1837 0x1a9e: 0x0f41, 0x1a9f: 0x0259, 0x1aa0: 0x0f51, 0x1aa1: 0x0359, 0x1aa2: 0x0f61, 0x1aa3: 0x0f71,
1838 0x1aa4: 0x00d9, 0x1aa5: 0x0f99, 0x1aa6: 0x2039, 0x1aa7: 0x0269, 0x1aa8: 0x01d9, 0x1aa9: 0x0fa9,
1839 0x1aaa: 0x0fb9, 0x1aab: 0x1089, 0x1aac: 0x0279, 0x1aad: 0x0369, 0x1aae: 0x0289, 0x1aaf: 0x13d1,
1840 0x1ab0: 0x0039, 0x1ab1: 0x0ee9, 0x1ab2: 0x1159, 0x1ab3: 0x0ef9, 0x1ab4: 0x0f09, 0x1ab5: 0x1199,
1841 0x1ab6: 0x0f31, 0x1ab7: 0x0249, 0x1ab8: 0x0f41, 0x1ab9: 0x0259, 0x1aba: 0x0f51, 0x1abb: 0x0359,
1842 0x1abc: 0x0f61, 0x1abd: 0x0f71, 0x1abe: 0x00d9, 0x1abf: 0x0f99,
1843 // Block 0x6b, offset 0x1ac0
1844 0x1ac0: 0x2039, 0x1ac1: 0x0269, 0x1ac2: 0x01d9, 0x1ac3: 0x0fa9, 0x1ac4: 0x0fb9, 0x1ac5: 0x1089,
1845 0x1ac6: 0x0279, 0x1ac7: 0x0369, 0x1ac8: 0x0289, 0x1ac9: 0x13d1, 0x1aca: 0x0039, 0x1acb: 0x0ee9,
1846 0x1acc: 0x1159, 0x1acd: 0x0ef9, 0x1ace: 0x0f09, 0x1acf: 0x1199, 0x1ad0: 0x0f31, 0x1ad1: 0x0249,
1847 0x1ad2: 0x0f41, 0x1ad3: 0x0259, 0x1ad4: 0x0f51, 0x1ad5: 0x0359, 0x1ad6: 0x0f61, 0x1ad7: 0x0f71,
1848 0x1ad8: 0x00d9, 0x1ad9: 0x0f99, 0x1ada: 0x2039, 0x1adb: 0x0269, 0x1adc: 0x01d9, 0x1add: 0x0fa9,
1849 0x1ade: 0x0fb9, 0x1adf: 0x1089, 0x1ae0: 0x0279, 0x1ae1: 0x0369, 0x1ae2: 0x0289, 0x1ae3: 0x13d1,
1850 0x1ae4: 0xba81, 0x1ae5: 0xba99, 0x1ae6: 0x0040, 0x1ae7: 0x0040, 0x1ae8: 0xbab1, 0x1ae9: 0x1099,
1851 0x1aea: 0x10b1, 0x1aeb: 0x10c9, 0x1aec: 0xbac9, 0x1aed: 0xbae1, 0x1aee: 0xbaf9, 0x1aef: 0x1429,
1852 0x1af0: 0x1a31, 0x1af1: 0xbb11, 0x1af2: 0xbb29, 0x1af3: 0xbb41, 0x1af4: 0xbb59, 0x1af5: 0xbb71,
1853 0x1af6: 0xbb89, 0x1af7: 0x2109, 0x1af8: 0x1111, 0x1af9: 0x1429, 0x1afa: 0xbba1, 0x1afb: 0xbbb9,
1854 0x1afc: 0xbbd1, 0x1afd: 0x10e1, 0x1afe: 0x10f9, 0x1aff: 0xbbe9,
1855 // Block 0x6c, offset 0x1b00
1856 0x1b00: 0x2079, 0x1b01: 0xbc01, 0x1b02: 0xbab1, 0x1b03: 0x1099, 0x1b04: 0x10b1, 0x1b05: 0x10c9,
1857 0x1b06: 0xbac9, 0x1b07: 0xbae1, 0x1b08: 0xbaf9, 0x1b09: 0x1429, 0x1b0a: 0x1a31, 0x1b0b: 0xbb11,
1858 0x1b0c: 0xbb29, 0x1b0d: 0xbb41, 0x1b0e: 0xbb59, 0x1b0f: 0xbb71, 0x1b10: 0xbb89, 0x1b11: 0x2109,
1859 0x1b12: 0x1111, 0x1b13: 0xbba1, 0x1b14: 0xbba1, 0x1b15: 0xbbb9, 0x1b16: 0xbbd1, 0x1b17: 0x10e1,
1860 0x1b18: 0x10f9, 0x1b19: 0xbbe9, 0x1b1a: 0x2079, 0x1b1b: 0xbc21, 0x1b1c: 0xbac9, 0x1b1d: 0x1429,
1861 0x1b1e: 0xbb11, 0x1b1f: 0x10e1, 0x1b20: 0x1111, 0x1b21: 0x2109, 0x1b22: 0xbab1, 0x1b23: 0x1099,
1862 0x1b24: 0x10b1, 0x1b25: 0x10c9, 0x1b26: 0xbac9, 0x1b27: 0xbae1, 0x1b28: 0xbaf9, 0x1b29: 0x1429,
1863 0x1b2a: 0x1a31, 0x1b2b: 0xbb11, 0x1b2c: 0xbb29, 0x1b2d: 0xbb41, 0x1b2e: 0xbb59, 0x1b2f: 0xbb71,
1864 0x1b30: 0xbb89, 0x1b31: 0x2109, 0x1b32: 0x1111, 0x1b33: 0x1429, 0x1b34: 0xbba1, 0x1b35: 0xbbb9,
1865 0x1b36: 0xbbd1, 0x1b37: 0x10e1, 0x1b38: 0x10f9, 0x1b39: 0xbbe9, 0x1b3a: 0x2079, 0x1b3b: 0xbc01,
1866 0x1b3c: 0xbab1, 0x1b3d: 0x1099, 0x1b3e: 0x10b1, 0x1b3f: 0x10c9,
1867 // Block 0x6d, offset 0x1b40
1868 0x1b40: 0xbac9, 0x1b41: 0xbae1, 0x1b42: 0xbaf9, 0x1b43: 0x1429, 0x1b44: 0x1a31, 0x1b45: 0xbb11,
1869 0x1b46: 0xbb29, 0x1b47: 0xbb41, 0x1b48: 0xbb59, 0x1b49: 0xbb71, 0x1b4a: 0xbb89, 0x1b4b: 0x2109,
1870 0x1b4c: 0x1111, 0x1b4d: 0xbba1, 0x1b4e: 0xbba1, 0x1b4f: 0xbbb9, 0x1b50: 0xbbd1, 0x1b51: 0x10e1,
1871 0x1b52: 0x10f9, 0x1b53: 0xbbe9, 0x1b54: 0x2079, 0x1b55: 0xbc21, 0x1b56: 0xbac9, 0x1b57: 0x1429,
1872 0x1b58: 0xbb11, 0x1b59: 0x10e1, 0x1b5a: 0x1111, 0x1b5b: 0x2109, 0x1b5c: 0xbab1, 0x1b5d: 0x1099,
1873 0x1b5e: 0x10b1, 0x1b5f: 0x10c9, 0x1b60: 0xbac9, 0x1b61: 0xbae1, 0x1b62: 0xbaf9, 0x1b63: 0x1429,
1874 0x1b64: 0x1a31, 0x1b65: 0xbb11, 0x1b66: 0xbb29, 0x1b67: 0xbb41, 0x1b68: 0xbb59, 0x1b69: 0xbb71,
1875 0x1b6a: 0xbb89, 0x1b6b: 0x2109, 0x1b6c: 0x1111, 0x1b6d: 0x1429, 0x1b6e: 0xbba1, 0x1b6f: 0xbbb9,
1876 0x1b70: 0xbbd1, 0x1b71: 0x10e1, 0x1b72: 0x10f9, 0x1b73: 0xbbe9, 0x1b74: 0x2079, 0x1b75: 0xbc01,
1877 0x1b76: 0xbab1, 0x1b77: 0x1099, 0x1b78: 0x10b1, 0x1b79: 0x10c9, 0x1b7a: 0xbac9, 0x1b7b: 0xbae1,
1878 0x1b7c: 0xbaf9, 0x1b7d: 0x1429, 0x1b7e: 0x1a31, 0x1b7f: 0xbb11,
1879 // Block 0x6e, offset 0x1b80
1880 0x1b80: 0xbb29, 0x1b81: 0xbb41, 0x1b82: 0xbb59, 0x1b83: 0xbb71, 0x1b84: 0xbb89, 0x1b85: 0x2109,
1881 0x1b86: 0x1111, 0x1b87: 0xbba1, 0x1b88: 0xbba1, 0x1b89: 0xbbb9, 0x1b8a: 0xbbd1, 0x1b8b: 0x10e1,
1882 0x1b8c: 0x10f9, 0x1b8d: 0xbbe9, 0x1b8e: 0x2079, 0x1b8f: 0xbc21, 0x1b90: 0xbac9, 0x1b91: 0x1429,
1883 0x1b92: 0xbb11, 0x1b93: 0x10e1, 0x1b94: 0x1111, 0x1b95: 0x2109, 0x1b96: 0xbab1, 0x1b97: 0x1099,
1884 0x1b98: 0x10b1, 0x1b99: 0x10c9, 0x1b9a: 0xbac9, 0x1b9b: 0xbae1, 0x1b9c: 0xbaf9, 0x1b9d: 0x1429,
1885 0x1b9e: 0x1a31, 0x1b9f: 0xbb11, 0x1ba0: 0xbb29, 0x1ba1: 0xbb41, 0x1ba2: 0xbb59, 0x1ba3: 0xbb71,
1886 0x1ba4: 0xbb89, 0x1ba5: 0x2109, 0x1ba6: 0x1111, 0x1ba7: 0x1429, 0x1ba8: 0xbba1, 0x1ba9: 0xbbb9,
1887 0x1baa: 0xbbd1, 0x1bab: 0x10e1, 0x1bac: 0x10f9, 0x1bad: 0xbbe9, 0x1bae: 0x2079, 0x1baf: 0xbc01,
1888 0x1bb0: 0xbab1, 0x1bb1: 0x1099, 0x1bb2: 0x10b1, 0x1bb3: 0x10c9, 0x1bb4: 0xbac9, 0x1bb5: 0xbae1,
1889 0x1bb6: 0xbaf9, 0x1bb7: 0x1429, 0x1bb8: 0x1a31, 0x1bb9: 0xbb11, 0x1bba: 0xbb29, 0x1bbb: 0xbb41,
1890 0x1bbc: 0xbb59, 0x1bbd: 0xbb71, 0x1bbe: 0xbb89, 0x1bbf: 0x2109,
1891 // Block 0x6f, offset 0x1bc0
1892 0x1bc0: 0x1111, 0x1bc1: 0xbba1, 0x1bc2: 0xbba1, 0x1bc3: 0xbbb9, 0x1bc4: 0xbbd1, 0x1bc5: 0x10e1,
1893 0x1bc6: 0x10f9, 0x1bc7: 0xbbe9, 0x1bc8: 0x2079, 0x1bc9: 0xbc21, 0x1bca: 0xbac9, 0x1bcb: 0x1429,
1894 0x1bcc: 0xbb11, 0x1bcd: 0x10e1, 0x1bce: 0x1111, 0x1bcf: 0x2109, 0x1bd0: 0xbab1, 0x1bd1: 0x1099,
1895 0x1bd2: 0x10b1, 0x1bd3: 0x10c9, 0x1bd4: 0xbac9, 0x1bd5: 0xbae1, 0x1bd6: 0xbaf9, 0x1bd7: 0x1429,
1896 0x1bd8: 0x1a31, 0x1bd9: 0xbb11, 0x1bda: 0xbb29, 0x1bdb: 0xbb41, 0x1bdc: 0xbb59, 0x1bdd: 0xbb71,
1897 0x1bde: 0xbb89, 0x1bdf: 0x2109, 0x1be0: 0x1111, 0x1be1: 0x1429, 0x1be2: 0xbba1, 0x1be3: 0xbbb9,
1898 0x1be4: 0xbbd1, 0x1be5: 0x10e1, 0x1be6: 0x10f9, 0x1be7: 0xbbe9, 0x1be8: 0x2079, 0x1be9: 0xbc01,
1899 0x1bea: 0xbab1, 0x1beb: 0x1099, 0x1bec: 0x10b1, 0x1bed: 0x10c9, 0x1bee: 0xbac9, 0x1bef: 0xbae1,
1900 0x1bf0: 0xbaf9, 0x1bf1: 0x1429, 0x1bf2: 0x1a31, 0x1bf3: 0xbb11, 0x1bf4: 0xbb29, 0x1bf5: 0xbb41,
1901 0x1bf6: 0xbb59, 0x1bf7: 0xbb71, 0x1bf8: 0xbb89, 0x1bf9: 0x2109, 0x1bfa: 0x1111, 0x1bfb: 0xbba1,
1902 0x1bfc: 0xbba1, 0x1bfd: 0xbbb9, 0x1bfe: 0xbbd1, 0x1bff: 0x10e1,
1903 // Block 0x70, offset 0x1c00
1904 0x1c00: 0x10f9, 0x1c01: 0xbbe9, 0x1c02: 0x2079, 0x1c03: 0xbc21, 0x1c04: 0xbac9, 0x1c05: 0x1429,
1905 0x1c06: 0xbb11, 0x1c07: 0x10e1, 0x1c08: 0x1111, 0x1c09: 0x2109, 0x1c0a: 0xbc41, 0x1c0b: 0xbc41,
1906 0x1c0c: 0x0040, 0x1c0d: 0x0040, 0x1c0e: 0x1f41, 0x1c0f: 0x00c9, 0x1c10: 0x0069, 0x1c11: 0x0079,
1907 0x1c12: 0x1f51, 0x1c13: 0x1f61, 0x1c14: 0x1f71, 0x1c15: 0x1f81, 0x1c16: 0x1f91, 0x1c17: 0x1fa1,
1908 0x1c18: 0x1f41, 0x1c19: 0x00c9, 0x1c1a: 0x0069, 0x1c1b: 0x0079, 0x1c1c: 0x1f51, 0x1c1d: 0x1f61,
1909 0x1c1e: 0x1f71, 0x1c1f: 0x1f81, 0x1c20: 0x1f91, 0x1c21: 0x1fa1, 0x1c22: 0x1f41, 0x1c23: 0x00c9,
1910 0x1c24: 0x0069, 0x1c25: 0x0079, 0x1c26: 0x1f51, 0x1c27: 0x1f61, 0x1c28: 0x1f71, 0x1c29: 0x1f81,
1911 0x1c2a: 0x1f91, 0x1c2b: 0x1fa1, 0x1c2c: 0x1f41, 0x1c2d: 0x00c9, 0x1c2e: 0x0069, 0x1c2f: 0x0079,
1912 0x1c30: 0x1f51, 0x1c31: 0x1f61, 0x1c32: 0x1f71, 0x1c33: 0x1f81, 0x1c34: 0x1f91, 0x1c35: 0x1fa1,
1913 0x1c36: 0x1f41, 0x1c37: 0x00c9, 0x1c38: 0x0069, 0x1c39: 0x0079, 0x1c3a: 0x1f51, 0x1c3b: 0x1f61,
1914 0x1c3c: 0x1f71, 0x1c3d: 0x1f81, 0x1c3e: 0x1f91, 0x1c3f: 0x1fa1,
1915 // Block 0x71, offset 0x1c40
1916 0x1c40: 0xe115, 0x1c41: 0xe115, 0x1c42: 0xe135, 0x1c43: 0xe135, 0x1c44: 0xe115, 0x1c45: 0xe115,
1917 0x1c46: 0xe175, 0x1c47: 0xe175, 0x1c48: 0xe115, 0x1c49: 0xe115, 0x1c4a: 0xe135, 0x1c4b: 0xe135,
1918 0x1c4c: 0xe115, 0x1c4d: 0xe115, 0x1c4e: 0xe1f5, 0x1c4f: 0xe1f5, 0x1c50: 0xe115, 0x1c51: 0xe115,
1919 0x1c52: 0xe135, 0x1c53: 0xe135, 0x1c54: 0xe115, 0x1c55: 0xe115, 0x1c56: 0xe175, 0x1c57: 0xe175,
1920 0x1c58: 0xe115, 0x1c59: 0xe115, 0x1c5a: 0xe135, 0x1c5b: 0xe135, 0x1c5c: 0xe115, 0x1c5d: 0xe115,
1921 0x1c5e: 0x8b05, 0x1c5f: 0x8b05, 0x1c60: 0x04b5, 0x1c61: 0x04b5, 0x1c62: 0x0a08, 0x1c63: 0x0a08,
1922 0x1c64: 0x0a08, 0x1c65: 0x0a08, 0x1c66: 0x0a08, 0x1c67: 0x0a08, 0x1c68: 0x0a08, 0x1c69: 0x0a08,
1923 0x1c6a: 0x0a08, 0x1c6b: 0x0a08, 0x1c6c: 0x0a08, 0x1c6d: 0x0a08, 0x1c6e: 0x0a08, 0x1c6f: 0x0a08,
1924 0x1c70: 0x0a08, 0x1c71: 0x0a08, 0x1c72: 0x0a08, 0x1c73: 0x0a08, 0x1c74: 0x0a08, 0x1c75: 0x0a08,
1925 0x1c76: 0x0a08, 0x1c77: 0x0a08, 0x1c78: 0x0a08, 0x1c79: 0x0a08, 0x1c7a: 0x0a08, 0x1c7b: 0x0a08,
1926 0x1c7c: 0x0a08, 0x1c7d: 0x0a08, 0x1c7e: 0x0a08, 0x1c7f: 0x0a08,
1927 // Block 0x72, offset 0x1c80
1928 0x1c80: 0xb189, 0x1c81: 0xb1a1, 0x1c82: 0xb201, 0x1c83: 0xb249, 0x1c84: 0x0040, 0x1c85: 0xb411,
1929 0x1c86: 0xb291, 0x1c87: 0xb219, 0x1c88: 0xb309, 0x1c89: 0xb429, 0x1c8a: 0xb399, 0x1c8b: 0xb3b1,
1930 0x1c8c: 0xb3c9, 0x1c8d: 0xb3e1, 0x1c8e: 0xb2a9, 0x1c8f: 0xb339, 0x1c90: 0xb369, 0x1c91: 0xb2d9,
1931 0x1c92: 0xb381, 0x1c93: 0xb279, 0x1c94: 0xb2c1, 0x1c95: 0xb1d1, 0x1c96: 0xb1e9, 0x1c97: 0xb231,
1932 0x1c98: 0xb261, 0x1c99: 0xb2f1, 0x1c9a: 0xb321, 0x1c9b: 0xb351, 0x1c9c: 0xbc59, 0x1c9d: 0x7949,
1933 0x1c9e: 0xbc71, 0x1c9f: 0xbc89, 0x1ca0: 0x0040, 0x1ca1: 0xb1a1, 0x1ca2: 0xb201, 0x1ca3: 0x0040,
1934 0x1ca4: 0xb3f9, 0x1ca5: 0x0040, 0x1ca6: 0x0040, 0x1ca7: 0xb219, 0x1ca8: 0x0040, 0x1ca9: 0xb429,
1935 0x1caa: 0xb399, 0x1cab: 0xb3b1, 0x1cac: 0xb3c9, 0x1cad: 0xb3e1, 0x1cae: 0xb2a9, 0x1caf: 0xb339,
1936 0x1cb0: 0xb369, 0x1cb1: 0xb2d9, 0x1cb2: 0xb381, 0x1cb3: 0x0040, 0x1cb4: 0xb2c1, 0x1cb5: 0xb1d1,
1937 0x1cb6: 0xb1e9, 0x1cb7: 0xb231, 0x1cb8: 0x0040, 0x1cb9: 0xb2f1, 0x1cba: 0x0040, 0x1cbb: 0xb351,
1938 0x1cbc: 0x0040, 0x1cbd: 0x0040, 0x1cbe: 0x0040, 0x1cbf: 0x0040,
1939 // Block 0x73, offset 0x1cc0
1940 0x1cc0: 0x0040, 0x1cc1: 0x0040, 0x1cc2: 0xb201, 0x1cc3: 0x0040, 0x1cc4: 0x0040, 0x1cc5: 0x0040,
1941 0x1cc6: 0x0040, 0x1cc7: 0xb219, 0x1cc8: 0x0040, 0x1cc9: 0xb429, 0x1cca: 0x0040, 0x1ccb: 0xb3b1,
1942 0x1ccc: 0x0040, 0x1ccd: 0xb3e1, 0x1cce: 0xb2a9, 0x1ccf: 0xb339, 0x1cd0: 0x0040, 0x1cd1: 0xb2d9,
1943 0x1cd2: 0xb381, 0x1cd3: 0x0040, 0x1cd4: 0xb2c1, 0x1cd5: 0x0040, 0x1cd6: 0x0040, 0x1cd7: 0xb231,
1944 0x1cd8: 0x0040, 0x1cd9: 0xb2f1, 0x1cda: 0x0040, 0x1cdb: 0xb351, 0x1cdc: 0x0040, 0x1cdd: 0x7949,
1945 0x1cde: 0x0040, 0x1cdf: 0xbc89, 0x1ce0: 0x0040, 0x1ce1: 0xb1a1, 0x1ce2: 0xb201, 0x1ce3: 0x0040,
1946 0x1ce4: 0xb3f9, 0x1ce5: 0x0040, 0x1ce6: 0x0040, 0x1ce7: 0xb219, 0x1ce8: 0xb309, 0x1ce9: 0xb429,
1947 0x1cea: 0xb399, 0x1ceb: 0x0040, 0x1cec: 0xb3c9, 0x1ced: 0xb3e1, 0x1cee: 0xb2a9, 0x1cef: 0xb339,
1948 0x1cf0: 0xb369, 0x1cf1: 0xb2d9, 0x1cf2: 0xb381, 0x1cf3: 0x0040, 0x1cf4: 0xb2c1, 0x1cf5: 0xb1d1,
1949 0x1cf6: 0xb1e9, 0x1cf7: 0xb231, 0x1cf8: 0x0040, 0x1cf9: 0xb2f1, 0x1cfa: 0xb321, 0x1cfb: 0xb351,
1950 0x1cfc: 0xbc59, 0x1cfd: 0x0040, 0x1cfe: 0xbc71, 0x1cff: 0x0040,
1951 // Block 0x74, offset 0x1d00
1952 0x1d00: 0xb189, 0x1d01: 0xb1a1, 0x1d02: 0xb201, 0x1d03: 0xb249, 0x1d04: 0xb3f9, 0x1d05: 0xb411,
1953 0x1d06: 0xb291, 0x1d07: 0xb219, 0x1d08: 0xb309, 0x1d09: 0xb429, 0x1d0a: 0x0040, 0x1d0b: 0xb3b1,
1954 0x1d0c: 0xb3c9, 0x1d0d: 0xb3e1, 0x1d0e: 0xb2a9, 0x1d0f: 0xb339, 0x1d10: 0xb369, 0x1d11: 0xb2d9,
1955 0x1d12: 0xb381, 0x1d13: 0xb279, 0x1d14: 0xb2c1, 0x1d15: 0xb1d1, 0x1d16: 0xb1e9, 0x1d17: 0xb231,
1956 0x1d18: 0xb261, 0x1d19: 0xb2f1, 0x1d1a: 0xb321, 0x1d1b: 0xb351, 0x1d1c: 0x0040, 0x1d1d: 0x0040,
1957 0x1d1e: 0x0040, 0x1d1f: 0x0040, 0x1d20: 0x0040, 0x1d21: 0xb1a1, 0x1d22: 0xb201, 0x1d23: 0xb249,
1958 0x1d24: 0x0040, 0x1d25: 0xb411, 0x1d26: 0xb291, 0x1d27: 0xb219, 0x1d28: 0xb309, 0x1d29: 0xb429,
1959 0x1d2a: 0x0040, 0x1d2b: 0xb3b1, 0x1d2c: 0xb3c9, 0x1d2d: 0xb3e1, 0x1d2e: 0xb2a9, 0x1d2f: 0xb339,
1960 0x1d30: 0xb369, 0x1d31: 0xb2d9, 0x1d32: 0xb381, 0x1d33: 0xb279, 0x1d34: 0xb2c1, 0x1d35: 0xb1d1,
1961 0x1d36: 0xb1e9, 0x1d37: 0xb231, 0x1d38: 0xb261, 0x1d39: 0xb2f1, 0x1d3a: 0xb321, 0x1d3b: 0xb351,
1962 0x1d3c: 0x0040, 0x1d3d: 0x0040, 0x1d3e: 0x0040, 0x1d3f: 0x0040,
1963 // Block 0x75, offset 0x1d40
1964 0x1d40: 0x0040, 0x1d41: 0xbca2, 0x1d42: 0xbcba, 0x1d43: 0xbcd2, 0x1d44: 0xbcea, 0x1d45: 0xbd02,
1965 0x1d46: 0xbd1a, 0x1d47: 0xbd32, 0x1d48: 0xbd4a, 0x1d49: 0xbd62, 0x1d4a: 0xbd7a, 0x1d4b: 0x0018,
1966 0x1d4c: 0x0018, 0x1d4d: 0x0040, 0x1d4e: 0x0040, 0x1d4f: 0x0040, 0x1d50: 0xbd92, 0x1d51: 0xbdb2,
1967 0x1d52: 0xbdd2, 0x1d53: 0xbdf2, 0x1d54: 0xbe12, 0x1d55: 0xbe32, 0x1d56: 0xbe52, 0x1d57: 0xbe72,
1968 0x1d58: 0xbe92, 0x1d59: 0xbeb2, 0x1d5a: 0xbed2, 0x1d5b: 0xbef2, 0x1d5c: 0xbf12, 0x1d5d: 0xbf32,
1969 0x1d5e: 0xbf52, 0x1d5f: 0xbf72, 0x1d60: 0xbf92, 0x1d61: 0xbfb2, 0x1d62: 0xbfd2, 0x1d63: 0xbff2,
1970 0x1d64: 0xc012, 0x1d65: 0xc032, 0x1d66: 0xc052, 0x1d67: 0xc072, 0x1d68: 0xc092, 0x1d69: 0xc0b2,
1971 0x1d6a: 0xc0d1, 0x1d6b: 0x1159, 0x1d6c: 0x0269, 0x1d6d: 0x6671, 0x1d6e: 0xc111, 0x1d6f: 0x0018,
1972 0x1d70: 0x0039, 0x1d71: 0x0ee9, 0x1d72: 0x1159, 0x1d73: 0x0ef9, 0x1d74: 0x0f09, 0x1d75: 0x1199,
1973 0x1d76: 0x0f31, 0x1d77: 0x0249, 0x1d78: 0x0f41, 0x1d79: 0x0259, 0x1d7a: 0x0f51, 0x1d7b: 0x0359,
1974 0x1d7c: 0x0f61, 0x1d7d: 0x0f71, 0x1d7e: 0x00d9, 0x1d7f: 0x0f99,
1975 // Block 0x76, offset 0x1d80
1976 0x1d80: 0x2039, 0x1d81: 0x0269, 0x1d82: 0x01d9, 0x1d83: 0x0fa9, 0x1d84: 0x0fb9, 0x1d85: 0x1089,
1977 0x1d86: 0x0279, 0x1d87: 0x0369, 0x1d88: 0x0289, 0x1d89: 0x13d1, 0x1d8a: 0xc129, 0x1d8b: 0x65b1,
1978 0x1d8c: 0xc141, 0x1d8d: 0x1441, 0x1d8e: 0xc159, 0x1d8f: 0xc179, 0x1d90: 0x0018, 0x1d91: 0x0018,
1979 0x1d92: 0x0018, 0x1d93: 0x0018, 0x1d94: 0x0018, 0x1d95: 0x0018, 0x1d96: 0x0018, 0x1d97: 0x0018,
1980 0x1d98: 0x0018, 0x1d99: 0x0018, 0x1d9a: 0x0018, 0x1d9b: 0x0018, 0x1d9c: 0x0018, 0x1d9d: 0x0018,
1981 0x1d9e: 0x0018, 0x1d9f: 0x0018, 0x1da0: 0x0018, 0x1da1: 0x0018, 0x1da2: 0x0018, 0x1da3: 0x0018,
1982 0x1da4: 0x0018, 0x1da5: 0x0018, 0x1da6: 0x0018, 0x1da7: 0x0018, 0x1da8: 0x0018, 0x1da9: 0x0018,
1983 0x1daa: 0xc191, 0x1dab: 0xc1a9, 0x1dac: 0x0040, 0x1dad: 0x0040, 0x1dae: 0x0040, 0x1daf: 0x0040,
1984 0x1db0: 0x0018, 0x1db1: 0x0018, 0x1db2: 0x0018, 0x1db3: 0x0018, 0x1db4: 0x0018, 0x1db5: 0x0018,
1985 0x1db6: 0x0018, 0x1db7: 0x0018, 0x1db8: 0x0018, 0x1db9: 0x0018, 0x1dba: 0x0018, 0x1dbb: 0x0018,
1986 0x1dbc: 0x0018, 0x1dbd: 0x0018, 0x1dbe: 0x0018, 0x1dbf: 0x0018,
1987 // Block 0x77, offset 0x1dc0
1988 0x1dc0: 0xc1d9, 0x1dc1: 0xc211, 0x1dc2: 0xc249, 0x1dc3: 0x0040, 0x1dc4: 0x0040, 0x1dc5: 0x0040,
1989 0x1dc6: 0x0040, 0x1dc7: 0x0040, 0x1dc8: 0x0040, 0x1dc9: 0x0040, 0x1dca: 0x0040, 0x1dcb: 0x0040,
1990 0x1dcc: 0x0040, 0x1dcd: 0x0040, 0x1dce: 0x0040, 0x1dcf: 0x0040, 0x1dd0: 0xc269, 0x1dd1: 0xc289,
1991 0x1dd2: 0xc2a9, 0x1dd3: 0xc2c9, 0x1dd4: 0xc2e9, 0x1dd5: 0xc309, 0x1dd6: 0xc329, 0x1dd7: 0xc349,
1992 0x1dd8: 0xc369, 0x1dd9: 0xc389, 0x1dda: 0xc3a9, 0x1ddb: 0xc3c9, 0x1ddc: 0xc3e9, 0x1ddd: 0xc409,
1993 0x1dde: 0xc429, 0x1ddf: 0xc449, 0x1de0: 0xc469, 0x1de1: 0xc489, 0x1de2: 0xc4a9, 0x1de3: 0xc4c9,
1994 0x1de4: 0xc4e9, 0x1de5: 0xc509, 0x1de6: 0xc529, 0x1de7: 0xc549, 0x1de8: 0xc569, 0x1de9: 0xc589,
1995 0x1dea: 0xc5a9, 0x1deb: 0xc5c9, 0x1dec: 0xc5e9, 0x1ded: 0xc609, 0x1dee: 0xc629, 0x1def: 0xc649,
1996 0x1df0: 0xc669, 0x1df1: 0xc689, 0x1df2: 0xc6a9, 0x1df3: 0xc6c9, 0x1df4: 0xc6e9, 0x1df5: 0xc709,
1997 0x1df6: 0xc729, 0x1df7: 0xc749, 0x1df8: 0xc769, 0x1df9: 0xc789, 0x1dfa: 0xc7a9, 0x1dfb: 0xc7c9,
1998 0x1dfc: 0x0040, 0x1dfd: 0x0040, 0x1dfe: 0x0040, 0x1dff: 0x0040,
1999 // Block 0x78, offset 0x1e00
2000 0x1e00: 0xcaf9, 0x1e01: 0xcb19, 0x1e02: 0xcb39, 0x1e03: 0x8b1d, 0x1e04: 0xcb59, 0x1e05: 0xcb79,
2001 0x1e06: 0xcb99, 0x1e07: 0xcbb9, 0x1e08: 0xcbd9, 0x1e09: 0xcbf9, 0x1e0a: 0xcc19, 0x1e0b: 0xcc39,
2002 0x1e0c: 0xcc59, 0x1e0d: 0x8b3d, 0x1e0e: 0xcc79, 0x1e0f: 0xcc99, 0x1e10: 0xccb9, 0x1e11: 0xccd9,
2003 0x1e12: 0x8b5d, 0x1e13: 0xccf9, 0x1e14: 0xcd19, 0x1e15: 0xc429, 0x1e16: 0x8b7d, 0x1e17: 0xcd39,
2004 0x1e18: 0xcd59, 0x1e19: 0xcd79, 0x1e1a: 0xcd99, 0x1e1b: 0xcdb9, 0x1e1c: 0x8b9d, 0x1e1d: 0xcdd9,
2005 0x1e1e: 0xcdf9, 0x1e1f: 0xce19, 0x1e20: 0xce39, 0x1e21: 0xce59, 0x1e22: 0xc789, 0x1e23: 0xce79,
2006 0x1e24: 0xce99, 0x1e25: 0xceb9, 0x1e26: 0xced9, 0x1e27: 0xcef9, 0x1e28: 0xcf19, 0x1e29: 0xcf39,
2007 0x1e2a: 0xcf59, 0x1e2b: 0xcf79, 0x1e2c: 0xcf99, 0x1e2d: 0xcfb9, 0x1e2e: 0xcfd9, 0x1e2f: 0xcff9,
2008 0x1e30: 0xd019, 0x1e31: 0xd039, 0x1e32: 0xd039, 0x1e33: 0xd039, 0x1e34: 0x8bbd, 0x1e35: 0xd059,
2009 0x1e36: 0xd079, 0x1e37: 0xd099, 0x1e38: 0x8bdd, 0x1e39: 0xd0b9, 0x1e3a: 0xd0d9, 0x1e3b: 0xd0f9,
2010 0x1e3c: 0xd119, 0x1e3d: 0xd139, 0x1e3e: 0xd159, 0x1e3f: 0xd179,
2011 // Block 0x79, offset 0x1e40
2012 0x1e40: 0xd199, 0x1e41: 0xd1b9, 0x1e42: 0xd1d9, 0x1e43: 0xd1f9, 0x1e44: 0xd219, 0x1e45: 0xd239,
2013 0x1e46: 0xd239, 0x1e47: 0xd259, 0x1e48: 0xd279, 0x1e49: 0xd299, 0x1e4a: 0xd2b9, 0x1e4b: 0xd2d9,
2014 0x1e4c: 0xd2f9, 0x1e4d: 0xd319, 0x1e4e: 0xd339, 0x1e4f: 0xd359, 0x1e50: 0xd379, 0x1e51: 0xd399,
2015 0x1e52: 0xd3b9, 0x1e53: 0xd3d9, 0x1e54: 0xd3f9, 0x1e55: 0xd419, 0x1e56: 0xd439, 0x1e57: 0xd459,
2016 0x1e58: 0xd479, 0x1e59: 0x8bfd, 0x1e5a: 0xd499, 0x1e5b: 0xd4b9, 0x1e5c: 0xd4d9, 0x1e5d: 0xc309,
2017 0x1e5e: 0xd4f9, 0x1e5f: 0xd519, 0x1e60: 0x8c1d, 0x1e61: 0x8c3d, 0x1e62: 0xd539, 0x1e63: 0xd559,
2018 0x1e64: 0xd579, 0x1e65: 0xd599, 0x1e66: 0xd5b9, 0x1e67: 0xd5d9, 0x1e68: 0x2040, 0x1e69: 0xd5f9,
2019 0x1e6a: 0xd619, 0x1e6b: 0xd619, 0x1e6c: 0x8c5d, 0x1e6d: 0xd639, 0x1e6e: 0xd659, 0x1e6f: 0xd679,
2020 0x1e70: 0xd699, 0x1e71: 0x8c7d, 0x1e72: 0xd6b9, 0x1e73: 0xd6d9, 0x1e74: 0x2040, 0x1e75: 0xd6f9,
2021 0x1e76: 0xd719, 0x1e77: 0xd739, 0x1e78: 0xd759, 0x1e79: 0xd779, 0x1e7a: 0xd799, 0x1e7b: 0x8c9d,
2022 0x1e7c: 0xd7b9, 0x1e7d: 0x8cbd, 0x1e7e: 0xd7d9, 0x1e7f: 0xd7f9,
2023 // Block 0x7a, offset 0x1e80
2024 0x1e80: 0xd819, 0x1e81: 0xd839, 0x1e82: 0xd859, 0x1e83: 0xd879, 0x1e84: 0xd899, 0x1e85: 0xd8b9,
2025 0x1e86: 0xd8d9, 0x1e87: 0xd8f9, 0x1e88: 0xd919, 0x1e89: 0x8cdd, 0x1e8a: 0xd939, 0x1e8b: 0xd959,
2026 0x1e8c: 0xd979, 0x1e8d: 0xd999, 0x1e8e: 0xd9b9, 0x1e8f: 0x8cfd, 0x1e90: 0xd9d9, 0x1e91: 0x8d1d,
2027 0x1e92: 0x8d3d, 0x1e93: 0xd9f9, 0x1e94: 0xda19, 0x1e95: 0xda19, 0x1e96: 0xda39, 0x1e97: 0x8d5d,
2028 0x1e98: 0x8d7d, 0x1e99: 0xda59, 0x1e9a: 0xda79, 0x1e9b: 0xda99, 0x1e9c: 0xdab9, 0x1e9d: 0xdad9,
2029 0x1e9e: 0xdaf9, 0x1e9f: 0xdb19, 0x1ea0: 0xdb39, 0x1ea1: 0xdb59, 0x1ea2: 0xdb79, 0x1ea3: 0xdb99,
2030 0x1ea4: 0x8d9d, 0x1ea5: 0xdbb9, 0x1ea6: 0xdbd9, 0x1ea7: 0xdbf9, 0x1ea8: 0xdc19, 0x1ea9: 0xdbf9,
2031 0x1eaa: 0xdc39, 0x1eab: 0xdc59, 0x1eac: 0xdc79, 0x1ead: 0xdc99, 0x1eae: 0xdcb9, 0x1eaf: 0xdcd9,
2032 0x1eb0: 0xdcf9, 0x1eb1: 0xdd19, 0x1eb2: 0xdd39, 0x1eb3: 0xdd59, 0x1eb4: 0xdd79, 0x1eb5: 0xdd99,
2033 0x1eb6: 0xddb9, 0x1eb7: 0xddd9, 0x1eb8: 0x8dbd, 0x1eb9: 0xddf9, 0x1eba: 0xde19, 0x1ebb: 0xde39,
2034 0x1ebc: 0xde59, 0x1ebd: 0xde79, 0x1ebe: 0x8ddd, 0x1ebf: 0xde99,
2035 // Block 0x7b, offset 0x1ec0
2036 0x1ec0: 0xe599, 0x1ec1: 0xe5b9, 0x1ec2: 0xe5d9, 0x1ec3: 0xe5f9, 0x1ec4: 0xe619, 0x1ec5: 0xe639,
2037 0x1ec6: 0x8efd, 0x1ec7: 0xe659, 0x1ec8: 0xe679, 0x1ec9: 0xe699, 0x1eca: 0xe6b9, 0x1ecb: 0xe6d9,
2038 0x1ecc: 0xe6f9, 0x1ecd: 0x8f1d, 0x1ece: 0xe719, 0x1ecf: 0xe739, 0x1ed0: 0x8f3d, 0x1ed1: 0x8f5d,
2039 0x1ed2: 0xe759, 0x1ed3: 0xe779, 0x1ed4: 0xe799, 0x1ed5: 0xe7b9, 0x1ed6: 0xe7d9, 0x1ed7: 0xe7f9,
2040 0x1ed8: 0xe819, 0x1ed9: 0xe839, 0x1eda: 0xe859, 0x1edb: 0x8f7d, 0x1edc: 0xe879, 0x1edd: 0x8f9d,
2041 0x1ede: 0xe899, 0x1edf: 0x2040, 0x1ee0: 0xe8b9, 0x1ee1: 0xe8d9, 0x1ee2: 0xe8f9, 0x1ee3: 0x8fbd,
2042 0x1ee4: 0xe919, 0x1ee5: 0xe939, 0x1ee6: 0x8fdd, 0x1ee7: 0x8ffd, 0x1ee8: 0xe959, 0x1ee9: 0xe979,
2043 0x1eea: 0xe999, 0x1eeb: 0xe9b9, 0x1eec: 0xe9d9, 0x1eed: 0xe9d9, 0x1eee: 0xe9f9, 0x1eef: 0xea19,
2044 0x1ef0: 0xea39, 0x1ef1: 0xea59, 0x1ef2: 0xea79, 0x1ef3: 0xea99, 0x1ef4: 0xeab9, 0x1ef5: 0x901d,
2045 0x1ef6: 0xead9, 0x1ef7: 0x903d, 0x1ef8: 0xeaf9, 0x1ef9: 0x905d, 0x1efa: 0xeb19, 0x1efb: 0x907d,
2046 0x1efc: 0x909d, 0x1efd: 0x90bd, 0x1efe: 0xeb39, 0x1eff: 0xeb59,
2047 // Block 0x7c, offset 0x1f00
2048 0x1f00: 0xeb79, 0x1f01: 0x90dd, 0x1f02: 0x90fd, 0x1f03: 0x911d, 0x1f04: 0x913d, 0x1f05: 0xeb99,
2049 0x1f06: 0xebb9, 0x1f07: 0xebb9, 0x1f08: 0xebd9, 0x1f09: 0xebf9, 0x1f0a: 0xec19, 0x1f0b: 0xec39,
2050 0x1f0c: 0xec59, 0x1f0d: 0x915d, 0x1f0e: 0xec79, 0x1f0f: 0xec99, 0x1f10: 0xecb9, 0x1f11: 0xecd9,
2051 0x1f12: 0x917d, 0x1f13: 0xecf9, 0x1f14: 0x919d, 0x1f15: 0x91bd, 0x1f16: 0xed19, 0x1f17: 0xed39,
2052 0x1f18: 0xed59, 0x1f19: 0xed79, 0x1f1a: 0xed99, 0x1f1b: 0xedb9, 0x1f1c: 0x91dd, 0x1f1d: 0x91fd,
2053 0x1f1e: 0x921d, 0x1f1f: 0x2040, 0x1f20: 0xedd9, 0x1f21: 0x923d, 0x1f22: 0xedf9, 0x1f23: 0xee19,
2054 0x1f24: 0xee39, 0x1f25: 0x925d, 0x1f26: 0xee59, 0x1f27: 0xee79, 0x1f28: 0xee99, 0x1f29: 0xeeb9,
2055 0x1f2a: 0xeed9, 0x1f2b: 0x927d, 0x1f2c: 0xeef9, 0x1f2d: 0xef19, 0x1f2e: 0xef39, 0x1f2f: 0xef59,
2056 0x1f30: 0xef79, 0x1f31: 0xef99, 0x1f32: 0x929d, 0x1f33: 0x92bd, 0x1f34: 0xefb9, 0x1f35: 0x92dd,
2057 0x1f36: 0xefd9, 0x1f37: 0x92fd, 0x1f38: 0xeff9, 0x1f39: 0xf019, 0x1f3a: 0xf039, 0x1f3b: 0x931d,
2058 0x1f3c: 0x933d, 0x1f3d: 0xf059, 0x1f3e: 0x935d, 0x1f3f: 0xf079,
2059 // Block 0x7d, offset 0x1f40
2060 0x1f40: 0xf6b9, 0x1f41: 0xf6d9, 0x1f42: 0xf6f9, 0x1f43: 0xf719, 0x1f44: 0xf739, 0x1f45: 0x951d,
2061 0x1f46: 0xf759, 0x1f47: 0xf779, 0x1f48: 0xf799, 0x1f49: 0xf7b9, 0x1f4a: 0xf7d9, 0x1f4b: 0x953d,
2062 0x1f4c: 0x955d, 0x1f4d: 0xf7f9, 0x1f4e: 0xf819, 0x1f4f: 0xf839, 0x1f50: 0xf859, 0x1f51: 0xf879,
2063 0x1f52: 0xf899, 0x1f53: 0x957d, 0x1f54: 0xf8b9, 0x1f55: 0xf8d9, 0x1f56: 0xf8f9, 0x1f57: 0xf919,
2064 0x1f58: 0x959d, 0x1f59: 0x95bd, 0x1f5a: 0xf939, 0x1f5b: 0xf959, 0x1f5c: 0xf979, 0x1f5d: 0x95dd,
2065 0x1f5e: 0xf999, 0x1f5f: 0xf9b9, 0x1f60: 0x6815, 0x1f61: 0x95fd, 0x1f62: 0xf9d9, 0x1f63: 0xf9f9,
2066 0x1f64: 0xfa19, 0x1f65: 0x961d, 0x1f66: 0xfa39, 0x1f67: 0xfa59, 0x1f68: 0xfa79, 0x1f69: 0xfa99,
2067 0x1f6a: 0xfab9, 0x1f6b: 0xfad9, 0x1f6c: 0xfaf9, 0x1f6d: 0x963d, 0x1f6e: 0xfb19, 0x1f6f: 0xfb39,
2068 0x1f70: 0xfb59, 0x1f71: 0x965d, 0x1f72: 0xfb79, 0x1f73: 0xfb99, 0x1f74: 0xfbb9, 0x1f75: 0xfbd9,
2069 0x1f76: 0x7b35, 0x1f77: 0x967d, 0x1f78: 0xfbf9, 0x1f79: 0xfc19, 0x1f7a: 0xfc39, 0x1f7b: 0x969d,
2070 0x1f7c: 0xfc59, 0x1f7d: 0x96bd, 0x1f7e: 0xfc79, 0x1f7f: 0xfc79,
2071 // Block 0x7e, offset 0x1f80
2072 0x1f80: 0xfc99, 0x1f81: 0x96dd, 0x1f82: 0xfcb9, 0x1f83: 0xfcd9, 0x1f84: 0xfcf9, 0x1f85: 0xfd19,
2073 0x1f86: 0xfd39, 0x1f87: 0xfd59, 0x1f88: 0xfd79, 0x1f89: 0x96fd, 0x1f8a: 0xfd99, 0x1f8b: 0xfdb9,
2074 0x1f8c: 0xfdd9, 0x1f8d: 0xfdf9, 0x1f8e: 0xfe19, 0x1f8f: 0xfe39, 0x1f90: 0x971d, 0x1f91: 0xfe59,
2075 0x1f92: 0x973d, 0x1f93: 0x975d, 0x1f94: 0x977d, 0x1f95: 0xfe79, 0x1f96: 0xfe99, 0x1f97: 0xfeb9,
2076 0x1f98: 0xfed9, 0x1f99: 0xfef9, 0x1f9a: 0xff19, 0x1f9b: 0xff39, 0x1f9c: 0xff59, 0x1f9d: 0x979d,
2077 0x1f9e: 0x0040, 0x1f9f: 0x0040, 0x1fa0: 0x0040, 0x1fa1: 0x0040, 0x1fa2: 0x0040, 0x1fa3: 0x0040,
2078 0x1fa4: 0x0040, 0x1fa5: 0x0040, 0x1fa6: 0x0040, 0x1fa7: 0x0040, 0x1fa8: 0x0040, 0x1fa9: 0x0040,
2079 0x1faa: 0x0040, 0x1fab: 0x0040, 0x1fac: 0x0040, 0x1fad: 0x0040, 0x1fae: 0x0040, 0x1faf: 0x0040,
2080 0x1fb0: 0x0040, 0x1fb1: 0x0040, 0x1fb2: 0x0040, 0x1fb3: 0x0040, 0x1fb4: 0x0040, 0x1fb5: 0x0040,
2081 0x1fb6: 0x0040, 0x1fb7: 0x0040, 0x1fb8: 0x0040, 0x1fb9: 0x0040, 0x1fba: 0x0040, 0x1fbb: 0x0040,
2082 0x1fbc: 0x0040, 0x1fbd: 0x0040, 0x1fbe: 0x0040, 0x1fbf: 0x0040,
2083}
2084
2085// idnaIndex: 36 blocks, 2304 entries, 4608 bytes
2086// Block 0 is the zero block.
2087var idnaIndex = [2304]uint16{
2088 // Block 0x0, offset 0x0
2089 // Block 0x1, offset 0x40
2090 // Block 0x2, offset 0x80
2091 // Block 0x3, offset 0xc0
2092 0xc2: 0x01, 0xc3: 0x7d, 0xc4: 0x02, 0xc5: 0x03, 0xc6: 0x04, 0xc7: 0x05,
2093 0xc8: 0x06, 0xc9: 0x7e, 0xca: 0x7f, 0xcb: 0x07, 0xcc: 0x80, 0xcd: 0x08, 0xce: 0x09, 0xcf: 0x0a,
2094 0xd0: 0x81, 0xd1: 0x0b, 0xd2: 0x0c, 0xd3: 0x0d, 0xd4: 0x0e, 0xd5: 0x82, 0xd6: 0x83, 0xd7: 0x84,
2095 0xd8: 0x0f, 0xd9: 0x10, 0xda: 0x85, 0xdb: 0x11, 0xdc: 0x12, 0xdd: 0x86, 0xde: 0x87, 0xdf: 0x88,
2096 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, 0xe4: 0x06, 0xe5: 0x07, 0xe6: 0x07, 0xe7: 0x07,
2097 0xe8: 0x07, 0xe9: 0x08, 0xea: 0x09, 0xeb: 0x07, 0xec: 0x07, 0xed: 0x0a, 0xee: 0x0b, 0xef: 0x0c,
2098 0xf0: 0x1d, 0xf1: 0x1e, 0xf2: 0x1e, 0xf3: 0x20, 0xf4: 0x21,
2099 // Block 0x4, offset 0x100
2100 0x120: 0x89, 0x121: 0x13, 0x122: 0x8a, 0x123: 0x8b, 0x124: 0x8c, 0x125: 0x14, 0x126: 0x15, 0x127: 0x16,
2101 0x128: 0x17, 0x129: 0x18, 0x12a: 0x19, 0x12b: 0x1a, 0x12c: 0x1b, 0x12d: 0x1c, 0x12e: 0x1d, 0x12f: 0x8d,
2102 0x130: 0x8e, 0x131: 0x1e, 0x132: 0x1f, 0x133: 0x20, 0x134: 0x8f, 0x135: 0x21, 0x136: 0x90, 0x137: 0x91,
2103 0x138: 0x92, 0x139: 0x93, 0x13a: 0x22, 0x13b: 0x94, 0x13c: 0x95, 0x13d: 0x23, 0x13e: 0x24, 0x13f: 0x96,
2104 // Block 0x5, offset 0x140
2105 0x140: 0x97, 0x141: 0x98, 0x142: 0x99, 0x143: 0x9a, 0x144: 0x9b, 0x145: 0x9c, 0x146: 0x9d, 0x147: 0x9e,
2106 0x148: 0x9f, 0x149: 0xa0, 0x14a: 0xa1, 0x14b: 0xa2, 0x14c: 0xa3, 0x14d: 0xa4, 0x14e: 0xa5, 0x14f: 0xa6,
2107 0x150: 0xa7, 0x151: 0x9f, 0x152: 0x9f, 0x153: 0x9f, 0x154: 0x9f, 0x155: 0x9f, 0x156: 0x9f, 0x157: 0x9f,
2108 0x158: 0x9f, 0x159: 0xa8, 0x15a: 0xa9, 0x15b: 0xaa, 0x15c: 0xab, 0x15d: 0xac, 0x15e: 0xad, 0x15f: 0xae,
2109 0x160: 0xaf, 0x161: 0xb0, 0x162: 0xb1, 0x163: 0xb2, 0x164: 0xb3, 0x165: 0xb4, 0x166: 0xb5, 0x167: 0xb6,
2110 0x168: 0xb7, 0x169: 0xb8, 0x16a: 0xb9, 0x16b: 0xba, 0x16c: 0xbb, 0x16d: 0xbc, 0x16e: 0xbd, 0x16f: 0xbe,
2111 0x170: 0xbf, 0x171: 0xc0, 0x172: 0xc1, 0x173: 0xc2, 0x174: 0x25, 0x175: 0x26, 0x176: 0x27, 0x177: 0xc3,
2112 0x178: 0x28, 0x179: 0x28, 0x17a: 0x29, 0x17b: 0x28, 0x17c: 0xc4, 0x17d: 0x2a, 0x17e: 0x2b, 0x17f: 0x2c,
2113 // Block 0x6, offset 0x180
2114 0x180: 0x2d, 0x181: 0x2e, 0x182: 0x2f, 0x183: 0xc5, 0x184: 0x30, 0x185: 0x31, 0x186: 0xc6, 0x187: 0x9b,
2115 0x188: 0xc7, 0x189: 0xc8, 0x18a: 0x9b, 0x18b: 0x9b, 0x18c: 0xc9, 0x18d: 0x9b, 0x18e: 0x9b, 0x18f: 0x9b,
2116 0x190: 0xca, 0x191: 0x32, 0x192: 0x33, 0x193: 0x34, 0x194: 0x9b, 0x195: 0x9b, 0x196: 0x9b, 0x197: 0x9b,
2117 0x198: 0x9b, 0x199: 0x9b, 0x19a: 0x9b, 0x19b: 0x9b, 0x19c: 0x9b, 0x19d: 0x9b, 0x19e: 0x9b, 0x19f: 0x9b,
2118 0x1a0: 0x9b, 0x1a1: 0x9b, 0x1a2: 0x9b, 0x1a3: 0x9b, 0x1a4: 0x9b, 0x1a5: 0x9b, 0x1a6: 0x9b, 0x1a7: 0x9b,
2119 0x1a8: 0xcb, 0x1a9: 0xcc, 0x1aa: 0x9b, 0x1ab: 0xcd, 0x1ac: 0x9b, 0x1ad: 0xce, 0x1ae: 0xcf, 0x1af: 0xd0,
2120 0x1b0: 0xd1, 0x1b1: 0x35, 0x1b2: 0x28, 0x1b3: 0x36, 0x1b4: 0xd2, 0x1b5: 0xd3, 0x1b6: 0xd4, 0x1b7: 0xd5,
2121 0x1b8: 0xd6, 0x1b9: 0xd7, 0x1ba: 0xd8, 0x1bb: 0xd9, 0x1bc: 0xda, 0x1bd: 0xdb, 0x1be: 0xdc, 0x1bf: 0x37,
2122 // Block 0x7, offset 0x1c0
2123 0x1c0: 0x38, 0x1c1: 0xdd, 0x1c2: 0xde, 0x1c3: 0xdf, 0x1c4: 0xe0, 0x1c5: 0x39, 0x1c6: 0x3a, 0x1c7: 0xe1,
2124 0x1c8: 0xe2, 0x1c9: 0x3b, 0x1ca: 0x3c, 0x1cb: 0x3d, 0x1cc: 0x3e, 0x1cd: 0x3f, 0x1ce: 0x40, 0x1cf: 0x41,
2125 0x1d0: 0x9f, 0x1d1: 0x9f, 0x1d2: 0x9f, 0x1d3: 0x9f, 0x1d4: 0x9f, 0x1d5: 0x9f, 0x1d6: 0x9f, 0x1d7: 0x9f,
2126 0x1d8: 0x9f, 0x1d9: 0x9f, 0x1da: 0x9f, 0x1db: 0x9f, 0x1dc: 0x9f, 0x1dd: 0x9f, 0x1de: 0x9f, 0x1df: 0x9f,
2127 0x1e0: 0x9f, 0x1e1: 0x9f, 0x1e2: 0x9f, 0x1e3: 0x9f, 0x1e4: 0x9f, 0x1e5: 0x9f, 0x1e6: 0x9f, 0x1e7: 0x9f,
2128 0x1e8: 0x9f, 0x1e9: 0x9f, 0x1ea: 0x9f, 0x1eb: 0x9f, 0x1ec: 0x9f, 0x1ed: 0x9f, 0x1ee: 0x9f, 0x1ef: 0x9f,
2129 0x1f0: 0x9f, 0x1f1: 0x9f, 0x1f2: 0x9f, 0x1f3: 0x9f, 0x1f4: 0x9f, 0x1f5: 0x9f, 0x1f6: 0x9f, 0x1f7: 0x9f,
2130 0x1f8: 0x9f, 0x1f9: 0x9f, 0x1fa: 0x9f, 0x1fb: 0x9f, 0x1fc: 0x9f, 0x1fd: 0x9f, 0x1fe: 0x9f, 0x1ff: 0x9f,
2131 // Block 0x8, offset 0x200
2132 0x200: 0x9f, 0x201: 0x9f, 0x202: 0x9f, 0x203: 0x9f, 0x204: 0x9f, 0x205: 0x9f, 0x206: 0x9f, 0x207: 0x9f,
2133 0x208: 0x9f, 0x209: 0x9f, 0x20a: 0x9f, 0x20b: 0x9f, 0x20c: 0x9f, 0x20d: 0x9f, 0x20e: 0x9f, 0x20f: 0x9f,
2134 0x210: 0x9f, 0x211: 0x9f, 0x212: 0x9f, 0x213: 0x9f, 0x214: 0x9f, 0x215: 0x9f, 0x216: 0x9f, 0x217: 0x9f,
2135 0x218: 0x9f, 0x219: 0x9f, 0x21a: 0x9f, 0x21b: 0x9f, 0x21c: 0x9f, 0x21d: 0x9f, 0x21e: 0x9f, 0x21f: 0x9f,
2136 0x220: 0x9f, 0x221: 0x9f, 0x222: 0x9f, 0x223: 0x9f, 0x224: 0x9f, 0x225: 0x9f, 0x226: 0x9f, 0x227: 0x9f,
2137 0x228: 0x9f, 0x229: 0x9f, 0x22a: 0x9f, 0x22b: 0x9f, 0x22c: 0x9f, 0x22d: 0x9f, 0x22e: 0x9f, 0x22f: 0x9f,
2138 0x230: 0x9f, 0x231: 0x9f, 0x232: 0x9f, 0x233: 0x9f, 0x234: 0x9f, 0x235: 0x9f, 0x236: 0xb2, 0x237: 0x9b,
2139 0x238: 0x9f, 0x239: 0x9f, 0x23a: 0x9f, 0x23b: 0x9f, 0x23c: 0x9f, 0x23d: 0x9f, 0x23e: 0x9f, 0x23f: 0x9f,
2140 // Block 0x9, offset 0x240
2141 0x240: 0x9f, 0x241: 0x9f, 0x242: 0x9f, 0x243: 0x9f, 0x244: 0x9f, 0x245: 0x9f, 0x246: 0x9f, 0x247: 0x9f,
2142 0x248: 0x9f, 0x249: 0x9f, 0x24a: 0x9f, 0x24b: 0x9f, 0x24c: 0x9f, 0x24d: 0x9f, 0x24e: 0x9f, 0x24f: 0x9f,
2143 0x250: 0x9f, 0x251: 0x9f, 0x252: 0x9f, 0x253: 0x9f, 0x254: 0x9f, 0x255: 0x9f, 0x256: 0x9f, 0x257: 0x9f,
2144 0x258: 0x9f, 0x259: 0x9f, 0x25a: 0x9f, 0x25b: 0x9f, 0x25c: 0x9f, 0x25d: 0x9f, 0x25e: 0x9f, 0x25f: 0x9f,
2145 0x260: 0x9f, 0x261: 0x9f, 0x262: 0x9f, 0x263: 0x9f, 0x264: 0x9f, 0x265: 0x9f, 0x266: 0x9f, 0x267: 0x9f,
2146 0x268: 0x9f, 0x269: 0x9f, 0x26a: 0x9f, 0x26b: 0x9f, 0x26c: 0x9f, 0x26d: 0x9f, 0x26e: 0x9f, 0x26f: 0x9f,
2147 0x270: 0x9f, 0x271: 0x9f, 0x272: 0x9f, 0x273: 0x9f, 0x274: 0x9f, 0x275: 0x9f, 0x276: 0x9f, 0x277: 0x9f,
2148 0x278: 0x9f, 0x279: 0x9f, 0x27a: 0x9f, 0x27b: 0x9f, 0x27c: 0x9f, 0x27d: 0x9f, 0x27e: 0x9f, 0x27f: 0x9f,
2149 // Block 0xa, offset 0x280
2150 0x280: 0x9f, 0x281: 0x9f, 0x282: 0x9f, 0x283: 0x9f, 0x284: 0x9f, 0x285: 0x9f, 0x286: 0x9f, 0x287: 0x9f,
2151 0x288: 0x9f, 0x289: 0x9f, 0x28a: 0x9f, 0x28b: 0x9f, 0x28c: 0x9f, 0x28d: 0x9f, 0x28e: 0x9f, 0x28f: 0x9f,
2152 0x290: 0x9f, 0x291: 0x9f, 0x292: 0x9f, 0x293: 0x9f, 0x294: 0x9f, 0x295: 0x9f, 0x296: 0x9f, 0x297: 0x9f,
2153 0x298: 0x9f, 0x299: 0x9f, 0x29a: 0x9f, 0x29b: 0x9f, 0x29c: 0x9f, 0x29d: 0x9f, 0x29e: 0x9f, 0x29f: 0x9f,
2154 0x2a0: 0x9f, 0x2a1: 0x9f, 0x2a2: 0x9f, 0x2a3: 0x9f, 0x2a4: 0x9f, 0x2a5: 0x9f, 0x2a6: 0x9f, 0x2a7: 0x9f,
2155 0x2a8: 0x9f, 0x2a9: 0x9f, 0x2aa: 0x9f, 0x2ab: 0x9f, 0x2ac: 0x9f, 0x2ad: 0x9f, 0x2ae: 0x9f, 0x2af: 0x9f,
2156 0x2b0: 0x9f, 0x2b1: 0x9f, 0x2b2: 0x9f, 0x2b3: 0x9f, 0x2b4: 0x9f, 0x2b5: 0x9f, 0x2b6: 0x9f, 0x2b7: 0x9f,
2157 0x2b8: 0x9f, 0x2b9: 0x9f, 0x2ba: 0x9f, 0x2bb: 0x9f, 0x2bc: 0x9f, 0x2bd: 0x9f, 0x2be: 0x9f, 0x2bf: 0xe3,
2158 // Block 0xb, offset 0x2c0
2159 0x2c0: 0x9f, 0x2c1: 0x9f, 0x2c2: 0x9f, 0x2c3: 0x9f, 0x2c4: 0x9f, 0x2c5: 0x9f, 0x2c6: 0x9f, 0x2c7: 0x9f,
2160 0x2c8: 0x9f, 0x2c9: 0x9f, 0x2ca: 0x9f, 0x2cb: 0x9f, 0x2cc: 0x9f, 0x2cd: 0x9f, 0x2ce: 0x9f, 0x2cf: 0x9f,
2161 0x2d0: 0x9f, 0x2d1: 0x9f, 0x2d2: 0xe4, 0x2d3: 0xe5, 0x2d4: 0x9f, 0x2d5: 0x9f, 0x2d6: 0x9f, 0x2d7: 0x9f,
2162 0x2d8: 0xe6, 0x2d9: 0x42, 0x2da: 0x43, 0x2db: 0xe7, 0x2dc: 0x44, 0x2dd: 0x45, 0x2de: 0x46, 0x2df: 0xe8,
2163 0x2e0: 0xe9, 0x2e1: 0xea, 0x2e2: 0xeb, 0x2e3: 0xec, 0x2e4: 0xed, 0x2e5: 0xee, 0x2e6: 0xef, 0x2e7: 0xf0,
2164 0x2e8: 0xf1, 0x2e9: 0xf2, 0x2ea: 0xf3, 0x2eb: 0xf4, 0x2ec: 0xf5, 0x2ed: 0xf6, 0x2ee: 0xf7, 0x2ef: 0xf8,
2165 0x2f0: 0x9f, 0x2f1: 0x9f, 0x2f2: 0x9f, 0x2f3: 0x9f, 0x2f4: 0x9f, 0x2f5: 0x9f, 0x2f6: 0x9f, 0x2f7: 0x9f,
2166 0x2f8: 0x9f, 0x2f9: 0x9f, 0x2fa: 0x9f, 0x2fb: 0x9f, 0x2fc: 0x9f, 0x2fd: 0x9f, 0x2fe: 0x9f, 0x2ff: 0x9f,
2167 // Block 0xc, offset 0x300
2168 0x300: 0x9f, 0x301: 0x9f, 0x302: 0x9f, 0x303: 0x9f, 0x304: 0x9f, 0x305: 0x9f, 0x306: 0x9f, 0x307: 0x9f,
2169 0x308: 0x9f, 0x309: 0x9f, 0x30a: 0x9f, 0x30b: 0x9f, 0x30c: 0x9f, 0x30d: 0x9f, 0x30e: 0x9f, 0x30f: 0x9f,
2170 0x310: 0x9f, 0x311: 0x9f, 0x312: 0x9f, 0x313: 0x9f, 0x314: 0x9f, 0x315: 0x9f, 0x316: 0x9f, 0x317: 0x9f,
2171 0x318: 0x9f, 0x319: 0x9f, 0x31a: 0x9f, 0x31b: 0x9f, 0x31c: 0x9f, 0x31d: 0x9f, 0x31e: 0xf9, 0x31f: 0xfa,
2172 // Block 0xd, offset 0x340
2173 0x340: 0xba, 0x341: 0xba, 0x342: 0xba, 0x343: 0xba, 0x344: 0xba, 0x345: 0xba, 0x346: 0xba, 0x347: 0xba,
2174 0x348: 0xba, 0x349: 0xba, 0x34a: 0xba, 0x34b: 0xba, 0x34c: 0xba, 0x34d: 0xba, 0x34e: 0xba, 0x34f: 0xba,
2175 0x350: 0xba, 0x351: 0xba, 0x352: 0xba, 0x353: 0xba, 0x354: 0xba, 0x355: 0xba, 0x356: 0xba, 0x357: 0xba,
2176 0x358: 0xba, 0x359: 0xba, 0x35a: 0xba, 0x35b: 0xba, 0x35c: 0xba, 0x35d: 0xba, 0x35e: 0xba, 0x35f: 0xba,
2177 0x360: 0xba, 0x361: 0xba, 0x362: 0xba, 0x363: 0xba, 0x364: 0xba, 0x365: 0xba, 0x366: 0xba, 0x367: 0xba,
2178 0x368: 0xba, 0x369: 0xba, 0x36a: 0xba, 0x36b: 0xba, 0x36c: 0xba, 0x36d: 0xba, 0x36e: 0xba, 0x36f: 0xba,
2179 0x370: 0xba, 0x371: 0xba, 0x372: 0xba, 0x373: 0xba, 0x374: 0xba, 0x375: 0xba, 0x376: 0xba, 0x377: 0xba,
2180 0x378: 0xba, 0x379: 0xba, 0x37a: 0xba, 0x37b: 0xba, 0x37c: 0xba, 0x37d: 0xba, 0x37e: 0xba, 0x37f: 0xba,
2181 // Block 0xe, offset 0x380
2182 0x380: 0xba, 0x381: 0xba, 0x382: 0xba, 0x383: 0xba, 0x384: 0xba, 0x385: 0xba, 0x386: 0xba, 0x387: 0xba,
2183 0x388: 0xba, 0x389: 0xba, 0x38a: 0xba, 0x38b: 0xba, 0x38c: 0xba, 0x38d: 0xba, 0x38e: 0xba, 0x38f: 0xba,
2184 0x390: 0xba, 0x391: 0xba, 0x392: 0xba, 0x393: 0xba, 0x394: 0xba, 0x395: 0xba, 0x396: 0xba, 0x397: 0xba,
2185 0x398: 0xba, 0x399: 0xba, 0x39a: 0xba, 0x39b: 0xba, 0x39c: 0xba, 0x39d: 0xba, 0x39e: 0xba, 0x39f: 0xba,
2186 0x3a0: 0xba, 0x3a1: 0xba, 0x3a2: 0xba, 0x3a3: 0xba, 0x3a4: 0xfb, 0x3a5: 0xfc, 0x3a6: 0xfd, 0x3a7: 0xfe,
2187 0x3a8: 0x47, 0x3a9: 0xff, 0x3aa: 0x100, 0x3ab: 0x48, 0x3ac: 0x49, 0x3ad: 0x4a, 0x3ae: 0x4b, 0x3af: 0x4c,
2188 0x3b0: 0x101, 0x3b1: 0x4d, 0x3b2: 0x4e, 0x3b3: 0x4f, 0x3b4: 0x50, 0x3b5: 0x51, 0x3b6: 0x102, 0x3b7: 0x52,
2189 0x3b8: 0x53, 0x3b9: 0x54, 0x3ba: 0x55, 0x3bb: 0x56, 0x3bc: 0x57, 0x3bd: 0x58, 0x3be: 0x59, 0x3bf: 0x5a,
2190 // Block 0xf, offset 0x3c0
2191 0x3c0: 0x103, 0x3c1: 0x104, 0x3c2: 0x9f, 0x3c3: 0x105, 0x3c4: 0x106, 0x3c5: 0x9b, 0x3c6: 0x107, 0x3c7: 0x108,
2192 0x3c8: 0xba, 0x3c9: 0xba, 0x3ca: 0x109, 0x3cb: 0x10a, 0x3cc: 0x10b, 0x3cd: 0x10c, 0x3ce: 0x10d, 0x3cf: 0x10e,
2193 0x3d0: 0x10f, 0x3d1: 0x9f, 0x3d2: 0x110, 0x3d3: 0x111, 0x3d4: 0x112, 0x3d5: 0x113, 0x3d6: 0xba, 0x3d7: 0xba,
2194 0x3d8: 0x9f, 0x3d9: 0x9f, 0x3da: 0x9f, 0x3db: 0x9f, 0x3dc: 0x114, 0x3dd: 0x115, 0x3de: 0xba, 0x3df: 0xba,
2195 0x3e0: 0x116, 0x3e1: 0x117, 0x3e2: 0x118, 0x3e3: 0x119, 0x3e4: 0x11a, 0x3e5: 0xba, 0x3e6: 0x11b, 0x3e7: 0x11c,
2196 0x3e8: 0x11d, 0x3e9: 0x11e, 0x3ea: 0x11f, 0x3eb: 0x5b, 0x3ec: 0x120, 0x3ed: 0x121, 0x3ee: 0x5c, 0x3ef: 0xba,
2197 0x3f0: 0x122, 0x3f1: 0x123, 0x3f2: 0x124, 0x3f3: 0x125, 0x3f4: 0x126, 0x3f5: 0xba, 0x3f6: 0xba, 0x3f7: 0xba,
2198 0x3f8: 0xba, 0x3f9: 0x127, 0x3fa: 0xba, 0x3fb: 0xba, 0x3fc: 0x128, 0x3fd: 0x129, 0x3fe: 0xba, 0x3ff: 0xba,
2199 // Block 0x10, offset 0x400
2200 0x400: 0x12a, 0x401: 0x12b, 0x402: 0x12c, 0x403: 0x12d, 0x404: 0x12e, 0x405: 0x12f, 0x406: 0x130, 0x407: 0x131,
2201 0x408: 0x132, 0x409: 0xba, 0x40a: 0x133, 0x40b: 0x134, 0x40c: 0x5d, 0x40d: 0x5e, 0x40e: 0xba, 0x40f: 0xba,
2202 0x410: 0x135, 0x411: 0x136, 0x412: 0x137, 0x413: 0x138, 0x414: 0xba, 0x415: 0xba, 0x416: 0x139, 0x417: 0x13a,
2203 0x418: 0x13b, 0x419: 0x13c, 0x41a: 0x13d, 0x41b: 0x13e, 0x41c: 0x13f, 0x41d: 0xba, 0x41e: 0xba, 0x41f: 0xba,
2204 0x420: 0x140, 0x421: 0xba, 0x422: 0x141, 0x423: 0x142, 0x424: 0xba, 0x425: 0xba, 0x426: 0xba, 0x427: 0xba,
2205 0x428: 0x143, 0x429: 0x144, 0x42a: 0x145, 0x42b: 0x146, 0x42c: 0xba, 0x42d: 0xba, 0x42e: 0xba, 0x42f: 0xba,
2206 0x430: 0x147, 0x431: 0x148, 0x432: 0x149, 0x433: 0xba, 0x434: 0x14a, 0x435: 0x14b, 0x436: 0x14c, 0x437: 0xba,
2207 0x438: 0xba, 0x439: 0xba, 0x43a: 0xba, 0x43b: 0x14d, 0x43c: 0xba, 0x43d: 0xba, 0x43e: 0xba, 0x43f: 0xba,
2208 // Block 0x11, offset 0x440
2209 0x440: 0x9f, 0x441: 0x9f, 0x442: 0x9f, 0x443: 0x9f, 0x444: 0x9f, 0x445: 0x9f, 0x446: 0x9f, 0x447: 0x9f,
2210 0x448: 0x9f, 0x449: 0x9f, 0x44a: 0x9f, 0x44b: 0x9f, 0x44c: 0x9f, 0x44d: 0x9f, 0x44e: 0x14e, 0x44f: 0xba,
2211 0x450: 0x9b, 0x451: 0x14f, 0x452: 0x9f, 0x453: 0x9f, 0x454: 0x9f, 0x455: 0x150, 0x456: 0xba, 0x457: 0xba,
2212 0x458: 0xba, 0x459: 0xba, 0x45a: 0xba, 0x45b: 0xba, 0x45c: 0xba, 0x45d: 0xba, 0x45e: 0xba, 0x45f: 0xba,
2213 0x460: 0xba, 0x461: 0xba, 0x462: 0xba, 0x463: 0xba, 0x464: 0xba, 0x465: 0xba, 0x466: 0xba, 0x467: 0xba,
2214 0x468: 0xba, 0x469: 0xba, 0x46a: 0xba, 0x46b: 0xba, 0x46c: 0xba, 0x46d: 0xba, 0x46e: 0xba, 0x46f: 0xba,
2215 0x470: 0xba, 0x471: 0xba, 0x472: 0xba, 0x473: 0xba, 0x474: 0xba, 0x475: 0xba, 0x476: 0xba, 0x477: 0xba,
2216 0x478: 0xba, 0x479: 0xba, 0x47a: 0xba, 0x47b: 0xba, 0x47c: 0xba, 0x47d: 0xba, 0x47e: 0xba, 0x47f: 0xba,
2217 // Block 0x12, offset 0x480
2218 0x480: 0x9f, 0x481: 0x9f, 0x482: 0x9f, 0x483: 0x9f, 0x484: 0x9f, 0x485: 0x9f, 0x486: 0x9f, 0x487: 0x9f,
2219 0x488: 0x9f, 0x489: 0x9f, 0x48a: 0x9f, 0x48b: 0x9f, 0x48c: 0x9f, 0x48d: 0x9f, 0x48e: 0x9f, 0x48f: 0x9f,
2220 0x490: 0x151, 0x491: 0xba, 0x492: 0xba, 0x493: 0xba, 0x494: 0xba, 0x495: 0xba, 0x496: 0xba, 0x497: 0xba,
2221 0x498: 0xba, 0x499: 0xba, 0x49a: 0xba, 0x49b: 0xba, 0x49c: 0xba, 0x49d: 0xba, 0x49e: 0xba, 0x49f: 0xba,
2222 0x4a0: 0xba, 0x4a1: 0xba, 0x4a2: 0xba, 0x4a3: 0xba, 0x4a4: 0xba, 0x4a5: 0xba, 0x4a6: 0xba, 0x4a7: 0xba,
2223 0x4a8: 0xba, 0x4a9: 0xba, 0x4aa: 0xba, 0x4ab: 0xba, 0x4ac: 0xba, 0x4ad: 0xba, 0x4ae: 0xba, 0x4af: 0xba,
2224 0x4b0: 0xba, 0x4b1: 0xba, 0x4b2: 0xba, 0x4b3: 0xba, 0x4b4: 0xba, 0x4b5: 0xba, 0x4b6: 0xba, 0x4b7: 0xba,
2225 0x4b8: 0xba, 0x4b9: 0xba, 0x4ba: 0xba, 0x4bb: 0xba, 0x4bc: 0xba, 0x4bd: 0xba, 0x4be: 0xba, 0x4bf: 0xba,
2226 // Block 0x13, offset 0x4c0
2227 0x4c0: 0xba, 0x4c1: 0xba, 0x4c2: 0xba, 0x4c3: 0xba, 0x4c4: 0xba, 0x4c5: 0xba, 0x4c6: 0xba, 0x4c7: 0xba,
2228 0x4c8: 0xba, 0x4c9: 0xba, 0x4ca: 0xba, 0x4cb: 0xba, 0x4cc: 0xba, 0x4cd: 0xba, 0x4ce: 0xba, 0x4cf: 0xba,
2229 0x4d0: 0x9f, 0x4d1: 0x9f, 0x4d2: 0x9f, 0x4d3: 0x9f, 0x4d4: 0x9f, 0x4d5: 0x9f, 0x4d6: 0x9f, 0x4d7: 0x9f,
2230 0x4d8: 0x9f, 0x4d9: 0x152, 0x4da: 0xba, 0x4db: 0xba, 0x4dc: 0xba, 0x4dd: 0xba, 0x4de: 0xba, 0x4df: 0xba,
2231 0x4e0: 0xba, 0x4e1: 0xba, 0x4e2: 0xba, 0x4e3: 0xba, 0x4e4: 0xba, 0x4e5: 0xba, 0x4e6: 0xba, 0x4e7: 0xba,
2232 0x4e8: 0xba, 0x4e9: 0xba, 0x4ea: 0xba, 0x4eb: 0xba, 0x4ec: 0xba, 0x4ed: 0xba, 0x4ee: 0xba, 0x4ef: 0xba,
2233 0x4f0: 0xba, 0x4f1: 0xba, 0x4f2: 0xba, 0x4f3: 0xba, 0x4f4: 0xba, 0x4f5: 0xba, 0x4f6: 0xba, 0x4f7: 0xba,
2234 0x4f8: 0xba, 0x4f9: 0xba, 0x4fa: 0xba, 0x4fb: 0xba, 0x4fc: 0xba, 0x4fd: 0xba, 0x4fe: 0xba, 0x4ff: 0xba,
2235 // Block 0x14, offset 0x500
2236 0x500: 0xba, 0x501: 0xba, 0x502: 0xba, 0x503: 0xba, 0x504: 0xba, 0x505: 0xba, 0x506: 0xba, 0x507: 0xba,
2237 0x508: 0xba, 0x509: 0xba, 0x50a: 0xba, 0x50b: 0xba, 0x50c: 0xba, 0x50d: 0xba, 0x50e: 0xba, 0x50f: 0xba,
2238 0x510: 0xba, 0x511: 0xba, 0x512: 0xba, 0x513: 0xba, 0x514: 0xba, 0x515: 0xba, 0x516: 0xba, 0x517: 0xba,
2239 0x518: 0xba, 0x519: 0xba, 0x51a: 0xba, 0x51b: 0xba, 0x51c: 0xba, 0x51d: 0xba, 0x51e: 0xba, 0x51f: 0xba,
2240 0x520: 0x9f, 0x521: 0x9f, 0x522: 0x9f, 0x523: 0x9f, 0x524: 0x9f, 0x525: 0x9f, 0x526: 0x9f, 0x527: 0x9f,
2241 0x528: 0x146, 0x529: 0x153, 0x52a: 0xba, 0x52b: 0x154, 0x52c: 0x155, 0x52d: 0x156, 0x52e: 0x157, 0x52f: 0xba,
2242 0x530: 0xba, 0x531: 0xba, 0x532: 0xba, 0x533: 0xba, 0x534: 0xba, 0x535: 0xba, 0x536: 0xba, 0x537: 0xba,
2243 0x538: 0xba, 0x539: 0x158, 0x53a: 0x159, 0x53b: 0xba, 0x53c: 0x9f, 0x53d: 0x15a, 0x53e: 0x15b, 0x53f: 0x15c,
2244 // Block 0x15, offset 0x540
2245 0x540: 0x9f, 0x541: 0x9f, 0x542: 0x9f, 0x543: 0x9f, 0x544: 0x9f, 0x545: 0x9f, 0x546: 0x9f, 0x547: 0x9f,
2246 0x548: 0x9f, 0x549: 0x9f, 0x54a: 0x9f, 0x54b: 0x9f, 0x54c: 0x9f, 0x54d: 0x9f, 0x54e: 0x9f, 0x54f: 0x9f,
2247 0x550: 0x9f, 0x551: 0x9f, 0x552: 0x9f, 0x553: 0x9f, 0x554: 0x9f, 0x555: 0x9f, 0x556: 0x9f, 0x557: 0x9f,
2248 0x558: 0x9f, 0x559: 0x9f, 0x55a: 0x9f, 0x55b: 0x9f, 0x55c: 0x9f, 0x55d: 0x9f, 0x55e: 0x9f, 0x55f: 0x15d,
2249 0x560: 0x9f, 0x561: 0x9f, 0x562: 0x9f, 0x563: 0x9f, 0x564: 0x9f, 0x565: 0x9f, 0x566: 0x9f, 0x567: 0x9f,
2250 0x568: 0x9f, 0x569: 0x9f, 0x56a: 0x9f, 0x56b: 0x15e, 0x56c: 0xba, 0x56d: 0xba, 0x56e: 0xba, 0x56f: 0xba,
2251 0x570: 0xba, 0x571: 0xba, 0x572: 0xba, 0x573: 0xba, 0x574: 0xba, 0x575: 0xba, 0x576: 0xba, 0x577: 0xba,
2252 0x578: 0xba, 0x579: 0xba, 0x57a: 0xba, 0x57b: 0xba, 0x57c: 0xba, 0x57d: 0xba, 0x57e: 0xba, 0x57f: 0xba,
2253 // Block 0x16, offset 0x580
2254 0x580: 0x9f, 0x581: 0x9f, 0x582: 0x9f, 0x583: 0x9f, 0x584: 0x15f, 0x585: 0x160, 0x586: 0x9f, 0x587: 0x9f,
2255 0x588: 0x9f, 0x589: 0x9f, 0x58a: 0x9f, 0x58b: 0x161, 0x58c: 0xba, 0x58d: 0xba, 0x58e: 0xba, 0x58f: 0xba,
2256 0x590: 0xba, 0x591: 0xba, 0x592: 0xba, 0x593: 0xba, 0x594: 0xba, 0x595: 0xba, 0x596: 0xba, 0x597: 0xba,
2257 0x598: 0xba, 0x599: 0xba, 0x59a: 0xba, 0x59b: 0xba, 0x59c: 0xba, 0x59d: 0xba, 0x59e: 0xba, 0x59f: 0xba,
2258 0x5a0: 0xba, 0x5a1: 0xba, 0x5a2: 0xba, 0x5a3: 0xba, 0x5a4: 0xba, 0x5a5: 0xba, 0x5a6: 0xba, 0x5a7: 0xba,
2259 0x5a8: 0xba, 0x5a9: 0xba, 0x5aa: 0xba, 0x5ab: 0xba, 0x5ac: 0xba, 0x5ad: 0xba, 0x5ae: 0xba, 0x5af: 0xba,
2260 0x5b0: 0x9f, 0x5b1: 0x162, 0x5b2: 0x163, 0x5b3: 0xba, 0x5b4: 0xba, 0x5b5: 0xba, 0x5b6: 0xba, 0x5b7: 0xba,
2261 0x5b8: 0xba, 0x5b9: 0xba, 0x5ba: 0xba, 0x5bb: 0xba, 0x5bc: 0xba, 0x5bd: 0xba, 0x5be: 0xba, 0x5bf: 0xba,
2262 // Block 0x17, offset 0x5c0
2263 0x5c0: 0x9b, 0x5c1: 0x9b, 0x5c2: 0x9b, 0x5c3: 0x164, 0x5c4: 0x165, 0x5c5: 0x166, 0x5c6: 0x167, 0x5c7: 0x168,
2264 0x5c8: 0x9b, 0x5c9: 0x169, 0x5ca: 0xba, 0x5cb: 0x16a, 0x5cc: 0x9b, 0x5cd: 0x16b, 0x5ce: 0xba, 0x5cf: 0xba,
2265 0x5d0: 0x5f, 0x5d1: 0x60, 0x5d2: 0x61, 0x5d3: 0x62, 0x5d4: 0x63, 0x5d5: 0x64, 0x5d6: 0x65, 0x5d7: 0x66,
2266 0x5d8: 0x67, 0x5d9: 0x68, 0x5da: 0x69, 0x5db: 0x6a, 0x5dc: 0x6b, 0x5dd: 0x6c, 0x5de: 0x6d, 0x5df: 0x6e,
2267 0x5e0: 0x9b, 0x5e1: 0x9b, 0x5e2: 0x9b, 0x5e3: 0x9b, 0x5e4: 0x9b, 0x5e5: 0x9b, 0x5e6: 0x9b, 0x5e7: 0x9b,
2268 0x5e8: 0x16c, 0x5e9: 0x16d, 0x5ea: 0x16e, 0x5eb: 0xba, 0x5ec: 0xba, 0x5ed: 0xba, 0x5ee: 0xba, 0x5ef: 0xba,
2269 0x5f0: 0xba, 0x5f1: 0xba, 0x5f2: 0xba, 0x5f3: 0xba, 0x5f4: 0xba, 0x5f5: 0xba, 0x5f6: 0xba, 0x5f7: 0xba,
2270 0x5f8: 0xba, 0x5f9: 0xba, 0x5fa: 0xba, 0x5fb: 0xba, 0x5fc: 0xba, 0x5fd: 0xba, 0x5fe: 0xba, 0x5ff: 0xba,
2271 // Block 0x18, offset 0x600
2272 0x600: 0x16f, 0x601: 0xba, 0x602: 0xba, 0x603: 0xba, 0x604: 0xba, 0x605: 0xba, 0x606: 0xba, 0x607: 0xba,
2273 0x608: 0xba, 0x609: 0xba, 0x60a: 0xba, 0x60b: 0xba, 0x60c: 0xba, 0x60d: 0xba, 0x60e: 0xba, 0x60f: 0xba,
2274 0x610: 0xba, 0x611: 0xba, 0x612: 0xba, 0x613: 0xba, 0x614: 0xba, 0x615: 0xba, 0x616: 0xba, 0x617: 0xba,
2275 0x618: 0xba, 0x619: 0xba, 0x61a: 0xba, 0x61b: 0xba, 0x61c: 0xba, 0x61d: 0xba, 0x61e: 0xba, 0x61f: 0xba,
2276 0x620: 0x122, 0x621: 0x122, 0x622: 0x122, 0x623: 0x170, 0x624: 0x6f, 0x625: 0x171, 0x626: 0xba, 0x627: 0xba,
2277 0x628: 0xba, 0x629: 0xba, 0x62a: 0xba, 0x62b: 0xba, 0x62c: 0xba, 0x62d: 0xba, 0x62e: 0xba, 0x62f: 0xba,
2278 0x630: 0xba, 0x631: 0x172, 0x632: 0x173, 0x633: 0xba, 0x634: 0xba, 0x635: 0xba, 0x636: 0xba, 0x637: 0xba,
2279 0x638: 0x70, 0x639: 0x71, 0x63a: 0x72, 0x63b: 0x174, 0x63c: 0xba, 0x63d: 0xba, 0x63e: 0xba, 0x63f: 0xba,
2280 // Block 0x19, offset 0x640
2281 0x640: 0x175, 0x641: 0x9b, 0x642: 0x176, 0x643: 0x177, 0x644: 0x73, 0x645: 0x74, 0x646: 0x178, 0x647: 0x179,
2282 0x648: 0x75, 0x649: 0x17a, 0x64a: 0xba, 0x64b: 0xba, 0x64c: 0x9b, 0x64d: 0x9b, 0x64e: 0x9b, 0x64f: 0x9b,
2283 0x650: 0x9b, 0x651: 0x9b, 0x652: 0x9b, 0x653: 0x9b, 0x654: 0x9b, 0x655: 0x9b, 0x656: 0x9b, 0x657: 0x9b,
2284 0x658: 0x9b, 0x659: 0x9b, 0x65a: 0x9b, 0x65b: 0x17b, 0x65c: 0x9b, 0x65d: 0x17c, 0x65e: 0x9b, 0x65f: 0x17d,
2285 0x660: 0x17e, 0x661: 0x17f, 0x662: 0x180, 0x663: 0xba, 0x664: 0x181, 0x665: 0x182, 0x666: 0x183, 0x667: 0x184,
2286 0x668: 0xba, 0x669: 0x185, 0x66a: 0xba, 0x66b: 0xba, 0x66c: 0xba, 0x66d: 0xba, 0x66e: 0xba, 0x66f: 0xba,
2287 0x670: 0xba, 0x671: 0xba, 0x672: 0xba, 0x673: 0xba, 0x674: 0xba, 0x675: 0xba, 0x676: 0xba, 0x677: 0xba,
2288 0x678: 0xba, 0x679: 0xba, 0x67a: 0xba, 0x67b: 0xba, 0x67c: 0xba, 0x67d: 0xba, 0x67e: 0xba, 0x67f: 0xba,
2289 // Block 0x1a, offset 0x680
2290 0x680: 0x9f, 0x681: 0x9f, 0x682: 0x9f, 0x683: 0x9f, 0x684: 0x9f, 0x685: 0x9f, 0x686: 0x9f, 0x687: 0x9f,
2291 0x688: 0x9f, 0x689: 0x9f, 0x68a: 0x9f, 0x68b: 0x9f, 0x68c: 0x9f, 0x68d: 0x9f, 0x68e: 0x9f, 0x68f: 0x9f,
2292 0x690: 0x9f, 0x691: 0x9f, 0x692: 0x9f, 0x693: 0x9f, 0x694: 0x9f, 0x695: 0x9f, 0x696: 0x9f, 0x697: 0x9f,
2293 0x698: 0x9f, 0x699: 0x9f, 0x69a: 0x9f, 0x69b: 0x186, 0x69c: 0x9f, 0x69d: 0x9f, 0x69e: 0x9f, 0x69f: 0x9f,
2294 0x6a0: 0x9f, 0x6a1: 0x9f, 0x6a2: 0x9f, 0x6a3: 0x9f, 0x6a4: 0x9f, 0x6a5: 0x9f, 0x6a6: 0x9f, 0x6a7: 0x9f,
2295 0x6a8: 0x9f, 0x6a9: 0x9f, 0x6aa: 0x9f, 0x6ab: 0x9f, 0x6ac: 0x9f, 0x6ad: 0x9f, 0x6ae: 0x9f, 0x6af: 0x9f,
2296 0x6b0: 0x9f, 0x6b1: 0x9f, 0x6b2: 0x9f, 0x6b3: 0x9f, 0x6b4: 0x9f, 0x6b5: 0x9f, 0x6b6: 0x9f, 0x6b7: 0x9f,
2297 0x6b8: 0x9f, 0x6b9: 0x9f, 0x6ba: 0x9f, 0x6bb: 0x9f, 0x6bc: 0x9f, 0x6bd: 0x9f, 0x6be: 0x9f, 0x6bf: 0x9f,
2298 // Block 0x1b, offset 0x6c0
2299 0x6c0: 0x9f, 0x6c1: 0x9f, 0x6c2: 0x9f, 0x6c3: 0x9f, 0x6c4: 0x9f, 0x6c5: 0x9f, 0x6c6: 0x9f, 0x6c7: 0x9f,
2300 0x6c8: 0x9f, 0x6c9: 0x9f, 0x6ca: 0x9f, 0x6cb: 0x9f, 0x6cc: 0x9f, 0x6cd: 0x9f, 0x6ce: 0x9f, 0x6cf: 0x9f,
2301 0x6d0: 0x9f, 0x6d1: 0x9f, 0x6d2: 0x9f, 0x6d3: 0x9f, 0x6d4: 0x9f, 0x6d5: 0x9f, 0x6d6: 0x9f, 0x6d7: 0x9f,
2302 0x6d8: 0x9f, 0x6d9: 0x9f, 0x6da: 0x9f, 0x6db: 0x9f, 0x6dc: 0x187, 0x6dd: 0x9f, 0x6de: 0x9f, 0x6df: 0x9f,
2303 0x6e0: 0x188, 0x6e1: 0x9f, 0x6e2: 0x9f, 0x6e3: 0x9f, 0x6e4: 0x9f, 0x6e5: 0x9f, 0x6e6: 0x9f, 0x6e7: 0x9f,
2304 0x6e8: 0x9f, 0x6e9: 0x9f, 0x6ea: 0x9f, 0x6eb: 0x9f, 0x6ec: 0x9f, 0x6ed: 0x9f, 0x6ee: 0x9f, 0x6ef: 0x9f,
2305 0x6f0: 0x9f, 0x6f1: 0x9f, 0x6f2: 0x9f, 0x6f3: 0x9f, 0x6f4: 0x9f, 0x6f5: 0x9f, 0x6f6: 0x9f, 0x6f7: 0x9f,
2306 0x6f8: 0x9f, 0x6f9: 0x9f, 0x6fa: 0x9f, 0x6fb: 0x9f, 0x6fc: 0x9f, 0x6fd: 0x9f, 0x6fe: 0x9f, 0x6ff: 0x9f,
2307 // Block 0x1c, offset 0x700
2308 0x700: 0x9f, 0x701: 0x9f, 0x702: 0x9f, 0x703: 0x9f, 0x704: 0x9f, 0x705: 0x9f, 0x706: 0x9f, 0x707: 0x9f,
2309 0x708: 0x9f, 0x709: 0x9f, 0x70a: 0x9f, 0x70b: 0x9f, 0x70c: 0x9f, 0x70d: 0x9f, 0x70e: 0x9f, 0x70f: 0x9f,
2310 0x710: 0x9f, 0x711: 0x9f, 0x712: 0x9f, 0x713: 0x9f, 0x714: 0x9f, 0x715: 0x9f, 0x716: 0x9f, 0x717: 0x9f,
2311 0x718: 0x9f, 0x719: 0x9f, 0x71a: 0x9f, 0x71b: 0x9f, 0x71c: 0x9f, 0x71d: 0x9f, 0x71e: 0x9f, 0x71f: 0x9f,
2312 0x720: 0x9f, 0x721: 0x9f, 0x722: 0x9f, 0x723: 0x9f, 0x724: 0x9f, 0x725: 0x9f, 0x726: 0x9f, 0x727: 0x9f,
2313 0x728: 0x9f, 0x729: 0x9f, 0x72a: 0x9f, 0x72b: 0x9f, 0x72c: 0x9f, 0x72d: 0x9f, 0x72e: 0x9f, 0x72f: 0x9f,
2314 0x730: 0x9f, 0x731: 0x9f, 0x732: 0x9f, 0x733: 0x9f, 0x734: 0x9f, 0x735: 0x9f, 0x736: 0x9f, 0x737: 0x9f,
2315 0x738: 0x9f, 0x739: 0x9f, 0x73a: 0x189, 0x73b: 0x9f, 0x73c: 0x9f, 0x73d: 0x9f, 0x73e: 0x9f, 0x73f: 0x9f,
2316 // Block 0x1d, offset 0x740
2317 0x740: 0x9f, 0x741: 0x9f, 0x742: 0x9f, 0x743: 0x9f, 0x744: 0x9f, 0x745: 0x9f, 0x746: 0x9f, 0x747: 0x9f,
2318 0x748: 0x9f, 0x749: 0x9f, 0x74a: 0x9f, 0x74b: 0x9f, 0x74c: 0x9f, 0x74d: 0x9f, 0x74e: 0x9f, 0x74f: 0x9f,
2319 0x750: 0x9f, 0x751: 0x9f, 0x752: 0x9f, 0x753: 0x9f, 0x754: 0x9f, 0x755: 0x9f, 0x756: 0x9f, 0x757: 0x9f,
2320 0x758: 0x9f, 0x759: 0x9f, 0x75a: 0x9f, 0x75b: 0x9f, 0x75c: 0x9f, 0x75d: 0x9f, 0x75e: 0x9f, 0x75f: 0x9f,
2321 0x760: 0x9f, 0x761: 0x9f, 0x762: 0x9f, 0x763: 0x9f, 0x764: 0x9f, 0x765: 0x9f, 0x766: 0x9f, 0x767: 0x9f,
2322 0x768: 0x9f, 0x769: 0x9f, 0x76a: 0x9f, 0x76b: 0x9f, 0x76c: 0x9f, 0x76d: 0x9f, 0x76e: 0x9f, 0x76f: 0x18a,
2323 0x770: 0xba, 0x771: 0xba, 0x772: 0xba, 0x773: 0xba, 0x774: 0xba, 0x775: 0xba, 0x776: 0xba, 0x777: 0xba,
2324 0x778: 0xba, 0x779: 0xba, 0x77a: 0xba, 0x77b: 0xba, 0x77c: 0xba, 0x77d: 0xba, 0x77e: 0xba, 0x77f: 0xba,
2325 // Block 0x1e, offset 0x780
2326 0x780: 0xba, 0x781: 0xba, 0x782: 0xba, 0x783: 0xba, 0x784: 0xba, 0x785: 0xba, 0x786: 0xba, 0x787: 0xba,
2327 0x788: 0xba, 0x789: 0xba, 0x78a: 0xba, 0x78b: 0xba, 0x78c: 0xba, 0x78d: 0xba, 0x78e: 0xba, 0x78f: 0xba,
2328 0x790: 0xba, 0x791: 0xba, 0x792: 0xba, 0x793: 0xba, 0x794: 0xba, 0x795: 0xba, 0x796: 0xba, 0x797: 0xba,
2329 0x798: 0xba, 0x799: 0xba, 0x79a: 0xba, 0x79b: 0xba, 0x79c: 0xba, 0x79d: 0xba, 0x79e: 0xba, 0x79f: 0xba,
2330 0x7a0: 0x76, 0x7a1: 0x77, 0x7a2: 0x78, 0x7a3: 0x18b, 0x7a4: 0x79, 0x7a5: 0x7a, 0x7a6: 0x18c, 0x7a7: 0x7b,
2331 0x7a8: 0x7c, 0x7a9: 0xba, 0x7aa: 0xba, 0x7ab: 0xba, 0x7ac: 0xba, 0x7ad: 0xba, 0x7ae: 0xba, 0x7af: 0xba,
2332 0x7b0: 0xba, 0x7b1: 0xba, 0x7b2: 0xba, 0x7b3: 0xba, 0x7b4: 0xba, 0x7b5: 0xba, 0x7b6: 0xba, 0x7b7: 0xba,
2333 0x7b8: 0xba, 0x7b9: 0xba, 0x7ba: 0xba, 0x7bb: 0xba, 0x7bc: 0xba, 0x7bd: 0xba, 0x7be: 0xba, 0x7bf: 0xba,
2334 // Block 0x1f, offset 0x7c0
2335 0x7d0: 0x0d, 0x7d1: 0x0e, 0x7d2: 0x0f, 0x7d3: 0x10, 0x7d4: 0x11, 0x7d5: 0x0b, 0x7d6: 0x12, 0x7d7: 0x07,
2336 0x7d8: 0x13, 0x7d9: 0x0b, 0x7da: 0x0b, 0x7db: 0x14, 0x7dc: 0x0b, 0x7dd: 0x15, 0x7de: 0x16, 0x7df: 0x17,
2337 0x7e0: 0x07, 0x7e1: 0x07, 0x7e2: 0x07, 0x7e3: 0x07, 0x7e4: 0x07, 0x7e5: 0x07, 0x7e6: 0x07, 0x7e7: 0x07,
2338 0x7e8: 0x07, 0x7e9: 0x07, 0x7ea: 0x18, 0x7eb: 0x19, 0x7ec: 0x1a, 0x7ed: 0x07, 0x7ee: 0x1b, 0x7ef: 0x1c,
2339 0x7f0: 0x0b, 0x7f1: 0x0b, 0x7f2: 0x0b, 0x7f3: 0x0b, 0x7f4: 0x0b, 0x7f5: 0x0b, 0x7f6: 0x0b, 0x7f7: 0x0b,
2340 0x7f8: 0x0b, 0x7f9: 0x0b, 0x7fa: 0x0b, 0x7fb: 0x0b, 0x7fc: 0x0b, 0x7fd: 0x0b, 0x7fe: 0x0b, 0x7ff: 0x0b,
2341 // Block 0x20, offset 0x800
2342 0x800: 0x0b, 0x801: 0x0b, 0x802: 0x0b, 0x803: 0x0b, 0x804: 0x0b, 0x805: 0x0b, 0x806: 0x0b, 0x807: 0x0b,
2343 0x808: 0x0b, 0x809: 0x0b, 0x80a: 0x0b, 0x80b: 0x0b, 0x80c: 0x0b, 0x80d: 0x0b, 0x80e: 0x0b, 0x80f: 0x0b,
2344 0x810: 0x0b, 0x811: 0x0b, 0x812: 0x0b, 0x813: 0x0b, 0x814: 0x0b, 0x815: 0x0b, 0x816: 0x0b, 0x817: 0x0b,
2345 0x818: 0x0b, 0x819: 0x0b, 0x81a: 0x0b, 0x81b: 0x0b, 0x81c: 0x0b, 0x81d: 0x0b, 0x81e: 0x0b, 0x81f: 0x0b,
2346 0x820: 0x0b, 0x821: 0x0b, 0x822: 0x0b, 0x823: 0x0b, 0x824: 0x0b, 0x825: 0x0b, 0x826: 0x0b, 0x827: 0x0b,
2347 0x828: 0x0b, 0x829: 0x0b, 0x82a: 0x0b, 0x82b: 0x0b, 0x82c: 0x0b, 0x82d: 0x0b, 0x82e: 0x0b, 0x82f: 0x0b,
2348 0x830: 0x0b, 0x831: 0x0b, 0x832: 0x0b, 0x833: 0x0b, 0x834: 0x0b, 0x835: 0x0b, 0x836: 0x0b, 0x837: 0x0b,
2349 0x838: 0x0b, 0x839: 0x0b, 0x83a: 0x0b, 0x83b: 0x0b, 0x83c: 0x0b, 0x83d: 0x0b, 0x83e: 0x0b, 0x83f: 0x0b,
2350 // Block 0x21, offset 0x840
2351 0x840: 0x18d, 0x841: 0x18e, 0x842: 0xba, 0x843: 0xba, 0x844: 0x18f, 0x845: 0x18f, 0x846: 0x18f, 0x847: 0x190,
2352 0x848: 0xba, 0x849: 0xba, 0x84a: 0xba, 0x84b: 0xba, 0x84c: 0xba, 0x84d: 0xba, 0x84e: 0xba, 0x84f: 0xba,
2353 0x850: 0xba, 0x851: 0xba, 0x852: 0xba, 0x853: 0xba, 0x854: 0xba, 0x855: 0xba, 0x856: 0xba, 0x857: 0xba,
2354 0x858: 0xba, 0x859: 0xba, 0x85a: 0xba, 0x85b: 0xba, 0x85c: 0xba, 0x85d: 0xba, 0x85e: 0xba, 0x85f: 0xba,
2355 0x860: 0xba, 0x861: 0xba, 0x862: 0xba, 0x863: 0xba, 0x864: 0xba, 0x865: 0xba, 0x866: 0xba, 0x867: 0xba,
2356 0x868: 0xba, 0x869: 0xba, 0x86a: 0xba, 0x86b: 0xba, 0x86c: 0xba, 0x86d: 0xba, 0x86e: 0xba, 0x86f: 0xba,
2357 0x870: 0xba, 0x871: 0xba, 0x872: 0xba, 0x873: 0xba, 0x874: 0xba, 0x875: 0xba, 0x876: 0xba, 0x877: 0xba,
2358 0x878: 0xba, 0x879: 0xba, 0x87a: 0xba, 0x87b: 0xba, 0x87c: 0xba, 0x87d: 0xba, 0x87e: 0xba, 0x87f: 0xba,
2359 // Block 0x22, offset 0x880
2360 0x880: 0x0b, 0x881: 0x0b, 0x882: 0x0b, 0x883: 0x0b, 0x884: 0x0b, 0x885: 0x0b, 0x886: 0x0b, 0x887: 0x0b,
2361 0x888: 0x0b, 0x889: 0x0b, 0x88a: 0x0b, 0x88b: 0x0b, 0x88c: 0x0b, 0x88d: 0x0b, 0x88e: 0x0b, 0x88f: 0x0b,
2362 0x890: 0x0b, 0x891: 0x0b, 0x892: 0x0b, 0x893: 0x0b, 0x894: 0x0b, 0x895: 0x0b, 0x896: 0x0b, 0x897: 0x0b,
2363 0x898: 0x0b, 0x899: 0x0b, 0x89a: 0x0b, 0x89b: 0x0b, 0x89c: 0x0b, 0x89d: 0x0b, 0x89e: 0x0b, 0x89f: 0x0b,
2364 0x8a0: 0x1f, 0x8a1: 0x0b, 0x8a2: 0x0b, 0x8a3: 0x0b, 0x8a4: 0x0b, 0x8a5: 0x0b, 0x8a6: 0x0b, 0x8a7: 0x0b,
2365 0x8a8: 0x0b, 0x8a9: 0x0b, 0x8aa: 0x0b, 0x8ab: 0x0b, 0x8ac: 0x0b, 0x8ad: 0x0b, 0x8ae: 0x0b, 0x8af: 0x0b,
2366 0x8b0: 0x0b, 0x8b1: 0x0b, 0x8b2: 0x0b, 0x8b3: 0x0b, 0x8b4: 0x0b, 0x8b5: 0x0b, 0x8b6: 0x0b, 0x8b7: 0x0b,
2367 0x8b8: 0x0b, 0x8b9: 0x0b, 0x8ba: 0x0b, 0x8bb: 0x0b, 0x8bc: 0x0b, 0x8bd: 0x0b, 0x8be: 0x0b, 0x8bf: 0x0b,
2368 // Block 0x23, offset 0x8c0
2369 0x8c0: 0x0b, 0x8c1: 0x0b, 0x8c2: 0x0b, 0x8c3: 0x0b, 0x8c4: 0x0b, 0x8c5: 0x0b, 0x8c6: 0x0b, 0x8c7: 0x0b,
2370 0x8c8: 0x0b, 0x8c9: 0x0b, 0x8ca: 0x0b, 0x8cb: 0x0b, 0x8cc: 0x0b, 0x8cd: 0x0b, 0x8ce: 0x0b, 0x8cf: 0x0b,
2371}
2372
2373// idnaSparseOffset: 276 entries, 552 bytes
2374var idnaSparseOffset = []uint16{0x0, 0x8, 0x19, 0x25, 0x27, 0x2c, 0x33, 0x3e, 0x4a, 0x4e, 0x5d, 0x62, 0x6c, 0x78, 0x86, 0x8b, 0x94, 0xa4, 0xb2, 0xbe, 0xca, 0xdb, 0xe5, 0xec, 0xf9, 0x10a, 0x111, 0x11c, 0x12b, 0x139, 0x143, 0x145, 0x14a, 0x14d, 0x150, 0x152, 0x15e, 0x169, 0x171, 0x177, 0x17d, 0x182, 0x187, 0x18a, 0x18e, 0x194, 0x199, 0x1a5, 0x1af, 0x1b5, 0x1c6, 0x1d0, 0x1d3, 0x1db, 0x1de, 0x1eb, 0x1f3, 0x1f7, 0x1fe, 0x206, 0x216, 0x222, 0x224, 0x22e, 0x23a, 0x246, 0x252, 0x25a, 0x25f, 0x269, 0x27a, 0x27e, 0x289, 0x28d, 0x296, 0x29e, 0x2a4, 0x2a9, 0x2ac, 0x2b0, 0x2b6, 0x2ba, 0x2be, 0x2c2, 0x2c7, 0x2cd, 0x2d5, 0x2dc, 0x2e7, 0x2f1, 0x2f5, 0x2f8, 0x2fe, 0x302, 0x304, 0x307, 0x309, 0x30c, 0x316, 0x319, 0x328, 0x32c, 0x331, 0x334, 0x338, 0x33d, 0x342, 0x348, 0x34e, 0x35d, 0x363, 0x367, 0x376, 0x37b, 0x383, 0x38d, 0x398, 0x3a0, 0x3b1, 0x3ba, 0x3ca, 0x3d7, 0x3e1, 0x3e6, 0x3f3, 0x3f7, 0x3fc, 0x3fe, 0x402, 0x404, 0x408, 0x411, 0x417, 0x41b, 0x42b, 0x435, 0x43a, 0x43d, 0x443, 0x44a, 0x44f, 0x453, 0x459, 0x45e, 0x467, 0x46c, 0x472, 0x479, 0x480, 0x487, 0x48b, 0x490, 0x493, 0x498, 0x4a4, 0x4aa, 0x4af, 0x4b6, 0x4be, 0x4c3, 0x4c7, 0x4d7, 0x4de, 0x4e2, 0x4e6, 0x4ed, 0x4ef, 0x4f2, 0x4f5, 0x4f9, 0x502, 0x506, 0x50e, 0x516, 0x51c, 0x525, 0x531, 0x538, 0x541, 0x54b, 0x552, 0x560, 0x56d, 0x57a, 0x583, 0x587, 0x596, 0x59e, 0x5a9, 0x5b2, 0x5b8, 0x5c0, 0x5c9, 0x5d3, 0x5d6, 0x5e2, 0x5eb, 0x5ee, 0x5f3, 0x5fe, 0x607, 0x613, 0x616, 0x620, 0x629, 0x635, 0x642, 0x64f, 0x65d, 0x664, 0x667, 0x66c, 0x66f, 0x672, 0x675, 0x67c, 0x683, 0x687, 0x692, 0x695, 0x698, 0x69b, 0x6a1, 0x6a6, 0x6aa, 0x6ad, 0x6b0, 0x6b3, 0x6b6, 0x6b9, 0x6be, 0x6c8, 0x6cb, 0x6cf, 0x6de, 0x6ea, 0x6ee, 0x6f3, 0x6f7, 0x6fc, 0x700, 0x705, 0x70e, 0x719, 0x71f, 0x727, 0x72a, 0x72d, 0x731, 0x735, 0x73b, 0x741, 0x746, 0x749, 0x759, 0x760, 0x763, 0x766, 0x76a, 0x770, 0x775, 0x77a, 0x782, 0x787, 0x78b, 0x78f, 0x792, 0x795, 0x799, 0x79d, 0x7a0, 0x7b0, 0x7c1, 0x7c6, 0x7c8, 0x7ca}
2375
2376// idnaSparseValues: 1997 entries, 7988 bytes
2377var idnaSparseValues = [1997]valueRange{
2378 // Block 0x0, offset 0x0
2379 {value: 0x0000, lo: 0x07},
2380 {value: 0xe105, lo: 0x80, hi: 0x96},
2381 {value: 0x0018, lo: 0x97, hi: 0x97},
2382 {value: 0xe105, lo: 0x98, hi: 0x9e},
2383 {value: 0x001f, lo: 0x9f, hi: 0x9f},
2384 {value: 0x0008, lo: 0xa0, hi: 0xb6},
2385 {value: 0x0018, lo: 0xb7, hi: 0xb7},
2386 {value: 0x0008, lo: 0xb8, hi: 0xbf},
2387 // Block 0x1, offset 0x8
2388 {value: 0x0000, lo: 0x10},
2389 {value: 0x0008, lo: 0x80, hi: 0x80},
2390 {value: 0xe01d, lo: 0x81, hi: 0x81},
2391 {value: 0x0008, lo: 0x82, hi: 0x82},
2392 {value: 0x0335, lo: 0x83, hi: 0x83},
2393 {value: 0x034d, lo: 0x84, hi: 0x84},
2394 {value: 0x0365, lo: 0x85, hi: 0x85},
2395 {value: 0xe00d, lo: 0x86, hi: 0x86},
2396 {value: 0x0008, lo: 0x87, hi: 0x87},
2397 {value: 0xe00d, lo: 0x88, hi: 0x88},
2398 {value: 0x0008, lo: 0x89, hi: 0x89},
2399 {value: 0xe00d, lo: 0x8a, hi: 0x8a},
2400 {value: 0x0008, lo: 0x8b, hi: 0x8b},
2401 {value: 0xe00d, lo: 0x8c, hi: 0x8c},
2402 {value: 0x0008, lo: 0x8d, hi: 0x8d},
2403 {value: 0xe00d, lo: 0x8e, hi: 0x8e},
2404 {value: 0x0008, lo: 0x8f, hi: 0xbf},
2405 // Block 0x2, offset 0x19
2406 {value: 0x0000, lo: 0x0b},
2407 {value: 0x0008, lo: 0x80, hi: 0xaf},
2408 {value: 0x0249, lo: 0xb0, hi: 0xb0},
2409 {value: 0x037d, lo: 0xb1, hi: 0xb1},
2410 {value: 0x0259, lo: 0xb2, hi: 0xb2},
2411 {value: 0x0269, lo: 0xb3, hi: 0xb3},
2412 {value: 0x034d, lo: 0xb4, hi: 0xb4},
2413 {value: 0x0395, lo: 0xb5, hi: 0xb5},
2414 {value: 0xe1bd, lo: 0xb6, hi: 0xb6},
2415 {value: 0x0279, lo: 0xb7, hi: 0xb7},
2416 {value: 0x0289, lo: 0xb8, hi: 0xb8},
2417 {value: 0x0008, lo: 0xb9, hi: 0xbf},
2418 // Block 0x3, offset 0x25
2419 {value: 0x0000, lo: 0x01},
2420 {value: 0x3308, lo: 0x80, hi: 0xbf},
2421 // Block 0x4, offset 0x27
2422 {value: 0x0000, lo: 0x04},
2423 {value: 0x03f5, lo: 0x80, hi: 0x8f},
2424 {value: 0xe105, lo: 0x90, hi: 0x9f},
2425 {value: 0x049d, lo: 0xa0, hi: 0xaf},
2426 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2427 // Block 0x5, offset 0x2c
2428 {value: 0x0000, lo: 0x06},
2429 {value: 0xe185, lo: 0x80, hi: 0x8f},
2430 {value: 0x0545, lo: 0x90, hi: 0x96},
2431 {value: 0x0040, lo: 0x97, hi: 0x98},
2432 {value: 0x0008, lo: 0x99, hi: 0x99},
2433 {value: 0x0018, lo: 0x9a, hi: 0x9f},
2434 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2435 // Block 0x6, offset 0x33
2436 {value: 0x0000, lo: 0x0a},
2437 {value: 0x0008, lo: 0x80, hi: 0x86},
2438 {value: 0x0401, lo: 0x87, hi: 0x87},
2439 {value: 0x0008, lo: 0x88, hi: 0x88},
2440 {value: 0x0018, lo: 0x89, hi: 0x8a},
2441 {value: 0x0040, lo: 0x8b, hi: 0x8c},
2442 {value: 0x0018, lo: 0x8d, hi: 0x8f},
2443 {value: 0x0040, lo: 0x90, hi: 0x90},
2444 {value: 0x3308, lo: 0x91, hi: 0xbd},
2445 {value: 0x0818, lo: 0xbe, hi: 0xbe},
2446 {value: 0x3308, lo: 0xbf, hi: 0xbf},
2447 // Block 0x7, offset 0x3e
2448 {value: 0x0000, lo: 0x0b},
2449 {value: 0x0818, lo: 0x80, hi: 0x80},
2450 {value: 0x3308, lo: 0x81, hi: 0x82},
2451 {value: 0x0818, lo: 0x83, hi: 0x83},
2452 {value: 0x3308, lo: 0x84, hi: 0x85},
2453 {value: 0x0818, lo: 0x86, hi: 0x86},
2454 {value: 0x3308, lo: 0x87, hi: 0x87},
2455 {value: 0x0040, lo: 0x88, hi: 0x8f},
2456 {value: 0x0808, lo: 0x90, hi: 0xaa},
2457 {value: 0x0040, lo: 0xab, hi: 0xae},
2458 {value: 0x0808, lo: 0xaf, hi: 0xb4},
2459 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2460 // Block 0x8, offset 0x4a
2461 {value: 0x0000, lo: 0x03},
2462 {value: 0x0a08, lo: 0x80, hi: 0x87},
2463 {value: 0x0c08, lo: 0x88, hi: 0x99},
2464 {value: 0x0a08, lo: 0x9a, hi: 0xbf},
2465 // Block 0x9, offset 0x4e
2466 {value: 0x0000, lo: 0x0e},
2467 {value: 0x3308, lo: 0x80, hi: 0x8a},
2468 {value: 0x0040, lo: 0x8b, hi: 0x8c},
2469 {value: 0x0c08, lo: 0x8d, hi: 0x8d},
2470 {value: 0x0a08, lo: 0x8e, hi: 0x98},
2471 {value: 0x0c08, lo: 0x99, hi: 0x9b},
2472 {value: 0x0a08, lo: 0x9c, hi: 0xaa},
2473 {value: 0x0c08, lo: 0xab, hi: 0xac},
2474 {value: 0x0a08, lo: 0xad, hi: 0xb0},
2475 {value: 0x0c08, lo: 0xb1, hi: 0xb1},
2476 {value: 0x0a08, lo: 0xb2, hi: 0xb2},
2477 {value: 0x0c08, lo: 0xb3, hi: 0xb4},
2478 {value: 0x0a08, lo: 0xb5, hi: 0xb7},
2479 {value: 0x0c08, lo: 0xb8, hi: 0xb9},
2480 {value: 0x0a08, lo: 0xba, hi: 0xbf},
2481 // Block 0xa, offset 0x5d
2482 {value: 0x0000, lo: 0x04},
2483 {value: 0x0808, lo: 0x80, hi: 0xa5},
2484 {value: 0x3308, lo: 0xa6, hi: 0xb0},
2485 {value: 0x0808, lo: 0xb1, hi: 0xb1},
2486 {value: 0x0040, lo: 0xb2, hi: 0xbf},
2487 // Block 0xb, offset 0x62
2488 {value: 0x0000, lo: 0x09},
2489 {value: 0x0808, lo: 0x80, hi: 0x89},
2490 {value: 0x0a08, lo: 0x8a, hi: 0xaa},
2491 {value: 0x3308, lo: 0xab, hi: 0xb3},
2492 {value: 0x0808, lo: 0xb4, hi: 0xb5},
2493 {value: 0x0018, lo: 0xb6, hi: 0xb9},
2494 {value: 0x0818, lo: 0xba, hi: 0xba},
2495 {value: 0x0040, lo: 0xbb, hi: 0xbc},
2496 {value: 0x3308, lo: 0xbd, hi: 0xbd},
2497 {value: 0x0818, lo: 0xbe, hi: 0xbf},
2498 // Block 0xc, offset 0x6c
2499 {value: 0x0000, lo: 0x0b},
2500 {value: 0x0808, lo: 0x80, hi: 0x95},
2501 {value: 0x3308, lo: 0x96, hi: 0x99},
2502 {value: 0x0808, lo: 0x9a, hi: 0x9a},
2503 {value: 0x3308, lo: 0x9b, hi: 0xa3},
2504 {value: 0x0808, lo: 0xa4, hi: 0xa4},
2505 {value: 0x3308, lo: 0xa5, hi: 0xa7},
2506 {value: 0x0808, lo: 0xa8, hi: 0xa8},
2507 {value: 0x3308, lo: 0xa9, hi: 0xad},
2508 {value: 0x0040, lo: 0xae, hi: 0xaf},
2509 {value: 0x0818, lo: 0xb0, hi: 0xbe},
2510 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2511 // Block 0xd, offset 0x78
2512 {value: 0x0000, lo: 0x0d},
2513 {value: 0x0040, lo: 0x80, hi: 0x9f},
2514 {value: 0x0a08, lo: 0xa0, hi: 0xa9},
2515 {value: 0x0c08, lo: 0xaa, hi: 0xac},
2516 {value: 0x0808, lo: 0xad, hi: 0xad},
2517 {value: 0x0c08, lo: 0xae, hi: 0xae},
2518 {value: 0x0a08, lo: 0xaf, hi: 0xb0},
2519 {value: 0x0c08, lo: 0xb1, hi: 0xb2},
2520 {value: 0x0a08, lo: 0xb3, hi: 0xb4},
2521 {value: 0x0040, lo: 0xb5, hi: 0xb5},
2522 {value: 0x0a08, lo: 0xb6, hi: 0xb8},
2523 {value: 0x0c08, lo: 0xb9, hi: 0xb9},
2524 {value: 0x0a08, lo: 0xba, hi: 0xbd},
2525 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2526 // Block 0xe, offset 0x86
2527 {value: 0x0000, lo: 0x04},
2528 {value: 0x0040, lo: 0x80, hi: 0x92},
2529 {value: 0x3308, lo: 0x93, hi: 0xa1},
2530 {value: 0x0840, lo: 0xa2, hi: 0xa2},
2531 {value: 0x3308, lo: 0xa3, hi: 0xbf},
2532 // Block 0xf, offset 0x8b
2533 {value: 0x0000, lo: 0x08},
2534 {value: 0x3308, lo: 0x80, hi: 0x82},
2535 {value: 0x3008, lo: 0x83, hi: 0x83},
2536 {value: 0x0008, lo: 0x84, hi: 0xb9},
2537 {value: 0x3308, lo: 0xba, hi: 0xba},
2538 {value: 0x3008, lo: 0xbb, hi: 0xbb},
2539 {value: 0x3308, lo: 0xbc, hi: 0xbc},
2540 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2541 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2542 // Block 0x10, offset 0x94
2543 {value: 0x0000, lo: 0x0f},
2544 {value: 0x3308, lo: 0x80, hi: 0x80},
2545 {value: 0x3008, lo: 0x81, hi: 0x82},
2546 {value: 0x0040, lo: 0x83, hi: 0x85},
2547 {value: 0x3008, lo: 0x86, hi: 0x88},
2548 {value: 0x0040, lo: 0x89, hi: 0x89},
2549 {value: 0x3008, lo: 0x8a, hi: 0x8c},
2550 {value: 0x3b08, lo: 0x8d, hi: 0x8d},
2551 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2552 {value: 0x0008, lo: 0x90, hi: 0x90},
2553 {value: 0x0040, lo: 0x91, hi: 0x96},
2554 {value: 0x3008, lo: 0x97, hi: 0x97},
2555 {value: 0x0040, lo: 0x98, hi: 0xa5},
2556 {value: 0x0008, lo: 0xa6, hi: 0xaf},
2557 {value: 0x0018, lo: 0xb0, hi: 0xba},
2558 {value: 0x0040, lo: 0xbb, hi: 0xbf},
2559 // Block 0x11, offset 0xa4
2560 {value: 0x0000, lo: 0x0d},
2561 {value: 0x3308, lo: 0x80, hi: 0x80},
2562 {value: 0x3008, lo: 0x81, hi: 0x83},
2563 {value: 0x3308, lo: 0x84, hi: 0x84},
2564 {value: 0x0008, lo: 0x85, hi: 0x8c},
2565 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2566 {value: 0x0008, lo: 0x8e, hi: 0x90},
2567 {value: 0x0040, lo: 0x91, hi: 0x91},
2568 {value: 0x0008, lo: 0x92, hi: 0xa8},
2569 {value: 0x0040, lo: 0xa9, hi: 0xa9},
2570 {value: 0x0008, lo: 0xaa, hi: 0xb9},
2571 {value: 0x0040, lo: 0xba, hi: 0xbc},
2572 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2573 {value: 0x3308, lo: 0xbe, hi: 0xbf},
2574 // Block 0x12, offset 0xb2
2575 {value: 0x0000, lo: 0x0b},
2576 {value: 0x3308, lo: 0x80, hi: 0x81},
2577 {value: 0x3008, lo: 0x82, hi: 0x83},
2578 {value: 0x0040, lo: 0x84, hi: 0x84},
2579 {value: 0x0008, lo: 0x85, hi: 0x8c},
2580 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2581 {value: 0x0008, lo: 0x8e, hi: 0x90},
2582 {value: 0x0040, lo: 0x91, hi: 0x91},
2583 {value: 0x0008, lo: 0x92, hi: 0xba},
2584 {value: 0x3b08, lo: 0xbb, hi: 0xbc},
2585 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2586 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2587 // Block 0x13, offset 0xbe
2588 {value: 0x0000, lo: 0x0b},
2589 {value: 0x0040, lo: 0x80, hi: 0x81},
2590 {value: 0x3008, lo: 0x82, hi: 0x83},
2591 {value: 0x0040, lo: 0x84, hi: 0x84},
2592 {value: 0x0008, lo: 0x85, hi: 0x96},
2593 {value: 0x0040, lo: 0x97, hi: 0x99},
2594 {value: 0x0008, lo: 0x9a, hi: 0xb1},
2595 {value: 0x0040, lo: 0xb2, hi: 0xb2},
2596 {value: 0x0008, lo: 0xb3, hi: 0xbb},
2597 {value: 0x0040, lo: 0xbc, hi: 0xbc},
2598 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2599 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2600 // Block 0x14, offset 0xca
2601 {value: 0x0000, lo: 0x10},
2602 {value: 0x0008, lo: 0x80, hi: 0x86},
2603 {value: 0x0040, lo: 0x87, hi: 0x89},
2604 {value: 0x3b08, lo: 0x8a, hi: 0x8a},
2605 {value: 0x0040, lo: 0x8b, hi: 0x8e},
2606 {value: 0x3008, lo: 0x8f, hi: 0x91},
2607 {value: 0x3308, lo: 0x92, hi: 0x94},
2608 {value: 0x0040, lo: 0x95, hi: 0x95},
2609 {value: 0x3308, lo: 0x96, hi: 0x96},
2610 {value: 0x0040, lo: 0x97, hi: 0x97},
2611 {value: 0x3008, lo: 0x98, hi: 0x9f},
2612 {value: 0x0040, lo: 0xa0, hi: 0xa5},
2613 {value: 0x0008, lo: 0xa6, hi: 0xaf},
2614 {value: 0x0040, lo: 0xb0, hi: 0xb1},
2615 {value: 0x3008, lo: 0xb2, hi: 0xb3},
2616 {value: 0x0018, lo: 0xb4, hi: 0xb4},
2617 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2618 // Block 0x15, offset 0xdb
2619 {value: 0x0000, lo: 0x09},
2620 {value: 0x0040, lo: 0x80, hi: 0x80},
2621 {value: 0x0008, lo: 0x81, hi: 0xb0},
2622 {value: 0x3308, lo: 0xb1, hi: 0xb1},
2623 {value: 0x0008, lo: 0xb2, hi: 0xb2},
2624 {value: 0x08f1, lo: 0xb3, hi: 0xb3},
2625 {value: 0x3308, lo: 0xb4, hi: 0xb9},
2626 {value: 0x3b08, lo: 0xba, hi: 0xba},
2627 {value: 0x0040, lo: 0xbb, hi: 0xbe},
2628 {value: 0x0018, lo: 0xbf, hi: 0xbf},
2629 // Block 0x16, offset 0xe5
2630 {value: 0x0000, lo: 0x06},
2631 {value: 0x0008, lo: 0x80, hi: 0x86},
2632 {value: 0x3308, lo: 0x87, hi: 0x8e},
2633 {value: 0x0018, lo: 0x8f, hi: 0x8f},
2634 {value: 0x0008, lo: 0x90, hi: 0x99},
2635 {value: 0x0018, lo: 0x9a, hi: 0x9b},
2636 {value: 0x0040, lo: 0x9c, hi: 0xbf},
2637 // Block 0x17, offset 0xec
2638 {value: 0x0000, lo: 0x0c},
2639 {value: 0x0008, lo: 0x80, hi: 0x84},
2640 {value: 0x0040, lo: 0x85, hi: 0x85},
2641 {value: 0x0008, lo: 0x86, hi: 0x86},
2642 {value: 0x0040, lo: 0x87, hi: 0x87},
2643 {value: 0x3308, lo: 0x88, hi: 0x8d},
2644 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2645 {value: 0x0008, lo: 0x90, hi: 0x99},
2646 {value: 0x0040, lo: 0x9a, hi: 0x9b},
2647 {value: 0x0961, lo: 0x9c, hi: 0x9c},
2648 {value: 0x0999, lo: 0x9d, hi: 0x9d},
2649 {value: 0x0008, lo: 0x9e, hi: 0x9f},
2650 {value: 0x0040, lo: 0xa0, hi: 0xbf},
2651 // Block 0x18, offset 0xf9
2652 {value: 0x0000, lo: 0x10},
2653 {value: 0x0008, lo: 0x80, hi: 0x80},
2654 {value: 0x0018, lo: 0x81, hi: 0x8a},
2655 {value: 0x0008, lo: 0x8b, hi: 0x8b},
2656 {value: 0xe03d, lo: 0x8c, hi: 0x8c},
2657 {value: 0x0018, lo: 0x8d, hi: 0x97},
2658 {value: 0x3308, lo: 0x98, hi: 0x99},
2659 {value: 0x0018, lo: 0x9a, hi: 0x9f},
2660 {value: 0x0008, lo: 0xa0, hi: 0xa9},
2661 {value: 0x0018, lo: 0xaa, hi: 0xb4},
2662 {value: 0x3308, lo: 0xb5, hi: 0xb5},
2663 {value: 0x0018, lo: 0xb6, hi: 0xb6},
2664 {value: 0x3308, lo: 0xb7, hi: 0xb7},
2665 {value: 0x0018, lo: 0xb8, hi: 0xb8},
2666 {value: 0x3308, lo: 0xb9, hi: 0xb9},
2667 {value: 0x0018, lo: 0xba, hi: 0xbd},
2668 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2669 // Block 0x19, offset 0x10a
2670 {value: 0x0000, lo: 0x06},
2671 {value: 0x0018, lo: 0x80, hi: 0x85},
2672 {value: 0x3308, lo: 0x86, hi: 0x86},
2673 {value: 0x0018, lo: 0x87, hi: 0x8c},
2674 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2675 {value: 0x0018, lo: 0x8e, hi: 0x9a},
2676 {value: 0x0040, lo: 0x9b, hi: 0xbf},
2677 // Block 0x1a, offset 0x111
2678 {value: 0x0000, lo: 0x0a},
2679 {value: 0x0008, lo: 0x80, hi: 0xaa},
2680 {value: 0x3008, lo: 0xab, hi: 0xac},
2681 {value: 0x3308, lo: 0xad, hi: 0xb0},
2682 {value: 0x3008, lo: 0xb1, hi: 0xb1},
2683 {value: 0x3308, lo: 0xb2, hi: 0xb7},
2684 {value: 0x3008, lo: 0xb8, hi: 0xb8},
2685 {value: 0x3b08, lo: 0xb9, hi: 0xba},
2686 {value: 0x3008, lo: 0xbb, hi: 0xbc},
2687 {value: 0x3308, lo: 0xbd, hi: 0xbe},
2688 {value: 0x0008, lo: 0xbf, hi: 0xbf},
2689 // Block 0x1b, offset 0x11c
2690 {value: 0x0000, lo: 0x0e},
2691 {value: 0x0008, lo: 0x80, hi: 0x89},
2692 {value: 0x0018, lo: 0x8a, hi: 0x8f},
2693 {value: 0x0008, lo: 0x90, hi: 0x95},
2694 {value: 0x3008, lo: 0x96, hi: 0x97},
2695 {value: 0x3308, lo: 0x98, hi: 0x99},
2696 {value: 0x0008, lo: 0x9a, hi: 0x9d},
2697 {value: 0x3308, lo: 0x9e, hi: 0xa0},
2698 {value: 0x0008, lo: 0xa1, hi: 0xa1},
2699 {value: 0x3008, lo: 0xa2, hi: 0xa4},
2700 {value: 0x0008, lo: 0xa5, hi: 0xa6},
2701 {value: 0x3008, lo: 0xa7, hi: 0xad},
2702 {value: 0x0008, lo: 0xae, hi: 0xb0},
2703 {value: 0x3308, lo: 0xb1, hi: 0xb4},
2704 {value: 0x0008, lo: 0xb5, hi: 0xbf},
2705 // Block 0x1c, offset 0x12b
2706 {value: 0x0000, lo: 0x0d},
2707 {value: 0x0008, lo: 0x80, hi: 0x81},
2708 {value: 0x3308, lo: 0x82, hi: 0x82},
2709 {value: 0x3008, lo: 0x83, hi: 0x84},
2710 {value: 0x3308, lo: 0x85, hi: 0x86},
2711 {value: 0x3008, lo: 0x87, hi: 0x8c},
2712 {value: 0x3308, lo: 0x8d, hi: 0x8d},
2713 {value: 0x0008, lo: 0x8e, hi: 0x8e},
2714 {value: 0x3008, lo: 0x8f, hi: 0x8f},
2715 {value: 0x0008, lo: 0x90, hi: 0x99},
2716 {value: 0x3008, lo: 0x9a, hi: 0x9c},
2717 {value: 0x3308, lo: 0x9d, hi: 0x9d},
2718 {value: 0x0018, lo: 0x9e, hi: 0x9f},
2719 {value: 0x0040, lo: 0xa0, hi: 0xbf},
2720 // Block 0x1d, offset 0x139
2721 {value: 0x0000, lo: 0x09},
2722 {value: 0x0040, lo: 0x80, hi: 0x86},
2723 {value: 0x055d, lo: 0x87, hi: 0x87},
2724 {value: 0x0040, lo: 0x88, hi: 0x8c},
2725 {value: 0x055d, lo: 0x8d, hi: 0x8d},
2726 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2727 {value: 0x0008, lo: 0x90, hi: 0xba},
2728 {value: 0x0018, lo: 0xbb, hi: 0xbb},
2729 {value: 0xe105, lo: 0xbc, hi: 0xbc},
2730 {value: 0x0008, lo: 0xbd, hi: 0xbf},
2731 // Block 0x1e, offset 0x143
2732 {value: 0x0000, lo: 0x01},
2733 {value: 0x0018, lo: 0x80, hi: 0xbf},
2734 // Block 0x1f, offset 0x145
2735 {value: 0x0000, lo: 0x04},
2736 {value: 0x0018, lo: 0x80, hi: 0x9e},
2737 {value: 0x0040, lo: 0x9f, hi: 0xa0},
2738 {value: 0x2018, lo: 0xa1, hi: 0xb5},
2739 {value: 0x0018, lo: 0xb6, hi: 0xbf},
2740 // Block 0x20, offset 0x14a
2741 {value: 0x0000, lo: 0x02},
2742 {value: 0x0018, lo: 0x80, hi: 0xa7},
2743 {value: 0x2018, lo: 0xa8, hi: 0xbf},
2744 // Block 0x21, offset 0x14d
2745 {value: 0x0000, lo: 0x02},
2746 {value: 0x2018, lo: 0x80, hi: 0x82},
2747 {value: 0x0018, lo: 0x83, hi: 0xbf},
2748 // Block 0x22, offset 0x150
2749 {value: 0x0000, lo: 0x01},
2750 {value: 0x0008, lo: 0x80, hi: 0xbf},
2751 // Block 0x23, offset 0x152
2752 {value: 0x0000, lo: 0x0b},
2753 {value: 0x0008, lo: 0x80, hi: 0x88},
2754 {value: 0x0040, lo: 0x89, hi: 0x89},
2755 {value: 0x0008, lo: 0x8a, hi: 0x8d},
2756 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2757 {value: 0x0008, lo: 0x90, hi: 0x96},
2758 {value: 0x0040, lo: 0x97, hi: 0x97},
2759 {value: 0x0008, lo: 0x98, hi: 0x98},
2760 {value: 0x0040, lo: 0x99, hi: 0x99},
2761 {value: 0x0008, lo: 0x9a, hi: 0x9d},
2762 {value: 0x0040, lo: 0x9e, hi: 0x9f},
2763 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2764 // Block 0x24, offset 0x15e
2765 {value: 0x0000, lo: 0x0a},
2766 {value: 0x0008, lo: 0x80, hi: 0x88},
2767 {value: 0x0040, lo: 0x89, hi: 0x89},
2768 {value: 0x0008, lo: 0x8a, hi: 0x8d},
2769 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2770 {value: 0x0008, lo: 0x90, hi: 0xb0},
2771 {value: 0x0040, lo: 0xb1, hi: 0xb1},
2772 {value: 0x0008, lo: 0xb2, hi: 0xb5},
2773 {value: 0x0040, lo: 0xb6, hi: 0xb7},
2774 {value: 0x0008, lo: 0xb8, hi: 0xbe},
2775 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2776 // Block 0x25, offset 0x169
2777 {value: 0x0000, lo: 0x07},
2778 {value: 0x0008, lo: 0x80, hi: 0x80},
2779 {value: 0x0040, lo: 0x81, hi: 0x81},
2780 {value: 0x0008, lo: 0x82, hi: 0x85},
2781 {value: 0x0040, lo: 0x86, hi: 0x87},
2782 {value: 0x0008, lo: 0x88, hi: 0x96},
2783 {value: 0x0040, lo: 0x97, hi: 0x97},
2784 {value: 0x0008, lo: 0x98, hi: 0xbf},
2785 // Block 0x26, offset 0x171
2786 {value: 0x0000, lo: 0x05},
2787 {value: 0x0008, lo: 0x80, hi: 0x90},
2788 {value: 0x0040, lo: 0x91, hi: 0x91},
2789 {value: 0x0008, lo: 0x92, hi: 0x95},
2790 {value: 0x0040, lo: 0x96, hi: 0x97},
2791 {value: 0x0008, lo: 0x98, hi: 0xbf},
2792 // Block 0x27, offset 0x177
2793 {value: 0x0000, lo: 0x05},
2794 {value: 0x0008, lo: 0x80, hi: 0x9a},
2795 {value: 0x0040, lo: 0x9b, hi: 0x9c},
2796 {value: 0x3308, lo: 0x9d, hi: 0x9f},
2797 {value: 0x0018, lo: 0xa0, hi: 0xbc},
2798 {value: 0x0040, lo: 0xbd, hi: 0xbf},
2799 // Block 0x28, offset 0x17d
2800 {value: 0x0000, lo: 0x04},
2801 {value: 0x0008, lo: 0x80, hi: 0x8f},
2802 {value: 0x0018, lo: 0x90, hi: 0x99},
2803 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2804 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2805 // Block 0x29, offset 0x182
2806 {value: 0x0000, lo: 0x04},
2807 {value: 0x0008, lo: 0x80, hi: 0xb5},
2808 {value: 0x0040, lo: 0xb6, hi: 0xb7},
2809 {value: 0xe045, lo: 0xb8, hi: 0xbd},
2810 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2811 // Block 0x2a, offset 0x187
2812 {value: 0x0000, lo: 0x02},
2813 {value: 0x0018, lo: 0x80, hi: 0x80},
2814 {value: 0x0008, lo: 0x81, hi: 0xbf},
2815 // Block 0x2b, offset 0x18a
2816 {value: 0x0000, lo: 0x03},
2817 {value: 0x0008, lo: 0x80, hi: 0xac},
2818 {value: 0x0018, lo: 0xad, hi: 0xae},
2819 {value: 0x0008, lo: 0xaf, hi: 0xbf},
2820 // Block 0x2c, offset 0x18e
2821 {value: 0x0000, lo: 0x05},
2822 {value: 0x0040, lo: 0x80, hi: 0x80},
2823 {value: 0x0008, lo: 0x81, hi: 0x9a},
2824 {value: 0x0018, lo: 0x9b, hi: 0x9c},
2825 {value: 0x0040, lo: 0x9d, hi: 0x9f},
2826 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2827 // Block 0x2d, offset 0x194
2828 {value: 0x0000, lo: 0x04},
2829 {value: 0x0008, lo: 0x80, hi: 0xaa},
2830 {value: 0x0018, lo: 0xab, hi: 0xb0},
2831 {value: 0x0008, lo: 0xb1, hi: 0xb8},
2832 {value: 0x0040, lo: 0xb9, hi: 0xbf},
2833 // Block 0x2e, offset 0x199
2834 {value: 0x0000, lo: 0x0b},
2835 {value: 0x0008, lo: 0x80, hi: 0x8c},
2836 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2837 {value: 0x0008, lo: 0x8e, hi: 0x91},
2838 {value: 0x3308, lo: 0x92, hi: 0x93},
2839 {value: 0x3b08, lo: 0x94, hi: 0x94},
2840 {value: 0x0040, lo: 0x95, hi: 0x9f},
2841 {value: 0x0008, lo: 0xa0, hi: 0xb1},
2842 {value: 0x3308, lo: 0xb2, hi: 0xb3},
2843 {value: 0x3b08, lo: 0xb4, hi: 0xb4},
2844 {value: 0x0018, lo: 0xb5, hi: 0xb6},
2845 {value: 0x0040, lo: 0xb7, hi: 0xbf},
2846 // Block 0x2f, offset 0x1a5
2847 {value: 0x0000, lo: 0x09},
2848 {value: 0x0008, lo: 0x80, hi: 0x91},
2849 {value: 0x3308, lo: 0x92, hi: 0x93},
2850 {value: 0x0040, lo: 0x94, hi: 0x9f},
2851 {value: 0x0008, lo: 0xa0, hi: 0xac},
2852 {value: 0x0040, lo: 0xad, hi: 0xad},
2853 {value: 0x0008, lo: 0xae, hi: 0xb0},
2854 {value: 0x0040, lo: 0xb1, hi: 0xb1},
2855 {value: 0x3308, lo: 0xb2, hi: 0xb3},
2856 {value: 0x0040, lo: 0xb4, hi: 0xbf},
2857 // Block 0x30, offset 0x1af
2858 {value: 0x0000, lo: 0x05},
2859 {value: 0x0008, lo: 0x80, hi: 0xb3},
2860 {value: 0x3340, lo: 0xb4, hi: 0xb5},
2861 {value: 0x3008, lo: 0xb6, hi: 0xb6},
2862 {value: 0x3308, lo: 0xb7, hi: 0xbd},
2863 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2864 // Block 0x31, offset 0x1b5
2865 {value: 0x0000, lo: 0x10},
2866 {value: 0x3008, lo: 0x80, hi: 0x85},
2867 {value: 0x3308, lo: 0x86, hi: 0x86},
2868 {value: 0x3008, lo: 0x87, hi: 0x88},
2869 {value: 0x3308, lo: 0x89, hi: 0x91},
2870 {value: 0x3b08, lo: 0x92, hi: 0x92},
2871 {value: 0x3308, lo: 0x93, hi: 0x93},
2872 {value: 0x0018, lo: 0x94, hi: 0x96},
2873 {value: 0x0008, lo: 0x97, hi: 0x97},
2874 {value: 0x0018, lo: 0x98, hi: 0x9b},
2875 {value: 0x0008, lo: 0x9c, hi: 0x9c},
2876 {value: 0x3308, lo: 0x9d, hi: 0x9d},
2877 {value: 0x0040, lo: 0x9e, hi: 0x9f},
2878 {value: 0x0008, lo: 0xa0, hi: 0xa9},
2879 {value: 0x0040, lo: 0xaa, hi: 0xaf},
2880 {value: 0x0018, lo: 0xb0, hi: 0xb9},
2881 {value: 0x0040, lo: 0xba, hi: 0xbf},
2882 // Block 0x32, offset 0x1c6
2883 {value: 0x0000, lo: 0x09},
2884 {value: 0x0018, lo: 0x80, hi: 0x85},
2885 {value: 0x0040, lo: 0x86, hi: 0x86},
2886 {value: 0x0218, lo: 0x87, hi: 0x87},
2887 {value: 0x0018, lo: 0x88, hi: 0x8a},
2888 {value: 0x33c0, lo: 0x8b, hi: 0x8d},
2889 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2890 {value: 0x0008, lo: 0x90, hi: 0x99},
2891 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2892 {value: 0x0208, lo: 0xa0, hi: 0xbf},
2893 // Block 0x33, offset 0x1d0
2894 {value: 0x0000, lo: 0x02},
2895 {value: 0x0208, lo: 0x80, hi: 0xb8},
2896 {value: 0x0040, lo: 0xb9, hi: 0xbf},
2897 // Block 0x34, offset 0x1d3
2898 {value: 0x0000, lo: 0x07},
2899 {value: 0x0008, lo: 0x80, hi: 0x84},
2900 {value: 0x3308, lo: 0x85, hi: 0x86},
2901 {value: 0x0208, lo: 0x87, hi: 0xa8},
2902 {value: 0x3308, lo: 0xa9, hi: 0xa9},
2903 {value: 0x0208, lo: 0xaa, hi: 0xaa},
2904 {value: 0x0040, lo: 0xab, hi: 0xaf},
2905 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2906 // Block 0x35, offset 0x1db
2907 {value: 0x0000, lo: 0x02},
2908 {value: 0x0008, lo: 0x80, hi: 0xb5},
2909 {value: 0x0040, lo: 0xb6, hi: 0xbf},
2910 // Block 0x36, offset 0x1de
2911 {value: 0x0000, lo: 0x0c},
2912 {value: 0x0008, lo: 0x80, hi: 0x9e},
2913 {value: 0x0040, lo: 0x9f, hi: 0x9f},
2914 {value: 0x3308, lo: 0xa0, hi: 0xa2},
2915 {value: 0x3008, lo: 0xa3, hi: 0xa6},
2916 {value: 0x3308, lo: 0xa7, hi: 0xa8},
2917 {value: 0x3008, lo: 0xa9, hi: 0xab},
2918 {value: 0x0040, lo: 0xac, hi: 0xaf},
2919 {value: 0x3008, lo: 0xb0, hi: 0xb1},
2920 {value: 0x3308, lo: 0xb2, hi: 0xb2},
2921 {value: 0x3008, lo: 0xb3, hi: 0xb8},
2922 {value: 0x3308, lo: 0xb9, hi: 0xbb},
2923 {value: 0x0040, lo: 0xbc, hi: 0xbf},
2924 // Block 0x37, offset 0x1eb
2925 {value: 0x0000, lo: 0x07},
2926 {value: 0x0018, lo: 0x80, hi: 0x80},
2927 {value: 0x0040, lo: 0x81, hi: 0x83},
2928 {value: 0x0018, lo: 0x84, hi: 0x85},
2929 {value: 0x0008, lo: 0x86, hi: 0xad},
2930 {value: 0x0040, lo: 0xae, hi: 0xaf},
2931 {value: 0x0008, lo: 0xb0, hi: 0xb4},
2932 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2933 // Block 0x38, offset 0x1f3
2934 {value: 0x0000, lo: 0x03},
2935 {value: 0x0008, lo: 0x80, hi: 0xab},
2936 {value: 0x0040, lo: 0xac, hi: 0xaf},
2937 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2938 // Block 0x39, offset 0x1f7
2939 {value: 0x0000, lo: 0x06},
2940 {value: 0x0008, lo: 0x80, hi: 0x89},
2941 {value: 0x0040, lo: 0x8a, hi: 0x8f},
2942 {value: 0x0008, lo: 0x90, hi: 0x99},
2943 {value: 0x0028, lo: 0x9a, hi: 0x9a},
2944 {value: 0x0040, lo: 0x9b, hi: 0x9d},
2945 {value: 0x0018, lo: 0x9e, hi: 0xbf},
2946 // Block 0x3a, offset 0x1fe
2947 {value: 0x0000, lo: 0x07},
2948 {value: 0x0008, lo: 0x80, hi: 0x96},
2949 {value: 0x3308, lo: 0x97, hi: 0x98},
2950 {value: 0x3008, lo: 0x99, hi: 0x9a},
2951 {value: 0x3308, lo: 0x9b, hi: 0x9b},
2952 {value: 0x0040, lo: 0x9c, hi: 0x9d},
2953 {value: 0x0018, lo: 0x9e, hi: 0x9f},
2954 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2955 // Block 0x3b, offset 0x206
2956 {value: 0x0000, lo: 0x0f},
2957 {value: 0x0008, lo: 0x80, hi: 0x94},
2958 {value: 0x3008, lo: 0x95, hi: 0x95},
2959 {value: 0x3308, lo: 0x96, hi: 0x96},
2960 {value: 0x3008, lo: 0x97, hi: 0x97},
2961 {value: 0x3308, lo: 0x98, hi: 0x9e},
2962 {value: 0x0040, lo: 0x9f, hi: 0x9f},
2963 {value: 0x3b08, lo: 0xa0, hi: 0xa0},
2964 {value: 0x3008, lo: 0xa1, hi: 0xa1},
2965 {value: 0x3308, lo: 0xa2, hi: 0xa2},
2966 {value: 0x3008, lo: 0xa3, hi: 0xa4},
2967 {value: 0x3308, lo: 0xa5, hi: 0xac},
2968 {value: 0x3008, lo: 0xad, hi: 0xb2},
2969 {value: 0x3308, lo: 0xb3, hi: 0xbc},
2970 {value: 0x0040, lo: 0xbd, hi: 0xbe},
2971 {value: 0x3308, lo: 0xbf, hi: 0xbf},
2972 // Block 0x3c, offset 0x216
2973 {value: 0x0000, lo: 0x0b},
2974 {value: 0x0008, lo: 0x80, hi: 0x89},
2975 {value: 0x0040, lo: 0x8a, hi: 0x8f},
2976 {value: 0x0008, lo: 0x90, hi: 0x99},
2977 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2978 {value: 0x0018, lo: 0xa0, hi: 0xa6},
2979 {value: 0x0008, lo: 0xa7, hi: 0xa7},
2980 {value: 0x0018, lo: 0xa8, hi: 0xad},
2981 {value: 0x0040, lo: 0xae, hi: 0xaf},
2982 {value: 0x3308, lo: 0xb0, hi: 0xbd},
2983 {value: 0x3318, lo: 0xbe, hi: 0xbe},
2984 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2985 // Block 0x3d, offset 0x222
2986 {value: 0x0000, lo: 0x01},
2987 {value: 0x0040, lo: 0x80, hi: 0xbf},
2988 // Block 0x3e, offset 0x224
2989 {value: 0x0000, lo: 0x09},
2990 {value: 0x3308, lo: 0x80, hi: 0x83},
2991 {value: 0x3008, lo: 0x84, hi: 0x84},
2992 {value: 0x0008, lo: 0x85, hi: 0xb3},
2993 {value: 0x3308, lo: 0xb4, hi: 0xb4},
2994 {value: 0x3008, lo: 0xb5, hi: 0xb5},
2995 {value: 0x3308, lo: 0xb6, hi: 0xba},
2996 {value: 0x3008, lo: 0xbb, hi: 0xbb},
2997 {value: 0x3308, lo: 0xbc, hi: 0xbc},
2998 {value: 0x3008, lo: 0xbd, hi: 0xbf},
2999 // Block 0x3f, offset 0x22e
3000 {value: 0x0000, lo: 0x0b},
3001 {value: 0x3008, lo: 0x80, hi: 0x81},
3002 {value: 0x3308, lo: 0x82, hi: 0x82},
3003 {value: 0x3008, lo: 0x83, hi: 0x83},
3004 {value: 0x3808, lo: 0x84, hi: 0x84},
3005 {value: 0x0008, lo: 0x85, hi: 0x8b},
3006 {value: 0x0040, lo: 0x8c, hi: 0x8f},
3007 {value: 0x0008, lo: 0x90, hi: 0x99},
3008 {value: 0x0018, lo: 0x9a, hi: 0xaa},
3009 {value: 0x3308, lo: 0xab, hi: 0xb3},
3010 {value: 0x0018, lo: 0xb4, hi: 0xbc},
3011 {value: 0x0040, lo: 0xbd, hi: 0xbf},
3012 // Block 0x40, offset 0x23a
3013 {value: 0x0000, lo: 0x0b},
3014 {value: 0x3308, lo: 0x80, hi: 0x81},
3015 {value: 0x3008, lo: 0x82, hi: 0x82},
3016 {value: 0x0008, lo: 0x83, hi: 0xa0},
3017 {value: 0x3008, lo: 0xa1, hi: 0xa1},
3018 {value: 0x3308, lo: 0xa2, hi: 0xa5},
3019 {value: 0x3008, lo: 0xa6, hi: 0xa7},
3020 {value: 0x3308, lo: 0xa8, hi: 0xa9},
3021 {value: 0x3808, lo: 0xaa, hi: 0xaa},
3022 {value: 0x3b08, lo: 0xab, hi: 0xab},
3023 {value: 0x3308, lo: 0xac, hi: 0xad},
3024 {value: 0x0008, lo: 0xae, hi: 0xbf},
3025 // Block 0x41, offset 0x246
3026 {value: 0x0000, lo: 0x0b},
3027 {value: 0x0008, lo: 0x80, hi: 0xa5},
3028 {value: 0x3308, lo: 0xa6, hi: 0xa6},
3029 {value: 0x3008, lo: 0xa7, hi: 0xa7},
3030 {value: 0x3308, lo: 0xa8, hi: 0xa9},
3031 {value: 0x3008, lo: 0xaa, hi: 0xac},
3032 {value: 0x3308, lo: 0xad, hi: 0xad},
3033 {value: 0x3008, lo: 0xae, hi: 0xae},
3034 {value: 0x3308, lo: 0xaf, hi: 0xb1},
3035 {value: 0x3808, lo: 0xb2, hi: 0xb3},
3036 {value: 0x0040, lo: 0xb4, hi: 0xbb},
3037 {value: 0x0018, lo: 0xbc, hi: 0xbf},
3038 // Block 0x42, offset 0x252
3039 {value: 0x0000, lo: 0x07},
3040 {value: 0x0008, lo: 0x80, hi: 0xa3},
3041 {value: 0x3008, lo: 0xa4, hi: 0xab},
3042 {value: 0x3308, lo: 0xac, hi: 0xb3},
3043 {value: 0x3008, lo: 0xb4, hi: 0xb5},
3044 {value: 0x3308, lo: 0xb6, hi: 0xb7},
3045 {value: 0x0040, lo: 0xb8, hi: 0xba},
3046 {value: 0x0018, lo: 0xbb, hi: 0xbf},
3047 // Block 0x43, offset 0x25a
3048 {value: 0x0000, lo: 0x04},
3049 {value: 0x0008, lo: 0x80, hi: 0x89},
3050 {value: 0x0040, lo: 0x8a, hi: 0x8c},
3051 {value: 0x0008, lo: 0x8d, hi: 0xbd},
3052 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3053 // Block 0x44, offset 0x25f
3054 {value: 0x0000, lo: 0x09},
3055 {value: 0x0e29, lo: 0x80, hi: 0x80},
3056 {value: 0x0e41, lo: 0x81, hi: 0x81},
3057 {value: 0x0e59, lo: 0x82, hi: 0x82},
3058 {value: 0x0e71, lo: 0x83, hi: 0x83},
3059 {value: 0x0e89, lo: 0x84, hi: 0x85},
3060 {value: 0x0ea1, lo: 0x86, hi: 0x86},
3061 {value: 0x0eb9, lo: 0x87, hi: 0x87},
3062 {value: 0x057d, lo: 0x88, hi: 0x88},
3063 {value: 0x0040, lo: 0x89, hi: 0xbf},
3064 // Block 0x45, offset 0x269
3065 {value: 0x0000, lo: 0x10},
3066 {value: 0x0018, lo: 0x80, hi: 0x87},
3067 {value: 0x0040, lo: 0x88, hi: 0x8f},
3068 {value: 0x3308, lo: 0x90, hi: 0x92},
3069 {value: 0x0018, lo: 0x93, hi: 0x93},
3070 {value: 0x3308, lo: 0x94, hi: 0xa0},
3071 {value: 0x3008, lo: 0xa1, hi: 0xa1},
3072 {value: 0x3308, lo: 0xa2, hi: 0xa8},
3073 {value: 0x0008, lo: 0xa9, hi: 0xac},
3074 {value: 0x3308, lo: 0xad, hi: 0xad},
3075 {value: 0x0008, lo: 0xae, hi: 0xb1},
3076 {value: 0x3008, lo: 0xb2, hi: 0xb3},
3077 {value: 0x3308, lo: 0xb4, hi: 0xb4},
3078 {value: 0x0008, lo: 0xb5, hi: 0xb6},
3079 {value: 0x3008, lo: 0xb7, hi: 0xb7},
3080 {value: 0x3308, lo: 0xb8, hi: 0xb9},
3081 {value: 0x0040, lo: 0xba, hi: 0xbf},
3082 // Block 0x46, offset 0x27a
3083 {value: 0x0000, lo: 0x03},
3084 {value: 0x3308, lo: 0x80, hi: 0xb9},
3085 {value: 0x0040, lo: 0xba, hi: 0xba},
3086 {value: 0x3308, lo: 0xbb, hi: 0xbf},
3087 // Block 0x47, offset 0x27e
3088 {value: 0x0000, lo: 0x0a},
3089 {value: 0x0008, lo: 0x80, hi: 0x87},
3090 {value: 0xe045, lo: 0x88, hi: 0x8f},
3091 {value: 0x0008, lo: 0x90, hi: 0x95},
3092 {value: 0x0040, lo: 0x96, hi: 0x97},
3093 {value: 0xe045, lo: 0x98, hi: 0x9d},
3094 {value: 0x0040, lo: 0x9e, hi: 0x9f},
3095 {value: 0x0008, lo: 0xa0, hi: 0xa7},
3096 {value: 0xe045, lo: 0xa8, hi: 0xaf},
3097 {value: 0x0008, lo: 0xb0, hi: 0xb7},
3098 {value: 0xe045, lo: 0xb8, hi: 0xbf},
3099 // Block 0x48, offset 0x289
3100 {value: 0x0000, lo: 0x03},
3101 {value: 0x0040, lo: 0x80, hi: 0x8f},
3102 {value: 0x3318, lo: 0x90, hi: 0xb0},
3103 {value: 0x0040, lo: 0xb1, hi: 0xbf},
3104 // Block 0x49, offset 0x28d
3105 {value: 0x0000, lo: 0x08},
3106 {value: 0x0018, lo: 0x80, hi: 0x82},
3107 {value: 0x0040, lo: 0x83, hi: 0x83},
3108 {value: 0x0008, lo: 0x84, hi: 0x84},
3109 {value: 0x0018, lo: 0x85, hi: 0x88},
3110 {value: 0x24c1, lo: 0x89, hi: 0x89},
3111 {value: 0x0018, lo: 0x8a, hi: 0x8b},
3112 {value: 0x0040, lo: 0x8c, hi: 0x8f},
3113 {value: 0x0018, lo: 0x90, hi: 0xbf},
3114 // Block 0x4a, offset 0x296
3115 {value: 0x0000, lo: 0x07},
3116 {value: 0x0018, lo: 0x80, hi: 0xab},
3117 {value: 0x24f1, lo: 0xac, hi: 0xac},
3118 {value: 0x2529, lo: 0xad, hi: 0xad},
3119 {value: 0x0018, lo: 0xae, hi: 0xae},
3120 {value: 0x2579, lo: 0xaf, hi: 0xaf},
3121 {value: 0x25b1, lo: 0xb0, hi: 0xb0},
3122 {value: 0x0018, lo: 0xb1, hi: 0xbf},
3123 // Block 0x4b, offset 0x29e
3124 {value: 0x0000, lo: 0x05},
3125 {value: 0x0018, lo: 0x80, hi: 0x9f},
3126 {value: 0x0080, lo: 0xa0, hi: 0xa0},
3127 {value: 0x0018, lo: 0xa1, hi: 0xad},
3128 {value: 0x0080, lo: 0xae, hi: 0xaf},
3129 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3130 // Block 0x4c, offset 0x2a4
3131 {value: 0x0000, lo: 0x04},
3132 {value: 0x0018, lo: 0x80, hi: 0xa8},
3133 {value: 0x09c5, lo: 0xa9, hi: 0xa9},
3134 {value: 0x09e5, lo: 0xaa, hi: 0xaa},
3135 {value: 0x0018, lo: 0xab, hi: 0xbf},
3136 // Block 0x4d, offset 0x2a9
3137 {value: 0x0000, lo: 0x02},
3138 {value: 0x0018, lo: 0x80, hi: 0xa6},
3139 {value: 0x0040, lo: 0xa7, hi: 0xbf},
3140 // Block 0x4e, offset 0x2ac
3141 {value: 0x0000, lo: 0x03},
3142 {value: 0x0018, lo: 0x80, hi: 0x8b},
3143 {value: 0x28c1, lo: 0x8c, hi: 0x8c},
3144 {value: 0x0018, lo: 0x8d, hi: 0xbf},
3145 // Block 0x4f, offset 0x2b0
3146 {value: 0x0000, lo: 0x05},
3147 {value: 0x0018, lo: 0x80, hi: 0xb3},
3148 {value: 0x0e66, lo: 0xb4, hi: 0xb4},
3149 {value: 0x292a, lo: 0xb5, hi: 0xb5},
3150 {value: 0x0e86, lo: 0xb6, hi: 0xb6},
3151 {value: 0x0018, lo: 0xb7, hi: 0xbf},
3152 // Block 0x50, offset 0x2b6
3153 {value: 0x0000, lo: 0x03},
3154 {value: 0x0018, lo: 0x80, hi: 0x9b},
3155 {value: 0x2941, lo: 0x9c, hi: 0x9c},
3156 {value: 0x0018, lo: 0x9d, hi: 0xbf},
3157 // Block 0x51, offset 0x2ba
3158 {value: 0x0000, lo: 0x03},
3159 {value: 0x0018, lo: 0x80, hi: 0xb3},
3160 {value: 0x0040, lo: 0xb4, hi: 0xb5},
3161 {value: 0x0018, lo: 0xb6, hi: 0xbf},
3162 // Block 0x52, offset 0x2be
3163 {value: 0x0000, lo: 0x03},
3164 {value: 0x0018, lo: 0x80, hi: 0x95},
3165 {value: 0x0040, lo: 0x96, hi: 0x97},
3166 {value: 0x0018, lo: 0x98, hi: 0xbf},
3167 // Block 0x53, offset 0x2c2
3168 {value: 0x0000, lo: 0x04},
3169 {value: 0x0018, lo: 0x80, hi: 0x88},
3170 {value: 0x0040, lo: 0x89, hi: 0x89},
3171 {value: 0x0018, lo: 0x8a, hi: 0xbe},
3172 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3173 // Block 0x54, offset 0x2c7
3174 {value: 0x0000, lo: 0x05},
3175 {value: 0xe185, lo: 0x80, hi: 0x8f},
3176 {value: 0x03f5, lo: 0x90, hi: 0x9f},
3177 {value: 0x0ea5, lo: 0xa0, hi: 0xae},
3178 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3179 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3180 // Block 0x55, offset 0x2cd
3181 {value: 0x0000, lo: 0x07},
3182 {value: 0x0008, lo: 0x80, hi: 0xa5},
3183 {value: 0x0040, lo: 0xa6, hi: 0xa6},
3184 {value: 0x0008, lo: 0xa7, hi: 0xa7},
3185 {value: 0x0040, lo: 0xa8, hi: 0xac},
3186 {value: 0x0008, lo: 0xad, hi: 0xad},
3187 {value: 0x0040, lo: 0xae, hi: 0xaf},
3188 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3189 // Block 0x56, offset 0x2d5
3190 {value: 0x0000, lo: 0x06},
3191 {value: 0x0008, lo: 0x80, hi: 0xa7},
3192 {value: 0x0040, lo: 0xa8, hi: 0xae},
3193 {value: 0xe075, lo: 0xaf, hi: 0xaf},
3194 {value: 0x0018, lo: 0xb0, hi: 0xb0},
3195 {value: 0x0040, lo: 0xb1, hi: 0xbe},
3196 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
3197 // Block 0x57, offset 0x2dc
3198 {value: 0x0000, lo: 0x0a},
3199 {value: 0x0008, lo: 0x80, hi: 0x96},
3200 {value: 0x0040, lo: 0x97, hi: 0x9f},
3201 {value: 0x0008, lo: 0xa0, hi: 0xa6},
3202 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3203 {value: 0x0008, lo: 0xa8, hi: 0xae},
3204 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3205 {value: 0x0008, lo: 0xb0, hi: 0xb6},
3206 {value: 0x0040, lo: 0xb7, hi: 0xb7},
3207 {value: 0x0008, lo: 0xb8, hi: 0xbe},
3208 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3209 // Block 0x58, offset 0x2e7
3210 {value: 0x0000, lo: 0x09},
3211 {value: 0x0008, lo: 0x80, hi: 0x86},
3212 {value: 0x0040, lo: 0x87, hi: 0x87},
3213 {value: 0x0008, lo: 0x88, hi: 0x8e},
3214 {value: 0x0040, lo: 0x8f, hi: 0x8f},
3215 {value: 0x0008, lo: 0x90, hi: 0x96},
3216 {value: 0x0040, lo: 0x97, hi: 0x97},
3217 {value: 0x0008, lo: 0x98, hi: 0x9e},
3218 {value: 0x0040, lo: 0x9f, hi: 0x9f},
3219 {value: 0x3308, lo: 0xa0, hi: 0xbf},
3220 // Block 0x59, offset 0x2f1
3221 {value: 0x0000, lo: 0x03},
3222 {value: 0x0018, lo: 0x80, hi: 0xae},
3223 {value: 0x0008, lo: 0xaf, hi: 0xaf},
3224 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3225 // Block 0x5a, offset 0x2f5
3226 {value: 0x0000, lo: 0x02},
3227 {value: 0x0018, lo: 0x80, hi: 0x8e},
3228 {value: 0x0040, lo: 0x8f, hi: 0xbf},
3229 // Block 0x5b, offset 0x2f8
3230 {value: 0x0000, lo: 0x05},
3231 {value: 0x0018, lo: 0x80, hi: 0x99},
3232 {value: 0x0040, lo: 0x9a, hi: 0x9a},
3233 {value: 0x0018, lo: 0x9b, hi: 0x9e},
3234 {value: 0x0edd, lo: 0x9f, hi: 0x9f},
3235 {value: 0x0018, lo: 0xa0, hi: 0xbf},
3236 // Block 0x5c, offset 0x2fe
3237 {value: 0x0000, lo: 0x03},
3238 {value: 0x0018, lo: 0x80, hi: 0xb2},
3239 {value: 0x0efd, lo: 0xb3, hi: 0xb3},
3240 {value: 0x0040, lo: 0xb4, hi: 0xbf},
3241 // Block 0x5d, offset 0x302
3242 {value: 0x0020, lo: 0x01},
3243 {value: 0x0f1d, lo: 0x80, hi: 0xbf},
3244 // Block 0x5e, offset 0x304
3245 {value: 0x0020, lo: 0x02},
3246 {value: 0x171d, lo: 0x80, hi: 0x8f},
3247 {value: 0x18fd, lo: 0x90, hi: 0xbf},
3248 // Block 0x5f, offset 0x307
3249 {value: 0x0020, lo: 0x01},
3250 {value: 0x1efd, lo: 0x80, hi: 0xbf},
3251 // Block 0x60, offset 0x309
3252 {value: 0x0000, lo: 0x02},
3253 {value: 0x0040, lo: 0x80, hi: 0x80},
3254 {value: 0x0008, lo: 0x81, hi: 0xbf},
3255 // Block 0x61, offset 0x30c
3256 {value: 0x0000, lo: 0x09},
3257 {value: 0x0008, lo: 0x80, hi: 0x96},
3258 {value: 0x0040, lo: 0x97, hi: 0x98},
3259 {value: 0x3308, lo: 0x99, hi: 0x9a},
3260 {value: 0x29e2, lo: 0x9b, hi: 0x9b},
3261 {value: 0x2a0a, lo: 0x9c, hi: 0x9c},
3262 {value: 0x0008, lo: 0x9d, hi: 0x9e},
3263 {value: 0x2a31, lo: 0x9f, hi: 0x9f},
3264 {value: 0x0018, lo: 0xa0, hi: 0xa0},
3265 {value: 0x0008, lo: 0xa1, hi: 0xbf},
3266 // Block 0x62, offset 0x316
3267 {value: 0x0000, lo: 0x02},
3268 {value: 0x0008, lo: 0x80, hi: 0xbe},
3269 {value: 0x2a69, lo: 0xbf, hi: 0xbf},
3270 // Block 0x63, offset 0x319
3271 {value: 0x0000, lo: 0x0e},
3272 {value: 0x0040, lo: 0x80, hi: 0x84},
3273 {value: 0x0008, lo: 0x85, hi: 0xaf},
3274 {value: 0x0040, lo: 0xb0, hi: 0xb0},
3275 {value: 0x2a1d, lo: 0xb1, hi: 0xb1},
3276 {value: 0x2a3d, lo: 0xb2, hi: 0xb2},
3277 {value: 0x2a5d, lo: 0xb3, hi: 0xb3},
3278 {value: 0x2a7d, lo: 0xb4, hi: 0xb4},
3279 {value: 0x2a5d, lo: 0xb5, hi: 0xb5},
3280 {value: 0x2a9d, lo: 0xb6, hi: 0xb6},
3281 {value: 0x2abd, lo: 0xb7, hi: 0xb7},
3282 {value: 0x2add, lo: 0xb8, hi: 0xb9},
3283 {value: 0x2afd, lo: 0xba, hi: 0xbb},
3284 {value: 0x2b1d, lo: 0xbc, hi: 0xbd},
3285 {value: 0x2afd, lo: 0xbe, hi: 0xbf},
3286 // Block 0x64, offset 0x328
3287 {value: 0x0000, lo: 0x03},
3288 {value: 0x0018, lo: 0x80, hi: 0xa3},
3289 {value: 0x0040, lo: 0xa4, hi: 0xaf},
3290 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3291 // Block 0x65, offset 0x32c
3292 {value: 0x0030, lo: 0x04},
3293 {value: 0x2aa2, lo: 0x80, hi: 0x9d},
3294 {value: 0x305a, lo: 0x9e, hi: 0x9e},
3295 {value: 0x0040, lo: 0x9f, hi: 0x9f},
3296 {value: 0x30a2, lo: 0xa0, hi: 0xbf},
3297 // Block 0x66, offset 0x331
3298 {value: 0x0000, lo: 0x02},
3299 {value: 0x0008, lo: 0x80, hi: 0xaf},
3300 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3301 // Block 0x67, offset 0x334
3302 {value: 0x0000, lo: 0x03},
3303 {value: 0x0008, lo: 0x80, hi: 0x8c},
3304 {value: 0x0040, lo: 0x8d, hi: 0x8f},
3305 {value: 0x0018, lo: 0x90, hi: 0xbf},
3306 // Block 0x68, offset 0x338
3307 {value: 0x0000, lo: 0x04},
3308 {value: 0x0018, lo: 0x80, hi: 0x86},
3309 {value: 0x0040, lo: 0x87, hi: 0x8f},
3310 {value: 0x0008, lo: 0x90, hi: 0xbd},
3311 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3312 // Block 0x69, offset 0x33d
3313 {value: 0x0000, lo: 0x04},
3314 {value: 0x0008, lo: 0x80, hi: 0x8c},
3315 {value: 0x0018, lo: 0x8d, hi: 0x8f},
3316 {value: 0x0008, lo: 0x90, hi: 0xab},
3317 {value: 0x0040, lo: 0xac, hi: 0xbf},
3318 // Block 0x6a, offset 0x342
3319 {value: 0x0000, lo: 0x05},
3320 {value: 0x0008, lo: 0x80, hi: 0xa5},
3321 {value: 0x0018, lo: 0xa6, hi: 0xaf},
3322 {value: 0x3308, lo: 0xb0, hi: 0xb1},
3323 {value: 0x0018, lo: 0xb2, hi: 0xb7},
3324 {value: 0x0040, lo: 0xb8, hi: 0xbf},
3325 // Block 0x6b, offset 0x348
3326 {value: 0x0000, lo: 0x05},
3327 {value: 0x0040, lo: 0x80, hi: 0xb6},
3328 {value: 0x0008, lo: 0xb7, hi: 0xb7},
3329 {value: 0x2009, lo: 0xb8, hi: 0xb8},
3330 {value: 0x6e89, lo: 0xb9, hi: 0xb9},
3331 {value: 0x0008, lo: 0xba, hi: 0xbf},
3332 // Block 0x6c, offset 0x34e
3333 {value: 0x0000, lo: 0x0e},
3334 {value: 0x0008, lo: 0x80, hi: 0x81},
3335 {value: 0x3308, lo: 0x82, hi: 0x82},
3336 {value: 0x0008, lo: 0x83, hi: 0x85},
3337 {value: 0x3b08, lo: 0x86, hi: 0x86},
3338 {value: 0x0008, lo: 0x87, hi: 0x8a},
3339 {value: 0x3308, lo: 0x8b, hi: 0x8b},
3340 {value: 0x0008, lo: 0x8c, hi: 0xa2},
3341 {value: 0x3008, lo: 0xa3, hi: 0xa4},
3342 {value: 0x3308, lo: 0xa5, hi: 0xa6},
3343 {value: 0x3008, lo: 0xa7, hi: 0xa7},
3344 {value: 0x0018, lo: 0xa8, hi: 0xab},
3345 {value: 0x0040, lo: 0xac, hi: 0xaf},
3346 {value: 0x0018, lo: 0xb0, hi: 0xb9},
3347 {value: 0x0040, lo: 0xba, hi: 0xbf},
3348 // Block 0x6d, offset 0x35d
3349 {value: 0x0000, lo: 0x05},
3350 {value: 0x0208, lo: 0x80, hi: 0xb1},
3351 {value: 0x0108, lo: 0xb2, hi: 0xb2},
3352 {value: 0x0008, lo: 0xb3, hi: 0xb3},
3353 {value: 0x0018, lo: 0xb4, hi: 0xb7},
3354 {value: 0x0040, lo: 0xb8, hi: 0xbf},
3355 // Block 0x6e, offset 0x363
3356 {value: 0x0000, lo: 0x03},
3357 {value: 0x3008, lo: 0x80, hi: 0x81},
3358 {value: 0x0008, lo: 0x82, hi: 0xb3},
3359 {value: 0x3008, lo: 0xb4, hi: 0xbf},
3360 // Block 0x6f, offset 0x367
3361 {value: 0x0000, lo: 0x0e},
3362 {value: 0x3008, lo: 0x80, hi: 0x83},
3363 {value: 0x3b08, lo: 0x84, hi: 0x84},
3364 {value: 0x3308, lo: 0x85, hi: 0x85},
3365 {value: 0x0040, lo: 0x86, hi: 0x8d},
3366 {value: 0x0018, lo: 0x8e, hi: 0x8f},
3367 {value: 0x0008, lo: 0x90, hi: 0x99},
3368 {value: 0x0040, lo: 0x9a, hi: 0x9f},
3369 {value: 0x3308, lo: 0xa0, hi: 0xb1},
3370 {value: 0x0008, lo: 0xb2, hi: 0xb7},
3371 {value: 0x0018, lo: 0xb8, hi: 0xba},
3372 {value: 0x0008, lo: 0xbb, hi: 0xbb},
3373 {value: 0x0018, lo: 0xbc, hi: 0xbc},
3374 {value: 0x0008, lo: 0xbd, hi: 0xbe},
3375 {value: 0x3308, lo: 0xbf, hi: 0xbf},
3376 // Block 0x70, offset 0x376
3377 {value: 0x0000, lo: 0x04},
3378 {value: 0x0008, lo: 0x80, hi: 0xa5},
3379 {value: 0x3308, lo: 0xa6, hi: 0xad},
3380 {value: 0x0018, lo: 0xae, hi: 0xaf},
3381 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3382 // Block 0x71, offset 0x37b
3383 {value: 0x0000, lo: 0x07},
3384 {value: 0x0008, lo: 0x80, hi: 0x86},
3385 {value: 0x3308, lo: 0x87, hi: 0x91},
3386 {value: 0x3008, lo: 0x92, hi: 0x92},
3387 {value: 0x3808, lo: 0x93, hi: 0x93},
3388 {value: 0x0040, lo: 0x94, hi: 0x9e},
3389 {value: 0x0018, lo: 0x9f, hi: 0xbc},
3390 {value: 0x0040, lo: 0xbd, hi: 0xbf},
3391 // Block 0x72, offset 0x383
3392 {value: 0x0000, lo: 0x09},
3393 {value: 0x3308, lo: 0x80, hi: 0x82},
3394 {value: 0x3008, lo: 0x83, hi: 0x83},
3395 {value: 0x0008, lo: 0x84, hi: 0xb2},
3396 {value: 0x3308, lo: 0xb3, hi: 0xb3},
3397 {value: 0x3008, lo: 0xb4, hi: 0xb5},
3398 {value: 0x3308, lo: 0xb6, hi: 0xb9},
3399 {value: 0x3008, lo: 0xba, hi: 0xbb},
3400 {value: 0x3308, lo: 0xbc, hi: 0xbc},
3401 {value: 0x3008, lo: 0xbd, hi: 0xbf},
3402 // Block 0x73, offset 0x38d
3403 {value: 0x0000, lo: 0x0a},
3404 {value: 0x3808, lo: 0x80, hi: 0x80},
3405 {value: 0x0018, lo: 0x81, hi: 0x8d},
3406 {value: 0x0040, lo: 0x8e, hi: 0x8e},
3407 {value: 0x0008, lo: 0x8f, hi: 0x99},
3408 {value: 0x0040, lo: 0x9a, hi: 0x9d},
3409 {value: 0x0018, lo: 0x9e, hi: 0x9f},
3410 {value: 0x0008, lo: 0xa0, hi: 0xa4},
3411 {value: 0x3308, lo: 0xa5, hi: 0xa5},
3412 {value: 0x0008, lo: 0xa6, hi: 0xbe},
3413 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3414 // Block 0x74, offset 0x398
3415 {value: 0x0000, lo: 0x07},
3416 {value: 0x0008, lo: 0x80, hi: 0xa8},
3417 {value: 0x3308, lo: 0xa9, hi: 0xae},
3418 {value: 0x3008, lo: 0xaf, hi: 0xb0},
3419 {value: 0x3308, lo: 0xb1, hi: 0xb2},
3420 {value: 0x3008, lo: 0xb3, hi: 0xb4},
3421 {value: 0x3308, lo: 0xb5, hi: 0xb6},
3422 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3423 // Block 0x75, offset 0x3a0
3424 {value: 0x0000, lo: 0x10},
3425 {value: 0x0008, lo: 0x80, hi: 0x82},
3426 {value: 0x3308, lo: 0x83, hi: 0x83},
3427 {value: 0x0008, lo: 0x84, hi: 0x8b},
3428 {value: 0x3308, lo: 0x8c, hi: 0x8c},
3429 {value: 0x3008, lo: 0x8d, hi: 0x8d},
3430 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3431 {value: 0x0008, lo: 0x90, hi: 0x99},
3432 {value: 0x0040, lo: 0x9a, hi: 0x9b},
3433 {value: 0x0018, lo: 0x9c, hi: 0x9f},
3434 {value: 0x0008, lo: 0xa0, hi: 0xb6},
3435 {value: 0x0018, lo: 0xb7, hi: 0xb9},
3436 {value: 0x0008, lo: 0xba, hi: 0xba},
3437 {value: 0x3008, lo: 0xbb, hi: 0xbb},
3438 {value: 0x3308, lo: 0xbc, hi: 0xbc},
3439 {value: 0x3008, lo: 0xbd, hi: 0xbd},
3440 {value: 0x0008, lo: 0xbe, hi: 0xbf},
3441 // Block 0x76, offset 0x3b1
3442 {value: 0x0000, lo: 0x08},
3443 {value: 0x0008, lo: 0x80, hi: 0xaf},
3444 {value: 0x3308, lo: 0xb0, hi: 0xb0},
3445 {value: 0x0008, lo: 0xb1, hi: 0xb1},
3446 {value: 0x3308, lo: 0xb2, hi: 0xb4},
3447 {value: 0x0008, lo: 0xb5, hi: 0xb6},
3448 {value: 0x3308, lo: 0xb7, hi: 0xb8},
3449 {value: 0x0008, lo: 0xb9, hi: 0xbd},
3450 {value: 0x3308, lo: 0xbe, hi: 0xbf},
3451 // Block 0x77, offset 0x3ba
3452 {value: 0x0000, lo: 0x0f},
3453 {value: 0x0008, lo: 0x80, hi: 0x80},
3454 {value: 0x3308, lo: 0x81, hi: 0x81},
3455 {value: 0x0008, lo: 0x82, hi: 0x82},
3456 {value: 0x0040, lo: 0x83, hi: 0x9a},
3457 {value: 0x0008, lo: 0x9b, hi: 0x9d},
3458 {value: 0x0018, lo: 0x9e, hi: 0x9f},
3459 {value: 0x0008, lo: 0xa0, hi: 0xaa},
3460 {value: 0x3008, lo: 0xab, hi: 0xab},
3461 {value: 0x3308, lo: 0xac, hi: 0xad},
3462 {value: 0x3008, lo: 0xae, hi: 0xaf},
3463 {value: 0x0018, lo: 0xb0, hi: 0xb1},
3464 {value: 0x0008, lo: 0xb2, hi: 0xb4},
3465 {value: 0x3008, lo: 0xb5, hi: 0xb5},
3466 {value: 0x3b08, lo: 0xb6, hi: 0xb6},
3467 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3468 // Block 0x78, offset 0x3ca
3469 {value: 0x0000, lo: 0x0c},
3470 {value: 0x0040, lo: 0x80, hi: 0x80},
3471 {value: 0x0008, lo: 0x81, hi: 0x86},
3472 {value: 0x0040, lo: 0x87, hi: 0x88},
3473 {value: 0x0008, lo: 0x89, hi: 0x8e},
3474 {value: 0x0040, lo: 0x8f, hi: 0x90},
3475 {value: 0x0008, lo: 0x91, hi: 0x96},
3476 {value: 0x0040, lo: 0x97, hi: 0x9f},
3477 {value: 0x0008, lo: 0xa0, hi: 0xa6},
3478 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3479 {value: 0x0008, lo: 0xa8, hi: 0xae},
3480 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3481 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3482 // Block 0x79, offset 0x3d7
3483 {value: 0x0000, lo: 0x09},
3484 {value: 0x0008, lo: 0x80, hi: 0x9a},
3485 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3486 {value: 0x4465, lo: 0x9c, hi: 0x9c},
3487 {value: 0x447d, lo: 0x9d, hi: 0x9d},
3488 {value: 0x2971, lo: 0x9e, hi: 0x9e},
3489 {value: 0xe06d, lo: 0x9f, hi: 0x9f},
3490 {value: 0x0008, lo: 0xa0, hi: 0xa5},
3491 {value: 0x0040, lo: 0xa6, hi: 0xaf},
3492 {value: 0x4495, lo: 0xb0, hi: 0xbf},
3493 // Block 0x7a, offset 0x3e1
3494 {value: 0x0000, lo: 0x04},
3495 {value: 0x44b5, lo: 0x80, hi: 0x8f},
3496 {value: 0x44d5, lo: 0x90, hi: 0x9f},
3497 {value: 0x44f5, lo: 0xa0, hi: 0xaf},
3498 {value: 0x44d5, lo: 0xb0, hi: 0xbf},
3499 // Block 0x7b, offset 0x3e6
3500 {value: 0x0000, lo: 0x0c},
3501 {value: 0x0008, lo: 0x80, hi: 0xa2},
3502 {value: 0x3008, lo: 0xa3, hi: 0xa4},
3503 {value: 0x3308, lo: 0xa5, hi: 0xa5},
3504 {value: 0x3008, lo: 0xa6, hi: 0xa7},
3505 {value: 0x3308, lo: 0xa8, hi: 0xa8},
3506 {value: 0x3008, lo: 0xa9, hi: 0xaa},
3507 {value: 0x0018, lo: 0xab, hi: 0xab},
3508 {value: 0x3008, lo: 0xac, hi: 0xac},
3509 {value: 0x3b08, lo: 0xad, hi: 0xad},
3510 {value: 0x0040, lo: 0xae, hi: 0xaf},
3511 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3512 {value: 0x0040, lo: 0xba, hi: 0xbf},
3513 // Block 0x7c, offset 0x3f3
3514 {value: 0x0000, lo: 0x03},
3515 {value: 0x0008, lo: 0x80, hi: 0xa3},
3516 {value: 0x0040, lo: 0xa4, hi: 0xaf},
3517 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3518 // Block 0x7d, offset 0x3f7
3519 {value: 0x0000, lo: 0x04},
3520 {value: 0x0018, lo: 0x80, hi: 0x86},
3521 {value: 0x0040, lo: 0x87, hi: 0x8a},
3522 {value: 0x0018, lo: 0x8b, hi: 0xbb},
3523 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3524 // Block 0x7e, offset 0x3fc
3525 {value: 0x0020, lo: 0x01},
3526 {value: 0x4515, lo: 0x80, hi: 0xbf},
3527 // Block 0x7f, offset 0x3fe
3528 {value: 0x0020, lo: 0x03},
3529 {value: 0x4d15, lo: 0x80, hi: 0x94},
3530 {value: 0x4ad5, lo: 0x95, hi: 0x95},
3531 {value: 0x4fb5, lo: 0x96, hi: 0xbf},
3532 // Block 0x80, offset 0x402
3533 {value: 0x0020, lo: 0x01},
3534 {value: 0x54f5, lo: 0x80, hi: 0xbf},
3535 // Block 0x81, offset 0x404
3536 {value: 0x0020, lo: 0x03},
3537 {value: 0x5cf5, lo: 0x80, hi: 0x84},
3538 {value: 0x5655, lo: 0x85, hi: 0x85},
3539 {value: 0x5d95, lo: 0x86, hi: 0xbf},
3540 // Block 0x82, offset 0x408
3541 {value: 0x0020, lo: 0x08},
3542 {value: 0x6b55, lo: 0x80, hi: 0x8f},
3543 {value: 0x6d15, lo: 0x90, hi: 0x90},
3544 {value: 0x6d55, lo: 0x91, hi: 0xab},
3545 {value: 0x6ea1, lo: 0xac, hi: 0xac},
3546 {value: 0x70b5, lo: 0xad, hi: 0xad},
3547 {value: 0x0040, lo: 0xae, hi: 0xae},
3548 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3549 {value: 0x70d5, lo: 0xb0, hi: 0xbf},
3550 // Block 0x83, offset 0x411
3551 {value: 0x0020, lo: 0x05},
3552 {value: 0x72d5, lo: 0x80, hi: 0xad},
3553 {value: 0x6535, lo: 0xae, hi: 0xae},
3554 {value: 0x7895, lo: 0xaf, hi: 0xb5},
3555 {value: 0x6f55, lo: 0xb6, hi: 0xb6},
3556 {value: 0x7975, lo: 0xb7, hi: 0xbf},
3557 // Block 0x84, offset 0x417
3558 {value: 0x0028, lo: 0x03},
3559 {value: 0x7c21, lo: 0x80, hi: 0x82},
3560 {value: 0x7be1, lo: 0x83, hi: 0x83},
3561 {value: 0x7c99, lo: 0x84, hi: 0xbf},
3562 // Block 0x85, offset 0x41b
3563 {value: 0x0038, lo: 0x0f},
3564 {value: 0x9db1, lo: 0x80, hi: 0x83},
3565 {value: 0x9e59, lo: 0x84, hi: 0x85},
3566 {value: 0x9e91, lo: 0x86, hi: 0x87},
3567 {value: 0x9ec9, lo: 0x88, hi: 0x8f},
3568 {value: 0x0040, lo: 0x90, hi: 0x90},
3569 {value: 0x0040, lo: 0x91, hi: 0x91},
3570 {value: 0xa089, lo: 0x92, hi: 0x97},
3571 {value: 0xa1a1, lo: 0x98, hi: 0x9c},
3572 {value: 0xa281, lo: 0x9d, hi: 0xb3},
3573 {value: 0x9d41, lo: 0xb4, hi: 0xb4},
3574 {value: 0x9db1, lo: 0xb5, hi: 0xb5},
3575 {value: 0xa789, lo: 0xb6, hi: 0xbb},
3576 {value: 0xa869, lo: 0xbc, hi: 0xbc},
3577 {value: 0xa7f9, lo: 0xbd, hi: 0xbd},
3578 {value: 0xa8d9, lo: 0xbe, hi: 0xbf},
3579 // Block 0x86, offset 0x42b
3580 {value: 0x0000, lo: 0x09},
3581 {value: 0x0008, lo: 0x80, hi: 0x8b},
3582 {value: 0x0040, lo: 0x8c, hi: 0x8c},
3583 {value: 0x0008, lo: 0x8d, hi: 0xa6},
3584 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3585 {value: 0x0008, lo: 0xa8, hi: 0xba},
3586 {value: 0x0040, lo: 0xbb, hi: 0xbb},
3587 {value: 0x0008, lo: 0xbc, hi: 0xbd},
3588 {value: 0x0040, lo: 0xbe, hi: 0xbe},
3589 {value: 0x0008, lo: 0xbf, hi: 0xbf},
3590 // Block 0x87, offset 0x435
3591 {value: 0x0000, lo: 0x04},
3592 {value: 0x0008, lo: 0x80, hi: 0x8d},
3593 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3594 {value: 0x0008, lo: 0x90, hi: 0x9d},
3595 {value: 0x0040, lo: 0x9e, hi: 0xbf},
3596 // Block 0x88, offset 0x43a
3597 {value: 0x0000, lo: 0x02},
3598 {value: 0x0008, lo: 0x80, hi: 0xba},
3599 {value: 0x0040, lo: 0xbb, hi: 0xbf},
3600 // Block 0x89, offset 0x43d
3601 {value: 0x0000, lo: 0x05},
3602 {value: 0x0018, lo: 0x80, hi: 0x82},
3603 {value: 0x0040, lo: 0x83, hi: 0x86},
3604 {value: 0x0018, lo: 0x87, hi: 0xb3},
3605 {value: 0x0040, lo: 0xb4, hi: 0xb6},
3606 {value: 0x0018, lo: 0xb7, hi: 0xbf},
3607 // Block 0x8a, offset 0x443
3608 {value: 0x0000, lo: 0x06},
3609 {value: 0x0018, lo: 0x80, hi: 0x8e},
3610 {value: 0x0040, lo: 0x8f, hi: 0x8f},
3611 {value: 0x0018, lo: 0x90, hi: 0x9b},
3612 {value: 0x0040, lo: 0x9c, hi: 0x9f},
3613 {value: 0x0018, lo: 0xa0, hi: 0xa0},
3614 {value: 0x0040, lo: 0xa1, hi: 0xbf},
3615 // Block 0x8b, offset 0x44a
3616 {value: 0x0000, lo: 0x04},
3617 {value: 0x0040, lo: 0x80, hi: 0x8f},
3618 {value: 0x0018, lo: 0x90, hi: 0xbc},
3619 {value: 0x3308, lo: 0xbd, hi: 0xbd},
3620 {value: 0x0040, lo: 0xbe, hi: 0xbf},
3621 // Block 0x8c, offset 0x44f
3622 {value: 0x0000, lo: 0x03},
3623 {value: 0x0008, lo: 0x80, hi: 0x9c},
3624 {value: 0x0040, lo: 0x9d, hi: 0x9f},
3625 {value: 0x0008, lo: 0xa0, hi: 0xbf},
3626 // Block 0x8d, offset 0x453
3627 {value: 0x0000, lo: 0x05},
3628 {value: 0x0008, lo: 0x80, hi: 0x90},
3629 {value: 0x0040, lo: 0x91, hi: 0x9f},
3630 {value: 0x3308, lo: 0xa0, hi: 0xa0},
3631 {value: 0x0018, lo: 0xa1, hi: 0xbb},
3632 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3633 // Block 0x8e, offset 0x459
3634 {value: 0x0000, lo: 0x04},
3635 {value: 0x0008, lo: 0x80, hi: 0x9f},
3636 {value: 0x0018, lo: 0xa0, hi: 0xa3},
3637 {value: 0x0040, lo: 0xa4, hi: 0xac},
3638 {value: 0x0008, lo: 0xad, hi: 0xbf},
3639 // Block 0x8f, offset 0x45e
3640 {value: 0x0000, lo: 0x08},
3641 {value: 0x0008, lo: 0x80, hi: 0x80},
3642 {value: 0x0018, lo: 0x81, hi: 0x81},
3643 {value: 0x0008, lo: 0x82, hi: 0x89},
3644 {value: 0x0018, lo: 0x8a, hi: 0x8a},
3645 {value: 0x0040, lo: 0x8b, hi: 0x8f},
3646 {value: 0x0008, lo: 0x90, hi: 0xb5},
3647 {value: 0x3308, lo: 0xb6, hi: 0xba},
3648 {value: 0x0040, lo: 0xbb, hi: 0xbf},
3649 // Block 0x90, offset 0x467
3650 {value: 0x0000, lo: 0x04},
3651 {value: 0x0008, lo: 0x80, hi: 0x9d},
3652 {value: 0x0040, lo: 0x9e, hi: 0x9e},
3653 {value: 0x0018, lo: 0x9f, hi: 0x9f},
3654 {value: 0x0008, lo: 0xa0, hi: 0xbf},
3655 // Block 0x91, offset 0x46c
3656 {value: 0x0000, lo: 0x05},
3657 {value: 0x0008, lo: 0x80, hi: 0x83},
3658 {value: 0x0040, lo: 0x84, hi: 0x87},
3659 {value: 0x0008, lo: 0x88, hi: 0x8f},
3660 {value: 0x0018, lo: 0x90, hi: 0x95},
3661 {value: 0x0040, lo: 0x96, hi: 0xbf},
3662 // Block 0x92, offset 0x472
3663 {value: 0x0000, lo: 0x06},
3664 {value: 0xe145, lo: 0x80, hi: 0x87},
3665 {value: 0xe1c5, lo: 0x88, hi: 0x8f},
3666 {value: 0xe145, lo: 0x90, hi: 0x97},
3667 {value: 0x8ad5, lo: 0x98, hi: 0x9f},
3668 {value: 0x8aed, lo: 0xa0, hi: 0xa7},
3669 {value: 0x0008, lo: 0xa8, hi: 0xbf},
3670 // Block 0x93, offset 0x479
3671 {value: 0x0000, lo: 0x06},
3672 {value: 0x0008, lo: 0x80, hi: 0x9d},
3673 {value: 0x0040, lo: 0x9e, hi: 0x9f},
3674 {value: 0x0008, lo: 0xa0, hi: 0xa9},
3675 {value: 0x0040, lo: 0xaa, hi: 0xaf},
3676 {value: 0x8aed, lo: 0xb0, hi: 0xb7},
3677 {value: 0x8ad5, lo: 0xb8, hi: 0xbf},
3678 // Block 0x94, offset 0x480
3679 {value: 0x0000, lo: 0x06},
3680 {value: 0xe145, lo: 0x80, hi: 0x87},
3681 {value: 0xe1c5, lo: 0x88, hi: 0x8f},
3682 {value: 0xe145, lo: 0x90, hi: 0x93},
3683 {value: 0x0040, lo: 0x94, hi: 0x97},
3684 {value: 0x0008, lo: 0x98, hi: 0xbb},
3685 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3686 // Block 0x95, offset 0x487
3687 {value: 0x0000, lo: 0x03},
3688 {value: 0x0008, lo: 0x80, hi: 0xa7},
3689 {value: 0x0040, lo: 0xa8, hi: 0xaf},
3690 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3691 // Block 0x96, offset 0x48b
3692 {value: 0x0000, lo: 0x04},
3693 {value: 0x0008, lo: 0x80, hi: 0xa3},
3694 {value: 0x0040, lo: 0xa4, hi: 0xae},
3695 {value: 0x0018, lo: 0xaf, hi: 0xaf},
3696 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3697 // Block 0x97, offset 0x490
3698 {value: 0x0000, lo: 0x02},
3699 {value: 0x0008, lo: 0x80, hi: 0xb6},
3700 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3701 // Block 0x98, offset 0x493
3702 {value: 0x0000, lo: 0x04},
3703 {value: 0x0008, lo: 0x80, hi: 0x95},
3704 {value: 0x0040, lo: 0x96, hi: 0x9f},
3705 {value: 0x0008, lo: 0xa0, hi: 0xa7},
3706 {value: 0x0040, lo: 0xa8, hi: 0xbf},
3707 // Block 0x99, offset 0x498
3708 {value: 0x0000, lo: 0x0b},
3709 {value: 0x0808, lo: 0x80, hi: 0x85},
3710 {value: 0x0040, lo: 0x86, hi: 0x87},
3711 {value: 0x0808, lo: 0x88, hi: 0x88},
3712 {value: 0x0040, lo: 0x89, hi: 0x89},
3713 {value: 0x0808, lo: 0x8a, hi: 0xb5},
3714 {value: 0x0040, lo: 0xb6, hi: 0xb6},
3715 {value: 0x0808, lo: 0xb7, hi: 0xb8},
3716 {value: 0x0040, lo: 0xb9, hi: 0xbb},
3717 {value: 0x0808, lo: 0xbc, hi: 0xbc},
3718 {value: 0x0040, lo: 0xbd, hi: 0xbe},
3719 {value: 0x0808, lo: 0xbf, hi: 0xbf},
3720 // Block 0x9a, offset 0x4a4
3721 {value: 0x0000, lo: 0x05},
3722 {value: 0x0808, lo: 0x80, hi: 0x95},
3723 {value: 0x0040, lo: 0x96, hi: 0x96},
3724 {value: 0x0818, lo: 0x97, hi: 0x9f},
3725 {value: 0x0808, lo: 0xa0, hi: 0xb6},
3726 {value: 0x0818, lo: 0xb7, hi: 0xbf},
3727 // Block 0x9b, offset 0x4aa
3728 {value: 0x0000, lo: 0x04},
3729 {value: 0x0808, lo: 0x80, hi: 0x9e},
3730 {value: 0x0040, lo: 0x9f, hi: 0xa6},
3731 {value: 0x0818, lo: 0xa7, hi: 0xaf},
3732 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3733 // Block 0x9c, offset 0x4af
3734 {value: 0x0000, lo: 0x06},
3735 {value: 0x0040, lo: 0x80, hi: 0x9f},
3736 {value: 0x0808, lo: 0xa0, hi: 0xb2},
3737 {value: 0x0040, lo: 0xb3, hi: 0xb3},
3738 {value: 0x0808, lo: 0xb4, hi: 0xb5},
3739 {value: 0x0040, lo: 0xb6, hi: 0xba},
3740 {value: 0x0818, lo: 0xbb, hi: 0xbf},
3741 // Block 0x9d, offset 0x4b6
3742 {value: 0x0000, lo: 0x07},
3743 {value: 0x0808, lo: 0x80, hi: 0x95},
3744 {value: 0x0818, lo: 0x96, hi: 0x9b},
3745 {value: 0x0040, lo: 0x9c, hi: 0x9e},
3746 {value: 0x0018, lo: 0x9f, hi: 0x9f},
3747 {value: 0x0808, lo: 0xa0, hi: 0xb9},
3748 {value: 0x0040, lo: 0xba, hi: 0xbe},
3749 {value: 0x0818, lo: 0xbf, hi: 0xbf},
3750 // Block 0x9e, offset 0x4be
3751 {value: 0x0000, lo: 0x04},
3752 {value: 0x0808, lo: 0x80, hi: 0xb7},
3753 {value: 0x0040, lo: 0xb8, hi: 0xbb},
3754 {value: 0x0818, lo: 0xbc, hi: 0xbd},
3755 {value: 0x0808, lo: 0xbe, hi: 0xbf},
3756 // Block 0x9f, offset 0x4c3
3757 {value: 0x0000, lo: 0x03},
3758 {value: 0x0818, lo: 0x80, hi: 0x8f},
3759 {value: 0x0040, lo: 0x90, hi: 0x91},
3760 {value: 0x0818, lo: 0x92, hi: 0xbf},
3761 // Block 0xa0, offset 0x4c7
3762 {value: 0x0000, lo: 0x0f},
3763 {value: 0x0808, lo: 0x80, hi: 0x80},
3764 {value: 0x3308, lo: 0x81, hi: 0x83},
3765 {value: 0x0040, lo: 0x84, hi: 0x84},
3766 {value: 0x3308, lo: 0x85, hi: 0x86},
3767 {value: 0x0040, lo: 0x87, hi: 0x8b},
3768 {value: 0x3308, lo: 0x8c, hi: 0x8f},
3769 {value: 0x0808, lo: 0x90, hi: 0x93},
3770 {value: 0x0040, lo: 0x94, hi: 0x94},
3771 {value: 0x0808, lo: 0x95, hi: 0x97},
3772 {value: 0x0040, lo: 0x98, hi: 0x98},
3773 {value: 0x0808, lo: 0x99, hi: 0xb5},
3774 {value: 0x0040, lo: 0xb6, hi: 0xb7},
3775 {value: 0x3308, lo: 0xb8, hi: 0xba},
3776 {value: 0x0040, lo: 0xbb, hi: 0xbe},
3777 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
3778 // Block 0xa1, offset 0x4d7
3779 {value: 0x0000, lo: 0x06},
3780 {value: 0x0818, lo: 0x80, hi: 0x88},
3781 {value: 0x0040, lo: 0x89, hi: 0x8f},
3782 {value: 0x0818, lo: 0x90, hi: 0x98},
3783 {value: 0x0040, lo: 0x99, hi: 0x9f},
3784 {value: 0x0808, lo: 0xa0, hi: 0xbc},
3785 {value: 0x0818, lo: 0xbd, hi: 0xbf},
3786 // Block 0xa2, offset 0x4de
3787 {value: 0x0000, lo: 0x03},
3788 {value: 0x0808, lo: 0x80, hi: 0x9c},
3789 {value: 0x0818, lo: 0x9d, hi: 0x9f},
3790 {value: 0x0040, lo: 0xa0, hi: 0xbf},
3791 // Block 0xa3, offset 0x4e2
3792 {value: 0x0000, lo: 0x03},
3793 {value: 0x0808, lo: 0x80, hi: 0xb5},
3794 {value: 0x0040, lo: 0xb6, hi: 0xb8},
3795 {value: 0x0018, lo: 0xb9, hi: 0xbf},
3796 // Block 0xa4, offset 0x4e6
3797 {value: 0x0000, lo: 0x06},
3798 {value: 0x0808, lo: 0x80, hi: 0x95},
3799 {value: 0x0040, lo: 0x96, hi: 0x97},
3800 {value: 0x0818, lo: 0x98, hi: 0x9f},
3801 {value: 0x0808, lo: 0xa0, hi: 0xb2},
3802 {value: 0x0040, lo: 0xb3, hi: 0xb7},
3803 {value: 0x0818, lo: 0xb8, hi: 0xbf},
3804 // Block 0xa5, offset 0x4ed
3805 {value: 0x0000, lo: 0x01},
3806 {value: 0x0808, lo: 0x80, hi: 0xbf},
3807 // Block 0xa6, offset 0x4ef
3808 {value: 0x0000, lo: 0x02},
3809 {value: 0x0808, lo: 0x80, hi: 0x88},
3810 {value: 0x0040, lo: 0x89, hi: 0xbf},
3811 // Block 0xa7, offset 0x4f2
3812 {value: 0x0000, lo: 0x02},
3813 {value: 0x03dd, lo: 0x80, hi: 0xb2},
3814 {value: 0x0040, lo: 0xb3, hi: 0xbf},
3815 // Block 0xa8, offset 0x4f5
3816 {value: 0x0000, lo: 0x03},
3817 {value: 0x0808, lo: 0x80, hi: 0xb2},
3818 {value: 0x0040, lo: 0xb3, hi: 0xb9},
3819 {value: 0x0818, lo: 0xba, hi: 0xbf},
3820 // Block 0xa9, offset 0x4f9
3821 {value: 0x0000, lo: 0x08},
3822 {value: 0x0908, lo: 0x80, hi: 0x80},
3823 {value: 0x0a08, lo: 0x81, hi: 0xa1},
3824 {value: 0x0c08, lo: 0xa2, hi: 0xa2},
3825 {value: 0x0a08, lo: 0xa3, hi: 0xa3},
3826 {value: 0x3308, lo: 0xa4, hi: 0xa7},
3827 {value: 0x0040, lo: 0xa8, hi: 0xaf},
3828 {value: 0x0808, lo: 0xb0, hi: 0xb9},
3829 {value: 0x0040, lo: 0xba, hi: 0xbf},
3830 // Block 0xaa, offset 0x502
3831 {value: 0x0000, lo: 0x03},
3832 {value: 0x0040, lo: 0x80, hi: 0x9f},
3833 {value: 0x0818, lo: 0xa0, hi: 0xbe},
3834 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3835 // Block 0xab, offset 0x506
3836 {value: 0x0000, lo: 0x07},
3837 {value: 0x0808, lo: 0x80, hi: 0x9c},
3838 {value: 0x0818, lo: 0x9d, hi: 0xa6},
3839 {value: 0x0808, lo: 0xa7, hi: 0xa7},
3840 {value: 0x0040, lo: 0xa8, hi: 0xaf},
3841 {value: 0x0a08, lo: 0xb0, hi: 0xb2},
3842 {value: 0x0c08, lo: 0xb3, hi: 0xb3},
3843 {value: 0x0a08, lo: 0xb4, hi: 0xbf},
3844 // Block 0xac, offset 0x50e
3845 {value: 0x0000, lo: 0x07},
3846 {value: 0x0a08, lo: 0x80, hi: 0x84},
3847 {value: 0x0808, lo: 0x85, hi: 0x85},
3848 {value: 0x3308, lo: 0x86, hi: 0x90},
3849 {value: 0x0a18, lo: 0x91, hi: 0x93},
3850 {value: 0x0c18, lo: 0x94, hi: 0x94},
3851 {value: 0x0818, lo: 0x95, hi: 0x99},
3852 {value: 0x0040, lo: 0x9a, hi: 0xbf},
3853 // Block 0xad, offset 0x516
3854 {value: 0x0000, lo: 0x05},
3855 {value: 0x3008, lo: 0x80, hi: 0x80},
3856 {value: 0x3308, lo: 0x81, hi: 0x81},
3857 {value: 0x3008, lo: 0x82, hi: 0x82},
3858 {value: 0x0008, lo: 0x83, hi: 0xb7},
3859 {value: 0x3308, lo: 0xb8, hi: 0xbf},
3860 // Block 0xae, offset 0x51c
3861 {value: 0x0000, lo: 0x08},
3862 {value: 0x3308, lo: 0x80, hi: 0x85},
3863 {value: 0x3b08, lo: 0x86, hi: 0x86},
3864 {value: 0x0018, lo: 0x87, hi: 0x8d},
3865 {value: 0x0040, lo: 0x8e, hi: 0x91},
3866 {value: 0x0018, lo: 0x92, hi: 0xa5},
3867 {value: 0x0008, lo: 0xa6, hi: 0xaf},
3868 {value: 0x0040, lo: 0xb0, hi: 0xbe},
3869 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
3870 // Block 0xaf, offset 0x525
3871 {value: 0x0000, lo: 0x0b},
3872 {value: 0x3308, lo: 0x80, hi: 0x81},
3873 {value: 0x3008, lo: 0x82, hi: 0x82},
3874 {value: 0x0008, lo: 0x83, hi: 0xaf},
3875 {value: 0x3008, lo: 0xb0, hi: 0xb2},
3876 {value: 0x3308, lo: 0xb3, hi: 0xb6},
3877 {value: 0x3008, lo: 0xb7, hi: 0xb8},
3878 {value: 0x3b08, lo: 0xb9, hi: 0xb9},
3879 {value: 0x3308, lo: 0xba, hi: 0xba},
3880 {value: 0x0018, lo: 0xbb, hi: 0xbc},
3881 {value: 0x0040, lo: 0xbd, hi: 0xbd},
3882 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3883 // Block 0xb0, offset 0x531
3884 {value: 0x0000, lo: 0x06},
3885 {value: 0x0018, lo: 0x80, hi: 0x81},
3886 {value: 0x0040, lo: 0x82, hi: 0x8f},
3887 {value: 0x0008, lo: 0x90, hi: 0xa8},
3888 {value: 0x0040, lo: 0xa9, hi: 0xaf},
3889 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3890 {value: 0x0040, lo: 0xba, hi: 0xbf},
3891 // Block 0xb1, offset 0x538
3892 {value: 0x0000, lo: 0x08},
3893 {value: 0x3308, lo: 0x80, hi: 0x82},
3894 {value: 0x0008, lo: 0x83, hi: 0xa6},
3895 {value: 0x3308, lo: 0xa7, hi: 0xab},
3896 {value: 0x3008, lo: 0xac, hi: 0xac},
3897 {value: 0x3308, lo: 0xad, hi: 0xb2},
3898 {value: 0x3b08, lo: 0xb3, hi: 0xb4},
3899 {value: 0x0040, lo: 0xb5, hi: 0xb5},
3900 {value: 0x0008, lo: 0xb6, hi: 0xbf},
3901 // Block 0xb2, offset 0x541
3902 {value: 0x0000, lo: 0x09},
3903 {value: 0x0018, lo: 0x80, hi: 0x83},
3904 {value: 0x0008, lo: 0x84, hi: 0x84},
3905 {value: 0x3008, lo: 0x85, hi: 0x86},
3906 {value: 0x0040, lo: 0x87, hi: 0x8f},
3907 {value: 0x0008, lo: 0x90, hi: 0xb2},
3908 {value: 0x3308, lo: 0xb3, hi: 0xb3},
3909 {value: 0x0018, lo: 0xb4, hi: 0xb5},
3910 {value: 0x0008, lo: 0xb6, hi: 0xb6},
3911 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3912 // Block 0xb3, offset 0x54b
3913 {value: 0x0000, lo: 0x06},
3914 {value: 0x3308, lo: 0x80, hi: 0x81},
3915 {value: 0x3008, lo: 0x82, hi: 0x82},
3916 {value: 0x0008, lo: 0x83, hi: 0xb2},
3917 {value: 0x3008, lo: 0xb3, hi: 0xb5},
3918 {value: 0x3308, lo: 0xb6, hi: 0xbe},
3919 {value: 0x3008, lo: 0xbf, hi: 0xbf},
3920 // Block 0xb4, offset 0x552
3921 {value: 0x0000, lo: 0x0d},
3922 {value: 0x3808, lo: 0x80, hi: 0x80},
3923 {value: 0x0008, lo: 0x81, hi: 0x84},
3924 {value: 0x0018, lo: 0x85, hi: 0x88},
3925 {value: 0x3308, lo: 0x89, hi: 0x8c},
3926 {value: 0x0018, lo: 0x8d, hi: 0x8d},
3927 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3928 {value: 0x0008, lo: 0x90, hi: 0x9a},
3929 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3930 {value: 0x0008, lo: 0x9c, hi: 0x9c},
3931 {value: 0x0018, lo: 0x9d, hi: 0x9f},
3932 {value: 0x0040, lo: 0xa0, hi: 0xa0},
3933 {value: 0x0018, lo: 0xa1, hi: 0xb4},
3934 {value: 0x0040, lo: 0xb5, hi: 0xbf},
3935 // Block 0xb5, offset 0x560
3936 {value: 0x0000, lo: 0x0c},
3937 {value: 0x0008, lo: 0x80, hi: 0x91},
3938 {value: 0x0040, lo: 0x92, hi: 0x92},
3939 {value: 0x0008, lo: 0x93, hi: 0xab},
3940 {value: 0x3008, lo: 0xac, hi: 0xae},
3941 {value: 0x3308, lo: 0xaf, hi: 0xb1},
3942 {value: 0x3008, lo: 0xb2, hi: 0xb3},
3943 {value: 0x3308, lo: 0xb4, hi: 0xb4},
3944 {value: 0x3808, lo: 0xb5, hi: 0xb5},
3945 {value: 0x3308, lo: 0xb6, hi: 0xb7},
3946 {value: 0x0018, lo: 0xb8, hi: 0xbd},
3947 {value: 0x3308, lo: 0xbe, hi: 0xbe},
3948 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3949 // Block 0xb6, offset 0x56d
3950 {value: 0x0000, lo: 0x0c},
3951 {value: 0x0008, lo: 0x80, hi: 0x86},
3952 {value: 0x0040, lo: 0x87, hi: 0x87},
3953 {value: 0x0008, lo: 0x88, hi: 0x88},
3954 {value: 0x0040, lo: 0x89, hi: 0x89},
3955 {value: 0x0008, lo: 0x8a, hi: 0x8d},
3956 {value: 0x0040, lo: 0x8e, hi: 0x8e},
3957 {value: 0x0008, lo: 0x8f, hi: 0x9d},
3958 {value: 0x0040, lo: 0x9e, hi: 0x9e},
3959 {value: 0x0008, lo: 0x9f, hi: 0xa8},
3960 {value: 0x0018, lo: 0xa9, hi: 0xa9},
3961 {value: 0x0040, lo: 0xaa, hi: 0xaf},
3962 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3963 // Block 0xb7, offset 0x57a
3964 {value: 0x0000, lo: 0x08},
3965 {value: 0x0008, lo: 0x80, hi: 0x9e},
3966 {value: 0x3308, lo: 0x9f, hi: 0x9f},
3967 {value: 0x3008, lo: 0xa0, hi: 0xa2},
3968 {value: 0x3308, lo: 0xa3, hi: 0xa9},
3969 {value: 0x3b08, lo: 0xaa, hi: 0xaa},
3970 {value: 0x0040, lo: 0xab, hi: 0xaf},
3971 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3972 {value: 0x0040, lo: 0xba, hi: 0xbf},
3973 // Block 0xb8, offset 0x583
3974 {value: 0x0000, lo: 0x03},
3975 {value: 0x0008, lo: 0x80, hi: 0xb4},
3976 {value: 0x3008, lo: 0xb5, hi: 0xb7},
3977 {value: 0x3308, lo: 0xb8, hi: 0xbf},
3978 // Block 0xb9, offset 0x587
3979 {value: 0x0000, lo: 0x0e},
3980 {value: 0x3008, lo: 0x80, hi: 0x81},
3981 {value: 0x3b08, lo: 0x82, hi: 0x82},
3982 {value: 0x3308, lo: 0x83, hi: 0x84},
3983 {value: 0x3008, lo: 0x85, hi: 0x85},
3984 {value: 0x3308, lo: 0x86, hi: 0x86},
3985 {value: 0x0008, lo: 0x87, hi: 0x8a},
3986 {value: 0x0018, lo: 0x8b, hi: 0x8f},
3987 {value: 0x0008, lo: 0x90, hi: 0x99},
3988 {value: 0x0040, lo: 0x9a, hi: 0x9a},
3989 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3990 {value: 0x0040, lo: 0x9c, hi: 0x9c},
3991 {value: 0x0018, lo: 0x9d, hi: 0x9d},
3992 {value: 0x3308, lo: 0x9e, hi: 0x9e},
3993 {value: 0x0040, lo: 0x9f, hi: 0xbf},
3994 // Block 0xba, offset 0x596
3995 {value: 0x0000, lo: 0x07},
3996 {value: 0x0008, lo: 0x80, hi: 0xaf},
3997 {value: 0x3008, lo: 0xb0, hi: 0xb2},
3998 {value: 0x3308, lo: 0xb3, hi: 0xb8},
3999 {value: 0x3008, lo: 0xb9, hi: 0xb9},
4000 {value: 0x3308, lo: 0xba, hi: 0xba},
4001 {value: 0x3008, lo: 0xbb, hi: 0xbe},
4002 {value: 0x3308, lo: 0xbf, hi: 0xbf},
4003 // Block 0xbb, offset 0x59e
4004 {value: 0x0000, lo: 0x0a},
4005 {value: 0x3308, lo: 0x80, hi: 0x80},
4006 {value: 0x3008, lo: 0x81, hi: 0x81},
4007 {value: 0x3b08, lo: 0x82, hi: 0x82},
4008 {value: 0x3308, lo: 0x83, hi: 0x83},
4009 {value: 0x0008, lo: 0x84, hi: 0x85},
4010 {value: 0x0018, lo: 0x86, hi: 0x86},
4011 {value: 0x0008, lo: 0x87, hi: 0x87},
4012 {value: 0x0040, lo: 0x88, hi: 0x8f},
4013 {value: 0x0008, lo: 0x90, hi: 0x99},
4014 {value: 0x0040, lo: 0x9a, hi: 0xbf},
4015 // Block 0xbc, offset 0x5a9
4016 {value: 0x0000, lo: 0x08},
4017 {value: 0x0008, lo: 0x80, hi: 0xae},
4018 {value: 0x3008, lo: 0xaf, hi: 0xb1},
4019 {value: 0x3308, lo: 0xb2, hi: 0xb5},
4020 {value: 0x0040, lo: 0xb6, hi: 0xb7},
4021 {value: 0x3008, lo: 0xb8, hi: 0xbb},
4022 {value: 0x3308, lo: 0xbc, hi: 0xbd},
4023 {value: 0x3008, lo: 0xbe, hi: 0xbe},
4024 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
4025 // Block 0xbd, offset 0x5b2
4026 {value: 0x0000, lo: 0x05},
4027 {value: 0x3308, lo: 0x80, hi: 0x80},
4028 {value: 0x0018, lo: 0x81, hi: 0x97},
4029 {value: 0x0008, lo: 0x98, hi: 0x9b},
4030 {value: 0x3308, lo: 0x9c, hi: 0x9d},
4031 {value: 0x0040, lo: 0x9e, hi: 0xbf},
4032 // Block 0xbe, offset 0x5b8
4033 {value: 0x0000, lo: 0x07},
4034 {value: 0x0008, lo: 0x80, hi: 0xaf},
4035 {value: 0x3008, lo: 0xb0, hi: 0xb2},
4036 {value: 0x3308, lo: 0xb3, hi: 0xba},
4037 {value: 0x3008, lo: 0xbb, hi: 0xbc},
4038 {value: 0x3308, lo: 0xbd, hi: 0xbd},
4039 {value: 0x3008, lo: 0xbe, hi: 0xbe},
4040 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
4041 // Block 0xbf, offset 0x5c0
4042 {value: 0x0000, lo: 0x08},
4043 {value: 0x3308, lo: 0x80, hi: 0x80},
4044 {value: 0x0018, lo: 0x81, hi: 0x83},
4045 {value: 0x0008, lo: 0x84, hi: 0x84},
4046 {value: 0x0040, lo: 0x85, hi: 0x8f},
4047 {value: 0x0008, lo: 0x90, hi: 0x99},
4048 {value: 0x0040, lo: 0x9a, hi: 0x9f},
4049 {value: 0x0018, lo: 0xa0, hi: 0xac},
4050 {value: 0x0040, lo: 0xad, hi: 0xbf},
4051 // Block 0xc0, offset 0x5c9
4052 {value: 0x0000, lo: 0x09},
4053 {value: 0x0008, lo: 0x80, hi: 0xaa},
4054 {value: 0x3308, lo: 0xab, hi: 0xab},
4055 {value: 0x3008, lo: 0xac, hi: 0xac},
4056 {value: 0x3308, lo: 0xad, hi: 0xad},
4057 {value: 0x3008, lo: 0xae, hi: 0xaf},
4058 {value: 0x3308, lo: 0xb0, hi: 0xb5},
4059 {value: 0x3808, lo: 0xb6, hi: 0xb6},
4060 {value: 0x3308, lo: 0xb7, hi: 0xb7},
4061 {value: 0x0040, lo: 0xb8, hi: 0xbf},
4062 // Block 0xc1, offset 0x5d3
4063 {value: 0x0000, lo: 0x02},
4064 {value: 0x0008, lo: 0x80, hi: 0x89},
4065 {value: 0x0040, lo: 0x8a, hi: 0xbf},
4066 // Block 0xc2, offset 0x5d6
4067 {value: 0x0000, lo: 0x0b},
4068 {value: 0x0008, lo: 0x80, hi: 0x9a},
4069 {value: 0x0040, lo: 0x9b, hi: 0x9c},
4070 {value: 0x3308, lo: 0x9d, hi: 0x9f},
4071 {value: 0x3008, lo: 0xa0, hi: 0xa1},
4072 {value: 0x3308, lo: 0xa2, hi: 0xa5},
4073 {value: 0x3008, lo: 0xa6, hi: 0xa6},
4074 {value: 0x3308, lo: 0xa7, hi: 0xaa},
4075 {value: 0x3b08, lo: 0xab, hi: 0xab},
4076 {value: 0x0040, lo: 0xac, hi: 0xaf},
4077 {value: 0x0008, lo: 0xb0, hi: 0xb9},
4078 {value: 0x0018, lo: 0xba, hi: 0xbf},
4079 // Block 0xc3, offset 0x5e2
4080 {value: 0x0000, lo: 0x08},
4081 {value: 0x0008, lo: 0x80, hi: 0xab},
4082 {value: 0x3008, lo: 0xac, hi: 0xae},
4083 {value: 0x3308, lo: 0xaf, hi: 0xb7},
4084 {value: 0x3008, lo: 0xb8, hi: 0xb8},
4085 {value: 0x3b08, lo: 0xb9, hi: 0xb9},
4086 {value: 0x3308, lo: 0xba, hi: 0xba},
4087 {value: 0x0018, lo: 0xbb, hi: 0xbb},
4088 {value: 0x0040, lo: 0xbc, hi: 0xbf},
4089 // Block 0xc4, offset 0x5eb
4090 {value: 0x0000, lo: 0x02},
4091 {value: 0x0040, lo: 0x80, hi: 0x9f},
4092 {value: 0x049d, lo: 0xa0, hi: 0xbf},
4093 // Block 0xc5, offset 0x5ee
4094 {value: 0x0000, lo: 0x04},
4095 {value: 0x0008, lo: 0x80, hi: 0xa9},
4096 {value: 0x0018, lo: 0xaa, hi: 0xb2},
4097 {value: 0x0040, lo: 0xb3, hi: 0xbe},
4098 {value: 0x0008, lo: 0xbf, hi: 0xbf},
4099 // Block 0xc6, offset 0x5f3
4100 {value: 0x0000, lo: 0x0a},
4101 {value: 0x0008, lo: 0x80, hi: 0x80},
4102 {value: 0x3308, lo: 0x81, hi: 0x8a},
4103 {value: 0x0008, lo: 0x8b, hi: 0xb2},
4104 {value: 0x3308, lo: 0xb3, hi: 0xb3},
4105 {value: 0x3b08, lo: 0xb4, hi: 0xb4},
4106 {value: 0x3308, lo: 0xb5, hi: 0xb8},
4107 {value: 0x3008, lo: 0xb9, hi: 0xb9},
4108 {value: 0x0008, lo: 0xba, hi: 0xba},
4109 {value: 0x3308, lo: 0xbb, hi: 0xbe},
4110 {value: 0x0018, lo: 0xbf, hi: 0xbf},
4111 // Block 0xc7, offset 0x5fe
4112 {value: 0x0000, lo: 0x08},
4113 {value: 0x0018, lo: 0x80, hi: 0x86},
4114 {value: 0x3b08, lo: 0x87, hi: 0x87},
4115 {value: 0x0040, lo: 0x88, hi: 0x8f},
4116 {value: 0x0008, lo: 0x90, hi: 0x90},
4117 {value: 0x3308, lo: 0x91, hi: 0x96},
4118 {value: 0x3008, lo: 0x97, hi: 0x98},
4119 {value: 0x3308, lo: 0x99, hi: 0x9b},
4120 {value: 0x0008, lo: 0x9c, hi: 0xbf},
4121 // Block 0xc8, offset 0x607
4122 {value: 0x0000, lo: 0x0b},
4123 {value: 0x0008, lo: 0x80, hi: 0x83},
4124 {value: 0x0040, lo: 0x84, hi: 0x85},
4125 {value: 0x0008, lo: 0x86, hi: 0x89},
4126 {value: 0x3308, lo: 0x8a, hi: 0x96},
4127 {value: 0x3008, lo: 0x97, hi: 0x97},
4128 {value: 0x3308, lo: 0x98, hi: 0x98},
4129 {value: 0x3b08, lo: 0x99, hi: 0x99},
4130 {value: 0x0018, lo: 0x9a, hi: 0x9c},
4131 {value: 0x0008, lo: 0x9d, hi: 0x9d},
4132 {value: 0x0018, lo: 0x9e, hi: 0xa2},
4133 {value: 0x0040, lo: 0xa3, hi: 0xbf},
4134 // Block 0xc9, offset 0x613
4135 {value: 0x0000, lo: 0x02},
4136 {value: 0x0008, lo: 0x80, hi: 0xb8},
4137 {value: 0x0040, lo: 0xb9, hi: 0xbf},
4138 // Block 0xca, offset 0x616
4139 {value: 0x0000, lo: 0x09},
4140 {value: 0x0008, lo: 0x80, hi: 0x88},
4141 {value: 0x0040, lo: 0x89, hi: 0x89},
4142 {value: 0x0008, lo: 0x8a, hi: 0xae},
4143 {value: 0x3008, lo: 0xaf, hi: 0xaf},
4144 {value: 0x3308, lo: 0xb0, hi: 0xb6},
4145 {value: 0x0040, lo: 0xb7, hi: 0xb7},
4146 {value: 0x3308, lo: 0xb8, hi: 0xbd},
4147 {value: 0x3008, lo: 0xbe, hi: 0xbe},
4148 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
4149 // Block 0xcb, offset 0x620
4150 {value: 0x0000, lo: 0x08},
4151 {value: 0x0008, lo: 0x80, hi: 0x80},
4152 {value: 0x0018, lo: 0x81, hi: 0x85},
4153 {value: 0x0040, lo: 0x86, hi: 0x8f},
4154 {value: 0x0008, lo: 0x90, hi: 0x99},
4155 {value: 0x0018, lo: 0x9a, hi: 0xac},
4156 {value: 0x0040, lo: 0xad, hi: 0xaf},
4157 {value: 0x0018, lo: 0xb0, hi: 0xb1},
4158 {value: 0x0008, lo: 0xb2, hi: 0xbf},
4159 // Block 0xcc, offset 0x629
4160 {value: 0x0000, lo: 0x0b},
4161 {value: 0x0008, lo: 0x80, hi: 0x8f},
4162 {value: 0x0040, lo: 0x90, hi: 0x91},
4163 {value: 0x3308, lo: 0x92, hi: 0xa7},
4164 {value: 0x0040, lo: 0xa8, hi: 0xa8},
4165 {value: 0x3008, lo: 0xa9, hi: 0xa9},
4166 {value: 0x3308, lo: 0xaa, hi: 0xb0},
4167 {value: 0x3008, lo: 0xb1, hi: 0xb1},
4168 {value: 0x3308, lo: 0xb2, hi: 0xb3},
4169 {value: 0x3008, lo: 0xb4, hi: 0xb4},
4170 {value: 0x3308, lo: 0xb5, hi: 0xb6},
4171 {value: 0x0040, lo: 0xb7, hi: 0xbf},
4172 // Block 0xcd, offset 0x635
4173 {value: 0x0000, lo: 0x0c},
4174 {value: 0x0008, lo: 0x80, hi: 0x86},
4175 {value: 0x0040, lo: 0x87, hi: 0x87},
4176 {value: 0x0008, lo: 0x88, hi: 0x89},
4177 {value: 0x0040, lo: 0x8a, hi: 0x8a},
4178 {value: 0x0008, lo: 0x8b, hi: 0xb0},
4179 {value: 0x3308, lo: 0xb1, hi: 0xb6},
4180 {value: 0x0040, lo: 0xb7, hi: 0xb9},
4181 {value: 0x3308, lo: 0xba, hi: 0xba},
4182 {value: 0x0040, lo: 0xbb, hi: 0xbb},
4183 {value: 0x3308, lo: 0xbc, hi: 0xbd},
4184 {value: 0x0040, lo: 0xbe, hi: 0xbe},
4185 {value: 0x3308, lo: 0xbf, hi: 0xbf},
4186 // Block 0xce, offset 0x642
4187 {value: 0x0000, lo: 0x0c},
4188 {value: 0x3308, lo: 0x80, hi: 0x83},
4189 {value: 0x3b08, lo: 0x84, hi: 0x85},
4190 {value: 0x0008, lo: 0x86, hi: 0x86},
4191 {value: 0x3308, lo: 0x87, hi: 0x87},
4192 {value: 0x0040, lo: 0x88, hi: 0x8f},
4193 {value: 0x0008, lo: 0x90, hi: 0x99},
4194 {value: 0x0040, lo: 0x9a, hi: 0x9f},
4195 {value: 0x0008, lo: 0xa0, hi: 0xa5},
4196 {value: 0x0040, lo: 0xa6, hi: 0xa6},
4197 {value: 0x0008, lo: 0xa7, hi: 0xa8},
4198 {value: 0x0040, lo: 0xa9, hi: 0xa9},
4199 {value: 0x0008, lo: 0xaa, hi: 0xbf},
4200 // Block 0xcf, offset 0x64f
4201 {value: 0x0000, lo: 0x0d},
4202 {value: 0x0008, lo: 0x80, hi: 0x89},
4203 {value: 0x3008, lo: 0x8a, hi: 0x8e},
4204 {value: 0x0040, lo: 0x8f, hi: 0x8f},
4205 {value: 0x3308, lo: 0x90, hi: 0x91},
4206 {value: 0x0040, lo: 0x92, hi: 0x92},
4207 {value: 0x3008, lo: 0x93, hi: 0x94},
4208 {value: 0x3308, lo: 0x95, hi: 0x95},
4209 {value: 0x3008, lo: 0x96, hi: 0x96},
4210 {value: 0x3b08, lo: 0x97, hi: 0x97},
4211 {value: 0x0008, lo: 0x98, hi: 0x98},
4212 {value: 0x0040, lo: 0x99, hi: 0x9f},
4213 {value: 0x0008, lo: 0xa0, hi: 0xa9},
4214 {value: 0x0040, lo: 0xaa, hi: 0xbf},
4215 // Block 0xd0, offset 0x65d
4216 {value: 0x0000, lo: 0x06},
4217 {value: 0x0040, lo: 0x80, hi: 0x9f},
4218 {value: 0x0008, lo: 0xa0, hi: 0xb2},
4219 {value: 0x3308, lo: 0xb3, hi: 0xb4},
4220 {value: 0x3008, lo: 0xb5, hi: 0xb6},
4221 {value: 0x0018, lo: 0xb7, hi: 0xb8},
4222 {value: 0x0040, lo: 0xb9, hi: 0xbf},
4223 // Block 0xd1, offset 0x664
4224 {value: 0x0000, lo: 0x02},
4225 {value: 0x0008, lo: 0x80, hi: 0x99},
4226 {value: 0x0040, lo: 0x9a, hi: 0xbf},
4227 // Block 0xd2, offset 0x667
4228 {value: 0x0000, lo: 0x04},
4229 {value: 0x0018, lo: 0x80, hi: 0xae},
4230 {value: 0x0040, lo: 0xaf, hi: 0xaf},
4231 {value: 0x0018, lo: 0xb0, hi: 0xb4},
4232 {value: 0x0040, lo: 0xb5, hi: 0xbf},
4233 // Block 0xd3, offset 0x66c
4234 {value: 0x0000, lo: 0x02},
4235 {value: 0x0008, lo: 0x80, hi: 0x83},
4236 {value: 0x0040, lo: 0x84, hi: 0xbf},
4237 // Block 0xd4, offset 0x66f
4238 {value: 0x0000, lo: 0x02},
4239 {value: 0x0008, lo: 0x80, hi: 0xae},
4240 {value: 0x0040, lo: 0xaf, hi: 0xbf},
4241 // Block 0xd5, offset 0x672
4242 {value: 0x0000, lo: 0x02},
4243 {value: 0x0008, lo: 0x80, hi: 0x86},
4244 {value: 0x0040, lo: 0x87, hi: 0xbf},
4245 // Block 0xd6, offset 0x675
4246 {value: 0x0000, lo: 0x06},
4247 {value: 0x0008, lo: 0x80, hi: 0x9e},
4248 {value: 0x0040, lo: 0x9f, hi: 0x9f},
4249 {value: 0x0008, lo: 0xa0, hi: 0xa9},
4250 {value: 0x0040, lo: 0xaa, hi: 0xad},
4251 {value: 0x0018, lo: 0xae, hi: 0xaf},
4252 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4253 // Block 0xd7, offset 0x67c
4254 {value: 0x0000, lo: 0x06},
4255 {value: 0x0040, lo: 0x80, hi: 0x8f},
4256 {value: 0x0008, lo: 0x90, hi: 0xad},
4257 {value: 0x0040, lo: 0xae, hi: 0xaf},
4258 {value: 0x3308, lo: 0xb0, hi: 0xb4},
4259 {value: 0x0018, lo: 0xb5, hi: 0xb5},
4260 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4261 // Block 0xd8, offset 0x683
4262 {value: 0x0000, lo: 0x03},
4263 {value: 0x0008, lo: 0x80, hi: 0xaf},
4264 {value: 0x3308, lo: 0xb0, hi: 0xb6},
4265 {value: 0x0018, lo: 0xb7, hi: 0xbf},
4266 // Block 0xd9, offset 0x687
4267 {value: 0x0000, lo: 0x0a},
4268 {value: 0x0008, lo: 0x80, hi: 0x83},
4269 {value: 0x0018, lo: 0x84, hi: 0x85},
4270 {value: 0x0040, lo: 0x86, hi: 0x8f},
4271 {value: 0x0008, lo: 0x90, hi: 0x99},
4272 {value: 0x0040, lo: 0x9a, hi: 0x9a},
4273 {value: 0x0018, lo: 0x9b, hi: 0xa1},
4274 {value: 0x0040, lo: 0xa2, hi: 0xa2},
4275 {value: 0x0008, lo: 0xa3, hi: 0xb7},
4276 {value: 0x0040, lo: 0xb8, hi: 0xbc},
4277 {value: 0x0008, lo: 0xbd, hi: 0xbf},
4278 // Block 0xda, offset 0x692
4279 {value: 0x0000, lo: 0x02},
4280 {value: 0x0008, lo: 0x80, hi: 0x8f},
4281 {value: 0x0040, lo: 0x90, hi: 0xbf},
4282 // Block 0xdb, offset 0x695
4283 {value: 0x0000, lo: 0x02},
4284 {value: 0x0040, lo: 0x80, hi: 0x9f},
4285 {value: 0x0008, lo: 0xa0, hi: 0xbf},
4286 // Block 0xdc, offset 0x698
4287 {value: 0x0000, lo: 0x02},
4288 {value: 0x0018, lo: 0x80, hi: 0x9a},
4289 {value: 0x0040, lo: 0x9b, hi: 0xbf},
4290 // Block 0xdd, offset 0x69b
4291 {value: 0x0000, lo: 0x05},
4292 {value: 0x0008, lo: 0x80, hi: 0x84},
4293 {value: 0x0040, lo: 0x85, hi: 0x8f},
4294 {value: 0x0008, lo: 0x90, hi: 0x90},
4295 {value: 0x3008, lo: 0x91, hi: 0xbe},
4296 {value: 0x0040, lo: 0xbf, hi: 0xbf},
4297 // Block 0xde, offset 0x6a1
4298 {value: 0x0000, lo: 0x04},
4299 {value: 0x0040, lo: 0x80, hi: 0x8e},
4300 {value: 0x3308, lo: 0x8f, hi: 0x92},
4301 {value: 0x0008, lo: 0x93, hi: 0x9f},
4302 {value: 0x0040, lo: 0xa0, hi: 0xbf},
4303 // Block 0xdf, offset 0x6a6
4304 {value: 0x0000, lo: 0x03},
4305 {value: 0x0040, lo: 0x80, hi: 0x9f},
4306 {value: 0x0008, lo: 0xa0, hi: 0xa1},
4307 {value: 0x0040, lo: 0xa2, hi: 0xbf},
4308 // Block 0xe0, offset 0x6aa
4309 {value: 0x0000, lo: 0x02},
4310 {value: 0x0008, lo: 0x80, hi: 0xb1},
4311 {value: 0x0040, lo: 0xb2, hi: 0xbf},
4312 // Block 0xe1, offset 0x6ad
4313 {value: 0x0000, lo: 0x02},
4314 {value: 0x0008, lo: 0x80, hi: 0xb2},
4315 {value: 0x0040, lo: 0xb3, hi: 0xbf},
4316 // Block 0xe2, offset 0x6b0
4317 {value: 0x0000, lo: 0x02},
4318 {value: 0x0008, lo: 0x80, hi: 0x9e},
4319 {value: 0x0040, lo: 0x9f, hi: 0xbf},
4320 // Block 0xe3, offset 0x6b3
4321 {value: 0x0000, lo: 0x02},
4322 {value: 0x0040, lo: 0x80, hi: 0xaf},
4323 {value: 0x0008, lo: 0xb0, hi: 0xbf},
4324 // Block 0xe4, offset 0x6b6
4325 {value: 0x0000, lo: 0x02},
4326 {value: 0x0008, lo: 0x80, hi: 0xbb},
4327 {value: 0x0040, lo: 0xbc, hi: 0xbf},
4328 // Block 0xe5, offset 0x6b9
4329 {value: 0x0000, lo: 0x04},
4330 {value: 0x0008, lo: 0x80, hi: 0xaa},
4331 {value: 0x0040, lo: 0xab, hi: 0xaf},
4332 {value: 0x0008, lo: 0xb0, hi: 0xbc},
4333 {value: 0x0040, lo: 0xbd, hi: 0xbf},
4334 // Block 0xe6, offset 0x6be
4335 {value: 0x0000, lo: 0x09},
4336 {value: 0x0008, lo: 0x80, hi: 0x88},
4337 {value: 0x0040, lo: 0x89, hi: 0x8f},
4338 {value: 0x0008, lo: 0x90, hi: 0x99},
4339 {value: 0x0040, lo: 0x9a, hi: 0x9b},
4340 {value: 0x0018, lo: 0x9c, hi: 0x9c},
4341 {value: 0x3308, lo: 0x9d, hi: 0x9e},
4342 {value: 0x0018, lo: 0x9f, hi: 0x9f},
4343 {value: 0x03c0, lo: 0xa0, hi: 0xa3},
4344 {value: 0x0040, lo: 0xa4, hi: 0xbf},
4345 // Block 0xe7, offset 0x6c8
4346 {value: 0x0000, lo: 0x02},
4347 {value: 0x0018, lo: 0x80, hi: 0xb5},
4348 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4349 // Block 0xe8, offset 0x6cb
4350 {value: 0x0000, lo: 0x03},
4351 {value: 0x0018, lo: 0x80, hi: 0xa6},
4352 {value: 0x0040, lo: 0xa7, hi: 0xa8},
4353 {value: 0x0018, lo: 0xa9, hi: 0xbf},
4354 // Block 0xe9, offset 0x6cf
4355 {value: 0x0000, lo: 0x0e},
4356 {value: 0x0018, lo: 0x80, hi: 0x9d},
4357 {value: 0xb5b9, lo: 0x9e, hi: 0x9e},
4358 {value: 0xb601, lo: 0x9f, hi: 0x9f},
4359 {value: 0xb649, lo: 0xa0, hi: 0xa0},
4360 {value: 0xb6b1, lo: 0xa1, hi: 0xa1},
4361 {value: 0xb719, lo: 0xa2, hi: 0xa2},
4362 {value: 0xb781, lo: 0xa3, hi: 0xa3},
4363 {value: 0xb7e9, lo: 0xa4, hi: 0xa4},
4364 {value: 0x3018, lo: 0xa5, hi: 0xa6},
4365 {value: 0x3318, lo: 0xa7, hi: 0xa9},
4366 {value: 0x0018, lo: 0xaa, hi: 0xac},
4367 {value: 0x3018, lo: 0xad, hi: 0xb2},
4368 {value: 0x0340, lo: 0xb3, hi: 0xba},
4369 {value: 0x3318, lo: 0xbb, hi: 0xbf},
4370 // Block 0xea, offset 0x6de
4371 {value: 0x0000, lo: 0x0b},
4372 {value: 0x3318, lo: 0x80, hi: 0x82},
4373 {value: 0x0018, lo: 0x83, hi: 0x84},
4374 {value: 0x3318, lo: 0x85, hi: 0x8b},
4375 {value: 0x0018, lo: 0x8c, hi: 0xa9},
4376 {value: 0x3318, lo: 0xaa, hi: 0xad},
4377 {value: 0x0018, lo: 0xae, hi: 0xba},
4378 {value: 0xb851, lo: 0xbb, hi: 0xbb},
4379 {value: 0xb899, lo: 0xbc, hi: 0xbc},
4380 {value: 0xb8e1, lo: 0xbd, hi: 0xbd},
4381 {value: 0xb949, lo: 0xbe, hi: 0xbe},
4382 {value: 0xb9b1, lo: 0xbf, hi: 0xbf},
4383 // Block 0xeb, offset 0x6ea
4384 {value: 0x0000, lo: 0x03},
4385 {value: 0xba19, lo: 0x80, hi: 0x80},
4386 {value: 0x0018, lo: 0x81, hi: 0xa8},
4387 {value: 0x0040, lo: 0xa9, hi: 0xbf},
4388 // Block 0xec, offset 0x6ee
4389 {value: 0x0000, lo: 0x04},
4390 {value: 0x0018, lo: 0x80, hi: 0x81},
4391 {value: 0x3318, lo: 0x82, hi: 0x84},
4392 {value: 0x0018, lo: 0x85, hi: 0x85},
4393 {value: 0x0040, lo: 0x86, hi: 0xbf},
4394 // Block 0xed, offset 0x6f3
4395 {value: 0x0000, lo: 0x03},
4396 {value: 0x0040, lo: 0x80, hi: 0x9f},
4397 {value: 0x0018, lo: 0xa0, hi: 0xb3},
4398 {value: 0x0040, lo: 0xb4, hi: 0xbf},
4399 // Block 0xee, offset 0x6f7
4400 {value: 0x0000, lo: 0x04},
4401 {value: 0x0018, lo: 0x80, hi: 0x96},
4402 {value: 0x0040, lo: 0x97, hi: 0x9f},
4403 {value: 0x0018, lo: 0xa0, hi: 0xb8},
4404 {value: 0x0040, lo: 0xb9, hi: 0xbf},
4405 // Block 0xef, offset 0x6fc
4406 {value: 0x0000, lo: 0x03},
4407 {value: 0x3308, lo: 0x80, hi: 0xb6},
4408 {value: 0x0018, lo: 0xb7, hi: 0xba},
4409 {value: 0x3308, lo: 0xbb, hi: 0xbf},
4410 // Block 0xf0, offset 0x700
4411 {value: 0x0000, lo: 0x04},
4412 {value: 0x3308, lo: 0x80, hi: 0xac},
4413 {value: 0x0018, lo: 0xad, hi: 0xb4},
4414 {value: 0x3308, lo: 0xb5, hi: 0xb5},
4415 {value: 0x0018, lo: 0xb6, hi: 0xbf},
4416 // Block 0xf1, offset 0x705
4417 {value: 0x0000, lo: 0x08},
4418 {value: 0x0018, lo: 0x80, hi: 0x83},
4419 {value: 0x3308, lo: 0x84, hi: 0x84},
4420 {value: 0x0018, lo: 0x85, hi: 0x8b},
4421 {value: 0x0040, lo: 0x8c, hi: 0x9a},
4422 {value: 0x3308, lo: 0x9b, hi: 0x9f},
4423 {value: 0x0040, lo: 0xa0, hi: 0xa0},
4424 {value: 0x3308, lo: 0xa1, hi: 0xaf},
4425 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4426 // Block 0xf2, offset 0x70e
4427 {value: 0x0000, lo: 0x0a},
4428 {value: 0x3308, lo: 0x80, hi: 0x86},
4429 {value: 0x0040, lo: 0x87, hi: 0x87},
4430 {value: 0x3308, lo: 0x88, hi: 0x98},
4431 {value: 0x0040, lo: 0x99, hi: 0x9a},
4432 {value: 0x3308, lo: 0x9b, hi: 0xa1},
4433 {value: 0x0040, lo: 0xa2, hi: 0xa2},
4434 {value: 0x3308, lo: 0xa3, hi: 0xa4},
4435 {value: 0x0040, lo: 0xa5, hi: 0xa5},
4436 {value: 0x3308, lo: 0xa6, hi: 0xaa},
4437 {value: 0x0040, lo: 0xab, hi: 0xbf},
4438 // Block 0xf3, offset 0x719
4439 {value: 0x0000, lo: 0x05},
4440 {value: 0x0808, lo: 0x80, hi: 0x84},
4441 {value: 0x0040, lo: 0x85, hi: 0x86},
4442 {value: 0x0818, lo: 0x87, hi: 0x8f},
4443 {value: 0x3308, lo: 0x90, hi: 0x96},
4444 {value: 0x0040, lo: 0x97, hi: 0xbf},
4445 // Block 0xf4, offset 0x71f
4446 {value: 0x0000, lo: 0x07},
4447 {value: 0x0a08, lo: 0x80, hi: 0x83},
4448 {value: 0x3308, lo: 0x84, hi: 0x8a},
4449 {value: 0x0040, lo: 0x8b, hi: 0x8f},
4450 {value: 0x0808, lo: 0x90, hi: 0x99},
4451 {value: 0x0040, lo: 0x9a, hi: 0x9d},
4452 {value: 0x0818, lo: 0x9e, hi: 0x9f},
4453 {value: 0x0040, lo: 0xa0, hi: 0xbf},
4454 // Block 0xf5, offset 0x727
4455 {value: 0x0000, lo: 0x02},
4456 {value: 0x0040, lo: 0x80, hi: 0xb0},
4457 {value: 0x0818, lo: 0xb1, hi: 0xbf},
4458 // Block 0xf6, offset 0x72a
4459 {value: 0x0000, lo: 0x02},
4460 {value: 0x0818, lo: 0x80, hi: 0xb4},
4461 {value: 0x0040, lo: 0xb5, hi: 0xbf},
4462 // Block 0xf7, offset 0x72d
4463 {value: 0x0000, lo: 0x03},
4464 {value: 0x0040, lo: 0x80, hi: 0xaf},
4465 {value: 0x0018, lo: 0xb0, hi: 0xb1},
4466 {value: 0x0040, lo: 0xb2, hi: 0xbf},
4467 // Block 0xf8, offset 0x731
4468 {value: 0x0000, lo: 0x03},
4469 {value: 0x0018, lo: 0x80, hi: 0xab},
4470 {value: 0x0040, lo: 0xac, hi: 0xaf},
4471 {value: 0x0018, lo: 0xb0, hi: 0xbf},
4472 // Block 0xf9, offset 0x735
4473 {value: 0x0000, lo: 0x05},
4474 {value: 0x0018, lo: 0x80, hi: 0x93},
4475 {value: 0x0040, lo: 0x94, hi: 0x9f},
4476 {value: 0x0018, lo: 0xa0, hi: 0xae},
4477 {value: 0x0040, lo: 0xaf, hi: 0xb0},
4478 {value: 0x0018, lo: 0xb1, hi: 0xbf},
4479 // Block 0xfa, offset 0x73b
4480 {value: 0x0000, lo: 0x05},
4481 {value: 0x0040, lo: 0x80, hi: 0x80},
4482 {value: 0x0018, lo: 0x81, hi: 0x8f},
4483 {value: 0x0040, lo: 0x90, hi: 0x90},
4484 {value: 0x0018, lo: 0x91, hi: 0xb5},
4485 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4486 // Block 0xfb, offset 0x741
4487 {value: 0x0000, lo: 0x04},
4488 {value: 0x0018, lo: 0x80, hi: 0x8f},
4489 {value: 0xc1c1, lo: 0x90, hi: 0x90},
4490 {value: 0x0018, lo: 0x91, hi: 0xac},
4491 {value: 0x0040, lo: 0xad, hi: 0xbf},
4492 // Block 0xfc, offset 0x746
4493 {value: 0x0000, lo: 0x02},
4494 {value: 0x0040, lo: 0x80, hi: 0xa5},
4495 {value: 0x0018, lo: 0xa6, hi: 0xbf},
4496 // Block 0xfd, offset 0x749
4497 {value: 0x0000, lo: 0x0f},
4498 {value: 0xc7e9, lo: 0x80, hi: 0x80},
4499 {value: 0xc839, lo: 0x81, hi: 0x81},
4500 {value: 0xc889, lo: 0x82, hi: 0x82},
4501 {value: 0xc8d9, lo: 0x83, hi: 0x83},
4502 {value: 0xc929, lo: 0x84, hi: 0x84},
4503 {value: 0xc979, lo: 0x85, hi: 0x85},
4504 {value: 0xc9c9, lo: 0x86, hi: 0x86},
4505 {value: 0xca19, lo: 0x87, hi: 0x87},
4506 {value: 0xca69, lo: 0x88, hi: 0x88},
4507 {value: 0x0040, lo: 0x89, hi: 0x8f},
4508 {value: 0xcab9, lo: 0x90, hi: 0x90},
4509 {value: 0xcad9, lo: 0x91, hi: 0x91},
4510 {value: 0x0040, lo: 0x92, hi: 0x9f},
4511 {value: 0x0018, lo: 0xa0, hi: 0xa5},
4512 {value: 0x0040, lo: 0xa6, hi: 0xbf},
4513 // Block 0xfe, offset 0x759
4514 {value: 0x0000, lo: 0x06},
4515 {value: 0x0018, lo: 0x80, hi: 0x94},
4516 {value: 0x0040, lo: 0x95, hi: 0x9f},
4517 {value: 0x0018, lo: 0xa0, hi: 0xac},
4518 {value: 0x0040, lo: 0xad, hi: 0xaf},
4519 {value: 0x0018, lo: 0xb0, hi: 0xb9},
4520 {value: 0x0040, lo: 0xba, hi: 0xbf},
4521 // Block 0xff, offset 0x760
4522 {value: 0x0000, lo: 0x02},
4523 {value: 0x0018, lo: 0x80, hi: 0xb3},
4524 {value: 0x0040, lo: 0xb4, hi: 0xbf},
4525 // Block 0x100, offset 0x763
4526 {value: 0x0000, lo: 0x02},
4527 {value: 0x0018, lo: 0x80, hi: 0x98},
4528 {value: 0x0040, lo: 0x99, hi: 0xbf},
4529 // Block 0x101, offset 0x766
4530 {value: 0x0000, lo: 0x03},
4531 {value: 0x0018, lo: 0x80, hi: 0x8b},
4532 {value: 0x0040, lo: 0x8c, hi: 0x8f},
4533 {value: 0x0018, lo: 0x90, hi: 0xbf},
4534 // Block 0x102, offset 0x76a
4535 {value: 0x0000, lo: 0x05},
4536 {value: 0x0018, lo: 0x80, hi: 0x87},
4537 {value: 0x0040, lo: 0x88, hi: 0x8f},
4538 {value: 0x0018, lo: 0x90, hi: 0x99},
4539 {value: 0x0040, lo: 0x9a, hi: 0x9f},
4540 {value: 0x0018, lo: 0xa0, hi: 0xbf},
4541 // Block 0x103, offset 0x770
4542 {value: 0x0000, lo: 0x04},
4543 {value: 0x0018, lo: 0x80, hi: 0x87},
4544 {value: 0x0040, lo: 0x88, hi: 0x8f},
4545 {value: 0x0018, lo: 0x90, hi: 0xad},
4546 {value: 0x0040, lo: 0xae, hi: 0xbf},
4547 // Block 0x104, offset 0x775
4548 {value: 0x0000, lo: 0x04},
4549 {value: 0x0018, lo: 0x80, hi: 0x8b},
4550 {value: 0x0040, lo: 0x8c, hi: 0x8f},
4551 {value: 0x0018, lo: 0x90, hi: 0xbe},
4552 {value: 0x0040, lo: 0xbf, hi: 0xbf},
4553 // Block 0x105, offset 0x77a
4554 {value: 0x0000, lo: 0x07},
4555 {value: 0x0018, lo: 0x80, hi: 0xb0},
4556 {value: 0x0040, lo: 0xb1, hi: 0xb2},
4557 {value: 0x0018, lo: 0xb3, hi: 0xb6},
4558 {value: 0x0040, lo: 0xb7, hi: 0xb9},
4559 {value: 0x0018, lo: 0xba, hi: 0xba},
4560 {value: 0x0040, lo: 0xbb, hi: 0xbb},
4561 {value: 0x0018, lo: 0xbc, hi: 0xbf},
4562 // Block 0x106, offset 0x782
4563 {value: 0x0000, lo: 0x04},
4564 {value: 0x0018, lo: 0x80, hi: 0xa2},
4565 {value: 0x0040, lo: 0xa3, hi: 0xaf},
4566 {value: 0x0018, lo: 0xb0, hi: 0xb9},
4567 {value: 0x0040, lo: 0xba, hi: 0xbf},
4568 // Block 0x107, offset 0x787
4569 {value: 0x0000, lo: 0x03},
4570 {value: 0x0018, lo: 0x80, hi: 0x82},
4571 {value: 0x0040, lo: 0x83, hi: 0x8f},
4572 {value: 0x0018, lo: 0x90, hi: 0xbf},
4573 // Block 0x108, offset 0x78b
4574 {value: 0x0000, lo: 0x03},
4575 {value: 0x0040, lo: 0x80, hi: 0x9f},
4576 {value: 0x0018, lo: 0xa0, hi: 0xad},
4577 {value: 0x0040, lo: 0xae, hi: 0xbf},
4578 // Block 0x109, offset 0x78f
4579 {value: 0x0000, lo: 0x02},
4580 {value: 0x0008, lo: 0x80, hi: 0x96},
4581 {value: 0x0040, lo: 0x97, hi: 0xbf},
4582 // Block 0x10a, offset 0x792
4583 {value: 0x0000, lo: 0x02},
4584 {value: 0x0008, lo: 0x80, hi: 0xb4},
4585 {value: 0x0040, lo: 0xb5, hi: 0xbf},
4586 // Block 0x10b, offset 0x795
4587 {value: 0x0000, lo: 0x03},
4588 {value: 0x0008, lo: 0x80, hi: 0x9d},
4589 {value: 0x0040, lo: 0x9e, hi: 0x9f},
4590 {value: 0x0008, lo: 0xa0, hi: 0xbf},
4591 // Block 0x10c, offset 0x799
4592 {value: 0x0000, lo: 0x03},
4593 {value: 0x0008, lo: 0x80, hi: 0xa1},
4594 {value: 0x0040, lo: 0xa2, hi: 0xaf},
4595 {value: 0x0008, lo: 0xb0, hi: 0xbf},
4596 // Block 0x10d, offset 0x79d
4597 {value: 0x0000, lo: 0x02},
4598 {value: 0x0008, lo: 0x80, hi: 0xa0},
4599 {value: 0x0040, lo: 0xa1, hi: 0xbf},
4600 // Block 0x10e, offset 0x7a0
4601 {value: 0x0020, lo: 0x0f},
4602 {value: 0xdeb9, lo: 0x80, hi: 0x89},
4603 {value: 0x8dfd, lo: 0x8a, hi: 0x8a},
4604 {value: 0xdff9, lo: 0x8b, hi: 0x9c},
4605 {value: 0x8e1d, lo: 0x9d, hi: 0x9d},
4606 {value: 0xe239, lo: 0x9e, hi: 0xa2},
4607 {value: 0x8e3d, lo: 0xa3, hi: 0xa3},
4608 {value: 0xe2d9, lo: 0xa4, hi: 0xab},
4609 {value: 0x7ed5, lo: 0xac, hi: 0xac},
4610 {value: 0xe3d9, lo: 0xad, hi: 0xaf},
4611 {value: 0x8e5d, lo: 0xb0, hi: 0xb0},
4612 {value: 0xe439, lo: 0xb1, hi: 0xb6},
4613 {value: 0x8e7d, lo: 0xb7, hi: 0xb9},
4614 {value: 0xe4f9, lo: 0xba, hi: 0xba},
4615 {value: 0x8edd, lo: 0xbb, hi: 0xbb},
4616 {value: 0xe519, lo: 0xbc, hi: 0xbf},
4617 // Block 0x10f, offset 0x7b0
4618 {value: 0x0020, lo: 0x10},
4619 {value: 0x937d, lo: 0x80, hi: 0x80},
4620 {value: 0xf099, lo: 0x81, hi: 0x86},
4621 {value: 0x939d, lo: 0x87, hi: 0x8a},
4622 {value: 0xd9f9, lo: 0x8b, hi: 0x8b},
4623 {value: 0xf159, lo: 0x8c, hi: 0x96},
4624 {value: 0x941d, lo: 0x97, hi: 0x97},
4625 {value: 0xf2b9, lo: 0x98, hi: 0xa3},
4626 {value: 0x943d, lo: 0xa4, hi: 0xa6},
4627 {value: 0xf439, lo: 0xa7, hi: 0xaa},
4628 {value: 0x949d, lo: 0xab, hi: 0xab},
4629 {value: 0xf4b9, lo: 0xac, hi: 0xac},
4630 {value: 0x94bd, lo: 0xad, hi: 0xad},
4631 {value: 0xf4d9, lo: 0xae, hi: 0xaf},
4632 {value: 0x94dd, lo: 0xb0, hi: 0xb1},
4633 {value: 0xf519, lo: 0xb2, hi: 0xbe},
4634 {value: 0x2040, lo: 0xbf, hi: 0xbf},
4635 // Block 0x110, offset 0x7c1
4636 {value: 0x0000, lo: 0x04},
4637 {value: 0x0040, lo: 0x80, hi: 0x80},
4638 {value: 0x0340, lo: 0x81, hi: 0x81},
4639 {value: 0x0040, lo: 0x82, hi: 0x9f},
4640 {value: 0x0340, lo: 0xa0, hi: 0xbf},
4641 // Block 0x111, offset 0x7c6
4642 {value: 0x0000, lo: 0x01},
4643 {value: 0x0340, lo: 0x80, hi: 0xbf},
4644 // Block 0x112, offset 0x7c8
4645 {value: 0x0000, lo: 0x01},
4646 {value: 0x33c0, lo: 0x80, hi: 0xbf},
4647 // Block 0x113, offset 0x7ca
4648 {value: 0x0000, lo: 0x02},
4649 {value: 0x33c0, lo: 0x80, hi: 0xaf},
4650 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4651}
4652
4653// Total table size 42466 bytes (41KiB); checksum: 355A58A4
diff --git a/vendor/golang.org/x/net/idna/tables9.0.0.go b/vendor/golang.org/x/net/idna/tables9.0.0.go
new file mode 100644
index 0000000..8b65fa1
--- /dev/null
+++ b/vendor/golang.org/x/net/idna/tables9.0.0.go
@@ -0,0 +1,4486 @@
1// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
2
3// +build !go1.10
4
5package idna
6
7// UnicodeVersion is the Unicode version from which the tables in this package are derived.
8const UnicodeVersion = "9.0.0"
9
10var mappings string = "" + // Size: 8175 bytes
11 "\x00\x01 \x03 ̈\x01a\x03 ̄\x012\x013\x03 ́\x03 ̧\x011\x01o\x051⁄4\x051⁄2" +
12 "\x053⁄4\x03i̇\x03l·\x03ʼn\x01s\x03dž\x03ⱥ\x03ⱦ\x01h\x01j\x01r\x01w\x01y" +
13 "\x03 ̆\x03 ̇\x03 ̊\x03 ̨\x03 ̃\x03 ̋\x01l\x01x\x04̈́\x03 ι\x01;\x05 ̈́" +
14 "\x04եւ\x04اٴ\x04وٴ\x04ۇٴ\x04يٴ\x06क़\x06ख़\x06ग़\x06ज़\x06ड़\x06ढ़\x06फ़" +
15 "\x06य़\x06ড়\x06ঢ়\x06য়\x06ਲ਼\x06ਸ਼\x06ਖ਼\x06ਗ਼\x06ਜ਼\x06ਫ਼\x06ଡ଼\x06ଢ଼" +
16 "\x06ํา\x06ໍາ\x06ຫນ\x06ຫມ\x06གྷ\x06ཌྷ\x06དྷ\x06བྷ\x06ཛྷ\x06ཀྵ\x06ཱི\x06ཱུ" +
17 "\x06ྲྀ\x09ྲཱྀ\x06ླྀ\x09ླཱྀ\x06ཱྀ\x06ྒྷ\x06ྜྷ\x06ྡྷ\x06ྦྷ\x06ྫྷ\x06ྐྵ\x02" +
18 "в\x02д\x02о\x02с\x02т\x02ъ\x02ѣ\x02æ\x01b\x01d\x01e\x02ǝ\x01g\x01i\x01k" +
19 "\x01m\x01n\x02ȣ\x01p\x01t\x01u\x02ɐ\x02ɑ\x02ə\x02ɛ\x02ɜ\x02ŋ\x02ɔ\x02ɯ" +
20 "\x01v\x02β\x02γ\x02δ\x02φ\x02χ\x02ρ\x02н\x02ɒ\x01c\x02ɕ\x02ð\x01f\x02ɟ" +
21 "\x02ɡ\x02ɥ\x02ɨ\x02ɩ\x02ɪ\x02ʝ\x02ɭ\x02ʟ\x02ɱ\x02ɰ\x02ɲ\x02ɳ\x02ɴ\x02ɵ" +
22 "\x02ɸ\x02ʂ\x02ʃ\x02ƫ\x02ʉ\x02ʊ\x02ʋ\x02ʌ\x01z\x02ʐ\x02ʑ\x02ʒ\x02θ\x02ss" +
23 "\x02ά\x02έ\x02ή\x02ί\x02ό\x02ύ\x02ώ\x05ἀι\x05ἁι\x05ἂι\x05ἃι\x05ἄι\x05ἅι" +
24 "\x05ἆι\x05ἇι\x05ἠι\x05ἡι\x05ἢι\x05ἣι\x05ἤι\x05ἥι\x05ἦι\x05ἧι\x05ὠι\x05ὡι" +
25 "\x05ὢι\x05ὣι\x05ὤι\x05ὥι\x05ὦι\x05ὧι\x05ὰι\x04αι\x04άι\x05ᾶι\x02ι\x05 ̈͂" +
26 "\x05ὴι\x04ηι\x04ήι\x05ῆι\x05 ̓̀\x05 ̓́\x05 ̓͂\x02ΐ\x05 ̔̀\x05 ̔́\x05 ̔͂" +
27 "\x02ΰ\x05 ̈̀\x01`\x05ὼι\x04ωι\x04ώι\x05ῶι\x06′′\x09′′′\x06‵‵\x09‵‵‵\x02!" +
28 "!\x02??\x02?!\x02!?\x0c′′′′\x010\x014\x015\x016\x017\x018\x019\x01+\x01=" +
29 "\x01(\x01)\x02rs\x02ħ\x02no\x01q\x02sm\x02tm\x02ω\x02å\x02א\x02ב\x02ג" +
30 "\x02ד\x02π\x051⁄7\x051⁄9\x061⁄10\x051⁄3\x052⁄3\x051⁄5\x052⁄5\x053⁄5\x054" +
31 "⁄5\x051⁄6\x055⁄6\x051⁄8\x053⁄8\x055⁄8\x057⁄8\x041⁄\x02ii\x02iv\x02vi" +
32 "\x04viii\x02ix\x02xi\x050⁄3\x06∫∫\x09∫∫∫\x06∮∮\x09∮∮∮\x0210\x0211\x0212" +
33 "\x0213\x0214\x0215\x0216\x0217\x0218\x0219\x0220\x04(10)\x04(11)\x04(12)" +
34 "\x04(13)\x04(14)\x04(15)\x04(16)\x04(17)\x04(18)\x04(19)\x04(20)\x0c∫∫∫∫" +
35 "\x02==\x05⫝̸\x02ɫ\x02ɽ\x02ȿ\x02ɀ\x01.\x04 ゙\x04 ゚\x06より\x06コト\x05(ᄀ)\x05" +
36 "(ᄂ)\x05(ᄃ)\x05(ᄅ)\x05(ᄆ)\x05(ᄇ)\x05(ᄉ)\x05(ᄋ)\x05(ᄌ)\x05(ᄎ)\x05(ᄏ)\x05(ᄐ" +
37 ")\x05(ᄑ)\x05(ᄒ)\x05(가)\x05(나)\x05(다)\x05(라)\x05(마)\x05(바)\x05(사)\x05(아)" +
38 "\x05(자)\x05(차)\x05(카)\x05(타)\x05(파)\x05(하)\x05(주)\x08(오전)\x08(오후)\x05(一)" +
39 "\x05(二)\x05(三)\x05(四)\x05(五)\x05(六)\x05(七)\x05(八)\x05(九)\x05(十)\x05(月)" +
40 "\x05(火)\x05(水)\x05(木)\x05(金)\x05(土)\x05(日)\x05(株)\x05(有)\x05(社)\x05(名)" +
41 "\x05(特)\x05(財)\x05(祝)\x05(労)\x05(代)\x05(呼)\x05(学)\x05(監)\x05(企)\x05(資)" +
42 "\x05(協)\x05(祭)\x05(休)\x05(自)\x05(至)\x0221\x0222\x0223\x0224\x0225\x0226" +
43 "\x0227\x0228\x0229\x0230\x0231\x0232\x0233\x0234\x0235\x06참고\x06주의\x0236" +
44 "\x0237\x0238\x0239\x0240\x0241\x0242\x0243\x0244\x0245\x0246\x0247\x0248" +
45 "\x0249\x0250\x041月\x042月\x043月\x044月\x045月\x046月\x047月\x048月\x049月\x0510" +
46 "月\x0511月\x0512月\x02hg\x02ev\x0cアパート\x0cアルファ\x0cアンペア\x09アール\x0cイニング\x09" +
47 "インチ\x09ウォン\x0fエスクード\x0cエーカー\x09オンス\x09オーム\x09カイリ\x0cカラット\x0cカロリー\x09ガロ" +
48 "ン\x09ガンマ\x06ギガ\x09ギニー\x0cキュリー\x0cギルダー\x06キロ\x0fキログラム\x12キロメートル\x0fキロワッ" +
49 "ト\x09グラム\x0fグラムトン\x0fクルゼイロ\x0cクローネ\x09ケース\x09コルナ\x09コーポ\x0cサイクル\x0fサンチ" +
50 "ーム\x0cシリング\x09センチ\x09セント\x09ダース\x06デシ\x06ドル\x06トン\x06ナノ\x09ノット\x09ハイツ" +
51 "\x0fパーセント\x09パーツ\x0cバーレル\x0fピアストル\x09ピクル\x06ピコ\x06ビル\x0fファラッド\x0cフィート" +
52 "\x0fブッシェル\x09フラン\x0fヘクタール\x06ペソ\x09ペニヒ\x09ヘルツ\x09ペンス\x09ページ\x09ベータ\x0cポイ" +
53 "ント\x09ボルト\x06ホン\x09ポンド\x09ホール\x09ホーン\x0cマイクロ\x09マイル\x09マッハ\x09マルク\x0fマ" +
54 "ンション\x0cミクロン\x06ミリ\x0fミリバール\x06メガ\x0cメガトン\x0cメートル\x09ヤード\x09ヤール\x09ユアン" +
55 "\x0cリットル\x06リラ\x09ルピー\x0cルーブル\x06レム\x0fレントゲン\x09ワット\x040点\x041点\x042点" +
56 "\x043点\x044点\x045点\x046点\x047点\x048点\x049点\x0510点\x0511点\x0512点\x0513点" +
57 "\x0514点\x0515点\x0516点\x0517点\x0518点\x0519点\x0520点\x0521点\x0522点\x0523点" +
58 "\x0524点\x02da\x02au\x02ov\x02pc\x02dm\x02iu\x06平成\x06昭和\x06大正\x06明治\x0c株" +
59 "式会社\x02pa\x02na\x02ma\x02ka\x02kb\x02mb\x02gb\x04kcal\x02pf\x02nf\x02m" +
60 "g\x02kg\x02hz\x02ml\x02dl\x02kl\x02fm\x02nm\x02mm\x02cm\x02km\x02m2\x02m" +
61 "3\x05m∕s\x06m∕s2\x07rad∕s\x08rad∕s2\x02ps\x02ns\x02ms\x02pv\x02nv\x02mv" +
62 "\x02kv\x02pw\x02nw\x02mw\x02kw\x02bq\x02cc\x02cd\x06c∕kg\x02db\x02gy\x02" +
63 "ha\x02hp\x02in\x02kk\x02kt\x02lm\x02ln\x02lx\x02ph\x02pr\x02sr\x02sv\x02" +
64 "wb\x05v∕m\x05a∕m\x041日\x042日\x043日\x044日\x045日\x046日\x047日\x048日\x049日" +
65 "\x0510日\x0511日\x0512日\x0513日\x0514日\x0515日\x0516日\x0517日\x0518日\x0519日" +
66 "\x0520日\x0521日\x0522日\x0523日\x0524日\x0525日\x0526日\x0527日\x0528日\x0529日" +
67 "\x0530日\x0531日\x02ь\x02ɦ\x02ɬ\x02ʞ\x02ʇ\x02œ\x04𤋮\x04𢡊\x04𢡄\x04𣏕\x04𥉉" +
68 "\x04𥳐\x04𧻓\x02ff\x02fi\x02fl\x02st\x04մն\x04մե\x04մի\x04վն\x04մխ\x04יִ" +
69 "\x04ײַ\x02ע\x02ה\x02כ\x02ל\x02ם\x02ר\x02ת\x04שׁ\x04שׂ\x06שּׁ\x06שּׂ\x04א" +
70 "ַ\x04אָ\x04אּ\x04בּ\x04גּ\x04דּ\x04הּ\x04וּ\x04זּ\x04טּ\x04יּ\x04ךּ\x04" +
71 "כּ\x04לּ\x04מּ\x04נּ\x04סּ\x04ףּ\x04פּ\x04צּ\x04קּ\x04רּ\x04שּ\x04תּ" +
72 "\x04וֹ\x04בֿ\x04כֿ\x04פֿ\x04אל\x02ٱ\x02ٻ\x02پ\x02ڀ\x02ٺ\x02ٿ\x02ٹ\x02ڤ" +
73 "\x02ڦ\x02ڄ\x02ڃ\x02چ\x02ڇ\x02ڍ\x02ڌ\x02ڎ\x02ڈ\x02ژ\x02ڑ\x02ک\x02گ\x02ڳ" +
74 "\x02ڱ\x02ں\x02ڻ\x02ۀ\x02ہ\x02ھ\x02ے\x02ۓ\x02ڭ\x02ۇ\x02ۆ\x02ۈ\x02ۋ\x02ۅ" +
75 "\x02ۉ\x02ې\x02ى\x04ئا\x04ئە\x04ئو\x04ئۇ\x04ئۆ\x04ئۈ\x04ئې\x04ئى\x02ی\x04" +
76 "ئج\x04ئح\x04ئم\x04ئي\x04بج\x04بح\x04بخ\x04بم\x04بى\x04بي\x04تج\x04تح" +
77 "\x04تخ\x04تم\x04تى\x04تي\x04ثج\x04ثم\x04ثى\x04ثي\x04جح\x04جم\x04حج\x04حم" +
78 "\x04خج\x04خح\x04خم\x04سج\x04سح\x04سخ\x04سم\x04صح\x04صم\x04ضج\x04ضح\x04ضخ" +
79 "\x04ضم\x04طح\x04طم\x04ظم\x04عج\x04عم\x04غج\x04غم\x04فج\x04فح\x04فخ\x04فم" +
80 "\x04فى\x04في\x04قح\x04قم\x04قى\x04قي\x04كا\x04كج\x04كح\x04كخ\x04كل\x04كم" +
81 "\x04كى\x04كي\x04لج\x04لح\x04لخ\x04لم\x04لى\x04لي\x04مج\x04مح\x04مخ\x04مم" +
82 "\x04مى\x04مي\x04نج\x04نح\x04نخ\x04نم\x04نى\x04ني\x04هج\x04هم\x04هى\x04هي" +
83 "\x04يج\x04يح\x04يخ\x04يم\x04يى\x04يي\x04ذٰ\x04رٰ\x04ىٰ\x05 ٌّ\x05 ٍّ\x05" +
84 " َّ\x05 ُّ\x05 ِّ\x05 ّٰ\x04ئر\x04ئز\x04ئن\x04بر\x04بز\x04بن\x04تر\x04تز" +
85 "\x04تن\x04ثر\x04ثز\x04ثن\x04ما\x04نر\x04نز\x04نن\x04ير\x04يز\x04ين\x04ئخ" +
86 "\x04ئه\x04به\x04ته\x04صخ\x04له\x04نه\x04هٰ\x04يه\x04ثه\x04سه\x04شم\x04شه" +
87 "\x06ـَّ\x06ـُّ\x06ـِّ\x04طى\x04طي\x04عى\x04عي\x04غى\x04غي\x04سى\x04سي" +
88 "\x04شى\x04شي\x04حى\x04حي\x04جى\x04جي\x04خى\x04خي\x04صى\x04صي\x04ضى\x04ضي" +
89 "\x04شج\x04شح\x04شخ\x04شر\x04سر\x04صر\x04ضر\x04اً\x06تجم\x06تحج\x06تحم" +
90 "\x06تخم\x06تمج\x06تمح\x06تمخ\x06جمح\x06حمي\x06حمى\x06سحج\x06سجح\x06سجى" +
91 "\x06سمح\x06سمج\x06سمم\x06صحح\x06صمم\x06شحم\x06شجي\x06شمخ\x06شمم\x06ضحى" +
92 "\x06ضخم\x06طمح\x06طمم\x06طمي\x06عجم\x06عمم\x06عمى\x06غمم\x06غمي\x06غمى" +
93 "\x06فخم\x06قمح\x06قمم\x06لحم\x06لحي\x06لحى\x06لجج\x06لخم\x06لمح\x06محج" +
94 "\x06محم\x06محي\x06مجح\x06مجم\x06مخج\x06مخم\x06مجخ\x06همج\x06همم\x06نحم" +
95 "\x06نحى\x06نجم\x06نجى\x06نمي\x06نمى\x06يمم\x06بخي\x06تجي\x06تجى\x06تخي" +
96 "\x06تخى\x06تمي\x06تمى\x06جمي\x06جحى\x06جمى\x06سخى\x06صحي\x06شحي\x06ضحي" +
97 "\x06لجي\x06لمي\x06يحي\x06يجي\x06يمي\x06ممي\x06قمي\x06نحي\x06عمي\x06كمي" +
98 "\x06نجح\x06مخي\x06لجم\x06كمم\x06جحي\x06حجي\x06مجي\x06فمي\x06بحي\x06سخي" +
99 "\x06نجي\x06صلے\x06قلے\x08الله\x08اكبر\x08محمد\x08صلعم\x08رسول\x08عليه" +
100 "\x08وسلم\x06صلى!صلى الله عليه وسلم\x0fجل جلاله\x08ریال\x01,\x01:\x01!" +
101 "\x01?\x01_\x01{\x01}\x01[\x01]\x01#\x01&\x01*\x01-\x01<\x01>\x01\\\x01$" +
102 "\x01%\x01@\x04ـً\x04ـَ\x04ـُ\x04ـِ\x04ـّ\x04ـْ\x02ء\x02آ\x02أ\x02ؤ\x02إ" +
103 "\x02ئ\x02ا\x02ب\x02ة\x02ت\x02ث\x02ج\x02ح\x02خ\x02د\x02ذ\x02ر\x02ز\x02س" +
104 "\x02ش\x02ص\x02ض\x02ط\x02ظ\x02ع\x02غ\x02ف\x02ق\x02ك\x02ل\x02م\x02ن\x02ه" +
105 "\x02و\x02ي\x04لآ\x04لأ\x04لإ\x04لا\x01\x22\x01'\x01/\x01^\x01|\x01~\x02¢" +
106 "\x02£\x02¬\x02¦\x02¥\x08𝅗𝅥\x08𝅘𝅥\x0c𝅘𝅥𝅮\x0c𝅘𝅥𝅯\x0c𝅘𝅥𝅰\x0c𝅘𝅥𝅱\x0c𝅘𝅥𝅲\x08𝆹" +
107 "𝅥\x08𝆺𝅥\x0c𝆹𝅥𝅮\x0c𝆺𝅥𝅮\x0c𝆹𝅥𝅯\x0c𝆺𝅥𝅯\x02ı\x02ȷ\x02α\x02ε\x02ζ\x02η\x02" +
108 "κ\x02λ\x02μ\x02ν\x02ξ\x02ο\x02σ\x02τ\x02υ\x02ψ\x03∇\x03∂\x02ϝ\x02ٮ\x02ڡ" +
109 "\x02ٯ\x020,\x021,\x022,\x023,\x024,\x025,\x026,\x027,\x028,\x029,\x03(a)" +
110 "\x03(b)\x03(c)\x03(d)\x03(e)\x03(f)\x03(g)\x03(h)\x03(i)\x03(j)\x03(k)" +
111 "\x03(l)\x03(m)\x03(n)\x03(o)\x03(p)\x03(q)\x03(r)\x03(s)\x03(t)\x03(u)" +
112 "\x03(v)\x03(w)\x03(x)\x03(y)\x03(z)\x07〔s〕\x02wz\x02hv\x02sd\x03ppv\x02w" +
113 "c\x02mc\x02md\x02dj\x06ほか\x06ココ\x03サ\x03手\x03字\x03双\x03デ\x03二\x03多\x03解" +
114 "\x03天\x03交\x03映\x03無\x03料\x03前\x03後\x03再\x03新\x03初\x03終\x03生\x03販\x03声" +
115 "\x03吹\x03演\x03投\x03捕\x03一\x03三\x03遊\x03左\x03中\x03右\x03指\x03走\x03打\x03禁" +
116 "\x03空\x03合\x03満\x03有\x03月\x03申\x03割\x03営\x03配\x09〔本〕\x09〔三〕\x09〔二〕\x09〔安" +
117 "〕\x09〔点〕\x09〔打〕\x09〔盗〕\x09〔勝〕\x09〔敗〕\x03得\x03可\x03丽\x03丸\x03乁\x03你\x03" +
118 "侮\x03侻\x03倂\x03偺\x03備\x03僧\x03像\x03㒞\x03免\x03兔\x03兤\x03具\x03㒹\x03內\x03" +
119 "冗\x03冤\x03仌\x03冬\x03况\x03凵\x03刃\x03㓟\x03刻\x03剆\x03剷\x03㔕\x03勇\x03勉\x03" +
120 "勤\x03勺\x03包\x03匆\x03北\x03卉\x03卑\x03博\x03即\x03卽\x03卿\x03灰\x03及\x03叟\x03" +
121 "叫\x03叱\x03吆\x03咞\x03吸\x03呈\x03周\x03咢\x03哶\x03唐\x03啓\x03啣\x03善\x03喙\x03" +
122 "喫\x03喳\x03嗂\x03圖\x03嘆\x03圗\x03噑\x03噴\x03切\x03壮\x03城\x03埴\x03堍\x03型\x03" +
123 "堲\x03報\x03墬\x03売\x03壷\x03夆\x03夢\x03奢\x03姬\x03娛\x03娧\x03姘\x03婦\x03㛮\x03" +
124 "嬈\x03嬾\x03寃\x03寘\x03寧\x03寳\x03寿\x03将\x03尢\x03㞁\x03屠\x03屮\x03峀\x03岍\x03" +
125 "嵃\x03嵮\x03嵫\x03嵼\x03巡\x03巢\x03㠯\x03巽\x03帨\x03帽\x03幩\x03㡢\x03㡼\x03庰\x03" +
126 "庳\x03庶\x03廊\x03廾\x03舁\x03弢\x03㣇\x03形\x03彫\x03㣣\x03徚\x03忍\x03志\x03忹\x03" +
127 "悁\x03㤺\x03㤜\x03悔\x03惇\x03慈\x03慌\x03慎\x03慺\x03憎\x03憲\x03憤\x03憯\x03懞\x03" +
128 "懲\x03懶\x03成\x03戛\x03扝\x03抱\x03拔\x03捐\x03挽\x03拼\x03捨\x03掃\x03揤\x03搢\x03" +
129 "揅\x03掩\x03㨮\x03摩\x03摾\x03撝\x03摷\x03㩬\x03敏\x03敬\x03旣\x03書\x03晉\x03㬙\x03" +
130 "暑\x03㬈\x03㫤\x03冒\x03冕\x03最\x03暜\x03肭\x03䏙\x03朗\x03望\x03朡\x03杞\x03杓\x03" +
131 "㭉\x03柺\x03枅\x03桒\x03梅\x03梎\x03栟\x03椔\x03㮝\x03楂\x03榣\x03槪\x03檨\x03櫛\x03" +
132 "㰘\x03次\x03歔\x03㱎\x03歲\x03殟\x03殺\x03殻\x03汎\x03沿\x03泍\x03汧\x03洖\x03派\x03" +
133 "海\x03流\x03浩\x03浸\x03涅\x03洴\x03港\x03湮\x03㴳\x03滋\x03滇\x03淹\x03潮\x03濆\x03" +
134 "瀹\x03瀞\x03瀛\x03㶖\x03灊\x03災\x03灷\x03炭\x03煅\x03熜\x03爨\x03爵\x03牐\x03犀\x03" +
135 "犕\x03獺\x03王\x03㺬\x03玥\x03㺸\x03瑇\x03瑜\x03瑱\x03璅\x03瓊\x03㼛\x03甤\x03甾\x03" +
136 "異\x03瘐\x03㿼\x03䀈\x03直\x03眞\x03真\x03睊\x03䀹\x03瞋\x03䁆\x03䂖\x03硎\x03碌\x03" +
137 "磌\x03䃣\x03祖\x03福\x03秫\x03䄯\x03穀\x03穊\x03穏\x03䈂\x03篆\x03築\x03䈧\x03糒\x03" +
138 "䊠\x03糨\x03糣\x03紀\x03絣\x03䌁\x03緇\x03縂\x03繅\x03䌴\x03䍙\x03罺\x03羕\x03翺\x03" +
139 "者\x03聠\x03聰\x03䏕\x03育\x03脃\x03䐋\x03脾\x03媵\x03舄\x03辞\x03䑫\x03芑\x03芋\x03" +
140 "芝\x03劳\x03花\x03芳\x03芽\x03苦\x03若\x03茝\x03荣\x03莭\x03茣\x03莽\x03菧\x03著\x03" +
141 "荓\x03菊\x03菌\x03菜\x03䔫\x03蓱\x03蓳\x03蔖\x03蕤\x03䕝\x03䕡\x03䕫\x03虐\x03虜\x03" +
142 "虧\x03虩\x03蚩\x03蚈\x03蜎\x03蛢\x03蝹\x03蜨\x03蝫\x03螆\x03蟡\x03蠁\x03䗹\x03衠\x03" +
143 "衣\x03裗\x03裞\x03䘵\x03裺\x03㒻\x03䚾\x03䛇\x03誠\x03諭\x03變\x03豕\x03貫\x03賁\x03" +
144 "贛\x03起\x03跋\x03趼\x03跰\x03軔\x03輸\x03邔\x03郱\x03鄑\x03鄛\x03鈸\x03鋗\x03鋘\x03" +
145 "鉼\x03鏹\x03鐕\x03開\x03䦕\x03閷\x03䧦\x03雃\x03嶲\x03霣\x03䩮\x03䩶\x03韠\x03䪲\x03" +
146 "頋\x03頩\x03飢\x03䬳\x03餩\x03馧\x03駂\x03駾\x03䯎\x03鬒\x03鱀\x03鳽\x03䳎\x03䳭\x03" +
147 "鵧\x03䳸\x03麻\x03䵖\x03黹\x03黾\x03鼅\x03鼏\x03鼖\x03鼻"
148
149var xorData string = "" + // Size: 4855 bytes
150 "\x02\x0c\x09\x02\xb0\xec\x02\xad\xd8\x02\xad\xd9\x02\x06\x07\x02\x0f\x12" +
151 "\x02\x0f\x1f\x02\x0f\x1d\x02\x01\x13\x02\x0f\x16\x02\x0f\x0b\x02\x0f3" +
152 "\x02\x0f7\x02\x0f?\x02\x0f/\x02\x0f*\x02\x0c&\x02\x0c*\x02\x0c;\x02\x0c9" +
153 "\x02\x0c%\x02\xab\xed\x02\xab\xe2\x02\xab\xe3\x02\xa9\xe0\x02\xa9\xe1" +
154 "\x02\xa9\xe6\x02\xa3\xcb\x02\xa3\xc8\x02\xa3\xc9\x02\x01#\x02\x01\x08" +
155 "\x02\x0e>\x02\x0e'\x02\x0f\x03\x02\x03\x0d\x02\x03\x09\x02\x03\x17\x02" +
156 "\x03\x0e\x02\x02\x03\x02\x011\x02\x01\x00\x02\x01\x10\x02\x03<\x02\x07" +
157 "\x0d\x02\x02\x0c\x02\x0c0\x02\x01\x03\x02\x01\x01\x02\x01 \x02\x01\x22" +
158 "\x02\x01)\x02\x01\x0a\x02\x01\x0c\x02\x02\x06\x02\x02\x02\x02\x03\x10" +
159 "\x03\x037 \x03\x0b+\x03\x02\x01\x04\x02\x01\x02\x02\x019\x02\x03\x1c\x02" +
160 "\x02$\x03\x80p$\x02\x03:\x02\x03\x0a\x03\xc1r.\x03\xc1r,\x03\xc1r\x02" +
161 "\x02\x02:\x02\x02>\x02\x02,\x02\x02\x10\x02\x02\x00\x03\xc1s<\x03\xc1s*" +
162 "\x03\xc2L$\x03\xc2L;\x02\x09)\x02\x0a\x19\x03\x83\xab\xe3\x03\x83\xab" +
163 "\xf2\x03 4\xe0\x03\x81\xab\xea\x03\x81\xab\xf3\x03 4\xef\x03\x96\xe1\xcd" +
164 "\x03\x84\xe5\xc3\x02\x0d\x11\x03\x8b\xec\xcb\x03\x94\xec\xcf\x03\x9a\xec" +
165 "\xc2\x03\x8b\xec\xdb\x03\x94\xec\xdf\x03\x9a\xec\xd2\x03\x01\x0c!\x03" +
166 "\x01\x0c#\x03ʠ\x9d\x03ʣ\x9c\x03ʢ\x9f\x03ʥ\x9e\x03ʤ\x91\x03ʧ\x90\x03ʦ\x93" +
167 "\x03ʩ\x92\x03ʨ\x95\x03\xca\xf3\xb5\x03\xca\xf0\xb4\x03\xca\xf1\xb7\x03" +
168 "\xca\xf6\xb6\x03\xca\xf7\x89\x03\xca\xf4\x88\x03\xca\xf5\x8b\x03\xca\xfa" +
169 "\x8a\x03\xca\xfb\x8d\x03\xca\xf8\x8c\x03\xca\xf9\x8f\x03\xca\xfe\x8e\x03" +
170 "\xca\xff\x81\x03\xca\xfc\x80\x03\xca\xfd\x83\x03\xca\xe2\x82\x03\xca\xe3" +
171 "\x85\x03\xca\xe0\x84\x03\xca\xe1\x87\x03\xca\xe6\x86\x03\xca\xe7\x99\x03" +
172 "\xca\xe4\x98\x03\xca\xe5\x9b\x03\xca\xea\x9a\x03\xca\xeb\x9d\x03\xca\xe8" +
173 "\x9c\x03ؓ\x89\x03ߔ\x8b\x02\x010\x03\x03\x04\x1e\x03\x04\x15\x12\x03\x0b" +
174 "\x05,\x03\x06\x04\x00\x03\x06\x04)\x03\x06\x044\x03\x06\x04<\x03\x06\x05" +
175 "\x1d\x03\x06\x06\x00\x03\x06\x06\x0a\x03\x06\x06'\x03\x06\x062\x03\x0786" +
176 "\x03\x079/\x03\x079 \x03\x07:\x0e\x03\x07:\x1b\x03\x07:%\x03\x07;/\x03" +
177 "\x07;%\x03\x074\x11\x03\x076\x09\x03\x077*\x03\x070\x01\x03\x070\x0f\x03" +
178 "\x070.\x03\x071\x16\x03\x071\x04\x03\x0710\x03\x072\x18\x03\x072-\x03" +
179 "\x073\x14\x03\x073>\x03\x07'\x09\x03\x07 \x00\x03\x07\x1f\x0b\x03\x07" +
180 "\x18#\x03\x07\x18(\x03\x07\x186\x03\x07\x18\x03\x03\x07\x19\x16\x03\x07" +
181 "\x116\x03\x07\x12'\x03\x07\x13\x10\x03\x07\x0c&\x03\x07\x0c\x08\x03\x07" +
182 "\x0c\x13\x03\x07\x0d\x02\x03\x07\x0d\x1c\x03\x07\x0b5\x03\x07\x0b\x0a" +
183 "\x03\x07\x0b\x01\x03\x07\x0b\x0f\x03\x07\x05\x00\x03\x07\x05\x09\x03\x07" +
184 "\x05\x0b\x03\x07\x07\x01\x03\x07\x07\x08\x03\x07\x00<\x03\x07\x00+\x03" +
185 "\x07\x01)\x03\x07\x01\x1b\x03\x07\x01\x08\x03\x07\x03?\x03\x0445\x03\x04" +
186 "4\x08\x03\x0454\x03\x04)/\x03\x04)5\x03\x04+\x05\x03\x04+\x14\x03\x04+ " +
187 "\x03\x04+<\x03\x04*&\x03\x04*\x22\x03\x04&8\x03\x04!\x01\x03\x04!\x22" +
188 "\x03\x04\x11+\x03\x04\x10.\x03\x04\x104\x03\x04\x13=\x03\x04\x12\x04\x03" +
189 "\x04\x12\x0a\x03\x04\x0d\x1d\x03\x04\x0d\x07\x03\x04\x0d \x03\x05<>\x03" +
190 "\x055<\x03\x055!\x03\x055#\x03\x055&\x03\x054\x1d\x03\x054\x02\x03\x054" +
191 "\x07\x03\x0571\x03\x053\x1a\x03\x053\x16\x03\x05.<\x03\x05.\x07\x03\x05)" +
192 ":\x03\x05)<\x03\x05)\x0c\x03\x05)\x15\x03\x05+-\x03\x05+5\x03\x05$\x1e" +
193 "\x03\x05$\x14\x03\x05'\x04\x03\x05'\x14\x03\x05&\x02\x03\x05\x226\x03" +
194 "\x05\x22\x0c\x03\x05\x22\x1c\x03\x05\x19\x0a\x03\x05\x1b\x09\x03\x05\x1b" +
195 "\x0c\x03\x05\x14\x07\x03\x05\x16?\x03\x05\x16\x0c\x03\x05\x0c\x05\x03" +
196 "\x05\x0e\x0f\x03\x05\x01\x0e\x03\x05\x00(\x03\x05\x030\x03\x05\x03\x06" +
197 "\x03\x0a==\x03\x0a=1\x03\x0a=,\x03\x0a=\x0c\x03\x0a??\x03\x0a<\x08\x03" +
198 "\x0a9!\x03\x0a9)\x03\x0a97\x03\x0a99\x03\x0a6\x0a\x03\x0a6\x1c\x03\x0a6" +
199 "\x17\x03\x0a7'\x03\x0a78\x03\x0a73\x03\x0a'\x01\x03\x0a'&\x03\x0a\x1f" +
200 "\x0e\x03\x0a\x1f\x03\x03\x0a\x1f3\x03\x0a\x1b/\x03\x0a\x18\x19\x03\x0a" +
201 "\x19\x01\x03\x0a\x16\x14\x03\x0a\x0e\x22\x03\x0a\x0f\x10\x03\x0a\x0f\x02" +
202 "\x03\x0a\x0f \x03\x0a\x0c\x04\x03\x0a\x0b>\x03\x0a\x0b+\x03\x0a\x08/\x03" +
203 "\x0a\x046\x03\x0a\x05\x14\x03\x0a\x00\x04\x03\x0a\x00\x10\x03\x0a\x00" +
204 "\x14\x03\x0b<3\x03\x0b;*\x03\x0b9\x22\x03\x0b9)\x03\x0b97\x03\x0b+\x10" +
205 "\x03\x0b((\x03\x0b&5\x03\x0b$\x1c\x03\x0b$\x12\x03\x0b%\x04\x03\x0b#<" +
206 "\x03\x0b#0\x03\x0b#\x0d\x03\x0b#\x19\x03\x0b!:\x03\x0b!\x1f\x03\x0b!\x00" +
207 "\x03\x0b\x1e5\x03\x0b\x1c\x1d\x03\x0b\x1d-\x03\x0b\x1d(\x03\x0b\x18.\x03" +
208 "\x0b\x18 \x03\x0b\x18\x16\x03\x0b\x14\x13\x03\x0b\x15$\x03\x0b\x15\x22" +
209 "\x03\x0b\x12\x1b\x03\x0b\x12\x10\x03\x0b\x132\x03\x0b\x13=\x03\x0b\x12" +
210 "\x18\x03\x0b\x0c&\x03\x0b\x061\x03\x0b\x06:\x03\x0b\x05#\x03\x0b\x05<" +
211 "\x03\x0b\x04\x0b\x03\x0b\x04\x04\x03\x0b\x04\x1b\x03\x0b\x042\x03\x0b" +
212 "\x041\x03\x0b\x03\x03\x03\x0b\x03\x1d\x03\x0b\x03/\x03\x0b\x03+\x03\x0b" +
213 "\x02\x1b\x03\x0b\x02\x00\x03\x0b\x01\x1e\x03\x0b\x01\x08\x03\x0b\x015" +
214 "\x03\x06\x0d9\x03\x06\x0d=\x03\x06\x0d?\x03\x02\x001\x03\x02\x003\x03" +
215 "\x02\x02\x19\x03\x02\x006\x03\x02\x02\x1b\x03\x02\x004\x03\x02\x00<\x03" +
216 "\x02\x02\x0a\x03\x02\x02\x0e\x03\x02\x01\x1a\x03\x02\x01\x07\x03\x02\x01" +
217 "\x05\x03\x02\x01\x0b\x03\x02\x01%\x03\x02\x01\x0c\x03\x02\x01\x04\x03" +
218 "\x02\x01\x1c\x03\x02\x00.\x03\x02\x002\x03\x02\x00>\x03\x02\x00\x12\x03" +
219 "\x02\x00\x16\x03\x02\x011\x03\x02\x013\x03\x02\x02 \x03\x02\x02%\x03\x02" +
220 "\x02$\x03\x02\x028\x03\x02\x02;\x03\x02\x024\x03\x02\x012\x03\x02\x022" +
221 "\x03\x02\x02/\x03\x02\x01,\x03\x02\x01\x13\x03\x02\x01\x16\x03\x02\x01" +
222 "\x11\x03\x02\x01\x1e\x03\x02\x01\x15\x03\x02\x01\x17\x03\x02\x01\x0f\x03" +
223 "\x02\x01\x08\x03\x02\x00?\x03\x02\x03\x07\x03\x02\x03\x0d\x03\x02\x03" +
224 "\x13\x03\x02\x03\x1d\x03\x02\x03\x1f\x03\x02\x00\x03\x03\x02\x00\x0d\x03" +
225 "\x02\x00\x01\x03\x02\x00\x1b\x03\x02\x00\x19\x03\x02\x00\x18\x03\x02\x00" +
226 "\x13\x03\x02\x00/\x03\x07>\x12\x03\x07<\x1f\x03\x07>\x1d\x03\x06\x1d\x0e" +
227 "\x03\x07>\x1c\x03\x07>:\x03\x07>\x13\x03\x04\x12+\x03\x07?\x03\x03\x07>" +
228 "\x02\x03\x06\x224\x03\x06\x1a.\x03\x07<%\x03\x06\x1c\x0b\x03\x0609\x03" +
229 "\x05\x1f\x01\x03\x04'\x08\x03\x93\xfd\xf5\x03\x02\x0d \x03\x02\x0d#\x03" +
230 "\x02\x0d!\x03\x02\x0d&\x03\x02\x0d\x22\x03\x02\x0d/\x03\x02\x0d,\x03\x02" +
231 "\x0d$\x03\x02\x0d'\x03\x02\x0d%\x03\x02\x0d;\x03\x02\x0d=\x03\x02\x0d?" +
232 "\x03\x099.\x03\x08\x0b7\x03\x08\x02\x14\x03\x08\x14\x0d\x03\x08.:\x03" +
233 "\x089'\x03\x0f\x0b\x18\x03\x0f\x1c1\x03\x0f\x17&\x03\x0f9\x1f\x03\x0f0" +
234 "\x0c\x03\x0e\x0a9\x03\x0e\x056\x03\x0e\x1c#\x03\x0f\x13\x0e\x03\x072\x00" +
235 "\x03\x070\x0d\x03\x072\x0b\x03\x06\x11\x18\x03\x070\x10\x03\x06\x0f(\x03" +
236 "\x072\x05\x03\x06\x0f,\x03\x073\x15\x03\x06\x07\x08\x03\x05\x16\x02\x03" +
237 "\x04\x0b \x03\x05:8\x03\x05\x16%\x03\x0a\x0d\x1f\x03\x06\x16\x10\x03\x05" +
238 "\x1d5\x03\x05*;\x03\x05\x16\x1b\x03\x04.-\x03\x06\x1a\x19\x03\x04\x03," +
239 "\x03\x0b87\x03\x04/\x0a\x03\x06\x00,\x03\x04-\x01\x03\x04\x1e-\x03\x06/(" +
240 "\x03\x0a\x0b5\x03\x06\x0e7\x03\x06\x07.\x03\x0597\x03\x0a*%\x03\x0760" +
241 "\x03\x06\x0c;\x03\x05'\x00\x03\x072.\x03\x072\x08\x03\x06=\x01\x03\x06" +
242 "\x05\x1b\x03\x06\x06\x12\x03\x06$=\x03\x06'\x0d\x03\x04\x11\x0f\x03\x076" +
243 ",\x03\x06\x07;\x03\x06.,\x03\x86\xf9\xea\x03\x8f\xff\xeb\x02\x092\x02" +
244 "\x095\x02\x094\x02\x09;\x02\x09>\x02\x098\x02\x09*\x02\x09/\x02\x09,\x02" +
245 "\x09%\x02\x09&\x02\x09#\x02\x09 \x02\x08!\x02\x08%\x02\x08$\x02\x08+\x02" +
246 "\x08.\x02\x08*\x02\x08&\x02\x088\x02\x08>\x02\x084\x02\x086\x02\x080\x02" +
247 "\x08\x10\x02\x08\x17\x02\x08\x12\x02\x08\x1d\x02\x08\x1f\x02\x08\x13\x02" +
248 "\x08\x15\x02\x08\x14\x02\x08\x0c\x03\x8b\xfd\xd0\x03\x81\xec\xc6\x03\x87" +
249 "\xe0\x8a\x03-2\xe3\x03\x80\xef\xe4\x03-2\xea\x03\x88\xe6\xeb\x03\x8e\xe6" +
250 "\xe8\x03\x84\xe6\xe9\x03\x97\xe6\xee\x03-2\xf9\x03-2\xf6\x03\x8e\xe3\xad" +
251 "\x03\x80\xe3\x92\x03\x88\xe3\x90\x03\x8e\xe3\x90\x03\x80\xe3\x97\x03\x88" +
252 "\xe3\x95\x03\x88\xfe\xcb\x03\x8e\xfe\xca\x03\x84\xfe\xcd\x03\x91\xef\xc9" +
253 "\x03-2\xc1\x03-2\xc0\x03-2\xcb\x03\x88@\x09\x03\x8e@\x08\x03\x8f\xe0\xf5" +
254 "\x03\x8e\xe6\xf9\x03\x8e\xe0\xfa\x03\x93\xff\xf4\x03\x84\xee\xd3\x03\x0b" +
255 "(\x04\x023 \x021;\x02\x01*\x03\x0b#\x10\x03\x0b 0\x03\x0b!\x10\x03\x0b!0" +
256 "\x03\x07\x15\x08\x03\x09?5\x03\x07\x1f\x08\x03\x07\x17\x0b\x03\x09\x1f" +
257 "\x15\x03\x0b\x1c7\x03\x0a+#\x03\x06\x1a\x1b\x03\x06\x1a\x14\x03\x0a\x01" +
258 "\x18\x03\x06#\x1b\x03\x0a2\x0c\x03\x0a\x01\x04\x03\x09#;\x03\x08='\x03" +
259 "\x08\x1a\x0a\x03\x07</\x03\x07:+\x03\x07\x07*\x03\x06&\x1c\x03\x09\x0c" +
260 "\x16\x03\x09\x10\x0e\x03\x08'\x0f\x03\x08+\x09\x03\x074%\x03\x06!3\x03" +
261 "\x06\x03+\x03\x0b\x1e\x19\x03\x0a))\x03\x09\x08\x19\x03\x08,\x05\x03\x07" +
262 "<2\x03\x06\x1c>\x03\x0a\x111\x03\x09\x1b\x09\x03\x073.\x03\x07\x01\x00" +
263 "\x03\x09/,\x03\x07#>\x03\x07\x048\x03\x0a\x1f\x22\x03\x098>\x03\x09\x11" +
264 "\x00\x03\x08/\x17\x03\x06'\x22\x03\x0b\x1a+\x03\x0a\x22\x19\x03\x0a/1" +
265 "\x03\x0974\x03\x09\x0f\x22\x03\x08,\x22\x03\x08?\x14\x03\x07$5\x03\x07<3" +
266 "\x03\x07=*\x03\x07\x13\x18\x03\x068\x0a\x03\x06\x09\x16\x03\x06\x13\x00" +
267 "\x03\x08\x067\x03\x08\x01\x03\x03\x08\x12\x1d\x03\x07+7\x03\x06(;\x03" +
268 "\x06\x1c?\x03\x07\x0e\x17\x03\x0a\x06\x1d\x03\x0a\x19\x07\x03\x08\x14$" +
269 "\x03\x07$;\x03\x08,$\x03\x08\x06\x0d\x03\x07\x16\x0a\x03\x06>>\x03\x0a" +
270 "\x06\x12\x03\x0a\x14)\x03\x09\x0d\x1f\x03\x09\x12\x17\x03\x09\x19\x01" +
271 "\x03\x08\x11 \x03\x08\x1d'\x03\x06<\x1a\x03\x0a.\x00\x03\x07'\x18\x03" +
272 "\x0a\x22\x08\x03\x08\x0d\x0a\x03\x08\x13)\x03\x07*)\x03\x06<,\x03\x07" +
273 "\x0b\x1a\x03\x09.\x14\x03\x09\x0d\x1e\x03\x07\x0e#\x03\x0b\x1d'\x03\x0a" +
274 "\x0a8\x03\x09%2\x03\x08+&\x03\x080\x12\x03\x0a)4\x03\x08\x06\x1f\x03\x0b" +
275 "\x1b\x1a\x03\x0a\x1b\x0f\x03\x0b\x1d*\x03\x09\x16$\x03\x090\x11\x03\x08" +
276 "\x11\x08\x03\x0a*(\x03\x0a\x042\x03\x089,\x03\x074'\x03\x07\x0f\x05\x03" +
277 "\x09\x0b\x0a\x03\x07\x1b\x01\x03\x09\x17:\x03\x09.\x0d\x03\x07.\x11\x03" +
278 "\x09+\x15\x03\x080\x13\x03\x0b\x1f\x19\x03\x0a \x11\x03\x0a\x220\x03\x09" +
279 "\x07;\x03\x08\x16\x1c\x03\x07,\x13\x03\x07\x0e/\x03\x06\x221\x03\x0a." +
280 "\x0a\x03\x0a7\x02\x03\x0a\x032\x03\x0a\x1d.\x03\x091\x06\x03\x09\x19:" +
281 "\x03\x08\x02/\x03\x060+\x03\x06\x0f-\x03\x06\x1c\x1f\x03\x06\x1d\x07\x03" +
282 "\x0a,\x11\x03\x09=\x0d\x03\x09\x0b;\x03\x07\x1b/\x03\x0a\x1f:\x03\x09 " +
283 "\x1f\x03\x09.\x10\x03\x094\x0b\x03\x09\x1a1\x03\x08#\x1a\x03\x084\x1d" +
284 "\x03\x08\x01\x1f\x03\x08\x11\x22\x03\x07'8\x03\x07\x1a>\x03\x0757\x03" +
285 "\x06&9\x03\x06+\x11\x03\x0a.\x0b\x03\x0a,>\x03\x0a4#\x03\x08%\x17\x03" +
286 "\x07\x05\x22\x03\x07\x0c\x0b\x03\x0a\x1d+\x03\x0a\x19\x16\x03\x09+\x1f" +
287 "\x03\x09\x08\x0b\x03\x08\x16\x18\x03\x08+\x12\x03\x0b\x1d\x0c\x03\x0a=" +
288 "\x10\x03\x0a\x09\x0d\x03\x0a\x10\x11\x03\x09&0\x03\x08(\x1f\x03\x087\x07" +
289 "\x03\x08\x185\x03\x07'6\x03\x06.\x05\x03\x06=\x04\x03\x06;;\x03\x06\x06," +
290 "\x03\x0b\x18>\x03\x08\x00\x18\x03\x06 \x03\x03\x06<\x00\x03\x09%\x18\x03" +
291 "\x0b\x1c<\x03\x0a%!\x03\x0a\x09\x12\x03\x0a\x16\x02\x03\x090'\x03\x09" +
292 "\x0e=\x03\x08 \x0e\x03\x08>\x03\x03\x074>\x03\x06&?\x03\x06\x19\x09\x03" +
293 "\x06?(\x03\x0a-\x0e\x03\x09:3\x03\x098:\x03\x09\x12\x0b\x03\x09\x1d\x17" +
294 "\x03\x087\x05\x03\x082\x14\x03\x08\x06%\x03\x08\x13\x1f\x03\x06\x06\x0e" +
295 "\x03\x0a\x22<\x03\x09/<\x03\x06>+\x03\x0a'?\x03\x0a\x13\x0c\x03\x09\x10<" +
296 "\x03\x07\x1b=\x03\x0a\x19\x13\x03\x09\x22\x1d\x03\x09\x07\x0d\x03\x08)" +
297 "\x1c\x03\x06=\x1a\x03\x0a/4\x03\x0a7\x11\x03\x0a\x16:\x03\x09?3\x03\x09:" +
298 "/\x03\x09\x05\x0a\x03\x09\x14\x06\x03\x087\x22\x03\x080\x07\x03\x08\x1a" +
299 "\x1f\x03\x07\x04(\x03\x07\x04\x09\x03\x06 %\x03\x06<\x08\x03\x0a+\x14" +
300 "\x03\x09\x1d\x16\x03\x0a70\x03\x08 >\x03\x0857\x03\x070\x0a\x03\x06=\x12" +
301 "\x03\x06\x16%\x03\x06\x1d,\x03\x099#\x03\x09\x10>\x03\x07 \x1e\x03\x08" +
302 "\x0c<\x03\x08\x0b\x18\x03\x08\x15+\x03\x08,:\x03\x08%\x22\x03\x07\x0a$" +
303 "\x03\x0b\x1c=\x03\x07+\x08\x03\x0a/\x05\x03\x0a \x07\x03\x0a\x12'\x03" +
304 "\x09#\x11\x03\x08\x1b\x15\x03\x0a\x06\x01\x03\x09\x1c\x1b\x03\x0922\x03" +
305 "\x07\x14<\x03\x07\x09\x04\x03\x061\x04\x03\x07\x0e\x01\x03\x0a\x13\x18" +
306 "\x03\x0a-\x0c\x03\x0a?\x0d\x03\x0a\x09\x0a\x03\x091&\x03\x0a/\x0b\x03" +
307 "\x08$<\x03\x083\x1d\x03\x08\x0c$\x03\x08\x0d\x07\x03\x08\x0d?\x03\x08" +
308 "\x0e\x14\x03\x065\x0a\x03\x08\x1a#\x03\x08\x16#\x03\x0702\x03\x07\x03" +
309 "\x1a\x03\x06(\x1d\x03\x06+\x1b\x03\x06\x0b\x05\x03\x06\x0b\x17\x03\x06" +
310 "\x0c\x04\x03\x06\x1e\x19\x03\x06+0\x03\x062\x18\x03\x0b\x16\x1e\x03\x0a+" +
311 "\x16\x03\x0a-?\x03\x0a#:\x03\x0a#\x10\x03\x0a%$\x03\x0a>+\x03\x0a01\x03" +
312 "\x0a1\x10\x03\x0a\x099\x03\x0a\x0a\x12\x03\x0a\x19\x1f\x03\x0a\x19\x12" +
313 "\x03\x09*)\x03\x09-\x16\x03\x09.1\x03\x09.2\x03\x09<\x0e\x03\x09> \x03" +
314 "\x093\x12\x03\x09\x0b\x01\x03\x09\x1c2\x03\x09\x11\x1c\x03\x09\x15%\x03" +
315 "\x08,&\x03\x08!\x22\x03\x089(\x03\x08\x0b\x1a\x03\x08\x0d2\x03\x08\x0c" +
316 "\x04\x03\x08\x0c\x06\x03\x08\x0c\x1f\x03\x08\x0c\x0c\x03\x08\x0f\x1f\x03" +
317 "\x08\x0f\x1d\x03\x08\x00\x14\x03\x08\x03\x14\x03\x08\x06\x16\x03\x08\x1e" +
318 "#\x03\x08\x11\x11\x03\x08\x10\x18\x03\x08\x14(\x03\x07)\x1e\x03\x07.1" +
319 "\x03\x07 $\x03\x07 '\x03\x078\x08\x03\x07\x0d0\x03\x07\x0f7\x03\x07\x05#" +
320 "\x03\x07\x05\x1a\x03\x07\x1a7\x03\x07\x1d-\x03\x07\x17\x10\x03\x06)\x1f" +
321 "\x03\x062\x0b\x03\x066\x16\x03\x06\x09\x11\x03\x09(\x1e\x03\x07!5\x03" +
322 "\x0b\x11\x16\x03\x0a/\x04\x03\x0a,\x1a\x03\x0b\x173\x03\x0a,1\x03\x0a/5" +
323 "\x03\x0a\x221\x03\x0a\x22\x0d\x03\x0a?%\x03\x0a<,\x03\x0a?#\x03\x0a>\x19" +
324 "\x03\x0a\x08&\x03\x0a\x0b\x0e\x03\x0a\x0c:\x03\x0a\x0c+\x03\x0a\x03\x22" +
325 "\x03\x0a\x06)\x03\x0a\x11\x10\x03\x0a\x11\x1a\x03\x0a\x17-\x03\x0a\x14(" +
326 "\x03\x09)\x1e\x03\x09/\x09\x03\x09.\x00\x03\x09,\x07\x03\x09/*\x03\x09-9" +
327 "\x03\x09\x228\x03\x09%\x09\x03\x09:\x12\x03\x09;\x1d\x03\x09?\x06\x03" +
328 "\x093%\x03\x096\x05\x03\x096\x08\x03\x097\x02\x03\x09\x07,\x03\x09\x04," +
329 "\x03\x09\x1f\x16\x03\x09\x11\x03\x03\x09\x11\x12\x03\x09\x168\x03\x08*" +
330 "\x05\x03\x08/2\x03\x084:\x03\x08\x22+\x03\x08 0\x03\x08&\x0a\x03\x08;" +
331 "\x10\x03\x08>$\x03\x08>\x18\x03\x0829\x03\x082:\x03\x081,\x03\x081<\x03" +
332 "\x081\x1c\x03\x087#\x03\x087*\x03\x08\x09'\x03\x08\x00\x1d\x03\x08\x05-" +
333 "\x03\x08\x1f4\x03\x08\x1d\x04\x03\x08\x16\x0f\x03\x07*7\x03\x07'!\x03" +
334 "\x07%\x1b\x03\x077\x0c\x03\x07\x0c1\x03\x07\x0c.\x03\x07\x00\x06\x03\x07" +
335 "\x01\x02\x03\x07\x010\x03\x07\x06=\x03\x07\x01\x03\x03\x07\x01\x13\x03" +
336 "\x07\x06\x06\x03\x07\x05\x0a\x03\x07\x1f\x09\x03\x07\x17:\x03\x06*1\x03" +
337 "\x06-\x1d\x03\x06\x223\x03\x062:\x03\x060$\x03\x066\x1e\x03\x064\x12\x03" +
338 "\x0645\x03\x06\x0b\x00\x03\x06\x0b7\x03\x06\x07\x1f\x03\x06\x15\x12\x03" +
339 "\x0c\x05\x0f\x03\x0b+\x0b\x03\x0b+-\x03\x06\x16\x1b\x03\x06\x15\x17\x03" +
340 "\x89\xca\xea\x03\x89\xca\xe8\x03\x0c8\x10\x03\x0c8\x01\x03\x0c8\x0f\x03" +
341 "\x0d8%\x03\x0d8!\x03\x0c8-\x03\x0c8/\x03\x0c8+\x03\x0c87\x03\x0c85\x03" +
342 "\x0c9\x09\x03\x0c9\x0d\x03\x0c9\x0f\x03\x0c9\x0b\x03\xcfu\x0c\x03\xcfu" +
343 "\x0f\x03\xcfu\x0e\x03\xcfu\x09\x03\x0c9\x10\x03\x0d9\x0c\x03\xcf`;\x03" +
344 "\xcf`>\x03\xcf`9\x03\xcf`8\x03\xcf`7\x03\xcf`*\x03\xcf`-\x03\xcf`,\x03" +
345 "\x0d\x1b\x1a\x03\x0d\x1b&\x03\x0c=.\x03\x0c=%\x03\x0c>\x1e\x03\x0c>\x14" +
346 "\x03\x0c?\x06\x03\x0c?\x0b\x03\x0c?\x0c\x03\x0c?\x0d\x03\x0c?\x02\x03" +
347 "\x0c>\x0f\x03\x0c>\x08\x03\x0c>\x09\x03\x0c>,\x03\x0c>\x0c\x03\x0c?\x13" +
348 "\x03\x0c?\x16\x03\x0c?\x15\x03\x0c?\x1c\x03\x0c?\x1f\x03\x0c?\x1d\x03" +
349 "\x0c?\x1a\x03\x0c?\x17\x03\x0c?\x08\x03\x0c?\x09\x03\x0c?\x0e\x03\x0c?" +
350 "\x04\x03\x0c?\x05\x03\x0c<?\x03\x0c=\x00\x03\x0c=\x06\x03\x0c=\x05\x03" +
351 "\x0c=\x0c\x03\x0c=\x0f\x03\x0c=\x0d\x03\x0c=\x0b\x03\x0c=\x07\x03\x0c=" +
352 "\x19\x03\x0c=\x15\x03\x0c=\x11\x03\x0c=1\x03\x0c=3\x03\x0c=0\x03\x0c=>" +
353 "\x03\x0c=2\x03\x0c=6\x03\x0c<\x07\x03\x0c<\x05\x03\x0e:!\x03\x0e:#\x03" +
354 "\x0e8\x09\x03\x0e:&\x03\x0e8\x0b\x03\x0e:$\x03\x0e:,\x03\x0e8\x1a\x03" +
355 "\x0e8\x1e\x03\x0e:*\x03\x0e:7\x03\x0e:5\x03\x0e:;\x03\x0e:\x15\x03\x0e:<" +
356 "\x03\x0e:4\x03\x0e:'\x03\x0e:-\x03\x0e:%\x03\x0e:?\x03\x0e:=\x03\x0e:)" +
357 "\x03\x0e:/\x03\xcfs'\x03\x0d=\x0f\x03\x0d+*\x03\x0d99\x03\x0d9;\x03\x0d9" +
358 "?\x03\x0d)\x0d\x03\x0d(%\x02\x01\x18\x02\x01(\x02\x01\x1e\x03\x0f$!\x03" +
359 "\x0f87\x03\x0f4\x0e\x03\x0f5\x1d\x03\x06'\x03\x03\x0f\x08\x18\x03\x0f" +
360 "\x0d\x1b\x03\x0e2=\x03\x0e;\x08\x03\x0e:\x0b\x03\x0e\x06$\x03\x0e\x0d)" +
361 "\x03\x0e\x16\x1f\x03\x0e\x16\x1b\x03\x0d$\x0a\x03\x05,\x1d\x03\x0d. \x03" +
362 "\x0d.#\x03\x0c(/\x03\x09%\x02\x03\x0d90\x03\x0d\x0e4\x03\x0d\x0d\x0f\x03" +
363 "\x0c#\x00\x03\x0c,\x1e\x03\x0c2\x0e\x03\x0c\x01\x17\x03\x0c\x09:\x03\x0e" +
364 "\x173\x03\x0c\x08\x03\x03\x0c\x11\x07\x03\x0c\x10\x18\x03\x0c\x1f\x1c" +
365 "\x03\x0c\x19\x0e\x03\x0c\x1a\x1f\x03\x0f0>\x03\x0b->\x03\x0b<+\x03\x0b8" +
366 "\x13\x03\x0b\x043\x03\x0b\x14\x03\x03\x0b\x16%\x03\x0d\x22&\x03\x0b\x1a" +
367 "\x1a\x03\x0b\x1a\x04\x03\x0a%9\x03\x0a&2\x03\x0a&0\x03\x0a!\x1a\x03\x0a!" +
368 "7\x03\x0a5\x10\x03\x0a=4\x03\x0a?\x0e\x03\x0a>\x10\x03\x0a\x00 \x03\x0a" +
369 "\x0f:\x03\x0a\x0f9\x03\x0a\x0b\x0a\x03\x0a\x17%\x03\x0a\x1b-\x03\x09-" +
370 "\x1a\x03\x09,4\x03\x09.,\x03\x09)\x09\x03\x096!\x03\x091\x1f\x03\x093" +
371 "\x16\x03\x0c+\x1f\x03\x098 \x03\x098=\x03\x0c(\x1a\x03\x0c(\x16\x03\x09" +
372 "\x0a+\x03\x09\x16\x12\x03\x09\x13\x0e\x03\x09\x153\x03\x08)!\x03\x09\x1a" +
373 "\x01\x03\x09\x18\x01\x03\x08%#\x03\x08>\x22\x03\x08\x05%\x03\x08\x02*" +
374 "\x03\x08\x15;\x03\x08\x1b7\x03\x0f\x07\x1d\x03\x0f\x04\x03\x03\x070\x0c" +
375 "\x03\x07;\x0b\x03\x07\x08\x17\x03\x07\x12\x06\x03\x06/-\x03\x0671\x03" +
376 "\x065+\x03\x06>7\x03\x06\x049\x03\x05+\x1e\x03\x05,\x17\x03\x05 \x1d\x03" +
377 "\x05\x22\x05\x03\x050\x1d"
378
379// lookup returns the trie value for the first UTF-8 encoding in s and
380// the width in bytes of this encoding. The size will be 0 if s does not
381// hold enough bytes to complete the encoding. len(s) must be greater than 0.
382func (t *idnaTrie) lookup(s []byte) (v uint16, sz int) {
383 c0 := s[0]
384 switch {
385 case c0 < 0x80: // is ASCII
386 return idnaValues[c0], 1
387 case c0 < 0xC2:
388 return 0, 1 // Illegal UTF-8: not a starter, not ASCII.
389 case c0 < 0xE0: // 2-byte UTF-8
390 if len(s) < 2 {
391 return 0, 0
392 }
393 i := idnaIndex[c0]
394 c1 := s[1]
395 if c1 < 0x80 || 0xC0 <= c1 {
396 return 0, 1 // Illegal UTF-8: not a continuation byte.
397 }
398 return t.lookupValue(uint32(i), c1), 2
399 case c0 < 0xF0: // 3-byte UTF-8
400 if len(s) < 3 {
401 return 0, 0
402 }
403 i := idnaIndex[c0]
404 c1 := s[1]
405 if c1 < 0x80 || 0xC0 <= c1 {
406 return 0, 1 // Illegal UTF-8: not a continuation byte.
407 }
408 o := uint32(i)<<6 + uint32(c1)
409 i = idnaIndex[o]
410 c2 := s[2]
411 if c2 < 0x80 || 0xC0 <= c2 {
412 return 0, 2 // Illegal UTF-8: not a continuation byte.
413 }
414 return t.lookupValue(uint32(i), c2), 3
415 case c0 < 0xF8: // 4-byte UTF-8
416 if len(s) < 4 {
417 return 0, 0
418 }
419 i := idnaIndex[c0]
420 c1 := s[1]
421 if c1 < 0x80 || 0xC0 <= c1 {
422 return 0, 1 // Illegal UTF-8: not a continuation byte.
423 }
424 o := uint32(i)<<6 + uint32(c1)
425 i = idnaIndex[o]
426 c2 := s[2]
427 if c2 < 0x80 || 0xC0 <= c2 {
428 return 0, 2 // Illegal UTF-8: not a continuation byte.
429 }
430 o = uint32(i)<<6 + uint32(c2)
431 i = idnaIndex[o]
432 c3 := s[3]
433 if c3 < 0x80 || 0xC0 <= c3 {
434 return 0, 3 // Illegal UTF-8: not a continuation byte.
435 }
436 return t.lookupValue(uint32(i), c3), 4
437 }
438 // Illegal rune
439 return 0, 1
440}
441
442// lookupUnsafe returns the trie value for the first UTF-8 encoding in s.
443// s must start with a full and valid UTF-8 encoded rune.
444func (t *idnaTrie) lookupUnsafe(s []byte) uint16 {
445 c0 := s[0]
446 if c0 < 0x80 { // is ASCII
447 return idnaValues[c0]
448 }
449 i := idnaIndex[c0]
450 if c0 < 0xE0 { // 2-byte UTF-8
451 return t.lookupValue(uint32(i), s[1])
452 }
453 i = idnaIndex[uint32(i)<<6+uint32(s[1])]
454 if c0 < 0xF0 { // 3-byte UTF-8
455 return t.lookupValue(uint32(i), s[2])
456 }
457 i = idnaIndex[uint32(i)<<6+uint32(s[2])]
458 if c0 < 0xF8 { // 4-byte UTF-8
459 return t.lookupValue(uint32(i), s[3])
460 }
461 return 0
462}
463
464// lookupString returns the trie value for the first UTF-8 encoding in s and
465// the width in bytes of this encoding. The size will be 0 if s does not
466// hold enough bytes to complete the encoding. len(s) must be greater than 0.
467func (t *idnaTrie) lookupString(s string) (v uint16, sz int) {
468 c0 := s[0]
469 switch {
470 case c0 < 0x80: // is ASCII
471 return idnaValues[c0], 1
472 case c0 < 0xC2:
473 return 0, 1 // Illegal UTF-8: not a starter, not ASCII.
474 case c0 < 0xE0: // 2-byte UTF-8
475 if len(s) < 2 {
476 return 0, 0
477 }
478 i := idnaIndex[c0]
479 c1 := s[1]
480 if c1 < 0x80 || 0xC0 <= c1 {
481 return 0, 1 // Illegal UTF-8: not a continuation byte.
482 }
483 return t.lookupValue(uint32(i), c1), 2
484 case c0 < 0xF0: // 3-byte UTF-8
485 if len(s) < 3 {
486 return 0, 0
487 }
488 i := idnaIndex[c0]
489 c1 := s[1]
490 if c1 < 0x80 || 0xC0 <= c1 {
491 return 0, 1 // Illegal UTF-8: not a continuation byte.
492 }
493 o := uint32(i)<<6 + uint32(c1)
494 i = idnaIndex[o]
495 c2 := s[2]
496 if c2 < 0x80 || 0xC0 <= c2 {
497 return 0, 2 // Illegal UTF-8: not a continuation byte.
498 }
499 return t.lookupValue(uint32(i), c2), 3
500 case c0 < 0xF8: // 4-byte UTF-8
501 if len(s) < 4 {
502 return 0, 0
503 }
504 i := idnaIndex[c0]
505 c1 := s[1]
506 if c1 < 0x80 || 0xC0 <= c1 {
507 return 0, 1 // Illegal UTF-8: not a continuation byte.
508 }
509 o := uint32(i)<<6 + uint32(c1)
510 i = idnaIndex[o]
511 c2 := s[2]
512 if c2 < 0x80 || 0xC0 <= c2 {
513 return 0, 2 // Illegal UTF-8: not a continuation byte.
514 }
515 o = uint32(i)<<6 + uint32(c2)
516 i = idnaIndex[o]
517 c3 := s[3]
518 if c3 < 0x80 || 0xC0 <= c3 {
519 return 0, 3 // Illegal UTF-8: not a continuation byte.
520 }
521 return t.lookupValue(uint32(i), c3), 4
522 }
523 // Illegal rune
524 return 0, 1
525}
526
527// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s.
528// s must start with a full and valid UTF-8 encoded rune.
529func (t *idnaTrie) lookupStringUnsafe(s string) uint16 {
530 c0 := s[0]
531 if c0 < 0x80 { // is ASCII
532 return idnaValues[c0]
533 }
534 i := idnaIndex[c0]
535 if c0 < 0xE0 { // 2-byte UTF-8
536 return t.lookupValue(uint32(i), s[1])
537 }
538 i = idnaIndex[uint32(i)<<6+uint32(s[1])]
539 if c0 < 0xF0 { // 3-byte UTF-8
540 return t.lookupValue(uint32(i), s[2])
541 }
542 i = idnaIndex[uint32(i)<<6+uint32(s[2])]
543 if c0 < 0xF8 { // 4-byte UTF-8
544 return t.lookupValue(uint32(i), s[3])
545 }
546 return 0
547}
548
549// idnaTrie. Total size: 28600 bytes (27.93 KiB). Checksum: 95575047b5d8fff.
550type idnaTrie struct{}
551
552func newIdnaTrie(i int) *idnaTrie {
553 return &idnaTrie{}
554}
555
556// lookupValue determines the type of block n and looks up the value for b.
557func (t *idnaTrie) lookupValue(n uint32, b byte) uint16 {
558 switch {
559 case n < 124:
560 return uint16(idnaValues[n<<6+uint32(b)])
561 default:
562 n -= 124
563 return uint16(idnaSparse.lookup(n, b))
564 }
565}
566
567// idnaValues: 126 blocks, 8064 entries, 16128 bytes
568// The third block is the zero block.
569var idnaValues = [8064]uint16{
570 // Block 0x0, offset 0x0
571 0x00: 0x0080, 0x01: 0x0080, 0x02: 0x0080, 0x03: 0x0080, 0x04: 0x0080, 0x05: 0x0080,
572 0x06: 0x0080, 0x07: 0x0080, 0x08: 0x0080, 0x09: 0x0080, 0x0a: 0x0080, 0x0b: 0x0080,
573 0x0c: 0x0080, 0x0d: 0x0080, 0x0e: 0x0080, 0x0f: 0x0080, 0x10: 0x0080, 0x11: 0x0080,
574 0x12: 0x0080, 0x13: 0x0080, 0x14: 0x0080, 0x15: 0x0080, 0x16: 0x0080, 0x17: 0x0080,
575 0x18: 0x0080, 0x19: 0x0080, 0x1a: 0x0080, 0x1b: 0x0080, 0x1c: 0x0080, 0x1d: 0x0080,
576 0x1e: 0x0080, 0x1f: 0x0080, 0x20: 0x0080, 0x21: 0x0080, 0x22: 0x0080, 0x23: 0x0080,
577 0x24: 0x0080, 0x25: 0x0080, 0x26: 0x0080, 0x27: 0x0080, 0x28: 0x0080, 0x29: 0x0080,
578 0x2a: 0x0080, 0x2b: 0x0080, 0x2c: 0x0080, 0x2d: 0x0008, 0x2e: 0x0008, 0x2f: 0x0080,
579 0x30: 0x0008, 0x31: 0x0008, 0x32: 0x0008, 0x33: 0x0008, 0x34: 0x0008, 0x35: 0x0008,
580 0x36: 0x0008, 0x37: 0x0008, 0x38: 0x0008, 0x39: 0x0008, 0x3a: 0x0080, 0x3b: 0x0080,
581 0x3c: 0x0080, 0x3d: 0x0080, 0x3e: 0x0080, 0x3f: 0x0080,
582 // Block 0x1, offset 0x40
583 0x40: 0x0080, 0x41: 0xe105, 0x42: 0xe105, 0x43: 0xe105, 0x44: 0xe105, 0x45: 0xe105,
584 0x46: 0xe105, 0x47: 0xe105, 0x48: 0xe105, 0x49: 0xe105, 0x4a: 0xe105, 0x4b: 0xe105,
585 0x4c: 0xe105, 0x4d: 0xe105, 0x4e: 0xe105, 0x4f: 0xe105, 0x50: 0xe105, 0x51: 0xe105,
586 0x52: 0xe105, 0x53: 0xe105, 0x54: 0xe105, 0x55: 0xe105, 0x56: 0xe105, 0x57: 0xe105,
587 0x58: 0xe105, 0x59: 0xe105, 0x5a: 0xe105, 0x5b: 0x0080, 0x5c: 0x0080, 0x5d: 0x0080,
588 0x5e: 0x0080, 0x5f: 0x0080, 0x60: 0x0080, 0x61: 0x0008, 0x62: 0x0008, 0x63: 0x0008,
589 0x64: 0x0008, 0x65: 0x0008, 0x66: 0x0008, 0x67: 0x0008, 0x68: 0x0008, 0x69: 0x0008,
590 0x6a: 0x0008, 0x6b: 0x0008, 0x6c: 0x0008, 0x6d: 0x0008, 0x6e: 0x0008, 0x6f: 0x0008,
591 0x70: 0x0008, 0x71: 0x0008, 0x72: 0x0008, 0x73: 0x0008, 0x74: 0x0008, 0x75: 0x0008,
592 0x76: 0x0008, 0x77: 0x0008, 0x78: 0x0008, 0x79: 0x0008, 0x7a: 0x0008, 0x7b: 0x0080,
593 0x7c: 0x0080, 0x7d: 0x0080, 0x7e: 0x0080, 0x7f: 0x0080,
594 // Block 0x2, offset 0x80
595 // Block 0x3, offset 0xc0
596 0xc0: 0x0040, 0xc1: 0x0040, 0xc2: 0x0040, 0xc3: 0x0040, 0xc4: 0x0040, 0xc5: 0x0040,
597 0xc6: 0x0040, 0xc7: 0x0040, 0xc8: 0x0040, 0xc9: 0x0040, 0xca: 0x0040, 0xcb: 0x0040,
598 0xcc: 0x0040, 0xcd: 0x0040, 0xce: 0x0040, 0xcf: 0x0040, 0xd0: 0x0040, 0xd1: 0x0040,
599 0xd2: 0x0040, 0xd3: 0x0040, 0xd4: 0x0040, 0xd5: 0x0040, 0xd6: 0x0040, 0xd7: 0x0040,
600 0xd8: 0x0040, 0xd9: 0x0040, 0xda: 0x0040, 0xdb: 0x0040, 0xdc: 0x0040, 0xdd: 0x0040,
601 0xde: 0x0040, 0xdf: 0x0040, 0xe0: 0x000a, 0xe1: 0x0018, 0xe2: 0x0018, 0xe3: 0x0018,
602 0xe4: 0x0018, 0xe5: 0x0018, 0xe6: 0x0018, 0xe7: 0x0018, 0xe8: 0x001a, 0xe9: 0x0018,
603 0xea: 0x0039, 0xeb: 0x0018, 0xec: 0x0018, 0xed: 0x03c0, 0xee: 0x0018, 0xef: 0x004a,
604 0xf0: 0x0018, 0xf1: 0x0018, 0xf2: 0x0069, 0xf3: 0x0079, 0xf4: 0x008a, 0xf5: 0x0005,
605 0xf6: 0x0018, 0xf7: 0x0008, 0xf8: 0x00aa, 0xf9: 0x00c9, 0xfa: 0x00d9, 0xfb: 0x0018,
606 0xfc: 0x00e9, 0xfd: 0x0119, 0xfe: 0x0149, 0xff: 0x0018,
607 // Block 0x4, offset 0x100
608 0x100: 0xe00d, 0x101: 0x0008, 0x102: 0xe00d, 0x103: 0x0008, 0x104: 0xe00d, 0x105: 0x0008,
609 0x106: 0xe00d, 0x107: 0x0008, 0x108: 0xe00d, 0x109: 0x0008, 0x10a: 0xe00d, 0x10b: 0x0008,
610 0x10c: 0xe00d, 0x10d: 0x0008, 0x10e: 0xe00d, 0x10f: 0x0008, 0x110: 0xe00d, 0x111: 0x0008,
611 0x112: 0xe00d, 0x113: 0x0008, 0x114: 0xe00d, 0x115: 0x0008, 0x116: 0xe00d, 0x117: 0x0008,
612 0x118: 0xe00d, 0x119: 0x0008, 0x11a: 0xe00d, 0x11b: 0x0008, 0x11c: 0xe00d, 0x11d: 0x0008,
613 0x11e: 0xe00d, 0x11f: 0x0008, 0x120: 0xe00d, 0x121: 0x0008, 0x122: 0xe00d, 0x123: 0x0008,
614 0x124: 0xe00d, 0x125: 0x0008, 0x126: 0xe00d, 0x127: 0x0008, 0x128: 0xe00d, 0x129: 0x0008,
615 0x12a: 0xe00d, 0x12b: 0x0008, 0x12c: 0xe00d, 0x12d: 0x0008, 0x12e: 0xe00d, 0x12f: 0x0008,
616 0x130: 0x0179, 0x131: 0x0008, 0x132: 0x0035, 0x133: 0x004d, 0x134: 0xe00d, 0x135: 0x0008,
617 0x136: 0xe00d, 0x137: 0x0008, 0x138: 0x0008, 0x139: 0xe01d, 0x13a: 0x0008, 0x13b: 0xe03d,
618 0x13c: 0x0008, 0x13d: 0xe01d, 0x13e: 0x0008, 0x13f: 0x0199,
619 // Block 0x5, offset 0x140
620 0x140: 0x0199, 0x141: 0xe01d, 0x142: 0x0008, 0x143: 0xe03d, 0x144: 0x0008, 0x145: 0xe01d,
621 0x146: 0x0008, 0x147: 0xe07d, 0x148: 0x0008, 0x149: 0x01b9, 0x14a: 0xe00d, 0x14b: 0x0008,
622 0x14c: 0xe00d, 0x14d: 0x0008, 0x14e: 0xe00d, 0x14f: 0x0008, 0x150: 0xe00d, 0x151: 0x0008,
623 0x152: 0xe00d, 0x153: 0x0008, 0x154: 0xe00d, 0x155: 0x0008, 0x156: 0xe00d, 0x157: 0x0008,
624 0x158: 0xe00d, 0x159: 0x0008, 0x15a: 0xe00d, 0x15b: 0x0008, 0x15c: 0xe00d, 0x15d: 0x0008,
625 0x15e: 0xe00d, 0x15f: 0x0008, 0x160: 0xe00d, 0x161: 0x0008, 0x162: 0xe00d, 0x163: 0x0008,
626 0x164: 0xe00d, 0x165: 0x0008, 0x166: 0xe00d, 0x167: 0x0008, 0x168: 0xe00d, 0x169: 0x0008,
627 0x16a: 0xe00d, 0x16b: 0x0008, 0x16c: 0xe00d, 0x16d: 0x0008, 0x16e: 0xe00d, 0x16f: 0x0008,
628 0x170: 0xe00d, 0x171: 0x0008, 0x172: 0xe00d, 0x173: 0x0008, 0x174: 0xe00d, 0x175: 0x0008,
629 0x176: 0xe00d, 0x177: 0x0008, 0x178: 0x0065, 0x179: 0xe01d, 0x17a: 0x0008, 0x17b: 0xe03d,
630 0x17c: 0x0008, 0x17d: 0xe01d, 0x17e: 0x0008, 0x17f: 0x01d9,
631 // Block 0x6, offset 0x180
632 0x180: 0x0008, 0x181: 0x007d, 0x182: 0xe00d, 0x183: 0x0008, 0x184: 0xe00d, 0x185: 0x0008,
633 0x186: 0x007d, 0x187: 0xe07d, 0x188: 0x0008, 0x189: 0x0095, 0x18a: 0x00ad, 0x18b: 0xe03d,
634 0x18c: 0x0008, 0x18d: 0x0008, 0x18e: 0x00c5, 0x18f: 0x00dd, 0x190: 0x00f5, 0x191: 0xe01d,
635 0x192: 0x0008, 0x193: 0x010d, 0x194: 0x0125, 0x195: 0x0008, 0x196: 0x013d, 0x197: 0x013d,
636 0x198: 0xe00d, 0x199: 0x0008, 0x19a: 0x0008, 0x19b: 0x0008, 0x19c: 0x010d, 0x19d: 0x0155,
637 0x19e: 0x0008, 0x19f: 0x016d, 0x1a0: 0xe00d, 0x1a1: 0x0008, 0x1a2: 0xe00d, 0x1a3: 0x0008,
638 0x1a4: 0xe00d, 0x1a5: 0x0008, 0x1a6: 0x0185, 0x1a7: 0xe07d, 0x1a8: 0x0008, 0x1a9: 0x019d,
639 0x1aa: 0x0008, 0x1ab: 0x0008, 0x1ac: 0xe00d, 0x1ad: 0x0008, 0x1ae: 0x0185, 0x1af: 0xe0fd,
640 0x1b0: 0x0008, 0x1b1: 0x01b5, 0x1b2: 0x01cd, 0x1b3: 0xe03d, 0x1b4: 0x0008, 0x1b5: 0xe01d,
641 0x1b6: 0x0008, 0x1b7: 0x01e5, 0x1b8: 0xe00d, 0x1b9: 0x0008, 0x1ba: 0x0008, 0x1bb: 0x0008,
642 0x1bc: 0xe00d, 0x1bd: 0x0008, 0x1be: 0x0008, 0x1bf: 0x0008,
643 // Block 0x7, offset 0x1c0
644 0x1c0: 0x0008, 0x1c1: 0x0008, 0x1c2: 0x0008, 0x1c3: 0x0008, 0x1c4: 0x01e9, 0x1c5: 0x01e9,
645 0x1c6: 0x01e9, 0x1c7: 0x01fd, 0x1c8: 0x0215, 0x1c9: 0x022d, 0x1ca: 0x0245, 0x1cb: 0x025d,
646 0x1cc: 0x0275, 0x1cd: 0xe01d, 0x1ce: 0x0008, 0x1cf: 0xe0fd, 0x1d0: 0x0008, 0x1d1: 0xe01d,
647 0x1d2: 0x0008, 0x1d3: 0xe03d, 0x1d4: 0x0008, 0x1d5: 0xe01d, 0x1d6: 0x0008, 0x1d7: 0xe07d,
648 0x1d8: 0x0008, 0x1d9: 0xe01d, 0x1da: 0x0008, 0x1db: 0xe03d, 0x1dc: 0x0008, 0x1dd: 0x0008,
649 0x1de: 0xe00d, 0x1df: 0x0008, 0x1e0: 0xe00d, 0x1e1: 0x0008, 0x1e2: 0xe00d, 0x1e3: 0x0008,
650 0x1e4: 0xe00d, 0x1e5: 0x0008, 0x1e6: 0xe00d, 0x1e7: 0x0008, 0x1e8: 0xe00d, 0x1e9: 0x0008,
651 0x1ea: 0xe00d, 0x1eb: 0x0008, 0x1ec: 0xe00d, 0x1ed: 0x0008, 0x1ee: 0xe00d, 0x1ef: 0x0008,
652 0x1f0: 0x0008, 0x1f1: 0x028d, 0x1f2: 0x02a5, 0x1f3: 0x02bd, 0x1f4: 0xe00d, 0x1f5: 0x0008,
653 0x1f6: 0x02d5, 0x1f7: 0x02ed, 0x1f8: 0xe00d, 0x1f9: 0x0008, 0x1fa: 0xe00d, 0x1fb: 0x0008,
654 0x1fc: 0xe00d, 0x1fd: 0x0008, 0x1fe: 0xe00d, 0x1ff: 0x0008,
655 // Block 0x8, offset 0x200
656 0x200: 0xe00d, 0x201: 0x0008, 0x202: 0xe00d, 0x203: 0x0008, 0x204: 0xe00d, 0x205: 0x0008,
657 0x206: 0xe00d, 0x207: 0x0008, 0x208: 0xe00d, 0x209: 0x0008, 0x20a: 0xe00d, 0x20b: 0x0008,
658 0x20c: 0xe00d, 0x20d: 0x0008, 0x20e: 0xe00d, 0x20f: 0x0008, 0x210: 0xe00d, 0x211: 0x0008,
659 0x212: 0xe00d, 0x213: 0x0008, 0x214: 0xe00d, 0x215: 0x0008, 0x216: 0xe00d, 0x217: 0x0008,
660 0x218: 0xe00d, 0x219: 0x0008, 0x21a: 0xe00d, 0x21b: 0x0008, 0x21c: 0xe00d, 0x21d: 0x0008,
661 0x21e: 0xe00d, 0x21f: 0x0008, 0x220: 0x0305, 0x221: 0x0008, 0x222: 0xe00d, 0x223: 0x0008,
662 0x224: 0xe00d, 0x225: 0x0008, 0x226: 0xe00d, 0x227: 0x0008, 0x228: 0xe00d, 0x229: 0x0008,
663 0x22a: 0xe00d, 0x22b: 0x0008, 0x22c: 0xe00d, 0x22d: 0x0008, 0x22e: 0xe00d, 0x22f: 0x0008,
664 0x230: 0xe00d, 0x231: 0x0008, 0x232: 0xe00d, 0x233: 0x0008, 0x234: 0x0008, 0x235: 0x0008,
665 0x236: 0x0008, 0x237: 0x0008, 0x238: 0x0008, 0x239: 0x0008, 0x23a: 0x0209, 0x23b: 0xe03d,
666 0x23c: 0x0008, 0x23d: 0x031d, 0x23e: 0x0229, 0x23f: 0x0008,
667 // Block 0x9, offset 0x240
668 0x240: 0x0008, 0x241: 0x0008, 0x242: 0x0018, 0x243: 0x0018, 0x244: 0x0018, 0x245: 0x0018,
669 0x246: 0x0008, 0x247: 0x0008, 0x248: 0x0008, 0x249: 0x0008, 0x24a: 0x0008, 0x24b: 0x0008,
670 0x24c: 0x0008, 0x24d: 0x0008, 0x24e: 0x0008, 0x24f: 0x0008, 0x250: 0x0008, 0x251: 0x0008,
671 0x252: 0x0018, 0x253: 0x0018, 0x254: 0x0018, 0x255: 0x0018, 0x256: 0x0018, 0x257: 0x0018,
672 0x258: 0x029a, 0x259: 0x02ba, 0x25a: 0x02da, 0x25b: 0x02fa, 0x25c: 0x031a, 0x25d: 0x033a,
673 0x25e: 0x0018, 0x25f: 0x0018, 0x260: 0x03ad, 0x261: 0x0359, 0x262: 0x01d9, 0x263: 0x0369,
674 0x264: 0x03c5, 0x265: 0x0018, 0x266: 0x0018, 0x267: 0x0018, 0x268: 0x0018, 0x269: 0x0018,
675 0x26a: 0x0018, 0x26b: 0x0018, 0x26c: 0x0008, 0x26d: 0x0018, 0x26e: 0x0008, 0x26f: 0x0018,
676 0x270: 0x0018, 0x271: 0x0018, 0x272: 0x0018, 0x273: 0x0018, 0x274: 0x0018, 0x275: 0x0018,
677 0x276: 0x0018, 0x277: 0x0018, 0x278: 0x0018, 0x279: 0x0018, 0x27a: 0x0018, 0x27b: 0x0018,
678 0x27c: 0x0018, 0x27d: 0x0018, 0x27e: 0x0018, 0x27f: 0x0018,
679 // Block 0xa, offset 0x280
680 0x280: 0x03dd, 0x281: 0x03dd, 0x282: 0x3308, 0x283: 0x03f5, 0x284: 0x0379, 0x285: 0x040d,
681 0x286: 0x3308, 0x287: 0x3308, 0x288: 0x3308, 0x289: 0x3308, 0x28a: 0x3308, 0x28b: 0x3308,
682 0x28c: 0x3308, 0x28d: 0x3308, 0x28e: 0x3308, 0x28f: 0x33c0, 0x290: 0x3308, 0x291: 0x3308,
683 0x292: 0x3308, 0x293: 0x3308, 0x294: 0x3308, 0x295: 0x3308, 0x296: 0x3308, 0x297: 0x3308,
684 0x298: 0x3308, 0x299: 0x3308, 0x29a: 0x3308, 0x29b: 0x3308, 0x29c: 0x3308, 0x29d: 0x3308,
685 0x29e: 0x3308, 0x29f: 0x3308, 0x2a0: 0x3308, 0x2a1: 0x3308, 0x2a2: 0x3308, 0x2a3: 0x3308,
686 0x2a4: 0x3308, 0x2a5: 0x3308, 0x2a6: 0x3308, 0x2a7: 0x3308, 0x2a8: 0x3308, 0x2a9: 0x3308,
687 0x2aa: 0x3308, 0x2ab: 0x3308, 0x2ac: 0x3308, 0x2ad: 0x3308, 0x2ae: 0x3308, 0x2af: 0x3308,
688 0x2b0: 0xe00d, 0x2b1: 0x0008, 0x2b2: 0xe00d, 0x2b3: 0x0008, 0x2b4: 0x0425, 0x2b5: 0x0008,
689 0x2b6: 0xe00d, 0x2b7: 0x0008, 0x2b8: 0x0040, 0x2b9: 0x0040, 0x2ba: 0x03a2, 0x2bb: 0x0008,
690 0x2bc: 0x0008, 0x2bd: 0x0008, 0x2be: 0x03c2, 0x2bf: 0x043d,
691 // Block 0xb, offset 0x2c0
692 0x2c0: 0x0040, 0x2c1: 0x0040, 0x2c2: 0x0040, 0x2c3: 0x0040, 0x2c4: 0x008a, 0x2c5: 0x03d2,
693 0x2c6: 0xe155, 0x2c7: 0x0455, 0x2c8: 0xe12d, 0x2c9: 0xe13d, 0x2ca: 0xe12d, 0x2cb: 0x0040,
694 0x2cc: 0x03dd, 0x2cd: 0x0040, 0x2ce: 0x046d, 0x2cf: 0x0485, 0x2d0: 0x0008, 0x2d1: 0xe105,
695 0x2d2: 0xe105, 0x2d3: 0xe105, 0x2d4: 0xe105, 0x2d5: 0xe105, 0x2d6: 0xe105, 0x2d7: 0xe105,
696 0x2d8: 0xe105, 0x2d9: 0xe105, 0x2da: 0xe105, 0x2db: 0xe105, 0x2dc: 0xe105, 0x2dd: 0xe105,
697 0x2de: 0xe105, 0x2df: 0xe105, 0x2e0: 0x049d, 0x2e1: 0x049d, 0x2e2: 0x0040, 0x2e3: 0x049d,
698 0x2e4: 0x049d, 0x2e5: 0x049d, 0x2e6: 0x049d, 0x2e7: 0x049d, 0x2e8: 0x049d, 0x2e9: 0x049d,
699 0x2ea: 0x049d, 0x2eb: 0x049d, 0x2ec: 0x0008, 0x2ed: 0x0008, 0x2ee: 0x0008, 0x2ef: 0x0008,
700 0x2f0: 0x0008, 0x2f1: 0x0008, 0x2f2: 0x0008, 0x2f3: 0x0008, 0x2f4: 0x0008, 0x2f5: 0x0008,
701 0x2f6: 0x0008, 0x2f7: 0x0008, 0x2f8: 0x0008, 0x2f9: 0x0008, 0x2fa: 0x0008, 0x2fb: 0x0008,
702 0x2fc: 0x0008, 0x2fd: 0x0008, 0x2fe: 0x0008, 0x2ff: 0x0008,
703 // Block 0xc, offset 0x300
704 0x300: 0x0008, 0x301: 0x0008, 0x302: 0xe00f, 0x303: 0x0008, 0x304: 0x0008, 0x305: 0x0008,
705 0x306: 0x0008, 0x307: 0x0008, 0x308: 0x0008, 0x309: 0x0008, 0x30a: 0x0008, 0x30b: 0x0008,
706 0x30c: 0x0008, 0x30d: 0x0008, 0x30e: 0x0008, 0x30f: 0xe0c5, 0x310: 0x04b5, 0x311: 0x04cd,
707 0x312: 0xe0bd, 0x313: 0xe0f5, 0x314: 0xe0fd, 0x315: 0xe09d, 0x316: 0xe0b5, 0x317: 0x0008,
708 0x318: 0xe00d, 0x319: 0x0008, 0x31a: 0xe00d, 0x31b: 0x0008, 0x31c: 0xe00d, 0x31d: 0x0008,
709 0x31e: 0xe00d, 0x31f: 0x0008, 0x320: 0xe00d, 0x321: 0x0008, 0x322: 0xe00d, 0x323: 0x0008,
710 0x324: 0xe00d, 0x325: 0x0008, 0x326: 0xe00d, 0x327: 0x0008, 0x328: 0xe00d, 0x329: 0x0008,
711 0x32a: 0xe00d, 0x32b: 0x0008, 0x32c: 0xe00d, 0x32d: 0x0008, 0x32e: 0xe00d, 0x32f: 0x0008,
712 0x330: 0x04e5, 0x331: 0xe185, 0x332: 0xe18d, 0x333: 0x0008, 0x334: 0x04fd, 0x335: 0x03dd,
713 0x336: 0x0018, 0x337: 0xe07d, 0x338: 0x0008, 0x339: 0xe1d5, 0x33a: 0xe00d, 0x33b: 0x0008,
714 0x33c: 0x0008, 0x33d: 0x0515, 0x33e: 0x052d, 0x33f: 0x052d,
715 // Block 0xd, offset 0x340
716 0x340: 0x0008, 0x341: 0x0008, 0x342: 0x0008, 0x343: 0x0008, 0x344: 0x0008, 0x345: 0x0008,
717 0x346: 0x0008, 0x347: 0x0008, 0x348: 0x0008, 0x349: 0x0008, 0x34a: 0x0008, 0x34b: 0x0008,
718 0x34c: 0x0008, 0x34d: 0x0008, 0x34e: 0x0008, 0x34f: 0x0008, 0x350: 0x0008, 0x351: 0x0008,
719 0x352: 0x0008, 0x353: 0x0008, 0x354: 0x0008, 0x355: 0x0008, 0x356: 0x0008, 0x357: 0x0008,
720 0x358: 0x0008, 0x359: 0x0008, 0x35a: 0x0008, 0x35b: 0x0008, 0x35c: 0x0008, 0x35d: 0x0008,
721 0x35e: 0x0008, 0x35f: 0x0008, 0x360: 0xe00d, 0x361: 0x0008, 0x362: 0xe00d, 0x363: 0x0008,
722 0x364: 0xe00d, 0x365: 0x0008, 0x366: 0xe00d, 0x367: 0x0008, 0x368: 0xe00d, 0x369: 0x0008,
723 0x36a: 0xe00d, 0x36b: 0x0008, 0x36c: 0xe00d, 0x36d: 0x0008, 0x36e: 0xe00d, 0x36f: 0x0008,
724 0x370: 0xe00d, 0x371: 0x0008, 0x372: 0xe00d, 0x373: 0x0008, 0x374: 0xe00d, 0x375: 0x0008,
725 0x376: 0xe00d, 0x377: 0x0008, 0x378: 0xe00d, 0x379: 0x0008, 0x37a: 0xe00d, 0x37b: 0x0008,
726 0x37c: 0xe00d, 0x37d: 0x0008, 0x37e: 0xe00d, 0x37f: 0x0008,
727 // Block 0xe, offset 0x380
728 0x380: 0xe00d, 0x381: 0x0008, 0x382: 0x0018, 0x383: 0x3308, 0x384: 0x3308, 0x385: 0x3308,
729 0x386: 0x3308, 0x387: 0x3308, 0x388: 0x3318, 0x389: 0x3318, 0x38a: 0xe00d, 0x38b: 0x0008,
730 0x38c: 0xe00d, 0x38d: 0x0008, 0x38e: 0xe00d, 0x38f: 0x0008, 0x390: 0xe00d, 0x391: 0x0008,
731 0x392: 0xe00d, 0x393: 0x0008, 0x394: 0xe00d, 0x395: 0x0008, 0x396: 0xe00d, 0x397: 0x0008,
732 0x398: 0xe00d, 0x399: 0x0008, 0x39a: 0xe00d, 0x39b: 0x0008, 0x39c: 0xe00d, 0x39d: 0x0008,
733 0x39e: 0xe00d, 0x39f: 0x0008, 0x3a0: 0xe00d, 0x3a1: 0x0008, 0x3a2: 0xe00d, 0x3a3: 0x0008,
734 0x3a4: 0xe00d, 0x3a5: 0x0008, 0x3a6: 0xe00d, 0x3a7: 0x0008, 0x3a8: 0xe00d, 0x3a9: 0x0008,
735 0x3aa: 0xe00d, 0x3ab: 0x0008, 0x3ac: 0xe00d, 0x3ad: 0x0008, 0x3ae: 0xe00d, 0x3af: 0x0008,
736 0x3b0: 0xe00d, 0x3b1: 0x0008, 0x3b2: 0xe00d, 0x3b3: 0x0008, 0x3b4: 0xe00d, 0x3b5: 0x0008,
737 0x3b6: 0xe00d, 0x3b7: 0x0008, 0x3b8: 0xe00d, 0x3b9: 0x0008, 0x3ba: 0xe00d, 0x3bb: 0x0008,
738 0x3bc: 0xe00d, 0x3bd: 0x0008, 0x3be: 0xe00d, 0x3bf: 0x0008,
739 // Block 0xf, offset 0x3c0
740 0x3c0: 0x0040, 0x3c1: 0xe01d, 0x3c2: 0x0008, 0x3c3: 0xe03d, 0x3c4: 0x0008, 0x3c5: 0xe01d,
741 0x3c6: 0x0008, 0x3c7: 0xe07d, 0x3c8: 0x0008, 0x3c9: 0xe01d, 0x3ca: 0x0008, 0x3cb: 0xe03d,
742 0x3cc: 0x0008, 0x3cd: 0xe01d, 0x3ce: 0x0008, 0x3cf: 0x0008, 0x3d0: 0xe00d, 0x3d1: 0x0008,
743 0x3d2: 0xe00d, 0x3d3: 0x0008, 0x3d4: 0xe00d, 0x3d5: 0x0008, 0x3d6: 0xe00d, 0x3d7: 0x0008,
744 0x3d8: 0xe00d, 0x3d9: 0x0008, 0x3da: 0xe00d, 0x3db: 0x0008, 0x3dc: 0xe00d, 0x3dd: 0x0008,
745 0x3de: 0xe00d, 0x3df: 0x0008, 0x3e0: 0xe00d, 0x3e1: 0x0008, 0x3e2: 0xe00d, 0x3e3: 0x0008,
746 0x3e4: 0xe00d, 0x3e5: 0x0008, 0x3e6: 0xe00d, 0x3e7: 0x0008, 0x3e8: 0xe00d, 0x3e9: 0x0008,
747 0x3ea: 0xe00d, 0x3eb: 0x0008, 0x3ec: 0xe00d, 0x3ed: 0x0008, 0x3ee: 0xe00d, 0x3ef: 0x0008,
748 0x3f0: 0xe00d, 0x3f1: 0x0008, 0x3f2: 0xe00d, 0x3f3: 0x0008, 0x3f4: 0xe00d, 0x3f5: 0x0008,
749 0x3f6: 0xe00d, 0x3f7: 0x0008, 0x3f8: 0xe00d, 0x3f9: 0x0008, 0x3fa: 0xe00d, 0x3fb: 0x0008,
750 0x3fc: 0xe00d, 0x3fd: 0x0008, 0x3fe: 0xe00d, 0x3ff: 0x0008,
751 // Block 0x10, offset 0x400
752 0x400: 0xe00d, 0x401: 0x0008, 0x402: 0xe00d, 0x403: 0x0008, 0x404: 0xe00d, 0x405: 0x0008,
753 0x406: 0xe00d, 0x407: 0x0008, 0x408: 0xe00d, 0x409: 0x0008, 0x40a: 0xe00d, 0x40b: 0x0008,
754 0x40c: 0xe00d, 0x40d: 0x0008, 0x40e: 0xe00d, 0x40f: 0x0008, 0x410: 0xe00d, 0x411: 0x0008,
755 0x412: 0xe00d, 0x413: 0x0008, 0x414: 0xe00d, 0x415: 0x0008, 0x416: 0xe00d, 0x417: 0x0008,
756 0x418: 0xe00d, 0x419: 0x0008, 0x41a: 0xe00d, 0x41b: 0x0008, 0x41c: 0xe00d, 0x41d: 0x0008,
757 0x41e: 0xe00d, 0x41f: 0x0008, 0x420: 0xe00d, 0x421: 0x0008, 0x422: 0xe00d, 0x423: 0x0008,
758 0x424: 0xe00d, 0x425: 0x0008, 0x426: 0xe00d, 0x427: 0x0008, 0x428: 0xe00d, 0x429: 0x0008,
759 0x42a: 0xe00d, 0x42b: 0x0008, 0x42c: 0xe00d, 0x42d: 0x0008, 0x42e: 0xe00d, 0x42f: 0x0008,
760 0x430: 0x0040, 0x431: 0x03f5, 0x432: 0x03f5, 0x433: 0x03f5, 0x434: 0x03f5, 0x435: 0x03f5,
761 0x436: 0x03f5, 0x437: 0x03f5, 0x438: 0x03f5, 0x439: 0x03f5, 0x43a: 0x03f5, 0x43b: 0x03f5,
762 0x43c: 0x03f5, 0x43d: 0x03f5, 0x43e: 0x03f5, 0x43f: 0x03f5,
763 // Block 0x11, offset 0x440
764 0x440: 0x0840, 0x441: 0x0840, 0x442: 0x0840, 0x443: 0x0840, 0x444: 0x0840, 0x445: 0x0840,
765 0x446: 0x0018, 0x447: 0x0018, 0x448: 0x0818, 0x449: 0x0018, 0x44a: 0x0018, 0x44b: 0x0818,
766 0x44c: 0x0018, 0x44d: 0x0818, 0x44e: 0x0018, 0x44f: 0x0018, 0x450: 0x3308, 0x451: 0x3308,
767 0x452: 0x3308, 0x453: 0x3308, 0x454: 0x3308, 0x455: 0x3308, 0x456: 0x3308, 0x457: 0x3308,
768 0x458: 0x3308, 0x459: 0x3308, 0x45a: 0x3308, 0x45b: 0x0818, 0x45c: 0x0b40, 0x45d: 0x0040,
769 0x45e: 0x0818, 0x45f: 0x0818, 0x460: 0x0a08, 0x461: 0x0808, 0x462: 0x0c08, 0x463: 0x0c08,
770 0x464: 0x0c08, 0x465: 0x0c08, 0x466: 0x0a08, 0x467: 0x0c08, 0x468: 0x0a08, 0x469: 0x0c08,
771 0x46a: 0x0a08, 0x46b: 0x0a08, 0x46c: 0x0a08, 0x46d: 0x0a08, 0x46e: 0x0a08, 0x46f: 0x0c08,
772 0x470: 0x0c08, 0x471: 0x0c08, 0x472: 0x0c08, 0x473: 0x0a08, 0x474: 0x0a08, 0x475: 0x0a08,
773 0x476: 0x0a08, 0x477: 0x0a08, 0x478: 0x0a08, 0x479: 0x0a08, 0x47a: 0x0a08, 0x47b: 0x0a08,
774 0x47c: 0x0a08, 0x47d: 0x0a08, 0x47e: 0x0a08, 0x47f: 0x0a08,
775 // Block 0x12, offset 0x480
776 0x480: 0x0818, 0x481: 0x0a08, 0x482: 0x0a08, 0x483: 0x0a08, 0x484: 0x0a08, 0x485: 0x0a08,
777 0x486: 0x0a08, 0x487: 0x0a08, 0x488: 0x0c08, 0x489: 0x0a08, 0x48a: 0x0a08, 0x48b: 0x3308,
778 0x48c: 0x3308, 0x48d: 0x3308, 0x48e: 0x3308, 0x48f: 0x3308, 0x490: 0x3308, 0x491: 0x3308,
779 0x492: 0x3308, 0x493: 0x3308, 0x494: 0x3308, 0x495: 0x3308, 0x496: 0x3308, 0x497: 0x3308,
780 0x498: 0x3308, 0x499: 0x3308, 0x49a: 0x3308, 0x49b: 0x3308, 0x49c: 0x3308, 0x49d: 0x3308,
781 0x49e: 0x3308, 0x49f: 0x3308, 0x4a0: 0x0808, 0x4a1: 0x0808, 0x4a2: 0x0808, 0x4a3: 0x0808,
782 0x4a4: 0x0808, 0x4a5: 0x0808, 0x4a6: 0x0808, 0x4a7: 0x0808, 0x4a8: 0x0808, 0x4a9: 0x0808,
783 0x4aa: 0x0018, 0x4ab: 0x0818, 0x4ac: 0x0818, 0x4ad: 0x0818, 0x4ae: 0x0a08, 0x4af: 0x0a08,
784 0x4b0: 0x3308, 0x4b1: 0x0c08, 0x4b2: 0x0c08, 0x4b3: 0x0c08, 0x4b4: 0x0808, 0x4b5: 0x0429,
785 0x4b6: 0x0451, 0x4b7: 0x0479, 0x4b8: 0x04a1, 0x4b9: 0x0a08, 0x4ba: 0x0a08, 0x4bb: 0x0a08,
786 0x4bc: 0x0a08, 0x4bd: 0x0a08, 0x4be: 0x0a08, 0x4bf: 0x0a08,
787 // Block 0x13, offset 0x4c0
788 0x4c0: 0x0c08, 0x4c1: 0x0a08, 0x4c2: 0x0a08, 0x4c3: 0x0c08, 0x4c4: 0x0c08, 0x4c5: 0x0c08,
789 0x4c6: 0x0c08, 0x4c7: 0x0c08, 0x4c8: 0x0c08, 0x4c9: 0x0c08, 0x4ca: 0x0c08, 0x4cb: 0x0c08,
790 0x4cc: 0x0a08, 0x4cd: 0x0c08, 0x4ce: 0x0a08, 0x4cf: 0x0c08, 0x4d0: 0x0a08, 0x4d1: 0x0a08,
791 0x4d2: 0x0c08, 0x4d3: 0x0c08, 0x4d4: 0x0818, 0x4d5: 0x0c08, 0x4d6: 0x3308, 0x4d7: 0x3308,
792 0x4d8: 0x3308, 0x4d9: 0x3308, 0x4da: 0x3308, 0x4db: 0x3308, 0x4dc: 0x3308, 0x4dd: 0x0840,
793 0x4de: 0x0018, 0x4df: 0x3308, 0x4e0: 0x3308, 0x4e1: 0x3308, 0x4e2: 0x3308, 0x4e3: 0x3308,
794 0x4e4: 0x3308, 0x4e5: 0x0808, 0x4e6: 0x0808, 0x4e7: 0x3308, 0x4e8: 0x3308, 0x4e9: 0x0018,
795 0x4ea: 0x3308, 0x4eb: 0x3308, 0x4ec: 0x3308, 0x4ed: 0x3308, 0x4ee: 0x0c08, 0x4ef: 0x0c08,
796 0x4f0: 0x0008, 0x4f1: 0x0008, 0x4f2: 0x0008, 0x4f3: 0x0008, 0x4f4: 0x0008, 0x4f5: 0x0008,
797 0x4f6: 0x0008, 0x4f7: 0x0008, 0x4f8: 0x0008, 0x4f9: 0x0008, 0x4fa: 0x0a08, 0x4fb: 0x0a08,
798 0x4fc: 0x0a08, 0x4fd: 0x0808, 0x4fe: 0x0808, 0x4ff: 0x0a08,
799 // Block 0x14, offset 0x500
800 0x500: 0x0818, 0x501: 0x0818, 0x502: 0x0818, 0x503: 0x0818, 0x504: 0x0818, 0x505: 0x0818,
801 0x506: 0x0818, 0x507: 0x0818, 0x508: 0x0818, 0x509: 0x0818, 0x50a: 0x0818, 0x50b: 0x0818,
802 0x50c: 0x0818, 0x50d: 0x0818, 0x50e: 0x0040, 0x50f: 0x0b40, 0x510: 0x0c08, 0x511: 0x3308,
803 0x512: 0x0a08, 0x513: 0x0a08, 0x514: 0x0a08, 0x515: 0x0c08, 0x516: 0x0c08, 0x517: 0x0c08,
804 0x518: 0x0c08, 0x519: 0x0c08, 0x51a: 0x0a08, 0x51b: 0x0a08, 0x51c: 0x0a08, 0x51d: 0x0a08,
805 0x51e: 0x0c08, 0x51f: 0x0a08, 0x520: 0x0a08, 0x521: 0x0a08, 0x522: 0x0a08, 0x523: 0x0a08,
806 0x524: 0x0a08, 0x525: 0x0a08, 0x526: 0x0a08, 0x527: 0x0a08, 0x528: 0x0c08, 0x529: 0x0a08,
807 0x52a: 0x0c08, 0x52b: 0x0a08, 0x52c: 0x0c08, 0x52d: 0x0a08, 0x52e: 0x0a08, 0x52f: 0x0c08,
808 0x530: 0x3308, 0x531: 0x3308, 0x532: 0x3308, 0x533: 0x3308, 0x534: 0x3308, 0x535: 0x3308,
809 0x536: 0x3308, 0x537: 0x3308, 0x538: 0x3308, 0x539: 0x3308, 0x53a: 0x3308, 0x53b: 0x3308,
810 0x53c: 0x3308, 0x53d: 0x3308, 0x53e: 0x3308, 0x53f: 0x3308,
811 // Block 0x15, offset 0x540
812 0x540: 0x3008, 0x541: 0x3308, 0x542: 0x3308, 0x543: 0x3308, 0x544: 0x3308, 0x545: 0x3308,
813 0x546: 0x3308, 0x547: 0x3308, 0x548: 0x3308, 0x549: 0x3008, 0x54a: 0x3008, 0x54b: 0x3008,
814 0x54c: 0x3008, 0x54d: 0x3b08, 0x54e: 0x3008, 0x54f: 0x3008, 0x550: 0x0008, 0x551: 0x3308,
815 0x552: 0x3308, 0x553: 0x3308, 0x554: 0x3308, 0x555: 0x3308, 0x556: 0x3308, 0x557: 0x3308,
816 0x558: 0x04c9, 0x559: 0x0501, 0x55a: 0x0539, 0x55b: 0x0571, 0x55c: 0x05a9, 0x55d: 0x05e1,
817 0x55e: 0x0619, 0x55f: 0x0651, 0x560: 0x0008, 0x561: 0x0008, 0x562: 0x3308, 0x563: 0x3308,
818 0x564: 0x0018, 0x565: 0x0018, 0x566: 0x0008, 0x567: 0x0008, 0x568: 0x0008, 0x569: 0x0008,
819 0x56a: 0x0008, 0x56b: 0x0008, 0x56c: 0x0008, 0x56d: 0x0008, 0x56e: 0x0008, 0x56f: 0x0008,
820 0x570: 0x0018, 0x571: 0x0008, 0x572: 0x0008, 0x573: 0x0008, 0x574: 0x0008, 0x575: 0x0008,
821 0x576: 0x0008, 0x577: 0x0008, 0x578: 0x0008, 0x579: 0x0008, 0x57a: 0x0008, 0x57b: 0x0008,
822 0x57c: 0x0008, 0x57d: 0x0008, 0x57e: 0x0008, 0x57f: 0x0008,
823 // Block 0x16, offset 0x580
824 0x580: 0x0008, 0x581: 0x3308, 0x582: 0x3008, 0x583: 0x3008, 0x584: 0x0040, 0x585: 0x0008,
825 0x586: 0x0008, 0x587: 0x0008, 0x588: 0x0008, 0x589: 0x0008, 0x58a: 0x0008, 0x58b: 0x0008,
826 0x58c: 0x0008, 0x58d: 0x0040, 0x58e: 0x0040, 0x58f: 0x0008, 0x590: 0x0008, 0x591: 0x0040,
827 0x592: 0x0040, 0x593: 0x0008, 0x594: 0x0008, 0x595: 0x0008, 0x596: 0x0008, 0x597: 0x0008,
828 0x598: 0x0008, 0x599: 0x0008, 0x59a: 0x0008, 0x59b: 0x0008, 0x59c: 0x0008, 0x59d: 0x0008,
829 0x59e: 0x0008, 0x59f: 0x0008, 0x5a0: 0x0008, 0x5a1: 0x0008, 0x5a2: 0x0008, 0x5a3: 0x0008,
830 0x5a4: 0x0008, 0x5a5: 0x0008, 0x5a6: 0x0008, 0x5a7: 0x0008, 0x5a8: 0x0008, 0x5a9: 0x0040,
831 0x5aa: 0x0008, 0x5ab: 0x0008, 0x5ac: 0x0008, 0x5ad: 0x0008, 0x5ae: 0x0008, 0x5af: 0x0008,
832 0x5b0: 0x0008, 0x5b1: 0x0040, 0x5b2: 0x0008, 0x5b3: 0x0040, 0x5b4: 0x0040, 0x5b5: 0x0040,
833 0x5b6: 0x0008, 0x5b7: 0x0008, 0x5b8: 0x0008, 0x5b9: 0x0008, 0x5ba: 0x0040, 0x5bb: 0x0040,
834 0x5bc: 0x3308, 0x5bd: 0x0008, 0x5be: 0x3008, 0x5bf: 0x3008,
835 // Block 0x17, offset 0x5c0
836 0x5c0: 0x3008, 0x5c1: 0x3308, 0x5c2: 0x3308, 0x5c3: 0x3308, 0x5c4: 0x3308, 0x5c5: 0x0040,
837 0x5c6: 0x0040, 0x5c7: 0x3008, 0x5c8: 0x3008, 0x5c9: 0x0040, 0x5ca: 0x0040, 0x5cb: 0x3008,
838 0x5cc: 0x3008, 0x5cd: 0x3b08, 0x5ce: 0x0008, 0x5cf: 0x0040, 0x5d0: 0x0040, 0x5d1: 0x0040,
839 0x5d2: 0x0040, 0x5d3: 0x0040, 0x5d4: 0x0040, 0x5d5: 0x0040, 0x5d6: 0x0040, 0x5d7: 0x3008,
840 0x5d8: 0x0040, 0x5d9: 0x0040, 0x5da: 0x0040, 0x5db: 0x0040, 0x5dc: 0x0689, 0x5dd: 0x06c1,
841 0x5de: 0x0040, 0x5df: 0x06f9, 0x5e0: 0x0008, 0x5e1: 0x0008, 0x5e2: 0x3308, 0x5e3: 0x3308,
842 0x5e4: 0x0040, 0x5e5: 0x0040, 0x5e6: 0x0008, 0x5e7: 0x0008, 0x5e8: 0x0008, 0x5e9: 0x0008,
843 0x5ea: 0x0008, 0x5eb: 0x0008, 0x5ec: 0x0008, 0x5ed: 0x0008, 0x5ee: 0x0008, 0x5ef: 0x0008,
844 0x5f0: 0x0008, 0x5f1: 0x0008, 0x5f2: 0x0018, 0x5f3: 0x0018, 0x5f4: 0x0018, 0x5f5: 0x0018,
845 0x5f6: 0x0018, 0x5f7: 0x0018, 0x5f8: 0x0018, 0x5f9: 0x0018, 0x5fa: 0x0018, 0x5fb: 0x0018,
846 0x5fc: 0x0040, 0x5fd: 0x0040, 0x5fe: 0x0040, 0x5ff: 0x0040,
847 // Block 0x18, offset 0x600
848 0x600: 0x0040, 0x601: 0x3308, 0x602: 0x3308, 0x603: 0x3008, 0x604: 0x0040, 0x605: 0x0008,
849 0x606: 0x0008, 0x607: 0x0008, 0x608: 0x0008, 0x609: 0x0008, 0x60a: 0x0008, 0x60b: 0x0040,
850 0x60c: 0x0040, 0x60d: 0x0040, 0x60e: 0x0040, 0x60f: 0x0008, 0x610: 0x0008, 0x611: 0x0040,
851 0x612: 0x0040, 0x613: 0x0008, 0x614: 0x0008, 0x615: 0x0008, 0x616: 0x0008, 0x617: 0x0008,
852 0x618: 0x0008, 0x619: 0x0008, 0x61a: 0x0008, 0x61b: 0x0008, 0x61c: 0x0008, 0x61d: 0x0008,
853 0x61e: 0x0008, 0x61f: 0x0008, 0x620: 0x0008, 0x621: 0x0008, 0x622: 0x0008, 0x623: 0x0008,
854 0x624: 0x0008, 0x625: 0x0008, 0x626: 0x0008, 0x627: 0x0008, 0x628: 0x0008, 0x629: 0x0040,
855 0x62a: 0x0008, 0x62b: 0x0008, 0x62c: 0x0008, 0x62d: 0x0008, 0x62e: 0x0008, 0x62f: 0x0008,
856 0x630: 0x0008, 0x631: 0x0040, 0x632: 0x0008, 0x633: 0x0731, 0x634: 0x0040, 0x635: 0x0008,
857 0x636: 0x0769, 0x637: 0x0040, 0x638: 0x0008, 0x639: 0x0008, 0x63a: 0x0040, 0x63b: 0x0040,
858 0x63c: 0x3308, 0x63d: 0x0040, 0x63e: 0x3008, 0x63f: 0x3008,
859 // Block 0x19, offset 0x640
860 0x640: 0x3008, 0x641: 0x3308, 0x642: 0x3308, 0x643: 0x0040, 0x644: 0x0040, 0x645: 0x0040,
861 0x646: 0x0040, 0x647: 0x3308, 0x648: 0x3308, 0x649: 0x0040, 0x64a: 0x0040, 0x64b: 0x3308,
862 0x64c: 0x3308, 0x64d: 0x3b08, 0x64e: 0x0040, 0x64f: 0x0040, 0x650: 0x0040, 0x651: 0x3308,
863 0x652: 0x0040, 0x653: 0x0040, 0x654: 0x0040, 0x655: 0x0040, 0x656: 0x0040, 0x657: 0x0040,
864 0x658: 0x0040, 0x659: 0x07a1, 0x65a: 0x07d9, 0x65b: 0x0811, 0x65c: 0x0008, 0x65d: 0x0040,
865 0x65e: 0x0849, 0x65f: 0x0040, 0x660: 0x0040, 0x661: 0x0040, 0x662: 0x0040, 0x663: 0x0040,
866 0x664: 0x0040, 0x665: 0x0040, 0x666: 0x0008, 0x667: 0x0008, 0x668: 0x0008, 0x669: 0x0008,
867 0x66a: 0x0008, 0x66b: 0x0008, 0x66c: 0x0008, 0x66d: 0x0008, 0x66e: 0x0008, 0x66f: 0x0008,
868 0x670: 0x3308, 0x671: 0x3308, 0x672: 0x0008, 0x673: 0x0008, 0x674: 0x0008, 0x675: 0x3308,
869 0x676: 0x0040, 0x677: 0x0040, 0x678: 0x0040, 0x679: 0x0040, 0x67a: 0x0040, 0x67b: 0x0040,
870 0x67c: 0x0040, 0x67d: 0x0040, 0x67e: 0x0040, 0x67f: 0x0040,
871 // Block 0x1a, offset 0x680
872 0x680: 0x0040, 0x681: 0x3308, 0x682: 0x3308, 0x683: 0x3008, 0x684: 0x0040, 0x685: 0x0008,
873 0x686: 0x0008, 0x687: 0x0008, 0x688: 0x0008, 0x689: 0x0008, 0x68a: 0x0008, 0x68b: 0x0008,
874 0x68c: 0x0008, 0x68d: 0x0008, 0x68e: 0x0040, 0x68f: 0x0008, 0x690: 0x0008, 0x691: 0x0008,
875 0x692: 0x0040, 0x693: 0x0008, 0x694: 0x0008, 0x695: 0x0008, 0x696: 0x0008, 0x697: 0x0008,
876 0x698: 0x0008, 0x699: 0x0008, 0x69a: 0x0008, 0x69b: 0x0008, 0x69c: 0x0008, 0x69d: 0x0008,
877 0x69e: 0x0008, 0x69f: 0x0008, 0x6a0: 0x0008, 0x6a1: 0x0008, 0x6a2: 0x0008, 0x6a3: 0x0008,
878 0x6a4: 0x0008, 0x6a5: 0x0008, 0x6a6: 0x0008, 0x6a7: 0x0008, 0x6a8: 0x0008, 0x6a9: 0x0040,
879 0x6aa: 0x0008, 0x6ab: 0x0008, 0x6ac: 0x0008, 0x6ad: 0x0008, 0x6ae: 0x0008, 0x6af: 0x0008,
880 0x6b0: 0x0008, 0x6b1: 0x0040, 0x6b2: 0x0008, 0x6b3: 0x0008, 0x6b4: 0x0040, 0x6b5: 0x0008,
881 0x6b6: 0x0008, 0x6b7: 0x0008, 0x6b8: 0x0008, 0x6b9: 0x0008, 0x6ba: 0x0040, 0x6bb: 0x0040,
882 0x6bc: 0x3308, 0x6bd: 0x0008, 0x6be: 0x3008, 0x6bf: 0x3008,
883 // Block 0x1b, offset 0x6c0
884 0x6c0: 0x3008, 0x6c1: 0x3308, 0x6c2: 0x3308, 0x6c3: 0x3308, 0x6c4: 0x3308, 0x6c5: 0x3308,
885 0x6c6: 0x0040, 0x6c7: 0x3308, 0x6c8: 0x3308, 0x6c9: 0x3008, 0x6ca: 0x0040, 0x6cb: 0x3008,
886 0x6cc: 0x3008, 0x6cd: 0x3b08, 0x6ce: 0x0040, 0x6cf: 0x0040, 0x6d0: 0x0008, 0x6d1: 0x0040,
887 0x6d2: 0x0040, 0x6d3: 0x0040, 0x6d4: 0x0040, 0x6d5: 0x0040, 0x6d6: 0x0040, 0x6d7: 0x0040,
888 0x6d8: 0x0040, 0x6d9: 0x0040, 0x6da: 0x0040, 0x6db: 0x0040, 0x6dc: 0x0040, 0x6dd: 0x0040,
889 0x6de: 0x0040, 0x6df: 0x0040, 0x6e0: 0x0008, 0x6e1: 0x0008, 0x6e2: 0x3308, 0x6e3: 0x3308,
890 0x6e4: 0x0040, 0x6e5: 0x0040, 0x6e6: 0x0008, 0x6e7: 0x0008, 0x6e8: 0x0008, 0x6e9: 0x0008,
891 0x6ea: 0x0008, 0x6eb: 0x0008, 0x6ec: 0x0008, 0x6ed: 0x0008, 0x6ee: 0x0008, 0x6ef: 0x0008,
892 0x6f0: 0x0018, 0x6f1: 0x0018, 0x6f2: 0x0040, 0x6f3: 0x0040, 0x6f4: 0x0040, 0x6f5: 0x0040,
893 0x6f6: 0x0040, 0x6f7: 0x0040, 0x6f8: 0x0040, 0x6f9: 0x0008, 0x6fa: 0x0040, 0x6fb: 0x0040,
894 0x6fc: 0x0040, 0x6fd: 0x0040, 0x6fe: 0x0040, 0x6ff: 0x0040,
895 // Block 0x1c, offset 0x700
896 0x700: 0x0040, 0x701: 0x3308, 0x702: 0x3008, 0x703: 0x3008, 0x704: 0x0040, 0x705: 0x0008,
897 0x706: 0x0008, 0x707: 0x0008, 0x708: 0x0008, 0x709: 0x0008, 0x70a: 0x0008, 0x70b: 0x0008,
898 0x70c: 0x0008, 0x70d: 0x0040, 0x70e: 0x0040, 0x70f: 0x0008, 0x710: 0x0008, 0x711: 0x0040,
899 0x712: 0x0040, 0x713: 0x0008, 0x714: 0x0008, 0x715: 0x0008, 0x716: 0x0008, 0x717: 0x0008,
900 0x718: 0x0008, 0x719: 0x0008, 0x71a: 0x0008, 0x71b: 0x0008, 0x71c: 0x0008, 0x71d: 0x0008,
901 0x71e: 0x0008, 0x71f: 0x0008, 0x720: 0x0008, 0x721: 0x0008, 0x722: 0x0008, 0x723: 0x0008,
902 0x724: 0x0008, 0x725: 0x0008, 0x726: 0x0008, 0x727: 0x0008, 0x728: 0x0008, 0x729: 0x0040,
903 0x72a: 0x0008, 0x72b: 0x0008, 0x72c: 0x0008, 0x72d: 0x0008, 0x72e: 0x0008, 0x72f: 0x0008,
904 0x730: 0x0008, 0x731: 0x0040, 0x732: 0x0008, 0x733: 0x0008, 0x734: 0x0040, 0x735: 0x0008,
905 0x736: 0x0008, 0x737: 0x0008, 0x738: 0x0008, 0x739: 0x0008, 0x73a: 0x0040, 0x73b: 0x0040,
906 0x73c: 0x3308, 0x73d: 0x0008, 0x73e: 0x3008, 0x73f: 0x3308,
907 // Block 0x1d, offset 0x740
908 0x740: 0x3008, 0x741: 0x3308, 0x742: 0x3308, 0x743: 0x3308, 0x744: 0x3308, 0x745: 0x0040,
909 0x746: 0x0040, 0x747: 0x3008, 0x748: 0x3008, 0x749: 0x0040, 0x74a: 0x0040, 0x74b: 0x3008,
910 0x74c: 0x3008, 0x74d: 0x3b08, 0x74e: 0x0040, 0x74f: 0x0040, 0x750: 0x0040, 0x751: 0x0040,
911 0x752: 0x0040, 0x753: 0x0040, 0x754: 0x0040, 0x755: 0x0040, 0x756: 0x3308, 0x757: 0x3008,
912 0x758: 0x0040, 0x759: 0x0040, 0x75a: 0x0040, 0x75b: 0x0040, 0x75c: 0x0881, 0x75d: 0x08b9,
913 0x75e: 0x0040, 0x75f: 0x0008, 0x760: 0x0008, 0x761: 0x0008, 0x762: 0x3308, 0x763: 0x3308,
914 0x764: 0x0040, 0x765: 0x0040, 0x766: 0x0008, 0x767: 0x0008, 0x768: 0x0008, 0x769: 0x0008,
915 0x76a: 0x0008, 0x76b: 0x0008, 0x76c: 0x0008, 0x76d: 0x0008, 0x76e: 0x0008, 0x76f: 0x0008,
916 0x770: 0x0018, 0x771: 0x0008, 0x772: 0x0018, 0x773: 0x0018, 0x774: 0x0018, 0x775: 0x0018,
917 0x776: 0x0018, 0x777: 0x0018, 0x778: 0x0040, 0x779: 0x0040, 0x77a: 0x0040, 0x77b: 0x0040,
918 0x77c: 0x0040, 0x77d: 0x0040, 0x77e: 0x0040, 0x77f: 0x0040,
919 // Block 0x1e, offset 0x780
920 0x780: 0x0040, 0x781: 0x0040, 0x782: 0x3308, 0x783: 0x0008, 0x784: 0x0040, 0x785: 0x0008,
921 0x786: 0x0008, 0x787: 0x0008, 0x788: 0x0008, 0x789: 0x0008, 0x78a: 0x0008, 0x78b: 0x0040,
922 0x78c: 0x0040, 0x78d: 0x0040, 0x78e: 0x0008, 0x78f: 0x0008, 0x790: 0x0008, 0x791: 0x0040,
923 0x792: 0x0008, 0x793: 0x0008, 0x794: 0x0008, 0x795: 0x0008, 0x796: 0x0040, 0x797: 0x0040,
924 0x798: 0x0040, 0x799: 0x0008, 0x79a: 0x0008, 0x79b: 0x0040, 0x79c: 0x0008, 0x79d: 0x0040,
925 0x79e: 0x0008, 0x79f: 0x0008, 0x7a0: 0x0040, 0x7a1: 0x0040, 0x7a2: 0x0040, 0x7a3: 0x0008,
926 0x7a4: 0x0008, 0x7a5: 0x0040, 0x7a6: 0x0040, 0x7a7: 0x0040, 0x7a8: 0x0008, 0x7a9: 0x0008,
927 0x7aa: 0x0008, 0x7ab: 0x0040, 0x7ac: 0x0040, 0x7ad: 0x0040, 0x7ae: 0x0008, 0x7af: 0x0008,
928 0x7b0: 0x0008, 0x7b1: 0x0008, 0x7b2: 0x0008, 0x7b3: 0x0008, 0x7b4: 0x0008, 0x7b5: 0x0008,
929 0x7b6: 0x0008, 0x7b7: 0x0008, 0x7b8: 0x0008, 0x7b9: 0x0008, 0x7ba: 0x0040, 0x7bb: 0x0040,
930 0x7bc: 0x0040, 0x7bd: 0x0040, 0x7be: 0x3008, 0x7bf: 0x3008,
931 // Block 0x1f, offset 0x7c0
932 0x7c0: 0x3308, 0x7c1: 0x3008, 0x7c2: 0x3008, 0x7c3: 0x3008, 0x7c4: 0x3008, 0x7c5: 0x0040,
933 0x7c6: 0x3308, 0x7c7: 0x3308, 0x7c8: 0x3308, 0x7c9: 0x0040, 0x7ca: 0x3308, 0x7cb: 0x3308,
934 0x7cc: 0x3308, 0x7cd: 0x3b08, 0x7ce: 0x0040, 0x7cf: 0x0040, 0x7d0: 0x0040, 0x7d1: 0x0040,
935 0x7d2: 0x0040, 0x7d3: 0x0040, 0x7d4: 0x0040, 0x7d5: 0x3308, 0x7d6: 0x3308, 0x7d7: 0x0040,
936 0x7d8: 0x0008, 0x7d9: 0x0008, 0x7da: 0x0008, 0x7db: 0x0040, 0x7dc: 0x0040, 0x7dd: 0x0040,
937 0x7de: 0x0040, 0x7df: 0x0040, 0x7e0: 0x0008, 0x7e1: 0x0008, 0x7e2: 0x3308, 0x7e3: 0x3308,
938 0x7e4: 0x0040, 0x7e5: 0x0040, 0x7e6: 0x0008, 0x7e7: 0x0008, 0x7e8: 0x0008, 0x7e9: 0x0008,
939 0x7ea: 0x0008, 0x7eb: 0x0008, 0x7ec: 0x0008, 0x7ed: 0x0008, 0x7ee: 0x0008, 0x7ef: 0x0008,
940 0x7f0: 0x0040, 0x7f1: 0x0040, 0x7f2: 0x0040, 0x7f3: 0x0040, 0x7f4: 0x0040, 0x7f5: 0x0040,
941 0x7f6: 0x0040, 0x7f7: 0x0040, 0x7f8: 0x0018, 0x7f9: 0x0018, 0x7fa: 0x0018, 0x7fb: 0x0018,
942 0x7fc: 0x0018, 0x7fd: 0x0018, 0x7fe: 0x0018, 0x7ff: 0x0018,
943 // Block 0x20, offset 0x800
944 0x800: 0x0008, 0x801: 0x3308, 0x802: 0x3008, 0x803: 0x3008, 0x804: 0x0040, 0x805: 0x0008,
945 0x806: 0x0008, 0x807: 0x0008, 0x808: 0x0008, 0x809: 0x0008, 0x80a: 0x0008, 0x80b: 0x0008,
946 0x80c: 0x0008, 0x80d: 0x0040, 0x80e: 0x0008, 0x80f: 0x0008, 0x810: 0x0008, 0x811: 0x0040,
947 0x812: 0x0008, 0x813: 0x0008, 0x814: 0x0008, 0x815: 0x0008, 0x816: 0x0008, 0x817: 0x0008,
948 0x818: 0x0008, 0x819: 0x0008, 0x81a: 0x0008, 0x81b: 0x0008, 0x81c: 0x0008, 0x81d: 0x0008,
949 0x81e: 0x0008, 0x81f: 0x0008, 0x820: 0x0008, 0x821: 0x0008, 0x822: 0x0008, 0x823: 0x0008,
950 0x824: 0x0008, 0x825: 0x0008, 0x826: 0x0008, 0x827: 0x0008, 0x828: 0x0008, 0x829: 0x0040,
951 0x82a: 0x0008, 0x82b: 0x0008, 0x82c: 0x0008, 0x82d: 0x0008, 0x82e: 0x0008, 0x82f: 0x0008,
952 0x830: 0x0008, 0x831: 0x0008, 0x832: 0x0008, 0x833: 0x0008, 0x834: 0x0040, 0x835: 0x0008,
953 0x836: 0x0008, 0x837: 0x0008, 0x838: 0x0008, 0x839: 0x0008, 0x83a: 0x0040, 0x83b: 0x0040,
954 0x83c: 0x3308, 0x83d: 0x0008, 0x83e: 0x3008, 0x83f: 0x3308,
955 // Block 0x21, offset 0x840
956 0x840: 0x3008, 0x841: 0x3008, 0x842: 0x3008, 0x843: 0x3008, 0x844: 0x3008, 0x845: 0x0040,
957 0x846: 0x3308, 0x847: 0x3008, 0x848: 0x3008, 0x849: 0x0040, 0x84a: 0x3008, 0x84b: 0x3008,
958 0x84c: 0x3308, 0x84d: 0x3b08, 0x84e: 0x0040, 0x84f: 0x0040, 0x850: 0x0040, 0x851: 0x0040,
959 0x852: 0x0040, 0x853: 0x0040, 0x854: 0x0040, 0x855: 0x3008, 0x856: 0x3008, 0x857: 0x0040,
960 0x858: 0x0040, 0x859: 0x0040, 0x85a: 0x0040, 0x85b: 0x0040, 0x85c: 0x0040, 0x85d: 0x0040,
961 0x85e: 0x0008, 0x85f: 0x0040, 0x860: 0x0008, 0x861: 0x0008, 0x862: 0x3308, 0x863: 0x3308,
962 0x864: 0x0040, 0x865: 0x0040, 0x866: 0x0008, 0x867: 0x0008, 0x868: 0x0008, 0x869: 0x0008,
963 0x86a: 0x0008, 0x86b: 0x0008, 0x86c: 0x0008, 0x86d: 0x0008, 0x86e: 0x0008, 0x86f: 0x0008,
964 0x870: 0x0040, 0x871: 0x0008, 0x872: 0x0008, 0x873: 0x0040, 0x874: 0x0040, 0x875: 0x0040,
965 0x876: 0x0040, 0x877: 0x0040, 0x878: 0x0040, 0x879: 0x0040, 0x87a: 0x0040, 0x87b: 0x0040,
966 0x87c: 0x0040, 0x87d: 0x0040, 0x87e: 0x0040, 0x87f: 0x0040,
967 // Block 0x22, offset 0x880
968 0x880: 0x3008, 0x881: 0x3308, 0x882: 0x3308, 0x883: 0x3308, 0x884: 0x3308, 0x885: 0x0040,
969 0x886: 0x3008, 0x887: 0x3008, 0x888: 0x3008, 0x889: 0x0040, 0x88a: 0x3008, 0x88b: 0x3008,
970 0x88c: 0x3008, 0x88d: 0x3b08, 0x88e: 0x0008, 0x88f: 0x0018, 0x890: 0x0040, 0x891: 0x0040,
971 0x892: 0x0040, 0x893: 0x0040, 0x894: 0x0008, 0x895: 0x0008, 0x896: 0x0008, 0x897: 0x3008,
972 0x898: 0x0018, 0x899: 0x0018, 0x89a: 0x0018, 0x89b: 0x0018, 0x89c: 0x0018, 0x89d: 0x0018,
973 0x89e: 0x0018, 0x89f: 0x0008, 0x8a0: 0x0008, 0x8a1: 0x0008, 0x8a2: 0x3308, 0x8a3: 0x3308,
974 0x8a4: 0x0040, 0x8a5: 0x0040, 0x8a6: 0x0008, 0x8a7: 0x0008, 0x8a8: 0x0008, 0x8a9: 0x0008,
975 0x8aa: 0x0008, 0x8ab: 0x0008, 0x8ac: 0x0008, 0x8ad: 0x0008, 0x8ae: 0x0008, 0x8af: 0x0008,
976 0x8b0: 0x0018, 0x8b1: 0x0018, 0x8b2: 0x0018, 0x8b3: 0x0018, 0x8b4: 0x0018, 0x8b5: 0x0018,
977 0x8b6: 0x0018, 0x8b7: 0x0018, 0x8b8: 0x0018, 0x8b9: 0x0018, 0x8ba: 0x0008, 0x8bb: 0x0008,
978 0x8bc: 0x0008, 0x8bd: 0x0008, 0x8be: 0x0008, 0x8bf: 0x0008,
979 // Block 0x23, offset 0x8c0
980 0x8c0: 0x0040, 0x8c1: 0x0008, 0x8c2: 0x0008, 0x8c3: 0x0040, 0x8c4: 0x0008, 0x8c5: 0x0040,
981 0x8c6: 0x0040, 0x8c7: 0x0008, 0x8c8: 0x0008, 0x8c9: 0x0040, 0x8ca: 0x0008, 0x8cb: 0x0040,
982 0x8cc: 0x0040, 0x8cd: 0x0008, 0x8ce: 0x0040, 0x8cf: 0x0040, 0x8d0: 0x0040, 0x8d1: 0x0040,
983 0x8d2: 0x0040, 0x8d3: 0x0040, 0x8d4: 0x0008, 0x8d5: 0x0008, 0x8d6: 0x0008, 0x8d7: 0x0008,
984 0x8d8: 0x0040, 0x8d9: 0x0008, 0x8da: 0x0008, 0x8db: 0x0008, 0x8dc: 0x0008, 0x8dd: 0x0008,
985 0x8de: 0x0008, 0x8df: 0x0008, 0x8e0: 0x0040, 0x8e1: 0x0008, 0x8e2: 0x0008, 0x8e3: 0x0008,
986 0x8e4: 0x0040, 0x8e5: 0x0008, 0x8e6: 0x0040, 0x8e7: 0x0008, 0x8e8: 0x0040, 0x8e9: 0x0040,
987 0x8ea: 0x0008, 0x8eb: 0x0008, 0x8ec: 0x0040, 0x8ed: 0x0008, 0x8ee: 0x0008, 0x8ef: 0x0008,
988 0x8f0: 0x0008, 0x8f1: 0x3308, 0x8f2: 0x0008, 0x8f3: 0x0929, 0x8f4: 0x3308, 0x8f5: 0x3308,
989 0x8f6: 0x3308, 0x8f7: 0x3308, 0x8f8: 0x3308, 0x8f9: 0x3308, 0x8fa: 0x0040, 0x8fb: 0x3308,
990 0x8fc: 0x3308, 0x8fd: 0x0008, 0x8fe: 0x0040, 0x8ff: 0x0040,
991 // Block 0x24, offset 0x900
992 0x900: 0x0008, 0x901: 0x0008, 0x902: 0x0008, 0x903: 0x09d1, 0x904: 0x0008, 0x905: 0x0008,
993 0x906: 0x0008, 0x907: 0x0008, 0x908: 0x0040, 0x909: 0x0008, 0x90a: 0x0008, 0x90b: 0x0008,
994 0x90c: 0x0008, 0x90d: 0x0a09, 0x90e: 0x0008, 0x90f: 0x0008, 0x910: 0x0008, 0x911: 0x0008,
995 0x912: 0x0a41, 0x913: 0x0008, 0x914: 0x0008, 0x915: 0x0008, 0x916: 0x0008, 0x917: 0x0a79,
996 0x918: 0x0008, 0x919: 0x0008, 0x91a: 0x0008, 0x91b: 0x0008, 0x91c: 0x0ab1, 0x91d: 0x0008,
997 0x91e: 0x0008, 0x91f: 0x0008, 0x920: 0x0008, 0x921: 0x0008, 0x922: 0x0008, 0x923: 0x0008,
998 0x924: 0x0008, 0x925: 0x0008, 0x926: 0x0008, 0x927: 0x0008, 0x928: 0x0008, 0x929: 0x0ae9,
999 0x92a: 0x0008, 0x92b: 0x0008, 0x92c: 0x0008, 0x92d: 0x0040, 0x92e: 0x0040, 0x92f: 0x0040,
1000 0x930: 0x0040, 0x931: 0x3308, 0x932: 0x3308, 0x933: 0x0b21, 0x934: 0x3308, 0x935: 0x0b59,
1001 0x936: 0x0b91, 0x937: 0x0bc9, 0x938: 0x0c19, 0x939: 0x0c51, 0x93a: 0x3308, 0x93b: 0x3308,
1002 0x93c: 0x3308, 0x93d: 0x3308, 0x93e: 0x3308, 0x93f: 0x3008,
1003 // Block 0x25, offset 0x940
1004 0x940: 0x3308, 0x941: 0x0ca1, 0x942: 0x3308, 0x943: 0x3308, 0x944: 0x3b08, 0x945: 0x0018,
1005 0x946: 0x3308, 0x947: 0x3308, 0x948: 0x0008, 0x949: 0x0008, 0x94a: 0x0008, 0x94b: 0x0008,
1006 0x94c: 0x0008, 0x94d: 0x3308, 0x94e: 0x3308, 0x94f: 0x3308, 0x950: 0x3308, 0x951: 0x3308,
1007 0x952: 0x3308, 0x953: 0x0cd9, 0x954: 0x3308, 0x955: 0x3308, 0x956: 0x3308, 0x957: 0x3308,
1008 0x958: 0x0040, 0x959: 0x3308, 0x95a: 0x3308, 0x95b: 0x3308, 0x95c: 0x3308, 0x95d: 0x0d11,
1009 0x95e: 0x3308, 0x95f: 0x3308, 0x960: 0x3308, 0x961: 0x3308, 0x962: 0x0d49, 0x963: 0x3308,
1010 0x964: 0x3308, 0x965: 0x3308, 0x966: 0x3308, 0x967: 0x0d81, 0x968: 0x3308, 0x969: 0x3308,
1011 0x96a: 0x3308, 0x96b: 0x3308, 0x96c: 0x0db9, 0x96d: 0x3308, 0x96e: 0x3308, 0x96f: 0x3308,
1012 0x970: 0x3308, 0x971: 0x3308, 0x972: 0x3308, 0x973: 0x3308, 0x974: 0x3308, 0x975: 0x3308,
1013 0x976: 0x3308, 0x977: 0x3308, 0x978: 0x3308, 0x979: 0x0df1, 0x97a: 0x3308, 0x97b: 0x3308,
1014 0x97c: 0x3308, 0x97d: 0x0040, 0x97e: 0x0018, 0x97f: 0x0018,
1015 // Block 0x26, offset 0x980
1016 0x980: 0x0008, 0x981: 0x0008, 0x982: 0x0008, 0x983: 0x0008, 0x984: 0x0008, 0x985: 0x0008,
1017 0x986: 0x0008, 0x987: 0x0008, 0x988: 0x0008, 0x989: 0x0008, 0x98a: 0x0008, 0x98b: 0x0008,
1018 0x98c: 0x0008, 0x98d: 0x0008, 0x98e: 0x0008, 0x98f: 0x0008, 0x990: 0x0008, 0x991: 0x0008,
1019 0x992: 0x0008, 0x993: 0x0008, 0x994: 0x0008, 0x995: 0x0008, 0x996: 0x0008, 0x997: 0x0008,
1020 0x998: 0x0008, 0x999: 0x0008, 0x99a: 0x0008, 0x99b: 0x0008, 0x99c: 0x0008, 0x99d: 0x0008,
1021 0x99e: 0x0008, 0x99f: 0x0008, 0x9a0: 0x0008, 0x9a1: 0x0008, 0x9a2: 0x0008, 0x9a3: 0x0008,
1022 0x9a4: 0x0008, 0x9a5: 0x0008, 0x9a6: 0x0008, 0x9a7: 0x0008, 0x9a8: 0x0008, 0x9a9: 0x0008,
1023 0x9aa: 0x0008, 0x9ab: 0x0008, 0x9ac: 0x0039, 0x9ad: 0x0ed1, 0x9ae: 0x0ee9, 0x9af: 0x0008,
1024 0x9b0: 0x0ef9, 0x9b1: 0x0f09, 0x9b2: 0x0f19, 0x9b3: 0x0f31, 0x9b4: 0x0249, 0x9b5: 0x0f41,
1025 0x9b6: 0x0259, 0x9b7: 0x0f51, 0x9b8: 0x0359, 0x9b9: 0x0f61, 0x9ba: 0x0f71, 0x9bb: 0x0008,
1026 0x9bc: 0x00d9, 0x9bd: 0x0f81, 0x9be: 0x0f99, 0x9bf: 0x0269,
1027 // Block 0x27, offset 0x9c0
1028 0x9c0: 0x0fa9, 0x9c1: 0x0fb9, 0x9c2: 0x0279, 0x9c3: 0x0039, 0x9c4: 0x0fc9, 0x9c5: 0x0fe1,
1029 0x9c6: 0x059d, 0x9c7: 0x0ee9, 0x9c8: 0x0ef9, 0x9c9: 0x0f09, 0x9ca: 0x0ff9, 0x9cb: 0x1011,
1030 0x9cc: 0x1029, 0x9cd: 0x0f31, 0x9ce: 0x0008, 0x9cf: 0x0f51, 0x9d0: 0x0f61, 0x9d1: 0x1041,
1031 0x9d2: 0x00d9, 0x9d3: 0x1059, 0x9d4: 0x05b5, 0x9d5: 0x05b5, 0x9d6: 0x0f99, 0x9d7: 0x0fa9,
1032 0x9d8: 0x0fb9, 0x9d9: 0x059d, 0x9da: 0x1071, 0x9db: 0x1089, 0x9dc: 0x05cd, 0x9dd: 0x1099,
1033 0x9de: 0x10b1, 0x9df: 0x10c9, 0x9e0: 0x10e1, 0x9e1: 0x10f9, 0x9e2: 0x0f41, 0x9e3: 0x0269,
1034 0x9e4: 0x0fb9, 0x9e5: 0x1089, 0x9e6: 0x1099, 0x9e7: 0x10b1, 0x9e8: 0x1111, 0x9e9: 0x10e1,
1035 0x9ea: 0x10f9, 0x9eb: 0x0008, 0x9ec: 0x0008, 0x9ed: 0x0008, 0x9ee: 0x0008, 0x9ef: 0x0008,
1036 0x9f0: 0x0008, 0x9f1: 0x0008, 0x9f2: 0x0008, 0x9f3: 0x0008, 0x9f4: 0x0008, 0x9f5: 0x0008,
1037 0x9f6: 0x0008, 0x9f7: 0x0008, 0x9f8: 0x1129, 0x9f9: 0x0008, 0x9fa: 0x0008, 0x9fb: 0x0008,
1038 0x9fc: 0x0008, 0x9fd: 0x0008, 0x9fe: 0x0008, 0x9ff: 0x0008,
1039 // Block 0x28, offset 0xa00
1040 0xa00: 0x0008, 0xa01: 0x0008, 0xa02: 0x0008, 0xa03: 0x0008, 0xa04: 0x0008, 0xa05: 0x0008,
1041 0xa06: 0x0008, 0xa07: 0x0008, 0xa08: 0x0008, 0xa09: 0x0008, 0xa0a: 0x0008, 0xa0b: 0x0008,
1042 0xa0c: 0x0008, 0xa0d: 0x0008, 0xa0e: 0x0008, 0xa0f: 0x0008, 0xa10: 0x0008, 0xa11: 0x0008,
1043 0xa12: 0x0008, 0xa13: 0x0008, 0xa14: 0x0008, 0xa15: 0x0008, 0xa16: 0x0008, 0xa17: 0x0008,
1044 0xa18: 0x0008, 0xa19: 0x0008, 0xa1a: 0x0008, 0xa1b: 0x1141, 0xa1c: 0x1159, 0xa1d: 0x1169,
1045 0xa1e: 0x1181, 0xa1f: 0x1029, 0xa20: 0x1199, 0xa21: 0x11a9, 0xa22: 0x11c1, 0xa23: 0x11d9,
1046 0xa24: 0x11f1, 0xa25: 0x1209, 0xa26: 0x1221, 0xa27: 0x05e5, 0xa28: 0x1239, 0xa29: 0x1251,
1047 0xa2a: 0xe17d, 0xa2b: 0x1269, 0xa2c: 0x1281, 0xa2d: 0x1299, 0xa2e: 0x12b1, 0xa2f: 0x12c9,
1048 0xa30: 0x12e1, 0xa31: 0x12f9, 0xa32: 0x1311, 0xa33: 0x1329, 0xa34: 0x1341, 0xa35: 0x1359,
1049 0xa36: 0x1371, 0xa37: 0x1389, 0xa38: 0x05fd, 0xa39: 0x13a1, 0xa3a: 0x13b9, 0xa3b: 0x13d1,
1050 0xa3c: 0x13e1, 0xa3d: 0x13f9, 0xa3e: 0x1411, 0xa3f: 0x1429,
1051 // Block 0x29, offset 0xa40
1052 0xa40: 0xe00d, 0xa41: 0x0008, 0xa42: 0xe00d, 0xa43: 0x0008, 0xa44: 0xe00d, 0xa45: 0x0008,
1053 0xa46: 0xe00d, 0xa47: 0x0008, 0xa48: 0xe00d, 0xa49: 0x0008, 0xa4a: 0xe00d, 0xa4b: 0x0008,
1054 0xa4c: 0xe00d, 0xa4d: 0x0008, 0xa4e: 0xe00d, 0xa4f: 0x0008, 0xa50: 0xe00d, 0xa51: 0x0008,
1055 0xa52: 0xe00d, 0xa53: 0x0008, 0xa54: 0xe00d, 0xa55: 0x0008, 0xa56: 0xe00d, 0xa57: 0x0008,
1056 0xa58: 0xe00d, 0xa59: 0x0008, 0xa5a: 0xe00d, 0xa5b: 0x0008, 0xa5c: 0xe00d, 0xa5d: 0x0008,
1057 0xa5e: 0xe00d, 0xa5f: 0x0008, 0xa60: 0xe00d, 0xa61: 0x0008, 0xa62: 0xe00d, 0xa63: 0x0008,
1058 0xa64: 0xe00d, 0xa65: 0x0008, 0xa66: 0xe00d, 0xa67: 0x0008, 0xa68: 0xe00d, 0xa69: 0x0008,
1059 0xa6a: 0xe00d, 0xa6b: 0x0008, 0xa6c: 0xe00d, 0xa6d: 0x0008, 0xa6e: 0xe00d, 0xa6f: 0x0008,
1060 0xa70: 0xe00d, 0xa71: 0x0008, 0xa72: 0xe00d, 0xa73: 0x0008, 0xa74: 0xe00d, 0xa75: 0x0008,
1061 0xa76: 0xe00d, 0xa77: 0x0008, 0xa78: 0xe00d, 0xa79: 0x0008, 0xa7a: 0xe00d, 0xa7b: 0x0008,
1062 0xa7c: 0xe00d, 0xa7d: 0x0008, 0xa7e: 0xe00d, 0xa7f: 0x0008,
1063 // Block 0x2a, offset 0xa80
1064 0xa80: 0xe00d, 0xa81: 0x0008, 0xa82: 0xe00d, 0xa83: 0x0008, 0xa84: 0xe00d, 0xa85: 0x0008,
1065 0xa86: 0xe00d, 0xa87: 0x0008, 0xa88: 0xe00d, 0xa89: 0x0008, 0xa8a: 0xe00d, 0xa8b: 0x0008,
1066 0xa8c: 0xe00d, 0xa8d: 0x0008, 0xa8e: 0xe00d, 0xa8f: 0x0008, 0xa90: 0xe00d, 0xa91: 0x0008,
1067 0xa92: 0xe00d, 0xa93: 0x0008, 0xa94: 0xe00d, 0xa95: 0x0008, 0xa96: 0x0008, 0xa97: 0x0008,
1068 0xa98: 0x0008, 0xa99: 0x0008, 0xa9a: 0x0615, 0xa9b: 0x0635, 0xa9c: 0x0008, 0xa9d: 0x0008,
1069 0xa9e: 0x1441, 0xa9f: 0x0008, 0xaa0: 0xe00d, 0xaa1: 0x0008, 0xaa2: 0xe00d, 0xaa3: 0x0008,
1070 0xaa4: 0xe00d, 0xaa5: 0x0008, 0xaa6: 0xe00d, 0xaa7: 0x0008, 0xaa8: 0xe00d, 0xaa9: 0x0008,
1071 0xaaa: 0xe00d, 0xaab: 0x0008, 0xaac: 0xe00d, 0xaad: 0x0008, 0xaae: 0xe00d, 0xaaf: 0x0008,
1072 0xab0: 0xe00d, 0xab1: 0x0008, 0xab2: 0xe00d, 0xab3: 0x0008, 0xab4: 0xe00d, 0xab5: 0x0008,
1073 0xab6: 0xe00d, 0xab7: 0x0008, 0xab8: 0xe00d, 0xab9: 0x0008, 0xaba: 0xe00d, 0xabb: 0x0008,
1074 0xabc: 0xe00d, 0xabd: 0x0008, 0xabe: 0xe00d, 0xabf: 0x0008,
1075 // Block 0x2b, offset 0xac0
1076 0xac0: 0x0008, 0xac1: 0x0008, 0xac2: 0x0008, 0xac3: 0x0008, 0xac4: 0x0008, 0xac5: 0x0008,
1077 0xac6: 0x0040, 0xac7: 0x0040, 0xac8: 0xe045, 0xac9: 0xe045, 0xaca: 0xe045, 0xacb: 0xe045,
1078 0xacc: 0xe045, 0xacd: 0xe045, 0xace: 0x0040, 0xacf: 0x0040, 0xad0: 0x0008, 0xad1: 0x0008,
1079 0xad2: 0x0008, 0xad3: 0x0008, 0xad4: 0x0008, 0xad5: 0x0008, 0xad6: 0x0008, 0xad7: 0x0008,
1080 0xad8: 0x0040, 0xad9: 0xe045, 0xada: 0x0040, 0xadb: 0xe045, 0xadc: 0x0040, 0xadd: 0xe045,
1081 0xade: 0x0040, 0xadf: 0xe045, 0xae0: 0x0008, 0xae1: 0x0008, 0xae2: 0x0008, 0xae3: 0x0008,
1082 0xae4: 0x0008, 0xae5: 0x0008, 0xae6: 0x0008, 0xae7: 0x0008, 0xae8: 0xe045, 0xae9: 0xe045,
1083 0xaea: 0xe045, 0xaeb: 0xe045, 0xaec: 0xe045, 0xaed: 0xe045, 0xaee: 0xe045, 0xaef: 0xe045,
1084 0xaf0: 0x0008, 0xaf1: 0x1459, 0xaf2: 0x0008, 0xaf3: 0x1471, 0xaf4: 0x0008, 0xaf5: 0x1489,
1085 0xaf6: 0x0008, 0xaf7: 0x14a1, 0xaf8: 0x0008, 0xaf9: 0x14b9, 0xafa: 0x0008, 0xafb: 0x14d1,
1086 0xafc: 0x0008, 0xafd: 0x14e9, 0xafe: 0x0040, 0xaff: 0x0040,
1087 // Block 0x2c, offset 0xb00
1088 0xb00: 0x1501, 0xb01: 0x1531, 0xb02: 0x1561, 0xb03: 0x1591, 0xb04: 0x15c1, 0xb05: 0x15f1,
1089 0xb06: 0x1621, 0xb07: 0x1651, 0xb08: 0x1501, 0xb09: 0x1531, 0xb0a: 0x1561, 0xb0b: 0x1591,
1090 0xb0c: 0x15c1, 0xb0d: 0x15f1, 0xb0e: 0x1621, 0xb0f: 0x1651, 0xb10: 0x1681, 0xb11: 0x16b1,
1091 0xb12: 0x16e1, 0xb13: 0x1711, 0xb14: 0x1741, 0xb15: 0x1771, 0xb16: 0x17a1, 0xb17: 0x17d1,
1092 0xb18: 0x1681, 0xb19: 0x16b1, 0xb1a: 0x16e1, 0xb1b: 0x1711, 0xb1c: 0x1741, 0xb1d: 0x1771,
1093 0xb1e: 0x17a1, 0xb1f: 0x17d1, 0xb20: 0x1801, 0xb21: 0x1831, 0xb22: 0x1861, 0xb23: 0x1891,
1094 0xb24: 0x18c1, 0xb25: 0x18f1, 0xb26: 0x1921, 0xb27: 0x1951, 0xb28: 0x1801, 0xb29: 0x1831,
1095 0xb2a: 0x1861, 0xb2b: 0x1891, 0xb2c: 0x18c1, 0xb2d: 0x18f1, 0xb2e: 0x1921, 0xb2f: 0x1951,
1096 0xb30: 0x0008, 0xb31: 0x0008, 0xb32: 0x1981, 0xb33: 0x19b1, 0xb34: 0x19d9, 0xb35: 0x0040,
1097 0xb36: 0x0008, 0xb37: 0x1a01, 0xb38: 0xe045, 0xb39: 0xe045, 0xb3a: 0x064d, 0xb3b: 0x1459,
1098 0xb3c: 0x19b1, 0xb3d: 0x0666, 0xb3e: 0x1a31, 0xb3f: 0x0686,
1099 // Block 0x2d, offset 0xb40
1100 0xb40: 0x06a6, 0xb41: 0x1a4a, 0xb42: 0x1a79, 0xb43: 0x1aa9, 0xb44: 0x1ad1, 0xb45: 0x0040,
1101 0xb46: 0x0008, 0xb47: 0x1af9, 0xb48: 0x06c5, 0xb49: 0x1471, 0xb4a: 0x06dd, 0xb4b: 0x1489,
1102 0xb4c: 0x1aa9, 0xb4d: 0x1b2a, 0xb4e: 0x1b5a, 0xb4f: 0x1b8a, 0xb50: 0x0008, 0xb51: 0x0008,
1103 0xb52: 0x0008, 0xb53: 0x1bb9, 0xb54: 0x0040, 0xb55: 0x0040, 0xb56: 0x0008, 0xb57: 0x0008,
1104 0xb58: 0xe045, 0xb59: 0xe045, 0xb5a: 0x06f5, 0xb5b: 0x14a1, 0xb5c: 0x0040, 0xb5d: 0x1bd2,
1105 0xb5e: 0x1c02, 0xb5f: 0x1c32, 0xb60: 0x0008, 0xb61: 0x0008, 0xb62: 0x0008, 0xb63: 0x1c61,
1106 0xb64: 0x0008, 0xb65: 0x0008, 0xb66: 0x0008, 0xb67: 0x0008, 0xb68: 0xe045, 0xb69: 0xe045,
1107 0xb6a: 0x070d, 0xb6b: 0x14d1, 0xb6c: 0xe04d, 0xb6d: 0x1c7a, 0xb6e: 0x03d2, 0xb6f: 0x1caa,
1108 0xb70: 0x0040, 0xb71: 0x0040, 0xb72: 0x1cb9, 0xb73: 0x1ce9, 0xb74: 0x1d11, 0xb75: 0x0040,
1109 0xb76: 0x0008, 0xb77: 0x1d39, 0xb78: 0x0725, 0xb79: 0x14b9, 0xb7a: 0x0515, 0xb7b: 0x14e9,
1110 0xb7c: 0x1ce9, 0xb7d: 0x073e, 0xb7e: 0x075e, 0xb7f: 0x0040,
1111 // Block 0x2e, offset 0xb80
1112 0xb80: 0x000a, 0xb81: 0x000a, 0xb82: 0x000a, 0xb83: 0x000a, 0xb84: 0x000a, 0xb85: 0x000a,
1113 0xb86: 0x000a, 0xb87: 0x000a, 0xb88: 0x000a, 0xb89: 0x000a, 0xb8a: 0x000a, 0xb8b: 0x03c0,
1114 0xb8c: 0x0003, 0xb8d: 0x0003, 0xb8e: 0x0340, 0xb8f: 0x0b40, 0xb90: 0x0018, 0xb91: 0xe00d,
1115 0xb92: 0x0018, 0xb93: 0x0018, 0xb94: 0x0018, 0xb95: 0x0018, 0xb96: 0x0018, 0xb97: 0x077e,
1116 0xb98: 0x0018, 0xb99: 0x0018, 0xb9a: 0x0018, 0xb9b: 0x0018, 0xb9c: 0x0018, 0xb9d: 0x0018,
1117 0xb9e: 0x0018, 0xb9f: 0x0018, 0xba0: 0x0018, 0xba1: 0x0018, 0xba2: 0x0018, 0xba3: 0x0018,
1118 0xba4: 0x0040, 0xba5: 0x0040, 0xba6: 0x0040, 0xba7: 0x0018, 0xba8: 0x0040, 0xba9: 0x0040,
1119 0xbaa: 0x0340, 0xbab: 0x0340, 0xbac: 0x0340, 0xbad: 0x0340, 0xbae: 0x0340, 0xbaf: 0x000a,
1120 0xbb0: 0x0018, 0xbb1: 0x0018, 0xbb2: 0x0018, 0xbb3: 0x1d69, 0xbb4: 0x1da1, 0xbb5: 0x0018,
1121 0xbb6: 0x1df1, 0xbb7: 0x1e29, 0xbb8: 0x0018, 0xbb9: 0x0018, 0xbba: 0x0018, 0xbbb: 0x0018,
1122 0xbbc: 0x1e7a, 0xbbd: 0x0018, 0xbbe: 0x079e, 0xbbf: 0x0018,
1123 // Block 0x2f, offset 0xbc0
1124 0xbc0: 0x0018, 0xbc1: 0x0018, 0xbc2: 0x0018, 0xbc3: 0x0018, 0xbc4: 0x0018, 0xbc5: 0x0018,
1125 0xbc6: 0x0018, 0xbc7: 0x1e92, 0xbc8: 0x1eaa, 0xbc9: 0x1ec2, 0xbca: 0x0018, 0xbcb: 0x0018,
1126 0xbcc: 0x0018, 0xbcd: 0x0018, 0xbce: 0x0018, 0xbcf: 0x0018, 0xbd0: 0x0018, 0xbd1: 0x0018,
1127 0xbd2: 0x0018, 0xbd3: 0x0018, 0xbd4: 0x0018, 0xbd5: 0x0018, 0xbd6: 0x0018, 0xbd7: 0x1ed9,
1128 0xbd8: 0x0018, 0xbd9: 0x0018, 0xbda: 0x0018, 0xbdb: 0x0018, 0xbdc: 0x0018, 0xbdd: 0x0018,
1129 0xbde: 0x0018, 0xbdf: 0x000a, 0xbe0: 0x03c0, 0xbe1: 0x0340, 0xbe2: 0x0340, 0xbe3: 0x0340,
1130 0xbe4: 0x03c0, 0xbe5: 0x0040, 0xbe6: 0x0040, 0xbe7: 0x0040, 0xbe8: 0x0040, 0xbe9: 0x0040,
1131 0xbea: 0x0340, 0xbeb: 0x0340, 0xbec: 0x0340, 0xbed: 0x0340, 0xbee: 0x0340, 0xbef: 0x0340,
1132 0xbf0: 0x1f41, 0xbf1: 0x0f41, 0xbf2: 0x0040, 0xbf3: 0x0040, 0xbf4: 0x1f51, 0xbf5: 0x1f61,
1133 0xbf6: 0x1f71, 0xbf7: 0x1f81, 0xbf8: 0x1f91, 0xbf9: 0x1fa1, 0xbfa: 0x1fb2, 0xbfb: 0x07bd,
1134 0xbfc: 0x1fc2, 0xbfd: 0x1fd2, 0xbfe: 0x1fe2, 0xbff: 0x0f71,
1135 // Block 0x30, offset 0xc00
1136 0xc00: 0x1f41, 0xc01: 0x00c9, 0xc02: 0x0069, 0xc03: 0x0079, 0xc04: 0x1f51, 0xc05: 0x1f61,
1137 0xc06: 0x1f71, 0xc07: 0x1f81, 0xc08: 0x1f91, 0xc09: 0x1fa1, 0xc0a: 0x1fb2, 0xc0b: 0x07d5,
1138 0xc0c: 0x1fc2, 0xc0d: 0x1fd2, 0xc0e: 0x1fe2, 0xc0f: 0x0040, 0xc10: 0x0039, 0xc11: 0x0f09,
1139 0xc12: 0x00d9, 0xc13: 0x0369, 0xc14: 0x0ff9, 0xc15: 0x0249, 0xc16: 0x0f51, 0xc17: 0x0359,
1140 0xc18: 0x0f61, 0xc19: 0x0f71, 0xc1a: 0x0f99, 0xc1b: 0x01d9, 0xc1c: 0x0fa9, 0xc1d: 0x0040,
1141 0xc1e: 0x0040, 0xc1f: 0x0040, 0xc20: 0x0018, 0xc21: 0x0018, 0xc22: 0x0018, 0xc23: 0x0018,
1142 0xc24: 0x0018, 0xc25: 0x0018, 0xc26: 0x0018, 0xc27: 0x0018, 0xc28: 0x1ff1, 0xc29: 0x0018,
1143 0xc2a: 0x0018, 0xc2b: 0x0018, 0xc2c: 0x0018, 0xc2d: 0x0018, 0xc2e: 0x0018, 0xc2f: 0x0018,
1144 0xc30: 0x0018, 0xc31: 0x0018, 0xc32: 0x0018, 0xc33: 0x0018, 0xc34: 0x0018, 0xc35: 0x0018,
1145 0xc36: 0x0018, 0xc37: 0x0018, 0xc38: 0x0018, 0xc39: 0x0018, 0xc3a: 0x0018, 0xc3b: 0x0018,
1146 0xc3c: 0x0018, 0xc3d: 0x0018, 0xc3e: 0x0018, 0xc3f: 0x0040,
1147 // Block 0x31, offset 0xc40
1148 0xc40: 0x07ee, 0xc41: 0x080e, 0xc42: 0x1159, 0xc43: 0x082d, 0xc44: 0x0018, 0xc45: 0x084e,
1149 0xc46: 0x086e, 0xc47: 0x1011, 0xc48: 0x0018, 0xc49: 0x088d, 0xc4a: 0x0f31, 0xc4b: 0x0249,
1150 0xc4c: 0x0249, 0xc4d: 0x0249, 0xc4e: 0x0249, 0xc4f: 0x2009, 0xc50: 0x0f41, 0xc51: 0x0f41,
1151 0xc52: 0x0359, 0xc53: 0x0359, 0xc54: 0x0018, 0xc55: 0x0f71, 0xc56: 0x2021, 0xc57: 0x0018,
1152 0xc58: 0x0018, 0xc59: 0x0f99, 0xc5a: 0x2039, 0xc5b: 0x0269, 0xc5c: 0x0269, 0xc5d: 0x0269,
1153 0xc5e: 0x0018, 0xc5f: 0x0018, 0xc60: 0x2049, 0xc61: 0x08ad, 0xc62: 0x2061, 0xc63: 0x0018,
1154 0xc64: 0x13d1, 0xc65: 0x0018, 0xc66: 0x2079, 0xc67: 0x0018, 0xc68: 0x13d1, 0xc69: 0x0018,
1155 0xc6a: 0x0f51, 0xc6b: 0x2091, 0xc6c: 0x0ee9, 0xc6d: 0x1159, 0xc6e: 0x0018, 0xc6f: 0x0f09,
1156 0xc70: 0x0f09, 0xc71: 0x1199, 0xc72: 0x0040, 0xc73: 0x0f61, 0xc74: 0x00d9, 0xc75: 0x20a9,
1157 0xc76: 0x20c1, 0xc77: 0x20d9, 0xc78: 0x20f1, 0xc79: 0x0f41, 0xc7a: 0x0018, 0xc7b: 0x08cd,
1158 0xc7c: 0x2109, 0xc7d: 0x10b1, 0xc7e: 0x10b1, 0xc7f: 0x2109,
1159 // Block 0x32, offset 0xc80
1160 0xc80: 0x08ed, 0xc81: 0x0018, 0xc82: 0x0018, 0xc83: 0x0018, 0xc84: 0x0018, 0xc85: 0x0ef9,
1161 0xc86: 0x0ef9, 0xc87: 0x0f09, 0xc88: 0x0f41, 0xc89: 0x0259, 0xc8a: 0x0018, 0xc8b: 0x0018,
1162 0xc8c: 0x0018, 0xc8d: 0x0018, 0xc8e: 0x0008, 0xc8f: 0x0018, 0xc90: 0x2121, 0xc91: 0x2151,
1163 0xc92: 0x2181, 0xc93: 0x21b9, 0xc94: 0x21e9, 0xc95: 0x2219, 0xc96: 0x2249, 0xc97: 0x2279,
1164 0xc98: 0x22a9, 0xc99: 0x22d9, 0xc9a: 0x2309, 0xc9b: 0x2339, 0xc9c: 0x2369, 0xc9d: 0x2399,
1165 0xc9e: 0x23c9, 0xc9f: 0x23f9, 0xca0: 0x0f41, 0xca1: 0x2421, 0xca2: 0x0905, 0xca3: 0x2439,
1166 0xca4: 0x1089, 0xca5: 0x2451, 0xca6: 0x0925, 0xca7: 0x2469, 0xca8: 0x2491, 0xca9: 0x0369,
1167 0xcaa: 0x24a9, 0xcab: 0x0945, 0xcac: 0x0359, 0xcad: 0x1159, 0xcae: 0x0ef9, 0xcaf: 0x0f61,
1168 0xcb0: 0x0f41, 0xcb1: 0x2421, 0xcb2: 0x0965, 0xcb3: 0x2439, 0xcb4: 0x1089, 0xcb5: 0x2451,
1169 0xcb6: 0x0985, 0xcb7: 0x2469, 0xcb8: 0x2491, 0xcb9: 0x0369, 0xcba: 0x24a9, 0xcbb: 0x09a5,
1170 0xcbc: 0x0359, 0xcbd: 0x1159, 0xcbe: 0x0ef9, 0xcbf: 0x0f61,
1171 // Block 0x33, offset 0xcc0
1172 0xcc0: 0x0018, 0xcc1: 0x0018, 0xcc2: 0x0018, 0xcc3: 0x0018, 0xcc4: 0x0018, 0xcc5: 0x0018,
1173 0xcc6: 0x0018, 0xcc7: 0x0018, 0xcc8: 0x0018, 0xcc9: 0x0018, 0xcca: 0x0018, 0xccb: 0x0040,
1174 0xccc: 0x0040, 0xccd: 0x0040, 0xcce: 0x0040, 0xccf: 0x0040, 0xcd0: 0x0040, 0xcd1: 0x0040,
1175 0xcd2: 0x0040, 0xcd3: 0x0040, 0xcd4: 0x0040, 0xcd5: 0x0040, 0xcd6: 0x0040, 0xcd7: 0x0040,
1176 0xcd8: 0x0040, 0xcd9: 0x0040, 0xcda: 0x0040, 0xcdb: 0x0040, 0xcdc: 0x0040, 0xcdd: 0x0040,
1177 0xcde: 0x0040, 0xcdf: 0x0040, 0xce0: 0x00c9, 0xce1: 0x0069, 0xce2: 0x0079, 0xce3: 0x1f51,
1178 0xce4: 0x1f61, 0xce5: 0x1f71, 0xce6: 0x1f81, 0xce7: 0x1f91, 0xce8: 0x1fa1, 0xce9: 0x2601,
1179 0xcea: 0x2619, 0xceb: 0x2631, 0xcec: 0x2649, 0xced: 0x2661, 0xcee: 0x2679, 0xcef: 0x2691,
1180 0xcf0: 0x26a9, 0xcf1: 0x26c1, 0xcf2: 0x26d9, 0xcf3: 0x26f1, 0xcf4: 0x0a06, 0xcf5: 0x0a26,
1181 0xcf6: 0x0a46, 0xcf7: 0x0a66, 0xcf8: 0x0a86, 0xcf9: 0x0aa6, 0xcfa: 0x0ac6, 0xcfb: 0x0ae6,
1182 0xcfc: 0x0b06, 0xcfd: 0x270a, 0xcfe: 0x2732, 0xcff: 0x275a,
1183 // Block 0x34, offset 0xd00
1184 0xd00: 0x2782, 0xd01: 0x27aa, 0xd02: 0x27d2, 0xd03: 0x27fa, 0xd04: 0x2822, 0xd05: 0x284a,
1185 0xd06: 0x2872, 0xd07: 0x289a, 0xd08: 0x0040, 0xd09: 0x0040, 0xd0a: 0x0040, 0xd0b: 0x0040,
1186 0xd0c: 0x0040, 0xd0d: 0x0040, 0xd0e: 0x0040, 0xd0f: 0x0040, 0xd10: 0x0040, 0xd11: 0x0040,
1187 0xd12: 0x0040, 0xd13: 0x0040, 0xd14: 0x0040, 0xd15: 0x0040, 0xd16: 0x0040, 0xd17: 0x0040,
1188 0xd18: 0x0040, 0xd19: 0x0040, 0xd1a: 0x0040, 0xd1b: 0x0040, 0xd1c: 0x0b26, 0xd1d: 0x0b46,
1189 0xd1e: 0x0b66, 0xd1f: 0x0b86, 0xd20: 0x0ba6, 0xd21: 0x0bc6, 0xd22: 0x0be6, 0xd23: 0x0c06,
1190 0xd24: 0x0c26, 0xd25: 0x0c46, 0xd26: 0x0c66, 0xd27: 0x0c86, 0xd28: 0x0ca6, 0xd29: 0x0cc6,
1191 0xd2a: 0x0ce6, 0xd2b: 0x0d06, 0xd2c: 0x0d26, 0xd2d: 0x0d46, 0xd2e: 0x0d66, 0xd2f: 0x0d86,
1192 0xd30: 0x0da6, 0xd31: 0x0dc6, 0xd32: 0x0de6, 0xd33: 0x0e06, 0xd34: 0x0e26, 0xd35: 0x0e46,
1193 0xd36: 0x0039, 0xd37: 0x0ee9, 0xd38: 0x1159, 0xd39: 0x0ef9, 0xd3a: 0x0f09, 0xd3b: 0x1199,
1194 0xd3c: 0x0f31, 0xd3d: 0x0249, 0xd3e: 0x0f41, 0xd3f: 0x0259,
1195 // Block 0x35, offset 0xd40
1196 0xd40: 0x0f51, 0xd41: 0x0359, 0xd42: 0x0f61, 0xd43: 0x0f71, 0xd44: 0x00d9, 0xd45: 0x0f99,
1197 0xd46: 0x2039, 0xd47: 0x0269, 0xd48: 0x01d9, 0xd49: 0x0fa9, 0xd4a: 0x0fb9, 0xd4b: 0x1089,
1198 0xd4c: 0x0279, 0xd4d: 0x0369, 0xd4e: 0x0289, 0xd4f: 0x13d1, 0xd50: 0x0039, 0xd51: 0x0ee9,
1199 0xd52: 0x1159, 0xd53: 0x0ef9, 0xd54: 0x0f09, 0xd55: 0x1199, 0xd56: 0x0f31, 0xd57: 0x0249,
1200 0xd58: 0x0f41, 0xd59: 0x0259, 0xd5a: 0x0f51, 0xd5b: 0x0359, 0xd5c: 0x0f61, 0xd5d: 0x0f71,
1201 0xd5e: 0x00d9, 0xd5f: 0x0f99, 0xd60: 0x2039, 0xd61: 0x0269, 0xd62: 0x01d9, 0xd63: 0x0fa9,
1202 0xd64: 0x0fb9, 0xd65: 0x1089, 0xd66: 0x0279, 0xd67: 0x0369, 0xd68: 0x0289, 0xd69: 0x13d1,
1203 0xd6a: 0x1f41, 0xd6b: 0x0018, 0xd6c: 0x0018, 0xd6d: 0x0018, 0xd6e: 0x0018, 0xd6f: 0x0018,
1204 0xd70: 0x0018, 0xd71: 0x0018, 0xd72: 0x0018, 0xd73: 0x0018, 0xd74: 0x0018, 0xd75: 0x0018,
1205 0xd76: 0x0018, 0xd77: 0x0018, 0xd78: 0x0018, 0xd79: 0x0018, 0xd7a: 0x0018, 0xd7b: 0x0018,
1206 0xd7c: 0x0018, 0xd7d: 0x0018, 0xd7e: 0x0018, 0xd7f: 0x0018,
1207 // Block 0x36, offset 0xd80
1208 0xd80: 0x0008, 0xd81: 0x0008, 0xd82: 0x0008, 0xd83: 0x0008, 0xd84: 0x0008, 0xd85: 0x0008,
1209 0xd86: 0x0008, 0xd87: 0x0008, 0xd88: 0x0008, 0xd89: 0x0008, 0xd8a: 0x0008, 0xd8b: 0x0008,
1210 0xd8c: 0x0008, 0xd8d: 0x0008, 0xd8e: 0x0008, 0xd8f: 0x0008, 0xd90: 0x0008, 0xd91: 0x0008,
1211 0xd92: 0x0008, 0xd93: 0x0008, 0xd94: 0x0008, 0xd95: 0x0008, 0xd96: 0x0008, 0xd97: 0x0008,
1212 0xd98: 0x0008, 0xd99: 0x0008, 0xd9a: 0x0008, 0xd9b: 0x0008, 0xd9c: 0x0008, 0xd9d: 0x0008,
1213 0xd9e: 0x0008, 0xd9f: 0x0040, 0xda0: 0xe00d, 0xda1: 0x0008, 0xda2: 0x2971, 0xda3: 0x0ebd,
1214 0xda4: 0x2989, 0xda5: 0x0008, 0xda6: 0x0008, 0xda7: 0xe07d, 0xda8: 0x0008, 0xda9: 0xe01d,
1215 0xdaa: 0x0008, 0xdab: 0xe03d, 0xdac: 0x0008, 0xdad: 0x0fe1, 0xdae: 0x1281, 0xdaf: 0x0fc9,
1216 0xdb0: 0x1141, 0xdb1: 0x0008, 0xdb2: 0xe00d, 0xdb3: 0x0008, 0xdb4: 0x0008, 0xdb5: 0xe01d,
1217 0xdb6: 0x0008, 0xdb7: 0x0008, 0xdb8: 0x0008, 0xdb9: 0x0008, 0xdba: 0x0008, 0xdbb: 0x0008,
1218 0xdbc: 0x0259, 0xdbd: 0x1089, 0xdbe: 0x29a1, 0xdbf: 0x29b9,
1219 // Block 0x37, offset 0xdc0
1220 0xdc0: 0xe00d, 0xdc1: 0x0008, 0xdc2: 0xe00d, 0xdc3: 0x0008, 0xdc4: 0xe00d, 0xdc5: 0x0008,
1221 0xdc6: 0xe00d, 0xdc7: 0x0008, 0xdc8: 0xe00d, 0xdc9: 0x0008, 0xdca: 0xe00d, 0xdcb: 0x0008,
1222 0xdcc: 0xe00d, 0xdcd: 0x0008, 0xdce: 0xe00d, 0xdcf: 0x0008, 0xdd0: 0xe00d, 0xdd1: 0x0008,
1223 0xdd2: 0xe00d, 0xdd3: 0x0008, 0xdd4: 0xe00d, 0xdd5: 0x0008, 0xdd6: 0xe00d, 0xdd7: 0x0008,
1224 0xdd8: 0xe00d, 0xdd9: 0x0008, 0xdda: 0xe00d, 0xddb: 0x0008, 0xddc: 0xe00d, 0xddd: 0x0008,
1225 0xdde: 0xe00d, 0xddf: 0x0008, 0xde0: 0xe00d, 0xde1: 0x0008, 0xde2: 0xe00d, 0xde3: 0x0008,
1226 0xde4: 0x0008, 0xde5: 0x0018, 0xde6: 0x0018, 0xde7: 0x0018, 0xde8: 0x0018, 0xde9: 0x0018,
1227 0xdea: 0x0018, 0xdeb: 0xe03d, 0xdec: 0x0008, 0xded: 0xe01d, 0xdee: 0x0008, 0xdef: 0x3308,
1228 0xdf0: 0x3308, 0xdf1: 0x3308, 0xdf2: 0xe00d, 0xdf3: 0x0008, 0xdf4: 0x0040, 0xdf5: 0x0040,
1229 0xdf6: 0x0040, 0xdf7: 0x0040, 0xdf8: 0x0040, 0xdf9: 0x0018, 0xdfa: 0x0018, 0xdfb: 0x0018,
1230 0xdfc: 0x0018, 0xdfd: 0x0018, 0xdfe: 0x0018, 0xdff: 0x0018,
1231 // Block 0x38, offset 0xe00
1232 0xe00: 0x26fd, 0xe01: 0x271d, 0xe02: 0x273d, 0xe03: 0x275d, 0xe04: 0x277d, 0xe05: 0x279d,
1233 0xe06: 0x27bd, 0xe07: 0x27dd, 0xe08: 0x27fd, 0xe09: 0x281d, 0xe0a: 0x283d, 0xe0b: 0x285d,
1234 0xe0c: 0x287d, 0xe0d: 0x289d, 0xe0e: 0x28bd, 0xe0f: 0x28dd, 0xe10: 0x28fd, 0xe11: 0x291d,
1235 0xe12: 0x293d, 0xe13: 0x295d, 0xe14: 0x297d, 0xe15: 0x299d, 0xe16: 0x0040, 0xe17: 0x0040,
1236 0xe18: 0x0040, 0xe19: 0x0040, 0xe1a: 0x0040, 0xe1b: 0x0040, 0xe1c: 0x0040, 0xe1d: 0x0040,
1237 0xe1e: 0x0040, 0xe1f: 0x0040, 0xe20: 0x0040, 0xe21: 0x0040, 0xe22: 0x0040, 0xe23: 0x0040,
1238 0xe24: 0x0040, 0xe25: 0x0040, 0xe26: 0x0040, 0xe27: 0x0040, 0xe28: 0x0040, 0xe29: 0x0040,
1239 0xe2a: 0x0040, 0xe2b: 0x0040, 0xe2c: 0x0040, 0xe2d: 0x0040, 0xe2e: 0x0040, 0xe2f: 0x0040,
1240 0xe30: 0x0040, 0xe31: 0x0040, 0xe32: 0x0040, 0xe33: 0x0040, 0xe34: 0x0040, 0xe35: 0x0040,
1241 0xe36: 0x0040, 0xe37: 0x0040, 0xe38: 0x0040, 0xe39: 0x0040, 0xe3a: 0x0040, 0xe3b: 0x0040,
1242 0xe3c: 0x0040, 0xe3d: 0x0040, 0xe3e: 0x0040, 0xe3f: 0x0040,
1243 // Block 0x39, offset 0xe40
1244 0xe40: 0x000a, 0xe41: 0x0018, 0xe42: 0x29d1, 0xe43: 0x0018, 0xe44: 0x0018, 0xe45: 0x0008,
1245 0xe46: 0x0008, 0xe47: 0x0008, 0xe48: 0x0018, 0xe49: 0x0018, 0xe4a: 0x0018, 0xe4b: 0x0018,
1246 0xe4c: 0x0018, 0xe4d: 0x0018, 0xe4e: 0x0018, 0xe4f: 0x0018, 0xe50: 0x0018, 0xe51: 0x0018,
1247 0xe52: 0x0018, 0xe53: 0x0018, 0xe54: 0x0018, 0xe55: 0x0018, 0xe56: 0x0018, 0xe57: 0x0018,
1248 0xe58: 0x0018, 0xe59: 0x0018, 0xe5a: 0x0018, 0xe5b: 0x0018, 0xe5c: 0x0018, 0xe5d: 0x0018,
1249 0xe5e: 0x0018, 0xe5f: 0x0018, 0xe60: 0x0018, 0xe61: 0x0018, 0xe62: 0x0018, 0xe63: 0x0018,
1250 0xe64: 0x0018, 0xe65: 0x0018, 0xe66: 0x0018, 0xe67: 0x0018, 0xe68: 0x0018, 0xe69: 0x0018,
1251 0xe6a: 0x3308, 0xe6b: 0x3308, 0xe6c: 0x3308, 0xe6d: 0x3308, 0xe6e: 0x3018, 0xe6f: 0x3018,
1252 0xe70: 0x0018, 0xe71: 0x0018, 0xe72: 0x0018, 0xe73: 0x0018, 0xe74: 0x0018, 0xe75: 0x0018,
1253 0xe76: 0xe125, 0xe77: 0x0018, 0xe78: 0x29bd, 0xe79: 0x29dd, 0xe7a: 0x29fd, 0xe7b: 0x0018,
1254 0xe7c: 0x0008, 0xe7d: 0x0018, 0xe7e: 0x0018, 0xe7f: 0x0018,
1255 // Block 0x3a, offset 0xe80
1256 0xe80: 0x2b3d, 0xe81: 0x2b5d, 0xe82: 0x2b7d, 0xe83: 0x2b9d, 0xe84: 0x2bbd, 0xe85: 0x2bdd,
1257 0xe86: 0x2bdd, 0xe87: 0x2bdd, 0xe88: 0x2bfd, 0xe89: 0x2bfd, 0xe8a: 0x2bfd, 0xe8b: 0x2bfd,
1258 0xe8c: 0x2c1d, 0xe8d: 0x2c1d, 0xe8e: 0x2c1d, 0xe8f: 0x2c3d, 0xe90: 0x2c5d, 0xe91: 0x2c5d,
1259 0xe92: 0x2a7d, 0xe93: 0x2a7d, 0xe94: 0x2c5d, 0xe95: 0x2c5d, 0xe96: 0x2c7d, 0xe97: 0x2c7d,
1260 0xe98: 0x2c5d, 0xe99: 0x2c5d, 0xe9a: 0x2a7d, 0xe9b: 0x2a7d, 0xe9c: 0x2c5d, 0xe9d: 0x2c5d,
1261 0xe9e: 0x2c3d, 0xe9f: 0x2c3d, 0xea0: 0x2c9d, 0xea1: 0x2c9d, 0xea2: 0x2cbd, 0xea3: 0x2cbd,
1262 0xea4: 0x0040, 0xea5: 0x2cdd, 0xea6: 0x2cfd, 0xea7: 0x2d1d, 0xea8: 0x2d1d, 0xea9: 0x2d3d,
1263 0xeaa: 0x2d5d, 0xeab: 0x2d7d, 0xeac: 0x2d9d, 0xead: 0x2dbd, 0xeae: 0x2ddd, 0xeaf: 0x2dfd,
1264 0xeb0: 0x2e1d, 0xeb1: 0x2e3d, 0xeb2: 0x2e3d, 0xeb3: 0x2e5d, 0xeb4: 0x2e7d, 0xeb5: 0x2e7d,
1265 0xeb6: 0x2e9d, 0xeb7: 0x2ebd, 0xeb8: 0x2e5d, 0xeb9: 0x2edd, 0xeba: 0x2efd, 0xebb: 0x2edd,
1266 0xebc: 0x2e5d, 0xebd: 0x2f1d, 0xebe: 0x2f3d, 0xebf: 0x2f5d,
1267 // Block 0x3b, offset 0xec0
1268 0xec0: 0x2f7d, 0xec1: 0x2f9d, 0xec2: 0x2cfd, 0xec3: 0x2cdd, 0xec4: 0x2fbd, 0xec5: 0x2fdd,
1269 0xec6: 0x2ffd, 0xec7: 0x301d, 0xec8: 0x303d, 0xec9: 0x305d, 0xeca: 0x307d, 0xecb: 0x309d,
1270 0xecc: 0x30bd, 0xecd: 0x30dd, 0xece: 0x30fd, 0xecf: 0x0040, 0xed0: 0x0018, 0xed1: 0x0018,
1271 0xed2: 0x311d, 0xed3: 0x313d, 0xed4: 0x315d, 0xed5: 0x317d, 0xed6: 0x319d, 0xed7: 0x31bd,
1272 0xed8: 0x31dd, 0xed9: 0x31fd, 0xeda: 0x321d, 0xedb: 0x323d, 0xedc: 0x315d, 0xedd: 0x325d,
1273 0xede: 0x327d, 0xedf: 0x329d, 0xee0: 0x0008, 0xee1: 0x0008, 0xee2: 0x0008, 0xee3: 0x0008,
1274 0xee4: 0x0008, 0xee5: 0x0008, 0xee6: 0x0008, 0xee7: 0x0008, 0xee8: 0x0008, 0xee9: 0x0008,
1275 0xeea: 0x0008, 0xeeb: 0x0008, 0xeec: 0x0008, 0xeed: 0x0008, 0xeee: 0x0008, 0xeef: 0x0008,
1276 0xef0: 0x0008, 0xef1: 0x0008, 0xef2: 0x0008, 0xef3: 0x0008, 0xef4: 0x0008, 0xef5: 0x0008,
1277 0xef6: 0x0008, 0xef7: 0x0008, 0xef8: 0x0008, 0xef9: 0x0008, 0xefa: 0x0008, 0xefb: 0x0040,
1278 0xefc: 0x0040, 0xefd: 0x0040, 0xefe: 0x0040, 0xeff: 0x0040,
1279 // Block 0x3c, offset 0xf00
1280 0xf00: 0x36a2, 0xf01: 0x36d2, 0xf02: 0x3702, 0xf03: 0x3732, 0xf04: 0x32bd, 0xf05: 0x32dd,
1281 0xf06: 0x32fd, 0xf07: 0x331d, 0xf08: 0x0018, 0xf09: 0x0018, 0xf0a: 0x0018, 0xf0b: 0x0018,
1282 0xf0c: 0x0018, 0xf0d: 0x0018, 0xf0e: 0x0018, 0xf0f: 0x0018, 0xf10: 0x333d, 0xf11: 0x3761,
1283 0xf12: 0x3779, 0xf13: 0x3791, 0xf14: 0x37a9, 0xf15: 0x37c1, 0xf16: 0x37d9, 0xf17: 0x37f1,
1284 0xf18: 0x3809, 0xf19: 0x3821, 0xf1a: 0x3839, 0xf1b: 0x3851, 0xf1c: 0x3869, 0xf1d: 0x3881,
1285 0xf1e: 0x3899, 0xf1f: 0x38b1, 0xf20: 0x335d, 0xf21: 0x337d, 0xf22: 0x339d, 0xf23: 0x33bd,
1286 0xf24: 0x33dd, 0xf25: 0x33dd, 0xf26: 0x33fd, 0xf27: 0x341d, 0xf28: 0x343d, 0xf29: 0x345d,
1287 0xf2a: 0x347d, 0xf2b: 0x349d, 0xf2c: 0x34bd, 0xf2d: 0x34dd, 0xf2e: 0x34fd, 0xf2f: 0x351d,
1288 0xf30: 0x353d, 0xf31: 0x355d, 0xf32: 0x357d, 0xf33: 0x359d, 0xf34: 0x35bd, 0xf35: 0x35dd,
1289 0xf36: 0x35fd, 0xf37: 0x361d, 0xf38: 0x363d, 0xf39: 0x365d, 0xf3a: 0x367d, 0xf3b: 0x369d,
1290 0xf3c: 0x38c9, 0xf3d: 0x3901, 0xf3e: 0x36bd, 0xf3f: 0x0018,
1291 // Block 0x3d, offset 0xf40
1292 0xf40: 0x36dd, 0xf41: 0x36fd, 0xf42: 0x371d, 0xf43: 0x373d, 0xf44: 0x375d, 0xf45: 0x377d,
1293 0xf46: 0x379d, 0xf47: 0x37bd, 0xf48: 0x37dd, 0xf49: 0x37fd, 0xf4a: 0x381d, 0xf4b: 0x383d,
1294 0xf4c: 0x385d, 0xf4d: 0x387d, 0xf4e: 0x389d, 0xf4f: 0x38bd, 0xf50: 0x38dd, 0xf51: 0x38fd,
1295 0xf52: 0x391d, 0xf53: 0x393d, 0xf54: 0x395d, 0xf55: 0x397d, 0xf56: 0x399d, 0xf57: 0x39bd,
1296 0xf58: 0x39dd, 0xf59: 0x39fd, 0xf5a: 0x3a1d, 0xf5b: 0x3a3d, 0xf5c: 0x3a5d, 0xf5d: 0x3a7d,
1297 0xf5e: 0x3a9d, 0xf5f: 0x3abd, 0xf60: 0x3add, 0xf61: 0x3afd, 0xf62: 0x3b1d, 0xf63: 0x3b3d,
1298 0xf64: 0x3b5d, 0xf65: 0x3b7d, 0xf66: 0x127d, 0xf67: 0x3b9d, 0xf68: 0x3bbd, 0xf69: 0x3bdd,
1299 0xf6a: 0x3bfd, 0xf6b: 0x3c1d, 0xf6c: 0x3c3d, 0xf6d: 0x3c5d, 0xf6e: 0x239d, 0xf6f: 0x3c7d,
1300 0xf70: 0x3c9d, 0xf71: 0x3939, 0xf72: 0x3951, 0xf73: 0x3969, 0xf74: 0x3981, 0xf75: 0x3999,
1301 0xf76: 0x39b1, 0xf77: 0x39c9, 0xf78: 0x39e1, 0xf79: 0x39f9, 0xf7a: 0x3a11, 0xf7b: 0x3a29,
1302 0xf7c: 0x3a41, 0xf7d: 0x3a59, 0xf7e: 0x3a71, 0xf7f: 0x3a89,
1303 // Block 0x3e, offset 0xf80
1304 0xf80: 0x3aa1, 0xf81: 0x3ac9, 0xf82: 0x3af1, 0xf83: 0x3b19, 0xf84: 0x3b41, 0xf85: 0x3b69,
1305 0xf86: 0x3b91, 0xf87: 0x3bb9, 0xf88: 0x3be1, 0xf89: 0x3c09, 0xf8a: 0x3c39, 0xf8b: 0x3c69,
1306 0xf8c: 0x3c99, 0xf8d: 0x3cbd, 0xf8e: 0x3cb1, 0xf8f: 0x3cdd, 0xf90: 0x3cfd, 0xf91: 0x3d15,
1307 0xf92: 0x3d2d, 0xf93: 0x3d45, 0xf94: 0x3d5d, 0xf95: 0x3d5d, 0xf96: 0x3d45, 0xf97: 0x3d75,
1308 0xf98: 0x07bd, 0xf99: 0x3d8d, 0xf9a: 0x3da5, 0xf9b: 0x3dbd, 0xf9c: 0x3dd5, 0xf9d: 0x3ded,
1309 0xf9e: 0x3e05, 0xf9f: 0x3e1d, 0xfa0: 0x3e35, 0xfa1: 0x3e4d, 0xfa2: 0x3e65, 0xfa3: 0x3e7d,
1310 0xfa4: 0x3e95, 0xfa5: 0x3e95, 0xfa6: 0x3ead, 0xfa7: 0x3ead, 0xfa8: 0x3ec5, 0xfa9: 0x3ec5,
1311 0xfaa: 0x3edd, 0xfab: 0x3ef5, 0xfac: 0x3f0d, 0xfad: 0x3f25, 0xfae: 0x3f3d, 0xfaf: 0x3f3d,
1312 0xfb0: 0x3f55, 0xfb1: 0x3f55, 0xfb2: 0x3f55, 0xfb3: 0x3f6d, 0xfb4: 0x3f85, 0xfb5: 0x3f9d,
1313 0xfb6: 0x3fb5, 0xfb7: 0x3f9d, 0xfb8: 0x3fcd, 0xfb9: 0x3fe5, 0xfba: 0x3f6d, 0xfbb: 0x3ffd,
1314 0xfbc: 0x4015, 0xfbd: 0x4015, 0xfbe: 0x4015, 0xfbf: 0x0040,
1315 // Block 0x3f, offset 0xfc0
1316 0xfc0: 0x3cc9, 0xfc1: 0x3d31, 0xfc2: 0x3d99, 0xfc3: 0x3e01, 0xfc4: 0x3e51, 0xfc5: 0x3eb9,
1317 0xfc6: 0x3f09, 0xfc7: 0x3f59, 0xfc8: 0x3fd9, 0xfc9: 0x4041, 0xfca: 0x4091, 0xfcb: 0x40e1,
1318 0xfcc: 0x4131, 0xfcd: 0x4199, 0xfce: 0x4201, 0xfcf: 0x4251, 0xfd0: 0x42a1, 0xfd1: 0x42d9,
1319 0xfd2: 0x4329, 0xfd3: 0x4391, 0xfd4: 0x43f9, 0xfd5: 0x4431, 0xfd6: 0x44b1, 0xfd7: 0x4549,
1320 0xfd8: 0x45c9, 0xfd9: 0x4619, 0xfda: 0x4699, 0xfdb: 0x4719, 0xfdc: 0x4781, 0xfdd: 0x47d1,
1321 0xfde: 0x4821, 0xfdf: 0x4871, 0xfe0: 0x48d9, 0xfe1: 0x4959, 0xfe2: 0x49c1, 0xfe3: 0x4a11,
1322 0xfe4: 0x4a61, 0xfe5: 0x4ab1, 0xfe6: 0x4ae9, 0xfe7: 0x4b21, 0xfe8: 0x4b59, 0xfe9: 0x4b91,
1323 0xfea: 0x4be1, 0xfeb: 0x4c31, 0xfec: 0x4cb1, 0xfed: 0x4d01, 0xfee: 0x4d69, 0xfef: 0x4de9,
1324 0xff0: 0x4e39, 0xff1: 0x4e71, 0xff2: 0x4ea9, 0xff3: 0x4f29, 0xff4: 0x4f91, 0xff5: 0x5011,
1325 0xff6: 0x5061, 0xff7: 0x50e1, 0xff8: 0x5119, 0xff9: 0x5169, 0xffa: 0x51b9, 0xffb: 0x5209,
1326 0xffc: 0x5259, 0xffd: 0x52a9, 0xffe: 0x5311, 0xfff: 0x5361,
1327 // Block 0x40, offset 0x1000
1328 0x1000: 0x5399, 0x1001: 0x53e9, 0x1002: 0x5439, 0x1003: 0x5489, 0x1004: 0x54f1, 0x1005: 0x5541,
1329 0x1006: 0x5591, 0x1007: 0x55e1, 0x1008: 0x5661, 0x1009: 0x56c9, 0x100a: 0x5701, 0x100b: 0x5781,
1330 0x100c: 0x57b9, 0x100d: 0x5821, 0x100e: 0x5889, 0x100f: 0x58d9, 0x1010: 0x5929, 0x1011: 0x5979,
1331 0x1012: 0x59e1, 0x1013: 0x5a19, 0x1014: 0x5a69, 0x1015: 0x5ad1, 0x1016: 0x5b09, 0x1017: 0x5b89,
1332 0x1018: 0x5bd9, 0x1019: 0x5c01, 0x101a: 0x5c29, 0x101b: 0x5c51, 0x101c: 0x5c79, 0x101d: 0x5ca1,
1333 0x101e: 0x5cc9, 0x101f: 0x5cf1, 0x1020: 0x5d19, 0x1021: 0x5d41, 0x1022: 0x5d69, 0x1023: 0x5d99,
1334 0x1024: 0x5dc9, 0x1025: 0x5df9, 0x1026: 0x5e29, 0x1027: 0x5e59, 0x1028: 0x5e89, 0x1029: 0x5eb9,
1335 0x102a: 0x5ee9, 0x102b: 0x5f19, 0x102c: 0x5f49, 0x102d: 0x5f79, 0x102e: 0x5fa9, 0x102f: 0x5fd9,
1336 0x1030: 0x6009, 0x1031: 0x402d, 0x1032: 0x6039, 0x1033: 0x6051, 0x1034: 0x404d, 0x1035: 0x6069,
1337 0x1036: 0x6081, 0x1037: 0x6099, 0x1038: 0x406d, 0x1039: 0x406d, 0x103a: 0x60b1, 0x103b: 0x60c9,
1338 0x103c: 0x6101, 0x103d: 0x6139, 0x103e: 0x6171, 0x103f: 0x61a9,
1339 // Block 0x41, offset 0x1040
1340 0x1040: 0x6211, 0x1041: 0x6229, 0x1042: 0x408d, 0x1043: 0x6241, 0x1044: 0x6259, 0x1045: 0x6271,
1341 0x1046: 0x6289, 0x1047: 0x62a1, 0x1048: 0x40ad, 0x1049: 0x62b9, 0x104a: 0x62e1, 0x104b: 0x62f9,
1342 0x104c: 0x40cd, 0x104d: 0x40cd, 0x104e: 0x6311, 0x104f: 0x6329, 0x1050: 0x6341, 0x1051: 0x40ed,
1343 0x1052: 0x410d, 0x1053: 0x412d, 0x1054: 0x414d, 0x1055: 0x416d, 0x1056: 0x6359, 0x1057: 0x6371,
1344 0x1058: 0x6389, 0x1059: 0x63a1, 0x105a: 0x63b9, 0x105b: 0x418d, 0x105c: 0x63d1, 0x105d: 0x63e9,
1345 0x105e: 0x6401, 0x105f: 0x41ad, 0x1060: 0x41cd, 0x1061: 0x6419, 0x1062: 0x41ed, 0x1063: 0x420d,
1346 0x1064: 0x422d, 0x1065: 0x6431, 0x1066: 0x424d, 0x1067: 0x6449, 0x1068: 0x6479, 0x1069: 0x6211,
1347 0x106a: 0x426d, 0x106b: 0x428d, 0x106c: 0x42ad, 0x106d: 0x42cd, 0x106e: 0x64b1, 0x106f: 0x64f1,
1348 0x1070: 0x6539, 0x1071: 0x6551, 0x1072: 0x42ed, 0x1073: 0x6569, 0x1074: 0x6581, 0x1075: 0x6599,
1349 0x1076: 0x430d, 0x1077: 0x65b1, 0x1078: 0x65c9, 0x1079: 0x65b1, 0x107a: 0x65e1, 0x107b: 0x65f9,
1350 0x107c: 0x432d, 0x107d: 0x6611, 0x107e: 0x6629, 0x107f: 0x6611,
1351 // Block 0x42, offset 0x1080
1352 0x1080: 0x434d, 0x1081: 0x436d, 0x1082: 0x0040, 0x1083: 0x6641, 0x1084: 0x6659, 0x1085: 0x6671,
1353 0x1086: 0x6689, 0x1087: 0x0040, 0x1088: 0x66c1, 0x1089: 0x66d9, 0x108a: 0x66f1, 0x108b: 0x6709,
1354 0x108c: 0x6721, 0x108d: 0x6739, 0x108e: 0x6401, 0x108f: 0x6751, 0x1090: 0x6769, 0x1091: 0x6781,
1355 0x1092: 0x438d, 0x1093: 0x6799, 0x1094: 0x6289, 0x1095: 0x43ad, 0x1096: 0x43cd, 0x1097: 0x67b1,
1356 0x1098: 0x0040, 0x1099: 0x43ed, 0x109a: 0x67c9, 0x109b: 0x67e1, 0x109c: 0x67f9, 0x109d: 0x6811,
1357 0x109e: 0x6829, 0x109f: 0x6859, 0x10a0: 0x6889, 0x10a1: 0x68b1, 0x10a2: 0x68d9, 0x10a3: 0x6901,
1358 0x10a4: 0x6929, 0x10a5: 0x6951, 0x10a6: 0x6979, 0x10a7: 0x69a1, 0x10a8: 0x69c9, 0x10a9: 0x69f1,
1359 0x10aa: 0x6a21, 0x10ab: 0x6a51, 0x10ac: 0x6a81, 0x10ad: 0x6ab1, 0x10ae: 0x6ae1, 0x10af: 0x6b11,
1360 0x10b0: 0x6b41, 0x10b1: 0x6b71, 0x10b2: 0x6ba1, 0x10b3: 0x6bd1, 0x10b4: 0x6c01, 0x10b5: 0x6c31,
1361 0x10b6: 0x6c61, 0x10b7: 0x6c91, 0x10b8: 0x6cc1, 0x10b9: 0x6cf1, 0x10ba: 0x6d21, 0x10bb: 0x6d51,
1362 0x10bc: 0x6d81, 0x10bd: 0x6db1, 0x10be: 0x6de1, 0x10bf: 0x440d,
1363 // Block 0x43, offset 0x10c0
1364 0x10c0: 0xe00d, 0x10c1: 0x0008, 0x10c2: 0xe00d, 0x10c3: 0x0008, 0x10c4: 0xe00d, 0x10c5: 0x0008,
1365 0x10c6: 0xe00d, 0x10c7: 0x0008, 0x10c8: 0xe00d, 0x10c9: 0x0008, 0x10ca: 0xe00d, 0x10cb: 0x0008,
1366 0x10cc: 0xe00d, 0x10cd: 0x0008, 0x10ce: 0xe00d, 0x10cf: 0x0008, 0x10d0: 0xe00d, 0x10d1: 0x0008,
1367 0x10d2: 0xe00d, 0x10d3: 0x0008, 0x10d4: 0xe00d, 0x10d5: 0x0008, 0x10d6: 0xe00d, 0x10d7: 0x0008,
1368 0x10d8: 0xe00d, 0x10d9: 0x0008, 0x10da: 0xe00d, 0x10db: 0x0008, 0x10dc: 0xe00d, 0x10dd: 0x0008,
1369 0x10de: 0xe00d, 0x10df: 0x0008, 0x10e0: 0xe00d, 0x10e1: 0x0008, 0x10e2: 0xe00d, 0x10e3: 0x0008,
1370 0x10e4: 0xe00d, 0x10e5: 0x0008, 0x10e6: 0xe00d, 0x10e7: 0x0008, 0x10e8: 0xe00d, 0x10e9: 0x0008,
1371 0x10ea: 0xe00d, 0x10eb: 0x0008, 0x10ec: 0xe00d, 0x10ed: 0x0008, 0x10ee: 0x0008, 0x10ef: 0x3308,
1372 0x10f0: 0x3318, 0x10f1: 0x3318, 0x10f2: 0x3318, 0x10f3: 0x0018, 0x10f4: 0x3308, 0x10f5: 0x3308,
1373 0x10f6: 0x3308, 0x10f7: 0x3308, 0x10f8: 0x3308, 0x10f9: 0x3308, 0x10fa: 0x3308, 0x10fb: 0x3308,
1374 0x10fc: 0x3308, 0x10fd: 0x3308, 0x10fe: 0x0018, 0x10ff: 0x0008,
1375 // Block 0x44, offset 0x1100
1376 0x1100: 0xe00d, 0x1101: 0x0008, 0x1102: 0xe00d, 0x1103: 0x0008, 0x1104: 0xe00d, 0x1105: 0x0008,
1377 0x1106: 0xe00d, 0x1107: 0x0008, 0x1108: 0xe00d, 0x1109: 0x0008, 0x110a: 0xe00d, 0x110b: 0x0008,
1378 0x110c: 0xe00d, 0x110d: 0x0008, 0x110e: 0xe00d, 0x110f: 0x0008, 0x1110: 0xe00d, 0x1111: 0x0008,
1379 0x1112: 0xe00d, 0x1113: 0x0008, 0x1114: 0xe00d, 0x1115: 0x0008, 0x1116: 0xe00d, 0x1117: 0x0008,
1380 0x1118: 0xe00d, 0x1119: 0x0008, 0x111a: 0xe00d, 0x111b: 0x0008, 0x111c: 0x0ea1, 0x111d: 0x6e11,
1381 0x111e: 0x3308, 0x111f: 0x3308, 0x1120: 0x0008, 0x1121: 0x0008, 0x1122: 0x0008, 0x1123: 0x0008,
1382 0x1124: 0x0008, 0x1125: 0x0008, 0x1126: 0x0008, 0x1127: 0x0008, 0x1128: 0x0008, 0x1129: 0x0008,
1383 0x112a: 0x0008, 0x112b: 0x0008, 0x112c: 0x0008, 0x112d: 0x0008, 0x112e: 0x0008, 0x112f: 0x0008,
1384 0x1130: 0x0008, 0x1131: 0x0008, 0x1132: 0x0008, 0x1133: 0x0008, 0x1134: 0x0008, 0x1135: 0x0008,
1385 0x1136: 0x0008, 0x1137: 0x0008, 0x1138: 0x0008, 0x1139: 0x0008, 0x113a: 0x0008, 0x113b: 0x0008,
1386 0x113c: 0x0008, 0x113d: 0x0008, 0x113e: 0x0008, 0x113f: 0x0008,
1387 // Block 0x45, offset 0x1140
1388 0x1140: 0x0018, 0x1141: 0x0018, 0x1142: 0x0018, 0x1143: 0x0018, 0x1144: 0x0018, 0x1145: 0x0018,
1389 0x1146: 0x0018, 0x1147: 0x0018, 0x1148: 0x0018, 0x1149: 0x0018, 0x114a: 0x0018, 0x114b: 0x0018,
1390 0x114c: 0x0018, 0x114d: 0x0018, 0x114e: 0x0018, 0x114f: 0x0018, 0x1150: 0x0018, 0x1151: 0x0018,
1391 0x1152: 0x0018, 0x1153: 0x0018, 0x1154: 0x0018, 0x1155: 0x0018, 0x1156: 0x0018, 0x1157: 0x0008,
1392 0x1158: 0x0008, 0x1159: 0x0008, 0x115a: 0x0008, 0x115b: 0x0008, 0x115c: 0x0008, 0x115d: 0x0008,
1393 0x115e: 0x0008, 0x115f: 0x0008, 0x1160: 0x0018, 0x1161: 0x0018, 0x1162: 0xe00d, 0x1163: 0x0008,
1394 0x1164: 0xe00d, 0x1165: 0x0008, 0x1166: 0xe00d, 0x1167: 0x0008, 0x1168: 0xe00d, 0x1169: 0x0008,
1395 0x116a: 0xe00d, 0x116b: 0x0008, 0x116c: 0xe00d, 0x116d: 0x0008, 0x116e: 0xe00d, 0x116f: 0x0008,
1396 0x1170: 0x0008, 0x1171: 0x0008, 0x1172: 0xe00d, 0x1173: 0x0008, 0x1174: 0xe00d, 0x1175: 0x0008,
1397 0x1176: 0xe00d, 0x1177: 0x0008, 0x1178: 0xe00d, 0x1179: 0x0008, 0x117a: 0xe00d, 0x117b: 0x0008,
1398 0x117c: 0xe00d, 0x117d: 0x0008, 0x117e: 0xe00d, 0x117f: 0x0008,
1399 // Block 0x46, offset 0x1180
1400 0x1180: 0xe00d, 0x1181: 0x0008, 0x1182: 0xe00d, 0x1183: 0x0008, 0x1184: 0xe00d, 0x1185: 0x0008,
1401 0x1186: 0xe00d, 0x1187: 0x0008, 0x1188: 0xe00d, 0x1189: 0x0008, 0x118a: 0xe00d, 0x118b: 0x0008,
1402 0x118c: 0xe00d, 0x118d: 0x0008, 0x118e: 0xe00d, 0x118f: 0x0008, 0x1190: 0xe00d, 0x1191: 0x0008,
1403 0x1192: 0xe00d, 0x1193: 0x0008, 0x1194: 0xe00d, 0x1195: 0x0008, 0x1196: 0xe00d, 0x1197: 0x0008,
1404 0x1198: 0xe00d, 0x1199: 0x0008, 0x119a: 0xe00d, 0x119b: 0x0008, 0x119c: 0xe00d, 0x119d: 0x0008,
1405 0x119e: 0xe00d, 0x119f: 0x0008, 0x11a0: 0xe00d, 0x11a1: 0x0008, 0x11a2: 0xe00d, 0x11a3: 0x0008,
1406 0x11a4: 0xe00d, 0x11a5: 0x0008, 0x11a6: 0xe00d, 0x11a7: 0x0008, 0x11a8: 0xe00d, 0x11a9: 0x0008,
1407 0x11aa: 0xe00d, 0x11ab: 0x0008, 0x11ac: 0xe00d, 0x11ad: 0x0008, 0x11ae: 0xe00d, 0x11af: 0x0008,
1408 0x11b0: 0xe0fd, 0x11b1: 0x0008, 0x11b2: 0x0008, 0x11b3: 0x0008, 0x11b4: 0x0008, 0x11b5: 0x0008,
1409 0x11b6: 0x0008, 0x11b7: 0x0008, 0x11b8: 0x0008, 0x11b9: 0xe01d, 0x11ba: 0x0008, 0x11bb: 0xe03d,
1410 0x11bc: 0x0008, 0x11bd: 0x442d, 0x11be: 0xe00d, 0x11bf: 0x0008,
1411 // Block 0x47, offset 0x11c0
1412 0x11c0: 0xe00d, 0x11c1: 0x0008, 0x11c2: 0xe00d, 0x11c3: 0x0008, 0x11c4: 0xe00d, 0x11c5: 0x0008,
1413 0x11c6: 0xe00d, 0x11c7: 0x0008, 0x11c8: 0x0008, 0x11c9: 0x0018, 0x11ca: 0x0018, 0x11cb: 0xe03d,
1414 0x11cc: 0x0008, 0x11cd: 0x11d9, 0x11ce: 0x0008, 0x11cf: 0x0008, 0x11d0: 0xe00d, 0x11d1: 0x0008,
1415 0x11d2: 0xe00d, 0x11d3: 0x0008, 0x11d4: 0x0008, 0x11d5: 0x0008, 0x11d6: 0xe00d, 0x11d7: 0x0008,
1416 0x11d8: 0xe00d, 0x11d9: 0x0008, 0x11da: 0xe00d, 0x11db: 0x0008, 0x11dc: 0xe00d, 0x11dd: 0x0008,
1417 0x11de: 0xe00d, 0x11df: 0x0008, 0x11e0: 0xe00d, 0x11e1: 0x0008, 0x11e2: 0xe00d, 0x11e3: 0x0008,
1418 0x11e4: 0xe00d, 0x11e5: 0x0008, 0x11e6: 0xe00d, 0x11e7: 0x0008, 0x11e8: 0xe00d, 0x11e9: 0x0008,
1419 0x11ea: 0x6e29, 0x11eb: 0x1029, 0x11ec: 0x11c1, 0x11ed: 0x6e41, 0x11ee: 0x1221, 0x11ef: 0x0040,
1420 0x11f0: 0x6e59, 0x11f1: 0x6e71, 0x11f2: 0x1239, 0x11f3: 0x444d, 0x11f4: 0xe00d, 0x11f5: 0x0008,
1421 0x11f6: 0xe00d, 0x11f7: 0x0008, 0x11f8: 0x0040, 0x11f9: 0x0040, 0x11fa: 0x0040, 0x11fb: 0x0040,
1422 0x11fc: 0x0040, 0x11fd: 0x0040, 0x11fe: 0x0040, 0x11ff: 0x0040,
1423 // Block 0x48, offset 0x1200
1424 0x1200: 0x64d5, 0x1201: 0x64f5, 0x1202: 0x6515, 0x1203: 0x6535, 0x1204: 0x6555, 0x1205: 0x6575,
1425 0x1206: 0x6595, 0x1207: 0x65b5, 0x1208: 0x65d5, 0x1209: 0x65f5, 0x120a: 0x6615, 0x120b: 0x6635,
1426 0x120c: 0x6655, 0x120d: 0x6675, 0x120e: 0x0008, 0x120f: 0x0008, 0x1210: 0x6695, 0x1211: 0x0008,
1427 0x1212: 0x66b5, 0x1213: 0x0008, 0x1214: 0x0008, 0x1215: 0x66d5, 0x1216: 0x66f5, 0x1217: 0x6715,
1428 0x1218: 0x6735, 0x1219: 0x6755, 0x121a: 0x6775, 0x121b: 0x6795, 0x121c: 0x67b5, 0x121d: 0x67d5,
1429 0x121e: 0x67f5, 0x121f: 0x0008, 0x1220: 0x6815, 0x1221: 0x0008, 0x1222: 0x6835, 0x1223: 0x0008,
1430 0x1224: 0x0008, 0x1225: 0x6855, 0x1226: 0x6875, 0x1227: 0x0008, 0x1228: 0x0008, 0x1229: 0x0008,
1431 0x122a: 0x6895, 0x122b: 0x68b5, 0x122c: 0x68d5, 0x122d: 0x68f5, 0x122e: 0x6915, 0x122f: 0x6935,
1432 0x1230: 0x6955, 0x1231: 0x6975, 0x1232: 0x6995, 0x1233: 0x69b5, 0x1234: 0x69d5, 0x1235: 0x69f5,
1433 0x1236: 0x6a15, 0x1237: 0x6a35, 0x1238: 0x6a55, 0x1239: 0x6a75, 0x123a: 0x6a95, 0x123b: 0x6ab5,
1434 0x123c: 0x6ad5, 0x123d: 0x6af5, 0x123e: 0x6b15, 0x123f: 0x6b35,
1435 // Block 0x49, offset 0x1240
1436 0x1240: 0x7a95, 0x1241: 0x7ab5, 0x1242: 0x7ad5, 0x1243: 0x7af5, 0x1244: 0x7b15, 0x1245: 0x7b35,
1437 0x1246: 0x7b55, 0x1247: 0x7b75, 0x1248: 0x7b95, 0x1249: 0x7bb5, 0x124a: 0x7bd5, 0x124b: 0x7bf5,
1438 0x124c: 0x7c15, 0x124d: 0x7c35, 0x124e: 0x7c55, 0x124f: 0x6ec9, 0x1250: 0x6ef1, 0x1251: 0x6f19,
1439 0x1252: 0x7c75, 0x1253: 0x7c95, 0x1254: 0x7cb5, 0x1255: 0x6f41, 0x1256: 0x6f69, 0x1257: 0x6f91,
1440 0x1258: 0x7cd5, 0x1259: 0x7cf5, 0x125a: 0x0040, 0x125b: 0x0040, 0x125c: 0x0040, 0x125d: 0x0040,
1441 0x125e: 0x0040, 0x125f: 0x0040, 0x1260: 0x0040, 0x1261: 0x0040, 0x1262: 0x0040, 0x1263: 0x0040,
1442 0x1264: 0x0040, 0x1265: 0x0040, 0x1266: 0x0040, 0x1267: 0x0040, 0x1268: 0x0040, 0x1269: 0x0040,
1443 0x126a: 0x0040, 0x126b: 0x0040, 0x126c: 0x0040, 0x126d: 0x0040, 0x126e: 0x0040, 0x126f: 0x0040,
1444 0x1270: 0x0040, 0x1271: 0x0040, 0x1272: 0x0040, 0x1273: 0x0040, 0x1274: 0x0040, 0x1275: 0x0040,
1445 0x1276: 0x0040, 0x1277: 0x0040, 0x1278: 0x0040, 0x1279: 0x0040, 0x127a: 0x0040, 0x127b: 0x0040,
1446 0x127c: 0x0040, 0x127d: 0x0040, 0x127e: 0x0040, 0x127f: 0x0040,
1447 // Block 0x4a, offset 0x1280
1448 0x1280: 0x6fb9, 0x1281: 0x6fd1, 0x1282: 0x6fe9, 0x1283: 0x7d15, 0x1284: 0x7d35, 0x1285: 0x7001,
1449 0x1286: 0x7001, 0x1287: 0x0040, 0x1288: 0x0040, 0x1289: 0x0040, 0x128a: 0x0040, 0x128b: 0x0040,
1450 0x128c: 0x0040, 0x128d: 0x0040, 0x128e: 0x0040, 0x128f: 0x0040, 0x1290: 0x0040, 0x1291: 0x0040,
1451 0x1292: 0x0040, 0x1293: 0x7019, 0x1294: 0x7041, 0x1295: 0x7069, 0x1296: 0x7091, 0x1297: 0x70b9,
1452 0x1298: 0x0040, 0x1299: 0x0040, 0x129a: 0x0040, 0x129b: 0x0040, 0x129c: 0x0040, 0x129d: 0x70e1,
1453 0x129e: 0x3308, 0x129f: 0x7109, 0x12a0: 0x7131, 0x12a1: 0x20a9, 0x12a2: 0x20f1, 0x12a3: 0x7149,
1454 0x12a4: 0x7161, 0x12a5: 0x7179, 0x12a6: 0x7191, 0x12a7: 0x71a9, 0x12a8: 0x71c1, 0x12a9: 0x1fb2,
1455 0x12aa: 0x71d9, 0x12ab: 0x7201, 0x12ac: 0x7229, 0x12ad: 0x7261, 0x12ae: 0x7299, 0x12af: 0x72c1,
1456 0x12b0: 0x72e9, 0x12b1: 0x7311, 0x12b2: 0x7339, 0x12b3: 0x7361, 0x12b4: 0x7389, 0x12b5: 0x73b1,
1457 0x12b6: 0x73d9, 0x12b7: 0x0040, 0x12b8: 0x7401, 0x12b9: 0x7429, 0x12ba: 0x7451, 0x12bb: 0x7479,
1458 0x12bc: 0x74a1, 0x12bd: 0x0040, 0x12be: 0x74c9, 0x12bf: 0x0040,
1459 // Block 0x4b, offset 0x12c0
1460 0x12c0: 0x74f1, 0x12c1: 0x7519, 0x12c2: 0x0040, 0x12c3: 0x7541, 0x12c4: 0x7569, 0x12c5: 0x0040,
1461 0x12c6: 0x7591, 0x12c7: 0x75b9, 0x12c8: 0x75e1, 0x12c9: 0x7609, 0x12ca: 0x7631, 0x12cb: 0x7659,
1462 0x12cc: 0x7681, 0x12cd: 0x76a9, 0x12ce: 0x76d1, 0x12cf: 0x76f9, 0x12d0: 0x7721, 0x12d1: 0x7721,
1463 0x12d2: 0x7739, 0x12d3: 0x7739, 0x12d4: 0x7739, 0x12d5: 0x7739, 0x12d6: 0x7751, 0x12d7: 0x7751,
1464 0x12d8: 0x7751, 0x12d9: 0x7751, 0x12da: 0x7769, 0x12db: 0x7769, 0x12dc: 0x7769, 0x12dd: 0x7769,
1465 0x12de: 0x7781, 0x12df: 0x7781, 0x12e0: 0x7781, 0x12e1: 0x7781, 0x12e2: 0x7799, 0x12e3: 0x7799,
1466 0x12e4: 0x7799, 0x12e5: 0x7799, 0x12e6: 0x77b1, 0x12e7: 0x77b1, 0x12e8: 0x77b1, 0x12e9: 0x77b1,
1467 0x12ea: 0x77c9, 0x12eb: 0x77c9, 0x12ec: 0x77c9, 0x12ed: 0x77c9, 0x12ee: 0x77e1, 0x12ef: 0x77e1,
1468 0x12f0: 0x77e1, 0x12f1: 0x77e1, 0x12f2: 0x77f9, 0x12f3: 0x77f9, 0x12f4: 0x77f9, 0x12f5: 0x77f9,
1469 0x12f6: 0x7811, 0x12f7: 0x7811, 0x12f8: 0x7811, 0x12f9: 0x7811, 0x12fa: 0x7829, 0x12fb: 0x7829,
1470 0x12fc: 0x7829, 0x12fd: 0x7829, 0x12fe: 0x7841, 0x12ff: 0x7841,
1471 // Block 0x4c, offset 0x1300
1472 0x1300: 0x7841, 0x1301: 0x7841, 0x1302: 0x7859, 0x1303: 0x7859, 0x1304: 0x7871, 0x1305: 0x7871,
1473 0x1306: 0x7889, 0x1307: 0x7889, 0x1308: 0x78a1, 0x1309: 0x78a1, 0x130a: 0x78b9, 0x130b: 0x78b9,
1474 0x130c: 0x78d1, 0x130d: 0x78d1, 0x130e: 0x78e9, 0x130f: 0x78e9, 0x1310: 0x78e9, 0x1311: 0x78e9,
1475 0x1312: 0x7901, 0x1313: 0x7901, 0x1314: 0x7901, 0x1315: 0x7901, 0x1316: 0x7919, 0x1317: 0x7919,
1476 0x1318: 0x7919, 0x1319: 0x7919, 0x131a: 0x7931, 0x131b: 0x7931, 0x131c: 0x7931, 0x131d: 0x7931,
1477 0x131e: 0x7949, 0x131f: 0x7949, 0x1320: 0x7961, 0x1321: 0x7961, 0x1322: 0x7961, 0x1323: 0x7961,
1478 0x1324: 0x7979, 0x1325: 0x7979, 0x1326: 0x7991, 0x1327: 0x7991, 0x1328: 0x7991, 0x1329: 0x7991,
1479 0x132a: 0x79a9, 0x132b: 0x79a9, 0x132c: 0x79a9, 0x132d: 0x79a9, 0x132e: 0x79c1, 0x132f: 0x79c1,
1480 0x1330: 0x79d9, 0x1331: 0x79d9, 0x1332: 0x0818, 0x1333: 0x0818, 0x1334: 0x0818, 0x1335: 0x0818,
1481 0x1336: 0x0818, 0x1337: 0x0818, 0x1338: 0x0818, 0x1339: 0x0818, 0x133a: 0x0818, 0x133b: 0x0818,
1482 0x133c: 0x0818, 0x133d: 0x0818, 0x133e: 0x0818, 0x133f: 0x0818,
1483 // Block 0x4d, offset 0x1340
1484 0x1340: 0x0818, 0x1341: 0x0818, 0x1342: 0x0040, 0x1343: 0x0040, 0x1344: 0x0040, 0x1345: 0x0040,
1485 0x1346: 0x0040, 0x1347: 0x0040, 0x1348: 0x0040, 0x1349: 0x0040, 0x134a: 0x0040, 0x134b: 0x0040,
1486 0x134c: 0x0040, 0x134d: 0x0040, 0x134e: 0x0040, 0x134f: 0x0040, 0x1350: 0x0040, 0x1351: 0x0040,
1487 0x1352: 0x0040, 0x1353: 0x79f1, 0x1354: 0x79f1, 0x1355: 0x79f1, 0x1356: 0x79f1, 0x1357: 0x7a09,
1488 0x1358: 0x7a09, 0x1359: 0x7a21, 0x135a: 0x7a21, 0x135b: 0x7a39, 0x135c: 0x7a39, 0x135d: 0x0479,
1489 0x135e: 0x7a51, 0x135f: 0x7a51, 0x1360: 0x7a69, 0x1361: 0x7a69, 0x1362: 0x7a81, 0x1363: 0x7a81,
1490 0x1364: 0x7a99, 0x1365: 0x7a99, 0x1366: 0x7a99, 0x1367: 0x7a99, 0x1368: 0x7ab1, 0x1369: 0x7ab1,
1491 0x136a: 0x7ac9, 0x136b: 0x7ac9, 0x136c: 0x7af1, 0x136d: 0x7af1, 0x136e: 0x7b19, 0x136f: 0x7b19,
1492 0x1370: 0x7b41, 0x1371: 0x7b41, 0x1372: 0x7b69, 0x1373: 0x7b69, 0x1374: 0x7b91, 0x1375: 0x7b91,
1493 0x1376: 0x7bb9, 0x1377: 0x7bb9, 0x1378: 0x7bb9, 0x1379: 0x7be1, 0x137a: 0x7be1, 0x137b: 0x7be1,
1494 0x137c: 0x7c09, 0x137d: 0x7c09, 0x137e: 0x7c09, 0x137f: 0x7c09,
1495 // Block 0x4e, offset 0x1380
1496 0x1380: 0x85f9, 0x1381: 0x8621, 0x1382: 0x8649, 0x1383: 0x8671, 0x1384: 0x8699, 0x1385: 0x86c1,
1497 0x1386: 0x86e9, 0x1387: 0x8711, 0x1388: 0x8739, 0x1389: 0x8761, 0x138a: 0x8789, 0x138b: 0x87b1,
1498 0x138c: 0x87d9, 0x138d: 0x8801, 0x138e: 0x8829, 0x138f: 0x8851, 0x1390: 0x8879, 0x1391: 0x88a1,
1499 0x1392: 0x88c9, 0x1393: 0x88f1, 0x1394: 0x8919, 0x1395: 0x8941, 0x1396: 0x8969, 0x1397: 0x8991,
1500 0x1398: 0x89b9, 0x1399: 0x89e1, 0x139a: 0x8a09, 0x139b: 0x8a31, 0x139c: 0x8a59, 0x139d: 0x8a81,
1501 0x139e: 0x8aaa, 0x139f: 0x8ada, 0x13a0: 0x8b0a, 0x13a1: 0x8b3a, 0x13a2: 0x8b6a, 0x13a3: 0x8b9a,
1502 0x13a4: 0x8bc9, 0x13a5: 0x8bf1, 0x13a6: 0x7c71, 0x13a7: 0x8c19, 0x13a8: 0x7be1, 0x13a9: 0x7c99,
1503 0x13aa: 0x8c41, 0x13ab: 0x8c69, 0x13ac: 0x7d39, 0x13ad: 0x8c91, 0x13ae: 0x7d61, 0x13af: 0x7d89,
1504 0x13b0: 0x8cb9, 0x13b1: 0x8ce1, 0x13b2: 0x7e29, 0x13b3: 0x8d09, 0x13b4: 0x7e51, 0x13b5: 0x7e79,
1505 0x13b6: 0x8d31, 0x13b7: 0x8d59, 0x13b8: 0x7ec9, 0x13b9: 0x8d81, 0x13ba: 0x7ef1, 0x13bb: 0x7f19,
1506 0x13bc: 0x83a1, 0x13bd: 0x83c9, 0x13be: 0x8441, 0x13bf: 0x8469,
1507 // Block 0x4f, offset 0x13c0
1508 0x13c0: 0x8491, 0x13c1: 0x8531, 0x13c2: 0x8559, 0x13c3: 0x8581, 0x13c4: 0x85a9, 0x13c5: 0x8649,
1509 0x13c6: 0x8671, 0x13c7: 0x8699, 0x13c8: 0x8da9, 0x13c9: 0x8739, 0x13ca: 0x8dd1, 0x13cb: 0x8df9,
1510 0x13cc: 0x8829, 0x13cd: 0x8e21, 0x13ce: 0x8851, 0x13cf: 0x8879, 0x13d0: 0x8a81, 0x13d1: 0x8e49,
1511 0x13d2: 0x8e71, 0x13d3: 0x89b9, 0x13d4: 0x8e99, 0x13d5: 0x89e1, 0x13d6: 0x8a09, 0x13d7: 0x7c21,
1512 0x13d8: 0x7c49, 0x13d9: 0x8ec1, 0x13da: 0x7c71, 0x13db: 0x8ee9, 0x13dc: 0x7cc1, 0x13dd: 0x7ce9,
1513 0x13de: 0x7d11, 0x13df: 0x7d39, 0x13e0: 0x8f11, 0x13e1: 0x7db1, 0x13e2: 0x7dd9, 0x13e3: 0x7e01,
1514 0x13e4: 0x7e29, 0x13e5: 0x8f39, 0x13e6: 0x7ec9, 0x13e7: 0x7f41, 0x13e8: 0x7f69, 0x13e9: 0x7f91,
1515 0x13ea: 0x7fb9, 0x13eb: 0x7fe1, 0x13ec: 0x8031, 0x13ed: 0x8059, 0x13ee: 0x8081, 0x13ef: 0x80a9,
1516 0x13f0: 0x80d1, 0x13f1: 0x80f9, 0x13f2: 0x8f61, 0x13f3: 0x8121, 0x13f4: 0x8149, 0x13f5: 0x8171,
1517 0x13f6: 0x8199, 0x13f7: 0x81c1, 0x13f8: 0x81e9, 0x13f9: 0x8239, 0x13fa: 0x8261, 0x13fb: 0x8289,
1518 0x13fc: 0x82b1, 0x13fd: 0x82d9, 0x13fe: 0x8301, 0x13ff: 0x8329,
1519 // Block 0x50, offset 0x1400
1520 0x1400: 0x8351, 0x1401: 0x8379, 0x1402: 0x83f1, 0x1403: 0x8419, 0x1404: 0x84b9, 0x1405: 0x84e1,
1521 0x1406: 0x8509, 0x1407: 0x8531, 0x1408: 0x8559, 0x1409: 0x85d1, 0x140a: 0x85f9, 0x140b: 0x8621,
1522 0x140c: 0x8649, 0x140d: 0x8f89, 0x140e: 0x86c1, 0x140f: 0x86e9, 0x1410: 0x8711, 0x1411: 0x8739,
1523 0x1412: 0x87b1, 0x1413: 0x87d9, 0x1414: 0x8801, 0x1415: 0x8829, 0x1416: 0x8fb1, 0x1417: 0x88a1,
1524 0x1418: 0x88c9, 0x1419: 0x8fd9, 0x141a: 0x8941, 0x141b: 0x8969, 0x141c: 0x8991, 0x141d: 0x89b9,
1525 0x141e: 0x9001, 0x141f: 0x7c71, 0x1420: 0x8ee9, 0x1421: 0x7d39, 0x1422: 0x8f11, 0x1423: 0x7e29,
1526 0x1424: 0x8f39, 0x1425: 0x7ec9, 0x1426: 0x9029, 0x1427: 0x80d1, 0x1428: 0x9051, 0x1429: 0x9079,
1527 0x142a: 0x90a1, 0x142b: 0x8531, 0x142c: 0x8559, 0x142d: 0x8649, 0x142e: 0x8829, 0x142f: 0x8fb1,
1528 0x1430: 0x89b9, 0x1431: 0x9001, 0x1432: 0x90c9, 0x1433: 0x9101, 0x1434: 0x9139, 0x1435: 0x9171,
1529 0x1436: 0x9199, 0x1437: 0x91c1, 0x1438: 0x91e9, 0x1439: 0x9211, 0x143a: 0x9239, 0x143b: 0x9261,
1530 0x143c: 0x9289, 0x143d: 0x92b1, 0x143e: 0x92d9, 0x143f: 0x9301,
1531 // Block 0x51, offset 0x1440
1532 0x1440: 0x9329, 0x1441: 0x9351, 0x1442: 0x9379, 0x1443: 0x93a1, 0x1444: 0x93c9, 0x1445: 0x93f1,
1533 0x1446: 0x9419, 0x1447: 0x9441, 0x1448: 0x9469, 0x1449: 0x9491, 0x144a: 0x94b9, 0x144b: 0x94e1,
1534 0x144c: 0x9079, 0x144d: 0x9509, 0x144e: 0x9531, 0x144f: 0x9559, 0x1450: 0x9581, 0x1451: 0x9171,
1535 0x1452: 0x9199, 0x1453: 0x91c1, 0x1454: 0x91e9, 0x1455: 0x9211, 0x1456: 0x9239, 0x1457: 0x9261,
1536 0x1458: 0x9289, 0x1459: 0x92b1, 0x145a: 0x92d9, 0x145b: 0x9301, 0x145c: 0x9329, 0x145d: 0x9351,
1537 0x145e: 0x9379, 0x145f: 0x93a1, 0x1460: 0x93c9, 0x1461: 0x93f1, 0x1462: 0x9419, 0x1463: 0x9441,
1538 0x1464: 0x9469, 0x1465: 0x9491, 0x1466: 0x94b9, 0x1467: 0x94e1, 0x1468: 0x9079, 0x1469: 0x9509,
1539 0x146a: 0x9531, 0x146b: 0x9559, 0x146c: 0x9581, 0x146d: 0x9491, 0x146e: 0x94b9, 0x146f: 0x94e1,
1540 0x1470: 0x9079, 0x1471: 0x9051, 0x1472: 0x90a1, 0x1473: 0x8211, 0x1474: 0x8059, 0x1475: 0x8081,
1541 0x1476: 0x80a9, 0x1477: 0x9491, 0x1478: 0x94b9, 0x1479: 0x94e1, 0x147a: 0x8211, 0x147b: 0x8239,
1542 0x147c: 0x95a9, 0x147d: 0x95a9, 0x147e: 0x0018, 0x147f: 0x0018,
1543 // Block 0x52, offset 0x1480
1544 0x1480: 0x0040, 0x1481: 0x0040, 0x1482: 0x0040, 0x1483: 0x0040, 0x1484: 0x0040, 0x1485: 0x0040,
1545 0x1486: 0x0040, 0x1487: 0x0040, 0x1488: 0x0040, 0x1489: 0x0040, 0x148a: 0x0040, 0x148b: 0x0040,
1546 0x148c: 0x0040, 0x148d: 0x0040, 0x148e: 0x0040, 0x148f: 0x0040, 0x1490: 0x95d1, 0x1491: 0x9609,
1547 0x1492: 0x9609, 0x1493: 0x9641, 0x1494: 0x9679, 0x1495: 0x96b1, 0x1496: 0x96e9, 0x1497: 0x9721,
1548 0x1498: 0x9759, 0x1499: 0x9759, 0x149a: 0x9791, 0x149b: 0x97c9, 0x149c: 0x9801, 0x149d: 0x9839,
1549 0x149e: 0x9871, 0x149f: 0x98a9, 0x14a0: 0x98a9, 0x14a1: 0x98e1, 0x14a2: 0x9919, 0x14a3: 0x9919,
1550 0x14a4: 0x9951, 0x14a5: 0x9951, 0x14a6: 0x9989, 0x14a7: 0x99c1, 0x14a8: 0x99c1, 0x14a9: 0x99f9,
1551 0x14aa: 0x9a31, 0x14ab: 0x9a31, 0x14ac: 0x9a69, 0x14ad: 0x9a69, 0x14ae: 0x9aa1, 0x14af: 0x9ad9,
1552 0x14b0: 0x9ad9, 0x14b1: 0x9b11, 0x14b2: 0x9b11, 0x14b3: 0x9b49, 0x14b4: 0x9b81, 0x14b5: 0x9bb9,
1553 0x14b6: 0x9bf1, 0x14b7: 0x9bf1, 0x14b8: 0x9c29, 0x14b9: 0x9c61, 0x14ba: 0x9c99, 0x14bb: 0x9cd1,
1554 0x14bc: 0x9d09, 0x14bd: 0x9d09, 0x14be: 0x9d41, 0x14bf: 0x9d79,
1555 // Block 0x53, offset 0x14c0
1556 0x14c0: 0xa949, 0x14c1: 0xa981, 0x14c2: 0xa9b9, 0x14c3: 0xa8a1, 0x14c4: 0x9bb9, 0x14c5: 0x9989,
1557 0x14c6: 0xa9f1, 0x14c7: 0xaa29, 0x14c8: 0x0040, 0x14c9: 0x0040, 0x14ca: 0x0040, 0x14cb: 0x0040,
1558 0x14cc: 0x0040, 0x14cd: 0x0040, 0x14ce: 0x0040, 0x14cf: 0x0040, 0x14d0: 0x0040, 0x14d1: 0x0040,
1559 0x14d2: 0x0040, 0x14d3: 0x0040, 0x14d4: 0x0040, 0x14d5: 0x0040, 0x14d6: 0x0040, 0x14d7: 0x0040,
1560 0x14d8: 0x0040, 0x14d9: 0x0040, 0x14da: 0x0040, 0x14db: 0x0040, 0x14dc: 0x0040, 0x14dd: 0x0040,
1561 0x14de: 0x0040, 0x14df: 0x0040, 0x14e0: 0x0040, 0x14e1: 0x0040, 0x14e2: 0x0040, 0x14e3: 0x0040,
1562 0x14e4: 0x0040, 0x14e5: 0x0040, 0x14e6: 0x0040, 0x14e7: 0x0040, 0x14e8: 0x0040, 0x14e9: 0x0040,
1563 0x14ea: 0x0040, 0x14eb: 0x0040, 0x14ec: 0x0040, 0x14ed: 0x0040, 0x14ee: 0x0040, 0x14ef: 0x0040,
1564 0x14f0: 0xaa61, 0x14f1: 0xaa99, 0x14f2: 0xaad1, 0x14f3: 0xab19, 0x14f4: 0xab61, 0x14f5: 0xaba9,
1565 0x14f6: 0xabf1, 0x14f7: 0xac39, 0x14f8: 0xac81, 0x14f9: 0xacc9, 0x14fa: 0xad02, 0x14fb: 0xae12,
1566 0x14fc: 0xae91, 0x14fd: 0x0018, 0x14fe: 0x0040, 0x14ff: 0x0040,
1567 // Block 0x54, offset 0x1500
1568 0x1500: 0x33c0, 0x1501: 0x33c0, 0x1502: 0x33c0, 0x1503: 0x33c0, 0x1504: 0x33c0, 0x1505: 0x33c0,
1569 0x1506: 0x33c0, 0x1507: 0x33c0, 0x1508: 0x33c0, 0x1509: 0x33c0, 0x150a: 0x33c0, 0x150b: 0x33c0,
1570 0x150c: 0x33c0, 0x150d: 0x33c0, 0x150e: 0x33c0, 0x150f: 0x33c0, 0x1510: 0xaeda, 0x1511: 0x7d55,
1571 0x1512: 0x0040, 0x1513: 0xaeea, 0x1514: 0x03c2, 0x1515: 0xaefa, 0x1516: 0xaf0a, 0x1517: 0x7d75,
1572 0x1518: 0x7d95, 0x1519: 0x0040, 0x151a: 0x0040, 0x151b: 0x0040, 0x151c: 0x0040, 0x151d: 0x0040,
1573 0x151e: 0x0040, 0x151f: 0x0040, 0x1520: 0x3308, 0x1521: 0x3308, 0x1522: 0x3308, 0x1523: 0x3308,
1574 0x1524: 0x3308, 0x1525: 0x3308, 0x1526: 0x3308, 0x1527: 0x3308, 0x1528: 0x3308, 0x1529: 0x3308,
1575 0x152a: 0x3308, 0x152b: 0x3308, 0x152c: 0x3308, 0x152d: 0x3308, 0x152e: 0x3308, 0x152f: 0x3308,
1576 0x1530: 0x0040, 0x1531: 0x7db5, 0x1532: 0x7dd5, 0x1533: 0xaf1a, 0x1534: 0xaf1a, 0x1535: 0x1fd2,
1577 0x1536: 0x1fe2, 0x1537: 0xaf2a, 0x1538: 0xaf3a, 0x1539: 0x7df5, 0x153a: 0x7e15, 0x153b: 0x7e35,
1578 0x153c: 0x7df5, 0x153d: 0x7e55, 0x153e: 0x7e75, 0x153f: 0x7e55,
1579 // Block 0x55, offset 0x1540
1580 0x1540: 0x7e95, 0x1541: 0x7eb5, 0x1542: 0x7ed5, 0x1543: 0x7eb5, 0x1544: 0x7ef5, 0x1545: 0x0018,
1581 0x1546: 0x0018, 0x1547: 0xaf4a, 0x1548: 0xaf5a, 0x1549: 0x7f16, 0x154a: 0x7f36, 0x154b: 0x7f56,
1582 0x154c: 0x7f76, 0x154d: 0xaf1a, 0x154e: 0xaf1a, 0x154f: 0xaf1a, 0x1550: 0xaeda, 0x1551: 0x7f95,
1583 0x1552: 0x0040, 0x1553: 0x0040, 0x1554: 0x03c2, 0x1555: 0xaeea, 0x1556: 0xaf0a, 0x1557: 0xaefa,
1584 0x1558: 0x7fb5, 0x1559: 0x1fd2, 0x155a: 0x1fe2, 0x155b: 0xaf2a, 0x155c: 0xaf3a, 0x155d: 0x7e95,
1585 0x155e: 0x7ef5, 0x155f: 0xaf6a, 0x1560: 0xaf7a, 0x1561: 0xaf8a, 0x1562: 0x1fb2, 0x1563: 0xaf99,
1586 0x1564: 0xafaa, 0x1565: 0xafba, 0x1566: 0x1fc2, 0x1567: 0x0040, 0x1568: 0xafca, 0x1569: 0xafda,
1587 0x156a: 0xafea, 0x156b: 0xaffa, 0x156c: 0x0040, 0x156d: 0x0040, 0x156e: 0x0040, 0x156f: 0x0040,
1588 0x1570: 0x7fd6, 0x1571: 0xb009, 0x1572: 0x7ff6, 0x1573: 0x0808, 0x1574: 0x8016, 0x1575: 0x0040,
1589 0x1576: 0x8036, 0x1577: 0xb031, 0x1578: 0x8056, 0x1579: 0xb059, 0x157a: 0x8076, 0x157b: 0xb081,
1590 0x157c: 0x8096, 0x157d: 0xb0a9, 0x157e: 0x80b6, 0x157f: 0xb0d1,
1591 // Block 0x56, offset 0x1580
1592 0x1580: 0xb0f9, 0x1581: 0xb111, 0x1582: 0xb111, 0x1583: 0xb129, 0x1584: 0xb129, 0x1585: 0xb141,
1593 0x1586: 0xb141, 0x1587: 0xb159, 0x1588: 0xb159, 0x1589: 0xb171, 0x158a: 0xb171, 0x158b: 0xb171,
1594 0x158c: 0xb171, 0x158d: 0xb189, 0x158e: 0xb189, 0x158f: 0xb1a1, 0x1590: 0xb1a1, 0x1591: 0xb1a1,
1595 0x1592: 0xb1a1, 0x1593: 0xb1b9, 0x1594: 0xb1b9, 0x1595: 0xb1d1, 0x1596: 0xb1d1, 0x1597: 0xb1d1,
1596 0x1598: 0xb1d1, 0x1599: 0xb1e9, 0x159a: 0xb1e9, 0x159b: 0xb1e9, 0x159c: 0xb1e9, 0x159d: 0xb201,
1597 0x159e: 0xb201, 0x159f: 0xb201, 0x15a0: 0xb201, 0x15a1: 0xb219, 0x15a2: 0xb219, 0x15a3: 0xb219,
1598 0x15a4: 0xb219, 0x15a5: 0xb231, 0x15a6: 0xb231, 0x15a7: 0xb231, 0x15a8: 0xb231, 0x15a9: 0xb249,
1599 0x15aa: 0xb249, 0x15ab: 0xb261, 0x15ac: 0xb261, 0x15ad: 0xb279, 0x15ae: 0xb279, 0x15af: 0xb291,
1600 0x15b0: 0xb291, 0x15b1: 0xb2a9, 0x15b2: 0xb2a9, 0x15b3: 0xb2a9, 0x15b4: 0xb2a9, 0x15b5: 0xb2c1,
1601 0x15b6: 0xb2c1, 0x15b7: 0xb2c1, 0x15b8: 0xb2c1, 0x15b9: 0xb2d9, 0x15ba: 0xb2d9, 0x15bb: 0xb2d9,
1602 0x15bc: 0xb2d9, 0x15bd: 0xb2f1, 0x15be: 0xb2f1, 0x15bf: 0xb2f1,
1603 // Block 0x57, offset 0x15c0
1604 0x15c0: 0xb2f1, 0x15c1: 0xb309, 0x15c2: 0xb309, 0x15c3: 0xb309, 0x15c4: 0xb309, 0x15c5: 0xb321,
1605 0x15c6: 0xb321, 0x15c7: 0xb321, 0x15c8: 0xb321, 0x15c9: 0xb339, 0x15ca: 0xb339, 0x15cb: 0xb339,
1606 0x15cc: 0xb339, 0x15cd: 0xb351, 0x15ce: 0xb351, 0x15cf: 0xb351, 0x15d0: 0xb351, 0x15d1: 0xb369,
1607 0x15d2: 0xb369, 0x15d3: 0xb369, 0x15d4: 0xb369, 0x15d5: 0xb381, 0x15d6: 0xb381, 0x15d7: 0xb381,
1608 0x15d8: 0xb381, 0x15d9: 0xb399, 0x15da: 0xb399, 0x15db: 0xb399, 0x15dc: 0xb399, 0x15dd: 0xb3b1,
1609 0x15de: 0xb3b1, 0x15df: 0xb3b1, 0x15e0: 0xb3b1, 0x15e1: 0xb3c9, 0x15e2: 0xb3c9, 0x15e3: 0xb3c9,
1610 0x15e4: 0xb3c9, 0x15e5: 0xb3e1, 0x15e6: 0xb3e1, 0x15e7: 0xb3e1, 0x15e8: 0xb3e1, 0x15e9: 0xb3f9,
1611 0x15ea: 0xb3f9, 0x15eb: 0xb3f9, 0x15ec: 0xb3f9, 0x15ed: 0xb411, 0x15ee: 0xb411, 0x15ef: 0x7ab1,
1612 0x15f0: 0x7ab1, 0x15f1: 0xb429, 0x15f2: 0xb429, 0x15f3: 0xb429, 0x15f4: 0xb429, 0x15f5: 0xb441,
1613 0x15f6: 0xb441, 0x15f7: 0xb469, 0x15f8: 0xb469, 0x15f9: 0xb491, 0x15fa: 0xb491, 0x15fb: 0xb4b9,
1614 0x15fc: 0xb4b9, 0x15fd: 0x0040, 0x15fe: 0x0040, 0x15ff: 0x03c0,
1615 // Block 0x58, offset 0x1600
1616 0x1600: 0x0040, 0x1601: 0xaefa, 0x1602: 0xb4e2, 0x1603: 0xaf6a, 0x1604: 0xafda, 0x1605: 0xafea,
1617 0x1606: 0xaf7a, 0x1607: 0xb4f2, 0x1608: 0x1fd2, 0x1609: 0x1fe2, 0x160a: 0xaf8a, 0x160b: 0x1fb2,
1618 0x160c: 0xaeda, 0x160d: 0xaf99, 0x160e: 0x29d1, 0x160f: 0xb502, 0x1610: 0x1f41, 0x1611: 0x00c9,
1619 0x1612: 0x0069, 0x1613: 0x0079, 0x1614: 0x1f51, 0x1615: 0x1f61, 0x1616: 0x1f71, 0x1617: 0x1f81,
1620 0x1618: 0x1f91, 0x1619: 0x1fa1, 0x161a: 0xaeea, 0x161b: 0x03c2, 0x161c: 0xafaa, 0x161d: 0x1fc2,
1621 0x161e: 0xafba, 0x161f: 0xaf0a, 0x1620: 0xaffa, 0x1621: 0x0039, 0x1622: 0x0ee9, 0x1623: 0x1159,
1622 0x1624: 0x0ef9, 0x1625: 0x0f09, 0x1626: 0x1199, 0x1627: 0x0f31, 0x1628: 0x0249, 0x1629: 0x0f41,
1623 0x162a: 0x0259, 0x162b: 0x0f51, 0x162c: 0x0359, 0x162d: 0x0f61, 0x162e: 0x0f71, 0x162f: 0x00d9,
1624 0x1630: 0x0f99, 0x1631: 0x2039, 0x1632: 0x0269, 0x1633: 0x01d9, 0x1634: 0x0fa9, 0x1635: 0x0fb9,
1625 0x1636: 0x1089, 0x1637: 0x0279, 0x1638: 0x0369, 0x1639: 0x0289, 0x163a: 0x13d1, 0x163b: 0xaf4a,
1626 0x163c: 0xafca, 0x163d: 0xaf5a, 0x163e: 0xb512, 0x163f: 0xaf1a,
1627 // Block 0x59, offset 0x1640
1628 0x1640: 0x1caa, 0x1641: 0x0039, 0x1642: 0x0ee9, 0x1643: 0x1159, 0x1644: 0x0ef9, 0x1645: 0x0f09,
1629 0x1646: 0x1199, 0x1647: 0x0f31, 0x1648: 0x0249, 0x1649: 0x0f41, 0x164a: 0x0259, 0x164b: 0x0f51,
1630 0x164c: 0x0359, 0x164d: 0x0f61, 0x164e: 0x0f71, 0x164f: 0x00d9, 0x1650: 0x0f99, 0x1651: 0x2039,
1631 0x1652: 0x0269, 0x1653: 0x01d9, 0x1654: 0x0fa9, 0x1655: 0x0fb9, 0x1656: 0x1089, 0x1657: 0x0279,
1632 0x1658: 0x0369, 0x1659: 0x0289, 0x165a: 0x13d1, 0x165b: 0xaf2a, 0x165c: 0xb522, 0x165d: 0xaf3a,
1633 0x165e: 0xb532, 0x165f: 0x80d5, 0x1660: 0x80f5, 0x1661: 0x29d1, 0x1662: 0x8115, 0x1663: 0x8115,
1634 0x1664: 0x8135, 0x1665: 0x8155, 0x1666: 0x8175, 0x1667: 0x8195, 0x1668: 0x81b5, 0x1669: 0x81d5,
1635 0x166a: 0x81f5, 0x166b: 0x8215, 0x166c: 0x8235, 0x166d: 0x8255, 0x166e: 0x8275, 0x166f: 0x8295,
1636 0x1670: 0x82b5, 0x1671: 0x82d5, 0x1672: 0x82f5, 0x1673: 0x8315, 0x1674: 0x8335, 0x1675: 0x8355,
1637 0x1676: 0x8375, 0x1677: 0x8395, 0x1678: 0x83b5, 0x1679: 0x83d5, 0x167a: 0x83f5, 0x167b: 0x8415,
1638 0x167c: 0x81b5, 0x167d: 0x8435, 0x167e: 0x8455, 0x167f: 0x8215,
1639 // Block 0x5a, offset 0x1680
1640 0x1680: 0x8475, 0x1681: 0x8495, 0x1682: 0x84b5, 0x1683: 0x84d5, 0x1684: 0x84f5, 0x1685: 0x8515,
1641 0x1686: 0x8535, 0x1687: 0x8555, 0x1688: 0x84d5, 0x1689: 0x8575, 0x168a: 0x84d5, 0x168b: 0x8595,
1642 0x168c: 0x8595, 0x168d: 0x85b5, 0x168e: 0x85b5, 0x168f: 0x85d5, 0x1690: 0x8515, 0x1691: 0x85f5,
1643 0x1692: 0x8615, 0x1693: 0x85f5, 0x1694: 0x8635, 0x1695: 0x8615, 0x1696: 0x8655, 0x1697: 0x8655,
1644 0x1698: 0x8675, 0x1699: 0x8675, 0x169a: 0x8695, 0x169b: 0x8695, 0x169c: 0x8615, 0x169d: 0x8115,
1645 0x169e: 0x86b5, 0x169f: 0x86d5, 0x16a0: 0x0040, 0x16a1: 0x86f5, 0x16a2: 0x8715, 0x16a3: 0x8735,
1646 0x16a4: 0x8755, 0x16a5: 0x8735, 0x16a6: 0x8775, 0x16a7: 0x8795, 0x16a8: 0x87b5, 0x16a9: 0x87b5,
1647 0x16aa: 0x87d5, 0x16ab: 0x87d5, 0x16ac: 0x87f5, 0x16ad: 0x87f5, 0x16ae: 0x87d5, 0x16af: 0x87d5,
1648 0x16b0: 0x8815, 0x16b1: 0x8835, 0x16b2: 0x8855, 0x16b3: 0x8875, 0x16b4: 0x8895, 0x16b5: 0x88b5,
1649 0x16b6: 0x88b5, 0x16b7: 0x88b5, 0x16b8: 0x88d5, 0x16b9: 0x88d5, 0x16ba: 0x88d5, 0x16bb: 0x88d5,
1650 0x16bc: 0x87b5, 0x16bd: 0x87b5, 0x16be: 0x87b5, 0x16bf: 0x0040,
1651 // Block 0x5b, offset 0x16c0
1652 0x16c0: 0x0040, 0x16c1: 0x0040, 0x16c2: 0x8715, 0x16c3: 0x86f5, 0x16c4: 0x88f5, 0x16c5: 0x86f5,
1653 0x16c6: 0x8715, 0x16c7: 0x86f5, 0x16c8: 0x0040, 0x16c9: 0x0040, 0x16ca: 0x8915, 0x16cb: 0x8715,
1654 0x16cc: 0x8935, 0x16cd: 0x88f5, 0x16ce: 0x8935, 0x16cf: 0x8715, 0x16d0: 0x0040, 0x16d1: 0x0040,
1655 0x16d2: 0x8955, 0x16d3: 0x8975, 0x16d4: 0x8875, 0x16d5: 0x8935, 0x16d6: 0x88f5, 0x16d7: 0x8935,
1656 0x16d8: 0x0040, 0x16d9: 0x0040, 0x16da: 0x8995, 0x16db: 0x89b5, 0x16dc: 0x8995, 0x16dd: 0x0040,
1657 0x16de: 0x0040, 0x16df: 0x0040, 0x16e0: 0xb541, 0x16e1: 0xb559, 0x16e2: 0xb571, 0x16e3: 0x89d6,
1658 0x16e4: 0xb589, 0x16e5: 0xb5a1, 0x16e6: 0x89f5, 0x16e7: 0x0040, 0x16e8: 0x8a15, 0x16e9: 0x8a35,
1659 0x16ea: 0x8a55, 0x16eb: 0x8a35, 0x16ec: 0x8a75, 0x16ed: 0x8a95, 0x16ee: 0x8ab5, 0x16ef: 0x0040,
1660 0x16f0: 0x0040, 0x16f1: 0x0040, 0x16f2: 0x0040, 0x16f3: 0x0040, 0x16f4: 0x0040, 0x16f5: 0x0040,
1661 0x16f6: 0x0040, 0x16f7: 0x0040, 0x16f8: 0x0040, 0x16f9: 0x0340, 0x16fa: 0x0340, 0x16fb: 0x0340,
1662 0x16fc: 0x0040, 0x16fd: 0x0040, 0x16fe: 0x0040, 0x16ff: 0x0040,
1663 // Block 0x5c, offset 0x1700
1664 0x1700: 0x0a08, 0x1701: 0x0a08, 0x1702: 0x0a08, 0x1703: 0x0a08, 0x1704: 0x0a08, 0x1705: 0x0c08,
1665 0x1706: 0x0808, 0x1707: 0x0c08, 0x1708: 0x0818, 0x1709: 0x0c08, 0x170a: 0x0c08, 0x170b: 0x0808,
1666 0x170c: 0x0808, 0x170d: 0x0908, 0x170e: 0x0c08, 0x170f: 0x0c08, 0x1710: 0x0c08, 0x1711: 0x0c08,
1667 0x1712: 0x0c08, 0x1713: 0x0a08, 0x1714: 0x0a08, 0x1715: 0x0a08, 0x1716: 0x0a08, 0x1717: 0x0908,
1668 0x1718: 0x0a08, 0x1719: 0x0a08, 0x171a: 0x0a08, 0x171b: 0x0a08, 0x171c: 0x0a08, 0x171d: 0x0c08,
1669 0x171e: 0x0a08, 0x171f: 0x0a08, 0x1720: 0x0a08, 0x1721: 0x0c08, 0x1722: 0x0808, 0x1723: 0x0808,
1670 0x1724: 0x0c08, 0x1725: 0x3308, 0x1726: 0x3308, 0x1727: 0x0040, 0x1728: 0x0040, 0x1729: 0x0040,
1671 0x172a: 0x0040, 0x172b: 0x0a18, 0x172c: 0x0a18, 0x172d: 0x0a18, 0x172e: 0x0a18, 0x172f: 0x0c18,
1672 0x1730: 0x0818, 0x1731: 0x0818, 0x1732: 0x0818, 0x1733: 0x0818, 0x1734: 0x0818, 0x1735: 0x0818,
1673 0x1736: 0x0818, 0x1737: 0x0040, 0x1738: 0x0040, 0x1739: 0x0040, 0x173a: 0x0040, 0x173b: 0x0040,
1674 0x173c: 0x0040, 0x173d: 0x0040, 0x173e: 0x0040, 0x173f: 0x0040,
1675 // Block 0x5d, offset 0x1740
1676 0x1740: 0x0a08, 0x1741: 0x0c08, 0x1742: 0x0a08, 0x1743: 0x0c08, 0x1744: 0x0c08, 0x1745: 0x0c08,
1677 0x1746: 0x0a08, 0x1747: 0x0a08, 0x1748: 0x0a08, 0x1749: 0x0c08, 0x174a: 0x0a08, 0x174b: 0x0a08,
1678 0x174c: 0x0c08, 0x174d: 0x0a08, 0x174e: 0x0c08, 0x174f: 0x0c08, 0x1750: 0x0a08, 0x1751: 0x0c08,
1679 0x1752: 0x0040, 0x1753: 0x0040, 0x1754: 0x0040, 0x1755: 0x0040, 0x1756: 0x0040, 0x1757: 0x0040,
1680 0x1758: 0x0040, 0x1759: 0x0818, 0x175a: 0x0818, 0x175b: 0x0818, 0x175c: 0x0818, 0x175d: 0x0040,
1681 0x175e: 0x0040, 0x175f: 0x0040, 0x1760: 0x0040, 0x1761: 0x0040, 0x1762: 0x0040, 0x1763: 0x0040,
1682 0x1764: 0x0040, 0x1765: 0x0040, 0x1766: 0x0040, 0x1767: 0x0040, 0x1768: 0x0040, 0x1769: 0x0c18,
1683 0x176a: 0x0c18, 0x176b: 0x0c18, 0x176c: 0x0c18, 0x176d: 0x0a18, 0x176e: 0x0a18, 0x176f: 0x0818,
1684 0x1770: 0x0040, 0x1771: 0x0040, 0x1772: 0x0040, 0x1773: 0x0040, 0x1774: 0x0040, 0x1775: 0x0040,
1685 0x1776: 0x0040, 0x1777: 0x0040, 0x1778: 0x0040, 0x1779: 0x0040, 0x177a: 0x0040, 0x177b: 0x0040,
1686 0x177c: 0x0040, 0x177d: 0x0040, 0x177e: 0x0040, 0x177f: 0x0040,
1687 // Block 0x5e, offset 0x1780
1688 0x1780: 0x3308, 0x1781: 0x3308, 0x1782: 0x3008, 0x1783: 0x3008, 0x1784: 0x0040, 0x1785: 0x0008,
1689 0x1786: 0x0008, 0x1787: 0x0008, 0x1788: 0x0008, 0x1789: 0x0008, 0x178a: 0x0008, 0x178b: 0x0008,
1690 0x178c: 0x0008, 0x178d: 0x0040, 0x178e: 0x0040, 0x178f: 0x0008, 0x1790: 0x0008, 0x1791: 0x0040,
1691 0x1792: 0x0040, 0x1793: 0x0008, 0x1794: 0x0008, 0x1795: 0x0008, 0x1796: 0x0008, 0x1797: 0x0008,
1692 0x1798: 0x0008, 0x1799: 0x0008, 0x179a: 0x0008, 0x179b: 0x0008, 0x179c: 0x0008, 0x179d: 0x0008,
1693 0x179e: 0x0008, 0x179f: 0x0008, 0x17a0: 0x0008, 0x17a1: 0x0008, 0x17a2: 0x0008, 0x17a3: 0x0008,
1694 0x17a4: 0x0008, 0x17a5: 0x0008, 0x17a6: 0x0008, 0x17a7: 0x0008, 0x17a8: 0x0008, 0x17a9: 0x0040,
1695 0x17aa: 0x0008, 0x17ab: 0x0008, 0x17ac: 0x0008, 0x17ad: 0x0008, 0x17ae: 0x0008, 0x17af: 0x0008,
1696 0x17b0: 0x0008, 0x17b1: 0x0040, 0x17b2: 0x0008, 0x17b3: 0x0008, 0x17b4: 0x0040, 0x17b5: 0x0008,
1697 0x17b6: 0x0008, 0x17b7: 0x0008, 0x17b8: 0x0008, 0x17b9: 0x0008, 0x17ba: 0x0040, 0x17bb: 0x0040,
1698 0x17bc: 0x3308, 0x17bd: 0x0008, 0x17be: 0x3008, 0x17bf: 0x3008,
1699 // Block 0x5f, offset 0x17c0
1700 0x17c0: 0x3308, 0x17c1: 0x3008, 0x17c2: 0x3008, 0x17c3: 0x3008, 0x17c4: 0x3008, 0x17c5: 0x0040,
1701 0x17c6: 0x0040, 0x17c7: 0x3008, 0x17c8: 0x3008, 0x17c9: 0x0040, 0x17ca: 0x0040, 0x17cb: 0x3008,
1702 0x17cc: 0x3008, 0x17cd: 0x3808, 0x17ce: 0x0040, 0x17cf: 0x0040, 0x17d0: 0x0008, 0x17d1: 0x0040,
1703 0x17d2: 0x0040, 0x17d3: 0x0040, 0x17d4: 0x0040, 0x17d5: 0x0040, 0x17d6: 0x0040, 0x17d7: 0x3008,
1704 0x17d8: 0x0040, 0x17d9: 0x0040, 0x17da: 0x0040, 0x17db: 0x0040, 0x17dc: 0x0040, 0x17dd: 0x0008,
1705 0x17de: 0x0008, 0x17df: 0x0008, 0x17e0: 0x0008, 0x17e1: 0x0008, 0x17e2: 0x3008, 0x17e3: 0x3008,
1706 0x17e4: 0x0040, 0x17e5: 0x0040, 0x17e6: 0x3308, 0x17e7: 0x3308, 0x17e8: 0x3308, 0x17e9: 0x3308,
1707 0x17ea: 0x3308, 0x17eb: 0x3308, 0x17ec: 0x3308, 0x17ed: 0x0040, 0x17ee: 0x0040, 0x17ef: 0x0040,
1708 0x17f0: 0x3308, 0x17f1: 0x3308, 0x17f2: 0x3308, 0x17f3: 0x3308, 0x17f4: 0x3308, 0x17f5: 0x0040,
1709 0x17f6: 0x0040, 0x17f7: 0x0040, 0x17f8: 0x0040, 0x17f9: 0x0040, 0x17fa: 0x0040, 0x17fb: 0x0040,
1710 0x17fc: 0x0040, 0x17fd: 0x0040, 0x17fe: 0x0040, 0x17ff: 0x0040,
1711 // Block 0x60, offset 0x1800
1712 0x1800: 0x0039, 0x1801: 0x0ee9, 0x1802: 0x1159, 0x1803: 0x0ef9, 0x1804: 0x0f09, 0x1805: 0x1199,
1713 0x1806: 0x0f31, 0x1807: 0x0249, 0x1808: 0x0f41, 0x1809: 0x0259, 0x180a: 0x0f51, 0x180b: 0x0359,
1714 0x180c: 0x0f61, 0x180d: 0x0f71, 0x180e: 0x00d9, 0x180f: 0x0f99, 0x1810: 0x2039, 0x1811: 0x0269,
1715 0x1812: 0x01d9, 0x1813: 0x0fa9, 0x1814: 0x0fb9, 0x1815: 0x1089, 0x1816: 0x0279, 0x1817: 0x0369,
1716 0x1818: 0x0289, 0x1819: 0x13d1, 0x181a: 0x0039, 0x181b: 0x0ee9, 0x181c: 0x1159, 0x181d: 0x0ef9,
1717 0x181e: 0x0f09, 0x181f: 0x1199, 0x1820: 0x0f31, 0x1821: 0x0249, 0x1822: 0x0f41, 0x1823: 0x0259,
1718 0x1824: 0x0f51, 0x1825: 0x0359, 0x1826: 0x0f61, 0x1827: 0x0f71, 0x1828: 0x00d9, 0x1829: 0x0f99,
1719 0x182a: 0x2039, 0x182b: 0x0269, 0x182c: 0x01d9, 0x182d: 0x0fa9, 0x182e: 0x0fb9, 0x182f: 0x1089,
1720 0x1830: 0x0279, 0x1831: 0x0369, 0x1832: 0x0289, 0x1833: 0x13d1, 0x1834: 0x0039, 0x1835: 0x0ee9,
1721 0x1836: 0x1159, 0x1837: 0x0ef9, 0x1838: 0x0f09, 0x1839: 0x1199, 0x183a: 0x0f31, 0x183b: 0x0249,
1722 0x183c: 0x0f41, 0x183d: 0x0259, 0x183e: 0x0f51, 0x183f: 0x0359,
1723 // Block 0x61, offset 0x1840
1724 0x1840: 0x0f61, 0x1841: 0x0f71, 0x1842: 0x00d9, 0x1843: 0x0f99, 0x1844: 0x2039, 0x1845: 0x0269,
1725 0x1846: 0x01d9, 0x1847: 0x0fa9, 0x1848: 0x0fb9, 0x1849: 0x1089, 0x184a: 0x0279, 0x184b: 0x0369,
1726 0x184c: 0x0289, 0x184d: 0x13d1, 0x184e: 0x0039, 0x184f: 0x0ee9, 0x1850: 0x1159, 0x1851: 0x0ef9,
1727 0x1852: 0x0f09, 0x1853: 0x1199, 0x1854: 0x0f31, 0x1855: 0x0040, 0x1856: 0x0f41, 0x1857: 0x0259,
1728 0x1858: 0x0f51, 0x1859: 0x0359, 0x185a: 0x0f61, 0x185b: 0x0f71, 0x185c: 0x00d9, 0x185d: 0x0f99,
1729 0x185e: 0x2039, 0x185f: 0x0269, 0x1860: 0x01d9, 0x1861: 0x0fa9, 0x1862: 0x0fb9, 0x1863: 0x1089,
1730 0x1864: 0x0279, 0x1865: 0x0369, 0x1866: 0x0289, 0x1867: 0x13d1, 0x1868: 0x0039, 0x1869: 0x0ee9,
1731 0x186a: 0x1159, 0x186b: 0x0ef9, 0x186c: 0x0f09, 0x186d: 0x1199, 0x186e: 0x0f31, 0x186f: 0x0249,
1732 0x1870: 0x0f41, 0x1871: 0x0259, 0x1872: 0x0f51, 0x1873: 0x0359, 0x1874: 0x0f61, 0x1875: 0x0f71,
1733 0x1876: 0x00d9, 0x1877: 0x0f99, 0x1878: 0x2039, 0x1879: 0x0269, 0x187a: 0x01d9, 0x187b: 0x0fa9,
1734 0x187c: 0x0fb9, 0x187d: 0x1089, 0x187e: 0x0279, 0x187f: 0x0369,
1735 // Block 0x62, offset 0x1880
1736 0x1880: 0x0289, 0x1881: 0x13d1, 0x1882: 0x0039, 0x1883: 0x0ee9, 0x1884: 0x1159, 0x1885: 0x0ef9,
1737 0x1886: 0x0f09, 0x1887: 0x1199, 0x1888: 0x0f31, 0x1889: 0x0249, 0x188a: 0x0f41, 0x188b: 0x0259,
1738 0x188c: 0x0f51, 0x188d: 0x0359, 0x188e: 0x0f61, 0x188f: 0x0f71, 0x1890: 0x00d9, 0x1891: 0x0f99,
1739 0x1892: 0x2039, 0x1893: 0x0269, 0x1894: 0x01d9, 0x1895: 0x0fa9, 0x1896: 0x0fb9, 0x1897: 0x1089,
1740 0x1898: 0x0279, 0x1899: 0x0369, 0x189a: 0x0289, 0x189b: 0x13d1, 0x189c: 0x0039, 0x189d: 0x0040,
1741 0x189e: 0x1159, 0x189f: 0x0ef9, 0x18a0: 0x0040, 0x18a1: 0x0040, 0x18a2: 0x0f31, 0x18a3: 0x0040,
1742 0x18a4: 0x0040, 0x18a5: 0x0259, 0x18a6: 0x0f51, 0x18a7: 0x0040, 0x18a8: 0x0040, 0x18a9: 0x0f71,
1743 0x18aa: 0x00d9, 0x18ab: 0x0f99, 0x18ac: 0x2039, 0x18ad: 0x0040, 0x18ae: 0x01d9, 0x18af: 0x0fa9,
1744 0x18b0: 0x0fb9, 0x18b1: 0x1089, 0x18b2: 0x0279, 0x18b3: 0x0369, 0x18b4: 0x0289, 0x18b5: 0x13d1,
1745 0x18b6: 0x0039, 0x18b7: 0x0ee9, 0x18b8: 0x1159, 0x18b9: 0x0ef9, 0x18ba: 0x0040, 0x18bb: 0x1199,
1746 0x18bc: 0x0040, 0x18bd: 0x0249, 0x18be: 0x0f41, 0x18bf: 0x0259,
1747 // Block 0x63, offset 0x18c0
1748 0x18c0: 0x0f51, 0x18c1: 0x0359, 0x18c2: 0x0f61, 0x18c3: 0x0f71, 0x18c4: 0x0040, 0x18c5: 0x0f99,
1749 0x18c6: 0x2039, 0x18c7: 0x0269, 0x18c8: 0x01d9, 0x18c9: 0x0fa9, 0x18ca: 0x0fb9, 0x18cb: 0x1089,
1750 0x18cc: 0x0279, 0x18cd: 0x0369, 0x18ce: 0x0289, 0x18cf: 0x13d1, 0x18d0: 0x0039, 0x18d1: 0x0ee9,
1751 0x18d2: 0x1159, 0x18d3: 0x0ef9, 0x18d4: 0x0f09, 0x18d5: 0x1199, 0x18d6: 0x0f31, 0x18d7: 0x0249,
1752 0x18d8: 0x0f41, 0x18d9: 0x0259, 0x18da: 0x0f51, 0x18db: 0x0359, 0x18dc: 0x0f61, 0x18dd: 0x0f71,
1753 0x18de: 0x00d9, 0x18df: 0x0f99, 0x18e0: 0x2039, 0x18e1: 0x0269, 0x18e2: 0x01d9, 0x18e3: 0x0fa9,
1754 0x18e4: 0x0fb9, 0x18e5: 0x1089, 0x18e6: 0x0279, 0x18e7: 0x0369, 0x18e8: 0x0289, 0x18e9: 0x13d1,
1755 0x18ea: 0x0039, 0x18eb: 0x0ee9, 0x18ec: 0x1159, 0x18ed: 0x0ef9, 0x18ee: 0x0f09, 0x18ef: 0x1199,
1756 0x18f0: 0x0f31, 0x18f1: 0x0249, 0x18f2: 0x0f41, 0x18f3: 0x0259, 0x18f4: 0x0f51, 0x18f5: 0x0359,
1757 0x18f6: 0x0f61, 0x18f7: 0x0f71, 0x18f8: 0x00d9, 0x18f9: 0x0f99, 0x18fa: 0x2039, 0x18fb: 0x0269,
1758 0x18fc: 0x01d9, 0x18fd: 0x0fa9, 0x18fe: 0x0fb9, 0x18ff: 0x1089,
1759 // Block 0x64, offset 0x1900
1760 0x1900: 0x0279, 0x1901: 0x0369, 0x1902: 0x0289, 0x1903: 0x13d1, 0x1904: 0x0039, 0x1905: 0x0ee9,
1761 0x1906: 0x0040, 0x1907: 0x0ef9, 0x1908: 0x0f09, 0x1909: 0x1199, 0x190a: 0x0f31, 0x190b: 0x0040,
1762 0x190c: 0x0040, 0x190d: 0x0259, 0x190e: 0x0f51, 0x190f: 0x0359, 0x1910: 0x0f61, 0x1911: 0x0f71,
1763 0x1912: 0x00d9, 0x1913: 0x0f99, 0x1914: 0x2039, 0x1915: 0x0040, 0x1916: 0x01d9, 0x1917: 0x0fa9,
1764 0x1918: 0x0fb9, 0x1919: 0x1089, 0x191a: 0x0279, 0x191b: 0x0369, 0x191c: 0x0289, 0x191d: 0x0040,
1765 0x191e: 0x0039, 0x191f: 0x0ee9, 0x1920: 0x1159, 0x1921: 0x0ef9, 0x1922: 0x0f09, 0x1923: 0x1199,
1766 0x1924: 0x0f31, 0x1925: 0x0249, 0x1926: 0x0f41, 0x1927: 0x0259, 0x1928: 0x0f51, 0x1929: 0x0359,
1767 0x192a: 0x0f61, 0x192b: 0x0f71, 0x192c: 0x00d9, 0x192d: 0x0f99, 0x192e: 0x2039, 0x192f: 0x0269,
1768 0x1930: 0x01d9, 0x1931: 0x0fa9, 0x1932: 0x0fb9, 0x1933: 0x1089, 0x1934: 0x0279, 0x1935: 0x0369,
1769 0x1936: 0x0289, 0x1937: 0x13d1, 0x1938: 0x0039, 0x1939: 0x0ee9, 0x193a: 0x0040, 0x193b: 0x0ef9,
1770 0x193c: 0x0f09, 0x193d: 0x1199, 0x193e: 0x0f31, 0x193f: 0x0040,
1771 // Block 0x65, offset 0x1940
1772 0x1940: 0x0f41, 0x1941: 0x0259, 0x1942: 0x0f51, 0x1943: 0x0359, 0x1944: 0x0f61, 0x1945: 0x0040,
1773 0x1946: 0x00d9, 0x1947: 0x0040, 0x1948: 0x0040, 0x1949: 0x0040, 0x194a: 0x01d9, 0x194b: 0x0fa9,
1774 0x194c: 0x0fb9, 0x194d: 0x1089, 0x194e: 0x0279, 0x194f: 0x0369, 0x1950: 0x0289, 0x1951: 0x0040,
1775 0x1952: 0x0039, 0x1953: 0x0ee9, 0x1954: 0x1159, 0x1955: 0x0ef9, 0x1956: 0x0f09, 0x1957: 0x1199,
1776 0x1958: 0x0f31, 0x1959: 0x0249, 0x195a: 0x0f41, 0x195b: 0x0259, 0x195c: 0x0f51, 0x195d: 0x0359,
1777 0x195e: 0x0f61, 0x195f: 0x0f71, 0x1960: 0x00d9, 0x1961: 0x0f99, 0x1962: 0x2039, 0x1963: 0x0269,
1778 0x1964: 0x01d9, 0x1965: 0x0fa9, 0x1966: 0x0fb9, 0x1967: 0x1089, 0x1968: 0x0279, 0x1969: 0x0369,
1779 0x196a: 0x0289, 0x196b: 0x13d1, 0x196c: 0x0039, 0x196d: 0x0ee9, 0x196e: 0x1159, 0x196f: 0x0ef9,
1780 0x1970: 0x0f09, 0x1971: 0x1199, 0x1972: 0x0f31, 0x1973: 0x0249, 0x1974: 0x0f41, 0x1975: 0x0259,
1781 0x1976: 0x0f51, 0x1977: 0x0359, 0x1978: 0x0f61, 0x1979: 0x0f71, 0x197a: 0x00d9, 0x197b: 0x0f99,
1782 0x197c: 0x2039, 0x197d: 0x0269, 0x197e: 0x01d9, 0x197f: 0x0fa9,
1783 // Block 0x66, offset 0x1980
1784 0x1980: 0x0fb9, 0x1981: 0x1089, 0x1982: 0x0279, 0x1983: 0x0369, 0x1984: 0x0289, 0x1985: 0x13d1,
1785 0x1986: 0x0039, 0x1987: 0x0ee9, 0x1988: 0x1159, 0x1989: 0x0ef9, 0x198a: 0x0f09, 0x198b: 0x1199,
1786 0x198c: 0x0f31, 0x198d: 0x0249, 0x198e: 0x0f41, 0x198f: 0x0259, 0x1990: 0x0f51, 0x1991: 0x0359,
1787 0x1992: 0x0f61, 0x1993: 0x0f71, 0x1994: 0x00d9, 0x1995: 0x0f99, 0x1996: 0x2039, 0x1997: 0x0269,
1788 0x1998: 0x01d9, 0x1999: 0x0fa9, 0x199a: 0x0fb9, 0x199b: 0x1089, 0x199c: 0x0279, 0x199d: 0x0369,
1789 0x199e: 0x0289, 0x199f: 0x13d1, 0x19a0: 0x0039, 0x19a1: 0x0ee9, 0x19a2: 0x1159, 0x19a3: 0x0ef9,
1790 0x19a4: 0x0f09, 0x19a5: 0x1199, 0x19a6: 0x0f31, 0x19a7: 0x0249, 0x19a8: 0x0f41, 0x19a9: 0x0259,
1791 0x19aa: 0x0f51, 0x19ab: 0x0359, 0x19ac: 0x0f61, 0x19ad: 0x0f71, 0x19ae: 0x00d9, 0x19af: 0x0f99,
1792 0x19b0: 0x2039, 0x19b1: 0x0269, 0x19b2: 0x01d9, 0x19b3: 0x0fa9, 0x19b4: 0x0fb9, 0x19b5: 0x1089,
1793 0x19b6: 0x0279, 0x19b7: 0x0369, 0x19b8: 0x0289, 0x19b9: 0x13d1, 0x19ba: 0x0039, 0x19bb: 0x0ee9,
1794 0x19bc: 0x1159, 0x19bd: 0x0ef9, 0x19be: 0x0f09, 0x19bf: 0x1199,
1795 // Block 0x67, offset 0x19c0
1796 0x19c0: 0x0f31, 0x19c1: 0x0249, 0x19c2: 0x0f41, 0x19c3: 0x0259, 0x19c4: 0x0f51, 0x19c5: 0x0359,
1797 0x19c6: 0x0f61, 0x19c7: 0x0f71, 0x19c8: 0x00d9, 0x19c9: 0x0f99, 0x19ca: 0x2039, 0x19cb: 0x0269,
1798 0x19cc: 0x01d9, 0x19cd: 0x0fa9, 0x19ce: 0x0fb9, 0x19cf: 0x1089, 0x19d0: 0x0279, 0x19d1: 0x0369,
1799 0x19d2: 0x0289, 0x19d3: 0x13d1, 0x19d4: 0x0039, 0x19d5: 0x0ee9, 0x19d6: 0x1159, 0x19d7: 0x0ef9,
1800 0x19d8: 0x0f09, 0x19d9: 0x1199, 0x19da: 0x0f31, 0x19db: 0x0249, 0x19dc: 0x0f41, 0x19dd: 0x0259,
1801 0x19de: 0x0f51, 0x19df: 0x0359, 0x19e0: 0x0f61, 0x19e1: 0x0f71, 0x19e2: 0x00d9, 0x19e3: 0x0f99,
1802 0x19e4: 0x2039, 0x19e5: 0x0269, 0x19e6: 0x01d9, 0x19e7: 0x0fa9, 0x19e8: 0x0fb9, 0x19e9: 0x1089,
1803 0x19ea: 0x0279, 0x19eb: 0x0369, 0x19ec: 0x0289, 0x19ed: 0x13d1, 0x19ee: 0x0039, 0x19ef: 0x0ee9,
1804 0x19f0: 0x1159, 0x19f1: 0x0ef9, 0x19f2: 0x0f09, 0x19f3: 0x1199, 0x19f4: 0x0f31, 0x19f5: 0x0249,
1805 0x19f6: 0x0f41, 0x19f7: 0x0259, 0x19f8: 0x0f51, 0x19f9: 0x0359, 0x19fa: 0x0f61, 0x19fb: 0x0f71,
1806 0x19fc: 0x00d9, 0x19fd: 0x0f99, 0x19fe: 0x2039, 0x19ff: 0x0269,
1807 // Block 0x68, offset 0x1a00
1808 0x1a00: 0x01d9, 0x1a01: 0x0fa9, 0x1a02: 0x0fb9, 0x1a03: 0x1089, 0x1a04: 0x0279, 0x1a05: 0x0369,
1809 0x1a06: 0x0289, 0x1a07: 0x13d1, 0x1a08: 0x0039, 0x1a09: 0x0ee9, 0x1a0a: 0x1159, 0x1a0b: 0x0ef9,
1810 0x1a0c: 0x0f09, 0x1a0d: 0x1199, 0x1a0e: 0x0f31, 0x1a0f: 0x0249, 0x1a10: 0x0f41, 0x1a11: 0x0259,
1811 0x1a12: 0x0f51, 0x1a13: 0x0359, 0x1a14: 0x0f61, 0x1a15: 0x0f71, 0x1a16: 0x00d9, 0x1a17: 0x0f99,
1812 0x1a18: 0x2039, 0x1a19: 0x0269, 0x1a1a: 0x01d9, 0x1a1b: 0x0fa9, 0x1a1c: 0x0fb9, 0x1a1d: 0x1089,
1813 0x1a1e: 0x0279, 0x1a1f: 0x0369, 0x1a20: 0x0289, 0x1a21: 0x13d1, 0x1a22: 0x0039, 0x1a23: 0x0ee9,
1814 0x1a24: 0x1159, 0x1a25: 0x0ef9, 0x1a26: 0x0f09, 0x1a27: 0x1199, 0x1a28: 0x0f31, 0x1a29: 0x0249,
1815 0x1a2a: 0x0f41, 0x1a2b: 0x0259, 0x1a2c: 0x0f51, 0x1a2d: 0x0359, 0x1a2e: 0x0f61, 0x1a2f: 0x0f71,
1816 0x1a30: 0x00d9, 0x1a31: 0x0f99, 0x1a32: 0x2039, 0x1a33: 0x0269, 0x1a34: 0x01d9, 0x1a35: 0x0fa9,
1817 0x1a36: 0x0fb9, 0x1a37: 0x1089, 0x1a38: 0x0279, 0x1a39: 0x0369, 0x1a3a: 0x0289, 0x1a3b: 0x13d1,
1818 0x1a3c: 0x0039, 0x1a3d: 0x0ee9, 0x1a3e: 0x1159, 0x1a3f: 0x0ef9,
1819 // Block 0x69, offset 0x1a40
1820 0x1a40: 0x0f09, 0x1a41: 0x1199, 0x1a42: 0x0f31, 0x1a43: 0x0249, 0x1a44: 0x0f41, 0x1a45: 0x0259,
1821 0x1a46: 0x0f51, 0x1a47: 0x0359, 0x1a48: 0x0f61, 0x1a49: 0x0f71, 0x1a4a: 0x00d9, 0x1a4b: 0x0f99,
1822 0x1a4c: 0x2039, 0x1a4d: 0x0269, 0x1a4e: 0x01d9, 0x1a4f: 0x0fa9, 0x1a50: 0x0fb9, 0x1a51: 0x1089,
1823 0x1a52: 0x0279, 0x1a53: 0x0369, 0x1a54: 0x0289, 0x1a55: 0x13d1, 0x1a56: 0x0039, 0x1a57: 0x0ee9,
1824 0x1a58: 0x1159, 0x1a59: 0x0ef9, 0x1a5a: 0x0f09, 0x1a5b: 0x1199, 0x1a5c: 0x0f31, 0x1a5d: 0x0249,
1825 0x1a5e: 0x0f41, 0x1a5f: 0x0259, 0x1a60: 0x0f51, 0x1a61: 0x0359, 0x1a62: 0x0f61, 0x1a63: 0x0f71,
1826 0x1a64: 0x00d9, 0x1a65: 0x0f99, 0x1a66: 0x2039, 0x1a67: 0x0269, 0x1a68: 0x01d9, 0x1a69: 0x0fa9,
1827 0x1a6a: 0x0fb9, 0x1a6b: 0x1089, 0x1a6c: 0x0279, 0x1a6d: 0x0369, 0x1a6e: 0x0289, 0x1a6f: 0x13d1,
1828 0x1a70: 0x0039, 0x1a71: 0x0ee9, 0x1a72: 0x1159, 0x1a73: 0x0ef9, 0x1a74: 0x0f09, 0x1a75: 0x1199,
1829 0x1a76: 0x0f31, 0x1a77: 0x0249, 0x1a78: 0x0f41, 0x1a79: 0x0259, 0x1a7a: 0x0f51, 0x1a7b: 0x0359,
1830 0x1a7c: 0x0f61, 0x1a7d: 0x0f71, 0x1a7e: 0x00d9, 0x1a7f: 0x0f99,
1831 // Block 0x6a, offset 0x1a80
1832 0x1a80: 0x2039, 0x1a81: 0x0269, 0x1a82: 0x01d9, 0x1a83: 0x0fa9, 0x1a84: 0x0fb9, 0x1a85: 0x1089,
1833 0x1a86: 0x0279, 0x1a87: 0x0369, 0x1a88: 0x0289, 0x1a89: 0x13d1, 0x1a8a: 0x0039, 0x1a8b: 0x0ee9,
1834 0x1a8c: 0x1159, 0x1a8d: 0x0ef9, 0x1a8e: 0x0f09, 0x1a8f: 0x1199, 0x1a90: 0x0f31, 0x1a91: 0x0249,
1835 0x1a92: 0x0f41, 0x1a93: 0x0259, 0x1a94: 0x0f51, 0x1a95: 0x0359, 0x1a96: 0x0f61, 0x1a97: 0x0f71,
1836 0x1a98: 0x00d9, 0x1a99: 0x0f99, 0x1a9a: 0x2039, 0x1a9b: 0x0269, 0x1a9c: 0x01d9, 0x1a9d: 0x0fa9,
1837 0x1a9e: 0x0fb9, 0x1a9f: 0x1089, 0x1aa0: 0x0279, 0x1aa1: 0x0369, 0x1aa2: 0x0289, 0x1aa3: 0x13d1,
1838 0x1aa4: 0xba81, 0x1aa5: 0xba99, 0x1aa6: 0x0040, 0x1aa7: 0x0040, 0x1aa8: 0xbab1, 0x1aa9: 0x1099,
1839 0x1aaa: 0x10b1, 0x1aab: 0x10c9, 0x1aac: 0xbac9, 0x1aad: 0xbae1, 0x1aae: 0xbaf9, 0x1aaf: 0x1429,
1840 0x1ab0: 0x1a31, 0x1ab1: 0xbb11, 0x1ab2: 0xbb29, 0x1ab3: 0xbb41, 0x1ab4: 0xbb59, 0x1ab5: 0xbb71,
1841 0x1ab6: 0xbb89, 0x1ab7: 0x2109, 0x1ab8: 0x1111, 0x1ab9: 0x1429, 0x1aba: 0xbba1, 0x1abb: 0xbbb9,
1842 0x1abc: 0xbbd1, 0x1abd: 0x10e1, 0x1abe: 0x10f9, 0x1abf: 0xbbe9,
1843 // Block 0x6b, offset 0x1ac0
1844 0x1ac0: 0x2079, 0x1ac1: 0xbc01, 0x1ac2: 0xbab1, 0x1ac3: 0x1099, 0x1ac4: 0x10b1, 0x1ac5: 0x10c9,
1845 0x1ac6: 0xbac9, 0x1ac7: 0xbae1, 0x1ac8: 0xbaf9, 0x1ac9: 0x1429, 0x1aca: 0x1a31, 0x1acb: 0xbb11,
1846 0x1acc: 0xbb29, 0x1acd: 0xbb41, 0x1ace: 0xbb59, 0x1acf: 0xbb71, 0x1ad0: 0xbb89, 0x1ad1: 0x2109,
1847 0x1ad2: 0x1111, 0x1ad3: 0xbba1, 0x1ad4: 0xbba1, 0x1ad5: 0xbbb9, 0x1ad6: 0xbbd1, 0x1ad7: 0x10e1,
1848 0x1ad8: 0x10f9, 0x1ad9: 0xbbe9, 0x1ada: 0x2079, 0x1adb: 0xbc21, 0x1adc: 0xbac9, 0x1add: 0x1429,
1849 0x1ade: 0xbb11, 0x1adf: 0x10e1, 0x1ae0: 0x1111, 0x1ae1: 0x2109, 0x1ae2: 0xbab1, 0x1ae3: 0x1099,
1850 0x1ae4: 0x10b1, 0x1ae5: 0x10c9, 0x1ae6: 0xbac9, 0x1ae7: 0xbae1, 0x1ae8: 0xbaf9, 0x1ae9: 0x1429,
1851 0x1aea: 0x1a31, 0x1aeb: 0xbb11, 0x1aec: 0xbb29, 0x1aed: 0xbb41, 0x1aee: 0xbb59, 0x1aef: 0xbb71,
1852 0x1af0: 0xbb89, 0x1af1: 0x2109, 0x1af2: 0x1111, 0x1af3: 0x1429, 0x1af4: 0xbba1, 0x1af5: 0xbbb9,
1853 0x1af6: 0xbbd1, 0x1af7: 0x10e1, 0x1af8: 0x10f9, 0x1af9: 0xbbe9, 0x1afa: 0x2079, 0x1afb: 0xbc01,
1854 0x1afc: 0xbab1, 0x1afd: 0x1099, 0x1afe: 0x10b1, 0x1aff: 0x10c9,
1855 // Block 0x6c, offset 0x1b00
1856 0x1b00: 0xbac9, 0x1b01: 0xbae1, 0x1b02: 0xbaf9, 0x1b03: 0x1429, 0x1b04: 0x1a31, 0x1b05: 0xbb11,
1857 0x1b06: 0xbb29, 0x1b07: 0xbb41, 0x1b08: 0xbb59, 0x1b09: 0xbb71, 0x1b0a: 0xbb89, 0x1b0b: 0x2109,
1858 0x1b0c: 0x1111, 0x1b0d: 0xbba1, 0x1b0e: 0xbba1, 0x1b0f: 0xbbb9, 0x1b10: 0xbbd1, 0x1b11: 0x10e1,
1859 0x1b12: 0x10f9, 0x1b13: 0xbbe9, 0x1b14: 0x2079, 0x1b15: 0xbc21, 0x1b16: 0xbac9, 0x1b17: 0x1429,
1860 0x1b18: 0xbb11, 0x1b19: 0x10e1, 0x1b1a: 0x1111, 0x1b1b: 0x2109, 0x1b1c: 0xbab1, 0x1b1d: 0x1099,
1861 0x1b1e: 0x10b1, 0x1b1f: 0x10c9, 0x1b20: 0xbac9, 0x1b21: 0xbae1, 0x1b22: 0xbaf9, 0x1b23: 0x1429,
1862 0x1b24: 0x1a31, 0x1b25: 0xbb11, 0x1b26: 0xbb29, 0x1b27: 0xbb41, 0x1b28: 0xbb59, 0x1b29: 0xbb71,
1863 0x1b2a: 0xbb89, 0x1b2b: 0x2109, 0x1b2c: 0x1111, 0x1b2d: 0x1429, 0x1b2e: 0xbba1, 0x1b2f: 0xbbb9,
1864 0x1b30: 0xbbd1, 0x1b31: 0x10e1, 0x1b32: 0x10f9, 0x1b33: 0xbbe9, 0x1b34: 0x2079, 0x1b35: 0xbc01,
1865 0x1b36: 0xbab1, 0x1b37: 0x1099, 0x1b38: 0x10b1, 0x1b39: 0x10c9, 0x1b3a: 0xbac9, 0x1b3b: 0xbae1,
1866 0x1b3c: 0xbaf9, 0x1b3d: 0x1429, 0x1b3e: 0x1a31, 0x1b3f: 0xbb11,
1867 // Block 0x6d, offset 0x1b40
1868 0x1b40: 0xbb29, 0x1b41: 0xbb41, 0x1b42: 0xbb59, 0x1b43: 0xbb71, 0x1b44: 0xbb89, 0x1b45: 0x2109,
1869 0x1b46: 0x1111, 0x1b47: 0xbba1, 0x1b48: 0xbba1, 0x1b49: 0xbbb9, 0x1b4a: 0xbbd1, 0x1b4b: 0x10e1,
1870 0x1b4c: 0x10f9, 0x1b4d: 0xbbe9, 0x1b4e: 0x2079, 0x1b4f: 0xbc21, 0x1b50: 0xbac9, 0x1b51: 0x1429,
1871 0x1b52: 0xbb11, 0x1b53: 0x10e1, 0x1b54: 0x1111, 0x1b55: 0x2109, 0x1b56: 0xbab1, 0x1b57: 0x1099,
1872 0x1b58: 0x10b1, 0x1b59: 0x10c9, 0x1b5a: 0xbac9, 0x1b5b: 0xbae1, 0x1b5c: 0xbaf9, 0x1b5d: 0x1429,
1873 0x1b5e: 0x1a31, 0x1b5f: 0xbb11, 0x1b60: 0xbb29, 0x1b61: 0xbb41, 0x1b62: 0xbb59, 0x1b63: 0xbb71,
1874 0x1b64: 0xbb89, 0x1b65: 0x2109, 0x1b66: 0x1111, 0x1b67: 0x1429, 0x1b68: 0xbba1, 0x1b69: 0xbbb9,
1875 0x1b6a: 0xbbd1, 0x1b6b: 0x10e1, 0x1b6c: 0x10f9, 0x1b6d: 0xbbe9, 0x1b6e: 0x2079, 0x1b6f: 0xbc01,
1876 0x1b70: 0xbab1, 0x1b71: 0x1099, 0x1b72: 0x10b1, 0x1b73: 0x10c9, 0x1b74: 0xbac9, 0x1b75: 0xbae1,
1877 0x1b76: 0xbaf9, 0x1b77: 0x1429, 0x1b78: 0x1a31, 0x1b79: 0xbb11, 0x1b7a: 0xbb29, 0x1b7b: 0xbb41,
1878 0x1b7c: 0xbb59, 0x1b7d: 0xbb71, 0x1b7e: 0xbb89, 0x1b7f: 0x2109,
1879 // Block 0x6e, offset 0x1b80
1880 0x1b80: 0x1111, 0x1b81: 0xbba1, 0x1b82: 0xbba1, 0x1b83: 0xbbb9, 0x1b84: 0xbbd1, 0x1b85: 0x10e1,
1881 0x1b86: 0x10f9, 0x1b87: 0xbbe9, 0x1b88: 0x2079, 0x1b89: 0xbc21, 0x1b8a: 0xbac9, 0x1b8b: 0x1429,
1882 0x1b8c: 0xbb11, 0x1b8d: 0x10e1, 0x1b8e: 0x1111, 0x1b8f: 0x2109, 0x1b90: 0xbab1, 0x1b91: 0x1099,
1883 0x1b92: 0x10b1, 0x1b93: 0x10c9, 0x1b94: 0xbac9, 0x1b95: 0xbae1, 0x1b96: 0xbaf9, 0x1b97: 0x1429,
1884 0x1b98: 0x1a31, 0x1b99: 0xbb11, 0x1b9a: 0xbb29, 0x1b9b: 0xbb41, 0x1b9c: 0xbb59, 0x1b9d: 0xbb71,
1885 0x1b9e: 0xbb89, 0x1b9f: 0x2109, 0x1ba0: 0x1111, 0x1ba1: 0x1429, 0x1ba2: 0xbba1, 0x1ba3: 0xbbb9,
1886 0x1ba4: 0xbbd1, 0x1ba5: 0x10e1, 0x1ba6: 0x10f9, 0x1ba7: 0xbbe9, 0x1ba8: 0x2079, 0x1ba9: 0xbc01,
1887 0x1baa: 0xbab1, 0x1bab: 0x1099, 0x1bac: 0x10b1, 0x1bad: 0x10c9, 0x1bae: 0xbac9, 0x1baf: 0xbae1,
1888 0x1bb0: 0xbaf9, 0x1bb1: 0x1429, 0x1bb2: 0x1a31, 0x1bb3: 0xbb11, 0x1bb4: 0xbb29, 0x1bb5: 0xbb41,
1889 0x1bb6: 0xbb59, 0x1bb7: 0xbb71, 0x1bb8: 0xbb89, 0x1bb9: 0x2109, 0x1bba: 0x1111, 0x1bbb: 0xbba1,
1890 0x1bbc: 0xbba1, 0x1bbd: 0xbbb9, 0x1bbe: 0xbbd1, 0x1bbf: 0x10e1,
1891 // Block 0x6f, offset 0x1bc0
1892 0x1bc0: 0x10f9, 0x1bc1: 0xbbe9, 0x1bc2: 0x2079, 0x1bc3: 0xbc21, 0x1bc4: 0xbac9, 0x1bc5: 0x1429,
1893 0x1bc6: 0xbb11, 0x1bc7: 0x10e1, 0x1bc8: 0x1111, 0x1bc9: 0x2109, 0x1bca: 0xbc41, 0x1bcb: 0xbc41,
1894 0x1bcc: 0x0040, 0x1bcd: 0x0040, 0x1bce: 0x1f41, 0x1bcf: 0x00c9, 0x1bd0: 0x0069, 0x1bd1: 0x0079,
1895 0x1bd2: 0x1f51, 0x1bd3: 0x1f61, 0x1bd4: 0x1f71, 0x1bd5: 0x1f81, 0x1bd6: 0x1f91, 0x1bd7: 0x1fa1,
1896 0x1bd8: 0x1f41, 0x1bd9: 0x00c9, 0x1bda: 0x0069, 0x1bdb: 0x0079, 0x1bdc: 0x1f51, 0x1bdd: 0x1f61,
1897 0x1bde: 0x1f71, 0x1bdf: 0x1f81, 0x1be0: 0x1f91, 0x1be1: 0x1fa1, 0x1be2: 0x1f41, 0x1be3: 0x00c9,
1898 0x1be4: 0x0069, 0x1be5: 0x0079, 0x1be6: 0x1f51, 0x1be7: 0x1f61, 0x1be8: 0x1f71, 0x1be9: 0x1f81,
1899 0x1bea: 0x1f91, 0x1beb: 0x1fa1, 0x1bec: 0x1f41, 0x1bed: 0x00c9, 0x1bee: 0x0069, 0x1bef: 0x0079,
1900 0x1bf0: 0x1f51, 0x1bf1: 0x1f61, 0x1bf2: 0x1f71, 0x1bf3: 0x1f81, 0x1bf4: 0x1f91, 0x1bf5: 0x1fa1,
1901 0x1bf6: 0x1f41, 0x1bf7: 0x00c9, 0x1bf8: 0x0069, 0x1bf9: 0x0079, 0x1bfa: 0x1f51, 0x1bfb: 0x1f61,
1902 0x1bfc: 0x1f71, 0x1bfd: 0x1f81, 0x1bfe: 0x1f91, 0x1bff: 0x1fa1,
1903 // Block 0x70, offset 0x1c00
1904 0x1c00: 0xe115, 0x1c01: 0xe115, 0x1c02: 0xe135, 0x1c03: 0xe135, 0x1c04: 0xe115, 0x1c05: 0xe115,
1905 0x1c06: 0xe175, 0x1c07: 0xe175, 0x1c08: 0xe115, 0x1c09: 0xe115, 0x1c0a: 0xe135, 0x1c0b: 0xe135,
1906 0x1c0c: 0xe115, 0x1c0d: 0xe115, 0x1c0e: 0xe1f5, 0x1c0f: 0xe1f5, 0x1c10: 0xe115, 0x1c11: 0xe115,
1907 0x1c12: 0xe135, 0x1c13: 0xe135, 0x1c14: 0xe115, 0x1c15: 0xe115, 0x1c16: 0xe175, 0x1c17: 0xe175,
1908 0x1c18: 0xe115, 0x1c19: 0xe115, 0x1c1a: 0xe135, 0x1c1b: 0xe135, 0x1c1c: 0xe115, 0x1c1d: 0xe115,
1909 0x1c1e: 0x8b05, 0x1c1f: 0x8b05, 0x1c20: 0x04b5, 0x1c21: 0x04b5, 0x1c22: 0x0a08, 0x1c23: 0x0a08,
1910 0x1c24: 0x0a08, 0x1c25: 0x0a08, 0x1c26: 0x0a08, 0x1c27: 0x0a08, 0x1c28: 0x0a08, 0x1c29: 0x0a08,
1911 0x1c2a: 0x0a08, 0x1c2b: 0x0a08, 0x1c2c: 0x0a08, 0x1c2d: 0x0a08, 0x1c2e: 0x0a08, 0x1c2f: 0x0a08,
1912 0x1c30: 0x0a08, 0x1c31: 0x0a08, 0x1c32: 0x0a08, 0x1c33: 0x0a08, 0x1c34: 0x0a08, 0x1c35: 0x0a08,
1913 0x1c36: 0x0a08, 0x1c37: 0x0a08, 0x1c38: 0x0a08, 0x1c39: 0x0a08, 0x1c3a: 0x0a08, 0x1c3b: 0x0a08,
1914 0x1c3c: 0x0a08, 0x1c3d: 0x0a08, 0x1c3e: 0x0a08, 0x1c3f: 0x0a08,
1915 // Block 0x71, offset 0x1c40
1916 0x1c40: 0xb189, 0x1c41: 0xb1a1, 0x1c42: 0xb201, 0x1c43: 0xb249, 0x1c44: 0x0040, 0x1c45: 0xb411,
1917 0x1c46: 0xb291, 0x1c47: 0xb219, 0x1c48: 0xb309, 0x1c49: 0xb429, 0x1c4a: 0xb399, 0x1c4b: 0xb3b1,
1918 0x1c4c: 0xb3c9, 0x1c4d: 0xb3e1, 0x1c4e: 0xb2a9, 0x1c4f: 0xb339, 0x1c50: 0xb369, 0x1c51: 0xb2d9,
1919 0x1c52: 0xb381, 0x1c53: 0xb279, 0x1c54: 0xb2c1, 0x1c55: 0xb1d1, 0x1c56: 0xb1e9, 0x1c57: 0xb231,
1920 0x1c58: 0xb261, 0x1c59: 0xb2f1, 0x1c5a: 0xb321, 0x1c5b: 0xb351, 0x1c5c: 0xbc59, 0x1c5d: 0x7949,
1921 0x1c5e: 0xbc71, 0x1c5f: 0xbc89, 0x1c60: 0x0040, 0x1c61: 0xb1a1, 0x1c62: 0xb201, 0x1c63: 0x0040,
1922 0x1c64: 0xb3f9, 0x1c65: 0x0040, 0x1c66: 0x0040, 0x1c67: 0xb219, 0x1c68: 0x0040, 0x1c69: 0xb429,
1923 0x1c6a: 0xb399, 0x1c6b: 0xb3b1, 0x1c6c: 0xb3c9, 0x1c6d: 0xb3e1, 0x1c6e: 0xb2a9, 0x1c6f: 0xb339,
1924 0x1c70: 0xb369, 0x1c71: 0xb2d9, 0x1c72: 0xb381, 0x1c73: 0x0040, 0x1c74: 0xb2c1, 0x1c75: 0xb1d1,
1925 0x1c76: 0xb1e9, 0x1c77: 0xb231, 0x1c78: 0x0040, 0x1c79: 0xb2f1, 0x1c7a: 0x0040, 0x1c7b: 0xb351,
1926 0x1c7c: 0x0040, 0x1c7d: 0x0040, 0x1c7e: 0x0040, 0x1c7f: 0x0040,
1927 // Block 0x72, offset 0x1c80
1928 0x1c80: 0x0040, 0x1c81: 0x0040, 0x1c82: 0xb201, 0x1c83: 0x0040, 0x1c84: 0x0040, 0x1c85: 0x0040,
1929 0x1c86: 0x0040, 0x1c87: 0xb219, 0x1c88: 0x0040, 0x1c89: 0xb429, 0x1c8a: 0x0040, 0x1c8b: 0xb3b1,
1930 0x1c8c: 0x0040, 0x1c8d: 0xb3e1, 0x1c8e: 0xb2a9, 0x1c8f: 0xb339, 0x1c90: 0x0040, 0x1c91: 0xb2d9,
1931 0x1c92: 0xb381, 0x1c93: 0x0040, 0x1c94: 0xb2c1, 0x1c95: 0x0040, 0x1c96: 0x0040, 0x1c97: 0xb231,
1932 0x1c98: 0x0040, 0x1c99: 0xb2f1, 0x1c9a: 0x0040, 0x1c9b: 0xb351, 0x1c9c: 0x0040, 0x1c9d: 0x7949,
1933 0x1c9e: 0x0040, 0x1c9f: 0xbc89, 0x1ca0: 0x0040, 0x1ca1: 0xb1a1, 0x1ca2: 0xb201, 0x1ca3: 0x0040,
1934 0x1ca4: 0xb3f9, 0x1ca5: 0x0040, 0x1ca6: 0x0040, 0x1ca7: 0xb219, 0x1ca8: 0xb309, 0x1ca9: 0xb429,
1935 0x1caa: 0xb399, 0x1cab: 0x0040, 0x1cac: 0xb3c9, 0x1cad: 0xb3e1, 0x1cae: 0xb2a9, 0x1caf: 0xb339,
1936 0x1cb0: 0xb369, 0x1cb1: 0xb2d9, 0x1cb2: 0xb381, 0x1cb3: 0x0040, 0x1cb4: 0xb2c1, 0x1cb5: 0xb1d1,
1937 0x1cb6: 0xb1e9, 0x1cb7: 0xb231, 0x1cb8: 0x0040, 0x1cb9: 0xb2f1, 0x1cba: 0xb321, 0x1cbb: 0xb351,
1938 0x1cbc: 0xbc59, 0x1cbd: 0x0040, 0x1cbe: 0xbc71, 0x1cbf: 0x0040,
1939 // Block 0x73, offset 0x1cc0
1940 0x1cc0: 0xb189, 0x1cc1: 0xb1a1, 0x1cc2: 0xb201, 0x1cc3: 0xb249, 0x1cc4: 0xb3f9, 0x1cc5: 0xb411,
1941 0x1cc6: 0xb291, 0x1cc7: 0xb219, 0x1cc8: 0xb309, 0x1cc9: 0xb429, 0x1cca: 0x0040, 0x1ccb: 0xb3b1,
1942 0x1ccc: 0xb3c9, 0x1ccd: 0xb3e1, 0x1cce: 0xb2a9, 0x1ccf: 0xb339, 0x1cd0: 0xb369, 0x1cd1: 0xb2d9,
1943 0x1cd2: 0xb381, 0x1cd3: 0xb279, 0x1cd4: 0xb2c1, 0x1cd5: 0xb1d1, 0x1cd6: 0xb1e9, 0x1cd7: 0xb231,
1944 0x1cd8: 0xb261, 0x1cd9: 0xb2f1, 0x1cda: 0xb321, 0x1cdb: 0xb351, 0x1cdc: 0x0040, 0x1cdd: 0x0040,
1945 0x1cde: 0x0040, 0x1cdf: 0x0040, 0x1ce0: 0x0040, 0x1ce1: 0xb1a1, 0x1ce2: 0xb201, 0x1ce3: 0xb249,
1946 0x1ce4: 0x0040, 0x1ce5: 0xb411, 0x1ce6: 0xb291, 0x1ce7: 0xb219, 0x1ce8: 0xb309, 0x1ce9: 0xb429,
1947 0x1cea: 0x0040, 0x1ceb: 0xb3b1, 0x1cec: 0xb3c9, 0x1ced: 0xb3e1, 0x1cee: 0xb2a9, 0x1cef: 0xb339,
1948 0x1cf0: 0xb369, 0x1cf1: 0xb2d9, 0x1cf2: 0xb381, 0x1cf3: 0xb279, 0x1cf4: 0xb2c1, 0x1cf5: 0xb1d1,
1949 0x1cf6: 0xb1e9, 0x1cf7: 0xb231, 0x1cf8: 0xb261, 0x1cf9: 0xb2f1, 0x1cfa: 0xb321, 0x1cfb: 0xb351,
1950 0x1cfc: 0x0040, 0x1cfd: 0x0040, 0x1cfe: 0x0040, 0x1cff: 0x0040,
1951 // Block 0x74, offset 0x1d00
1952 0x1d00: 0x0040, 0x1d01: 0xbca2, 0x1d02: 0xbcba, 0x1d03: 0xbcd2, 0x1d04: 0xbcea, 0x1d05: 0xbd02,
1953 0x1d06: 0xbd1a, 0x1d07: 0xbd32, 0x1d08: 0xbd4a, 0x1d09: 0xbd62, 0x1d0a: 0xbd7a, 0x1d0b: 0x0018,
1954 0x1d0c: 0x0018, 0x1d0d: 0x0040, 0x1d0e: 0x0040, 0x1d0f: 0x0040, 0x1d10: 0xbd92, 0x1d11: 0xbdb2,
1955 0x1d12: 0xbdd2, 0x1d13: 0xbdf2, 0x1d14: 0xbe12, 0x1d15: 0xbe32, 0x1d16: 0xbe52, 0x1d17: 0xbe72,
1956 0x1d18: 0xbe92, 0x1d19: 0xbeb2, 0x1d1a: 0xbed2, 0x1d1b: 0xbef2, 0x1d1c: 0xbf12, 0x1d1d: 0xbf32,
1957 0x1d1e: 0xbf52, 0x1d1f: 0xbf72, 0x1d20: 0xbf92, 0x1d21: 0xbfb2, 0x1d22: 0xbfd2, 0x1d23: 0xbff2,
1958 0x1d24: 0xc012, 0x1d25: 0xc032, 0x1d26: 0xc052, 0x1d27: 0xc072, 0x1d28: 0xc092, 0x1d29: 0xc0b2,
1959 0x1d2a: 0xc0d1, 0x1d2b: 0x1159, 0x1d2c: 0x0269, 0x1d2d: 0x6671, 0x1d2e: 0xc111, 0x1d2f: 0x0040,
1960 0x1d30: 0x0039, 0x1d31: 0x0ee9, 0x1d32: 0x1159, 0x1d33: 0x0ef9, 0x1d34: 0x0f09, 0x1d35: 0x1199,
1961 0x1d36: 0x0f31, 0x1d37: 0x0249, 0x1d38: 0x0f41, 0x1d39: 0x0259, 0x1d3a: 0x0f51, 0x1d3b: 0x0359,
1962 0x1d3c: 0x0f61, 0x1d3d: 0x0f71, 0x1d3e: 0x00d9, 0x1d3f: 0x0f99,
1963 // Block 0x75, offset 0x1d40
1964 0x1d40: 0x2039, 0x1d41: 0x0269, 0x1d42: 0x01d9, 0x1d43: 0x0fa9, 0x1d44: 0x0fb9, 0x1d45: 0x1089,
1965 0x1d46: 0x0279, 0x1d47: 0x0369, 0x1d48: 0x0289, 0x1d49: 0x13d1, 0x1d4a: 0xc129, 0x1d4b: 0x65b1,
1966 0x1d4c: 0xc141, 0x1d4d: 0x1441, 0x1d4e: 0xc159, 0x1d4f: 0xc179, 0x1d50: 0x0018, 0x1d51: 0x0018,
1967 0x1d52: 0x0018, 0x1d53: 0x0018, 0x1d54: 0x0018, 0x1d55: 0x0018, 0x1d56: 0x0018, 0x1d57: 0x0018,
1968 0x1d58: 0x0018, 0x1d59: 0x0018, 0x1d5a: 0x0018, 0x1d5b: 0x0018, 0x1d5c: 0x0018, 0x1d5d: 0x0018,
1969 0x1d5e: 0x0018, 0x1d5f: 0x0018, 0x1d60: 0x0018, 0x1d61: 0x0018, 0x1d62: 0x0018, 0x1d63: 0x0018,
1970 0x1d64: 0x0018, 0x1d65: 0x0018, 0x1d66: 0x0018, 0x1d67: 0x0018, 0x1d68: 0x0018, 0x1d69: 0x0018,
1971 0x1d6a: 0xc191, 0x1d6b: 0xc1a9, 0x1d6c: 0x0040, 0x1d6d: 0x0040, 0x1d6e: 0x0040, 0x1d6f: 0x0040,
1972 0x1d70: 0x0018, 0x1d71: 0x0018, 0x1d72: 0x0018, 0x1d73: 0x0018, 0x1d74: 0x0018, 0x1d75: 0x0018,
1973 0x1d76: 0x0018, 0x1d77: 0x0018, 0x1d78: 0x0018, 0x1d79: 0x0018, 0x1d7a: 0x0018, 0x1d7b: 0x0018,
1974 0x1d7c: 0x0018, 0x1d7d: 0x0018, 0x1d7e: 0x0018, 0x1d7f: 0x0018,
1975 // Block 0x76, offset 0x1d80
1976 0x1d80: 0xc1d9, 0x1d81: 0xc211, 0x1d82: 0xc249, 0x1d83: 0x0040, 0x1d84: 0x0040, 0x1d85: 0x0040,
1977 0x1d86: 0x0040, 0x1d87: 0x0040, 0x1d88: 0x0040, 0x1d89: 0x0040, 0x1d8a: 0x0040, 0x1d8b: 0x0040,
1978 0x1d8c: 0x0040, 0x1d8d: 0x0040, 0x1d8e: 0x0040, 0x1d8f: 0x0040, 0x1d90: 0xc269, 0x1d91: 0xc289,
1979 0x1d92: 0xc2a9, 0x1d93: 0xc2c9, 0x1d94: 0xc2e9, 0x1d95: 0xc309, 0x1d96: 0xc329, 0x1d97: 0xc349,
1980 0x1d98: 0xc369, 0x1d99: 0xc389, 0x1d9a: 0xc3a9, 0x1d9b: 0xc3c9, 0x1d9c: 0xc3e9, 0x1d9d: 0xc409,
1981 0x1d9e: 0xc429, 0x1d9f: 0xc449, 0x1da0: 0xc469, 0x1da1: 0xc489, 0x1da2: 0xc4a9, 0x1da3: 0xc4c9,
1982 0x1da4: 0xc4e9, 0x1da5: 0xc509, 0x1da6: 0xc529, 0x1da7: 0xc549, 0x1da8: 0xc569, 0x1da9: 0xc589,
1983 0x1daa: 0xc5a9, 0x1dab: 0xc5c9, 0x1dac: 0xc5e9, 0x1dad: 0xc609, 0x1dae: 0xc629, 0x1daf: 0xc649,
1984 0x1db0: 0xc669, 0x1db1: 0xc689, 0x1db2: 0xc6a9, 0x1db3: 0xc6c9, 0x1db4: 0xc6e9, 0x1db5: 0xc709,
1985 0x1db6: 0xc729, 0x1db7: 0xc749, 0x1db8: 0xc769, 0x1db9: 0xc789, 0x1dba: 0xc7a9, 0x1dbb: 0xc7c9,
1986 0x1dbc: 0x0040, 0x1dbd: 0x0040, 0x1dbe: 0x0040, 0x1dbf: 0x0040,
1987 // Block 0x77, offset 0x1dc0
1988 0x1dc0: 0xcaf9, 0x1dc1: 0xcb19, 0x1dc2: 0xcb39, 0x1dc3: 0x8b1d, 0x1dc4: 0xcb59, 0x1dc5: 0xcb79,
1989 0x1dc6: 0xcb99, 0x1dc7: 0xcbb9, 0x1dc8: 0xcbd9, 0x1dc9: 0xcbf9, 0x1dca: 0xcc19, 0x1dcb: 0xcc39,
1990 0x1dcc: 0xcc59, 0x1dcd: 0x8b3d, 0x1dce: 0xcc79, 0x1dcf: 0xcc99, 0x1dd0: 0xccb9, 0x1dd1: 0xccd9,
1991 0x1dd2: 0x8b5d, 0x1dd3: 0xccf9, 0x1dd4: 0xcd19, 0x1dd5: 0xc429, 0x1dd6: 0x8b7d, 0x1dd7: 0xcd39,
1992 0x1dd8: 0xcd59, 0x1dd9: 0xcd79, 0x1dda: 0xcd99, 0x1ddb: 0xcdb9, 0x1ddc: 0x8b9d, 0x1ddd: 0xcdd9,
1993 0x1dde: 0xcdf9, 0x1ddf: 0xce19, 0x1de0: 0xce39, 0x1de1: 0xce59, 0x1de2: 0xc789, 0x1de3: 0xce79,
1994 0x1de4: 0xce99, 0x1de5: 0xceb9, 0x1de6: 0xced9, 0x1de7: 0xcef9, 0x1de8: 0xcf19, 0x1de9: 0xcf39,
1995 0x1dea: 0xcf59, 0x1deb: 0xcf79, 0x1dec: 0xcf99, 0x1ded: 0xcfb9, 0x1dee: 0xcfd9, 0x1def: 0xcff9,
1996 0x1df0: 0xd019, 0x1df1: 0xd039, 0x1df2: 0xd039, 0x1df3: 0xd039, 0x1df4: 0x8bbd, 0x1df5: 0xd059,
1997 0x1df6: 0xd079, 0x1df7: 0xd099, 0x1df8: 0x8bdd, 0x1df9: 0xd0b9, 0x1dfa: 0xd0d9, 0x1dfb: 0xd0f9,
1998 0x1dfc: 0xd119, 0x1dfd: 0xd139, 0x1dfe: 0xd159, 0x1dff: 0xd179,
1999 // Block 0x78, offset 0x1e00
2000 0x1e00: 0xd199, 0x1e01: 0xd1b9, 0x1e02: 0xd1d9, 0x1e03: 0xd1f9, 0x1e04: 0xd219, 0x1e05: 0xd239,
2001 0x1e06: 0xd239, 0x1e07: 0xd259, 0x1e08: 0xd279, 0x1e09: 0xd299, 0x1e0a: 0xd2b9, 0x1e0b: 0xd2d9,
2002 0x1e0c: 0xd2f9, 0x1e0d: 0xd319, 0x1e0e: 0xd339, 0x1e0f: 0xd359, 0x1e10: 0xd379, 0x1e11: 0xd399,
2003 0x1e12: 0xd3b9, 0x1e13: 0xd3d9, 0x1e14: 0xd3f9, 0x1e15: 0xd419, 0x1e16: 0xd439, 0x1e17: 0xd459,
2004 0x1e18: 0xd479, 0x1e19: 0x8bfd, 0x1e1a: 0xd499, 0x1e1b: 0xd4b9, 0x1e1c: 0xd4d9, 0x1e1d: 0xc309,
2005 0x1e1e: 0xd4f9, 0x1e1f: 0xd519, 0x1e20: 0x8c1d, 0x1e21: 0x8c3d, 0x1e22: 0xd539, 0x1e23: 0xd559,
2006 0x1e24: 0xd579, 0x1e25: 0xd599, 0x1e26: 0xd5b9, 0x1e27: 0xd5d9, 0x1e28: 0x2040, 0x1e29: 0xd5f9,
2007 0x1e2a: 0xd619, 0x1e2b: 0xd619, 0x1e2c: 0x8c5d, 0x1e2d: 0xd639, 0x1e2e: 0xd659, 0x1e2f: 0xd679,
2008 0x1e30: 0xd699, 0x1e31: 0x8c7d, 0x1e32: 0xd6b9, 0x1e33: 0xd6d9, 0x1e34: 0x2040, 0x1e35: 0xd6f9,
2009 0x1e36: 0xd719, 0x1e37: 0xd739, 0x1e38: 0xd759, 0x1e39: 0xd779, 0x1e3a: 0xd799, 0x1e3b: 0x8c9d,
2010 0x1e3c: 0xd7b9, 0x1e3d: 0x8cbd, 0x1e3e: 0xd7d9, 0x1e3f: 0xd7f9,
2011 // Block 0x79, offset 0x1e40
2012 0x1e40: 0xd819, 0x1e41: 0xd839, 0x1e42: 0xd859, 0x1e43: 0xd879, 0x1e44: 0xd899, 0x1e45: 0xd8b9,
2013 0x1e46: 0xd8d9, 0x1e47: 0xd8f9, 0x1e48: 0xd919, 0x1e49: 0x8cdd, 0x1e4a: 0xd939, 0x1e4b: 0xd959,
2014 0x1e4c: 0xd979, 0x1e4d: 0xd999, 0x1e4e: 0xd9b9, 0x1e4f: 0x8cfd, 0x1e50: 0xd9d9, 0x1e51: 0x8d1d,
2015 0x1e52: 0x8d3d, 0x1e53: 0xd9f9, 0x1e54: 0xda19, 0x1e55: 0xda19, 0x1e56: 0xda39, 0x1e57: 0x8d5d,
2016 0x1e58: 0x8d7d, 0x1e59: 0xda59, 0x1e5a: 0xda79, 0x1e5b: 0xda99, 0x1e5c: 0xdab9, 0x1e5d: 0xdad9,
2017 0x1e5e: 0xdaf9, 0x1e5f: 0xdb19, 0x1e60: 0xdb39, 0x1e61: 0xdb59, 0x1e62: 0xdb79, 0x1e63: 0xdb99,
2018 0x1e64: 0x8d9d, 0x1e65: 0xdbb9, 0x1e66: 0xdbd9, 0x1e67: 0xdbf9, 0x1e68: 0xdc19, 0x1e69: 0xdbf9,
2019 0x1e6a: 0xdc39, 0x1e6b: 0xdc59, 0x1e6c: 0xdc79, 0x1e6d: 0xdc99, 0x1e6e: 0xdcb9, 0x1e6f: 0xdcd9,
2020 0x1e70: 0xdcf9, 0x1e71: 0xdd19, 0x1e72: 0xdd39, 0x1e73: 0xdd59, 0x1e74: 0xdd79, 0x1e75: 0xdd99,
2021 0x1e76: 0xddb9, 0x1e77: 0xddd9, 0x1e78: 0x8dbd, 0x1e79: 0xddf9, 0x1e7a: 0xde19, 0x1e7b: 0xde39,
2022 0x1e7c: 0xde59, 0x1e7d: 0xde79, 0x1e7e: 0x8ddd, 0x1e7f: 0xde99,
2023 // Block 0x7a, offset 0x1e80
2024 0x1e80: 0xe599, 0x1e81: 0xe5b9, 0x1e82: 0xe5d9, 0x1e83: 0xe5f9, 0x1e84: 0xe619, 0x1e85: 0xe639,
2025 0x1e86: 0x8efd, 0x1e87: 0xe659, 0x1e88: 0xe679, 0x1e89: 0xe699, 0x1e8a: 0xe6b9, 0x1e8b: 0xe6d9,
2026 0x1e8c: 0xe6f9, 0x1e8d: 0x8f1d, 0x1e8e: 0xe719, 0x1e8f: 0xe739, 0x1e90: 0x8f3d, 0x1e91: 0x8f5d,
2027 0x1e92: 0xe759, 0x1e93: 0xe779, 0x1e94: 0xe799, 0x1e95: 0xe7b9, 0x1e96: 0xe7d9, 0x1e97: 0xe7f9,
2028 0x1e98: 0xe819, 0x1e99: 0xe839, 0x1e9a: 0xe859, 0x1e9b: 0x8f7d, 0x1e9c: 0xe879, 0x1e9d: 0x8f9d,
2029 0x1e9e: 0xe899, 0x1e9f: 0x2040, 0x1ea0: 0xe8b9, 0x1ea1: 0xe8d9, 0x1ea2: 0xe8f9, 0x1ea3: 0x8fbd,
2030 0x1ea4: 0xe919, 0x1ea5: 0xe939, 0x1ea6: 0x8fdd, 0x1ea7: 0x8ffd, 0x1ea8: 0xe959, 0x1ea9: 0xe979,
2031 0x1eaa: 0xe999, 0x1eab: 0xe9b9, 0x1eac: 0xe9d9, 0x1ead: 0xe9d9, 0x1eae: 0xe9f9, 0x1eaf: 0xea19,
2032 0x1eb0: 0xea39, 0x1eb1: 0xea59, 0x1eb2: 0xea79, 0x1eb3: 0xea99, 0x1eb4: 0xeab9, 0x1eb5: 0x901d,
2033 0x1eb6: 0xead9, 0x1eb7: 0x903d, 0x1eb8: 0xeaf9, 0x1eb9: 0x905d, 0x1eba: 0xeb19, 0x1ebb: 0x907d,
2034 0x1ebc: 0x909d, 0x1ebd: 0x90bd, 0x1ebe: 0xeb39, 0x1ebf: 0xeb59,
2035 // Block 0x7b, offset 0x1ec0
2036 0x1ec0: 0xeb79, 0x1ec1: 0x90dd, 0x1ec2: 0x90fd, 0x1ec3: 0x911d, 0x1ec4: 0x913d, 0x1ec5: 0xeb99,
2037 0x1ec6: 0xebb9, 0x1ec7: 0xebb9, 0x1ec8: 0xebd9, 0x1ec9: 0xebf9, 0x1eca: 0xec19, 0x1ecb: 0xec39,
2038 0x1ecc: 0xec59, 0x1ecd: 0x915d, 0x1ece: 0xec79, 0x1ecf: 0xec99, 0x1ed0: 0xecb9, 0x1ed1: 0xecd9,
2039 0x1ed2: 0x917d, 0x1ed3: 0xecf9, 0x1ed4: 0x919d, 0x1ed5: 0x91bd, 0x1ed6: 0xed19, 0x1ed7: 0xed39,
2040 0x1ed8: 0xed59, 0x1ed9: 0xed79, 0x1eda: 0xed99, 0x1edb: 0xedb9, 0x1edc: 0x91dd, 0x1edd: 0x91fd,
2041 0x1ede: 0x921d, 0x1edf: 0x2040, 0x1ee0: 0xedd9, 0x1ee1: 0x923d, 0x1ee2: 0xedf9, 0x1ee3: 0xee19,
2042 0x1ee4: 0xee39, 0x1ee5: 0x925d, 0x1ee6: 0xee59, 0x1ee7: 0xee79, 0x1ee8: 0xee99, 0x1ee9: 0xeeb9,
2043 0x1eea: 0xeed9, 0x1eeb: 0x927d, 0x1eec: 0xeef9, 0x1eed: 0xef19, 0x1eee: 0xef39, 0x1eef: 0xef59,
2044 0x1ef0: 0xef79, 0x1ef1: 0xef99, 0x1ef2: 0x929d, 0x1ef3: 0x92bd, 0x1ef4: 0xefb9, 0x1ef5: 0x92dd,
2045 0x1ef6: 0xefd9, 0x1ef7: 0x92fd, 0x1ef8: 0xeff9, 0x1ef9: 0xf019, 0x1efa: 0xf039, 0x1efb: 0x931d,
2046 0x1efc: 0x933d, 0x1efd: 0xf059, 0x1efe: 0x935d, 0x1eff: 0xf079,
2047 // Block 0x7c, offset 0x1f00
2048 0x1f00: 0xf6b9, 0x1f01: 0xf6d9, 0x1f02: 0xf6f9, 0x1f03: 0xf719, 0x1f04: 0xf739, 0x1f05: 0x951d,
2049 0x1f06: 0xf759, 0x1f07: 0xf779, 0x1f08: 0xf799, 0x1f09: 0xf7b9, 0x1f0a: 0xf7d9, 0x1f0b: 0x953d,
2050 0x1f0c: 0x955d, 0x1f0d: 0xf7f9, 0x1f0e: 0xf819, 0x1f0f: 0xf839, 0x1f10: 0xf859, 0x1f11: 0xf879,
2051 0x1f12: 0xf899, 0x1f13: 0x957d, 0x1f14: 0xf8b9, 0x1f15: 0xf8d9, 0x1f16: 0xf8f9, 0x1f17: 0xf919,
2052 0x1f18: 0x959d, 0x1f19: 0x95bd, 0x1f1a: 0xf939, 0x1f1b: 0xf959, 0x1f1c: 0xf979, 0x1f1d: 0x95dd,
2053 0x1f1e: 0xf999, 0x1f1f: 0xf9b9, 0x1f20: 0x6815, 0x1f21: 0x95fd, 0x1f22: 0xf9d9, 0x1f23: 0xf9f9,
2054 0x1f24: 0xfa19, 0x1f25: 0x961d, 0x1f26: 0xfa39, 0x1f27: 0xfa59, 0x1f28: 0xfa79, 0x1f29: 0xfa99,
2055 0x1f2a: 0xfab9, 0x1f2b: 0xfad9, 0x1f2c: 0xfaf9, 0x1f2d: 0x963d, 0x1f2e: 0xfb19, 0x1f2f: 0xfb39,
2056 0x1f30: 0xfb59, 0x1f31: 0x965d, 0x1f32: 0xfb79, 0x1f33: 0xfb99, 0x1f34: 0xfbb9, 0x1f35: 0xfbd9,
2057 0x1f36: 0x7b35, 0x1f37: 0x967d, 0x1f38: 0xfbf9, 0x1f39: 0xfc19, 0x1f3a: 0xfc39, 0x1f3b: 0x969d,
2058 0x1f3c: 0xfc59, 0x1f3d: 0x96bd, 0x1f3e: 0xfc79, 0x1f3f: 0xfc79,
2059 // Block 0x7d, offset 0x1f40
2060 0x1f40: 0xfc99, 0x1f41: 0x96dd, 0x1f42: 0xfcb9, 0x1f43: 0xfcd9, 0x1f44: 0xfcf9, 0x1f45: 0xfd19,
2061 0x1f46: 0xfd39, 0x1f47: 0xfd59, 0x1f48: 0xfd79, 0x1f49: 0x96fd, 0x1f4a: 0xfd99, 0x1f4b: 0xfdb9,
2062 0x1f4c: 0xfdd9, 0x1f4d: 0xfdf9, 0x1f4e: 0xfe19, 0x1f4f: 0xfe39, 0x1f50: 0x971d, 0x1f51: 0xfe59,
2063 0x1f52: 0x973d, 0x1f53: 0x975d, 0x1f54: 0x977d, 0x1f55: 0xfe79, 0x1f56: 0xfe99, 0x1f57: 0xfeb9,
2064 0x1f58: 0xfed9, 0x1f59: 0xfef9, 0x1f5a: 0xff19, 0x1f5b: 0xff39, 0x1f5c: 0xff59, 0x1f5d: 0x979d,
2065 0x1f5e: 0x0040, 0x1f5f: 0x0040, 0x1f60: 0x0040, 0x1f61: 0x0040, 0x1f62: 0x0040, 0x1f63: 0x0040,
2066 0x1f64: 0x0040, 0x1f65: 0x0040, 0x1f66: 0x0040, 0x1f67: 0x0040, 0x1f68: 0x0040, 0x1f69: 0x0040,
2067 0x1f6a: 0x0040, 0x1f6b: 0x0040, 0x1f6c: 0x0040, 0x1f6d: 0x0040, 0x1f6e: 0x0040, 0x1f6f: 0x0040,
2068 0x1f70: 0x0040, 0x1f71: 0x0040, 0x1f72: 0x0040, 0x1f73: 0x0040, 0x1f74: 0x0040, 0x1f75: 0x0040,
2069 0x1f76: 0x0040, 0x1f77: 0x0040, 0x1f78: 0x0040, 0x1f79: 0x0040, 0x1f7a: 0x0040, 0x1f7b: 0x0040,
2070 0x1f7c: 0x0040, 0x1f7d: 0x0040, 0x1f7e: 0x0040, 0x1f7f: 0x0040,
2071}
2072
2073// idnaIndex: 35 blocks, 2240 entries, 4480 bytes
2074// Block 0 is the zero block.
2075var idnaIndex = [2240]uint16{
2076 // Block 0x0, offset 0x0
2077 // Block 0x1, offset 0x40
2078 // Block 0x2, offset 0x80
2079 // Block 0x3, offset 0xc0
2080 0xc2: 0x01, 0xc3: 0x7c, 0xc4: 0x02, 0xc5: 0x03, 0xc6: 0x04, 0xc7: 0x05,
2081 0xc8: 0x06, 0xc9: 0x7d, 0xca: 0x7e, 0xcb: 0x07, 0xcc: 0x7f, 0xcd: 0x08, 0xce: 0x09, 0xcf: 0x0a,
2082 0xd0: 0x80, 0xd1: 0x0b, 0xd2: 0x0c, 0xd3: 0x0d, 0xd4: 0x0e, 0xd5: 0x81, 0xd6: 0x82, 0xd7: 0x83,
2083 0xd8: 0x0f, 0xd9: 0x10, 0xda: 0x84, 0xdb: 0x11, 0xdc: 0x12, 0xdd: 0x85, 0xde: 0x86, 0xdf: 0x87,
2084 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, 0xe4: 0x06, 0xe5: 0x07, 0xe6: 0x07, 0xe7: 0x07,
2085 0xe8: 0x07, 0xe9: 0x08, 0xea: 0x09, 0xeb: 0x07, 0xec: 0x07, 0xed: 0x0a, 0xee: 0x0b, 0xef: 0x0c,
2086 0xf0: 0x1c, 0xf1: 0x1d, 0xf2: 0x1d, 0xf3: 0x1f, 0xf4: 0x20,
2087 // Block 0x4, offset 0x100
2088 0x120: 0x88, 0x121: 0x89, 0x122: 0x8a, 0x123: 0x8b, 0x124: 0x8c, 0x125: 0x13, 0x126: 0x14, 0x127: 0x15,
2089 0x128: 0x16, 0x129: 0x17, 0x12a: 0x18, 0x12b: 0x19, 0x12c: 0x1a, 0x12d: 0x1b, 0x12e: 0x1c, 0x12f: 0x8d,
2090 0x130: 0x8e, 0x131: 0x1d, 0x132: 0x1e, 0x133: 0x1f, 0x134: 0x8f, 0x135: 0x20, 0x136: 0x90, 0x137: 0x91,
2091 0x138: 0x92, 0x139: 0x93, 0x13a: 0x21, 0x13b: 0x94, 0x13c: 0x95, 0x13d: 0x22, 0x13e: 0x23, 0x13f: 0x96,
2092 // Block 0x5, offset 0x140
2093 0x140: 0x97, 0x141: 0x98, 0x142: 0x99, 0x143: 0x9a, 0x144: 0x9b, 0x145: 0x9c, 0x146: 0x9d, 0x147: 0x9e,
2094 0x148: 0x9f, 0x149: 0xa0, 0x14a: 0xa1, 0x14b: 0xa2, 0x14c: 0xa3, 0x14d: 0xa4, 0x14e: 0xa5, 0x14f: 0xa6,
2095 0x150: 0xa7, 0x151: 0x9f, 0x152: 0x9f, 0x153: 0x9f, 0x154: 0x9f, 0x155: 0x9f, 0x156: 0x9f, 0x157: 0x9f,
2096 0x158: 0x9f, 0x159: 0xa8, 0x15a: 0xa9, 0x15b: 0xaa, 0x15c: 0xab, 0x15d: 0xac, 0x15e: 0xad, 0x15f: 0xae,
2097 0x160: 0xaf, 0x161: 0xb0, 0x162: 0xb1, 0x163: 0xb2, 0x164: 0xb3, 0x165: 0xb4, 0x166: 0xb5, 0x167: 0xb6,
2098 0x168: 0xb7, 0x169: 0xb8, 0x16a: 0xb9, 0x16b: 0xba, 0x16c: 0xbb, 0x16d: 0xbc, 0x16e: 0xbd, 0x16f: 0xbe,
2099 0x170: 0xbf, 0x171: 0xc0, 0x172: 0xc1, 0x173: 0xc2, 0x174: 0x24, 0x175: 0x25, 0x176: 0x26, 0x177: 0xc3,
2100 0x178: 0x27, 0x179: 0x27, 0x17a: 0x28, 0x17b: 0x27, 0x17c: 0xc4, 0x17d: 0x29, 0x17e: 0x2a, 0x17f: 0x2b,
2101 // Block 0x6, offset 0x180
2102 0x180: 0x2c, 0x181: 0x2d, 0x182: 0x2e, 0x183: 0xc5, 0x184: 0x2f, 0x185: 0x30, 0x186: 0xc6, 0x187: 0x9b,
2103 0x188: 0xc7, 0x189: 0xc8, 0x18a: 0x9b, 0x18b: 0x9b, 0x18c: 0xc9, 0x18d: 0x9b, 0x18e: 0x9b, 0x18f: 0xca,
2104 0x190: 0xcb, 0x191: 0x31, 0x192: 0x32, 0x193: 0x33, 0x194: 0x9b, 0x195: 0x9b, 0x196: 0x9b, 0x197: 0x9b,
2105 0x198: 0x9b, 0x199: 0x9b, 0x19a: 0x9b, 0x19b: 0x9b, 0x19c: 0x9b, 0x19d: 0x9b, 0x19e: 0x9b, 0x19f: 0x9b,
2106 0x1a0: 0x9b, 0x1a1: 0x9b, 0x1a2: 0x9b, 0x1a3: 0x9b, 0x1a4: 0x9b, 0x1a5: 0x9b, 0x1a6: 0x9b, 0x1a7: 0x9b,
2107 0x1a8: 0xcc, 0x1a9: 0xcd, 0x1aa: 0x9b, 0x1ab: 0xce, 0x1ac: 0x9b, 0x1ad: 0xcf, 0x1ae: 0xd0, 0x1af: 0xd1,
2108 0x1b0: 0xd2, 0x1b1: 0x34, 0x1b2: 0x27, 0x1b3: 0x35, 0x1b4: 0xd3, 0x1b5: 0xd4, 0x1b6: 0xd5, 0x1b7: 0xd6,
2109 0x1b8: 0xd7, 0x1b9: 0xd8, 0x1ba: 0xd9, 0x1bb: 0xda, 0x1bc: 0xdb, 0x1bd: 0xdc, 0x1be: 0xdd, 0x1bf: 0x36,
2110 // Block 0x7, offset 0x1c0
2111 0x1c0: 0x37, 0x1c1: 0xde, 0x1c2: 0xdf, 0x1c3: 0xe0, 0x1c4: 0xe1, 0x1c5: 0x38, 0x1c6: 0x39, 0x1c7: 0xe2,
2112 0x1c8: 0xe3, 0x1c9: 0x3a, 0x1ca: 0x3b, 0x1cb: 0x3c, 0x1cc: 0x3d, 0x1cd: 0x3e, 0x1ce: 0x3f, 0x1cf: 0x40,
2113 0x1d0: 0x9f, 0x1d1: 0x9f, 0x1d2: 0x9f, 0x1d3: 0x9f, 0x1d4: 0x9f, 0x1d5: 0x9f, 0x1d6: 0x9f, 0x1d7: 0x9f,
2114 0x1d8: 0x9f, 0x1d9: 0x9f, 0x1da: 0x9f, 0x1db: 0x9f, 0x1dc: 0x9f, 0x1dd: 0x9f, 0x1de: 0x9f, 0x1df: 0x9f,
2115 0x1e0: 0x9f, 0x1e1: 0x9f, 0x1e2: 0x9f, 0x1e3: 0x9f, 0x1e4: 0x9f, 0x1e5: 0x9f, 0x1e6: 0x9f, 0x1e7: 0x9f,
2116 0x1e8: 0x9f, 0x1e9: 0x9f, 0x1ea: 0x9f, 0x1eb: 0x9f, 0x1ec: 0x9f, 0x1ed: 0x9f, 0x1ee: 0x9f, 0x1ef: 0x9f,
2117 0x1f0: 0x9f, 0x1f1: 0x9f, 0x1f2: 0x9f, 0x1f3: 0x9f, 0x1f4: 0x9f, 0x1f5: 0x9f, 0x1f6: 0x9f, 0x1f7: 0x9f,
2118 0x1f8: 0x9f, 0x1f9: 0x9f, 0x1fa: 0x9f, 0x1fb: 0x9f, 0x1fc: 0x9f, 0x1fd: 0x9f, 0x1fe: 0x9f, 0x1ff: 0x9f,
2119 // Block 0x8, offset 0x200
2120 0x200: 0x9f, 0x201: 0x9f, 0x202: 0x9f, 0x203: 0x9f, 0x204: 0x9f, 0x205: 0x9f, 0x206: 0x9f, 0x207: 0x9f,
2121 0x208: 0x9f, 0x209: 0x9f, 0x20a: 0x9f, 0x20b: 0x9f, 0x20c: 0x9f, 0x20d: 0x9f, 0x20e: 0x9f, 0x20f: 0x9f,
2122 0x210: 0x9f, 0x211: 0x9f, 0x212: 0x9f, 0x213: 0x9f, 0x214: 0x9f, 0x215: 0x9f, 0x216: 0x9f, 0x217: 0x9f,
2123 0x218: 0x9f, 0x219: 0x9f, 0x21a: 0x9f, 0x21b: 0x9f, 0x21c: 0x9f, 0x21d: 0x9f, 0x21e: 0x9f, 0x21f: 0x9f,
2124 0x220: 0x9f, 0x221: 0x9f, 0x222: 0x9f, 0x223: 0x9f, 0x224: 0x9f, 0x225: 0x9f, 0x226: 0x9f, 0x227: 0x9f,
2125 0x228: 0x9f, 0x229: 0x9f, 0x22a: 0x9f, 0x22b: 0x9f, 0x22c: 0x9f, 0x22d: 0x9f, 0x22e: 0x9f, 0x22f: 0x9f,
2126 0x230: 0x9f, 0x231: 0x9f, 0x232: 0x9f, 0x233: 0x9f, 0x234: 0x9f, 0x235: 0x9f, 0x236: 0xb2, 0x237: 0x9b,
2127 0x238: 0x9f, 0x239: 0x9f, 0x23a: 0x9f, 0x23b: 0x9f, 0x23c: 0x9f, 0x23d: 0x9f, 0x23e: 0x9f, 0x23f: 0x9f,
2128 // Block 0x9, offset 0x240
2129 0x240: 0x9f, 0x241: 0x9f, 0x242: 0x9f, 0x243: 0x9f, 0x244: 0x9f, 0x245: 0x9f, 0x246: 0x9f, 0x247: 0x9f,
2130 0x248: 0x9f, 0x249: 0x9f, 0x24a: 0x9f, 0x24b: 0x9f, 0x24c: 0x9f, 0x24d: 0x9f, 0x24e: 0x9f, 0x24f: 0x9f,
2131 0x250: 0x9f, 0x251: 0x9f, 0x252: 0x9f, 0x253: 0x9f, 0x254: 0x9f, 0x255: 0x9f, 0x256: 0x9f, 0x257: 0x9f,
2132 0x258: 0x9f, 0x259: 0x9f, 0x25a: 0x9f, 0x25b: 0x9f, 0x25c: 0x9f, 0x25d: 0x9f, 0x25e: 0x9f, 0x25f: 0x9f,
2133 0x260: 0x9f, 0x261: 0x9f, 0x262: 0x9f, 0x263: 0x9f, 0x264: 0x9f, 0x265: 0x9f, 0x266: 0x9f, 0x267: 0x9f,
2134 0x268: 0x9f, 0x269: 0x9f, 0x26a: 0x9f, 0x26b: 0x9f, 0x26c: 0x9f, 0x26d: 0x9f, 0x26e: 0x9f, 0x26f: 0x9f,
2135 0x270: 0x9f, 0x271: 0x9f, 0x272: 0x9f, 0x273: 0x9f, 0x274: 0x9f, 0x275: 0x9f, 0x276: 0x9f, 0x277: 0x9f,
2136 0x278: 0x9f, 0x279: 0x9f, 0x27a: 0x9f, 0x27b: 0x9f, 0x27c: 0x9f, 0x27d: 0x9f, 0x27e: 0x9f, 0x27f: 0x9f,
2137 // Block 0xa, offset 0x280
2138 0x280: 0x9f, 0x281: 0x9f, 0x282: 0x9f, 0x283: 0x9f, 0x284: 0x9f, 0x285: 0x9f, 0x286: 0x9f, 0x287: 0x9f,
2139 0x288: 0x9f, 0x289: 0x9f, 0x28a: 0x9f, 0x28b: 0x9f, 0x28c: 0x9f, 0x28d: 0x9f, 0x28e: 0x9f, 0x28f: 0x9f,
2140 0x290: 0x9f, 0x291: 0x9f, 0x292: 0x9f, 0x293: 0x9f, 0x294: 0x9f, 0x295: 0x9f, 0x296: 0x9f, 0x297: 0x9f,
2141 0x298: 0x9f, 0x299: 0x9f, 0x29a: 0x9f, 0x29b: 0x9f, 0x29c: 0x9f, 0x29d: 0x9f, 0x29e: 0x9f, 0x29f: 0x9f,
2142 0x2a0: 0x9f, 0x2a1: 0x9f, 0x2a2: 0x9f, 0x2a3: 0x9f, 0x2a4: 0x9f, 0x2a5: 0x9f, 0x2a6: 0x9f, 0x2a7: 0x9f,
2143 0x2a8: 0x9f, 0x2a9: 0x9f, 0x2aa: 0x9f, 0x2ab: 0x9f, 0x2ac: 0x9f, 0x2ad: 0x9f, 0x2ae: 0x9f, 0x2af: 0x9f,
2144 0x2b0: 0x9f, 0x2b1: 0x9f, 0x2b2: 0x9f, 0x2b3: 0x9f, 0x2b4: 0x9f, 0x2b5: 0x9f, 0x2b6: 0x9f, 0x2b7: 0x9f,
2145 0x2b8: 0x9f, 0x2b9: 0x9f, 0x2ba: 0x9f, 0x2bb: 0x9f, 0x2bc: 0x9f, 0x2bd: 0x9f, 0x2be: 0x9f, 0x2bf: 0xe4,
2146 // Block 0xb, offset 0x2c0
2147 0x2c0: 0x9f, 0x2c1: 0x9f, 0x2c2: 0x9f, 0x2c3: 0x9f, 0x2c4: 0x9f, 0x2c5: 0x9f, 0x2c6: 0x9f, 0x2c7: 0x9f,
2148 0x2c8: 0x9f, 0x2c9: 0x9f, 0x2ca: 0x9f, 0x2cb: 0x9f, 0x2cc: 0x9f, 0x2cd: 0x9f, 0x2ce: 0x9f, 0x2cf: 0x9f,
2149 0x2d0: 0x9f, 0x2d1: 0x9f, 0x2d2: 0xe5, 0x2d3: 0xe6, 0x2d4: 0x9f, 0x2d5: 0x9f, 0x2d6: 0x9f, 0x2d7: 0x9f,
2150 0x2d8: 0xe7, 0x2d9: 0x41, 0x2da: 0x42, 0x2db: 0xe8, 0x2dc: 0x43, 0x2dd: 0x44, 0x2de: 0x45, 0x2df: 0xe9,
2151 0x2e0: 0xea, 0x2e1: 0xeb, 0x2e2: 0xec, 0x2e3: 0xed, 0x2e4: 0xee, 0x2e5: 0xef, 0x2e6: 0xf0, 0x2e7: 0xf1,
2152 0x2e8: 0xf2, 0x2e9: 0xf3, 0x2ea: 0xf4, 0x2eb: 0xf5, 0x2ec: 0xf6, 0x2ed: 0xf7, 0x2ee: 0xf8, 0x2ef: 0xf9,
2153 0x2f0: 0x9f, 0x2f1: 0x9f, 0x2f2: 0x9f, 0x2f3: 0x9f, 0x2f4: 0x9f, 0x2f5: 0x9f, 0x2f6: 0x9f, 0x2f7: 0x9f,
2154 0x2f8: 0x9f, 0x2f9: 0x9f, 0x2fa: 0x9f, 0x2fb: 0x9f, 0x2fc: 0x9f, 0x2fd: 0x9f, 0x2fe: 0x9f, 0x2ff: 0x9f,
2155 // Block 0xc, offset 0x300
2156 0x300: 0x9f, 0x301: 0x9f, 0x302: 0x9f, 0x303: 0x9f, 0x304: 0x9f, 0x305: 0x9f, 0x306: 0x9f, 0x307: 0x9f,
2157 0x308: 0x9f, 0x309: 0x9f, 0x30a: 0x9f, 0x30b: 0x9f, 0x30c: 0x9f, 0x30d: 0x9f, 0x30e: 0x9f, 0x30f: 0x9f,
2158 0x310: 0x9f, 0x311: 0x9f, 0x312: 0x9f, 0x313: 0x9f, 0x314: 0x9f, 0x315: 0x9f, 0x316: 0x9f, 0x317: 0x9f,
2159 0x318: 0x9f, 0x319: 0x9f, 0x31a: 0x9f, 0x31b: 0x9f, 0x31c: 0x9f, 0x31d: 0x9f, 0x31e: 0xfa, 0x31f: 0xfb,
2160 // Block 0xd, offset 0x340
2161 0x340: 0xba, 0x341: 0xba, 0x342: 0xba, 0x343: 0xba, 0x344: 0xba, 0x345: 0xba, 0x346: 0xba, 0x347: 0xba,
2162 0x348: 0xba, 0x349: 0xba, 0x34a: 0xba, 0x34b: 0xba, 0x34c: 0xba, 0x34d: 0xba, 0x34e: 0xba, 0x34f: 0xba,
2163 0x350: 0xba, 0x351: 0xba, 0x352: 0xba, 0x353: 0xba, 0x354: 0xba, 0x355: 0xba, 0x356: 0xba, 0x357: 0xba,
2164 0x358: 0xba, 0x359: 0xba, 0x35a: 0xba, 0x35b: 0xba, 0x35c: 0xba, 0x35d: 0xba, 0x35e: 0xba, 0x35f: 0xba,
2165 0x360: 0xba, 0x361: 0xba, 0x362: 0xba, 0x363: 0xba, 0x364: 0xba, 0x365: 0xba, 0x366: 0xba, 0x367: 0xba,
2166 0x368: 0xba, 0x369: 0xba, 0x36a: 0xba, 0x36b: 0xba, 0x36c: 0xba, 0x36d: 0xba, 0x36e: 0xba, 0x36f: 0xba,
2167 0x370: 0xba, 0x371: 0xba, 0x372: 0xba, 0x373: 0xba, 0x374: 0xba, 0x375: 0xba, 0x376: 0xba, 0x377: 0xba,
2168 0x378: 0xba, 0x379: 0xba, 0x37a: 0xba, 0x37b: 0xba, 0x37c: 0xba, 0x37d: 0xba, 0x37e: 0xba, 0x37f: 0xba,
2169 // Block 0xe, offset 0x380
2170 0x380: 0xba, 0x381: 0xba, 0x382: 0xba, 0x383: 0xba, 0x384: 0xba, 0x385: 0xba, 0x386: 0xba, 0x387: 0xba,
2171 0x388: 0xba, 0x389: 0xba, 0x38a: 0xba, 0x38b: 0xba, 0x38c: 0xba, 0x38d: 0xba, 0x38e: 0xba, 0x38f: 0xba,
2172 0x390: 0xba, 0x391: 0xba, 0x392: 0xba, 0x393: 0xba, 0x394: 0xba, 0x395: 0xba, 0x396: 0xba, 0x397: 0xba,
2173 0x398: 0xba, 0x399: 0xba, 0x39a: 0xba, 0x39b: 0xba, 0x39c: 0xba, 0x39d: 0xba, 0x39e: 0xba, 0x39f: 0xba,
2174 0x3a0: 0xba, 0x3a1: 0xba, 0x3a2: 0xba, 0x3a3: 0xba, 0x3a4: 0xfc, 0x3a5: 0xfd, 0x3a6: 0xfe, 0x3a7: 0xff,
2175 0x3a8: 0x46, 0x3a9: 0x100, 0x3aa: 0x101, 0x3ab: 0x47, 0x3ac: 0x48, 0x3ad: 0x49, 0x3ae: 0x4a, 0x3af: 0x4b,
2176 0x3b0: 0x102, 0x3b1: 0x4c, 0x3b2: 0x4d, 0x3b3: 0x4e, 0x3b4: 0x4f, 0x3b5: 0x50, 0x3b6: 0x103, 0x3b7: 0x51,
2177 0x3b8: 0x52, 0x3b9: 0x53, 0x3ba: 0x54, 0x3bb: 0x55, 0x3bc: 0x56, 0x3bd: 0x57, 0x3be: 0x58, 0x3bf: 0x59,
2178 // Block 0xf, offset 0x3c0
2179 0x3c0: 0x104, 0x3c1: 0x105, 0x3c2: 0x9f, 0x3c3: 0x106, 0x3c4: 0x107, 0x3c5: 0x9b, 0x3c6: 0x108, 0x3c7: 0x109,
2180 0x3c8: 0xba, 0x3c9: 0xba, 0x3ca: 0x10a, 0x3cb: 0x10b, 0x3cc: 0x10c, 0x3cd: 0x10d, 0x3ce: 0x10e, 0x3cf: 0x10f,
2181 0x3d0: 0x110, 0x3d1: 0x9f, 0x3d2: 0x111, 0x3d3: 0x112, 0x3d4: 0x113, 0x3d5: 0x114, 0x3d6: 0xba, 0x3d7: 0xba,
2182 0x3d8: 0x9f, 0x3d9: 0x9f, 0x3da: 0x9f, 0x3db: 0x9f, 0x3dc: 0x115, 0x3dd: 0x116, 0x3de: 0xba, 0x3df: 0xba,
2183 0x3e0: 0x117, 0x3e1: 0x118, 0x3e2: 0x119, 0x3e3: 0x11a, 0x3e4: 0x11b, 0x3e5: 0xba, 0x3e6: 0x11c, 0x3e7: 0x11d,
2184 0x3e8: 0x11e, 0x3e9: 0x11f, 0x3ea: 0x120, 0x3eb: 0x5a, 0x3ec: 0x121, 0x3ed: 0x122, 0x3ee: 0x5b, 0x3ef: 0xba,
2185 0x3f0: 0x123, 0x3f1: 0x124, 0x3f2: 0x125, 0x3f3: 0x126, 0x3f4: 0xba, 0x3f5: 0xba, 0x3f6: 0xba, 0x3f7: 0xba,
2186 0x3f8: 0xba, 0x3f9: 0x127, 0x3fa: 0xba, 0x3fb: 0xba, 0x3fc: 0xba, 0x3fd: 0xba, 0x3fe: 0xba, 0x3ff: 0xba,
2187 // Block 0x10, offset 0x400
2188 0x400: 0x128, 0x401: 0x129, 0x402: 0x12a, 0x403: 0x12b, 0x404: 0x12c, 0x405: 0x12d, 0x406: 0x12e, 0x407: 0x12f,
2189 0x408: 0x130, 0x409: 0xba, 0x40a: 0x131, 0x40b: 0x132, 0x40c: 0x5c, 0x40d: 0x5d, 0x40e: 0xba, 0x40f: 0xba,
2190 0x410: 0x133, 0x411: 0x134, 0x412: 0x135, 0x413: 0x136, 0x414: 0xba, 0x415: 0xba, 0x416: 0x137, 0x417: 0x138,
2191 0x418: 0x139, 0x419: 0x13a, 0x41a: 0x13b, 0x41b: 0x13c, 0x41c: 0x13d, 0x41d: 0xba, 0x41e: 0xba, 0x41f: 0xba,
2192 0x420: 0xba, 0x421: 0xba, 0x422: 0x13e, 0x423: 0x13f, 0x424: 0xba, 0x425: 0xba, 0x426: 0xba, 0x427: 0xba,
2193 0x428: 0xba, 0x429: 0xba, 0x42a: 0xba, 0x42b: 0x140, 0x42c: 0xba, 0x42d: 0xba, 0x42e: 0xba, 0x42f: 0xba,
2194 0x430: 0x141, 0x431: 0x142, 0x432: 0x143, 0x433: 0xba, 0x434: 0xba, 0x435: 0xba, 0x436: 0xba, 0x437: 0xba,
2195 0x438: 0xba, 0x439: 0xba, 0x43a: 0xba, 0x43b: 0xba, 0x43c: 0xba, 0x43d: 0xba, 0x43e: 0xba, 0x43f: 0xba,
2196 // Block 0x11, offset 0x440
2197 0x440: 0x9f, 0x441: 0x9f, 0x442: 0x9f, 0x443: 0x9f, 0x444: 0x9f, 0x445: 0x9f, 0x446: 0x9f, 0x447: 0x9f,
2198 0x448: 0x9f, 0x449: 0x9f, 0x44a: 0x9f, 0x44b: 0x9f, 0x44c: 0x9f, 0x44d: 0x9f, 0x44e: 0x144, 0x44f: 0xba,
2199 0x450: 0x9b, 0x451: 0x145, 0x452: 0x9f, 0x453: 0x9f, 0x454: 0x9f, 0x455: 0x146, 0x456: 0xba, 0x457: 0xba,
2200 0x458: 0xba, 0x459: 0xba, 0x45a: 0xba, 0x45b: 0xba, 0x45c: 0xba, 0x45d: 0xba, 0x45e: 0xba, 0x45f: 0xba,
2201 0x460: 0xba, 0x461: 0xba, 0x462: 0xba, 0x463: 0xba, 0x464: 0xba, 0x465: 0xba, 0x466: 0xba, 0x467: 0xba,
2202 0x468: 0xba, 0x469: 0xba, 0x46a: 0xba, 0x46b: 0xba, 0x46c: 0xba, 0x46d: 0xba, 0x46e: 0xba, 0x46f: 0xba,
2203 0x470: 0xba, 0x471: 0xba, 0x472: 0xba, 0x473: 0xba, 0x474: 0xba, 0x475: 0xba, 0x476: 0xba, 0x477: 0xba,
2204 0x478: 0xba, 0x479: 0xba, 0x47a: 0xba, 0x47b: 0xba, 0x47c: 0xba, 0x47d: 0xba, 0x47e: 0xba, 0x47f: 0xba,
2205 // Block 0x12, offset 0x480
2206 0x480: 0x9f, 0x481: 0x9f, 0x482: 0x9f, 0x483: 0x9f, 0x484: 0x9f, 0x485: 0x9f, 0x486: 0x9f, 0x487: 0x9f,
2207 0x488: 0x9f, 0x489: 0x9f, 0x48a: 0x9f, 0x48b: 0x9f, 0x48c: 0x9f, 0x48d: 0x9f, 0x48e: 0x9f, 0x48f: 0x9f,
2208 0x490: 0x147, 0x491: 0xba, 0x492: 0xba, 0x493: 0xba, 0x494: 0xba, 0x495: 0xba, 0x496: 0xba, 0x497: 0xba,
2209 0x498: 0xba, 0x499: 0xba, 0x49a: 0xba, 0x49b: 0xba, 0x49c: 0xba, 0x49d: 0xba, 0x49e: 0xba, 0x49f: 0xba,
2210 0x4a0: 0xba, 0x4a1: 0xba, 0x4a2: 0xba, 0x4a3: 0xba, 0x4a4: 0xba, 0x4a5: 0xba, 0x4a6: 0xba, 0x4a7: 0xba,
2211 0x4a8: 0xba, 0x4a9: 0xba, 0x4aa: 0xba, 0x4ab: 0xba, 0x4ac: 0xba, 0x4ad: 0xba, 0x4ae: 0xba, 0x4af: 0xba,
2212 0x4b0: 0xba, 0x4b1: 0xba, 0x4b2: 0xba, 0x4b3: 0xba, 0x4b4: 0xba, 0x4b5: 0xba, 0x4b6: 0xba, 0x4b7: 0xba,
2213 0x4b8: 0xba, 0x4b9: 0xba, 0x4ba: 0xba, 0x4bb: 0xba, 0x4bc: 0xba, 0x4bd: 0xba, 0x4be: 0xba, 0x4bf: 0xba,
2214 // Block 0x13, offset 0x4c0
2215 0x4c0: 0xba, 0x4c1: 0xba, 0x4c2: 0xba, 0x4c3: 0xba, 0x4c4: 0xba, 0x4c5: 0xba, 0x4c6: 0xba, 0x4c7: 0xba,
2216 0x4c8: 0xba, 0x4c9: 0xba, 0x4ca: 0xba, 0x4cb: 0xba, 0x4cc: 0xba, 0x4cd: 0xba, 0x4ce: 0xba, 0x4cf: 0xba,
2217 0x4d0: 0x9f, 0x4d1: 0x9f, 0x4d2: 0x9f, 0x4d3: 0x9f, 0x4d4: 0x9f, 0x4d5: 0x9f, 0x4d6: 0x9f, 0x4d7: 0x9f,
2218 0x4d8: 0x9f, 0x4d9: 0x148, 0x4da: 0xba, 0x4db: 0xba, 0x4dc: 0xba, 0x4dd: 0xba, 0x4de: 0xba, 0x4df: 0xba,
2219 0x4e0: 0xba, 0x4e1: 0xba, 0x4e2: 0xba, 0x4e3: 0xba, 0x4e4: 0xba, 0x4e5: 0xba, 0x4e6: 0xba, 0x4e7: 0xba,
2220 0x4e8: 0xba, 0x4e9: 0xba, 0x4ea: 0xba, 0x4eb: 0xba, 0x4ec: 0xba, 0x4ed: 0xba, 0x4ee: 0xba, 0x4ef: 0xba,
2221 0x4f0: 0xba, 0x4f1: 0xba, 0x4f2: 0xba, 0x4f3: 0xba, 0x4f4: 0xba, 0x4f5: 0xba, 0x4f6: 0xba, 0x4f7: 0xba,
2222 0x4f8: 0xba, 0x4f9: 0xba, 0x4fa: 0xba, 0x4fb: 0xba, 0x4fc: 0xba, 0x4fd: 0xba, 0x4fe: 0xba, 0x4ff: 0xba,
2223 // Block 0x14, offset 0x500
2224 0x500: 0xba, 0x501: 0xba, 0x502: 0xba, 0x503: 0xba, 0x504: 0xba, 0x505: 0xba, 0x506: 0xba, 0x507: 0xba,
2225 0x508: 0xba, 0x509: 0xba, 0x50a: 0xba, 0x50b: 0xba, 0x50c: 0xba, 0x50d: 0xba, 0x50e: 0xba, 0x50f: 0xba,
2226 0x510: 0xba, 0x511: 0xba, 0x512: 0xba, 0x513: 0xba, 0x514: 0xba, 0x515: 0xba, 0x516: 0xba, 0x517: 0xba,
2227 0x518: 0xba, 0x519: 0xba, 0x51a: 0xba, 0x51b: 0xba, 0x51c: 0xba, 0x51d: 0xba, 0x51e: 0xba, 0x51f: 0xba,
2228 0x520: 0x9f, 0x521: 0x9f, 0x522: 0x9f, 0x523: 0x9f, 0x524: 0x9f, 0x525: 0x9f, 0x526: 0x9f, 0x527: 0x9f,
2229 0x528: 0x140, 0x529: 0x149, 0x52a: 0xba, 0x52b: 0x14a, 0x52c: 0x14b, 0x52d: 0x14c, 0x52e: 0x14d, 0x52f: 0xba,
2230 0x530: 0xba, 0x531: 0xba, 0x532: 0xba, 0x533: 0xba, 0x534: 0xba, 0x535: 0xba, 0x536: 0xba, 0x537: 0xba,
2231 0x538: 0xba, 0x539: 0xba, 0x53a: 0xba, 0x53b: 0xba, 0x53c: 0x9f, 0x53d: 0x14e, 0x53e: 0x14f, 0x53f: 0x150,
2232 // Block 0x15, offset 0x540
2233 0x540: 0x9f, 0x541: 0x9f, 0x542: 0x9f, 0x543: 0x9f, 0x544: 0x9f, 0x545: 0x9f, 0x546: 0x9f, 0x547: 0x9f,
2234 0x548: 0x9f, 0x549: 0x9f, 0x54a: 0x9f, 0x54b: 0x9f, 0x54c: 0x9f, 0x54d: 0x9f, 0x54e: 0x9f, 0x54f: 0x9f,
2235 0x550: 0x9f, 0x551: 0x9f, 0x552: 0x9f, 0x553: 0x9f, 0x554: 0x9f, 0x555: 0x9f, 0x556: 0x9f, 0x557: 0x9f,
2236 0x558: 0x9f, 0x559: 0x9f, 0x55a: 0x9f, 0x55b: 0x9f, 0x55c: 0x9f, 0x55d: 0x9f, 0x55e: 0x9f, 0x55f: 0x151,
2237 0x560: 0x9f, 0x561: 0x9f, 0x562: 0x9f, 0x563: 0x9f, 0x564: 0x9f, 0x565: 0x9f, 0x566: 0x9f, 0x567: 0x9f,
2238 0x568: 0x9f, 0x569: 0x9f, 0x56a: 0x9f, 0x56b: 0x152, 0x56c: 0xba, 0x56d: 0xba, 0x56e: 0xba, 0x56f: 0xba,
2239 0x570: 0xba, 0x571: 0xba, 0x572: 0xba, 0x573: 0xba, 0x574: 0xba, 0x575: 0xba, 0x576: 0xba, 0x577: 0xba,
2240 0x578: 0xba, 0x579: 0xba, 0x57a: 0xba, 0x57b: 0xba, 0x57c: 0xba, 0x57d: 0xba, 0x57e: 0xba, 0x57f: 0xba,
2241 // Block 0x16, offset 0x580
2242 0x580: 0x153, 0x581: 0xba, 0x582: 0xba, 0x583: 0xba, 0x584: 0xba, 0x585: 0xba, 0x586: 0xba, 0x587: 0xba,
2243 0x588: 0xba, 0x589: 0xba, 0x58a: 0xba, 0x58b: 0xba, 0x58c: 0xba, 0x58d: 0xba, 0x58e: 0xba, 0x58f: 0xba,
2244 0x590: 0xba, 0x591: 0xba, 0x592: 0xba, 0x593: 0xba, 0x594: 0xba, 0x595: 0xba, 0x596: 0xba, 0x597: 0xba,
2245 0x598: 0xba, 0x599: 0xba, 0x59a: 0xba, 0x59b: 0xba, 0x59c: 0xba, 0x59d: 0xba, 0x59e: 0xba, 0x59f: 0xba,
2246 0x5a0: 0xba, 0x5a1: 0xba, 0x5a2: 0xba, 0x5a3: 0xba, 0x5a4: 0xba, 0x5a5: 0xba, 0x5a6: 0xba, 0x5a7: 0xba,
2247 0x5a8: 0xba, 0x5a9: 0xba, 0x5aa: 0xba, 0x5ab: 0xba, 0x5ac: 0xba, 0x5ad: 0xba, 0x5ae: 0xba, 0x5af: 0xba,
2248 0x5b0: 0x9f, 0x5b1: 0x154, 0x5b2: 0x155, 0x5b3: 0xba, 0x5b4: 0xba, 0x5b5: 0xba, 0x5b6: 0xba, 0x5b7: 0xba,
2249 0x5b8: 0xba, 0x5b9: 0xba, 0x5ba: 0xba, 0x5bb: 0xba, 0x5bc: 0xba, 0x5bd: 0xba, 0x5be: 0xba, 0x5bf: 0xba,
2250 // Block 0x17, offset 0x5c0
2251 0x5c0: 0x9b, 0x5c1: 0x9b, 0x5c2: 0x9b, 0x5c3: 0x156, 0x5c4: 0x157, 0x5c5: 0x158, 0x5c6: 0x159, 0x5c7: 0x15a,
2252 0x5c8: 0x9b, 0x5c9: 0x15b, 0x5ca: 0xba, 0x5cb: 0xba, 0x5cc: 0x9b, 0x5cd: 0x15c, 0x5ce: 0xba, 0x5cf: 0xba,
2253 0x5d0: 0x5e, 0x5d1: 0x5f, 0x5d2: 0x60, 0x5d3: 0x61, 0x5d4: 0x62, 0x5d5: 0x63, 0x5d6: 0x64, 0x5d7: 0x65,
2254 0x5d8: 0x66, 0x5d9: 0x67, 0x5da: 0x68, 0x5db: 0x69, 0x5dc: 0x6a, 0x5dd: 0x6b, 0x5de: 0x6c, 0x5df: 0x6d,
2255 0x5e0: 0x9b, 0x5e1: 0x9b, 0x5e2: 0x9b, 0x5e3: 0x9b, 0x5e4: 0x9b, 0x5e5: 0x9b, 0x5e6: 0x9b, 0x5e7: 0x9b,
2256 0x5e8: 0x15d, 0x5e9: 0x15e, 0x5ea: 0x15f, 0x5eb: 0xba, 0x5ec: 0xba, 0x5ed: 0xba, 0x5ee: 0xba, 0x5ef: 0xba,
2257 0x5f0: 0xba, 0x5f1: 0xba, 0x5f2: 0xba, 0x5f3: 0xba, 0x5f4: 0xba, 0x5f5: 0xba, 0x5f6: 0xba, 0x5f7: 0xba,
2258 0x5f8: 0xba, 0x5f9: 0xba, 0x5fa: 0xba, 0x5fb: 0xba, 0x5fc: 0xba, 0x5fd: 0xba, 0x5fe: 0xba, 0x5ff: 0xba,
2259 // Block 0x18, offset 0x600
2260 0x600: 0x160, 0x601: 0xba, 0x602: 0xba, 0x603: 0xba, 0x604: 0xba, 0x605: 0xba, 0x606: 0xba, 0x607: 0xba,
2261 0x608: 0xba, 0x609: 0xba, 0x60a: 0xba, 0x60b: 0xba, 0x60c: 0xba, 0x60d: 0xba, 0x60e: 0xba, 0x60f: 0xba,
2262 0x610: 0xba, 0x611: 0xba, 0x612: 0xba, 0x613: 0xba, 0x614: 0xba, 0x615: 0xba, 0x616: 0xba, 0x617: 0xba,
2263 0x618: 0xba, 0x619: 0xba, 0x61a: 0xba, 0x61b: 0xba, 0x61c: 0xba, 0x61d: 0xba, 0x61e: 0xba, 0x61f: 0xba,
2264 0x620: 0x123, 0x621: 0x123, 0x622: 0x123, 0x623: 0x161, 0x624: 0x6e, 0x625: 0x162, 0x626: 0xba, 0x627: 0xba,
2265 0x628: 0xba, 0x629: 0xba, 0x62a: 0xba, 0x62b: 0xba, 0x62c: 0xba, 0x62d: 0xba, 0x62e: 0xba, 0x62f: 0xba,
2266 0x630: 0xba, 0x631: 0xba, 0x632: 0xba, 0x633: 0xba, 0x634: 0xba, 0x635: 0xba, 0x636: 0xba, 0x637: 0xba,
2267 0x638: 0x6f, 0x639: 0x70, 0x63a: 0x71, 0x63b: 0x163, 0x63c: 0xba, 0x63d: 0xba, 0x63e: 0xba, 0x63f: 0xba,
2268 // Block 0x19, offset 0x640
2269 0x640: 0x164, 0x641: 0x9b, 0x642: 0x165, 0x643: 0x166, 0x644: 0x72, 0x645: 0x73, 0x646: 0x167, 0x647: 0x168,
2270 0x648: 0x74, 0x649: 0x169, 0x64a: 0xba, 0x64b: 0xba, 0x64c: 0x9b, 0x64d: 0x9b, 0x64e: 0x9b, 0x64f: 0x9b,
2271 0x650: 0x9b, 0x651: 0x9b, 0x652: 0x9b, 0x653: 0x9b, 0x654: 0x9b, 0x655: 0x9b, 0x656: 0x9b, 0x657: 0x9b,
2272 0x658: 0x9b, 0x659: 0x9b, 0x65a: 0x9b, 0x65b: 0x16a, 0x65c: 0x9b, 0x65d: 0x16b, 0x65e: 0x9b, 0x65f: 0x16c,
2273 0x660: 0x16d, 0x661: 0x16e, 0x662: 0x16f, 0x663: 0xba, 0x664: 0x170, 0x665: 0x171, 0x666: 0x172, 0x667: 0x173,
2274 0x668: 0xba, 0x669: 0xba, 0x66a: 0xba, 0x66b: 0xba, 0x66c: 0xba, 0x66d: 0xba, 0x66e: 0xba, 0x66f: 0xba,
2275 0x670: 0xba, 0x671: 0xba, 0x672: 0xba, 0x673: 0xba, 0x674: 0xba, 0x675: 0xba, 0x676: 0xba, 0x677: 0xba,
2276 0x678: 0xba, 0x679: 0xba, 0x67a: 0xba, 0x67b: 0xba, 0x67c: 0xba, 0x67d: 0xba, 0x67e: 0xba, 0x67f: 0xba,
2277 // Block 0x1a, offset 0x680
2278 0x680: 0x9f, 0x681: 0x9f, 0x682: 0x9f, 0x683: 0x9f, 0x684: 0x9f, 0x685: 0x9f, 0x686: 0x9f, 0x687: 0x9f,
2279 0x688: 0x9f, 0x689: 0x9f, 0x68a: 0x9f, 0x68b: 0x9f, 0x68c: 0x9f, 0x68d: 0x9f, 0x68e: 0x9f, 0x68f: 0x9f,
2280 0x690: 0x9f, 0x691: 0x9f, 0x692: 0x9f, 0x693: 0x9f, 0x694: 0x9f, 0x695: 0x9f, 0x696: 0x9f, 0x697: 0x9f,
2281 0x698: 0x9f, 0x699: 0x9f, 0x69a: 0x9f, 0x69b: 0x174, 0x69c: 0x9f, 0x69d: 0x9f, 0x69e: 0x9f, 0x69f: 0x9f,
2282 0x6a0: 0x9f, 0x6a1: 0x9f, 0x6a2: 0x9f, 0x6a3: 0x9f, 0x6a4: 0x9f, 0x6a5: 0x9f, 0x6a6: 0x9f, 0x6a7: 0x9f,
2283 0x6a8: 0x9f, 0x6a9: 0x9f, 0x6aa: 0x9f, 0x6ab: 0x9f, 0x6ac: 0x9f, 0x6ad: 0x9f, 0x6ae: 0x9f, 0x6af: 0x9f,
2284 0x6b0: 0x9f, 0x6b1: 0x9f, 0x6b2: 0x9f, 0x6b3: 0x9f, 0x6b4: 0x9f, 0x6b5: 0x9f, 0x6b6: 0x9f, 0x6b7: 0x9f,
2285 0x6b8: 0x9f, 0x6b9: 0x9f, 0x6ba: 0x9f, 0x6bb: 0x9f, 0x6bc: 0x9f, 0x6bd: 0x9f, 0x6be: 0x9f, 0x6bf: 0x9f,
2286 // Block 0x1b, offset 0x6c0
2287 0x6c0: 0x9f, 0x6c1: 0x9f, 0x6c2: 0x9f, 0x6c3: 0x9f, 0x6c4: 0x9f, 0x6c5: 0x9f, 0x6c6: 0x9f, 0x6c7: 0x9f,
2288 0x6c8: 0x9f, 0x6c9: 0x9f, 0x6ca: 0x9f, 0x6cb: 0x9f, 0x6cc: 0x9f, 0x6cd: 0x9f, 0x6ce: 0x9f, 0x6cf: 0x9f,
2289 0x6d0: 0x9f, 0x6d1: 0x9f, 0x6d2: 0x9f, 0x6d3: 0x9f, 0x6d4: 0x9f, 0x6d5: 0x9f, 0x6d6: 0x9f, 0x6d7: 0x9f,
2290 0x6d8: 0x9f, 0x6d9: 0x9f, 0x6da: 0x9f, 0x6db: 0x9f, 0x6dc: 0x175, 0x6dd: 0x9f, 0x6de: 0x9f, 0x6df: 0x9f,
2291 0x6e0: 0x176, 0x6e1: 0x9f, 0x6e2: 0x9f, 0x6e3: 0x9f, 0x6e4: 0x9f, 0x6e5: 0x9f, 0x6e6: 0x9f, 0x6e7: 0x9f,
2292 0x6e8: 0x9f, 0x6e9: 0x9f, 0x6ea: 0x9f, 0x6eb: 0x9f, 0x6ec: 0x9f, 0x6ed: 0x9f, 0x6ee: 0x9f, 0x6ef: 0x9f,
2293 0x6f0: 0x9f, 0x6f1: 0x9f, 0x6f2: 0x9f, 0x6f3: 0x9f, 0x6f4: 0x9f, 0x6f5: 0x9f, 0x6f6: 0x9f, 0x6f7: 0x9f,
2294 0x6f8: 0x9f, 0x6f9: 0x9f, 0x6fa: 0x9f, 0x6fb: 0x9f, 0x6fc: 0x9f, 0x6fd: 0x9f, 0x6fe: 0x9f, 0x6ff: 0x9f,
2295 // Block 0x1c, offset 0x700
2296 0x700: 0x9f, 0x701: 0x9f, 0x702: 0x9f, 0x703: 0x9f, 0x704: 0x9f, 0x705: 0x9f, 0x706: 0x9f, 0x707: 0x9f,
2297 0x708: 0x9f, 0x709: 0x9f, 0x70a: 0x9f, 0x70b: 0x9f, 0x70c: 0x9f, 0x70d: 0x9f, 0x70e: 0x9f, 0x70f: 0x9f,
2298 0x710: 0x9f, 0x711: 0x9f, 0x712: 0x9f, 0x713: 0x9f, 0x714: 0x9f, 0x715: 0x9f, 0x716: 0x9f, 0x717: 0x9f,
2299 0x718: 0x9f, 0x719: 0x9f, 0x71a: 0x9f, 0x71b: 0x9f, 0x71c: 0x9f, 0x71d: 0x9f, 0x71e: 0x9f, 0x71f: 0x9f,
2300 0x720: 0x9f, 0x721: 0x9f, 0x722: 0x9f, 0x723: 0x9f, 0x724: 0x9f, 0x725: 0x9f, 0x726: 0x9f, 0x727: 0x9f,
2301 0x728: 0x9f, 0x729: 0x9f, 0x72a: 0x9f, 0x72b: 0x9f, 0x72c: 0x9f, 0x72d: 0x9f, 0x72e: 0x9f, 0x72f: 0x9f,
2302 0x730: 0x9f, 0x731: 0x9f, 0x732: 0x9f, 0x733: 0x9f, 0x734: 0x9f, 0x735: 0x9f, 0x736: 0x9f, 0x737: 0x9f,
2303 0x738: 0x9f, 0x739: 0x9f, 0x73a: 0x177, 0x73b: 0xba, 0x73c: 0xba, 0x73d: 0xba, 0x73e: 0xba, 0x73f: 0xba,
2304 // Block 0x1d, offset 0x740
2305 0x740: 0xba, 0x741: 0xba, 0x742: 0xba, 0x743: 0xba, 0x744: 0xba, 0x745: 0xba, 0x746: 0xba, 0x747: 0xba,
2306 0x748: 0xba, 0x749: 0xba, 0x74a: 0xba, 0x74b: 0xba, 0x74c: 0xba, 0x74d: 0xba, 0x74e: 0xba, 0x74f: 0xba,
2307 0x750: 0xba, 0x751: 0xba, 0x752: 0xba, 0x753: 0xba, 0x754: 0xba, 0x755: 0xba, 0x756: 0xba, 0x757: 0xba,
2308 0x758: 0xba, 0x759: 0xba, 0x75a: 0xba, 0x75b: 0xba, 0x75c: 0xba, 0x75d: 0xba, 0x75e: 0xba, 0x75f: 0xba,
2309 0x760: 0x75, 0x761: 0x76, 0x762: 0x77, 0x763: 0x178, 0x764: 0x78, 0x765: 0x79, 0x766: 0x179, 0x767: 0x7a,
2310 0x768: 0x7b, 0x769: 0xba, 0x76a: 0xba, 0x76b: 0xba, 0x76c: 0xba, 0x76d: 0xba, 0x76e: 0xba, 0x76f: 0xba,
2311 0x770: 0xba, 0x771: 0xba, 0x772: 0xba, 0x773: 0xba, 0x774: 0xba, 0x775: 0xba, 0x776: 0xba, 0x777: 0xba,
2312 0x778: 0xba, 0x779: 0xba, 0x77a: 0xba, 0x77b: 0xba, 0x77c: 0xba, 0x77d: 0xba, 0x77e: 0xba, 0x77f: 0xba,
2313 // Block 0x1e, offset 0x780
2314 0x790: 0x0d, 0x791: 0x0e, 0x792: 0x0f, 0x793: 0x10, 0x794: 0x11, 0x795: 0x0b, 0x796: 0x12, 0x797: 0x07,
2315 0x798: 0x13, 0x799: 0x0b, 0x79a: 0x0b, 0x79b: 0x14, 0x79c: 0x0b, 0x79d: 0x15, 0x79e: 0x16, 0x79f: 0x17,
2316 0x7a0: 0x07, 0x7a1: 0x07, 0x7a2: 0x07, 0x7a3: 0x07, 0x7a4: 0x07, 0x7a5: 0x07, 0x7a6: 0x07, 0x7a7: 0x07,
2317 0x7a8: 0x07, 0x7a9: 0x07, 0x7aa: 0x18, 0x7ab: 0x19, 0x7ac: 0x1a, 0x7ad: 0x0b, 0x7ae: 0x0b, 0x7af: 0x1b,
2318 0x7b0: 0x0b, 0x7b1: 0x0b, 0x7b2: 0x0b, 0x7b3: 0x0b, 0x7b4: 0x0b, 0x7b5: 0x0b, 0x7b6: 0x0b, 0x7b7: 0x0b,
2319 0x7b8: 0x0b, 0x7b9: 0x0b, 0x7ba: 0x0b, 0x7bb: 0x0b, 0x7bc: 0x0b, 0x7bd: 0x0b, 0x7be: 0x0b, 0x7bf: 0x0b,
2320 // Block 0x1f, offset 0x7c0
2321 0x7c0: 0x0b, 0x7c1: 0x0b, 0x7c2: 0x0b, 0x7c3: 0x0b, 0x7c4: 0x0b, 0x7c5: 0x0b, 0x7c6: 0x0b, 0x7c7: 0x0b,
2322 0x7c8: 0x0b, 0x7c9: 0x0b, 0x7ca: 0x0b, 0x7cb: 0x0b, 0x7cc: 0x0b, 0x7cd: 0x0b, 0x7ce: 0x0b, 0x7cf: 0x0b,
2323 0x7d0: 0x0b, 0x7d1: 0x0b, 0x7d2: 0x0b, 0x7d3: 0x0b, 0x7d4: 0x0b, 0x7d5: 0x0b, 0x7d6: 0x0b, 0x7d7: 0x0b,
2324 0x7d8: 0x0b, 0x7d9: 0x0b, 0x7da: 0x0b, 0x7db: 0x0b, 0x7dc: 0x0b, 0x7dd: 0x0b, 0x7de: 0x0b, 0x7df: 0x0b,
2325 0x7e0: 0x0b, 0x7e1: 0x0b, 0x7e2: 0x0b, 0x7e3: 0x0b, 0x7e4: 0x0b, 0x7e5: 0x0b, 0x7e6: 0x0b, 0x7e7: 0x0b,
2326 0x7e8: 0x0b, 0x7e9: 0x0b, 0x7ea: 0x0b, 0x7eb: 0x0b, 0x7ec: 0x0b, 0x7ed: 0x0b, 0x7ee: 0x0b, 0x7ef: 0x0b,
2327 0x7f0: 0x0b, 0x7f1: 0x0b, 0x7f2: 0x0b, 0x7f3: 0x0b, 0x7f4: 0x0b, 0x7f5: 0x0b, 0x7f6: 0x0b, 0x7f7: 0x0b,
2328 0x7f8: 0x0b, 0x7f9: 0x0b, 0x7fa: 0x0b, 0x7fb: 0x0b, 0x7fc: 0x0b, 0x7fd: 0x0b, 0x7fe: 0x0b, 0x7ff: 0x0b,
2329 // Block 0x20, offset 0x800
2330 0x800: 0x17a, 0x801: 0x17b, 0x802: 0xba, 0x803: 0xba, 0x804: 0x17c, 0x805: 0x17c, 0x806: 0x17c, 0x807: 0x17d,
2331 0x808: 0xba, 0x809: 0xba, 0x80a: 0xba, 0x80b: 0xba, 0x80c: 0xba, 0x80d: 0xba, 0x80e: 0xba, 0x80f: 0xba,
2332 0x810: 0xba, 0x811: 0xba, 0x812: 0xba, 0x813: 0xba, 0x814: 0xba, 0x815: 0xba, 0x816: 0xba, 0x817: 0xba,
2333 0x818: 0xba, 0x819: 0xba, 0x81a: 0xba, 0x81b: 0xba, 0x81c: 0xba, 0x81d: 0xba, 0x81e: 0xba, 0x81f: 0xba,
2334 0x820: 0xba, 0x821: 0xba, 0x822: 0xba, 0x823: 0xba, 0x824: 0xba, 0x825: 0xba, 0x826: 0xba, 0x827: 0xba,
2335 0x828: 0xba, 0x829: 0xba, 0x82a: 0xba, 0x82b: 0xba, 0x82c: 0xba, 0x82d: 0xba, 0x82e: 0xba, 0x82f: 0xba,
2336 0x830: 0xba, 0x831: 0xba, 0x832: 0xba, 0x833: 0xba, 0x834: 0xba, 0x835: 0xba, 0x836: 0xba, 0x837: 0xba,
2337 0x838: 0xba, 0x839: 0xba, 0x83a: 0xba, 0x83b: 0xba, 0x83c: 0xba, 0x83d: 0xba, 0x83e: 0xba, 0x83f: 0xba,
2338 // Block 0x21, offset 0x840
2339 0x840: 0x0b, 0x841: 0x0b, 0x842: 0x0b, 0x843: 0x0b, 0x844: 0x0b, 0x845: 0x0b, 0x846: 0x0b, 0x847: 0x0b,
2340 0x848: 0x0b, 0x849: 0x0b, 0x84a: 0x0b, 0x84b: 0x0b, 0x84c: 0x0b, 0x84d: 0x0b, 0x84e: 0x0b, 0x84f: 0x0b,
2341 0x850: 0x0b, 0x851: 0x0b, 0x852: 0x0b, 0x853: 0x0b, 0x854: 0x0b, 0x855: 0x0b, 0x856: 0x0b, 0x857: 0x0b,
2342 0x858: 0x0b, 0x859: 0x0b, 0x85a: 0x0b, 0x85b: 0x0b, 0x85c: 0x0b, 0x85d: 0x0b, 0x85e: 0x0b, 0x85f: 0x0b,
2343 0x860: 0x1e, 0x861: 0x0b, 0x862: 0x0b, 0x863: 0x0b, 0x864: 0x0b, 0x865: 0x0b, 0x866: 0x0b, 0x867: 0x0b,
2344 0x868: 0x0b, 0x869: 0x0b, 0x86a: 0x0b, 0x86b: 0x0b, 0x86c: 0x0b, 0x86d: 0x0b, 0x86e: 0x0b, 0x86f: 0x0b,
2345 0x870: 0x0b, 0x871: 0x0b, 0x872: 0x0b, 0x873: 0x0b, 0x874: 0x0b, 0x875: 0x0b, 0x876: 0x0b, 0x877: 0x0b,
2346 0x878: 0x0b, 0x879: 0x0b, 0x87a: 0x0b, 0x87b: 0x0b, 0x87c: 0x0b, 0x87d: 0x0b, 0x87e: 0x0b, 0x87f: 0x0b,
2347 // Block 0x22, offset 0x880
2348 0x880: 0x0b, 0x881: 0x0b, 0x882: 0x0b, 0x883: 0x0b, 0x884: 0x0b, 0x885: 0x0b, 0x886: 0x0b, 0x887: 0x0b,
2349 0x888: 0x0b, 0x889: 0x0b, 0x88a: 0x0b, 0x88b: 0x0b, 0x88c: 0x0b, 0x88d: 0x0b, 0x88e: 0x0b, 0x88f: 0x0b,
2350}
2351
2352// idnaSparseOffset: 258 entries, 516 bytes
2353var idnaSparseOffset = []uint16{0x0, 0x8, 0x19, 0x25, 0x27, 0x2c, 0x34, 0x3f, 0x4b, 0x4f, 0x5e, 0x63, 0x6b, 0x77, 0x85, 0x93, 0x98, 0xa1, 0xb1, 0xbf, 0xcc, 0xd8, 0xe9, 0xf3, 0xfa, 0x107, 0x118, 0x11f, 0x12a, 0x139, 0x147, 0x151, 0x153, 0x158, 0x15b, 0x15e, 0x160, 0x16c, 0x177, 0x17f, 0x185, 0x18b, 0x190, 0x195, 0x198, 0x19c, 0x1a2, 0x1a7, 0x1b3, 0x1bd, 0x1c3, 0x1d4, 0x1de, 0x1e1, 0x1e9, 0x1ec, 0x1f9, 0x201, 0x205, 0x20c, 0x214, 0x224, 0x230, 0x232, 0x23c, 0x248, 0x254, 0x260, 0x268, 0x26d, 0x277, 0x288, 0x28c, 0x297, 0x29b, 0x2a4, 0x2ac, 0x2b2, 0x2b7, 0x2ba, 0x2bd, 0x2c1, 0x2c7, 0x2cb, 0x2cf, 0x2d5, 0x2dc, 0x2e2, 0x2ea, 0x2f1, 0x2fc, 0x306, 0x30a, 0x30d, 0x313, 0x317, 0x319, 0x31c, 0x31e, 0x321, 0x32b, 0x32e, 0x33d, 0x341, 0x346, 0x349, 0x34d, 0x352, 0x357, 0x35d, 0x363, 0x372, 0x378, 0x37c, 0x38b, 0x390, 0x398, 0x3a2, 0x3ad, 0x3b5, 0x3c6, 0x3cf, 0x3df, 0x3ec, 0x3f6, 0x3fb, 0x408, 0x40c, 0x411, 0x413, 0x417, 0x419, 0x41d, 0x426, 0x42c, 0x430, 0x440, 0x44a, 0x44f, 0x452, 0x458, 0x45f, 0x464, 0x468, 0x46e, 0x473, 0x47c, 0x481, 0x487, 0x48e, 0x495, 0x49c, 0x4a0, 0x4a5, 0x4a8, 0x4ad, 0x4b9, 0x4bf, 0x4c4, 0x4cb, 0x4d3, 0x4d8, 0x4dc, 0x4ec, 0x4f3, 0x4f7, 0x4fb, 0x502, 0x504, 0x507, 0x50a, 0x50e, 0x512, 0x518, 0x521, 0x52d, 0x534, 0x53d, 0x545, 0x54c, 0x55a, 0x567, 0x574, 0x57d, 0x581, 0x58f, 0x597, 0x5a2, 0x5ab, 0x5b1, 0x5b9, 0x5c2, 0x5cc, 0x5cf, 0x5db, 0x5de, 0x5e3, 0x5e6, 0x5f0, 0x5f9, 0x605, 0x608, 0x60d, 0x610, 0x613, 0x616, 0x61d, 0x624, 0x628, 0x633, 0x636, 0x63c, 0x641, 0x645, 0x648, 0x64b, 0x64e, 0x653, 0x65d, 0x660, 0x664, 0x673, 0x67f, 0x683, 0x688, 0x68d, 0x691, 0x696, 0x69f, 0x6aa, 0x6b0, 0x6b8, 0x6bc, 0x6c0, 0x6c6, 0x6cc, 0x6d1, 0x6d4, 0x6e2, 0x6e9, 0x6ec, 0x6ef, 0x6f3, 0x6f9, 0x6fe, 0x708, 0x70d, 0x710, 0x713, 0x716, 0x719, 0x71d, 0x720, 0x730, 0x741, 0x746, 0x748, 0x74a}
2354
2355// idnaSparseValues: 1869 entries, 7476 bytes
2356var idnaSparseValues = [1869]valueRange{
2357 // Block 0x0, offset 0x0
2358 {value: 0x0000, lo: 0x07},
2359 {value: 0xe105, lo: 0x80, hi: 0x96},
2360 {value: 0x0018, lo: 0x97, hi: 0x97},
2361 {value: 0xe105, lo: 0x98, hi: 0x9e},
2362 {value: 0x001f, lo: 0x9f, hi: 0x9f},
2363 {value: 0x0008, lo: 0xa0, hi: 0xb6},
2364 {value: 0x0018, lo: 0xb7, hi: 0xb7},
2365 {value: 0x0008, lo: 0xb8, hi: 0xbf},
2366 // Block 0x1, offset 0x8
2367 {value: 0x0000, lo: 0x10},
2368 {value: 0x0008, lo: 0x80, hi: 0x80},
2369 {value: 0xe01d, lo: 0x81, hi: 0x81},
2370 {value: 0x0008, lo: 0x82, hi: 0x82},
2371 {value: 0x0335, lo: 0x83, hi: 0x83},
2372 {value: 0x034d, lo: 0x84, hi: 0x84},
2373 {value: 0x0365, lo: 0x85, hi: 0x85},
2374 {value: 0xe00d, lo: 0x86, hi: 0x86},
2375 {value: 0x0008, lo: 0x87, hi: 0x87},
2376 {value: 0xe00d, lo: 0x88, hi: 0x88},
2377 {value: 0x0008, lo: 0x89, hi: 0x89},
2378 {value: 0xe00d, lo: 0x8a, hi: 0x8a},
2379 {value: 0x0008, lo: 0x8b, hi: 0x8b},
2380 {value: 0xe00d, lo: 0x8c, hi: 0x8c},
2381 {value: 0x0008, lo: 0x8d, hi: 0x8d},
2382 {value: 0xe00d, lo: 0x8e, hi: 0x8e},
2383 {value: 0x0008, lo: 0x8f, hi: 0xbf},
2384 // Block 0x2, offset 0x19
2385 {value: 0x0000, lo: 0x0b},
2386 {value: 0x0008, lo: 0x80, hi: 0xaf},
2387 {value: 0x0249, lo: 0xb0, hi: 0xb0},
2388 {value: 0x037d, lo: 0xb1, hi: 0xb1},
2389 {value: 0x0259, lo: 0xb2, hi: 0xb2},
2390 {value: 0x0269, lo: 0xb3, hi: 0xb3},
2391 {value: 0x034d, lo: 0xb4, hi: 0xb4},
2392 {value: 0x0395, lo: 0xb5, hi: 0xb5},
2393 {value: 0xe1bd, lo: 0xb6, hi: 0xb6},
2394 {value: 0x0279, lo: 0xb7, hi: 0xb7},
2395 {value: 0x0289, lo: 0xb8, hi: 0xb8},
2396 {value: 0x0008, lo: 0xb9, hi: 0xbf},
2397 // Block 0x3, offset 0x25
2398 {value: 0x0000, lo: 0x01},
2399 {value: 0x3308, lo: 0x80, hi: 0xbf},
2400 // Block 0x4, offset 0x27
2401 {value: 0x0000, lo: 0x04},
2402 {value: 0x03f5, lo: 0x80, hi: 0x8f},
2403 {value: 0xe105, lo: 0x90, hi: 0x9f},
2404 {value: 0x049d, lo: 0xa0, hi: 0xaf},
2405 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2406 // Block 0x5, offset 0x2c
2407 {value: 0x0000, lo: 0x07},
2408 {value: 0xe185, lo: 0x80, hi: 0x8f},
2409 {value: 0x0545, lo: 0x90, hi: 0x96},
2410 {value: 0x0040, lo: 0x97, hi: 0x98},
2411 {value: 0x0008, lo: 0x99, hi: 0x99},
2412 {value: 0x0018, lo: 0x9a, hi: 0x9f},
2413 {value: 0x0040, lo: 0xa0, hi: 0xa0},
2414 {value: 0x0008, lo: 0xa1, hi: 0xbf},
2415 // Block 0x6, offset 0x34
2416 {value: 0x0000, lo: 0x0a},
2417 {value: 0x0008, lo: 0x80, hi: 0x86},
2418 {value: 0x0401, lo: 0x87, hi: 0x87},
2419 {value: 0x0040, lo: 0x88, hi: 0x88},
2420 {value: 0x0018, lo: 0x89, hi: 0x8a},
2421 {value: 0x0040, lo: 0x8b, hi: 0x8c},
2422 {value: 0x0018, lo: 0x8d, hi: 0x8f},
2423 {value: 0x0040, lo: 0x90, hi: 0x90},
2424 {value: 0x3308, lo: 0x91, hi: 0xbd},
2425 {value: 0x0818, lo: 0xbe, hi: 0xbe},
2426 {value: 0x3308, lo: 0xbf, hi: 0xbf},
2427 // Block 0x7, offset 0x3f
2428 {value: 0x0000, lo: 0x0b},
2429 {value: 0x0818, lo: 0x80, hi: 0x80},
2430 {value: 0x3308, lo: 0x81, hi: 0x82},
2431 {value: 0x0818, lo: 0x83, hi: 0x83},
2432 {value: 0x3308, lo: 0x84, hi: 0x85},
2433 {value: 0x0818, lo: 0x86, hi: 0x86},
2434 {value: 0x3308, lo: 0x87, hi: 0x87},
2435 {value: 0x0040, lo: 0x88, hi: 0x8f},
2436 {value: 0x0808, lo: 0x90, hi: 0xaa},
2437 {value: 0x0040, lo: 0xab, hi: 0xaf},
2438 {value: 0x0808, lo: 0xb0, hi: 0xb4},
2439 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2440 // Block 0x8, offset 0x4b
2441 {value: 0x0000, lo: 0x03},
2442 {value: 0x0a08, lo: 0x80, hi: 0x87},
2443 {value: 0x0c08, lo: 0x88, hi: 0x99},
2444 {value: 0x0a08, lo: 0x9a, hi: 0xbf},
2445 // Block 0x9, offset 0x4f
2446 {value: 0x0000, lo: 0x0e},
2447 {value: 0x3308, lo: 0x80, hi: 0x8a},
2448 {value: 0x0040, lo: 0x8b, hi: 0x8c},
2449 {value: 0x0c08, lo: 0x8d, hi: 0x8d},
2450 {value: 0x0a08, lo: 0x8e, hi: 0x98},
2451 {value: 0x0c08, lo: 0x99, hi: 0x9b},
2452 {value: 0x0a08, lo: 0x9c, hi: 0xaa},
2453 {value: 0x0c08, lo: 0xab, hi: 0xac},
2454 {value: 0x0a08, lo: 0xad, hi: 0xb0},
2455 {value: 0x0c08, lo: 0xb1, hi: 0xb1},
2456 {value: 0x0a08, lo: 0xb2, hi: 0xb2},
2457 {value: 0x0c08, lo: 0xb3, hi: 0xb4},
2458 {value: 0x0a08, lo: 0xb5, hi: 0xb7},
2459 {value: 0x0c08, lo: 0xb8, hi: 0xb9},
2460 {value: 0x0a08, lo: 0xba, hi: 0xbf},
2461 // Block 0xa, offset 0x5e
2462 {value: 0x0000, lo: 0x04},
2463 {value: 0x0808, lo: 0x80, hi: 0xa5},
2464 {value: 0x3308, lo: 0xa6, hi: 0xb0},
2465 {value: 0x0808, lo: 0xb1, hi: 0xb1},
2466 {value: 0x0040, lo: 0xb2, hi: 0xbf},
2467 // Block 0xb, offset 0x63
2468 {value: 0x0000, lo: 0x07},
2469 {value: 0x0808, lo: 0x80, hi: 0x89},
2470 {value: 0x0a08, lo: 0x8a, hi: 0xaa},
2471 {value: 0x3308, lo: 0xab, hi: 0xb3},
2472 {value: 0x0808, lo: 0xb4, hi: 0xb5},
2473 {value: 0x0018, lo: 0xb6, hi: 0xb9},
2474 {value: 0x0818, lo: 0xba, hi: 0xba},
2475 {value: 0x0040, lo: 0xbb, hi: 0xbf},
2476 // Block 0xc, offset 0x6b
2477 {value: 0x0000, lo: 0x0b},
2478 {value: 0x0808, lo: 0x80, hi: 0x95},
2479 {value: 0x3308, lo: 0x96, hi: 0x99},
2480 {value: 0x0808, lo: 0x9a, hi: 0x9a},
2481 {value: 0x3308, lo: 0x9b, hi: 0xa3},
2482 {value: 0x0808, lo: 0xa4, hi: 0xa4},
2483 {value: 0x3308, lo: 0xa5, hi: 0xa7},
2484 {value: 0x0808, lo: 0xa8, hi: 0xa8},
2485 {value: 0x3308, lo: 0xa9, hi: 0xad},
2486 {value: 0x0040, lo: 0xae, hi: 0xaf},
2487 {value: 0x0818, lo: 0xb0, hi: 0xbe},
2488 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2489 // Block 0xd, offset 0x77
2490 {value: 0x0000, lo: 0x0d},
2491 {value: 0x0c08, lo: 0x80, hi: 0x80},
2492 {value: 0x0a08, lo: 0x81, hi: 0x85},
2493 {value: 0x0c08, lo: 0x86, hi: 0x87},
2494 {value: 0x0a08, lo: 0x88, hi: 0x88},
2495 {value: 0x0c08, lo: 0x89, hi: 0x89},
2496 {value: 0x0a08, lo: 0x8a, hi: 0x93},
2497 {value: 0x0c08, lo: 0x94, hi: 0x94},
2498 {value: 0x0a08, lo: 0x95, hi: 0x95},
2499 {value: 0x0808, lo: 0x96, hi: 0x98},
2500 {value: 0x3308, lo: 0x99, hi: 0x9b},
2501 {value: 0x0040, lo: 0x9c, hi: 0x9d},
2502 {value: 0x0818, lo: 0x9e, hi: 0x9e},
2503 {value: 0x0040, lo: 0x9f, hi: 0xbf},
2504 // Block 0xe, offset 0x85
2505 {value: 0x0000, lo: 0x0d},
2506 {value: 0x0040, lo: 0x80, hi: 0x9f},
2507 {value: 0x0a08, lo: 0xa0, hi: 0xa9},
2508 {value: 0x0c08, lo: 0xaa, hi: 0xac},
2509 {value: 0x0808, lo: 0xad, hi: 0xad},
2510 {value: 0x0c08, lo: 0xae, hi: 0xae},
2511 {value: 0x0a08, lo: 0xaf, hi: 0xb0},
2512 {value: 0x0c08, lo: 0xb1, hi: 0xb2},
2513 {value: 0x0a08, lo: 0xb3, hi: 0xb4},
2514 {value: 0x0040, lo: 0xb5, hi: 0xb5},
2515 {value: 0x0a08, lo: 0xb6, hi: 0xb8},
2516 {value: 0x0c08, lo: 0xb9, hi: 0xb9},
2517 {value: 0x0a08, lo: 0xba, hi: 0xbd},
2518 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2519 // Block 0xf, offset 0x93
2520 {value: 0x0000, lo: 0x04},
2521 {value: 0x0040, lo: 0x80, hi: 0x93},
2522 {value: 0x3308, lo: 0x94, hi: 0xa1},
2523 {value: 0x0840, lo: 0xa2, hi: 0xa2},
2524 {value: 0x3308, lo: 0xa3, hi: 0xbf},
2525 // Block 0x10, offset 0x98
2526 {value: 0x0000, lo: 0x08},
2527 {value: 0x3308, lo: 0x80, hi: 0x82},
2528 {value: 0x3008, lo: 0x83, hi: 0x83},
2529 {value: 0x0008, lo: 0x84, hi: 0xb9},
2530 {value: 0x3308, lo: 0xba, hi: 0xba},
2531 {value: 0x3008, lo: 0xbb, hi: 0xbb},
2532 {value: 0x3308, lo: 0xbc, hi: 0xbc},
2533 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2534 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2535 // Block 0x11, offset 0xa1
2536 {value: 0x0000, lo: 0x0f},
2537 {value: 0x3308, lo: 0x80, hi: 0x80},
2538 {value: 0x3008, lo: 0x81, hi: 0x82},
2539 {value: 0x0040, lo: 0x83, hi: 0x85},
2540 {value: 0x3008, lo: 0x86, hi: 0x88},
2541 {value: 0x0040, lo: 0x89, hi: 0x89},
2542 {value: 0x3008, lo: 0x8a, hi: 0x8c},
2543 {value: 0x3b08, lo: 0x8d, hi: 0x8d},
2544 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2545 {value: 0x0008, lo: 0x90, hi: 0x90},
2546 {value: 0x0040, lo: 0x91, hi: 0x96},
2547 {value: 0x3008, lo: 0x97, hi: 0x97},
2548 {value: 0x0040, lo: 0x98, hi: 0xa5},
2549 {value: 0x0008, lo: 0xa6, hi: 0xaf},
2550 {value: 0x0018, lo: 0xb0, hi: 0xba},
2551 {value: 0x0040, lo: 0xbb, hi: 0xbf},
2552 // Block 0x12, offset 0xb1
2553 {value: 0x0000, lo: 0x0d},
2554 {value: 0x3308, lo: 0x80, hi: 0x80},
2555 {value: 0x3008, lo: 0x81, hi: 0x83},
2556 {value: 0x0040, lo: 0x84, hi: 0x84},
2557 {value: 0x0008, lo: 0x85, hi: 0x8c},
2558 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2559 {value: 0x0008, lo: 0x8e, hi: 0x90},
2560 {value: 0x0040, lo: 0x91, hi: 0x91},
2561 {value: 0x0008, lo: 0x92, hi: 0xa8},
2562 {value: 0x0040, lo: 0xa9, hi: 0xa9},
2563 {value: 0x0008, lo: 0xaa, hi: 0xb9},
2564 {value: 0x0040, lo: 0xba, hi: 0xbc},
2565 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2566 {value: 0x3308, lo: 0xbe, hi: 0xbf},
2567 // Block 0x13, offset 0xbf
2568 {value: 0x0000, lo: 0x0c},
2569 {value: 0x0040, lo: 0x80, hi: 0x80},
2570 {value: 0x3308, lo: 0x81, hi: 0x81},
2571 {value: 0x3008, lo: 0x82, hi: 0x83},
2572 {value: 0x0040, lo: 0x84, hi: 0x84},
2573 {value: 0x0008, lo: 0x85, hi: 0x8c},
2574 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2575 {value: 0x0008, lo: 0x8e, hi: 0x90},
2576 {value: 0x0040, lo: 0x91, hi: 0x91},
2577 {value: 0x0008, lo: 0x92, hi: 0xba},
2578 {value: 0x0040, lo: 0xbb, hi: 0xbc},
2579 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2580 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2581 // Block 0x14, offset 0xcc
2582 {value: 0x0000, lo: 0x0b},
2583 {value: 0x0040, lo: 0x80, hi: 0x81},
2584 {value: 0x3008, lo: 0x82, hi: 0x83},
2585 {value: 0x0040, lo: 0x84, hi: 0x84},
2586 {value: 0x0008, lo: 0x85, hi: 0x96},
2587 {value: 0x0040, lo: 0x97, hi: 0x99},
2588 {value: 0x0008, lo: 0x9a, hi: 0xb1},
2589 {value: 0x0040, lo: 0xb2, hi: 0xb2},
2590 {value: 0x0008, lo: 0xb3, hi: 0xbb},
2591 {value: 0x0040, lo: 0xbc, hi: 0xbc},
2592 {value: 0x0008, lo: 0xbd, hi: 0xbd},
2593 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2594 // Block 0x15, offset 0xd8
2595 {value: 0x0000, lo: 0x10},
2596 {value: 0x0008, lo: 0x80, hi: 0x86},
2597 {value: 0x0040, lo: 0x87, hi: 0x89},
2598 {value: 0x3b08, lo: 0x8a, hi: 0x8a},
2599 {value: 0x0040, lo: 0x8b, hi: 0x8e},
2600 {value: 0x3008, lo: 0x8f, hi: 0x91},
2601 {value: 0x3308, lo: 0x92, hi: 0x94},
2602 {value: 0x0040, lo: 0x95, hi: 0x95},
2603 {value: 0x3308, lo: 0x96, hi: 0x96},
2604 {value: 0x0040, lo: 0x97, hi: 0x97},
2605 {value: 0x3008, lo: 0x98, hi: 0x9f},
2606 {value: 0x0040, lo: 0xa0, hi: 0xa5},
2607 {value: 0x0008, lo: 0xa6, hi: 0xaf},
2608 {value: 0x0040, lo: 0xb0, hi: 0xb1},
2609 {value: 0x3008, lo: 0xb2, hi: 0xb3},
2610 {value: 0x0018, lo: 0xb4, hi: 0xb4},
2611 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2612 // Block 0x16, offset 0xe9
2613 {value: 0x0000, lo: 0x09},
2614 {value: 0x0040, lo: 0x80, hi: 0x80},
2615 {value: 0x0008, lo: 0x81, hi: 0xb0},
2616 {value: 0x3308, lo: 0xb1, hi: 0xb1},
2617 {value: 0x0008, lo: 0xb2, hi: 0xb2},
2618 {value: 0x08f1, lo: 0xb3, hi: 0xb3},
2619 {value: 0x3308, lo: 0xb4, hi: 0xb9},
2620 {value: 0x3b08, lo: 0xba, hi: 0xba},
2621 {value: 0x0040, lo: 0xbb, hi: 0xbe},
2622 {value: 0x0018, lo: 0xbf, hi: 0xbf},
2623 // Block 0x17, offset 0xf3
2624 {value: 0x0000, lo: 0x06},
2625 {value: 0x0008, lo: 0x80, hi: 0x86},
2626 {value: 0x3308, lo: 0x87, hi: 0x8e},
2627 {value: 0x0018, lo: 0x8f, hi: 0x8f},
2628 {value: 0x0008, lo: 0x90, hi: 0x99},
2629 {value: 0x0018, lo: 0x9a, hi: 0x9b},
2630 {value: 0x0040, lo: 0x9c, hi: 0xbf},
2631 // Block 0x18, offset 0xfa
2632 {value: 0x0000, lo: 0x0c},
2633 {value: 0x0008, lo: 0x80, hi: 0x84},
2634 {value: 0x0040, lo: 0x85, hi: 0x85},
2635 {value: 0x0008, lo: 0x86, hi: 0x86},
2636 {value: 0x0040, lo: 0x87, hi: 0x87},
2637 {value: 0x3308, lo: 0x88, hi: 0x8d},
2638 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2639 {value: 0x0008, lo: 0x90, hi: 0x99},
2640 {value: 0x0040, lo: 0x9a, hi: 0x9b},
2641 {value: 0x0961, lo: 0x9c, hi: 0x9c},
2642 {value: 0x0999, lo: 0x9d, hi: 0x9d},
2643 {value: 0x0008, lo: 0x9e, hi: 0x9f},
2644 {value: 0x0040, lo: 0xa0, hi: 0xbf},
2645 // Block 0x19, offset 0x107
2646 {value: 0x0000, lo: 0x10},
2647 {value: 0x0008, lo: 0x80, hi: 0x80},
2648 {value: 0x0018, lo: 0x81, hi: 0x8a},
2649 {value: 0x0008, lo: 0x8b, hi: 0x8b},
2650 {value: 0xe03d, lo: 0x8c, hi: 0x8c},
2651 {value: 0x0018, lo: 0x8d, hi: 0x97},
2652 {value: 0x3308, lo: 0x98, hi: 0x99},
2653 {value: 0x0018, lo: 0x9a, hi: 0x9f},
2654 {value: 0x0008, lo: 0xa0, hi: 0xa9},
2655 {value: 0x0018, lo: 0xaa, hi: 0xb4},
2656 {value: 0x3308, lo: 0xb5, hi: 0xb5},
2657 {value: 0x0018, lo: 0xb6, hi: 0xb6},
2658 {value: 0x3308, lo: 0xb7, hi: 0xb7},
2659 {value: 0x0018, lo: 0xb8, hi: 0xb8},
2660 {value: 0x3308, lo: 0xb9, hi: 0xb9},
2661 {value: 0x0018, lo: 0xba, hi: 0xbd},
2662 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2663 // Block 0x1a, offset 0x118
2664 {value: 0x0000, lo: 0x06},
2665 {value: 0x0018, lo: 0x80, hi: 0x85},
2666 {value: 0x3308, lo: 0x86, hi: 0x86},
2667 {value: 0x0018, lo: 0x87, hi: 0x8c},
2668 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2669 {value: 0x0018, lo: 0x8e, hi: 0x9a},
2670 {value: 0x0040, lo: 0x9b, hi: 0xbf},
2671 // Block 0x1b, offset 0x11f
2672 {value: 0x0000, lo: 0x0a},
2673 {value: 0x0008, lo: 0x80, hi: 0xaa},
2674 {value: 0x3008, lo: 0xab, hi: 0xac},
2675 {value: 0x3308, lo: 0xad, hi: 0xb0},
2676 {value: 0x3008, lo: 0xb1, hi: 0xb1},
2677 {value: 0x3308, lo: 0xb2, hi: 0xb7},
2678 {value: 0x3008, lo: 0xb8, hi: 0xb8},
2679 {value: 0x3b08, lo: 0xb9, hi: 0xba},
2680 {value: 0x3008, lo: 0xbb, hi: 0xbc},
2681 {value: 0x3308, lo: 0xbd, hi: 0xbe},
2682 {value: 0x0008, lo: 0xbf, hi: 0xbf},
2683 // Block 0x1c, offset 0x12a
2684 {value: 0x0000, lo: 0x0e},
2685 {value: 0x0008, lo: 0x80, hi: 0x89},
2686 {value: 0x0018, lo: 0x8a, hi: 0x8f},
2687 {value: 0x0008, lo: 0x90, hi: 0x95},
2688 {value: 0x3008, lo: 0x96, hi: 0x97},
2689 {value: 0x3308, lo: 0x98, hi: 0x99},
2690 {value: 0x0008, lo: 0x9a, hi: 0x9d},
2691 {value: 0x3308, lo: 0x9e, hi: 0xa0},
2692 {value: 0x0008, lo: 0xa1, hi: 0xa1},
2693 {value: 0x3008, lo: 0xa2, hi: 0xa4},
2694 {value: 0x0008, lo: 0xa5, hi: 0xa6},
2695 {value: 0x3008, lo: 0xa7, hi: 0xad},
2696 {value: 0x0008, lo: 0xae, hi: 0xb0},
2697 {value: 0x3308, lo: 0xb1, hi: 0xb4},
2698 {value: 0x0008, lo: 0xb5, hi: 0xbf},
2699 // Block 0x1d, offset 0x139
2700 {value: 0x0000, lo: 0x0d},
2701 {value: 0x0008, lo: 0x80, hi: 0x81},
2702 {value: 0x3308, lo: 0x82, hi: 0x82},
2703 {value: 0x3008, lo: 0x83, hi: 0x84},
2704 {value: 0x3308, lo: 0x85, hi: 0x86},
2705 {value: 0x3008, lo: 0x87, hi: 0x8c},
2706 {value: 0x3308, lo: 0x8d, hi: 0x8d},
2707 {value: 0x0008, lo: 0x8e, hi: 0x8e},
2708 {value: 0x3008, lo: 0x8f, hi: 0x8f},
2709 {value: 0x0008, lo: 0x90, hi: 0x99},
2710 {value: 0x3008, lo: 0x9a, hi: 0x9c},
2711 {value: 0x3308, lo: 0x9d, hi: 0x9d},
2712 {value: 0x0018, lo: 0x9e, hi: 0x9f},
2713 {value: 0x0040, lo: 0xa0, hi: 0xbf},
2714 // Block 0x1e, offset 0x147
2715 {value: 0x0000, lo: 0x09},
2716 {value: 0x0040, lo: 0x80, hi: 0x86},
2717 {value: 0x055d, lo: 0x87, hi: 0x87},
2718 {value: 0x0040, lo: 0x88, hi: 0x8c},
2719 {value: 0x055d, lo: 0x8d, hi: 0x8d},
2720 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2721 {value: 0x0008, lo: 0x90, hi: 0xba},
2722 {value: 0x0018, lo: 0xbb, hi: 0xbb},
2723 {value: 0xe105, lo: 0xbc, hi: 0xbc},
2724 {value: 0x0008, lo: 0xbd, hi: 0xbf},
2725 // Block 0x1f, offset 0x151
2726 {value: 0x0000, lo: 0x01},
2727 {value: 0x0018, lo: 0x80, hi: 0xbf},
2728 // Block 0x20, offset 0x153
2729 {value: 0x0000, lo: 0x04},
2730 {value: 0x0018, lo: 0x80, hi: 0x9e},
2731 {value: 0x0040, lo: 0x9f, hi: 0xa0},
2732 {value: 0x2018, lo: 0xa1, hi: 0xb5},
2733 {value: 0x0018, lo: 0xb6, hi: 0xbf},
2734 // Block 0x21, offset 0x158
2735 {value: 0x0000, lo: 0x02},
2736 {value: 0x0018, lo: 0x80, hi: 0xa7},
2737 {value: 0x2018, lo: 0xa8, hi: 0xbf},
2738 // Block 0x22, offset 0x15b
2739 {value: 0x0000, lo: 0x02},
2740 {value: 0x2018, lo: 0x80, hi: 0x82},
2741 {value: 0x0018, lo: 0x83, hi: 0xbf},
2742 // Block 0x23, offset 0x15e
2743 {value: 0x0000, lo: 0x01},
2744 {value: 0x0008, lo: 0x80, hi: 0xbf},
2745 // Block 0x24, offset 0x160
2746 {value: 0x0000, lo: 0x0b},
2747 {value: 0x0008, lo: 0x80, hi: 0x88},
2748 {value: 0x0040, lo: 0x89, hi: 0x89},
2749 {value: 0x0008, lo: 0x8a, hi: 0x8d},
2750 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2751 {value: 0x0008, lo: 0x90, hi: 0x96},
2752 {value: 0x0040, lo: 0x97, hi: 0x97},
2753 {value: 0x0008, lo: 0x98, hi: 0x98},
2754 {value: 0x0040, lo: 0x99, hi: 0x99},
2755 {value: 0x0008, lo: 0x9a, hi: 0x9d},
2756 {value: 0x0040, lo: 0x9e, hi: 0x9f},
2757 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2758 // Block 0x25, offset 0x16c
2759 {value: 0x0000, lo: 0x0a},
2760 {value: 0x0008, lo: 0x80, hi: 0x88},
2761 {value: 0x0040, lo: 0x89, hi: 0x89},
2762 {value: 0x0008, lo: 0x8a, hi: 0x8d},
2763 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2764 {value: 0x0008, lo: 0x90, hi: 0xb0},
2765 {value: 0x0040, lo: 0xb1, hi: 0xb1},
2766 {value: 0x0008, lo: 0xb2, hi: 0xb5},
2767 {value: 0x0040, lo: 0xb6, hi: 0xb7},
2768 {value: 0x0008, lo: 0xb8, hi: 0xbe},
2769 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2770 // Block 0x26, offset 0x177
2771 {value: 0x0000, lo: 0x07},
2772 {value: 0x0008, lo: 0x80, hi: 0x80},
2773 {value: 0x0040, lo: 0x81, hi: 0x81},
2774 {value: 0x0008, lo: 0x82, hi: 0x85},
2775 {value: 0x0040, lo: 0x86, hi: 0x87},
2776 {value: 0x0008, lo: 0x88, hi: 0x96},
2777 {value: 0x0040, lo: 0x97, hi: 0x97},
2778 {value: 0x0008, lo: 0x98, hi: 0xbf},
2779 // Block 0x27, offset 0x17f
2780 {value: 0x0000, lo: 0x05},
2781 {value: 0x0008, lo: 0x80, hi: 0x90},
2782 {value: 0x0040, lo: 0x91, hi: 0x91},
2783 {value: 0x0008, lo: 0x92, hi: 0x95},
2784 {value: 0x0040, lo: 0x96, hi: 0x97},
2785 {value: 0x0008, lo: 0x98, hi: 0xbf},
2786 // Block 0x28, offset 0x185
2787 {value: 0x0000, lo: 0x05},
2788 {value: 0x0008, lo: 0x80, hi: 0x9a},
2789 {value: 0x0040, lo: 0x9b, hi: 0x9c},
2790 {value: 0x3308, lo: 0x9d, hi: 0x9f},
2791 {value: 0x0018, lo: 0xa0, hi: 0xbc},
2792 {value: 0x0040, lo: 0xbd, hi: 0xbf},
2793 // Block 0x29, offset 0x18b
2794 {value: 0x0000, lo: 0x04},
2795 {value: 0x0008, lo: 0x80, hi: 0x8f},
2796 {value: 0x0018, lo: 0x90, hi: 0x99},
2797 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2798 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2799 // Block 0x2a, offset 0x190
2800 {value: 0x0000, lo: 0x04},
2801 {value: 0x0008, lo: 0x80, hi: 0xb5},
2802 {value: 0x0040, lo: 0xb6, hi: 0xb7},
2803 {value: 0xe045, lo: 0xb8, hi: 0xbd},
2804 {value: 0x0040, lo: 0xbe, hi: 0xbf},
2805 // Block 0x2b, offset 0x195
2806 {value: 0x0000, lo: 0x02},
2807 {value: 0x0018, lo: 0x80, hi: 0x80},
2808 {value: 0x0008, lo: 0x81, hi: 0xbf},
2809 // Block 0x2c, offset 0x198
2810 {value: 0x0000, lo: 0x03},
2811 {value: 0x0008, lo: 0x80, hi: 0xac},
2812 {value: 0x0018, lo: 0xad, hi: 0xae},
2813 {value: 0x0008, lo: 0xaf, hi: 0xbf},
2814 // Block 0x2d, offset 0x19c
2815 {value: 0x0000, lo: 0x05},
2816 {value: 0x0040, lo: 0x80, hi: 0x80},
2817 {value: 0x0008, lo: 0x81, hi: 0x9a},
2818 {value: 0x0018, lo: 0x9b, hi: 0x9c},
2819 {value: 0x0040, lo: 0x9d, hi: 0x9f},
2820 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2821 // Block 0x2e, offset 0x1a2
2822 {value: 0x0000, lo: 0x04},
2823 {value: 0x0008, lo: 0x80, hi: 0xaa},
2824 {value: 0x0018, lo: 0xab, hi: 0xb0},
2825 {value: 0x0008, lo: 0xb1, hi: 0xb8},
2826 {value: 0x0040, lo: 0xb9, hi: 0xbf},
2827 // Block 0x2f, offset 0x1a7
2828 {value: 0x0000, lo: 0x0b},
2829 {value: 0x0008, lo: 0x80, hi: 0x8c},
2830 {value: 0x0040, lo: 0x8d, hi: 0x8d},
2831 {value: 0x0008, lo: 0x8e, hi: 0x91},
2832 {value: 0x3308, lo: 0x92, hi: 0x93},
2833 {value: 0x3b08, lo: 0x94, hi: 0x94},
2834 {value: 0x0040, lo: 0x95, hi: 0x9f},
2835 {value: 0x0008, lo: 0xa0, hi: 0xb1},
2836 {value: 0x3308, lo: 0xb2, hi: 0xb3},
2837 {value: 0x3b08, lo: 0xb4, hi: 0xb4},
2838 {value: 0x0018, lo: 0xb5, hi: 0xb6},
2839 {value: 0x0040, lo: 0xb7, hi: 0xbf},
2840 // Block 0x30, offset 0x1b3
2841 {value: 0x0000, lo: 0x09},
2842 {value: 0x0008, lo: 0x80, hi: 0x91},
2843 {value: 0x3308, lo: 0x92, hi: 0x93},
2844 {value: 0x0040, lo: 0x94, hi: 0x9f},
2845 {value: 0x0008, lo: 0xa0, hi: 0xac},
2846 {value: 0x0040, lo: 0xad, hi: 0xad},
2847 {value: 0x0008, lo: 0xae, hi: 0xb0},
2848 {value: 0x0040, lo: 0xb1, hi: 0xb1},
2849 {value: 0x3308, lo: 0xb2, hi: 0xb3},
2850 {value: 0x0040, lo: 0xb4, hi: 0xbf},
2851 // Block 0x31, offset 0x1bd
2852 {value: 0x0000, lo: 0x05},
2853 {value: 0x0008, lo: 0x80, hi: 0xb3},
2854 {value: 0x3340, lo: 0xb4, hi: 0xb5},
2855 {value: 0x3008, lo: 0xb6, hi: 0xb6},
2856 {value: 0x3308, lo: 0xb7, hi: 0xbd},
2857 {value: 0x3008, lo: 0xbe, hi: 0xbf},
2858 // Block 0x32, offset 0x1c3
2859 {value: 0x0000, lo: 0x10},
2860 {value: 0x3008, lo: 0x80, hi: 0x85},
2861 {value: 0x3308, lo: 0x86, hi: 0x86},
2862 {value: 0x3008, lo: 0x87, hi: 0x88},
2863 {value: 0x3308, lo: 0x89, hi: 0x91},
2864 {value: 0x3b08, lo: 0x92, hi: 0x92},
2865 {value: 0x3308, lo: 0x93, hi: 0x93},
2866 {value: 0x0018, lo: 0x94, hi: 0x96},
2867 {value: 0x0008, lo: 0x97, hi: 0x97},
2868 {value: 0x0018, lo: 0x98, hi: 0x9b},
2869 {value: 0x0008, lo: 0x9c, hi: 0x9c},
2870 {value: 0x3308, lo: 0x9d, hi: 0x9d},
2871 {value: 0x0040, lo: 0x9e, hi: 0x9f},
2872 {value: 0x0008, lo: 0xa0, hi: 0xa9},
2873 {value: 0x0040, lo: 0xaa, hi: 0xaf},
2874 {value: 0x0018, lo: 0xb0, hi: 0xb9},
2875 {value: 0x0040, lo: 0xba, hi: 0xbf},
2876 // Block 0x33, offset 0x1d4
2877 {value: 0x0000, lo: 0x09},
2878 {value: 0x0018, lo: 0x80, hi: 0x85},
2879 {value: 0x0040, lo: 0x86, hi: 0x86},
2880 {value: 0x0218, lo: 0x87, hi: 0x87},
2881 {value: 0x0018, lo: 0x88, hi: 0x8a},
2882 {value: 0x33c0, lo: 0x8b, hi: 0x8d},
2883 {value: 0x0040, lo: 0x8e, hi: 0x8f},
2884 {value: 0x0008, lo: 0x90, hi: 0x99},
2885 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2886 {value: 0x0208, lo: 0xa0, hi: 0xbf},
2887 // Block 0x34, offset 0x1de
2888 {value: 0x0000, lo: 0x02},
2889 {value: 0x0208, lo: 0x80, hi: 0xb7},
2890 {value: 0x0040, lo: 0xb8, hi: 0xbf},
2891 // Block 0x35, offset 0x1e1
2892 {value: 0x0000, lo: 0x07},
2893 {value: 0x0008, lo: 0x80, hi: 0x84},
2894 {value: 0x3308, lo: 0x85, hi: 0x86},
2895 {value: 0x0208, lo: 0x87, hi: 0xa8},
2896 {value: 0x3308, lo: 0xa9, hi: 0xa9},
2897 {value: 0x0208, lo: 0xaa, hi: 0xaa},
2898 {value: 0x0040, lo: 0xab, hi: 0xaf},
2899 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2900 // Block 0x36, offset 0x1e9
2901 {value: 0x0000, lo: 0x02},
2902 {value: 0x0008, lo: 0x80, hi: 0xb5},
2903 {value: 0x0040, lo: 0xb6, hi: 0xbf},
2904 // Block 0x37, offset 0x1ec
2905 {value: 0x0000, lo: 0x0c},
2906 {value: 0x0008, lo: 0x80, hi: 0x9e},
2907 {value: 0x0040, lo: 0x9f, hi: 0x9f},
2908 {value: 0x3308, lo: 0xa0, hi: 0xa2},
2909 {value: 0x3008, lo: 0xa3, hi: 0xa6},
2910 {value: 0x3308, lo: 0xa7, hi: 0xa8},
2911 {value: 0x3008, lo: 0xa9, hi: 0xab},
2912 {value: 0x0040, lo: 0xac, hi: 0xaf},
2913 {value: 0x3008, lo: 0xb0, hi: 0xb1},
2914 {value: 0x3308, lo: 0xb2, hi: 0xb2},
2915 {value: 0x3008, lo: 0xb3, hi: 0xb8},
2916 {value: 0x3308, lo: 0xb9, hi: 0xbb},
2917 {value: 0x0040, lo: 0xbc, hi: 0xbf},
2918 // Block 0x38, offset 0x1f9
2919 {value: 0x0000, lo: 0x07},
2920 {value: 0x0018, lo: 0x80, hi: 0x80},
2921 {value: 0x0040, lo: 0x81, hi: 0x83},
2922 {value: 0x0018, lo: 0x84, hi: 0x85},
2923 {value: 0x0008, lo: 0x86, hi: 0xad},
2924 {value: 0x0040, lo: 0xae, hi: 0xaf},
2925 {value: 0x0008, lo: 0xb0, hi: 0xb4},
2926 {value: 0x0040, lo: 0xb5, hi: 0xbf},
2927 // Block 0x39, offset 0x201
2928 {value: 0x0000, lo: 0x03},
2929 {value: 0x0008, lo: 0x80, hi: 0xab},
2930 {value: 0x0040, lo: 0xac, hi: 0xaf},
2931 {value: 0x0008, lo: 0xb0, hi: 0xbf},
2932 // Block 0x3a, offset 0x205
2933 {value: 0x0000, lo: 0x06},
2934 {value: 0x0008, lo: 0x80, hi: 0x89},
2935 {value: 0x0040, lo: 0x8a, hi: 0x8f},
2936 {value: 0x0008, lo: 0x90, hi: 0x99},
2937 {value: 0x0028, lo: 0x9a, hi: 0x9a},
2938 {value: 0x0040, lo: 0x9b, hi: 0x9d},
2939 {value: 0x0018, lo: 0x9e, hi: 0xbf},
2940 // Block 0x3b, offset 0x20c
2941 {value: 0x0000, lo: 0x07},
2942 {value: 0x0008, lo: 0x80, hi: 0x96},
2943 {value: 0x3308, lo: 0x97, hi: 0x98},
2944 {value: 0x3008, lo: 0x99, hi: 0x9a},
2945 {value: 0x3308, lo: 0x9b, hi: 0x9b},
2946 {value: 0x0040, lo: 0x9c, hi: 0x9d},
2947 {value: 0x0018, lo: 0x9e, hi: 0x9f},
2948 {value: 0x0008, lo: 0xa0, hi: 0xbf},
2949 // Block 0x3c, offset 0x214
2950 {value: 0x0000, lo: 0x0f},
2951 {value: 0x0008, lo: 0x80, hi: 0x94},
2952 {value: 0x3008, lo: 0x95, hi: 0x95},
2953 {value: 0x3308, lo: 0x96, hi: 0x96},
2954 {value: 0x3008, lo: 0x97, hi: 0x97},
2955 {value: 0x3308, lo: 0x98, hi: 0x9e},
2956 {value: 0x0040, lo: 0x9f, hi: 0x9f},
2957 {value: 0x3b08, lo: 0xa0, hi: 0xa0},
2958 {value: 0x3008, lo: 0xa1, hi: 0xa1},
2959 {value: 0x3308, lo: 0xa2, hi: 0xa2},
2960 {value: 0x3008, lo: 0xa3, hi: 0xa4},
2961 {value: 0x3308, lo: 0xa5, hi: 0xac},
2962 {value: 0x3008, lo: 0xad, hi: 0xb2},
2963 {value: 0x3308, lo: 0xb3, hi: 0xbc},
2964 {value: 0x0040, lo: 0xbd, hi: 0xbe},
2965 {value: 0x3308, lo: 0xbf, hi: 0xbf},
2966 // Block 0x3d, offset 0x224
2967 {value: 0x0000, lo: 0x0b},
2968 {value: 0x0008, lo: 0x80, hi: 0x89},
2969 {value: 0x0040, lo: 0x8a, hi: 0x8f},
2970 {value: 0x0008, lo: 0x90, hi: 0x99},
2971 {value: 0x0040, lo: 0x9a, hi: 0x9f},
2972 {value: 0x0018, lo: 0xa0, hi: 0xa6},
2973 {value: 0x0008, lo: 0xa7, hi: 0xa7},
2974 {value: 0x0018, lo: 0xa8, hi: 0xad},
2975 {value: 0x0040, lo: 0xae, hi: 0xaf},
2976 {value: 0x3308, lo: 0xb0, hi: 0xbd},
2977 {value: 0x3318, lo: 0xbe, hi: 0xbe},
2978 {value: 0x0040, lo: 0xbf, hi: 0xbf},
2979 // Block 0x3e, offset 0x230
2980 {value: 0x0000, lo: 0x01},
2981 {value: 0x0040, lo: 0x80, hi: 0xbf},
2982 // Block 0x3f, offset 0x232
2983 {value: 0x0000, lo: 0x09},
2984 {value: 0x3308, lo: 0x80, hi: 0x83},
2985 {value: 0x3008, lo: 0x84, hi: 0x84},
2986 {value: 0x0008, lo: 0x85, hi: 0xb3},
2987 {value: 0x3308, lo: 0xb4, hi: 0xb4},
2988 {value: 0x3008, lo: 0xb5, hi: 0xb5},
2989 {value: 0x3308, lo: 0xb6, hi: 0xba},
2990 {value: 0x3008, lo: 0xbb, hi: 0xbb},
2991 {value: 0x3308, lo: 0xbc, hi: 0xbc},
2992 {value: 0x3008, lo: 0xbd, hi: 0xbf},
2993 // Block 0x40, offset 0x23c
2994 {value: 0x0000, lo: 0x0b},
2995 {value: 0x3008, lo: 0x80, hi: 0x81},
2996 {value: 0x3308, lo: 0x82, hi: 0x82},
2997 {value: 0x3008, lo: 0x83, hi: 0x83},
2998 {value: 0x3808, lo: 0x84, hi: 0x84},
2999 {value: 0x0008, lo: 0x85, hi: 0x8b},
3000 {value: 0x0040, lo: 0x8c, hi: 0x8f},
3001 {value: 0x0008, lo: 0x90, hi: 0x99},
3002 {value: 0x0018, lo: 0x9a, hi: 0xaa},
3003 {value: 0x3308, lo: 0xab, hi: 0xb3},
3004 {value: 0x0018, lo: 0xb4, hi: 0xbc},
3005 {value: 0x0040, lo: 0xbd, hi: 0xbf},
3006 // Block 0x41, offset 0x248
3007 {value: 0x0000, lo: 0x0b},
3008 {value: 0x3308, lo: 0x80, hi: 0x81},
3009 {value: 0x3008, lo: 0x82, hi: 0x82},
3010 {value: 0x0008, lo: 0x83, hi: 0xa0},
3011 {value: 0x3008, lo: 0xa1, hi: 0xa1},
3012 {value: 0x3308, lo: 0xa2, hi: 0xa5},
3013 {value: 0x3008, lo: 0xa6, hi: 0xa7},
3014 {value: 0x3308, lo: 0xa8, hi: 0xa9},
3015 {value: 0x3808, lo: 0xaa, hi: 0xaa},
3016 {value: 0x3b08, lo: 0xab, hi: 0xab},
3017 {value: 0x3308, lo: 0xac, hi: 0xad},
3018 {value: 0x0008, lo: 0xae, hi: 0xbf},
3019 // Block 0x42, offset 0x254
3020 {value: 0x0000, lo: 0x0b},
3021 {value: 0x0008, lo: 0x80, hi: 0xa5},
3022 {value: 0x3308, lo: 0xa6, hi: 0xa6},
3023 {value: 0x3008, lo: 0xa7, hi: 0xa7},
3024 {value: 0x3308, lo: 0xa8, hi: 0xa9},
3025 {value: 0x3008, lo: 0xaa, hi: 0xac},
3026 {value: 0x3308, lo: 0xad, hi: 0xad},
3027 {value: 0x3008, lo: 0xae, hi: 0xae},
3028 {value: 0x3308, lo: 0xaf, hi: 0xb1},
3029 {value: 0x3808, lo: 0xb2, hi: 0xb3},
3030 {value: 0x0040, lo: 0xb4, hi: 0xbb},
3031 {value: 0x0018, lo: 0xbc, hi: 0xbf},
3032 // Block 0x43, offset 0x260
3033 {value: 0x0000, lo: 0x07},
3034 {value: 0x0008, lo: 0x80, hi: 0xa3},
3035 {value: 0x3008, lo: 0xa4, hi: 0xab},
3036 {value: 0x3308, lo: 0xac, hi: 0xb3},
3037 {value: 0x3008, lo: 0xb4, hi: 0xb5},
3038 {value: 0x3308, lo: 0xb6, hi: 0xb7},
3039 {value: 0x0040, lo: 0xb8, hi: 0xba},
3040 {value: 0x0018, lo: 0xbb, hi: 0xbf},
3041 // Block 0x44, offset 0x268
3042 {value: 0x0000, lo: 0x04},
3043 {value: 0x0008, lo: 0x80, hi: 0x89},
3044 {value: 0x0040, lo: 0x8a, hi: 0x8c},
3045 {value: 0x0008, lo: 0x8d, hi: 0xbd},
3046 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3047 // Block 0x45, offset 0x26d
3048 {value: 0x0000, lo: 0x09},
3049 {value: 0x0e29, lo: 0x80, hi: 0x80},
3050 {value: 0x0e41, lo: 0x81, hi: 0x81},
3051 {value: 0x0e59, lo: 0x82, hi: 0x82},
3052 {value: 0x0e71, lo: 0x83, hi: 0x83},
3053 {value: 0x0e89, lo: 0x84, hi: 0x85},
3054 {value: 0x0ea1, lo: 0x86, hi: 0x86},
3055 {value: 0x0eb9, lo: 0x87, hi: 0x87},
3056 {value: 0x057d, lo: 0x88, hi: 0x88},
3057 {value: 0x0040, lo: 0x89, hi: 0xbf},
3058 // Block 0x46, offset 0x277
3059 {value: 0x0000, lo: 0x10},
3060 {value: 0x0018, lo: 0x80, hi: 0x87},
3061 {value: 0x0040, lo: 0x88, hi: 0x8f},
3062 {value: 0x3308, lo: 0x90, hi: 0x92},
3063 {value: 0x0018, lo: 0x93, hi: 0x93},
3064 {value: 0x3308, lo: 0x94, hi: 0xa0},
3065 {value: 0x3008, lo: 0xa1, hi: 0xa1},
3066 {value: 0x3308, lo: 0xa2, hi: 0xa8},
3067 {value: 0x0008, lo: 0xa9, hi: 0xac},
3068 {value: 0x3308, lo: 0xad, hi: 0xad},
3069 {value: 0x0008, lo: 0xae, hi: 0xb1},
3070 {value: 0x3008, lo: 0xb2, hi: 0xb3},
3071 {value: 0x3308, lo: 0xb4, hi: 0xb4},
3072 {value: 0x0008, lo: 0xb5, hi: 0xb6},
3073 {value: 0x0040, lo: 0xb7, hi: 0xb7},
3074 {value: 0x3308, lo: 0xb8, hi: 0xb9},
3075 {value: 0x0040, lo: 0xba, hi: 0xbf},
3076 // Block 0x47, offset 0x288
3077 {value: 0x0000, lo: 0x03},
3078 {value: 0x3308, lo: 0x80, hi: 0xb5},
3079 {value: 0x0040, lo: 0xb6, hi: 0xba},
3080 {value: 0x3308, lo: 0xbb, hi: 0xbf},
3081 // Block 0x48, offset 0x28c
3082 {value: 0x0000, lo: 0x0a},
3083 {value: 0x0008, lo: 0x80, hi: 0x87},
3084 {value: 0xe045, lo: 0x88, hi: 0x8f},
3085 {value: 0x0008, lo: 0x90, hi: 0x95},
3086 {value: 0x0040, lo: 0x96, hi: 0x97},
3087 {value: 0xe045, lo: 0x98, hi: 0x9d},
3088 {value: 0x0040, lo: 0x9e, hi: 0x9f},
3089 {value: 0x0008, lo: 0xa0, hi: 0xa7},
3090 {value: 0xe045, lo: 0xa8, hi: 0xaf},
3091 {value: 0x0008, lo: 0xb0, hi: 0xb7},
3092 {value: 0xe045, lo: 0xb8, hi: 0xbf},
3093 // Block 0x49, offset 0x297
3094 {value: 0x0000, lo: 0x03},
3095 {value: 0x0040, lo: 0x80, hi: 0x8f},
3096 {value: 0x3318, lo: 0x90, hi: 0xb0},
3097 {value: 0x0040, lo: 0xb1, hi: 0xbf},
3098 // Block 0x4a, offset 0x29b
3099 {value: 0x0000, lo: 0x08},
3100 {value: 0x0018, lo: 0x80, hi: 0x82},
3101 {value: 0x0040, lo: 0x83, hi: 0x83},
3102 {value: 0x0008, lo: 0x84, hi: 0x84},
3103 {value: 0x0018, lo: 0x85, hi: 0x88},
3104 {value: 0x24c1, lo: 0x89, hi: 0x89},
3105 {value: 0x0018, lo: 0x8a, hi: 0x8b},
3106 {value: 0x0040, lo: 0x8c, hi: 0x8f},
3107 {value: 0x0018, lo: 0x90, hi: 0xbf},
3108 // Block 0x4b, offset 0x2a4
3109 {value: 0x0000, lo: 0x07},
3110 {value: 0x0018, lo: 0x80, hi: 0xab},
3111 {value: 0x24f1, lo: 0xac, hi: 0xac},
3112 {value: 0x2529, lo: 0xad, hi: 0xad},
3113 {value: 0x0018, lo: 0xae, hi: 0xae},
3114 {value: 0x2579, lo: 0xaf, hi: 0xaf},
3115 {value: 0x25b1, lo: 0xb0, hi: 0xb0},
3116 {value: 0x0018, lo: 0xb1, hi: 0xbf},
3117 // Block 0x4c, offset 0x2ac
3118 {value: 0x0000, lo: 0x05},
3119 {value: 0x0018, lo: 0x80, hi: 0x9f},
3120 {value: 0x0080, lo: 0xa0, hi: 0xa0},
3121 {value: 0x0018, lo: 0xa1, hi: 0xad},
3122 {value: 0x0080, lo: 0xae, hi: 0xaf},
3123 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3124 // Block 0x4d, offset 0x2b2
3125 {value: 0x0000, lo: 0x04},
3126 {value: 0x0018, lo: 0x80, hi: 0xa8},
3127 {value: 0x09c5, lo: 0xa9, hi: 0xa9},
3128 {value: 0x09e5, lo: 0xaa, hi: 0xaa},
3129 {value: 0x0018, lo: 0xab, hi: 0xbf},
3130 // Block 0x4e, offset 0x2b7
3131 {value: 0x0000, lo: 0x02},
3132 {value: 0x0018, lo: 0x80, hi: 0xbe},
3133 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3134 // Block 0x4f, offset 0x2ba
3135 {value: 0x0000, lo: 0x02},
3136 {value: 0x0018, lo: 0x80, hi: 0xa6},
3137 {value: 0x0040, lo: 0xa7, hi: 0xbf},
3138 // Block 0x50, offset 0x2bd
3139 {value: 0x0000, lo: 0x03},
3140 {value: 0x0018, lo: 0x80, hi: 0x8b},
3141 {value: 0x28c1, lo: 0x8c, hi: 0x8c},
3142 {value: 0x0018, lo: 0x8d, hi: 0xbf},
3143 // Block 0x51, offset 0x2c1
3144 {value: 0x0000, lo: 0x05},
3145 {value: 0x0018, lo: 0x80, hi: 0xb3},
3146 {value: 0x0e66, lo: 0xb4, hi: 0xb4},
3147 {value: 0x292a, lo: 0xb5, hi: 0xb5},
3148 {value: 0x0e86, lo: 0xb6, hi: 0xb6},
3149 {value: 0x0018, lo: 0xb7, hi: 0xbf},
3150 // Block 0x52, offset 0x2c7
3151 {value: 0x0000, lo: 0x03},
3152 {value: 0x0018, lo: 0x80, hi: 0x9b},
3153 {value: 0x2941, lo: 0x9c, hi: 0x9c},
3154 {value: 0x0018, lo: 0x9d, hi: 0xbf},
3155 // Block 0x53, offset 0x2cb
3156 {value: 0x0000, lo: 0x03},
3157 {value: 0x0018, lo: 0x80, hi: 0xb3},
3158 {value: 0x0040, lo: 0xb4, hi: 0xb5},
3159 {value: 0x0018, lo: 0xb6, hi: 0xbf},
3160 // Block 0x54, offset 0x2cf
3161 {value: 0x0000, lo: 0x05},
3162 {value: 0x0018, lo: 0x80, hi: 0x95},
3163 {value: 0x0040, lo: 0x96, hi: 0x97},
3164 {value: 0x0018, lo: 0x98, hi: 0xb9},
3165 {value: 0x0040, lo: 0xba, hi: 0xbc},
3166 {value: 0x0018, lo: 0xbd, hi: 0xbf},
3167 // Block 0x55, offset 0x2d5
3168 {value: 0x0000, lo: 0x06},
3169 {value: 0x0018, lo: 0x80, hi: 0x88},
3170 {value: 0x0040, lo: 0x89, hi: 0x89},
3171 {value: 0x0018, lo: 0x8a, hi: 0x91},
3172 {value: 0x0040, lo: 0x92, hi: 0xab},
3173 {value: 0x0018, lo: 0xac, hi: 0xaf},
3174 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3175 // Block 0x56, offset 0x2dc
3176 {value: 0x0000, lo: 0x05},
3177 {value: 0xe185, lo: 0x80, hi: 0x8f},
3178 {value: 0x03f5, lo: 0x90, hi: 0x9f},
3179 {value: 0x0ea5, lo: 0xa0, hi: 0xae},
3180 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3181 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3182 // Block 0x57, offset 0x2e2
3183 {value: 0x0000, lo: 0x07},
3184 {value: 0x0008, lo: 0x80, hi: 0xa5},
3185 {value: 0x0040, lo: 0xa6, hi: 0xa6},
3186 {value: 0x0008, lo: 0xa7, hi: 0xa7},
3187 {value: 0x0040, lo: 0xa8, hi: 0xac},
3188 {value: 0x0008, lo: 0xad, hi: 0xad},
3189 {value: 0x0040, lo: 0xae, hi: 0xaf},
3190 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3191 // Block 0x58, offset 0x2ea
3192 {value: 0x0000, lo: 0x06},
3193 {value: 0x0008, lo: 0x80, hi: 0xa7},
3194 {value: 0x0040, lo: 0xa8, hi: 0xae},
3195 {value: 0xe075, lo: 0xaf, hi: 0xaf},
3196 {value: 0x0018, lo: 0xb0, hi: 0xb0},
3197 {value: 0x0040, lo: 0xb1, hi: 0xbe},
3198 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
3199 // Block 0x59, offset 0x2f1
3200 {value: 0x0000, lo: 0x0a},
3201 {value: 0x0008, lo: 0x80, hi: 0x96},
3202 {value: 0x0040, lo: 0x97, hi: 0x9f},
3203 {value: 0x0008, lo: 0xa0, hi: 0xa6},
3204 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3205 {value: 0x0008, lo: 0xa8, hi: 0xae},
3206 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3207 {value: 0x0008, lo: 0xb0, hi: 0xb6},
3208 {value: 0x0040, lo: 0xb7, hi: 0xb7},
3209 {value: 0x0008, lo: 0xb8, hi: 0xbe},
3210 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3211 // Block 0x5a, offset 0x2fc
3212 {value: 0x0000, lo: 0x09},
3213 {value: 0x0008, lo: 0x80, hi: 0x86},
3214 {value: 0x0040, lo: 0x87, hi: 0x87},
3215 {value: 0x0008, lo: 0x88, hi: 0x8e},
3216 {value: 0x0040, lo: 0x8f, hi: 0x8f},
3217 {value: 0x0008, lo: 0x90, hi: 0x96},
3218 {value: 0x0040, lo: 0x97, hi: 0x97},
3219 {value: 0x0008, lo: 0x98, hi: 0x9e},
3220 {value: 0x0040, lo: 0x9f, hi: 0x9f},
3221 {value: 0x3308, lo: 0xa0, hi: 0xbf},
3222 // Block 0x5b, offset 0x306
3223 {value: 0x0000, lo: 0x03},
3224 {value: 0x0018, lo: 0x80, hi: 0xae},
3225 {value: 0x0008, lo: 0xaf, hi: 0xaf},
3226 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3227 // Block 0x5c, offset 0x30a
3228 {value: 0x0000, lo: 0x02},
3229 {value: 0x0018, lo: 0x80, hi: 0x84},
3230 {value: 0x0040, lo: 0x85, hi: 0xbf},
3231 // Block 0x5d, offset 0x30d
3232 {value: 0x0000, lo: 0x05},
3233 {value: 0x0018, lo: 0x80, hi: 0x99},
3234 {value: 0x0040, lo: 0x9a, hi: 0x9a},
3235 {value: 0x0018, lo: 0x9b, hi: 0x9e},
3236 {value: 0x0edd, lo: 0x9f, hi: 0x9f},
3237 {value: 0x0018, lo: 0xa0, hi: 0xbf},
3238 // Block 0x5e, offset 0x313
3239 {value: 0x0000, lo: 0x03},
3240 {value: 0x0018, lo: 0x80, hi: 0xb2},
3241 {value: 0x0efd, lo: 0xb3, hi: 0xb3},
3242 {value: 0x0040, lo: 0xb4, hi: 0xbf},
3243 // Block 0x5f, offset 0x317
3244 {value: 0x0020, lo: 0x01},
3245 {value: 0x0f1d, lo: 0x80, hi: 0xbf},
3246 // Block 0x60, offset 0x319
3247 {value: 0x0020, lo: 0x02},
3248 {value: 0x171d, lo: 0x80, hi: 0x8f},
3249 {value: 0x18fd, lo: 0x90, hi: 0xbf},
3250 // Block 0x61, offset 0x31c
3251 {value: 0x0020, lo: 0x01},
3252 {value: 0x1efd, lo: 0x80, hi: 0xbf},
3253 // Block 0x62, offset 0x31e
3254 {value: 0x0000, lo: 0x02},
3255 {value: 0x0040, lo: 0x80, hi: 0x80},
3256 {value: 0x0008, lo: 0x81, hi: 0xbf},
3257 // Block 0x63, offset 0x321
3258 {value: 0x0000, lo: 0x09},
3259 {value: 0x0008, lo: 0x80, hi: 0x96},
3260 {value: 0x0040, lo: 0x97, hi: 0x98},
3261 {value: 0x3308, lo: 0x99, hi: 0x9a},
3262 {value: 0x29e2, lo: 0x9b, hi: 0x9b},
3263 {value: 0x2a0a, lo: 0x9c, hi: 0x9c},
3264 {value: 0x0008, lo: 0x9d, hi: 0x9e},
3265 {value: 0x2a31, lo: 0x9f, hi: 0x9f},
3266 {value: 0x0018, lo: 0xa0, hi: 0xa0},
3267 {value: 0x0008, lo: 0xa1, hi: 0xbf},
3268 // Block 0x64, offset 0x32b
3269 {value: 0x0000, lo: 0x02},
3270 {value: 0x0008, lo: 0x80, hi: 0xbe},
3271 {value: 0x2a69, lo: 0xbf, hi: 0xbf},
3272 // Block 0x65, offset 0x32e
3273 {value: 0x0000, lo: 0x0e},
3274 {value: 0x0040, lo: 0x80, hi: 0x84},
3275 {value: 0x0008, lo: 0x85, hi: 0xad},
3276 {value: 0x0040, lo: 0xae, hi: 0xb0},
3277 {value: 0x2a1d, lo: 0xb1, hi: 0xb1},
3278 {value: 0x2a3d, lo: 0xb2, hi: 0xb2},
3279 {value: 0x2a5d, lo: 0xb3, hi: 0xb3},
3280 {value: 0x2a7d, lo: 0xb4, hi: 0xb4},
3281 {value: 0x2a5d, lo: 0xb5, hi: 0xb5},
3282 {value: 0x2a9d, lo: 0xb6, hi: 0xb6},
3283 {value: 0x2abd, lo: 0xb7, hi: 0xb7},
3284 {value: 0x2add, lo: 0xb8, hi: 0xb9},
3285 {value: 0x2afd, lo: 0xba, hi: 0xbb},
3286 {value: 0x2b1d, lo: 0xbc, hi: 0xbd},
3287 {value: 0x2afd, lo: 0xbe, hi: 0xbf},
3288 // Block 0x66, offset 0x33d
3289 {value: 0x0000, lo: 0x03},
3290 {value: 0x0018, lo: 0x80, hi: 0xa3},
3291 {value: 0x0040, lo: 0xa4, hi: 0xaf},
3292 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3293 // Block 0x67, offset 0x341
3294 {value: 0x0030, lo: 0x04},
3295 {value: 0x2aa2, lo: 0x80, hi: 0x9d},
3296 {value: 0x305a, lo: 0x9e, hi: 0x9e},
3297 {value: 0x0040, lo: 0x9f, hi: 0x9f},
3298 {value: 0x30a2, lo: 0xa0, hi: 0xbf},
3299 // Block 0x68, offset 0x346
3300 {value: 0x0000, lo: 0x02},
3301 {value: 0x0008, lo: 0x80, hi: 0x95},
3302 {value: 0x0040, lo: 0x96, hi: 0xbf},
3303 // Block 0x69, offset 0x349
3304 {value: 0x0000, lo: 0x03},
3305 {value: 0x0008, lo: 0x80, hi: 0x8c},
3306 {value: 0x0040, lo: 0x8d, hi: 0x8f},
3307 {value: 0x0018, lo: 0x90, hi: 0xbf},
3308 // Block 0x6a, offset 0x34d
3309 {value: 0x0000, lo: 0x04},
3310 {value: 0x0018, lo: 0x80, hi: 0x86},
3311 {value: 0x0040, lo: 0x87, hi: 0x8f},
3312 {value: 0x0008, lo: 0x90, hi: 0xbd},
3313 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3314 // Block 0x6b, offset 0x352
3315 {value: 0x0000, lo: 0x04},
3316 {value: 0x0008, lo: 0x80, hi: 0x8c},
3317 {value: 0x0018, lo: 0x8d, hi: 0x8f},
3318 {value: 0x0008, lo: 0x90, hi: 0xab},
3319 {value: 0x0040, lo: 0xac, hi: 0xbf},
3320 // Block 0x6c, offset 0x357
3321 {value: 0x0000, lo: 0x05},
3322 {value: 0x0008, lo: 0x80, hi: 0xa5},
3323 {value: 0x0018, lo: 0xa6, hi: 0xaf},
3324 {value: 0x3308, lo: 0xb0, hi: 0xb1},
3325 {value: 0x0018, lo: 0xb2, hi: 0xb7},
3326 {value: 0x0040, lo: 0xb8, hi: 0xbf},
3327 // Block 0x6d, offset 0x35d
3328 {value: 0x0000, lo: 0x05},
3329 {value: 0x0040, lo: 0x80, hi: 0xb6},
3330 {value: 0x0008, lo: 0xb7, hi: 0xb7},
3331 {value: 0x2009, lo: 0xb8, hi: 0xb8},
3332 {value: 0x6e89, lo: 0xb9, hi: 0xb9},
3333 {value: 0x0008, lo: 0xba, hi: 0xbf},
3334 // Block 0x6e, offset 0x363
3335 {value: 0x0000, lo: 0x0e},
3336 {value: 0x0008, lo: 0x80, hi: 0x81},
3337 {value: 0x3308, lo: 0x82, hi: 0x82},
3338 {value: 0x0008, lo: 0x83, hi: 0x85},
3339 {value: 0x3b08, lo: 0x86, hi: 0x86},
3340 {value: 0x0008, lo: 0x87, hi: 0x8a},
3341 {value: 0x3308, lo: 0x8b, hi: 0x8b},
3342 {value: 0x0008, lo: 0x8c, hi: 0xa2},
3343 {value: 0x3008, lo: 0xa3, hi: 0xa4},
3344 {value: 0x3308, lo: 0xa5, hi: 0xa6},
3345 {value: 0x3008, lo: 0xa7, hi: 0xa7},
3346 {value: 0x0018, lo: 0xa8, hi: 0xab},
3347 {value: 0x0040, lo: 0xac, hi: 0xaf},
3348 {value: 0x0018, lo: 0xb0, hi: 0xb9},
3349 {value: 0x0040, lo: 0xba, hi: 0xbf},
3350 // Block 0x6f, offset 0x372
3351 {value: 0x0000, lo: 0x05},
3352 {value: 0x0208, lo: 0x80, hi: 0xb1},
3353 {value: 0x0108, lo: 0xb2, hi: 0xb2},
3354 {value: 0x0008, lo: 0xb3, hi: 0xb3},
3355 {value: 0x0018, lo: 0xb4, hi: 0xb7},
3356 {value: 0x0040, lo: 0xb8, hi: 0xbf},
3357 // Block 0x70, offset 0x378
3358 {value: 0x0000, lo: 0x03},
3359 {value: 0x3008, lo: 0x80, hi: 0x81},
3360 {value: 0x0008, lo: 0x82, hi: 0xb3},
3361 {value: 0x3008, lo: 0xb4, hi: 0xbf},
3362 // Block 0x71, offset 0x37c
3363 {value: 0x0000, lo: 0x0e},
3364 {value: 0x3008, lo: 0x80, hi: 0x83},
3365 {value: 0x3b08, lo: 0x84, hi: 0x84},
3366 {value: 0x3308, lo: 0x85, hi: 0x85},
3367 {value: 0x0040, lo: 0x86, hi: 0x8d},
3368 {value: 0x0018, lo: 0x8e, hi: 0x8f},
3369 {value: 0x0008, lo: 0x90, hi: 0x99},
3370 {value: 0x0040, lo: 0x9a, hi: 0x9f},
3371 {value: 0x3308, lo: 0xa0, hi: 0xb1},
3372 {value: 0x0008, lo: 0xb2, hi: 0xb7},
3373 {value: 0x0018, lo: 0xb8, hi: 0xba},
3374 {value: 0x0008, lo: 0xbb, hi: 0xbb},
3375 {value: 0x0018, lo: 0xbc, hi: 0xbc},
3376 {value: 0x0008, lo: 0xbd, hi: 0xbd},
3377 {value: 0x0040, lo: 0xbe, hi: 0xbf},
3378 // Block 0x72, offset 0x38b
3379 {value: 0x0000, lo: 0x04},
3380 {value: 0x0008, lo: 0x80, hi: 0xa5},
3381 {value: 0x3308, lo: 0xa6, hi: 0xad},
3382 {value: 0x0018, lo: 0xae, hi: 0xaf},
3383 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3384 // Block 0x73, offset 0x390
3385 {value: 0x0000, lo: 0x07},
3386 {value: 0x0008, lo: 0x80, hi: 0x86},
3387 {value: 0x3308, lo: 0x87, hi: 0x91},
3388 {value: 0x3008, lo: 0x92, hi: 0x92},
3389 {value: 0x3808, lo: 0x93, hi: 0x93},
3390 {value: 0x0040, lo: 0x94, hi: 0x9e},
3391 {value: 0x0018, lo: 0x9f, hi: 0xbc},
3392 {value: 0x0040, lo: 0xbd, hi: 0xbf},
3393 // Block 0x74, offset 0x398
3394 {value: 0x0000, lo: 0x09},
3395 {value: 0x3308, lo: 0x80, hi: 0x82},
3396 {value: 0x3008, lo: 0x83, hi: 0x83},
3397 {value: 0x0008, lo: 0x84, hi: 0xb2},
3398 {value: 0x3308, lo: 0xb3, hi: 0xb3},
3399 {value: 0x3008, lo: 0xb4, hi: 0xb5},
3400 {value: 0x3308, lo: 0xb6, hi: 0xb9},
3401 {value: 0x3008, lo: 0xba, hi: 0xbb},
3402 {value: 0x3308, lo: 0xbc, hi: 0xbc},
3403 {value: 0x3008, lo: 0xbd, hi: 0xbf},
3404 // Block 0x75, offset 0x3a2
3405 {value: 0x0000, lo: 0x0a},
3406 {value: 0x3808, lo: 0x80, hi: 0x80},
3407 {value: 0x0018, lo: 0x81, hi: 0x8d},
3408 {value: 0x0040, lo: 0x8e, hi: 0x8e},
3409 {value: 0x0008, lo: 0x8f, hi: 0x99},
3410 {value: 0x0040, lo: 0x9a, hi: 0x9d},
3411 {value: 0x0018, lo: 0x9e, hi: 0x9f},
3412 {value: 0x0008, lo: 0xa0, hi: 0xa4},
3413 {value: 0x3308, lo: 0xa5, hi: 0xa5},
3414 {value: 0x0008, lo: 0xa6, hi: 0xbe},
3415 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3416 // Block 0x76, offset 0x3ad
3417 {value: 0x0000, lo: 0x07},
3418 {value: 0x0008, lo: 0x80, hi: 0xa8},
3419 {value: 0x3308, lo: 0xa9, hi: 0xae},
3420 {value: 0x3008, lo: 0xaf, hi: 0xb0},
3421 {value: 0x3308, lo: 0xb1, hi: 0xb2},
3422 {value: 0x3008, lo: 0xb3, hi: 0xb4},
3423 {value: 0x3308, lo: 0xb5, hi: 0xb6},
3424 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3425 // Block 0x77, offset 0x3b5
3426 {value: 0x0000, lo: 0x10},
3427 {value: 0x0008, lo: 0x80, hi: 0x82},
3428 {value: 0x3308, lo: 0x83, hi: 0x83},
3429 {value: 0x0008, lo: 0x84, hi: 0x8b},
3430 {value: 0x3308, lo: 0x8c, hi: 0x8c},
3431 {value: 0x3008, lo: 0x8d, hi: 0x8d},
3432 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3433 {value: 0x0008, lo: 0x90, hi: 0x99},
3434 {value: 0x0040, lo: 0x9a, hi: 0x9b},
3435 {value: 0x0018, lo: 0x9c, hi: 0x9f},
3436 {value: 0x0008, lo: 0xa0, hi: 0xb6},
3437 {value: 0x0018, lo: 0xb7, hi: 0xb9},
3438 {value: 0x0008, lo: 0xba, hi: 0xba},
3439 {value: 0x3008, lo: 0xbb, hi: 0xbb},
3440 {value: 0x3308, lo: 0xbc, hi: 0xbc},
3441 {value: 0x3008, lo: 0xbd, hi: 0xbd},
3442 {value: 0x0008, lo: 0xbe, hi: 0xbf},
3443 // Block 0x78, offset 0x3c6
3444 {value: 0x0000, lo: 0x08},
3445 {value: 0x0008, lo: 0x80, hi: 0xaf},
3446 {value: 0x3308, lo: 0xb0, hi: 0xb0},
3447 {value: 0x0008, lo: 0xb1, hi: 0xb1},
3448 {value: 0x3308, lo: 0xb2, hi: 0xb4},
3449 {value: 0x0008, lo: 0xb5, hi: 0xb6},
3450 {value: 0x3308, lo: 0xb7, hi: 0xb8},
3451 {value: 0x0008, lo: 0xb9, hi: 0xbd},
3452 {value: 0x3308, lo: 0xbe, hi: 0xbf},
3453 // Block 0x79, offset 0x3cf
3454 {value: 0x0000, lo: 0x0f},
3455 {value: 0x0008, lo: 0x80, hi: 0x80},
3456 {value: 0x3308, lo: 0x81, hi: 0x81},
3457 {value: 0x0008, lo: 0x82, hi: 0x82},
3458 {value: 0x0040, lo: 0x83, hi: 0x9a},
3459 {value: 0x0008, lo: 0x9b, hi: 0x9d},
3460 {value: 0x0018, lo: 0x9e, hi: 0x9f},
3461 {value: 0x0008, lo: 0xa0, hi: 0xaa},
3462 {value: 0x3008, lo: 0xab, hi: 0xab},
3463 {value: 0x3308, lo: 0xac, hi: 0xad},
3464 {value: 0x3008, lo: 0xae, hi: 0xaf},
3465 {value: 0x0018, lo: 0xb0, hi: 0xb1},
3466 {value: 0x0008, lo: 0xb2, hi: 0xb4},
3467 {value: 0x3008, lo: 0xb5, hi: 0xb5},
3468 {value: 0x3b08, lo: 0xb6, hi: 0xb6},
3469 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3470 // Block 0x7a, offset 0x3df
3471 {value: 0x0000, lo: 0x0c},
3472 {value: 0x0040, lo: 0x80, hi: 0x80},
3473 {value: 0x0008, lo: 0x81, hi: 0x86},
3474 {value: 0x0040, lo: 0x87, hi: 0x88},
3475 {value: 0x0008, lo: 0x89, hi: 0x8e},
3476 {value: 0x0040, lo: 0x8f, hi: 0x90},
3477 {value: 0x0008, lo: 0x91, hi: 0x96},
3478 {value: 0x0040, lo: 0x97, hi: 0x9f},
3479 {value: 0x0008, lo: 0xa0, hi: 0xa6},
3480 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3481 {value: 0x0008, lo: 0xa8, hi: 0xae},
3482 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3483 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3484 // Block 0x7b, offset 0x3ec
3485 {value: 0x0000, lo: 0x09},
3486 {value: 0x0008, lo: 0x80, hi: 0x9a},
3487 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3488 {value: 0x4465, lo: 0x9c, hi: 0x9c},
3489 {value: 0x447d, lo: 0x9d, hi: 0x9d},
3490 {value: 0x2971, lo: 0x9e, hi: 0x9e},
3491 {value: 0xe06d, lo: 0x9f, hi: 0x9f},
3492 {value: 0x0008, lo: 0xa0, hi: 0xa5},
3493 {value: 0x0040, lo: 0xa6, hi: 0xaf},
3494 {value: 0x4495, lo: 0xb0, hi: 0xbf},
3495 // Block 0x7c, offset 0x3f6
3496 {value: 0x0000, lo: 0x04},
3497 {value: 0x44b5, lo: 0x80, hi: 0x8f},
3498 {value: 0x44d5, lo: 0x90, hi: 0x9f},
3499 {value: 0x44f5, lo: 0xa0, hi: 0xaf},
3500 {value: 0x44d5, lo: 0xb0, hi: 0xbf},
3501 // Block 0x7d, offset 0x3fb
3502 {value: 0x0000, lo: 0x0c},
3503 {value: 0x0008, lo: 0x80, hi: 0xa2},
3504 {value: 0x3008, lo: 0xa3, hi: 0xa4},
3505 {value: 0x3308, lo: 0xa5, hi: 0xa5},
3506 {value: 0x3008, lo: 0xa6, hi: 0xa7},
3507 {value: 0x3308, lo: 0xa8, hi: 0xa8},
3508 {value: 0x3008, lo: 0xa9, hi: 0xaa},
3509 {value: 0x0018, lo: 0xab, hi: 0xab},
3510 {value: 0x3008, lo: 0xac, hi: 0xac},
3511 {value: 0x3b08, lo: 0xad, hi: 0xad},
3512 {value: 0x0040, lo: 0xae, hi: 0xaf},
3513 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3514 {value: 0x0040, lo: 0xba, hi: 0xbf},
3515 // Block 0x7e, offset 0x408
3516 {value: 0x0000, lo: 0x03},
3517 {value: 0x0008, lo: 0x80, hi: 0xa3},
3518 {value: 0x0040, lo: 0xa4, hi: 0xaf},
3519 {value: 0x0018, lo: 0xb0, hi: 0xbf},
3520 // Block 0x7f, offset 0x40c
3521 {value: 0x0000, lo: 0x04},
3522 {value: 0x0018, lo: 0x80, hi: 0x86},
3523 {value: 0x0040, lo: 0x87, hi: 0x8a},
3524 {value: 0x0018, lo: 0x8b, hi: 0xbb},
3525 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3526 // Block 0x80, offset 0x411
3527 {value: 0x0020, lo: 0x01},
3528 {value: 0x4515, lo: 0x80, hi: 0xbf},
3529 // Block 0x81, offset 0x413
3530 {value: 0x0020, lo: 0x03},
3531 {value: 0x4d15, lo: 0x80, hi: 0x94},
3532 {value: 0x4ad5, lo: 0x95, hi: 0x95},
3533 {value: 0x4fb5, lo: 0x96, hi: 0xbf},
3534 // Block 0x82, offset 0x417
3535 {value: 0x0020, lo: 0x01},
3536 {value: 0x54f5, lo: 0x80, hi: 0xbf},
3537 // Block 0x83, offset 0x419
3538 {value: 0x0020, lo: 0x03},
3539 {value: 0x5cf5, lo: 0x80, hi: 0x84},
3540 {value: 0x5655, lo: 0x85, hi: 0x85},
3541 {value: 0x5d95, lo: 0x86, hi: 0xbf},
3542 // Block 0x84, offset 0x41d
3543 {value: 0x0020, lo: 0x08},
3544 {value: 0x6b55, lo: 0x80, hi: 0x8f},
3545 {value: 0x6d15, lo: 0x90, hi: 0x90},
3546 {value: 0x6d55, lo: 0x91, hi: 0xab},
3547 {value: 0x6ea1, lo: 0xac, hi: 0xac},
3548 {value: 0x70b5, lo: 0xad, hi: 0xad},
3549 {value: 0x0040, lo: 0xae, hi: 0xae},
3550 {value: 0x0040, lo: 0xaf, hi: 0xaf},
3551 {value: 0x70d5, lo: 0xb0, hi: 0xbf},
3552 // Block 0x85, offset 0x426
3553 {value: 0x0020, lo: 0x05},
3554 {value: 0x72d5, lo: 0x80, hi: 0xad},
3555 {value: 0x6535, lo: 0xae, hi: 0xae},
3556 {value: 0x7895, lo: 0xaf, hi: 0xb5},
3557 {value: 0x6f55, lo: 0xb6, hi: 0xb6},
3558 {value: 0x7975, lo: 0xb7, hi: 0xbf},
3559 // Block 0x86, offset 0x42c
3560 {value: 0x0028, lo: 0x03},
3561 {value: 0x7c21, lo: 0x80, hi: 0x82},
3562 {value: 0x7be1, lo: 0x83, hi: 0x83},
3563 {value: 0x7c99, lo: 0x84, hi: 0xbf},
3564 // Block 0x87, offset 0x430
3565 {value: 0x0038, lo: 0x0f},
3566 {value: 0x9db1, lo: 0x80, hi: 0x83},
3567 {value: 0x9e59, lo: 0x84, hi: 0x85},
3568 {value: 0x9e91, lo: 0x86, hi: 0x87},
3569 {value: 0x9ec9, lo: 0x88, hi: 0x8f},
3570 {value: 0x0040, lo: 0x90, hi: 0x90},
3571 {value: 0x0040, lo: 0x91, hi: 0x91},
3572 {value: 0xa089, lo: 0x92, hi: 0x97},
3573 {value: 0xa1a1, lo: 0x98, hi: 0x9c},
3574 {value: 0xa281, lo: 0x9d, hi: 0xb3},
3575 {value: 0x9d41, lo: 0xb4, hi: 0xb4},
3576 {value: 0x9db1, lo: 0xb5, hi: 0xb5},
3577 {value: 0xa789, lo: 0xb6, hi: 0xbb},
3578 {value: 0xa869, lo: 0xbc, hi: 0xbc},
3579 {value: 0xa7f9, lo: 0xbd, hi: 0xbd},
3580 {value: 0xa8d9, lo: 0xbe, hi: 0xbf},
3581 // Block 0x88, offset 0x440
3582 {value: 0x0000, lo: 0x09},
3583 {value: 0x0008, lo: 0x80, hi: 0x8b},
3584 {value: 0x0040, lo: 0x8c, hi: 0x8c},
3585 {value: 0x0008, lo: 0x8d, hi: 0xa6},
3586 {value: 0x0040, lo: 0xa7, hi: 0xa7},
3587 {value: 0x0008, lo: 0xa8, hi: 0xba},
3588 {value: 0x0040, lo: 0xbb, hi: 0xbb},
3589 {value: 0x0008, lo: 0xbc, hi: 0xbd},
3590 {value: 0x0040, lo: 0xbe, hi: 0xbe},
3591 {value: 0x0008, lo: 0xbf, hi: 0xbf},
3592 // Block 0x89, offset 0x44a
3593 {value: 0x0000, lo: 0x04},
3594 {value: 0x0008, lo: 0x80, hi: 0x8d},
3595 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3596 {value: 0x0008, lo: 0x90, hi: 0x9d},
3597 {value: 0x0040, lo: 0x9e, hi: 0xbf},
3598 // Block 0x8a, offset 0x44f
3599 {value: 0x0000, lo: 0x02},
3600 {value: 0x0008, lo: 0x80, hi: 0xba},
3601 {value: 0x0040, lo: 0xbb, hi: 0xbf},
3602 // Block 0x8b, offset 0x452
3603 {value: 0x0000, lo: 0x05},
3604 {value: 0x0018, lo: 0x80, hi: 0x82},
3605 {value: 0x0040, lo: 0x83, hi: 0x86},
3606 {value: 0x0018, lo: 0x87, hi: 0xb3},
3607 {value: 0x0040, lo: 0xb4, hi: 0xb6},
3608 {value: 0x0018, lo: 0xb7, hi: 0xbf},
3609 // Block 0x8c, offset 0x458
3610 {value: 0x0000, lo: 0x06},
3611 {value: 0x0018, lo: 0x80, hi: 0x8e},
3612 {value: 0x0040, lo: 0x8f, hi: 0x8f},
3613 {value: 0x0018, lo: 0x90, hi: 0x9b},
3614 {value: 0x0040, lo: 0x9c, hi: 0x9f},
3615 {value: 0x0018, lo: 0xa0, hi: 0xa0},
3616 {value: 0x0040, lo: 0xa1, hi: 0xbf},
3617 // Block 0x8d, offset 0x45f
3618 {value: 0x0000, lo: 0x04},
3619 {value: 0x0040, lo: 0x80, hi: 0x8f},
3620 {value: 0x0018, lo: 0x90, hi: 0xbc},
3621 {value: 0x3308, lo: 0xbd, hi: 0xbd},
3622 {value: 0x0040, lo: 0xbe, hi: 0xbf},
3623 // Block 0x8e, offset 0x464
3624 {value: 0x0000, lo: 0x03},
3625 {value: 0x0008, lo: 0x80, hi: 0x9c},
3626 {value: 0x0040, lo: 0x9d, hi: 0x9f},
3627 {value: 0x0008, lo: 0xa0, hi: 0xbf},
3628 // Block 0x8f, offset 0x468
3629 {value: 0x0000, lo: 0x05},
3630 {value: 0x0008, lo: 0x80, hi: 0x90},
3631 {value: 0x0040, lo: 0x91, hi: 0x9f},
3632 {value: 0x3308, lo: 0xa0, hi: 0xa0},
3633 {value: 0x0018, lo: 0xa1, hi: 0xbb},
3634 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3635 // Block 0x90, offset 0x46e
3636 {value: 0x0000, lo: 0x04},
3637 {value: 0x0008, lo: 0x80, hi: 0x9f},
3638 {value: 0x0018, lo: 0xa0, hi: 0xa3},
3639 {value: 0x0040, lo: 0xa4, hi: 0xaf},
3640 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3641 // Block 0x91, offset 0x473
3642 {value: 0x0000, lo: 0x08},
3643 {value: 0x0008, lo: 0x80, hi: 0x80},
3644 {value: 0x0018, lo: 0x81, hi: 0x81},
3645 {value: 0x0008, lo: 0x82, hi: 0x89},
3646 {value: 0x0018, lo: 0x8a, hi: 0x8a},
3647 {value: 0x0040, lo: 0x8b, hi: 0x8f},
3648 {value: 0x0008, lo: 0x90, hi: 0xb5},
3649 {value: 0x3308, lo: 0xb6, hi: 0xba},
3650 {value: 0x0040, lo: 0xbb, hi: 0xbf},
3651 // Block 0x92, offset 0x47c
3652 {value: 0x0000, lo: 0x04},
3653 {value: 0x0008, lo: 0x80, hi: 0x9d},
3654 {value: 0x0040, lo: 0x9e, hi: 0x9e},
3655 {value: 0x0018, lo: 0x9f, hi: 0x9f},
3656 {value: 0x0008, lo: 0xa0, hi: 0xbf},
3657 // Block 0x93, offset 0x481
3658 {value: 0x0000, lo: 0x05},
3659 {value: 0x0008, lo: 0x80, hi: 0x83},
3660 {value: 0x0040, lo: 0x84, hi: 0x87},
3661 {value: 0x0008, lo: 0x88, hi: 0x8f},
3662 {value: 0x0018, lo: 0x90, hi: 0x95},
3663 {value: 0x0040, lo: 0x96, hi: 0xbf},
3664 // Block 0x94, offset 0x487
3665 {value: 0x0000, lo: 0x06},
3666 {value: 0xe145, lo: 0x80, hi: 0x87},
3667 {value: 0xe1c5, lo: 0x88, hi: 0x8f},
3668 {value: 0xe145, lo: 0x90, hi: 0x97},
3669 {value: 0x8ad5, lo: 0x98, hi: 0x9f},
3670 {value: 0x8aed, lo: 0xa0, hi: 0xa7},
3671 {value: 0x0008, lo: 0xa8, hi: 0xbf},
3672 // Block 0x95, offset 0x48e
3673 {value: 0x0000, lo: 0x06},
3674 {value: 0x0008, lo: 0x80, hi: 0x9d},
3675 {value: 0x0040, lo: 0x9e, hi: 0x9f},
3676 {value: 0x0008, lo: 0xa0, hi: 0xa9},
3677 {value: 0x0040, lo: 0xaa, hi: 0xaf},
3678 {value: 0x8aed, lo: 0xb0, hi: 0xb7},
3679 {value: 0x8ad5, lo: 0xb8, hi: 0xbf},
3680 // Block 0x96, offset 0x495
3681 {value: 0x0000, lo: 0x06},
3682 {value: 0xe145, lo: 0x80, hi: 0x87},
3683 {value: 0xe1c5, lo: 0x88, hi: 0x8f},
3684 {value: 0xe145, lo: 0x90, hi: 0x93},
3685 {value: 0x0040, lo: 0x94, hi: 0x97},
3686 {value: 0x0008, lo: 0x98, hi: 0xbb},
3687 {value: 0x0040, lo: 0xbc, hi: 0xbf},
3688 // Block 0x97, offset 0x49c
3689 {value: 0x0000, lo: 0x03},
3690 {value: 0x0008, lo: 0x80, hi: 0xa7},
3691 {value: 0x0040, lo: 0xa8, hi: 0xaf},
3692 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3693 // Block 0x98, offset 0x4a0
3694 {value: 0x0000, lo: 0x04},
3695 {value: 0x0008, lo: 0x80, hi: 0xa3},
3696 {value: 0x0040, lo: 0xa4, hi: 0xae},
3697 {value: 0x0018, lo: 0xaf, hi: 0xaf},
3698 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3699 // Block 0x99, offset 0x4a5
3700 {value: 0x0000, lo: 0x02},
3701 {value: 0x0008, lo: 0x80, hi: 0xb6},
3702 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3703 // Block 0x9a, offset 0x4a8
3704 {value: 0x0000, lo: 0x04},
3705 {value: 0x0008, lo: 0x80, hi: 0x95},
3706 {value: 0x0040, lo: 0x96, hi: 0x9f},
3707 {value: 0x0008, lo: 0xa0, hi: 0xa7},
3708 {value: 0x0040, lo: 0xa8, hi: 0xbf},
3709 // Block 0x9b, offset 0x4ad
3710 {value: 0x0000, lo: 0x0b},
3711 {value: 0x0808, lo: 0x80, hi: 0x85},
3712 {value: 0x0040, lo: 0x86, hi: 0x87},
3713 {value: 0x0808, lo: 0x88, hi: 0x88},
3714 {value: 0x0040, lo: 0x89, hi: 0x89},
3715 {value: 0x0808, lo: 0x8a, hi: 0xb5},
3716 {value: 0x0040, lo: 0xb6, hi: 0xb6},
3717 {value: 0x0808, lo: 0xb7, hi: 0xb8},
3718 {value: 0x0040, lo: 0xb9, hi: 0xbb},
3719 {value: 0x0808, lo: 0xbc, hi: 0xbc},
3720 {value: 0x0040, lo: 0xbd, hi: 0xbe},
3721 {value: 0x0808, lo: 0xbf, hi: 0xbf},
3722 // Block 0x9c, offset 0x4b9
3723 {value: 0x0000, lo: 0x05},
3724 {value: 0x0808, lo: 0x80, hi: 0x95},
3725 {value: 0x0040, lo: 0x96, hi: 0x96},
3726 {value: 0x0818, lo: 0x97, hi: 0x9f},
3727 {value: 0x0808, lo: 0xa0, hi: 0xb6},
3728 {value: 0x0818, lo: 0xb7, hi: 0xbf},
3729 // Block 0x9d, offset 0x4bf
3730 {value: 0x0000, lo: 0x04},
3731 {value: 0x0808, lo: 0x80, hi: 0x9e},
3732 {value: 0x0040, lo: 0x9f, hi: 0xa6},
3733 {value: 0x0818, lo: 0xa7, hi: 0xaf},
3734 {value: 0x0040, lo: 0xb0, hi: 0xbf},
3735 // Block 0x9e, offset 0x4c4
3736 {value: 0x0000, lo: 0x06},
3737 {value: 0x0040, lo: 0x80, hi: 0x9f},
3738 {value: 0x0808, lo: 0xa0, hi: 0xb2},
3739 {value: 0x0040, lo: 0xb3, hi: 0xb3},
3740 {value: 0x0808, lo: 0xb4, hi: 0xb5},
3741 {value: 0x0040, lo: 0xb6, hi: 0xba},
3742 {value: 0x0818, lo: 0xbb, hi: 0xbf},
3743 // Block 0x9f, offset 0x4cb
3744 {value: 0x0000, lo: 0x07},
3745 {value: 0x0808, lo: 0x80, hi: 0x95},
3746 {value: 0x0818, lo: 0x96, hi: 0x9b},
3747 {value: 0x0040, lo: 0x9c, hi: 0x9e},
3748 {value: 0x0018, lo: 0x9f, hi: 0x9f},
3749 {value: 0x0808, lo: 0xa0, hi: 0xb9},
3750 {value: 0x0040, lo: 0xba, hi: 0xbe},
3751 {value: 0x0818, lo: 0xbf, hi: 0xbf},
3752 // Block 0xa0, offset 0x4d3
3753 {value: 0x0000, lo: 0x04},
3754 {value: 0x0808, lo: 0x80, hi: 0xb7},
3755 {value: 0x0040, lo: 0xb8, hi: 0xbb},
3756 {value: 0x0818, lo: 0xbc, hi: 0xbd},
3757 {value: 0x0808, lo: 0xbe, hi: 0xbf},
3758 // Block 0xa1, offset 0x4d8
3759 {value: 0x0000, lo: 0x03},
3760 {value: 0x0818, lo: 0x80, hi: 0x8f},
3761 {value: 0x0040, lo: 0x90, hi: 0x91},
3762 {value: 0x0818, lo: 0x92, hi: 0xbf},
3763 // Block 0xa2, offset 0x4dc
3764 {value: 0x0000, lo: 0x0f},
3765 {value: 0x0808, lo: 0x80, hi: 0x80},
3766 {value: 0x3308, lo: 0x81, hi: 0x83},
3767 {value: 0x0040, lo: 0x84, hi: 0x84},
3768 {value: 0x3308, lo: 0x85, hi: 0x86},
3769 {value: 0x0040, lo: 0x87, hi: 0x8b},
3770 {value: 0x3308, lo: 0x8c, hi: 0x8f},
3771 {value: 0x0808, lo: 0x90, hi: 0x93},
3772 {value: 0x0040, lo: 0x94, hi: 0x94},
3773 {value: 0x0808, lo: 0x95, hi: 0x97},
3774 {value: 0x0040, lo: 0x98, hi: 0x98},
3775 {value: 0x0808, lo: 0x99, hi: 0xb3},
3776 {value: 0x0040, lo: 0xb4, hi: 0xb7},
3777 {value: 0x3308, lo: 0xb8, hi: 0xba},
3778 {value: 0x0040, lo: 0xbb, hi: 0xbe},
3779 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
3780 // Block 0xa3, offset 0x4ec
3781 {value: 0x0000, lo: 0x06},
3782 {value: 0x0818, lo: 0x80, hi: 0x87},
3783 {value: 0x0040, lo: 0x88, hi: 0x8f},
3784 {value: 0x0818, lo: 0x90, hi: 0x98},
3785 {value: 0x0040, lo: 0x99, hi: 0x9f},
3786 {value: 0x0808, lo: 0xa0, hi: 0xbc},
3787 {value: 0x0818, lo: 0xbd, hi: 0xbf},
3788 // Block 0xa4, offset 0x4f3
3789 {value: 0x0000, lo: 0x03},
3790 {value: 0x0808, lo: 0x80, hi: 0x9c},
3791 {value: 0x0818, lo: 0x9d, hi: 0x9f},
3792 {value: 0x0040, lo: 0xa0, hi: 0xbf},
3793 // Block 0xa5, offset 0x4f7
3794 {value: 0x0000, lo: 0x03},
3795 {value: 0x0808, lo: 0x80, hi: 0xb5},
3796 {value: 0x0040, lo: 0xb6, hi: 0xb8},
3797 {value: 0x0018, lo: 0xb9, hi: 0xbf},
3798 // Block 0xa6, offset 0x4fb
3799 {value: 0x0000, lo: 0x06},
3800 {value: 0x0808, lo: 0x80, hi: 0x95},
3801 {value: 0x0040, lo: 0x96, hi: 0x97},
3802 {value: 0x0818, lo: 0x98, hi: 0x9f},
3803 {value: 0x0808, lo: 0xa0, hi: 0xb2},
3804 {value: 0x0040, lo: 0xb3, hi: 0xb7},
3805 {value: 0x0818, lo: 0xb8, hi: 0xbf},
3806 // Block 0xa7, offset 0x502
3807 {value: 0x0000, lo: 0x01},
3808 {value: 0x0808, lo: 0x80, hi: 0xbf},
3809 // Block 0xa8, offset 0x504
3810 {value: 0x0000, lo: 0x02},
3811 {value: 0x0808, lo: 0x80, hi: 0x88},
3812 {value: 0x0040, lo: 0x89, hi: 0xbf},
3813 // Block 0xa9, offset 0x507
3814 {value: 0x0000, lo: 0x02},
3815 {value: 0x03dd, lo: 0x80, hi: 0xb2},
3816 {value: 0x0040, lo: 0xb3, hi: 0xbf},
3817 // Block 0xaa, offset 0x50a
3818 {value: 0x0000, lo: 0x03},
3819 {value: 0x0808, lo: 0x80, hi: 0xb2},
3820 {value: 0x0040, lo: 0xb3, hi: 0xb9},
3821 {value: 0x0818, lo: 0xba, hi: 0xbf},
3822 // Block 0xab, offset 0x50e
3823 {value: 0x0000, lo: 0x03},
3824 {value: 0x0040, lo: 0x80, hi: 0x9f},
3825 {value: 0x0818, lo: 0xa0, hi: 0xbe},
3826 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3827 // Block 0xac, offset 0x512
3828 {value: 0x0000, lo: 0x05},
3829 {value: 0x3008, lo: 0x80, hi: 0x80},
3830 {value: 0x3308, lo: 0x81, hi: 0x81},
3831 {value: 0x3008, lo: 0x82, hi: 0x82},
3832 {value: 0x0008, lo: 0x83, hi: 0xb7},
3833 {value: 0x3308, lo: 0xb8, hi: 0xbf},
3834 // Block 0xad, offset 0x518
3835 {value: 0x0000, lo: 0x08},
3836 {value: 0x3308, lo: 0x80, hi: 0x85},
3837 {value: 0x3b08, lo: 0x86, hi: 0x86},
3838 {value: 0x0018, lo: 0x87, hi: 0x8d},
3839 {value: 0x0040, lo: 0x8e, hi: 0x91},
3840 {value: 0x0018, lo: 0x92, hi: 0xa5},
3841 {value: 0x0008, lo: 0xa6, hi: 0xaf},
3842 {value: 0x0040, lo: 0xb0, hi: 0xbe},
3843 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
3844 // Block 0xae, offset 0x521
3845 {value: 0x0000, lo: 0x0b},
3846 {value: 0x3308, lo: 0x80, hi: 0x81},
3847 {value: 0x3008, lo: 0x82, hi: 0x82},
3848 {value: 0x0008, lo: 0x83, hi: 0xaf},
3849 {value: 0x3008, lo: 0xb0, hi: 0xb2},
3850 {value: 0x3308, lo: 0xb3, hi: 0xb6},
3851 {value: 0x3008, lo: 0xb7, hi: 0xb8},
3852 {value: 0x3b08, lo: 0xb9, hi: 0xb9},
3853 {value: 0x3308, lo: 0xba, hi: 0xba},
3854 {value: 0x0018, lo: 0xbb, hi: 0xbc},
3855 {value: 0x0340, lo: 0xbd, hi: 0xbd},
3856 {value: 0x0018, lo: 0xbe, hi: 0xbf},
3857 // Block 0xaf, offset 0x52d
3858 {value: 0x0000, lo: 0x06},
3859 {value: 0x0018, lo: 0x80, hi: 0x81},
3860 {value: 0x0040, lo: 0x82, hi: 0x8f},
3861 {value: 0x0008, lo: 0x90, hi: 0xa8},
3862 {value: 0x0040, lo: 0xa9, hi: 0xaf},
3863 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3864 {value: 0x0040, lo: 0xba, hi: 0xbf},
3865 // Block 0xb0, offset 0x534
3866 {value: 0x0000, lo: 0x08},
3867 {value: 0x3308, lo: 0x80, hi: 0x82},
3868 {value: 0x0008, lo: 0x83, hi: 0xa6},
3869 {value: 0x3308, lo: 0xa7, hi: 0xab},
3870 {value: 0x3008, lo: 0xac, hi: 0xac},
3871 {value: 0x3308, lo: 0xad, hi: 0xb2},
3872 {value: 0x3b08, lo: 0xb3, hi: 0xb4},
3873 {value: 0x0040, lo: 0xb5, hi: 0xb5},
3874 {value: 0x0008, lo: 0xb6, hi: 0xbf},
3875 // Block 0xb1, offset 0x53d
3876 {value: 0x0000, lo: 0x07},
3877 {value: 0x0018, lo: 0x80, hi: 0x83},
3878 {value: 0x0040, lo: 0x84, hi: 0x8f},
3879 {value: 0x0008, lo: 0x90, hi: 0xb2},
3880 {value: 0x3308, lo: 0xb3, hi: 0xb3},
3881 {value: 0x0018, lo: 0xb4, hi: 0xb5},
3882 {value: 0x0008, lo: 0xb6, hi: 0xb6},
3883 {value: 0x0040, lo: 0xb7, hi: 0xbf},
3884 // Block 0xb2, offset 0x545
3885 {value: 0x0000, lo: 0x06},
3886 {value: 0x3308, lo: 0x80, hi: 0x81},
3887 {value: 0x3008, lo: 0x82, hi: 0x82},
3888 {value: 0x0008, lo: 0x83, hi: 0xb2},
3889 {value: 0x3008, lo: 0xb3, hi: 0xb5},
3890 {value: 0x3308, lo: 0xb6, hi: 0xbe},
3891 {value: 0x3008, lo: 0xbf, hi: 0xbf},
3892 // Block 0xb3, offset 0x54c
3893 {value: 0x0000, lo: 0x0d},
3894 {value: 0x3808, lo: 0x80, hi: 0x80},
3895 {value: 0x0008, lo: 0x81, hi: 0x84},
3896 {value: 0x0018, lo: 0x85, hi: 0x89},
3897 {value: 0x3308, lo: 0x8a, hi: 0x8c},
3898 {value: 0x0018, lo: 0x8d, hi: 0x8d},
3899 {value: 0x0040, lo: 0x8e, hi: 0x8f},
3900 {value: 0x0008, lo: 0x90, hi: 0x9a},
3901 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3902 {value: 0x0008, lo: 0x9c, hi: 0x9c},
3903 {value: 0x0018, lo: 0x9d, hi: 0x9f},
3904 {value: 0x0040, lo: 0xa0, hi: 0xa0},
3905 {value: 0x0018, lo: 0xa1, hi: 0xb4},
3906 {value: 0x0040, lo: 0xb5, hi: 0xbf},
3907 // Block 0xb4, offset 0x55a
3908 {value: 0x0000, lo: 0x0c},
3909 {value: 0x0008, lo: 0x80, hi: 0x91},
3910 {value: 0x0040, lo: 0x92, hi: 0x92},
3911 {value: 0x0008, lo: 0x93, hi: 0xab},
3912 {value: 0x3008, lo: 0xac, hi: 0xae},
3913 {value: 0x3308, lo: 0xaf, hi: 0xb1},
3914 {value: 0x3008, lo: 0xb2, hi: 0xb3},
3915 {value: 0x3308, lo: 0xb4, hi: 0xb4},
3916 {value: 0x3808, lo: 0xb5, hi: 0xb5},
3917 {value: 0x3308, lo: 0xb6, hi: 0xb7},
3918 {value: 0x0018, lo: 0xb8, hi: 0xbd},
3919 {value: 0x3308, lo: 0xbe, hi: 0xbe},
3920 {value: 0x0040, lo: 0xbf, hi: 0xbf},
3921 // Block 0xb5, offset 0x567
3922 {value: 0x0000, lo: 0x0c},
3923 {value: 0x0008, lo: 0x80, hi: 0x86},
3924 {value: 0x0040, lo: 0x87, hi: 0x87},
3925 {value: 0x0008, lo: 0x88, hi: 0x88},
3926 {value: 0x0040, lo: 0x89, hi: 0x89},
3927 {value: 0x0008, lo: 0x8a, hi: 0x8d},
3928 {value: 0x0040, lo: 0x8e, hi: 0x8e},
3929 {value: 0x0008, lo: 0x8f, hi: 0x9d},
3930 {value: 0x0040, lo: 0x9e, hi: 0x9e},
3931 {value: 0x0008, lo: 0x9f, hi: 0xa8},
3932 {value: 0x0018, lo: 0xa9, hi: 0xa9},
3933 {value: 0x0040, lo: 0xaa, hi: 0xaf},
3934 {value: 0x0008, lo: 0xb0, hi: 0xbf},
3935 // Block 0xb6, offset 0x574
3936 {value: 0x0000, lo: 0x08},
3937 {value: 0x0008, lo: 0x80, hi: 0x9e},
3938 {value: 0x3308, lo: 0x9f, hi: 0x9f},
3939 {value: 0x3008, lo: 0xa0, hi: 0xa2},
3940 {value: 0x3308, lo: 0xa3, hi: 0xa9},
3941 {value: 0x3b08, lo: 0xaa, hi: 0xaa},
3942 {value: 0x0040, lo: 0xab, hi: 0xaf},
3943 {value: 0x0008, lo: 0xb0, hi: 0xb9},
3944 {value: 0x0040, lo: 0xba, hi: 0xbf},
3945 // Block 0xb7, offset 0x57d
3946 {value: 0x0000, lo: 0x03},
3947 {value: 0x0008, lo: 0x80, hi: 0xb4},
3948 {value: 0x3008, lo: 0xb5, hi: 0xb7},
3949 {value: 0x3308, lo: 0xb8, hi: 0xbf},
3950 // Block 0xb8, offset 0x581
3951 {value: 0x0000, lo: 0x0d},
3952 {value: 0x3008, lo: 0x80, hi: 0x81},
3953 {value: 0x3b08, lo: 0x82, hi: 0x82},
3954 {value: 0x3308, lo: 0x83, hi: 0x84},
3955 {value: 0x3008, lo: 0x85, hi: 0x85},
3956 {value: 0x3308, lo: 0x86, hi: 0x86},
3957 {value: 0x0008, lo: 0x87, hi: 0x8a},
3958 {value: 0x0018, lo: 0x8b, hi: 0x8f},
3959 {value: 0x0008, lo: 0x90, hi: 0x99},
3960 {value: 0x0040, lo: 0x9a, hi: 0x9a},
3961 {value: 0x0018, lo: 0x9b, hi: 0x9b},
3962 {value: 0x0040, lo: 0x9c, hi: 0x9c},
3963 {value: 0x0018, lo: 0x9d, hi: 0x9d},
3964 {value: 0x0040, lo: 0x9e, hi: 0xbf},
3965 // Block 0xb9, offset 0x58f
3966 {value: 0x0000, lo: 0x07},
3967 {value: 0x0008, lo: 0x80, hi: 0xaf},
3968 {value: 0x3008, lo: 0xb0, hi: 0xb2},
3969 {value: 0x3308, lo: 0xb3, hi: 0xb8},
3970 {value: 0x3008, lo: 0xb9, hi: 0xb9},
3971 {value: 0x3308, lo: 0xba, hi: 0xba},
3972 {value: 0x3008, lo: 0xbb, hi: 0xbe},
3973 {value: 0x3308, lo: 0xbf, hi: 0xbf},
3974 // Block 0xba, offset 0x597
3975 {value: 0x0000, lo: 0x0a},
3976 {value: 0x3308, lo: 0x80, hi: 0x80},
3977 {value: 0x3008, lo: 0x81, hi: 0x81},
3978 {value: 0x3b08, lo: 0x82, hi: 0x82},
3979 {value: 0x3308, lo: 0x83, hi: 0x83},
3980 {value: 0x0008, lo: 0x84, hi: 0x85},
3981 {value: 0x0018, lo: 0x86, hi: 0x86},
3982 {value: 0x0008, lo: 0x87, hi: 0x87},
3983 {value: 0x0040, lo: 0x88, hi: 0x8f},
3984 {value: 0x0008, lo: 0x90, hi: 0x99},
3985 {value: 0x0040, lo: 0x9a, hi: 0xbf},
3986 // Block 0xbb, offset 0x5a2
3987 {value: 0x0000, lo: 0x08},
3988 {value: 0x0008, lo: 0x80, hi: 0xae},
3989 {value: 0x3008, lo: 0xaf, hi: 0xb1},
3990 {value: 0x3308, lo: 0xb2, hi: 0xb5},
3991 {value: 0x0040, lo: 0xb6, hi: 0xb7},
3992 {value: 0x3008, lo: 0xb8, hi: 0xbb},
3993 {value: 0x3308, lo: 0xbc, hi: 0xbd},
3994 {value: 0x3008, lo: 0xbe, hi: 0xbe},
3995 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
3996 // Block 0xbc, offset 0x5ab
3997 {value: 0x0000, lo: 0x05},
3998 {value: 0x3308, lo: 0x80, hi: 0x80},
3999 {value: 0x0018, lo: 0x81, hi: 0x97},
4000 {value: 0x0008, lo: 0x98, hi: 0x9b},
4001 {value: 0x3308, lo: 0x9c, hi: 0x9d},
4002 {value: 0x0040, lo: 0x9e, hi: 0xbf},
4003 // Block 0xbd, offset 0x5b1
4004 {value: 0x0000, lo: 0x07},
4005 {value: 0x0008, lo: 0x80, hi: 0xaf},
4006 {value: 0x3008, lo: 0xb0, hi: 0xb2},
4007 {value: 0x3308, lo: 0xb3, hi: 0xba},
4008 {value: 0x3008, lo: 0xbb, hi: 0xbc},
4009 {value: 0x3308, lo: 0xbd, hi: 0xbd},
4010 {value: 0x3008, lo: 0xbe, hi: 0xbe},
4011 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
4012 // Block 0xbe, offset 0x5b9
4013 {value: 0x0000, lo: 0x08},
4014 {value: 0x3308, lo: 0x80, hi: 0x80},
4015 {value: 0x0018, lo: 0x81, hi: 0x83},
4016 {value: 0x0008, lo: 0x84, hi: 0x84},
4017 {value: 0x0040, lo: 0x85, hi: 0x8f},
4018 {value: 0x0008, lo: 0x90, hi: 0x99},
4019 {value: 0x0040, lo: 0x9a, hi: 0x9f},
4020 {value: 0x0018, lo: 0xa0, hi: 0xac},
4021 {value: 0x0040, lo: 0xad, hi: 0xbf},
4022 // Block 0xbf, offset 0x5c2
4023 {value: 0x0000, lo: 0x09},
4024 {value: 0x0008, lo: 0x80, hi: 0xaa},
4025 {value: 0x3308, lo: 0xab, hi: 0xab},
4026 {value: 0x3008, lo: 0xac, hi: 0xac},
4027 {value: 0x3308, lo: 0xad, hi: 0xad},
4028 {value: 0x3008, lo: 0xae, hi: 0xaf},
4029 {value: 0x3308, lo: 0xb0, hi: 0xb5},
4030 {value: 0x3808, lo: 0xb6, hi: 0xb6},
4031 {value: 0x3308, lo: 0xb7, hi: 0xb7},
4032 {value: 0x0040, lo: 0xb8, hi: 0xbf},
4033 // Block 0xc0, offset 0x5cc
4034 {value: 0x0000, lo: 0x02},
4035 {value: 0x0008, lo: 0x80, hi: 0x89},
4036 {value: 0x0040, lo: 0x8a, hi: 0xbf},
4037 // Block 0xc1, offset 0x5cf
4038 {value: 0x0000, lo: 0x0b},
4039 {value: 0x0008, lo: 0x80, hi: 0x99},
4040 {value: 0x0040, lo: 0x9a, hi: 0x9c},
4041 {value: 0x3308, lo: 0x9d, hi: 0x9f},
4042 {value: 0x3008, lo: 0xa0, hi: 0xa1},
4043 {value: 0x3308, lo: 0xa2, hi: 0xa5},
4044 {value: 0x3008, lo: 0xa6, hi: 0xa6},
4045 {value: 0x3308, lo: 0xa7, hi: 0xaa},
4046 {value: 0x3b08, lo: 0xab, hi: 0xab},
4047 {value: 0x0040, lo: 0xac, hi: 0xaf},
4048 {value: 0x0008, lo: 0xb0, hi: 0xb9},
4049 {value: 0x0018, lo: 0xba, hi: 0xbf},
4050 // Block 0xc2, offset 0x5db
4051 {value: 0x0000, lo: 0x02},
4052 {value: 0x0040, lo: 0x80, hi: 0x9f},
4053 {value: 0x049d, lo: 0xa0, hi: 0xbf},
4054 // Block 0xc3, offset 0x5de
4055 {value: 0x0000, lo: 0x04},
4056 {value: 0x0008, lo: 0x80, hi: 0xa9},
4057 {value: 0x0018, lo: 0xaa, hi: 0xb2},
4058 {value: 0x0040, lo: 0xb3, hi: 0xbe},
4059 {value: 0x0008, lo: 0xbf, hi: 0xbf},
4060 // Block 0xc4, offset 0x5e3
4061 {value: 0x0000, lo: 0x02},
4062 {value: 0x0008, lo: 0x80, hi: 0xb8},
4063 {value: 0x0040, lo: 0xb9, hi: 0xbf},
4064 // Block 0xc5, offset 0x5e6
4065 {value: 0x0000, lo: 0x09},
4066 {value: 0x0008, lo: 0x80, hi: 0x88},
4067 {value: 0x0040, lo: 0x89, hi: 0x89},
4068 {value: 0x0008, lo: 0x8a, hi: 0xae},
4069 {value: 0x3008, lo: 0xaf, hi: 0xaf},
4070 {value: 0x3308, lo: 0xb0, hi: 0xb6},
4071 {value: 0x0040, lo: 0xb7, hi: 0xb7},
4072 {value: 0x3308, lo: 0xb8, hi: 0xbd},
4073 {value: 0x3008, lo: 0xbe, hi: 0xbe},
4074 {value: 0x3b08, lo: 0xbf, hi: 0xbf},
4075 // Block 0xc6, offset 0x5f0
4076 {value: 0x0000, lo: 0x08},
4077 {value: 0x0008, lo: 0x80, hi: 0x80},
4078 {value: 0x0018, lo: 0x81, hi: 0x85},
4079 {value: 0x0040, lo: 0x86, hi: 0x8f},
4080 {value: 0x0008, lo: 0x90, hi: 0x99},
4081 {value: 0x0018, lo: 0x9a, hi: 0xac},
4082 {value: 0x0040, lo: 0xad, hi: 0xaf},
4083 {value: 0x0018, lo: 0xb0, hi: 0xb1},
4084 {value: 0x0008, lo: 0xb2, hi: 0xbf},
4085 // Block 0xc7, offset 0x5f9
4086 {value: 0x0000, lo: 0x0b},
4087 {value: 0x0008, lo: 0x80, hi: 0x8f},
4088 {value: 0x0040, lo: 0x90, hi: 0x91},
4089 {value: 0x3308, lo: 0x92, hi: 0xa7},
4090 {value: 0x0040, lo: 0xa8, hi: 0xa8},
4091 {value: 0x3008, lo: 0xa9, hi: 0xa9},
4092 {value: 0x3308, lo: 0xaa, hi: 0xb0},
4093 {value: 0x3008, lo: 0xb1, hi: 0xb1},
4094 {value: 0x3308, lo: 0xb2, hi: 0xb3},
4095 {value: 0x3008, lo: 0xb4, hi: 0xb4},
4096 {value: 0x3308, lo: 0xb5, hi: 0xb6},
4097 {value: 0x0040, lo: 0xb7, hi: 0xbf},
4098 // Block 0xc8, offset 0x605
4099 {value: 0x0000, lo: 0x02},
4100 {value: 0x0008, lo: 0x80, hi: 0x99},
4101 {value: 0x0040, lo: 0x9a, hi: 0xbf},
4102 // Block 0xc9, offset 0x608
4103 {value: 0x0000, lo: 0x04},
4104 {value: 0x0018, lo: 0x80, hi: 0xae},
4105 {value: 0x0040, lo: 0xaf, hi: 0xaf},
4106 {value: 0x0018, lo: 0xb0, hi: 0xb4},
4107 {value: 0x0040, lo: 0xb5, hi: 0xbf},
4108 // Block 0xca, offset 0x60d
4109 {value: 0x0000, lo: 0x02},
4110 {value: 0x0008, lo: 0x80, hi: 0x83},
4111 {value: 0x0040, lo: 0x84, hi: 0xbf},
4112 // Block 0xcb, offset 0x610
4113 {value: 0x0000, lo: 0x02},
4114 {value: 0x0008, lo: 0x80, hi: 0xae},
4115 {value: 0x0040, lo: 0xaf, hi: 0xbf},
4116 // Block 0xcc, offset 0x613
4117 {value: 0x0000, lo: 0x02},
4118 {value: 0x0008, lo: 0x80, hi: 0x86},
4119 {value: 0x0040, lo: 0x87, hi: 0xbf},
4120 // Block 0xcd, offset 0x616
4121 {value: 0x0000, lo: 0x06},
4122 {value: 0x0008, lo: 0x80, hi: 0x9e},
4123 {value: 0x0040, lo: 0x9f, hi: 0x9f},
4124 {value: 0x0008, lo: 0xa0, hi: 0xa9},
4125 {value: 0x0040, lo: 0xaa, hi: 0xad},
4126 {value: 0x0018, lo: 0xae, hi: 0xaf},
4127 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4128 // Block 0xce, offset 0x61d
4129 {value: 0x0000, lo: 0x06},
4130 {value: 0x0040, lo: 0x80, hi: 0x8f},
4131 {value: 0x0008, lo: 0x90, hi: 0xad},
4132 {value: 0x0040, lo: 0xae, hi: 0xaf},
4133 {value: 0x3308, lo: 0xb0, hi: 0xb4},
4134 {value: 0x0018, lo: 0xb5, hi: 0xb5},
4135 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4136 // Block 0xcf, offset 0x624
4137 {value: 0x0000, lo: 0x03},
4138 {value: 0x0008, lo: 0x80, hi: 0xaf},
4139 {value: 0x3308, lo: 0xb0, hi: 0xb6},
4140 {value: 0x0018, lo: 0xb7, hi: 0xbf},
4141 // Block 0xd0, offset 0x628
4142 {value: 0x0000, lo: 0x0a},
4143 {value: 0x0008, lo: 0x80, hi: 0x83},
4144 {value: 0x0018, lo: 0x84, hi: 0x85},
4145 {value: 0x0040, lo: 0x86, hi: 0x8f},
4146 {value: 0x0008, lo: 0x90, hi: 0x99},
4147 {value: 0x0040, lo: 0x9a, hi: 0x9a},
4148 {value: 0x0018, lo: 0x9b, hi: 0xa1},
4149 {value: 0x0040, lo: 0xa2, hi: 0xa2},
4150 {value: 0x0008, lo: 0xa3, hi: 0xb7},
4151 {value: 0x0040, lo: 0xb8, hi: 0xbc},
4152 {value: 0x0008, lo: 0xbd, hi: 0xbf},
4153 // Block 0xd1, offset 0x633
4154 {value: 0x0000, lo: 0x02},
4155 {value: 0x0008, lo: 0x80, hi: 0x8f},
4156 {value: 0x0040, lo: 0x90, hi: 0xbf},
4157 // Block 0xd2, offset 0x636
4158 {value: 0x0000, lo: 0x05},
4159 {value: 0x0008, lo: 0x80, hi: 0x84},
4160 {value: 0x0040, lo: 0x85, hi: 0x8f},
4161 {value: 0x0008, lo: 0x90, hi: 0x90},
4162 {value: 0x3008, lo: 0x91, hi: 0xbe},
4163 {value: 0x0040, lo: 0xbf, hi: 0xbf},
4164 // Block 0xd3, offset 0x63c
4165 {value: 0x0000, lo: 0x04},
4166 {value: 0x0040, lo: 0x80, hi: 0x8e},
4167 {value: 0x3308, lo: 0x8f, hi: 0x92},
4168 {value: 0x0008, lo: 0x93, hi: 0x9f},
4169 {value: 0x0040, lo: 0xa0, hi: 0xbf},
4170 // Block 0xd4, offset 0x641
4171 {value: 0x0000, lo: 0x03},
4172 {value: 0x0040, lo: 0x80, hi: 0x9f},
4173 {value: 0x0008, lo: 0xa0, hi: 0xa0},
4174 {value: 0x0040, lo: 0xa1, hi: 0xbf},
4175 // Block 0xd5, offset 0x645
4176 {value: 0x0000, lo: 0x02},
4177 {value: 0x0008, lo: 0x80, hi: 0xac},
4178 {value: 0x0040, lo: 0xad, hi: 0xbf},
4179 // Block 0xd6, offset 0x648
4180 {value: 0x0000, lo: 0x02},
4181 {value: 0x0008, lo: 0x80, hi: 0xb2},
4182 {value: 0x0040, lo: 0xb3, hi: 0xbf},
4183 // Block 0xd7, offset 0x64b
4184 {value: 0x0000, lo: 0x02},
4185 {value: 0x0008, lo: 0x80, hi: 0x81},
4186 {value: 0x0040, lo: 0x82, hi: 0xbf},
4187 // Block 0xd8, offset 0x64e
4188 {value: 0x0000, lo: 0x04},
4189 {value: 0x0008, lo: 0x80, hi: 0xaa},
4190 {value: 0x0040, lo: 0xab, hi: 0xaf},
4191 {value: 0x0008, lo: 0xb0, hi: 0xbc},
4192 {value: 0x0040, lo: 0xbd, hi: 0xbf},
4193 // Block 0xd9, offset 0x653
4194 {value: 0x0000, lo: 0x09},
4195 {value: 0x0008, lo: 0x80, hi: 0x88},
4196 {value: 0x0040, lo: 0x89, hi: 0x8f},
4197 {value: 0x0008, lo: 0x90, hi: 0x99},
4198 {value: 0x0040, lo: 0x9a, hi: 0x9b},
4199 {value: 0x0018, lo: 0x9c, hi: 0x9c},
4200 {value: 0x3308, lo: 0x9d, hi: 0x9e},
4201 {value: 0x0018, lo: 0x9f, hi: 0x9f},
4202 {value: 0x03c0, lo: 0xa0, hi: 0xa3},
4203 {value: 0x0040, lo: 0xa4, hi: 0xbf},
4204 // Block 0xda, offset 0x65d
4205 {value: 0x0000, lo: 0x02},
4206 {value: 0x0018, lo: 0x80, hi: 0xb5},
4207 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4208 // Block 0xdb, offset 0x660
4209 {value: 0x0000, lo: 0x03},
4210 {value: 0x0018, lo: 0x80, hi: 0xa6},
4211 {value: 0x0040, lo: 0xa7, hi: 0xa8},
4212 {value: 0x0018, lo: 0xa9, hi: 0xbf},
4213 // Block 0xdc, offset 0x664
4214 {value: 0x0000, lo: 0x0e},
4215 {value: 0x0018, lo: 0x80, hi: 0x9d},
4216 {value: 0xb5b9, lo: 0x9e, hi: 0x9e},
4217 {value: 0xb601, lo: 0x9f, hi: 0x9f},
4218 {value: 0xb649, lo: 0xa0, hi: 0xa0},
4219 {value: 0xb6b1, lo: 0xa1, hi: 0xa1},
4220 {value: 0xb719, lo: 0xa2, hi: 0xa2},
4221 {value: 0xb781, lo: 0xa3, hi: 0xa3},
4222 {value: 0xb7e9, lo: 0xa4, hi: 0xa4},
4223 {value: 0x3018, lo: 0xa5, hi: 0xa6},
4224 {value: 0x3318, lo: 0xa7, hi: 0xa9},
4225 {value: 0x0018, lo: 0xaa, hi: 0xac},
4226 {value: 0x3018, lo: 0xad, hi: 0xb2},
4227 {value: 0x0340, lo: 0xb3, hi: 0xba},
4228 {value: 0x3318, lo: 0xbb, hi: 0xbf},
4229 // Block 0xdd, offset 0x673
4230 {value: 0x0000, lo: 0x0b},
4231 {value: 0x3318, lo: 0x80, hi: 0x82},
4232 {value: 0x0018, lo: 0x83, hi: 0x84},
4233 {value: 0x3318, lo: 0x85, hi: 0x8b},
4234 {value: 0x0018, lo: 0x8c, hi: 0xa9},
4235 {value: 0x3318, lo: 0xaa, hi: 0xad},
4236 {value: 0x0018, lo: 0xae, hi: 0xba},
4237 {value: 0xb851, lo: 0xbb, hi: 0xbb},
4238 {value: 0xb899, lo: 0xbc, hi: 0xbc},
4239 {value: 0xb8e1, lo: 0xbd, hi: 0xbd},
4240 {value: 0xb949, lo: 0xbe, hi: 0xbe},
4241 {value: 0xb9b1, lo: 0xbf, hi: 0xbf},
4242 // Block 0xde, offset 0x67f
4243 {value: 0x0000, lo: 0x03},
4244 {value: 0xba19, lo: 0x80, hi: 0x80},
4245 {value: 0x0018, lo: 0x81, hi: 0xa8},
4246 {value: 0x0040, lo: 0xa9, hi: 0xbf},
4247 // Block 0xdf, offset 0x683
4248 {value: 0x0000, lo: 0x04},
4249 {value: 0x0018, lo: 0x80, hi: 0x81},
4250 {value: 0x3318, lo: 0x82, hi: 0x84},
4251 {value: 0x0018, lo: 0x85, hi: 0x85},
4252 {value: 0x0040, lo: 0x86, hi: 0xbf},
4253 // Block 0xe0, offset 0x688
4254 {value: 0x0000, lo: 0x04},
4255 {value: 0x0018, lo: 0x80, hi: 0x96},
4256 {value: 0x0040, lo: 0x97, hi: 0x9f},
4257 {value: 0x0018, lo: 0xa0, hi: 0xb1},
4258 {value: 0x0040, lo: 0xb2, hi: 0xbf},
4259 // Block 0xe1, offset 0x68d
4260 {value: 0x0000, lo: 0x03},
4261 {value: 0x3308, lo: 0x80, hi: 0xb6},
4262 {value: 0x0018, lo: 0xb7, hi: 0xba},
4263 {value: 0x3308, lo: 0xbb, hi: 0xbf},
4264 // Block 0xe2, offset 0x691
4265 {value: 0x0000, lo: 0x04},
4266 {value: 0x3308, lo: 0x80, hi: 0xac},
4267 {value: 0x0018, lo: 0xad, hi: 0xb4},
4268 {value: 0x3308, lo: 0xb5, hi: 0xb5},
4269 {value: 0x0018, lo: 0xb6, hi: 0xbf},
4270 // Block 0xe3, offset 0x696
4271 {value: 0x0000, lo: 0x08},
4272 {value: 0x0018, lo: 0x80, hi: 0x83},
4273 {value: 0x3308, lo: 0x84, hi: 0x84},
4274 {value: 0x0018, lo: 0x85, hi: 0x8b},
4275 {value: 0x0040, lo: 0x8c, hi: 0x9a},
4276 {value: 0x3308, lo: 0x9b, hi: 0x9f},
4277 {value: 0x0040, lo: 0xa0, hi: 0xa0},
4278 {value: 0x3308, lo: 0xa1, hi: 0xaf},
4279 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4280 // Block 0xe4, offset 0x69f
4281 {value: 0x0000, lo: 0x0a},
4282 {value: 0x3308, lo: 0x80, hi: 0x86},
4283 {value: 0x0040, lo: 0x87, hi: 0x87},
4284 {value: 0x3308, lo: 0x88, hi: 0x98},
4285 {value: 0x0040, lo: 0x99, hi: 0x9a},
4286 {value: 0x3308, lo: 0x9b, hi: 0xa1},
4287 {value: 0x0040, lo: 0xa2, hi: 0xa2},
4288 {value: 0x3308, lo: 0xa3, hi: 0xa4},
4289 {value: 0x0040, lo: 0xa5, hi: 0xa5},
4290 {value: 0x3308, lo: 0xa6, hi: 0xaa},
4291 {value: 0x0040, lo: 0xab, hi: 0xbf},
4292 // Block 0xe5, offset 0x6aa
4293 {value: 0x0000, lo: 0x05},
4294 {value: 0x0808, lo: 0x80, hi: 0x84},
4295 {value: 0x0040, lo: 0x85, hi: 0x86},
4296 {value: 0x0818, lo: 0x87, hi: 0x8f},
4297 {value: 0x3308, lo: 0x90, hi: 0x96},
4298 {value: 0x0040, lo: 0x97, hi: 0xbf},
4299 // Block 0xe6, offset 0x6b0
4300 {value: 0x0000, lo: 0x07},
4301 {value: 0x0a08, lo: 0x80, hi: 0x83},
4302 {value: 0x3308, lo: 0x84, hi: 0x8a},
4303 {value: 0x0040, lo: 0x8b, hi: 0x8f},
4304 {value: 0x0808, lo: 0x90, hi: 0x99},
4305 {value: 0x0040, lo: 0x9a, hi: 0x9d},
4306 {value: 0x0818, lo: 0x9e, hi: 0x9f},
4307 {value: 0x0040, lo: 0xa0, hi: 0xbf},
4308 // Block 0xe7, offset 0x6b8
4309 {value: 0x0000, lo: 0x03},
4310 {value: 0x0040, lo: 0x80, hi: 0xaf},
4311 {value: 0x0018, lo: 0xb0, hi: 0xb1},
4312 {value: 0x0040, lo: 0xb2, hi: 0xbf},
4313 // Block 0xe8, offset 0x6bc
4314 {value: 0x0000, lo: 0x03},
4315 {value: 0x0018, lo: 0x80, hi: 0xab},
4316 {value: 0x0040, lo: 0xac, hi: 0xaf},
4317 {value: 0x0018, lo: 0xb0, hi: 0xbf},
4318 // Block 0xe9, offset 0x6c0
4319 {value: 0x0000, lo: 0x05},
4320 {value: 0x0018, lo: 0x80, hi: 0x93},
4321 {value: 0x0040, lo: 0x94, hi: 0x9f},
4322 {value: 0x0018, lo: 0xa0, hi: 0xae},
4323 {value: 0x0040, lo: 0xaf, hi: 0xb0},
4324 {value: 0x0018, lo: 0xb1, hi: 0xbf},
4325 // Block 0xea, offset 0x6c6
4326 {value: 0x0000, lo: 0x05},
4327 {value: 0x0040, lo: 0x80, hi: 0x80},
4328 {value: 0x0018, lo: 0x81, hi: 0x8f},
4329 {value: 0x0040, lo: 0x90, hi: 0x90},
4330 {value: 0x0018, lo: 0x91, hi: 0xb5},
4331 {value: 0x0040, lo: 0xb6, hi: 0xbf},
4332 // Block 0xeb, offset 0x6cc
4333 {value: 0x0000, lo: 0x04},
4334 {value: 0x0018, lo: 0x80, hi: 0x8f},
4335 {value: 0xc1c1, lo: 0x90, hi: 0x90},
4336 {value: 0x0018, lo: 0x91, hi: 0xac},
4337 {value: 0x0040, lo: 0xad, hi: 0xbf},
4338 // Block 0xec, offset 0x6d1
4339 {value: 0x0000, lo: 0x02},
4340 {value: 0x0040, lo: 0x80, hi: 0xa5},
4341 {value: 0x0018, lo: 0xa6, hi: 0xbf},
4342 // Block 0xed, offset 0x6d4
4343 {value: 0x0000, lo: 0x0d},
4344 {value: 0xc7e9, lo: 0x80, hi: 0x80},
4345 {value: 0xc839, lo: 0x81, hi: 0x81},
4346 {value: 0xc889, lo: 0x82, hi: 0x82},
4347 {value: 0xc8d9, lo: 0x83, hi: 0x83},
4348 {value: 0xc929, lo: 0x84, hi: 0x84},
4349 {value: 0xc979, lo: 0x85, hi: 0x85},
4350 {value: 0xc9c9, lo: 0x86, hi: 0x86},
4351 {value: 0xca19, lo: 0x87, hi: 0x87},
4352 {value: 0xca69, lo: 0x88, hi: 0x88},
4353 {value: 0x0040, lo: 0x89, hi: 0x8f},
4354 {value: 0xcab9, lo: 0x90, hi: 0x90},
4355 {value: 0xcad9, lo: 0x91, hi: 0x91},
4356 {value: 0x0040, lo: 0x92, hi: 0xbf},
4357 // Block 0xee, offset 0x6e2
4358 {value: 0x0000, lo: 0x06},
4359 {value: 0x0018, lo: 0x80, hi: 0x92},
4360 {value: 0x0040, lo: 0x93, hi: 0x9f},
4361 {value: 0x0018, lo: 0xa0, hi: 0xac},
4362 {value: 0x0040, lo: 0xad, hi: 0xaf},
4363 {value: 0x0018, lo: 0xb0, hi: 0xb6},
4364 {value: 0x0040, lo: 0xb7, hi: 0xbf},
4365 // Block 0xef, offset 0x6e9
4366 {value: 0x0000, lo: 0x02},
4367 {value: 0x0018, lo: 0x80, hi: 0xb3},
4368 {value: 0x0040, lo: 0xb4, hi: 0xbf},
4369 // Block 0xf0, offset 0x6ec
4370 {value: 0x0000, lo: 0x02},
4371 {value: 0x0018, lo: 0x80, hi: 0x94},
4372 {value: 0x0040, lo: 0x95, hi: 0xbf},
4373 // Block 0xf1, offset 0x6ef
4374 {value: 0x0000, lo: 0x03},
4375 {value: 0x0018, lo: 0x80, hi: 0x8b},
4376 {value: 0x0040, lo: 0x8c, hi: 0x8f},
4377 {value: 0x0018, lo: 0x90, hi: 0xbf},
4378 // Block 0xf2, offset 0x6f3
4379 {value: 0x0000, lo: 0x05},
4380 {value: 0x0018, lo: 0x80, hi: 0x87},
4381 {value: 0x0040, lo: 0x88, hi: 0x8f},
4382 {value: 0x0018, lo: 0x90, hi: 0x99},
4383 {value: 0x0040, lo: 0x9a, hi: 0x9f},
4384 {value: 0x0018, lo: 0xa0, hi: 0xbf},
4385 // Block 0xf3, offset 0x6f9
4386 {value: 0x0000, lo: 0x04},
4387 {value: 0x0018, lo: 0x80, hi: 0x87},
4388 {value: 0x0040, lo: 0x88, hi: 0x8f},
4389 {value: 0x0018, lo: 0x90, hi: 0xad},
4390 {value: 0x0040, lo: 0xae, hi: 0xbf},
4391 // Block 0xf4, offset 0x6fe
4392 {value: 0x0000, lo: 0x09},
4393 {value: 0x0040, lo: 0x80, hi: 0x8f},
4394 {value: 0x0018, lo: 0x90, hi: 0x9e},
4395 {value: 0x0040, lo: 0x9f, hi: 0x9f},
4396 {value: 0x0018, lo: 0xa0, hi: 0xa7},
4397 {value: 0x0040, lo: 0xa8, hi: 0xaf},
4398 {value: 0x0018, lo: 0xb0, hi: 0xb0},
4399 {value: 0x0040, lo: 0xb1, hi: 0xb2},
4400 {value: 0x0018, lo: 0xb3, hi: 0xbe},
4401 {value: 0x0040, lo: 0xbf, hi: 0xbf},
4402 // Block 0xf5, offset 0x708
4403 {value: 0x0000, lo: 0x04},
4404 {value: 0x0018, lo: 0x80, hi: 0x8b},
4405 {value: 0x0040, lo: 0x8c, hi: 0x8f},
4406 {value: 0x0018, lo: 0x90, hi: 0x9e},
4407 {value: 0x0040, lo: 0x9f, hi: 0xbf},
4408 // Block 0xf6, offset 0x70d
4409 {value: 0x0000, lo: 0x02},
4410 {value: 0x0018, lo: 0x80, hi: 0x91},
4411 {value: 0x0040, lo: 0x92, hi: 0xbf},
4412 // Block 0xf7, offset 0x710
4413 {value: 0x0000, lo: 0x02},
4414 {value: 0x0018, lo: 0x80, hi: 0x80},
4415 {value: 0x0040, lo: 0x81, hi: 0xbf},
4416 // Block 0xf8, offset 0x713
4417 {value: 0x0000, lo: 0x02},
4418 {value: 0x0008, lo: 0x80, hi: 0x96},
4419 {value: 0x0040, lo: 0x97, hi: 0xbf},
4420 // Block 0xf9, offset 0x716
4421 {value: 0x0000, lo: 0x02},
4422 {value: 0x0008, lo: 0x80, hi: 0xb4},
4423 {value: 0x0040, lo: 0xb5, hi: 0xbf},
4424 // Block 0xfa, offset 0x719
4425 {value: 0x0000, lo: 0x03},
4426 {value: 0x0008, lo: 0x80, hi: 0x9d},
4427 {value: 0x0040, lo: 0x9e, hi: 0x9f},
4428 {value: 0x0008, lo: 0xa0, hi: 0xbf},
4429 // Block 0xfb, offset 0x71d
4430 {value: 0x0000, lo: 0x02},
4431 {value: 0x0008, lo: 0x80, hi: 0xa1},
4432 {value: 0x0040, lo: 0xa2, hi: 0xbf},
4433 // Block 0xfc, offset 0x720
4434 {value: 0x0020, lo: 0x0f},
4435 {value: 0xdeb9, lo: 0x80, hi: 0x89},
4436 {value: 0x8dfd, lo: 0x8a, hi: 0x8a},
4437 {value: 0xdff9, lo: 0x8b, hi: 0x9c},
4438 {value: 0x8e1d, lo: 0x9d, hi: 0x9d},
4439 {value: 0xe239, lo: 0x9e, hi: 0xa2},
4440 {value: 0x8e3d, lo: 0xa3, hi: 0xa3},
4441 {value: 0xe2d9, lo: 0xa4, hi: 0xab},
4442 {value: 0x7ed5, lo: 0xac, hi: 0xac},
4443 {value: 0xe3d9, lo: 0xad, hi: 0xaf},
4444 {value: 0x8e5d, lo: 0xb0, hi: 0xb0},
4445 {value: 0xe439, lo: 0xb1, hi: 0xb6},
4446 {value: 0x8e7d, lo: 0xb7, hi: 0xb9},
4447 {value: 0xe4f9, lo: 0xba, hi: 0xba},
4448 {value: 0x8edd, lo: 0xbb, hi: 0xbb},
4449 {value: 0xe519, lo: 0xbc, hi: 0xbf},
4450 // Block 0xfd, offset 0x730
4451 {value: 0x0020, lo: 0x10},
4452 {value: 0x937d, lo: 0x80, hi: 0x80},
4453 {value: 0xf099, lo: 0x81, hi: 0x86},
4454 {value: 0x939d, lo: 0x87, hi: 0x8a},
4455 {value: 0xd9f9, lo: 0x8b, hi: 0x8b},
4456 {value: 0xf159, lo: 0x8c, hi: 0x96},
4457 {value: 0x941d, lo: 0x97, hi: 0x97},
4458 {value: 0xf2b9, lo: 0x98, hi: 0xa3},
4459 {value: 0x943d, lo: 0xa4, hi: 0xa6},
4460 {value: 0xf439, lo: 0xa7, hi: 0xaa},
4461 {value: 0x949d, lo: 0xab, hi: 0xab},
4462 {value: 0xf4b9, lo: 0xac, hi: 0xac},
4463 {value: 0x94bd, lo: 0xad, hi: 0xad},
4464 {value: 0xf4d9, lo: 0xae, hi: 0xaf},
4465 {value: 0x94dd, lo: 0xb0, hi: 0xb1},
4466 {value: 0xf519, lo: 0xb2, hi: 0xbe},
4467 {value: 0x2040, lo: 0xbf, hi: 0xbf},
4468 // Block 0xfe, offset 0x741
4469 {value: 0x0000, lo: 0x04},
4470 {value: 0x0040, lo: 0x80, hi: 0x80},
4471 {value: 0x0340, lo: 0x81, hi: 0x81},
4472 {value: 0x0040, lo: 0x82, hi: 0x9f},
4473 {value: 0x0340, lo: 0xa0, hi: 0xbf},
4474 // Block 0xff, offset 0x746
4475 {value: 0x0000, lo: 0x01},
4476 {value: 0x0340, lo: 0x80, hi: 0xbf},
4477 // Block 0x100, offset 0x748
4478 {value: 0x0000, lo: 0x01},
4479 {value: 0x33c0, lo: 0x80, hi: 0xbf},
4480 // Block 0x101, offset 0x74a
4481 {value: 0x0000, lo: 0x02},
4482 {value: 0x33c0, lo: 0x80, hi: 0xaf},
4483 {value: 0x0040, lo: 0xb0, hi: 0xbf},
4484}
4485
4486// Total table size 41662 bytes (40KiB); checksum: 355A58A4
diff --git a/vendor/golang.org/x/net/idna/trieval.go b/vendor/golang.org/x/net/idna/trieval.go
index 63cb03b..7a8cf88 100644
--- a/vendor/golang.org/x/net/idna/trieval.go
+++ b/vendor/golang.org/x/net/idna/trieval.go
@@ -26,9 +26,9 @@ package idna
26// 15..3 index into xor or mapping table 26// 15..3 index into xor or mapping table
27// } 27// }
28// } else { 28// } else {
29// 15..13 unused 29// 15..14 unused
30// 12 modifier (including virama) 30// 13 mayNeedNorm
31// 11 virama modifier 31// 12..11 attributes
32// 10..8 joining type 32// 10..8 joining type
33// 7..3 category type 33// 7..3 category type
34// } 34// }
@@ -49,15 +49,20 @@ const (
49 joinShift = 8 49 joinShift = 8
50 joinMask = 0x07 50 joinMask = 0x07
51 51
52 viramaModifier = 0x0800 52 // Attributes
53 attributesMask = 0x1800
54 viramaModifier = 0x1800
53 modifier = 0x1000 55 modifier = 0x1000
56 rtl = 0x0800
57
58 mayNeedNorm = 0x2000
54) 59)
55 60
56// A category corresponds to a category defined in the IDNA mapping table. 61// A category corresponds to a category defined in the IDNA mapping table.
57type category uint16 62type category uint16
58 63
59const ( 64const (
60 unknown category = 0 // not defined currently in unicode. 65 unknown category = 0 // not currently defined in unicode.
61 mapped category = 1 66 mapped category = 1
62 disallowedSTD3Mapped category = 2 67 disallowedSTD3Mapped category = 2
63 deviation category = 3 68 deviation category = 3
@@ -110,5 +115,5 @@ func (c info) isModifier() bool {
110} 115}
111 116
112func (c info) isViramaModifier() bool { 117func (c info) isViramaModifier() bool {
113 return c&(viramaModifier|catSmallMask) == viramaModifier 118 return c&(attributesMask|catSmallMask) == viramaModifier
114} 119}
diff --git a/vendor/golang.org/x/net/trace/trace.go b/vendor/golang.org/x/net/trace/trace.go
index bb72a52..3ebf6f2 100644
--- a/vendor/golang.org/x/net/trace/trace.go
+++ b/vendor/golang.org/x/net/trace/trace.go
@@ -64,12 +64,14 @@ package trace // import "golang.org/x/net/trace"
64 64
65import ( 65import (
66 "bytes" 66 "bytes"
67 "context"
67 "fmt" 68 "fmt"
68 "html/template" 69 "html/template"
69 "io" 70 "io"
70 "log" 71 "log"
71 "net" 72 "net"
72 "net/http" 73 "net/http"
74 "net/url"
73 "runtime" 75 "runtime"
74 "sort" 76 "sort"
75 "strconv" 77 "strconv"
@@ -84,6 +86,12 @@ import (
84// FOR DEBUGGING ONLY. This will slow down the program. 86// FOR DEBUGGING ONLY. This will slow down the program.
85var DebugUseAfterFinish = false 87var DebugUseAfterFinish = false
86 88
89// HTTP ServeMux paths.
90const (
91 debugRequestsPath = "/debug/requests"
92 debugEventsPath = "/debug/events"
93)
94
87// AuthRequest determines whether a specific request is permitted to load the 95// AuthRequest determines whether a specific request is permitted to load the
88// /debug/requests or /debug/events pages. 96// /debug/requests or /debug/events pages.
89// 97//
@@ -110,10 +118,29 @@ var AuthRequest = func(req *http.Request) (any, sensitive bool) {
110} 118}
111 119
112func init() { 120func init() {
121 _, pat := http.DefaultServeMux.Handler(&http.Request{URL: &url.URL{Path: debugRequestsPath}})
122 if pat == debugRequestsPath {
123 panic("/debug/requests is already registered. You may have two independent copies of " +
124 "golang.org/x/net/trace in your binary, trying to maintain separate state. This may " +
125 "involve a vendored copy of golang.org/x/net/trace.")
126 }
127
113 // TODO(jbd): Serve Traces from /debug/traces in the future? 128 // TODO(jbd): Serve Traces from /debug/traces in the future?
114 // There is no requirement for a request to be present to have traces. 129 // There is no requirement for a request to be present to have traces.
115 http.HandleFunc("/debug/requests", Traces) 130 http.HandleFunc(debugRequestsPath, Traces)
116 http.HandleFunc("/debug/events", Events) 131 http.HandleFunc(debugEventsPath, Events)
132}
133
134// NewContext returns a copy of the parent context
135// and associates it with a Trace.
136func NewContext(ctx context.Context, tr Trace) context.Context {
137 return context.WithValue(ctx, contextKey, tr)
138}
139
140// FromContext returns the Trace bound to the context, if any.
141func FromContext(ctx context.Context) (tr Trace, ok bool) {
142 tr, ok = ctx.Value(contextKey).(Trace)
143 return
117} 144}
118 145
119// Traces responds with traces from the program. 146// Traces responds with traces from the program.
@@ -368,7 +395,11 @@ func New(family, title string) Trace {
368} 395}
369 396
370func (tr *trace) Finish() { 397func (tr *trace) Finish() {
371 tr.Elapsed = time.Now().Sub(tr.Start) 398 elapsed := time.Now().Sub(tr.Start)
399 tr.mu.Lock()
400 tr.Elapsed = elapsed
401 tr.mu.Unlock()
402
372 if DebugUseAfterFinish { 403 if DebugUseAfterFinish {
373 buf := make([]byte, 4<<10) // 4 KB should be enough 404 buf := make([]byte, 4<<10) // 4 KB should be enough
374 n := runtime.Stack(buf, false) 405 n := runtime.Stack(buf, false)
@@ -381,14 +412,17 @@ func (tr *trace) Finish() {
381 m.Remove(tr) 412 m.Remove(tr)
382 413
383 f := getFamily(tr.Family, true) 414 f := getFamily(tr.Family, true)
415 tr.mu.RLock() // protects tr fields in Cond.match calls
384 for _, b := range f.Buckets { 416 for _, b := range f.Buckets {
385 if b.Cond.match(tr) { 417 if b.Cond.match(tr) {
386 b.Add(tr) 418 b.Add(tr)
387 } 419 }
388 } 420 }
421 tr.mu.RUnlock()
422
389 // Add a sample of elapsed time as microseconds to the family's timeseries 423 // Add a sample of elapsed time as microseconds to the family's timeseries
390 h := new(histogram) 424 h := new(histogram)
391 h.addMeasurement(tr.Elapsed.Nanoseconds() / 1e3) 425 h.addMeasurement(elapsed.Nanoseconds() / 1e3)
392 f.LatencyMu.Lock() 426 f.LatencyMu.Lock()
393 f.Latency.Add(h) 427 f.Latency.Add(h)
394 f.LatencyMu.Unlock() 428 f.LatencyMu.Unlock()
@@ -684,25 +718,20 @@ type trace struct {
684 // Title is the title of this trace. 718 // Title is the title of this trace.
685 Title string 719 Title string
686 720
687 // Timing information. 721 // Start time of the this trace.
688 Start time.Time 722 Start time.Time
689 Elapsed time.Duration // zero while active
690
691 // Trace information if non-zero.
692 traceID uint64
693 spanID uint64
694 723
695 // Whether this trace resulted in an error.
696 IsError bool
697
698 // Append-only sequence of events (modulo discards).
699 mu sync.RWMutex 724 mu sync.RWMutex
700 events []event 725 events []event // Append-only sequence of events (modulo discards).
701 maxEvents int 726 maxEvents int
727 recycler func(interface{})
728 IsError bool // Whether this trace resulted in an error.
729 Elapsed time.Duration // Elapsed time for this trace, zero while active.
730 traceID uint64 // Trace information if non-zero.
731 spanID uint64
702 732
703 refs int32 // how many buckets this is in 733 refs int32 // how many buckets this is in
704 recycler func(interface{}) 734 disc discarded // scratch space to avoid allocation
705 disc discarded // scratch space to avoid allocation
706 735
707 finishStack []byte // where finish was called, if DebugUseAfterFinish is set 736 finishStack []byte // where finish was called, if DebugUseAfterFinish is set
708 737
@@ -714,14 +743,18 @@ func (tr *trace) reset() {
714 tr.Family = "" 743 tr.Family = ""
715 tr.Title = "" 744 tr.Title = ""
716 tr.Start = time.Time{} 745 tr.Start = time.Time{}
746
747 tr.mu.Lock()
717 tr.Elapsed = 0 748 tr.Elapsed = 0
718 tr.traceID = 0 749 tr.traceID = 0
719 tr.spanID = 0 750 tr.spanID = 0
720 tr.IsError = false 751 tr.IsError = false
721 tr.maxEvents = 0 752 tr.maxEvents = 0
722 tr.events = nil 753 tr.events = nil
723 tr.refs = 0
724 tr.recycler = nil 754 tr.recycler = nil
755 tr.mu.Unlock()
756
757 tr.refs = 0
725 tr.disc = 0 758 tr.disc = 0
726 tr.finishStack = nil 759 tr.finishStack = nil
727 for i := range tr.eventsBuf { 760 for i := range tr.eventsBuf {
@@ -801,21 +834,31 @@ func (tr *trace) LazyPrintf(format string, a ...interface{}) {
801 tr.addEvent(&lazySprintf{format, a}, false, false) 834 tr.addEvent(&lazySprintf{format, a}, false, false)
802} 835}
803 836
804func (tr *trace) SetError() { tr.IsError = true } 837func (tr *trace) SetError() {
838 tr.mu.Lock()
839 tr.IsError = true
840 tr.mu.Unlock()
841}
805 842
806func (tr *trace) SetRecycler(f func(interface{})) { 843func (tr *trace) SetRecycler(f func(interface{})) {
844 tr.mu.Lock()
807 tr.recycler = f 845 tr.recycler = f
846 tr.mu.Unlock()
808} 847}
809 848
810func (tr *trace) SetTraceInfo(traceID, spanID uint64) { 849func (tr *trace) SetTraceInfo(traceID, spanID uint64) {
850 tr.mu.Lock()
811 tr.traceID, tr.spanID = traceID, spanID 851 tr.traceID, tr.spanID = traceID, spanID
852 tr.mu.Unlock()
812} 853}
813 854
814func (tr *trace) SetMaxEvents(m int) { 855func (tr *trace) SetMaxEvents(m int) {
856 tr.mu.Lock()
815 // Always keep at least three events: first, discarded count, last. 857 // Always keep at least three events: first, discarded count, last.
816 if len(tr.events) == 0 && m > 3 { 858 if len(tr.events) == 0 && m > 3 {
817 tr.maxEvents = m 859 tr.maxEvents = m
818 } 860 }
861 tr.mu.Unlock()
819} 862}
820 863
821func (tr *trace) ref() { 864func (tr *trace) ref() {
@@ -824,6 +867,7 @@ func (tr *trace) ref() {
824 867
825func (tr *trace) unref() { 868func (tr *trace) unref() {
826 if atomic.AddInt32(&tr.refs, -1) == 0 { 869 if atomic.AddInt32(&tr.refs, -1) == 0 {
870 tr.mu.RLock()
827 if tr.recycler != nil { 871 if tr.recycler != nil {
828 // freeTrace clears tr, so we hold tr.recycler and tr.events here. 872 // freeTrace clears tr, so we hold tr.recycler and tr.events here.
829 go func(f func(interface{}), es []event) { 873 go func(f func(interface{}), es []event) {
@@ -834,6 +878,7 @@ func (tr *trace) unref() {
834 } 878 }
835 }(tr.recycler, tr.events) 879 }(tr.recycler, tr.events)
836 } 880 }
881 tr.mu.RUnlock()
837 882
838 freeTrace(tr) 883 freeTrace(tr)
839 } 884 }
@@ -844,7 +889,10 @@ func (tr *trace) When() string {
844} 889}
845 890
846func (tr *trace) ElapsedTime() string { 891func (tr *trace) ElapsedTime() string {
892 tr.mu.RLock()
847 t := tr.Elapsed 893 t := tr.Elapsed
894 tr.mu.RUnlock()
895
848 if t == 0 { 896 if t == 0 {
849 // Active trace. 897 // Active trace.
850 t = time.Since(tr.Start) 898 t = time.Since(tr.Start)
diff --git a/vendor/golang.org/x/net/trace/trace_go16.go b/vendor/golang.org/x/net/trace/trace_go16.go
deleted file mode 100644
index d608191..0000000
--- a/vendor/golang.org/x/net/trace/trace_go16.go
+++ /dev/null
@@ -1,21 +0,0 @@
1// Copyright 2017 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build !go1.7
6
7package trace
8
9import "golang.org/x/net/context"
10
11// NewContext returns a copy of the parent context
12// and associates it with a Trace.
13func NewContext(ctx context.Context, tr Trace) context.Context {
14 return context.WithValue(ctx, contextKey, tr)
15}
16
17// FromContext returns the Trace bound to the context, if any.
18func FromContext(ctx context.Context) (tr Trace, ok bool) {
19 tr, ok = ctx.Value(contextKey).(Trace)
20 return
21}
diff --git a/vendor/golang.org/x/net/trace/trace_go17.go b/vendor/golang.org/x/net/trace/trace_go17.go
deleted file mode 100644
index df6e1fb..0000000
--- a/vendor/golang.org/x/net/trace/trace_go17.go
+++ /dev/null
@@ -1,21 +0,0 @@
1// Copyright 2017 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build go1.7
6
7package trace
8
9import "context"
10
11// NewContext returns a copy of the parent context
12// and associates it with a Trace.
13func NewContext(ctx context.Context, tr Trace) context.Context {
14 return context.WithValue(ctx, contextKey, tr)
15}
16
17// FromContext returns the Trace bound to the context, if any.
18func FromContext(ctx context.Context) (tr Trace, ok bool) {
19 tr, ok = ctx.Value(contextKey).(Trace)
20 return
21}