diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /js/src/tests/ecma_5 | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'js/src/tests/ecma_5')
411 files changed, 89231 insertions, 0 deletions
diff --git a/js/src/tests/ecma_5/Array/browser.js b/js/src/tests/ecma_5/Array/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Array/browser.js diff --git a/js/src/tests/ecma_5/Array/frozen-dense-array.js b/js/src/tests/ecma_5/Array/frozen-dense-array.js new file mode 100644 index 000000000..9db63036f --- /dev/null +++ b/js/src/tests/ecma_5/Array/frozen-dense-array.js @@ -0,0 +1,61 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Author: Emilio Cobos Álvarez <ecoal95@gmail.com> + */ +var BUGNUMBER = 1310744; +var summary = "Dense array properties shouldn't be modified when they're frozen"; + +print(BUGNUMBER + ": " + summary); + +var a = Object.freeze([4, 5, 1]); + +function assertArrayIsExpected() { + assertEq(a.length, 3); + assertEq(a[0], 4); + assertEq(a[1], 5); + assertEq(a[2], 1); +} + +assertThrowsInstanceOf(() => a.reverse(), TypeError); +assertThrowsInstanceOf(() => a.shift(), TypeError); +assertThrowsInstanceOf(() => a.unshift(0), TypeError); +assertThrowsInstanceOf(() => a.sort(function() {}), TypeError); +assertThrowsInstanceOf(() => a.pop(), TypeError); +assertThrowsInstanceOf(() => a.fill(0), TypeError); +assertThrowsInstanceOf(() => a.splice(0, 1, 1), TypeError); +assertThrowsInstanceOf(() => a.push("foo"), TypeError); +assertThrowsInstanceOf(() => { "use strict"; a.length = 5; }, TypeError); +assertThrowsInstanceOf(() => { "use strict"; a[2] = "foo"; }, TypeError); +assertThrowsInstanceOf(() => { "use strict"; delete a[0]; }, TypeError); +assertThrowsInstanceOf(() => a.splice(Math.a), TypeError); + +// Shouldn't throw, since this is not strict mode, but shouldn't change the +// value of the property. +a.length = 5; +a[2] = "foo"; +assertEq(delete a[0], false); + +assertArrayIsExpected(); + +var watchpointCalled = false; +// NOTE: Be careful with the position of this test, since this sparsifies the +// elements and you might not test what you think you're testing otherwise. +a.watch(2, function(prop, oldValue, newValue) { + watchpointCalled = true; + assertEq(prop, 2); + assertEq(oldValue, 1); + assertEq(newValue, "foo"); +}); + +assertArrayIsExpected(); + +a.length = 5; +a[2] = "foo"; +assertEq(watchpointCalled, true); +assertEq(delete a[0], false); + +assertArrayIsExpected(); + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Array/frozen-dict-mode-length.js b/js/src/tests/ecma_5/Array/frozen-dict-mode-length.js new file mode 100644 index 000000000..e519b5892 --- /dev/null +++ b/js/src/tests/ecma_5/Array/frozen-dict-mode-length.js @@ -0,0 +1,18 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Author: Emilio Cobos Álvarez <ecoal95@gmail.com> + */ +var BUGNUMBER = 1312948; +var summary = "Freezing a dictionary mode object with a length property should make Object.isFrozen report true"; + +print(BUGNUMBER + ": " + summary); + +/* Convert to dictionary mode */ +delete Array.prototype.slice; + +Object.freeze(Array.prototype); +assertEq(Object.isFrozen(Array.prototype), true); + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Array/index-with-null-character.js b/js/src/tests/ecma_5/Array/index-with-null-character.js new file mode 100644 index 000000000..51e71bc8a --- /dev/null +++ b/js/src/tests/ecma_5/Array/index-with-null-character.js @@ -0,0 +1,18 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var testArray = [1, 2, 3] +assertEq(testArray['0' + '\0'], undefined); +assertEq(testArray['1' + '\0' + 'aaaa'], undefined) +assertEq(testArray['\0' + '2'], undefined); +assertEq(testArray['\0' + ' 2'], undefined); + +testArray['\0'] = 'hello'; +testArray[' \0'] = 'world'; +assertEq(testArray['\0'], 'hello'); +assertEq(testArray[' \0'], 'world'); + +if (typeof reportCompare == 'function') + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Array/join-01.js b/js/src/tests/ecma_5/Array/join-01.js new file mode 100644 index 000000000..3cc6cccd0 --- /dev/null +++ b/js/src/tests/ecma_5/Array/join-01.js @@ -0,0 +1,83 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +print("ES5: Array.prototype.join"); + +/************** + * BEGIN TEST * + **************/ + +var count; +var stringifyCounter = { toString: function() { count++; return "obj"; } }; + +var arr = [1, 2, 3, 4, 5]; +assertEq(arr.join(), "1,2,3,4,5"); +assertEq(arr.join(","), "1,2,3,4,5"); +assertEq(arr.join(undefined), "1,2,3,4,5"); +assertEq(arr.join(4), "142434445"); +assertEq(arr.join(""), "12345"); + +count = 0; +assertEq(arr.join(stringifyCounter), "1obj2obj3obj4obj5"); +assertEq(count, 1); + +var holey = [1, 2, , 4, 5]; +assertEq(holey.join(), "1,2,,4,5"); +assertEq(holey.join(","), "1,2,,4,5"); +assertEq(holey.join(undefined), "1,2,,4,5"); +assertEq(holey.join(4), "14244445"); + +count = 0; +assertEq(holey.join(stringifyCounter), "1obj2objobj4obj5"); +assertEq(count, 1); + +var nully = [1, 2, 3, null, 5]; +assertEq(nully.join(), "1,2,3,,5"); +assertEq(nully.join(","), "1,2,3,,5"); +assertEq(nully.join(undefined), "1,2,3,,5"); +assertEq(nully.join(4), "14243445"); + +count = 0; +assertEq(nully.join(stringifyCounter), "1obj2obj3objobj5"); +assertEq(count, 1); + +var undefiney = [1, undefined, 3, 4, 5]; +assertEq(undefiney.join(), "1,,3,4,5"); +assertEq(undefiney.join(","), "1,,3,4,5"); +assertEq(undefiney.join(undefined), "1,,3,4,5"); +assertEq(undefiney.join(4), "14434445"); + +count = 0; +assertEq(undefiney.join(stringifyCounter), "1objobj3obj4obj5"); +assertEq(count, 1); + +var log = ''; +arr = {length: {valueOf: function () { log += "L"; return 2; }}, + 0: "x", 1: "z"}; +var sep = {toString: function () { log += "S"; return "y"; }}; +assertEq(Array.prototype.join.call(arr, sep), "xyz"); +assertEq(log, "LS"); + +var funky = + { + toString: function() + { + Array.prototype[1] = "chorp"; + Object.prototype[3] = "fnord"; + return "funky"; + } + }; +var trailingHoles = [0, funky, /* 2 */, /* 3 */,]; +assertEq(trailingHoles.join(""), "0funkyfnord"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/length-01.js b/js/src/tests/ecma_5/Array/length-01.js new file mode 100644 index 000000000..4fe81e2b6 --- /dev/null +++ b/js/src/tests/ecma_5/Array/length-01.js @@ -0,0 +1,71 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 600392; +var summary = + 'Object.preventExtensions([]).length = 0 should do nothing, not throw'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + + +function testEmpty() +{ + var a = []; + assertEq(a.length, 0); + assertEq(Object.preventExtensions(a), a); + assertEq(a.length, 0); + a.length = 0; + assertEq(a.length, 0); +} +testEmpty(); + +function testEmptyStrict() +{ + "use strict"; + var a = []; + assertEq(a.length, 0); + assertEq(Object.preventExtensions(a), a); + assertEq(a.length, 0); + a.length = 0; + assertEq(a.length, 0); +} +testEmptyStrict(); + +function testNonEmpty() +{ + var a = [1, 2, 3]; + assertEq(a.length, 3); + assertEq(Object.preventExtensions(a), a); + assertEq(a.length, 3); + a.length = 0; + assertEq(a.length, 0); +} +testNonEmpty(); + +function testNonEmptyStrict() +{ + "use strict"; + var a = [1, 2, 3]; + assertEq(a.length, 3); + assertEq(Object.preventExtensions(a), a); + assertEq(a.length, 3); + a.length = 0; + assertEq(a.length, 0); +} +testNonEmptyStrict(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Array/length-nonwritable-redefine-nop.js b/js/src/tests/ecma_5/Array/length-nonwritable-redefine-nop.js new file mode 100644 index 000000000..1d7fe32c8 --- /dev/null +++ b/js/src/tests/ecma_5/Array/length-nonwritable-redefine-nop.js @@ -0,0 +1,70 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 858381; +var summary = "No-op array length redefinition"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var arr; + +// initializedLength == capacity == length +// 6 == 6 == 6 +arr = Object.defineProperty([0, 1, 2, 3, 4, 5], "length", { writable: false }); +Object.defineProperty(arr, "length", { value: 6 }); +Object.defineProperty(arr, "length", { writable: false }); +Object.defineProperty(arr, "length", { configurable: false }); +Object.defineProperty(arr, "length", { writable: false, configurable: false }); +Object.defineProperty(arr, "length", { writable: false, value: 6 }); +Object.defineProperty(arr, "length", { configurable: false, value: 6 }); +Object.defineProperty(arr, "length", { writable: false, configurable: false, value: 6 }); + +// initializedLength == capacity < length +// 6 == 6 < 8 +arr = Object.defineProperty([0, 1, 2, 3, 4, 5], "length", { value: 8, writable: false }); +Object.defineProperty(arr, "length", { value: 8 }); +Object.defineProperty(arr, "length", { writable: false }); +Object.defineProperty(arr, "length", { configurable: false }); +Object.defineProperty(arr, "length", { writable: false, configurable: false }); +Object.defineProperty(arr, "length", { writable: false, value: 8 }); +Object.defineProperty(arr, "length", { configurable: false, value: 8 }); +Object.defineProperty(arr, "length", { writable: false, configurable: false, value: 8 }); + +// initializedLength < capacity == length +// 7 < 8 == 8 +arr = Object.defineProperty([0, 1, 2, 3, 4, 5, 6, /* hole */, ], "length", + { value: 8, writable: false }); +Object.defineProperty(arr, "length", { value: 8 }); +Object.defineProperty(arr, "length", { writable: false }); +Object.defineProperty(arr, "length", { configurable: false }); +Object.defineProperty(arr, "length", { writable: false, configurable: false }); +Object.defineProperty(arr, "length", { writable: false, value: 8 }); +Object.defineProperty(arr, "length", { configurable: false, value: 8 }); +Object.defineProperty(arr, "length", { writable: false, configurable: false, value: 8 }); + +// initializedLength < capacity < length +// 3 < 6 < 8 +arr = Object.defineProperty([0, 1, 2], "length", { value: 8, writable: false }); +Object.defineProperty(arr, "length", { value: 8 }); +Object.defineProperty(arr, "length", { writable: false }); +Object.defineProperty(arr, "length", { configurable: false }); +Object.defineProperty(arr, "length", { writable: false, configurable: false }); +Object.defineProperty(arr, "length", { writable: false, value: 8 }); +Object.defineProperty(arr, "length", { configurable: false, value: 8 }); +Object.defineProperty(arr, "length", { writable: false, configurable: false, value: 8 }); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/length-set-object.js b/js/src/tests/ecma_5/Array/length-set-object.js new file mode 100644 index 000000000..bf80b592e --- /dev/null +++ b/js/src/tests/ecma_5/Array/length-set-object.js @@ -0,0 +1,68 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 657298; +var summary = 'Various quirks of setting array length properties to objects'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function invokeConversionTwice1() +{ + var count = 0; + [].length = { valueOf: function() { count++; return 1; } }; + assertEq(count, 2); +} +invokeConversionTwice1(); + +function invokeConversionTwice2() +{ + var count = 0; + [].length = { toString: function() { count++; return 1; }, valueOf: null }; + assertEq(count, 2); +} +invokeConversionTwice2(); + +function dontOverwriteError1() +{ + try + { + [].length = { valueOf: {}, toString: {} }; + throw new Error("didn't throw a TypeError"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "expected a TypeError running out of conversion options, got " + e); + } +} +dontOverwriteError1(); + +function dontOverwriteError2() +{ + try + { + [].length = { valueOf: function() { throw "error"; } }; + throw new Error("didn't throw a TypeError"); + } + catch (e) + { + assertEq(e, "error", "expected 'error' from failed conversion, got " + e); + } +} +dontOverwriteError2(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Array/length-truncate-nonconfigurable-sparse.js b/js/src/tests/ecma_5/Array/length-truncate-nonconfigurable-sparse.js new file mode 100644 index 000000000..a51fd4089 --- /dev/null +++ b/js/src/tests/ecma_5/Array/length-truncate-nonconfigurable-sparse.js @@ -0,0 +1,110 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 858381; +var summary = + "Array length redefinition behavior with non-configurable elements"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function addDataProperty(obj, prop, value, enumerable, configurable, writable) +{ + var desc = + { enumerable: enumerable, + configurable: configurable, + writable: writable, + value: value }; + Object.defineProperty(obj, prop, desc); +} + +function nonstrict() +{ + var arr = [0, , 2, , , 5]; + + addDataProperty(arr, 31415926, "foo", true, true, true); + addDataProperty(arr, 123456789, "bar", true, true, false); + addDataProperty(arr, 8675309, "qux", false, true, true); + addDataProperty(arr, 1735039, "eit", false, true, false); + addDataProperty(arr, 987654321, "fun", false, true, false); + + // non-array indexes to spice things up + addDataProperty(arr, "foopy", "sdfsd", false, false, false); + addDataProperty(arr, 4294967296, "psych", true, false, false); + addDataProperty(arr, 4294967295, "psych", true, false, false); + + addDataProperty(arr, 27182818, "eep", false, false, false); + + // Truncate...but only as far as possible. + arr.length = 1; + + assertEq(arr.length, 27182819); + + var props = Object.getOwnPropertyNames(arr).sort(); + var expected = + ["0", "2", "5", "1735039", "8675309", "27182818", + "foopy", "4294967296", "4294967295", "length"].sort(); + + assertEq(props.length, expected.length); + for (var i = 0; i < props.length; i++) + assertEq(props[i], expected[i], "unexpected property: " + props[i]); +} +nonstrict(); + +function strict() +{ + "use strict"; + + var arr = [0, , 2, , , 5]; + + addDataProperty(arr, 31415926, "foo", true, true, true); + addDataProperty(arr, 123456789, "bar", true, true, false); + addDataProperty(arr, 8675309, "qux", false, true, true); + addDataProperty(arr, 1735039, "eit", false, true, false); + addDataProperty(arr, 987654321, "fun", false, true, false); + + // non-array indexes to spice things up + addDataProperty(arr, "foopy", "sdfsd", false, false, false); + addDataProperty(arr, 4294967296, "psych", true, false, false); + addDataProperty(arr, 4294967295, "psych", true, false, false); + + addDataProperty(arr, 27182818, "eep", false, false, false); + + try + { + arr.length = 1; + throw new Error("didn't throw?!"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "non-configurable property should trigger TypeError, got " + e); + } + + assertEq(arr.length, 27182819); + + var props = Object.getOwnPropertyNames(arr).sort(); + var expected = + ["0", "2", "5", "1735039", "8675309", "27182818", + "foopy", "4294967296", "4294967295", "length"].sort(); + + assertEq(props.length, expected.length); + for (var i = 0; i < props.length; i++) + assertEq(props[i], expected[i], "unexpected property: " + props[i]); +} +strict(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/length-truncate-nonconfigurable.js b/js/src/tests/ecma_5/Array/length-truncate-nonconfigurable.js new file mode 100644 index 000000000..e9a66fe0a --- /dev/null +++ b/js/src/tests/ecma_5/Array/length-truncate-nonconfigurable.js @@ -0,0 +1,48 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 858381; +var summary = + "Array length redefinition behavior with non-configurable elements"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var arr = [0, 1, 2]; +Object.defineProperty(arr, 1, { configurable: false }); + +try +{ + Object.defineProperty(arr, "length", { value: 0, writable: false }); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "must throw TypeError when array truncation would have to remove " + + "non-configurable elements"); +} + +assertEq(arr.length, 2, "length is highest remaining index plus one"); + +var desc = Object.getOwnPropertyDescriptor(arr, "length"); +assertEq(desc !== undefined, true); + +assertEq(desc.value, 2); +assertEq(desc.writable, false); +assertEq(desc.enumerable, false); +assertEq(desc.configurable, false); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/length-truncate-with-indexed.js b/js/src/tests/ecma_5/Array/length-truncate-with-indexed.js new file mode 100644 index 000000000..9e4da812a --- /dev/null +++ b/js/src/tests/ecma_5/Array/length-truncate-with-indexed.js @@ -0,0 +1,101 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 858381; +var summary = + "Array length setting/truncating with non-dense, indexed elements"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function testTruncateDenseAndSparse() +{ + var arr; + + // initialized length 16, capacity same + arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]; + + // plus a sparse element + arr[987654321] = 987654321; + + // lop off the sparse element and half the dense elements, shrink capacity + arr.length = 8; + + assertEq(987654321 in arr, false); + assertEq(arr[987654321], undefined); + assertEq(arr.length, 8); +} +testTruncateDenseAndSparse(); + +function testTruncateSparse() +{ + // initialized length 8, capacity same + var arr = [0, 1, 2, 3, 4, 5, 6, 7]; + + // plus a sparse element + arr[987654321] = 987654321; + + // lop off the sparse element, leave initialized length/capacity unchanged + arr.length = 8; + + assertEq(987654321 in arr, false); + assertEq(arr[987654321], undefined); + assertEq(arr.length, 8); +} +testTruncateSparse(); + +function testTruncateDenseAndSparseShrinkCapacity() +{ + // initialized length 11, capacity...somewhat larger, likely 16 + var arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; + + // plus a sparse element + arr[987654321] = 987654321; + + // lop off the sparse element, reduce initialized length, reduce capacity + arr.length = 8; + + assertEq(987654321 in arr, false); + assertEq(arr[987654321], undefined); + assertEq(arr.length, 8); +} +testTruncateDenseAndSparseShrinkCapacity(); + +function testTruncateSparseShrinkCapacity() +{ + // initialized length 8, capacity same + var arr = [0, 1, 2, 3, 4, 5, 6, 7]; + + // capacity expands to accommodate, initialized length remains same (not equal + // to capacity or length) + arr[15] = 15; + + // now no elements past initialized length + delete arr[15]; + + // ...except a sparse element + arr[987654321] = 987654321; + + // trims sparse element, doesn't change initialized length, shrinks capacity + arr.length = 8; + + assertEq(987654321 in arr, false); + assertEq(arr[987654321], undefined); + assertEq(arr.length, 8); +} +testTruncateSparseShrinkCapacity(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/pop-empty-nonwritable.js b/js/src/tests/ecma_5/Array/pop-empty-nonwritable.js new file mode 100644 index 000000000..f42ca98f5 --- /dev/null +++ b/js/src/tests/ecma_5/Array/pop-empty-nonwritable.js @@ -0,0 +1,32 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 858381; +var summary = 'Object.freeze([]).pop() must throw a TypeError'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +try +{ + Object.freeze([]).pop(); + throw new Error("didn't throw"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "should have thrown TypeError, instead got: " + e); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/pop-nonarray-higher-elements.js b/js/src/tests/ecma_5/Array/pop-nonarray-higher-elements.js new file mode 100644 index 000000000..052eb4230 --- /dev/null +++ b/js/src/tests/ecma_5/Array/pop-nonarray-higher-elements.js @@ -0,0 +1,91 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 909602; +var summary = + "Array.prototype.pop shouldn't touch elements greater than length on " + + "non-arrays"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function doTest(obj, index) +{ + // print("testing " + JSON.stringify(obj) + " with index " + index); + assertEq(Array.prototype.pop.call(obj), undefined); + assertEq(index in obj, true); + assertEq(obj[index], 42); +} + +// not-super-much-later element + +// non-zero length +function testPop1() +{ + var obj = { length: 2, 3: 42 }; + doTest(obj, 3); +} +for (var i = 0; i < 50; i++) + testPop1(); + +// zero length +function testPop2() +{ + var obj = { length: 0, 3: 42 }; + doTest(obj, 3); +} +for (var i = 0; i < 50; i++) + testPop2(); + +// much-later (but dense) element + +// non-zero length +function testPop3() +{ + var obj = { length: 2, 55: 42 }; + doTest(obj, 55); +} +for (var i = 0; i < 50; i++) + testPop3(); + +// zero length +function testPop4() +{ + var obj = { length: 0, 55: 42 }; + doTest(obj, 55); +} +for (var i = 0; i < 50; i++) + testPop4(); + +// much much much later (sparse) element + +// non-zero length +function testPop5() +{ + var obj = { length: 2, 65530: 42 }; + doTest(obj, 65530); +} +for (var i = 0; i < 50; i++) + testPop5(); + +// zero length +function testPop6() +{ + var obj = { length: 0, 65530: 42 }; + doTest(obj, 65530); +} +for (var i = 0; i < 50; i++) + testPop6(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/redefine-length-frozen-array.js b/js/src/tests/ecma_5/Array/redefine-length-frozen-array.js new file mode 100644 index 000000000..ca3b43018 --- /dev/null +++ b/js/src/tests/ecma_5/Array/redefine-length-frozen-array.js @@ -0,0 +1,26 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 866580; +var summary = "Assertion redefining length property of a frozen array"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var arr = Object.freeze([]); +Object.defineProperty(arr, "length", {}); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/redefine-length-frozen-dictionarymode-array.js b/js/src/tests/ecma_5/Array/redefine-length-frozen-dictionarymode-array.js new file mode 100644 index 000000000..bca6e0cd7 --- /dev/null +++ b/js/src/tests/ecma_5/Array/redefine-length-frozen-dictionarymode-array.js @@ -0,0 +1,36 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 880591; +var summary = + "Assertion redefining length property of a frozen dictionary-mode array"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function convertToDictionaryMode(arr) +{ + Object.defineProperty(arr, 0, { configurable: true }); + Object.defineProperty(arr, 1, { configurable: true }); + delete arr[0]; +} + +var arr = []; +convertToDictionaryMode(arr); +Object.freeze(arr); +Object.defineProperty(arr, "length", {}); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/redefine-nonwritable-length-custom-conversion-call-counts.js b/js/src/tests/ecma_5/Array/redefine-nonwritable-length-custom-conversion-call-counts.js new file mode 100644 index 000000000..b77f39675 --- /dev/null +++ b/js/src/tests/ecma_5/Array/redefine-nonwritable-length-custom-conversion-call-counts.js @@ -0,0 +1,45 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 866700; +var summary = "Assertion redefining non-writable length to a non-numeric value"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var count = 0; + +var convertible = + { + valueOf: function() + { + count++; + return 0; + } + }; + +var arr = []; +Object.defineProperty(arr, "length", { value: 0, writable: false }); + +Object.defineProperty(arr, "length", { value: convertible }); +assertEq(count, 2); + +Object.defineProperty(arr, "length", { value: convertible }); +assertEq(count, 4); + +assertEq(arr.length, 0); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/redefine-nonwritable-length-custom-conversion-throw.js b/js/src/tests/ecma_5/Array/redefine-nonwritable-length-custom-conversion-throw.js new file mode 100644 index 000000000..f3003a6bd --- /dev/null +++ b/js/src/tests/ecma_5/Array/redefine-nonwritable-length-custom-conversion-throw.js @@ -0,0 +1,58 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 866700; +var summary = "Assertion redefining non-writable length to a non-numeric value"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var count = 0; + +var convertible = + { + valueOf: function() + { + count++; + if (count > 2) + return 0; + throw new SyntaxError("fnord"); + } + }; + +var arr = []; +Object.defineProperty(arr, "length", { value: 0, writable: false }); + +try +{ + Object.defineProperty(arr, "length", + { + value: convertible, + writable: true, + configurable: true, + enumerable: true + }); + throw new Error("didn't throw"); +} +catch (e) +{ + assertEq(e instanceof SyntaxError, true, "expected SyntaxError, got " + e); +} + +assertEq(count, 1); +assertEq(arr.length, 0); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/redefine-nonwritable-length-nonnumeric.js b/js/src/tests/ecma_5/Array/redefine-nonwritable-length-nonnumeric.js new file mode 100644 index 000000000..aab9c1d5d --- /dev/null +++ b/js/src/tests/ecma_5/Array/redefine-nonwritable-length-nonnumeric.js @@ -0,0 +1,32 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 866700; +var summary = "Assertion redefining non-writable length to a non-numeric value"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var arr = []; +Object.defineProperty(arr, "length", { value: 0, writable: false }); + +// Per Array's magical behavior, the value in the descriptor gets canonicalized +// *before* SameValue comparisons occur, so this shouldn't throw. +Object.defineProperty(arr, "length", { value: '' }); + +assertEq(arr.length, 0); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/regress-599159.js b/js/src/tests/ecma_5/Array/regress-599159.js new file mode 100644 index 000000000..bd8225b52 --- /dev/null +++ b/js/src/tests/ecma_5/Array/regress-599159.js @@ -0,0 +1,10 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var b = Object.create(Array.prototype); +b.length = 12; +assertEq(b.length, 12); + +reportCompare(true,true); diff --git a/js/src/tests/ecma_5/Array/reverse-order-of-low-high-accesses.js b/js/src/tests/ecma_5/Array/reverse-order-of-low-high-accesses.js new file mode 100644 index 000000000..a9b1e80de --- /dev/null +++ b/js/src/tests/ecma_5/Array/reverse-order-of-low-high-accesses.js @@ -0,0 +1,88 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 858677; +var summary = + "[].reverse should swap elements low to high using accesses to low " + + "elements, then accesses to high elements"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var observed = []; + +// (0, 7) hits the lowerExists/upperExists case. +// (1, 6) hits the !lowerExists/upperExists case. +// (2, 5) hits the lowerExists/!upperExists case. +// (3, 4) hits the !lowerExists/!upperExists case. +// +// It'd be a good idea to have a second version of this test at some point +// where the "array" being reversed is a proxy, to detect proper ordering of +// getproperty, hasproperty, setproperty into a hole, and deleteproperty from a +// non-configurable element. But at present our Array.prototype.reverse +// implementation probably doesn't conform fully to all this (because our +// internal MOP is still slightly off), so punt for now. +var props = + { + 0: { + configurable: true, + get: function() { observed.push("index 0 get"); return "index 0 get"; }, + set: function(v) { observed.push("index 0 set: " + v); } + }, + /* 1: hole */ + 2: { + configurable: true, + get: function() { observed.push("index 2 get"); return "index 2 get"; }, + set: function(v) { observed.push("index 2 set: " + v); } + }, + /* 3: hole */ + /* 4: hole */ + /* 5: hole */ + 6: { + configurable: true, + get: function() { observed.push("index 6 get"); return "index 6 get"; }, + set: function(v) { observed.push("index 6 set: " + v); } + }, + 7: { + configurable: true, + get: function() { observed.push("index 7 get"); return "index 7 get"; }, + set: function(v) { observed.push("index 7 set: " + v); } + }, + }; + +var arr = Object.defineProperties(new Array(8), props); + +arr.reverse(); + +var expectedObserved = + ["index 0 get", "index 7 get", "index 0 set: index 7 get", "index 7 set: index 0 get", + "index 6 get", + "index 2 get" + /* nothing for 3/4 */]; +print(observed); +// Do this before the assertions below futz even more with |observed|. +assertEq(observed.length, expectedObserved.length); +for (var i = 0; i < expectedObserved.length; i++) + assertEq(observed[i], expectedObserved[i]); + +assertEq(arr[0], "index 0 get"); // no deletion, setting doesn't overwrite +assertEq(arr[1], "index 6 get"); // copies result of getter +assertEq(2 in arr, false); // deleted +assertEq(3 in arr, false); // never there +assertEq(4 in arr, false); // never there +assertEq(arr[5], "index 2 get"); // copies result of getter +assertEq(6 in arr, false); // deleted +assertEq(arr[7], "index 7 get"); // no deletion, setter doesn't overwrite + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/shell.js b/js/src/tests/ecma_5/Array/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Array/shell.js diff --git a/js/src/tests/ecma_5/Array/sort-01.js b/js/src/tests/ecma_5/Array/sort-01.js new file mode 100644 index 000000000..da90220ae --- /dev/null +++ b/js/src/tests/ecma_5/Array/sort-01.js @@ -0,0 +1,23 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 604971; +var summary = 'array.sort compare-function gets incorrect this'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +[1, 2, 3].sort(function() { "use strict"; assertEq(this, undefined); }); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Array/sort-array-with-holes-and-undefined.js b/js/src/tests/ecma_5/Array/sort-array-with-holes-and-undefined.js new file mode 100644 index 000000000..b77c6d341 --- /dev/null +++ b/js/src/tests/ecma_5/Array/sort-array-with-holes-and-undefined.js @@ -0,0 +1,32 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 664528; +var summary = + "Sorting an array containing only holes and |undefined| should move all " + + "|undefined| to the start of the array"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var a = [, , , undefined]; +a.sort(); + +assertEq(a.hasOwnProperty(0), true); +assertEq(a[0], undefined); +assertEq(a.hasOwnProperty(1), false); +assertEq(a.hasOwnProperty(2), false); +assertEq(a.hasOwnProperty(3), false); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/splice-return-array-elements-defined-not-set.js b/js/src/tests/ecma_5/Array/splice-return-array-elements-defined-not-set.js new file mode 100644 index 000000000..2f5eca610 --- /dev/null +++ b/js/src/tests/ecma_5/Array/splice-return-array-elements-defined-not-set.js @@ -0,0 +1,46 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 668024; +var summary = + 'Array.prototype.splice should define, not set, the elements of the array ' + + 'it returns'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +Object.defineProperty(Object.prototype, 2, + { + set: function(v) + { + throw new Error("setter on Object.prototype called!"); + }, + get: function() { return "fnord"; }, + enumerable: false, + configurable: true + }); + +var arr = [0, 1, 2, 3, 4, 5]; +var removed = arr.splice(0, 6); + +assertEq(arr.length, 0); +assertEq(removed.length, 6); +assertEq(removed[0], 0); +assertEq(removed[1], 1); +assertEq(removed[2], 2); +assertEq(removed[3], 3); +assertEq(removed[4], 4); +assertEq(removed[5], 5); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/splice-suppresses-unvisited-indexes.js b/js/src/tests/ecma_5/Array/splice-suppresses-unvisited-indexes.js new file mode 100644 index 000000000..717116fa0 --- /dev/null +++ b/js/src/tests/ecma_5/Array/splice-suppresses-unvisited-indexes.js @@ -0,0 +1,61 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 668024; +var summary = + 'Array.prototype.splice, when it deletes elements, should make sure any ' + + 'deleted but not visited elements are suppressed from subsequent enumeration'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var arr = [0, 1, 2, 3, 4, 5, , 7]; + +var seen = []; +var sawOneBeforeThree = true; +for (var p in arr) +{ + if (p === "1") + { + // The order of enumeration of properties is unspecified, so technically, + // it would be kosher to enumerate "1" last, say, such that all properties + // in the array actually were enumerated, including an index which splice + // would delete. Don't flag that case as a failure. (SpiderMonkey doesn't + // do this, and neither do any of the other browser engines, but it is + // permissible behavior.) + if (seen.indexOf("3") >= 0) + { + sawOneBeforeThree = false; + break; + } + + arr.splice(2, 3); + } + + seen.push(p); +} + +if (sawOneBeforeThree) +{ + // ES5 12.6.4 states: + // + // If a property that has not yet been visited during enumeration is + // deleted, then it will not be visited. + // + // So if we haven't seen "3" by the time we see "1", the splice call above + // will delete "3", and therefore we must not see it. + assertEq(seen.indexOf("3"), -1); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Array/toLocaleString-01.js b/js/src/tests/ecma_5/Array/toLocaleString-01.js new file mode 100644 index 000000000..458283e63 --- /dev/null +++ b/js/src/tests/ecma_5/Array/toLocaleString-01.js @@ -0,0 +1,36 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 562446; +var summary = 'ES5: Array.prototype.toLocaleString'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var o; + +o = { length: 2, 0: 7, 1: { toLocaleString: function() { return "baz" } } }; +assertEq(Array.prototype.toLocaleString.call(o), "7,baz"); + +o = {}; +assertEq(Array.prototype.toLocaleString.call(o), ""); + +var log = ''; +arr = {length: {valueOf: function () { log += "L"; return 2; }}, + 0: "x", 1: "z"}; +assertEq(Array.prototype.toLocaleString.call(arr), "x,z"); +assertEq(log, "L"); + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Array/toString-01.js b/js/src/tests/ecma_5/Array/toString-01.js new file mode 100644 index 000000000..a92fe6369 --- /dev/null +++ b/js/src/tests/ecma_5/Array/toString-01.js @@ -0,0 +1,52 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 562446; +var summary = 'ES5: Array.prototype.toString'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var o; + +o = { join: function() { assertEq(arguments.length, 0); return "ohai"; } }; +assertEq(Array.prototype.toString.call(o), "ohai"); + +o = {}; +assertEq(Array.prototype.toString.call(o), "[object Object]"); + +Array.prototype.join = function() { return "kthxbai"; }; +assertEq(Array.prototype.toString.call([]), "kthxbai"); + +o = { join: 17 }; +assertEq(Array.prototype.toString.call(o), "[object Object]"); + +o = { get join() { throw 42; } }; +try +{ + var str = Array.prototype.toString.call(o); + assertEq(true, false, + "expected an exception calling [].toString on an object with a " + + "join getter that throws, got " + str + " instead"); +} +catch (e) +{ + assertEq(e, 42, + "expected thrown e === 42 when calling [].toString on an object " + + "with a join getter that throws, got " + e); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Array/unshift-01.js b/js/src/tests/ecma_5/Array/unshift-01.js new file mode 100644 index 000000000..84c9d88a5 --- /dev/null +++ b/js/src/tests/ecma_5/Array/unshift-01.js @@ -0,0 +1,45 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 614070; +var summary = 'Array.prototype.unshift without args'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// ES6 ToLength clamps length values to 2^53 - 1. +// We currently clamp to 2^32 - 1 instead. See bug 924058. +var MAX_LENGTH = 0xffffffff; + +var a = {}; +a.length = MAX_LENGTH + 1; +assertEq([].unshift.call(a), MAX_LENGTH); +assertEq(a.length, MAX_LENGTH); + +function testGetSet(len, expected) { + var newlen; + var a = { get length() { return len; }, set length(v) { newlen = v; } }; + var res = [].unshift.call(a); + assertEq(res, expected); + assertEq(newlen, expected); +} + +testGetSet(0, 0); +testGetSet(10, 10); +testGetSet("1", 1); +testGetSet(null, 0); +testGetSet(MAX_LENGTH + 2, MAX_LENGTH); +testGetSet(-5, 0); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Boolean/15.6.4.2.js b/js/src/tests/ecma_5/Boolean/15.6.4.2.js new file mode 100644 index 000000000..3e10afa38 --- /dev/null +++ b/js/src/tests/ecma_5/Boolean/15.6.4.2.js @@ -0,0 +1,17 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(raisesException(TypeError)('Boolean.prototype.toString.call(42)'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toString.call("")'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toString.call({})'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toString.call(null)'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toString.call([])'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toString.call(undefined)'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toString.call(new String())'), true); + +assertEq(completesNormally('Boolean.prototype.toString.call(true)'), true); +assertEq(completesNormally('Boolean.prototype.toString.call(new Boolean(true))'), true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Boolean/browser.js b/js/src/tests/ecma_5/Boolean/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Boolean/browser.js diff --git a/js/src/tests/ecma_5/Boolean/no-boolean-toJSON.js b/js/src/tests/ecma_5/Boolean/no-boolean-toJSON.js new file mode 100644 index 000000000..e12c8049b --- /dev/null +++ b/js/src/tests/ecma_5/Boolean/no-boolean-toJSON.js @@ -0,0 +1,17 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Author: Tom Schuster + */ + +JSON.stringify(new Boolean(false), function(k, v) { + assertEq(typeof v, "object"); +}); + +assertEq(Boolean.prototype.hasOwnProperty('toJSON'), false); + +Object.prototype.toJSON = function() { return 2; }; +assertEq(JSON.stringify(new Boolean(true)), "2"); + +if (typeof reportCompare === 'function') + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Boolean/shell.js b/js/src/tests/ecma_5/Boolean/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Boolean/shell.js diff --git a/js/src/tests/ecma_5/Date/15.9.4.2.js b/js/src/tests/ecma_5/Date/15.9.4.2.js new file mode 100644 index 000000000..fb34efef6 --- /dev/null +++ b/js/src/tests/ecma_5/Date/15.9.4.2.js @@ -0,0 +1,136 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 430930; + + +//----------------------------------------------------------------------------- +test(); +//----------------------------------------------------------------------------- + +function iso(d) +{ + return new Date(d).toISOString(); +} + +function check(s, millis){ + description = "Date.parse('"+s+"') == '"+iso(millis)+"'"; + expected = millis; + actual = Date.parse(s); + reportCompare(expected, actual, description); +} + +function checkInvalid(s) +{ + description = "Date.parse('"+s+"') produces invalid date"; + expected = NaN; + actual = Date.parse(s); + reportCompare(expected, actual, description); +} + +function dd(year, month, day, hour, minute, second, millis){ + return Date.UTC(year, month-1, day, hour, minute, second, millis); +} + +function TZAtDate(d){ + return d.getTimezoneOffset() * 60000; +} + +function TZInMonth(month){ + return TZAtDate(new Date(dd(2009,month,1,0,0,0,0))); +} + +function test() +{ + enterFunc ('test'); + printBugNumber(BUGNUMBER); + + JanTZ = TZInMonth(1); + JulTZ = TZInMonth(7); + CurrTZ = TZAtDate(new Date()); + + // formats with explicit timezone + check("2009-07-23T19:53:21.001+12:00", dd(2009,7,23,7,53,21,1)); + check("2009-07-23T19:53:21+12:00", dd(2009,7,23,7,53,21,0)); + check("2009-07-23T19:53+12:00", dd(2009,7,23,7,53,0,0)); + + check("2009-07T19:53:21.001+12:00", dd(2009,7,1,7,53,21,1)); + check("2009-07T19:53:21+12:00", dd(2009,7,1,7,53,21,0)); + check("2009-07T19:53+12:00", dd(2009,7,1,7,53,0,0)); + + check("2009T19:53:21.001+12:00", dd(2009,1,1,7,53,21,1)); + check("2009T19:53:21+12:00", dd(2009,1,1,7,53,21,0)); + check("2009T19:53+12:00", dd(2009,1,1,7,53,0,0)); + + check("T19:53:21.001+12:00", dd(1970,1,1,7,53,21,1)); + check("T19:53:21+12:00", dd(1970,1,1,7,53,21,0)); + check("T19:53+12:00", dd(1970,1,1,7,53,0,0)); + + // formats without timezone uses the timezone as at that date + check("2009-07-23T19:53:21.001", dd(2009,7,23,19,53,21,1)+JulTZ); + check("2009-07-23T19:53:21", dd(2009,7,23,19,53,21,0)+JulTZ); + check("2009-07-23T19:53", dd(2009,7,23,19,53,0,0)+JulTZ); + + check("2009-07T19:53:21.001", dd(2009,7,1,19,53,21,1)+JulTZ); + check("2009-07T19:53:21", dd(2009,7,1,19,53,21,0)+JulTZ); + check("2009-07T19:53", dd(2009,7,1,19,53,0,0)+JulTZ); + + check("2009T19:53:21.001", dd(2009,1,1,19,53,21,1)+JanTZ); + check("2009T19:53:21", dd(2009,1,1,19,53,21,0)+JanTZ); + check("2009T19:53", dd(2009,1,1,19,53,0,0)+JanTZ); + + check("T19:53:21.001", dd(1970,1,1,19,53,21,1)+JanTZ); + check("T19:53:21", dd(1970,1,1,19,53,21,0)+JanTZ); + check("T19:53", dd(1970,1,1,19,53,0,0)+JanTZ); + + // with no time at all assume UTC + check("2009-07-23", dd(2009,7,23,0,0,0,0)); + check("2009-07", dd(2009,7,1,0,0,0,0)); + check("2009", dd(2009,1,1,0,0,0,0)); + + // one field too big + checkInvalid("2009-13-23T19:53:21.001+12:00"); + checkInvalid("2009-07-32T19:53:21.001+12:00"); + checkInvalid("2009-07-23T25:53:21.001+12:00"); + checkInvalid("2009-07-23T19:60:21.001+12:00"); + checkInvalid("2009-07-23T19:53:60.001+12:00"); + checkInvalid("2009-07-23T19:53:21.001+24:00"); + checkInvalid("2009-07-23T19:53:21.001+12:60"); + + // other month ends + check("2009-06-30T19:53:21.001+12:00", dd(2009,6,30,7,53,21,1)); + checkInvalid("2009-06-31T19:53:21.001+12:00"); + check("2009-02-28T19:53:21.001+12:00", dd(2009,2,28,7,53,21,1)); + checkInvalid("2009-02-29T19:53:21.001+12:00"); + check("2008-02-29T19:53:21.001+12:00", dd(2008,2,29,7,53,21,1)); + checkInvalid("2008-02-30T19:53:21.001+12:00"); + + // limits of representation + checkInvalid("-271821-04-19T23:59:59.999Z"); + check("-271821-04-20", -8.64e15); + check("+275760-09-13", 8.64e15); + checkInvalid("+275760-09-13T00:00:00.001Z"); + + check("-269845-07-23T19:53:21.001+12:00", dd(-269845,7,23,7,53,21,1)); + check("+273785-07-23T19:53:21.001+12:00", dd(273785,7,23,7,53,21,1)); + + // explicit UTC + check("2009-07-23T19:53:21.001Z", dd(2009,7,23,19,53,21,1)); + check("+002009-07-23T19:53:21.001Z", dd(2009,7,23,19,53,21,1)); + + // different timezones + check("2009-07-23T19:53:21.001+12:00", dd(2009,7,23,7,53,21,1)); + check("2009-07-23T00:53:21.001-07:00", dd(2009,7,23,7,53,21,1)); + + // 00:00 and 24:00 + check("2009-07-23T00:00:00.000-07:00", dd(2009,7,23,7,0,0,0)); + check("2009-07-23T24:00:00.000-07:00", dd(2009,7,24,7,0,0,0)); + + // Bug 730838 - non-zero fraction part for midnight should produce NaN + checkInvalid("1970-01-01T24:00:00.500Z"); + + exitFunc ('test'); +} diff --git a/js/src/tests/ecma_5/Date/UTC-convert-all-arguments.js b/js/src/tests/ecma_5/Date/UTC-convert-all-arguments.js new file mode 100644 index 000000000..2fee8b951 --- /dev/null +++ b/js/src/tests/ecma_5/Date/UTC-convert-all-arguments.js @@ -0,0 +1,70 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommonn.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 1160356; +var summary = + "Date.UTC must convert *all* arguments to number, not return NaN early if " + + "a non-finite argument is encountered"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function expectThrowTypeError(f, i) +{ + try + { + f(); + throw new Error("didn't throw"); + } + catch (e) + { + assertEq(e, 42, "index " + i + ": expected 42, got " + e); + } +} + +var bad = + { toString: function() { throw 17; }, valueOf: function() { throw 42; } }; + +var args = + [ + [bad], + + [NaN, bad], + [Infinity, bad], + [1970, bad], + + [1970, NaN, bad], + [1970, Infinity, bad], + [1970, 4, bad], + + [1970, 4, NaN, bad], + [1970, 4, Infinity, bad], + [1970, 4, 17, bad], + + [1970, 4, 17, NaN, bad], + [1970, 4, 17, Infinity, bad], + [1970, 4, 17, 13, bad], + + [1970, 4, 17, 13, NaN, bad], + [1970, 4, 17, 13, Infinity, bad], + [1970, 4, 17, 13, 37, bad], + + [1970, 4, 17, 13, 37, NaN, bad], + [1970, 4, 17, 13, 37, Infinity, bad], + [1970, 4, 17, 13, 37, 23, bad], + ]; + +for (var i = 0, len = args.length; i < len; i++) + expectThrowTypeError(function() { Date.UTC.apply(null, args[i]); }, i); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Date/browser.js b/js/src/tests/ecma_5/Date/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Date/browser.js diff --git a/js/src/tests/ecma_5/Date/constructor-convert-all-arguments.js b/js/src/tests/ecma_5/Date/constructor-convert-all-arguments.js new file mode 100644 index 000000000..3a281cae2 --- /dev/null +++ b/js/src/tests/ecma_5/Date/constructor-convert-all-arguments.js @@ -0,0 +1,70 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommonn.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 1160356; +var summary = + "new Date(...) must convert *all* arguments to number, not return NaN " + + "early if a non-finite argument is encountered"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function expectThrowTypeError(f, i) +{ + try + { + f(); + throw new Error("didn't throw"); + } + catch (e) + { + assertEq(e, 42, "index " + i + ": expected 42, got " + e); + } +} + +var bad = + { toString: function() { throw 17; }, valueOf: function() { throw 42; } }; + +var funcs = + [ + function() { new Date(bad); }, + + function() { new Date(NaN, bad); }, + function() { new Date(Infinity, bad); }, + function() { new Date(1970, bad); }, + + function() { new Date(1970, NaN, bad); }, + function() { new Date(1970, Infinity, bad); }, + function() { new Date(1970, 4, bad); }, + + function() { new Date(1970, 4, NaN, bad); }, + function() { new Date(1970, 4, Infinity, bad); }, + function() { new Date(1970, 4, 17, bad); }, + + function() { new Date(1970, 4, 17, NaN, bad); }, + function() { new Date(1970, 4, 17, Infinity, bad); }, + function() { new Date(1970, 4, 17, 13, bad); }, + + function() { new Date(1970, 4, 17, 13, NaN, bad); }, + function() { new Date(1970, 4, 17, 13, Infinity, bad); }, + function() { new Date(1970, 4, 17, 13, 37, bad); }, + + function() { new Date(1970, 4, 17, 13, 37, NaN, bad); }, + function() { new Date(1970, 4, 17, 13, 37, Infinity, bad); }, + function() { new Date(1970, 4, 17, 13, 37, 23, bad); }, + ]; + +for (var i = 0, len = funcs.length; i < len; i++) + expectThrowTypeError(funcs[i]); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Date/constructor-one-argument.js b/js/src/tests/ecma_5/Date/constructor-one-argument.js new file mode 100644 index 000000000..d7acd33aa --- /dev/null +++ b/js/src/tests/ecma_5/Date/constructor-one-argument.js @@ -0,0 +1,26 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommonn.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 738511; +var summary = + "new Date(value) should call ToPrimitive on value before testing for " + + "string-ness"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq(new Date(new String("2012-01-31T00:00:00.000Z")).valueOf(), + 1327968000000, + "Date constructor passed a String object should parse it"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Date/defaultvalue.js b/js/src/tests/ecma_5/Date/defaultvalue.js new file mode 100644 index 000000000..2fc5887d1 --- /dev/null +++ b/js/src/tests/ecma_5/Date/defaultvalue.js @@ -0,0 +1,190 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommonn.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 645464; +var summary = + "[[DefaultValue]] behavior wrong for Date with overridden valueOf/toString"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function allTests() +{ + var DS = new Date(2010, 1, 1).toString(); + + // equality + + var d = new Date(2010, 1, 1); + assertEq(d == DS, true); + + var d2 = new Date(2010, 1, 1); + d2.valueOf = function() { assertEq(arguments.length, 0); return 17; }; + assertEq(d2 == DS, true); + + var d3 = new Date(2010, 1, 1); + d3.toString = function() { return 42; }; + assertEq(d3 == 42, true); + + function testEquality() + { + var d = new Date(2010, 1, 1); + assertEq(d == DS, true); + + var d2 = new Date(2010, 1, 1); + d2.valueOf = function() { assertEq(arguments.length, 0); return 17; }; + assertEq(d2 == DS, true); + + var d3 = new Date(2010, 1, 1); + d3.toString = function() { return 42; }; + assertEq(d3 == 42, true); + } + testEquality(); + + + // addition of Date to number + + var d = new Date(2010, 1, 1); + assertEq(d + 5, DS + "5"); + + var d2 = new Date(2010, 1, 1); + d2.toString = function() { return 9; }; + assertEq(d2 + 3, 9 + 3); + + var d3 = new Date(2010, 1, 1); + d3.valueOf = function() { assertEq(arguments.length, 0); return 17; }; + assertEq(d3 + 5, DS + "5"); + + function testDateNumberAddition() + { + var d = new Date(2010, 1, 1); + assertEq(d + 5, DS + "5"); + + var d2 = new Date(2010, 1, 1); + d2.toString = function() { return 9; }; + assertEq(d2 + 3, 9 + 3); + + var d3 = new Date(2010, 1, 1); + d3.valueOf = function() { assertEq(arguments.length, 0); return 17; }; + assertEq(d3 + 5, DS + "5"); + } + testDateNumberAddition(); + + + // addition of Date to Date + + var d = new Date(2010, 1, 1); + assertEq(d + d, DS + DS); + + var d2 = new Date(2010, 1, 1); + d2.toString = function() { return 5; }; + assertEq(d2 + d2, 10); + + var d3 = new Date(2010, 1, 1); + d3.valueOf = function() { assertEq(arguments.length, 0); return 8.5; }; + assertEq(d3 + d3, DS + DS); + + function testDateDateAddition() + { + var d = new Date(2010, 1, 1); + assertEq(d + d, DS + DS); + + var d2 = new Date(2010, 1, 1); + d2.toString = function() { return 5; }; + assertEq(d2 + d2, 10); + + var d3 = new Date(2010, 1, 1); + d3.valueOf = function() { assertEq(arguments.length, 0); return 8.5; }; + assertEq(d3 + d3, DS + DS); + } + testDateDateAddition(); + + + // Date as bracketed property name + + var obj = { 8: 42, 9: 73 }; + obj[DS] = 17; + + var d = new Date(2010, 1, 1); + assertEq(obj[d], 17); + + var d2 = new Date(2010, 1, 1); + d2.valueOf = function() { assertEq(arguments.length, 0); return 8; } + assertEq(obj[d2], 17); + + var d3 = new Date(2010, 1, 1); + d3.toString = function() { return 9; }; + assertEq(obj[d3], 73); + + function testPropertyName() + { + var obj = { 8: 42, 9: 73 }; + obj[DS] = 17; + + var d = new Date(2010, 1, 1); + assertEq(obj[d], 17); + + var d2 = new Date(2010, 1, 1); + d2.valueOf = function() { assertEq(arguments.length, 0); return 8; } + assertEq(obj[d2], 17); + + var d3 = new Date(2010, 1, 1); + d3.toString = function() { return 9; }; + assertEq(obj[d3], 73); + } + testPropertyName(); + + + // Date as property name with |in| operator + + var obj = {}; + obj[DS] = 5; + + var d = new Date(2010, 1, 1); + assertEq(d in obj, true); + + var d2 = new Date(2010, 1, 1); + d2.toString = function() { return "baz"; }; + assertEq(d2 in { baz: 42 }, true); + + var d3 = new Date(2010, 1, 1); + d3.valueOf = function() { assertEq(arguments.length, 0); return "quux"; }; + assertEq(d3 in obj, true); + + function testInOperatorName() + { + var obj = {}; + obj[DS] = 5; + + var d = new Date(2010, 1, 1); + assertEq(d in obj, true); + + var d2 = new Date(2010, 1, 1); + d2.toString = function() { return "baz"; }; + assertEq(d2 in { baz: 42 }, true); + + var d3 = new Date(2010, 1, 1); + d3.valueOf = function() { assertEq(arguments.length, 0); return "quux"; }; + assertEq(d3 in obj, true); + } + testInOperatorName(); +} + +allTests(); + +if (typeof newGlobal === "function") +{ + Date = newGlobal().Date; + allTests(); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Date/equality-to-boolean.js b/js/src/tests/ecma_5/Date/equality-to-boolean.js new file mode 100644 index 000000000..c60319b9d --- /dev/null +++ b/js/src/tests/ecma_5/Date/equality-to-boolean.js @@ -0,0 +1,39 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +print("Test for correct implementation of |Date == boolean| and vice versa"); + +/************** + * BEGIN TEST * + **************/ + +Date.prototype.toString = function() { return 1; }; +Date.prototype.valueOf = function() { return 0; }; + +/* + * ES5 11.9.3 doesn't directly handle obj == boolean. Instead it translates it + * as follows: + * + * obj == boolean + * ↳ obj == ToNumber(boolean), per step 7 + * ↳ ToPrimitive(obj) == ToNumber(boolean), per step 9 + * + * ToPrimitive calls [[DefaultValue]] with no hint. For Date objects this is + * treated as if it were instead called with hint String. That calls toString, + * which returns 1, so Date objects here should compare equal to true and + * unequal to false. + */ +assertEq(new Date == true, true); +assertEq(new Date == false, false); + +/* == is symmetric. */ +assertEq(true == new Date, true); +assertEq(false == new Date, false); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Date/fractions.js b/js/src/tests/ecma_5/Date/fractions.js new file mode 100644 index 000000000..30dd663dd --- /dev/null +++ b/js/src/tests/ecma_5/Date/fractions.js @@ -0,0 +1,24 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommonn.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 771946; +var summary = "Fractional days, months, years shouldn't trigger asserts"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +new Date(0).setFullYear(1.5); +new Date(0).setUTCDate(1.5); +new Date(0).setMonth(1.5); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Date/setTime-argument-shortcircuiting.js b/js/src/tests/ecma_5/Date/setTime-argument-shortcircuiting.js new file mode 100644 index 000000000..7e67d0374 --- /dev/null +++ b/js/src/tests/ecma_5/Date/setTime-argument-shortcircuiting.js @@ -0,0 +1,147 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +print("Test for correct short-circuiting implementation of Date.set methods"); + +/************** + * BEGIN TEST * + **************/ +var global = 0; +var date; + +/* Test that methods don't short circuit argument evaluation. */ +date = new Date(0).setSeconds(NaN, {valueOf:function(){global = 3}}); +assertEq(global, 3); + +date = new Date(0).setUTCSeconds(NaN, {valueOf:function(){global = 4}}); +assertEq(global, 4); + +date = new Date(0).setMinutes(NaN, {valueOf:function(){global = 5}}); +assertEq(global, 5); + +date = new Date(0).setUTCMinutes(NaN, {valueOf:function(){global = 6}}); +assertEq(global, 6); + +date = new Date(0).setHours(NaN, {valueOf:function(){global = 7}}); +assertEq(global, 7); + +date = new Date(0).setUTCHours(NaN, {valueOf:function(){global = 8}}); +assertEq(global, 8); + +date = new Date(0).setMonth(NaN, {valueOf:function(){global = 11}}); +assertEq(global, 11); + +date = new Date(0).setUTCMonth(NaN, {valueOf:function(){global = 12}}); +assertEq(global, 12); + +date = new Date(0).setFullYear(NaN, {valueOf:function(){global = 13}}); +assertEq(global, 13); + +date = new Date(0).setUTCFullYear(NaN, {valueOf:function(){global = 14}}); +assertEq(global, 14); + + + +/* Test that argument evaluation is not short circuited if Date == NaN */ +date = new Date(NaN).setMilliseconds({valueOf:function(){global = 15}}); +assertEq(global, 15); + +date = new Date(NaN).setUTCMilliseconds({valueOf:function(){global = 16}}); +assertEq(global, 16); + +date = new Date(NaN).setSeconds({valueOf:function(){global = 17}}); +assertEq(global, 17); + +date = new Date(NaN).setUTCSeconds({valueOf:function(){global = 18}}); +assertEq(global, 18); + +date = new Date(NaN).setMinutes({valueOf:function(){global = 19}}); +assertEq(global, 19); + +date = new Date(NaN).setUTCMinutes({valueOf:function(){global = 20}}); +assertEq(global, 20); + +date = new Date(NaN).setHours({valueOf:function(){global = 21}}); +assertEq(global, 21); + +date = new Date(NaN).setUTCHours({valueOf:function(){global = 22}}); +assertEq(global, 22); + +date = new Date(NaN).setDate({valueOf:function(){global = 23}}); +assertEq(global, 23); + +date = new Date(NaN).setUTCDate({valueOf:function(){global = 24}}); +assertEq(global, 24); + +date = new Date(NaN).setMonth({valueOf:function(){global = 25}}); +assertEq(global, 25); + +date = new Date(NaN).setUTCMonth({valueOf:function(){global = 26}}); +assertEq(global, 26); + +date = new Date(NaN).setFullYear({valueOf:function(){global = 27}}); +assertEq(global, 27); + +date = new Date(NaN).setUTCFullYear({valueOf:function(){global = 28}}); +assertEq(global, 28); + + +/* Test the combination of the above two. */ +date = new Date(NaN).setSeconds(NaN, {valueOf:function(){global = 31}}); +assertEq(global, 31); + +date = new Date(NaN).setUTCSeconds(NaN, {valueOf:function(){global = 32}}); +assertEq(global, 32); + +date = new Date(NaN).setMinutes(NaN, {valueOf:function(){global = 33}}); +assertEq(global, 33); + +date = new Date(NaN).setUTCMinutes(NaN, {valueOf:function(){global = 34}}); +assertEq(global, 34); + +date = new Date(NaN).setHours(NaN, {valueOf:function(){global = 35}}); +assertEq(global, 35); + +date = new Date(NaN).setUTCHours(NaN, {valueOf:function(){global = 36}}); +assertEq(global, 36); + +date = new Date(NaN).setMonth(NaN, {valueOf:function(){global = 39}}); +assertEq(global, 39); + +date = new Date(NaN).setUTCMonth(NaN, {valueOf:function(){global = 40}}); +assertEq(global, 40); + +date = new Date(NaN).setFullYear(NaN, {valueOf:function(){global = 41}}); +assertEq(global, 41); + +date = new Date(NaN).setUTCFullYear(NaN, {valueOf:function(){global = 42}}); +assertEq(global, 42); + + +/*Test two methods evaluation*/ +var secondGlobal = 0; + +date = new Date(NaN).setFullYear({valueOf:function(){global = 43}}, {valueOf:function(){secondGlobal = 1}}); +assertEq(global, 43); +assertEq(secondGlobal, 1); + +date = new Date(0).setFullYear(NaN, {valueOf:function(){global = 44}}, {valueOf:function(){secondGlobal = 2}}); +assertEq(global, 44); +assertEq(secondGlobal, 2); + + +/* Test year methods*/ +date = new Date(0).setYear({valueOf:function(){global = 45}}); +assertEq(global, 45); + +date = new Date(NaN).setYear({valueOf:function(){global = 46}}); +assertEq(global, 46); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Date/shell.js b/js/src/tests/ecma_5/Date/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Date/shell.js diff --git a/js/src/tests/ecma_5/Date/timeclip.js b/js/src/tests/ecma_5/Date/timeclip.js new file mode 100644 index 000000000..50bde39e7 --- /dev/null +++ b/js/src/tests/ecma_5/Date/timeclip.js @@ -0,0 +1,42 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommonn.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 747197; +var summary = "TimeClip behavior for very large numbers"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function addToLimit(n) { return 8.64e15 + n; } + +assertEq(8.64e15 === addToLimit(0.0), true); +assertEq(8.64e15 === addToLimit(0.5), true); +assertEq(8.64e15 === addToLimit(0.5000000000000001), false); + +var times = + [Number.MAX_VALUE, + -Number.MAX_VALUE, + Infinity, + -Infinity, + addToLimit(0.5000000000000001), + -addToLimit(0.5000000000000001)]; + +for (var i = 0, len = times.length; i < len; i++) +{ + var d = new Date(); + assertEq(d.setTime(times[i]), NaN, "times[" + i + "]"); + assertEq(d.getTime(), NaN); + assertEq(d.valueOf(), NaN); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Date/toISOString.js b/js/src/tests/ecma_5/Date/toISOString.js new file mode 100644 index 000000000..9eb412934 --- /dev/null +++ b/js/src/tests/ecma_5/Date/toISOString.js @@ -0,0 +1,24 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function throwsRangeError(t) { + try { + var date = new Date(); + date.setTime(t); + var r = date.toISOString(); + throw new Error("toISOString didn't throw, instead returned " + r); + } catch (err) { + assertEq(err instanceof RangeError, true, 'wrong error: ' + err); + return; + } + assertEq(0, 1, 'not good, nyan, nyan'); +} + +throwsRangeError(Infinity); +throwsRangeError(-Infinity); +throwsRangeError(NaN); + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Date/toJSON-01.js b/js/src/tests/ecma_5/Date/toJSON-01.js new file mode 100644 index 000000000..4a756aab5 --- /dev/null +++ b/js/src/tests/ecma_5/Date/toJSON-01.js @@ -0,0 +1,238 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'toJSON-01.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 584811; +var summary = "Date.prototype.toJSON isn't to spec"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var called; + +var dateToJSON = Date.prototype.toJSON; +assertEq(Date.prototype.hasOwnProperty("toJSON"), true); +assertEq(typeof dateToJSON, "function"); + +// brief test to exercise this outside of isolation, just for sanity +var invalidDate = new Date(); +invalidDate.setTime(NaN); +assertEq(JSON.stringify({ p: invalidDate }), '{"p":null}'); + + +/* 15.9.5.44 Date.prototype.toJSON ( key ) */ +assertEq(dateToJSON.length, 1); + +/* + * 1. Let O be the result of calling ToObject, giving it the this value as its + * argument. + */ +try +{ + dateToJSON.call(null); + throw new Error("should have thrown a TypeError"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "ToObject throws TypeError for null/undefined"); +} + +try +{ + dateToJSON.call(undefined); + throw new Error("should have thrown a TypeError"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "ToObject throws TypeError for null/undefined"); +} + + +/* + * 2. Let tv be ToPrimitive(O, hint Number). + * ...expands to: + * 1. Let valueOf be the result of calling the [[Get]] internal method of object O with argument "valueOf". + * 2. If IsCallable(valueOf) is true then, + * a. Let val be the result of calling the [[Call]] internal method of valueOf, with O as the this value and + * an empty argument list. + * b. If val is a primitive value, return val. + * 3. Let toString be the result of calling the [[Get]] internal method of object O with argument "toString". + * 4. If IsCallable(toString) is true then, + * a. Let str be the result of calling the [[Call]] internal method of toString, with O as the this value and + * an empty argument list. + * b. If str is a primitive value, return str. + * 5. Throw a TypeError exception. + */ +try +{ + var r = dateToJSON.call({ get valueOf() { throw 17; } }); + throw new Error("didn't throw, returned: " + r); +} +catch (e) +{ + assertEq(e, 17, "bad exception: " + e); +} + +called = false; +assertEq(dateToJSON.call({ valueOf: null, + toString: function() { called = true; return 12; }, + toISOString: function() { return "ohai"; } }), + "ohai"); +assertEq(called, true); + +called = false; +assertEq(dateToJSON.call({ valueOf: function() { called = true; return 42; }, + toISOString: function() { return null; } }), + null); +assertEq(called, true); + +try +{ + called = false; + dateToJSON.call({ valueOf: function() { called = true; return {}; }, + get toString() { throw 42; } }); +} +catch (e) +{ + assertEq(called, true); + assertEq(e, 42, "bad exception: " + e); +} + +called = false; +assertEq(dateToJSON.call({ valueOf: function() { called = true; return {}; }, + get toString() { return function() { return 8675309; }; }, + toISOString: function() { return true; } }), + true); +assertEq(called, true); + +var asserted = false; +called = false; +assertEq(dateToJSON.call({ valueOf: function() { called = true; return {}; }, + get toString() + { + assertEq(called, true); + asserted = true; + return function() { return 8675309; }; + }, + toISOString: function() { return NaN; } }), + NaN); +assertEq(asserted, true); + +try +{ + var r = dateToJSON.call({ valueOf: null, toString: null, + get toISOString() + { + throw new Error("shouldn't have been gotten"); + } }); + throw new Error("didn't throw, returned: " + r); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, "bad exception: " + e); +} + + +/* 3. If tv is a Number and is not finite, return null. */ +assertEq(dateToJSON.call({ valueOf: function() { return Infinity; } }), null); +assertEq(dateToJSON.call({ valueOf: function() { return -Infinity; } }), null); +assertEq(dateToJSON.call({ valueOf: function() { return NaN; } }), null); + +assertEq(dateToJSON.call({ valueOf: function() { return Infinity; }, + toISOString: function() { return {}; } }), null); +assertEq(dateToJSON.call({ valueOf: function() { return -Infinity; }, + toISOString: function() { return []; } }), null); +assertEq(dateToJSON.call({ valueOf: function() { return NaN; }, + toISOString: function() { return undefined; } }), null); + + +/* + * 4. Let toISO be the result of calling the [[Get]] internal method of O with + * argument "toISOString". + */ +try +{ + var r = dateToJSON.call({ get toISOString() { throw 42; } }); + throw new Error("didn't throw, returned: " + r); +} +catch (e) +{ + assertEq(e, 42, "bad exception: " + e); +} + + +/* 5. If IsCallable(toISO) is false, throw a TypeError exception. */ +try +{ + var r = dateToJSON.call({ toISOString: null }); + throw new Error("didn't throw, returned: " + r); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, "bad exception: " + e); +} + +try +{ + var r = dateToJSON.call({ toISOString: undefined }); + throw new Error("didn't throw, returned: " + r); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, "bad exception: " + e); +} + +try +{ + var r = dateToJSON.call({ toISOString: "oogabooga" }); + throw new Error("didn't throw, returned: " + r); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, "bad exception: " + e); +} + +try +{ + var r = dateToJSON.call({ toISOString: Math.PI }); + throw new Error("didn't throw, returned: " + r); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, "bad exception: " + e); +} + + +/* + * 6. Return the result of calling the [[Call]] internal method of toISO with O + * as the this value and an empty argument list. + */ +var o = + { + toISOString: function(a) + { + called = true; + assertEq(this, o); + assertEq(a, undefined); + assertEq(arguments.length, 0); + return obj; + } + }; +var obj = {}; +called = false; +assertEq(dateToJSON.call(o), obj, "should have gotten obj back"); +assertEq(called, true); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Exceptions/browser.js b/js/src/tests/ecma_5/Exceptions/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Exceptions/browser.js diff --git a/js/src/tests/ecma_5/Exceptions/error-expando-reconfigure.js b/js/src/tests/ecma_5/Exceptions/error-expando-reconfigure.js new file mode 100644 index 000000000..c70ff5f85 --- /dev/null +++ b/js/src/tests/ecma_5/Exceptions/error-expando-reconfigure.js @@ -0,0 +1,28 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = "error-expando-reconfigure.js" +//----------------------------------------------------------------------------- +var BUGNUMBER = 961494; +var summary = + "Reconfiguring the first expando property added to an Error object " + + "shouldn't assert"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var err = new Error(); // no message argument => no err.message property +err.expando = 17; +Object.defineProperty(err, "expando", { configurable: false }); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Exceptions/error-property-enumerability.js b/js/src/tests/ecma_5/Exceptions/error-property-enumerability.js new file mode 100644 index 000000000..c6674cfc5 --- /dev/null +++ b/js/src/tests/ecma_5/Exceptions/error-property-enumerability.js @@ -0,0 +1,30 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var errors = ["Error", "EvalError", "RangeError", "ReferenceError", + "SyntaxError", "TypeError", "URIError"]; + +for (var i = 0; i < errors.length; i++) { + var error = this[errors[i]]; + + var desc = Object.getOwnPropertyDescriptor(error.prototype, "name"); + assertEq(!!desc, true, errors[i] + ".prototype.name should exist"); + assertEq((desc || {}).enumerable, false, errors[i] + ".prototype.name should not be enumerable"); + + desc = Object.getOwnPropertyDescriptor(error.prototype, "message"); + assertEq(!!desc, true, errors[i] + ".prototype.message should exist"); + assertEq((desc || {}).enumerable, false, errors[i] + ".prototype.message should not be enumerable"); + + var instance = new error; + desc = Object.getOwnPropertyDescriptor(instance, "message"); + assertEq(!!desc, false, "new " + errors[i] + ".message should not exist"); + + instance = new error("a message"); + desc = Object.getOwnPropertyDescriptor(instance, "message"); + assertEq(!!desc, true, "new " + errors[i] + "(...).message should exist"); + assertEq((desc || {}).enumerable, false, "new " + errors[i] + "(...).message should not be enumerable"); +} + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Exceptions/shell.js b/js/src/tests/ecma_5/Exceptions/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Exceptions/shell.js diff --git a/js/src/tests/ecma_5/Expressions/11.1.5-01.js b/js/src/tests/ecma_5/Expressions/11.1.5-01.js new file mode 100644 index 000000000..7db12aada --- /dev/null +++ b/js/src/tests/ecma_5/Expressions/11.1.5-01.js @@ -0,0 +1,37 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 520696; +var summary = + 'Implement support for string literals as names for properties defined ' + + 'using ES5 get/set syntax'; + +print(BUGNUMBER + ": " + summary); + + +var o; + +o = { get "a b c"() { return 17; } }; +assertEq("get" in Object.getOwnPropertyDescriptor(o, "a b c"), true); + +o = eval('({ get "a b c"() { return 17; } })'); +assertEq("get" in Object.getOwnPropertyDescriptor(o, "a b c"), true); + +var f = eval("(function literalInside() { return { set 'c d e'(q) { } }; })"); +f = function literalInside() { return { set 'c d e'(q) { } }; }; + +function checkO() +{ + assertEq(3.141592654 in o, true, "fractional-named property isn't in object"); + assertEq(10000 in o, true, "exponential-named property is in object"); + assertEq(0xdeadbeef in o, true, "hex-named property is in object"); + assertEq("Infinity" in o, true, "numeric index stringified correctly"); +} + +o = eval('({ 3.141592654: "pi", 1e4: 17, 0xdeadbeef: "hex", 1e3000: "Infinity" })'); +checkO(); +o = { 3.141592654: "pi", 1e4: 17, 0xdeadbeef: "hex", 1e3000: "Infinity" }; +checkO(); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Expressions/browser.js b/js/src/tests/ecma_5/Expressions/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Expressions/browser.js diff --git a/js/src/tests/ecma_5/Expressions/named-accessor-function.js b/js/src/tests/ecma_5/Expressions/named-accessor-function.js new file mode 100644 index 000000000..d6a055487 --- /dev/null +++ b/js/src/tests/ecma_5/Expressions/named-accessor-function.js @@ -0,0 +1,49 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ +// Contributor: +// Jeff Walden <jwalden+code@mit.edu> + +//----------------------------------------------------------------------------- +var BUGNUMBER = 999999; +var summary = '{ get x y() { } } is not valid getter syntax'; + +print(BUGNUMBER + ": " + summary); + +var BAD_CODE = ["({ get x y() { } })", "({ set x y(v) { } })"]; + +for (var i = 0, sz = BAD_CODE.length; i < sz; i++) +{ + var code = BAD_CODE[i]; + + var err = "no exception"; + try + { + eval(code); + } + catch (e) + { + err = e; + } + if (!(err instanceof SyntaxError)) + { + assertEq(true, false, + "bad or no exception thrown for eval(" + code + "): " + err); + } + + err = "no exception"; + try + { + new Function(code); + } + catch (e) + { + err = e; + } + if (!(err instanceof SyntaxError)) + { + assertEq(true, false, + "bad or no exception thrown for Function(" + code + "): " + err); + } +} + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Expressions/nested-delete-name-in-evalcode.js b/js/src/tests/ecma_5/Expressions/nested-delete-name-in-evalcode.js new file mode 100644 index 000000000..8226ba7c8 --- /dev/null +++ b/js/src/tests/ecma_5/Expressions/nested-delete-name-in-evalcode.js @@ -0,0 +1,163 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 616294; +var summary = + "|delete x| inside a function in eval code, where that eval code includes " + + "|var x| at top level, actually does delete the binding for x"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var f; + +function testOuterVar() +{ + return eval("var x; (function() { return delete x; })"); +} + +f = testOuterVar(); + +assertEq(f(), true); // configurable, so remove => true +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testOuterFunction() +{ + return eval("function x() { } (function() { return delete x; })"); +} + +f = testOuterFunction(); + +assertEq(f(), true); // configurable, so remove => true +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testOuterForVar() +{ + return eval("for (var x; false; ); (function() { return delete x; })"); +} + +f = testOuterForVar(); + +assertEq(f(), true); // configurable, so remove => true +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testOuterForInVar() +{ + return eval("for (var x in {}); (function() { return delete x; })"); +} + +f = testOuterForInVar(); + +assertEq(f(), true); // configurable, so remove => true +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testOuterNestedVar() +{ + return eval("for (var q = 0; q < 5; q++) { var x; } (function() { return delete x; })"); +} + +f = testOuterNestedVar(); + +assertEq(f(), true); // configurable, so remove => true +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testOuterNestedConditionalVar() +{ + return eval("for (var q = 0; q < 5; q++) { if (false) { var x; } } (function() { return delete x; })"); +} + +f = testOuterNestedConditionalVar(); + +assertEq(f(), true); // configurable, so remove => true +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testVarInWith() +{ + return eval("with ({}) { var x; } (function() { return delete x; })"); +} + +f = testVarInWith(); + +assertEq(f(), true); // configurable, so remove => true +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testForVarInWith() +{ + return eval("with ({}) { for (var x = 0; x < 5; x++); } (function() { return delete x; })"); +} + +f = testForVarInWith(); + +assertEq(f(), true); // configurable, so remove => true +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testForInVarInWith() +{ + return eval("with ({}) { for (var x in {}); } (function() { return delete x; })"); +} + +f = testForInVarInWith(); + +assertEq(f(), true); // configurable, so remove => true +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testUnknown() +{ + return eval("nameToDelete = 17; (function() { return delete nameToDelete; })"); +} + +f = testUnknown(); + +assertEq(f(), true); // configurable global property, so remove => true +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testArgumentShadow() +{ + return eval("var x; (function(x) { return delete x; })"); +} + +f = testArgumentShadow(); + +assertEq(f(), false); // non-configurable argument => false + + +function testArgument() +{ + return eval("(function(x) { return delete x; })"); +} + +f = testArgument(); + +assertEq(f(), false); // non-configurable argument => false + + +function testFunctionLocal() +{ + return eval("(function() { var x; return delete x; })"); +} + +f = testFunctionLocal(); + +assertEq(f(), false); // defined by function code => not configurable => false + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Expressions/object-literal-accessor-arguments.js b/js/src/tests/ecma_5/Expressions/object-literal-accessor-arguments.js new file mode 100644 index 000000000..5b6e7e672 --- /dev/null +++ b/js/src/tests/ecma_5/Expressions/object-literal-accessor-arguments.js @@ -0,0 +1,42 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'object-literal-accessor-arguments.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 536472; +var summary = + 'ES5: { get x(v) { } } and { set x(v, v2) { } } should be syntax errors'; + +print(BUGNUMBER + ": " + summary); + +//----------------------------------------------------------------------------- + +function expectSyntaxError(s) +{ + try + { + eval(s); + throw new Error("no error thrown"); + } + catch (e) + { + assertEq(e instanceof SyntaxError, true, + "expected syntax error parsing '" + s + "', got: " + e); + } +} + +expectSyntaxError("({ get x(a) { } })"); +expectSyntaxError("({ get x(a, a) { } })"); +expectSyntaxError("({ get x(a, b) { } })"); +expectSyntaxError("({ get x(a, a, b) { } })"); +expectSyntaxError("({ get x(a, b, c) { } })"); + +expectSyntaxError("({ set x() { } })"); +expectSyntaxError("({ set x(a, a) { } })"); +expectSyntaxError("({ set x(a, b) { } })"); +expectSyntaxError("({ set x(a, a, b) { } })"); +expectSyntaxError("({ set x(a, b, c) { } })"); + +//----------------------------------------------------------------------------- + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Expressions/object-literal-accessor-property-name.js b/js/src/tests/ecma_5/Expressions/object-literal-accessor-property-name.js new file mode 100644 index 000000000..11a7f20e0 --- /dev/null +++ b/js/src/tests/ecma_5/Expressions/object-literal-accessor-property-name.js @@ -0,0 +1,29 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'object-literal-accessor-property-name.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 715682; +var summary = + "Permit numbers and strings containing numbers as accessor property names"; +print(BUGNUMBER + ": " + summary); + +//----------------------------------------------------------------------------- + +({ get "0"() { } }); +({ get 0() { } }); +({ get 0.0() { } }); +({ get 0.() { } }); +({ get 1.() { } }); +({ get 5.2322341234123() { } }); + +({ set "0"(q) { } }); +({ set 0(q) { } }); +({ set 0.0(q) { } }); +({ set 0.(q) { } }); +({ set 1.(q) { } }); +({ set 5.2322341234123(q) { } }); + +//----------------------------------------------------------------------------- + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Expressions/primitive-this-boxing-behavior.js b/js/src/tests/ecma_5/Expressions/primitive-this-boxing-behavior.js new file mode 100644 index 000000000..36cc0e9e8 --- /dev/null +++ b/js/src/tests/ecma_5/Expressions/primitive-this-boxing-behavior.js @@ -0,0 +1,106 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 732669; +var summary = "Primitive values don't box correctly"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var t; +function returnThis() { return this; } + +// Boolean + +Boolean.prototype.method = returnThis; +t = true.method(); +assertEq(t !== Boolean.prototype, true); +assertEq(t.toString(), "true"); + +Object.defineProperty(Boolean.prototype, "property", { get: returnThis, configurable: true }); +t = false.property; +assertEq(t !== Boolean.prototype, true); +assertEq(t.toString(), "false"); + +delete Boolean.prototype.method; +delete Boolean.prototype.property; + + +// Number + +Number.prototype.method = returnThis; +t = 5..method(); +assertEq(t !== Number.prototype, true); +assertEq(t.toString(), "5"); + +Object.defineProperty(Number.prototype, "property", { get: returnThis, configurable: true }); +t = 17..property; +assertEq(t !== Number.prototype, true); +assertEq(t.toString(), "17"); + +delete Number.prototype.method; +delete Number.prototype.property; + + +// String + +String.prototype.method = returnThis; +t = "foo".method(); +assertEq(t !== String.prototype, true); +assertEq(t.toString(), "foo"); + +Object.defineProperty(String.prototype, "property", { get: returnThis, configurable: true }); +t = "bar".property; +assertEq(t !== String.prototype, true); +assertEq(t.toString(), "bar"); + +delete String.prototype.method; +delete String.prototype.property; + + +// Object + +Object.prototype.method = returnThis; + +t = true.method(); +assertEq(t !== Object.prototype, true); +assertEq(t !== Boolean.prototype, true); +assertEq(t.toString(), "true"); + +t = 42..method(); +assertEq(t !== Object.prototype, true); +assertEq(t !== Number.prototype, true); +assertEq(t.toString(), "42"); + +t = "foo".method(); +assertEq(t !== Object.prototype, true); +assertEq(t !== String.prototype, true); +assertEq(t.toString(), "foo"); + +Object.defineProperty(Object.prototype, "property", { get: returnThis, configurable: true }); + +t = false.property; +assertEq(t !== Object.prototype, true); +assertEq(t !== Boolean.prototype, true); +assertEq(t.toString(), "false"); + +t = 8675309..property; +assertEq(t !== Object.prototype, true); +assertEq(t !== Number.prototype, true); +assertEq(t.toString(), "8675309"); + +t = "bar".property; +assertEq(t !== Object.prototype, true); +assertEq(t !== String.prototype, true); +assertEq(t.toString(), "bar"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Expressions/shell.js b/js/src/tests/ecma_5/Expressions/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Expressions/shell.js diff --git a/js/src/tests/ecma_5/Expressions/string-literal-escape-sequences.js b/js/src/tests/ecma_5/Expressions/string-literal-escape-sequences.js new file mode 100644 index 000000000..bc50b2c85 --- /dev/null +++ b/js/src/tests/ecma_5/Expressions/string-literal-escape-sequences.js @@ -0,0 +1,146 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 663300; +var summary = + "\\u and \\x must be followed by the appropriate number of hex digits or " + + "else it is a syntax error"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function expectSyntaxError(str) +{ + try + { + eval(str); + } + catch (e) + { + assertEq(e instanceof SyntaxError, true, + "no syntax error evaluating " + str); + } +} + +expectSyntaxError('"\\x"'); +expectSyntaxError('"\\x0"'); +expectSyntaxError('"\\x1"'); +expectSyntaxError('"\\x2"'); +expectSyntaxError('"\\x3"'); +expectSyntaxError('"\\x4"'); +expectSyntaxError('"\\x5"'); +expectSyntaxError('"\\x6"'); +expectSyntaxError('"\\x7"'); +expectSyntaxError('"\\x8"'); +expectSyntaxError('"\\x9"'); +expectSyntaxError('"\\xA"'); +expectSyntaxError('"\\xB"'); +expectSyntaxError('"\\xC"'); +expectSyntaxError('"\\xD"'); +expectSyntaxError('"\\xE"'); +expectSyntaxError('"\\xF"'); +expectSyntaxError('"\\xG"'); +expectSyntaxError('"\\x0G"'); +expectSyntaxError('"\\x1G"'); +expectSyntaxError('"\\x2G"'); +expectSyntaxError('"\\x3G"'); +expectSyntaxError('"\\x4G"'); +expectSyntaxError('"\\x5G"'); +expectSyntaxError('"\\x6G"'); +expectSyntaxError('"\\x7G"'); +expectSyntaxError('"\\x8G"'); +expectSyntaxError('"\\x9G"'); +expectSyntaxError('"\\xAG"'); +expectSyntaxError('"\\xBG"'); +expectSyntaxError('"\\xCG"'); +expectSyntaxError('"\\xDG"'); +expectSyntaxError('"\\xEG"'); +expectSyntaxError('"\\xFG"'); +expectSyntaxError('"\\xGG"'); + +expectSyntaxError('"\\u"'); +expectSyntaxError('"\\u0"'); +expectSyntaxError('"\\u1"'); +expectSyntaxError('"\\u2"'); +expectSyntaxError('"\\u3"'); +expectSyntaxError('"\\u4"'); +expectSyntaxError('"\\u5"'); +expectSyntaxError('"\\u6"'); +expectSyntaxError('"\\u7"'); +expectSyntaxError('"\\u8"'); +expectSyntaxError('"\\u9"'); +expectSyntaxError('"\\uA"'); +expectSyntaxError('"\\uB"'); +expectSyntaxError('"\\uC"'); +expectSyntaxError('"\\uD"'); +expectSyntaxError('"\\uE"'); +expectSyntaxError('"\\uF"'); +expectSyntaxError('"\\uG"'); +expectSyntaxError('"\\u00"'); +expectSyntaxError('"\\u11"'); +expectSyntaxError('"\\u22"'); +expectSyntaxError('"\\u33"'); +expectSyntaxError('"\\u44"'); +expectSyntaxError('"\\u55"'); +expectSyntaxError('"\\u66"'); +expectSyntaxError('"\\u77"'); +expectSyntaxError('"\\u88"'); +expectSyntaxError('"\\u99"'); +expectSyntaxError('"\\uAA"'); +expectSyntaxError('"\\uBB"'); +expectSyntaxError('"\\uCC"'); +expectSyntaxError('"\\uDD"'); +expectSyntaxError('"\\uEE"'); +expectSyntaxError('"\\uFF"'); +expectSyntaxError('"\\uGG"'); +expectSyntaxError('"\\u000"'); +expectSyntaxError('"\\u111"'); +expectSyntaxError('"\\u222"'); +expectSyntaxError('"\\u333"'); +expectSyntaxError('"\\u444"'); +expectSyntaxError('"\\u555"'); +expectSyntaxError('"\\u666"'); +expectSyntaxError('"\\u777"'); +expectSyntaxError('"\\u888"'); +expectSyntaxError('"\\u999"'); +expectSyntaxError('"\\uAAA"'); +expectSyntaxError('"\\uBBB"'); +expectSyntaxError('"\\uCCC"'); +expectSyntaxError('"\\uDDD"'); +expectSyntaxError('"\\uEEE"'); +expectSyntaxError('"\\uFFF"'); +expectSyntaxError('"\\uGGG"'); +expectSyntaxError('"\\u000G"'); +expectSyntaxError('"\\u111G"'); +expectSyntaxError('"\\u222G"'); +expectSyntaxError('"\\u333G"'); +expectSyntaxError('"\\u444G"'); +expectSyntaxError('"\\u555G"'); +expectSyntaxError('"\\u666G"'); +expectSyntaxError('"\\u777G"'); +expectSyntaxError('"\\u888G"'); +expectSyntaxError('"\\u999G"'); +expectSyntaxError('"\\uAAAG"'); +expectSyntaxError('"\\uBBBG"'); +expectSyntaxError('"\\uCCCG"'); +expectSyntaxError('"\\uDDDG"'); +expectSyntaxError('"\\uEEEG"'); +expectSyntaxError('"\\uFFFG"'); +expectSyntaxError('"\\uGGGG"'); + +assertEq(eval('"a\\\rb"'), "ab"); +assertEq(eval('"a\\\nb"'), "ab"); +assertEq(eval('"a\\\r\nb"'), "ab"); +assertEq(eval('"a\\\u2028b"'), "ab"); +assertEq(eval('"a\\\u2029b"'), "ab"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Function/10.2.1.1.6.js b/js/src/tests/ecma_5/Function/10.2.1.1.6.js new file mode 100644 index 000000000..69613386c --- /dev/null +++ b/js/src/tests/ecma_5/Function/10.2.1.1.6.js @@ -0,0 +1,35 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function strictThis() { 'use strict'; return this; } + +/* Check that calls of flat closure slots get the right |this|. */ +function flat(g) { + function h() { return g(); } + return h; +} +assertEq(flat(strictThis)(), undefined); + +/* Check that calls up upvars get the right |this|. */ +function upvar(f) { + function h() { + return f(); + } + return h(); +} +assertEq(upvar(strictThis), undefined); + +/* Check that calls to with-object properties get an appropriate 'this'. */ +var obj = { f: strictThis }; +with (obj) { + /* + * The method won't compile anything containing a 'with', but it can + * compile 'g'. + */ + function g() { return f(); } + assertEq(g(), obj); +} + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Function/15.3.4.3-01.js b/js/src/tests/ecma_5/Function/15.3.4.3-01.js new file mode 100644 index 000000000..955d77376 --- /dev/null +++ b/js/src/tests/ecma_5/Function/15.3.4.3-01.js @@ -0,0 +1,245 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 562448; +var summary = 'Function.prototype.apply should accept any arraylike arguments'; +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function expectTypeError(fun, msg) +{ + try + { + fun(); + assertEq(true, false, "should have thrown a TypeError"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, msg + "; instead threw " + e); + } +} + +function fun() { } + +var global = this; + + +/* Step 1. */ +var nonfuns = [null, 1, -1, 2.5, "[[Call]]", undefined, true, false, {}]; +for (var i = 0, sz = nonfuns.length; i < sz; i++) +{ + var f = function() + { + Function.prototype.apply.apply(nonfuns[i], [1, 2, 3]); + }; + var msg = + "expected TypeError calling Function.prototype.apply with uncallable this"; + expectTypeError(f, msg); +} + + +/* Step 2. */ +var thisObj = {}; + +var currentThis, currentThisBox; +function funLength() +{ + assertEq(arguments.length, 0, "should have been called with no arguments"); + assertEq(this, currentThis, "wrong this"); +} +function strictFunLength() +{ + "use strict"; + assertEq(arguments.length, 0, "should have been called with no arguments"); + assertEq(this, currentThis, "wrong this"); +} + +currentThis = global; +funLength.apply(); +funLength.apply(undefined); +funLength.apply(undefined, undefined); +funLength.apply(undefined, null); + +currentThis = undefined; +strictFunLength.apply(); +strictFunLength.apply(undefined); +strictFunLength.apply(undefined, undefined); +strictFunLength.apply(undefined, null); + +currentThis = null; +strictFunLength.apply(null); +strictFunLength.apply(null, undefined); +strictFunLength.apply(null, null); + +currentThis = thisObj; +funLength.apply(thisObj); +funLength.apply(thisObj, null); +funLength.apply(thisObj, undefined); +strictFunLength.apply(thisObj); +strictFunLength.apply(thisObj, null); +strictFunLength.apply(thisObj, undefined); + +currentThis = 17; +strictFunLength.apply(17); +strictFunLength.apply(17, null); +strictFunLength.apply(17, undefined); + +function funThisPrimitive() +{ + assertEq(arguments.length, 0, "should have been called with no arguments"); + assertEq(this instanceof currentThisBox, true, + "this not instanceof " + currentThisBox); + assertEq(this.valueOf(), currentThis, + "wrong this valueOf()"); +} + +currentThis = 17; +currentThisBox = Number; +funThisPrimitive.apply(17); +funThisPrimitive.apply(17, undefined); +funThisPrimitive.apply(17, null); + +currentThis = "foopy"; +currentThisBox = String; +funThisPrimitive.apply("foopy"); +funThisPrimitive.apply("foopy", undefined); +funThisPrimitive.apply("foopy", null); + +currentThis = false; +currentThisBox = Boolean; +funThisPrimitive.apply(false); +funThisPrimitive.apply(false, undefined); +funThisPrimitive.apply(false, null); + + +/* Step 3. */ +var nonobjs = [1, -1, 2.5, "[[Call]]", true, false]; +for (var i = 0, sz = nonobjs.length; i < sz; i++) +{ + var f = function() { fun.apply(thisObj, nonobjs[i]); }; + var msg = "should have thrown a TypeError with non-object arguments"; + expectTypeError(f, msg); +} + + +/* Step 4. */ +var args = { get length() { throw 42; } }; +try +{ + fun.apply(thisObj, args); +} +catch (e) +{ + assertEq(e, 42, "didn't throw result of [[Get]] on arguments object"); +} + + +/* + * NB: There was an erratum removing the steps numbered 5 and 7 in the original + * version of ES5; see also the comments in js_fun_apply. + */ + +/* Step 5. */ +var called = false; +var argsObjectLength = + { length: { valueOf: function() { called = true; return 17; } } }; + +fun.apply({}, argsObjectLength); +assertEq(called, true, "should have been set in valueOf called via ToUint32"); + +var upvar = "unset"; +var argsObjectPrimitiveLength = + { + length: + { + valueOf: function() { upvar = "valueOf"; return {}; }, + toString: function() + { + upvar = upvar === "valueOf" ? "both" : "toString"; + return 17; + } + } + }; +fun.apply({}, argsObjectPrimitiveLength); +assertEq(upvar, "both", "didn't call all hooks properly"); + + +/* Step 6-9. */ +var seenThis, res, steps; +var argsAccessors = + { + length: 4, + get 0() { steps.push("0"); return 1; }, + get 1() { steps.push("1"); return 2; }, + // make sure values shine through holes + get 3() { steps.push("3"); return 8; }, + }; + +Object.prototype[2] = 729; + +seenThis = "not seen"; +function argsAsArray() +{ + seenThis = this; + steps.push(Math.PI); + return Array.prototype.map.call(arguments, function(v) { return v; }); +} + +steps = []; +res = argsAsArray.apply(thisObj, argsAccessors); +assertEq(seenThis, thisObj, "saw wrong this"); + +assertEq(steps.length, 4, "wrong steps: " + steps); +assertEq(steps[0], "0", "bad step 0"); +assertEq(steps[1], "1", "bad step 1"); +assertEq(steps[2], "3", "bad step 3"); +assertEq(steps[3], Math.PI, "bad last step"); + +assertEq(res.length, 4, "wrong return: " + res); +assertEq(res[0], 1, "wrong ret[0]"); +assertEq(res[1], 2, "wrong ret[0]"); +assertEq(res[2], 729, "wrong ret[0]"); +assertEq(res[3], 8, "wrong ret[0]"); + +seenThis = "not seen"; +function strictArgsAsArray() +{ + "use strict"; + seenThis = this; + steps.push(NaN); + return Array.prototype.map.call(arguments, function(v) { return v; }); +} + +steps = []; +res = strictArgsAsArray.apply(null, argsAccessors); +assertEq(seenThis, null, "saw wrong this"); + +assertEq(steps.length, 4, "wrong steps: " + steps); +assertEq(steps[0], "0", "bad step 0"); +assertEq(steps[1], "1", "bad step 1"); +assertEq(steps[2], "3", "bad step 3"); +assertEq(steps[3], 0 / 0, "bad last step"); + +assertEq(res.length, 4, "wrong return: " + res); +assertEq(res[0], 1, "wrong ret[0]"); +assertEq(res[1], 2, "wrong ret[0]"); +assertEq(res[2], 729, "wrong ret[0]"); +assertEq(res[3], 8, "wrong ret[0]"); + +strictArgsAsArray.apply(17, argsAccessors); +assertEq(seenThis, 17, "saw wrong this"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Function/Function-arguments-gc.js b/js/src/tests/ecma_5/Function/Function-arguments-gc.js new file mode 100644 index 000000000..250452336 --- /dev/null +++ b/js/src/tests/ecma_5/Function/Function-arguments-gc.js @@ -0,0 +1,40 @@ +// |reftest| skip-if(Android) +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Christian Holler <decoder@own-hero.net> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 623301; +var summary = "Properly root argument names during Function()"; +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +if (typeof gczeal === "function") + gczeal(2); + +function crashMe(n) +{ + var nasty = []; + while (n--) + nasty.push("a" + n); + return Function.apply(null, nasty); +} + +var count = 64; // exact value not important +assertEq(crashMe(count + 1).length, count); + +if (typeof gczeal === "function") + gczeal(0); // reset + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Function/Function-with-eval.js b/js/src/tests/ecma_5/Function/Function-with-eval.js new file mode 100644 index 000000000..981abf2d0 --- /dev/null +++ b/js/src/tests/ecma_5/Function/Function-with-eval.js @@ -0,0 +1,25 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(new Function( + "eval('var foo = 915805');" + + "return foo;" + )(), + 915805); + +assertEq(new Function( + "eval('function foo() {" + + "return 915805;" + + "}');" + + "return foo;" + )()(), + 915805); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Function/arguments-caller-callee.js b/js/src/tests/ecma_5/Function/arguments-caller-callee.js new file mode 100644 index 000000000..3eda27b49 --- /dev/null +++ b/js/src/tests/ecma_5/Function/arguments-caller-callee.js @@ -0,0 +1,66 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'arguments-caller-callee.js'; +var BUGNUMBER = 514563; +var summary = "arguments.caller and arguments.callee are poison pills in ES5"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// behavior + +function expectTypeError(fun) +{ + try + { + fun(); + throw new Error("didn't throw"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "expected TypeError calling function" + + ("name" in fun ? " " + fun.name : "") + ", instead got: " + e); + } +} + +function bar() { "use strict"; return arguments; } +expectTypeError(function barCaller() { bar().caller; }); +expectTypeError(function barCallee() { bar().callee; }); + +function baz() { return arguments; } +assertEq(baz().callee, baz); + + +// accessor identity + +function strictMode() { "use strict"; return arguments; } +var canonicalTTE = Object.getOwnPropertyDescriptor(strictMode(), "caller").get; + +var args = strictMode(); + +var argsCaller = Object.getOwnPropertyDescriptor(args, "caller"); +assertEq("get" in argsCaller, true); +assertEq("set" in argsCaller, true); +assertEq(argsCaller.get, canonicalTTE); +assertEq(argsCaller.set, canonicalTTE); + +var argsCallee = Object.getOwnPropertyDescriptor(args, "callee"); +assertEq("get" in argsCallee, true); +assertEq("set" in argsCallee, true); +assertEq(argsCallee.get, canonicalTTE); +assertEq(argsCallee.set, canonicalTTE); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Function/arguments-property-attributes.js b/js/src/tests/ecma_5/Function/arguments-property-attributes.js new file mode 100644 index 000000000..994b97ca4 --- /dev/null +++ b/js/src/tests/ecma_5/Function/arguments-property-attributes.js @@ -0,0 +1,102 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'arguments-property-attributes.js'; +var BUGNUMBER = 516255; +var summary = "Attributes for properties of arguments objects"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// normal + +function args() { return arguments; } +var a = args(0, 1); + +var argProps = Object.getOwnPropertyNames(a).sort(); +assertEq(argProps.indexOf("callee") >= 0, true); +assertEq(argProps.indexOf("0") >= 0, true); +assertEq(argProps.indexOf("1") >= 0, true); +assertEq(argProps.indexOf("length") >= 0, true); + +var calleeDesc = Object.getOwnPropertyDescriptor(a, "callee"); +assertEq(calleeDesc.value, args); +assertEq(calleeDesc.writable, true); +assertEq(calleeDesc.enumerable, false); +assertEq(calleeDesc.configurable, true); + +var zeroDesc = Object.getOwnPropertyDescriptor(a, "0"); +assertEq(zeroDesc.value, 0); +assertEq(zeroDesc.writable, true); +assertEq(zeroDesc.enumerable, true); +assertEq(zeroDesc.configurable, true); + +var oneDesc = Object.getOwnPropertyDescriptor(a, "1"); +assertEq(oneDesc.value, 1); +assertEq(oneDesc.writable, true); +assertEq(oneDesc.enumerable, true); +assertEq(oneDesc.configurable, true); + +var lengthDesc = Object.getOwnPropertyDescriptor(a, "length"); +assertEq(lengthDesc.value, 2); +assertEq(lengthDesc.writable, true); +assertEq(lengthDesc.enumerable, false); +assertEq(lengthDesc.configurable, true); + + +// strict + +function strictArgs() { "use strict"; return arguments; } +var sa = strictArgs(0, 1); + +var strictArgProps = Object.getOwnPropertyNames(sa).sort(); +assertEq(strictArgProps.indexOf("callee") >= 0, true); +assertEq(strictArgProps.indexOf("caller") >= 0, true); +assertEq(strictArgProps.indexOf("0") >= 0, true); +assertEq(strictArgProps.indexOf("1") >= 0, true); +assertEq(strictArgProps.indexOf("length") >= 0, true); + +var strictCalleeDesc = Object.getOwnPropertyDescriptor(sa, "callee"); +assertEq(typeof strictCalleeDesc.get, "function"); +assertEq(typeof strictCalleeDesc.set, "function"); +assertEq(strictCalleeDesc.get, strictCalleeDesc.set); +assertEq(strictCalleeDesc.enumerable, false); +assertEq(strictCalleeDesc.configurable, false); + +var strictCallerDesc = Object.getOwnPropertyDescriptor(sa, "caller"); +assertEq(typeof strictCallerDesc.get, "function"); +assertEq(typeof strictCallerDesc.set, "function"); +assertEq(strictCallerDesc.get, strictCallerDesc.set); +assertEq(strictCallerDesc.enumerable, false); +assertEq(strictCallerDesc.configurable, false); + +var strictZeroDesc = Object.getOwnPropertyDescriptor(sa, "0"); +assertEq(strictZeroDesc.value, 0); +assertEq(strictZeroDesc.writable, true); +assertEq(strictZeroDesc.enumerable, true); +assertEq(strictZeroDesc.configurable, true); + +var strictOneDesc = Object.getOwnPropertyDescriptor(sa, "1"); +assertEq(strictOneDesc.value, 1); +assertEq(strictOneDesc.writable, true); +assertEq(strictOneDesc.enumerable, true); +assertEq(strictOneDesc.configurable, true); + +var strictLengthDesc = Object.getOwnPropertyDescriptor(sa, "length"); +assertEq(strictLengthDesc.value, 2); +assertEq(strictLengthDesc.writable, true); +assertEq(strictLengthDesc.enumerable, false); +assertEq(strictLengthDesc.configurable, true); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Function/browser.js b/js/src/tests/ecma_5/Function/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Function/browser.js diff --git a/js/src/tests/ecma_5/Function/builtin-no-construct.js b/js/src/tests/ecma_5/Function/builtin-no-construct.js new file mode 100644 index 000000000..b41ae56f1 --- /dev/null +++ b/js/src/tests/ecma_5/Function/builtin-no-construct.js @@ -0,0 +1,52 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function checkMethod(method) { + try { + new method(); + assertEq(0, 1, "not reached " + method); + } catch (e) { + assertEq(e.message.indexOf(" is not a constructor") === -1, false); + } +} + +function checkMethods(proto) { + var names = Object.getOwnPropertyNames(proto); + for (var i = 0; i < names.length; i++) { + var name = names[i]; + if (["constructor", "arguments", "caller"].indexOf(name) >= 0) + continue; + var prop = proto[name]; + if (typeof prop === "function") + checkMethod(prop); + } +} + +checkMethod(Function.prototype); +checkMethods(JSON); +checkMethods(Math); +checkMethods(Proxy); + +var builtin_ctors = [ + Object, Function, Array, String, Boolean, Number, Date, RegExp, Error, + EvalError, RangeError, ReferenceError, SyntaxError, TypeError, URIError, +]; + +for (var i = 0; i < builtin_ctors.length; i++) { + checkMethods(builtin_ctors[i]); + checkMethods(builtin_ctors[i].prototype); +} + +var builtin_funcs = [ + eval, isFinite, isNaN, parseFloat, parseInt, + decodeURI, decodeURIComponent, encodeURI, encodeURIComponent +]; + +for (var i = 0; i < builtin_funcs.length; i++) { + checkMethod(builtin_funcs[i]); +} + +if (typeof reportCompare == 'function') + reportCompare(0, 0, "ok"); diff --git a/js/src/tests/ecma_5/Function/builtin-no-prototype.js b/js/src/tests/ecma_5/Function/builtin-no-prototype.js new file mode 100644 index 000000000..b5a8cc9f6 --- /dev/null +++ b/js/src/tests/ecma_5/Function/builtin-no-prototype.js @@ -0,0 +1,40 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 4 -*- */ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(undefined, void 0); + +assertEq(Function.prototype.hasOwnProperty('prototype'), false); +assertEq(Function.prototype.prototype, undefined); + +var builtin_ctors = [ + Object, Function, Array, String, Boolean, Number, Date, RegExp, Error, + EvalError, RangeError, ReferenceError, SyntaxError, TypeError, URIError +]; + +for (var i = 0; i < builtin_ctors.length; i++) { + var c = builtin_ctors[i]; + assertEq(typeof c.prototype, (c === Function) ? "function" : "object"); + assertEq(c.prototype.constructor, c); +} + +var builtin_funcs = [ + eval, isFinite, isNaN, parseFloat, parseInt, + decodeURI, decodeURIComponent, encodeURI, encodeURIComponent +]; + +for (var i = 0; i < builtin_funcs.length; i++) { + assertEq(builtin_funcs[i].hasOwnProperty('prototype'), false); + assertEq(builtin_funcs[i].prototype, undefined); +} + +var names = Object.getOwnPropertyNames(Math); +for (var i = 0; i < names.length; i++) { + var m = Math[names[i]]; + if (typeof m === "function") + assertEq(m.prototype, undefined); +} + +reportCompare(0, 0, "don't crash"); diff --git a/js/src/tests/ecma_5/Function/function-bind.js b/js/src/tests/ecma_5/Function/function-bind.js new file mode 100644 index 000000000..78ee18310 --- /dev/null +++ b/js/src/tests/ecma_5/Function/function-bind.js @@ -0,0 +1,288 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'function-bind.js'; +var BUGNUMBER = 429507; +var summary = "ES5: Function.prototype.bind"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// ad-hoc testing + +assertEq(Function.prototype.hasOwnProperty("bind"), true); + +var bind = Function.prototype.bind; +assertEq(bind.length, 1); + + +var strictReturnThis = function() { "use strict"; return this; }; + +assertEq(strictReturnThis.bind(undefined)(), undefined); +assertEq(strictReturnThis.bind(null)(), null); + +var obj = {}; +assertEq(strictReturnThis.bind(obj)(), obj); + +assertEq(strictReturnThis.bind(NaN)(), NaN); + +assertEq(strictReturnThis.bind(true)(), true); +assertEq(strictReturnThis.bind(false)(), false); + +assertEq(strictReturnThis.bind("foopy")(), "foopy"); + + +// rigorous, step-by-step testing + +function expectThrowTypeError(fun) +{ + try + { + var r = fun(); + throw new Error("didn't throw TypeError, returned " + r); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "didn't throw TypeError, got: " + e); + } +} + +/* + * 1. Let Target be the this value. + * 2. If IsCallable(Target) is false, throw a TypeError exception. + */ +expectThrowTypeError(function() { bind.call(null); }); +expectThrowTypeError(function() { bind.call(undefined); }); +expectThrowTypeError(function() { bind.call(NaN); }); +expectThrowTypeError(function() { bind.call(0); }); +expectThrowTypeError(function() { bind.call(-0); }); +expectThrowTypeError(function() { bind.call(17); }); +expectThrowTypeError(function() { bind.call(42); }); +expectThrowTypeError(function() { bind.call("foobar"); }); +expectThrowTypeError(function() { bind.call(true); }); +expectThrowTypeError(function() { bind.call(false); }); +expectThrowTypeError(function() { bind.call([]); }); +expectThrowTypeError(function() { bind.call({}); }); + + +/* + * 3. Let A be a new (possibly empty) internal list of all of the argument + * values provided after thisArg (arg1, arg2 etc), in order. + * 4. Let F be a new native ECMAScript object . + * 5. Set all the internal methods, except for [[Get]], of F as specified in + * 8.12. + * 6. Set the [[Get]] internal property of F as specified in 15.3.5.4. + * 7. Set the [[TargetFunction]] internal property of F to Target. + * 8. Set the [[BoundThis]] internal property of F to the value of thisArg. + * 9. Set the [[BoundArgs]] internal property of F to A. + */ +// throughout + + +/* 10. Set the [[Class]] internal property of F to "Function". */ +var toString = Object.prototype.toString; +assertEq(toString.call(function(){}), "[object Function]"); +assertEq(toString.call(function a(){}), "[object Function]"); +assertEq(toString.call(function(a){}), "[object Function]"); +assertEq(toString.call(function a(b){}), "[object Function]"); +assertEq(toString.call(function(){}.bind()), "[object Function]"); +assertEq(toString.call(function a(){}.bind()), "[object Function]"); +assertEq(toString.call(function(a){}.bind()), "[object Function]"); +assertEq(toString.call(function a(b){}.bind()), "[object Function]"); + + +/* + * 11. Set the [[Prototype]] internal property of F to the standard built-in + * Function prototype object as specified in 15.3.3.1. + */ +assertEq(Object.getPrototypeOf(bind.call(function(){})), Function.prototype); +assertEq(Object.getPrototypeOf(bind.call(function a(){})), Function.prototype); +assertEq(Object.getPrototypeOf(bind.call(function(a){})), Function.prototype); +assertEq(Object.getPrototypeOf(bind.call(function a(b){})), Function.prototype); + + +/* + * 12. Set the [[Call]] internal property of F as described in 15.3.4.5.1. + */ +var a = Array.bind(1, 2); +assertEq(a().length, 2); +assertEq(a(4).length, 2); +assertEq(a(4, 8).length, 3); + +function t() { return this; } +var bt = t.bind(t); +assertEq(bt(), t); + +function callee() { return arguments.callee; } +var call = callee.bind(); +assertEq(call(), callee); +assertEq(new call(), callee); + + +/* + * 13. Set the [[Construct]] internal property of F as described in 15.3.4.5.2. + */ +function Point(x, y) +{ + this.x = x; + this.y = y; +} +var YAxisPoint = Point.bind(null, 0) + +assertEq(YAxisPoint.hasOwnProperty("prototype"), false); +var p = new YAxisPoint(5); +assertEq(p.x, 0); +assertEq(p.y, 5); +assertEq(p instanceof Point, true); +assertEq(p instanceof YAxisPoint, true); +assertEq(Object.prototype.toString.call(YAxisPoint), "[object Function]"); +assertEq(YAxisPoint.length, 1); + + +/* + * 14. Set the [[HasInstance]] internal property of F as described in + * 15.3.4.5.3. + */ +function JoinArguments() +{ + this.args = Array.prototype.join.call(arguments, ", "); +} + +var Join1 = JoinArguments.bind(null, 1); +var Join2 = Join1.bind(null, 2); +var Join3 = Join2.bind(null, 3); +var Join4 = Join3.bind(null, 4); +var Join5 = Join4.bind(null, 5); +var Join6 = Join5.bind(null, 6); + +var r = new Join6(7); +assertEq(r instanceof Join6, true); +assertEq(r instanceof Join5, true); +assertEq(r instanceof Join4, true); +assertEq(r instanceof Join3, true); +assertEq(r instanceof Join2, true); +assertEq(r instanceof Join1, true); +assertEq(r instanceof JoinArguments, true); +assertEq(r.args, "1, 2, 3, 4, 5, 6, 7"); + + +/* + * 15. If the [[Class]] internal property of Target is "Function", then + * a. Let L be the length property of Target minus the length of A. + * b. Set the length own property of F to either 0 or L, whichever is larger. + * 16. Else set the length own property of F to 0. + */ +function none() { return arguments.length; } +assertEq(none.bind(1, 2)(3, 4), 3); +assertEq(none.bind(1, 2)(), 1); +assertEq(none.bind(1)(2, 3), 2); +assertEq(none.bind().length, 0); +assertEq(none.bind(null).length, 0); +assertEq(none.bind(null, 1).length, 0); +assertEq(none.bind(null, 1, 2).length, 0); + +function one(a) { } +assertEq(one.bind().length, 1); +assertEq(one.bind(null).length, 1); +assertEq(one.bind(null, 1).length, 0); +assertEq(one.bind(null, 1, 2).length, 0); + +// retch +var br = Object.create(null, { length: { value: 0 } }); +try +{ + br = bind.call(/a/g, /a/g, "aaaa"); +} +catch (e) { /* nothing */ } +assertEq(br.length, 0); + + +/* + * 17. Set the attributes of the length own property of F to the values + * specified in 15.3.5.1. + */ +var len1Desc = + Object.getOwnPropertyDescriptor(function(a, b, c){}.bind(), "length"); +assertEq(len1Desc.value, 3); +assertEq(len1Desc.writable, false); +assertEq(len1Desc.enumerable, false); +assertEq(len1Desc.configurable, true); + +var len2Desc = + Object.getOwnPropertyDescriptor(function(a, b, c){}.bind(null, 2), "length"); +assertEq(len2Desc.value, 2); +assertEq(len2Desc.writable, false); +assertEq(len2Desc.enumerable, false); +assertEq(len2Desc.configurable, true); + + +/* + * 18. Set the [[Extensible]] internal property of F to true. + */ +var bound = (function() { }).bind(); + +var isExtensible = Object.isExtensible || function() { return true; }; +assertEq(isExtensible(bound), true); + +bound.foo = 17; +var fooDesc = Object.getOwnPropertyDescriptor(bound, "foo"); +assertEq(fooDesc.value, 17); +assertEq(fooDesc.writable, true); +assertEq(fooDesc.enumerable, true); +assertEq(fooDesc.configurable, true); + + +/* + * Steps 19-21 are removed from ES6, instead implemented through "arguments" and + * "caller" accessors on Function.prototype. So no own properties, but do check + * for the same observable behavior (modulo where the accessors live). + */ +function strict() { "use strict"; } +function nonstrict() {} + +function testBound(fun) +{ + var boundf = fun.bind(); + + assertEq(Object.getOwnPropertyDescriptor(boundf, "arguments"), undefined, + "should be no arguments property"); + assertEq(Object.getOwnPropertyDescriptor(boundf, "caller"), undefined, + "should be no caller property"); + + expectThrowTypeError(function() { return boundf.arguments; }); + expectThrowTypeError(function() { return boundf.caller; }); +} + +testBound(strict); +testBound(nonstrict); + +assertEq((function unbound(){"body"}).bind().toString(), `function bound unbound() { + [native code] +}`); + +assertEq((function unbound(){"body"}).bind().toSource(), `function bound unbound() { + [native code] +}`); + +assertEq(uneval((function unbound(){"body"}).bind()), `function bound unbound() { + [native code] +}`); + + +/* 22. Return F. */ +var passim = function p(){}.bind(1); +assertEq(typeof passim, "function"); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Function/function-call.js b/js/src/tests/ecma_5/Function/function-call.js new file mode 100644 index 000000000..756b58384 --- /dev/null +++ b/js/src/tests/ecma_5/Function/function-call.js @@ -0,0 +1,134 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 575535; +var summary = 'Function.prototype.call'; +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function expectTypeError(fun, msg) +{ + try + { + fun(); + assertEq(true, false, "should have thrown a TypeError"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, msg + "; instead threw " + e); + } +} + +function fun() { } + +var global = this; + +assertEq(Function.prototype.call.length, 1); + + +/* Step 1. */ +var nonfuns = [null, 1, -1, 2.5, "[[Call]]", undefined, true, false, {}]; +for (var i = 0, sz = nonfuns.length; i < sz; i++) +{ + var f = function() + { + Function.prototype.call.apply(nonfuns[i]); + }; + var msg = + "expected TypeError calling Function.prototype.call with uncallable this"; + expectTypeError(f, msg); +} + + +/* Steps 2-4. */ +function none() +{ + assertEq(this, global, "bad this"); + assertEq(arguments.length, 0, "wrong arguments"); +} + +none.call(); +none.call(undefined); +none.call(null); + +var seenThis; +function strictNone() +{ + "use strict"; + assertEq(this, seenThis, "bad this"); + assertEq(arguments.length, 0, "wrong arguments"); +} + +seenThis = undefined; +strictNone.call(); +strictNone.call(undefined); + +seenThis = null; +strictNone.call(null); + +seenThis = 17; +strictNone.call(17); + +var seenThisBox, args; +function some() +{ + assertEq(this instanceof seenThisBox, true, + "this not instanceof " + seenThisBox); + assertEq(this.valueOf(), seenThis, + "wrong this valueOf()"); + assertEq(arguments.length, args.length, "wrong arguments count"); + for (var i = 0; i < args.length; i++) + assertEq(arguments[i], args[i], "wrong argument " + i); +} + +seenThis = false; +seenThisBox = Boolean; +args = [8, 6, 7, NaN, undefined, 0.3]; +some.call(false, 8, 6, 7, NaN, undefined, 0.3); + +var obj = {}; + +seenThis = "foo"; +seenThisBox = String; +args = [obj]; +some.call("foo", obj); + +seenThis = obj; +seenThisBox = Object; +some.call(obj, obj); + +function strictSome() +{ + "use strict"; + assertEq(this, seenThis, "wrong this"); + assertEq(arguments.length, args.length, "wrong arguments count"); + for (var i = 0; i < args.length; i++) + assertEq(arguments[i], args[i], "wrong argument " + i); +} + +seenThis = NaN; +args = [8, 6, 7, NaN, undefined, 0.3]; +strictSome.call(NaN, 8, 6, 7, NaN, undefined, 0.3); + +seenThis = "foo"; +args = [obj]; +strictSome.call("foo", obj); + +seenThis = obj; +strictSome.call(obj, obj); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Function/function-caller.js b/js/src/tests/ecma_5/Function/function-caller.js new file mode 100644 index 000000000..2b0812d4f --- /dev/null +++ b/js/src/tests/ecma_5/Function/function-caller.js @@ -0,0 +1,45 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'function-caller.js'; +var BUGNUMBER = 514581; +var summary = "Function.prototype.caller should throw a TypeError for " + + "strict-mode functions"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// behavior + +function expectTypeError(fun) +{ + try + { + fun(); + throw new Error("didn't throw"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "expected TypeError calling function" + + ("name" in fun ? " " + fun.name : "") + ", instead got: " + e); + } +} + +function bar() { "use strict"; } +expectTypeError(function barCaller() { bar.caller; }); + +function baz() { "use strict"; return 17; } +expectTypeError(function bazCaller() { baz.caller; }); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Function/redefine-arguments-length.js b/js/src/tests/ecma_5/Function/redefine-arguments-length.js new file mode 100644 index 000000000..ad9ae742f --- /dev/null +++ b/js/src/tests/ecma_5/Function/redefine-arguments-length.js @@ -0,0 +1,65 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'redefine-arguments-length.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 539766; +var summary = + "Object.defineProperty sets arguments.length without setting the " + + "length-overridden bit"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function test_JSOP_ARGCNT() +{ + var length = "length"; + Object.defineProperty(arguments, length, { value: 17 }); + assertEq(arguments.length, 17); + assertEq(arguments[length], 17); +} +test_JSOP_ARGCNT(); + +function test_js_fun_apply() +{ + var length = "length"; + Object.defineProperty(arguments, length, { value: 17 }); + + function fun() + { + assertEq(arguments.length, 17); + assertEq(arguments[length], 17); + assertEq(arguments[0], "foo"); + for (var i = 1; i < 17; i++) + assertEq(arguments[i], undefined); + } + fun.apply(null, arguments); +} +test_js_fun_apply("foo"); + +function test_array_toString_sub_1() +{ + Object.defineProperty(arguments, "length", { value: 1 }); + arguments.join = [].join; + assertEq([].toString.call(arguments), "1"); +} +test_array_toString_sub_1(1, 2); + +function test_array_toString_sub_2() +{ + Object.defineProperty(arguments, "length", { value: 1 }); + assertEq([].toLocaleString.call(arguments), "1"); +} +test_array_toString_sub_2(1, 2); + + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Function/shell.js b/js/src/tests/ecma_5/Function/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Function/shell.js diff --git a/js/src/tests/ecma_5/Function/strict-arguments.js b/js/src/tests/ecma_5/Function/strict-arguments.js new file mode 100644 index 000000000..fce5f756c --- /dev/null +++ b/js/src/tests/ecma_5/Function/strict-arguments.js @@ -0,0 +1,453 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'strict-arguments.js'; +var BUGNUMBER = 516255; +var summary = + "ES5 strict mode: arguments objects of strict mode functions must copy " + + "argument values"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function arrayEvery(arr, fun) +{ + return Array.prototype.every.call(arr, fun); +} + +function arraysEqual(a1, a2) +{ + return a1.length === a2.length && + arrayEvery(a1, function(v, i) { return v === a2[i]; }); +} + + +/************************ + * NON-STRICT ARGUMENTS * + ************************/ + +var obj = {}; + +function noargs() { return arguments; } + +assertEq(arraysEqual(noargs(), []), true); +assertEq(arraysEqual(noargs(1), [1]), true); +assertEq(arraysEqual(noargs(2, obj, 8), [2, obj, 8]), true); + +function args(a) { return arguments; } + +assertEq(arraysEqual(args(), []), true); +assertEq(arraysEqual(args(1), [1]), true); +assertEq(arraysEqual(args(1, obj), [1, obj]), true); +assertEq(arraysEqual(args("foopy"), ["foopy"]), true); + +function assign(a) +{ + a = 17; + return arguments; +} + +assertEq(arraysEqual(assign(1), [17]), true); + +function getLaterAssign(a) +{ + var o = arguments; + a = 17; + return o; +} + +assertEq(arraysEqual(getLaterAssign(1), [17]), true); + +function assignElementGetParameter(a) +{ + arguments[0] = 17; + return a; +} + +assertEq(assignElementGetParameter(42), 17); + +function assignParameterGetElement(a) +{ + a = 17; + return arguments[0]; +} + +assertEq(assignParameterGetElement(42), 17); + +function assignArgSub(x, y) +{ + arguments[0] = 3; + return arguments[0]; +} + +assertEq(assignArgSub(1), 3); + +function assignArgSubParamUse(x, y) +{ + arguments[0] = 3; + assertEq(x, 3); + return arguments[0]; +} + +assertEq(assignArgSubParamUse(1), 3); + +function assignArgumentsElement(x, y) +{ + arguments[0] = 3; + return arguments[Math.random() ? "0" : 0]; // nix arguments[const] optimizations +} + +assertEq(assignArgumentsElement(1), 3); + +function assignArgumentsElementParamUse(x, y) +{ + arguments[0] = 3; + assertEq(x, 3); + return arguments[Math.random() ? "0" : 0]; // nix arguments[const] optimizations +} + +assertEq(assignArgumentsElementParamUse(1), 3); + +/******************** + * STRICT ARGUMENTS * + ********************/ + +function strictNoargs() +{ + "use strict"; + return arguments; +} + +assertEq(arraysEqual(strictNoargs(), []), true); +assertEq(arraysEqual(strictNoargs(1), [1]), true); +assertEq(arraysEqual(strictNoargs(1, obj), [1, obj]), true); + +function strictArgs(a) +{ + "use strict"; + return arguments; +} + +assertEq(arraysEqual(strictArgs(), []), true); +assertEq(arraysEqual(strictArgs(1), [1]), true); +assertEq(arraysEqual(strictArgs(1, obj), [1, obj]), true); + +function strictAssign(a) +{ + "use strict"; + a = 17; + return arguments; +} + +assertEq(arraysEqual(strictAssign(), []), true); +assertEq(arraysEqual(strictAssign(1), [1]), true); +assertEq(arraysEqual(strictAssign(1, obj), [1, obj]), true); + +var upper; +function strictAssignAfter(a) +{ + "use strict"; + upper = arguments; + a = 42; + return upper; +} + +assertEq(arraysEqual(strictAssignAfter(), []), true); +assertEq(arraysEqual(strictAssignAfter(17), [17]), true); +assertEq(arraysEqual(strictAssignAfter(obj), [obj]), true); + +function strictMaybeAssignOuterParam(p) +{ + "use strict"; + function inner() { p = 17; } + return arguments; +} + +assertEq(arraysEqual(strictMaybeAssignOuterParam(), []), true); +assertEq(arraysEqual(strictMaybeAssignOuterParam(42), [42]), true); +assertEq(arraysEqual(strictMaybeAssignOuterParam(obj), [obj]), true); + +function strictAssignOuterParam(p) +{ + "use strict"; + function inner() { p = 17; } + inner(); + return arguments; +} + +assertEq(arraysEqual(strictAssignOuterParam(), []), true); +assertEq(arraysEqual(strictAssignOuterParam(17), [17]), true); +assertEq(arraysEqual(strictAssignOuterParam(obj), [obj]), true); + +function strictAssignOuterParamPSYCH(p) +{ + "use strict"; + function inner(p) { p = 17; } + inner(); + return arguments; +} + +assertEq(arraysEqual(strictAssignOuterParamPSYCH(), []), true); +assertEq(arraysEqual(strictAssignOuterParamPSYCH(17), [17]), true); +assertEq(arraysEqual(strictAssignOuterParamPSYCH(obj), [obj]), true); + +function strictEval(code, p) +{ + "use strict"; + eval(code); + return arguments; +} + +assertEq(arraysEqual(strictEval("1", 2), ["1", 2]), true); +assertEq(arraysEqual(strictEval("arguments"), ["arguments"]), true); +assertEq(arraysEqual(strictEval("p = 2"), ["p = 2"]), true); +assertEq(arraysEqual(strictEval("p = 2", 17), ["p = 2", 17]), true); +assertEq(arraysEqual(strictEval("arguments[0] = 17"), [17]), true); +assertEq(arraysEqual(strictEval("arguments[0] = 17", 42), [17, 42]), true); + +function strictMaybeNestedEval(code, p) +{ + "use strict"; + function inner() { eval(code); } + return arguments; +} + +assertEq(arraysEqual(strictMaybeNestedEval("1", 2), ["1", 2]), true); +assertEq(arraysEqual(strictMaybeNestedEval("arguments"), ["arguments"]), true); +assertEq(arraysEqual(strictMaybeNestedEval("p = 2"), ["p = 2"]), true); +assertEq(arraysEqual(strictMaybeNestedEval("p = 2", 17), ["p = 2", 17]), true); + +function strictNestedEval(code, p) +{ + "use strict"; + function inner() { eval(code); } + inner(); + return arguments; +} + +assertEq(arraysEqual(strictNestedEval("1", 2), ["1", 2]), true); +assertEq(arraysEqual(strictNestedEval("arguments"), ["arguments"]), true); +assertEq(arraysEqual(strictNestedEval("p = 2"), ["p = 2"]), true); +assertEq(arraysEqual(strictNestedEval("p = 2", 17), ["p = 2", 17]), true); +assertEq(arraysEqual(strictNestedEval("arguments[0] = 17"), ["arguments[0] = 17"]), true); +assertEq(arraysEqual(strictNestedEval("arguments[0] = 17", 42), ["arguments[0] = 17", 42]), true); + +function strictAssignArguments(a) +{ + "use strict"; + arguments[0] = 42; + return a; +} + +assertEq(strictAssignArguments(), undefined); +assertEq(strictAssignArguments(obj), obj); +assertEq(strictAssignArguments(17), 17); + +function strictAssignParameterGetElement(a) +{ + "use strict"; + a = 17; + return arguments[0]; +} + +assertEq(strictAssignParameterGetElement(42), 42); + +function strictAssignArgSub(x, y) +{ + "use strict"; + arguments[0] = 3; + return arguments[0]; +} + +assertEq(strictAssignArgSub(1), 3); + +function strictAssignArgSubParamUse(x, y) +{ + "use strict"; + arguments[0] = 3; + assertEq(x, 1); + return arguments[0]; +} + +assertEq(strictAssignArgSubParamUse(1), 3); + +function strictAssignArgumentsElement(x, y) +{ + "use strict"; + arguments[0] = 3; + return arguments[Math.random() ? "0" : 0]; // nix arguments[const] optimizations +} + +assertEq(strictAssignArgumentsElement(1), 3); + +function strictAssignArgumentsElementParamUse(x, y) +{ + "use strict"; + arguments[0] = 3; + assertEq(x, 1); + return arguments[Math.random() ? "0" : 0]; // nix arguments[const] optimizations +} + +assertEq(strictAssignArgumentsElementParamUse(1), 3); + +function strictNestedAssignShadowVar(p) +{ + "use strict"; + function inner() + { + var p = 12; + function innermost() { p = 1776; return 12; } + return innermost(); + } + return arguments; +} + +assertEq(arraysEqual(strictNestedAssignShadowVar(), []), true); +assertEq(arraysEqual(strictNestedAssignShadowVar(99), [99]), true); +assertEq(arraysEqual(strictNestedAssignShadowVar(""), [""]), true); +assertEq(arraysEqual(strictNestedAssignShadowVar(obj), [obj]), true); + +function strictNestedAssignShadowCatch(p) +{ + "use strict"; + function inner() + { + try + { + } + catch (p) + { + var f = function innermost() { p = 1776; return 12; }; + f(); + } + } + return arguments; +} + +assertEq(arraysEqual(strictNestedAssignShadowCatch(), []), true); +assertEq(arraysEqual(strictNestedAssignShadowCatch(99), [99]), true); +assertEq(arraysEqual(strictNestedAssignShadowCatch(""), [""]), true); +assertEq(arraysEqual(strictNestedAssignShadowCatch(obj), [obj]), true); + +function strictNestedAssignShadowCatchCall(p) +{ + "use strict"; + function inner() + { + try + { + } + catch (p) + { + var f = function innermost() { p = 1776; return 12; }; + f(); + } + } + inner(); + return arguments; +} + +assertEq(arraysEqual(strictNestedAssignShadowCatchCall(), []), true); +assertEq(arraysEqual(strictNestedAssignShadowCatchCall(99), [99]), true); +assertEq(arraysEqual(strictNestedAssignShadowCatchCall(""), [""]), true); +assertEq(arraysEqual(strictNestedAssignShadowCatchCall(obj), [obj]), true); + +function strictNestedAssignShadowFunction(p) +{ + "use strict"; + function inner() + { + function p() { } + p = 1776; + } + return arguments; +} + +assertEq(arraysEqual(strictNestedAssignShadowFunction(), []), true); +assertEq(arraysEqual(strictNestedAssignShadowFunction(99), [99]), true); +assertEq(arraysEqual(strictNestedAssignShadowFunction(""), [""]), true); +assertEq(arraysEqual(strictNestedAssignShadowFunction(obj), [obj]), true); + +function strictNestedAssignShadowFunctionCall(p) +{ + "use strict"; + function inner() + { + function p() { } + p = 1776; + } + return arguments; +} + +assertEq(arraysEqual(strictNestedAssignShadowFunctionCall(), []), true); +assertEq(arraysEqual(strictNestedAssignShadowFunctionCall(99), [99]), true); +assertEq(arraysEqual(strictNestedAssignShadowFunctionCall(""), [""]), true); +assertEq(arraysEqual(strictNestedAssignShadowFunctionCall(obj), [obj]), true); + +function strictNestedShadowAndMaybeEval(code, p) +{ + "use strict"; + function inner(p) { eval(code); } + return arguments; +} + +assertEq(arraysEqual(strictNestedShadowAndMaybeEval("1", 2), ["1", 2]), true); +assertEq(arraysEqual(strictNestedShadowAndMaybeEval("arguments"), ["arguments"]), true); +assertEq(arraysEqual(strictNestedShadowAndMaybeEval("p = 2"), ["p = 2"]), true); +assertEq(arraysEqual(strictNestedShadowAndMaybeEval("p = 2", 17), ["p = 2", 17]), true); +assertEq(arraysEqual(strictNestedShadowAndMaybeEval("arguments[0] = 17"), ["arguments[0] = 17"]), true); +assertEq(arraysEqual(strictNestedShadowAndMaybeEval("arguments[0] = 17", 42), ["arguments[0] = 17", 42]), true); + +function strictNestedShadowAndEval(code, p) +{ + "use strict"; + function inner(p) { eval(code); } + return arguments; +} + +assertEq(arraysEqual(strictNestedShadowAndEval("1", 2), ["1", 2]), true); +assertEq(arraysEqual(strictNestedShadowAndEval("arguments"), ["arguments"]), true); +assertEq(arraysEqual(strictNestedShadowAndEval("p = 2"), ["p = 2"]), true); +assertEq(arraysEqual(strictNestedShadowAndEval("p = 2", 17), ["p = 2", 17]), true); +assertEq(arraysEqual(strictNestedShadowAndEval("arguments[0] = 17"), ["arguments[0] = 17"]), true); +assertEq(arraysEqual(strictNestedShadowAndEval("arguments[0] = 17", 42), ["arguments[0] = 17", 42]), true); + +function strictEvalContainsMutation(code) +{ + "use strict"; + return eval(code); +} + +assertEq(arraysEqual(strictEvalContainsMutation("code = 17; arguments"), ["code = 17; arguments"]), true); +assertEq(arraysEqual(strictEvalContainsMutation("arguments[0] = 17; arguments"), [17]), true); +assertEq(strictEvalContainsMutation("arguments[0] = 17; code"), "arguments[0] = 17; code"); + +function strictNestedAssignShadowFunctionName(p) +{ + "use strict"; + function inner() + { + function p() { p = 1776; } + p(); + } + inner(); + return arguments; +} + +assertEq(arraysEqual(strictNestedAssignShadowFunctionName(), []), true); +assertEq(arraysEqual(strictNestedAssignShadowFunctionName(99), [99]), true); +assertEq(arraysEqual(strictNestedAssignShadowFunctionName(""), [""]), true); +assertEq(arraysEqual(strictNestedAssignShadowFunctionName(obj), [obj]), true); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Global/adding-global-var-nonextensible-error.js b/js/src/tests/ecma_5/Global/adding-global-var-nonextensible-error.js new file mode 100644 index 000000000..bacabd696 --- /dev/null +++ b/js/src/tests/ecma_5/Global/adding-global-var-nonextensible-error.js @@ -0,0 +1,36 @@ +// |reftest| skip +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 621432; +var summary = + "If a var statement can't create a global property because the global " + + "object isn't extensible, and an error is thrown while decompiling the " + + "global, don't assert"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var toSource = []; +Object.preventExtensions(this); + +try +{ + eval("var x;"); + throw new Error("no error thrown"); +} +catch (e) +{ + reportCompare(e instanceof TypeError, true, "expected TypeError, got: " + e); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Global/browser.js b/js/src/tests/ecma_5/Global/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Global/browser.js diff --git a/js/src/tests/ecma_5/Global/bug-320887.js b/js/src/tests/ecma_5/Global/bug-320887.js new file mode 100644 index 000000000..5e8d3445a --- /dev/null +++ b/js/src/tests/ecma_5/Global/bug-320887.js @@ -0,0 +1,15 @@ +// `var x` should not call the getter of an existing global property. + +var hit = 0; +Object.defineProperty(this, "x", { + get: function () { return ++hit; }, + configurable: true +}); +eval("var x;"); +assertEq(hit, 0); + +// The declaration should not have redefined the global x, either. +assertEq(x, 1); +assertEq(x, 2); + +reportCompare(0, 0); diff --git a/js/src/tests/ecma_5/Global/bug660612.js b/js/src/tests/ecma_5/Global/bug660612.js new file mode 100644 index 000000000..71589f53d --- /dev/null +++ b/js/src/tests/ecma_5/Global/bug660612.js @@ -0,0 +1,7 @@ +try { + decodeURIComponent('%ED%A0%80'); + assertEq(true, false, "expected an URIError"); +} catch (e) { + assertEq(e instanceof URIError, true); + reportCompare(true,true); +} diff --git a/js/src/tests/ecma_5/Global/cross-global-implicit-this.js b/js/src/tests/ecma_5/Global/cross-global-implicit-this.js new file mode 100644 index 000000000..90c6e8a95 --- /dev/null +++ b/js/src/tests/ecma_5/Global/cross-global-implicit-this.js @@ -0,0 +1,84 @@ +// |reftest| skip-if(!xulRuntime.shell) -- needs evaluate() +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 671947; +var summary = "Unqualified function invocation uses the global object of the called property as |this|"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +this.name = "o"; + +function f() { + return this ? this.name : "t"; +} +function g() { + "use strict"; + return this ? this.name : "u"; +} +function h() { + return this ? this.name : "v"; +} + +var sb = newGlobal(); +sb.parent = this; +sb.name = "i"; +sb.f = f; +sb.g = g; + +sb.evaluate( + '\n' + + ' this.a = { name: "a", f: f, g: g };\n' + + ' this.b = { name: "b", f: f, g: g };\n' + + ' Object.defineProperty(this, "h", { get: (function(){ return parent.h; })});\n' + + ' Object.defineProperty(a, "h", { get: (function(){ return parent.h; })});\n' + + ' Object.defineProperty(b, "h", { get: (function(){ return parent.h; })});\n' + + ''); + + +// Three of the first four cases pass undefined (promoted inside the callee to +// the callee's global object). a.f() is the one exception, which passes the +// base, a, as the this object. +assertEq(sb.evaluate('(function(){return f();})();'), "o"); +assertEq(sb.evaluate('(function(){return (1,f)();})();'), "o"); +assertEq(sb.evaluate('(function(){return a.f();})();'), "a"); +assertEq(sb.evaluate('(function(){return eval("f()");})();'), "o"); + +// Same cases as above, but wrapped in a with. The first and last of these cases +// pass b, the object scoped by the with, as the this value. a.f() still passes +// the explicit base, a. (1,f)() is a little tricksier - this passes undefined +// (promoted to the callee global object) since the comma operator calls +// GetValue on the reference (see ES5 11.14.). +assertEq(sb.evaluate('(function(){with(b){ return (function(){ return f();})(); }})();'), "b"); +assertEq(sb.evaluate('(function(){with(b){ return (function(){ return (1,f)();})(); }})();'), "o"); +assertEq(sb.evaluate('(function(){with(b){ return (function(){ return a.f();})(); }})();'), "a"); +assertEq(sb.evaluate('(function(){with(b){ return (function(){ return eval("f()");})(); }})();'), "b"); + +// Same tests as above, but with a strict callee. We expect the same results, +// except undefined this is not replaced with the global object. +assertEq(sb.evaluate('(function(){return g();})();'), "u"); +assertEq(sb.evaluate('(function(){return (1,g)();})();'), "u"); +assertEq(sb.evaluate('(function(){return a.g();})();'), "a"); +assertEq(sb.evaluate('(function(){return eval("g()");})();'), "u"); +assertEq(sb.evaluate('(function(){with(b){ return g(); }})();'), "b"); +assertEq(sb.evaluate('(function(){with(b){ return (1,g)(); }})();'), "u"); +assertEq(sb.evaluate('(function(){with(b){ return a.g(); }})();'), "a"); +assertEq(sb.evaluate('(function(){with(b){ return (function(){ return eval("g()");})(); }})();'), "b"); + +/* Same as the first set, but h is a getter property. */ +assertEq(sb.evaluate('(function(){return h();})();'), "o"); +assertEq(sb.evaluate('(function(){return (1,h)();})();'), "o"); +assertEq(sb.evaluate('(function(){return a.h();})();'), "a"); +assertEq(sb.evaluate('(function(){return eval("h()");})();'), "o"); +assertEq(sb.evaluate('(function(){with(b){ return h(); }})();'), "b"); +assertEq(sb.evaluate('(function(){with(b){ return (1,h)(); }})();'), "o"); +assertEq(sb.evaluate('(function(){with(b){ return a.h(); }})();'), "a"); +assertEq(sb.evaluate('(function(){with(b){ return (function(){ return eval("h()");})(); }})();'), "b"); + +if (typeof reportCompare === "function"); + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Global/decodeURI-decodes-FFFE-FFFF.js b/js/src/tests/ecma_5/Global/decodeURI-decodes-FFFE-FFFF.js new file mode 100644 index 000000000..28f3019cd --- /dev/null +++ b/js/src/tests/ecma_5/Global/decodeURI-decodes-FFFE-FFFF.js @@ -0,0 +1,26 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 520095; +var summary = + "decodeURI{,Component} should return the specified character for " + + "'%EF%BF%BE' and '%EF%BF%BF', not return U+FFFD"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq(decodeURI("%EF%BF%BE"), "\uFFFE"); +assertEq(decodeURI("%EF%BF%BF"), "\uFFFF"); +assertEq(decodeURIComponent("%EF%BF%BE"), "\uFFFE"); +assertEq(decodeURIComponent("%EF%BF%BF"), "\uFFFF"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Global/delete-global-NaN-property.js b/js/src/tests/ecma_5/Global/delete-global-NaN-property.js new file mode 100644 index 000000000..6bce5c26d --- /dev/null +++ b/js/src/tests/ecma_5/Global/delete-global-NaN-property.js @@ -0,0 +1,32 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ +"use strict" + +//----------------------------------------------------------------------------- +var BUGNUMBER = 649570; +var summary = "|delete window.NaN| should throw a TypeError"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var g = this, v = false; +try +{ + delete this.NaN; + throw new Error("no exception thrown"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "Expected a TypeError, got: " + e); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Global/direct-eval-but-not.js b/js/src/tests/ecma_5/Global/direct-eval-but-not.js new file mode 100644 index 000000000..a34192b37 --- /dev/null +++ b/js/src/tests/ecma_5/Global/direct-eval-but-not.js @@ -0,0 +1,32 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 609256; +var summary = + "Don't crash doing a direct eval when eval doesn't resolve to an object " + + "(let alone the original eval function)"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var eval = ""; +try +{ + eval(); + throw new Error("didn't throw?"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Global/eval-01.js b/js/src/tests/ecma_5/Global/eval-01.js new file mode 100644 index 000000000..50bb95ffd --- /dev/null +++ b/js/src/tests/ecma_5/Global/eval-01.js @@ -0,0 +1,38 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var a = 9; +var global = this; + +function test() { + var a = 0; + + // direct eval sees local a + assertEq(eval('a+1'), 1); + assertEq(eval('eval("a+1")'), 1); + + // indirect: using a name other than 'eval' + var foo = eval; + assertEq(foo('a+1'), 10); + assertEq(eval('foo("a+1")'), 10); // outer eval is direct, inner foo("a+1") is indirect + + // indirect: qualified method call + assertEq(this.eval("a+1"), 10); + assertEq(global.eval("a+1"), 10); + var obj = {foo: eval, eval: eval}; + assertEq(obj.foo('a+1'), 10); + assertEq(obj.eval('a+1'), 10); + var name = "eval"; + assertEq(obj[name]('a+1'), 10); + assertEq([eval][0]('a+1'), 10); + + // indirect: not called from a CallExpression at all + assertEq(eval.call(undefined, 'a+1'), 10); + assertEq(eval.call(global, 'a+1'), 10); + assertEq(eval.apply(undefined, ['a+1']), 10); + assertEq(eval.apply(global, ['a+1']), 10); + assertEq(['a+1'].map(eval)[0], 10); +} + +test(); +reportCompare(0, 0); diff --git a/js/src/tests/ecma_5/Global/eval-02.js b/js/src/tests/ecma_5/Global/eval-02.js new file mode 100644 index 000000000..e1a315949 --- /dev/null +++ b/js/src/tests/ecma_5/Global/eval-02.js @@ -0,0 +1,38 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var a = 9; + +function directArg(eval, s) { + var a = 1; + return eval(s); +} + +function directVar(f, s) { + var eval = f; + var a = 1; + return eval(s); +} + +function directWith(obj, s) { + var f; + with (obj) { + f = function () { + var a = 1; + return eval(s); + }; + } + return f(); +} + +// direct eval, even though 'eval' is an argument +assertEq(directArg(eval, 'a+1'), 2); + +// direct eval, even though 'eval' is a var +assertEq(directVar(eval, 'a+1'), 2); + +// direct eval, even though 'eval' is found via a with block +assertEq(directWith(this, 'a+1'), 2); +assertEq(directWith({eval: eval, a: -1000}, 'a+1'), 2); + +reportCompare(0, 0); diff --git a/js/src/tests/ecma_5/Global/eval-in-strict-eval-in-normal-function.js b/js/src/tests/ecma_5/Global/eval-in-strict-eval-in-normal-function.js new file mode 100644 index 000000000..00d76652d --- /dev/null +++ b/js/src/tests/ecma_5/Global/eval-in-strict-eval-in-normal-function.js @@ -0,0 +1,30 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 620130; +var summary = + "Calls to eval with same code + varying strict mode of script containing " + + "eval == fail"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function t(code) { return eval(code); } + +assertEq(t("'use strict'; try { eval('with (5) 17'); } catch (e) { 'threw'; }"), + "threw"); +assertEq(t("try { eval('with (5) 17'); } catch (e) { 'threw'; }"), + 17); +assertEq(t("'use strict'; try { eval('with (5) 17'); } catch (e) { 'threw'; }"), + "threw"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Global/eval-inside-with-is-direct.js b/js/src/tests/ecma_5/Global/eval-inside-with-is-direct.js new file mode 100644 index 000000000..d5d66483e --- /dev/null +++ b/js/src/tests/ecma_5/Global/eval-inside-with-is-direct.js @@ -0,0 +1,28 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 601307; +var summary = "with (...) eval(...) is a direct eval"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var t = "global"; +function test() +{ + var t = "local"; + with ({}) + return eval("t"); +} +assertEq(test(), "local"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Global/eval-native-callback-is-indirect.js b/js/src/tests/ecma_5/Global/eval-native-callback-is-indirect.js new file mode 100644 index 000000000..bfc4a3489 --- /dev/null +++ b/js/src/tests/ecma_5/Global/eval-native-callback-is-indirect.js @@ -0,0 +1,32 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 604504; +var summary = "eval called from a native function is indirect"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var originalEval = eval; + +var global = this; +var directCheckCode = "this === global"; + +function testBound() +{ + var global = "psych!"; + var eval = originalEval.bind(undefined, directCheckCode); + assertEq(eval(), true); +} +testBound(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Global/parenthesized-eval-is-direct.js b/js/src/tests/ecma_5/Global/parenthesized-eval-is-direct.js new file mode 100644 index 000000000..415412865 --- /dev/null +++ b/js/src/tests/ecma_5/Global/parenthesized-eval-is-direct.js @@ -0,0 +1,68 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +print("(eval)(...) is a direct eval, (1, eval)() isn't, etc."); + +/************** + * BEGIN TEST * + **************/ + +/* + * Justification: + * + * https://mail.mozilla.org/pipermail/es5-discuss/2010-October/003724.html + * + * Note also bug 537673. + */ + +var t = "global"; + +function group() +{ + var t = "local"; + return (eval)("t"); +} +assertEq(group(), "local"); + +function groupAndComma() +{ + var t = "local"; + return (1, eval)("t"); +} +assertEq(groupAndComma(), "global"); + +function groupAndTrueTernary() +{ + var t = "local"; + return (true ? eval : null)("t"); +} +assertEq(groupAndTrueTernary(), "global"); + +function groupAndEmptyStringTernary() +{ + var t = "local"; + return ("" ? null : eval)("t"); +} +assertEq(groupAndEmptyStringTernary(), "global"); + +function groupAndZeroTernary() +{ + var t = "local"; + return (0 ? null : eval)("t"); +} +assertEq(groupAndZeroTernary(), "global"); + +function groupAndNaNTernary() +{ + var t = "local"; + return (0 / 0 ? null : eval)("t"); +} +assertEq(groupAndNaNTernary(), "global"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Global/parseFloat-01.js b/js/src/tests/ecma_5/Global/parseFloat-01.js new file mode 100644 index 000000000..089c0901e --- /dev/null +++ b/js/src/tests/ecma_5/Global/parseFloat-01.js @@ -0,0 +1,24 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 613492; +var summary = "ES5 15.1.2.3 parseFloat(string)"; + +print(BUGNUMBER + ": " + summary); + +assertEq(parseFloat("Infinity"), Infinity); +assertEq(parseFloat("+Infinity"), Infinity); +assertEq(parseFloat("-Infinity"), -Infinity); + +assertEq(parseFloat("inf"), NaN); +assertEq(parseFloat("Inf"), NaN); +assertEq(parseFloat("infinity"), NaN); + +assertEq(parseFloat("nan"), NaN); +assertEq(parseFloat("NaN"), NaN); + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Global/parseInt-01.js b/js/src/tests/ecma_5/Global/parseInt-01.js new file mode 100644 index 000000000..041708669 --- /dev/null +++ b/js/src/tests/ecma_5/Global/parseInt-01.js @@ -0,0 +1,170 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 577536; +var summary = "ES5 15.1.2.2 parseInt(string, radix)"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var str, radix; +var upvar; + +/* 1. Let inputString be ToString(string). */ + +assertEq(parseInt({ toString: function() { return "17" } }, 10), 17); + +upvar = 0; +str = { get toString() { upvar++; return function() { upvar++; return "12345"; } } }; +assertEq(parseInt(str, 10), 12345); +assertEq(upvar, 2); + + +/* + * 2. Let S be a newly created substring of inputString consisting of the first + * character that is not a StrWhiteSpaceChar and all characters following + * that character. (In other words, remove leading white space.) + */ + +var ws = + ["\t", "\v", "\f", " ", "\xA0", "\uFEFF", + "\u2004", "\u3000", // a few Unicode whitespaces + "\r", "\n", "\u2028", "\u2029"]; + +str = "8675309"; +for (var i = 0, sz = ws.length; i < sz; i++) +{ + assertEq(parseInt(ws[i] + str, 10), 8675309); + for (var j = 0, sz = ws.length; j < sz; j++) + { + assertEq(parseInt(ws[i] + ws[j] + str, 10), 8675309, + ws[i].charCodeAt(0).toString(16) + ", " + + ws[j].charCodeAt(0).toString(16)); + } +} + + +/* + * 3. Let sign be 1. + * 4. If S is not empty and the first character of S is a minus sign -, let + * sign be −1. + */ +str = "5552368"; +assertEq(parseInt("-" + str, 10), -parseInt(str, 10)); +assertEq(parseInt(" -" + str, 10), -parseInt(str, 10)); +assertEq(parseInt("-", 10), NaN); +assertEq(parseInt("", 10), NaN); +assertEq(parseInt("-0", 10), -0); + + +/* + * 5. If S is not empty and the first character of S is a plus sign + or a + * minus sign -, then remove the first character from S. + */ +assertEq(parseInt("+12345", 10), 12345); +assertEq(parseInt(" +12345", 10), 12345); +assertEq(parseInt("-12345", 10), -12345); +assertEq(parseInt(" -12345", 10), -12345); + + +/* + * 6. Let R = ToInt32(radix). + */ + +upvar = ""; +str = + { toString: function() { if (!upvar) upvar = "string"; return "42"; } }; +radix = + { toString: function() { if (!upvar) upvar = "radix"; return "10"; } }; + +assertEq(parseInt(str, radix), 42); +assertEq(upvar, "string"); + +assertEq(parseInt("123", null), 123); +assertEq(parseInt("123", undefined), 123); +assertEq(parseInt("123", NaN), 123); +assertEq(parseInt("123", -0), 123); +assertEq(parseInt("10", 72057594037927950), 16); +assertEq(parseInt("10", -4294967292), 4); +assertEq(parseInt("0x10", 1e308), 16); +assertEq(parseInt("10", 1e308), 10); +assertEq(parseInt("10", { valueOf: function() { return 16; } }), 16); + + +/* + * 7. Let stripPrefix be true. + * 8. If R ≠ 0, then + * a. If R < 2 or R > 36, then return NaN. + * b. If R ≠ 16, let stripPrefix be false. + * 9. Else, R = 0 + * a. Let R = 10. + * 10. If stripPrefix is true, then + * a. If the length of S is at least 2 and the first two characters of S + * are either “0x” or “0X”, then remove the first two characters from S and + * let R = 16. + */ +var vs = ["1", "51", "917", "2343", "99963"]; +for (var i = 0, sz = vs.length; i < sz; i++) + assertEq(parseInt(vs[i], 0), parseInt(vs[i], 10), "bad " + vs[i]); + +assertEq(parseInt("0x10"), 16); +assertEq(parseInt("0x10", 0), 16); +assertEq(parseInt("0x10", 16), 16); +assertEq(parseInt("0x10", 8), 0); +assertEq(parseInt("-0x10", 16), -16); + +assertEq(parseInt("5", 1), NaN); +assertEq(parseInt("5", 37), NaN); +assertEq(parseInt("5", { valueOf: function() { return -1; } }), NaN); + + +/* + * 11. If S contains any character that is not a radix-R digit, then let Z be + * the substring of S consisting of all characters before the first such + * character; otherwise, let Z be S. + * 12. If Z is empty, return NaN. + */ +assertEq(parseInt(""), NaN); +assertEq(parseInt("ohai"), NaN); +assertEq(parseInt("0xohai"), NaN); +assertEq(parseInt("-ohai"), NaN); +assertEq(parseInt("+ohai"), NaN); +assertEq(parseInt(" ohai"), NaN); + +assertEq(parseInt("0xaohai"), 10); +assertEq(parseInt("hohai", 18), 17); + + +/* + * 13. Let mathInt be the mathematical integer value that is represented by Z + * in radix-R notation, using the letters A-Z and a-z for digits with + * values 10 through 35. (However, if R is 10 and Z contains more than 20 + * significant digits, every significant digit after the 20th may be + * replaced by a 0 digit, at the option of the implementation; and if R is + * not 2, 4, 8, 10, 16, or 32, then mathInt may be an implementation- + * dependent approximation to the mathematical integer value that is + * represented by Z in radix-R notation.) + * 14. Let number be the Number value for mathInt. + * 15. Return sign × number. + */ +assertEq(parseInt("ohai", 36), 1142154); +assertEq(parseInt("0ohai", 36), 1142154); +assertEq(parseInt("00ohai", 36), 1142154); +assertEq(parseInt("A", 16), 10); +assertEq(parseInt("0A", 16), 10); +assertEq(parseInt("00A", 16), 10); +assertEq(parseInt("A", 17), 10); +assertEq(parseInt("0A", 17), 10); +assertEq(parseInt("00A", 17), 10); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Global/parseInt-default-to-decimal.js b/js/src/tests/ecma_5/Global/parseInt-default-to-decimal.js new file mode 100644 index 000000000..b2e1378a4 --- /dev/null +++ b/js/src/tests/ecma_5/Global/parseInt-default-to-decimal.js @@ -0,0 +1,31 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 583925; +var summary = + "parseInt should treat leading-zero inputs (with radix unspecified) as " + + "decimal, not octal (this changed in bug 786135)"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq(parseInt("08"), 8); +assertEq(parseInt("09"), 9); +assertEq(parseInt("014"), 14); + +function strictParseInt(s) { "use strict"; return parseInt(s); } + +assertEq(strictParseInt("08"), 8); +assertEq(strictParseInt("09"), 9); +assertEq(strictParseInt("014"), 14); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Global/shell.js b/js/src/tests/ecma_5/Global/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Global/shell.js diff --git a/js/src/tests/ecma_5/JSON/browser.js b/js/src/tests/ecma_5/JSON/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/JSON/browser.js diff --git a/js/src/tests/ecma_5/JSON/cyclic-stringify-unrelated.js b/js/src/tests/ecma_5/JSON/cyclic-stringify-unrelated.js new file mode 100644 index 000000000..127c2ca60 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/cyclic-stringify-unrelated.js @@ -0,0 +1,39 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 1197097; +var summary = "JSON.stringify shouldn't use context-wide cycle detection"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var arr; + +// Nested yet separate JSON.stringify is okay. +arr = [{}]; +assertEq(JSON.stringify(arr, function(k, v) { + assertEq(JSON.stringify(arr), "[{}]"); + return v; +}), "[{}]"); + +// SpiderMonkey censors cycles in array-joining. This mechanism must not +// interfere with the cycle detection in JSON.stringify. +arr = [{ + toString: function() { + var s = JSON.stringify(arr); + assertEq(s, "[{}]"); + return s; + } +}]; +assertEq(arr.join(), "[{}]"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/cyclic-stringify.js b/js/src/tests/ecma_5/JSON/cyclic-stringify.js new file mode 100644 index 000000000..5eb6273a9 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/cyclic-stringify.js @@ -0,0 +1,100 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 578273; +var summary = + "ES5: Properly detect cycles in JSON.stringify (throw TypeError, check for " + + "cycles rather than imprecisely rely on recursion limits)"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// objects + +var count = 0; +var desc = + { + get: function() { count++; return obj; }, + enumerable: true, + configurable: true + }; +var obj = Object.defineProperty({ p1: 0 }, "p2", desc); + +try +{ + var str = JSON.stringify(obj); + assertEq(false, true, "should have thrown, got " + str); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "wrong error type: " + e.constructor.name); + assertEq(count, 1, + "cyclic data structures not detected immediately"); +} + +count = 0; +var obj2 = Object.defineProperty({}, "obj", desc); +try +{ + var str = JSON.stringify(obj2); + assertEq(false, true, "should have thrown, got " + str); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "wrong error type: " + e.constructor.name); + assertEq(count, 2, + "cyclic data structures not detected immediately"); +} + + +// arrays + +var count = 0; +var desc = + { + get: function() { count++; return arr; }, + enumerable: true, + configurable: true + }; +var arr = Object.defineProperty([], "0", desc); + +try +{ + var str = JSON.stringify(arr); + assertEq(false, true, "should have thrown, got " + str); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "wrong error type: " + e.constructor.name); + assertEq(count, 1, + "cyclic data structures not detected immediately"); +} + +count = 0; +var arr2 = Object.defineProperty([], "0", desc); +try +{ + var str = JSON.stringify(arr2); + assertEq(false, true, "should have thrown, got " + str); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "wrong error type: " + e.constructor.name); + assertEq(count, 2, + "cyclic data structures not detected immediately"); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-arguments.js b/js/src/tests/ecma_5/JSON/parse-arguments.js new file mode 100644 index 000000000..d7ed6d73b --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-arguments.js @@ -0,0 +1,30 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'parse-arguments.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 653847; +var summary = "JSON.parse handling of omitted arguments"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +try +{ + var r = JSON.parse(); + throw new Error("didn't throw, returned " + r); +} +catch (e) +{ + assertEq(e instanceof SyntaxError, true, "expected syntax error, got: " + e); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-array-gc.js b/js/src/tests/ecma_5/JSON/parse-array-gc.js new file mode 100644 index 000000000..f617ea66d --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-array-gc.js @@ -0,0 +1,34 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = "parse-array-gc.js"; +//----------------------------------------------------------------------------- +var BUGNUMBER = 852563; +var summary = + "IdValuePair::value should be initialized to avoid GC sequence-point issues"; + +print(BUGNUMBER + ": " + summary); + +print("Note: You must run this test under valgrind to be certain it passes"); + +/************** + * BEGIN TEST * + **************/ + +var x; + +if (typeof gczeal === "function") + gczeal(2, 1); +x = JSON.parse('{"foo":[]}'); +Object.getPrototypeOf(x.foo) == Array.prototype; +x = JSON.parse('{"foo":[], "bar":[]}'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +if (typeof gczeal === "function") + gczeal(0); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-crockford-01.js b/js/src/tests/ecma_5/JSON/parse-crockford-01.js new file mode 100644 index 000000000..5be9e90ed --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-crockford-01.js @@ -0,0 +1,121 @@ +var str = + '[\n' + + ' "JSON Test Pattern pass1",\n' + + ' {"object with 1 member":["array with 1 element"]},\n' + + ' {},\n' + + ' [],\n' + + ' -42,\n' + + ' true,\n' + + ' false,\n' + + ' null,\n' + + ' {\n' + + ' "integer": 1234567890,\n' + + ' "real": -9876.543210,\n' + + ' "e": 0.123456789e-12,\n' + + ' "E": 1.234567890E+34,\n' + + ' "": 23456789012E66,\n' + + ' "zero": 0,\n' + + ' "one": 1,\n' + + ' "space": " ",\n' + + ' "quote": "\\"",\n' + + ' "backslash": "\\\\",\n' + + ' "controls": "\\b\\f\\n\\r\\t",\n' + + ' "slash": "/ & \\/",\n' + + ' "alpha": "abcdefghijklmnopqrstuvwyz",\n' + + ' "ALPHA": "ABCDEFGHIJKLMNOPQRSTUVWYZ",\n' + + ' "digit": "0123456789",\n' + + ' "0123456789": "digit",\n' + + ' "special": "`1~!@#$%^&*()_+-={\':[,]}|;.</>?",\n' + + ' "hex": "\\u0123\\u4567\\u89AB\\uCDEF\\uabcd\\uef4A",\n' + + ' "true": true,\n' + + ' "false": false,\n' + + ' "null": null,\n' + + ' "array":[ ],\n' + + ' "object":{ },\n' + + ' "address": "50 St. James Street",\n' + + ' "url": "http://www.JSON.org/",\n' + + ' "comment": "// /* <!-- --",\n' + + ' "# -- --> */": " ",\n' + + ' " s p a c e d " :[1,2 , 3\n' + + '\n' + + ',\n' + + '\n' + + '4 , 5 , 6 ,7 ],"compact":[1,2,3,4,5,6,7],\n' + + ' "jsontext": "{\\"object with 1 member\\":[\\"array with 1 element\\"]}",\n' + + ' "quotes": "" \\u0022 %22 0x22 034 "",\n' + + ' "\\/\\\\\\"\\uCAFE\\uBABE\\uAB98\\uFCDE\\ubcda\\uef4A\\b\\f\\n\\r\\t`1~!@#$%^&*()_+-=[]{}|;:\',./<>?"\n' + + ': "A key can be any string"\n' + + ' },\n' + + ' 0.5 ,98.6\n' + + ',\n' + + '99.44\n' + + ',\n' + + '\n' + + '1066,\n' + + '1e1,\n' + + '0.1e1,\n' + + '1e-1,\n' + + '1e00,2e+00,2e-00\n' + + ',"rosebud"]\n'; + +var x = JSON.parse(str); + +assertEq(x[0], "JSON Test Pattern pass1"); +assertEq(x[1]["object with 1 member"][0], "array with 1 element"); +assertEq(x[2].constructor, Object); +assertEq(x[3].constructor, Array); +assertEq(x[4], -42); +assertEq(x[5], true); +assertEq(x[6], false); +assertEq(x[7], null); +assertEq(x[8].constructor, Object); +assertEq(x[8]["integer"], 1234567890); +assertEq(x[8]["real"], -9876.543210); +assertEq(x[8]["e"], 0.123456789e-12); +assertEq(x[8]["E"], 1.234567890E+34); +assertEq(x[8][""], 23456789012E66); +assertEq(x[8]["zero"], 0); +assertEq(x[8]["one"], 1); +assertEq(x[8]["space"], " "); +assertEq(x[8]["quote"], "\""); +assertEq(x[8]["backslash"], "\\"); +assertEq(x[8]["controls"], "\b\f\n\r\t"); +assertEq(x[8]["slash"], "/ & /"); +assertEq(x[8]["alpha"], "abcdefghijklmnopqrstuvwyz"); +assertEq(x[8]["ALPHA"], "ABCDEFGHIJKLMNOPQRSTUVWYZ"); +assertEq(x[8]["digit"], "0123456789"); +assertEq(x[8]["0123456789"], "digit"); +assertEq(x[8]["special"], "`1~!@#$%^&*()_+-={':[,]}|;.</>?"); +assertEq(x[8]["hex"], "\u0123\u4567\u89AB\uCDEF\uabcd\uef4A"); +assertEq(x[8]["true"], true); +assertEq(x[8]["false"], false); +assertEq(x[8]["null"], null); +assertEq(x[8]["array"].length, 0); +assertEq(x[8]["object"].constructor, Object); +assertEq(x[8]["address"], "50 St. James Street"); +assertEq(x[8]["url"], "http://www.JSON.org/"); +assertEq(x[8]["comment"], "// /* <!-- --"); +assertEq(x[8]["# -- --> */"], " "); +assertEq(x[8][" s p a c e d "].length, 7); +assertEq(x[8]["compact"].length, 7); +assertEq(x[8]["jsontext"], "{\"object with 1 member\":[\"array with 1 element\"]}"); +assertEq(x[8]["quotes"], "" \u0022 %22 0x22 034 ""); +assertEq(x[8]["\/\\\"\uCAFE\uBABE\uAB98\uFCDE\ubcda\uef4A\b\f\n\r\t`1~!@#$%^&*()_+-=[]{}|;:',./<>?"], "A key can be any string"); +assertEq(x[9], 0.5); +assertEq(x[10], 98.6); +assertEq(x[11], 99.44); +assertEq(x[12], 1066); +assertEq(x[13], 1e1); +assertEq(x[14], 0.1e1); +assertEq(x[15], 1e-1); +assertEq(x[16], 1e00); +assertEq(x[17], 2e+00); +assertEq(x[18], 2e-00); +assertEq(x[19], "rosebud"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-mega-huge-array.js b/js/src/tests/ecma_5/JSON/parse-mega-huge-array.js new file mode 100644 index 000000000..8f1c192c1 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-mega-huge-array.js @@ -0,0 +1,28 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'parse-mega-huge-array.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 667527; +var summary = "JSON.parse should parse arrays of essentially unlimited size"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var body = "0,"; +for (var i = 0; i < 21; i++) + body = body + body; +var str = '[' + body + '0]'; + +var arr = JSON.parse(str); +assertEq(arr.length, Math.pow(2, 21) + 1); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-number-syntax.js b/js/src/tests/ecma_5/JSON/parse-number-syntax.js new file mode 100644 index 000000000..42dbbe0b4 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-number-syntax.js @@ -0,0 +1,32 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +testJSON('-', true); +testJSON('+', true); +testJSON('-f', true); +testJSON('+f', true); +testJSON('00', true); +testJSON('01', true); +testJSON('1.', true); +testJSON('1.0e', true); +testJSON('1.0e+', true); +testJSON('1.0e-', true); +testJSON('1.0e+z', true); +testJSON('1.0e-z', true); +testJSON('1.0ee', true); +testJSON('1.e1', true); +testJSON('1.e+1', true); +testJSON('1.e-1', true); +testJSON('.', true); +testJSON('.1', true); +testJSON('.1e', true); +testJSON('.1e1', true); +testJSON('.1e+1', true); +testJSON('.1e-1', true); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-octal-syntax-error.js b/js/src/tests/ecma_5/JSON/parse-octal-syntax-error.js new file mode 100644 index 000000000..f7b0a13a6 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-octal-syntax-error.js @@ -0,0 +1,8 @@ +testJSON('{"Numbers cannot have leading zeroes": 013}', true); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-primitives.js b/js/src/tests/ecma_5/JSON/parse-primitives.js new file mode 100644 index 000000000..450e1a657 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-primitives.js @@ -0,0 +1,62 @@ +var x; + +// check an empty object, just for sanity +var emptyObject = "{}"; +x = JSON.parse(emptyObject); +assertEq(typeof x, "object"); +assertEq(x instanceof Object, true); + +x = JSON.parse(emptyObject); +assertEq(typeof x, "object"); + +// booleans and null +x = JSON.parse("true"); +assertEq(x, true); + +x = JSON.parse("true "); +assertEq(x, true); + +x = JSON.parse("false"); +assertEq(x, false); + +x = JSON.parse(" null "); +assertEq(x, null); + +// numbers +x = JSON.parse("1234567890"); +assertEq(x, 1234567890); + +x = JSON.parse("-9876.543210"); +assertEq(x, -9876.543210); + +x = JSON.parse("0.123456789e-12"); +assertEq(x, 0.123456789e-12); + +x = JSON.parse("1.234567890E+34"); +assertEq(x, 1.234567890E+34); + +x = JSON.parse(" 23456789012E66 \r\r\r\r \n\n\n\n "); +assertEq(x, 23456789012E66); + +// strings +x = JSON.parse('"foo"'); +assertEq(x, "foo"); + +x = JSON.parse('"\\r\\n"'); +assertEq(x, "\r\n"); + +x = JSON.parse(' "\\uabcd\uef4A"'); +assertEq(x, "\uabcd\uef4A"); + +x = JSON.parse('"\\uabcd" '); +assertEq(x, "\uabcd"); + +x = JSON.parse('"\\f"'); +assertEq(x, "\f"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-reviver-array-delete.js b/js/src/tests/ecma_5/JSON/parse-reviver-array-delete.js new file mode 100644 index 000000000..c34305878 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-reviver-array-delete.js @@ -0,0 +1,89 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'parse-reviver-array-delete.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 999999; +var summary = "JSON.parse with a reviver which elides array elements"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +/* + * The reviver deletes all properties from the to-be-returned array. Thus + * stringification reveals properties on the prototype chain -- but there are + * none, so this result is unsurprising. + */ +assertEq(JSON.parse('[1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0]', + function revive(k, v) + { + if (k === "") + return v; + return undefined; + }) + "", + ",,,,,,,,,,,,,,,,,,,"); + +/* + * Now let's try a reviver that deletes every property but a mega-huge one. + */ +var str = "["; +var expected = ""; +var expected2 = ""; +for (var i = 0; i < 2048; i++) +{ + str += "1,"; + if (i === 2047) + { + expected += "1"; + expected2 += "1"; + } + if (i === 3) + expected2 += "17"; + expected += ","; + expected2 += ","; +} +str += "1]"; + +assertEq(JSON.parse(str, + function reviver(k, v) + { + if (k === "" || k === "2047") + return v; + return undefined; + }) + "", + expected); + + +Array.prototype[3] = 17; + +/* Now, with a property on the prototype chain, it'll show through. */ +assertEq(JSON.parse('[1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0]', + function revive(k, v) + { + if (k === "") + return v; + return undefined; + }) + "", + ",,,17,,,,,,,,,,,,,,,,"); + + +/* And here too. */ +assertEq(JSON.parse(str, + function reviver(k, v) + { + if (k === "" || k === "2047") + return v; + return undefined; + }) + "", + expected2); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-reviver.js b/js/src/tests/ecma_5/JSON/parse-reviver.js new file mode 100644 index 000000000..41e3daf70 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-reviver.js @@ -0,0 +1,45 @@ +function doubler(k, v) +{ + assertEq(typeof k, "string"); + + if (typeof v == "number") + return 2 * v; + + return v; +} + +var x = JSON.parse('{"a":5,"b":6}', doubler); +assertEq(x.hasOwnProperty('a'), true); +assertEq(x.hasOwnProperty('b'), true); +assertEq(x.a, 10); +assertEq(x.b, 12); + +x = JSON.parse('[3, 4, 5]', doubler); +assertEq(x[0], 6); +assertEq(x[1], 8); +assertEq(x[2], 10); + +// make sure reviver isn't called after a failed parse +var called = false; +function dontCallMe(k, v) +{ + called = true; +} + +try +{ + JSON.parse('{{{{{{{}}}}', dontCallMe); + throw new Error("didn't throw?"); +} +catch (e) +{ + assertEq(e instanceof SyntaxError, true, "wrong exception: " + e); +} +assertEq(called, false); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-syntax-errors-01.js b/js/src/tests/ecma_5/JSON/parse-syntax-errors-01.js new file mode 100644 index 000000000..cbb49b0eb --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-syntax-errors-01.js @@ -0,0 +1,13 @@ +testJSON("{}...", true); +testJSON('{"foo": truBBBB}', true); +testJSON('{foo: truBBBB}', true); +testJSON('{"foo": undefined}', true); +testJSON('{"foo": ]', true); +testJSON('{"foo', true); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-syntax-errors-02.js b/js/src/tests/ecma_5/JSON/parse-syntax-errors-02.js new file mode 100644 index 000000000..b304e07ca --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-syntax-errors-02.js @@ -0,0 +1,43 @@ +testJSON('"Unterminated string literal', true); +testJSON('["Unclosed array"', true); +testJSON('{unquoted_key: "keys must be quoted"}', true); +testJSON('["extra comma",]', true); +testJSON('["double extra comma",,]', true); +testJSON('[ , "<-- missing value"]', true); +testJSON('["Comma after the close"],', true); +testJSON('["Extra close"]]', true); +testJSON('{"Extra comma": true,}', true); +testJSON('{"Extra value after close": true} "misplaced quoted value"', true); +testJSON('{"Illegal expression": 1 + 2}', true); +testJSON('{"Illegal invocation": alert()}', true); +testJSON('{"Numbers cannot be hex": 0x14}', true); +testJSON('["Illegal backslash escape: \\x15"]', true); +testJSON('[\\naked]', true); +testJSON('["Illegal backslash escape: \\017"]', true); +testJSON('{"Missing colon" null}', true); +testJSON('{"Double colon":: null}', true); +testJSON('{"Comma instead of colon", null}', true); +testJSON('["Colon instead of comma": false]', true); +testJSON('["Bad value", truth]', true); +testJSON("['single quote']", true); +testJSON('[" tab character in string "]', true); +testJSON('["tab\\ character\\ in\\ string\\ "]', true); +testJSON('["line\rbreak"]', true); +testJSON('["line\nbreak"]', true); +testJSON('["line\r\nbreak"]', true); +testJSON('["line\\\rbreak"]', true); +testJSON('["line\\\nbreak"]', true); +testJSON('["line\\\r\nbreak"]', true); +testJSON('[0e]', true); +testJSON('[0e+]', true); +testJSON('[0e+-1]', true); +testJSON('{"Comma instead of closing brace": true,', true); +testJSON('["mismatch"}', true); +testJSON('0{', true); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse-syntax-errors-03.js b/js/src/tests/ecma_5/JSON/parse-syntax-errors-03.js new file mode 100644 index 000000000..5cdf585a4 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse-syntax-errors-03.js @@ -0,0 +1,55 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +testJSON('[', true); +testJSON('[1', true); +testJSON('[1,]', true); +testJSON('[1,{', true); +testJSON('[1,}', true); +testJSON('[1,{]', true); +testJSON('[1,}]', true); +testJSON('[1,{"', true); +testJSON('[1,}"', true); +testJSON('[1,{"\\', true); +testJSON('[1,}"\\', true); +testJSON('[1,"', true); +testJSON('[1,"\\', true); + +testJSON('{', true); +testJSON('{1', true); +testJSON('{,', true); +testJSON('{"', true); +testJSON('{"\\', true); +testJSON('{"\\u', true); +testJSON('{"\\uG', true); +testJSON('{"\\u0', true); +testJSON('{"\\u01', true); +testJSON('{"\\u012', true); +testJSON('{"\\u0123', true); +testJSON('{"\\u0123"', true); +testJSON('{"a"', true); +testJSON('{"a"}', true); +testJSON('{"a":', true); +testJSON('{"a",}', true); +testJSON('{"a":}', true); +testJSON('{"a":,}', true); +testJSON('{"a":5,}', true); +testJSON('{"a":5,[', true); +testJSON('{"a":5,"', true); +testJSON('{"a":5,"', true); +testJSON('{"a":5,"\\', true); +testJSON("a[false ]".substring(1, 7) /* "[false" */, true); + +testJSON('this', true); + +testJSON('[1,{}]', false); +testJSON('{}', false); +testJSON('{"a":5}', false); +testJSON('{"\\u0123":5}', false); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/parse.js b/js/src/tests/ecma_5/JSON/parse.js new file mode 100644 index 000000000..ff9dc51a7 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/parse.js @@ -0,0 +1,175 @@ +function assertIsObject(x) +{ + assertEq(typeof x, "object"); + assertEq(x instanceof Object, true); +} + +function assertIsArray(x) +{ + assertIsObject(x); + assertEq(Array.isArray(x), true); + assertEq(Object.getPrototypeOf(x), Array.prototype); + assertEq(x instanceof Array, true); + assertEq(x.constructor, Array); +} + +var x; +var props; + +// empty object +x = JSON.parse("{}"); +assertIsObject(x); +assertEq(Object.getOwnPropertyNames(x).length, 0); + +// empty array +x = JSON.parse("[]"); +assertIsArray(x); +assertEq(x.length, 0); + +// one element array +x = JSON.parse("[[]]"); +assertIsArray(x); +assertEq(x.length, 1); +assertIsArray(x[0]); +assertEq(x[0].length, 0); + +// multiple arrays +x = JSON.parse("[[],[],[]]"); +assertIsArray(x); +assertEq(x.length, 3); +assertIsArray(x[0]); +assertEq(x[0].length, 0); +assertIsArray(x[1]); +assertEq(x[1].length, 0); +assertIsArray(x[2]); +assertEq(x[2].length, 0); + +// array key/value +x = JSON.parse('{"foo":[]}'); +assertIsObject(x); +props = Object.getOwnPropertyNames(x); +assertEq(props.length, 1); +assertEq(props[0], "foo"); +assertIsArray(x.foo); +assertEq(x.foo.length, 0); + +x = JSON.parse('{"foo":[], "bar":[]}'); +assertIsObject(x); +props = Object.getOwnPropertyNames(x).sort(); +assertEq(props.length, 2); +assertEq(props[0], "bar"); +assertEq(props[1], "foo"); +assertIsArray(x.foo); +assertEq(x.foo.length, 0); +assertIsArray(x.bar); +assertEq(x.bar.length, 0); + +// nesting +x = JSON.parse('{"foo":[{}]}'); +assertIsObject(x); +props = Object.getOwnPropertyNames(x); +assertEq(props.length, 1); +assertEq(props[0], "foo"); +assertIsArray(x.foo); +assertEq(x.foo.length, 1); +assertIsObject(x.foo[0]); +assertEq(Object.getOwnPropertyNames(x.foo[0]).length, 0); + +x = JSON.parse('{"foo":[{"foo":[{"foo":{}}]}]}'); +assertIsObject(x.foo[0].foo[0].foo); + +x = JSON.parse('{"foo":[{"foo":[{"foo":[]}]}]}'); +assertIsArray(x.foo[0].foo[0].foo); + +// strings +x = JSON.parse('{"foo":"bar"}'); +assertIsObject(x); +props = Object.getOwnPropertyNames(x); +assertEq(props.length, 1); +assertEq(props[0], "foo"); +assertEq(x.foo, "bar"); + +x = JSON.parse('["foo", "bar", "baz"]'); +assertIsArray(x); +assertEq(x.length, 3); +assertEq(x[0], "foo"); +assertEq(x[1], "bar"); +assertEq(x[2], "baz"); + +// numbers +x = JSON.parse('{"foo":5.5, "bar":5}'); +assertIsObject(x); +props = Object.getOwnPropertyNames(x).sort(); +assertEq(props.length, 2); +assertEq(props[0], "bar"); +assertEq(props[1], "foo"); +assertEq(x.foo, 5.5); +assertEq(x.bar, 5); + +// keywords +x = JSON.parse('{"foo": true, "bar":false, "baz":null}'); +assertIsObject(x); +props = Object.getOwnPropertyNames(x).sort(); +assertEq(props.length, 3); +assertEq(props[0], "bar"); +assertEq(props[1], "baz"); +assertEq(props[2], "foo"); +assertEq(x.foo, true); +assertEq(x.bar, false); +assertEq(x.baz, null); + +// short escapes +x = JSON.parse('{"foo": "\\"", "bar":"\\\\", "baz":"\\b","qux":"\\f", "quux":"\\n", "quuux":"\\r","quuuux":"\\t"}'); +props = Object.getOwnPropertyNames(x).sort(); +assertEq(props.length, 7); +assertEq(props[0], "bar"); +assertEq(props[1], "baz"); +assertEq(props[2], "foo"); +assertEq(props[3], "quuuux"); +assertEq(props[4], "quuux"); +assertEq(props[5], "quux"); +assertEq(props[6], "qux"); +assertEq(x.foo, '"'); +assertEq(x.bar, '\\'); +assertEq(x.baz, '\b'); +assertEq(x.qux, '\f'); +assertEq(x.quux, "\n"); +assertEq(x.quuux, "\r"); +assertEq(x.quuuux, "\t"); + +// unicode escape +x = JSON.parse('{"foo":"hmm\\u006dmm"}'); +assertIsObject(x); +props = Object.getOwnPropertyNames(x); +assertEq(props.length, 1); +assertEq(props[0], "foo"); +assertEq("hmm\u006dmm", x.foo); + +x = JSON.parse('{"hmm\\u006dmm":"foo"}'); +assertIsObject(x); +props = Object.getOwnPropertyNames(x); +assertEq(props.length, 1); +assertEq(props[0], "hmmmmm"); +assertEq(x.hmm\u006dmm, "foo"); + +// miscellaneous +x = JSON.parse('{"JSON Test Pattern pass3": {"The outermost value": "must be an object or array.","In this test": "It is an object." }}'); +assertIsObject(x); +props = Object.getOwnPropertyNames(x); +assertEq(props.length, 1); +assertEq(props[0], "JSON Test Pattern pass3"); +assertIsObject(x["JSON Test Pattern pass3"]); +props = Object.getOwnPropertyNames(x["JSON Test Pattern pass3"]).sort(); +assertEq(props.length, 2); +assertEq(props[0], "In this test"); +assertEq(props[1], "The outermost value"); +assertEq(x["JSON Test Pattern pass3"]["The outermost value"], + "must be an object or array."); +assertEq(x["JSON Test Pattern pass3"]["In this test"], "It is an object."); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/shell.js b/js/src/tests/ecma_5/JSON/shell.js new file mode 100644 index 000000000..ac2c69844 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/shell.js @@ -0,0 +1,112 @@ +gTestsubsuite='JSON'; + +function testJSON(str, expectSyntaxError) +{ + // Leading and trailing whitespace never affect parsing, so test the string + // multiple times with and without whitespace around it as it's easy and can + // potentially detect bugs. + + // Try the provided string + try + { + JSON.parse(str); + reportCompare(false, expectSyntaxError, + "string <" + str + "> " + + "should" + (expectSyntaxError ? "n't" : "") + " " + + "have parsed as JSON"); + } + catch (e) + { + if (!(e instanceof SyntaxError)) + { + reportCompare(true, false, + "parsing string <" + str + "> threw a non-SyntaxError " + + "exception: " + e); + } + else + { + reportCompare(true, expectSyntaxError, + "string <" + str + "> " + + "should" + (expectSyntaxError ? "n't" : "") + " " + + "have parsed as JSON, exception: " + e); + } + } + + // Now try the provided string with trailing whitespace + try + { + JSON.parse(str + " "); + reportCompare(false, expectSyntaxError, + "string <" + str + " > " + + "should" + (expectSyntaxError ? "n't" : "") + " " + + "have parsed as JSON"); + } + catch (e) + { + if (!(e instanceof SyntaxError)) + { + reportCompare(true, false, + "parsing string <" + str + " > threw a non-SyntaxError " + + "exception: " + e); + } + else + { + reportCompare(true, expectSyntaxError, + "string <" + str + " > " + + "should" + (expectSyntaxError ? "n't" : "") + " " + + "have parsed as JSON, exception: " + e); + } + } + + // Now try the provided string with leading whitespace + try + { + JSON.parse(" " + str); + reportCompare(false, expectSyntaxError, + "string < " + str + "> " + + "should" + (expectSyntaxError ? "n't" : "") + " " + + "have parsed as JSON"); + } + catch (e) + { + if (!(e instanceof SyntaxError)) + { + reportCompare(true, false, + "parsing string < " + str + "> threw a non-SyntaxError " + + "exception: " + e); + } + else + { + reportCompare(true, expectSyntaxError, + "string < " + str + "> " + + "should" + (expectSyntaxError ? "n't" : "") + " " + + "have parsed as JSON, exception: " + e); + } + } + + // Now try the provided string with whitespace surrounding it + try + { + JSON.parse(" " + str + " "); + reportCompare(false, expectSyntaxError, + "string < " + str + " > " + + "should" + (expectSyntaxError ? "n't" : "") + " " + + "have parsed as JSON"); + } + catch (e) + { + if (!(e instanceof SyntaxError)) + { + reportCompare(true, false, + "parsing string < " + str + " > threw a non-SyntaxError " + + "exception: " + e); + } + else + { + reportCompare(true, expectSyntaxError, + "string < " + str + " > " + + "should" + (expectSyntaxError ? "n't" : "") + " " + + "have parsed as JSON, exception: " + e); + } + } +} diff --git a/js/src/tests/ecma_5/JSON/small-codepoints.js b/js/src/tests/ecma_5/JSON/small-codepoints.js new file mode 100644 index 000000000..6afa5f8ce --- /dev/null +++ b/js/src/tests/ecma_5/JSON/small-codepoints.js @@ -0,0 +1,16 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'small-codepoints.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 554079; +var summary = 'JSON.parse should reject U+0000 through U+001F'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +for (var i = 0; i <= 0x1F; i++) + testJSON('["a' + String.fromCharCode(i) + 'c"]', true); diff --git a/js/src/tests/ecma_5/JSON/stringify-boxed-primitives.js b/js/src/tests/ecma_5/JSON/stringify-boxed-primitives.js new file mode 100644 index 000000000..0769c2ec6 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-boxed-primitives.js @@ -0,0 +1,127 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-boxed-primitives.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 584909; +var summary = "Stringification of Boolean/String/Number objects"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function redefine(obj, prop, fun) +{ + var desc = + { value: fun, writable: true, configurable: true, enumerable: false }; + Object.defineProperty(obj, prop, desc); +} + +assertEq(JSON.stringify(new Boolean(false)), "false"); + +assertEq(JSON.stringify(new Number(5)), "5"); + +assertEq(JSON.stringify(new String("foopy")), '"foopy"'); + + +var numToString = Number.prototype.toString; +var numValueOf = Number.prototype.valueOf; +var objToString = Object.prototype.toString; +var objValueOf = Object.prototype.valueOf; +var boolToString = Boolean.prototype.toString; +var boolValueOf = Boolean.prototype.valueOf; + +redefine(Boolean.prototype, "toString", function() { return 17; }); +assertEq(JSON.stringify(new Boolean(false)), "false") +delete Boolean.prototype.toString; +assertEq(JSON.stringify(new Boolean(false)), "false"); +delete Object.prototype.toString; +assertEq(JSON.stringify(new Boolean(false)), "false"); +delete Boolean.prototype.valueOf; +assertEq(JSON.stringify(new Boolean(false)), "false"); +delete Object.prototype.valueOf; +assertEq(JSON.stringify(new Boolean(false)), "false"); + + +redefine(Boolean.prototype, "toString", boolToString); +redefine(Boolean.prototype, "valueOf", boolValueOf); +redefine(Object.prototype, "toString", objToString); +redefine(Object.prototype, "valueOf", objValueOf); + +redefine(Number.prototype, "toString", function() { return 42; }); +assertEq(JSON.stringify(new Number(5)), "5"); +redefine(Number.prototype, "valueOf", function() { return 17; }); +assertEq(JSON.stringify(new Number(5)), "17"); +delete Number.prototype.toString; +assertEq(JSON.stringify(new Number(5)), "17"); +delete Number.prototype.valueOf; +assertEq(JSON.stringify(new Number(5)), "null"); // isNaN(Number("[object Number]")) +delete Object.prototype.toString; +try +{ + JSON.stringify(new Number(5)); + throw new Error("didn't throw"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "ToNumber failure, should throw TypeError"); +} +delete Object.prototype.valueOf; +try +{ + JSON.stringify(new Number(5)); + throw new Error("didn't throw"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "ToNumber failure, should throw TypeError"); +} + + +redefine(Number.prototype, "toString", numToString); +redefine(Number.prototype, "valueOf", numValueOf); +redefine(Object.prototype, "toString", objToString); +redefine(Object.prototype, "valueOf", objValueOf); + + +redefine(String.prototype, "valueOf", function() { return 17; }); +assertEq(JSON.stringify(new String(5)), '"5"'); +redefine(String.prototype, "toString", function() { return 42; }); +assertEq(JSON.stringify(new String(5)), '"42"'); +delete String.prototype.toString; +assertEq(JSON.stringify(new String(5)), '"[object String]"'); +delete Object.prototype.toString; +assertEq(JSON.stringify(new String(5)), '"17"'); +delete String.prototype.valueOf; +try +{ + JSON.stringify(new String(5)); + throw new Error("didn't throw"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "ToString failure, should throw TypeError"); +} +delete Object.prototype.valueOf; +try +{ + JSON.stringify(new String(5)); + throw new Error("didn't throw"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "ToString failure, should throw TypeError"); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/JSON/stringify-call-replacer-once.js b/js/src/tests/ecma_5/JSON/stringify-call-replacer-once.js new file mode 100644 index 000000000..34e549b6e --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-call-replacer-once.js @@ -0,0 +1,34 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-call-replacer-once.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 584909; +var summary = "Call replacer function exactly once per value"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var factor = 1; +function replacer(k, v) +{ + if (k === "") + return v; + + return v * ++factor; +} + +var obj = { a: 1, b: 2, c: 3 }; + +assertEq(JSON.stringify(obj, replacer), '{"a":2,"b":6,"c":12}'); +assertEq(factor, 4); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-call-toJSON-once.js b/js/src/tests/ecma_5/JSON/stringify-call-toJSON-once.js new file mode 100644 index 000000000..23917975d --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-call-toJSON-once.js @@ -0,0 +1,32 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-call-toJSON-once.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 584909; +var summary = "Stringification of Boolean/String/Number objects"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var obj = + { + p: { + toJSON: function() + { + return { toJSON: function() { return 17; } }; + } + } + }; + +assertEq(JSON.stringify(obj), '{"p":{}}'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-dropping-elements.js b/js/src/tests/ecma_5/JSON/stringify-dropping-elements.js new file mode 100644 index 000000000..58838e10d --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-dropping-elements.js @@ -0,0 +1,20 @@ +assertEq(JSON.stringify({foo: 123}), + '{"foo":123}'); +assertEq(JSON.stringify({foo: 123, bar: function () {}}), + '{"foo":123}'); +assertEq(JSON.stringify({foo: 123, bar: function () {}, baz: 123}), + '{"foo":123,"baz":123}'); + +assertEq(JSON.stringify([123]), + '[123]'); +assertEq(JSON.stringify([123, function () {}]), + '[123,null]'); +assertEq(JSON.stringify([123, function () {}, 456]), + '[123,null,456]'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-gap.js b/js/src/tests/ecma_5/JSON/stringify-gap.js new file mode 100644 index 000000000..8480b4b3e --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-gap.js @@ -0,0 +1,61 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-gap.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 584909; +var summary = + "JSON.stringify(_1, _2, numberGreaterThanOne) produces wrong output"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var LF = "\n"; +var GAP = " "; + +var obj = { a: { b: [1, 2], c: { d: 3, e: 4 }, f: [], g: {}, h: [5], i: { j: 6 } } }; + +var expected = + '{\n' + + ' "a": {\n' + + ' "b": [\n' + + ' 1,\n' + + ' 2\n' + + ' ],\n' + + ' "c": {\n' + + ' "d": 3,\n' + + ' "e": 4\n' + + ' },\n' + + ' "f": [],\n' + + ' "g": {},\n' + + ' "h": [\n' + + ' 5\n' + + ' ],\n' + + ' "i": {\n' + + ' "j": 6\n' + + ' }\n' + + ' }\n' + + '}'; + +assertEq(JSON.stringify(obj, null, 3), expected); +assertEq(JSON.stringify(obj, null, " "), expected); + +obj = [1, 2, 3]; + +String.prototype.toString = function() { return "--"; }; + +assertEq(JSON.stringify(obj, null, new String(" ")), "[\n--1,\n--2,\n--3\n]"); + +Number.prototype.valueOf = function() { return 0; }; + +assertEq(JSON.stringify(obj, null, new Number(3)), "[1,2,3]"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/JSON/stringify-ignore-noncallable-toJSON.js b/js/src/tests/ecma_5/JSON/stringify-ignore-noncallable-toJSON.js new file mode 100644 index 000000000..e4ce0ce94 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-ignore-noncallable-toJSON.js @@ -0,0 +1,28 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-ignore-noncallable-toJSON.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 584909; +var summary = "If the toJSON property isn't callable, don't try to call it"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var obj = + { + p: { toJSON: null }, + m: { toJSON: {} } + }; + +assertEq(JSON.stringify(obj), '{"p":{"toJSON":null},"m":{"toJSON":{}}}'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-large-replacer-array.js b/js/src/tests/ecma_5/JSON/stringify-large-replacer-array.js new file mode 100644 index 000000000..28180b4bf --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-large-replacer-array.js @@ -0,0 +1,26 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-large-replacer-array.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 816033; +var summary = "JSON.stringify with a large replacer array"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var replacer = []; +for (var i = 0; i < 4096; i++) + replacer.push(i); + +assertEq(JSON.stringify({ "foopy": "FAIL", "4093": 17 }, replacer), '{"4093":17}'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-missing-arguments.js b/js/src/tests/ecma_5/JSON/stringify-missing-arguments.js new file mode 100644 index 000000000..18ca60835 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-missing-arguments.js @@ -0,0 +1,22 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-missing-arguments.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 648471; +var summary = "JSON.stringify with no arguments"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq(JSON.stringify(), undefined); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/JSON/stringify-nonarray-noncallable-replacer.js b/js/src/tests/ecma_5/JSON/stringify-nonarray-noncallable-replacer.js new file mode 100644 index 000000000..440fbc0aa --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-nonarray-noncallable-replacer.js @@ -0,0 +1,41 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-nonarray-noncallable-replacer.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 653782; +var summary = + "Treat non-array, non-callable replacers as if none had been specified"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var obj = { p: 2 }; +var str = '{"p":2}'; + +assertEq(JSON.stringify(obj), str); +assertEq(JSON.stringify(obj, ["p"]), str); +assertEq(JSON.stringify(obj, null), str); +assertEq(JSON.stringify(obj, undefined), str); +assertEq(JSON.stringify(obj, 2), str); +assertEq(JSON.stringify(obj, Math.PI), str); +assertEq(JSON.stringify(obj, NaN), str); +assertEq(JSON.stringify(obj, true), str); +assertEq(JSON.stringify(obj, false), str); +assertEq(JSON.stringify(obj, Infinity), str); +assertEq(JSON.stringify(obj, "foopy"), str); +assertEq(JSON.stringify(obj, {}), str); +assertEq(JSON.stringify(obj, /abcd/), str); +assertEq(JSON.stringify(obj, new Boolean(true)), str); +assertEq(JSON.stringify(obj, new Number(42)), str); +assertEq(JSON.stringify(obj, new String("aequorin")), str); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-primitives.js b/js/src/tests/ecma_5/JSON/stringify-primitives.js new file mode 100644 index 000000000..3f48638b8 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-primitives.js @@ -0,0 +1,39 @@ +// sanity +var x = JSON.stringify({}); +assertEq(x, "{}"); + +// booleans and null +x = JSON.stringify(true); +assertEq(x, "true"); + +x = JSON.stringify(false); +assertEq(x, "false"); + +x = JSON.stringify(new Boolean(false)); +assertEq(x, "false"); + +x = JSON.stringify(null); +assertEq(x, "null"); + +x = JSON.stringify(1234); +assertEq(x, "1234"); + +x = JSON.stringify(new Number(1234)); +assertEq(x, "1234"); + +x = JSON.stringify("asdf"); +assertEq(x, '"asdf"'); + +x = JSON.stringify(new String("asdf")); +assertEq(x, '"asdf"'); + +assertEq(JSON.stringify(undefined), undefined); +assertEq(JSON.stringify(function(){}), undefined); +assertEq(JSON.stringify(JSON.stringify), undefined); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-replacer-array-boxed-elements.js b/js/src/tests/ecma_5/JSON/stringify-replacer-array-boxed-elements.js new file mode 100644 index 000000000..561f7009c --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-replacer-array-boxed-elements.js @@ -0,0 +1,60 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-replacer-array-boxed-elements.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 648471; +var summary = "Boxed-string/number objects in replacer arrays"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var S = new String(3); +var N = new Number(4); + +assertEq(JSON.stringify({ 3: 3, 4: 4 }, [S]), + '{"3":3}'); +assertEq(JSON.stringify({ 3: 3, 4: 4 }, [N]), + '{"4":4}'); + +Number.prototype.toString = function() { return 3; }; +assertEq(JSON.stringify({ 3: 3, 4: 4 }, [N]), + '{"3":3}'); + +String.prototype.toString = function() { return 4; }; +assertEq(JSON.stringify({ 3: 3, 4: 4 }, [S]), + '{"4":4}'); + +Number.prototype.toString = function() { return new String(42); }; +assertEq(JSON.stringify({ 3: 3, 4: 4 }, [N]), + '{"4":4}'); + +String.prototype.toString = function() { return new Number(17); }; +assertEq(JSON.stringify({ 3: 3, 4: 4 }, [S]), + '{"3":3}'); + +Number.prototype.toString = null; +assertEq(JSON.stringify({ 3: 3, 4: 4 }, [N]), + '{"4":4}'); + +String.prototype.toString = null; +assertEq(JSON.stringify({ 3: 3, 4: 4 }, [S]), + '{"3":3}'); + +Number.prototype.valueOf = function() { return 17; }; +assertEq(JSON.stringify({ 4: 4, 17: 17 }, [N]), + '{"17":17}'); + +String.prototype.valueOf = function() { return 42; }; +assertEq(JSON.stringify({ 3: 3, 42: 42 }, [S]), + '{"42":42}'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-replacer-array-duplicated-element.js b/js/src/tests/ecma_5/JSON/stringify-replacer-array-duplicated-element.js new file mode 100644 index 000000000..69192e6ca --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-replacer-array-duplicated-element.js @@ -0,0 +1,69 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-replacer-array-hijinks.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 648471; +var summary = + "Better/more correct handling for replacer arrays with getter array index " + + "properties"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var bigOdd = Math.pow(2, 50) + 1; + +function two() +{ + return Math.random() < 0.5 ? 2 : "2"; +} + +assertEq(JSON.stringify({ 1: 1 }, [1, 1]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, [1, "1"]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, [1, bigOdd % two()]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, ["1", 1]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, ["1", "1"]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, ["1", bigOdd % two()]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, [bigOdd % two(), 1]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, [bigOdd % two(), "1"]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, [bigOdd % two(), bigOdd % two()]), '{"1":1}'); + + +assertEq(JSON.stringify({ 1: 1 }, [1, new String(1)]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, [1, new Number(1)]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, ["1", new Number(1)]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, ["1", new String(1)]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, [bigOdd % two(), new Number(1)]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, [bigOdd % two(), new String(1)]), '{"1":1}'); + + +assertEq(JSON.stringify({ 1: 1 }, [new String(1), new String(1)]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, [new String(1), new Number(1)]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, [new Number(1), new String(1)]), '{"1":1}'); + +assertEq(JSON.stringify({ 1: 1 }, [new Number(1), new Number(1)]), '{"1":1}'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-replacer-array-edgecase-jsid-elements.js b/js/src/tests/ecma_5/JSON/stringify-replacer-array-edgecase-jsid-elements.js new file mode 100644 index 000000000..e7be4c6e1 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-replacer-array-edgecase-jsid-elements.js @@ -0,0 +1,77 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-replacer-array-edgecase-jsid-elements.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 648471; +var summary = + "Better/more correct handling for replacer arrays with getter array index " + + "properties"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +/* JSID_INT_MIN/MAX copied from jsapi.h. */ + +var obj = + { + /* [JSID_INT_MIN - 1, JSID_INT_MIN + 1] */ + "-1073741825": -1073741825, + "-1073741824": -1073741824, + "-1073741823": -1073741823, + + "-2.5": -2.5, + "-1": -1, + + 0: 0, + + 1: 1, + 2.5: 2.5, + + /* [JSID_INT_MAX - 1, JSID_INT_MAX + 1] */ + 1073741822: 1073741822, + 1073741823: 1073741823, + 1073741824: 1073741824, + }; + +for (var s in obj) +{ + var n = obj[s]; + assertEq(+s, n); + assertEq(JSON.stringify(obj, [n]), + '{"' + s + '":' + n + '}', + "Failed to stringify numeric property " + n + "correctly"); + assertEq(JSON.stringify(obj, [s]), + '{"' + s + '":' + n + '}', + "Failed to stringify string property " + n + "correctly"); + assertEq(JSON.stringify(obj, [s, ]), + '{"' + s + '":' + n + '}', + "Failed to stringify string then number properties ('" + s + "', " + n + ") correctly"); + assertEq(JSON.stringify(obj, [n, s]), + '{"' + s + '":' + n + '}', + "Failed to stringify number then string properties (" + n + ", '" + s + "') correctly"); +} + +// -0 is tricky, because ToString(-0) === "0", so test it specially. +assertEq(JSON.stringify({ "-0": 17, 0: 42 }, [-0]), + '{"0":42}', + "Failed to stringify numeric property -0 correctly"); +assertEq(JSON.stringify({ "-0": 17, 0: 42 }, ["-0"]), + '{"-0":17}', + "Failed to stringify string property -0 correctly"); +assertEq(JSON.stringify({ "-0": 17, 0: 42 }, ["-0", -0]), + '{"-0":17,"0":42}', + "Failed to stringify string then number properties ('-0', -0) correctly"); +assertEq(JSON.stringify({ "-0": 17, 0: 42 }, [-0, "-0"]), + '{"0":42,"-0":17}', + "Failed to stringify number then string properties (-0, '-0) correctly"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-replacer-array-hijinks.js b/js/src/tests/ecma_5/JSON/stringify-replacer-array-hijinks.js new file mode 100644 index 000000000..60c949a5f --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-replacer-array-hijinks.js @@ -0,0 +1,59 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-replacer-array-hijinks.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 648471; +var summary = + "Better/more correct handling for replacer arrays with getter array index " + + "properties"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var replacer = [0, 1, 2, 3]; +Object.prototype[3] = 3; +Object.defineProperty(replacer, 1, { + get: function() + { + Object.defineProperty(replacer, 4, { value: 4 }); + delete replacer[2]; + delete replacer[3]; + replacer[5] = 5; + return 1; + } +}); + +var s = + JSON.stringify({0: { 1: { 3: { 4: { 5: { 2: "omitted" } } } } } }, replacer); + +// The replacer array's length is as seen on first query, so property names are +// accumulated for indexes i ∈ {0, 1, 2, 3}, but index 1 deletes 2 and 3, so 2 +// isn't seen but 3 is seen as Object.prototype[3]. +assertEq('{"0":{"1":{"3":{"3":3}},"3":3},"3":3}', s); + + +var replacer = [0, 1, 2, 3]; +Object.defineProperty(replacer, 0, { + get: function() + { + replacer.length = 0; + return {}; + } +}); + +// The replacer.length truncation means only properties on the prototype chain +// shine through, but it doesn't affect the original bounds of the iteration +// used to determine property names which will be included in the final string. +assertEq(JSON.stringify({ 0: 0, 1: 1, 2: 2, 3: 3 }, replacer), + '{"3":3}'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-replacer-array-skipped-element.js b/js/src/tests/ecma_5/JSON/stringify-replacer-array-skipped-element.js new file mode 100644 index 000000000..6297c3a5b --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-replacer-array-skipped-element.js @@ -0,0 +1,62 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-replacer-array-skipped-element.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 648471; +var summary = + "Better/more correct handling for replacer arrays with getter array index " + + "properties"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq(JSON.stringify({ 3: 3, 4: 4 }, + ["3", { toString: function() { return "4" } }]), + '{"3":3}'); + +assertEq(JSON.stringify({ 3: 3, true: 4 }, ["3", true]), + '{"3":3}'); + +assertEq(JSON.stringify({ 3: 3, true: 4 }, ["3", "true", true]), + '{"3":3,"true":4}'); + +assertEq(JSON.stringify({ 3: 3, true: 4 }, ["3", true, "true"]), + '{"3":3,"true":4}'); + +assertEq(JSON.stringify({ 3: 3, false: 4 }, ["3", false]), + '{"3":3}'); + +assertEq(JSON.stringify({ 3: 3, false: 4 }, ["3", "false", false]), + '{"3":3,"false":4}'); + +assertEq(JSON.stringify({ 3: 3, false: 4 }, ["3", false, "false"]), + '{"3":3,"false":4}'); + +assertEq(JSON.stringify({ 3: 3, undefined: 4 }, ["3", undefined]), + '{"3":3}'); + +assertEq(JSON.stringify({ 3: 3, undefined: 4 }, ["3", "undefined", undefined]), + '{"3":3,"undefined":4}'); + +assertEq(JSON.stringify({ 3: 3, undefined: 4 }, ["3", undefined, "undefined"]), + '{"3":3,"undefined":4}'); + +assertEq(JSON.stringify({ 3: 3, null: 4 }, ["3", null]), + '{"3":3}'); + +assertEq(JSON.stringify({ 3: 3, null: 4 }, ["3", "null", null]), + '{"3":3,"null":4}'); + +assertEq(JSON.stringify({ 3: 3, null: 4 }, ["3", null, "null"]), + '{"3":3,"null":4}'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-replacer-array-trailing-holes.js b/js/src/tests/ecma_5/JSON/stringify-replacer-array-trailing-holes.js new file mode 100644 index 000000000..6eb09855f --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-replacer-array-trailing-holes.js @@ -0,0 +1,49 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = "stringify-replacer-array-trailing-holes.js"; +//----------------------------------------------------------------------------- +var BUGNUMBER = 1217069; +var summary = + "Better/more correct handling for replacer arrays with trailing holes " + + "through which inherited elements might appear"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var obj = { 0: "hi", 1: "n-nao", 2: "run away!", 3: "bye" }; + +var s; + +var replacer = [0, /* 1 */, /* 2 */, /* 3 */, ]; + +assertEq(JSON.stringify(obj, replacer), + '{"0":"hi"}'); + +var nobj = new Number(0); +nobj.toString = () => { replacer[1] = 1; return 0; }; +replacer[0] = nobj; + +assertEq(JSON.stringify(obj, replacer), + '{"0":"hi","1":"n-nao"}'); + +delete replacer[1]; +replacer[0] = 0; + +Object.prototype[0] = 0; +Object.prototype[1] = 1; +Object.prototype[2] = 2; +Object.prototype[3] = 3; + +assertEq(JSON.stringify(obj, replacer), + '{"0":"hi","1":"n-nao","2":"run away!","3":"bye"}'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-replacer-with-array-indexes.js b/js/src/tests/ecma_5/JSON/stringify-replacer-with-array-indexes.js new file mode 100644 index 000000000..0b3f6896e --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-replacer-with-array-indexes.js @@ -0,0 +1,56 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-replacer-with-array-indexes.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 584909; +var summary = + "Call the replacer function for array elements with stringified indexes"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var arr = [0, 1, 2, 3, 4]; + +var seenTopmost = false; +var index = 0; +function replacer() +{ + assertEq(arguments.length, 2); + + var key = arguments[0], value = arguments[1]; + + // Topmost array: ignore replacer call. + if (key === "") + { + assertEq(seenTopmost, false); + seenTopmost = true; + return value; + } + + assertEq(seenTopmost, true); + + assertEq(typeof key, "string"); + assertEq(key === index, false); + assertEq(key === index + "", true); + + assertEq(value, index); + + index++; + + assertEq(this, arr); + + return value; +} + +assertEq(JSON.stringify(arr, replacer), '[0,1,2,3,4]'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-replacer.js b/js/src/tests/ecma_5/JSON/stringify-replacer.js new file mode 100644 index 000000000..37497fd34 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-replacer.js @@ -0,0 +1,155 @@ +/** + * These return* functions are used by the + * replacer tests taken from bug 512447 + */ +function returnObjectFor1(k, v) +{ + if (k == "1") + return {}; + return v; +} +function returnArrayFor1(k, v) +{ + if (k == "1") + return []; + return v; +} +function returnNullFor1(k, v) +{ + if (k == "1") + return null; + return v; +} +function returnStringForUndefined(k, v) +{ + if (v === undefined) + return "undefined value"; + return v; +} +var cycleObject = {}; cycleObject.cycle = cycleObject; +function returnCycleObjectFor1(k, v) +{ + if (k == "1") + return cycleObject; + return v; +} +var array = [0, 1, 2]; array[3] = array; +function returnCycleArrayFor1(k, v) +{ + if (k == "1") + return array; + return v; +} + +// BEGIN TEST +var x; + +x = JSON.stringify({ key: 2 }, + function(k,v) { return k ? undefined : v; }); +assertEq(x, "{}"); + +x = JSON.stringify(["hmm", "hmm"], + function(k,v) { return k !== "" ? undefined : v; }); +assertEq(x, "[null,null]"); + +var foo = ["hmm"]; +function censor(k, v) +{ + if (v !== foo) + return "XXX"; + return v; +} +x = JSON.stringify(foo, censor); +assertEq(x, '["XXX"]'); + +foo = ["bar", ["baz"], "qux"]; +x = JSON.stringify(foo, censor); +assertEq(x, '["XXX","XXX","XXX"]'); + +function censor2(k, v) +{ + if (typeof(v) == "string") + return "XXX"; + return v; +} + +foo = ["bar", ["baz"], "qux"]; +x = JSON.stringify(foo, censor2); +assertEq(x, '["XXX",["XXX"],"XXX"]'); + +foo = { bar: 42, qux: 42, quux: 42 }; +x = JSON.stringify(foo, ["bar"]); +assertEq(x, '{"bar":42}'); + +foo = {bar: {bar: 42, schmoo:[]}, qux: 42, quux: 42}; +x = JSON.stringify(foo, ["bar", "schmoo"]); +assertEq(x, '{"bar":{"bar":42,"schmoo":[]}}'); + +x = JSON.stringify(foo, null, ""); +assertEq(x, '{"bar":{"bar":42,"schmoo":[]},"qux":42,"quux":42}'); + +x = JSON.stringify(foo, null, " "); +assertEq(x, '{\n "bar": {\n "bar": 42,\n "schmoo": []\n },\n "qux": 42,\n "quux": 42\n}'); + +foo = {bar:{bar:{}}} +x = JSON.stringify(foo, null, " "); +assertEq(x, '{\n "bar": {\n "bar": {}\n }\n}'); + +x = JSON.stringify({ x: 1, arr: [1] }, + function (k,v) { return typeof v === 'number' ? 3 : v; }); +assertEq(x, '{"x":3,"arr":[3]}'); + +foo = ['e']; +x = JSON.stringify(foo, null, '\t'); +assertEq(x, '[\n\t"e"\n]'); + +foo = {0:0, 1:1, 2:2, 3:undefined}; +x = JSON.stringify(foo, returnObjectFor1); +assertEq(x, '{"0":0,"1":{},"2":2}'); + +x = JSON.stringify(foo, returnArrayFor1); +assertEq(x, '{"0":0,"1":[],"2":2}'); + +x = JSON.stringify(foo, returnNullFor1); +assertEq(x, '{"0":0,"1":null,"2":2}'); + +x = JSON.stringify(foo, returnStringForUndefined); +assertEq(x, '{"0":0,"1":1,"2":2,"3":"undefined value"}'); + +try +{ + JSON.stringify(foo, returnCycleObjectFor1); + throw new Error("no error thrown"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, "no TypeError thrown: " + e); +} + +try +{ + JSON.stringify(foo, returnCycleArrayFor1); + throw new Error("no error thrown"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, "no TypeError thrown: " + e); +} + +foo = [0, 1, 2, undefined]; +try +{ + JSON.stringify(foo, returnCycleObjectFor1); + throw new Error("no error thrown"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, "no TypeError thrown: " + e); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-special-escapes.js b/js/src/tests/ecma_5/JSON/stringify-special-escapes.js new file mode 100644 index 000000000..cf3d8c28e --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-special-escapes.js @@ -0,0 +1,227 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-special-escapes.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 512266; +var summary = + "JSON.stringify of \\b\\f\\n\\r\\t should use one-character escapes, not hex"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq(JSON.stringify("\u0000"), '"\\u0000"'); +assertEq(JSON.stringify("\u0001"), '"\\u0001"'); +assertEq(JSON.stringify("\u0002"), '"\\u0002"'); +assertEq(JSON.stringify("\u0003"), '"\\u0003"'); +assertEq(JSON.stringify("\u0004"), '"\\u0004"'); +assertEq(JSON.stringify("\u0005"), '"\\u0005"'); +assertEq(JSON.stringify("\u0006"), '"\\u0006"'); +assertEq(JSON.stringify("\u0007"), '"\\u0007"'); +assertEq(JSON.stringify("\u0008"), '"\\b"'); +assertEq(JSON.stringify("\u0009"), '"\\t"'); +assertEq(JSON.stringify("\u000A"), '"\\n"'); +assertEq(JSON.stringify("\u000B"), '"\\u000b"'); +assertEq(JSON.stringify("\u000C"), '"\\f"'); +assertEq(JSON.stringify("\u000D"), '"\\r"'); +assertEq(JSON.stringify("\u000E"), '"\\u000e"'); +assertEq(JSON.stringify("\u000F"), '"\\u000f"'); +assertEq(JSON.stringify("\u0010"), '"\\u0010"'); +assertEq(JSON.stringify("\u0011"), '"\\u0011"'); +assertEq(JSON.stringify("\u0012"), '"\\u0012"'); +assertEq(JSON.stringify("\u0013"), '"\\u0013"'); +assertEq(JSON.stringify("\u0014"), '"\\u0014"'); +assertEq(JSON.stringify("\u0015"), '"\\u0015"'); +assertEq(JSON.stringify("\u0016"), '"\\u0016"'); +assertEq(JSON.stringify("\u0017"), '"\\u0017"'); +assertEq(JSON.stringify("\u0018"), '"\\u0018"'); +assertEq(JSON.stringify("\u0019"), '"\\u0019"'); +assertEq(JSON.stringify("\u001A"), '"\\u001a"'); +assertEq(JSON.stringify("\u001B"), '"\\u001b"'); +assertEq(JSON.stringify("\u001C"), '"\\u001c"'); +assertEq(JSON.stringify("\u001D"), '"\\u001d"'); +assertEq(JSON.stringify("\u001E"), '"\\u001e"'); +assertEq(JSON.stringify("\u001F"), '"\\u001f"'); +assertEq(JSON.stringify("\u0020"), '" "'); + +assertEq(JSON.stringify("\\u0000"), '"\\\\u0000"'); +assertEq(JSON.stringify("\\u0001"), '"\\\\u0001"'); +assertEq(JSON.stringify("\\u0002"), '"\\\\u0002"'); +assertEq(JSON.stringify("\\u0003"), '"\\\\u0003"'); +assertEq(JSON.stringify("\\u0004"), '"\\\\u0004"'); +assertEq(JSON.stringify("\\u0005"), '"\\\\u0005"'); +assertEq(JSON.stringify("\\u0006"), '"\\\\u0006"'); +assertEq(JSON.stringify("\\u0007"), '"\\\\u0007"'); +assertEq(JSON.stringify("\\u0008"), '"\\\\u0008"'); +assertEq(JSON.stringify("\\u0009"), '"\\\\u0009"'); +assertEq(JSON.stringify("\\u000A"), '"\\\\u000A"'); +assertEq(JSON.stringify("\\u000B"), '"\\\\u000B"'); +assertEq(JSON.stringify("\\u000C"), '"\\\\u000C"'); +assertEq(JSON.stringify("\\u000D"), '"\\\\u000D"'); +assertEq(JSON.stringify("\\u000E"), '"\\\\u000E"'); +assertEq(JSON.stringify("\\u000F"), '"\\\\u000F"'); +assertEq(JSON.stringify("\\u0010"), '"\\\\u0010"'); +assertEq(JSON.stringify("\\u0011"), '"\\\\u0011"'); +assertEq(JSON.stringify("\\u0012"), '"\\\\u0012"'); +assertEq(JSON.stringify("\\u0013"), '"\\\\u0013"'); +assertEq(JSON.stringify("\\u0014"), '"\\\\u0014"'); +assertEq(JSON.stringify("\\u0015"), '"\\\\u0015"'); +assertEq(JSON.stringify("\\u0016"), '"\\\\u0016"'); +assertEq(JSON.stringify("\\u0017"), '"\\\\u0017"'); +assertEq(JSON.stringify("\\u0018"), '"\\\\u0018"'); +assertEq(JSON.stringify("\\u0019"), '"\\\\u0019"'); +assertEq(JSON.stringify("\\u001A"), '"\\\\u001A"'); +assertEq(JSON.stringify("\\u001B"), '"\\\\u001B"'); +assertEq(JSON.stringify("\\u001C"), '"\\\\u001C"'); +assertEq(JSON.stringify("\\u001D"), '"\\\\u001D"'); +assertEq(JSON.stringify("\\u001E"), '"\\\\u001E"'); +assertEq(JSON.stringify("\\u001F"), '"\\\\u001F"'); +assertEq(JSON.stringify("\\u0020"), '"\\\\u0020"'); + + +assertEq(JSON.stringify("a\u0000"), '"a\\u0000"'); +assertEq(JSON.stringify("a\u0001"), '"a\\u0001"'); +assertEq(JSON.stringify("a\u0002"), '"a\\u0002"'); +assertEq(JSON.stringify("a\u0003"), '"a\\u0003"'); +assertEq(JSON.stringify("a\u0004"), '"a\\u0004"'); +assertEq(JSON.stringify("a\u0005"), '"a\\u0005"'); +assertEq(JSON.stringify("a\u0006"), '"a\\u0006"'); +assertEq(JSON.stringify("a\u0007"), '"a\\u0007"'); +assertEq(JSON.stringify("a\u0008"), '"a\\b"'); +assertEq(JSON.stringify("a\u0009"), '"a\\t"'); +assertEq(JSON.stringify("a\u000A"), '"a\\n"'); +assertEq(JSON.stringify("a\u000B"), '"a\\u000b"'); +assertEq(JSON.stringify("a\u000C"), '"a\\f"'); +assertEq(JSON.stringify("a\u000D"), '"a\\r"'); +assertEq(JSON.stringify("a\u000E"), '"a\\u000e"'); +assertEq(JSON.stringify("a\u000F"), '"a\\u000f"'); +assertEq(JSON.stringify("a\u0010"), '"a\\u0010"'); +assertEq(JSON.stringify("a\u0011"), '"a\\u0011"'); +assertEq(JSON.stringify("a\u0012"), '"a\\u0012"'); +assertEq(JSON.stringify("a\u0013"), '"a\\u0013"'); +assertEq(JSON.stringify("a\u0014"), '"a\\u0014"'); +assertEq(JSON.stringify("a\u0015"), '"a\\u0015"'); +assertEq(JSON.stringify("a\u0016"), '"a\\u0016"'); +assertEq(JSON.stringify("a\u0017"), '"a\\u0017"'); +assertEq(JSON.stringify("a\u0018"), '"a\\u0018"'); +assertEq(JSON.stringify("a\u0019"), '"a\\u0019"'); +assertEq(JSON.stringify("a\u001A"), '"a\\u001a"'); +assertEq(JSON.stringify("a\u001B"), '"a\\u001b"'); +assertEq(JSON.stringify("a\u001C"), '"a\\u001c"'); +assertEq(JSON.stringify("a\u001D"), '"a\\u001d"'); +assertEq(JSON.stringify("a\u001E"), '"a\\u001e"'); +assertEq(JSON.stringify("a\u001F"), '"a\\u001f"'); +assertEq(JSON.stringify("a\u0020"), '"a "'); + +assertEq(JSON.stringify("a\\u0000"), '"a\\\\u0000"'); +assertEq(JSON.stringify("a\\u0001"), '"a\\\\u0001"'); +assertEq(JSON.stringify("a\\u0002"), '"a\\\\u0002"'); +assertEq(JSON.stringify("a\\u0003"), '"a\\\\u0003"'); +assertEq(JSON.stringify("a\\u0004"), '"a\\\\u0004"'); +assertEq(JSON.stringify("a\\u0005"), '"a\\\\u0005"'); +assertEq(JSON.stringify("a\\u0006"), '"a\\\\u0006"'); +assertEq(JSON.stringify("a\\u0007"), '"a\\\\u0007"'); +assertEq(JSON.stringify("a\\u0008"), '"a\\\\u0008"'); +assertEq(JSON.stringify("a\\u0009"), '"a\\\\u0009"'); +assertEq(JSON.stringify("a\\u000A"), '"a\\\\u000A"'); +assertEq(JSON.stringify("a\\u000B"), '"a\\\\u000B"'); +assertEq(JSON.stringify("a\\u000C"), '"a\\\\u000C"'); +assertEq(JSON.stringify("a\\u000D"), '"a\\\\u000D"'); +assertEq(JSON.stringify("a\\u000E"), '"a\\\\u000E"'); +assertEq(JSON.stringify("a\\u000F"), '"a\\\\u000F"'); +assertEq(JSON.stringify("a\\u0010"), '"a\\\\u0010"'); +assertEq(JSON.stringify("a\\u0011"), '"a\\\\u0011"'); +assertEq(JSON.stringify("a\\u0012"), '"a\\\\u0012"'); +assertEq(JSON.stringify("a\\u0013"), '"a\\\\u0013"'); +assertEq(JSON.stringify("a\\u0014"), '"a\\\\u0014"'); +assertEq(JSON.stringify("a\\u0015"), '"a\\\\u0015"'); +assertEq(JSON.stringify("a\\u0016"), '"a\\\\u0016"'); +assertEq(JSON.stringify("a\\u0017"), '"a\\\\u0017"'); +assertEq(JSON.stringify("a\\u0018"), '"a\\\\u0018"'); +assertEq(JSON.stringify("a\\u0019"), '"a\\\\u0019"'); +assertEq(JSON.stringify("a\\u001A"), '"a\\\\u001A"'); +assertEq(JSON.stringify("a\\u001B"), '"a\\\\u001B"'); +assertEq(JSON.stringify("a\\u001C"), '"a\\\\u001C"'); +assertEq(JSON.stringify("a\\u001D"), '"a\\\\u001D"'); +assertEq(JSON.stringify("a\\u001E"), '"a\\\\u001E"'); +assertEq(JSON.stringify("a\\u001F"), '"a\\\\u001F"'); +assertEq(JSON.stringify("a\\u0020"), '"a\\\\u0020"'); + + +assertEq(JSON.stringify("\u0000Q"), '"\\u0000Q"'); +assertEq(JSON.stringify("\u0001Q"), '"\\u0001Q"'); +assertEq(JSON.stringify("\u0002Q"), '"\\u0002Q"'); +assertEq(JSON.stringify("\u0003Q"), '"\\u0003Q"'); +assertEq(JSON.stringify("\u0004Q"), '"\\u0004Q"'); +assertEq(JSON.stringify("\u0005Q"), '"\\u0005Q"'); +assertEq(JSON.stringify("\u0006Q"), '"\\u0006Q"'); +assertEq(JSON.stringify("\u0007Q"), '"\\u0007Q"'); +assertEq(JSON.stringify("\u0008Q"), '"\\bQ"'); +assertEq(JSON.stringify("\u0009Q"), '"\\tQ"'); +assertEq(JSON.stringify("\u000AQ"), '"\\nQ"'); +assertEq(JSON.stringify("\u000BQ"), '"\\u000bQ"'); +assertEq(JSON.stringify("\u000CQ"), '"\\fQ"'); +assertEq(JSON.stringify("\u000DQ"), '"\\rQ"'); +assertEq(JSON.stringify("\u000EQ"), '"\\u000eQ"'); +assertEq(JSON.stringify("\u000FQ"), '"\\u000fQ"'); +assertEq(JSON.stringify("\u0010Q"), '"\\u0010Q"'); +assertEq(JSON.stringify("\u0011Q"), '"\\u0011Q"'); +assertEq(JSON.stringify("\u0012Q"), '"\\u0012Q"'); +assertEq(JSON.stringify("\u0013Q"), '"\\u0013Q"'); +assertEq(JSON.stringify("\u0014Q"), '"\\u0014Q"'); +assertEq(JSON.stringify("\u0015Q"), '"\\u0015Q"'); +assertEq(JSON.stringify("\u0016Q"), '"\\u0016Q"'); +assertEq(JSON.stringify("\u0017Q"), '"\\u0017Q"'); +assertEq(JSON.stringify("\u0018Q"), '"\\u0018Q"'); +assertEq(JSON.stringify("\u0019Q"), '"\\u0019Q"'); +assertEq(JSON.stringify("\u001AQ"), '"\\u001aQ"'); +assertEq(JSON.stringify("\u001BQ"), '"\\u001bQ"'); +assertEq(JSON.stringify("\u001CQ"), '"\\u001cQ"'); +assertEq(JSON.stringify("\u001DQ"), '"\\u001dQ"'); +assertEq(JSON.stringify("\u001EQ"), '"\\u001eQ"'); +assertEq(JSON.stringify("\u001FQ"), '"\\u001fQ"'); +assertEq(JSON.stringify("\u0020Q"), '" Q"'); + +assertEq(JSON.stringify("\\u0000Q"), '"\\\\u0000Q"'); +assertEq(JSON.stringify("\\u0001Q"), '"\\\\u0001Q"'); +assertEq(JSON.stringify("\\u0002Q"), '"\\\\u0002Q"'); +assertEq(JSON.stringify("\\u0003Q"), '"\\\\u0003Q"'); +assertEq(JSON.stringify("\\u0004Q"), '"\\\\u0004Q"'); +assertEq(JSON.stringify("\\u0005Q"), '"\\\\u0005Q"'); +assertEq(JSON.stringify("\\u0006Q"), '"\\\\u0006Q"'); +assertEq(JSON.stringify("\\u0007Q"), '"\\\\u0007Q"'); +assertEq(JSON.stringify("\\u0008Q"), '"\\\\u0008Q"'); +assertEq(JSON.stringify("\\u0009Q"), '"\\\\u0009Q"'); +assertEq(JSON.stringify("\\u000AQ"), '"\\\\u000AQ"'); +assertEq(JSON.stringify("\\u000BQ"), '"\\\\u000BQ"'); +assertEq(JSON.stringify("\\u000CQ"), '"\\\\u000CQ"'); +assertEq(JSON.stringify("\\u000DQ"), '"\\\\u000DQ"'); +assertEq(JSON.stringify("\\u000EQ"), '"\\\\u000EQ"'); +assertEq(JSON.stringify("\\u000FQ"), '"\\\\u000FQ"'); +assertEq(JSON.stringify("\\u0010Q"), '"\\\\u0010Q"'); +assertEq(JSON.stringify("\\u0011Q"), '"\\\\u0011Q"'); +assertEq(JSON.stringify("\\u0012Q"), '"\\\\u0012Q"'); +assertEq(JSON.stringify("\\u0013Q"), '"\\\\u0013Q"'); +assertEq(JSON.stringify("\\u0014Q"), '"\\\\u0014Q"'); +assertEq(JSON.stringify("\\u0015Q"), '"\\\\u0015Q"'); +assertEq(JSON.stringify("\\u0016Q"), '"\\\\u0016Q"'); +assertEq(JSON.stringify("\\u0017Q"), '"\\\\u0017Q"'); +assertEq(JSON.stringify("\\u0018Q"), '"\\\\u0018Q"'); +assertEq(JSON.stringify("\\u0019Q"), '"\\\\u0019Q"'); +assertEq(JSON.stringify("\\u001AQ"), '"\\\\u001AQ"'); +assertEq(JSON.stringify("\\u001BQ"), '"\\\\u001BQ"'); +assertEq(JSON.stringify("\\u001CQ"), '"\\\\u001CQ"'); +assertEq(JSON.stringify("\\u001DQ"), '"\\\\u001DQ"'); +assertEq(JSON.stringify("\\u001EQ"), '"\\\\u001EQ"'); +assertEq(JSON.stringify("\\u001FQ"), '"\\\\u001FQ"'); +assertEq(JSON.stringify("\\u0020Q"), '"\\\\u0020Q"'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify-toJSON-arguments.js b/js/src/tests/ecma_5/JSON/stringify-toJSON-arguments.js new file mode 100644 index 000000000..7c2013d58 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify-toJSON-arguments.js @@ -0,0 +1,34 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'stringify-toJSON-arguments.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 584909; +var summary = "Arguments when an object's toJSON method is called"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var obj = + { + p: { + toJSON: function(key) + { + assertEq(arguments.length, 1); + assertEq(key, "p"); + return 17; + } + } + }; + +assertEq(JSON.stringify(obj), '{"p":17}'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/stringify.js b/js/src/tests/ecma_5/JSON/stringify.js new file mode 100644 index 000000000..1a7e9b150 --- /dev/null +++ b/js/src/tests/ecma_5/JSON/stringify.js @@ -0,0 +1,84 @@ +function assertStringify(v, expect) +{ + assertEq(JSON.stringify(v), expect); +} + +assertStringify({}, "{}"); +assertStringify([], "[]"); +assertStringify({"foo":"bar"}, '{"foo":"bar"}'); +assertStringify({"null":null}, '{"null":null}'); +assertStringify({"five":5}, '{"five":5}'); +assertStringify({"five":5, "six":6}, '{"five":5,"six":6}'); +assertStringify({"x":{"y":"z"}}, '{"x":{"y":"z"}}'); +assertStringify({"w":{"x":{"y":"z"}}}, '{"w":{"x":{"y":"z"}}}'); +assertStringify([1,2,3], '[1,2,3]'); +assertStringify({"w":{"x":{"y":[1,2,3]}}}, '{"w":{"x":{"y":[1,2,3]}}}'); +assertStringify({"false":false}, '{"false":false}'); +assertStringify({"true":true}, '{"true":true}'); +assertStringify({"child has two members": {"this":"one", 2:"and this one"}}, + '{"child has two members":{"2":"and this one","this":"one"}}'); +assertStringify({"x":{"a":"b","c":{"y":"z"},"f":"g"}}, + '{"x":{"a":"b","c":{"y":"z"},"f":"g"}}'); +assertStringify({"x":[1,{"y":"z"},3]}, '{"x":[1,{"y":"z"},3]}'); +assertStringify([new String("hmm")], '["hmm"]'); +assertStringify([new Boolean(true)], '[true]'); +assertStringify([new Number(42)], '[42]'); +assertStringify([new Date(Date.UTC(1978, 8, 13, 12, 24, 34, 23))], + '["1978-09-13T12:24:34.023Z"]'); +assertStringify([1,,3], '[1,null,3]'); +assertStringify({"mm\"mm":"hmm"}, '{"mm\\\"mm":"hmm"}'); +assertStringify({"mm\"mm\"mm":"hmm"}, '{"mm\\\"mm\\\"mm":"hmm"}'); +assertStringify({'"':"hmm"}, '{"\\\"":"hmm"}'); +assertStringify({'\\':"hmm"}, '{"\\\\":"hmm"}'); +assertStringify({'mmm\\mmm':"hmm"}, '{"mmm\\\\mmm":"hmm"}'); +assertStringify({'mmm\\mmm\\mmm':"hmm"}, '{"mmm\\\\mmm\\\\mmm":"hmm"}'); +assertStringify({"mm\u000bmm":"hmm"}, '{"mm\\u000bmm":"hmm"}'); +assertStringify({"mm\u0000mm":"hmm"}, '{"mm\\u0000mm":"hmm"}'); + +var x = {"free":"variable"}; +assertStringify(x, '{"free":"variable"}'); +assertStringify({"y":x}, '{"y":{"free":"variable"}}'); + +// array prop +assertStringify({ a: [1,2,3] }, '{"a":[1,2,3]}'); + +assertStringify({"y": { foo: function(hmm) { return hmm; } } }, '{"y":{}}'); + +// test toJSON +var hmm = { toJSON: function() { return {"foo":"bar"} } }; +assertStringify({"hmm":hmm}, '{"hmm":{"foo":"bar"}}'); +assertStringify(hmm, '{"foo":"bar"}'); // on the root + +// toJSON on prototype +var Y = function() { + this.not = "there?"; + this.d = "e"; +}; +Y.prototype = { + not: "there?", + toJSON: function() { return {"foo":"bar"}} +}; +var y = new Y(); +assertStringify(y.toJSON(), '{"foo":"bar"}'); +assertStringify(y, '{"foo":"bar"}'); + +// return undefined from toJSON +assertStringify({"hmm": { toJSON: function() { return; } } }, '{}'); + +// array with named prop +var x = new Array(); +x[0] = 1; +x.foo = "bar"; +assertStringify(x, '[1]'); + +// prototype +var X = function() { this.a = "b" }; +X.prototype = { c: "d" }; +assertStringify(new X(), '{"a":"b"}'); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/JSON/trailing-comma.js b/js/src/tests/ecma_5/JSON/trailing-comma.js new file mode 100644 index 000000000..0dc20e71a --- /dev/null +++ b/js/src/tests/ecma_5/JSON/trailing-comma.js @@ -0,0 +1,32 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var gTestfile = 'trailing-comma.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 564621; +var summary = 'JSON.parse should reject {"a" : "b",} or [1,]'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +testJSON('[]', false); +testJSON('[1]', false); +testJSON('["a"]', false); +testJSON('{}', false); +testJSON('{"a":1}', false); +testJSON('{"a":"b"}', false); +testJSON('{"a":true}', false); +testJSON('[{}]', false); + +testJSON('[1,]', true); +testJSON('["a",]', true); +testJSON('{,}', true); +testJSON('{"a":1,}', true); +testJSON('{"a":"b",}', true); +testJSON('{"a":true,}', true); +testJSON('[{,}]', true); +testJSON('[[1,]]', true); +testJSON('[{"a":"b",}]', true); diff --git a/js/src/tests/ecma_5/Number/15.7.4.2.js b/js/src/tests/ecma_5/Number/15.7.4.2.js new file mode 100644 index 000000000..36443394c --- /dev/null +++ b/js/src/tests/ecma_5/Number/15.7.4.2.js @@ -0,0 +1,31 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(raisesException(TypeError)('Number.prototype.toString.call(true)'), true); +assertEq(raisesException(TypeError)('Number.prototype.toString.call("")'), true); +assertEq(raisesException(TypeError)('Number.prototype.toString.call({})'), true); +assertEq(raisesException(TypeError)('Number.prototype.toString.call(null)'), true); +assertEq(raisesException(TypeError)('Number.prototype.toString.call([])'), true); +assertEq(raisesException(TypeError)('Number.prototype.toString.call(undefined)'), true); +assertEq(raisesException(TypeError)('Number.prototype.toString.call(new Boolean(true))'), true); + +assertEq(completesNormally('Number.prototype.toString.call(42)'), true); +assertEq(completesNormally('Number.prototype.toString.call(new Number(42))'), true); + +function testAround(middle) +{ + var range = 260; + var low = middle - range/2; + for (var i = 0; i < range; ++i) + assertEq(low + i, parseInt(String(low + i))); +} + +testAround(-Math.pow(2,32)); +testAround(-Math.pow(2,16)); +testAround(0); +testAround(+Math.pow(2,16)); +testAround(+Math.pow(2,32)); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Number/browser.js b/js/src/tests/ecma_5/Number/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Number/browser.js diff --git a/js/src/tests/ecma_5/Number/conversion-invalid-precision.js b/js/src/tests/ecma_5/Number/conversion-invalid-precision.js new file mode 100644 index 000000000..76c3a94d0 --- /dev/null +++ b/js/src/tests/ecma_5/Number/conversion-invalid-precision.js @@ -0,0 +1,46 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommonn.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 795745; +var summary = + "Number.prototype.to* should throw a RangeError when passed a bad precision"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function test(method, prec) +{ + try + { + Number.prototype[method].call(0, prec); + throw "should have thrown"; + } + catch (e) + { + assertEq(e instanceof RangeError, true, + "expected RangeError for " + method + " with precision " + prec + + ", got " + e); + } +} + +test("toExponential", -32); +test("toFixed", -32); +test("toPrecision", -32); + +test("toExponential", 9999999); +test("toFixed", 9999999); +test("toPrecision", 9999999); + +test("toPrecision", 0); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Number/defaultvalue.js b/js/src/tests/ecma_5/Number/defaultvalue.js new file mode 100644 index 000000000..15bf02162 --- /dev/null +++ b/js/src/tests/ecma_5/Number/defaultvalue.js @@ -0,0 +1,170 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommonn.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 645464; +var summary = + "[[DefaultValue]] behavior wrong for Number with overridden valueOf/toString"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + + +// equality + +var n = new Number(); +assertEq(n == 0, true); + +var n2 = new Number(); +n2.valueOf = function() { return 17; }; +assertEq(n2 == 17, true); + +var n3 = new Number(); +n3.toString = function() { return 42; }; +assertEq(n3 == 0, true); + +function testEquality() +{ + var n = new Number(); + assertEq(n == 0, true); + + var n2 = new Number(); + n2.valueOf = function() { return 17; }; + assertEq(n2 == 17, true); + + var n3 = new Number(); + n3.toString = function() { return 42; }; + assertEq(n3 == 0, true); +} +testEquality(); + + +// addition of Number to number + +var n = new Number(); +assertEq(n + 5, 5); + +var n2 = new Number(); +n2.toString = function() { return 9; }; +assertEq(n2 + 3, 3); + +var n3 = new Number(); +n3.valueOf = function() { return 17; }; +assertEq(n3 + 5, 22); + +function testNumberAddition() +{ + var n = new Number(); + assertEq(n + 5, 5); + + var n2 = new Number(); + n2.toString = function() { return 9; }; + assertEq(n2 + 3, 3); + + var n3 = new Number(); + n3.valueOf = function() { return 17; }; + assertEq(n3 + 5, 22); +} +testNumberAddition(); + + +// addition of Number to Number + +var n = new Number(); +assertEq(n + n, 0); + +var n2 = new Number(); +n2.toString = function() { return 5; }; +assertEq(n2 + n2, 0); + +var n3 = new Number(); +n3.valueOf = function() { return 8.5; }; +assertEq(n3 + n3, 17); + +function testNonNumberAddition() +{ + var n = new Number(); + assertEq(n + n, 0); + + var n2 = new Number(); + n2.toString = function() { return 5; }; + assertEq(n2 + n2, 0); + + var n3 = new Number(); + n3.valueOf = function() { return 8.5; }; + assertEq(n3 + n3, 17); +} +testNonNumberAddition(); + + +// Number as bracketed property name + +var obj = { 0: 17, 8: 42, 9: 8675309 }; + +var n = new Number(); +assertEq(obj[n], 17); + +var n2 = new Number(); +n2.valueOf = function() { return 8; } +assertEq(obj[n2], 17); + +var n3 = new Number(); +n3.toString = function() { return 9; }; +assertEq(obj[n3], 8675309); + +function testPropertyNameToNumber() +{ + var obj = { 0: 17, 8: 42, 9: 8675309 }; + + var n = new Number(); + assertEq(obj[n], 17); + + var n2 = new Number(); + n2.valueOf = function() { return 8; } + assertEq(obj[n2], 17); + + var n3 = new Number(); + n3.toString = function() { return 9; }; + assertEq(obj[n3], 8675309); +} +testPropertyNameToNumber(); + + +// Number as property name with |in| operator + +var n = new Number(); +assertEq(n in { 0: 5 }, true); + +var n2 = new Number(); +n2.toString = function() { return "baz"; }; +assertEq(n2 in { baz: 42 }, true); + +var n3 = new Number(); +n3.valueOf = function() { return "quux"; }; +assertEq(n3 in { 0: 17 }, true); + +function testInOperatorName() +{ + var n = new Number(); + assertEq(n in { 0: 5 }, true); + + var n2 = new Number(); + n2.toString = function() { return "baz"; }; + assertEq(n2 in { baz: 42 }, true); + + var n3 = new Number(); + n3.valueOf = function() { return "quux"; }; + assertEq(n3 in { 0: 17 }, true); +} +testInOperatorName(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Number/shell.js b/js/src/tests/ecma_5/Number/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Number/shell.js diff --git a/js/src/tests/ecma_5/Number/toString-radix-handling.js b/js/src/tests/ecma_5/Number/toString-radix-handling.js new file mode 100644 index 000000000..dd91675a2 --- /dev/null +++ b/js/src/tests/ecma_5/Number/toString-radix-handling.js @@ -0,0 +1,37 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommonn.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 647385; +var summary = + "Number.prototype.toString should use ToInteger on the radix and should " + + "throw a RangeError if the radix is bad"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function test(r) +{ + try + { + 5..toString(r); + throw "should have thrown"; + } + catch (e) + { + assertEq(e instanceof RangeError, true, "expected a RangeError, got " + e); + } +} +test(Math.pow(2, 32) + 10); +test(55); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Number/tonumber-string-hex.js b/js/src/tests/ecma_5/Number/tonumber-string-hex.js new file mode 100644 index 000000000..ed1e9b9dd --- /dev/null +++ b/js/src/tests/ecma_5/Number/tonumber-string-hex.js @@ -0,0 +1,38 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommonn.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 872853; +var summary = 'Various tests of ToNumber(string), particularly +"0x" being NaN'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq(+"0x", NaN); +assertEq(+"\t0x", NaN); +assertEq(+"0x\n", NaN); +assertEq(+"\n0x\t", NaN); +assertEq(+"0x0", 0); +assertEq(+"0xa", 10); +assertEq(+"0xff", 255); +assertEq(+"-0x", NaN); +assertEq(+"-0xa", NaN); +assertEq(+"-0xff", NaN); +assertEq(+"0xInfinity", NaN); +assertEq(+"+Infinity", Infinity); +assertEq(+"-Infinity", -Infinity); +assertEq(+"\t+Infinity", Infinity); +assertEq(+"-Infinity\n", -Infinity); +assertEq(+"+ Infinity", NaN); +assertEq(+"- Infinity", NaN); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.12.js b/js/src/tests/ecma_5/Object/15.2.3.12.js new file mode 100644 index 000000000..00593a240 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.12.js @@ -0,0 +1,46 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* Object.isFrozen */ + +assertEq(Object.isFrozen({}), false); + +assertEq(Object.isFrozen(Object.preventExtensions({})), true); + +var o = Object.defineProperty({}, 'x', { writable:true, configurable:true }); +Object.preventExtensions(o); +assertEq(Object.isFrozen(o), false); + +var o = Object.defineProperty({}, 'x', { writable:false, configurable:true }); +Object.preventExtensions(o); +assertEq(Object.isFrozen(o), false); + +var o = Object.defineProperty({}, 'x', { writable:true, configurable:false }); +Object.preventExtensions(o); +assertEq(Object.isFrozen(o), false); + +var o = Object.defineProperty({}, 'x', { writable:false, configurable:false }); +assertEq(Object.isFrozen(o), false); + +var o = Object.defineProperty({}, 'x', { writable:false, configurable:false }); +Object.preventExtensions(o); +assertEq(Object.isFrozen(o), true); + +var o = Object.defineProperties({}, { x: { writable:true, configurable:true }, + y: { writable:false, configurable:false } }); +Object.preventExtensions(o); +assertEq(Object.isFrozen(o), false); + +var o = Object.defineProperties({}, { x: { writable:false, configurable:false }, + y: { writable:true, configurable:true } }); +Object.preventExtensions(o); +assertEq(Object.isFrozen(o), false); + +var o = Object.defineProperties({}, { x: { writable:true, configurable:true }, + y: { writable:true, configurable:true } }); +Object.preventExtensions(o); +assertEq(Object.isFrozen(o), false); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Object/15.2.3.14-01.js b/js/src/tests/ecma_5/Object/15.2.3.14-01.js new file mode 100644 index 000000000..81ab3fe38 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.14-01.js @@ -0,0 +1,92 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 307791; +var summary = 'ES5 Object.keys(O)'; +var actual = ''; +var expect = ''; + +printBugNumber(BUGNUMBER); +printStatus(summary); + +function arraysEqual(a1, a2) +{ + return a1.length === a2.length && + a1.every(function(v, i) { return v === a2[i]; }); +} + +/************** + * BEGIN TEST * + **************/ + +assertEq(Object.keys.length, 1); + +var o, keys; + +o = { a: 3, b: 2 }; +keys = Object.keys(o); +assertEq(arraysEqual(keys, ["a", "b"]), true, + "" + keys); + +o = { get a() { return 17; }, b: 2 }; +keys = Object.keys(o), +assertEq(arraysEqual(keys, ["a", "b"]), true, + "" + keys); + +o = { __iterator__: function() { return Iterator({a: 2, b: 3}); } }; +keys = Object.keys(o); +assertEq(arraysEqual(keys, ["__iterator__"]), true, + "" + keys); + +o = { a: 1, b: 2 }; +delete o.a; +o.a = 3; +keys = Object.keys(o); +assertEq(arraysEqual(keys, ["b", "a"]), true, + "" + keys); + +o = [0, 1, 2]; +keys = Object.keys(o); +assertEq(arraysEqual(keys, ["0", "1", "2"]), true, + "" + keys); + +o = /./.exec("abc"); +keys = Object.keys(o); +assertEq(arraysEqual(keys, ["0", "index", "input"]), true, + "" + keys); + +o = { a: 1, b: 2, c: 3 }; +delete o.b; +o.b = 5; +keys = Object.keys(o); +assertEq(arraysEqual(keys, ["a", "c", "b"]), true, + "" + keys); + +function f() { } +f.prototype.p = 1; +o = new f(); +o.g = 1; +keys = Object.keys(o); +assertEq(arraysEqual(keys, ["g"]), true, + "" + keys); + +if (typeof Namespace !== "undefined" && typeof QName !== "undefined") +{ + var o2 = {}; + var qn = new QName(new Namespace("foo"), "v"); + o2.f = 1; + o2[qn] = 3; + o2.baz = 4; + var keys2 = Object.keys(o2); + assertEq(arraysEqual(keys2, ["f", "foo::v", "baz"]), true, + "" + keys2); +} + +/******************************************************************************/ + +reportCompare(expect, actual, "Object.keys"); + +printStatus("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.3-01.js b/js/src/tests/ecma_5/Object/15.2.3.3-01.js new file mode 100644 index 000000000..ed94a14f4 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.3-01.js @@ -0,0 +1,285 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 505587; +var summary = 'ES5 Object.getOwnPropertyDescriptor(O)'; +var actual = ''; +var expect = ''; + +printBugNumber(BUGNUMBER); +printStatus (summary); + +/************** + * BEGIN TEST * + **************/ + +function assertEq(a, e, msg) +{ + function SameValue(v1, v2) + { + if (v1 === 0 && v2 === 0) + return 1 / v1 === 1 / v2; + if (v1 !== v1 && v2 !== v2) + return true; + return v1 === v2; + } + + if (!SameValue(a, e)) + { + var stack = new Error().stack || ""; + throw "Assertion failed: got " + a + ", expected " + e + + (msg ? ": " + msg : "") + + (stack ? "\nStack:\n" + stack : ""); + } +} + +function expectDescriptor(actual, expected) +{ + if (actual === undefined && expected === undefined) + return; + + assertEq(typeof actual, "object"); + assertEq(typeof expected, "object"); + + var fields = + { + value: true, + get: true, + set: true, + enumerable: true, + writable: true, + configurable: true + }; + for (var p in fields) + assertEq(actual.hasOwnProperty(p), expected.hasOwnProperty(p), p); + for (var p in actual) + assertEq(p in fields, true, p); + for (var p in expected) + assertEq(p in fields, true, p); + + assertEq(actual.hasOwnProperty("value"), actual.hasOwnProperty("writable")); + assertEq(actual.hasOwnProperty("get"), actual.hasOwnProperty("set")); + if (actual.hasOwnProperty("value")) + { + assertEq(actual.value, expected.value); + assertEq(actual.writable, expected.writable); + } + else + { + assertEq(actual.get, expected.get); + assertEq(actual.set, expected.set); + } + + assertEq(actual.hasOwnProperty("enumerable"), true); + assertEq(actual.hasOwnProperty("configurable"), true); + assertEq(actual.enumerable, expected.enumerable); + assertEq(actual.configurable, expected.configurable); +} + +function adjustDescriptorField(o, actual, expect, field) +{ + assertEq(field === "get" || field === "set", true); + var lookup = "__lookup" + (field === "get" ? "G" : "S") + "etter"; + if (typeof o[lookup] === "function") + expect[field] = o[lookup](field); + else + actual[field] = expect[field] = undefined; /* censor if we can't lookup */ +} + +/******************************************************************************/ + +var o, pd, expected; + +o = { get x() { return 12; } }; + +pd = Object.getOwnPropertyDescriptor(o, "x"); +expected = + { + set: undefined, + enumerable: true, + configurable: true + }; +adjustDescriptorField(o, pd, expected, "get"); + +expectDescriptor(pd, expected); + +/******************************************************************************/ + +var o2; + +o = Object.create(Object.prototype, { x: {get: function () { return 12; } } }); + +pd = Object.getOwnPropertyDescriptor(o, "x"); +expected = + { + set: undefined, + enumerable: false, + configurable: false + }; +adjustDescriptorField(o, pd, expected, "get"); + +expectDescriptor(pd, expected); + +o2 = Object.create(o); +assertEq(Object.getOwnPropertyDescriptor(o2, "x"), undefined); + +/******************************************************************************/ + +o = {}; +o.b = 12; + +pd = Object.getOwnPropertyDescriptor(o, "b"); +expected = + { + value: 12, + writable: true, + enumerable: true, + configurable: true + }; +expectDescriptor(pd, expected); + +/******************************************************************************/ + +o = { get y() { return 17; }, set y(z) { } }; + +pd = Object.getOwnPropertyDescriptor(o, "y"); +expected = + { + enumerable: true, + configurable: true + }; +adjustDescriptorField(o, pd, expected, "get"); +adjustDescriptorField(o, pd, expected, "set"); + +expectDescriptor(pd, expected); + +/******************************************************************************/ + +o = {}; + +pd = Object.getOwnPropertyDescriptor(o, "absent"); + +expectDescriptor(pd, undefined); + +/******************************************************************************/ + +pd = Object.getOwnPropertyDescriptor([], "length"); +expected = + { + value: 0, + writable: true, + enumerable: false, + configurable: false + }; + +expectDescriptor(pd, expected); + +pd = Object.getOwnPropertyDescriptor([1], "length"); +expected = + { + value: 1, + writable: true, + enumerable: false, + configurable: false + }; + +expectDescriptor(pd, expected); + +pd = Object.getOwnPropertyDescriptor([1,], "length"); +expected = + { + value: 1, + writable: true, + enumerable: false, + configurable: false + }; + +expectDescriptor(pd, expected); + +pd = Object.getOwnPropertyDescriptor([1,,], "length"); +expected = + { + value: 2, + writable: true, + enumerable: false, + configurable: false + }; + +expectDescriptor(pd, expected); + +/******************************************************************************/ + +pd = Object.getOwnPropertyDescriptor(new String("foobar"), "length"); +expected = + { + value: 6, + writable: false, + enumerable: false, + configurable: false + }; + +expectDescriptor(pd, expected); + +/******************************************************************************/ + +function foo() { } +o = foo; + +pd = Object.getOwnPropertyDescriptor(o, "length"); +expected = + { + value: 0, + writable: false, + enumerable: false, + configurable: true + }; + +expectDescriptor(pd, expected); + +pd = Object.getOwnPropertyDescriptor(o, "prototype"); +expected = + { + value: foo.prototype, + writable: true, + enumerable: false, + configurable: false + }; + +expectDescriptor(pd, expected); + +/******************************************************************************/ + +pd = Object.getOwnPropertyDescriptor(Function, "length"); +expected = + { + value: 1, + writable: false, + enumerable: false, + configurable: true + }; + +expectDescriptor(pd, expected); + +/******************************************************************************/ + +o = /foo/im; + +pd = Object.getOwnPropertyDescriptor(o, "lastIndex"); +expected = + { + value: 0, + writable: true, + enumerable: false, + configurable: false + }; + +expectDescriptor(pd, expected); + +/******************************************************************************/ + +reportCompare(expect, actual, "Object.getOwnPropertyDescriptor"); + +printStatus("All tests passed"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.4-01.js b/js/src/tests/ecma_5/Object/15.2.3.4-01.js new file mode 100644 index 000000000..3a84f0b66 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.4-01.js @@ -0,0 +1,30 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 518663; +var summary = + 'Object.getOwnPropertyNames should play nicely with enumerator caching'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +for (var p in JSON); +var names = Object.getOwnPropertyNames(JSON); +assertEq(names.length >= 2, true, + "wrong number of property names? [" + names + "]"); +assertEq(names.indexOf("parse") >= 0, true); +assertEq(names.indexOf("stringify") >= 0, true); + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.4-02.js b/js/src/tests/ecma_5/Object/15.2.3.4-02.js new file mode 100644 index 000000000..b5e0842c2 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.4-02.js @@ -0,0 +1,52 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 518663; +var summary = 'Object.getOwnPropertyNames: array objects'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var a, names, expected; + +function arraysEqual(a1, a2) +{ + return a1.length === a2.length && + a1.every(function(v, i) { return v === a2[i]; }); +} + + +a = [0, 1, 2]; + +names = Object.getOwnPropertyNames(a).sort(); +expected = ["0", "1", "2", "length"].sort(); + +a = [1, , , 7]; +a.p = 2; +Object.defineProperty(a, "q", { value: 42, enumerable: false }); + +names = Object.getOwnPropertyNames(a).sort(); +expected = ["0", "3", "p", "q", "length"].sort(); +assertEq(arraysEqual(names, expected), true); + + +a = []; + +names = Object.getOwnPropertyNames(a).sort(); +expected = ["length"]; +assertEq(arraysEqual(names, expected), true); + + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.4-03.js b/js/src/tests/ecma_5/Object/15.2.3.4-03.js new file mode 100644 index 000000000..55dcc139c --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.4-03.js @@ -0,0 +1,55 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 518663; +var summary = 'Object.getOwnPropertyNames: function objects'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function two(a, b) { } + +assertEq(Object.getOwnPropertyNames(two).indexOf("length") >= 0, true); + +var bound0 = Function.prototype.bind + ? two.bind("this") + : function two(a, b) { }; + +assertEq(Object.getOwnPropertyNames(bound0).indexOf("length") >= 0, true); +assertEq(bound0.length, 2); + +var bound1 = Function.prototype.bind + ? two.bind("this", 1) + : function one(a) { }; + +assertEq(Object.getOwnPropertyNames(bound1).indexOf("length") >= 0, true); +assertEq(bound1.length, 1); + +var bound2 = Function.prototype.bind + ? two.bind("this", 1, 2) + : function zero() { }; + +assertEq(Object.getOwnPropertyNames(bound2).indexOf("length") >= 0, true); +assertEq(bound2.length, 0); + +var bound3 = Function.prototype.bind + ? two.bind("this", 1, 2, 3) + : function zero() { }; + +assertEq(Object.getOwnPropertyNames(bound3).indexOf("length") >= 0, true); +assertEq(bound3.length, 0); + + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.4-04.js b/js/src/tests/ecma_5/Object/15.2.3.4-04.js new file mode 100644 index 000000000..2561c7aff --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.4-04.js @@ -0,0 +1,31 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 518663; +var summary = 'Object.getOwnPropertyNames: regular expression objects'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var actual = Object.getOwnPropertyNames(/a/); +var expected = ["lastIndex"]; + +for (var i = 0; i < expected.length; i++) +{ + reportCompare(actual.indexOf(expected[i]) >= 0, true, + expected[i] + " should be a property name on a RegExp"); +} + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.5-01.js b/js/src/tests/ecma_5/Object/15.2.3.5-01.js new file mode 100644 index 000000000..70cfd64f5 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.5-01.js @@ -0,0 +1,60 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 492840; +var summary = 'ES5 Object.create(O [, Properties])'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq("create" in Object, true); +assertEq(Object.create.length, 2); + +var o, desc, props, proto; + +o = Object.create(null); +assertEq(Object.getPrototypeOf(o), null, "bad null-proto"); + +o = Object.create(null, { a: { value: 17, enumerable: false } }); +assertEq(Object.getPrototypeOf(o), null, "bad null-proto"); +assertEq("a" in o, true); +desc = Object.getOwnPropertyDescriptor(o, "a"); +assertEq(desc !== undefined, true, "no descriptor?"); +assertEq(desc.value, 17); +assertEq(desc.enumerable, false); +assertEq(desc.configurable, false); +assertEq(desc.writable, false); + +props = Object.create({ bar: 15 }); +Object.defineProperty(props, "foo", { enumerable: false, value: 42 }); +proto = { baz: 12 }; +o = Object.create(proto, props); +assertEq(Object.getPrototypeOf(o), proto); +assertEq(Object.getOwnPropertyDescriptor(o, "foo"), undefined); +assertEq("foo" in o, false); +assertEq(Object.getOwnPropertyDescriptor(o, "bar"), undefined); +assertEq("bar" in o, false); +assertEq(Object.getOwnPropertyDescriptor(o, "baz"), undefined); +assertEq(o.baz, 12); +assertEq(o.hasOwnProperty("baz"), false); + +try { + var actual = + Object.create(Object.create({}, + { boom: { get: function() { return "base"; }}}), + { boom: { get: function() { return "overridden"; }}}).boom +} catch (e) { +} +assertEq(actual, "overridden"); + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-define-over-method.js b/js/src/tests/ecma_5/Object/15.2.3.6-define-over-method.js new file mode 100644 index 000000000..1cc9e13e1 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-define-over-method.js @@ -0,0 +1,24 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 568786; +var summary = + 'Do not assert: !(attrs & (JSPROP_GETTER | JSPROP_SETTER)) with ' + + 'Object.defineProperty'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var o = { x: function(){} }; +Object.defineProperty(o, "x", { get: function(){} }); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-01-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-01-of-32.js new file mode 100644 index 000000000..d5ef02d02 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-01-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(1, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-02-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-02-of-32.js new file mode 100644 index 000000000..15ec6da11 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-02-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(2, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-03-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-03-of-32.js new file mode 100644 index 000000000..ee1c71e97 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-03-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(3, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-04-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-04-of-32.js new file mode 100644 index 000000000..b461f64cc --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-04-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(4, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-05-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-05-of-32.js new file mode 100644 index 000000000..710331f65 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-05-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(5, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-06-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-06-of-32.js new file mode 100644 index 000000000..930ead6bc --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-06-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(6, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-07-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-07-of-32.js new file mode 100644 index 000000000..bdf5dbcf3 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-07-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(7, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-08-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-08-of-32.js new file mode 100644 index 000000000..495d7b129 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-08-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(8, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-09-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-09-of-32.js new file mode 100644 index 000000000..d957644e8 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-09-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(9, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-10-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-10-of-32.js new file mode 100644 index 000000000..dcb147943 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-10-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(10, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-11-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-11-of-32.js new file mode 100644 index 000000000..d01dae494 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-11-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(11, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-12-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-12-of-32.js new file mode 100644 index 000000000..dc3c1e90c --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-12-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(12, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-13-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-13-of-32.js new file mode 100644 index 000000000..9f718ecd1 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-13-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(13, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-14-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-14-of-32.js new file mode 100644 index 000000000..97648ec04 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-14-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(14, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-15-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-15-of-32.js new file mode 100644 index 000000000..8c2fe7640 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-15-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(15, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-16-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-16-of-32.js new file mode 100644 index 000000000..dfdd97a2e --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-16-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(16, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-17-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-17-of-32.js new file mode 100644 index 000000000..ca8d67246 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-17-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(17, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-18-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-18-of-32.js new file mode 100644 index 000000000..34434cb23 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-18-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(18, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-19-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-19-of-32.js new file mode 100644 index 000000000..1f68fc15b --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-19-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(19, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-20-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-20-of-32.js new file mode 100644 index 000000000..c7aef96e6 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-20-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(20, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-21-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-21-of-32.js new file mode 100644 index 000000000..67861407c --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-21-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(21, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-22-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-22-of-32.js new file mode 100644 index 000000000..bfda5267c --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-22-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(22, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-23-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-23-of-32.js new file mode 100644 index 000000000..1f1b3e217 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-23-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(23, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-24-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-24-of-32.js new file mode 100644 index 000000000..0e553eef8 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-24-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(24, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-25-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-25-of-32.js new file mode 100644 index 000000000..1c013a99a --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-25-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(25, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-26-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-26-of-32.js new file mode 100644 index 000000000..51fad26b0 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-26-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(26, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-27-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-27-of-32.js new file mode 100644 index 000000000..6ff4b0461 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-27-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(27, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-28-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-28-of-32.js new file mode 100644 index 000000000..27f1137d9 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-28-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(28, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-29-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-29-of-32.js new file mode 100644 index 000000000..185e92fe1 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-29-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(29, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-30-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-30-of-32.js new file mode 100644 index 000000000..6c297b362 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-30-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(30, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-31-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-31-of-32.js new file mode 100644 index 000000000..b827b30ca --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-31-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(31, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-32-of-32.js b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-32-of-32.js new file mode 100644 index 000000000..5c44cff0d --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-dictionary-redefinition-32-of-32.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runDictionaryPropertyPresentTestsFraction(32, 32); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-function-length.js b/js/src/tests/ecma_5/Object/15.2.3.6-function-length.js new file mode 100644 index 000000000..bc6475c1f --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-function-length.js @@ -0,0 +1,35 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 430133; +var summary = 'ES5 Object.defineProperty(O, P, Attributes): Function.length'; + +print(BUGNUMBER + ": " + summary); + +load("ecma_5/Object/defineProperty-setup.js"); + +/************** + * BEGIN TEST * + **************/ + +try +{ + new TestRunner().runFunctionLengthTests(); +} +catch (e) +{ + throw "Error thrown during testing: " + e + + " at line " + e.lineNumber + "\n" + + (e.stack + ? "Stack: " + e.stack.split("\n").slice(2).join("\n") + "\n" + : ""); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-1-of-8.js b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-1-of-8.js new file mode 100644 index 000000000..fc1d0fca8 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-1-of-8.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runNonTerminalPropertyPresentTestsFraction(1, 8); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-2-of-8.js b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-2-of-8.js new file mode 100644 index 000000000..4023e160d --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-2-of-8.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runNonTerminalPropertyPresentTestsFraction(2, 8); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-3-of-8.js b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-3-of-8.js new file mode 100644 index 000000000..38b1d2876 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-3-of-8.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runNonTerminalPropertyPresentTestsFraction(3, 8); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-4-of-8.js b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-4-of-8.js new file mode 100644 index 000000000..f3abac42e --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-4-of-8.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runNonTerminalPropertyPresentTestsFraction(4, 8); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-5-of-8.js b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-5-of-8.js new file mode 100644 index 000000000..cce2114f5 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-5-of-8.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runNonTerminalPropertyPresentTestsFraction(5, 8); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-6-of-8.js b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-6-of-8.js new file mode 100644 index 000000000..16c231c76 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-6-of-8.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runNonTerminalPropertyPresentTestsFraction(6, 8); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-7-of-8.js b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-7-of-8.js new file mode 100644 index 000000000..bf3b2b49b --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-7-of-8.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runNonTerminalPropertyPresentTestsFraction(7, 8); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-8-of-8.js b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-8-of-8.js new file mode 100644 index 000000000..7fa0b807d --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-middle-redefinition-8-of-8.js @@ -0,0 +1,6 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +load("ecma_5/Object/defineProperty-setup.js"); +runNonTerminalPropertyPresentTestsFraction(8, 8); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-miscellaneous.js b/js/src/tests/ecma_5/Object/15.2.3.6-miscellaneous.js new file mode 100644 index 000000000..9f671c52c --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-miscellaneous.js @@ -0,0 +1,74 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 430133; +var summary = 'ES5 Object.defineProperty(O, P, Attributes)'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var o = []; +Object.defineProperty(o, 0, { value: 17 }); +var desc = Object.getOwnPropertyDescriptor(o, 0); +assertEq(desc !== undefined, true); +assertEq(desc.value, 17); +assertEq(desc.enumerable, false); +assertEq(desc.configurable, false); +assertEq(desc.writable, false); + +desc = Object.getOwnPropertyDescriptor(o, "length"); +assertEq(desc !== undefined, true); +assertEq(desc.enumerable, false); +assertEq(desc.configurable, false); +assertEq(desc.writable, true); +assertEq(desc.value, 1); +assertEq(o.length, 1); + +Object.defineProperty(o, "foobar", + { value: 42, enumerable: false, configurable: true }); +assertEq(o.foobar, 42); +desc = Object.getOwnPropertyDescriptor(o, "foobar"); +assertEq(desc !== undefined, true); +assertEq(desc.value, 42); +assertEq(desc.configurable, true); +assertEq(desc.enumerable, false); +assertEq(desc.writable, false); + +var called = false; +o = { set x(a) { called = true; } }; +Object.defineProperty(o, "x", { get: function() { return "get"; } }); +desc = Object.getOwnPropertyDescriptor(o, "x"); +assertEq("set" in desc, true); +assertEq("get" in desc, true); +assertEq(called, false); +o.x = 13; +assertEq(called, true); + +var toSource = Object.prototype.toSource || function() { }; +toSource.call(o); // a test for this not crashing + +var called = false; +var o = + Object.defineProperty({}, "foo", + { get: function() { return 17; }, + set: function(v) { called = true; } }); + +assertEq(o.foo, 17); +o.foo = 42; +assertEq(called, true); + +/* + * XXX need tests for Object.defineProperty(array, "length", { ... }) when we + * support it! + */ + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-new-definition.js b/js/src/tests/ecma_5/Object/15.2.3.6-new-definition.js new file mode 100644 index 000000000..ce5c38839 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-new-definition.js @@ -0,0 +1,35 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 430133; +var summary = 'ES5 Object.defineProperty(O, P, Attributes): new definition'; + +print(BUGNUMBER + ": " + summary); + +load("ecma_5/Object/defineProperty-setup.js"); + +/************** + * BEGIN TEST * + **************/ + +try +{ + new TestRunner().runNotPresentTests(); +} +catch (e) +{ + throw "Error thrown during testing: " + e + + " at line " + e.lineNumber + "\n" + + (e.stack + ? "Stack: " + e.stack.split("\n").slice(2).join("\n") + "\n" + : ""); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-1-of-4.js b/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-1-of-4.js new file mode 100644 index 000000000..55c11744d --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-1-of-4.js @@ -0,0 +1,39 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var PART = 1, PARTS = 4; + +//----------------------------------------------------------------------------- +var BUGNUMBER = 430133; +var summary = + 'ES5 Object.defineProperty(O, P, Attributes): redefinition ' + + PART + ' of ' + PARTS; + +print(BUGNUMBER + ": " + summary); + +load("ecma_5/Object/defineProperty-setup.js"); + +/************** + * BEGIN TEST * + **************/ + +try +{ + new TestRunner().runPropertyPresentTestsFraction(PART, PARTS); +} +catch (e) +{ + throw "Error thrown during testing: " + e + + " at line " + e.lineNumber + "\n" + + (e.stack + ? "Stack: " + e.stack.split("\n").slice(2).join("\n") + "\n" + : ""); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-2-of-4.js b/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-2-of-4.js new file mode 100644 index 000000000..ef74b5582 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-2-of-4.js @@ -0,0 +1,39 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var PART = 2, PARTS = 4; + +//----------------------------------------------------------------------------- +var BUGNUMBER = 430133; +var summary = + 'ES5 Object.defineProperty(O, P, Attributes): redefinition ' + + PART + ' of ' + PARTS; + +print(BUGNUMBER + ": " + summary); + +load("ecma_5/Object/defineProperty-setup.js"); + +/************** + * BEGIN TEST * + **************/ + +try +{ + new TestRunner().runPropertyPresentTestsFraction(PART, PARTS); +} +catch (e) +{ + throw "Error thrown during testing: " + e + + " at line " + e.lineNumber + "\n" + + (e.stack + ? "Stack: " + e.stack.split("\n").slice(2).join("\n") + "\n" + : ""); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-3-of-4.js b/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-3-of-4.js new file mode 100644 index 000000000..b0c58f3c2 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-3-of-4.js @@ -0,0 +1,39 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var PART = 3, PARTS = 4; + +//----------------------------------------------------------------------------- +var BUGNUMBER = 430133; +var summary = + 'ES5 Object.defineProperty(O, P, Attributes): redefinition ' + + PART + ' of ' + PARTS; + +print(BUGNUMBER + ": " + summary); + +load("ecma_5/Object/defineProperty-setup.js"); + +/************** + * BEGIN TEST * + **************/ + +try +{ + new TestRunner().runPropertyPresentTestsFraction(PART, PARTS); +} +catch (e) +{ + throw "Error thrown during testing: " + e + + " at line " + e.lineNumber + "\n" + + (e.stack + ? "Stack: " + e.stack.split("\n").slice(2).join("\n") + "\n" + : ""); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-4-of-4.js b/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-4-of-4.js new file mode 100644 index 000000000..09994df43 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.6-redefinition-4-of-4.js @@ -0,0 +1,39 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses shell load() function +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var PART = 4, PARTS = 4; + +//----------------------------------------------------------------------------- +var BUGNUMBER = 430133; +var summary = + 'ES5 Object.defineProperty(O, P, Attributes): redefinition ' + + PART + ' of ' + PARTS; + +print(BUGNUMBER + ": " + summary); + +load("ecma_5/Object/defineProperty-setup.js"); + +/************** + * BEGIN TEST * + **************/ + +try +{ + new TestRunner().runPropertyPresentTestsFraction(PART, PARTS); +} +catch (e) +{ + throw "Error thrown during testing: " + e + + " at line " + e.lineNumber + "\n" + + (e.stack + ? "Stack: " + e.stack.split("\n").slice(2).join("\n") + "\n" + : ""); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.7-01.js b/js/src/tests/ecma_5/Object/15.2.3.7-01.js new file mode 100644 index 000000000..5220e1483 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.7-01.js @@ -0,0 +1,137 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 430133; +var summary = 'ES5 Object.defineProperties(O, Properties)'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq("defineProperties" in Object, true); +assertEq(Object.defineProperties.length, 2); + +var o, props, desc, passed; + +o = {}; +props = + { + a: { value: 17, enumerable: true, configurable: true, writable: true }, + b: { value: 42, enumerable: false, configurable: false, writable: false } + }; +Object.defineProperties(o, props); +assertEq("a" in o, true); +assertEq("b" in o, true); +desc = Object.getOwnPropertyDescriptor(o, "a"); +assertEq(desc.value, 17); +assertEq(desc.enumerable, true); +assertEq(desc.configurable, true); +assertEq(desc.writable, true); +desc = Object.getOwnPropertyDescriptor(o, "b"); +assertEq(desc.value, 42); +assertEq(desc.enumerable, false); +assertEq(desc.configurable, false); +assertEq(desc.writable, false); + +props = + { + c: { value: NaN, enumerable: false, configurable: true, writable: true }, + b: { value: 44 } + }; +var error = "before"; +try +{ + Object.defineProperties(o, props); + error = "no exception thrown"; +} +catch (e) +{ + if (e instanceof TypeError) + error = "typeerror"; + else + error = "bad exception: " + e; +} +assertEq(error, "typeerror", "didn't throw or threw wrongly"); +assertEq("c" in o, true, "new property added"); +assertEq(o.b, 42, "old property value preserved"); + +function Properties() { } +Properties.prototype = { b: { value: 42, enumerable: true } }; +props = new Properties(); +Object.defineProperty(props, "a", { enumerable: false }); +o = {}; +Object.defineProperties(o, props); +assertEq("a" in o, false); +assertEq(Object.getOwnPropertyDescriptor(o, "a"), undefined, + "Object.defineProperties(O, Properties) should only use enumerable " + + "properties on Properties"); +assertEq("b" in o, false); +assertEq(Object.getOwnPropertyDescriptor(o, "b"), undefined, + "Object.defineProperties(O, Properties) should only use enumerable " + + "properties directly on Properties"); + +Number.prototype.foo = { value: 17, enumerable: true }; +Boolean.prototype.bar = { value: 8675309, enumerable: true }; +String.prototype.quux = { value: "Are you HAPPY yet?", enumerable: true }; +o = {}; +Object.defineProperties(o, 5); // ToObject only throws for null/undefined +assertEq("foo" in o, false, "foo is not an enumerable own property"); +Object.defineProperties(o, false); +assertEq("bar" in o, false, "bar is not an enumerable own property"); +Object.defineProperties(o, ""); +assertEq("quux" in o, false, "quux is not an enumerable own property"); + +error = "before"; +try +{ + Object.defineProperties(o, "1"); +} +catch (e) +{ + if (e instanceof TypeError) + error = "typeerror"; + else + error = "bad exception: " + e; +} +assertEq(error, "typeerror", + "should throw on Properties == '1' due to '1'[0] not being a " + + "property descriptor"); + +error = "before"; +try +{ + Object.defineProperties(o, null); +} +catch (e) +{ + if (e instanceof TypeError) + error = "typeerror"; + else + error = "bad exception: " + e; +} +assertEq(error, "typeerror", "should throw on Properties == null"); + +error = "before"; +try +{ + Object.defineProperties(o, undefined); +} +catch (e) +{ + if (e instanceof TypeError) + error = "typeerror"; + else + error = "bad exception: " + e; +} +assertEq(error, "typeerror", "should throw on Properties == undefined"); + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/15.2.3.9.js b/js/src/tests/ecma_5/Object/15.2.3.9.js new file mode 100644 index 000000000..c73437fa7 --- /dev/null +++ b/js/src/tests/ecma_5/Object/15.2.3.9.js @@ -0,0 +1,51 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* Object.freeze */ + +function getme() { return 42; }; +function setme(x) { }; + +var properties = { all: { value:1, writable:true, configurable:true, enumerable: true }, + readOnly: { value:2, writable:false, configurable:true, enumerable: true }, + nonConfig: { value:3, writable:true, configurable:false, enumerable: true }, + none: { value:4, writable:false, configurable:false, enumerable: true }, + getter: { get: getme, configurable:false, enumerable: true }, + setter: { set: setme, configurable:false, enumerable: true }, + getandset: { get: getme, set: setme, configurable:false, enumerable: true } + }; +var o = Object.defineProperties({}, properties); + +Object.freeze(o); + +function getPropertyOf(obj) { + return function (prop) { + return Object.getOwnPropertyDescriptor(obj, prop); + }; +}; + +assertEq(deepEqual(Object.getOwnPropertyDescriptor(o, 'all'), + { value: 1, writable:false, enumerable:true, configurable:false }), + true); +assertEq(deepEqual(Object.getOwnPropertyDescriptor(o, 'readOnly'), + { value: 2, writable:false, enumerable:true, configurable:false }), + true); +assertEq(deepEqual(Object.getOwnPropertyDescriptor(o, 'nonConfig'), + { value: 3, writable:false, enumerable:true, configurable:false }), + true); +assertEq(deepEqual(Object.getOwnPropertyDescriptor(o, 'none'), + { value: 4, writable:false, enumerable:true, configurable:false }), + true); +assertEq(deepEqual(Object.getOwnPropertyDescriptor(o, 'getter'), + { get: getme, set: (void 0), enumerable:true, configurable:false }), + true); +assertEq(deepEqual(Object.getOwnPropertyDescriptor(o, 'setter'), + { set: setme, get: (void 0), enumerable:true, configurable:false }), + true); +assertEq(deepEqual(Object.getOwnPropertyDescriptor(o, 'getandset'), + { get: getme, set: setme, enumerable:true, configurable:false }), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Object/add-property-non-extensible.js b/js/src/tests/ecma_5/Object/add-property-non-extensible.js new file mode 100644 index 000000000..2089a5678 --- /dev/null +++ b/js/src/tests/ecma_5/Object/add-property-non-extensible.js @@ -0,0 +1,118 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +var gTestfile = 'add-property-non-extensible.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 602144; +var summary = + 'Properly method-compile attempted addition of properties to ' + + 'non-extensible objects'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// No property + +var o1 = {}; +for (var i = 0; i < 5; i++) + o1.a = 3; +assertEq(o1.a, 3); + +var o2 = Object.preventExtensions({}); +for (var i = 0; i < 5; i++) + o2.a = 3; +assertEq(Object.getOwnPropertyDescriptor(o2, "a"), undefined); + +var o3 = Object.seal({}); +for (var i = 0; i < 5; i++) + o3.a = 3; +assertEq(Object.getOwnPropertyDescriptor(o3, "a"), undefined); + +var o4 = Object.freeze({}); +for (var i = 0; i < 5; i++) + o4.a = 3; +assertEq(Object.getOwnPropertyDescriptor(o4, "a"), undefined); + + +// Has property + +var o5 = { a: 2 }; +for (var i = 0; i < 5; i++) + o5.a = 3; +assertEq(o5.a, 3); + +var o6 = Object.preventExtensions({ a: 2 }); +for (var i = 0; i < 5; i++) + o6.a = 3; +assertEq(o6.a, 3); + +var o7 = Object.seal({ a: 2 }); +for (var i = 0; i < 5; i++) + o7.a = 3; +assertEq(o7.a, 3); + +var o8 = Object.freeze({ a: 2 }); +for (var i = 0; i < 5; i++) + o8.a = 3; +assertEq(o8.a, 2); + + +// Extensible, hit up the prototype chain + +var o9 = Object.create({ a: 2 }); +for (var i = 0; i < 5; i++) + o9.a = 3; +assertEq(o9.a, 3); + +var o10 = Object.create(Object.preventExtensions({ a: 2 })); +for (var i = 0; i < 5; i++) + o10.a = 3; +assertEq(o10.a, 3); + +var o11 = Object.create(Object.seal({ a: 2 })); +for (var i = 0; i < 5; i++) + o11.a = 3; +assertEq(o11.a, 3); + +var o12 = Object.create(Object.freeze({ a: 2 })); +for (var i = 0; i < 5; i++) + o12.a = 3; +assertEq(Object.getOwnPropertyDescriptor(o12, "a"), undefined); + + +// Not extensible, hit up the prototype chain + +var o13 = Object.preventExtensions(Object.create({ a: 2 })); +for (var i = 0; i < 5; i++) + o13.a = 3; +assertEq(Object.getOwnPropertyDescriptor(o13, "a"), undefined); + +var o14 = + Object.preventExtensions(Object.create(Object.preventExtensions({ a: 2 }))); +for (var i = 0; i < 5; i++) + o14.a = 3; +assertEq(Object.getOwnPropertyDescriptor(o14, "a"), undefined); + +var o15 = Object.preventExtensions(Object.create(Object.seal({ a: 2 }))); +for (var i = 0; i < 5; i++) + o15.a = 3; +assertEq(Object.getOwnPropertyDescriptor(o15, "a"), undefined); + +var o16 = Object.preventExtensions(Object.create(Object.freeze({ a: 2 }))); +for (var i = 0; i < 5; i++) + o16.a = 3; +assertEq(Object.getOwnPropertyDescriptor(o16, "a"), undefined); + + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/browser.js b/js/src/tests/ecma_5/Object/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Object/browser.js diff --git a/js/src/tests/ecma_5/Object/clear-dictionary-accessor-getset.js b/js/src/tests/ecma_5/Object/clear-dictionary-accessor-getset.js new file mode 100644 index 000000000..f0d9e11ca --- /dev/null +++ b/js/src/tests/ecma_5/Object/clear-dictionary-accessor-getset.js @@ -0,0 +1,55 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = "clear-dictionary-accessor-getset.js"; +var BUGNUMBER = 1082662; +var summary = + "Properly handle GC of a dictionary accessor property whose [[Get]] or " + + "[[Set]] has been changed to |undefined|"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function test(field) +{ + var prop = "[[" + field[0].toUpperCase() + field.substring(1) + "]]"; + print("Testing for GC crashes after setting " + prop + " to undefined..."); + + function inner() + { + // Create an object with an accessor property. + var obj = { x: 42, get y() {}, set y(v) {} }; + + // 1) convert it to dictionary mode, in the process 2) creating a new + // version of that accessor property whose [[Get]] and [[Set]] are objects + // that trigger post barriers. + delete obj.x; + + var desc = {}; + desc[field] = undefined; + + // Overwrite [[field]] with undefined. Note #1 above is necessary so this + // is an actual *overwrite*, and not (possibly) a shape-tree fork that + // doesn't overwrite. + Object.defineProperty(obj, "y", desc); + + } + + inner(); + gc(); // In unfixed code, this crashes trying to mark a null [[field]]. +} + +test("get"); +test("set"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Object/defineProperties-callable-accessor.js b/js/src/tests/ecma_5/Object/defineProperties-callable-accessor.js new file mode 100644 index 000000000..1e92a2c92 --- /dev/null +++ b/js/src/tests/ecma_5/Object/defineProperties-callable-accessor.js @@ -0,0 +1,19 @@ +// ObjectDefineProperties with non callable accessor throws. +const descriptors = [ + {get: 1}, {set: 1}, + {get: []}, {set: []}, + {get: {}}, {set: {}}, + {get: new Number}, {set: new Number}, + + {get: 1, set: 1}, + {get: [], set: []}, + {get: {}, set: {}}, + {get: new Number, set: new Number}, +]; + +for (const descriptor of descriptors) { + assertThrowsInstanceOf(() => Object.create(null, {x: descriptor}), TypeError); + assertThrowsInstanceOf(() => Object.defineProperties({}, {x: descriptor}), TypeError); +} + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Object/defineProperty-setup.js b/js/src/tests/ecma_5/Object/defineProperty-setup.js new file mode 100644 index 000000000..da6fe8f49 --- /dev/null +++ b/js/src/tests/ecma_5/Object/defineProperty-setup.js @@ -0,0 +1,1071 @@ +// |reftest| skip -- not a test. +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +assertEq("defineProperty" in Object, true); +assertEq(Object.defineProperty.length, 3); + +/* + * Disable an assertion that is pathologically slow given the exhaustiveness of + * these tests. + */ +if (typeof enableStackWalkingAssertion === "function") + enableStackWalkingAssertion(false); + +if (!Object.prototype.toSource) +{ + Object.defineProperty(Object.prototype, "toSource", + { + value: function toSource() + { + if (this instanceof RegExp) + { + var v = "new RegExp(" + uneval(this.source); + var f = (this.multiline ? "m" : "") + + (this.global ? "g" : "") + + (this.ignoreCase ? "i" : ""); + return v + (f ? ", '" + f + "'" : "") + ")"; + } + return JSON.stringify(this); + }, + enumerable: false, + configurable: true, + writable: true + }); +} +if (!("uneval" in this)) +{ + Object.defineProperty(this, "uneval", + { + value: function uneval(v) + { + if (v === null) + return "null"; + if (typeof v === "object") + return v.toSource(); + if (typeof v === "string") + { + v = JSON.stringify({v:v}); + return v.substring(5, v.length - 1); + } + return "" + v; + }, + enumerable: false, + configurable: true, + writable: true + }); +} + +// reimplemented for the benefit of engines which don't have this helper +function assertEq(v1, v2, m) +{ + if (!SameValue(v1, v2)) + { + throw "assertion failed: " + + "got " + uneval(v1) + ", expected " + uneval(v2) + + (m ? ": " + m : ""); + } +} + +function SameValue(v1, v2) +{ + if (v1 === 0 && v2 === 0) + return 1 / v1 === 1 / v2; + if (v1 !== v1 && v2 !== v2) + return true; + return v1 === v2; +} + +function PropertyDescriptor(pd) +{ + if (pd) + this.update(pd); +} +PropertyDescriptor.prototype.update = function update(pd) +{ + if ("get" in pd) + this.get = pd.get; + if ("set" in pd) + this.set = pd.set; + if ("configurable" in pd) + this.configurable = pd.configurable; + if ("writable" in pd) + this.writable = pd.writable; + if ("enumerable" in pd) + this.enumerable = pd.enumerable; + if ("value" in pd) + this.value = pd.value; +}; +PropertyDescriptor.prototype.convertToDataDescriptor = function convertToDataDescriptor() +{ + delete this.get; + delete this.set; + this.writable = false; + this.value = undefined; +}; +PropertyDescriptor.prototype.convertToAccessorDescriptor = function convertToAccessorDescriptor() +{ + delete this.writable; + delete this.value; + this.get = undefined; + this.set = undefined; +}; + +function compareDescriptors(d1, d2) +{ + if (d1 === undefined) + { + assertEq(d2, undefined, "non-descriptors"); + return; + } + if (d2 === undefined) + { + assertEq(true, false, "descriptor-equality mismatch: " + uneval(d1) + ", " + uneval(d2)); + return; + } + + var props = ["value", "get", "set", "enumerable", "configurable", "writable"]; + for (var i = 0, sz = props.length; i < sz; i++) + { + var p = props[i]; + assertEq(p in d1, p in d2, p + " different in d1/d2"); + if (p in d1) + assertEq(d1[p], d2[p], p); + } +} + +function examine(desc, field, allowDefault) +{ + if (field in desc) + return desc[field]; + assertEq(allowDefault, true, "reimplementation error"); + switch (field) + { + case "value": + case "get": + case "set": + return undefined; + case "writable": + case "enumerable": + case "configurable": + return false; + default: + assertEq(true, false, "bad field name: " + field); + } +} + +function IsAccessorDescriptor(desc) +{ + if (!desc) + return false; + if (!("get" in desc) && !("set" in desc)) + return false; + return true; +} + +function IsDataDescriptor(desc) +{ + if (!desc) + return false; + if (!("value" in desc) && !("writable" in desc)) + return false; + return true; +} + +function IsGenericDescriptor(desc) +{ + if (!desc) + return false; + if (!IsAccessorDescriptor(desc) && !IsDataDescriptor(desc)) + return true; + return false; +} + + + +function CustomObject() +{ + this.properties = {}; + this.extensible = true; +} +CustomObject.prototype = +{ + _reject: function _reject(throwing, msg) + { + if (throwing) + throw new TypeError(msg + "; rejected!"); + return false; + }, + defineOwnProperty: function defineOwnProperty(propname, desc, throwing) + { + assertEq(typeof propname, "string", "non-string propname"); + + // Step 1. + var current = this.properties[propname]; + + // Step 2. + var extensible = this.extensible; + + // Step 3. + if (current === undefined && !extensible) + return this._reject(throwing, "object not extensible"); + + // Step 4. + if (current === undefined && extensible) + { + var p; + // Step 4(a). + if (IsGenericDescriptor(desc) || IsDataDescriptor(desc)) + { + p = new PropertyDescriptor(); + p.value = examine(desc, "value", true); + p.writable = examine(desc, "writable", true); + p.enumerable = examine(desc, "enumerable", true); + p.configurable = examine(desc, "configurable", true); + } + // Step 4(b). + else + { + p = new PropertyDescriptor(); + p.get = examine(desc, "get", true); + p.set = examine(desc, "set", true); + p.enumerable = examine(desc, "enumerable", true); + p.configurable = examine(desc, "configurable", true); + } + + this.properties[propname] = p; + + // Step 4(c). + return true; + } + + // Step 5. + if (!("value" in desc) && !("get" in desc) && !("set" in desc) && + !("writable" in desc) && !("enumerable" in desc) && + !("configurable" in desc)) + { + return; + } + + // Step 6. + do + { + if ("value" in desc) + { + if (!("value" in current) || !SameValue(desc.value, current.value)) + break; + } + if ("get" in desc) + { + if (!("get" in current) || !SameValue(desc.get, current.get)) + break; + } + if ("set" in desc) + { + if (!("set" in current) || !SameValue(desc.set, current.set)) + break; + } + if ("writable" in desc) + { + if (!("writable" in current) || + !SameValue(desc.writable, current.writable)) + { + break; + } + } + if ("enumerable" in desc) + { + if (!("enumerable" in current) || + !SameValue(desc.enumerable, current.enumerable)) + { + break; + } + } + if ("configurable" in desc) + { + if (!("configurable" in current) || + !SameValue(desc.configurable, current.configurable)) + { + break; + } + } + + // all fields in desc also in current, with the same values + return true; + } + while (false); + + // Step 7. + if (!examine(current, "configurable")) + { + if ("configurable" in desc && examine(desc, "configurable")) + return this._reject(throwing, "can't make configurable again"); + if ("enumerable" in desc && + examine(current, "enumerable") !== examine(desc, "enumerable")) + { + return this._reject(throwing, "can't change enumerability"); + } + } + + // Step 8. + if (IsGenericDescriptor(desc)) + { + // do nothing + } + // Step 9. + else if (IsDataDescriptor(current) !== IsDataDescriptor(desc)) + { + // Step 9(a). + if (!examine(current, "configurable")) + return this._reject(throwing, "can't change unconfigurable descriptor's type"); + // Step 9(b). + if (IsDataDescriptor(current)) + current.convertToAccessorDescriptor(); + // Step 9(c). + else + current.convertToDataDescriptor(); + } + // Step 10. + else if (IsDataDescriptor(current) && IsDataDescriptor(desc)) + { + // Step 10(a) + if (!examine(current, "configurable")) + { + // Step 10(a).i. + if (!examine(current, "writable") && + "writable" in desc && examine(desc, "writable")) + { + return this._reject(throwing, "can't make data property writable again"); + } + // Step 10(a).ii. + if (!examine(current, "writable")) + { + if ("value" in desc && + !SameValue(examine(desc, "value"), examine(current, "value"))) + { + return this._reject(throwing, "can't change value if not writable"); + } + } + } + // Step 10(b). + else + { + assertEq(examine(current, "configurable"), true, + "spec bug step 10(b)"); + } + } + // Step 11. + else + { + assertEq(IsAccessorDescriptor(current) && IsAccessorDescriptor(desc), + true, + "spec bug"); + + // Step 11(a). + if (!examine(current, "configurable")) + { + // Step 11(a).i. + if ("set" in desc && + !SameValue(examine(desc, "set"), examine(current, "set"))) + { + return this._reject(throwing, "can't change setter if not configurable"); + } + // Step 11(a).ii. + if ("get" in desc && + !SameValue(examine(desc, "get"), examine(current, "get"))) + { + return this._reject(throwing, "can't change getter if not configurable"); + } + } + } + + // Step 12. + current.update(desc); + + // Step 13. + return true; + } +}; + +function IsCallable(v) +{ + return typeof v === "undefined" || typeof v === "function"; +} + +var NativeTest = + { + newObject: function newObject() + { + return {}; + }, + defineProperty: function defineProperty(obj, propname, propdesc) + { + Object.defineProperty(obj, propname, propdesc); + }, + getDescriptor: function getDescriptor(obj, propname) + { + return Object.getOwnPropertyDescriptor(obj, propname); + } + }; + +var ReimplTest = + { + newObject: function newObject() + { + return new CustomObject(); + }, + defineProperty: function defineProperty(obj, propname, propdesc) + { + assertEq(obj instanceof CustomObject, true, "obj not instanceof CustomObject"); + if ("get" in propdesc || "set" in propdesc) + { + if ("value" in propdesc || "writable" in propdesc) + throw new TypeError("get/set and value/writable"); + if (!IsCallable(propdesc.get)) + throw new TypeError("get defined, uncallable"); + if (!IsCallable(propdesc.set)) + throw new TypeError("set defined, uncallable"); + } + return obj.defineOwnProperty(propname, propdesc, true); + }, + getDescriptor: function getDescriptor(obj, propname) + { + if (!(propname in obj.properties)) + return undefined; + + return new PropertyDescriptor(obj.properties[propname]); + } + }; + +var JSVAL_INT_MAX = Math.pow(2, 30) - 1; +var JSVAL_INT_MIN = -Math.pow(2, 30); + + +function isValidDescriptor(propdesc) +{ + if ("get" in propdesc || "set" in propdesc) + { + if ("value" in propdesc || "writable" in propdesc) + return false; + + // We permit null here simply because this test's author believes the + // implementation may sometime be susceptible to making mistakes in this + // regard and would prefer to be cautious. + if (propdesc.get !== null && propdesc.get !== undefined && !IsCallable(propdesc.get)) + return false; + if (propdesc.set !== null && propdesc.set !== undefined && !IsCallable(propdesc.set)) + return false; + } + + return true; +} + + +var OMIT = {}; +var VALUES = + [-Infinity, JSVAL_INT_MIN, -0, +0, 1.5, JSVAL_INT_MAX, Infinity, + NaN, "foo", "bar", null, undefined, true, false, {}, /a/, OMIT]; +var GETS = + [undefined, function get1() { return 1; }, function get2() { return 2; }, + null, 5, OMIT]; +var SETS = + [undefined, function set1() { return 1; }, function set2() { return 2; }, + null, 5, OMIT]; +var ENUMERABLES = [true, false, OMIT]; +var CONFIGURABLES = [true, false, OMIT]; +var WRITABLES = [true, false, OMIT]; + +function mapTestDescriptors(filter) +{ + var descs = []; + var desc = {}; + + function put(field, value) + { + if (value !== OMIT) + desc[field] = value; + } + + VALUES.forEach(function(value) + { + GETS.forEach(function(get) + { + SETS.forEach(function(set) + { + ENUMERABLES.forEach(function(enumerable) + { + CONFIGURABLES.forEach(function(configurable) + { + WRITABLES.forEach(function(writable) + { + desc = {}; + put("value", value); + put("get", get); + put("set", set); + put("enumerable", enumerable); + put("configurable", configurable); + put("writable", writable); + if (filter(desc)) + descs.push(desc); + }); + }); + }); + }); + }); + }); + + return descs; +} + +var ALL_DESCRIPTORS = mapTestDescriptors(function(d) { return true; }); +var VALID_DESCRIPTORS = mapTestDescriptors(isValidDescriptor); + +function TestRunner() +{ + this._logLines = []; +} +TestRunner.prototype = + { + // MAIN METHODS + + runFunctionLengthTests: function runFunctionLengthTests() + { + var self = this; + function functionLengthTests() + { + self._fullFunctionLengthTests(() => Function("one", "/* body */"), 1); + self._fullFunctionLengthTests(() => function(one, two, three=null) { }, 2); + self._fullFunctionLengthTests(() => (one, two, ...etc) => 0, 2); + self._fullFunctionLengthTests(() => ({method(){}}.method), 0); + self._fullFunctionLengthTests(() => Object.getOwnPropertyDescriptor({set x(v){}}, "x").set, 1); + } + + this._runTestSet(functionLengthTests, "Function length tests completed!"); + }, + + runNotPresentTests: function runNotPresentTests() + { + var self = this; + function notPresentTests() + { + print("Running not-present tests now..."); + + for (var i = 0, sz = ALL_DESCRIPTORS.length; i < sz; i++) + self._runSingleNotPresentTest(ALL_DESCRIPTORS[i]); + }; + + this._runTestSet(notPresentTests, "Not-present length tests completed!"); + }, + + runPropertyPresentTestsFraction: + function runPropertyPresentTestsFraction(part, parts) + { + var self = this; + function propertyPresentTests() + { + print("Running already-present tests now..."); + + var total = VALID_DESCRIPTORS.length; + var start = Math.floor((part - 1) / parts * total); + var end = Math.floor(part / parts * total); + + for (var i = start; i < end; i++) + { + var old = VALID_DESCRIPTORS[i]; + print("Starting test with old descriptor " + old.toSource() + "..."); + + for (var j = 0, sz2 = VALID_DESCRIPTORS.length; j < sz2; j++) + self._runSinglePropertyPresentTest(old, VALID_DESCRIPTORS[j], []); + } + } + + this._runTestSet(propertyPresentTests, + "Property-present fraction " + part + " of " + parts + + " completed!"); + }, + + runNonTerminalPropertyPresentTestsFraction: + function runNonTerminalPropertyPresentTestsFraction(part, parts) + { + var self = this; + + /* + * A plain old property to define on the object before redefining the + * originally-added property, to test redefinition of a property that's + * not also lastProperty. NB: we could loop over every possible + * descriptor here if we wanted, even try adding more than one, but we'd + * hit cubic complexity and worse, and SpiderMonkey only distinguishes by + * the mere presence of the middle property, not its precise details. + */ + var middleDefines = + [{ + property: "middle", + descriptor: + { value: 17, writable: true, configurable: true, enumerable: true } + }]; + + function nonTerminalPropertyPresentTests() + { + print("Running non-terminal already-present tests now..."); + + var total = VALID_DESCRIPTORS.length; + var start = Math.floor((part - 1) / parts * total); + var end = Math.floor(part / parts * total); + + for (var i = start; i < end; i++) + { + var old = VALID_DESCRIPTORS[i]; + print("Starting test with old descriptor " + old.toSource() + "..."); + + for (var j = 0, sz2 = VALID_DESCRIPTORS.length; j < sz2; j++) + { + self._runSinglePropertyPresentTest(old, VALID_DESCRIPTORS[j], + middleDefines); + } + } + } + + this._runTestSet(nonTerminalPropertyPresentTests, + "Non-terminal property-present fraction " + + part + " of " + parts + " completed!"); + }, + + runDictionaryPropertyPresentTestsFraction: + function runDictionaryPropertyPresentTestsFraction(part, parts) + { + var self = this; + + /* + * Add and readd properties such that the scope for the object is in + * dictionary mode. + */ + var middleDefines = + [ + { + property: "mid1", + descriptor: + { value: 17, writable: true, configurable: true, enumerable: true } + }, + { + property: "mid2", + descriptor: + { value: 17, writable: true, configurable: true, enumerable: true } + }, + { + property: "mid1", + descriptor: + { get: function g() { }, set: function s(v){}, configurable: false, + enumerable: true } + }, + ]; + + function dictionaryPropertyPresentTests() + { + print("Running dictionary already-present tests now..."); + + var total = VALID_DESCRIPTORS.length; + var start = Math.floor((part - 1) / parts * total); + var end = Math.floor(part / parts * total); + + for (var i = start; i < end; i++) + { + var old = VALID_DESCRIPTORS[i]; + print("Starting test with old descriptor " + old.toSource() + "..."); + + for (var j = 0, sz2 = VALID_DESCRIPTORS.length; j < sz2; j++) + { + self._runSinglePropertyPresentTest(old, VALID_DESCRIPTORS[j], + middleDefines); + } + } + } + + this._runTestSet(dictionaryPropertyPresentTests, + "Dictionary property-present fraction " + + part + " of " + parts + " completed!"); + }, + + + // HELPERS + + runPropertyPresentTests: function runPropertyPresentTests() + { + print("Running already-present tests now..."); + + for (var i = 0, sz = VALID_DESCRIPTORS.length; i < sz; i++) + { + var old = VALID_DESCRIPTORS[i]; + print("Starting test with old descriptor " + old.toSource() + "..."); + + for (var j = 0, sz2 = VALID_DESCRIPTORS.length; j < sz2; j++) + this._runSinglePropertyPresentTest(old, VALID_DESCRIPTORS[j], []); + } + }, + _runTestSet: function _runTestSet(fun, completeMessage) + { + try + { + fun(); + + print(completeMessage); + } + catch (e) + { + print("ERROR, EXITING (line " + (e.lineNumber || -1) + "): " + e); + throw e; + } + finally + { + this._reportAllErrors(); + } + }, + _reportAllErrors: function _reportAllErrors() + { + var errorCount = this._logLines.length; + print("Full accumulated number of errors: " + errorCount); + if (errorCount > 0) + throw errorCount + " errors detected, FAIL"; + }, + _fullFunctionLengthTests: function _fullFunctionLengthTests(funFactory, len) + { + print("Running Function.length (" + funFactory + ") tests now..."); + + for (var i = 0, sz = VALID_DESCRIPTORS.length; i < sz; i++) + { + var desc = VALID_DESCRIPTORS[i]; + this._runSingleFunctionLengthTest(funFactory(), len, desc); + } + }, + _log: function _log(v) + { + var m = "" + v; + print(m); + this._logLines.push(m); + }, + _runSingleNotPresentTest: function _runSingleNotPresentTest(desc) + { + var nativeObj = NativeTest.newObject(); + var reimplObj = ReimplTest.newObject(); + + try + { + NativeTest.defineProperty(nativeObj, "foo", desc); + } + catch (e) + { + try + { + ReimplTest.defineProperty(reimplObj, "foo", desc); + } + catch (e2) + { + if (e.constructor !== e2.constructor) + { + this._log("Difference when comparing native/reimplementation " + + "behavior for new descriptor " + desc.toSource() + + ", native threw " + e + ", reimpl threw " + e2); + } + return; + } + this._log("Difference when comparing native/reimplementation " + + "behavior for new descriptor " + desc.toSource() + + ", error " + e); + return; + } + + try + { + ReimplTest.defineProperty(reimplObj, "foo", desc); + } + catch (e) + { + this._log("Reimpl threw defining new descriptor " + desc.toSource() + + ", error: " + e); + return; + } + + var nativeDesc = NativeTest.getDescriptor(nativeObj, "foo"); + var reimplDesc = ReimplTest.getDescriptor(reimplObj, "foo"); + try + { + compareDescriptors(nativeDesc, reimplDesc); + } + catch (e) + { + this._log("Difference comparing returned descriptors for new " + + "property defined with descriptor " + desc.toSource() + + "; error: " + e); + return; + } + }, + _runSinglePropertyPresentTest: + function _runSinglePropertyPresentTest(old, add, middleDefines) + { + var nativeObj = NativeTest.newObject(); + var reimplObj = ReimplTest.newObject(); + + try + { + NativeTest.defineProperty(nativeObj, "foo", old); + } + catch (e) + { + if (!SameValue(NativeTest.getDescriptor(nativeObj, "foo"), undefined)) + { + this._log("defining bad property descriptor: " + old.toSource()); + return; + } + + try + { + ReimplTest.defineProperty(reimplObj, "foo", old); + } + catch (e2) + { + if (!SameValue(ReimplTest.getDescriptor(reimplObj, "foo"), + undefined)) + { + this._log("defining bad property descriptor: " + old.toSource() + + "; reimplObj: " + uneval(reimplObj)); + } + + if (e.constructor !== e2.constructor) + { + this._log("Different errors defining bad property descriptor: " + + old.toSource() + "; native threw " + e + ", reimpl " + + "threw " + e2); + } + + return; + } + + this._log("Difference defining a property with descriptor " + + old.toSource() + ", error " + e); + return; + } + + try + { + ReimplTest.defineProperty(reimplObj, "foo", old); + } + catch (e) + { + this._log("Difference when comparing native/reimplementation " + + "behavior when adding descriptor " + add.toSource() + + ", error: " + e); + return; + } + + // Now add (or even readd) however many properties were specified between + // the original property to add and the new one, to test redefining + // non-last-properties and properties in scopes in dictionary mode. + for (var i = 0, sz = middleDefines.length; i < sz; i++) + { + var middle = middleDefines[i]; + var prop = middle.property; + var desc = middle.descriptor; + + try + { + NativeTest.defineProperty(nativeObj, prop, desc); + ReimplTest.defineProperty(reimplObj, prop, desc); + } + catch (e) + { + this._log("failure defining middle descriptor: " + desc.toSource() + + ", error " + e); + return; + } + + // Sanity check + var nativeDesc = NativeTest.getDescriptor(nativeObj, prop); + var reimplDesc = ReimplTest.getDescriptor(reimplObj, prop); + + compareDescriptors(nativeDesc, reimplDesc); + compareDescriptors(nativeDesc, desc); + } + + try + { + NativeTest.defineProperty(nativeObj, "foo", add); + } + catch (e) + { + try + { + ReimplTest.defineProperty(reimplObj, "foo", add); + } + catch (e2) + { + if (e.constructor !== e2.constructor) + { + this._log("Difference when comparing native/reimplementation " + + "behavior for descriptor " + add.toSource() + + " overwriting descriptor " + old.toSource() + "; " + + "native threw " + e + ", reimpl threw " + e2); + } + return; + } + this._log("Difference when comparing native/reimplementation " + + "behavior for added descriptor " + add.toSource() + ", " + + "initial was " + old.toSource() + "; error: " + e); + return; + } + + try + { + ReimplTest.defineProperty(reimplObj, "foo", add); + } + catch (e) + { + this._log("Difference when comparing native/reimplementation " + + "behavior for readded descriptor " + add.toSource() + ", " + + "initial was " + old.toSource() + "; native readd didn't " + + "throw, reimpl add did, error: " + e); + return; + } + + var nativeDesc = NativeTest.getDescriptor(nativeObj, "foo"); + var reimplDesc = ReimplTest.getDescriptor(reimplObj, "foo"); + try + { + compareDescriptors(nativeDesc, reimplDesc); + } + catch (e) + { + this._log("Difference comparing returned descriptors for readded " + + "property defined with descriptor " + add.toSource() + "; " + + "initial was " + old.toSource() + "; error: " + e); + return; + } + }, + _runSingleFunctionLengthTest: function _runSingleFunctionLengthTest(fun, len, desc) + { + var nativeObj = fun; + var reimplObj = ReimplTest.newObject(); + ReimplTest.defineProperty(reimplObj, "length", + { + value: len, + enumerable: false, + configurable: true, + writable: false + }); + + try + { + NativeTest.defineProperty(nativeObj, "length", desc); + } + catch (e) + { + try + { + ReimplTest.defineProperty(reimplObj, "length", desc); + } + catch (e2) + { + if (e.constructor !== e2.constructor) + { + this._log("Difference when comparing native/reimplementation " + + "behavior defining fun.length with " + desc.toSource() + + "; native threw " + e + ", reimpl threw " + e2); + } + return; + } + this._log("Difference when comparing Function.length native/reimpl " + + "behavior for descriptor " + desc.toSource() + + ", native impl threw error " + e); + return; + } + + try + { + ReimplTest.defineProperty(reimplObj, "length", desc); + } + catch (e) + { + this._log("Difference defining new Function.length descriptor: impl " + + "succeeded, reimpl threw for descriptor " + + desc.toSource() + ", error: " + e); + return; + } + + var nativeDesc = NativeTest.getDescriptor(nativeObj, "length"); + var reimplDesc = ReimplTest.getDescriptor(reimplObj, "length"); + try + { + compareDescriptors(nativeDesc, reimplDesc); + } + catch (e) + { + this._log("Difference comparing returned descriptors for " + + "Function.length with descriptor " + desc.toSource() + + "; error: " + e); + return; + } + } + }; + +function runDictionaryPropertyPresentTestsFraction(PART, PARTS) +{ + var testfile = + '15.2.3.6-dictionary-redefinition-' + PART + '-of-' + PARTS + '.js'; + var BUGNUMBER = 560566; + var summary = + 'ES5 Object.defineProperty(O, P, Attributes): dictionary redefinition ' + + PART + ' of ' + PARTS; + + print(BUGNUMBER + ": " + summary); + + try + { + new TestRunner().runDictionaryPropertyPresentTestsFraction(PART, PARTS); + } + catch (e) + { + throw "Error thrown during testing: " + e + + " at line " + e.lineNumber + "\n" + + (e.stack + ? "Stack: " + e.stack.split("\n").slice(2).join("\n") + "\n" + : ""); + } + + if (typeof reportCompare === "function") + reportCompare(true, true); + + print("Tests complete!"); +} + +function runNonTerminalPropertyPresentTestsFraction(PART, PARTS) +{ + var BUGNUMBER = 560566; + var summary = + 'ES5 Object.defineProperty(O, P, Attributes): middle redefinition ' + + PART + ' of ' + PARTS; + + print(BUGNUMBER + ": " + summary); + + + /************** + * BEGIN TEST * + **************/ + + try + { + new TestRunner().runNonTerminalPropertyPresentTestsFraction(PART, PARTS); + } + catch (e) + { + throw "Error thrown during testing: " + e + + " at line " + e.lineNumber + "\n" + + (e.stack + ? "Stack: " + e.stack.split("\n").slice(2).join("\n") + "\n" + : ""); + } + + /******************************************************************************/ + + if (typeof reportCompare === "function") + reportCompare(true, true); + + print("Tests complete!"); +} diff --git a/js/src/tests/ecma_5/Object/extensibility-01.js b/js/src/tests/ecma_5/Object/extensibility-01.js new file mode 100644 index 000000000..c001f3825 --- /dev/null +++ b/js/src/tests/ecma_5/Object/extensibility-01.js @@ -0,0 +1,103 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +var gTestfile = '15.2.3.10-01.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 492849; +var summary = 'ES5: Implement Object.preventExtensions, Object.isExtensible'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function trySetProperty(o, p, v, strict) +{ + function strictSetProperty() + { + "use strict"; + o[p] = v; + } + + function setProperty() + { + o[p] = v; + } + + assertEq(Object.prototype.hasOwnProperty.call(o, p), false); + + try + { + if (strict) + strictSetProperty(); + else + setProperty(); + if (o[p] === v) + return "set"; + if (p in o) + return "set-converted"; + return "swallowed"; + } + catch (e) + { + return "throw"; + } +} + +function tryDefineProperty(o, p, v) +{ + assertEq(Object.prototype.hasOwnProperty.call(o, p), false); + + try + { + Object.defineProperty(o, p, { value: v }); + if (o[p] === v) + return "set"; + if (p in o) + return "set-converted"; + return "swallowed"; + } + catch (e) + { + return "throw"; + } +} + +assertEq(typeof Object.preventExtensions, "function"); +assertEq(Object.preventExtensions.length, 1); + +var slowArray = [1, 2, 3]; +slowArray.slow = 5; +var objs = + [{}, { 1: 2 }, { a: 3 }, [], [1], [, 1], slowArray, function a(){}, /a/]; + +for (var i = 0, sz = objs.length; i < sz; i++) +{ + var o = objs[i]; + assertEq(Object.isExtensible(o), true, "object " + i + " not extensible?"); + + var o2 = Object.preventExtensions(o); + assertEq(o, o2); + + assertEq(Object.isExtensible(o), false, "object " + i + " is extensible?"); + + assertEq(trySetProperty(o, "baz", 17, true), "throw", + "unexpected behavior for strict-mode property-addition to " + + "object " + i); + assertEq(trySetProperty(o, "baz", 17, false), "swallowed", + "unexpected behavior for property-addition to object " + i); + + assertEq(tryDefineProperty(o, "baz", 17), "throw", + "unexpected behavior for new property definition on object " + i); +} + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/extensibility-02.js b/js/src/tests/ecma_5/Object/extensibility-02.js new file mode 100644 index 000000000..c61e36728 --- /dev/null +++ b/js/src/tests/ecma_5/Object/extensibility-02.js @@ -0,0 +1,42 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +var gTestfile = '15.2.3.4-01.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 492849; +var summary = 'ES5: Implement Object.preventExtensions, Object.isExtensible'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq(typeof Object.isExtensible, "function"); +assertEq(Object.isExtensible.length, 1); + +var slowArray = [1, 2, 3]; +slowArray.slow = 5; +var objs = + [{}, { 1: 2 }, { a: 3 }, [], [1], [, 1], slowArray, function a(){}, /a/]; + +for (var i = 0, sz = objs.length; i < sz; i++) +{ + var o = objs[i]; + assertEq(Object.isExtensible(o), true, "object " + i + " not extensible?"); + + var o2 = Object.preventExtensions(o); + assertEq(o, o2); + + assertEq(Object.isExtensible(o), false, "object " + i + " is extensible?"); +} + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/freeze-global-eval-const.js b/js/src/tests/ecma_5/Object/freeze-global-eval-const.js new file mode 100644 index 000000000..a43f5c51c --- /dev/null +++ b/js/src/tests/ecma_5/Object/freeze-global-eval-const.js @@ -0,0 +1,13 @@ +// |reftest| skip-if(!xulRuntime.shell) -- uses evalcx +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +try { + evalcx("Object.freeze(this); eval('const q = undefined;')"); +} catch (e) { + assertEq(e.message, "({lazy:false}) is not extensible"); +} + +reportCompare(0, 0, "don't crash"); diff --git a/js/src/tests/ecma_5/Object/gOPD-vs-prototype-accessor.js b/js/src/tests/ecma_5/Object/gOPD-vs-prototype-accessor.js new file mode 100644 index 000000000..472887f90 --- /dev/null +++ b/js/src/tests/ecma_5/Object/gOPD-vs-prototype-accessor.js @@ -0,0 +1,15 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(function testcase() { + var proto = {}; + Object.defineProperty(proto, "prop", {get: function () {return {};}, enumerable: true}); + var ConstructFun = function () {}; + ConstructFun.prototype = proto; + var child = new ConstructFun; + return Object.getOwnPropertyNames(child).indexOf('prop'); +}(), -1); + +reportCompare(0, 0, "ok"); diff --git a/js/src/tests/ecma_5/Object/getPrototypeOf-array.js b/js/src/tests/ecma_5/Object/getPrototypeOf-array.js new file mode 100644 index 000000000..e482f89be --- /dev/null +++ b/js/src/tests/ecma_5/Object/getPrototypeOf-array.js @@ -0,0 +1,32 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'getPrototypeOf-array.js'; +var BUGNUMBER = 769041; +var summary = + "The [[Prototype]] of an object whose prototype chain contains an array " + + "isn't that array's [[Prototype]]"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var arr = []; +assertEq(Array.isArray(arr), true); +var objWithArrPrototype = Object.create(arr); +assertEq(!Array.isArray(objWithArrPrototype), true); +assertEq(Object.getPrototypeOf(objWithArrPrototype), arr); +var objWithArrGrandPrototype = Object.create(objWithArrPrototype); +assertEq(!Array.isArray(objWithArrGrandPrototype), true); +assertEq(Object.getPrototypeOf(objWithArrGrandPrototype), objWithArrPrototype); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/Object/isPrototypeOf.js b/js/src/tests/ecma_5/Object/isPrototypeOf.js new file mode 100644 index 000000000..a2d78f650 --- /dev/null +++ b/js/src/tests/ecma_5/Object/isPrototypeOf.js @@ -0,0 +1,86 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'isPrototypeOf.js'; +var BUGNUMBER = 619283; +var summary = "Object.prototype.isPrototypeOf"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function expectThrowTypeError(fun) +{ + try + { + var r = fun(); + throw new Error("didn't throw TypeError, returned " + r); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "didn't throw TypeError, got: " + e); + } +} + +var isPrototypeOf = Object.prototype.isPrototypeOf; + +/* + * 1. If V is not an Object, return false. + */ +assertEq(isPrototypeOf(), false); +assertEq(isPrototypeOf(1), false); +assertEq(isPrototypeOf(Number.MAX_VALUE), false); +assertEq(isPrototypeOf(NaN), false); +assertEq(isPrototypeOf(""), false); +assertEq(isPrototypeOf("sesquicentennial"), false); +assertEq(isPrototypeOf(true), false); +assertEq(isPrototypeOf(false), false); +assertEq(isPrototypeOf(0.72), false); +assertEq(isPrototypeOf(undefined), false); +assertEq(isPrototypeOf(null), false); + + +/* + * 2. Let O be the result of calling ToObject passing the this value as the + * argument. + */ +var protoGlobal = Object.create(this); +expectThrowTypeError(function() { isPrototypeOf.call(null, {}); }); +expectThrowTypeError(function() { isPrototypeOf.call(undefined, {}); }); +expectThrowTypeError(function() { isPrototypeOf({}); }); +expectThrowTypeError(function() { isPrototypeOf.call(null, protoGlobal); }); +expectThrowTypeError(function() { isPrototypeOf.call(undefined, protoGlobal); }); +expectThrowTypeError(function() { isPrototypeOf(protoGlobal); }); + + +/* + * 3. Repeat + */ + +/* + * 3a. Let V be the value of the [[Prototype]] internal property of V. + * 3b. If V is null, return false. + */ +assertEq(Object.prototype.isPrototypeOf(Object.prototype), false); +assertEq(String.prototype.isPrototypeOf({}), false); +assertEq(Object.prototype.isPrototypeOf(Object.create(null)), false); + +/* 3c. If O and V refer to the same object, return true. */ +assertEq(Object.prototype.isPrototypeOf({}), true); +assertEq(this.isPrototypeOf(protoGlobal), true); +assertEq(Object.prototype.isPrototypeOf({}), true); +assertEq(Object.prototype.isPrototypeOf(new Number(17)), true); +assertEq(Object.prototype.isPrototypeOf(function(){}), true); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/mutation-prevention-methods.js b/js/src/tests/ecma_5/Object/mutation-prevention-methods.js new file mode 100644 index 000000000..01b4c19cb --- /dev/null +++ b/js/src/tests/ecma_5/Object/mutation-prevention-methods.js @@ -0,0 +1,124 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +var gTestfile = 'mutation-prevention-methods.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 492849; +var summary = 'Object.is{Sealed,Frozen}, Object.{seal,freeze}'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// Empty object + +var o1 = {}; + +assertEq(Object.isExtensible(o1), true); +assertEq(Object.isSealed(o1), false); +assertEq(Object.isFrozen(o1), false); + +Object.preventExtensions(o1); + +// An non-extensible empty object has no properties, so it is vacuously sealed +// and frozen. +assertEq(Object.isExtensible(o1), false); +assertEq(Object.isSealed(o1), true); +assertEq(Object.isFrozen(o1), true); + + +// Object with a data property + +var o2 = { 1: 2 }; + +assertEq(Object.isExtensible(o2), true); +assertEq(Object.isSealed(o2), false); +assertEq(Object.isFrozen(o2), false); + +Object.preventExtensions(o2); + +assertEq(Object.isExtensible(o2), false); +assertEq(Object.isSealed(o2), false); +assertEq(Object.isFrozen(o2), false); + +Object.seal(o2); + +assertEq(Object.isExtensible(o2), false); +assertEq(Object.isSealed(o2), true); +assertEq(Object.isFrozen(o2), false); + +assertEq(o2[1], 2); + +var desc; + +desc = Object.getOwnPropertyDescriptor(o2, "1"); +assertEq(typeof desc, "object"); +assertEq(desc.enumerable, true); +assertEq(desc.configurable, false); +assertEq(desc.value, 2); +assertEq(desc.writable, true); + +o2[1] = 17; + +assertEq(o2[1], 17); + +desc = Object.getOwnPropertyDescriptor(o2, "1"); +assertEq(typeof desc, "object"); +assertEq(desc.enumerable, true); +assertEq(desc.configurable, false); +assertEq(desc.value, 17); +assertEq(desc.writable, true); + +Object.freeze(o2); + +assertEq(o2[1], 17); + +desc = Object.getOwnPropertyDescriptor(o2, "1"); +assertEq(typeof desc, "object"); +assertEq(desc.enumerable, true); +assertEq(desc.configurable, false); +assertEq(desc.value, 17); +assertEq(desc.writable, false); + + +// Object with an accessor property + +var o3 = { get foo() { return 17; } }; + +assertEq(Object.isExtensible(o3), true); +assertEq(Object.isSealed(o3), false); +assertEq(Object.isFrozen(o3), false); + +Object.preventExtensions(o3); + +assertEq(Object.isExtensible(o3), false); +assertEq(Object.isSealed(o3), false); +assertEq(Object.isFrozen(o3), false); + +Object.seal(o3); + +// An accessor property in a sealed object is unchanged if that object is +// frozen, so a sealed object containing only accessor properties is also +// vacuously frozen. +assertEq(Object.isExtensible(o3), false); +assertEq(Object.isSealed(o3), true); +assertEq(Object.isFrozen(o3), true); + +Object.freeze(o3); + +assertEq(Object.isExtensible(o3), false); +assertEq(Object.isSealed(o3), true); +assertEq(Object.isFrozen(o3), true); + + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/object-create-with-primitive-second-arg.js b/js/src/tests/ecma_5/Object/object-create-with-primitive-second-arg.js new file mode 100644 index 000000000..44afd53c2 --- /dev/null +++ b/js/src/tests/ecma_5/Object/object-create-with-primitive-second-arg.js @@ -0,0 +1,8 @@ +[1, "", true, Symbol(), undefined].forEach(props => { + assertEq(Object.getPrototypeOf(Object.create(null, props)), null); +}); + +assertThrowsInstanceOf(() => Object.create(null, null), TypeError); + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Object/object-toString-01.js b/js/src/tests/ecma_5/Object/object-toString-01.js new file mode 100644 index 000000000..6a8c4e86a --- /dev/null +++ b/js/src/tests/ecma_5/Object/object-toString-01.js @@ -0,0 +1,46 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +var gTestfile = 'object-toString-01.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 575522; +var summary = '({}).toString.call(null) == "[object Null]", ' + + '({}).toString.call(undefined) == "[object Undefined]", '; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var toString = Object.prototype.toString; + +assertEq(toString.call(null), "[object Null]"); +assertEq(toString.call(undefined), "[object Undefined]"); + +assertEq(toString.call(true), "[object Boolean]"); +assertEq(toString.call(false), "[object Boolean]"); + +assertEq(toString.call(0), "[object Number]"); +assertEq(toString.call(-0), "[object Number]"); +assertEq(toString.call(1), "[object Number]"); +assertEq(toString.call(-1), "[object Number]"); +assertEq(toString.call(NaN), "[object Number]"); +assertEq(toString.call(Infinity), "[object Number]"); +assertEq(toString.call(-Infinity), "[object Number]"); + +assertEq(toString.call("foopy"), "[object String]"); + +assertEq(toString.call({}), "[object Object]"); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/preventExtensions-idempotent.js b/js/src/tests/ecma_5/Object/preventExtensions-idempotent.js new file mode 100644 index 000000000..c0b16d890 --- /dev/null +++ b/js/src/tests/ecma_5/Object/preventExtensions-idempotent.js @@ -0,0 +1,30 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +var gTestfile = 'preventExtensions-idempotent.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 599459; +var summary = 'Object.preventExtensions should be idempotent'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var obj = {}; +assertEq(Object.preventExtensions(obj), obj); +assertEq(Object.isExtensible(obj), false); +assertEq(Object.preventExtensions(obj), obj); +assertEq(Object.isExtensible(obj), false); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/propertyIsEnumerable.js b/js/src/tests/ecma_5/Object/propertyIsEnumerable.js new file mode 100644 index 000000000..e9b09d0bf --- /dev/null +++ b/js/src/tests/ecma_5/Object/propertyIsEnumerable.js @@ -0,0 +1,199 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'propertyIsEnumerable.js'; +var BUGNUMBER = 619283; +var summary = "Object.prototype.propertyIsEnumerable"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function expectThrowError(errorCtor, fun) +{ + try + { + var r = fun(); + throw "didn't throw TypeError, returned " + r; + } + catch (e) + { + assertEq(e instanceof errorCtor, true, + "didn't throw " + errorCtor.prototype.name + ", got: " + e); + } +} + +function expectThrowTypeError(fun) +{ + expectThrowError(TypeError, fun); +} + +function withToString(fun) +{ + return { toString: fun }; +} + +function withValueOf(fun) +{ + return { toString: null, valueOf: fun }; +} + +var propertyIsEnumerable = Object.prototype.propertyIsEnumerable; + +/* + * 1. Let P be ToString(V). + */ +expectThrowError(ReferenceError, function() +{ + propertyIsEnumerable(withToString(function() { fahslkjdfhlkjdsl; })); +}); +expectThrowError(ReferenceError, function() +{ + propertyIsEnumerable.call(null, withToString(function() { fahslkjdfhlkjdsl; })); +}); +expectThrowError(ReferenceError, function() +{ + propertyIsEnumerable.call(undefined, withToString(function() { fahslkjdfhlkjdsl; })); +}); + +expectThrowError(ReferenceError, function() +{ + propertyIsEnumerable(withValueOf(function() { fahslkjdfhlkjdsl; })); +}); +expectThrowError(ReferenceError, function() +{ + propertyIsEnumerable.call(null, withValueOf(function() { fahslkjdfhlkjdsl; })); +}); +expectThrowError(ReferenceError, function() +{ + propertyIsEnumerable.call(undefined, withValueOf(function() { fahslkjdfhlkjdsl; })); +}); + +expectThrowError(SyntaxError, function() +{ + propertyIsEnumerable(withToString(function() { eval("}"); })); +}); +expectThrowError(SyntaxError, function() +{ + propertyIsEnumerable.call(null, withToString(function() { eval("}"); })); +}); +expectThrowError(SyntaxError, function() +{ + propertyIsEnumerable.call(undefined, withToString(function() { eval("}"); })); +}); + +expectThrowError(SyntaxError, function() +{ + propertyIsEnumerable(withValueOf(function() { eval("}"); })); +}); +expectThrowError(SyntaxError, function() +{ + propertyIsEnumerable.call(null, withValueOf(function() { eval("}"); })); +}); +expectThrowError(SyntaxError, function() +{ + propertyIsEnumerable.call(undefined, withValueOf(function() { eval("}"); })); +}); + +expectThrowError(RangeError, function() +{ + propertyIsEnumerable(withToString(function() { [].length = -1; })); +}); +expectThrowError(RangeError, function() +{ + propertyIsEnumerable.call(null, withToString(function() { [].length = -1; })); +}); +expectThrowError(RangeError, function() +{ + propertyIsEnumerable.call(undefined, withToString(function() { [].length = -1; })); +}); + +expectThrowError(RangeError, function() +{ + propertyIsEnumerable(withValueOf(function() { [].length = -1; })); +}); +expectThrowError(RangeError, function() +{ + propertyIsEnumerable.call(null, withValueOf(function() { [].length = -1; })); +}); +expectThrowError(RangeError, function() +{ + propertyIsEnumerable.call(undefined, withValueOf(function() { [].length = -1; })); +}); + +expectThrowError(RangeError, function() +{ + propertyIsEnumerable(withToString(function() { [].length = 0.7; })); +}); +expectThrowError(RangeError, function() +{ + propertyIsEnumerable.call(null, withToString(function() { [].length = 0.7; })); +}); +expectThrowError(RangeError, function() +{ + propertyIsEnumerable.call(undefined, withToString(function() { [].length = 0.7; })); +}); + +expectThrowError(RangeError, function() +{ + propertyIsEnumerable(withValueOf(function() { [].length = 0.7; })); +}); +expectThrowError(RangeError, function() +{ + propertyIsEnumerable.call(null, withValueOf(function() { [].length = 0.7; })); +}); +expectThrowError(RangeError, function() +{ + propertyIsEnumerable.call(undefined, withValueOf(function() { [].length = 0.7; })); +}); + +/* + * 2. Let O be the result of calling ToObject passing the this value as the + * argument. + */ +expectThrowTypeError(function() { propertyIsEnumerable("s"); }); +expectThrowTypeError(function() { propertyIsEnumerable.call(null, "s"); }); +expectThrowTypeError(function() { propertyIsEnumerable.call(undefined, "s"); }); +expectThrowTypeError(function() { propertyIsEnumerable(true); }); +expectThrowTypeError(function() { propertyIsEnumerable.call(null, true); }); +expectThrowTypeError(function() { propertyIsEnumerable.call(undefined, true); }); +expectThrowTypeError(function() { propertyIsEnumerable(NaN); }); +expectThrowTypeError(function() { propertyIsEnumerable.call(null, NaN); }); +expectThrowTypeError(function() { propertyIsEnumerable.call(undefined, NaN); }); + +expectThrowTypeError(function() { propertyIsEnumerable({}); }); +expectThrowTypeError(function() { propertyIsEnumerable.call(null, {}); }); +expectThrowTypeError(function() { propertyIsEnumerable.call(undefined, {}); }); + +/* + * 3. Let desc be the result of calling the [[GetOwnProperty]] internal method + * of O passing P as the argument. + * 4. If desc is undefined, return false. + */ +assertEq(propertyIsEnumerable.call({}, "valueOf"), false); +assertEq(propertyIsEnumerable.call({}, "toString"), false); +assertEq(propertyIsEnumerable.call("s", 1), false); +assertEq(propertyIsEnumerable.call({}, "dsfiodjfs"), false); +assertEq(propertyIsEnumerable.call(true, "toString"), false); +assertEq(propertyIsEnumerable.call({}, "__proto__"), false); + +assertEq(propertyIsEnumerable.call(Object, "getOwnPropertyDescriptor"), false); +assertEq(propertyIsEnumerable.call(this, "expectThrowTypeError"), true); +assertEq(propertyIsEnumerable.call("s", "length"), false); +assertEq(propertyIsEnumerable.call("s", 0), true); +assertEq(propertyIsEnumerable.call(Number, "MAX_VALUE"), false); +assertEq(propertyIsEnumerable.call({ x: 9 }, "x"), true); +assertEq(propertyIsEnumerable.call(function() { }, "prototype"), false); +assertEq(propertyIsEnumerable.call(function() { }, "length"), false); +assertEq(propertyIsEnumerable.call(function() { "use strict"; }, "caller"), false); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/proto-property-change-writability-set.js b/js/src/tests/ecma_5/Object/proto-property-change-writability-set.js new file mode 100644 index 000000000..d81f844e9 --- /dev/null +++ b/js/src/tests/ecma_5/Object/proto-property-change-writability-set.js @@ -0,0 +1,56 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributors: + * Gary Kwong + * Jeff Walden + * Jason Orendorff + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 713944; +var summary = + "Don't assert anything about a shape from the property cache until it's " + + "known the cache entry matches"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var accDesc = { set: function() {} }; +var dataDesc = { value: 3 }; + +function f() +{ + propertyIsEnumerable = {}; +} +function g() +{ + propertyIsEnumerable = {}; +} + +Object.defineProperty(Object.prototype, "propertyIsEnumerable", accDesc); +f(); +Object.defineProperty(Object.prototype, "propertyIsEnumerable", dataDesc); +assertEq(propertyIsEnumerable, 3); +f(); +assertEq(propertyIsEnumerable, 3); +g(); +assertEq(propertyIsEnumerable, 3); + + + +var a = { p1: 1, p2: 2 }; +var b = Object.create(a); +Object.defineProperty(a, "p1", {set: function () {}}); +for (var i = 0; i < 2; i++) +{ + b.p1 = {}; + Object.defineProperty(a, "p1", {value: 3}); +} +assertEq(b.p1, 3); +assertEq(a.p1, 3); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Object/shell.js b/js/src/tests/ecma_5/Object/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Object/shell.js diff --git a/js/src/tests/ecma_5/Object/toLocaleString.js b/js/src/tests/ecma_5/Object/toLocaleString.js new file mode 100644 index 000000000..e42c4a09e --- /dev/null +++ b/js/src/tests/ecma_5/Object/toLocaleString.js @@ -0,0 +1,102 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'toLocaleString.js'; +var BUGNUMBER = 653789; +var summary = "Object.prototype.toLocaleString"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function expectThrowTypeError(fun) +{ + try + { + var r = fun(); + throw "didn't throw TypeError, returned " + r; + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "didn't throw TypeError, got: " + e); + } +} + +var toLocaleString = Object.prototype.toLocaleString; + +/* + * 1. Let O be the result of calling ToObject passing the this value as the + * argument. + */ +expectThrowTypeError(function() { toLocaleString.call(null); }); +expectThrowTypeError(function() { toLocaleString.call(undefined); }); +expectThrowTypeError(function() { toLocaleString.apply(null); }); +expectThrowTypeError(function() { toLocaleString.apply(undefined); }); + + +/* + * 2. Let toString be the result of calling the [[Get]] internal method of O + * passing "toString" as the argument. + */ +try +{ + toLocaleString.call({ get toString() { throw 17; } }); + throw new Error("didn't throw"); +} +catch (e) +{ + assertEq(e, 17); +} + + +/* 3. If IsCallable(toString) is false, throw a TypeError exception. */ +expectThrowTypeError(function() { toLocaleString.call({ toString: 12 }); }); +expectThrowTypeError(function() { toLocaleString.call({ toString: 0.3423423452352e9 }); }); +expectThrowTypeError(function() { toLocaleString.call({ toString: undefined }); }); +expectThrowTypeError(function() { toLocaleString.call({ toString: false }); }); +expectThrowTypeError(function() { toLocaleString.call({ toString: [] }); }); +expectThrowTypeError(function() { toLocaleString.call({ toString: {} }); }); +expectThrowTypeError(function() { toLocaleString.call({ toString: new String }); }); +expectThrowTypeError(function() { toLocaleString.call({ toString: new Number(7.7) }); }); +expectThrowTypeError(function() { toLocaleString.call({ toString: new Boolean(true) }); }); +expectThrowTypeError(function() { toLocaleString.call({ toString: JSON }); }); + +expectThrowTypeError(function() { toLocaleString.call({ valueOf: 0, toString: 12 }); }); +expectThrowTypeError(function() { toLocaleString.call({ valueOf: 0, toString: 0.3423423452352e9 }); }); +expectThrowTypeError(function() { toLocaleString.call({ valueOf: 0, toString: undefined }); }); +expectThrowTypeError(function() { toLocaleString.call({ valueOf: 0, toString: false }); }); +expectThrowTypeError(function() { toLocaleString.call({ valueOf: 0, toString: [] }); }); +expectThrowTypeError(function() { toLocaleString.call({ valueOf: 0, toString: {} }); }); +expectThrowTypeError(function() { toLocaleString.call({ valueOf: 0, toString: new String }); }); +expectThrowTypeError(function() { toLocaleString.call({ valueOf: 0, toString: new Number(7.7) }); }); +expectThrowTypeError(function() { toLocaleString.call({ valueOf: 0, toString: new Boolean(true) }); }); +expectThrowTypeError(function() { toLocaleString.call({ valueOf: 0, toString: JSON }); }); + + +/* + * 4. Return the result of calling the [[Call]] internal method of toString + * passing O as the this value and no arguments. + */ +assertEq(toLocaleString.call({ get toString() { return function() { return "foo"; } } }), + "foo"); + +var obj = { toString: function() { assertEq(this, obj); assertEq(arguments.length, 0); return 5; } }; +assertEq(toLocaleString.call(obj), 5); + +assertEq(toLocaleString.call({ toString: function() { return obj; } }), obj); + +assertEq(toLocaleString.call({ toString: function() { return obj; }, + valueOf: function() { return "abc"; } }), + obj); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/Object/vacuous-accessor-unqualified-name.js b/js/src/tests/ecma_5/Object/vacuous-accessor-unqualified-name.js new file mode 100644 index 000000000..768b1050b --- /dev/null +++ b/js/src/tests/ecma_5/Object/vacuous-accessor-unqualified-name.js @@ -0,0 +1,26 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'vacuous-accessor-unqualified-name.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 560216; +var summary = + "Using a name referring to a { get: undefined, set: undefined } descriptor " + + "shouldn't assert"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +Object.defineProperty(this, "x", { set: undefined, configurable: true }); +x; + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/README b/js/src/tests/ecma_5/README new file mode 100644 index 000000000..e7c87e9ca --- /dev/null +++ b/js/src/tests/ecma_5/README @@ -0,0 +1 @@ +ECMA 5 diff --git a/js/src/tests/ecma_5/RegExp/15.10.5-01.js b/js/src/tests/ecma_5/RegExp/15.10.5-01.js new file mode 100644 index 000000000..2f8429218 --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/15.10.5-01.js @@ -0,0 +1,21 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 614603; +var summary = "RegExp.length"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq(RegExp.length, 2); +assertEq(/a/.constructor.length, 2); + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/RegExp/15.10.7.5-01.js b/js/src/tests/ecma_5/RegExp/15.10.7.5-01.js new file mode 100644 index 000000000..ab9d071a7 --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/15.10.7.5-01.js @@ -0,0 +1,71 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 465199; +var summary = "RegExp lastIndex property set should not coerce type to number"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var called = false; +var o = { valueOf: function() { called = true; return 1; } }; +var r = /a/g; +var desc, m; + +assertEq(r.lastIndex, 0); + +desc = Object.getOwnPropertyDescriptor(r, "lastIndex"); +assertEq(desc.enumerable, false); +assertEq(desc.configurable, false); +assertEq(desc.value, 0); +assertEq(desc.writable, true); + +r.lastIndex = o; + +assertEq(r.lastIndex, o); + +desc = Object.getOwnPropertyDescriptor(r, "lastIndex"); +assertEq(desc.enumerable, false); +assertEq(desc.configurable, false); +assertEq(desc.value, o); +assertEq(desc.writable, true); + +assertEq(called, false); +assertEq(r.exec("aaaa").length, 1); +assertEq(called, true); +assertEq(r.lastIndex, 2); + +desc = Object.getOwnPropertyDescriptor(r, "lastIndex"); +assertEq(desc.enumerable, false); +assertEq(desc.configurable, false); +assertEq(desc.value, 2); +assertEq(desc.writable, true); + + +r.lastIndex = -0.2; +assertEq(r.lastIndex, -0.2); + +m = r.exec("aaaa"); +assertEq(Array.isArray(m), true); +assertEq(m.length, 1); +assertEq(m[0], "a"); +assertEq(r.lastIndex, 1); + +m = r.exec("aaaa"); +assertEq(Array.isArray(m), true); +assertEq(m.length, 1); +assertEq(m[0], "a"); +assertEq(r.lastIndex, 2); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/RegExp/7.8.5-01.js b/js/src/tests/ecma_5/RegExp/7.8.5-01.js new file mode 100644 index 000000000..be09bbc14 --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/7.8.5-01.js @@ -0,0 +1,35 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 615070; +var summary = "Line terminator after backslash is invalid in regexp literals"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var regexps = ["/\\\u000A/", "/\\\u000D/", "/\\\u2028/", "/\\\u2029/", + "/ab\\\n/", "/ab\\\r/", "/ab\\\u2028/", "/ab\\\u2029/", + "/ab[c\\\n]/", "/a[bc\\", "/\\"]; + +for(var i=0; i<regexps.length; i++) { + var src = regexps[i]; + try { + x = eval(src).source; + } catch(e) { + assertEq(e.constructor, SyntaxError); + continue; + } + assertEq(0, 1); +} + +/**************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/RegExp/browser.js b/js/src/tests/ecma_5/RegExp/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/browser.js diff --git a/js/src/tests/ecma_5/RegExp/empty-lookahead.js b/js/src/tests/ecma_5/RegExp/empty-lookahead.js new file mode 100644 index 000000000..6e2f709e8 --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/empty-lookahead.js @@ -0,0 +1,8 @@ +//bug 473941 +var regexp; + +regexp = /(?=)/; +assertEq(regexp.test('test'), true); + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/RegExp/exec-lastIndex-ToInteger.js b/js/src/tests/ecma_5/RegExp/exec-lastIndex-ToInteger.js new file mode 100644 index 000000000..4505362d8 --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/exec-lastIndex-ToInteger.js @@ -0,0 +1,36 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * + * Author: Geoffrey Sneddon <geoffers+mozilla@gmail.com> + */ + +var BUGNUMBER = 646490; +var summary = + "RegExp.prototype.exec doesn't get the lastIndex and ToInteger() it for " + + "non-global regular expressions when it should"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var re = /./, called = 0; +re.lastIndex = {valueOf: function() { called++; return 0; }}; +re.exec("."); +re.lastIndex = {toString: function() { called++; return "0"; }}; +re.exec("."); +re.lastIndex = { + valueOf: function() { called++; return 0; }, + toString: function() { called--; } +}; +re.exec("."); +assertEq(called, 3, "FAIL, got " + called); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/RegExp/exec.js b/js/src/tests/ecma_5/RegExp/exec.js new file mode 100644 index 000000000..411f348d9 --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/exec.js @@ -0,0 +1,240 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 646490; +var summary = + "RegExp.prototype.exec doesn't get the lastIndex and ToInteger() it for " + + "non-global regular expressions when it should"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function expectThrowTypeError(fun) +{ + try + { + var r = fun(); + throw new Error("didn't throw TypeError, returned " + r); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "didn't throw TypeError, got: " + e); + } +} + +function checkExec(description, regex, args, obj) +{ + var lastIndex = obj.lastIndex; + var index = obj.index; + var input = obj.input; + var indexArray = obj.indexArray; + + var res = regex.exec.apply(regex, args); + + assertEq(Array.isArray(res), true, description + ": not an array"); + assertEq(regex.lastIndex, lastIndex, description + ": wrong lastIndex"); + assertEq(res.index, index, description + ": wrong index"); + assertEq(res.input, input, description + ": wrong input"); + assertEq(res.length, indexArray.length, description + ": wrong length"); + for (var i = 0, sz = indexArray.length; i < sz; i++) + assertEq(res[i], indexArray[i], description + " " + i + ": wrong index value"); +} + +var exec = RegExp.prototype.exec; +var r, res, called, obj; + +/* 1. Let R be this RegExp object. */ +expectThrowTypeError(function() { exec.call(null); }); +expectThrowTypeError(function() { exec.call(""); }); +expectThrowTypeError(function() { exec.call(5); }); +expectThrowTypeError(function() { exec.call({}); }); +expectThrowTypeError(function() { exec.call([]); }); +expectThrowTypeError(function() { exec.call(); }); +expectThrowTypeError(function() { exec.call(true); }); +expectThrowTypeError(function() { exec.call(Object.create(RegExp.prototype)); }); +expectThrowTypeError(function() { exec.call(Object.create(/a/)); }); + + +/* 2. Let S be the value of ToString(string). */ +called = false; +r = /a/; +assertEq(r.lastIndex, 0); + +checkExec("/a/", r, [{ toString: function() { called = true; return 'ba'; } }], + { lastIndex: 0, + index: 1, + input: "ba", + indexArray: ["a"] }); +assertEq(called, true); + +called = false; +try +{ + res = r.exec({ toString: null, valueOf: function() { called = true; throw 17; } }); + throw new Error("didn't throw"); +} +catch (e) +{ + assertEq(e, 17); +} + +assertEq(called, true); + +called = false; +obj = r.lastIndex = { valueOf: function() { assertEq(true, false, "shouldn't have been called"); } }; +try +{ + res = r.exec({ toString: null, valueOf: function() { assertEq(called, false); called = true; throw 17; } }); + throw new Error("didn't throw"); +} +catch (e) +{ + assertEq(e, 17); +} + +assertEq(called, true); +assertEq(r.lastIndex, obj); + +// We don't test lack of an argument because of RegExp statics non-standard +// behaviors overriding what really should happen for lack of an argument, sigh. + + +/* + * 3. Let length be the length of S. + * 4. Let lastIndex be the result of calling the [[Get]] internal method of R with argument "lastIndex". + * 5. Let i be the value of ToInteger(lastIndex). + */ +r = /b/; +r.lastIndex = { valueOf: {}, toString: {} }; +expectThrowTypeError(function() { r.exec("foopy"); }); +r.lastIndex = { valueOf: function() { throw new TypeError(); } }; +expectThrowTypeError(function() { r.exec("foopy"); }); + + +/* + * 6. Let global be the result of calling the [[Get]] internal method of R with argument "global". + * 7. If global is false, then let i = 0. + */ +obj = { valueOf: function() { return 5; } }; +r = /abc/; +r.lastIndex = obj; + +checkExec("/abc/ take one", r, ["abc-------abc"], + { lastIndex: obj, + index: 0, + input: "abc-------abc", + indexArray: ["abc"] }); + +checkExec("/abc/ take two", r, ["abc-------abc"], + { lastIndex: obj, + index: 0, + input: "abc-------abc", + indexArray: ["abc"] }); + + +/* + * 8. Let matchSucceeded be false. + * 9. Repeat, while matchSucceeded is false + * a. If i < 0 or i > length, then + * i. Call the [[Put]] internal method of R with arguments "lastIndex", 0, and true. + * ii. Return null. + * b. Call the [[Match]] internal method of R with arguments S and i. + * c. If [[Match]] returned failure, then + * i. Let i = i+1. + * d. else + * i. Let r be the State result of the call to [[Match]]. + * ii. Set matchSucceeded to true. + * e. Let i = i+1. + */ +r = /abc()?/; +r.lastIndex = -5; +checkExec("/abc()?/ with lastIndex -5", r, ["abc-------abc"], + { lastIndex: -5, + index: 0, + input: "abc-------abc", + indexArray: ["abc", undefined] }); + + +r = /abc/; +r.lastIndex = -17; +res = r.exec("cdefg"); +assertEq(res, null); +assertEq(r.lastIndex, 0); + +r = /abc/g; +r.lastIndex = -42; +res = r.exec("cdefg"); +assertEq(res, null); +assertEq(r.lastIndex, 0); + + +/* + * 10. Let e be r's endIndex value. + * 11. If global is true, + * a. Call the [[Put]] internal method of R with arguments "lastIndex", e, and true. + */ +r = /abc/g; +r.lastIndex = 17; +assertEq(r.exec("sdfs"), null); +assertEq(r.lastIndex, 0); + +r = /abc/g; +r.lastIndex = 2; +checkExec("/abc/g", r, ["00abc"], + { lastIndex: 5, + index: 2, + input: "00abc", + indexArray: ["abc"] }); + + + +r = /a(b)c/g; +r.lastIndex = 2; +checkExec("/a(b)c/g take two", r, ["00abcd"], + { lastIndex: 5, + index: 2, + input: "00abcd", + indexArray: ["abc", "b"] }); + + +/* + * 12. Let n be the length of r's captures array. (This is the same value as + * 15.10.2.1's NCapturingParens.) + * 13. Let A be a new array created as if by the expression new Array() where + * Array is the standard built-in constructor with that name. + * 14. Let matchIndex be the position of the matched substring within the + * complete String S. + * 15. Call the [[DefineOwnProperty]] internal method of A with arguments + * "index", Property Descriptor {[[Value]]: matchIndex, [[Writable]: true, + * [[Enumerable]]: true, [[Configurable]]: true}, and true. + * 16. Call the [[DefineOwnProperty]] internal method of A with arguments + * "input", Property Descriptor {[[Value]]: S, [[Writable]: true, + * [[Enumerable]]: true, [[Configurable]]: true}, and true. + * 17. Call the [[DefineOwnProperty]] internal method of A with arguments + * "length", Property Descriptor {[[Value]]: n + 1}, and true. + * 18. Let matchedSubstr be the matched substring (i.e. the portion of S + * between offset i inclusive and offset e exclusive). + * 19. Call the [[DefineOwnProperty]] internal method of A with arguments "0", + * Property Descriptor {[[Value]]: matchedSubstr, [[Writable]: true, + * [[Enumerable]]: true, [[Configurable]]: true}, and true. + * 20. For each integer i such that I > 0 and I ≤ n + * a. Let captureI be i th element of r's captures array. + * b. Call the [[DefineOwnProperty]] internal method of A with arguments + * ToString(i), Property Descriptor {[[Value]]: captureI, [[Writable]: + * true, [[Enumerable]]: true, [[Configurable]]: true}, and true. + * 21. Return A. + */ +// throughout, above (and in other tests) + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/RegExp/instance-property-storage-introspection.js b/js/src/tests/ecma_5/RegExp/instance-property-storage-introspection.js new file mode 100644 index 000000000..1f7c7042f --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/instance-property-storage-introspection.js @@ -0,0 +1,131 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 640072; +var summary = + "Represent /a/.{lastIndex,global,source,multiline,sticky,ignoreCase} with " + + "plain old data properties"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function checkDataProperty(obj, p, expect, msg) +{ + var d = Object.getOwnPropertyDescriptor(obj, p); + + assertEq(d.value, expect.value, msg + ": bad value for " + p); + assertEq(d.writable, expect.writable, msg + ": bad writable for " + p); + assertEq(d.enumerable, expect.enumerable, msg + ": bad enumerable for " + p); + assertEq(d.configurable, expect.configurable, msg + ": bad configurable for " + p); + + // Try redefining the property using its initial values: these should all be + // silent no-ops. + Object.defineProperty(obj, p, { value: expect.value }); + Object.defineProperty(obj, p, { writable: expect.writable }); + Object.defineProperty(obj, p, { enumerable: expect.enumerable }); + Object.defineProperty(obj, p, { configurable: expect.configurable }); + + var d2 = Object.getOwnPropertyDescriptor(obj, p); + assertEq(d.value, d2.value, msg + ": value changed on redefinition of " + p + "?"); + assertEq(d.writable, d2.writable, msg + ": writable changed on redefinition of " + p + "?"); + assertEq(d.enumerable, d2.enumerable, msg + ": enumerable changed on redefinition of " + p + "?"); + assertEq(d.configurable, d2.configurable, msg + ": configurable changed on redefinition of " + p + "?"); +} + + +// Check a bunch of "empty" regular expressions first. + +var choices = [{ msg: "RegExp.prototype", + get: function() { return RegExp.prototype; } }, + { msg: "new RegExp()", + get: function() { return new RegExp(); } }, + { msg: "/(?:)/", + get: Function("return /(?:)/;") }]; + +function checkRegExp(r, msg, lastIndex) +{ + var expect; + + expect = { value: lastIndex, enumerable: false, configurable: false, writable: true }; + checkDataProperty(r, "lastIndex", expect, msg); +} + +checkRegExp(RegExp.prototype, "RegExp.prototype", 0); +checkRegExp(new RegExp(), "new RegExp()", 0); +checkRegExp(/(?:)/, "/(?:)/", 0); +checkRegExp(Function("return /(?:)/;")(), 'Function("return /(?:)/;")()', 0); + +for (var i = 0; i < choices.length; i++) +{ + var choice = choices[i]; + var msg = choice.msg; + var r = choice.get(); + + checkRegExp(r, msg, 0); +} + +// Now test less generic regular expressions + +checkRegExp(/a/gim, "/a/gim", 0); + +var r; + +do +{ + r = /abcd/mg; + checkRegExp(r, "/abcd/mg initially", 0); + r.exec("abcdefg"); + checkRegExp(r, "/abcd/mg step 1", 4); + r.exec("abcdabcd"); + checkRegExp(r, "/abcd/mg step 2", 8); + r.exec("abcdabcd"); + checkRegExp(r, "/abcd/mg end", 0); + + r = /cde/ig; + checkRegExp(r, "/cde/ig initially", 0); + var obj = r.lastIndex = { valueOf: function() { return 2; } }; + checkRegExp(r, "/cde/ig after lastIndex", obj); + r.exec("aaacdef"); + checkRegExp(r, "/cde/ig after exec", 6); + Object.defineProperty(r, "lastIndex", { value: 3 }); + checkRegExp(r, "/cde/ig after define 3", 3); + Object.defineProperty(r, "lastIndex", { value: obj }); + checkRegExp(r, "/cde/ig after lastIndex", obj); + + + // Tricky bits of testing: make sure that redefining lastIndex doesn't change + // the slot where the lastIndex property is initially stored, even if + // the redefinition also changes writability. + r = /a/g; + checkRegExp(r, "/a/g initially", 0); + Object.defineProperty(r, "lastIndex", { value: 2 }); + r.exec("aabbbba"); + checkRegExp(r, "/a/g after first exec", 7); + assertEq(r.lastIndex, 7); + r.lastIndex = 2; + checkRegExp(r, "/a/g after assign", 2); + r.exec("aabbbba"); + assertEq(r.lastIndex, 7); // check in reverse order + checkRegExp(r, "/a/g after second exec", 7); + + r = /c/g; + r.lastIndex = 2; + checkRegExp(r, "/c/g initially", 2); + Object.defineProperty(r, "lastIndex", { writable: false }); + assertEq(Object.getOwnPropertyDescriptor(r, "lastIndex").writable, false); + try { r.exec("aabbbba"); } catch (e) { /* swallow error if thrown */ } + assertEq(Object.getOwnPropertyDescriptor(r, "lastIndex").writable, false); +} +while (Math.random() > 17); // fake loop to discourage RegExp object caching + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/RegExp/regexp-space-character-class.js b/js/src/tests/ecma_5/RegExp/regexp-space-character-class.js new file mode 100644 index 000000000..19d79859c --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/regexp-space-character-class.js @@ -0,0 +1,45 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public +* License, v. 2.0. If a copy of the MPL was not distributed with this +* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +var gTestfile = 'regexp-space-character-class.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 514808; +var summary = 'Correct space character class in regexes'; +var actual = ''; +var expect = ''; + + +//----------------------------------------------------------------------------- +test(); +//----------------------------------------------------------------------------- + +function test() +{ +enterFunc ('test'); +printBugNumber(BUGNUMBER); +printStatus (summary); + +var spaces = [ "\u0009", "\u000b", "\u000c", "\u0020", "\u00a0", "\u1680", +"\u180e", "\u2000", "\u2001", "\u2002", "\u2003", "\u2004", +"\u2005", "\u2006", "\u2007", "\u2008", "\u2009", "\u200a", +"\u202f", "\u205f", "\u3000", "\ufeff" ]; +var line_terminators = [ "\u2028", "\u2029", "\u000a", "\u000d" ]; +var space_chars = [].concat(spaces, line_terminators); + +var non_space_chars = [ "\u200b", "\u200c", "\u200d" ]; + +var chars = [].concat(space_chars, non_space_chars); +var is_space = [].concat(space_chars.map(function(ch) { return true; }), +non_space_chars.map(function(ch) { return false; })); +var expect = is_space.join(','); + +var actual = chars.map(function(ch) { return /\s/.test(ch); }).join(','); +reportCompare(expect, actual, summary); + +var actual = chars.map(function(ch) { return /\s/.test(ch); }).join(','); +reportCompare(expect, actual, summary); + +exitFunc ('test'); +} diff --git a/js/src/tests/ecma_5/RegExp/regress-429241.js b/js/src/tests/ecma_5/RegExp/regress-429241.js new file mode 100644 index 000000000..a4b588fea --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/regress-429241.js @@ -0,0 +1,200 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +var gTestfile = 'regress-429241.js'; +var BUGNUMBER = 429241; +var summary = '\\x or \\u followed by too few hex digits'; +var r; + +reportCompare( + "x", + (r = /[\x]+/.exec("\\x\0")) && r[0], + "Section 1" +); + +reportCompare( + "xy", + (r = /[\xy]+/.exec("\\xy\0")) && r[0], + "Section 2" +); + +reportCompare( + "x0", + (r = /[\x0]+/.exec("\\x0\0")) && r[0], + "Section 3" +); + +reportCompare( + "x0y", + (r = /[\x0y]+/.exec("\\x0y\0")) && r[0], + "Section 4" +); + +reportCompare( + "\0", + (r = /[\x00]+/.exec("\\x\0")) && r[0], + "Section 5" +); + +reportCompare( + "0\0", + (r = /[\x000]+/.exec("0\0")) && r[0], + "Section 6" +); + +reportCompare( + "x", + (r = /^\x$/.exec("x")) && r[0], + "Section 7" +); + +reportCompare( + "xy", + (r = /^\xy$/.exec("xy")) && r[0], + "Section 8" +); + +reportCompare( + "x0", + (r = /^\x0$/.exec("x0")) && r[0], + "Section 9" +); + +reportCompare( + "x0y", + (r = /^\x0y$/.exec("x0y")) && r[0], + "Section 10" +); + +reportCompare( + null, + /^\x00$/.exec("\0" + "0"), + "Section 11" +); + +reportCompare( + "\0" + "0", + (r = /^\x000$/.exec("\0" + "0")) && r[0], + "Section 12" +); + +reportCompare( + "u", + (r = /[\u]+/.exec("\\u\0")) && r[0], + "Section 13" +); + +reportCompare( + "uy", + (r = /[\uy]+/.exec("\\uy\0")) && r[0], + "Section 14" +); + +reportCompare( + "u0", + (r = /[\u0]+/.exec("\\u0\0")) && r[0], + "Section 15" +); + +reportCompare( + "u0", + (r = /[\u00]+/.exec("\\u0\0")) && r[0], + "Section 16" +); + +reportCompare( + "u0", + (r = /[\u000]+/.exec("\\u0\0")) && r[0], + "Section 17" +); + +reportCompare( + "u0y", + (r = /[\u0y]+/.exec("\\u0y\0")) && r[0], + "Section 18" +); + +reportCompare( + "u0y", + (r = /[\u00y]+/.exec("\\u0y\0")) && r[0], + "Section 19" +); + +reportCompare( + "u0y", + (r = /[\u000y]+/.exec("\\u0y\0")) && r[0], + "Section 20" +); + +reportCompare( + "\0", + (r = /[\u0000]+/.exec("\\u\0")) && r[0], + "Section 21" +); + +reportCompare( + "0\0", + (r = /[\u00000]+/.exec("0\0")) && r[0], + "Section 22" +); + +reportCompare( + "u", + (r = /^\u$/.exec("u")) && r[0], + "Section 23" +); + +reportCompare( + "uy", + (r = /^\uy$/.exec("uy")) && r[0], + "Section 24" +); + +reportCompare( + "u0", + (r = /^\u0$/.exec("u0")) && r[0], + "Section 25" +); + +reportCompare( + "u00", + (r = /^\u00$/.exec("u00")) && r[0], + "Section 26" +); + +reportCompare( + "u000", + (r = /^\u000$/.exec("u000")) && r[0], + "Section 27" +); + +reportCompare( + "u0y", + (r = /^\u0y$/.exec("u0y")) && r[0], + "Section 28" +); + +reportCompare( + "u00y", + (r = /^\u00y$/.exec("u00y")) && r[0], + "Section 29" +); + +reportCompare( + "u000y", + (r = /^\u000y$/.exec("u000y")) && r[0], + "Section 30" +); + +reportCompare( + null, + /^\u0000$/.exec("\0" + "0"), + "Section 31" +); + +reportCompare( + "\0" + "0", + (r = /^\u00000$/.exec("\0" + "0")) && r[0], + "Section 32" +); diff --git a/js/src/tests/ecma_5/RegExp/regress-576828.js b/js/src/tests/ecma_5/RegExp/regress-576828.js new file mode 100644 index 000000000..45e97dc3b --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/regress-576828.js @@ -0,0 +1,8 @@ +var re = /(z\1){3}/; +var str = 'zzz'; +var actual = re.exec(str); +var expected = makeExpectedMatch(['zzz', 'z'], 0, str); +checkRegExpMatch(actual, expected); + +if (typeof reportCompare == 'function') + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/RegExp/regress-613820-1.js b/js/src/tests/ecma_5/RegExp/regress-613820-1.js new file mode 100644 index 000000000..e5e755b24 --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/regress-613820-1.js @@ -0,0 +1,9 @@ +/* Back reference is actually a forwards reference. */ +var re = /(\2(a)){2}/; +var str = 'aaa'; +var actual = re.exec(str); +var expected = makeExpectedMatch(['aa', 'a', 'a'], 0, str); +checkRegExpMatch(actual, expected); + +if (typeof reportCompare === 'function') + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/RegExp/regress-613820-2.js b/js/src/tests/ecma_5/RegExp/regress-613820-2.js new file mode 100644 index 000000000..5db7244ba --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/regress-613820-2.js @@ -0,0 +1,9 @@ +/* Resetting of inner capture groups across quantified capturing parens. */ +var re = /(?:(f)(o)(o)|(b)(a)(r))*/; +var str = 'foobar'; +var actual = re.exec(str); +var expected = makeExpectedMatch(['foobar', undefined, undefined, undefined, 'b', 'a', 'r'], 0, str); +checkRegExpMatch(actual, expected); + +if (typeof reportCompare === 'function') + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/RegExp/regress-613820-3.js b/js/src/tests/ecma_5/RegExp/regress-613820-3.js new file mode 100644 index 000000000..126e838ff --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/regress-613820-3.js @@ -0,0 +1,9 @@ +/* Capture group reset to undefined during second iteration, so backreference doesn't see prior result. */ +var re = /(?:^(a)|\1(a)|(ab)){2}/; +var str = 'aab'; +var actual = re.exec(str); +var expected = makeExpectedMatch(['aa', undefined, 'a', undefined], 0, str); +checkRegExpMatch(actual, expected); + +if (typeof reportCompare === 'function') + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/RegExp/regress-617935.js b/js/src/tests/ecma_5/RegExp/regress-617935.js new file mode 100644 index 000000000..3764d81b0 --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/regress-617935.js @@ -0,0 +1,42 @@ +// |reftest| skip-if(!xulRuntime.shell&&(Android||xulRuntime.OS=="WINNT")) silentfail +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * + * Author: Christian Holler <decoder@own-hero.net> + */ + +expectExitCode(0); +expectExitCode(5); + +/* Length of 32 */ +var foo = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; + +/* Make len(foo) 32768 */ +for (i = 0; i < 10; ++i) { + foo += foo; +} + +/* Add one "a" to cause overflow later */ +foo += "a"; + +var bar = "bbbbbbbbbbbbbbbb"; + +/* Make len(bar) 8192 */ +for (i = 0; i < 9; ++i) { + bar += bar; +} + +/* + * Resulting string should be + * len(foo) * len(bar) = (2**10 * 32 + 1) * 8192 = 268443648 + * which will be larger than the max string length (2**28, or 268435456). + */ +try { + foo.replace(/[a]/g, bar); +} catch (e) { + reportCompare(e instanceof InternalError, true, "Internal error due to overallocation is ok."); +} +reportCompare(true, true, "No crash occurred."); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/RegExp/shell.js b/js/src/tests/ecma_5/RegExp/shell.js new file mode 100644 index 000000000..0ce9f087d --- /dev/null +++ b/js/src/tests/ecma_5/RegExp/shell.js @@ -0,0 +1,21 @@ +function makeExpectedMatch(arr, index, input) { + var expectedMatch = { + index: index, + input: input, + length: arr.length, + }; + + for (var i = 0; i < arr.length; ++i) + expectedMatch[i] = arr[i]; + + return expectedMatch; +} + +function checkRegExpMatch(actual, expected) { + assertEq(actual.length, expected.length); + for (var i = 0; i < actual.length; ++i) + assertEq(actual[i], expected[i]); + + assertEq(actual.index, expected.index); + assertEq(actual.input, expected.input); +} diff --git a/js/src/tests/ecma_5/String/15.5.4.11-01.js b/js/src/tests/ecma_5/String/15.5.4.11-01.js new file mode 100644 index 000000000..2125cbf82 --- /dev/null +++ b/js/src/tests/ecma_5/String/15.5.4.11-01.js @@ -0,0 +1,66 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 587366; +var summary = "String.prototype.replace with non-regexp searchValue"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +/* + * Check that regexp statics are preserved across the whole test. + * If the engine is trying to cheat by turning stuff into regexps, + * we should catch it! + */ +/(a|(b)|c)+/.exec('abcabc'); +var before = { + "source" : RegExp.source, + "$`": RegExp.leftContext, + "$'": RegExp.rightContext, + "$&": RegExp.lastMatch, + "$1": RegExp.$1, + "$2": RegExp.$2 +}; + +var text = 'I once was lost but now am found.'; +var searchValue = 'found'; +var replaceValue; + +/* Lambda substitution. */ +replaceValue = function(matchStr, matchStart, textStr) { + assertEq(matchStr, searchValue); + assertEq(matchStart, 27); + assertEq(textStr, text); + return 'not watching that show anymore'; +} +var result = text.replace(searchValue, replaceValue); +assertEq(result, 'I once was lost but now am not watching that show anymore.'); + +/* Dollar substitution. */ +replaceValue = "...wait, where was I again? And where is all my $$$$$$? Oh right, $`$&$'" + + " But with no $$$$$$"; /* Note the dot is not replaced and trails the end. */ +result = text.replace(searchValue, replaceValue); +assertEq(result, 'I once was lost but now am ...wait, where was I again?' + + ' And where is all my $$$? Oh right, I once was lost but now am found.' + + ' But with no $$$.'); + +/* Missing capture group dollar substitution. */ +replaceValue = "$1$&$2$'$3"; +result = text.replace(searchValue, replaceValue); +assertEq(result, 'I once was lost but now am $1found$2.$3.'); + +/* Check RegExp statics haven't been mutated. */ +for (var ident in before) + assertEq(RegExp[ident], before[ident]); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/String/15.5.4.2.js b/js/src/tests/ecma_5/String/15.5.4.2.js new file mode 100644 index 000000000..46c7ccb69 --- /dev/null +++ b/js/src/tests/ecma_5/String/15.5.4.2.js @@ -0,0 +1,14 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(raisesException(TypeError)('String.prototype.toString.call(42)'), true); +assertEq(raisesException(TypeError)('String.prototype.toString.call(true)'), true); +assertEq(raisesException(TypeError)('String.prototype.toString.call({})'), true); +assertEq(raisesException(TypeError)('String.prototype.toString.call(null)'), true); +assertEq(raisesException(TypeError)('String.prototype.toString.call([])'), true); +assertEq(raisesException(TypeError)('String.prototype.toString.call(undefined)'), true); +assertEq(completesNormally('String.prototype.toString.call("")'), true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/String/15.5.4.7.js b/js/src/tests/ecma_5/String/15.5.4.7.js new file mode 100644 index 000000000..4303b797f --- /dev/null +++ b/js/src/tests/ecma_5/String/15.5.4.7.js @@ -0,0 +1,20 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 612838; +var summary = "String.prototype.indexOf with empty searchString"; + +print(BUGNUMBER + ": " + summary); + +assertEq("123".indexOf("", -1), 0); +assertEq("123".indexOf("", 0), 0); +assertEq("123".indexOf("", 1), 1); +assertEq("123".indexOf("", 3), 3); +assertEq("123".indexOf("", 4), 3); +assertEq("123".indexOf("", 12345), 3); + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/String/browser.js b/js/src/tests/ecma_5/String/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/String/browser.js diff --git a/js/src/tests/ecma_5/String/defaultvalue.js b/js/src/tests/ecma_5/String/defaultvalue.js new file mode 100644 index 000000000..50b4fe00d --- /dev/null +++ b/js/src/tests/ecma_5/String/defaultvalue.js @@ -0,0 +1,169 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 645464; +var summary = + "[[DefaultValue]] behavior wrong for String with overridden valueOf/toString"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// equality + +var s = new String("c"); +assertEq(s == "c", true); + +var s2 = new String(); +s2.valueOf = function() { return "foo"; }; +assertEq(s2 == "foo", true); + +var s3 = new String(); +s3.toString = function() { return "bar"; }; +assertEq(s3 == "", true); + +function testEquality() +{ + var s = new String("c"); + assertEq(s == "c", true); + + var s2 = new String(); + s2.valueOf = function() { return "foo"; }; + assertEq(s2 == "foo", true); + + var s3 = new String(); + s3.toString = function() { return "bar"; }; + assertEq(s3 == "", true); +} +testEquality(); + + +// addition of String to string + +var s = new String(); +assertEq(s + "", ""); + +var s2 = new String(); +s2.toString = function() { return "bar"; }; +assertEq(s2 + "", ""); + +var s3 = new String(); +s3.valueOf = function() { return "baz"; }; +assertEq(s3 + "", "baz"); + +function testStringAddition() +{ + var s = new String(); + assertEq(s + "", ""); + + var s2 = new String(); + s2.toString = function() { return "bar"; }; + assertEq(s2 + "", ""); + + var s3 = new String(); + s3.valueOf = function() { return "baz"; }; + assertEq(s3 + "", "baz"); +} +testStringAddition(); + + +// addition of String to String + +var s = new String(); +assertEq(s + s, ""); + +var s2 = new String(); +s2.toString = function() { return "baz"; }; +assertEq(s2 + s2, ""); + +var s3 = new String(); +s3.valueOf = function() { return "quux"; }; +assertEq(s3 + s3, "quuxquux"); + +function testNonStringAddition() +{ + var s = new String(); + assertEq(s + s, ""); + + var s2 = new String(); + s2.toString = function() { return "baz"; }; + assertEq(s2 + s2, ""); + + var s3 = new String(); + s3.valueOf = function() { return "quux"; }; + assertEq(s3 + s3, "quuxquux"); +} +testNonStringAddition(); + + +// String as bracketed property name + +var obj = { primitive: 17, valueOf: 42, toString: 8675309 }; + +var s = new String("primitive"); +assertEq(obj[s], 17); + +var s2 = new String("primitive"); +s2.valueOf = function() { return "valueOf"; } +assertEq(obj[s2], 17); + +var s3 = new String("primitive"); +s3.toString = function() { return "toString"; }; +assertEq(obj[s3], 8675309); + +function testPropertyNameToString() +{ + var obj = { primitive: 17, valueOf: 42, toString: 8675309 }; + + var s = new String("primitive"); + assertEq(obj[s], 17); + + var s2 = new String("primitive"); + s2.valueOf = function() { return "valueOf"; } + assertEq(obj[s2], 17); + + var s3 = new String("primitive"); + s3.toString = function() { return "toString"; }; + assertEq(obj[s3], 8675309); +} +testPropertyNameToString(); + + +// String as property name with |in| operator + +var s = new String(); +assertEq(s in { "": 5 }, true); + +var s2 = new String(); +s.toString = function() { return "baz"; }; +assertEq(s in { baz: 42 }, true); + +var s3 = new String(); +s3.valueOf = function() { return "quux"; }; +assertEq(s3 in { "": 17 }, true); + +function testInOperatorName() +{ + var s = new String(); + assertEq(s in { "": 5 }, true); + + var s2 = new String(); + s.toString = function() { return "baz"; }; + assertEq(s in { baz: 42 }, true); + + var s3 = new String(); + s3.valueOf = function() { return "quux"; }; + assertEq(s3 in { "": 17 }, true); +} +testInOperatorName(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/String/match-defines-match-elements.js b/js/src/tests/ecma_5/String/match-defines-match-elements.js new file mode 100644 index 000000000..e1a38e30c --- /dev/null +++ b/js/src/tests/ecma_5/String/match-defines-match-elements.js @@ -0,0 +1,47 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 677820; +var summary = + "String.prototype.match must define matches on the returned array, not set " + + "them"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var called = false; +function setterFunction(v) { called = true; } +function getterFunction(v) { return "getter"; } + +Object.defineProperty(Array.prototype, 1, + { get: getterFunction, set: setterFunction }); + +assertEq(called, false); +var matches = "abcdef".match(/./g); +assertEq(called, false); +assertEq(matches.length, 6); +assertEq(matches[0], "a"); +assertEq(matches[1], "b"); +assertEq(matches[2], "c"); +assertEq(matches[3], "d"); +assertEq(matches[4], "e"); +assertEq(matches[5], "f"); + +var desc = Object.getOwnPropertyDescriptor(Array.prototype, 1); +assertEq(desc.get, getterFunction); +assertEq(desc.set, setterFunction); +assertEq(desc.enumerable, false); +assertEq(desc.configurable, false); +assertEq([][1], "getter"); + +assertEq(called, false); + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/String/match-forward-lookahead.js b/js/src/tests/ecma_5/String/match-forward-lookahead.js new file mode 100644 index 000000000..6097b6604 --- /dev/null +++ b/js/src/tests/ecma_5/String/match-forward-lookahead.js @@ -0,0 +1,27 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 501739; +var summary = + "String.prototype.match behavior with zero-length matches involving " + + "forward lookahead"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var r = /(?=x)/g; + +var res = "aaaaaaaaaxaaaaaaaaax".match(r); +assertEq(res.length, 2); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/String/match-throws-nonwritable-lastIndex-global.js b/js/src/tests/ecma_5/String/match-throws-nonwritable-lastIndex-global.js new file mode 100644 index 000000000..b36916d4c --- /dev/null +++ b/js/src/tests/ecma_5/String/match-throws-nonwritable-lastIndex-global.js @@ -0,0 +1,88 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 501739; +var summary = + "String.prototype.match should throw when called with a global RegExp " + + "whose .lastIndex is non-writable"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var s = '0x2x4x6x8'; + +// First time with .lastIndex === 0 + +var p1 = /x/g; +Object.defineProperty(p1, "lastIndex", { writable: false }); + +try +{ + s.match(p1); + throw "didn't throw"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "should have thrown a TypeError, instead got: " + e); +} + +// Second time with .lastIndex !== 0 + +var p2 = /x/g; +Object.defineProperty(p2, "lastIndex", { writable: false, value: 3 }); + +try +{ + s.match(p2); + throw "didn't throw"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "should have thrown a TypeError, instead got: " + e); +} + +// Third time with .lastIndex === 0, no matches + +var p3 = /q/g; +Object.defineProperty(p3, "lastIndex", { writable: false }); + +try +{ + s.match(p3); + throw "didn't throw"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "should have thrown a TypeError, instead got: " + e); +} + +// Fourth time with .lastIndex !== 0, no matches + +var p4 = /q/g; +Object.defineProperty(p4, "lastIndex", { writable: false, value: 3 }); + +try +{ + s.match(p4); + throw "didn't throw"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "should have thrown a TypeError, instead got: " + e); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/String/match-updates-global-lastIndex.js b/js/src/tests/ecma_5/String/match-updates-global-lastIndex.js new file mode 100644 index 000000000..cc18219ac --- /dev/null +++ b/js/src/tests/ecma_5/String/match-updates-global-lastIndex.js @@ -0,0 +1,31 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 501739; +var summary = + "String.prototype.match should zero the .lastIndex when called with a " + + "global RegExp"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var s = '0x2x4x6x8'; +var p = /x/g; +p.lastIndex = 3; + +var arr = s.match(p); +assertEq(arr.length, 4); +arr.forEach(function(v) { assertEq(v, "x"); }); +assertEq(p.lastIndex, 0); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/String/replace-math.js b/js/src/tests/ecma_5/String/replace-math.js new file mode 100644 index 000000000..bfe3ec028 --- /dev/null +++ b/js/src/tests/ecma_5/String/replace-math.js @@ -0,0 +1,38 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 805121; +var summary = "Be more careful with string math to avoid wrong results"; + +print(BUGNUMBER + ": " + summary); + +/******************************************************************************/ + +function puff(x, n) +{ + while(x.length < n) + x += x; + return x.substring(0, n); +} + +var x = puff("1", 1 << 20); +var rep = puff("$1", 1 << 16); + +try +{ + var y = x.replace(/(.+)/g, rep); + assertEq(y.length, Math.pow(2, 36)); +} +catch (e) +{ + // OOM also acceptable +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/String/replace-throws-nonwritable-lastIndex-global.js b/js/src/tests/ecma_5/String/replace-throws-nonwritable-lastIndex-global.js new file mode 100644 index 000000000..8e1c967f1 --- /dev/null +++ b/js/src/tests/ecma_5/String/replace-throws-nonwritable-lastIndex-global.js @@ -0,0 +1,126 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 501739; +var summary = + "String.prototype.replace should throw when called with a global RegExp " + + "whose .lastIndex is non-writable"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var s = '0x2x4x6x8'; + +// First time with .lastIndex === 0, replacing to '' + +var p1 = /x/g; +Object.defineProperty(p1, "lastIndex", { writable: false }); + +try +{ + s.replace(p1, ''); + throw "didn't throw"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "should have thrown a TypeError, instead got: " + e); + assertEq(p1.lastIndex, 0); +} + +// Second time with .lastIndex !== 0, replacing to '' + +var p2 = /x/g; +Object.defineProperty(p2, "lastIndex", { writable: false, value: 3 }); + +try +{ + s.replace(p2, ''); + throw "didn't throw"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "should have thrown a TypeError, instead got: " + e); + assertEq(p2.lastIndex, 3); +} + +// Third time with .lastIndex === 0, replacing to 'y' + +var p3 = /x/g; +Object.defineProperty(p3, "lastIndex", { writable: false }); + +try +{ + s.replace(p3, 'y'); + throw "didn't throw"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "should have thrown a TypeError, instead got: " + e); + assertEq(p3.lastIndex, 0); +} + +// Fourth time with .lastIndex !== 0, replacing to 'y' + +var p4 = /x/g; +Object.defineProperty(p4, "lastIndex", { writable: false, value: 3 }); + +try +{ + s.replace(p4, ''); + throw "didn't throw"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "should have thrown a TypeError, instead got: " + e); + assertEq(p4.lastIndex, 3); +} + +// Fifth time with .lastIndex === 0, replacing to 'y', but no match + +var p5 = /q/g; +Object.defineProperty(p5, "lastIndex", { writable: false }); + +try +{ + s.replace(p5, 'y'); + throw "didn't throw"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "should have thrown a TypeError, instead got: " + e); + assertEq(p5.lastIndex, 0); +} + +// Sixth time with .lastIndex !== 0, replacing to 'y', but no match + +var p6 = /q/g; +Object.defineProperty(p6, "lastIndex", { writable: false, value: 3 }); + +try +{ + s.replace(p6, ''); + throw "didn't throw"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "should have thrown a TypeError, instead got: " + e); + assertEq(p6.lastIndex, 3); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/String/replace-updates-global-lastIndex.js b/js/src/tests/ecma_5/String/replace-updates-global-lastIndex.js new file mode 100644 index 000000000..c859d7093 --- /dev/null +++ b/js/src/tests/ecma_5/String/replace-updates-global-lastIndex.js @@ -0,0 +1,38 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 501739; +var summary = + "String.prototype.relace should zero the .lastIndex when called with a " + + "global RegExp"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var s = '0x2x4x6x8'; + +var p1 = /x/g; +p1.lastIndex = 3; +s.replace(p1, ''); +assertEq(p1.lastIndex, 0); + +var p2 = /x/g; +p2.lastIndex = 3; +var c = 0; +s.replace(p2, function(s) { + assertEq(p2.lastIndex++, c++); + return 'y'; +}); +assertEq(p2.lastIndex, 4); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/String/shell.js b/js/src/tests/ecma_5/String/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/String/shell.js diff --git a/js/src/tests/ecma_5/String/split-01.js b/js/src/tests/ecma_5/String/split-01.js new file mode 100644 index 000000000..3eda3b148 --- /dev/null +++ b/js/src/tests/ecma_5/String/split-01.js @@ -0,0 +1,47 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 614608; +var summary = "String.prototype.split tests"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function assertEqArr(a1, a2) { + assertEq(a1.length, a2.length); + + for(var i=0; i<a1.length; i++) { + assertEq(a1[i], a2[i]); + } +} + +var order = ""; +var o1 = { toString: function() { order += "b"; return "-"; }}; +var o2 = { valueOf: function() { order += "a"; return 1; }}; +var res = "xyz-xyz".split(o1, o2); + +assertEq(order, "ab"); +assertEqArr(res, ["xyz"]); + +assertEqArr("".split(/.?/), []); +assertEqArr("abc".split(/\b/), ["abc"]); + +assertEqArr("abc".split(/((()))./, 2), ["",""]); +assertEqArr("abc".split(/((((()))))./, 9), ["","","","","","","","",""]); + +// from ES5 15.5.4.14 +assertEqArr("ab".split(/a*?/), ["a", "b"]); +assertEqArr("ab".split(/a*/), ["", "b"]); +assertEqArr("A<B>bold</B>and<CODE>coded</CODE>".split(/<(\/)?([^<>]+)>/), + ["A", undefined, "B", "bold", "/", "B", "and", undefined, + "CODE", "coded", "/", "CODE", ""]); + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/String/split-undefined-separator.js b/js/src/tests/ecma_5/String/split-undefined-separator.js new file mode 100644 index 000000000..46aa6c16f --- /dev/null +++ b/js/src/tests/ecma_5/String/split-undefined-separator.js @@ -0,0 +1,37 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 614608; +var summary = "String.prototype.split with undefined separator"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function assertEqArr(a1, a2) { + assertEq(a1.length, a2.length); + + for(var i=0; i<a1.length; i++) { + assertEq(a1[i], a2[i]); + } +} +var s = '--undefined--undefined--'; + +assertEqArr(s.split(undefined, undefined), [s]); +assertEqArr(s.split(undefined, -1), [s]); + +assertEqArr(s.split(undefined, 1), [s]); +assertEqArr(s.split("undefined", 1), ["--"]); + +assertEqArr(s.split("-", 0), []); +assertEqArr(s.split(undefined, 0), []); +assertEqArr(s.split(s, 0), []); + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/String/split-xregexp.js b/js/src/tests/ecma_5/String/split-xregexp.js new file mode 100644 index 000000000..9dfe79b00 --- /dev/null +++ b/js/src/tests/ecma_5/String/split-xregexp.js @@ -0,0 +1,118 @@ +/* + * Tests from http://xregexp.com/tests/split.html + * + * Copyright (C) 2007 by Steven Levithan <stevenlevithan.com> + * + * Distributed under the terms of the MIT license. + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +var BUGNUMBER = 614608; +var summary = "String.prototype.split with regexp separator"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var ecmaSampleRe = /<(\/)?([^<>]+)>/; + +var testCode = [ + ["''.split()", [""]], + ["''.split(/./)", [""]], + ["''.split(/.?/)", []], + ["''.split(/.??/)", []], + ["'ab'.split(/a*/)", ["", "b"]], + ["'ab'.split(/a*?/)", ["a", "b"]], + ["'ab'.split(/(?:ab)/)", ["", ""]], + ["'ab'.split(/(?:ab)*/)", ["", ""]], + ["'ab'.split(/(?:ab)*?/)", ["a", "b"]], + ["'test'.split('')", ["t", "e", "s", "t"]], + ["'test'.split()", ["test"]], + ["'111'.split(1)", ["", "", "", ""]], + ["'test'.split(/(?:)/, 2)", ["t", "e"]], + ["'test'.split(/(?:)/, -1)", ["t", "e", "s", "t"]], + ["'test'.split(/(?:)/, undefined)", ["t", "e", "s", "t"]], + ["'test'.split(/(?:)/, null)", []], + ["'test'.split(/(?:)/, NaN)", []], + ["'test'.split(/(?:)/, true)", ["t"]], + ["'test'.split(/(?:)/, '2')", ["t", "e"]], + ["'test'.split(/(?:)/, 'two')", []], + ["'a'.split(/-/)", ["a"]], + ["'a'.split(/-?/)", ["a"]], + ["'a'.split(/-??/)", ["a"]], + ["'a'.split(/a/)", ["", ""]], + ["'a'.split(/a?/)", ["", ""]], + ["'a'.split(/a??/)", ["a"]], + ["'ab'.split(/-/)", ["ab"]], + ["'ab'.split(/-?/)", ["a", "b"]], + ["'ab'.split(/-??/)", ["a", "b"]], + ["'a-b'.split(/-/)", ["a", "b"]], + ["'a-b'.split(/-?/)", ["a", "b"]], + ["'a-b'.split(/-??/)", ["a", "-", "b"]], + ["'a--b'.split(/-/)", ["a", "", "b"]], + ["'a--b'.split(/-?/)", ["a", "", "b"]], + ["'a--b'.split(/-??/)", ["a", "-", "-", "b"]], + ["''.split(/()()/)", []], + ["'.'.split(/()()/)", ["."]], + ["'.'.split(/(.?)(.?)/)", ["", ".", "", ""]], + ["'.'.split(/(.??)(.??)/)", ["."]], + ["'.'.split(/(.)?(.)?/)", ["", ".", undefined, ""]], + ["'A<B>bold</B>and<CODE>coded</CODE>'.split(ecmaSampleRe)", + ["A", undefined, "B", "bold", "/", "B", + "and", undefined, "CODE", "coded", "/", + "CODE", ""]], + ["'tesst'.split(/(s)*/)", ["t", undefined, "e", "s", "t"]], + ["'tesst'.split(/(s)*?/)", ["t", undefined, "e", undefined, "s", + undefined, "s", undefined, "t"]], + ["'tesst'.split(/(s*)/)", ["t", "", "e", "ss", "t"]], + ["'tesst'.split(/(s*?)/)", ["t", "", "e", "", "s", "", "s", "", "t"]], + ["'tesst'.split(/(?:s)*/)", ["t", "e", "t"]], + ["'tesst'.split(/(?=s+)/)", ["te", "s", "st"]], + ["'test'.split('t')", ["", "es", ""]], + ["'test'.split('es')", ["t", "t"]], + ["'test'.split(/t/)", ["", "es", ""]], + ["'test'.split(/es/)", ["t", "t"]], + ["'test'.split(/(t)/)", ["", "t", "es", "t", ""]], + ["'test'.split(/(es)/)", ["t", "es", "t"]], + ["'test'.split(/(t)(e)(s)(t)/)", ["", "t", "e", "s", "t", ""]], + ["'.'.split(/(((.((.??)))))/)", ["", ".", ".", ".", "", "", ""]], + ["'.'.split(/(((((.??)))))/)", ["."]] +]; + +function testSplit() { + for (var i = 0; i < testCode.length; i++) { + var actual = eval(testCode[i][0]); + var expected = testCode[i][1]; + + assertEq(actual.length, expected.length); + + for(var j=0; j<actual.length; j++) { + assertEq(actual[j], expected[j], testCode[i][0]); + } + } +} + +testSplit(); + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/String/string-object-length.js b/js/src/tests/ecma_5/String/string-object-length.js new file mode 100644 index 000000000..9c464cc03 --- /dev/null +++ b/js/src/tests/ecma_5/String/string-object-length.js @@ -0,0 +1,19 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BUGNUMBER = 650621; +var summary = 'String object length test'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +assertEq(raisesException(InternalError)('for (args = "" ;;) args+=new String(args)+1'), true); + +reportCompare(true, true); + diff --git a/js/src/tests/ecma_5/String/string-space-trim.js b/js/src/tests/ecma_5/String/string-space-trim.js new file mode 100644 index 000000000..18e3668e6 --- /dev/null +++ b/js/src/tests/ecma_5/String/string-space-trim.js @@ -0,0 +1,16 @@ +/* Generated by make_unicode.py DO NOT MODIFY */ +/* Unicode version: 9.0.0 */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ +var onlySpace = String.fromCharCode(0x9, 0xa, 0xb, 0xc, 0xd, 0x20, 0xa0, 0x1680, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006, 0x2007, 0x2008, 0x2009, 0x200a, 0x2028, 0x2029, 0x202f, 0x205f, 0x3000, 0xfeff); + +assertEq(onlySpace.trim(), ""); +assertEq((onlySpace + 'aaaa').trim(), 'aaaa'); +assertEq(('aaaa' + onlySpace).trim(), 'aaaa'); +assertEq((onlySpace + 'aaaa' + onlySpace).trim(), 'aaaa'); + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/String/string-upper-lower-mapping.js b/js/src/tests/ecma_5/String/string-upper-lower-mapping.js new file mode 100644 index 000000000..b10ea808f --- /dev/null +++ b/js/src/tests/ecma_5/String/string-upper-lower-mapping.js @@ -0,0 +1,65556 @@ +/* Generated by make_unicode.py DO NOT MODIFY */ +/* Unicode version: 9.0.0 */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ +var mapping = [ + [0x0, 0x0], /* <control> (NULL) */ + [0x1, 0x1], /* <control> (START OF HEADING) */ + [0x2, 0x2], /* <control> (START OF TEXT) */ + [0x3, 0x3], /* <control> (END OF TEXT) */ + [0x4, 0x4], /* <control> (END OF TRANSMISSION) */ + [0x5, 0x5], /* <control> (ENQUIRY) */ + [0x6, 0x6], /* <control> (ACKNOWLEDGE) */ + [0x7, 0x7], /* <control> (BELL) */ + [0x8, 0x8], /* <control> (BACKSPACE) */ + [0x9, 0x9], /* <control> (CHARACTER TABULATION) */ + [0xa, 0xa], /* <control> (LINE FEED (LF)) */ + [0xb, 0xb], /* <control> (LINE TABULATION) */ + [0xc, 0xc], /* <control> (FORM FEED (FF)) */ + [0xd, 0xd], /* <control> (CARRIAGE RETURN (CR)) */ + [0xe, 0xe], /* <control> (SHIFT OUT) */ + [0xf, 0xf], /* <control> (SHIFT IN) */ + [0x10, 0x10], /* <control> (DATA LINK ESCAPE) */ + [0x11, 0x11], /* <control> (DEVICE CONTROL ONE) */ + [0x12, 0x12], /* <control> (DEVICE CONTROL TWO) */ + [0x13, 0x13], /* <control> (DEVICE CONTROL THREE) */ + [0x14, 0x14], /* <control> (DEVICE CONTROL FOUR) */ + [0x15, 0x15], /* <control> (NEGATIVE ACKNOWLEDGE) */ + [0x16, 0x16], /* <control> (SYNCHRONOUS IDLE) */ + [0x17, 0x17], /* <control> (END OF TRANSMISSION BLOCK) */ + [0x18, 0x18], /* <control> (CANCEL) */ + [0x19, 0x19], /* <control> (END OF MEDIUM) */ + [0x1a, 0x1a], /* <control> (SUBSTITUTE) */ + [0x1b, 0x1b], /* <control> (ESCAPE) */ + [0x1c, 0x1c], /* <control> (INFORMATION SEPARATOR FOUR) */ + [0x1d, 0x1d], /* <control> (INFORMATION SEPARATOR THREE) */ + [0x1e, 0x1e], /* <control> (INFORMATION SEPARATOR TWO) */ + [0x1f, 0x1f], /* <control> (INFORMATION SEPARATOR ONE) */ + [0x20, 0x20], /* SPACE */ + [0x21, 0x21], /* EXCLAMATION MARK */ + [0x22, 0x22], /* QUOTATION MARK */ + [0x23, 0x23], /* NUMBER SIGN */ + [0x24, 0x24], /* DOLLAR SIGN */ + [0x25, 0x25], /* PERCENT SIGN */ + [0x26, 0x26], /* AMPERSAND */ + [0x27, 0x27], /* APOSTROPHE (APOSTROPHE-QUOTE) */ + [0x28, 0x28], /* LEFT PARENTHESIS (OPENING PARENTHESIS) */ + [0x29, 0x29], /* RIGHT PARENTHESIS (CLOSING PARENTHESIS) */ + [0x2a, 0x2a], /* ASTERISK */ + [0x2b, 0x2b], /* PLUS SIGN */ + [0x2c, 0x2c], /* COMMA */ + [0x2d, 0x2d], /* HYPHEN-MINUS */ + [0x2e, 0x2e], /* FULL STOP (PERIOD) */ + [0x2f, 0x2f], /* SOLIDUS (SLASH) */ + [0x30, 0x30], /* DIGIT ZERO */ + [0x31, 0x31], /* DIGIT ONE */ + [0x32, 0x32], /* DIGIT TWO */ + [0x33, 0x33], /* DIGIT THREE */ + [0x34, 0x34], /* DIGIT FOUR */ + [0x35, 0x35], /* DIGIT FIVE */ + [0x36, 0x36], /* DIGIT SIX */ + [0x37, 0x37], /* DIGIT SEVEN */ + [0x38, 0x38], /* DIGIT EIGHT */ + [0x39, 0x39], /* DIGIT NINE */ + [0x3a, 0x3a], /* COLON */ + [0x3b, 0x3b], /* SEMICOLON */ + [0x3c, 0x3c], /* LESS-THAN SIGN */ + [0x3d, 0x3d], /* EQUALS SIGN */ + [0x3e, 0x3e], /* GREATER-THAN SIGN */ + [0x3f, 0x3f], /* QUESTION MARK */ + [0x40, 0x40], /* COMMERCIAL AT */ + [0x41, 0x61], /* LATIN CAPITAL LETTER A */ + [0x42, 0x62], /* LATIN CAPITAL LETTER B */ + [0x43, 0x63], /* LATIN CAPITAL LETTER C */ + [0x44, 0x64], /* LATIN CAPITAL LETTER D */ + [0x45, 0x65], /* LATIN CAPITAL LETTER E */ + [0x46, 0x66], /* LATIN CAPITAL LETTER F */ + [0x47, 0x67], /* LATIN CAPITAL LETTER G */ + [0x48, 0x68], /* LATIN CAPITAL LETTER H */ + [0x49, 0x69], /* LATIN CAPITAL LETTER I */ + [0x4a, 0x6a], /* LATIN CAPITAL LETTER J */ + [0x4b, 0x6b], /* LATIN CAPITAL LETTER K */ + [0x4c, 0x6c], /* LATIN CAPITAL LETTER L */ + [0x4d, 0x6d], /* LATIN CAPITAL LETTER M */ + [0x4e, 0x6e], /* LATIN CAPITAL LETTER N */ + [0x4f, 0x6f], /* LATIN CAPITAL LETTER O */ + [0x50, 0x70], /* LATIN CAPITAL LETTER P */ + [0x51, 0x71], /* LATIN CAPITAL LETTER Q */ + [0x52, 0x72], /* LATIN CAPITAL LETTER R */ + [0x53, 0x73], /* LATIN CAPITAL LETTER S */ + [0x54, 0x74], /* LATIN CAPITAL LETTER T */ + [0x55, 0x75], /* LATIN CAPITAL LETTER U */ + [0x56, 0x76], /* LATIN CAPITAL LETTER V */ + [0x57, 0x77], /* LATIN CAPITAL LETTER W */ + [0x58, 0x78], /* LATIN CAPITAL LETTER X */ + [0x59, 0x79], /* LATIN CAPITAL LETTER Y */ + [0x5a, 0x7a], /* LATIN CAPITAL LETTER Z */ + [0x5b, 0x5b], /* LEFT SQUARE BRACKET (OPENING SQUARE BRACKET) */ + [0x5c, 0x5c], /* REVERSE SOLIDUS (BACKSLASH) */ + [0x5d, 0x5d], /* RIGHT SQUARE BRACKET (CLOSING SQUARE BRACKET) */ + [0x5e, 0x5e], /* CIRCUMFLEX ACCENT (SPACING CIRCUMFLEX) */ + [0x5f, 0x5f], /* LOW LINE (SPACING UNDERSCORE) */ + [0x60, 0x60], /* GRAVE ACCENT (SPACING GRAVE) */ + [0x41, 0x61], /* LATIN SMALL LETTER A */ + [0x42, 0x62], /* LATIN SMALL LETTER B */ + [0x43, 0x63], /* LATIN SMALL LETTER C */ + [0x44, 0x64], /* LATIN SMALL LETTER D */ + [0x45, 0x65], /* LATIN SMALL LETTER E */ + [0x46, 0x66], /* LATIN SMALL LETTER F */ + [0x47, 0x67], /* LATIN SMALL LETTER G */ + [0x48, 0x68], /* LATIN SMALL LETTER H */ + [0x49, 0x69], /* LATIN SMALL LETTER I */ + [0x4a, 0x6a], /* LATIN SMALL LETTER J */ + [0x4b, 0x6b], /* LATIN SMALL LETTER K */ + [0x4c, 0x6c], /* LATIN SMALL LETTER L */ + [0x4d, 0x6d], /* LATIN SMALL LETTER M */ + [0x4e, 0x6e], /* LATIN SMALL LETTER N */ + [0x4f, 0x6f], /* LATIN SMALL LETTER O */ + [0x50, 0x70], /* LATIN SMALL LETTER P */ + [0x51, 0x71], /* LATIN SMALL LETTER Q */ + [0x52, 0x72], /* LATIN SMALL LETTER R */ + [0x53, 0x73], /* LATIN SMALL LETTER S */ + [0x54, 0x74], /* LATIN SMALL LETTER T */ + [0x55, 0x75], /* LATIN SMALL LETTER U */ + [0x56, 0x76], /* LATIN SMALL LETTER V */ + [0x57, 0x77], /* LATIN SMALL LETTER W */ + [0x58, 0x78], /* LATIN SMALL LETTER X */ + [0x59, 0x79], /* LATIN SMALL LETTER Y */ + [0x5a, 0x7a], /* LATIN SMALL LETTER Z */ + [0x7b, 0x7b], /* LEFT CURLY BRACKET (OPENING CURLY BRACKET) */ + [0x7c, 0x7c], /* VERTICAL LINE (VERTICAL BAR) */ + [0x7d, 0x7d], /* RIGHT CURLY BRACKET (CLOSING CURLY BRACKET) */ + [0x7e, 0x7e], /* TILDE */ + [0x7f, 0x7f], /* <control> (DELETE) */ + [0x80, 0x80], /* <control> */ + [0x81, 0x81], /* <control> */ + [0x82, 0x82], /* <control> (BREAK PERMITTED HERE) */ + [0x83, 0x83], /* <control> (NO BREAK HERE) */ + [0x84, 0x84], /* <control> */ + [0x85, 0x85], /* <control> (NEXT LINE (NEL)) */ + [0x86, 0x86], /* <control> (START OF SELECTED AREA) */ + [0x87, 0x87], /* <control> (END OF SELECTED AREA) */ + [0x88, 0x88], /* <control> (CHARACTER TABULATION SET) */ + [0x89, 0x89], /* <control> (CHARACTER TABULATION WITH JUSTIFICATION) */ + [0x8a, 0x8a], /* <control> (LINE TABULATION SET) */ + [0x8b, 0x8b], /* <control> (PARTIAL LINE FORWARD) */ + [0x8c, 0x8c], /* <control> (PARTIAL LINE BACKWARD) */ + [0x8d, 0x8d], /* <control> (REVERSE LINE FEED) */ + [0x8e, 0x8e], /* <control> (SINGLE SHIFT TWO) */ + [0x8f, 0x8f], /* <control> (SINGLE SHIFT THREE) */ + [0x90, 0x90], /* <control> (DEVICE CONTROL STRING) */ + [0x91, 0x91], /* <control> (PRIVATE USE ONE) */ + [0x92, 0x92], /* <control> (PRIVATE USE TWO) */ + [0x93, 0x93], /* <control> (SET TRANSMIT STATE) */ + [0x94, 0x94], /* <control> (CANCEL CHARACTER) */ + [0x95, 0x95], /* <control> (MESSAGE WAITING) */ + [0x96, 0x96], /* <control> (START OF GUARDED AREA) */ + [0x97, 0x97], /* <control> (END OF GUARDED AREA) */ + [0x98, 0x98], /* <control> (START OF STRING) */ + [0x99, 0x99], /* <control> */ + [0x9a, 0x9a], /* <control> (SINGLE CHARACTER INTRODUCER) */ + [0x9b, 0x9b], /* <control> (CONTROL SEQUENCE INTRODUCER) */ + [0x9c, 0x9c], /* <control> (STRING TERMINATOR) */ + [0x9d, 0x9d], /* <control> (OPERATING SYSTEM COMMAND) */ + [0x9e, 0x9e], /* <control> (PRIVACY MESSAGE) */ + [0x9f, 0x9f], /* <control> (APPLICATION PROGRAM COMMAND) */ + [0xa0, 0xa0], /* NO-BREAK SPACE (NON-BREAKING SPACE) */ + [0xa1, 0xa1], /* INVERTED EXCLAMATION MARK */ + [0xa2, 0xa2], /* CENT SIGN */ + [0xa3, 0xa3], /* POUND SIGN */ + [0xa4, 0xa4], /* CURRENCY SIGN */ + [0xa5, 0xa5], /* YEN SIGN */ + [0xa6, 0xa6], /* BROKEN BAR (BROKEN VERTICAL BAR) */ + [0xa7, 0xa7], /* SECTION SIGN */ + [0xa8, 0xa8], /* DIAERESIS (SPACING DIAERESIS) */ + [0xa9, 0xa9], /* COPYRIGHT SIGN */ + [0xaa, 0xaa], /* FEMININE ORDINAL INDICATOR */ + [0xab, 0xab], /* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK (LEFT POINTING GUILLEMET) */ + [0xac, 0xac], /* NOT SIGN */ + [0xad, 0xad], /* SOFT HYPHEN */ + [0xae, 0xae], /* REGISTERED SIGN (REGISTERED TRADE MARK SIGN) */ + [0xaf, 0xaf], /* MACRON (SPACING MACRON) */ + [0xb0, 0xb0], /* DEGREE SIGN */ + [0xb1, 0xb1], /* PLUS-MINUS SIGN (PLUS-OR-MINUS SIGN) */ + [0xb2, 0xb2], /* SUPERSCRIPT TWO (SUPERSCRIPT DIGIT TWO) */ + [0xb3, 0xb3], /* SUPERSCRIPT THREE (SUPERSCRIPT DIGIT THREE) */ + [0xb4, 0xb4], /* ACUTE ACCENT (SPACING ACUTE) */ + [0x39c, 0xb5], /* MICRO SIGN */ + [0xb6, 0xb6], /* PILCROW SIGN (PARAGRAPH SIGN) */ + [0xb7, 0xb7], /* MIDDLE DOT */ + [0xb8, 0xb8], /* CEDILLA (SPACING CEDILLA) */ + [0xb9, 0xb9], /* SUPERSCRIPT ONE (SUPERSCRIPT DIGIT ONE) */ + [0xba, 0xba], /* MASCULINE ORDINAL INDICATOR */ + [0xbb, 0xbb], /* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK (RIGHT POINTING GUILLEMET) */ + [0xbc, 0xbc], /* VULGAR FRACTION ONE QUARTER (FRACTION ONE QUARTER) */ + [0xbd, 0xbd], /* VULGAR FRACTION ONE HALF (FRACTION ONE HALF) */ + [0xbe, 0xbe], /* VULGAR FRACTION THREE QUARTERS (FRACTION THREE QUARTERS) */ + [0xbf, 0xbf], /* INVERTED QUESTION MARK */ + [0xc0, 0xe0], /* LATIN CAPITAL LETTER A WITH GRAVE (LATIN CAPITAL LETTER A GRAVE) */ + [0xc1, 0xe1], /* LATIN CAPITAL LETTER A WITH ACUTE (LATIN CAPITAL LETTER A ACUTE) */ + [0xc2, 0xe2], /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX (LATIN CAPITAL LETTER A CIRCUMFLEX) */ + [0xc3, 0xe3], /* LATIN CAPITAL LETTER A WITH TILDE (LATIN CAPITAL LETTER A TILDE) */ + [0xc4, 0xe4], /* LATIN CAPITAL LETTER A WITH DIAERESIS (LATIN CAPITAL LETTER A DIAERESIS) */ + [0xc5, 0xe5], /* LATIN CAPITAL LETTER A WITH RING ABOVE (LATIN CAPITAL LETTER A RING) */ + [0xc6, 0xe6], /* LATIN CAPITAL LETTER AE (LATIN CAPITAL LETTER A E) */ + [0xc7, 0xe7], /* LATIN CAPITAL LETTER C WITH CEDILLA (LATIN CAPITAL LETTER C CEDILLA) */ + [0xc8, 0xe8], /* LATIN CAPITAL LETTER E WITH GRAVE (LATIN CAPITAL LETTER E GRAVE) */ + [0xc9, 0xe9], /* LATIN CAPITAL LETTER E WITH ACUTE (LATIN CAPITAL LETTER E ACUTE) */ + [0xca, 0xea], /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX (LATIN CAPITAL LETTER E CIRCUMFLEX) */ + [0xcb, 0xeb], /* LATIN CAPITAL LETTER E WITH DIAERESIS (LATIN CAPITAL LETTER E DIAERESIS) */ + [0xcc, 0xec], /* LATIN CAPITAL LETTER I WITH GRAVE (LATIN CAPITAL LETTER I GRAVE) */ + [0xcd, 0xed], /* LATIN CAPITAL LETTER I WITH ACUTE (LATIN CAPITAL LETTER I ACUTE) */ + [0xce, 0xee], /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX (LATIN CAPITAL LETTER I CIRCUMFLEX) */ + [0xcf, 0xef], /* LATIN CAPITAL LETTER I WITH DIAERESIS (LATIN CAPITAL LETTER I DIAERESIS) */ + [0xd0, 0xf0], /* LATIN CAPITAL LETTER ETH */ + [0xd1, 0xf1], /* LATIN CAPITAL LETTER N WITH TILDE (LATIN CAPITAL LETTER N TILDE) */ + [0xd2, 0xf2], /* LATIN CAPITAL LETTER O WITH GRAVE (LATIN CAPITAL LETTER O GRAVE) */ + [0xd3, 0xf3], /* LATIN CAPITAL LETTER O WITH ACUTE (LATIN CAPITAL LETTER O ACUTE) */ + [0xd4, 0xf4], /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX (LATIN CAPITAL LETTER O CIRCUMFLEX) */ + [0xd5, 0xf5], /* LATIN CAPITAL LETTER O WITH TILDE (LATIN CAPITAL LETTER O TILDE) */ + [0xd6, 0xf6], /* LATIN CAPITAL LETTER O WITH DIAERESIS (LATIN CAPITAL LETTER O DIAERESIS) */ + [0xd7, 0xd7], /* MULTIPLICATION SIGN */ + [0xd8, 0xf8], /* LATIN CAPITAL LETTER O WITH STROKE (LATIN CAPITAL LETTER O SLASH) */ + [0xd9, 0xf9], /* LATIN CAPITAL LETTER U WITH GRAVE (LATIN CAPITAL LETTER U GRAVE) */ + [0xda, 0xfa], /* LATIN CAPITAL LETTER U WITH ACUTE (LATIN CAPITAL LETTER U ACUTE) */ + [0xdb, 0xfb], /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX (LATIN CAPITAL LETTER U CIRCUMFLEX) */ + [0xdc, 0xfc], /* LATIN CAPITAL LETTER U WITH DIAERESIS (LATIN CAPITAL LETTER U DIAERESIS) */ + [0xdd, 0xfd], /* LATIN CAPITAL LETTER Y WITH ACUTE (LATIN CAPITAL LETTER Y ACUTE) */ + [0xde, 0xfe], /* LATIN CAPITAL LETTER THORN */ + [0xdf, 0xdf], /* LATIN SMALL LETTER SHARP S */ + [0xc0, 0xe0], /* LATIN SMALL LETTER A WITH GRAVE (LATIN SMALL LETTER A GRAVE) */ + [0xc1, 0xe1], /* LATIN SMALL LETTER A WITH ACUTE (LATIN SMALL LETTER A ACUTE) */ + [0xc2, 0xe2], /* LATIN SMALL LETTER A WITH CIRCUMFLEX (LATIN SMALL LETTER A CIRCUMFLEX) */ + [0xc3, 0xe3], /* LATIN SMALL LETTER A WITH TILDE (LATIN SMALL LETTER A TILDE) */ + [0xc4, 0xe4], /* LATIN SMALL LETTER A WITH DIAERESIS (LATIN SMALL LETTER A DIAERESIS) */ + [0xc5, 0xe5], /* LATIN SMALL LETTER A WITH RING ABOVE (LATIN SMALL LETTER A RING) */ + [0xc6, 0xe6], /* LATIN SMALL LETTER AE (LATIN SMALL LETTER A E) */ + [0xc7, 0xe7], /* LATIN SMALL LETTER C WITH CEDILLA (LATIN SMALL LETTER C CEDILLA) */ + [0xc8, 0xe8], /* LATIN SMALL LETTER E WITH GRAVE (LATIN SMALL LETTER E GRAVE) */ + [0xc9, 0xe9], /* LATIN SMALL LETTER E WITH ACUTE (LATIN SMALL LETTER E ACUTE) */ + [0xca, 0xea], /* LATIN SMALL LETTER E WITH CIRCUMFLEX (LATIN SMALL LETTER E CIRCUMFLEX) */ + [0xcb, 0xeb], /* LATIN SMALL LETTER E WITH DIAERESIS (LATIN SMALL LETTER E DIAERESIS) */ + [0xcc, 0xec], /* LATIN SMALL LETTER I WITH GRAVE (LATIN SMALL LETTER I GRAVE) */ + [0xcd, 0xed], /* LATIN SMALL LETTER I WITH ACUTE (LATIN SMALL LETTER I ACUTE) */ + [0xce, 0xee], /* LATIN SMALL LETTER I WITH CIRCUMFLEX (LATIN SMALL LETTER I CIRCUMFLEX) */ + [0xcf, 0xef], /* LATIN SMALL LETTER I WITH DIAERESIS (LATIN SMALL LETTER I DIAERESIS) */ + [0xd0, 0xf0], /* LATIN SMALL LETTER ETH */ + [0xd1, 0xf1], /* LATIN SMALL LETTER N WITH TILDE (LATIN SMALL LETTER N TILDE) */ + [0xd2, 0xf2], /* LATIN SMALL LETTER O WITH GRAVE (LATIN SMALL LETTER O GRAVE) */ + [0xd3, 0xf3], /* LATIN SMALL LETTER O WITH ACUTE (LATIN SMALL LETTER O ACUTE) */ + [0xd4, 0xf4], /* LATIN SMALL LETTER O WITH CIRCUMFLEX (LATIN SMALL LETTER O CIRCUMFLEX) */ + [0xd5, 0xf5], /* LATIN SMALL LETTER O WITH TILDE (LATIN SMALL LETTER O TILDE) */ + [0xd6, 0xf6], /* LATIN SMALL LETTER O WITH DIAERESIS (LATIN SMALL LETTER O DIAERESIS) */ + [0xf7, 0xf7], /* DIVISION SIGN */ + [0xd8, 0xf8], /* LATIN SMALL LETTER O WITH STROKE (LATIN SMALL LETTER O SLASH) */ + [0xd9, 0xf9], /* LATIN SMALL LETTER U WITH GRAVE (LATIN SMALL LETTER U GRAVE) */ + [0xda, 0xfa], /* LATIN SMALL LETTER U WITH ACUTE (LATIN SMALL LETTER U ACUTE) */ + [0xdb, 0xfb], /* LATIN SMALL LETTER U WITH CIRCUMFLEX (LATIN SMALL LETTER U CIRCUMFLEX) */ + [0xdc, 0xfc], /* LATIN SMALL LETTER U WITH DIAERESIS (LATIN SMALL LETTER U DIAERESIS) */ + [0xdd, 0xfd], /* LATIN SMALL LETTER Y WITH ACUTE (LATIN SMALL LETTER Y ACUTE) */ + [0xde, 0xfe], /* LATIN SMALL LETTER THORN */ + [0x178, 0xff], /* LATIN SMALL LETTER Y WITH DIAERESIS (LATIN SMALL LETTER Y DIAERESIS) */ + [0x100, 0x101], /* LATIN CAPITAL LETTER A WITH MACRON (LATIN CAPITAL LETTER A MACRON) */ + [0x100, 0x101], /* LATIN SMALL LETTER A WITH MACRON (LATIN SMALL LETTER A MACRON) */ + [0x102, 0x103], /* LATIN CAPITAL LETTER A WITH BREVE (LATIN CAPITAL LETTER A BREVE) */ + [0x102, 0x103], /* LATIN SMALL LETTER A WITH BREVE (LATIN SMALL LETTER A BREVE) */ + [0x104, 0x105], /* LATIN CAPITAL LETTER A WITH OGONEK (LATIN CAPITAL LETTER A OGONEK) */ + [0x104, 0x105], /* LATIN SMALL LETTER A WITH OGONEK (LATIN SMALL LETTER A OGONEK) */ + [0x106, 0x107], /* LATIN CAPITAL LETTER C WITH ACUTE (LATIN CAPITAL LETTER C ACUTE) */ + [0x106, 0x107], /* LATIN SMALL LETTER C WITH ACUTE (LATIN SMALL LETTER C ACUTE) */ + [0x108, 0x109], /* LATIN CAPITAL LETTER C WITH CIRCUMFLEX (LATIN CAPITAL LETTER C CIRCUMFLEX) */ + [0x108, 0x109], /* LATIN SMALL LETTER C WITH CIRCUMFLEX (LATIN SMALL LETTER C CIRCUMFLEX) */ + [0x10a, 0x10b], /* LATIN CAPITAL LETTER C WITH DOT ABOVE (LATIN CAPITAL LETTER C DOT) */ + [0x10a, 0x10b], /* LATIN SMALL LETTER C WITH DOT ABOVE (LATIN SMALL LETTER C DOT) */ + [0x10c, 0x10d], /* LATIN CAPITAL LETTER C WITH CARON (LATIN CAPITAL LETTER C HACEK) */ + [0x10c, 0x10d], /* LATIN SMALL LETTER C WITH CARON (LATIN SMALL LETTER C HACEK) */ + [0x10e, 0x10f], /* LATIN CAPITAL LETTER D WITH CARON (LATIN CAPITAL LETTER D HACEK) */ + [0x10e, 0x10f], /* LATIN SMALL LETTER D WITH CARON (LATIN SMALL LETTER D HACEK) */ + [0x110, 0x111], /* LATIN CAPITAL LETTER D WITH STROKE (LATIN CAPITAL LETTER D BAR) */ + [0x110, 0x111], /* LATIN SMALL LETTER D WITH STROKE (LATIN SMALL LETTER D BAR) */ + [0x112, 0x113], /* LATIN CAPITAL LETTER E WITH MACRON (LATIN CAPITAL LETTER E MACRON) */ + [0x112, 0x113], /* LATIN SMALL LETTER E WITH MACRON (LATIN SMALL LETTER E MACRON) */ + [0x114, 0x115], /* LATIN CAPITAL LETTER E WITH BREVE (LATIN CAPITAL LETTER E BREVE) */ + [0x114, 0x115], /* LATIN SMALL LETTER E WITH BREVE (LATIN SMALL LETTER E BREVE) */ + [0x116, 0x117], /* LATIN CAPITAL LETTER E WITH DOT ABOVE (LATIN CAPITAL LETTER E DOT) */ + [0x116, 0x117], /* LATIN SMALL LETTER E WITH DOT ABOVE (LATIN SMALL LETTER E DOT) */ + [0x118, 0x119], /* LATIN CAPITAL LETTER E WITH OGONEK (LATIN CAPITAL LETTER E OGONEK) */ + [0x118, 0x119], /* LATIN SMALL LETTER E WITH OGONEK (LATIN SMALL LETTER E OGONEK) */ + [0x11a, 0x11b], /* LATIN CAPITAL LETTER E WITH CARON (LATIN CAPITAL LETTER E HACEK) */ + [0x11a, 0x11b], /* LATIN SMALL LETTER E WITH CARON (LATIN SMALL LETTER E HACEK) */ + [0x11c, 0x11d], /* LATIN CAPITAL LETTER G WITH CIRCUMFLEX (LATIN CAPITAL LETTER G CIRCUMFLEX) */ + [0x11c, 0x11d], /* LATIN SMALL LETTER G WITH CIRCUMFLEX (LATIN SMALL LETTER G CIRCUMFLEX) */ + [0x11e, 0x11f], /* LATIN CAPITAL LETTER G WITH BREVE (LATIN CAPITAL LETTER G BREVE) */ + [0x11e, 0x11f], /* LATIN SMALL LETTER G WITH BREVE (LATIN SMALL LETTER G BREVE) */ + [0x120, 0x121], /* LATIN CAPITAL LETTER G WITH DOT ABOVE (LATIN CAPITAL LETTER G DOT) */ + [0x120, 0x121], /* LATIN SMALL LETTER G WITH DOT ABOVE (LATIN SMALL LETTER G DOT) */ + [0x122, 0x123], /* LATIN CAPITAL LETTER G WITH CEDILLA (LATIN CAPITAL LETTER G CEDILLA) */ + [0x122, 0x123], /* LATIN SMALL LETTER G WITH CEDILLA (LATIN SMALL LETTER G CEDILLA) */ + [0x124, 0x125], /* LATIN CAPITAL LETTER H WITH CIRCUMFLEX (LATIN CAPITAL LETTER H CIRCUMFLEX) */ + [0x124, 0x125], /* LATIN SMALL LETTER H WITH CIRCUMFLEX (LATIN SMALL LETTER H CIRCUMFLEX) */ + [0x126, 0x127], /* LATIN CAPITAL LETTER H WITH STROKE (LATIN CAPITAL LETTER H BAR) */ + [0x126, 0x127], /* LATIN SMALL LETTER H WITH STROKE (LATIN SMALL LETTER H BAR) */ + [0x128, 0x129], /* LATIN CAPITAL LETTER I WITH TILDE (LATIN CAPITAL LETTER I TILDE) */ + [0x128, 0x129], /* LATIN SMALL LETTER I WITH TILDE (LATIN SMALL LETTER I TILDE) */ + [0x12a, 0x12b], /* LATIN CAPITAL LETTER I WITH MACRON (LATIN CAPITAL LETTER I MACRON) */ + [0x12a, 0x12b], /* LATIN SMALL LETTER I WITH MACRON (LATIN SMALL LETTER I MACRON) */ + [0x12c, 0x12d], /* LATIN CAPITAL LETTER I WITH BREVE (LATIN CAPITAL LETTER I BREVE) */ + [0x12c, 0x12d], /* LATIN SMALL LETTER I WITH BREVE (LATIN SMALL LETTER I BREVE) */ + [0x12e, 0x12f], /* LATIN CAPITAL LETTER I WITH OGONEK (LATIN CAPITAL LETTER I OGONEK) */ + [0x12e, 0x12f], /* LATIN SMALL LETTER I WITH OGONEK (LATIN SMALL LETTER I OGONEK) */ + [0x130, 0x69], /* LATIN CAPITAL LETTER I WITH DOT ABOVE (LATIN CAPITAL LETTER I DOT) */ + [0x49, 0x131], /* LATIN SMALL LETTER DOTLESS I */ + [0x132, 0x133], /* LATIN CAPITAL LIGATURE IJ (LATIN CAPITAL LETTER I J) */ + [0x132, 0x133], /* LATIN SMALL LIGATURE IJ (LATIN SMALL LETTER I J) */ + [0x134, 0x135], /* LATIN CAPITAL LETTER J WITH CIRCUMFLEX (LATIN CAPITAL LETTER J CIRCUMFLEX) */ + [0x134, 0x135], /* LATIN SMALL LETTER J WITH CIRCUMFLEX (LATIN SMALL LETTER J CIRCUMFLEX) */ + [0x136, 0x137], /* LATIN CAPITAL LETTER K WITH CEDILLA (LATIN CAPITAL LETTER K CEDILLA) */ + [0x136, 0x137], /* LATIN SMALL LETTER K WITH CEDILLA (LATIN SMALL LETTER K CEDILLA) */ + [0x138, 0x138], /* LATIN SMALL LETTER KRA */ + [0x139, 0x13a], /* LATIN CAPITAL LETTER L WITH ACUTE (LATIN CAPITAL LETTER L ACUTE) */ + [0x139, 0x13a], /* LATIN SMALL LETTER L WITH ACUTE (LATIN SMALL LETTER L ACUTE) */ + [0x13b, 0x13c], /* LATIN CAPITAL LETTER L WITH CEDILLA (LATIN CAPITAL LETTER L CEDILLA) */ + [0x13b, 0x13c], /* LATIN SMALL LETTER L WITH CEDILLA (LATIN SMALL LETTER L CEDILLA) */ + [0x13d, 0x13e], /* LATIN CAPITAL LETTER L WITH CARON (LATIN CAPITAL LETTER L HACEK) */ + [0x13d, 0x13e], /* LATIN SMALL LETTER L WITH CARON (LATIN SMALL LETTER L HACEK) */ + [0x13f, 0x140], /* LATIN CAPITAL LETTER L WITH MIDDLE DOT */ + [0x13f, 0x140], /* LATIN SMALL LETTER L WITH MIDDLE DOT */ + [0x141, 0x142], /* LATIN CAPITAL LETTER L WITH STROKE (LATIN CAPITAL LETTER L SLASH) */ + [0x141, 0x142], /* LATIN SMALL LETTER L WITH STROKE (LATIN SMALL LETTER L SLASH) */ + [0x143, 0x144], /* LATIN CAPITAL LETTER N WITH ACUTE (LATIN CAPITAL LETTER N ACUTE) */ + [0x143, 0x144], /* LATIN SMALL LETTER N WITH ACUTE (LATIN SMALL LETTER N ACUTE) */ + [0x145, 0x146], /* LATIN CAPITAL LETTER N WITH CEDILLA (LATIN CAPITAL LETTER N CEDILLA) */ + [0x145, 0x146], /* LATIN SMALL LETTER N WITH CEDILLA (LATIN SMALL LETTER N CEDILLA) */ + [0x147, 0x148], /* LATIN CAPITAL LETTER N WITH CARON (LATIN CAPITAL LETTER N HACEK) */ + [0x147, 0x148], /* LATIN SMALL LETTER N WITH CARON (LATIN SMALL LETTER N HACEK) */ + [0x149, 0x149], /* LATIN SMALL LETTER N PRECEDED BY APOSTROPHE (LATIN SMALL LETTER APOSTROPHE N) */ + [0x14a, 0x14b], /* LATIN CAPITAL LETTER ENG */ + [0x14a, 0x14b], /* LATIN SMALL LETTER ENG */ + [0x14c, 0x14d], /* LATIN CAPITAL LETTER O WITH MACRON (LATIN CAPITAL LETTER O MACRON) */ + [0x14c, 0x14d], /* LATIN SMALL LETTER O WITH MACRON (LATIN SMALL LETTER O MACRON) */ + [0x14e, 0x14f], /* LATIN CAPITAL LETTER O WITH BREVE (LATIN CAPITAL LETTER O BREVE) */ + [0x14e, 0x14f], /* LATIN SMALL LETTER O WITH BREVE (LATIN SMALL LETTER O BREVE) */ + [0x150, 0x151], /* LATIN CAPITAL LETTER O WITH DOUBLE ACUTE (LATIN CAPITAL LETTER O DOUBLE ACUTE) */ + [0x150, 0x151], /* LATIN SMALL LETTER O WITH DOUBLE ACUTE (LATIN SMALL LETTER O DOUBLE ACUTE) */ + [0x152, 0x153], /* LATIN CAPITAL LIGATURE OE (LATIN CAPITAL LETTER O E) */ + [0x152, 0x153], /* LATIN SMALL LIGATURE OE (LATIN SMALL LETTER O E) */ + [0x154, 0x155], /* LATIN CAPITAL LETTER R WITH ACUTE (LATIN CAPITAL LETTER R ACUTE) */ + [0x154, 0x155], /* LATIN SMALL LETTER R WITH ACUTE (LATIN SMALL LETTER R ACUTE) */ + [0x156, 0x157], /* LATIN CAPITAL LETTER R WITH CEDILLA (LATIN CAPITAL LETTER R CEDILLA) */ + [0x156, 0x157], /* LATIN SMALL LETTER R WITH CEDILLA (LATIN SMALL LETTER R CEDILLA) */ + [0x158, 0x159], /* LATIN CAPITAL LETTER R WITH CARON (LATIN CAPITAL LETTER R HACEK) */ + [0x158, 0x159], /* LATIN SMALL LETTER R WITH CARON (LATIN SMALL LETTER R HACEK) */ + [0x15a, 0x15b], /* LATIN CAPITAL LETTER S WITH ACUTE (LATIN CAPITAL LETTER S ACUTE) */ + [0x15a, 0x15b], /* LATIN SMALL LETTER S WITH ACUTE (LATIN SMALL LETTER S ACUTE) */ + [0x15c, 0x15d], /* LATIN CAPITAL LETTER S WITH CIRCUMFLEX (LATIN CAPITAL LETTER S CIRCUMFLEX) */ + [0x15c, 0x15d], /* LATIN SMALL LETTER S WITH CIRCUMFLEX (LATIN SMALL LETTER S CIRCUMFLEX) */ + [0x15e, 0x15f], /* LATIN CAPITAL LETTER S WITH CEDILLA (LATIN CAPITAL LETTER S CEDILLA) */ + [0x15e, 0x15f], /* LATIN SMALL LETTER S WITH CEDILLA (LATIN SMALL LETTER S CEDILLA) */ + [0x160, 0x161], /* LATIN CAPITAL LETTER S WITH CARON (LATIN CAPITAL LETTER S HACEK) */ + [0x160, 0x161], /* LATIN SMALL LETTER S WITH CARON (LATIN SMALL LETTER S HACEK) */ + [0x162, 0x163], /* LATIN CAPITAL LETTER T WITH CEDILLA (LATIN CAPITAL LETTER T CEDILLA) */ + [0x162, 0x163], /* LATIN SMALL LETTER T WITH CEDILLA (LATIN SMALL LETTER T CEDILLA) */ + [0x164, 0x165], /* LATIN CAPITAL LETTER T WITH CARON (LATIN CAPITAL LETTER T HACEK) */ + [0x164, 0x165], /* LATIN SMALL LETTER T WITH CARON (LATIN SMALL LETTER T HACEK) */ + [0x166, 0x167], /* LATIN CAPITAL LETTER T WITH STROKE (LATIN CAPITAL LETTER T BAR) */ + [0x166, 0x167], /* LATIN SMALL LETTER T WITH STROKE (LATIN SMALL LETTER T BAR) */ + [0x168, 0x169], /* LATIN CAPITAL LETTER U WITH TILDE (LATIN CAPITAL LETTER U TILDE) */ + [0x168, 0x169], /* LATIN SMALL LETTER U WITH TILDE (LATIN SMALL LETTER U TILDE) */ + [0x16a, 0x16b], /* LATIN CAPITAL LETTER U WITH MACRON (LATIN CAPITAL LETTER U MACRON) */ + [0x16a, 0x16b], /* LATIN SMALL LETTER U WITH MACRON (LATIN SMALL LETTER U MACRON) */ + [0x16c, 0x16d], /* LATIN CAPITAL LETTER U WITH BREVE (LATIN CAPITAL LETTER U BREVE) */ + [0x16c, 0x16d], /* LATIN SMALL LETTER U WITH BREVE (LATIN SMALL LETTER U BREVE) */ + [0x16e, 0x16f], /* LATIN CAPITAL LETTER U WITH RING ABOVE (LATIN CAPITAL LETTER U RING) */ + [0x16e, 0x16f], /* LATIN SMALL LETTER U WITH RING ABOVE (LATIN SMALL LETTER U RING) */ + [0x170, 0x171], /* LATIN CAPITAL LETTER U WITH DOUBLE ACUTE (LATIN CAPITAL LETTER U DOUBLE ACUTE) */ + [0x170, 0x171], /* LATIN SMALL LETTER U WITH DOUBLE ACUTE (LATIN SMALL LETTER U DOUBLE ACUTE) */ + [0x172, 0x173], /* LATIN CAPITAL LETTER U WITH OGONEK (LATIN CAPITAL LETTER U OGONEK) */ + [0x172, 0x173], /* LATIN SMALL LETTER U WITH OGONEK (LATIN SMALL LETTER U OGONEK) */ + [0x174, 0x175], /* LATIN CAPITAL LETTER W WITH CIRCUMFLEX (LATIN CAPITAL LETTER W CIRCUMFLEX) */ + [0x174, 0x175], /* LATIN SMALL LETTER W WITH CIRCUMFLEX (LATIN SMALL LETTER W CIRCUMFLEX) */ + [0x176, 0x177], /* LATIN CAPITAL LETTER Y WITH CIRCUMFLEX (LATIN CAPITAL LETTER Y CIRCUMFLEX) */ + [0x176, 0x177], /* LATIN SMALL LETTER Y WITH CIRCUMFLEX (LATIN SMALL LETTER Y CIRCUMFLEX) */ + [0x178, 0xff], /* LATIN CAPITAL LETTER Y WITH DIAERESIS (LATIN CAPITAL LETTER Y DIAERESIS) */ + [0x179, 0x17a], /* LATIN CAPITAL LETTER Z WITH ACUTE (LATIN CAPITAL LETTER Z ACUTE) */ + [0x179, 0x17a], /* LATIN SMALL LETTER Z WITH ACUTE (LATIN SMALL LETTER Z ACUTE) */ + [0x17b, 0x17c], /* LATIN CAPITAL LETTER Z WITH DOT ABOVE (LATIN CAPITAL LETTER Z DOT) */ + [0x17b, 0x17c], /* LATIN SMALL LETTER Z WITH DOT ABOVE (LATIN SMALL LETTER Z DOT) */ + [0x17d, 0x17e], /* LATIN CAPITAL LETTER Z WITH CARON (LATIN CAPITAL LETTER Z HACEK) */ + [0x17d, 0x17e], /* LATIN SMALL LETTER Z WITH CARON (LATIN SMALL LETTER Z HACEK) */ + [0x53, 0x17f], /* LATIN SMALL LETTER LONG S */ + [0x243, 0x180], /* LATIN SMALL LETTER B WITH STROKE (LATIN SMALL LETTER B BAR) */ + [0x181, 0x253], /* LATIN CAPITAL LETTER B WITH HOOK (LATIN CAPITAL LETTER B HOOK) */ + [0x182, 0x183], /* LATIN CAPITAL LETTER B WITH TOPBAR (LATIN CAPITAL LETTER B TOPBAR) */ + [0x182, 0x183], /* LATIN SMALL LETTER B WITH TOPBAR (LATIN SMALL LETTER B TOPBAR) */ + [0x184, 0x185], /* LATIN CAPITAL LETTER TONE SIX */ + [0x184, 0x185], /* LATIN SMALL LETTER TONE SIX */ + [0x186, 0x254], /* LATIN CAPITAL LETTER OPEN O */ + [0x187, 0x188], /* LATIN CAPITAL LETTER C WITH HOOK (LATIN CAPITAL LETTER C HOOK) */ + [0x187, 0x188], /* LATIN SMALL LETTER C WITH HOOK (LATIN SMALL LETTER C HOOK) */ + [0x189, 0x256], /* LATIN CAPITAL LETTER AFRICAN D */ + [0x18a, 0x257], /* LATIN CAPITAL LETTER D WITH HOOK (LATIN CAPITAL LETTER D HOOK) */ + [0x18b, 0x18c], /* LATIN CAPITAL LETTER D WITH TOPBAR (LATIN CAPITAL LETTER D TOPBAR) */ + [0x18b, 0x18c], /* LATIN SMALL LETTER D WITH TOPBAR (LATIN SMALL LETTER D TOPBAR) */ + [0x18d, 0x18d], /* LATIN SMALL LETTER TURNED DELTA */ + [0x18e, 0x1dd], /* LATIN CAPITAL LETTER REVERSED E (LATIN CAPITAL LETTER TURNED E) */ + [0x18f, 0x259], /* LATIN CAPITAL LETTER SCHWA */ + [0x190, 0x25b], /* LATIN CAPITAL LETTER OPEN E (LATIN CAPITAL LETTER EPSILON) */ + [0x191, 0x192], /* LATIN CAPITAL LETTER F WITH HOOK (LATIN CAPITAL LETTER F HOOK) */ + [0x191, 0x192], /* LATIN SMALL LETTER F WITH HOOK (LATIN SMALL LETTER SCRIPT F) */ + [0x193, 0x260], /* LATIN CAPITAL LETTER G WITH HOOK (LATIN CAPITAL LETTER G HOOK) */ + [0x194, 0x263], /* LATIN CAPITAL LETTER GAMMA */ + [0x1f6, 0x195], /* LATIN SMALL LETTER HV (LATIN SMALL LETTER H V) */ + [0x196, 0x269], /* LATIN CAPITAL LETTER IOTA */ + [0x197, 0x268], /* LATIN CAPITAL LETTER I WITH STROKE (LATIN CAPITAL LETTER BARRED I) */ + [0x198, 0x199], /* LATIN CAPITAL LETTER K WITH HOOK (LATIN CAPITAL LETTER K HOOK) */ + [0x198, 0x199], /* LATIN SMALL LETTER K WITH HOOK (LATIN SMALL LETTER K HOOK) */ + [0x23d, 0x19a], /* LATIN SMALL LETTER L WITH BAR (LATIN SMALL LETTER BARRED L) */ + [0x19b, 0x19b], /* LATIN SMALL LETTER LAMBDA WITH STROKE (LATIN SMALL LETTER BARRED LAMBDA) */ + [0x19c, 0x26f], /* LATIN CAPITAL LETTER TURNED M */ + [0x19d, 0x272], /* LATIN CAPITAL LETTER N WITH LEFT HOOK (LATIN CAPITAL LETTER N HOOK) */ + [0x220, 0x19e], /* LATIN SMALL LETTER N WITH LONG RIGHT LEG */ + [0x19f, 0x275], /* LATIN CAPITAL LETTER O WITH MIDDLE TILDE (LATIN CAPITAL LETTER BARRED O) */ + [0x1a0, 0x1a1], /* LATIN CAPITAL LETTER O WITH HORN (LATIN CAPITAL LETTER O HORN) */ + [0x1a0, 0x1a1], /* LATIN SMALL LETTER O WITH HORN (LATIN SMALL LETTER O HORN) */ + [0x1a2, 0x1a3], /* LATIN CAPITAL LETTER OI (LATIN CAPITAL LETTER O I) */ + [0x1a2, 0x1a3], /* LATIN SMALL LETTER OI (LATIN SMALL LETTER O I) */ + [0x1a4, 0x1a5], /* LATIN CAPITAL LETTER P WITH HOOK (LATIN CAPITAL LETTER P HOOK) */ + [0x1a4, 0x1a5], /* LATIN SMALL LETTER P WITH HOOK (LATIN SMALL LETTER P HOOK) */ + [0x1a6, 0x280], /* LATIN LETTER YR (LATIN LETTER Y R) */ + [0x1a7, 0x1a8], /* LATIN CAPITAL LETTER TONE TWO */ + [0x1a7, 0x1a8], /* LATIN SMALL LETTER TONE TWO */ + [0x1a9, 0x283], /* LATIN CAPITAL LETTER ESH */ + [0x1aa, 0x1aa], /* LATIN LETTER REVERSED ESH LOOP */ + [0x1ab, 0x1ab], /* LATIN SMALL LETTER T WITH PALATAL HOOK (LATIN SMALL LETTER T PALATAL HOOK) */ + [0x1ac, 0x1ad], /* LATIN CAPITAL LETTER T WITH HOOK (LATIN CAPITAL LETTER T HOOK) */ + [0x1ac, 0x1ad], /* LATIN SMALL LETTER T WITH HOOK (LATIN SMALL LETTER T HOOK) */ + [0x1ae, 0x288], /* LATIN CAPITAL LETTER T WITH RETROFLEX HOOK (LATIN CAPITAL LETTER T RETROFLEX HOOK) */ + [0x1af, 0x1b0], /* LATIN CAPITAL LETTER U WITH HORN (LATIN CAPITAL LETTER U HORN) */ + [0x1af, 0x1b0], /* LATIN SMALL LETTER U WITH HORN (LATIN SMALL LETTER U HORN) */ + [0x1b1, 0x28a], /* LATIN CAPITAL LETTER UPSILON */ + [0x1b2, 0x28b], /* LATIN CAPITAL LETTER V WITH HOOK (LATIN CAPITAL LETTER SCRIPT V) */ + [0x1b3, 0x1b4], /* LATIN CAPITAL LETTER Y WITH HOOK (LATIN CAPITAL LETTER Y HOOK) */ + [0x1b3, 0x1b4], /* LATIN SMALL LETTER Y WITH HOOK (LATIN SMALL LETTER Y HOOK) */ + [0x1b5, 0x1b6], /* LATIN CAPITAL LETTER Z WITH STROKE (LATIN CAPITAL LETTER Z BAR) */ + [0x1b5, 0x1b6], /* LATIN SMALL LETTER Z WITH STROKE (LATIN SMALL LETTER Z BAR) */ + [0x1b7, 0x292], /* LATIN CAPITAL LETTER EZH (LATIN CAPITAL LETTER YOGH) */ + [0x1b8, 0x1b9], /* LATIN CAPITAL LETTER EZH REVERSED (LATIN CAPITAL LETTER REVERSED YOGH) */ + [0x1b8, 0x1b9], /* LATIN SMALL LETTER EZH REVERSED (LATIN SMALL LETTER REVERSED YOGH) */ + [0x1ba, 0x1ba], /* LATIN SMALL LETTER EZH WITH TAIL (LATIN SMALL LETTER YOGH WITH TAIL) */ + [0x1bb, 0x1bb], /* LATIN LETTER TWO WITH STROKE (LATIN LETTER TWO BAR) */ + [0x1bc, 0x1bd], /* LATIN CAPITAL LETTER TONE FIVE */ + [0x1bc, 0x1bd], /* LATIN SMALL LETTER TONE FIVE */ + [0x1be, 0x1be], /* LATIN LETTER INVERTED GLOTTAL STOP WITH STROKE (LATIN LETTER INVERTED GLOTTAL STOP BAR) */ + [0x1f7, 0x1bf], /* LATIN LETTER WYNN */ + [0x1c0, 0x1c0], /* LATIN LETTER DENTAL CLICK (LATIN LETTER PIPE) */ + [0x1c1, 0x1c1], /* LATIN LETTER LATERAL CLICK (LATIN LETTER DOUBLE PIPE) */ + [0x1c2, 0x1c2], /* LATIN LETTER ALVEOLAR CLICK (LATIN LETTER PIPE DOUBLE BAR) */ + [0x1c3, 0x1c3], /* LATIN LETTER RETROFLEX CLICK (LATIN LETTER EXCLAMATION MARK) */ + [0x1c4, 0x1c6], /* LATIN CAPITAL LETTER DZ WITH CARON (LATIN CAPITAL LETTER D Z HACEK) */ + [0x1c4, 0x1c6], /* LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON (LATIN LETTER CAPITAL D SMALL Z HACEK) */ + [0x1c4, 0x1c6], /* LATIN SMALL LETTER DZ WITH CARON (LATIN SMALL LETTER D Z HACEK) */ + [0x1c7, 0x1c9], /* LATIN CAPITAL LETTER LJ (LATIN CAPITAL LETTER L J) */ + [0x1c7, 0x1c9], /* LATIN CAPITAL LETTER L WITH SMALL LETTER J (LATIN LETTER CAPITAL L SMALL J) */ + [0x1c7, 0x1c9], /* LATIN SMALL LETTER LJ (LATIN SMALL LETTER L J) */ + [0x1ca, 0x1cc], /* LATIN CAPITAL LETTER NJ (LATIN CAPITAL LETTER N J) */ + [0x1ca, 0x1cc], /* LATIN CAPITAL LETTER N WITH SMALL LETTER J (LATIN LETTER CAPITAL N SMALL J) */ + [0x1ca, 0x1cc], /* LATIN SMALL LETTER NJ (LATIN SMALL LETTER N J) */ + [0x1cd, 0x1ce], /* LATIN CAPITAL LETTER A WITH CARON (LATIN CAPITAL LETTER A HACEK) */ + [0x1cd, 0x1ce], /* LATIN SMALL LETTER A WITH CARON (LATIN SMALL LETTER A HACEK) */ + [0x1cf, 0x1d0], /* LATIN CAPITAL LETTER I WITH CARON (LATIN CAPITAL LETTER I HACEK) */ + [0x1cf, 0x1d0], /* LATIN SMALL LETTER I WITH CARON (LATIN SMALL LETTER I HACEK) */ + [0x1d1, 0x1d2], /* LATIN CAPITAL LETTER O WITH CARON (LATIN CAPITAL LETTER O HACEK) */ + [0x1d1, 0x1d2], /* LATIN SMALL LETTER O WITH CARON (LATIN SMALL LETTER O HACEK) */ + [0x1d3, 0x1d4], /* LATIN CAPITAL LETTER U WITH CARON (LATIN CAPITAL LETTER U HACEK) */ + [0x1d3, 0x1d4], /* LATIN SMALL LETTER U WITH CARON (LATIN SMALL LETTER U HACEK) */ + [0x1d5, 0x1d6], /* LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON (LATIN CAPITAL LETTER U DIAERESIS MACRON) */ + [0x1d5, 0x1d6], /* LATIN SMALL LETTER U WITH DIAERESIS AND MACRON (LATIN SMALL LETTER U DIAERESIS MACRON) */ + [0x1d7, 0x1d8], /* LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE (LATIN CAPITAL LETTER U DIAERESIS ACUTE) */ + [0x1d7, 0x1d8], /* LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE (LATIN SMALL LETTER U DIAERESIS ACUTE) */ + [0x1d9, 0x1da], /* LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON (LATIN CAPITAL LETTER U DIAERESIS HACEK) */ + [0x1d9, 0x1da], /* LATIN SMALL LETTER U WITH DIAERESIS AND CARON (LATIN SMALL LETTER U DIAERESIS HACEK) */ + [0x1db, 0x1dc], /* LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE (LATIN CAPITAL LETTER U DIAERESIS GRAVE) */ + [0x1db, 0x1dc], /* LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE (LATIN SMALL LETTER U DIAERESIS GRAVE) */ + [0x18e, 0x1dd], /* LATIN SMALL LETTER TURNED E */ + [0x1de, 0x1df], /* LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON (LATIN CAPITAL LETTER A DIAERESIS MACRON) */ + [0x1de, 0x1df], /* LATIN SMALL LETTER A WITH DIAERESIS AND MACRON (LATIN SMALL LETTER A DIAERESIS MACRON) */ + [0x1e0, 0x1e1], /* LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON (LATIN CAPITAL LETTER A DOT MACRON) */ + [0x1e0, 0x1e1], /* LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON (LATIN SMALL LETTER A DOT MACRON) */ + [0x1e2, 0x1e3], /* LATIN CAPITAL LETTER AE WITH MACRON (LATIN CAPITAL LETTER A E MACRON) */ + [0x1e2, 0x1e3], /* LATIN SMALL LETTER AE WITH MACRON (LATIN SMALL LETTER A E MACRON) */ + [0x1e4, 0x1e5], /* LATIN CAPITAL LETTER G WITH STROKE (LATIN CAPITAL LETTER G BAR) */ + [0x1e4, 0x1e5], /* LATIN SMALL LETTER G WITH STROKE (LATIN SMALL LETTER G BAR) */ + [0x1e6, 0x1e7], /* LATIN CAPITAL LETTER G WITH CARON (LATIN CAPITAL LETTER G HACEK) */ + [0x1e6, 0x1e7], /* LATIN SMALL LETTER G WITH CARON (LATIN SMALL LETTER G HACEK) */ + [0x1e8, 0x1e9], /* LATIN CAPITAL LETTER K WITH CARON (LATIN CAPITAL LETTER K HACEK) */ + [0x1e8, 0x1e9], /* LATIN SMALL LETTER K WITH CARON (LATIN SMALL LETTER K HACEK) */ + [0x1ea, 0x1eb], /* LATIN CAPITAL LETTER O WITH OGONEK (LATIN CAPITAL LETTER O OGONEK) */ + [0x1ea, 0x1eb], /* LATIN SMALL LETTER O WITH OGONEK (LATIN SMALL LETTER O OGONEK) */ + [0x1ec, 0x1ed], /* LATIN CAPITAL LETTER O WITH OGONEK AND MACRON (LATIN CAPITAL LETTER O OGONEK MACRON) */ + [0x1ec, 0x1ed], /* LATIN SMALL LETTER O WITH OGONEK AND MACRON (LATIN SMALL LETTER O OGONEK MACRON) */ + [0x1ee, 0x1ef], /* LATIN CAPITAL LETTER EZH WITH CARON (LATIN CAPITAL LETTER YOGH HACEK) */ + [0x1ee, 0x1ef], /* LATIN SMALL LETTER EZH WITH CARON (LATIN SMALL LETTER YOGH HACEK) */ + [0x1f0, 0x1f0], /* LATIN SMALL LETTER J WITH CARON (LATIN SMALL LETTER J HACEK) */ + [0x1f1, 0x1f3], /* LATIN CAPITAL LETTER DZ */ + [0x1f1, 0x1f3], /* LATIN CAPITAL LETTER D WITH SMALL LETTER Z */ + [0x1f1, 0x1f3], /* LATIN SMALL LETTER DZ */ + [0x1f4, 0x1f5], /* LATIN CAPITAL LETTER G WITH ACUTE */ + [0x1f4, 0x1f5], /* LATIN SMALL LETTER G WITH ACUTE */ + [0x1f6, 0x195], /* LATIN CAPITAL LETTER HWAIR */ + [0x1f7, 0x1bf], /* LATIN CAPITAL LETTER WYNN */ + [0x1f8, 0x1f9], /* LATIN CAPITAL LETTER N WITH GRAVE */ + [0x1f8, 0x1f9], /* LATIN SMALL LETTER N WITH GRAVE */ + [0x1fa, 0x1fb], /* LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE */ + [0x1fa, 0x1fb], /* LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE */ + [0x1fc, 0x1fd], /* LATIN CAPITAL LETTER AE WITH ACUTE */ + [0x1fc, 0x1fd], /* LATIN SMALL LETTER AE WITH ACUTE */ + [0x1fe, 0x1ff], /* LATIN CAPITAL LETTER O WITH STROKE AND ACUTE */ + [0x1fe, 0x1ff], /* LATIN SMALL LETTER O WITH STROKE AND ACUTE */ + [0x200, 0x201], /* LATIN CAPITAL LETTER A WITH DOUBLE GRAVE */ + [0x200, 0x201], /* LATIN SMALL LETTER A WITH DOUBLE GRAVE */ + [0x202, 0x203], /* LATIN CAPITAL LETTER A WITH INVERTED BREVE */ + [0x202, 0x203], /* LATIN SMALL LETTER A WITH INVERTED BREVE */ + [0x204, 0x205], /* LATIN CAPITAL LETTER E WITH DOUBLE GRAVE */ + [0x204, 0x205], /* LATIN SMALL LETTER E WITH DOUBLE GRAVE */ + [0x206, 0x207], /* LATIN CAPITAL LETTER E WITH INVERTED BREVE */ + [0x206, 0x207], /* LATIN SMALL LETTER E WITH INVERTED BREVE */ + [0x208, 0x209], /* LATIN CAPITAL LETTER I WITH DOUBLE GRAVE */ + [0x208, 0x209], /* LATIN SMALL LETTER I WITH DOUBLE GRAVE */ + [0x20a, 0x20b], /* LATIN CAPITAL LETTER I WITH INVERTED BREVE */ + [0x20a, 0x20b], /* LATIN SMALL LETTER I WITH INVERTED BREVE */ + [0x20c, 0x20d], /* LATIN CAPITAL LETTER O WITH DOUBLE GRAVE */ + [0x20c, 0x20d], /* LATIN SMALL LETTER O WITH DOUBLE GRAVE */ + [0x20e, 0x20f], /* LATIN CAPITAL LETTER O WITH INVERTED BREVE */ + [0x20e, 0x20f], /* LATIN SMALL LETTER O WITH INVERTED BREVE */ + [0x210, 0x211], /* LATIN CAPITAL LETTER R WITH DOUBLE GRAVE */ + [0x210, 0x211], /* LATIN SMALL LETTER R WITH DOUBLE GRAVE */ + [0x212, 0x213], /* LATIN CAPITAL LETTER R WITH INVERTED BREVE */ + [0x212, 0x213], /* LATIN SMALL LETTER R WITH INVERTED BREVE */ + [0x214, 0x215], /* LATIN CAPITAL LETTER U WITH DOUBLE GRAVE */ + [0x214, 0x215], /* LATIN SMALL LETTER U WITH DOUBLE GRAVE */ + [0x216, 0x217], /* LATIN CAPITAL LETTER U WITH INVERTED BREVE */ + [0x216, 0x217], /* LATIN SMALL LETTER U WITH INVERTED BREVE */ + [0x218, 0x219], /* LATIN CAPITAL LETTER S WITH COMMA BELOW */ + [0x218, 0x219], /* LATIN SMALL LETTER S WITH COMMA BELOW */ + [0x21a, 0x21b], /* LATIN CAPITAL LETTER T WITH COMMA BELOW */ + [0x21a, 0x21b], /* LATIN SMALL LETTER T WITH COMMA BELOW */ + [0x21c, 0x21d], /* LATIN CAPITAL LETTER YOGH */ + [0x21c, 0x21d], /* LATIN SMALL LETTER YOGH */ + [0x21e, 0x21f], /* LATIN CAPITAL LETTER H WITH CARON */ + [0x21e, 0x21f], /* LATIN SMALL LETTER H WITH CARON */ + [0x220, 0x19e], /* LATIN CAPITAL LETTER N WITH LONG RIGHT LEG */ + [0x221, 0x221], /* LATIN SMALL LETTER D WITH CURL */ + [0x222, 0x223], /* LATIN CAPITAL LETTER OU */ + [0x222, 0x223], /* LATIN SMALL LETTER OU */ + [0x224, 0x225], /* LATIN CAPITAL LETTER Z WITH HOOK */ + [0x224, 0x225], /* LATIN SMALL LETTER Z WITH HOOK */ + [0x226, 0x227], /* LATIN CAPITAL LETTER A WITH DOT ABOVE */ + [0x226, 0x227], /* LATIN SMALL LETTER A WITH DOT ABOVE */ + [0x228, 0x229], /* LATIN CAPITAL LETTER E WITH CEDILLA */ + [0x228, 0x229], /* LATIN SMALL LETTER E WITH CEDILLA */ + [0x22a, 0x22b], /* LATIN CAPITAL LETTER O WITH DIAERESIS AND MACRON */ + [0x22a, 0x22b], /* LATIN SMALL LETTER O WITH DIAERESIS AND MACRON */ + [0x22c, 0x22d], /* LATIN CAPITAL LETTER O WITH TILDE AND MACRON */ + [0x22c, 0x22d], /* LATIN SMALL LETTER O WITH TILDE AND MACRON */ + [0x22e, 0x22f], /* LATIN CAPITAL LETTER O WITH DOT ABOVE */ + [0x22e, 0x22f], /* LATIN SMALL LETTER O WITH DOT ABOVE */ + [0x230, 0x231], /* LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON */ + [0x230, 0x231], /* LATIN SMALL LETTER O WITH DOT ABOVE AND MACRON */ + [0x232, 0x233], /* LATIN CAPITAL LETTER Y WITH MACRON */ + [0x232, 0x233], /* LATIN SMALL LETTER Y WITH MACRON */ + [0x234, 0x234], /* LATIN SMALL LETTER L WITH CURL */ + [0x235, 0x235], /* LATIN SMALL LETTER N WITH CURL */ + [0x236, 0x236], /* LATIN SMALL LETTER T WITH CURL */ + [0x237, 0x237], /* LATIN SMALL LETTER DOTLESS J */ + [0x238, 0x238], /* LATIN SMALL LETTER DB DIGRAPH */ + [0x239, 0x239], /* LATIN SMALL LETTER QP DIGRAPH */ + [0x23a, 0x2c65], /* LATIN CAPITAL LETTER A WITH STROKE */ + [0x23b, 0x23c], /* LATIN CAPITAL LETTER C WITH STROKE */ + [0x23b, 0x23c], /* LATIN SMALL LETTER C WITH STROKE */ + [0x23d, 0x19a], /* LATIN CAPITAL LETTER L WITH BAR */ + [0x23e, 0x2c66], /* LATIN CAPITAL LETTER T WITH DIAGONAL STROKE */ + [0x2c7e, 0x23f], /* LATIN SMALL LETTER S WITH SWASH TAIL */ + [0x2c7f, 0x240], /* LATIN SMALL LETTER Z WITH SWASH TAIL */ + [0x241, 0x242], /* LATIN CAPITAL LETTER GLOTTAL STOP */ + [0x241, 0x242], /* LATIN SMALL LETTER GLOTTAL STOP */ + [0x243, 0x180], /* LATIN CAPITAL LETTER B WITH STROKE */ + [0x244, 0x289], /* LATIN CAPITAL LETTER U BAR */ + [0x245, 0x28c], /* LATIN CAPITAL LETTER TURNED V */ + [0x246, 0x247], /* LATIN CAPITAL LETTER E WITH STROKE */ + [0x246, 0x247], /* LATIN SMALL LETTER E WITH STROKE */ + [0x248, 0x249], /* LATIN CAPITAL LETTER J WITH STROKE */ + [0x248, 0x249], /* LATIN SMALL LETTER J WITH STROKE */ + [0x24a, 0x24b], /* LATIN CAPITAL LETTER SMALL Q WITH HOOK TAIL */ + [0x24a, 0x24b], /* LATIN SMALL LETTER Q WITH HOOK TAIL */ + [0x24c, 0x24d], /* LATIN CAPITAL LETTER R WITH STROKE */ + [0x24c, 0x24d], /* LATIN SMALL LETTER R WITH STROKE */ + [0x24e, 0x24f], /* LATIN CAPITAL LETTER Y WITH STROKE */ + [0x24e, 0x24f], /* LATIN SMALL LETTER Y WITH STROKE */ + [0x2c6f, 0x250], /* LATIN SMALL LETTER TURNED A */ + [0x2c6d, 0x251], /* LATIN SMALL LETTER ALPHA (LATIN SMALL LETTER SCRIPT A) */ + [0x2c70, 0x252], /* LATIN SMALL LETTER TURNED ALPHA (LATIN SMALL LETTER TURNED SCRIPT A) */ + [0x181, 0x253], /* LATIN SMALL LETTER B WITH HOOK (LATIN SMALL LETTER B HOOK) */ + [0x186, 0x254], /* LATIN SMALL LETTER OPEN O */ + [0x255, 0x255], /* LATIN SMALL LETTER C WITH CURL (LATIN SMALL LETTER C CURL) */ + [0x189, 0x256], /* LATIN SMALL LETTER D WITH TAIL (LATIN SMALL LETTER D RETROFLEX HOOK) */ + [0x18a, 0x257], /* LATIN SMALL LETTER D WITH HOOK (LATIN SMALL LETTER D HOOK) */ + [0x258, 0x258], /* LATIN SMALL LETTER REVERSED E */ + [0x18f, 0x259], /* LATIN SMALL LETTER SCHWA */ + [0x25a, 0x25a], /* LATIN SMALL LETTER SCHWA WITH HOOK (LATIN SMALL LETTER SCHWA HOOK) */ + [0x190, 0x25b], /* LATIN SMALL LETTER OPEN E (LATIN SMALL LETTER EPSILON) */ + [0xa7ab, 0x25c], /* LATIN SMALL LETTER REVERSED OPEN E (LATIN SMALL LETTER REVERSED EPSILON) */ + [0x25d, 0x25d], /* LATIN SMALL LETTER REVERSED OPEN E WITH HOOK (LATIN SMALL LETTER REVERSED EPSILON HOOK) */ + [0x25e, 0x25e], /* LATIN SMALL LETTER CLOSED REVERSED OPEN E (LATIN SMALL LETTER CLOSED REVERSED EPSILON) */ + [0x25f, 0x25f], /* LATIN SMALL LETTER DOTLESS J WITH STROKE (LATIN SMALL LETTER DOTLESS J BAR) */ + [0x193, 0x260], /* LATIN SMALL LETTER G WITH HOOK (LATIN SMALL LETTER G HOOK) */ + [0xa7ac, 0x261], /* LATIN SMALL LETTER SCRIPT G */ + [0x262, 0x262], /* LATIN LETTER SMALL CAPITAL G */ + [0x194, 0x263], /* LATIN SMALL LETTER GAMMA */ + [0x264, 0x264], /* LATIN SMALL LETTER RAMS HORN (LATIN SMALL LETTER BABY GAMMA) */ + [0xa78d, 0x265], /* LATIN SMALL LETTER TURNED H */ + [0xa7aa, 0x266], /* LATIN SMALL LETTER H WITH HOOK (LATIN SMALL LETTER H HOOK) */ + [0x267, 0x267], /* LATIN SMALL LETTER HENG WITH HOOK (LATIN SMALL LETTER HENG HOOK) */ + [0x197, 0x268], /* LATIN SMALL LETTER I WITH STROKE (LATIN SMALL LETTER BARRED I) */ + [0x196, 0x269], /* LATIN SMALL LETTER IOTA */ + [0xa7ae, 0x26a], /* LATIN LETTER SMALL CAPITAL I */ + [0x2c62, 0x26b], /* LATIN SMALL LETTER L WITH MIDDLE TILDE */ + [0xa7ad, 0x26c], /* LATIN SMALL LETTER L WITH BELT (LATIN SMALL LETTER L BELT) */ + [0x26d, 0x26d], /* LATIN SMALL LETTER L WITH RETROFLEX HOOK (LATIN SMALL LETTER L RETROFLEX HOOK) */ + [0x26e, 0x26e], /* LATIN SMALL LETTER LEZH (LATIN SMALL LETTER L YOGH) */ + [0x19c, 0x26f], /* LATIN SMALL LETTER TURNED M */ + [0x270, 0x270], /* LATIN SMALL LETTER TURNED M WITH LONG LEG */ + [0x2c6e, 0x271], /* LATIN SMALL LETTER M WITH HOOK (LATIN SMALL LETTER M HOOK) */ + [0x19d, 0x272], /* LATIN SMALL LETTER N WITH LEFT HOOK (LATIN SMALL LETTER N HOOK) */ + [0x273, 0x273], /* LATIN SMALL LETTER N WITH RETROFLEX HOOK (LATIN SMALL LETTER N RETROFLEX HOOK) */ + [0x274, 0x274], /* LATIN LETTER SMALL CAPITAL N */ + [0x19f, 0x275], /* LATIN SMALL LETTER BARRED O */ + [0x276, 0x276], /* LATIN LETTER SMALL CAPITAL OE (LATIN LETTER SMALL CAPITAL O E) */ + [0x277, 0x277], /* LATIN SMALL LETTER CLOSED OMEGA */ + [0x278, 0x278], /* LATIN SMALL LETTER PHI */ + [0x279, 0x279], /* LATIN SMALL LETTER TURNED R */ + [0x27a, 0x27a], /* LATIN SMALL LETTER TURNED R WITH LONG LEG */ + [0x27b, 0x27b], /* LATIN SMALL LETTER TURNED R WITH HOOK (LATIN SMALL LETTER TURNED R HOOK) */ + [0x27c, 0x27c], /* LATIN SMALL LETTER R WITH LONG LEG */ + [0x2c64, 0x27d], /* LATIN SMALL LETTER R WITH TAIL (LATIN SMALL LETTER R HOOK) */ + [0x27e, 0x27e], /* LATIN SMALL LETTER R WITH FISHHOOK (LATIN SMALL LETTER FISHHOOK R) */ + [0x27f, 0x27f], /* LATIN SMALL LETTER REVERSED R WITH FISHHOOK (LATIN SMALL LETTER REVERSED FISHHOOK R) */ + [0x1a6, 0x280], /* LATIN LETTER SMALL CAPITAL R */ + [0x281, 0x281], /* LATIN LETTER SMALL CAPITAL INVERTED R */ + [0x282, 0x282], /* LATIN SMALL LETTER S WITH HOOK (LATIN SMALL LETTER S HOOK) */ + [0x1a9, 0x283], /* LATIN SMALL LETTER ESH */ + [0x284, 0x284], /* LATIN SMALL LETTER DOTLESS J WITH STROKE AND HOOK (LATIN SMALL LETTER DOTLESS J BAR HOOK) */ + [0x285, 0x285], /* LATIN SMALL LETTER SQUAT REVERSED ESH */ + [0x286, 0x286], /* LATIN SMALL LETTER ESH WITH CURL (LATIN SMALL LETTER ESH CURL) */ + [0xa7b1, 0x287], /* LATIN SMALL LETTER TURNED T */ + [0x1ae, 0x288], /* LATIN SMALL LETTER T WITH RETROFLEX HOOK (LATIN SMALL LETTER T RETROFLEX HOOK) */ + [0x244, 0x289], /* LATIN SMALL LETTER U BAR */ + [0x1b1, 0x28a], /* LATIN SMALL LETTER UPSILON */ + [0x1b2, 0x28b], /* LATIN SMALL LETTER V WITH HOOK (LATIN SMALL LETTER SCRIPT V) */ + [0x245, 0x28c], /* LATIN SMALL LETTER TURNED V */ + [0x28d, 0x28d], /* LATIN SMALL LETTER TURNED W */ + [0x28e, 0x28e], /* LATIN SMALL LETTER TURNED Y */ + [0x28f, 0x28f], /* LATIN LETTER SMALL CAPITAL Y */ + [0x290, 0x290], /* LATIN SMALL LETTER Z WITH RETROFLEX HOOK (LATIN SMALL LETTER Z RETROFLEX HOOK) */ + [0x291, 0x291], /* LATIN SMALL LETTER Z WITH CURL (LATIN SMALL LETTER Z CURL) */ + [0x1b7, 0x292], /* LATIN SMALL LETTER EZH (LATIN SMALL LETTER YOGH) */ + [0x293, 0x293], /* LATIN SMALL LETTER EZH WITH CURL (LATIN SMALL LETTER YOGH CURL) */ + [0x294, 0x294], /* LATIN LETTER GLOTTAL STOP */ + [0x295, 0x295], /* LATIN LETTER PHARYNGEAL VOICED FRICATIVE (LATIN LETTER REVERSED GLOTTAL STOP) */ + [0x296, 0x296], /* LATIN LETTER INVERTED GLOTTAL STOP */ + [0x297, 0x297], /* LATIN LETTER STRETCHED C */ + [0x298, 0x298], /* LATIN LETTER BILABIAL CLICK (LATIN LETTER BULLSEYE) */ + [0x299, 0x299], /* LATIN LETTER SMALL CAPITAL B */ + [0x29a, 0x29a], /* LATIN SMALL LETTER CLOSED OPEN E (LATIN SMALL LETTER CLOSED EPSILON) */ + [0x29b, 0x29b], /* LATIN LETTER SMALL CAPITAL G WITH HOOK (LATIN LETTER SMALL CAPITAL G HOOK) */ + [0x29c, 0x29c], /* LATIN LETTER SMALL CAPITAL H */ + [0xa7b2, 0x29d], /* LATIN SMALL LETTER J WITH CROSSED-TAIL (LATIN SMALL LETTER CROSSED-TAIL J) */ + [0xa7b0, 0x29e], /* LATIN SMALL LETTER TURNED K */ + [0x29f, 0x29f], /* LATIN LETTER SMALL CAPITAL L */ + [0x2a0, 0x2a0], /* LATIN SMALL LETTER Q WITH HOOK (LATIN SMALL LETTER Q HOOK) */ + [0x2a1, 0x2a1], /* LATIN LETTER GLOTTAL STOP WITH STROKE (LATIN LETTER GLOTTAL STOP BAR) */ + [0x2a2, 0x2a2], /* LATIN LETTER REVERSED GLOTTAL STOP WITH STROKE (LATIN LETTER REVERSED GLOTTAL STOP BAR) */ + [0x2a3, 0x2a3], /* LATIN SMALL LETTER DZ DIGRAPH (LATIN SMALL LETTER D Z) */ + [0x2a4, 0x2a4], /* LATIN SMALL LETTER DEZH DIGRAPH (LATIN SMALL LETTER D YOGH) */ + [0x2a5, 0x2a5], /* LATIN SMALL LETTER DZ DIGRAPH WITH CURL (LATIN SMALL LETTER D Z CURL) */ + [0x2a6, 0x2a6], /* LATIN SMALL LETTER TS DIGRAPH (LATIN SMALL LETTER T S) */ + [0x2a7, 0x2a7], /* LATIN SMALL LETTER TESH DIGRAPH (LATIN SMALL LETTER T ESH) */ + [0x2a8, 0x2a8], /* LATIN SMALL LETTER TC DIGRAPH WITH CURL (LATIN SMALL LETTER T C CURL) */ + [0x2a9, 0x2a9], /* LATIN SMALL LETTER FENG DIGRAPH */ + [0x2aa, 0x2aa], /* LATIN SMALL LETTER LS DIGRAPH */ + [0x2ab, 0x2ab], /* LATIN SMALL LETTER LZ DIGRAPH */ + [0x2ac, 0x2ac], /* LATIN LETTER BILABIAL PERCUSSIVE */ + [0x2ad, 0x2ad], /* LATIN LETTER BIDENTAL PERCUSSIVE */ + [0x2ae, 0x2ae], /* LATIN SMALL LETTER TURNED H WITH FISHHOOK */ + [0x2af, 0x2af], /* LATIN SMALL LETTER TURNED H WITH FISHHOOK AND TAIL */ + [0x2b0, 0x2b0], /* MODIFIER LETTER SMALL H */ + [0x2b1, 0x2b1], /* MODIFIER LETTER SMALL H WITH HOOK (MODIFIER LETTER SMALL H HOOK) */ + [0x2b2, 0x2b2], /* MODIFIER LETTER SMALL J */ + [0x2b3, 0x2b3], /* MODIFIER LETTER SMALL R */ + [0x2b4, 0x2b4], /* MODIFIER LETTER SMALL TURNED R */ + [0x2b5, 0x2b5], /* MODIFIER LETTER SMALL TURNED R WITH HOOK (MODIFIER LETTER SMALL TURNED R HOOK) */ + [0x2b6, 0x2b6], /* MODIFIER LETTER SMALL CAPITAL INVERTED R */ + [0x2b7, 0x2b7], /* MODIFIER LETTER SMALL W */ + [0x2b8, 0x2b8], /* MODIFIER LETTER SMALL Y */ + [0x2b9, 0x2b9], /* MODIFIER LETTER PRIME */ + [0x2ba, 0x2ba], /* MODIFIER LETTER DOUBLE PRIME */ + [0x2bb, 0x2bb], /* MODIFIER LETTER TURNED COMMA */ + [0x2bc, 0x2bc], /* MODIFIER LETTER APOSTROPHE */ + [0x2bd, 0x2bd], /* MODIFIER LETTER REVERSED COMMA */ + [0x2be, 0x2be], /* MODIFIER LETTER RIGHT HALF RING */ + [0x2bf, 0x2bf], /* MODIFIER LETTER LEFT HALF RING */ + [0x2c0, 0x2c0], /* MODIFIER LETTER GLOTTAL STOP */ + [0x2c1, 0x2c1], /* MODIFIER LETTER REVERSED GLOTTAL STOP */ + [0x2c2, 0x2c2], /* MODIFIER LETTER LEFT ARROWHEAD */ + [0x2c3, 0x2c3], /* MODIFIER LETTER RIGHT ARROWHEAD */ + [0x2c4, 0x2c4], /* MODIFIER LETTER UP ARROWHEAD */ + [0x2c5, 0x2c5], /* MODIFIER LETTER DOWN ARROWHEAD */ + [0x2c6, 0x2c6], /* MODIFIER LETTER CIRCUMFLEX ACCENT (MODIFIER LETTER CIRCUMFLEX) */ + [0x2c7, 0x2c7], /* CARON (MODIFIER LETTER HACEK) */ + [0x2c8, 0x2c8], /* MODIFIER LETTER VERTICAL LINE */ + [0x2c9, 0x2c9], /* MODIFIER LETTER MACRON */ + [0x2ca, 0x2ca], /* MODIFIER LETTER ACUTE ACCENT (MODIFIER LETTER ACUTE) */ + [0x2cb, 0x2cb], /* MODIFIER LETTER GRAVE ACCENT (MODIFIER LETTER GRAVE) */ + [0x2cc, 0x2cc], /* MODIFIER LETTER LOW VERTICAL LINE */ + [0x2cd, 0x2cd], /* MODIFIER LETTER LOW MACRON */ + [0x2ce, 0x2ce], /* MODIFIER LETTER LOW GRAVE ACCENT (MODIFIER LETTER LOW GRAVE) */ + [0x2cf, 0x2cf], /* MODIFIER LETTER LOW ACUTE ACCENT (MODIFIER LETTER LOW ACUTE) */ + [0x2d0, 0x2d0], /* MODIFIER LETTER TRIANGULAR COLON */ + [0x2d1, 0x2d1], /* MODIFIER LETTER HALF TRIANGULAR COLON */ + [0x2d2, 0x2d2], /* MODIFIER LETTER CENTRED RIGHT HALF RING (MODIFIER LETTER CENTERED RIGHT HALF RING) */ + [0x2d3, 0x2d3], /* MODIFIER LETTER CENTRED LEFT HALF RING (MODIFIER LETTER CENTERED LEFT HALF RING) */ + [0x2d4, 0x2d4], /* MODIFIER LETTER UP TACK */ + [0x2d5, 0x2d5], /* MODIFIER LETTER DOWN TACK */ + [0x2d6, 0x2d6], /* MODIFIER LETTER PLUS SIGN */ + [0x2d7, 0x2d7], /* MODIFIER LETTER MINUS SIGN */ + [0x2d8, 0x2d8], /* BREVE (SPACING BREVE) */ + [0x2d9, 0x2d9], /* DOT ABOVE (SPACING DOT ABOVE) */ + [0x2da, 0x2da], /* RING ABOVE (SPACING RING ABOVE) */ + [0x2db, 0x2db], /* OGONEK (SPACING OGONEK) */ + [0x2dc, 0x2dc], /* SMALL TILDE (SPACING TILDE) */ + [0x2dd, 0x2dd], /* DOUBLE ACUTE ACCENT (SPACING DOUBLE ACUTE) */ + [0x2de, 0x2de], /* MODIFIER LETTER RHOTIC HOOK */ + [0x2df, 0x2df], /* MODIFIER LETTER CROSS ACCENT */ + [0x2e0, 0x2e0], /* MODIFIER LETTER SMALL GAMMA */ + [0x2e1, 0x2e1], /* MODIFIER LETTER SMALL L */ + [0x2e2, 0x2e2], /* MODIFIER LETTER SMALL S */ + [0x2e3, 0x2e3], /* MODIFIER LETTER SMALL X */ + [0x2e4, 0x2e4], /* MODIFIER LETTER SMALL REVERSED GLOTTAL STOP */ + [0x2e5, 0x2e5], /* MODIFIER LETTER EXTRA-HIGH TONE BAR */ + [0x2e6, 0x2e6], /* MODIFIER LETTER HIGH TONE BAR */ + [0x2e7, 0x2e7], /* MODIFIER LETTER MID TONE BAR */ + [0x2e8, 0x2e8], /* MODIFIER LETTER LOW TONE BAR */ + [0x2e9, 0x2e9], /* MODIFIER LETTER EXTRA-LOW TONE BAR */ + [0x2ea, 0x2ea], /* MODIFIER LETTER YIN DEPARTING TONE MARK */ + [0x2eb, 0x2eb], /* MODIFIER LETTER YANG DEPARTING TONE MARK */ + [0x2ec, 0x2ec], /* MODIFIER LETTER VOICING */ + [0x2ed, 0x2ed], /* MODIFIER LETTER UNASPIRATED */ + [0x2ee, 0x2ee], /* MODIFIER LETTER DOUBLE APOSTROPHE */ + [0x2ef, 0x2ef], /* MODIFIER LETTER LOW DOWN ARROWHEAD */ + [0x2f0, 0x2f0], /* MODIFIER LETTER LOW UP ARROWHEAD */ + [0x2f1, 0x2f1], /* MODIFIER LETTER LOW LEFT ARROWHEAD */ + [0x2f2, 0x2f2], /* MODIFIER LETTER LOW RIGHT ARROWHEAD */ + [0x2f3, 0x2f3], /* MODIFIER LETTER LOW RING */ + [0x2f4, 0x2f4], /* MODIFIER LETTER MIDDLE GRAVE ACCENT */ + [0x2f5, 0x2f5], /* MODIFIER LETTER MIDDLE DOUBLE GRAVE ACCENT */ + [0x2f6, 0x2f6], /* MODIFIER LETTER MIDDLE DOUBLE ACUTE ACCENT */ + [0x2f7, 0x2f7], /* MODIFIER LETTER LOW TILDE */ + [0x2f8, 0x2f8], /* MODIFIER LETTER RAISED COLON */ + [0x2f9, 0x2f9], /* MODIFIER LETTER BEGIN HIGH TONE */ + [0x2fa, 0x2fa], /* MODIFIER LETTER END HIGH TONE */ + [0x2fb, 0x2fb], /* MODIFIER LETTER BEGIN LOW TONE */ + [0x2fc, 0x2fc], /* MODIFIER LETTER END LOW TONE */ + [0x2fd, 0x2fd], /* MODIFIER LETTER SHELF */ + [0x2fe, 0x2fe], /* MODIFIER LETTER OPEN SHELF */ + [0x2ff, 0x2ff], /* MODIFIER LETTER LOW LEFT ARROW */ + [0x300, 0x300], /* COMBINING GRAVE ACCENT (NON-SPACING GRAVE) */ + [0x301, 0x301], /* COMBINING ACUTE ACCENT (NON-SPACING ACUTE) */ + [0x302, 0x302], /* COMBINING CIRCUMFLEX ACCENT (NON-SPACING CIRCUMFLEX) */ + [0x303, 0x303], /* COMBINING TILDE (NON-SPACING TILDE) */ + [0x304, 0x304], /* COMBINING MACRON (NON-SPACING MACRON) */ + [0x305, 0x305], /* COMBINING OVERLINE (NON-SPACING OVERSCORE) */ + [0x306, 0x306], /* COMBINING BREVE (NON-SPACING BREVE) */ + [0x307, 0x307], /* COMBINING DOT ABOVE (NON-SPACING DOT ABOVE) */ + [0x308, 0x308], /* COMBINING DIAERESIS (NON-SPACING DIAERESIS) */ + [0x309, 0x309], /* COMBINING HOOK ABOVE (NON-SPACING HOOK ABOVE) */ + [0x30a, 0x30a], /* COMBINING RING ABOVE (NON-SPACING RING ABOVE) */ + [0x30b, 0x30b], /* COMBINING DOUBLE ACUTE ACCENT (NON-SPACING DOUBLE ACUTE) */ + [0x30c, 0x30c], /* COMBINING CARON (NON-SPACING HACEK) */ + [0x30d, 0x30d], /* COMBINING VERTICAL LINE ABOVE (NON-SPACING VERTICAL LINE ABOVE) */ + [0x30e, 0x30e], /* COMBINING DOUBLE VERTICAL LINE ABOVE (NON-SPACING DOUBLE VERTICAL LINE ABOVE) */ + [0x30f, 0x30f], /* COMBINING DOUBLE GRAVE ACCENT (NON-SPACING DOUBLE GRAVE) */ + [0x310, 0x310], /* COMBINING CANDRABINDU (NON-SPACING CANDRABINDU) */ + [0x311, 0x311], /* COMBINING INVERTED BREVE (NON-SPACING INVERTED BREVE) */ + [0x312, 0x312], /* COMBINING TURNED COMMA ABOVE (NON-SPACING TURNED COMMA ABOVE) */ + [0x313, 0x313], /* COMBINING COMMA ABOVE (NON-SPACING COMMA ABOVE) */ + [0x314, 0x314], /* COMBINING REVERSED COMMA ABOVE (NON-SPACING REVERSED COMMA ABOVE) */ + [0x315, 0x315], /* COMBINING COMMA ABOVE RIGHT (NON-SPACING COMMA ABOVE RIGHT) */ + [0x316, 0x316], /* COMBINING GRAVE ACCENT BELOW (NON-SPACING GRAVE BELOW) */ + [0x317, 0x317], /* COMBINING ACUTE ACCENT BELOW (NON-SPACING ACUTE BELOW) */ + [0x318, 0x318], /* COMBINING LEFT TACK BELOW (NON-SPACING LEFT TACK BELOW) */ + [0x319, 0x319], /* COMBINING RIGHT TACK BELOW (NON-SPACING RIGHT TACK BELOW) */ + [0x31a, 0x31a], /* COMBINING LEFT ANGLE ABOVE (NON-SPACING LEFT ANGLE ABOVE) */ + [0x31b, 0x31b], /* COMBINING HORN (NON-SPACING HORN) */ + [0x31c, 0x31c], /* COMBINING LEFT HALF RING BELOW (NON-SPACING LEFT HALF RING BELOW) */ + [0x31d, 0x31d], /* COMBINING UP TACK BELOW (NON-SPACING UP TACK BELOW) */ + [0x31e, 0x31e], /* COMBINING DOWN TACK BELOW (NON-SPACING DOWN TACK BELOW) */ + [0x31f, 0x31f], /* COMBINING PLUS SIGN BELOW (NON-SPACING PLUS SIGN BELOW) */ + [0x320, 0x320], /* COMBINING MINUS SIGN BELOW (NON-SPACING MINUS SIGN BELOW) */ + [0x321, 0x321], /* COMBINING PALATALIZED HOOK BELOW (NON-SPACING PALATALIZED HOOK BELOW) */ + [0x322, 0x322], /* COMBINING RETROFLEX HOOK BELOW (NON-SPACING RETROFLEX HOOK BELOW) */ + [0x323, 0x323], /* COMBINING DOT BELOW (NON-SPACING DOT BELOW) */ + [0x324, 0x324], /* COMBINING DIAERESIS BELOW (NON-SPACING DOUBLE DOT BELOW) */ + [0x325, 0x325], /* COMBINING RING BELOW (NON-SPACING RING BELOW) */ + [0x326, 0x326], /* COMBINING COMMA BELOW (NON-SPACING COMMA BELOW) */ + [0x327, 0x327], /* COMBINING CEDILLA (NON-SPACING CEDILLA) */ + [0x328, 0x328], /* COMBINING OGONEK (NON-SPACING OGONEK) */ + [0x329, 0x329], /* COMBINING VERTICAL LINE BELOW (NON-SPACING VERTICAL LINE BELOW) */ + [0x32a, 0x32a], /* COMBINING BRIDGE BELOW (NON-SPACING BRIDGE BELOW) */ + [0x32b, 0x32b], /* COMBINING INVERTED DOUBLE ARCH BELOW (NON-SPACING INVERTED DOUBLE ARCH BELOW) */ + [0x32c, 0x32c], /* COMBINING CARON BELOW (NON-SPACING HACEK BELOW) */ + [0x32d, 0x32d], /* COMBINING CIRCUMFLEX ACCENT BELOW (NON-SPACING CIRCUMFLEX BELOW) */ + [0x32e, 0x32e], /* COMBINING BREVE BELOW (NON-SPACING BREVE BELOW) */ + [0x32f, 0x32f], /* COMBINING INVERTED BREVE BELOW (NON-SPACING INVERTED BREVE BELOW) */ + [0x330, 0x330], /* COMBINING TILDE BELOW (NON-SPACING TILDE BELOW) */ + [0x331, 0x331], /* COMBINING MACRON BELOW (NON-SPACING MACRON BELOW) */ + [0x332, 0x332], /* COMBINING LOW LINE (NON-SPACING UNDERSCORE) */ + [0x333, 0x333], /* COMBINING DOUBLE LOW LINE (NON-SPACING DOUBLE UNDERSCORE) */ + [0x334, 0x334], /* COMBINING TILDE OVERLAY (NON-SPACING TILDE OVERLAY) */ + [0x335, 0x335], /* COMBINING SHORT STROKE OVERLAY (NON-SPACING SHORT BAR OVERLAY) */ + [0x336, 0x336], /* COMBINING LONG STROKE OVERLAY (NON-SPACING LONG BAR OVERLAY) */ + [0x337, 0x337], /* COMBINING SHORT SOLIDUS OVERLAY (NON-SPACING SHORT SLASH OVERLAY) */ + [0x338, 0x338], /* COMBINING LONG SOLIDUS OVERLAY (NON-SPACING LONG SLASH OVERLAY) */ + [0x339, 0x339], /* COMBINING RIGHT HALF RING BELOW (NON-SPACING RIGHT HALF RING BELOW) */ + [0x33a, 0x33a], /* COMBINING INVERTED BRIDGE BELOW (NON-SPACING INVERTED BRIDGE BELOW) */ + [0x33b, 0x33b], /* COMBINING SQUARE BELOW (NON-SPACING SQUARE BELOW) */ + [0x33c, 0x33c], /* COMBINING SEAGULL BELOW (NON-SPACING SEAGULL BELOW) */ + [0x33d, 0x33d], /* COMBINING X ABOVE (NON-SPACING X ABOVE) */ + [0x33e, 0x33e], /* COMBINING VERTICAL TILDE (NON-SPACING VERTICAL TILDE) */ + [0x33f, 0x33f], /* COMBINING DOUBLE OVERLINE (NON-SPACING DOUBLE OVERSCORE) */ + [0x340, 0x340], /* COMBINING GRAVE TONE MARK (NON-SPACING GRAVE TONE MARK) */ + [0x341, 0x341], /* COMBINING ACUTE TONE MARK (NON-SPACING ACUTE TONE MARK) */ + [0x342, 0x342], /* COMBINING GREEK PERISPOMENI */ + [0x343, 0x343], /* COMBINING GREEK KORONIS */ + [0x344, 0x344], /* COMBINING GREEK DIALYTIKA TONOS (GREEK NON-SPACING DIAERESIS TONOS) */ + [0x399, 0x345], /* COMBINING GREEK YPOGEGRAMMENI (GREEK NON-SPACING IOTA BELOW) */ + [0x346, 0x346], /* COMBINING BRIDGE ABOVE */ + [0x347, 0x347], /* COMBINING EQUALS SIGN BELOW */ + [0x348, 0x348], /* COMBINING DOUBLE VERTICAL LINE BELOW */ + [0x349, 0x349], /* COMBINING LEFT ANGLE BELOW */ + [0x34a, 0x34a], /* COMBINING NOT TILDE ABOVE */ + [0x34b, 0x34b], /* COMBINING HOMOTHETIC ABOVE */ + [0x34c, 0x34c], /* COMBINING ALMOST EQUAL TO ABOVE */ + [0x34d, 0x34d], /* COMBINING LEFT RIGHT ARROW BELOW */ + [0x34e, 0x34e], /* COMBINING UPWARDS ARROW BELOW */ + [0x34f, 0x34f], /* COMBINING GRAPHEME JOINER */ + [0x350, 0x350], /* COMBINING RIGHT ARROWHEAD ABOVE */ + [0x351, 0x351], /* COMBINING LEFT HALF RING ABOVE */ + [0x352, 0x352], /* COMBINING FERMATA */ + [0x353, 0x353], /* COMBINING X BELOW */ + [0x354, 0x354], /* COMBINING LEFT ARROWHEAD BELOW */ + [0x355, 0x355], /* COMBINING RIGHT ARROWHEAD BELOW */ + [0x356, 0x356], /* COMBINING RIGHT ARROWHEAD AND UP ARROWHEAD BELOW */ + [0x357, 0x357], /* COMBINING RIGHT HALF RING ABOVE */ + [0x358, 0x358], /* COMBINING DOT ABOVE RIGHT */ + [0x359, 0x359], /* COMBINING ASTERISK BELOW */ + [0x35a, 0x35a], /* COMBINING DOUBLE RING BELOW */ + [0x35b, 0x35b], /* COMBINING ZIGZAG ABOVE */ + [0x35c, 0x35c], /* COMBINING DOUBLE BREVE BELOW */ + [0x35d, 0x35d], /* COMBINING DOUBLE BREVE */ + [0x35e, 0x35e], /* COMBINING DOUBLE MACRON */ + [0x35f, 0x35f], /* COMBINING DOUBLE MACRON BELOW */ + [0x360, 0x360], /* COMBINING DOUBLE TILDE */ + [0x361, 0x361], /* COMBINING DOUBLE INVERTED BREVE */ + [0x362, 0x362], /* COMBINING DOUBLE RIGHTWARDS ARROW BELOW */ + [0x363, 0x363], /* COMBINING LATIN SMALL LETTER A */ + [0x364, 0x364], /* COMBINING LATIN SMALL LETTER E */ + [0x365, 0x365], /* COMBINING LATIN SMALL LETTER I */ + [0x366, 0x366], /* COMBINING LATIN SMALL LETTER O */ + [0x367, 0x367], /* COMBINING LATIN SMALL LETTER U */ + [0x368, 0x368], /* COMBINING LATIN SMALL LETTER C */ + [0x369, 0x369], /* COMBINING LATIN SMALL LETTER D */ + [0x36a, 0x36a], /* COMBINING LATIN SMALL LETTER H */ + [0x36b, 0x36b], /* COMBINING LATIN SMALL LETTER M */ + [0x36c, 0x36c], /* COMBINING LATIN SMALL LETTER R */ + [0x36d, 0x36d], /* COMBINING LATIN SMALL LETTER T */ + [0x36e, 0x36e], /* COMBINING LATIN SMALL LETTER V */ + [0x36f, 0x36f], /* COMBINING LATIN SMALL LETTER X */ + [0x370, 0x371], /* GREEK CAPITAL LETTER HETA */ + [0x370, 0x371], /* GREEK SMALL LETTER HETA */ + [0x372, 0x373], /* GREEK CAPITAL LETTER ARCHAIC SAMPI */ + [0x372, 0x373], /* GREEK SMALL LETTER ARCHAIC SAMPI */ + [0x374, 0x374], /* GREEK NUMERAL SIGN (GREEK UPPER NUMERAL SIGN) */ + [0x375, 0x375], /* GREEK LOWER NUMERAL SIGN */ + [0x376, 0x377], /* GREEK CAPITAL LETTER PAMPHYLIAN DIGAMMA */ + [0x376, 0x377], /* GREEK SMALL LETTER PAMPHYLIAN DIGAMMA */ + [0x378, 0x378], + [0x379, 0x379], + [0x37a, 0x37a], /* GREEK YPOGEGRAMMENI (GREEK SPACING IOTA BELOW) */ + [0x3fd, 0x37b], /* GREEK SMALL REVERSED LUNATE SIGMA SYMBOL */ + [0x3fe, 0x37c], /* GREEK SMALL DOTTED LUNATE SIGMA SYMBOL */ + [0x3ff, 0x37d], /* GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL */ + [0x37e, 0x37e], /* GREEK QUESTION MARK */ + [0x37f, 0x3f3], /* GREEK CAPITAL LETTER YOT */ + [0x380, 0x380], + [0x381, 0x381], + [0x382, 0x382], + [0x383, 0x383], + [0x384, 0x384], /* GREEK TONOS (GREEK SPACING TONOS) */ + [0x385, 0x385], /* GREEK DIALYTIKA TONOS (GREEK SPACING DIAERESIS TONOS) */ + [0x386, 0x3ac], /* GREEK CAPITAL LETTER ALPHA WITH TONOS (GREEK CAPITAL LETTER ALPHA TONOS) */ + [0x387, 0x387], /* GREEK ANO TELEIA */ + [0x388, 0x3ad], /* GREEK CAPITAL LETTER EPSILON WITH TONOS (GREEK CAPITAL LETTER EPSILON TONOS) */ + [0x389, 0x3ae], /* GREEK CAPITAL LETTER ETA WITH TONOS (GREEK CAPITAL LETTER ETA TONOS) */ + [0x38a, 0x3af], /* GREEK CAPITAL LETTER IOTA WITH TONOS (GREEK CAPITAL LETTER IOTA TONOS) */ + [0x38b, 0x38b], + [0x38c, 0x3cc], /* GREEK CAPITAL LETTER OMICRON WITH TONOS (GREEK CAPITAL LETTER OMICRON TONOS) */ + [0x38d, 0x38d], + [0x38e, 0x3cd], /* GREEK CAPITAL LETTER UPSILON WITH TONOS (GREEK CAPITAL LETTER UPSILON TONOS) */ + [0x38f, 0x3ce], /* GREEK CAPITAL LETTER OMEGA WITH TONOS (GREEK CAPITAL LETTER OMEGA TONOS) */ + [0x390, 0x390], /* GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS (GREEK SMALL LETTER IOTA DIAERESIS TONOS) */ + [0x391, 0x3b1], /* GREEK CAPITAL LETTER ALPHA */ + [0x392, 0x3b2], /* GREEK CAPITAL LETTER BETA */ + [0x393, 0x3b3], /* GREEK CAPITAL LETTER GAMMA */ + [0x394, 0x3b4], /* GREEK CAPITAL LETTER DELTA */ + [0x395, 0x3b5], /* GREEK CAPITAL LETTER EPSILON */ + [0x396, 0x3b6], /* GREEK CAPITAL LETTER ZETA */ + [0x397, 0x3b7], /* GREEK CAPITAL LETTER ETA */ + [0x398, 0x3b8], /* GREEK CAPITAL LETTER THETA */ + [0x399, 0x3b9], /* GREEK CAPITAL LETTER IOTA */ + [0x39a, 0x3ba], /* GREEK CAPITAL LETTER KAPPA */ + [0x39b, 0x3bb], /* GREEK CAPITAL LETTER LAMDA (GREEK CAPITAL LETTER LAMBDA) */ + [0x39c, 0x3bc], /* GREEK CAPITAL LETTER MU */ + [0x39d, 0x3bd], /* GREEK CAPITAL LETTER NU */ + [0x39e, 0x3be], /* GREEK CAPITAL LETTER XI */ + [0x39f, 0x3bf], /* GREEK CAPITAL LETTER OMICRON */ + [0x3a0, 0x3c0], /* GREEK CAPITAL LETTER PI */ + [0x3a1, 0x3c1], /* GREEK CAPITAL LETTER RHO */ + [0x3a2, 0x3a2], + [0x3a3, 0x3c3], /* GREEK CAPITAL LETTER SIGMA */ + [0x3a4, 0x3c4], /* GREEK CAPITAL LETTER TAU */ + [0x3a5, 0x3c5], /* GREEK CAPITAL LETTER UPSILON */ + [0x3a6, 0x3c6], /* GREEK CAPITAL LETTER PHI */ + [0x3a7, 0x3c7], /* GREEK CAPITAL LETTER CHI */ + [0x3a8, 0x3c8], /* GREEK CAPITAL LETTER PSI */ + [0x3a9, 0x3c9], /* GREEK CAPITAL LETTER OMEGA */ + [0x3aa, 0x3ca], /* GREEK CAPITAL LETTER IOTA WITH DIALYTIKA (GREEK CAPITAL LETTER IOTA DIAERESIS) */ + [0x3ab, 0x3cb], /* GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA (GREEK CAPITAL LETTER UPSILON DIAERESIS) */ + [0x386, 0x3ac], /* GREEK SMALL LETTER ALPHA WITH TONOS (GREEK SMALL LETTER ALPHA TONOS) */ + [0x388, 0x3ad], /* GREEK SMALL LETTER EPSILON WITH TONOS (GREEK SMALL LETTER EPSILON TONOS) */ + [0x389, 0x3ae], /* GREEK SMALL LETTER ETA WITH TONOS (GREEK SMALL LETTER ETA TONOS) */ + [0x38a, 0x3af], /* GREEK SMALL LETTER IOTA WITH TONOS (GREEK SMALL LETTER IOTA TONOS) */ + [0x3b0, 0x3b0], /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS (GREEK SMALL LETTER UPSILON DIAERESIS TONOS) */ + [0x391, 0x3b1], /* GREEK SMALL LETTER ALPHA */ + [0x392, 0x3b2], /* GREEK SMALL LETTER BETA */ + [0x393, 0x3b3], /* GREEK SMALL LETTER GAMMA */ + [0x394, 0x3b4], /* GREEK SMALL LETTER DELTA */ + [0x395, 0x3b5], /* GREEK SMALL LETTER EPSILON */ + [0x396, 0x3b6], /* GREEK SMALL LETTER ZETA */ + [0x397, 0x3b7], /* GREEK SMALL LETTER ETA */ + [0x398, 0x3b8], /* GREEK SMALL LETTER THETA */ + [0x399, 0x3b9], /* GREEK SMALL LETTER IOTA */ + [0x39a, 0x3ba], /* GREEK SMALL LETTER KAPPA */ + [0x39b, 0x3bb], /* GREEK SMALL LETTER LAMDA (GREEK SMALL LETTER LAMBDA) */ + [0x39c, 0x3bc], /* GREEK SMALL LETTER MU */ + [0x39d, 0x3bd], /* GREEK SMALL LETTER NU */ + [0x39e, 0x3be], /* GREEK SMALL LETTER XI */ + [0x39f, 0x3bf], /* GREEK SMALL LETTER OMICRON */ + [0x3a0, 0x3c0], /* GREEK SMALL LETTER PI */ + [0x3a1, 0x3c1], /* GREEK SMALL LETTER RHO */ + [0x3a3, 0x3c2], /* GREEK SMALL LETTER FINAL SIGMA */ + [0x3a3, 0x3c3], /* GREEK SMALL LETTER SIGMA */ + [0x3a4, 0x3c4], /* GREEK SMALL LETTER TAU */ + [0x3a5, 0x3c5], /* GREEK SMALL LETTER UPSILON */ + [0x3a6, 0x3c6], /* GREEK SMALL LETTER PHI */ + [0x3a7, 0x3c7], /* GREEK SMALL LETTER CHI */ + [0x3a8, 0x3c8], /* GREEK SMALL LETTER PSI */ + [0x3a9, 0x3c9], /* GREEK SMALL LETTER OMEGA */ + [0x3aa, 0x3ca], /* GREEK SMALL LETTER IOTA WITH DIALYTIKA (GREEK SMALL LETTER IOTA DIAERESIS) */ + [0x3ab, 0x3cb], /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA (GREEK SMALL LETTER UPSILON DIAERESIS) */ + [0x38c, 0x3cc], /* GREEK SMALL LETTER OMICRON WITH TONOS (GREEK SMALL LETTER OMICRON TONOS) */ + [0x38e, 0x3cd], /* GREEK SMALL LETTER UPSILON WITH TONOS (GREEK SMALL LETTER UPSILON TONOS) */ + [0x38f, 0x3ce], /* GREEK SMALL LETTER OMEGA WITH TONOS (GREEK SMALL LETTER OMEGA TONOS) */ + [0x3cf, 0x3d7], /* GREEK CAPITAL KAI SYMBOL */ + [0x392, 0x3d0], /* GREEK BETA SYMBOL (GREEK SMALL LETTER CURLED BETA) */ + [0x398, 0x3d1], /* GREEK THETA SYMBOL (GREEK SMALL LETTER SCRIPT THETA) */ + [0x3d2, 0x3d2], /* GREEK UPSILON WITH HOOK SYMBOL (GREEK CAPITAL LETTER UPSILON HOOK) */ + [0x3d3, 0x3d3], /* GREEK UPSILON WITH ACUTE AND HOOK SYMBOL (GREEK CAPITAL LETTER UPSILON HOOK TONOS) */ + [0x3d4, 0x3d4], /* GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL (GREEK CAPITAL LETTER UPSILON HOOK DIAERESIS) */ + [0x3a6, 0x3d5], /* GREEK PHI SYMBOL (GREEK SMALL LETTER SCRIPT PHI) */ + [0x3a0, 0x3d6], /* GREEK PI SYMBOL (GREEK SMALL LETTER OMEGA PI) */ + [0x3cf, 0x3d7], /* GREEK KAI SYMBOL */ + [0x3d8, 0x3d9], /* GREEK LETTER ARCHAIC KOPPA */ + [0x3d8, 0x3d9], /* GREEK SMALL LETTER ARCHAIC KOPPA */ + [0x3da, 0x3db], /* GREEK LETTER STIGMA (GREEK CAPITAL LETTER STIGMA) */ + [0x3da, 0x3db], /* GREEK SMALL LETTER STIGMA */ + [0x3dc, 0x3dd], /* GREEK LETTER DIGAMMA (GREEK CAPITAL LETTER DIGAMMA) */ + [0x3dc, 0x3dd], /* GREEK SMALL LETTER DIGAMMA */ + [0x3de, 0x3df], /* GREEK LETTER KOPPA (GREEK CAPITAL LETTER KOPPA) */ + [0x3de, 0x3df], /* GREEK SMALL LETTER KOPPA */ + [0x3e0, 0x3e1], /* GREEK LETTER SAMPI (GREEK CAPITAL LETTER SAMPI) */ + [0x3e0, 0x3e1], /* GREEK SMALL LETTER SAMPI */ + [0x3e2, 0x3e3], /* COPTIC CAPITAL LETTER SHEI (GREEK CAPITAL LETTER SHEI) */ + [0x3e2, 0x3e3], /* COPTIC SMALL LETTER SHEI (GREEK SMALL LETTER SHEI) */ + [0x3e4, 0x3e5], /* COPTIC CAPITAL LETTER FEI (GREEK CAPITAL LETTER FEI) */ + [0x3e4, 0x3e5], /* COPTIC SMALL LETTER FEI (GREEK SMALL LETTER FEI) */ + [0x3e6, 0x3e7], /* COPTIC CAPITAL LETTER KHEI (GREEK CAPITAL LETTER KHEI) */ + [0x3e6, 0x3e7], /* COPTIC SMALL LETTER KHEI (GREEK SMALL LETTER KHEI) */ + [0x3e8, 0x3e9], /* COPTIC CAPITAL LETTER HORI (GREEK CAPITAL LETTER HORI) */ + [0x3e8, 0x3e9], /* COPTIC SMALL LETTER HORI (GREEK SMALL LETTER HORI) */ + [0x3ea, 0x3eb], /* COPTIC CAPITAL LETTER GANGIA (GREEK CAPITAL LETTER GANGIA) */ + [0x3ea, 0x3eb], /* COPTIC SMALL LETTER GANGIA (GREEK SMALL LETTER GANGIA) */ + [0x3ec, 0x3ed], /* COPTIC CAPITAL LETTER SHIMA (GREEK CAPITAL LETTER SHIMA) */ + [0x3ec, 0x3ed], /* COPTIC SMALL LETTER SHIMA (GREEK SMALL LETTER SHIMA) */ + [0x3ee, 0x3ef], /* COPTIC CAPITAL LETTER DEI (GREEK CAPITAL LETTER DEI) */ + [0x3ee, 0x3ef], /* COPTIC SMALL LETTER DEI (GREEK SMALL LETTER DEI) */ + [0x39a, 0x3f0], /* GREEK KAPPA SYMBOL (GREEK SMALL LETTER SCRIPT KAPPA) */ + [0x3a1, 0x3f1], /* GREEK RHO SYMBOL (GREEK SMALL LETTER TAILED RHO) */ + [0x3f9, 0x3f2], /* GREEK LUNATE SIGMA SYMBOL (GREEK SMALL LETTER LUNATE SIGMA) */ + [0x37f, 0x3f3], /* GREEK LETTER YOT */ + [0x3f4, 0x3b8], /* GREEK CAPITAL THETA SYMBOL */ + [0x395, 0x3f5], /* GREEK LUNATE EPSILON SYMBOL */ + [0x3f6, 0x3f6], /* GREEK REVERSED LUNATE EPSILON SYMBOL */ + [0x3f7, 0x3f8], /* GREEK CAPITAL LETTER SHO */ + [0x3f7, 0x3f8], /* GREEK SMALL LETTER SHO */ + [0x3f9, 0x3f2], /* GREEK CAPITAL LUNATE SIGMA SYMBOL */ + [0x3fa, 0x3fb], /* GREEK CAPITAL LETTER SAN */ + [0x3fa, 0x3fb], /* GREEK SMALL LETTER SAN */ + [0x3fc, 0x3fc], /* GREEK RHO WITH STROKE SYMBOL */ + [0x3fd, 0x37b], /* GREEK CAPITAL REVERSED LUNATE SIGMA SYMBOL */ + [0x3fe, 0x37c], /* GREEK CAPITAL DOTTED LUNATE SIGMA SYMBOL */ + [0x3ff, 0x37d], /* GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL */ + [0x400, 0x450], /* CYRILLIC CAPITAL LETTER IE WITH GRAVE */ + [0x401, 0x451], /* CYRILLIC CAPITAL LETTER IO */ + [0x402, 0x452], /* CYRILLIC CAPITAL LETTER DJE */ + [0x403, 0x453], /* CYRILLIC CAPITAL LETTER GJE */ + [0x404, 0x454], /* CYRILLIC CAPITAL LETTER UKRAINIAN IE (CYRILLIC CAPITAL LETTER E) */ + [0x405, 0x455], /* CYRILLIC CAPITAL LETTER DZE */ + [0x406, 0x456], /* CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I (CYRILLIC CAPITAL LETTER I) */ + [0x407, 0x457], /* CYRILLIC CAPITAL LETTER YI */ + [0x408, 0x458], /* CYRILLIC CAPITAL LETTER JE */ + [0x409, 0x459], /* CYRILLIC CAPITAL LETTER LJE */ + [0x40a, 0x45a], /* CYRILLIC CAPITAL LETTER NJE */ + [0x40b, 0x45b], /* CYRILLIC CAPITAL LETTER TSHE */ + [0x40c, 0x45c], /* CYRILLIC CAPITAL LETTER KJE */ + [0x40d, 0x45d], /* CYRILLIC CAPITAL LETTER I WITH GRAVE */ + [0x40e, 0x45e], /* CYRILLIC CAPITAL LETTER SHORT U */ + [0x40f, 0x45f], /* CYRILLIC CAPITAL LETTER DZHE */ + [0x410, 0x430], /* CYRILLIC CAPITAL LETTER A */ + [0x411, 0x431], /* CYRILLIC CAPITAL LETTER BE */ + [0x412, 0x432], /* CYRILLIC CAPITAL LETTER VE */ + [0x413, 0x433], /* CYRILLIC CAPITAL LETTER GHE (CYRILLIC CAPITAL LETTER GE) */ + [0x414, 0x434], /* CYRILLIC CAPITAL LETTER DE */ + [0x415, 0x435], /* CYRILLIC CAPITAL LETTER IE */ + [0x416, 0x436], /* CYRILLIC CAPITAL LETTER ZHE */ + [0x417, 0x437], /* CYRILLIC CAPITAL LETTER ZE */ + [0x418, 0x438], /* CYRILLIC CAPITAL LETTER I (CYRILLIC CAPITAL LETTER II) */ + [0x419, 0x439], /* CYRILLIC CAPITAL LETTER SHORT I (CYRILLIC CAPITAL LETTER SHORT II) */ + [0x41a, 0x43a], /* CYRILLIC CAPITAL LETTER KA */ + [0x41b, 0x43b], /* CYRILLIC CAPITAL LETTER EL */ + [0x41c, 0x43c], /* CYRILLIC CAPITAL LETTER EM */ + [0x41d, 0x43d], /* CYRILLIC CAPITAL LETTER EN */ + [0x41e, 0x43e], /* CYRILLIC CAPITAL LETTER O */ + [0x41f, 0x43f], /* CYRILLIC CAPITAL LETTER PE */ + [0x420, 0x440], /* CYRILLIC CAPITAL LETTER ER */ + [0x421, 0x441], /* CYRILLIC CAPITAL LETTER ES */ + [0x422, 0x442], /* CYRILLIC CAPITAL LETTER TE */ + [0x423, 0x443], /* CYRILLIC CAPITAL LETTER U */ + [0x424, 0x444], /* CYRILLIC CAPITAL LETTER EF */ + [0x425, 0x445], /* CYRILLIC CAPITAL LETTER HA (CYRILLIC CAPITAL LETTER KHA) */ + [0x426, 0x446], /* CYRILLIC CAPITAL LETTER TSE */ + [0x427, 0x447], /* CYRILLIC CAPITAL LETTER CHE */ + [0x428, 0x448], /* CYRILLIC CAPITAL LETTER SHA */ + [0x429, 0x449], /* CYRILLIC CAPITAL LETTER SHCHA */ + [0x42a, 0x44a], /* CYRILLIC CAPITAL LETTER HARD SIGN */ + [0x42b, 0x44b], /* CYRILLIC CAPITAL LETTER YERU (CYRILLIC CAPITAL LETTER YERI) */ + [0x42c, 0x44c], /* CYRILLIC CAPITAL LETTER SOFT SIGN */ + [0x42d, 0x44d], /* CYRILLIC CAPITAL LETTER E (CYRILLIC CAPITAL LETTER REVERSED E) */ + [0x42e, 0x44e], /* CYRILLIC CAPITAL LETTER YU (CYRILLIC CAPITAL LETTER IU) */ + [0x42f, 0x44f], /* CYRILLIC CAPITAL LETTER YA (CYRILLIC CAPITAL LETTER IA) */ + [0x410, 0x430], /* CYRILLIC SMALL LETTER A */ + [0x411, 0x431], /* CYRILLIC SMALL LETTER BE */ + [0x412, 0x432], /* CYRILLIC SMALL LETTER VE */ + [0x413, 0x433], /* CYRILLIC SMALL LETTER GHE (CYRILLIC SMALL LETTER GE) */ + [0x414, 0x434], /* CYRILLIC SMALL LETTER DE */ + [0x415, 0x435], /* CYRILLIC SMALL LETTER IE */ + [0x416, 0x436], /* CYRILLIC SMALL LETTER ZHE */ + [0x417, 0x437], /* CYRILLIC SMALL LETTER ZE */ + [0x418, 0x438], /* CYRILLIC SMALL LETTER I (CYRILLIC SMALL LETTER II) */ + [0x419, 0x439], /* CYRILLIC SMALL LETTER SHORT I (CYRILLIC SMALL LETTER SHORT II) */ + [0x41a, 0x43a], /* CYRILLIC SMALL LETTER KA */ + [0x41b, 0x43b], /* CYRILLIC SMALL LETTER EL */ + [0x41c, 0x43c], /* CYRILLIC SMALL LETTER EM */ + [0x41d, 0x43d], /* CYRILLIC SMALL LETTER EN */ + [0x41e, 0x43e], /* CYRILLIC SMALL LETTER O */ + [0x41f, 0x43f], /* CYRILLIC SMALL LETTER PE */ + [0x420, 0x440], /* CYRILLIC SMALL LETTER ER */ + [0x421, 0x441], /* CYRILLIC SMALL LETTER ES */ + [0x422, 0x442], /* CYRILLIC SMALL LETTER TE */ + [0x423, 0x443], /* CYRILLIC SMALL LETTER U */ + [0x424, 0x444], /* CYRILLIC SMALL LETTER EF */ + [0x425, 0x445], /* CYRILLIC SMALL LETTER HA (CYRILLIC SMALL LETTER KHA) */ + [0x426, 0x446], /* CYRILLIC SMALL LETTER TSE */ + [0x427, 0x447], /* CYRILLIC SMALL LETTER CHE */ + [0x428, 0x448], /* CYRILLIC SMALL LETTER SHA */ + [0x429, 0x449], /* CYRILLIC SMALL LETTER SHCHA */ + [0x42a, 0x44a], /* CYRILLIC SMALL LETTER HARD SIGN */ + [0x42b, 0x44b], /* CYRILLIC SMALL LETTER YERU (CYRILLIC SMALL LETTER YERI) */ + [0x42c, 0x44c], /* CYRILLIC SMALL LETTER SOFT SIGN */ + [0x42d, 0x44d], /* CYRILLIC SMALL LETTER E (CYRILLIC SMALL LETTER REVERSED E) */ + [0x42e, 0x44e], /* CYRILLIC SMALL LETTER YU (CYRILLIC SMALL LETTER IU) */ + [0x42f, 0x44f], /* CYRILLIC SMALL LETTER YA (CYRILLIC SMALL LETTER IA) */ + [0x400, 0x450], /* CYRILLIC SMALL LETTER IE WITH GRAVE */ + [0x401, 0x451], /* CYRILLIC SMALL LETTER IO */ + [0x402, 0x452], /* CYRILLIC SMALL LETTER DJE */ + [0x403, 0x453], /* CYRILLIC SMALL LETTER GJE */ + [0x404, 0x454], /* CYRILLIC SMALL LETTER UKRAINIAN IE (CYRILLIC SMALL LETTER E) */ + [0x405, 0x455], /* CYRILLIC SMALL LETTER DZE */ + [0x406, 0x456], /* CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I (CYRILLIC SMALL LETTER I) */ + [0x407, 0x457], /* CYRILLIC SMALL LETTER YI */ + [0x408, 0x458], /* CYRILLIC SMALL LETTER JE */ + [0x409, 0x459], /* CYRILLIC SMALL LETTER LJE */ + [0x40a, 0x45a], /* CYRILLIC SMALL LETTER NJE */ + [0x40b, 0x45b], /* CYRILLIC SMALL LETTER TSHE */ + [0x40c, 0x45c], /* CYRILLIC SMALL LETTER KJE */ + [0x40d, 0x45d], /* CYRILLIC SMALL LETTER I WITH GRAVE */ + [0x40e, 0x45e], /* CYRILLIC SMALL LETTER SHORT U */ + [0x40f, 0x45f], /* CYRILLIC SMALL LETTER DZHE */ + [0x460, 0x461], /* CYRILLIC CAPITAL LETTER OMEGA */ + [0x460, 0x461], /* CYRILLIC SMALL LETTER OMEGA */ + [0x462, 0x463], /* CYRILLIC CAPITAL LETTER YAT */ + [0x462, 0x463], /* CYRILLIC SMALL LETTER YAT */ + [0x464, 0x465], /* CYRILLIC CAPITAL LETTER IOTIFIED E */ + [0x464, 0x465], /* CYRILLIC SMALL LETTER IOTIFIED E */ + [0x466, 0x467], /* CYRILLIC CAPITAL LETTER LITTLE YUS */ + [0x466, 0x467], /* CYRILLIC SMALL LETTER LITTLE YUS */ + [0x468, 0x469], /* CYRILLIC CAPITAL LETTER IOTIFIED LITTLE YUS */ + [0x468, 0x469], /* CYRILLIC SMALL LETTER IOTIFIED LITTLE YUS */ + [0x46a, 0x46b], /* CYRILLIC CAPITAL LETTER BIG YUS */ + [0x46a, 0x46b], /* CYRILLIC SMALL LETTER BIG YUS */ + [0x46c, 0x46d], /* CYRILLIC CAPITAL LETTER IOTIFIED BIG YUS */ + [0x46c, 0x46d], /* CYRILLIC SMALL LETTER IOTIFIED BIG YUS */ + [0x46e, 0x46f], /* CYRILLIC CAPITAL LETTER KSI */ + [0x46e, 0x46f], /* CYRILLIC SMALL LETTER KSI */ + [0x470, 0x471], /* CYRILLIC CAPITAL LETTER PSI */ + [0x470, 0x471], /* CYRILLIC SMALL LETTER PSI */ + [0x472, 0x473], /* CYRILLIC CAPITAL LETTER FITA */ + [0x472, 0x473], /* CYRILLIC SMALL LETTER FITA */ + [0x474, 0x475], /* CYRILLIC CAPITAL LETTER IZHITSA */ + [0x474, 0x475], /* CYRILLIC SMALL LETTER IZHITSA */ + [0x476, 0x477], /* CYRILLIC CAPITAL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT (CYRILLIC CAPITAL LETTER IZHITSA DOUBLE GRAVE) */ + [0x476, 0x477], /* CYRILLIC SMALL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT (CYRILLIC SMALL LETTER IZHITSA DOUBLE GRAVE) */ + [0x478, 0x479], /* CYRILLIC CAPITAL LETTER UK (CYRILLIC CAPITAL LETTER UK DIGRAPH) */ + [0x478, 0x479], /* CYRILLIC SMALL LETTER UK (CYRILLIC SMALL LETTER UK DIGRAPH) */ + [0x47a, 0x47b], /* CYRILLIC CAPITAL LETTER ROUND OMEGA */ + [0x47a, 0x47b], /* CYRILLIC SMALL LETTER ROUND OMEGA */ + [0x47c, 0x47d], /* CYRILLIC CAPITAL LETTER OMEGA WITH TITLO (CYRILLIC CAPITAL LETTER OMEGA TITLO) */ + [0x47c, 0x47d], /* CYRILLIC SMALL LETTER OMEGA WITH TITLO (CYRILLIC SMALL LETTER OMEGA TITLO) */ + [0x47e, 0x47f], /* CYRILLIC CAPITAL LETTER OT */ + [0x47e, 0x47f], /* CYRILLIC SMALL LETTER OT */ + [0x480, 0x481], /* CYRILLIC CAPITAL LETTER KOPPA */ + [0x480, 0x481], /* CYRILLIC SMALL LETTER KOPPA */ + [0x482, 0x482], /* CYRILLIC THOUSANDS SIGN */ + [0x483, 0x483], /* COMBINING CYRILLIC TITLO (CYRILLIC NON-SPACING TITLO) */ + [0x484, 0x484], /* COMBINING CYRILLIC PALATALIZATION (CYRILLIC NON-SPACING PALATALIZATION) */ + [0x485, 0x485], /* COMBINING CYRILLIC DASIA PNEUMATA (CYRILLIC NON-SPACING DASIA PNEUMATA) */ + [0x486, 0x486], /* COMBINING CYRILLIC PSILI PNEUMATA (CYRILLIC NON-SPACING PSILI PNEUMATA) */ + [0x487, 0x487], /* COMBINING CYRILLIC POKRYTIE */ + [0x488, 0x488], /* COMBINING CYRILLIC HUNDRED THOUSANDS SIGN */ + [0x489, 0x489], /* COMBINING CYRILLIC MILLIONS SIGN */ + [0x48a, 0x48b], /* CYRILLIC CAPITAL LETTER SHORT I WITH TAIL */ + [0x48a, 0x48b], /* CYRILLIC SMALL LETTER SHORT I WITH TAIL */ + [0x48c, 0x48d], /* CYRILLIC CAPITAL LETTER SEMISOFT SIGN */ + [0x48c, 0x48d], /* CYRILLIC SMALL LETTER SEMISOFT SIGN */ + [0x48e, 0x48f], /* CYRILLIC CAPITAL LETTER ER WITH TICK */ + [0x48e, 0x48f], /* CYRILLIC SMALL LETTER ER WITH TICK */ + [0x490, 0x491], /* CYRILLIC CAPITAL LETTER GHE WITH UPTURN (CYRILLIC CAPITAL LETTER GE WITH UPTURN) */ + [0x490, 0x491], /* CYRILLIC SMALL LETTER GHE WITH UPTURN (CYRILLIC SMALL LETTER GE WITH UPTURN) */ + [0x492, 0x493], /* CYRILLIC CAPITAL LETTER GHE WITH STROKE (CYRILLIC CAPITAL LETTER GE BAR) */ + [0x492, 0x493], /* CYRILLIC SMALL LETTER GHE WITH STROKE (CYRILLIC SMALL LETTER GE BAR) */ + [0x494, 0x495], /* CYRILLIC CAPITAL LETTER GHE WITH MIDDLE HOOK (CYRILLIC CAPITAL LETTER GE HOOK) */ + [0x494, 0x495], /* CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK (CYRILLIC SMALL LETTER GE HOOK) */ + [0x496, 0x497], /* CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER (CYRILLIC CAPITAL LETTER ZHE WITH RIGHT DESCENDER) */ + [0x496, 0x497], /* CYRILLIC SMALL LETTER ZHE WITH DESCENDER (CYRILLIC SMALL LETTER ZHE WITH RIGHT DESCENDER) */ + [0x498, 0x499], /* CYRILLIC CAPITAL LETTER ZE WITH DESCENDER (CYRILLIC CAPITAL LETTER ZE CEDILLA) */ + [0x498, 0x499], /* CYRILLIC SMALL LETTER ZE WITH DESCENDER (CYRILLIC SMALL LETTER ZE CEDILLA) */ + [0x49a, 0x49b], /* CYRILLIC CAPITAL LETTER KA WITH DESCENDER (CYRILLIC CAPITAL LETTER KA WITH RIGHT DESCENDER) */ + [0x49a, 0x49b], /* CYRILLIC SMALL LETTER KA WITH DESCENDER (CYRILLIC SMALL LETTER KA WITH RIGHT DESCENDER) */ + [0x49c, 0x49d], /* CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE (CYRILLIC CAPITAL LETTER KA VERTICAL BAR) */ + [0x49c, 0x49d], /* CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE (CYRILLIC SMALL LETTER KA VERTICAL BAR) */ + [0x49e, 0x49f], /* CYRILLIC CAPITAL LETTER KA WITH STROKE (CYRILLIC CAPITAL LETTER KA BAR) */ + [0x49e, 0x49f], /* CYRILLIC SMALL LETTER KA WITH STROKE (CYRILLIC SMALL LETTER KA BAR) */ + [0x4a0, 0x4a1], /* CYRILLIC CAPITAL LETTER BASHKIR KA (CYRILLIC CAPITAL LETTER REVERSED GE KA) */ + [0x4a0, 0x4a1], /* CYRILLIC SMALL LETTER BASHKIR KA (CYRILLIC SMALL LETTER REVERSED GE KA) */ + [0x4a2, 0x4a3], /* CYRILLIC CAPITAL LETTER EN WITH DESCENDER (CYRILLIC CAPITAL LETTER EN WITH RIGHT DESCENDER) */ + [0x4a2, 0x4a3], /* CYRILLIC SMALL LETTER EN WITH DESCENDER (CYRILLIC SMALL LETTER EN WITH RIGHT DESCENDER) */ + [0x4a4, 0x4a5], /* CYRILLIC CAPITAL LIGATURE EN GHE (CYRILLIC CAPITAL LETTER EN GE) */ + [0x4a4, 0x4a5], /* CYRILLIC SMALL LIGATURE EN GHE (CYRILLIC SMALL LETTER EN GE) */ + [0x4a6, 0x4a7], /* CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK (CYRILLIC CAPITAL LETTER PE HOOK) */ + [0x4a6, 0x4a7], /* CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK (CYRILLIC SMALL LETTER PE HOOK) */ + [0x4a8, 0x4a9], /* CYRILLIC CAPITAL LETTER ABKHASIAN HA (CYRILLIC CAPITAL LETTER O HOOK) */ + [0x4a8, 0x4a9], /* CYRILLIC SMALL LETTER ABKHASIAN HA (CYRILLIC SMALL LETTER O HOOK) */ + [0x4aa, 0x4ab], /* CYRILLIC CAPITAL LETTER ES WITH DESCENDER (CYRILLIC CAPITAL LETTER ES CEDILLA) */ + [0x4aa, 0x4ab], /* CYRILLIC SMALL LETTER ES WITH DESCENDER (CYRILLIC SMALL LETTER ES CEDILLA) */ + [0x4ac, 0x4ad], /* CYRILLIC CAPITAL LETTER TE WITH DESCENDER (CYRILLIC CAPITAL LETTER TE WITH RIGHT DESCENDER) */ + [0x4ac, 0x4ad], /* CYRILLIC SMALL LETTER TE WITH DESCENDER (CYRILLIC SMALL LETTER TE WITH RIGHT DESCENDER) */ + [0x4ae, 0x4af], /* CYRILLIC CAPITAL LETTER STRAIGHT U */ + [0x4ae, 0x4af], /* CYRILLIC SMALL LETTER STRAIGHT U */ + [0x4b0, 0x4b1], /* CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE (CYRILLIC CAPITAL LETTER STRAIGHT U BAR) */ + [0x4b0, 0x4b1], /* CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE (CYRILLIC SMALL LETTER STRAIGHT U BAR) */ + [0x4b2, 0x4b3], /* CYRILLIC CAPITAL LETTER HA WITH DESCENDER (CYRILLIC CAPITAL LETTER KHA WITH RIGHT DESCENDER) */ + [0x4b2, 0x4b3], /* CYRILLIC SMALL LETTER HA WITH DESCENDER (CYRILLIC SMALL LETTER KHA WITH RIGHT DESCENDER) */ + [0x4b4, 0x4b5], /* CYRILLIC CAPITAL LIGATURE TE TSE (CYRILLIC CAPITAL LETTER TE TSE) */ + [0x4b4, 0x4b5], /* CYRILLIC SMALL LIGATURE TE TSE (CYRILLIC SMALL LETTER TE TSE) */ + [0x4b6, 0x4b7], /* CYRILLIC CAPITAL LETTER CHE WITH DESCENDER (CYRILLIC CAPITAL LETTER CHE WITH RIGHT DESCENDER) */ + [0x4b6, 0x4b7], /* CYRILLIC SMALL LETTER CHE WITH DESCENDER (CYRILLIC SMALL LETTER CHE WITH RIGHT DESCENDER) */ + [0x4b8, 0x4b9], /* CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE (CYRILLIC CAPITAL LETTER CHE VERTICAL BAR) */ + [0x4b8, 0x4b9], /* CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE (CYRILLIC SMALL LETTER CHE VERTICAL BAR) */ + [0x4ba, 0x4bb], /* CYRILLIC CAPITAL LETTER SHHA (CYRILLIC CAPITAL LETTER H) */ + [0x4ba, 0x4bb], /* CYRILLIC SMALL LETTER SHHA (CYRILLIC SMALL LETTER H) */ + [0x4bc, 0x4bd], /* CYRILLIC CAPITAL LETTER ABKHASIAN CHE (CYRILLIC CAPITAL LETTER IE HOOK) */ + [0x4bc, 0x4bd], /* CYRILLIC SMALL LETTER ABKHASIAN CHE (CYRILLIC SMALL LETTER IE HOOK) */ + [0x4be, 0x4bf], /* CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER (CYRILLIC CAPITAL LETTER IE HOOK OGONEK) */ + [0x4be, 0x4bf], /* CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER (CYRILLIC SMALL LETTER IE HOOK OGONEK) */ + [0x4c0, 0x4cf], /* CYRILLIC LETTER PALOCHKA (CYRILLIC LETTER I) */ + [0x4c1, 0x4c2], /* CYRILLIC CAPITAL LETTER ZHE WITH BREVE (CYRILLIC CAPITAL LETTER SHORT ZHE) */ + [0x4c1, 0x4c2], /* CYRILLIC SMALL LETTER ZHE WITH BREVE (CYRILLIC SMALL LETTER SHORT ZHE) */ + [0x4c3, 0x4c4], /* CYRILLIC CAPITAL LETTER KA WITH HOOK (CYRILLIC CAPITAL LETTER KA HOOK) */ + [0x4c3, 0x4c4], /* CYRILLIC SMALL LETTER KA WITH HOOK (CYRILLIC SMALL LETTER KA HOOK) */ + [0x4c5, 0x4c6], /* CYRILLIC CAPITAL LETTER EL WITH TAIL */ + [0x4c5, 0x4c6], /* CYRILLIC SMALL LETTER EL WITH TAIL */ + [0x4c7, 0x4c8], /* CYRILLIC CAPITAL LETTER EN WITH HOOK (CYRILLIC CAPITAL LETTER EN HOOK) */ + [0x4c7, 0x4c8], /* CYRILLIC SMALL LETTER EN WITH HOOK (CYRILLIC SMALL LETTER EN HOOK) */ + [0x4c9, 0x4ca], /* CYRILLIC CAPITAL LETTER EN WITH TAIL */ + [0x4c9, 0x4ca], /* CYRILLIC SMALL LETTER EN WITH TAIL */ + [0x4cb, 0x4cc], /* CYRILLIC CAPITAL LETTER KHAKASSIAN CHE (CYRILLIC CAPITAL LETTER CHE WITH LEFT DESCENDER) */ + [0x4cb, 0x4cc], /* CYRILLIC SMALL LETTER KHAKASSIAN CHE (CYRILLIC SMALL LETTER CHE WITH LEFT DESCENDER) */ + [0x4cd, 0x4ce], /* CYRILLIC CAPITAL LETTER EM WITH TAIL */ + [0x4cd, 0x4ce], /* CYRILLIC SMALL LETTER EM WITH TAIL */ + [0x4c0, 0x4cf], /* CYRILLIC SMALL LETTER PALOCHKA */ + [0x4d0, 0x4d1], /* CYRILLIC CAPITAL LETTER A WITH BREVE */ + [0x4d0, 0x4d1], /* CYRILLIC SMALL LETTER A WITH BREVE */ + [0x4d2, 0x4d3], /* CYRILLIC CAPITAL LETTER A WITH DIAERESIS */ + [0x4d2, 0x4d3], /* CYRILLIC SMALL LETTER A WITH DIAERESIS */ + [0x4d4, 0x4d5], /* CYRILLIC CAPITAL LIGATURE A IE */ + [0x4d4, 0x4d5], /* CYRILLIC SMALL LIGATURE A IE */ + [0x4d6, 0x4d7], /* CYRILLIC CAPITAL LETTER IE WITH BREVE */ + [0x4d6, 0x4d7], /* CYRILLIC SMALL LETTER IE WITH BREVE */ + [0x4d8, 0x4d9], /* CYRILLIC CAPITAL LETTER SCHWA */ + [0x4d8, 0x4d9], /* CYRILLIC SMALL LETTER SCHWA */ + [0x4da, 0x4db], /* CYRILLIC CAPITAL LETTER SCHWA WITH DIAERESIS */ + [0x4da, 0x4db], /* CYRILLIC SMALL LETTER SCHWA WITH DIAERESIS */ + [0x4dc, 0x4dd], /* CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS */ + [0x4dc, 0x4dd], /* CYRILLIC SMALL LETTER ZHE WITH DIAERESIS */ + [0x4de, 0x4df], /* CYRILLIC CAPITAL LETTER ZE WITH DIAERESIS */ + [0x4de, 0x4df], /* CYRILLIC SMALL LETTER ZE WITH DIAERESIS */ + [0x4e0, 0x4e1], /* CYRILLIC CAPITAL LETTER ABKHASIAN DZE */ + [0x4e0, 0x4e1], /* CYRILLIC SMALL LETTER ABKHASIAN DZE */ + [0x4e2, 0x4e3], /* CYRILLIC CAPITAL LETTER I WITH MACRON */ + [0x4e2, 0x4e3], /* CYRILLIC SMALL LETTER I WITH MACRON */ + [0x4e4, 0x4e5], /* CYRILLIC CAPITAL LETTER I WITH DIAERESIS */ + [0x4e4, 0x4e5], /* CYRILLIC SMALL LETTER I WITH DIAERESIS */ + [0x4e6, 0x4e7], /* CYRILLIC CAPITAL LETTER O WITH DIAERESIS */ + [0x4e6, 0x4e7], /* CYRILLIC SMALL LETTER O WITH DIAERESIS */ + [0x4e8, 0x4e9], /* CYRILLIC CAPITAL LETTER BARRED O */ + [0x4e8, 0x4e9], /* CYRILLIC SMALL LETTER BARRED O */ + [0x4ea, 0x4eb], /* CYRILLIC CAPITAL LETTER BARRED O WITH DIAERESIS */ + [0x4ea, 0x4eb], /* CYRILLIC SMALL LETTER BARRED O WITH DIAERESIS */ + [0x4ec, 0x4ed], /* CYRILLIC CAPITAL LETTER E WITH DIAERESIS */ + [0x4ec, 0x4ed], /* CYRILLIC SMALL LETTER E WITH DIAERESIS */ + [0x4ee, 0x4ef], /* CYRILLIC CAPITAL LETTER U WITH MACRON */ + [0x4ee, 0x4ef], /* CYRILLIC SMALL LETTER U WITH MACRON */ + [0x4f0, 0x4f1], /* CYRILLIC CAPITAL LETTER U WITH DIAERESIS */ + [0x4f0, 0x4f1], /* CYRILLIC SMALL LETTER U WITH DIAERESIS */ + [0x4f2, 0x4f3], /* CYRILLIC CAPITAL LETTER U WITH DOUBLE ACUTE */ + [0x4f2, 0x4f3], /* CYRILLIC SMALL LETTER U WITH DOUBLE ACUTE */ + [0x4f4, 0x4f5], /* CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS */ + [0x4f4, 0x4f5], /* CYRILLIC SMALL LETTER CHE WITH DIAERESIS */ + [0x4f6, 0x4f7], /* CYRILLIC CAPITAL LETTER GHE WITH DESCENDER */ + [0x4f6, 0x4f7], /* CYRILLIC SMALL LETTER GHE WITH DESCENDER */ + [0x4f8, 0x4f9], /* CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS */ + [0x4f8, 0x4f9], /* CYRILLIC SMALL LETTER YERU WITH DIAERESIS */ + [0x4fa, 0x4fb], /* CYRILLIC CAPITAL LETTER GHE WITH STROKE AND HOOK */ + [0x4fa, 0x4fb], /* CYRILLIC SMALL LETTER GHE WITH STROKE AND HOOK */ + [0x4fc, 0x4fd], /* CYRILLIC CAPITAL LETTER HA WITH HOOK */ + [0x4fc, 0x4fd], /* CYRILLIC SMALL LETTER HA WITH HOOK */ + [0x4fe, 0x4ff], /* CYRILLIC CAPITAL LETTER HA WITH STROKE */ + [0x4fe, 0x4ff], /* CYRILLIC SMALL LETTER HA WITH STROKE */ + [0x500, 0x501], /* CYRILLIC CAPITAL LETTER KOMI DE */ + [0x500, 0x501], /* CYRILLIC SMALL LETTER KOMI DE */ + [0x502, 0x503], /* CYRILLIC CAPITAL LETTER KOMI DJE */ + [0x502, 0x503], /* CYRILLIC SMALL LETTER KOMI DJE */ + [0x504, 0x505], /* CYRILLIC CAPITAL LETTER KOMI ZJE */ + [0x504, 0x505], /* CYRILLIC SMALL LETTER KOMI ZJE */ + [0x506, 0x507], /* CYRILLIC CAPITAL LETTER KOMI DZJE */ + [0x506, 0x507], /* CYRILLIC SMALL LETTER KOMI DZJE */ + [0x508, 0x509], /* CYRILLIC CAPITAL LETTER KOMI LJE */ + [0x508, 0x509], /* CYRILLIC SMALL LETTER KOMI LJE */ + [0x50a, 0x50b], /* CYRILLIC CAPITAL LETTER KOMI NJE */ + [0x50a, 0x50b], /* CYRILLIC SMALL LETTER KOMI NJE */ + [0x50c, 0x50d], /* CYRILLIC CAPITAL LETTER KOMI SJE */ + [0x50c, 0x50d], /* CYRILLIC SMALL LETTER KOMI SJE */ + [0x50e, 0x50f], /* CYRILLIC CAPITAL LETTER KOMI TJE */ + [0x50e, 0x50f], /* CYRILLIC SMALL LETTER KOMI TJE */ + [0x510, 0x511], /* CYRILLIC CAPITAL LETTER REVERSED ZE */ + [0x510, 0x511], /* CYRILLIC SMALL LETTER REVERSED ZE */ + [0x512, 0x513], /* CYRILLIC CAPITAL LETTER EL WITH HOOK */ + [0x512, 0x513], /* CYRILLIC SMALL LETTER EL WITH HOOK */ + [0x514, 0x515], /* CYRILLIC CAPITAL LETTER LHA */ + [0x514, 0x515], /* CYRILLIC SMALL LETTER LHA */ + [0x516, 0x517], /* CYRILLIC CAPITAL LETTER RHA */ + [0x516, 0x517], /* CYRILLIC SMALL LETTER RHA */ + [0x518, 0x519], /* CYRILLIC CAPITAL LETTER YAE */ + [0x518, 0x519], /* CYRILLIC SMALL LETTER YAE */ + [0x51a, 0x51b], /* CYRILLIC CAPITAL LETTER QA */ + [0x51a, 0x51b], /* CYRILLIC SMALL LETTER QA */ + [0x51c, 0x51d], /* CYRILLIC CAPITAL LETTER WE */ + [0x51c, 0x51d], /* CYRILLIC SMALL LETTER WE */ + [0x51e, 0x51f], /* CYRILLIC CAPITAL LETTER ALEUT KA */ + [0x51e, 0x51f], /* CYRILLIC SMALL LETTER ALEUT KA */ + [0x520, 0x521], /* CYRILLIC CAPITAL LETTER EL WITH MIDDLE HOOK */ + [0x520, 0x521], /* CYRILLIC SMALL LETTER EL WITH MIDDLE HOOK */ + [0x522, 0x523], /* CYRILLIC CAPITAL LETTER EN WITH MIDDLE HOOK */ + [0x522, 0x523], /* CYRILLIC SMALL LETTER EN WITH MIDDLE HOOK */ + [0x524, 0x525], /* CYRILLIC CAPITAL LETTER PE WITH DESCENDER */ + [0x524, 0x525], /* CYRILLIC SMALL LETTER PE WITH DESCENDER */ + [0x526, 0x527], /* CYRILLIC CAPITAL LETTER SHHA WITH DESCENDER */ + [0x526, 0x527], /* CYRILLIC SMALL LETTER SHHA WITH DESCENDER */ + [0x528, 0x529], /* CYRILLIC CAPITAL LETTER EN WITH LEFT HOOK */ + [0x528, 0x529], /* CYRILLIC SMALL LETTER EN WITH LEFT HOOK */ + [0x52a, 0x52b], /* CYRILLIC CAPITAL LETTER DZZHE */ + [0x52a, 0x52b], /* CYRILLIC SMALL LETTER DZZHE */ + [0x52c, 0x52d], /* CYRILLIC CAPITAL LETTER DCHE */ + [0x52c, 0x52d], /* CYRILLIC SMALL LETTER DCHE */ + [0x52e, 0x52f], /* CYRILLIC CAPITAL LETTER EL WITH DESCENDER */ + [0x52e, 0x52f], /* CYRILLIC SMALL LETTER EL WITH DESCENDER */ + [0x530, 0x530], + [0x531, 0x561], /* ARMENIAN CAPITAL LETTER AYB */ + [0x532, 0x562], /* ARMENIAN CAPITAL LETTER BEN */ + [0x533, 0x563], /* ARMENIAN CAPITAL LETTER GIM */ + [0x534, 0x564], /* ARMENIAN CAPITAL LETTER DA */ + [0x535, 0x565], /* ARMENIAN CAPITAL LETTER ECH */ + [0x536, 0x566], /* ARMENIAN CAPITAL LETTER ZA */ + [0x537, 0x567], /* ARMENIAN CAPITAL LETTER EH */ + [0x538, 0x568], /* ARMENIAN CAPITAL LETTER ET */ + [0x539, 0x569], /* ARMENIAN CAPITAL LETTER TO */ + [0x53a, 0x56a], /* ARMENIAN CAPITAL LETTER ZHE */ + [0x53b, 0x56b], /* ARMENIAN CAPITAL LETTER INI */ + [0x53c, 0x56c], /* ARMENIAN CAPITAL LETTER LIWN */ + [0x53d, 0x56d], /* ARMENIAN CAPITAL LETTER XEH */ + [0x53e, 0x56e], /* ARMENIAN CAPITAL LETTER CA */ + [0x53f, 0x56f], /* ARMENIAN CAPITAL LETTER KEN */ + [0x540, 0x570], /* ARMENIAN CAPITAL LETTER HO */ + [0x541, 0x571], /* ARMENIAN CAPITAL LETTER JA */ + [0x542, 0x572], /* ARMENIAN CAPITAL LETTER GHAD (ARMENIAN CAPITAL LETTER LAD) */ + [0x543, 0x573], /* ARMENIAN CAPITAL LETTER CHEH */ + [0x544, 0x574], /* ARMENIAN CAPITAL LETTER MEN */ + [0x545, 0x575], /* ARMENIAN CAPITAL LETTER YI */ + [0x546, 0x576], /* ARMENIAN CAPITAL LETTER NOW */ + [0x547, 0x577], /* ARMENIAN CAPITAL LETTER SHA */ + [0x548, 0x578], /* ARMENIAN CAPITAL LETTER VO */ + [0x549, 0x579], /* ARMENIAN CAPITAL LETTER CHA */ + [0x54a, 0x57a], /* ARMENIAN CAPITAL LETTER PEH */ + [0x54b, 0x57b], /* ARMENIAN CAPITAL LETTER JHEH */ + [0x54c, 0x57c], /* ARMENIAN CAPITAL LETTER RA */ + [0x54d, 0x57d], /* ARMENIAN CAPITAL LETTER SEH */ + [0x54e, 0x57e], /* ARMENIAN CAPITAL LETTER VEW */ + [0x54f, 0x57f], /* ARMENIAN CAPITAL LETTER TIWN */ + [0x550, 0x580], /* ARMENIAN CAPITAL LETTER REH */ + [0x551, 0x581], /* ARMENIAN CAPITAL LETTER CO */ + [0x552, 0x582], /* ARMENIAN CAPITAL LETTER YIWN */ + [0x553, 0x583], /* ARMENIAN CAPITAL LETTER PIWR */ + [0x554, 0x584], /* ARMENIAN CAPITAL LETTER KEH */ + [0x555, 0x585], /* ARMENIAN CAPITAL LETTER OH */ + [0x556, 0x586], /* ARMENIAN CAPITAL LETTER FEH */ + [0x557, 0x557], + [0x558, 0x558], + [0x559, 0x559], /* ARMENIAN MODIFIER LETTER LEFT HALF RING */ + [0x55a, 0x55a], /* ARMENIAN APOSTROPHE (ARMENIAN MODIFIER LETTER RIGHT HALF RING) */ + [0x55b, 0x55b], /* ARMENIAN EMPHASIS MARK */ + [0x55c, 0x55c], /* ARMENIAN EXCLAMATION MARK */ + [0x55d, 0x55d], /* ARMENIAN COMMA */ + [0x55e, 0x55e], /* ARMENIAN QUESTION MARK */ + [0x55f, 0x55f], /* ARMENIAN ABBREVIATION MARK */ + [0x560, 0x560], + [0x531, 0x561], /* ARMENIAN SMALL LETTER AYB */ + [0x532, 0x562], /* ARMENIAN SMALL LETTER BEN */ + [0x533, 0x563], /* ARMENIAN SMALL LETTER GIM */ + [0x534, 0x564], /* ARMENIAN SMALL LETTER DA */ + [0x535, 0x565], /* ARMENIAN SMALL LETTER ECH */ + [0x536, 0x566], /* ARMENIAN SMALL LETTER ZA */ + [0x537, 0x567], /* ARMENIAN SMALL LETTER EH */ + [0x538, 0x568], /* ARMENIAN SMALL LETTER ET */ + [0x539, 0x569], /* ARMENIAN SMALL LETTER TO */ + [0x53a, 0x56a], /* ARMENIAN SMALL LETTER ZHE */ + [0x53b, 0x56b], /* ARMENIAN SMALL LETTER INI */ + [0x53c, 0x56c], /* ARMENIAN SMALL LETTER LIWN */ + [0x53d, 0x56d], /* ARMENIAN SMALL LETTER XEH */ + [0x53e, 0x56e], /* ARMENIAN SMALL LETTER CA */ + [0x53f, 0x56f], /* ARMENIAN SMALL LETTER KEN */ + [0x540, 0x570], /* ARMENIAN SMALL LETTER HO */ + [0x541, 0x571], /* ARMENIAN SMALL LETTER JA */ + [0x542, 0x572], /* ARMENIAN SMALL LETTER GHAD (ARMENIAN SMALL LETTER LAD) */ + [0x543, 0x573], /* ARMENIAN SMALL LETTER CHEH */ + [0x544, 0x574], /* ARMENIAN SMALL LETTER MEN */ + [0x545, 0x575], /* ARMENIAN SMALL LETTER YI */ + [0x546, 0x576], /* ARMENIAN SMALL LETTER NOW */ + [0x547, 0x577], /* ARMENIAN SMALL LETTER SHA */ + [0x548, 0x578], /* ARMENIAN SMALL LETTER VO */ + [0x549, 0x579], /* ARMENIAN SMALL LETTER CHA */ + [0x54a, 0x57a], /* ARMENIAN SMALL LETTER PEH */ + [0x54b, 0x57b], /* ARMENIAN SMALL LETTER JHEH */ + [0x54c, 0x57c], /* ARMENIAN SMALL LETTER RA */ + [0x54d, 0x57d], /* ARMENIAN SMALL LETTER SEH */ + [0x54e, 0x57e], /* ARMENIAN SMALL LETTER VEW */ + [0x54f, 0x57f], /* ARMENIAN SMALL LETTER TIWN */ + [0x550, 0x580], /* ARMENIAN SMALL LETTER REH */ + [0x551, 0x581], /* ARMENIAN SMALL LETTER CO */ + [0x552, 0x582], /* ARMENIAN SMALL LETTER YIWN */ + [0x553, 0x583], /* ARMENIAN SMALL LETTER PIWR */ + [0x554, 0x584], /* ARMENIAN SMALL LETTER KEH */ + [0x555, 0x585], /* ARMENIAN SMALL LETTER OH */ + [0x556, 0x586], /* ARMENIAN SMALL LETTER FEH */ + [0x587, 0x587], /* ARMENIAN SMALL LIGATURE ECH YIWN */ + [0x588, 0x588], + [0x589, 0x589], /* ARMENIAN FULL STOP (ARMENIAN PERIOD) */ + [0x58a, 0x58a], /* ARMENIAN HYPHEN */ + [0x58b, 0x58b], + [0x58c, 0x58c], + [0x58d, 0x58d], /* RIGHT-FACING ARMENIAN ETERNITY SIGN */ + [0x58e, 0x58e], /* LEFT-FACING ARMENIAN ETERNITY SIGN */ + [0x58f, 0x58f], /* ARMENIAN DRAM SIGN */ + [0x590, 0x590], + [0x591, 0x591], /* HEBREW ACCENT ETNAHTA */ + [0x592, 0x592], /* HEBREW ACCENT SEGOL */ + [0x593, 0x593], /* HEBREW ACCENT SHALSHELET */ + [0x594, 0x594], /* HEBREW ACCENT ZAQEF QATAN */ + [0x595, 0x595], /* HEBREW ACCENT ZAQEF GADOL */ + [0x596, 0x596], /* HEBREW ACCENT TIPEHA */ + [0x597, 0x597], /* HEBREW ACCENT REVIA */ + [0x598, 0x598], /* HEBREW ACCENT ZARQA */ + [0x599, 0x599], /* HEBREW ACCENT PASHTA */ + [0x59a, 0x59a], /* HEBREW ACCENT YETIV */ + [0x59b, 0x59b], /* HEBREW ACCENT TEVIR */ + [0x59c, 0x59c], /* HEBREW ACCENT GERESH */ + [0x59d, 0x59d], /* HEBREW ACCENT GERESH MUQDAM */ + [0x59e, 0x59e], /* HEBREW ACCENT GERSHAYIM */ + [0x59f, 0x59f], /* HEBREW ACCENT QARNEY PARA */ + [0x5a0, 0x5a0], /* HEBREW ACCENT TELISHA GEDOLA */ + [0x5a1, 0x5a1], /* HEBREW ACCENT PAZER */ + [0x5a2, 0x5a2], /* HEBREW ACCENT ATNAH HAFUKH */ + [0x5a3, 0x5a3], /* HEBREW ACCENT MUNAH */ + [0x5a4, 0x5a4], /* HEBREW ACCENT MAHAPAKH */ + [0x5a5, 0x5a5], /* HEBREW ACCENT MERKHA */ + [0x5a6, 0x5a6], /* HEBREW ACCENT MERKHA KEFULA */ + [0x5a7, 0x5a7], /* HEBREW ACCENT DARGA */ + [0x5a8, 0x5a8], /* HEBREW ACCENT QADMA */ + [0x5a9, 0x5a9], /* HEBREW ACCENT TELISHA QETANA */ + [0x5aa, 0x5aa], /* HEBREW ACCENT YERAH BEN YOMO */ + [0x5ab, 0x5ab], /* HEBREW ACCENT OLE */ + [0x5ac, 0x5ac], /* HEBREW ACCENT ILUY */ + [0x5ad, 0x5ad], /* HEBREW ACCENT DEHI */ + [0x5ae, 0x5ae], /* HEBREW ACCENT ZINOR */ + [0x5af, 0x5af], /* HEBREW MARK MASORA CIRCLE */ + [0x5b0, 0x5b0], /* HEBREW POINT SHEVA */ + [0x5b1, 0x5b1], /* HEBREW POINT HATAF SEGOL */ + [0x5b2, 0x5b2], /* HEBREW POINT HATAF PATAH */ + [0x5b3, 0x5b3], /* HEBREW POINT HATAF QAMATS */ + [0x5b4, 0x5b4], /* HEBREW POINT HIRIQ */ + [0x5b5, 0x5b5], /* HEBREW POINT TSERE */ + [0x5b6, 0x5b6], /* HEBREW POINT SEGOL */ + [0x5b7, 0x5b7], /* HEBREW POINT PATAH */ + [0x5b8, 0x5b8], /* HEBREW POINT QAMATS */ + [0x5b9, 0x5b9], /* HEBREW POINT HOLAM */ + [0x5ba, 0x5ba], /* HEBREW POINT HOLAM HASER FOR VAV */ + [0x5bb, 0x5bb], /* HEBREW POINT QUBUTS */ + [0x5bc, 0x5bc], /* HEBREW POINT DAGESH OR MAPIQ (HEBREW POINT DAGESH) */ + [0x5bd, 0x5bd], /* HEBREW POINT METEG */ + [0x5be, 0x5be], /* HEBREW PUNCTUATION MAQAF */ + [0x5bf, 0x5bf], /* HEBREW POINT RAFE */ + [0x5c0, 0x5c0], /* HEBREW PUNCTUATION PASEQ (HEBREW POINT PASEQ) */ + [0x5c1, 0x5c1], /* HEBREW POINT SHIN DOT */ + [0x5c2, 0x5c2], /* HEBREW POINT SIN DOT */ + [0x5c3, 0x5c3], /* HEBREW PUNCTUATION SOF PASUQ */ + [0x5c4, 0x5c4], /* HEBREW MARK UPPER DOT */ + [0x5c5, 0x5c5], /* HEBREW MARK LOWER DOT */ + [0x5c6, 0x5c6], /* HEBREW PUNCTUATION NUN HAFUKHA */ + [0x5c7, 0x5c7], /* HEBREW POINT QAMATS QATAN */ + [0x5c8, 0x5c8], + [0x5c9, 0x5c9], + [0x5ca, 0x5ca], + [0x5cb, 0x5cb], + [0x5cc, 0x5cc], + [0x5cd, 0x5cd], + [0x5ce, 0x5ce], + [0x5cf, 0x5cf], + [0x5d0, 0x5d0], /* HEBREW LETTER ALEF */ + [0x5d1, 0x5d1], /* HEBREW LETTER BET */ + [0x5d2, 0x5d2], /* HEBREW LETTER GIMEL */ + [0x5d3, 0x5d3], /* HEBREW LETTER DALET */ + [0x5d4, 0x5d4], /* HEBREW LETTER HE */ + [0x5d5, 0x5d5], /* HEBREW LETTER VAV */ + [0x5d6, 0x5d6], /* HEBREW LETTER ZAYIN */ + [0x5d7, 0x5d7], /* HEBREW LETTER HET */ + [0x5d8, 0x5d8], /* HEBREW LETTER TET */ + [0x5d9, 0x5d9], /* HEBREW LETTER YOD */ + [0x5da, 0x5da], /* HEBREW LETTER FINAL KAF */ + [0x5db, 0x5db], /* HEBREW LETTER KAF */ + [0x5dc, 0x5dc], /* HEBREW LETTER LAMED */ + [0x5dd, 0x5dd], /* HEBREW LETTER FINAL MEM */ + [0x5de, 0x5de], /* HEBREW LETTER MEM */ + [0x5df, 0x5df], /* HEBREW LETTER FINAL NUN */ + [0x5e0, 0x5e0], /* HEBREW LETTER NUN */ + [0x5e1, 0x5e1], /* HEBREW LETTER SAMEKH */ + [0x5e2, 0x5e2], /* HEBREW LETTER AYIN */ + [0x5e3, 0x5e3], /* HEBREW LETTER FINAL PE */ + [0x5e4, 0x5e4], /* HEBREW LETTER PE */ + [0x5e5, 0x5e5], /* HEBREW LETTER FINAL TSADI */ + [0x5e6, 0x5e6], /* HEBREW LETTER TSADI */ + [0x5e7, 0x5e7], /* HEBREW LETTER QOF */ + [0x5e8, 0x5e8], /* HEBREW LETTER RESH */ + [0x5e9, 0x5e9], /* HEBREW LETTER SHIN */ + [0x5ea, 0x5ea], /* HEBREW LETTER TAV */ + [0x5eb, 0x5eb], + [0x5ec, 0x5ec], + [0x5ed, 0x5ed], + [0x5ee, 0x5ee], + [0x5ef, 0x5ef], + [0x5f0, 0x5f0], /* HEBREW LIGATURE YIDDISH DOUBLE VAV (HEBREW LETTER DOUBLE VAV) */ + [0x5f1, 0x5f1], /* HEBREW LIGATURE YIDDISH VAV YOD (HEBREW LETTER VAV YOD) */ + [0x5f2, 0x5f2], /* HEBREW LIGATURE YIDDISH DOUBLE YOD (HEBREW LETTER DOUBLE YOD) */ + [0x5f3, 0x5f3], /* HEBREW PUNCTUATION GERESH */ + [0x5f4, 0x5f4], /* HEBREW PUNCTUATION GERSHAYIM */ + [0x5f5, 0x5f5], + [0x5f6, 0x5f6], + [0x5f7, 0x5f7], + [0x5f8, 0x5f8], + [0x5f9, 0x5f9], + [0x5fa, 0x5fa], + [0x5fb, 0x5fb], + [0x5fc, 0x5fc], + [0x5fd, 0x5fd], + [0x5fe, 0x5fe], + [0x5ff, 0x5ff], + [0x600, 0x600], /* ARABIC NUMBER SIGN */ + [0x601, 0x601], /* ARABIC SIGN SANAH */ + [0x602, 0x602], /* ARABIC FOOTNOTE MARKER */ + [0x603, 0x603], /* ARABIC SIGN SAFHA */ + [0x604, 0x604], /* ARABIC SIGN SAMVAT */ + [0x605, 0x605], /* ARABIC NUMBER MARK ABOVE */ + [0x606, 0x606], /* ARABIC-INDIC CUBE ROOT */ + [0x607, 0x607], /* ARABIC-INDIC FOURTH ROOT */ + [0x608, 0x608], /* ARABIC RAY */ + [0x609, 0x609], /* ARABIC-INDIC PER MILLE SIGN */ + [0x60a, 0x60a], /* ARABIC-INDIC PER TEN THOUSAND SIGN */ + [0x60b, 0x60b], /* AFGHANI SIGN */ + [0x60c, 0x60c], /* ARABIC COMMA */ + [0x60d, 0x60d], /* ARABIC DATE SEPARATOR */ + [0x60e, 0x60e], /* ARABIC POETIC VERSE SIGN */ + [0x60f, 0x60f], /* ARABIC SIGN MISRA */ + [0x610, 0x610], /* ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM */ + [0x611, 0x611], /* ARABIC SIGN ALAYHE ASSALLAM */ + [0x612, 0x612], /* ARABIC SIGN RAHMATULLAH ALAYHE */ + [0x613, 0x613], /* ARABIC SIGN RADI ALLAHOU ANHU */ + [0x614, 0x614], /* ARABIC SIGN TAKHALLUS */ + [0x615, 0x615], /* ARABIC SMALL HIGH TAH */ + [0x616, 0x616], /* ARABIC SMALL HIGH LIGATURE ALEF WITH LAM WITH YEH */ + [0x617, 0x617], /* ARABIC SMALL HIGH ZAIN */ + [0x618, 0x618], /* ARABIC SMALL FATHA */ + [0x619, 0x619], /* ARABIC SMALL DAMMA */ + [0x61a, 0x61a], /* ARABIC SMALL KASRA */ + [0x61b, 0x61b], /* ARABIC SEMICOLON */ + [0x61c, 0x61c], /* ARABIC LETTER MARK */ + [0x61d, 0x61d], + [0x61e, 0x61e], /* ARABIC TRIPLE DOT PUNCTUATION MARK */ + [0x61f, 0x61f], /* ARABIC QUESTION MARK */ + [0x620, 0x620], /* ARABIC LETTER KASHMIRI YEH */ + [0x621, 0x621], /* ARABIC LETTER HAMZA (ARABIC LETTER HAMZAH) */ + [0x622, 0x622], /* ARABIC LETTER ALEF WITH MADDA ABOVE (ARABIC LETTER MADDAH ON ALEF) */ + [0x623, 0x623], /* ARABIC LETTER ALEF WITH HAMZA ABOVE (ARABIC LETTER HAMZAH ON ALEF) */ + [0x624, 0x624], /* ARABIC LETTER WAW WITH HAMZA ABOVE (ARABIC LETTER HAMZAH ON WAW) */ + [0x625, 0x625], /* ARABIC LETTER ALEF WITH HAMZA BELOW (ARABIC LETTER HAMZAH UNDER ALEF) */ + [0x626, 0x626], /* ARABIC LETTER YEH WITH HAMZA ABOVE (ARABIC LETTER HAMZAH ON YA) */ + [0x627, 0x627], /* ARABIC LETTER ALEF */ + [0x628, 0x628], /* ARABIC LETTER BEH (ARABIC LETTER BAA) */ + [0x629, 0x629], /* ARABIC LETTER TEH MARBUTA (ARABIC LETTER TAA MARBUTAH) */ + [0x62a, 0x62a], /* ARABIC LETTER TEH (ARABIC LETTER TAA) */ + [0x62b, 0x62b], /* ARABIC LETTER THEH (ARABIC LETTER THAA) */ + [0x62c, 0x62c], /* ARABIC LETTER JEEM */ + [0x62d, 0x62d], /* ARABIC LETTER HAH (ARABIC LETTER HAA) */ + [0x62e, 0x62e], /* ARABIC LETTER KHAH (ARABIC LETTER KHAA) */ + [0x62f, 0x62f], /* ARABIC LETTER DAL */ + [0x630, 0x630], /* ARABIC LETTER THAL */ + [0x631, 0x631], /* ARABIC LETTER REH (ARABIC LETTER RA) */ + [0x632, 0x632], /* ARABIC LETTER ZAIN */ + [0x633, 0x633], /* ARABIC LETTER SEEN */ + [0x634, 0x634], /* ARABIC LETTER SHEEN */ + [0x635, 0x635], /* ARABIC LETTER SAD */ + [0x636, 0x636], /* ARABIC LETTER DAD */ + [0x637, 0x637], /* ARABIC LETTER TAH */ + [0x638, 0x638], /* ARABIC LETTER ZAH (ARABIC LETTER DHAH) */ + [0x639, 0x639], /* ARABIC LETTER AIN */ + [0x63a, 0x63a], /* ARABIC LETTER GHAIN */ + [0x63b, 0x63b], /* ARABIC LETTER KEHEH WITH TWO DOTS ABOVE */ + [0x63c, 0x63c], /* ARABIC LETTER KEHEH WITH THREE DOTS BELOW */ + [0x63d, 0x63d], /* ARABIC LETTER FARSI YEH WITH INVERTED V */ + [0x63e, 0x63e], /* ARABIC LETTER FARSI YEH WITH TWO DOTS ABOVE */ + [0x63f, 0x63f], /* ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE */ + [0x640, 0x640], /* ARABIC TATWEEL */ + [0x641, 0x641], /* ARABIC LETTER FEH (ARABIC LETTER FA) */ + [0x642, 0x642], /* ARABIC LETTER QAF */ + [0x643, 0x643], /* ARABIC LETTER KAF (ARABIC LETTER CAF) */ + [0x644, 0x644], /* ARABIC LETTER LAM */ + [0x645, 0x645], /* ARABIC LETTER MEEM */ + [0x646, 0x646], /* ARABIC LETTER NOON */ + [0x647, 0x647], /* ARABIC LETTER HEH (ARABIC LETTER HA) */ + [0x648, 0x648], /* ARABIC LETTER WAW */ + [0x649, 0x649], /* ARABIC LETTER ALEF MAKSURA (ARABIC LETTER ALEF MAQSURAH) */ + [0x64a, 0x64a], /* ARABIC LETTER YEH (ARABIC LETTER YA) */ + [0x64b, 0x64b], /* ARABIC FATHATAN */ + [0x64c, 0x64c], /* ARABIC DAMMATAN */ + [0x64d, 0x64d], /* ARABIC KASRATAN */ + [0x64e, 0x64e], /* ARABIC FATHA (ARABIC FATHAH) */ + [0x64f, 0x64f], /* ARABIC DAMMA (ARABIC DAMMAH) */ + [0x650, 0x650], /* ARABIC KASRA (ARABIC KASRAH) */ + [0x651, 0x651], /* ARABIC SHADDA (ARABIC SHADDAH) */ + [0x652, 0x652], /* ARABIC SUKUN */ + [0x653, 0x653], /* ARABIC MADDAH ABOVE */ + [0x654, 0x654], /* ARABIC HAMZA ABOVE */ + [0x655, 0x655], /* ARABIC HAMZA BELOW */ + [0x656, 0x656], /* ARABIC SUBSCRIPT ALEF */ + [0x657, 0x657], /* ARABIC INVERTED DAMMA */ + [0x658, 0x658], /* ARABIC MARK NOON GHUNNA */ + [0x659, 0x659], /* ARABIC ZWARAKAY */ + [0x65a, 0x65a], /* ARABIC VOWEL SIGN SMALL V ABOVE */ + [0x65b, 0x65b], /* ARABIC VOWEL SIGN INVERTED SMALL V ABOVE */ + [0x65c, 0x65c], /* ARABIC VOWEL SIGN DOT BELOW */ + [0x65d, 0x65d], /* ARABIC REVERSED DAMMA */ + [0x65e, 0x65e], /* ARABIC FATHA WITH TWO DOTS */ + [0x65f, 0x65f], /* ARABIC WAVY HAMZA BELOW */ + [0x660, 0x660], /* ARABIC-INDIC DIGIT ZERO */ + [0x661, 0x661], /* ARABIC-INDIC DIGIT ONE */ + [0x662, 0x662], /* ARABIC-INDIC DIGIT TWO */ + [0x663, 0x663], /* ARABIC-INDIC DIGIT THREE */ + [0x664, 0x664], /* ARABIC-INDIC DIGIT FOUR */ + [0x665, 0x665], /* ARABIC-INDIC DIGIT FIVE */ + [0x666, 0x666], /* ARABIC-INDIC DIGIT SIX */ + [0x667, 0x667], /* ARABIC-INDIC DIGIT SEVEN */ + [0x668, 0x668], /* ARABIC-INDIC DIGIT EIGHT */ + [0x669, 0x669], /* ARABIC-INDIC DIGIT NINE */ + [0x66a, 0x66a], /* ARABIC PERCENT SIGN */ + [0x66b, 0x66b], /* ARABIC DECIMAL SEPARATOR */ + [0x66c, 0x66c], /* ARABIC THOUSANDS SEPARATOR */ + [0x66d, 0x66d], /* ARABIC FIVE POINTED STAR */ + [0x66e, 0x66e], /* ARABIC LETTER DOTLESS BEH */ + [0x66f, 0x66f], /* ARABIC LETTER DOTLESS QAF */ + [0x670, 0x670], /* ARABIC LETTER SUPERSCRIPT ALEF (ARABIC ALEF ABOVE) */ + [0x671, 0x671], /* ARABIC LETTER ALEF WASLA (ARABIC LETTER HAMZAT WASL ON ALEF) */ + [0x672, 0x672], /* ARABIC LETTER ALEF WITH WAVY HAMZA ABOVE (ARABIC LETTER WAVY HAMZAH ON ALEF) */ + [0x673, 0x673], /* ARABIC LETTER ALEF WITH WAVY HAMZA BELOW (ARABIC LETTER WAVY HAMZAH UNDER ALEF) */ + [0x674, 0x674], /* ARABIC LETTER HIGH HAMZA (ARABIC LETTER HIGH HAMZAH) */ + [0x675, 0x675], /* ARABIC LETTER HIGH HAMZA ALEF (ARABIC LETTER HIGH HAMZAH ALEF) */ + [0x676, 0x676], /* ARABIC LETTER HIGH HAMZA WAW (ARABIC LETTER HIGH HAMZAH WAW) */ + [0x677, 0x677], /* ARABIC LETTER U WITH HAMZA ABOVE (ARABIC LETTER HIGH HAMZAH WAW WITH DAMMAH) */ + [0x678, 0x678], /* ARABIC LETTER HIGH HAMZA YEH (ARABIC LETTER HIGH HAMZAH YA) */ + [0x679, 0x679], /* ARABIC LETTER TTEH (ARABIC LETTER TAA WITH SMALL TAH) */ + [0x67a, 0x67a], /* ARABIC LETTER TTEHEH (ARABIC LETTER TAA WITH TWO DOTS VERTICAL ABOVE) */ + [0x67b, 0x67b], /* ARABIC LETTER BEEH (ARABIC LETTER BAA WITH TWO DOTS VERTICAL BELOW) */ + [0x67c, 0x67c], /* ARABIC LETTER TEH WITH RING (ARABIC LETTER TAA WITH RING) */ + [0x67d, 0x67d], /* ARABIC LETTER TEH WITH THREE DOTS ABOVE DOWNWARDS (ARABIC LETTER TAA WITH THREE DOTS ABOVE DOWNWARD) */ + [0x67e, 0x67e], /* ARABIC LETTER PEH (ARABIC LETTER TAA WITH THREE DOTS BELOW) */ + [0x67f, 0x67f], /* ARABIC LETTER TEHEH (ARABIC LETTER TAA WITH FOUR DOTS ABOVE) */ + [0x680, 0x680], /* ARABIC LETTER BEHEH (ARABIC LETTER BAA WITH FOUR DOTS BELOW) */ + [0x681, 0x681], /* ARABIC LETTER HAH WITH HAMZA ABOVE (ARABIC LETTER HAMZAH ON HAA) */ + [0x682, 0x682], /* ARABIC LETTER HAH WITH TWO DOTS VERTICAL ABOVE (ARABIC LETTER HAA WITH TWO DOTS VERTICAL ABOVE) */ + [0x683, 0x683], /* ARABIC LETTER NYEH (ARABIC LETTER HAA WITH MIDDLE TWO DOTS) */ + [0x684, 0x684], /* ARABIC LETTER DYEH (ARABIC LETTER HAA WITH MIDDLE TWO DOTS VERTICAL) */ + [0x685, 0x685], /* ARABIC LETTER HAH WITH THREE DOTS ABOVE (ARABIC LETTER HAA WITH THREE DOTS ABOVE) */ + [0x686, 0x686], /* ARABIC LETTER TCHEH (ARABIC LETTER HAA WITH MIDDLE THREE DOTS DOWNWARD) */ + [0x687, 0x687], /* ARABIC LETTER TCHEHEH (ARABIC LETTER HAA WITH MIDDLE FOUR DOTS) */ + [0x688, 0x688], /* ARABIC LETTER DDAL (ARABIC LETTER DAL WITH SMALL TAH) */ + [0x689, 0x689], /* ARABIC LETTER DAL WITH RING */ + [0x68a, 0x68a], /* ARABIC LETTER DAL WITH DOT BELOW */ + [0x68b, 0x68b], /* ARABIC LETTER DAL WITH DOT BELOW AND SMALL TAH */ + [0x68c, 0x68c], /* ARABIC LETTER DAHAL (ARABIC LETTER DAL WITH TWO DOTS ABOVE) */ + [0x68d, 0x68d], /* ARABIC LETTER DDAHAL (ARABIC LETTER DAL WITH TWO DOTS BELOW) */ + [0x68e, 0x68e], /* ARABIC LETTER DUL (ARABIC LETTER DAL WITH THREE DOTS ABOVE) */ + [0x68f, 0x68f], /* ARABIC LETTER DAL WITH THREE DOTS ABOVE DOWNWARDS (ARABIC LETTER DAL WITH THREE DOTS ABOVE DOWNWARD) */ + [0x690, 0x690], /* ARABIC LETTER DAL WITH FOUR DOTS ABOVE */ + [0x691, 0x691], /* ARABIC LETTER RREH (ARABIC LETTER RA WITH SMALL TAH) */ + [0x692, 0x692], /* ARABIC LETTER REH WITH SMALL V (ARABIC LETTER RA WITH SMALL V) */ + [0x693, 0x693], /* ARABIC LETTER REH WITH RING (ARABIC LETTER RA WITH RING) */ + [0x694, 0x694], /* ARABIC LETTER REH WITH DOT BELOW (ARABIC LETTER RA WITH DOT BELOW) */ + [0x695, 0x695], /* ARABIC LETTER REH WITH SMALL V BELOW (ARABIC LETTER RA WITH SMALL V BELOW) */ + [0x696, 0x696], /* ARABIC LETTER REH WITH DOT BELOW AND DOT ABOVE (ARABIC LETTER RA WITH DOT BELOW AND DOT ABOVE) */ + [0x697, 0x697], /* ARABIC LETTER REH WITH TWO DOTS ABOVE (ARABIC LETTER RA WITH TWO DOTS ABOVE) */ + [0x698, 0x698], /* ARABIC LETTER JEH (ARABIC LETTER RA WITH THREE DOTS ABOVE) */ + [0x699, 0x699], /* ARABIC LETTER REH WITH FOUR DOTS ABOVE (ARABIC LETTER RA WITH FOUR DOTS ABOVE) */ + [0x69a, 0x69a], /* ARABIC LETTER SEEN WITH DOT BELOW AND DOT ABOVE */ + [0x69b, 0x69b], /* ARABIC LETTER SEEN WITH THREE DOTS BELOW */ + [0x69c, 0x69c], /* ARABIC LETTER SEEN WITH THREE DOTS BELOW AND THREE DOTS ABOVE */ + [0x69d, 0x69d], /* ARABIC LETTER SAD WITH TWO DOTS BELOW */ + [0x69e, 0x69e], /* ARABIC LETTER SAD WITH THREE DOTS ABOVE */ + [0x69f, 0x69f], /* ARABIC LETTER TAH WITH THREE DOTS ABOVE */ + [0x6a0, 0x6a0], /* ARABIC LETTER AIN WITH THREE DOTS ABOVE */ + [0x6a1, 0x6a1], /* ARABIC LETTER DOTLESS FEH (ARABIC LETTER DOTLESS FA) */ + [0x6a2, 0x6a2], /* ARABIC LETTER FEH WITH DOT MOVED BELOW (ARABIC LETTER FA WITH DOT MOVED BELOW) */ + [0x6a3, 0x6a3], /* ARABIC LETTER FEH WITH DOT BELOW (ARABIC LETTER FA WITH DOT BELOW) */ + [0x6a4, 0x6a4], /* ARABIC LETTER VEH (ARABIC LETTER FA WITH THREE DOTS ABOVE) */ + [0x6a5, 0x6a5], /* ARABIC LETTER FEH WITH THREE DOTS BELOW (ARABIC LETTER FA WITH THREE DOTS BELOW) */ + [0x6a6, 0x6a6], /* ARABIC LETTER PEHEH (ARABIC LETTER FA WITH FOUR DOTS ABOVE) */ + [0x6a7, 0x6a7], /* ARABIC LETTER QAF WITH DOT ABOVE */ + [0x6a8, 0x6a8], /* ARABIC LETTER QAF WITH THREE DOTS ABOVE */ + [0x6a9, 0x6a9], /* ARABIC LETTER KEHEH (ARABIC LETTER OPEN CAF) */ + [0x6aa, 0x6aa], /* ARABIC LETTER SWASH KAF (ARABIC LETTER SWASH CAF) */ + [0x6ab, 0x6ab], /* ARABIC LETTER KAF WITH RING (ARABIC LETTER CAF WITH RING) */ + [0x6ac, 0x6ac], /* ARABIC LETTER KAF WITH DOT ABOVE (ARABIC LETTER CAF WITH DOT ABOVE) */ + [0x6ad, 0x6ad], /* ARABIC LETTER NG (ARABIC LETTER CAF WITH THREE DOTS ABOVE) */ + [0x6ae, 0x6ae], /* ARABIC LETTER KAF WITH THREE DOTS BELOW (ARABIC LETTER CAF WITH THREE DOTS BELOW) */ + [0x6af, 0x6af], /* ARABIC LETTER GAF */ + [0x6b0, 0x6b0], /* ARABIC LETTER GAF WITH RING */ + [0x6b1, 0x6b1], /* ARABIC LETTER NGOEH (ARABIC LETTER GAF WITH TWO DOTS ABOVE) */ + [0x6b2, 0x6b2], /* ARABIC LETTER GAF WITH TWO DOTS BELOW */ + [0x6b3, 0x6b3], /* ARABIC LETTER GUEH (ARABIC LETTER GAF WITH TWO DOTS VERTICAL BELOW) */ + [0x6b4, 0x6b4], /* ARABIC LETTER GAF WITH THREE DOTS ABOVE */ + [0x6b5, 0x6b5], /* ARABIC LETTER LAM WITH SMALL V */ + [0x6b6, 0x6b6], /* ARABIC LETTER LAM WITH DOT ABOVE */ + [0x6b7, 0x6b7], /* ARABIC LETTER LAM WITH THREE DOTS ABOVE */ + [0x6b8, 0x6b8], /* ARABIC LETTER LAM WITH THREE DOTS BELOW */ + [0x6b9, 0x6b9], /* ARABIC LETTER NOON WITH DOT BELOW */ + [0x6ba, 0x6ba], /* ARABIC LETTER NOON GHUNNA (ARABIC LETTER DOTLESS NOON) */ + [0x6bb, 0x6bb], /* ARABIC LETTER RNOON (ARABIC LETTER DOTLESS NOON WITH SMALL TAH) */ + [0x6bc, 0x6bc], /* ARABIC LETTER NOON WITH RING */ + [0x6bd, 0x6bd], /* ARABIC LETTER NOON WITH THREE DOTS ABOVE */ + [0x6be, 0x6be], /* ARABIC LETTER HEH DOACHASHMEE (ARABIC LETTER KNOTTED HA) */ + [0x6bf, 0x6bf], /* ARABIC LETTER TCHEH WITH DOT ABOVE */ + [0x6c0, 0x6c0], /* ARABIC LETTER HEH WITH YEH ABOVE (ARABIC LETTER HAMZAH ON HA) */ + [0x6c1, 0x6c1], /* ARABIC LETTER HEH GOAL (ARABIC LETTER HA GOAL) */ + [0x6c2, 0x6c2], /* ARABIC LETTER HEH GOAL WITH HAMZA ABOVE (ARABIC LETTER HAMZAH ON HA GOAL) */ + [0x6c3, 0x6c3], /* ARABIC LETTER TEH MARBUTA GOAL (ARABIC LETTER TAA MARBUTAH GOAL) */ + [0x6c4, 0x6c4], /* ARABIC LETTER WAW WITH RING */ + [0x6c5, 0x6c5], /* ARABIC LETTER KIRGHIZ OE (ARABIC LETTER WAW WITH BAR) */ + [0x6c6, 0x6c6], /* ARABIC LETTER OE (ARABIC LETTER WAW WITH SMALL V) */ + [0x6c7, 0x6c7], /* ARABIC LETTER U (ARABIC LETTER WAW WITH DAMMAH) */ + [0x6c8, 0x6c8], /* ARABIC LETTER YU (ARABIC LETTER WAW WITH ALEF ABOVE) */ + [0x6c9, 0x6c9], /* ARABIC LETTER KIRGHIZ YU (ARABIC LETTER WAW WITH INVERTED SMALL V) */ + [0x6ca, 0x6ca], /* ARABIC LETTER WAW WITH TWO DOTS ABOVE */ + [0x6cb, 0x6cb], /* ARABIC LETTER VE (ARABIC LETTER WAW WITH THREE DOTS ABOVE) */ + [0x6cc, 0x6cc], /* ARABIC LETTER FARSI YEH (ARABIC LETTER DOTLESS YA) */ + [0x6cd, 0x6cd], /* ARABIC LETTER YEH WITH TAIL (ARABIC LETTER YA WITH TAIL) */ + [0x6ce, 0x6ce], /* ARABIC LETTER YEH WITH SMALL V (ARABIC LETTER YA WITH SMALL V) */ + [0x6cf, 0x6cf], /* ARABIC LETTER WAW WITH DOT ABOVE */ + [0x6d0, 0x6d0], /* ARABIC LETTER E (ARABIC LETTER YA WITH TWO DOTS VERTICAL BELOW) */ + [0x6d1, 0x6d1], /* ARABIC LETTER YEH WITH THREE DOTS BELOW (ARABIC LETTER YA WITH THREE DOTS BELOW) */ + [0x6d2, 0x6d2], /* ARABIC LETTER YEH BARREE (ARABIC LETTER YA BARREE) */ + [0x6d3, 0x6d3], /* ARABIC LETTER YEH BARREE WITH HAMZA ABOVE (ARABIC LETTER HAMZAH ON YA BARREE) */ + [0x6d4, 0x6d4], /* ARABIC FULL STOP (ARABIC PERIOD) */ + [0x6d5, 0x6d5], /* ARABIC LETTER AE */ + [0x6d6, 0x6d6], /* ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA */ + [0x6d7, 0x6d7], /* ARABIC SMALL HIGH LIGATURE QAF WITH LAM WITH ALEF MAKSURA */ + [0x6d8, 0x6d8], /* ARABIC SMALL HIGH MEEM INITIAL FORM */ + [0x6d9, 0x6d9], /* ARABIC SMALL HIGH LAM ALEF */ + [0x6da, 0x6da], /* ARABIC SMALL HIGH JEEM */ + [0x6db, 0x6db], /* ARABIC SMALL HIGH THREE DOTS */ + [0x6dc, 0x6dc], /* ARABIC SMALL HIGH SEEN */ + [0x6dd, 0x6dd], /* ARABIC END OF AYAH */ + [0x6de, 0x6de], /* ARABIC START OF RUB EL HIZB */ + [0x6df, 0x6df], /* ARABIC SMALL HIGH ROUNDED ZERO */ + [0x6e0, 0x6e0], /* ARABIC SMALL HIGH UPRIGHT RECTANGULAR ZERO */ + [0x6e1, 0x6e1], /* ARABIC SMALL HIGH DOTLESS HEAD OF KHAH */ + [0x6e2, 0x6e2], /* ARABIC SMALL HIGH MEEM ISOLATED FORM */ + [0x6e3, 0x6e3], /* ARABIC SMALL LOW SEEN */ + [0x6e4, 0x6e4], /* ARABIC SMALL HIGH MADDA */ + [0x6e5, 0x6e5], /* ARABIC SMALL WAW */ + [0x6e6, 0x6e6], /* ARABIC SMALL YEH */ + [0x6e7, 0x6e7], /* ARABIC SMALL HIGH YEH */ + [0x6e8, 0x6e8], /* ARABIC SMALL HIGH NOON */ + [0x6e9, 0x6e9], /* ARABIC PLACE OF SAJDAH */ + [0x6ea, 0x6ea], /* ARABIC EMPTY CENTRE LOW STOP */ + [0x6eb, 0x6eb], /* ARABIC EMPTY CENTRE HIGH STOP */ + [0x6ec, 0x6ec], /* ARABIC ROUNDED HIGH STOP WITH FILLED CENTRE */ + [0x6ed, 0x6ed], /* ARABIC SMALL LOW MEEM */ + [0x6ee, 0x6ee], /* ARABIC LETTER DAL WITH INVERTED V */ + [0x6ef, 0x6ef], /* ARABIC LETTER REH WITH INVERTED V */ + [0x6f0, 0x6f0], /* EXTENDED ARABIC-INDIC DIGIT ZERO (EASTERN ARABIC-INDIC DIGIT ZERO) */ + [0x6f1, 0x6f1], /* EXTENDED ARABIC-INDIC DIGIT ONE (EASTERN ARABIC-INDIC DIGIT ONE) */ + [0x6f2, 0x6f2], /* EXTENDED ARABIC-INDIC DIGIT TWO (EASTERN ARABIC-INDIC DIGIT TWO) */ + [0x6f3, 0x6f3], /* EXTENDED ARABIC-INDIC DIGIT THREE (EASTERN ARABIC-INDIC DIGIT THREE) */ + [0x6f4, 0x6f4], /* EXTENDED ARABIC-INDIC DIGIT FOUR (EASTERN ARABIC-INDIC DIGIT FOUR) */ + [0x6f5, 0x6f5], /* EXTENDED ARABIC-INDIC DIGIT FIVE (EASTERN ARABIC-INDIC DIGIT FIVE) */ + [0x6f6, 0x6f6], /* EXTENDED ARABIC-INDIC DIGIT SIX (EASTERN ARABIC-INDIC DIGIT SIX) */ + [0x6f7, 0x6f7], /* EXTENDED ARABIC-INDIC DIGIT SEVEN (EASTERN ARABIC-INDIC DIGIT SEVEN) */ + [0x6f8, 0x6f8], /* EXTENDED ARABIC-INDIC DIGIT EIGHT (EASTERN ARABIC-INDIC DIGIT EIGHT) */ + [0x6f9, 0x6f9], /* EXTENDED ARABIC-INDIC DIGIT NINE (EASTERN ARABIC-INDIC DIGIT NINE) */ + [0x6fa, 0x6fa], /* ARABIC LETTER SHEEN WITH DOT BELOW */ + [0x6fb, 0x6fb], /* ARABIC LETTER DAD WITH DOT BELOW */ + [0x6fc, 0x6fc], /* ARABIC LETTER GHAIN WITH DOT BELOW */ + [0x6fd, 0x6fd], /* ARABIC SIGN SINDHI AMPERSAND */ + [0x6fe, 0x6fe], /* ARABIC SIGN SINDHI POSTPOSITION MEN */ + [0x6ff, 0x6ff], /* ARABIC LETTER HEH WITH INVERTED V */ + [0x700, 0x700], /* SYRIAC END OF PARAGRAPH */ + [0x701, 0x701], /* SYRIAC SUPRALINEAR FULL STOP */ + [0x702, 0x702], /* SYRIAC SUBLINEAR FULL STOP */ + [0x703, 0x703], /* SYRIAC SUPRALINEAR COLON */ + [0x704, 0x704], /* SYRIAC SUBLINEAR COLON */ + [0x705, 0x705], /* SYRIAC HORIZONTAL COLON */ + [0x706, 0x706], /* SYRIAC COLON SKEWED LEFT */ + [0x707, 0x707], /* SYRIAC COLON SKEWED RIGHT */ + [0x708, 0x708], /* SYRIAC SUPRALINEAR COLON SKEWED LEFT */ + [0x709, 0x709], /* SYRIAC SUBLINEAR COLON SKEWED RIGHT */ + [0x70a, 0x70a], /* SYRIAC CONTRACTION */ + [0x70b, 0x70b], /* SYRIAC HARKLEAN OBELUS */ + [0x70c, 0x70c], /* SYRIAC HARKLEAN METOBELUS */ + [0x70d, 0x70d], /* SYRIAC HARKLEAN ASTERISCUS */ + [0x70e, 0x70e], + [0x70f, 0x70f], /* SYRIAC ABBREVIATION MARK */ + [0x710, 0x710], /* SYRIAC LETTER ALAPH */ + [0x711, 0x711], /* SYRIAC LETTER SUPERSCRIPT ALAPH */ + [0x712, 0x712], /* SYRIAC LETTER BETH */ + [0x713, 0x713], /* SYRIAC LETTER GAMAL */ + [0x714, 0x714], /* SYRIAC LETTER GAMAL GARSHUNI */ + [0x715, 0x715], /* SYRIAC LETTER DALATH */ + [0x716, 0x716], /* SYRIAC LETTER DOTLESS DALATH RISH */ + [0x717, 0x717], /* SYRIAC LETTER HE */ + [0x718, 0x718], /* SYRIAC LETTER WAW */ + [0x719, 0x719], /* SYRIAC LETTER ZAIN */ + [0x71a, 0x71a], /* SYRIAC LETTER HETH */ + [0x71b, 0x71b], /* SYRIAC LETTER TETH */ + [0x71c, 0x71c], /* SYRIAC LETTER TETH GARSHUNI */ + [0x71d, 0x71d], /* SYRIAC LETTER YUDH */ + [0x71e, 0x71e], /* SYRIAC LETTER YUDH HE */ + [0x71f, 0x71f], /* SYRIAC LETTER KAPH */ + [0x720, 0x720], /* SYRIAC LETTER LAMADH */ + [0x721, 0x721], /* SYRIAC LETTER MIM */ + [0x722, 0x722], /* SYRIAC LETTER NUN */ + [0x723, 0x723], /* SYRIAC LETTER SEMKATH */ + [0x724, 0x724], /* SYRIAC LETTER FINAL SEMKATH */ + [0x725, 0x725], /* SYRIAC LETTER E */ + [0x726, 0x726], /* SYRIAC LETTER PE */ + [0x727, 0x727], /* SYRIAC LETTER REVERSED PE */ + [0x728, 0x728], /* SYRIAC LETTER SADHE */ + [0x729, 0x729], /* SYRIAC LETTER QAPH */ + [0x72a, 0x72a], /* SYRIAC LETTER RISH */ + [0x72b, 0x72b], /* SYRIAC LETTER SHIN */ + [0x72c, 0x72c], /* SYRIAC LETTER TAW */ + [0x72d, 0x72d], /* SYRIAC LETTER PERSIAN BHETH */ + [0x72e, 0x72e], /* SYRIAC LETTER PERSIAN GHAMAL */ + [0x72f, 0x72f], /* SYRIAC LETTER PERSIAN DHALATH */ + [0x730, 0x730], /* SYRIAC PTHAHA ABOVE */ + [0x731, 0x731], /* SYRIAC PTHAHA BELOW */ + [0x732, 0x732], /* SYRIAC PTHAHA DOTTED */ + [0x733, 0x733], /* SYRIAC ZQAPHA ABOVE */ + [0x734, 0x734], /* SYRIAC ZQAPHA BELOW */ + [0x735, 0x735], /* SYRIAC ZQAPHA DOTTED */ + [0x736, 0x736], /* SYRIAC RBASA ABOVE */ + [0x737, 0x737], /* SYRIAC RBASA BELOW */ + [0x738, 0x738], /* SYRIAC DOTTED ZLAMA HORIZONTAL */ + [0x739, 0x739], /* SYRIAC DOTTED ZLAMA ANGULAR */ + [0x73a, 0x73a], /* SYRIAC HBASA ABOVE */ + [0x73b, 0x73b], /* SYRIAC HBASA BELOW */ + [0x73c, 0x73c], /* SYRIAC HBASA-ESASA DOTTED */ + [0x73d, 0x73d], /* SYRIAC ESASA ABOVE */ + [0x73e, 0x73e], /* SYRIAC ESASA BELOW */ + [0x73f, 0x73f], /* SYRIAC RWAHA */ + [0x740, 0x740], /* SYRIAC FEMININE DOT */ + [0x741, 0x741], /* SYRIAC QUSHSHAYA */ + [0x742, 0x742], /* SYRIAC RUKKAKHA */ + [0x743, 0x743], /* SYRIAC TWO VERTICAL DOTS ABOVE */ + [0x744, 0x744], /* SYRIAC TWO VERTICAL DOTS BELOW */ + [0x745, 0x745], /* SYRIAC THREE DOTS ABOVE */ + [0x746, 0x746], /* SYRIAC THREE DOTS BELOW */ + [0x747, 0x747], /* SYRIAC OBLIQUE LINE ABOVE */ + [0x748, 0x748], /* SYRIAC OBLIQUE LINE BELOW */ + [0x749, 0x749], /* SYRIAC MUSIC */ + [0x74a, 0x74a], /* SYRIAC BARREKH */ + [0x74b, 0x74b], + [0x74c, 0x74c], + [0x74d, 0x74d], /* SYRIAC LETTER SOGDIAN ZHAIN */ + [0x74e, 0x74e], /* SYRIAC LETTER SOGDIAN KHAPH */ + [0x74f, 0x74f], /* SYRIAC LETTER SOGDIAN FE */ + [0x750, 0x750], /* ARABIC LETTER BEH WITH THREE DOTS HORIZONTALLY BELOW */ + [0x751, 0x751], /* ARABIC LETTER BEH WITH DOT BELOW AND THREE DOTS ABOVE */ + [0x752, 0x752], /* ARABIC LETTER BEH WITH THREE DOTS POINTING UPWARDS BELOW */ + [0x753, 0x753], /* ARABIC LETTER BEH WITH THREE DOTS POINTING UPWARDS BELOW AND TWO DOTS ABOVE */ + [0x754, 0x754], /* ARABIC LETTER BEH WITH TWO DOTS BELOW AND DOT ABOVE */ + [0x755, 0x755], /* ARABIC LETTER BEH WITH INVERTED SMALL V BELOW */ + [0x756, 0x756], /* ARABIC LETTER BEH WITH SMALL V */ + [0x757, 0x757], /* ARABIC LETTER HAH WITH TWO DOTS ABOVE */ + [0x758, 0x758], /* ARABIC LETTER HAH WITH THREE DOTS POINTING UPWARDS BELOW */ + [0x759, 0x759], /* ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW AND SMALL TAH */ + [0x75a, 0x75a], /* ARABIC LETTER DAL WITH INVERTED SMALL V BELOW */ + [0x75b, 0x75b], /* ARABIC LETTER REH WITH STROKE */ + [0x75c, 0x75c], /* ARABIC LETTER SEEN WITH FOUR DOTS ABOVE */ + [0x75d, 0x75d], /* ARABIC LETTER AIN WITH TWO DOTS ABOVE */ + [0x75e, 0x75e], /* ARABIC LETTER AIN WITH THREE DOTS POINTING DOWNWARDS ABOVE */ + [0x75f, 0x75f], /* ARABIC LETTER AIN WITH TWO DOTS VERTICALLY ABOVE */ + [0x760, 0x760], /* ARABIC LETTER FEH WITH TWO DOTS BELOW */ + [0x761, 0x761], /* ARABIC LETTER FEH WITH THREE DOTS POINTING UPWARDS BELOW */ + [0x762, 0x762], /* ARABIC LETTER KEHEH WITH DOT ABOVE */ + [0x763, 0x763], /* ARABIC LETTER KEHEH WITH THREE DOTS ABOVE */ + [0x764, 0x764], /* ARABIC LETTER KEHEH WITH THREE DOTS POINTING UPWARDS BELOW */ + [0x765, 0x765], /* ARABIC LETTER MEEM WITH DOT ABOVE */ + [0x766, 0x766], /* ARABIC LETTER MEEM WITH DOT BELOW */ + [0x767, 0x767], /* ARABIC LETTER NOON WITH TWO DOTS BELOW */ + [0x768, 0x768], /* ARABIC LETTER NOON WITH SMALL TAH */ + [0x769, 0x769], /* ARABIC LETTER NOON WITH SMALL V */ + [0x76a, 0x76a], /* ARABIC LETTER LAM WITH BAR */ + [0x76b, 0x76b], /* ARABIC LETTER REH WITH TWO DOTS VERTICALLY ABOVE */ + [0x76c, 0x76c], /* ARABIC LETTER REH WITH HAMZA ABOVE */ + [0x76d, 0x76d], /* ARABIC LETTER SEEN WITH TWO DOTS VERTICALLY ABOVE */ + [0x76e, 0x76e], /* ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH BELOW */ + [0x76f, 0x76f], /* ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH AND TWO DOTS */ + [0x770, 0x770], /* ARABIC LETTER SEEN WITH SMALL ARABIC LETTER TAH AND TWO DOTS */ + [0x771, 0x771], /* ARABIC LETTER REH WITH SMALL ARABIC LETTER TAH AND TWO DOTS */ + [0x772, 0x772], /* ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH ABOVE */ + [0x773, 0x773], /* ARABIC LETTER ALEF WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE */ + [0x774, 0x774], /* ARABIC LETTER ALEF WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE */ + [0x775, 0x775], /* ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE */ + [0x776, 0x776], /* ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE */ + [0x777, 0x777], /* ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT FOUR BELOW */ + [0x778, 0x778], /* ARABIC LETTER WAW WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE */ + [0x779, 0x779], /* ARABIC LETTER WAW WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE */ + [0x77a, 0x77a], /* ARABIC LETTER YEH BARREE WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE */ + [0x77b, 0x77b], /* ARABIC LETTER YEH BARREE WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE */ + [0x77c, 0x77c], /* ARABIC LETTER HAH WITH EXTENDED ARABIC-INDIC DIGIT FOUR BELOW */ + [0x77d, 0x77d], /* ARABIC LETTER SEEN WITH EXTENDED ARABIC-INDIC DIGIT FOUR ABOVE */ + [0x77e, 0x77e], /* ARABIC LETTER SEEN WITH INVERTED V */ + [0x77f, 0x77f], /* ARABIC LETTER KAF WITH TWO DOTS ABOVE */ + [0x780, 0x780], /* THAANA LETTER HAA */ + [0x781, 0x781], /* THAANA LETTER SHAVIYANI */ + [0x782, 0x782], /* THAANA LETTER NOONU */ + [0x783, 0x783], /* THAANA LETTER RAA */ + [0x784, 0x784], /* THAANA LETTER BAA */ + [0x785, 0x785], /* THAANA LETTER LHAVIYANI */ + [0x786, 0x786], /* THAANA LETTER KAAFU */ + [0x787, 0x787], /* THAANA LETTER ALIFU */ + [0x788, 0x788], /* THAANA LETTER VAAVU */ + [0x789, 0x789], /* THAANA LETTER MEEMU */ + [0x78a, 0x78a], /* THAANA LETTER FAAFU */ + [0x78b, 0x78b], /* THAANA LETTER DHAALU */ + [0x78c, 0x78c], /* THAANA LETTER THAA */ + [0x78d, 0x78d], /* THAANA LETTER LAAMU */ + [0x78e, 0x78e], /* THAANA LETTER GAAFU */ + [0x78f, 0x78f], /* THAANA LETTER GNAVIYANI */ + [0x790, 0x790], /* THAANA LETTER SEENU */ + [0x791, 0x791], /* THAANA LETTER DAVIYANI */ + [0x792, 0x792], /* THAANA LETTER ZAVIYANI */ + [0x793, 0x793], /* THAANA LETTER TAVIYANI */ + [0x794, 0x794], /* THAANA LETTER YAA */ + [0x795, 0x795], /* THAANA LETTER PAVIYANI */ + [0x796, 0x796], /* THAANA LETTER JAVIYANI */ + [0x797, 0x797], /* THAANA LETTER CHAVIYANI */ + [0x798, 0x798], /* THAANA LETTER TTAA */ + [0x799, 0x799], /* THAANA LETTER HHAA */ + [0x79a, 0x79a], /* THAANA LETTER KHAA */ + [0x79b, 0x79b], /* THAANA LETTER THAALU */ + [0x79c, 0x79c], /* THAANA LETTER ZAA */ + [0x79d, 0x79d], /* THAANA LETTER SHEENU */ + [0x79e, 0x79e], /* THAANA LETTER SAADHU */ + [0x79f, 0x79f], /* THAANA LETTER DAADHU */ + [0x7a0, 0x7a0], /* THAANA LETTER TO */ + [0x7a1, 0x7a1], /* THAANA LETTER ZO */ + [0x7a2, 0x7a2], /* THAANA LETTER AINU */ + [0x7a3, 0x7a3], /* THAANA LETTER GHAINU */ + [0x7a4, 0x7a4], /* THAANA LETTER QAAFU */ + [0x7a5, 0x7a5], /* THAANA LETTER WAAVU */ + [0x7a6, 0x7a6], /* THAANA ABAFILI */ + [0x7a7, 0x7a7], /* THAANA AABAAFILI */ + [0x7a8, 0x7a8], /* THAANA IBIFILI */ + [0x7a9, 0x7a9], /* THAANA EEBEEFILI */ + [0x7aa, 0x7aa], /* THAANA UBUFILI */ + [0x7ab, 0x7ab], /* THAANA OOBOOFILI */ + [0x7ac, 0x7ac], /* THAANA EBEFILI */ + [0x7ad, 0x7ad], /* THAANA EYBEYFILI */ + [0x7ae, 0x7ae], /* THAANA OBOFILI */ + [0x7af, 0x7af], /* THAANA OABOAFILI */ + [0x7b0, 0x7b0], /* THAANA SUKUN */ + [0x7b1, 0x7b1], /* THAANA LETTER NAA */ + [0x7b2, 0x7b2], + [0x7b3, 0x7b3], + [0x7b4, 0x7b4], + [0x7b5, 0x7b5], + [0x7b6, 0x7b6], + [0x7b7, 0x7b7], + [0x7b8, 0x7b8], + [0x7b9, 0x7b9], + [0x7ba, 0x7ba], + [0x7bb, 0x7bb], + [0x7bc, 0x7bc], + [0x7bd, 0x7bd], + [0x7be, 0x7be], + [0x7bf, 0x7bf], + [0x7c0, 0x7c0], /* NKO DIGIT ZERO */ + [0x7c1, 0x7c1], /* NKO DIGIT ONE */ + [0x7c2, 0x7c2], /* NKO DIGIT TWO */ + [0x7c3, 0x7c3], /* NKO DIGIT THREE */ + [0x7c4, 0x7c4], /* NKO DIGIT FOUR */ + [0x7c5, 0x7c5], /* NKO DIGIT FIVE */ + [0x7c6, 0x7c6], /* NKO DIGIT SIX */ + [0x7c7, 0x7c7], /* NKO DIGIT SEVEN */ + [0x7c8, 0x7c8], /* NKO DIGIT EIGHT */ + [0x7c9, 0x7c9], /* NKO DIGIT NINE */ + [0x7ca, 0x7ca], /* NKO LETTER A */ + [0x7cb, 0x7cb], /* NKO LETTER EE */ + [0x7cc, 0x7cc], /* NKO LETTER I */ + [0x7cd, 0x7cd], /* NKO LETTER E */ + [0x7ce, 0x7ce], /* NKO LETTER U */ + [0x7cf, 0x7cf], /* NKO LETTER OO */ + [0x7d0, 0x7d0], /* NKO LETTER O */ + [0x7d1, 0x7d1], /* NKO LETTER DAGBASINNA */ + [0x7d2, 0x7d2], /* NKO LETTER N */ + [0x7d3, 0x7d3], /* NKO LETTER BA */ + [0x7d4, 0x7d4], /* NKO LETTER PA */ + [0x7d5, 0x7d5], /* NKO LETTER TA */ + [0x7d6, 0x7d6], /* NKO LETTER JA */ + [0x7d7, 0x7d7], /* NKO LETTER CHA */ + [0x7d8, 0x7d8], /* NKO LETTER DA */ + [0x7d9, 0x7d9], /* NKO LETTER RA */ + [0x7da, 0x7da], /* NKO LETTER RRA */ + [0x7db, 0x7db], /* NKO LETTER SA */ + [0x7dc, 0x7dc], /* NKO LETTER GBA */ + [0x7dd, 0x7dd], /* NKO LETTER FA */ + [0x7de, 0x7de], /* NKO LETTER KA */ + [0x7df, 0x7df], /* NKO LETTER LA */ + [0x7e0, 0x7e0], /* NKO LETTER NA WOLOSO */ + [0x7e1, 0x7e1], /* NKO LETTER MA */ + [0x7e2, 0x7e2], /* NKO LETTER NYA */ + [0x7e3, 0x7e3], /* NKO LETTER NA */ + [0x7e4, 0x7e4], /* NKO LETTER HA */ + [0x7e5, 0x7e5], /* NKO LETTER WA */ + [0x7e6, 0x7e6], /* NKO LETTER YA */ + [0x7e7, 0x7e7], /* NKO LETTER NYA WOLOSO */ + [0x7e8, 0x7e8], /* NKO LETTER JONA JA */ + [0x7e9, 0x7e9], /* NKO LETTER JONA CHA */ + [0x7ea, 0x7ea], /* NKO LETTER JONA RA */ + [0x7eb, 0x7eb], /* NKO COMBINING SHORT HIGH TONE */ + [0x7ec, 0x7ec], /* NKO COMBINING SHORT LOW TONE */ + [0x7ed, 0x7ed], /* NKO COMBINING SHORT RISING TONE */ + [0x7ee, 0x7ee], /* NKO COMBINING LONG DESCENDING TONE */ + [0x7ef, 0x7ef], /* NKO COMBINING LONG HIGH TONE */ + [0x7f0, 0x7f0], /* NKO COMBINING LONG LOW TONE */ + [0x7f1, 0x7f1], /* NKO COMBINING LONG RISING TONE */ + [0x7f2, 0x7f2], /* NKO COMBINING NASALIZATION MARK */ + [0x7f3, 0x7f3], /* NKO COMBINING DOUBLE DOT ABOVE */ + [0x7f4, 0x7f4], /* NKO HIGH TONE APOSTROPHE */ + [0x7f5, 0x7f5], /* NKO LOW TONE APOSTROPHE */ + [0x7f6, 0x7f6], /* NKO SYMBOL OO DENNEN */ + [0x7f7, 0x7f7], /* NKO SYMBOL GBAKURUNEN */ + [0x7f8, 0x7f8], /* NKO COMMA */ + [0x7f9, 0x7f9], /* NKO EXCLAMATION MARK */ + [0x7fa, 0x7fa], /* NKO LAJANYALAN */ + [0x7fb, 0x7fb], + [0x7fc, 0x7fc], + [0x7fd, 0x7fd], + [0x7fe, 0x7fe], + [0x7ff, 0x7ff], + [0x800, 0x800], /* SAMARITAN LETTER ALAF */ + [0x801, 0x801], /* SAMARITAN LETTER BIT */ + [0x802, 0x802], /* SAMARITAN LETTER GAMAN */ + [0x803, 0x803], /* SAMARITAN LETTER DALAT */ + [0x804, 0x804], /* SAMARITAN LETTER IY */ + [0x805, 0x805], /* SAMARITAN LETTER BAA */ + [0x806, 0x806], /* SAMARITAN LETTER ZEN */ + [0x807, 0x807], /* SAMARITAN LETTER IT */ + [0x808, 0x808], /* SAMARITAN LETTER TIT */ + [0x809, 0x809], /* SAMARITAN LETTER YUT */ + [0x80a, 0x80a], /* SAMARITAN LETTER KAAF */ + [0x80b, 0x80b], /* SAMARITAN LETTER LABAT */ + [0x80c, 0x80c], /* SAMARITAN LETTER MIM */ + [0x80d, 0x80d], /* SAMARITAN LETTER NUN */ + [0x80e, 0x80e], /* SAMARITAN LETTER SINGAAT */ + [0x80f, 0x80f], /* SAMARITAN LETTER IN */ + [0x810, 0x810], /* SAMARITAN LETTER FI */ + [0x811, 0x811], /* SAMARITAN LETTER TSAADIY */ + [0x812, 0x812], /* SAMARITAN LETTER QUF */ + [0x813, 0x813], /* SAMARITAN LETTER RISH */ + [0x814, 0x814], /* SAMARITAN LETTER SHAN */ + [0x815, 0x815], /* SAMARITAN LETTER TAAF */ + [0x816, 0x816], /* SAMARITAN MARK IN */ + [0x817, 0x817], /* SAMARITAN MARK IN-ALAF */ + [0x818, 0x818], /* SAMARITAN MARK OCCLUSION */ + [0x819, 0x819], /* SAMARITAN MARK DAGESH */ + [0x81a, 0x81a], /* SAMARITAN MODIFIER LETTER EPENTHETIC YUT */ + [0x81b, 0x81b], /* SAMARITAN MARK EPENTHETIC YUT */ + [0x81c, 0x81c], /* SAMARITAN VOWEL SIGN LONG E */ + [0x81d, 0x81d], /* SAMARITAN VOWEL SIGN E */ + [0x81e, 0x81e], /* SAMARITAN VOWEL SIGN OVERLONG AA */ + [0x81f, 0x81f], /* SAMARITAN VOWEL SIGN LONG AA */ + [0x820, 0x820], /* SAMARITAN VOWEL SIGN AA */ + [0x821, 0x821], /* SAMARITAN VOWEL SIGN OVERLONG A */ + [0x822, 0x822], /* SAMARITAN VOWEL SIGN LONG A */ + [0x823, 0x823], /* SAMARITAN VOWEL SIGN A */ + [0x824, 0x824], /* SAMARITAN MODIFIER LETTER SHORT A */ + [0x825, 0x825], /* SAMARITAN VOWEL SIGN SHORT A */ + [0x826, 0x826], /* SAMARITAN VOWEL SIGN LONG U */ + [0x827, 0x827], /* SAMARITAN VOWEL SIGN U */ + [0x828, 0x828], /* SAMARITAN MODIFIER LETTER I */ + [0x829, 0x829], /* SAMARITAN VOWEL SIGN LONG I */ + [0x82a, 0x82a], /* SAMARITAN VOWEL SIGN I */ + [0x82b, 0x82b], /* SAMARITAN VOWEL SIGN O */ + [0x82c, 0x82c], /* SAMARITAN VOWEL SIGN SUKUN */ + [0x82d, 0x82d], /* SAMARITAN MARK NEQUDAA */ + [0x82e, 0x82e], + [0x82f, 0x82f], + [0x830, 0x830], /* SAMARITAN PUNCTUATION NEQUDAA */ + [0x831, 0x831], /* SAMARITAN PUNCTUATION AFSAAQ */ + [0x832, 0x832], /* SAMARITAN PUNCTUATION ANGED */ + [0x833, 0x833], /* SAMARITAN PUNCTUATION BAU */ + [0x834, 0x834], /* SAMARITAN PUNCTUATION ATMAAU */ + [0x835, 0x835], /* SAMARITAN PUNCTUATION SHIYYAALAA */ + [0x836, 0x836], /* SAMARITAN ABBREVIATION MARK */ + [0x837, 0x837], /* SAMARITAN PUNCTUATION MELODIC QITSA */ + [0x838, 0x838], /* SAMARITAN PUNCTUATION ZIQAA */ + [0x839, 0x839], /* SAMARITAN PUNCTUATION QITSA */ + [0x83a, 0x83a], /* SAMARITAN PUNCTUATION ZAEF */ + [0x83b, 0x83b], /* SAMARITAN PUNCTUATION TURU */ + [0x83c, 0x83c], /* SAMARITAN PUNCTUATION ARKAANU */ + [0x83d, 0x83d], /* SAMARITAN PUNCTUATION SOF MASHFAAT */ + [0x83e, 0x83e], /* SAMARITAN PUNCTUATION ANNAAU */ + [0x83f, 0x83f], + [0x840, 0x840], /* MANDAIC LETTER HALQA */ + [0x841, 0x841], /* MANDAIC LETTER AB */ + [0x842, 0x842], /* MANDAIC LETTER AG */ + [0x843, 0x843], /* MANDAIC LETTER AD */ + [0x844, 0x844], /* MANDAIC LETTER AH */ + [0x845, 0x845], /* MANDAIC LETTER USHENNA */ + [0x846, 0x846], /* MANDAIC LETTER AZ */ + [0x847, 0x847], /* MANDAIC LETTER IT */ + [0x848, 0x848], /* MANDAIC LETTER ATT */ + [0x849, 0x849], /* MANDAIC LETTER AKSA */ + [0x84a, 0x84a], /* MANDAIC LETTER AK */ + [0x84b, 0x84b], /* MANDAIC LETTER AL */ + [0x84c, 0x84c], /* MANDAIC LETTER AM */ + [0x84d, 0x84d], /* MANDAIC LETTER AN */ + [0x84e, 0x84e], /* MANDAIC LETTER AS */ + [0x84f, 0x84f], /* MANDAIC LETTER IN */ + [0x850, 0x850], /* MANDAIC LETTER AP */ + [0x851, 0x851], /* MANDAIC LETTER ASZ */ + [0x852, 0x852], /* MANDAIC LETTER AQ */ + [0x853, 0x853], /* MANDAIC LETTER AR */ + [0x854, 0x854], /* MANDAIC LETTER ASH */ + [0x855, 0x855], /* MANDAIC LETTER AT */ + [0x856, 0x856], /* MANDAIC LETTER DUSHENNA */ + [0x857, 0x857], /* MANDAIC LETTER KAD */ + [0x858, 0x858], /* MANDAIC LETTER AIN */ + [0x859, 0x859], /* MANDAIC AFFRICATION MARK */ + [0x85a, 0x85a], /* MANDAIC VOCALIZATION MARK */ + [0x85b, 0x85b], /* MANDAIC GEMINATION MARK */ + [0x85c, 0x85c], + [0x85d, 0x85d], + [0x85e, 0x85e], /* MANDAIC PUNCTUATION */ + [0x85f, 0x85f], + [0x860, 0x860], + [0x861, 0x861], + [0x862, 0x862], + [0x863, 0x863], + [0x864, 0x864], + [0x865, 0x865], + [0x866, 0x866], + [0x867, 0x867], + [0x868, 0x868], + [0x869, 0x869], + [0x86a, 0x86a], + [0x86b, 0x86b], + [0x86c, 0x86c], + [0x86d, 0x86d], + [0x86e, 0x86e], + [0x86f, 0x86f], + [0x870, 0x870], + [0x871, 0x871], + [0x872, 0x872], + [0x873, 0x873], + [0x874, 0x874], + [0x875, 0x875], + [0x876, 0x876], + [0x877, 0x877], + [0x878, 0x878], + [0x879, 0x879], + [0x87a, 0x87a], + [0x87b, 0x87b], + [0x87c, 0x87c], + [0x87d, 0x87d], + [0x87e, 0x87e], + [0x87f, 0x87f], + [0x880, 0x880], + [0x881, 0x881], + [0x882, 0x882], + [0x883, 0x883], + [0x884, 0x884], + [0x885, 0x885], + [0x886, 0x886], + [0x887, 0x887], + [0x888, 0x888], + [0x889, 0x889], + [0x88a, 0x88a], + [0x88b, 0x88b], + [0x88c, 0x88c], + [0x88d, 0x88d], + [0x88e, 0x88e], + [0x88f, 0x88f], + [0x890, 0x890], + [0x891, 0x891], + [0x892, 0x892], + [0x893, 0x893], + [0x894, 0x894], + [0x895, 0x895], + [0x896, 0x896], + [0x897, 0x897], + [0x898, 0x898], + [0x899, 0x899], + [0x89a, 0x89a], + [0x89b, 0x89b], + [0x89c, 0x89c], + [0x89d, 0x89d], + [0x89e, 0x89e], + [0x89f, 0x89f], + [0x8a0, 0x8a0], /* ARABIC LETTER BEH WITH SMALL V BELOW */ + [0x8a1, 0x8a1], /* ARABIC LETTER BEH WITH HAMZA ABOVE */ + [0x8a2, 0x8a2], /* ARABIC LETTER JEEM WITH TWO DOTS ABOVE */ + [0x8a3, 0x8a3], /* ARABIC LETTER TAH WITH TWO DOTS ABOVE */ + [0x8a4, 0x8a4], /* ARABIC LETTER FEH WITH DOT BELOW AND THREE DOTS ABOVE */ + [0x8a5, 0x8a5], /* ARABIC LETTER QAF WITH DOT BELOW */ + [0x8a6, 0x8a6], /* ARABIC LETTER LAM WITH DOUBLE BAR */ + [0x8a7, 0x8a7], /* ARABIC LETTER MEEM WITH THREE DOTS ABOVE */ + [0x8a8, 0x8a8], /* ARABIC LETTER YEH WITH TWO DOTS BELOW AND HAMZA ABOVE */ + [0x8a9, 0x8a9], /* ARABIC LETTER YEH WITH TWO DOTS BELOW AND DOT ABOVE */ + [0x8aa, 0x8aa], /* ARABIC LETTER REH WITH LOOP */ + [0x8ab, 0x8ab], /* ARABIC LETTER WAW WITH DOT WITHIN */ + [0x8ac, 0x8ac], /* ARABIC LETTER ROHINGYA YEH */ + [0x8ad, 0x8ad], /* ARABIC LETTER LOW ALEF */ + [0x8ae, 0x8ae], /* ARABIC LETTER DAL WITH THREE DOTS BELOW */ + [0x8af, 0x8af], /* ARABIC LETTER SAD WITH THREE DOTS BELOW */ + [0x8b0, 0x8b0], /* ARABIC LETTER GAF WITH INVERTED STROKE */ + [0x8b1, 0x8b1], /* ARABIC LETTER STRAIGHT WAW */ + [0x8b2, 0x8b2], /* ARABIC LETTER ZAIN WITH INVERTED V ABOVE */ + [0x8b3, 0x8b3], /* ARABIC LETTER AIN WITH THREE DOTS BELOW */ + [0x8b4, 0x8b4], /* ARABIC LETTER KAF WITH DOT BELOW */ + [0x8b5, 0x8b5], + [0x8b6, 0x8b6], /* ARABIC LETTER BEH WITH SMALL MEEM ABOVE */ + [0x8b7, 0x8b7], /* ARABIC LETTER PEH WITH SMALL MEEM ABOVE */ + [0x8b8, 0x8b8], /* ARABIC LETTER TEH WITH SMALL TEH ABOVE */ + [0x8b9, 0x8b9], /* ARABIC LETTER REH WITH SMALL NOON ABOVE */ + [0x8ba, 0x8ba], /* ARABIC LETTER YEH WITH TWO DOTS BELOW AND SMALL NOON ABOVE */ + [0x8bb, 0x8bb], /* ARABIC LETTER AFRICAN FEH */ + [0x8bc, 0x8bc], /* ARABIC LETTER AFRICAN QAF */ + [0x8bd, 0x8bd], /* ARABIC LETTER AFRICAN NOON */ + [0x8be, 0x8be], + [0x8bf, 0x8bf], + [0x8c0, 0x8c0], + [0x8c1, 0x8c1], + [0x8c2, 0x8c2], + [0x8c3, 0x8c3], + [0x8c4, 0x8c4], + [0x8c5, 0x8c5], + [0x8c6, 0x8c6], + [0x8c7, 0x8c7], + [0x8c8, 0x8c8], + [0x8c9, 0x8c9], + [0x8ca, 0x8ca], + [0x8cb, 0x8cb], + [0x8cc, 0x8cc], + [0x8cd, 0x8cd], + [0x8ce, 0x8ce], + [0x8cf, 0x8cf], + [0x8d0, 0x8d0], + [0x8d1, 0x8d1], + [0x8d2, 0x8d2], + [0x8d3, 0x8d3], + [0x8d4, 0x8d4], /* ARABIC SMALL HIGH WORD AR-RUB */ + [0x8d5, 0x8d5], /* ARABIC SMALL HIGH SAD */ + [0x8d6, 0x8d6], /* ARABIC SMALL HIGH AIN */ + [0x8d7, 0x8d7], /* ARABIC SMALL HIGH QAF */ + [0x8d8, 0x8d8], /* ARABIC SMALL HIGH NOON WITH KASRA */ + [0x8d9, 0x8d9], /* ARABIC SMALL LOW NOON WITH KASRA */ + [0x8da, 0x8da], /* ARABIC SMALL HIGH WORD ATH-THALATHA */ + [0x8db, 0x8db], /* ARABIC SMALL HIGH WORD AS-SAJDA */ + [0x8dc, 0x8dc], /* ARABIC SMALL HIGH WORD AN-NISF */ + [0x8dd, 0x8dd], /* ARABIC SMALL HIGH WORD SAKTA */ + [0x8de, 0x8de], /* ARABIC SMALL HIGH WORD QIF */ + [0x8df, 0x8df], /* ARABIC SMALL HIGH WORD WAQFA */ + [0x8e0, 0x8e0], /* ARABIC SMALL HIGH FOOTNOTE MARKER */ + [0x8e1, 0x8e1], /* ARABIC SMALL HIGH SIGN SAFHA */ + [0x8e2, 0x8e2], /* ARABIC DISPUTED END OF AYAH */ + [0x8e3, 0x8e3], /* ARABIC TURNED DAMMA BELOW */ + [0x8e4, 0x8e4], /* ARABIC CURLY FATHA */ + [0x8e5, 0x8e5], /* ARABIC CURLY DAMMA */ + [0x8e6, 0x8e6], /* ARABIC CURLY KASRA */ + [0x8e7, 0x8e7], /* ARABIC CURLY FATHATAN */ + [0x8e8, 0x8e8], /* ARABIC CURLY DAMMATAN */ + [0x8e9, 0x8e9], /* ARABIC CURLY KASRATAN */ + [0x8ea, 0x8ea], /* ARABIC TONE ONE DOT ABOVE */ + [0x8eb, 0x8eb], /* ARABIC TONE TWO DOTS ABOVE */ + [0x8ec, 0x8ec], /* ARABIC TONE LOOP ABOVE */ + [0x8ed, 0x8ed], /* ARABIC TONE ONE DOT BELOW */ + [0x8ee, 0x8ee], /* ARABIC TONE TWO DOTS BELOW */ + [0x8ef, 0x8ef], /* ARABIC TONE LOOP BELOW */ + [0x8f0, 0x8f0], /* ARABIC OPEN FATHATAN */ + [0x8f1, 0x8f1], /* ARABIC OPEN DAMMATAN */ + [0x8f2, 0x8f2], /* ARABIC OPEN KASRATAN */ + [0x8f3, 0x8f3], /* ARABIC SMALL HIGH WAW */ + [0x8f4, 0x8f4], /* ARABIC FATHA WITH RING */ + [0x8f5, 0x8f5], /* ARABIC FATHA WITH DOT ABOVE */ + [0x8f6, 0x8f6], /* ARABIC KASRA WITH DOT BELOW */ + [0x8f7, 0x8f7], /* ARABIC LEFT ARROWHEAD ABOVE */ + [0x8f8, 0x8f8], /* ARABIC RIGHT ARROWHEAD ABOVE */ + [0x8f9, 0x8f9], /* ARABIC LEFT ARROWHEAD BELOW */ + [0x8fa, 0x8fa], /* ARABIC RIGHT ARROWHEAD BELOW */ + [0x8fb, 0x8fb], /* ARABIC DOUBLE RIGHT ARROWHEAD ABOVE */ + [0x8fc, 0x8fc], /* ARABIC DOUBLE RIGHT ARROWHEAD ABOVE WITH DOT */ + [0x8fd, 0x8fd], /* ARABIC RIGHT ARROWHEAD ABOVE WITH DOT */ + [0x8fe, 0x8fe], /* ARABIC DAMMA WITH DOT */ + [0x8ff, 0x8ff], /* ARABIC MARK SIDEWAYS NOON GHUNNA */ + [0x900, 0x900], /* DEVANAGARI SIGN INVERTED CANDRABINDU */ + [0x901, 0x901], /* DEVANAGARI SIGN CANDRABINDU */ + [0x902, 0x902], /* DEVANAGARI SIGN ANUSVARA */ + [0x903, 0x903], /* DEVANAGARI SIGN VISARGA */ + [0x904, 0x904], /* DEVANAGARI LETTER SHORT A */ + [0x905, 0x905], /* DEVANAGARI LETTER A */ + [0x906, 0x906], /* DEVANAGARI LETTER AA */ + [0x907, 0x907], /* DEVANAGARI LETTER I */ + [0x908, 0x908], /* DEVANAGARI LETTER II */ + [0x909, 0x909], /* DEVANAGARI LETTER U */ + [0x90a, 0x90a], /* DEVANAGARI LETTER UU */ + [0x90b, 0x90b], /* DEVANAGARI LETTER VOCALIC R */ + [0x90c, 0x90c], /* DEVANAGARI LETTER VOCALIC L */ + [0x90d, 0x90d], /* DEVANAGARI LETTER CANDRA E */ + [0x90e, 0x90e], /* DEVANAGARI LETTER SHORT E */ + [0x90f, 0x90f], /* DEVANAGARI LETTER E */ + [0x910, 0x910], /* DEVANAGARI LETTER AI */ + [0x911, 0x911], /* DEVANAGARI LETTER CANDRA O */ + [0x912, 0x912], /* DEVANAGARI LETTER SHORT O */ + [0x913, 0x913], /* DEVANAGARI LETTER O */ + [0x914, 0x914], /* DEVANAGARI LETTER AU */ + [0x915, 0x915], /* DEVANAGARI LETTER KA */ + [0x916, 0x916], /* DEVANAGARI LETTER KHA */ + [0x917, 0x917], /* DEVANAGARI LETTER GA */ + [0x918, 0x918], /* DEVANAGARI LETTER GHA */ + [0x919, 0x919], /* DEVANAGARI LETTER NGA */ + [0x91a, 0x91a], /* DEVANAGARI LETTER CA */ + [0x91b, 0x91b], /* DEVANAGARI LETTER CHA */ + [0x91c, 0x91c], /* DEVANAGARI LETTER JA */ + [0x91d, 0x91d], /* DEVANAGARI LETTER JHA */ + [0x91e, 0x91e], /* DEVANAGARI LETTER NYA */ + [0x91f, 0x91f], /* DEVANAGARI LETTER TTA */ + [0x920, 0x920], /* DEVANAGARI LETTER TTHA */ + [0x921, 0x921], /* DEVANAGARI LETTER DDA */ + [0x922, 0x922], /* DEVANAGARI LETTER DDHA */ + [0x923, 0x923], /* DEVANAGARI LETTER NNA */ + [0x924, 0x924], /* DEVANAGARI LETTER TA */ + [0x925, 0x925], /* DEVANAGARI LETTER THA */ + [0x926, 0x926], /* DEVANAGARI LETTER DA */ + [0x927, 0x927], /* DEVANAGARI LETTER DHA */ + [0x928, 0x928], /* DEVANAGARI LETTER NA */ + [0x929, 0x929], /* DEVANAGARI LETTER NNNA */ + [0x92a, 0x92a], /* DEVANAGARI LETTER PA */ + [0x92b, 0x92b], /* DEVANAGARI LETTER PHA */ + [0x92c, 0x92c], /* DEVANAGARI LETTER BA */ + [0x92d, 0x92d], /* DEVANAGARI LETTER BHA */ + [0x92e, 0x92e], /* DEVANAGARI LETTER MA */ + [0x92f, 0x92f], /* DEVANAGARI LETTER YA */ + [0x930, 0x930], /* DEVANAGARI LETTER RA */ + [0x931, 0x931], /* DEVANAGARI LETTER RRA */ + [0x932, 0x932], /* DEVANAGARI LETTER LA */ + [0x933, 0x933], /* DEVANAGARI LETTER LLA */ + [0x934, 0x934], /* DEVANAGARI LETTER LLLA */ + [0x935, 0x935], /* DEVANAGARI LETTER VA */ + [0x936, 0x936], /* DEVANAGARI LETTER SHA */ + [0x937, 0x937], /* DEVANAGARI LETTER SSA */ + [0x938, 0x938], /* DEVANAGARI LETTER SA */ + [0x939, 0x939], /* DEVANAGARI LETTER HA */ + [0x93a, 0x93a], /* DEVANAGARI VOWEL SIGN OE */ + [0x93b, 0x93b], /* DEVANAGARI VOWEL SIGN OOE */ + [0x93c, 0x93c], /* DEVANAGARI SIGN NUKTA */ + [0x93d, 0x93d], /* DEVANAGARI SIGN AVAGRAHA */ + [0x93e, 0x93e], /* DEVANAGARI VOWEL SIGN AA */ + [0x93f, 0x93f], /* DEVANAGARI VOWEL SIGN I */ + [0x940, 0x940], /* DEVANAGARI VOWEL SIGN II */ + [0x941, 0x941], /* DEVANAGARI VOWEL SIGN U */ + [0x942, 0x942], /* DEVANAGARI VOWEL SIGN UU */ + [0x943, 0x943], /* DEVANAGARI VOWEL SIGN VOCALIC R */ + [0x944, 0x944], /* DEVANAGARI VOWEL SIGN VOCALIC RR */ + [0x945, 0x945], /* DEVANAGARI VOWEL SIGN CANDRA E */ + [0x946, 0x946], /* DEVANAGARI VOWEL SIGN SHORT E */ + [0x947, 0x947], /* DEVANAGARI VOWEL SIGN E */ + [0x948, 0x948], /* DEVANAGARI VOWEL SIGN AI */ + [0x949, 0x949], /* DEVANAGARI VOWEL SIGN CANDRA O */ + [0x94a, 0x94a], /* DEVANAGARI VOWEL SIGN SHORT O */ + [0x94b, 0x94b], /* DEVANAGARI VOWEL SIGN O */ + [0x94c, 0x94c], /* DEVANAGARI VOWEL SIGN AU */ + [0x94d, 0x94d], /* DEVANAGARI SIGN VIRAMA */ + [0x94e, 0x94e], /* DEVANAGARI VOWEL SIGN PRISHTHAMATRA E */ + [0x94f, 0x94f], /* DEVANAGARI VOWEL SIGN AW */ + [0x950, 0x950], /* DEVANAGARI OM */ + [0x951, 0x951], /* DEVANAGARI STRESS SIGN UDATTA */ + [0x952, 0x952], /* DEVANAGARI STRESS SIGN ANUDATTA */ + [0x953, 0x953], /* DEVANAGARI GRAVE ACCENT */ + [0x954, 0x954], /* DEVANAGARI ACUTE ACCENT */ + [0x955, 0x955], /* DEVANAGARI VOWEL SIGN CANDRA LONG E */ + [0x956, 0x956], /* DEVANAGARI VOWEL SIGN UE */ + [0x957, 0x957], /* DEVANAGARI VOWEL SIGN UUE */ + [0x958, 0x958], /* DEVANAGARI LETTER QA */ + [0x959, 0x959], /* DEVANAGARI LETTER KHHA */ + [0x95a, 0x95a], /* DEVANAGARI LETTER GHHA */ + [0x95b, 0x95b], /* DEVANAGARI LETTER ZA */ + [0x95c, 0x95c], /* DEVANAGARI LETTER DDDHA */ + [0x95d, 0x95d], /* DEVANAGARI LETTER RHA */ + [0x95e, 0x95e], /* DEVANAGARI LETTER FA */ + [0x95f, 0x95f], /* DEVANAGARI LETTER YYA */ + [0x960, 0x960], /* DEVANAGARI LETTER VOCALIC RR */ + [0x961, 0x961], /* DEVANAGARI LETTER VOCALIC LL */ + [0x962, 0x962], /* DEVANAGARI VOWEL SIGN VOCALIC L */ + [0x963, 0x963], /* DEVANAGARI VOWEL SIGN VOCALIC LL */ + [0x964, 0x964], /* DEVANAGARI DANDA */ + [0x965, 0x965], /* DEVANAGARI DOUBLE DANDA */ + [0x966, 0x966], /* DEVANAGARI DIGIT ZERO */ + [0x967, 0x967], /* DEVANAGARI DIGIT ONE */ + [0x968, 0x968], /* DEVANAGARI DIGIT TWO */ + [0x969, 0x969], /* DEVANAGARI DIGIT THREE */ + [0x96a, 0x96a], /* DEVANAGARI DIGIT FOUR */ + [0x96b, 0x96b], /* DEVANAGARI DIGIT FIVE */ + [0x96c, 0x96c], /* DEVANAGARI DIGIT SIX */ + [0x96d, 0x96d], /* DEVANAGARI DIGIT SEVEN */ + [0x96e, 0x96e], /* DEVANAGARI DIGIT EIGHT */ + [0x96f, 0x96f], /* DEVANAGARI DIGIT NINE */ + [0x970, 0x970], /* DEVANAGARI ABBREVIATION SIGN */ + [0x971, 0x971], /* DEVANAGARI SIGN HIGH SPACING DOT */ + [0x972, 0x972], /* DEVANAGARI LETTER CANDRA A */ + [0x973, 0x973], /* DEVANAGARI LETTER OE */ + [0x974, 0x974], /* DEVANAGARI LETTER OOE */ + [0x975, 0x975], /* DEVANAGARI LETTER AW */ + [0x976, 0x976], /* DEVANAGARI LETTER UE */ + [0x977, 0x977], /* DEVANAGARI LETTER UUE */ + [0x978, 0x978], /* DEVANAGARI LETTER MARWARI DDA */ + [0x979, 0x979], /* DEVANAGARI LETTER ZHA */ + [0x97a, 0x97a], /* DEVANAGARI LETTER HEAVY YA */ + [0x97b, 0x97b], /* DEVANAGARI LETTER GGA */ + [0x97c, 0x97c], /* DEVANAGARI LETTER JJA */ + [0x97d, 0x97d], /* DEVANAGARI LETTER GLOTTAL STOP */ + [0x97e, 0x97e], /* DEVANAGARI LETTER DDDA */ + [0x97f, 0x97f], /* DEVANAGARI LETTER BBA */ + [0x980, 0x980], /* BENGALI ANJI */ + [0x981, 0x981], /* BENGALI SIGN CANDRABINDU */ + [0x982, 0x982], /* BENGALI SIGN ANUSVARA */ + [0x983, 0x983], /* BENGALI SIGN VISARGA */ + [0x984, 0x984], + [0x985, 0x985], /* BENGALI LETTER A */ + [0x986, 0x986], /* BENGALI LETTER AA */ + [0x987, 0x987], /* BENGALI LETTER I */ + [0x988, 0x988], /* BENGALI LETTER II */ + [0x989, 0x989], /* BENGALI LETTER U */ + [0x98a, 0x98a], /* BENGALI LETTER UU */ + [0x98b, 0x98b], /* BENGALI LETTER VOCALIC R */ + [0x98c, 0x98c], /* BENGALI LETTER VOCALIC L */ + [0x98d, 0x98d], + [0x98e, 0x98e], + [0x98f, 0x98f], /* BENGALI LETTER E */ + [0x990, 0x990], /* BENGALI LETTER AI */ + [0x991, 0x991], + [0x992, 0x992], + [0x993, 0x993], /* BENGALI LETTER O */ + [0x994, 0x994], /* BENGALI LETTER AU */ + [0x995, 0x995], /* BENGALI LETTER KA */ + [0x996, 0x996], /* BENGALI LETTER KHA */ + [0x997, 0x997], /* BENGALI LETTER GA */ + [0x998, 0x998], /* BENGALI LETTER GHA */ + [0x999, 0x999], /* BENGALI LETTER NGA */ + [0x99a, 0x99a], /* BENGALI LETTER CA */ + [0x99b, 0x99b], /* BENGALI LETTER CHA */ + [0x99c, 0x99c], /* BENGALI LETTER JA */ + [0x99d, 0x99d], /* BENGALI LETTER JHA */ + [0x99e, 0x99e], /* BENGALI LETTER NYA */ + [0x99f, 0x99f], /* BENGALI LETTER TTA */ + [0x9a0, 0x9a0], /* BENGALI LETTER TTHA */ + [0x9a1, 0x9a1], /* BENGALI LETTER DDA */ + [0x9a2, 0x9a2], /* BENGALI LETTER DDHA */ + [0x9a3, 0x9a3], /* BENGALI LETTER NNA */ + [0x9a4, 0x9a4], /* BENGALI LETTER TA */ + [0x9a5, 0x9a5], /* BENGALI LETTER THA */ + [0x9a6, 0x9a6], /* BENGALI LETTER DA */ + [0x9a7, 0x9a7], /* BENGALI LETTER DHA */ + [0x9a8, 0x9a8], /* BENGALI LETTER NA */ + [0x9a9, 0x9a9], + [0x9aa, 0x9aa], /* BENGALI LETTER PA */ + [0x9ab, 0x9ab], /* BENGALI LETTER PHA */ + [0x9ac, 0x9ac], /* BENGALI LETTER BA */ + [0x9ad, 0x9ad], /* BENGALI LETTER BHA */ + [0x9ae, 0x9ae], /* BENGALI LETTER MA */ + [0x9af, 0x9af], /* BENGALI LETTER YA */ + [0x9b0, 0x9b0], /* BENGALI LETTER RA */ + [0x9b1, 0x9b1], + [0x9b2, 0x9b2], /* BENGALI LETTER LA */ + [0x9b3, 0x9b3], + [0x9b4, 0x9b4], + [0x9b5, 0x9b5], + [0x9b6, 0x9b6], /* BENGALI LETTER SHA */ + [0x9b7, 0x9b7], /* BENGALI LETTER SSA */ + [0x9b8, 0x9b8], /* BENGALI LETTER SA */ + [0x9b9, 0x9b9], /* BENGALI LETTER HA */ + [0x9ba, 0x9ba], + [0x9bb, 0x9bb], + [0x9bc, 0x9bc], /* BENGALI SIGN NUKTA */ + [0x9bd, 0x9bd], /* BENGALI SIGN AVAGRAHA */ + [0x9be, 0x9be], /* BENGALI VOWEL SIGN AA */ + [0x9bf, 0x9bf], /* BENGALI VOWEL SIGN I */ + [0x9c0, 0x9c0], /* BENGALI VOWEL SIGN II */ + [0x9c1, 0x9c1], /* BENGALI VOWEL SIGN U */ + [0x9c2, 0x9c2], /* BENGALI VOWEL SIGN UU */ + [0x9c3, 0x9c3], /* BENGALI VOWEL SIGN VOCALIC R */ + [0x9c4, 0x9c4], /* BENGALI VOWEL SIGN VOCALIC RR */ + [0x9c5, 0x9c5], + [0x9c6, 0x9c6], + [0x9c7, 0x9c7], /* BENGALI VOWEL SIGN E */ + [0x9c8, 0x9c8], /* BENGALI VOWEL SIGN AI */ + [0x9c9, 0x9c9], + [0x9ca, 0x9ca], + [0x9cb, 0x9cb], /* BENGALI VOWEL SIGN O */ + [0x9cc, 0x9cc], /* BENGALI VOWEL SIGN AU */ + [0x9cd, 0x9cd], /* BENGALI SIGN VIRAMA */ + [0x9ce, 0x9ce], /* BENGALI LETTER KHANDA TA */ + [0x9cf, 0x9cf], + [0x9d0, 0x9d0], + [0x9d1, 0x9d1], + [0x9d2, 0x9d2], + [0x9d3, 0x9d3], + [0x9d4, 0x9d4], + [0x9d5, 0x9d5], + [0x9d6, 0x9d6], + [0x9d7, 0x9d7], /* BENGALI AU LENGTH MARK */ + [0x9d8, 0x9d8], + [0x9d9, 0x9d9], + [0x9da, 0x9da], + [0x9db, 0x9db], + [0x9dc, 0x9dc], /* BENGALI LETTER RRA */ + [0x9dd, 0x9dd], /* BENGALI LETTER RHA */ + [0x9de, 0x9de], + [0x9df, 0x9df], /* BENGALI LETTER YYA */ + [0x9e0, 0x9e0], /* BENGALI LETTER VOCALIC RR */ + [0x9e1, 0x9e1], /* BENGALI LETTER VOCALIC LL */ + [0x9e2, 0x9e2], /* BENGALI VOWEL SIGN VOCALIC L */ + [0x9e3, 0x9e3], /* BENGALI VOWEL SIGN VOCALIC LL */ + [0x9e4, 0x9e4], + [0x9e5, 0x9e5], + [0x9e6, 0x9e6], /* BENGALI DIGIT ZERO */ + [0x9e7, 0x9e7], /* BENGALI DIGIT ONE */ + [0x9e8, 0x9e8], /* BENGALI DIGIT TWO */ + [0x9e9, 0x9e9], /* BENGALI DIGIT THREE */ + [0x9ea, 0x9ea], /* BENGALI DIGIT FOUR */ + [0x9eb, 0x9eb], /* BENGALI DIGIT FIVE */ + [0x9ec, 0x9ec], /* BENGALI DIGIT SIX */ + [0x9ed, 0x9ed], /* BENGALI DIGIT SEVEN */ + [0x9ee, 0x9ee], /* BENGALI DIGIT EIGHT */ + [0x9ef, 0x9ef], /* BENGALI DIGIT NINE */ + [0x9f0, 0x9f0], /* BENGALI LETTER RA WITH MIDDLE DIAGONAL */ + [0x9f1, 0x9f1], /* BENGALI LETTER RA WITH LOWER DIAGONAL (BENGALI LETTER VA WITH LOWER DIAGONAL) */ + [0x9f2, 0x9f2], /* BENGALI RUPEE MARK */ + [0x9f3, 0x9f3], /* BENGALI RUPEE SIGN */ + [0x9f4, 0x9f4], /* BENGALI CURRENCY NUMERATOR ONE */ + [0x9f5, 0x9f5], /* BENGALI CURRENCY NUMERATOR TWO */ + [0x9f6, 0x9f6], /* BENGALI CURRENCY NUMERATOR THREE */ + [0x9f7, 0x9f7], /* BENGALI CURRENCY NUMERATOR FOUR */ + [0x9f8, 0x9f8], /* BENGALI CURRENCY NUMERATOR ONE LESS THAN THE DENOMINATOR */ + [0x9f9, 0x9f9], /* BENGALI CURRENCY DENOMINATOR SIXTEEN */ + [0x9fa, 0x9fa], /* BENGALI ISSHAR */ + [0x9fb, 0x9fb], /* BENGALI GANDA MARK */ + [0x9fc, 0x9fc], + [0x9fd, 0x9fd], + [0x9fe, 0x9fe], + [0x9ff, 0x9ff], + [0xa00, 0xa00], + [0xa01, 0xa01], /* GURMUKHI SIGN ADAK BINDI */ + [0xa02, 0xa02], /* GURMUKHI SIGN BINDI */ + [0xa03, 0xa03], /* GURMUKHI SIGN VISARGA */ + [0xa04, 0xa04], + [0xa05, 0xa05], /* GURMUKHI LETTER A */ + [0xa06, 0xa06], /* GURMUKHI LETTER AA */ + [0xa07, 0xa07], /* GURMUKHI LETTER I */ + [0xa08, 0xa08], /* GURMUKHI LETTER II */ + [0xa09, 0xa09], /* GURMUKHI LETTER U */ + [0xa0a, 0xa0a], /* GURMUKHI LETTER UU */ + [0xa0b, 0xa0b], + [0xa0c, 0xa0c], + [0xa0d, 0xa0d], + [0xa0e, 0xa0e], + [0xa0f, 0xa0f], /* GURMUKHI LETTER EE */ + [0xa10, 0xa10], /* GURMUKHI LETTER AI */ + [0xa11, 0xa11], + [0xa12, 0xa12], + [0xa13, 0xa13], /* GURMUKHI LETTER OO */ + [0xa14, 0xa14], /* GURMUKHI LETTER AU */ + [0xa15, 0xa15], /* GURMUKHI LETTER KA */ + [0xa16, 0xa16], /* GURMUKHI LETTER KHA */ + [0xa17, 0xa17], /* GURMUKHI LETTER GA */ + [0xa18, 0xa18], /* GURMUKHI LETTER GHA */ + [0xa19, 0xa19], /* GURMUKHI LETTER NGA */ + [0xa1a, 0xa1a], /* GURMUKHI LETTER CA */ + [0xa1b, 0xa1b], /* GURMUKHI LETTER CHA */ + [0xa1c, 0xa1c], /* GURMUKHI LETTER JA */ + [0xa1d, 0xa1d], /* GURMUKHI LETTER JHA */ + [0xa1e, 0xa1e], /* GURMUKHI LETTER NYA */ + [0xa1f, 0xa1f], /* GURMUKHI LETTER TTA */ + [0xa20, 0xa20], /* GURMUKHI LETTER TTHA */ + [0xa21, 0xa21], /* GURMUKHI LETTER DDA */ + [0xa22, 0xa22], /* GURMUKHI LETTER DDHA */ + [0xa23, 0xa23], /* GURMUKHI LETTER NNA */ + [0xa24, 0xa24], /* GURMUKHI LETTER TA */ + [0xa25, 0xa25], /* GURMUKHI LETTER THA */ + [0xa26, 0xa26], /* GURMUKHI LETTER DA */ + [0xa27, 0xa27], /* GURMUKHI LETTER DHA */ + [0xa28, 0xa28], /* GURMUKHI LETTER NA */ + [0xa29, 0xa29], + [0xa2a, 0xa2a], /* GURMUKHI LETTER PA */ + [0xa2b, 0xa2b], /* GURMUKHI LETTER PHA */ + [0xa2c, 0xa2c], /* GURMUKHI LETTER BA */ + [0xa2d, 0xa2d], /* GURMUKHI LETTER BHA */ + [0xa2e, 0xa2e], /* GURMUKHI LETTER MA */ + [0xa2f, 0xa2f], /* GURMUKHI LETTER YA */ + [0xa30, 0xa30], /* GURMUKHI LETTER RA */ + [0xa31, 0xa31], + [0xa32, 0xa32], /* GURMUKHI LETTER LA */ + [0xa33, 0xa33], /* GURMUKHI LETTER LLA */ + [0xa34, 0xa34], + [0xa35, 0xa35], /* GURMUKHI LETTER VA */ + [0xa36, 0xa36], /* GURMUKHI LETTER SHA */ + [0xa37, 0xa37], + [0xa38, 0xa38], /* GURMUKHI LETTER SA */ + [0xa39, 0xa39], /* GURMUKHI LETTER HA */ + [0xa3a, 0xa3a], + [0xa3b, 0xa3b], + [0xa3c, 0xa3c], /* GURMUKHI SIGN NUKTA */ + [0xa3d, 0xa3d], + [0xa3e, 0xa3e], /* GURMUKHI VOWEL SIGN AA */ + [0xa3f, 0xa3f], /* GURMUKHI VOWEL SIGN I */ + [0xa40, 0xa40], /* GURMUKHI VOWEL SIGN II */ + [0xa41, 0xa41], /* GURMUKHI VOWEL SIGN U */ + [0xa42, 0xa42], /* GURMUKHI VOWEL SIGN UU */ + [0xa43, 0xa43], + [0xa44, 0xa44], + [0xa45, 0xa45], + [0xa46, 0xa46], + [0xa47, 0xa47], /* GURMUKHI VOWEL SIGN EE */ + [0xa48, 0xa48], /* GURMUKHI VOWEL SIGN AI */ + [0xa49, 0xa49], + [0xa4a, 0xa4a], + [0xa4b, 0xa4b], /* GURMUKHI VOWEL SIGN OO */ + [0xa4c, 0xa4c], /* GURMUKHI VOWEL SIGN AU */ + [0xa4d, 0xa4d], /* GURMUKHI SIGN VIRAMA */ + [0xa4e, 0xa4e], + [0xa4f, 0xa4f], + [0xa50, 0xa50], + [0xa51, 0xa51], /* GURMUKHI SIGN UDAAT */ + [0xa52, 0xa52], + [0xa53, 0xa53], + [0xa54, 0xa54], + [0xa55, 0xa55], + [0xa56, 0xa56], + [0xa57, 0xa57], + [0xa58, 0xa58], + [0xa59, 0xa59], /* GURMUKHI LETTER KHHA */ + [0xa5a, 0xa5a], /* GURMUKHI LETTER GHHA */ + [0xa5b, 0xa5b], /* GURMUKHI LETTER ZA */ + [0xa5c, 0xa5c], /* GURMUKHI LETTER RRA */ + [0xa5d, 0xa5d], + [0xa5e, 0xa5e], /* GURMUKHI LETTER FA */ + [0xa5f, 0xa5f], + [0xa60, 0xa60], + [0xa61, 0xa61], + [0xa62, 0xa62], + [0xa63, 0xa63], + [0xa64, 0xa64], + [0xa65, 0xa65], + [0xa66, 0xa66], /* GURMUKHI DIGIT ZERO */ + [0xa67, 0xa67], /* GURMUKHI DIGIT ONE */ + [0xa68, 0xa68], /* GURMUKHI DIGIT TWO */ + [0xa69, 0xa69], /* GURMUKHI DIGIT THREE */ + [0xa6a, 0xa6a], /* GURMUKHI DIGIT FOUR */ + [0xa6b, 0xa6b], /* GURMUKHI DIGIT FIVE */ + [0xa6c, 0xa6c], /* GURMUKHI DIGIT SIX */ + [0xa6d, 0xa6d], /* GURMUKHI DIGIT SEVEN */ + [0xa6e, 0xa6e], /* GURMUKHI DIGIT EIGHT */ + [0xa6f, 0xa6f], /* GURMUKHI DIGIT NINE */ + [0xa70, 0xa70], /* GURMUKHI TIPPI */ + [0xa71, 0xa71], /* GURMUKHI ADDAK */ + [0xa72, 0xa72], /* GURMUKHI IRI */ + [0xa73, 0xa73], /* GURMUKHI URA */ + [0xa74, 0xa74], /* GURMUKHI EK ONKAR */ + [0xa75, 0xa75], /* GURMUKHI SIGN YAKASH */ + [0xa76, 0xa76], + [0xa77, 0xa77], + [0xa78, 0xa78], + [0xa79, 0xa79], + [0xa7a, 0xa7a], + [0xa7b, 0xa7b], + [0xa7c, 0xa7c], + [0xa7d, 0xa7d], + [0xa7e, 0xa7e], + [0xa7f, 0xa7f], + [0xa80, 0xa80], + [0xa81, 0xa81], /* GUJARATI SIGN CANDRABINDU */ + [0xa82, 0xa82], /* GUJARATI SIGN ANUSVARA */ + [0xa83, 0xa83], /* GUJARATI SIGN VISARGA */ + [0xa84, 0xa84], + [0xa85, 0xa85], /* GUJARATI LETTER A */ + [0xa86, 0xa86], /* GUJARATI LETTER AA */ + [0xa87, 0xa87], /* GUJARATI LETTER I */ + [0xa88, 0xa88], /* GUJARATI LETTER II */ + [0xa89, 0xa89], /* GUJARATI LETTER U */ + [0xa8a, 0xa8a], /* GUJARATI LETTER UU */ + [0xa8b, 0xa8b], /* GUJARATI LETTER VOCALIC R */ + [0xa8c, 0xa8c], /* GUJARATI LETTER VOCALIC L */ + [0xa8d, 0xa8d], /* GUJARATI VOWEL CANDRA E */ + [0xa8e, 0xa8e], + [0xa8f, 0xa8f], /* GUJARATI LETTER E */ + [0xa90, 0xa90], /* GUJARATI LETTER AI */ + [0xa91, 0xa91], /* GUJARATI VOWEL CANDRA O */ + [0xa92, 0xa92], + [0xa93, 0xa93], /* GUJARATI LETTER O */ + [0xa94, 0xa94], /* GUJARATI LETTER AU */ + [0xa95, 0xa95], /* GUJARATI LETTER KA */ + [0xa96, 0xa96], /* GUJARATI LETTER KHA */ + [0xa97, 0xa97], /* GUJARATI LETTER GA */ + [0xa98, 0xa98], /* GUJARATI LETTER GHA */ + [0xa99, 0xa99], /* GUJARATI LETTER NGA */ + [0xa9a, 0xa9a], /* GUJARATI LETTER CA */ + [0xa9b, 0xa9b], /* GUJARATI LETTER CHA */ + [0xa9c, 0xa9c], /* GUJARATI LETTER JA */ + [0xa9d, 0xa9d], /* GUJARATI LETTER JHA */ + [0xa9e, 0xa9e], /* GUJARATI LETTER NYA */ + [0xa9f, 0xa9f], /* GUJARATI LETTER TTA */ + [0xaa0, 0xaa0], /* GUJARATI LETTER TTHA */ + [0xaa1, 0xaa1], /* GUJARATI LETTER DDA */ + [0xaa2, 0xaa2], /* GUJARATI LETTER DDHA */ + [0xaa3, 0xaa3], /* GUJARATI LETTER NNA */ + [0xaa4, 0xaa4], /* GUJARATI LETTER TA */ + [0xaa5, 0xaa5], /* GUJARATI LETTER THA */ + [0xaa6, 0xaa6], /* GUJARATI LETTER DA */ + [0xaa7, 0xaa7], /* GUJARATI LETTER DHA */ + [0xaa8, 0xaa8], /* GUJARATI LETTER NA */ + [0xaa9, 0xaa9], + [0xaaa, 0xaaa], /* GUJARATI LETTER PA */ + [0xaab, 0xaab], /* GUJARATI LETTER PHA */ + [0xaac, 0xaac], /* GUJARATI LETTER BA */ + [0xaad, 0xaad], /* GUJARATI LETTER BHA */ + [0xaae, 0xaae], /* GUJARATI LETTER MA */ + [0xaaf, 0xaaf], /* GUJARATI LETTER YA */ + [0xab0, 0xab0], /* GUJARATI LETTER RA */ + [0xab1, 0xab1], + [0xab2, 0xab2], /* GUJARATI LETTER LA */ + [0xab3, 0xab3], /* GUJARATI LETTER LLA */ + [0xab4, 0xab4], + [0xab5, 0xab5], /* GUJARATI LETTER VA */ + [0xab6, 0xab6], /* GUJARATI LETTER SHA */ + [0xab7, 0xab7], /* GUJARATI LETTER SSA */ + [0xab8, 0xab8], /* GUJARATI LETTER SA */ + [0xab9, 0xab9], /* GUJARATI LETTER HA */ + [0xaba, 0xaba], + [0xabb, 0xabb], + [0xabc, 0xabc], /* GUJARATI SIGN NUKTA */ + [0xabd, 0xabd], /* GUJARATI SIGN AVAGRAHA */ + [0xabe, 0xabe], /* GUJARATI VOWEL SIGN AA */ + [0xabf, 0xabf], /* GUJARATI VOWEL SIGN I */ + [0xac0, 0xac0], /* GUJARATI VOWEL SIGN II */ + [0xac1, 0xac1], /* GUJARATI VOWEL SIGN U */ + [0xac2, 0xac2], /* GUJARATI VOWEL SIGN UU */ + [0xac3, 0xac3], /* GUJARATI VOWEL SIGN VOCALIC R */ + [0xac4, 0xac4], /* GUJARATI VOWEL SIGN VOCALIC RR */ + [0xac5, 0xac5], /* GUJARATI VOWEL SIGN CANDRA E */ + [0xac6, 0xac6], + [0xac7, 0xac7], /* GUJARATI VOWEL SIGN E */ + [0xac8, 0xac8], /* GUJARATI VOWEL SIGN AI */ + [0xac9, 0xac9], /* GUJARATI VOWEL SIGN CANDRA O */ + [0xaca, 0xaca], + [0xacb, 0xacb], /* GUJARATI VOWEL SIGN O */ + [0xacc, 0xacc], /* GUJARATI VOWEL SIGN AU */ + [0xacd, 0xacd], /* GUJARATI SIGN VIRAMA */ + [0xace, 0xace], + [0xacf, 0xacf], + [0xad0, 0xad0], /* GUJARATI OM */ + [0xad1, 0xad1], + [0xad2, 0xad2], + [0xad3, 0xad3], + [0xad4, 0xad4], + [0xad5, 0xad5], + [0xad6, 0xad6], + [0xad7, 0xad7], + [0xad8, 0xad8], + [0xad9, 0xad9], + [0xada, 0xada], + [0xadb, 0xadb], + [0xadc, 0xadc], + [0xadd, 0xadd], + [0xade, 0xade], + [0xadf, 0xadf], + [0xae0, 0xae0], /* GUJARATI LETTER VOCALIC RR */ + [0xae1, 0xae1], /* GUJARATI LETTER VOCALIC LL */ + [0xae2, 0xae2], /* GUJARATI VOWEL SIGN VOCALIC L */ + [0xae3, 0xae3], /* GUJARATI VOWEL SIGN VOCALIC LL */ + [0xae4, 0xae4], + [0xae5, 0xae5], + [0xae6, 0xae6], /* GUJARATI DIGIT ZERO */ + [0xae7, 0xae7], /* GUJARATI DIGIT ONE */ + [0xae8, 0xae8], /* GUJARATI DIGIT TWO */ + [0xae9, 0xae9], /* GUJARATI DIGIT THREE */ + [0xaea, 0xaea], /* GUJARATI DIGIT FOUR */ + [0xaeb, 0xaeb], /* GUJARATI DIGIT FIVE */ + [0xaec, 0xaec], /* GUJARATI DIGIT SIX */ + [0xaed, 0xaed], /* GUJARATI DIGIT SEVEN */ + [0xaee, 0xaee], /* GUJARATI DIGIT EIGHT */ + [0xaef, 0xaef], /* GUJARATI DIGIT NINE */ + [0xaf0, 0xaf0], /* GUJARATI ABBREVIATION SIGN */ + [0xaf1, 0xaf1], /* GUJARATI RUPEE SIGN */ + [0xaf2, 0xaf2], + [0xaf3, 0xaf3], + [0xaf4, 0xaf4], + [0xaf5, 0xaf5], + [0xaf6, 0xaf6], + [0xaf7, 0xaf7], + [0xaf8, 0xaf8], + [0xaf9, 0xaf9], /* GUJARATI LETTER ZHA */ + [0xafa, 0xafa], + [0xafb, 0xafb], + [0xafc, 0xafc], + [0xafd, 0xafd], + [0xafe, 0xafe], + [0xaff, 0xaff], + [0xb00, 0xb00], + [0xb01, 0xb01], /* ORIYA SIGN CANDRABINDU */ + [0xb02, 0xb02], /* ORIYA SIGN ANUSVARA */ + [0xb03, 0xb03], /* ORIYA SIGN VISARGA */ + [0xb04, 0xb04], + [0xb05, 0xb05], /* ORIYA LETTER A */ + [0xb06, 0xb06], /* ORIYA LETTER AA */ + [0xb07, 0xb07], /* ORIYA LETTER I */ + [0xb08, 0xb08], /* ORIYA LETTER II */ + [0xb09, 0xb09], /* ORIYA LETTER U */ + [0xb0a, 0xb0a], /* ORIYA LETTER UU */ + [0xb0b, 0xb0b], /* ORIYA LETTER VOCALIC R */ + [0xb0c, 0xb0c], /* ORIYA LETTER VOCALIC L */ + [0xb0d, 0xb0d], + [0xb0e, 0xb0e], + [0xb0f, 0xb0f], /* ORIYA LETTER E */ + [0xb10, 0xb10], /* ORIYA LETTER AI */ + [0xb11, 0xb11], + [0xb12, 0xb12], + [0xb13, 0xb13], /* ORIYA LETTER O */ + [0xb14, 0xb14], /* ORIYA LETTER AU */ + [0xb15, 0xb15], /* ORIYA LETTER KA */ + [0xb16, 0xb16], /* ORIYA LETTER KHA */ + [0xb17, 0xb17], /* ORIYA LETTER GA */ + [0xb18, 0xb18], /* ORIYA LETTER GHA */ + [0xb19, 0xb19], /* ORIYA LETTER NGA */ + [0xb1a, 0xb1a], /* ORIYA LETTER CA */ + [0xb1b, 0xb1b], /* ORIYA LETTER CHA */ + [0xb1c, 0xb1c], /* ORIYA LETTER JA */ + [0xb1d, 0xb1d], /* ORIYA LETTER JHA */ + [0xb1e, 0xb1e], /* ORIYA LETTER NYA */ + [0xb1f, 0xb1f], /* ORIYA LETTER TTA */ + [0xb20, 0xb20], /* ORIYA LETTER TTHA */ + [0xb21, 0xb21], /* ORIYA LETTER DDA */ + [0xb22, 0xb22], /* ORIYA LETTER DDHA */ + [0xb23, 0xb23], /* ORIYA LETTER NNA */ + [0xb24, 0xb24], /* ORIYA LETTER TA */ + [0xb25, 0xb25], /* ORIYA LETTER THA */ + [0xb26, 0xb26], /* ORIYA LETTER DA */ + [0xb27, 0xb27], /* ORIYA LETTER DHA */ + [0xb28, 0xb28], /* ORIYA LETTER NA */ + [0xb29, 0xb29], + [0xb2a, 0xb2a], /* ORIYA LETTER PA */ + [0xb2b, 0xb2b], /* ORIYA LETTER PHA */ + [0xb2c, 0xb2c], /* ORIYA LETTER BA */ + [0xb2d, 0xb2d], /* ORIYA LETTER BHA */ + [0xb2e, 0xb2e], /* ORIYA LETTER MA */ + [0xb2f, 0xb2f], /* ORIYA LETTER YA */ + [0xb30, 0xb30], /* ORIYA LETTER RA */ + [0xb31, 0xb31], + [0xb32, 0xb32], /* ORIYA LETTER LA */ + [0xb33, 0xb33], /* ORIYA LETTER LLA */ + [0xb34, 0xb34], + [0xb35, 0xb35], /* ORIYA LETTER VA */ + [0xb36, 0xb36], /* ORIYA LETTER SHA */ + [0xb37, 0xb37], /* ORIYA LETTER SSA */ + [0xb38, 0xb38], /* ORIYA LETTER SA */ + [0xb39, 0xb39], /* ORIYA LETTER HA */ + [0xb3a, 0xb3a], + [0xb3b, 0xb3b], + [0xb3c, 0xb3c], /* ORIYA SIGN NUKTA */ + [0xb3d, 0xb3d], /* ORIYA SIGN AVAGRAHA */ + [0xb3e, 0xb3e], /* ORIYA VOWEL SIGN AA */ + [0xb3f, 0xb3f], /* ORIYA VOWEL SIGN I */ + [0xb40, 0xb40], /* ORIYA VOWEL SIGN II */ + [0xb41, 0xb41], /* ORIYA VOWEL SIGN U */ + [0xb42, 0xb42], /* ORIYA VOWEL SIGN UU */ + [0xb43, 0xb43], /* ORIYA VOWEL SIGN VOCALIC R */ + [0xb44, 0xb44], /* ORIYA VOWEL SIGN VOCALIC RR */ + [0xb45, 0xb45], + [0xb46, 0xb46], + [0xb47, 0xb47], /* ORIYA VOWEL SIGN E */ + [0xb48, 0xb48], /* ORIYA VOWEL SIGN AI */ + [0xb49, 0xb49], + [0xb4a, 0xb4a], + [0xb4b, 0xb4b], /* ORIYA VOWEL SIGN O */ + [0xb4c, 0xb4c], /* ORIYA VOWEL SIGN AU */ + [0xb4d, 0xb4d], /* ORIYA SIGN VIRAMA */ + [0xb4e, 0xb4e], + [0xb4f, 0xb4f], + [0xb50, 0xb50], + [0xb51, 0xb51], + [0xb52, 0xb52], + [0xb53, 0xb53], + [0xb54, 0xb54], + [0xb55, 0xb55], + [0xb56, 0xb56], /* ORIYA AI LENGTH MARK */ + [0xb57, 0xb57], /* ORIYA AU LENGTH MARK */ + [0xb58, 0xb58], + [0xb59, 0xb59], + [0xb5a, 0xb5a], + [0xb5b, 0xb5b], + [0xb5c, 0xb5c], /* ORIYA LETTER RRA */ + [0xb5d, 0xb5d], /* ORIYA LETTER RHA */ + [0xb5e, 0xb5e], + [0xb5f, 0xb5f], /* ORIYA LETTER YYA */ + [0xb60, 0xb60], /* ORIYA LETTER VOCALIC RR */ + [0xb61, 0xb61], /* ORIYA LETTER VOCALIC LL */ + [0xb62, 0xb62], /* ORIYA VOWEL SIGN VOCALIC L */ + [0xb63, 0xb63], /* ORIYA VOWEL SIGN VOCALIC LL */ + [0xb64, 0xb64], + [0xb65, 0xb65], + [0xb66, 0xb66], /* ORIYA DIGIT ZERO */ + [0xb67, 0xb67], /* ORIYA DIGIT ONE */ + [0xb68, 0xb68], /* ORIYA DIGIT TWO */ + [0xb69, 0xb69], /* ORIYA DIGIT THREE */ + [0xb6a, 0xb6a], /* ORIYA DIGIT FOUR */ + [0xb6b, 0xb6b], /* ORIYA DIGIT FIVE */ + [0xb6c, 0xb6c], /* ORIYA DIGIT SIX */ + [0xb6d, 0xb6d], /* ORIYA DIGIT SEVEN */ + [0xb6e, 0xb6e], /* ORIYA DIGIT EIGHT */ + [0xb6f, 0xb6f], /* ORIYA DIGIT NINE */ + [0xb70, 0xb70], /* ORIYA ISSHAR */ + [0xb71, 0xb71], /* ORIYA LETTER WA */ + [0xb72, 0xb72], /* ORIYA FRACTION ONE QUARTER */ + [0xb73, 0xb73], /* ORIYA FRACTION ONE HALF */ + [0xb74, 0xb74], /* ORIYA FRACTION THREE QUARTERS */ + [0xb75, 0xb75], /* ORIYA FRACTION ONE SIXTEENTH */ + [0xb76, 0xb76], /* ORIYA FRACTION ONE EIGHTH */ + [0xb77, 0xb77], /* ORIYA FRACTION THREE SIXTEENTHS */ + [0xb78, 0xb78], + [0xb79, 0xb79], + [0xb7a, 0xb7a], + [0xb7b, 0xb7b], + [0xb7c, 0xb7c], + [0xb7d, 0xb7d], + [0xb7e, 0xb7e], + [0xb7f, 0xb7f], + [0xb80, 0xb80], + [0xb81, 0xb81], + [0xb82, 0xb82], /* TAMIL SIGN ANUSVARA */ + [0xb83, 0xb83], /* TAMIL SIGN VISARGA */ + [0xb84, 0xb84], + [0xb85, 0xb85], /* TAMIL LETTER A */ + [0xb86, 0xb86], /* TAMIL LETTER AA */ + [0xb87, 0xb87], /* TAMIL LETTER I */ + [0xb88, 0xb88], /* TAMIL LETTER II */ + [0xb89, 0xb89], /* TAMIL LETTER U */ + [0xb8a, 0xb8a], /* TAMIL LETTER UU */ + [0xb8b, 0xb8b], + [0xb8c, 0xb8c], + [0xb8d, 0xb8d], + [0xb8e, 0xb8e], /* TAMIL LETTER E */ + [0xb8f, 0xb8f], /* TAMIL LETTER EE */ + [0xb90, 0xb90], /* TAMIL LETTER AI */ + [0xb91, 0xb91], + [0xb92, 0xb92], /* TAMIL LETTER O */ + [0xb93, 0xb93], /* TAMIL LETTER OO */ + [0xb94, 0xb94], /* TAMIL LETTER AU */ + [0xb95, 0xb95], /* TAMIL LETTER KA */ + [0xb96, 0xb96], + [0xb97, 0xb97], + [0xb98, 0xb98], + [0xb99, 0xb99], /* TAMIL LETTER NGA */ + [0xb9a, 0xb9a], /* TAMIL LETTER CA */ + [0xb9b, 0xb9b], + [0xb9c, 0xb9c], /* TAMIL LETTER JA */ + [0xb9d, 0xb9d], + [0xb9e, 0xb9e], /* TAMIL LETTER NYA */ + [0xb9f, 0xb9f], /* TAMIL LETTER TTA */ + [0xba0, 0xba0], + [0xba1, 0xba1], + [0xba2, 0xba2], + [0xba3, 0xba3], /* TAMIL LETTER NNA */ + [0xba4, 0xba4], /* TAMIL LETTER TA */ + [0xba5, 0xba5], + [0xba6, 0xba6], + [0xba7, 0xba7], + [0xba8, 0xba8], /* TAMIL LETTER NA */ + [0xba9, 0xba9], /* TAMIL LETTER NNNA */ + [0xbaa, 0xbaa], /* TAMIL LETTER PA */ + [0xbab, 0xbab], + [0xbac, 0xbac], + [0xbad, 0xbad], + [0xbae, 0xbae], /* TAMIL LETTER MA */ + [0xbaf, 0xbaf], /* TAMIL LETTER YA */ + [0xbb0, 0xbb0], /* TAMIL LETTER RA */ + [0xbb1, 0xbb1], /* TAMIL LETTER RRA */ + [0xbb2, 0xbb2], /* TAMIL LETTER LA */ + [0xbb3, 0xbb3], /* TAMIL LETTER LLA */ + [0xbb4, 0xbb4], /* TAMIL LETTER LLLA */ + [0xbb5, 0xbb5], /* TAMIL LETTER VA */ + [0xbb6, 0xbb6], /* TAMIL LETTER SHA */ + [0xbb7, 0xbb7], /* TAMIL LETTER SSA */ + [0xbb8, 0xbb8], /* TAMIL LETTER SA */ + [0xbb9, 0xbb9], /* TAMIL LETTER HA */ + [0xbba, 0xbba], + [0xbbb, 0xbbb], + [0xbbc, 0xbbc], + [0xbbd, 0xbbd], + [0xbbe, 0xbbe], /* TAMIL VOWEL SIGN AA */ + [0xbbf, 0xbbf], /* TAMIL VOWEL SIGN I */ + [0xbc0, 0xbc0], /* TAMIL VOWEL SIGN II */ + [0xbc1, 0xbc1], /* TAMIL VOWEL SIGN U */ + [0xbc2, 0xbc2], /* TAMIL VOWEL SIGN UU */ + [0xbc3, 0xbc3], + [0xbc4, 0xbc4], + [0xbc5, 0xbc5], + [0xbc6, 0xbc6], /* TAMIL VOWEL SIGN E */ + [0xbc7, 0xbc7], /* TAMIL VOWEL SIGN EE */ + [0xbc8, 0xbc8], /* TAMIL VOWEL SIGN AI */ + [0xbc9, 0xbc9], + [0xbca, 0xbca], /* TAMIL VOWEL SIGN O */ + [0xbcb, 0xbcb], /* TAMIL VOWEL SIGN OO */ + [0xbcc, 0xbcc], /* TAMIL VOWEL SIGN AU */ + [0xbcd, 0xbcd], /* TAMIL SIGN VIRAMA */ + [0xbce, 0xbce], + [0xbcf, 0xbcf], + [0xbd0, 0xbd0], /* TAMIL OM */ + [0xbd1, 0xbd1], + [0xbd2, 0xbd2], + [0xbd3, 0xbd3], + [0xbd4, 0xbd4], + [0xbd5, 0xbd5], + [0xbd6, 0xbd6], + [0xbd7, 0xbd7], /* TAMIL AU LENGTH MARK */ + [0xbd8, 0xbd8], + [0xbd9, 0xbd9], + [0xbda, 0xbda], + [0xbdb, 0xbdb], + [0xbdc, 0xbdc], + [0xbdd, 0xbdd], + [0xbde, 0xbde], + [0xbdf, 0xbdf], + [0xbe0, 0xbe0], + [0xbe1, 0xbe1], + [0xbe2, 0xbe2], + [0xbe3, 0xbe3], + [0xbe4, 0xbe4], + [0xbe5, 0xbe5], + [0xbe6, 0xbe6], /* TAMIL DIGIT ZERO */ + [0xbe7, 0xbe7], /* TAMIL DIGIT ONE */ + [0xbe8, 0xbe8], /* TAMIL DIGIT TWO */ + [0xbe9, 0xbe9], /* TAMIL DIGIT THREE */ + [0xbea, 0xbea], /* TAMIL DIGIT FOUR */ + [0xbeb, 0xbeb], /* TAMIL DIGIT FIVE */ + [0xbec, 0xbec], /* TAMIL DIGIT SIX */ + [0xbed, 0xbed], /* TAMIL DIGIT SEVEN */ + [0xbee, 0xbee], /* TAMIL DIGIT EIGHT */ + [0xbef, 0xbef], /* TAMIL DIGIT NINE */ + [0xbf0, 0xbf0], /* TAMIL NUMBER TEN */ + [0xbf1, 0xbf1], /* TAMIL NUMBER ONE HUNDRED */ + [0xbf2, 0xbf2], /* TAMIL NUMBER ONE THOUSAND */ + [0xbf3, 0xbf3], /* TAMIL DAY SIGN */ + [0xbf4, 0xbf4], /* TAMIL MONTH SIGN */ + [0xbf5, 0xbf5], /* TAMIL YEAR SIGN */ + [0xbf6, 0xbf6], /* TAMIL DEBIT SIGN */ + [0xbf7, 0xbf7], /* TAMIL CREDIT SIGN */ + [0xbf8, 0xbf8], /* TAMIL AS ABOVE SIGN */ + [0xbf9, 0xbf9], /* TAMIL RUPEE SIGN */ + [0xbfa, 0xbfa], /* TAMIL NUMBER SIGN */ + [0xbfb, 0xbfb], + [0xbfc, 0xbfc], + [0xbfd, 0xbfd], + [0xbfe, 0xbfe], + [0xbff, 0xbff], + [0xc00, 0xc00], /* TELUGU SIGN COMBINING CANDRABINDU ABOVE */ + [0xc01, 0xc01], /* TELUGU SIGN CANDRABINDU */ + [0xc02, 0xc02], /* TELUGU SIGN ANUSVARA */ + [0xc03, 0xc03], /* TELUGU SIGN VISARGA */ + [0xc04, 0xc04], + [0xc05, 0xc05], /* TELUGU LETTER A */ + [0xc06, 0xc06], /* TELUGU LETTER AA */ + [0xc07, 0xc07], /* TELUGU LETTER I */ + [0xc08, 0xc08], /* TELUGU LETTER II */ + [0xc09, 0xc09], /* TELUGU LETTER U */ + [0xc0a, 0xc0a], /* TELUGU LETTER UU */ + [0xc0b, 0xc0b], /* TELUGU LETTER VOCALIC R */ + [0xc0c, 0xc0c], /* TELUGU LETTER VOCALIC L */ + [0xc0d, 0xc0d], + [0xc0e, 0xc0e], /* TELUGU LETTER E */ + [0xc0f, 0xc0f], /* TELUGU LETTER EE */ + [0xc10, 0xc10], /* TELUGU LETTER AI */ + [0xc11, 0xc11], + [0xc12, 0xc12], /* TELUGU LETTER O */ + [0xc13, 0xc13], /* TELUGU LETTER OO */ + [0xc14, 0xc14], /* TELUGU LETTER AU */ + [0xc15, 0xc15], /* TELUGU LETTER KA */ + [0xc16, 0xc16], /* TELUGU LETTER KHA */ + [0xc17, 0xc17], /* TELUGU LETTER GA */ + [0xc18, 0xc18], /* TELUGU LETTER GHA */ + [0xc19, 0xc19], /* TELUGU LETTER NGA */ + [0xc1a, 0xc1a], /* TELUGU LETTER CA */ + [0xc1b, 0xc1b], /* TELUGU LETTER CHA */ + [0xc1c, 0xc1c], /* TELUGU LETTER JA */ + [0xc1d, 0xc1d], /* TELUGU LETTER JHA */ + [0xc1e, 0xc1e], /* TELUGU LETTER NYA */ + [0xc1f, 0xc1f], /* TELUGU LETTER TTA */ + [0xc20, 0xc20], /* TELUGU LETTER TTHA */ + [0xc21, 0xc21], /* TELUGU LETTER DDA */ + [0xc22, 0xc22], /* TELUGU LETTER DDHA */ + [0xc23, 0xc23], /* TELUGU LETTER NNA */ + [0xc24, 0xc24], /* TELUGU LETTER TA */ + [0xc25, 0xc25], /* TELUGU LETTER THA */ + [0xc26, 0xc26], /* TELUGU LETTER DA */ + [0xc27, 0xc27], /* TELUGU LETTER DHA */ + [0xc28, 0xc28], /* TELUGU LETTER NA */ + [0xc29, 0xc29], + [0xc2a, 0xc2a], /* TELUGU LETTER PA */ + [0xc2b, 0xc2b], /* TELUGU LETTER PHA */ + [0xc2c, 0xc2c], /* TELUGU LETTER BA */ + [0xc2d, 0xc2d], /* TELUGU LETTER BHA */ + [0xc2e, 0xc2e], /* TELUGU LETTER MA */ + [0xc2f, 0xc2f], /* TELUGU LETTER YA */ + [0xc30, 0xc30], /* TELUGU LETTER RA */ + [0xc31, 0xc31], /* TELUGU LETTER RRA */ + [0xc32, 0xc32], /* TELUGU LETTER LA */ + [0xc33, 0xc33], /* TELUGU LETTER LLA */ + [0xc34, 0xc34], /* TELUGU LETTER LLLA */ + [0xc35, 0xc35], /* TELUGU LETTER VA */ + [0xc36, 0xc36], /* TELUGU LETTER SHA */ + [0xc37, 0xc37], /* TELUGU LETTER SSA */ + [0xc38, 0xc38], /* TELUGU LETTER SA */ + [0xc39, 0xc39], /* TELUGU LETTER HA */ + [0xc3a, 0xc3a], + [0xc3b, 0xc3b], + [0xc3c, 0xc3c], + [0xc3d, 0xc3d], /* TELUGU SIGN AVAGRAHA */ + [0xc3e, 0xc3e], /* TELUGU VOWEL SIGN AA */ + [0xc3f, 0xc3f], /* TELUGU VOWEL SIGN I */ + [0xc40, 0xc40], /* TELUGU VOWEL SIGN II */ + [0xc41, 0xc41], /* TELUGU VOWEL SIGN U */ + [0xc42, 0xc42], /* TELUGU VOWEL SIGN UU */ + [0xc43, 0xc43], /* TELUGU VOWEL SIGN VOCALIC R */ + [0xc44, 0xc44], /* TELUGU VOWEL SIGN VOCALIC RR */ + [0xc45, 0xc45], + [0xc46, 0xc46], /* TELUGU VOWEL SIGN E */ + [0xc47, 0xc47], /* TELUGU VOWEL SIGN EE */ + [0xc48, 0xc48], /* TELUGU VOWEL SIGN AI */ + [0xc49, 0xc49], + [0xc4a, 0xc4a], /* TELUGU VOWEL SIGN O */ + [0xc4b, 0xc4b], /* TELUGU VOWEL SIGN OO */ + [0xc4c, 0xc4c], /* TELUGU VOWEL SIGN AU */ + [0xc4d, 0xc4d], /* TELUGU SIGN VIRAMA */ + [0xc4e, 0xc4e], + [0xc4f, 0xc4f], + [0xc50, 0xc50], + [0xc51, 0xc51], + [0xc52, 0xc52], + [0xc53, 0xc53], + [0xc54, 0xc54], + [0xc55, 0xc55], /* TELUGU LENGTH MARK */ + [0xc56, 0xc56], /* TELUGU AI LENGTH MARK */ + [0xc57, 0xc57], + [0xc58, 0xc58], /* TELUGU LETTER TSA */ + [0xc59, 0xc59], /* TELUGU LETTER DZA */ + [0xc5a, 0xc5a], /* TELUGU LETTER RRRA */ + [0xc5b, 0xc5b], + [0xc5c, 0xc5c], + [0xc5d, 0xc5d], + [0xc5e, 0xc5e], + [0xc5f, 0xc5f], + [0xc60, 0xc60], /* TELUGU LETTER VOCALIC RR */ + [0xc61, 0xc61], /* TELUGU LETTER VOCALIC LL */ + [0xc62, 0xc62], /* TELUGU VOWEL SIGN VOCALIC L */ + [0xc63, 0xc63], /* TELUGU VOWEL SIGN VOCALIC LL */ + [0xc64, 0xc64], + [0xc65, 0xc65], + [0xc66, 0xc66], /* TELUGU DIGIT ZERO */ + [0xc67, 0xc67], /* TELUGU DIGIT ONE */ + [0xc68, 0xc68], /* TELUGU DIGIT TWO */ + [0xc69, 0xc69], /* TELUGU DIGIT THREE */ + [0xc6a, 0xc6a], /* TELUGU DIGIT FOUR */ + [0xc6b, 0xc6b], /* TELUGU DIGIT FIVE */ + [0xc6c, 0xc6c], /* TELUGU DIGIT SIX */ + [0xc6d, 0xc6d], /* TELUGU DIGIT SEVEN */ + [0xc6e, 0xc6e], /* TELUGU DIGIT EIGHT */ + [0xc6f, 0xc6f], /* TELUGU DIGIT NINE */ + [0xc70, 0xc70], + [0xc71, 0xc71], + [0xc72, 0xc72], + [0xc73, 0xc73], + [0xc74, 0xc74], + [0xc75, 0xc75], + [0xc76, 0xc76], + [0xc77, 0xc77], + [0xc78, 0xc78], /* TELUGU FRACTION DIGIT ZERO FOR ODD POWERS OF FOUR */ + [0xc79, 0xc79], /* TELUGU FRACTION DIGIT ONE FOR ODD POWERS OF FOUR */ + [0xc7a, 0xc7a], /* TELUGU FRACTION DIGIT TWO FOR ODD POWERS OF FOUR */ + [0xc7b, 0xc7b], /* TELUGU FRACTION DIGIT THREE FOR ODD POWERS OF FOUR */ + [0xc7c, 0xc7c], /* TELUGU FRACTION DIGIT ONE FOR EVEN POWERS OF FOUR */ + [0xc7d, 0xc7d], /* TELUGU FRACTION DIGIT TWO FOR EVEN POWERS OF FOUR */ + [0xc7e, 0xc7e], /* TELUGU FRACTION DIGIT THREE FOR EVEN POWERS OF FOUR */ + [0xc7f, 0xc7f], /* TELUGU SIGN TUUMU */ + [0xc80, 0xc80], /* KANNADA SIGN SPACING CANDRABINDU */ + [0xc81, 0xc81], /* KANNADA SIGN CANDRABINDU */ + [0xc82, 0xc82], /* KANNADA SIGN ANUSVARA */ + [0xc83, 0xc83], /* KANNADA SIGN VISARGA */ + [0xc84, 0xc84], + [0xc85, 0xc85], /* KANNADA LETTER A */ + [0xc86, 0xc86], /* KANNADA LETTER AA */ + [0xc87, 0xc87], /* KANNADA LETTER I */ + [0xc88, 0xc88], /* KANNADA LETTER II */ + [0xc89, 0xc89], /* KANNADA LETTER U */ + [0xc8a, 0xc8a], /* KANNADA LETTER UU */ + [0xc8b, 0xc8b], /* KANNADA LETTER VOCALIC R */ + [0xc8c, 0xc8c], /* KANNADA LETTER VOCALIC L */ + [0xc8d, 0xc8d], + [0xc8e, 0xc8e], /* KANNADA LETTER E */ + [0xc8f, 0xc8f], /* KANNADA LETTER EE */ + [0xc90, 0xc90], /* KANNADA LETTER AI */ + [0xc91, 0xc91], + [0xc92, 0xc92], /* KANNADA LETTER O */ + [0xc93, 0xc93], /* KANNADA LETTER OO */ + [0xc94, 0xc94], /* KANNADA LETTER AU */ + [0xc95, 0xc95], /* KANNADA LETTER KA */ + [0xc96, 0xc96], /* KANNADA LETTER KHA */ + [0xc97, 0xc97], /* KANNADA LETTER GA */ + [0xc98, 0xc98], /* KANNADA LETTER GHA */ + [0xc99, 0xc99], /* KANNADA LETTER NGA */ + [0xc9a, 0xc9a], /* KANNADA LETTER CA */ + [0xc9b, 0xc9b], /* KANNADA LETTER CHA */ + [0xc9c, 0xc9c], /* KANNADA LETTER JA */ + [0xc9d, 0xc9d], /* KANNADA LETTER JHA */ + [0xc9e, 0xc9e], /* KANNADA LETTER NYA */ + [0xc9f, 0xc9f], /* KANNADA LETTER TTA */ + [0xca0, 0xca0], /* KANNADA LETTER TTHA */ + [0xca1, 0xca1], /* KANNADA LETTER DDA */ + [0xca2, 0xca2], /* KANNADA LETTER DDHA */ + [0xca3, 0xca3], /* KANNADA LETTER NNA */ + [0xca4, 0xca4], /* KANNADA LETTER TA */ + [0xca5, 0xca5], /* KANNADA LETTER THA */ + [0xca6, 0xca6], /* KANNADA LETTER DA */ + [0xca7, 0xca7], /* KANNADA LETTER DHA */ + [0xca8, 0xca8], /* KANNADA LETTER NA */ + [0xca9, 0xca9], + [0xcaa, 0xcaa], /* KANNADA LETTER PA */ + [0xcab, 0xcab], /* KANNADA LETTER PHA */ + [0xcac, 0xcac], /* KANNADA LETTER BA */ + [0xcad, 0xcad], /* KANNADA LETTER BHA */ + [0xcae, 0xcae], /* KANNADA LETTER MA */ + [0xcaf, 0xcaf], /* KANNADA LETTER YA */ + [0xcb0, 0xcb0], /* KANNADA LETTER RA */ + [0xcb1, 0xcb1], /* KANNADA LETTER RRA */ + [0xcb2, 0xcb2], /* KANNADA LETTER LA */ + [0xcb3, 0xcb3], /* KANNADA LETTER LLA */ + [0xcb4, 0xcb4], + [0xcb5, 0xcb5], /* KANNADA LETTER VA */ + [0xcb6, 0xcb6], /* KANNADA LETTER SHA */ + [0xcb7, 0xcb7], /* KANNADA LETTER SSA */ + [0xcb8, 0xcb8], /* KANNADA LETTER SA */ + [0xcb9, 0xcb9], /* KANNADA LETTER HA */ + [0xcba, 0xcba], + [0xcbb, 0xcbb], + [0xcbc, 0xcbc], /* KANNADA SIGN NUKTA */ + [0xcbd, 0xcbd], /* KANNADA SIGN AVAGRAHA */ + [0xcbe, 0xcbe], /* KANNADA VOWEL SIGN AA */ + [0xcbf, 0xcbf], /* KANNADA VOWEL SIGN I */ + [0xcc0, 0xcc0], /* KANNADA VOWEL SIGN II */ + [0xcc1, 0xcc1], /* KANNADA VOWEL SIGN U */ + [0xcc2, 0xcc2], /* KANNADA VOWEL SIGN UU */ + [0xcc3, 0xcc3], /* KANNADA VOWEL SIGN VOCALIC R */ + [0xcc4, 0xcc4], /* KANNADA VOWEL SIGN VOCALIC RR */ + [0xcc5, 0xcc5], + [0xcc6, 0xcc6], /* KANNADA VOWEL SIGN E */ + [0xcc7, 0xcc7], /* KANNADA VOWEL SIGN EE */ + [0xcc8, 0xcc8], /* KANNADA VOWEL SIGN AI */ + [0xcc9, 0xcc9], + [0xcca, 0xcca], /* KANNADA VOWEL SIGN O */ + [0xccb, 0xccb], /* KANNADA VOWEL SIGN OO */ + [0xccc, 0xccc], /* KANNADA VOWEL SIGN AU */ + [0xccd, 0xccd], /* KANNADA SIGN VIRAMA */ + [0xcce, 0xcce], + [0xccf, 0xccf], + [0xcd0, 0xcd0], + [0xcd1, 0xcd1], + [0xcd2, 0xcd2], + [0xcd3, 0xcd3], + [0xcd4, 0xcd4], + [0xcd5, 0xcd5], /* KANNADA LENGTH MARK */ + [0xcd6, 0xcd6], /* KANNADA AI LENGTH MARK */ + [0xcd7, 0xcd7], + [0xcd8, 0xcd8], + [0xcd9, 0xcd9], + [0xcda, 0xcda], + [0xcdb, 0xcdb], + [0xcdc, 0xcdc], + [0xcdd, 0xcdd], + [0xcde, 0xcde], /* KANNADA LETTER FA */ + [0xcdf, 0xcdf], + [0xce0, 0xce0], /* KANNADA LETTER VOCALIC RR */ + [0xce1, 0xce1], /* KANNADA LETTER VOCALIC LL */ + [0xce2, 0xce2], /* KANNADA VOWEL SIGN VOCALIC L */ + [0xce3, 0xce3], /* KANNADA VOWEL SIGN VOCALIC LL */ + [0xce4, 0xce4], + [0xce5, 0xce5], + [0xce6, 0xce6], /* KANNADA DIGIT ZERO */ + [0xce7, 0xce7], /* KANNADA DIGIT ONE */ + [0xce8, 0xce8], /* KANNADA DIGIT TWO */ + [0xce9, 0xce9], /* KANNADA DIGIT THREE */ + [0xcea, 0xcea], /* KANNADA DIGIT FOUR */ + [0xceb, 0xceb], /* KANNADA DIGIT FIVE */ + [0xcec, 0xcec], /* KANNADA DIGIT SIX */ + [0xced, 0xced], /* KANNADA DIGIT SEVEN */ + [0xcee, 0xcee], /* KANNADA DIGIT EIGHT */ + [0xcef, 0xcef], /* KANNADA DIGIT NINE */ + [0xcf0, 0xcf0], + [0xcf1, 0xcf1], /* KANNADA SIGN JIHVAMULIYA */ + [0xcf2, 0xcf2], /* KANNADA SIGN UPADHMANIYA */ + [0xcf3, 0xcf3], + [0xcf4, 0xcf4], + [0xcf5, 0xcf5], + [0xcf6, 0xcf6], + [0xcf7, 0xcf7], + [0xcf8, 0xcf8], + [0xcf9, 0xcf9], + [0xcfa, 0xcfa], + [0xcfb, 0xcfb], + [0xcfc, 0xcfc], + [0xcfd, 0xcfd], + [0xcfe, 0xcfe], + [0xcff, 0xcff], + [0xd00, 0xd00], + [0xd01, 0xd01], /* MALAYALAM SIGN CANDRABINDU */ + [0xd02, 0xd02], /* MALAYALAM SIGN ANUSVARA */ + [0xd03, 0xd03], /* MALAYALAM SIGN VISARGA */ + [0xd04, 0xd04], + [0xd05, 0xd05], /* MALAYALAM LETTER A */ + [0xd06, 0xd06], /* MALAYALAM LETTER AA */ + [0xd07, 0xd07], /* MALAYALAM LETTER I */ + [0xd08, 0xd08], /* MALAYALAM LETTER II */ + [0xd09, 0xd09], /* MALAYALAM LETTER U */ + [0xd0a, 0xd0a], /* MALAYALAM LETTER UU */ + [0xd0b, 0xd0b], /* MALAYALAM LETTER VOCALIC R */ + [0xd0c, 0xd0c], /* MALAYALAM LETTER VOCALIC L */ + [0xd0d, 0xd0d], + [0xd0e, 0xd0e], /* MALAYALAM LETTER E */ + [0xd0f, 0xd0f], /* MALAYALAM LETTER EE */ + [0xd10, 0xd10], /* MALAYALAM LETTER AI */ + [0xd11, 0xd11], + [0xd12, 0xd12], /* MALAYALAM LETTER O */ + [0xd13, 0xd13], /* MALAYALAM LETTER OO */ + [0xd14, 0xd14], /* MALAYALAM LETTER AU */ + [0xd15, 0xd15], /* MALAYALAM LETTER KA */ + [0xd16, 0xd16], /* MALAYALAM LETTER KHA */ + [0xd17, 0xd17], /* MALAYALAM LETTER GA */ + [0xd18, 0xd18], /* MALAYALAM LETTER GHA */ + [0xd19, 0xd19], /* MALAYALAM LETTER NGA */ + [0xd1a, 0xd1a], /* MALAYALAM LETTER CA */ + [0xd1b, 0xd1b], /* MALAYALAM LETTER CHA */ + [0xd1c, 0xd1c], /* MALAYALAM LETTER JA */ + [0xd1d, 0xd1d], /* MALAYALAM LETTER JHA */ + [0xd1e, 0xd1e], /* MALAYALAM LETTER NYA */ + [0xd1f, 0xd1f], /* MALAYALAM LETTER TTA */ + [0xd20, 0xd20], /* MALAYALAM LETTER TTHA */ + [0xd21, 0xd21], /* MALAYALAM LETTER DDA */ + [0xd22, 0xd22], /* MALAYALAM LETTER DDHA */ + [0xd23, 0xd23], /* MALAYALAM LETTER NNA */ + [0xd24, 0xd24], /* MALAYALAM LETTER TA */ + [0xd25, 0xd25], /* MALAYALAM LETTER THA */ + [0xd26, 0xd26], /* MALAYALAM LETTER DA */ + [0xd27, 0xd27], /* MALAYALAM LETTER DHA */ + [0xd28, 0xd28], /* MALAYALAM LETTER NA */ + [0xd29, 0xd29], /* MALAYALAM LETTER NNNA */ + [0xd2a, 0xd2a], /* MALAYALAM LETTER PA */ + [0xd2b, 0xd2b], /* MALAYALAM LETTER PHA */ + [0xd2c, 0xd2c], /* MALAYALAM LETTER BA */ + [0xd2d, 0xd2d], /* MALAYALAM LETTER BHA */ + [0xd2e, 0xd2e], /* MALAYALAM LETTER MA */ + [0xd2f, 0xd2f], /* MALAYALAM LETTER YA */ + [0xd30, 0xd30], /* MALAYALAM LETTER RA */ + [0xd31, 0xd31], /* MALAYALAM LETTER RRA */ + [0xd32, 0xd32], /* MALAYALAM LETTER LA */ + [0xd33, 0xd33], /* MALAYALAM LETTER LLA */ + [0xd34, 0xd34], /* MALAYALAM LETTER LLLA */ + [0xd35, 0xd35], /* MALAYALAM LETTER VA */ + [0xd36, 0xd36], /* MALAYALAM LETTER SHA */ + [0xd37, 0xd37], /* MALAYALAM LETTER SSA */ + [0xd38, 0xd38], /* MALAYALAM LETTER SA */ + [0xd39, 0xd39], /* MALAYALAM LETTER HA */ + [0xd3a, 0xd3a], /* MALAYALAM LETTER TTTA */ + [0xd3b, 0xd3b], + [0xd3c, 0xd3c], + [0xd3d, 0xd3d], /* MALAYALAM SIGN AVAGRAHA */ + [0xd3e, 0xd3e], /* MALAYALAM VOWEL SIGN AA */ + [0xd3f, 0xd3f], /* MALAYALAM VOWEL SIGN I */ + [0xd40, 0xd40], /* MALAYALAM VOWEL SIGN II */ + [0xd41, 0xd41], /* MALAYALAM VOWEL SIGN U */ + [0xd42, 0xd42], /* MALAYALAM VOWEL SIGN UU */ + [0xd43, 0xd43], /* MALAYALAM VOWEL SIGN VOCALIC R */ + [0xd44, 0xd44], /* MALAYALAM VOWEL SIGN VOCALIC RR */ + [0xd45, 0xd45], + [0xd46, 0xd46], /* MALAYALAM VOWEL SIGN E */ + [0xd47, 0xd47], /* MALAYALAM VOWEL SIGN EE */ + [0xd48, 0xd48], /* MALAYALAM VOWEL SIGN AI */ + [0xd49, 0xd49], + [0xd4a, 0xd4a], /* MALAYALAM VOWEL SIGN O */ + [0xd4b, 0xd4b], /* MALAYALAM VOWEL SIGN OO */ + [0xd4c, 0xd4c], /* MALAYALAM VOWEL SIGN AU */ + [0xd4d, 0xd4d], /* MALAYALAM SIGN VIRAMA */ + [0xd4e, 0xd4e], /* MALAYALAM LETTER DOT REPH */ + [0xd4f, 0xd4f], /* MALAYALAM SIGN PARA */ + [0xd50, 0xd50], + [0xd51, 0xd51], + [0xd52, 0xd52], + [0xd53, 0xd53], + [0xd54, 0xd54], /* MALAYALAM LETTER CHILLU M */ + [0xd55, 0xd55], /* MALAYALAM LETTER CHILLU Y */ + [0xd56, 0xd56], /* MALAYALAM LETTER CHILLU LLL */ + [0xd57, 0xd57], /* MALAYALAM AU LENGTH MARK */ + [0xd58, 0xd58], /* MALAYALAM FRACTION ONE ONE-HUNDRED-AND-SIXTIETH */ + [0xd59, 0xd59], /* MALAYALAM FRACTION ONE FORTIETH */ + [0xd5a, 0xd5a], /* MALAYALAM FRACTION THREE EIGHTIETHS */ + [0xd5b, 0xd5b], /* MALAYALAM FRACTION ONE TWENTIETH */ + [0xd5c, 0xd5c], /* MALAYALAM FRACTION ONE TENTH */ + [0xd5d, 0xd5d], /* MALAYALAM FRACTION THREE TWENTIETHS */ + [0xd5e, 0xd5e], /* MALAYALAM FRACTION ONE FIFTH */ + [0xd5f, 0xd5f], /* MALAYALAM LETTER ARCHAIC II */ + [0xd60, 0xd60], /* MALAYALAM LETTER VOCALIC RR */ + [0xd61, 0xd61], /* MALAYALAM LETTER VOCALIC LL */ + [0xd62, 0xd62], /* MALAYALAM VOWEL SIGN VOCALIC L */ + [0xd63, 0xd63], /* MALAYALAM VOWEL SIGN VOCALIC LL */ + [0xd64, 0xd64], + [0xd65, 0xd65], + [0xd66, 0xd66], /* MALAYALAM DIGIT ZERO */ + [0xd67, 0xd67], /* MALAYALAM DIGIT ONE */ + [0xd68, 0xd68], /* MALAYALAM DIGIT TWO */ + [0xd69, 0xd69], /* MALAYALAM DIGIT THREE */ + [0xd6a, 0xd6a], /* MALAYALAM DIGIT FOUR */ + [0xd6b, 0xd6b], /* MALAYALAM DIGIT FIVE */ + [0xd6c, 0xd6c], /* MALAYALAM DIGIT SIX */ + [0xd6d, 0xd6d], /* MALAYALAM DIGIT SEVEN */ + [0xd6e, 0xd6e], /* MALAYALAM DIGIT EIGHT */ + [0xd6f, 0xd6f], /* MALAYALAM DIGIT NINE */ + [0xd70, 0xd70], /* MALAYALAM NUMBER TEN */ + [0xd71, 0xd71], /* MALAYALAM NUMBER ONE HUNDRED */ + [0xd72, 0xd72], /* MALAYALAM NUMBER ONE THOUSAND */ + [0xd73, 0xd73], /* MALAYALAM FRACTION ONE QUARTER */ + [0xd74, 0xd74], /* MALAYALAM FRACTION ONE HALF */ + [0xd75, 0xd75], /* MALAYALAM FRACTION THREE QUARTERS */ + [0xd76, 0xd76], /* MALAYALAM FRACTION ONE SIXTEENTH */ + [0xd77, 0xd77], /* MALAYALAM FRACTION ONE EIGHTH */ + [0xd78, 0xd78], /* MALAYALAM FRACTION THREE SIXTEENTHS */ + [0xd79, 0xd79], /* MALAYALAM DATE MARK */ + [0xd7a, 0xd7a], /* MALAYALAM LETTER CHILLU NN */ + [0xd7b, 0xd7b], /* MALAYALAM LETTER CHILLU N */ + [0xd7c, 0xd7c], /* MALAYALAM LETTER CHILLU RR */ + [0xd7d, 0xd7d], /* MALAYALAM LETTER CHILLU L */ + [0xd7e, 0xd7e], /* MALAYALAM LETTER CHILLU LL */ + [0xd7f, 0xd7f], /* MALAYALAM LETTER CHILLU K */ + [0xd80, 0xd80], + [0xd81, 0xd81], + [0xd82, 0xd82], /* SINHALA SIGN ANUSVARAYA */ + [0xd83, 0xd83], /* SINHALA SIGN VISARGAYA */ + [0xd84, 0xd84], + [0xd85, 0xd85], /* SINHALA LETTER AYANNA */ + [0xd86, 0xd86], /* SINHALA LETTER AAYANNA */ + [0xd87, 0xd87], /* SINHALA LETTER AEYANNA */ + [0xd88, 0xd88], /* SINHALA LETTER AEEYANNA */ + [0xd89, 0xd89], /* SINHALA LETTER IYANNA */ + [0xd8a, 0xd8a], /* SINHALA LETTER IIYANNA */ + [0xd8b, 0xd8b], /* SINHALA LETTER UYANNA */ + [0xd8c, 0xd8c], /* SINHALA LETTER UUYANNA */ + [0xd8d, 0xd8d], /* SINHALA LETTER IRUYANNA */ + [0xd8e, 0xd8e], /* SINHALA LETTER IRUUYANNA */ + [0xd8f, 0xd8f], /* SINHALA LETTER ILUYANNA */ + [0xd90, 0xd90], /* SINHALA LETTER ILUUYANNA */ + [0xd91, 0xd91], /* SINHALA LETTER EYANNA */ + [0xd92, 0xd92], /* SINHALA LETTER EEYANNA */ + [0xd93, 0xd93], /* SINHALA LETTER AIYANNA */ + [0xd94, 0xd94], /* SINHALA LETTER OYANNA */ + [0xd95, 0xd95], /* SINHALA LETTER OOYANNA */ + [0xd96, 0xd96], /* SINHALA LETTER AUYANNA */ + [0xd97, 0xd97], + [0xd98, 0xd98], + [0xd99, 0xd99], + [0xd9a, 0xd9a], /* SINHALA LETTER ALPAPRAANA KAYANNA */ + [0xd9b, 0xd9b], /* SINHALA LETTER MAHAAPRAANA KAYANNA */ + [0xd9c, 0xd9c], /* SINHALA LETTER ALPAPRAANA GAYANNA */ + [0xd9d, 0xd9d], /* SINHALA LETTER MAHAAPRAANA GAYANNA */ + [0xd9e, 0xd9e], /* SINHALA LETTER KANTAJA NAASIKYAYA */ + [0xd9f, 0xd9f], /* SINHALA LETTER SANYAKA GAYANNA */ + [0xda0, 0xda0], /* SINHALA LETTER ALPAPRAANA CAYANNA */ + [0xda1, 0xda1], /* SINHALA LETTER MAHAAPRAANA CAYANNA */ + [0xda2, 0xda2], /* SINHALA LETTER ALPAPRAANA JAYANNA */ + [0xda3, 0xda3], /* SINHALA LETTER MAHAAPRAANA JAYANNA */ + [0xda4, 0xda4], /* SINHALA LETTER TAALUJA NAASIKYAYA */ + [0xda5, 0xda5], /* SINHALA LETTER TAALUJA SANYOOGA NAAKSIKYAYA */ + [0xda6, 0xda6], /* SINHALA LETTER SANYAKA JAYANNA */ + [0xda7, 0xda7], /* SINHALA LETTER ALPAPRAANA TTAYANNA */ + [0xda8, 0xda8], /* SINHALA LETTER MAHAAPRAANA TTAYANNA */ + [0xda9, 0xda9], /* SINHALA LETTER ALPAPRAANA DDAYANNA */ + [0xdaa, 0xdaa], /* SINHALA LETTER MAHAAPRAANA DDAYANNA */ + [0xdab, 0xdab], /* SINHALA LETTER MUURDHAJA NAYANNA */ + [0xdac, 0xdac], /* SINHALA LETTER SANYAKA DDAYANNA */ + [0xdad, 0xdad], /* SINHALA LETTER ALPAPRAANA TAYANNA */ + [0xdae, 0xdae], /* SINHALA LETTER MAHAAPRAANA TAYANNA */ + [0xdaf, 0xdaf], /* SINHALA LETTER ALPAPRAANA DAYANNA */ + [0xdb0, 0xdb0], /* SINHALA LETTER MAHAAPRAANA DAYANNA */ + [0xdb1, 0xdb1], /* SINHALA LETTER DANTAJA NAYANNA */ + [0xdb2, 0xdb2], + [0xdb3, 0xdb3], /* SINHALA LETTER SANYAKA DAYANNA */ + [0xdb4, 0xdb4], /* SINHALA LETTER ALPAPRAANA PAYANNA */ + [0xdb5, 0xdb5], /* SINHALA LETTER MAHAAPRAANA PAYANNA */ + [0xdb6, 0xdb6], /* SINHALA LETTER ALPAPRAANA BAYANNA */ + [0xdb7, 0xdb7], /* SINHALA LETTER MAHAAPRAANA BAYANNA */ + [0xdb8, 0xdb8], /* SINHALA LETTER MAYANNA */ + [0xdb9, 0xdb9], /* SINHALA LETTER AMBA BAYANNA */ + [0xdba, 0xdba], /* SINHALA LETTER YAYANNA */ + [0xdbb, 0xdbb], /* SINHALA LETTER RAYANNA */ + [0xdbc, 0xdbc], + [0xdbd, 0xdbd], /* SINHALA LETTER DANTAJA LAYANNA */ + [0xdbe, 0xdbe], + [0xdbf, 0xdbf], + [0xdc0, 0xdc0], /* SINHALA LETTER VAYANNA */ + [0xdc1, 0xdc1], /* SINHALA LETTER TAALUJA SAYANNA */ + [0xdc2, 0xdc2], /* SINHALA LETTER MUURDHAJA SAYANNA */ + [0xdc3, 0xdc3], /* SINHALA LETTER DANTAJA SAYANNA */ + [0xdc4, 0xdc4], /* SINHALA LETTER HAYANNA */ + [0xdc5, 0xdc5], /* SINHALA LETTER MUURDHAJA LAYANNA */ + [0xdc6, 0xdc6], /* SINHALA LETTER FAYANNA */ + [0xdc7, 0xdc7], + [0xdc8, 0xdc8], + [0xdc9, 0xdc9], + [0xdca, 0xdca], /* SINHALA SIGN AL-LAKUNA */ + [0xdcb, 0xdcb], + [0xdcc, 0xdcc], + [0xdcd, 0xdcd], + [0xdce, 0xdce], + [0xdcf, 0xdcf], /* SINHALA VOWEL SIGN AELA-PILLA */ + [0xdd0, 0xdd0], /* SINHALA VOWEL SIGN KETTI AEDA-PILLA */ + [0xdd1, 0xdd1], /* SINHALA VOWEL SIGN DIGA AEDA-PILLA */ + [0xdd2, 0xdd2], /* SINHALA VOWEL SIGN KETTI IS-PILLA */ + [0xdd3, 0xdd3], /* SINHALA VOWEL SIGN DIGA IS-PILLA */ + [0xdd4, 0xdd4], /* SINHALA VOWEL SIGN KETTI PAA-PILLA */ + [0xdd5, 0xdd5], + [0xdd6, 0xdd6], /* SINHALA VOWEL SIGN DIGA PAA-PILLA */ + [0xdd7, 0xdd7], + [0xdd8, 0xdd8], /* SINHALA VOWEL SIGN GAETTA-PILLA */ + [0xdd9, 0xdd9], /* SINHALA VOWEL SIGN KOMBUVA */ + [0xdda, 0xdda], /* SINHALA VOWEL SIGN DIGA KOMBUVA */ + [0xddb, 0xddb], /* SINHALA VOWEL SIGN KOMBU DEKA */ + [0xddc, 0xddc], /* SINHALA VOWEL SIGN KOMBUVA HAA AELA-PILLA */ + [0xddd, 0xddd], /* SINHALA VOWEL SIGN KOMBUVA HAA DIGA AELA-PILLA */ + [0xdde, 0xdde], /* SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA */ + [0xddf, 0xddf], /* SINHALA VOWEL SIGN GAYANUKITTA */ + [0xde0, 0xde0], + [0xde1, 0xde1], + [0xde2, 0xde2], + [0xde3, 0xde3], + [0xde4, 0xde4], + [0xde5, 0xde5], + [0xde6, 0xde6], /* SINHALA LITH DIGIT ZERO */ + [0xde7, 0xde7], /* SINHALA LITH DIGIT ONE */ + [0xde8, 0xde8], /* SINHALA LITH DIGIT TWO */ + [0xde9, 0xde9], /* SINHALA LITH DIGIT THREE */ + [0xdea, 0xdea], /* SINHALA LITH DIGIT FOUR */ + [0xdeb, 0xdeb], /* SINHALA LITH DIGIT FIVE */ + [0xdec, 0xdec], /* SINHALA LITH DIGIT SIX */ + [0xded, 0xded], /* SINHALA LITH DIGIT SEVEN */ + [0xdee, 0xdee], /* SINHALA LITH DIGIT EIGHT */ + [0xdef, 0xdef], /* SINHALA LITH DIGIT NINE */ + [0xdf0, 0xdf0], + [0xdf1, 0xdf1], + [0xdf2, 0xdf2], /* SINHALA VOWEL SIGN DIGA GAETTA-PILLA */ + [0xdf3, 0xdf3], /* SINHALA VOWEL SIGN DIGA GAYANUKITTA */ + [0xdf4, 0xdf4], /* SINHALA PUNCTUATION KUNDDALIYA */ + [0xdf5, 0xdf5], + [0xdf6, 0xdf6], + [0xdf7, 0xdf7], + [0xdf8, 0xdf8], + [0xdf9, 0xdf9], + [0xdfa, 0xdfa], + [0xdfb, 0xdfb], + [0xdfc, 0xdfc], + [0xdfd, 0xdfd], + [0xdfe, 0xdfe], + [0xdff, 0xdff], + [0xe00, 0xe00], + [0xe01, 0xe01], /* THAI CHARACTER KO KAI (THAI LETTER KO KAI) */ + [0xe02, 0xe02], /* THAI CHARACTER KHO KHAI (THAI LETTER KHO KHAI) */ + [0xe03, 0xe03], /* THAI CHARACTER KHO KHUAT (THAI LETTER KHO KHUAT) */ + [0xe04, 0xe04], /* THAI CHARACTER KHO KHWAI (THAI LETTER KHO KHWAI) */ + [0xe05, 0xe05], /* THAI CHARACTER KHO KHON (THAI LETTER KHO KHON) */ + [0xe06, 0xe06], /* THAI CHARACTER KHO RAKHANG (THAI LETTER KHO RAKHANG) */ + [0xe07, 0xe07], /* THAI CHARACTER NGO NGU (THAI LETTER NGO NGU) */ + [0xe08, 0xe08], /* THAI CHARACTER CHO CHAN (THAI LETTER CHO CHAN) */ + [0xe09, 0xe09], /* THAI CHARACTER CHO CHING (THAI LETTER CHO CHING) */ + [0xe0a, 0xe0a], /* THAI CHARACTER CHO CHANG (THAI LETTER CHO CHANG) */ + [0xe0b, 0xe0b], /* THAI CHARACTER SO SO (THAI LETTER SO SO) */ + [0xe0c, 0xe0c], /* THAI CHARACTER CHO CHOE (THAI LETTER CHO CHOE) */ + [0xe0d, 0xe0d], /* THAI CHARACTER YO YING (THAI LETTER YO YING) */ + [0xe0e, 0xe0e], /* THAI CHARACTER DO CHADA (THAI LETTER DO CHADA) */ + [0xe0f, 0xe0f], /* THAI CHARACTER TO PATAK (THAI LETTER TO PATAK) */ + [0xe10, 0xe10], /* THAI CHARACTER THO THAN (THAI LETTER THO THAN) */ + [0xe11, 0xe11], /* THAI CHARACTER THO NANGMONTHO (THAI LETTER THO NANGMONTHO) */ + [0xe12, 0xe12], /* THAI CHARACTER THO PHUTHAO (THAI LETTER THO PHUTHAO) */ + [0xe13, 0xe13], /* THAI CHARACTER NO NEN (THAI LETTER NO NEN) */ + [0xe14, 0xe14], /* THAI CHARACTER DO DEK (THAI LETTER DO DEK) */ + [0xe15, 0xe15], /* THAI CHARACTER TO TAO (THAI LETTER TO TAO) */ + [0xe16, 0xe16], /* THAI CHARACTER THO THUNG (THAI LETTER THO THUNG) */ + [0xe17, 0xe17], /* THAI CHARACTER THO THAHAN (THAI LETTER THO THAHAN) */ + [0xe18, 0xe18], /* THAI CHARACTER THO THONG (THAI LETTER THO THONG) */ + [0xe19, 0xe19], /* THAI CHARACTER NO NU (THAI LETTER NO NU) */ + [0xe1a, 0xe1a], /* THAI CHARACTER BO BAIMAI (THAI LETTER BO BAIMAI) */ + [0xe1b, 0xe1b], /* THAI CHARACTER PO PLA (THAI LETTER PO PLA) */ + [0xe1c, 0xe1c], /* THAI CHARACTER PHO PHUNG (THAI LETTER PHO PHUNG) */ + [0xe1d, 0xe1d], /* THAI CHARACTER FO FA (THAI LETTER FO FA) */ + [0xe1e, 0xe1e], /* THAI CHARACTER PHO PHAN (THAI LETTER PHO PHAN) */ + [0xe1f, 0xe1f], /* THAI CHARACTER FO FAN (THAI LETTER FO FAN) */ + [0xe20, 0xe20], /* THAI CHARACTER PHO SAMPHAO (THAI LETTER PHO SAMPHAO) */ + [0xe21, 0xe21], /* THAI CHARACTER MO MA (THAI LETTER MO MA) */ + [0xe22, 0xe22], /* THAI CHARACTER YO YAK (THAI LETTER YO YAK) */ + [0xe23, 0xe23], /* THAI CHARACTER RO RUA (THAI LETTER RO RUA) */ + [0xe24, 0xe24], /* THAI CHARACTER RU (THAI LETTER RU) */ + [0xe25, 0xe25], /* THAI CHARACTER LO LING (THAI LETTER LO LING) */ + [0xe26, 0xe26], /* THAI CHARACTER LU (THAI LETTER LU) */ + [0xe27, 0xe27], /* THAI CHARACTER WO WAEN (THAI LETTER WO WAEN) */ + [0xe28, 0xe28], /* THAI CHARACTER SO SALA (THAI LETTER SO SALA) */ + [0xe29, 0xe29], /* THAI CHARACTER SO RUSI (THAI LETTER SO RUSI) */ + [0xe2a, 0xe2a], /* THAI CHARACTER SO SUA (THAI LETTER SO SUA) */ + [0xe2b, 0xe2b], /* THAI CHARACTER HO HIP (THAI LETTER HO HIP) */ + [0xe2c, 0xe2c], /* THAI CHARACTER LO CHULA (THAI LETTER LO CHULA) */ + [0xe2d, 0xe2d], /* THAI CHARACTER O ANG (THAI LETTER O ANG) */ + [0xe2e, 0xe2e], /* THAI CHARACTER HO NOKHUK (THAI LETTER HO NOK HUK) */ + [0xe2f, 0xe2f], /* THAI CHARACTER PAIYANNOI (THAI PAI YAN NOI) */ + [0xe30, 0xe30], /* THAI CHARACTER SARA A (THAI VOWEL SIGN SARA A) */ + [0xe31, 0xe31], /* THAI CHARACTER MAI HAN-AKAT (THAI VOWEL SIGN MAI HAN-AKAT) */ + [0xe32, 0xe32], /* THAI CHARACTER SARA AA (THAI VOWEL SIGN SARA AA) */ + [0xe33, 0xe33], /* THAI CHARACTER SARA AM (THAI VOWEL SIGN SARA AM) */ + [0xe34, 0xe34], /* THAI CHARACTER SARA I (THAI VOWEL SIGN SARA I) */ + [0xe35, 0xe35], /* THAI CHARACTER SARA II (THAI VOWEL SIGN SARA II) */ + [0xe36, 0xe36], /* THAI CHARACTER SARA UE (THAI VOWEL SIGN SARA UE) */ + [0xe37, 0xe37], /* THAI CHARACTER SARA UEE (THAI VOWEL SIGN SARA UEE) */ + [0xe38, 0xe38], /* THAI CHARACTER SARA U (THAI VOWEL SIGN SARA U) */ + [0xe39, 0xe39], /* THAI CHARACTER SARA UU (THAI VOWEL SIGN SARA UU) */ + [0xe3a, 0xe3a], /* THAI CHARACTER PHINTHU (THAI VOWEL SIGN PHINTHU) */ + [0xe3b, 0xe3b], + [0xe3c, 0xe3c], + [0xe3d, 0xe3d], + [0xe3e, 0xe3e], + [0xe3f, 0xe3f], /* THAI CURRENCY SYMBOL BAHT (THAI BAHT SIGN) */ + [0xe40, 0xe40], /* THAI CHARACTER SARA E (THAI VOWEL SIGN SARA E) */ + [0xe41, 0xe41], /* THAI CHARACTER SARA AE (THAI VOWEL SIGN SARA AE) */ + [0xe42, 0xe42], /* THAI CHARACTER SARA O (THAI VOWEL SIGN SARA O) */ + [0xe43, 0xe43], /* THAI CHARACTER SARA AI MAIMUAN (THAI VOWEL SIGN SARA MAI MUAN) */ + [0xe44, 0xe44], /* THAI CHARACTER SARA AI MAIMALAI (THAI VOWEL SIGN SARA MAI MALAI) */ + [0xe45, 0xe45], /* THAI CHARACTER LAKKHANGYAO (THAI LAK KHANG YAO) */ + [0xe46, 0xe46], /* THAI CHARACTER MAIYAMOK (THAI MAI YAMOK) */ + [0xe47, 0xe47], /* THAI CHARACTER MAITAIKHU (THAI VOWEL SIGN MAI TAI KHU) */ + [0xe48, 0xe48], /* THAI CHARACTER MAI EK (THAI TONE MAI EK) */ + [0xe49, 0xe49], /* THAI CHARACTER MAI THO (THAI TONE MAI THO) */ + [0xe4a, 0xe4a], /* THAI CHARACTER MAI TRI (THAI TONE MAI TRI) */ + [0xe4b, 0xe4b], /* THAI CHARACTER MAI CHATTAWA (THAI TONE MAI CHATTAWA) */ + [0xe4c, 0xe4c], /* THAI CHARACTER THANTHAKHAT (THAI THANTHAKHAT) */ + [0xe4d, 0xe4d], /* THAI CHARACTER NIKHAHIT (THAI NIKKHAHIT) */ + [0xe4e, 0xe4e], /* THAI CHARACTER YAMAKKAN (THAI YAMAKKAN) */ + [0xe4f, 0xe4f], /* THAI CHARACTER FONGMAN (THAI FONGMAN) */ + [0xe50, 0xe50], /* THAI DIGIT ZERO */ + [0xe51, 0xe51], /* THAI DIGIT ONE */ + [0xe52, 0xe52], /* THAI DIGIT TWO */ + [0xe53, 0xe53], /* THAI DIGIT THREE */ + [0xe54, 0xe54], /* THAI DIGIT FOUR */ + [0xe55, 0xe55], /* THAI DIGIT FIVE */ + [0xe56, 0xe56], /* THAI DIGIT SIX */ + [0xe57, 0xe57], /* THAI DIGIT SEVEN */ + [0xe58, 0xe58], /* THAI DIGIT EIGHT */ + [0xe59, 0xe59], /* THAI DIGIT NINE */ + [0xe5a, 0xe5a], /* THAI CHARACTER ANGKHANKHU (THAI ANGKHANKHU) */ + [0xe5b, 0xe5b], /* THAI CHARACTER KHOMUT (THAI KHOMUT) */ + [0xe5c, 0xe5c], + [0xe5d, 0xe5d], + [0xe5e, 0xe5e], + [0xe5f, 0xe5f], + [0xe60, 0xe60], + [0xe61, 0xe61], + [0xe62, 0xe62], + [0xe63, 0xe63], + [0xe64, 0xe64], + [0xe65, 0xe65], + [0xe66, 0xe66], + [0xe67, 0xe67], + [0xe68, 0xe68], + [0xe69, 0xe69], + [0xe6a, 0xe6a], + [0xe6b, 0xe6b], + [0xe6c, 0xe6c], + [0xe6d, 0xe6d], + [0xe6e, 0xe6e], + [0xe6f, 0xe6f], + [0xe70, 0xe70], + [0xe71, 0xe71], + [0xe72, 0xe72], + [0xe73, 0xe73], + [0xe74, 0xe74], + [0xe75, 0xe75], + [0xe76, 0xe76], + [0xe77, 0xe77], + [0xe78, 0xe78], + [0xe79, 0xe79], + [0xe7a, 0xe7a], + [0xe7b, 0xe7b], + [0xe7c, 0xe7c], + [0xe7d, 0xe7d], + [0xe7e, 0xe7e], + [0xe7f, 0xe7f], + [0xe80, 0xe80], + [0xe81, 0xe81], /* LAO LETTER KO */ + [0xe82, 0xe82], /* LAO LETTER KHO SUNG */ + [0xe83, 0xe83], + [0xe84, 0xe84], /* LAO LETTER KHO TAM */ + [0xe85, 0xe85], + [0xe86, 0xe86], + [0xe87, 0xe87], /* LAO LETTER NGO */ + [0xe88, 0xe88], /* LAO LETTER CO */ + [0xe89, 0xe89], + [0xe8a, 0xe8a], /* LAO LETTER SO TAM */ + [0xe8b, 0xe8b], + [0xe8c, 0xe8c], + [0xe8d, 0xe8d], /* LAO LETTER NYO */ + [0xe8e, 0xe8e], + [0xe8f, 0xe8f], + [0xe90, 0xe90], + [0xe91, 0xe91], + [0xe92, 0xe92], + [0xe93, 0xe93], + [0xe94, 0xe94], /* LAO LETTER DO */ + [0xe95, 0xe95], /* LAO LETTER TO */ + [0xe96, 0xe96], /* LAO LETTER THO SUNG */ + [0xe97, 0xe97], /* LAO LETTER THO TAM */ + [0xe98, 0xe98], + [0xe99, 0xe99], /* LAO LETTER NO */ + [0xe9a, 0xe9a], /* LAO LETTER BO */ + [0xe9b, 0xe9b], /* LAO LETTER PO */ + [0xe9c, 0xe9c], /* LAO LETTER PHO SUNG */ + [0xe9d, 0xe9d], /* LAO LETTER FO TAM */ + [0xe9e, 0xe9e], /* LAO LETTER PHO TAM */ + [0xe9f, 0xe9f], /* LAO LETTER FO SUNG */ + [0xea0, 0xea0], + [0xea1, 0xea1], /* LAO LETTER MO */ + [0xea2, 0xea2], /* LAO LETTER YO */ + [0xea3, 0xea3], /* LAO LETTER LO LING */ + [0xea4, 0xea4], + [0xea5, 0xea5], /* LAO LETTER LO LOOT */ + [0xea6, 0xea6], + [0xea7, 0xea7], /* LAO LETTER WO */ + [0xea8, 0xea8], + [0xea9, 0xea9], + [0xeaa, 0xeaa], /* LAO LETTER SO SUNG */ + [0xeab, 0xeab], /* LAO LETTER HO SUNG */ + [0xeac, 0xeac], + [0xead, 0xead], /* LAO LETTER O */ + [0xeae, 0xeae], /* LAO LETTER HO TAM */ + [0xeaf, 0xeaf], /* LAO ELLIPSIS */ + [0xeb0, 0xeb0], /* LAO VOWEL SIGN A */ + [0xeb1, 0xeb1], /* LAO VOWEL SIGN MAI KAN */ + [0xeb2, 0xeb2], /* LAO VOWEL SIGN AA */ + [0xeb3, 0xeb3], /* LAO VOWEL SIGN AM */ + [0xeb4, 0xeb4], /* LAO VOWEL SIGN I */ + [0xeb5, 0xeb5], /* LAO VOWEL SIGN II */ + [0xeb6, 0xeb6], /* LAO VOWEL SIGN Y */ + [0xeb7, 0xeb7], /* LAO VOWEL SIGN YY */ + [0xeb8, 0xeb8], /* LAO VOWEL SIGN U */ + [0xeb9, 0xeb9], /* LAO VOWEL SIGN UU */ + [0xeba, 0xeba], + [0xebb, 0xebb], /* LAO VOWEL SIGN MAI KON */ + [0xebc, 0xebc], /* LAO SEMIVOWEL SIGN LO */ + [0xebd, 0xebd], /* LAO SEMIVOWEL SIGN NYO */ + [0xebe, 0xebe], + [0xebf, 0xebf], + [0xec0, 0xec0], /* LAO VOWEL SIGN E */ + [0xec1, 0xec1], /* LAO VOWEL SIGN EI */ + [0xec2, 0xec2], /* LAO VOWEL SIGN O */ + [0xec3, 0xec3], /* LAO VOWEL SIGN AY */ + [0xec4, 0xec4], /* LAO VOWEL SIGN AI */ + [0xec5, 0xec5], + [0xec6, 0xec6], /* LAO KO LA */ + [0xec7, 0xec7], + [0xec8, 0xec8], /* LAO TONE MAI EK */ + [0xec9, 0xec9], /* LAO TONE MAI THO */ + [0xeca, 0xeca], /* LAO TONE MAI TI */ + [0xecb, 0xecb], /* LAO TONE MAI CATAWA */ + [0xecc, 0xecc], /* LAO CANCELLATION MARK */ + [0xecd, 0xecd], /* LAO NIGGAHITA */ + [0xece, 0xece], + [0xecf, 0xecf], + [0xed0, 0xed0], /* LAO DIGIT ZERO */ + [0xed1, 0xed1], /* LAO DIGIT ONE */ + [0xed2, 0xed2], /* LAO DIGIT TWO */ + [0xed3, 0xed3], /* LAO DIGIT THREE */ + [0xed4, 0xed4], /* LAO DIGIT FOUR */ + [0xed5, 0xed5], /* LAO DIGIT FIVE */ + [0xed6, 0xed6], /* LAO DIGIT SIX */ + [0xed7, 0xed7], /* LAO DIGIT SEVEN */ + [0xed8, 0xed8], /* LAO DIGIT EIGHT */ + [0xed9, 0xed9], /* LAO DIGIT NINE */ + [0xeda, 0xeda], + [0xedb, 0xedb], + [0xedc, 0xedc], /* LAO HO NO */ + [0xedd, 0xedd], /* LAO HO MO */ + [0xede, 0xede], /* LAO LETTER KHMU GO */ + [0xedf, 0xedf], /* LAO LETTER KHMU NYO */ + [0xee0, 0xee0], + [0xee1, 0xee1], + [0xee2, 0xee2], + [0xee3, 0xee3], + [0xee4, 0xee4], + [0xee5, 0xee5], + [0xee6, 0xee6], + [0xee7, 0xee7], + [0xee8, 0xee8], + [0xee9, 0xee9], + [0xeea, 0xeea], + [0xeeb, 0xeeb], + [0xeec, 0xeec], + [0xeed, 0xeed], + [0xeee, 0xeee], + [0xeef, 0xeef], + [0xef0, 0xef0], + [0xef1, 0xef1], + [0xef2, 0xef2], + [0xef3, 0xef3], + [0xef4, 0xef4], + [0xef5, 0xef5], + [0xef6, 0xef6], + [0xef7, 0xef7], + [0xef8, 0xef8], + [0xef9, 0xef9], + [0xefa, 0xefa], + [0xefb, 0xefb], + [0xefc, 0xefc], + [0xefd, 0xefd], + [0xefe, 0xefe], + [0xeff, 0xeff], + [0xf00, 0xf00], /* TIBETAN SYLLABLE OM */ + [0xf01, 0xf01], /* TIBETAN MARK GTER YIG MGO TRUNCATED A */ + [0xf02, 0xf02], /* TIBETAN MARK GTER YIG MGO -UM RNAM BCAD MA */ + [0xf03, 0xf03], /* TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA */ + [0xf04, 0xf04], /* TIBETAN MARK INITIAL YIG MGO MDUN MA (TIBETAN SINGLE ORNAMENT) */ + [0xf05, 0xf05], /* TIBETAN MARK CLOSING YIG MGO SGAB MA */ + [0xf06, 0xf06], /* TIBETAN MARK CARET YIG MGO PHUR SHAD MA */ + [0xf07, 0xf07], /* TIBETAN MARK YIG MGO TSHEG SHAD MA */ + [0xf08, 0xf08], /* TIBETAN MARK SBRUL SHAD (TIBETAN RGYANSHAD) */ + [0xf09, 0xf09], /* TIBETAN MARK BSKUR YIG MGO */ + [0xf0a, 0xf0a], /* TIBETAN MARK BKA- SHOG YIG MGO */ + [0xf0b, 0xf0b], /* TIBETAN MARK INTERSYLLABIC TSHEG (TIBETAN TSEG) */ + [0xf0c, 0xf0c], /* TIBETAN MARK DELIMITER TSHEG BSTAR */ + [0xf0d, 0xf0d], /* TIBETAN MARK SHAD (TIBETAN SHAD) */ + [0xf0e, 0xf0e], /* TIBETAN MARK NYIS SHAD (TIBETAN DOUBLE SHAD) */ + [0xf0f, 0xf0f], /* TIBETAN MARK TSHEG SHAD */ + [0xf10, 0xf10], /* TIBETAN MARK NYIS TSHEG SHAD */ + [0xf11, 0xf11], /* TIBETAN MARK RIN CHEN SPUNGS SHAD (TIBETAN RINCHANPHUNGSHAD) */ + [0xf12, 0xf12], /* TIBETAN MARK RGYA GRAM SHAD */ + [0xf13, 0xf13], /* TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN */ + [0xf14, 0xf14], /* TIBETAN MARK GTER TSHEG (TIBETAN COMMA) */ + [0xf15, 0xf15], /* TIBETAN LOGOTYPE SIGN CHAD RTAGS */ + [0xf16, 0xf16], /* TIBETAN LOGOTYPE SIGN LHAG RTAGS */ + [0xf17, 0xf17], /* TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS */ + [0xf18, 0xf18], /* TIBETAN ASTROLOGICAL SIGN -KHYUD PA */ + [0xf19, 0xf19], /* TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS */ + [0xf1a, 0xf1a], /* TIBETAN SIGN RDEL DKAR GCIG */ + [0xf1b, 0xf1b], /* TIBETAN SIGN RDEL DKAR GNYIS */ + [0xf1c, 0xf1c], /* TIBETAN SIGN RDEL DKAR GSUM */ + [0xf1d, 0xf1d], /* TIBETAN SIGN RDEL NAG GCIG */ + [0xf1e, 0xf1e], /* TIBETAN SIGN RDEL NAG GNYIS */ + [0xf1f, 0xf1f], /* TIBETAN SIGN RDEL DKAR RDEL NAG */ + [0xf20, 0xf20], /* TIBETAN DIGIT ZERO */ + [0xf21, 0xf21], /* TIBETAN DIGIT ONE */ + [0xf22, 0xf22], /* TIBETAN DIGIT TWO */ + [0xf23, 0xf23], /* TIBETAN DIGIT THREE */ + [0xf24, 0xf24], /* TIBETAN DIGIT FOUR */ + [0xf25, 0xf25], /* TIBETAN DIGIT FIVE */ + [0xf26, 0xf26], /* TIBETAN DIGIT SIX */ + [0xf27, 0xf27], /* TIBETAN DIGIT SEVEN */ + [0xf28, 0xf28], /* TIBETAN DIGIT EIGHT */ + [0xf29, 0xf29], /* TIBETAN DIGIT NINE */ + [0xf2a, 0xf2a], /* TIBETAN DIGIT HALF ONE */ + [0xf2b, 0xf2b], /* TIBETAN DIGIT HALF TWO */ + [0xf2c, 0xf2c], /* TIBETAN DIGIT HALF THREE */ + [0xf2d, 0xf2d], /* TIBETAN DIGIT HALF FOUR */ + [0xf2e, 0xf2e], /* TIBETAN DIGIT HALF FIVE */ + [0xf2f, 0xf2f], /* TIBETAN DIGIT HALF SIX */ + [0xf30, 0xf30], /* TIBETAN DIGIT HALF SEVEN */ + [0xf31, 0xf31], /* TIBETAN DIGIT HALF EIGHT */ + [0xf32, 0xf32], /* TIBETAN DIGIT HALF NINE */ + [0xf33, 0xf33], /* TIBETAN DIGIT HALF ZERO */ + [0xf34, 0xf34], /* TIBETAN MARK BSDUS RTAGS */ + [0xf35, 0xf35], /* TIBETAN MARK NGAS BZUNG NYI ZLA (TIBETAN HONORIFIC UNDER RING) */ + [0xf36, 0xf36], /* TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN */ + [0xf37, 0xf37], /* TIBETAN MARK NGAS BZUNG SGOR RTAGS (TIBETAN UNDER RING) */ + [0xf38, 0xf38], /* TIBETAN MARK CHE MGO */ + [0xf39, 0xf39], /* TIBETAN MARK TSA -PHRU (TIBETAN LENITION MARK) */ + [0xf3a, 0xf3a], /* TIBETAN MARK GUG RTAGS GYON */ + [0xf3b, 0xf3b], /* TIBETAN MARK GUG RTAGS GYAS */ + [0xf3c, 0xf3c], /* TIBETAN MARK ANG KHANG GYON (TIBETAN LEFT BRACE) */ + [0xf3d, 0xf3d], /* TIBETAN MARK ANG KHANG GYAS (TIBETAN RIGHT BRACE) */ + [0xf3e, 0xf3e], /* TIBETAN SIGN YAR TSHES */ + [0xf3f, 0xf3f], /* TIBETAN SIGN MAR TSHES */ + [0xf40, 0xf40], /* TIBETAN LETTER KA */ + [0xf41, 0xf41], /* TIBETAN LETTER KHA */ + [0xf42, 0xf42], /* TIBETAN LETTER GA */ + [0xf43, 0xf43], /* TIBETAN LETTER GHA */ + [0xf44, 0xf44], /* TIBETAN LETTER NGA */ + [0xf45, 0xf45], /* TIBETAN LETTER CA */ + [0xf46, 0xf46], /* TIBETAN LETTER CHA */ + [0xf47, 0xf47], /* TIBETAN LETTER JA */ + [0xf48, 0xf48], + [0xf49, 0xf49], /* TIBETAN LETTER NYA */ + [0xf4a, 0xf4a], /* TIBETAN LETTER TTA (TIBETAN LETTER REVERSED TA) */ + [0xf4b, 0xf4b], /* TIBETAN LETTER TTHA (TIBETAN LETTER REVERSED THA) */ + [0xf4c, 0xf4c], /* TIBETAN LETTER DDA (TIBETAN LETTER REVERSED DA) */ + [0xf4d, 0xf4d], /* TIBETAN LETTER DDHA */ + [0xf4e, 0xf4e], /* TIBETAN LETTER NNA (TIBETAN LETTER REVERSED NA) */ + [0xf4f, 0xf4f], /* TIBETAN LETTER TA */ + [0xf50, 0xf50], /* TIBETAN LETTER THA */ + [0xf51, 0xf51], /* TIBETAN LETTER DA */ + [0xf52, 0xf52], /* TIBETAN LETTER DHA */ + [0xf53, 0xf53], /* TIBETAN LETTER NA */ + [0xf54, 0xf54], /* TIBETAN LETTER PA */ + [0xf55, 0xf55], /* TIBETAN LETTER PHA */ + [0xf56, 0xf56], /* TIBETAN LETTER BA */ + [0xf57, 0xf57], /* TIBETAN LETTER BHA */ + [0xf58, 0xf58], /* TIBETAN LETTER MA */ + [0xf59, 0xf59], /* TIBETAN LETTER TSA */ + [0xf5a, 0xf5a], /* TIBETAN LETTER TSHA */ + [0xf5b, 0xf5b], /* TIBETAN LETTER DZA */ + [0xf5c, 0xf5c], /* TIBETAN LETTER DZHA */ + [0xf5d, 0xf5d], /* TIBETAN LETTER WA */ + [0xf5e, 0xf5e], /* TIBETAN LETTER ZHA */ + [0xf5f, 0xf5f], /* TIBETAN LETTER ZA */ + [0xf60, 0xf60], /* TIBETAN LETTER -A (TIBETAN LETTER AA) */ + [0xf61, 0xf61], /* TIBETAN LETTER YA */ + [0xf62, 0xf62], /* TIBETAN LETTER RA */ + [0xf63, 0xf63], /* TIBETAN LETTER LA */ + [0xf64, 0xf64], /* TIBETAN LETTER SHA */ + [0xf65, 0xf65], /* TIBETAN LETTER SSA (TIBETAN LETTER REVERSED SHA) */ + [0xf66, 0xf66], /* TIBETAN LETTER SA */ + [0xf67, 0xf67], /* TIBETAN LETTER HA */ + [0xf68, 0xf68], /* TIBETAN LETTER A */ + [0xf69, 0xf69], /* TIBETAN LETTER KSSA */ + [0xf6a, 0xf6a], /* TIBETAN LETTER FIXED-FORM RA */ + [0xf6b, 0xf6b], /* TIBETAN LETTER KKA */ + [0xf6c, 0xf6c], /* TIBETAN LETTER RRA */ + [0xf6d, 0xf6d], + [0xf6e, 0xf6e], + [0xf6f, 0xf6f], + [0xf70, 0xf70], + [0xf71, 0xf71], /* TIBETAN VOWEL SIGN AA */ + [0xf72, 0xf72], /* TIBETAN VOWEL SIGN I */ + [0xf73, 0xf73], /* TIBETAN VOWEL SIGN II */ + [0xf74, 0xf74], /* TIBETAN VOWEL SIGN U */ + [0xf75, 0xf75], /* TIBETAN VOWEL SIGN UU */ + [0xf76, 0xf76], /* TIBETAN VOWEL SIGN VOCALIC R */ + [0xf77, 0xf77], /* TIBETAN VOWEL SIGN VOCALIC RR */ + [0xf78, 0xf78], /* TIBETAN VOWEL SIGN VOCALIC L */ + [0xf79, 0xf79], /* TIBETAN VOWEL SIGN VOCALIC LL */ + [0xf7a, 0xf7a], /* TIBETAN VOWEL SIGN E */ + [0xf7b, 0xf7b], /* TIBETAN VOWEL SIGN EE (TIBETAN VOWEL SIGN AI) */ + [0xf7c, 0xf7c], /* TIBETAN VOWEL SIGN O */ + [0xf7d, 0xf7d], /* TIBETAN VOWEL SIGN OO (TIBETAN VOWEL SIGN AU) */ + [0xf7e, 0xf7e], /* TIBETAN SIGN RJES SU NGA RO (TIBETAN ANUSVARA) */ + [0xf7f, 0xf7f], /* TIBETAN SIGN RNAM BCAD (TIBETAN VISARGA) */ + [0xf80, 0xf80], /* TIBETAN VOWEL SIGN REVERSED I (TIBETAN VOWEL SIGN SHORT I) */ + [0xf81, 0xf81], /* TIBETAN VOWEL SIGN REVERSED II */ + [0xf82, 0xf82], /* TIBETAN SIGN NYI ZLA NAA DA (TIBETAN CANDRABINDU WITH ORNAMENT) */ + [0xf83, 0xf83], /* TIBETAN SIGN SNA LDAN (TIBETAN CANDRABINDU) */ + [0xf84, 0xf84], /* TIBETAN MARK HALANTA (TIBETAN VIRAMA) */ + [0xf85, 0xf85], /* TIBETAN MARK PALUTA (TIBETAN CHUCHENYIGE) */ + [0xf86, 0xf86], /* TIBETAN SIGN LCI RTAGS */ + [0xf87, 0xf87], /* TIBETAN SIGN YANG RTAGS */ + [0xf88, 0xf88], /* TIBETAN SIGN LCE TSA CAN */ + [0xf89, 0xf89], /* TIBETAN SIGN MCHU CAN */ + [0xf8a, 0xf8a], /* TIBETAN SIGN GRU CAN RGYINGS */ + [0xf8b, 0xf8b], /* TIBETAN SIGN GRU MED RGYINGS */ + [0xf8c, 0xf8c], /* TIBETAN SIGN INVERTED MCHU CAN */ + [0xf8d, 0xf8d], /* TIBETAN SUBJOINED SIGN LCE TSA CAN */ + [0xf8e, 0xf8e], /* TIBETAN SUBJOINED SIGN MCHU CAN */ + [0xf8f, 0xf8f], /* TIBETAN SUBJOINED SIGN INVERTED MCHU CAN */ + [0xf90, 0xf90], /* TIBETAN SUBJOINED LETTER KA */ + [0xf91, 0xf91], /* TIBETAN SUBJOINED LETTER KHA */ + [0xf92, 0xf92], /* TIBETAN SUBJOINED LETTER GA */ + [0xf93, 0xf93], /* TIBETAN SUBJOINED LETTER GHA */ + [0xf94, 0xf94], /* TIBETAN SUBJOINED LETTER NGA */ + [0xf95, 0xf95], /* TIBETAN SUBJOINED LETTER CA */ + [0xf96, 0xf96], /* TIBETAN SUBJOINED LETTER CHA */ + [0xf97, 0xf97], /* TIBETAN SUBJOINED LETTER JA */ + [0xf98, 0xf98], + [0xf99, 0xf99], /* TIBETAN SUBJOINED LETTER NYA */ + [0xf9a, 0xf9a], /* TIBETAN SUBJOINED LETTER TTA */ + [0xf9b, 0xf9b], /* TIBETAN SUBJOINED LETTER TTHA */ + [0xf9c, 0xf9c], /* TIBETAN SUBJOINED LETTER DDA */ + [0xf9d, 0xf9d], /* TIBETAN SUBJOINED LETTER DDHA */ + [0xf9e, 0xf9e], /* TIBETAN SUBJOINED LETTER NNA */ + [0xf9f, 0xf9f], /* TIBETAN SUBJOINED LETTER TA */ + [0xfa0, 0xfa0], /* TIBETAN SUBJOINED LETTER THA */ + [0xfa1, 0xfa1], /* TIBETAN SUBJOINED LETTER DA */ + [0xfa2, 0xfa2], /* TIBETAN SUBJOINED LETTER DHA */ + [0xfa3, 0xfa3], /* TIBETAN SUBJOINED LETTER NA */ + [0xfa4, 0xfa4], /* TIBETAN SUBJOINED LETTER PA */ + [0xfa5, 0xfa5], /* TIBETAN SUBJOINED LETTER PHA */ + [0xfa6, 0xfa6], /* TIBETAN SUBJOINED LETTER BA */ + [0xfa7, 0xfa7], /* TIBETAN SUBJOINED LETTER BHA */ + [0xfa8, 0xfa8], /* TIBETAN SUBJOINED LETTER MA */ + [0xfa9, 0xfa9], /* TIBETAN SUBJOINED LETTER TSA */ + [0xfaa, 0xfaa], /* TIBETAN SUBJOINED LETTER TSHA */ + [0xfab, 0xfab], /* TIBETAN SUBJOINED LETTER DZA */ + [0xfac, 0xfac], /* TIBETAN SUBJOINED LETTER DZHA */ + [0xfad, 0xfad], /* TIBETAN SUBJOINED LETTER WA */ + [0xfae, 0xfae], /* TIBETAN SUBJOINED LETTER ZHA */ + [0xfaf, 0xfaf], /* TIBETAN SUBJOINED LETTER ZA */ + [0xfb0, 0xfb0], /* TIBETAN SUBJOINED LETTER -A */ + [0xfb1, 0xfb1], /* TIBETAN SUBJOINED LETTER YA */ + [0xfb2, 0xfb2], /* TIBETAN SUBJOINED LETTER RA */ + [0xfb3, 0xfb3], /* TIBETAN SUBJOINED LETTER LA */ + [0xfb4, 0xfb4], /* TIBETAN SUBJOINED LETTER SHA */ + [0xfb5, 0xfb5], /* TIBETAN SUBJOINED LETTER SSA */ + [0xfb6, 0xfb6], /* TIBETAN SUBJOINED LETTER SA */ + [0xfb7, 0xfb7], /* TIBETAN SUBJOINED LETTER HA */ + [0xfb8, 0xfb8], /* TIBETAN SUBJOINED LETTER A */ + [0xfb9, 0xfb9], /* TIBETAN SUBJOINED LETTER KSSA */ + [0xfba, 0xfba], /* TIBETAN SUBJOINED LETTER FIXED-FORM WA */ + [0xfbb, 0xfbb], /* TIBETAN SUBJOINED LETTER FIXED-FORM YA */ + [0xfbc, 0xfbc], /* TIBETAN SUBJOINED LETTER FIXED-FORM RA */ + [0xfbd, 0xfbd], + [0xfbe, 0xfbe], /* TIBETAN KU RU KHA */ + [0xfbf, 0xfbf], /* TIBETAN KU RU KHA BZHI MIG CAN */ + [0xfc0, 0xfc0], /* TIBETAN CANTILLATION SIGN HEAVY BEAT */ + [0xfc1, 0xfc1], /* TIBETAN CANTILLATION SIGN LIGHT BEAT */ + [0xfc2, 0xfc2], /* TIBETAN CANTILLATION SIGN CANG TE-U */ + [0xfc3, 0xfc3], /* TIBETAN CANTILLATION SIGN SBUB -CHAL */ + [0xfc4, 0xfc4], /* TIBETAN SYMBOL DRIL BU */ + [0xfc5, 0xfc5], /* TIBETAN SYMBOL RDO RJE */ + [0xfc6, 0xfc6], /* TIBETAN SYMBOL PADMA GDAN */ + [0xfc7, 0xfc7], /* TIBETAN SYMBOL RDO RJE RGYA GRAM */ + [0xfc8, 0xfc8], /* TIBETAN SYMBOL PHUR PA */ + [0xfc9, 0xfc9], /* TIBETAN SYMBOL NOR BU */ + [0xfca, 0xfca], /* TIBETAN SYMBOL NOR BU NYIS -KHYIL */ + [0xfcb, 0xfcb], /* TIBETAN SYMBOL NOR BU GSUM -KHYIL */ + [0xfcc, 0xfcc], /* TIBETAN SYMBOL NOR BU BZHI -KHYIL */ + [0xfcd, 0xfcd], + [0xfce, 0xfce], /* TIBETAN SIGN RDEL NAG RDEL DKAR */ + [0xfcf, 0xfcf], /* TIBETAN SIGN RDEL NAG GSUM */ + [0xfd0, 0xfd0], /* TIBETAN MARK BSKA- SHOG GI MGO RGYAN */ + [0xfd1, 0xfd1], /* TIBETAN MARK MNYAM YIG GI MGO RGYAN */ + [0xfd2, 0xfd2], /* TIBETAN MARK NYIS TSHEG */ + [0xfd3, 0xfd3], /* TIBETAN MARK INITIAL BRDA RNYING YIG MGO MDUN MA */ + [0xfd4, 0xfd4], /* TIBETAN MARK CLOSING BRDA RNYING YIG MGO SGAB MA */ + [0xfd5, 0xfd5], /* RIGHT-FACING SVASTI SIGN */ + [0xfd6, 0xfd6], /* LEFT-FACING SVASTI SIGN */ + [0xfd7, 0xfd7], /* RIGHT-FACING SVASTI SIGN WITH DOTS */ + [0xfd8, 0xfd8], /* LEFT-FACING SVASTI SIGN WITH DOTS */ + [0xfd9, 0xfd9], /* TIBETAN MARK LEADING MCHAN RTAGS */ + [0xfda, 0xfda], /* TIBETAN MARK TRAILING MCHAN RTAGS */ + [0xfdb, 0xfdb], + [0xfdc, 0xfdc], + [0xfdd, 0xfdd], + [0xfde, 0xfde], + [0xfdf, 0xfdf], + [0xfe0, 0xfe0], + [0xfe1, 0xfe1], + [0xfe2, 0xfe2], + [0xfe3, 0xfe3], + [0xfe4, 0xfe4], + [0xfe5, 0xfe5], + [0xfe6, 0xfe6], + [0xfe7, 0xfe7], + [0xfe8, 0xfe8], + [0xfe9, 0xfe9], + [0xfea, 0xfea], + [0xfeb, 0xfeb], + [0xfec, 0xfec], + [0xfed, 0xfed], + [0xfee, 0xfee], + [0xfef, 0xfef], + [0xff0, 0xff0], + [0xff1, 0xff1], + [0xff2, 0xff2], + [0xff3, 0xff3], + [0xff4, 0xff4], + [0xff5, 0xff5], + [0xff6, 0xff6], + [0xff7, 0xff7], + [0xff8, 0xff8], + [0xff9, 0xff9], + [0xffa, 0xffa], + [0xffb, 0xffb], + [0xffc, 0xffc], + [0xffd, 0xffd], + [0xffe, 0xffe], + [0xfff, 0xfff], + [0x1000, 0x1000], /* MYANMAR LETTER KA */ + [0x1001, 0x1001], /* MYANMAR LETTER KHA */ + [0x1002, 0x1002], /* MYANMAR LETTER GA */ + [0x1003, 0x1003], /* MYANMAR LETTER GHA */ + [0x1004, 0x1004], /* MYANMAR LETTER NGA */ + [0x1005, 0x1005], /* MYANMAR LETTER CA */ + [0x1006, 0x1006], /* MYANMAR LETTER CHA */ + [0x1007, 0x1007], /* MYANMAR LETTER JA */ + [0x1008, 0x1008], /* MYANMAR LETTER JHA */ + [0x1009, 0x1009], /* MYANMAR LETTER NYA */ + [0x100a, 0x100a], /* MYANMAR LETTER NNYA */ + [0x100b, 0x100b], /* MYANMAR LETTER TTA */ + [0x100c, 0x100c], /* MYANMAR LETTER TTHA */ + [0x100d, 0x100d], /* MYANMAR LETTER DDA */ + [0x100e, 0x100e], /* MYANMAR LETTER DDHA */ + [0x100f, 0x100f], /* MYANMAR LETTER NNA */ + [0x1010, 0x1010], /* MYANMAR LETTER TA */ + [0x1011, 0x1011], /* MYANMAR LETTER THA */ + [0x1012, 0x1012], /* MYANMAR LETTER DA */ + [0x1013, 0x1013], /* MYANMAR LETTER DHA */ + [0x1014, 0x1014], /* MYANMAR LETTER NA */ + [0x1015, 0x1015], /* MYANMAR LETTER PA */ + [0x1016, 0x1016], /* MYANMAR LETTER PHA */ + [0x1017, 0x1017], /* MYANMAR LETTER BA */ + [0x1018, 0x1018], /* MYANMAR LETTER BHA */ + [0x1019, 0x1019], /* MYANMAR LETTER MA */ + [0x101a, 0x101a], /* MYANMAR LETTER YA */ + [0x101b, 0x101b], /* MYANMAR LETTER RA */ + [0x101c, 0x101c], /* MYANMAR LETTER LA */ + [0x101d, 0x101d], /* MYANMAR LETTER WA */ + [0x101e, 0x101e], /* MYANMAR LETTER SA */ + [0x101f, 0x101f], /* MYANMAR LETTER HA */ + [0x1020, 0x1020], /* MYANMAR LETTER LLA */ + [0x1021, 0x1021], /* MYANMAR LETTER A */ + [0x1022, 0x1022], /* MYANMAR LETTER SHAN A */ + [0x1023, 0x1023], /* MYANMAR LETTER I */ + [0x1024, 0x1024], /* MYANMAR LETTER II */ + [0x1025, 0x1025], /* MYANMAR LETTER U */ + [0x1026, 0x1026], /* MYANMAR LETTER UU */ + [0x1027, 0x1027], /* MYANMAR LETTER E */ + [0x1028, 0x1028], /* MYANMAR LETTER MON E */ + [0x1029, 0x1029], /* MYANMAR LETTER O */ + [0x102a, 0x102a], /* MYANMAR LETTER AU */ + [0x102b, 0x102b], /* MYANMAR VOWEL SIGN TALL AA */ + [0x102c, 0x102c], /* MYANMAR VOWEL SIGN AA */ + [0x102d, 0x102d], /* MYANMAR VOWEL SIGN I */ + [0x102e, 0x102e], /* MYANMAR VOWEL SIGN II */ + [0x102f, 0x102f], /* MYANMAR VOWEL SIGN U */ + [0x1030, 0x1030], /* MYANMAR VOWEL SIGN UU */ + [0x1031, 0x1031], /* MYANMAR VOWEL SIGN E */ + [0x1032, 0x1032], /* MYANMAR VOWEL SIGN AI */ + [0x1033, 0x1033], /* MYANMAR VOWEL SIGN MON II */ + [0x1034, 0x1034], /* MYANMAR VOWEL SIGN MON O */ + [0x1035, 0x1035], /* MYANMAR VOWEL SIGN E ABOVE */ + [0x1036, 0x1036], /* MYANMAR SIGN ANUSVARA */ + [0x1037, 0x1037], /* MYANMAR SIGN DOT BELOW */ + [0x1038, 0x1038], /* MYANMAR SIGN VISARGA */ + [0x1039, 0x1039], /* MYANMAR SIGN VIRAMA */ + [0x103a, 0x103a], /* MYANMAR SIGN ASAT */ + [0x103b, 0x103b], /* MYANMAR CONSONANT SIGN MEDIAL YA */ + [0x103c, 0x103c], /* MYANMAR CONSONANT SIGN MEDIAL RA */ + [0x103d, 0x103d], /* MYANMAR CONSONANT SIGN MEDIAL WA */ + [0x103e, 0x103e], /* MYANMAR CONSONANT SIGN MEDIAL HA */ + [0x103f, 0x103f], /* MYANMAR LETTER GREAT SA */ + [0x1040, 0x1040], /* MYANMAR DIGIT ZERO */ + [0x1041, 0x1041], /* MYANMAR DIGIT ONE */ + [0x1042, 0x1042], /* MYANMAR DIGIT TWO */ + [0x1043, 0x1043], /* MYANMAR DIGIT THREE */ + [0x1044, 0x1044], /* MYANMAR DIGIT FOUR */ + [0x1045, 0x1045], /* MYANMAR DIGIT FIVE */ + [0x1046, 0x1046], /* MYANMAR DIGIT SIX */ + [0x1047, 0x1047], /* MYANMAR DIGIT SEVEN */ + [0x1048, 0x1048], /* MYANMAR DIGIT EIGHT */ + [0x1049, 0x1049], /* MYANMAR DIGIT NINE */ + [0x104a, 0x104a], /* MYANMAR SIGN LITTLE SECTION */ + [0x104b, 0x104b], /* MYANMAR SIGN SECTION */ + [0x104c, 0x104c], /* MYANMAR SYMBOL LOCATIVE */ + [0x104d, 0x104d], /* MYANMAR SYMBOL COMPLETED */ + [0x104e, 0x104e], /* MYANMAR SYMBOL AFOREMENTIONED */ + [0x104f, 0x104f], /* MYANMAR SYMBOL GENITIVE */ + [0x1050, 0x1050], /* MYANMAR LETTER SHA */ + [0x1051, 0x1051], /* MYANMAR LETTER SSA */ + [0x1052, 0x1052], /* MYANMAR LETTER VOCALIC R */ + [0x1053, 0x1053], /* MYANMAR LETTER VOCALIC RR */ + [0x1054, 0x1054], /* MYANMAR LETTER VOCALIC L */ + [0x1055, 0x1055], /* MYANMAR LETTER VOCALIC LL */ + [0x1056, 0x1056], /* MYANMAR VOWEL SIGN VOCALIC R */ + [0x1057, 0x1057], /* MYANMAR VOWEL SIGN VOCALIC RR */ + [0x1058, 0x1058], /* MYANMAR VOWEL SIGN VOCALIC L */ + [0x1059, 0x1059], /* MYANMAR VOWEL SIGN VOCALIC LL */ + [0x105a, 0x105a], /* MYANMAR LETTER MON NGA */ + [0x105b, 0x105b], /* MYANMAR LETTER MON JHA */ + [0x105c, 0x105c], /* MYANMAR LETTER MON BBA */ + [0x105d, 0x105d], /* MYANMAR LETTER MON BBE */ + [0x105e, 0x105e], /* MYANMAR CONSONANT SIGN MON MEDIAL NA */ + [0x105f, 0x105f], /* MYANMAR CONSONANT SIGN MON MEDIAL MA */ + [0x1060, 0x1060], /* MYANMAR CONSONANT SIGN MON MEDIAL LA */ + [0x1061, 0x1061], /* MYANMAR LETTER SGAW KAREN SHA */ + [0x1062, 0x1062], /* MYANMAR VOWEL SIGN SGAW KAREN EU */ + [0x1063, 0x1063], /* MYANMAR TONE MARK SGAW KAREN HATHI */ + [0x1064, 0x1064], /* MYANMAR TONE MARK SGAW KAREN KE PHO */ + [0x1065, 0x1065], /* MYANMAR LETTER WESTERN PWO KAREN THA */ + [0x1066, 0x1066], /* MYANMAR LETTER WESTERN PWO KAREN PWA */ + [0x1067, 0x1067], /* MYANMAR VOWEL SIGN WESTERN PWO KAREN EU */ + [0x1068, 0x1068], /* MYANMAR VOWEL SIGN WESTERN PWO KAREN UE */ + [0x1069, 0x1069], /* MYANMAR SIGN WESTERN PWO KAREN TONE-1 */ + [0x106a, 0x106a], /* MYANMAR SIGN WESTERN PWO KAREN TONE-2 */ + [0x106b, 0x106b], /* MYANMAR SIGN WESTERN PWO KAREN TONE-3 */ + [0x106c, 0x106c], /* MYANMAR SIGN WESTERN PWO KAREN TONE-4 */ + [0x106d, 0x106d], /* MYANMAR SIGN WESTERN PWO KAREN TONE-5 */ + [0x106e, 0x106e], /* MYANMAR LETTER EASTERN PWO KAREN NNA */ + [0x106f, 0x106f], /* MYANMAR LETTER EASTERN PWO KAREN YWA */ + [0x1070, 0x1070], /* MYANMAR LETTER EASTERN PWO KAREN GHWA */ + [0x1071, 0x1071], /* MYANMAR VOWEL SIGN GEBA KAREN I */ + [0x1072, 0x1072], /* MYANMAR VOWEL SIGN KAYAH OE */ + [0x1073, 0x1073], /* MYANMAR VOWEL SIGN KAYAH U */ + [0x1074, 0x1074], /* MYANMAR VOWEL SIGN KAYAH EE */ + [0x1075, 0x1075], /* MYANMAR LETTER SHAN KA */ + [0x1076, 0x1076], /* MYANMAR LETTER SHAN KHA */ + [0x1077, 0x1077], /* MYANMAR LETTER SHAN GA */ + [0x1078, 0x1078], /* MYANMAR LETTER SHAN CA */ + [0x1079, 0x1079], /* MYANMAR LETTER SHAN ZA */ + [0x107a, 0x107a], /* MYANMAR LETTER SHAN NYA */ + [0x107b, 0x107b], /* MYANMAR LETTER SHAN DA */ + [0x107c, 0x107c], /* MYANMAR LETTER SHAN NA */ + [0x107d, 0x107d], /* MYANMAR LETTER SHAN PHA */ + [0x107e, 0x107e], /* MYANMAR LETTER SHAN FA */ + [0x107f, 0x107f], /* MYANMAR LETTER SHAN BA */ + [0x1080, 0x1080], /* MYANMAR LETTER SHAN THA */ + [0x1081, 0x1081], /* MYANMAR LETTER SHAN HA */ + [0x1082, 0x1082], /* MYANMAR CONSONANT SIGN SHAN MEDIAL WA */ + [0x1083, 0x1083], /* MYANMAR VOWEL SIGN SHAN AA */ + [0x1084, 0x1084], /* MYANMAR VOWEL SIGN SHAN E */ + [0x1085, 0x1085], /* MYANMAR VOWEL SIGN SHAN E ABOVE */ + [0x1086, 0x1086], /* MYANMAR VOWEL SIGN SHAN FINAL Y */ + [0x1087, 0x1087], /* MYANMAR SIGN SHAN TONE-2 */ + [0x1088, 0x1088], /* MYANMAR SIGN SHAN TONE-3 */ + [0x1089, 0x1089], /* MYANMAR SIGN SHAN TONE-5 */ + [0x108a, 0x108a], /* MYANMAR SIGN SHAN TONE-6 */ + [0x108b, 0x108b], /* MYANMAR SIGN SHAN COUNCIL TONE-2 */ + [0x108c, 0x108c], /* MYANMAR SIGN SHAN COUNCIL TONE-3 */ + [0x108d, 0x108d], /* MYANMAR SIGN SHAN COUNCIL EMPHATIC TONE */ + [0x108e, 0x108e], /* MYANMAR LETTER RUMAI PALAUNG FA */ + [0x108f, 0x108f], /* MYANMAR SIGN RUMAI PALAUNG TONE-5 */ + [0x1090, 0x1090], /* MYANMAR SHAN DIGIT ZERO */ + [0x1091, 0x1091], /* MYANMAR SHAN DIGIT ONE */ + [0x1092, 0x1092], /* MYANMAR SHAN DIGIT TWO */ + [0x1093, 0x1093], /* MYANMAR SHAN DIGIT THREE */ + [0x1094, 0x1094], /* MYANMAR SHAN DIGIT FOUR */ + [0x1095, 0x1095], /* MYANMAR SHAN DIGIT FIVE */ + [0x1096, 0x1096], /* MYANMAR SHAN DIGIT SIX */ + [0x1097, 0x1097], /* MYANMAR SHAN DIGIT SEVEN */ + [0x1098, 0x1098], /* MYANMAR SHAN DIGIT EIGHT */ + [0x1099, 0x1099], /* MYANMAR SHAN DIGIT NINE */ + [0x109a, 0x109a], /* MYANMAR SIGN KHAMTI TONE-1 */ + [0x109b, 0x109b], /* MYANMAR SIGN KHAMTI TONE-3 */ + [0x109c, 0x109c], /* MYANMAR VOWEL SIGN AITON A */ + [0x109d, 0x109d], /* MYANMAR VOWEL SIGN AITON AI */ + [0x109e, 0x109e], /* MYANMAR SYMBOL SHAN ONE */ + [0x109f, 0x109f], /* MYANMAR SYMBOL SHAN EXCLAMATION */ + [0x10a0, 0x2d00], /* GEORGIAN CAPITAL LETTER AN */ + [0x10a1, 0x2d01], /* GEORGIAN CAPITAL LETTER BAN */ + [0x10a2, 0x2d02], /* GEORGIAN CAPITAL LETTER GAN */ + [0x10a3, 0x2d03], /* GEORGIAN CAPITAL LETTER DON */ + [0x10a4, 0x2d04], /* GEORGIAN CAPITAL LETTER EN */ + [0x10a5, 0x2d05], /* GEORGIAN CAPITAL LETTER VIN */ + [0x10a6, 0x2d06], /* GEORGIAN CAPITAL LETTER ZEN */ + [0x10a7, 0x2d07], /* GEORGIAN CAPITAL LETTER TAN */ + [0x10a8, 0x2d08], /* GEORGIAN CAPITAL LETTER IN */ + [0x10a9, 0x2d09], /* GEORGIAN CAPITAL LETTER KAN */ + [0x10aa, 0x2d0a], /* GEORGIAN CAPITAL LETTER LAS */ + [0x10ab, 0x2d0b], /* GEORGIAN CAPITAL LETTER MAN */ + [0x10ac, 0x2d0c], /* GEORGIAN CAPITAL LETTER NAR */ + [0x10ad, 0x2d0d], /* GEORGIAN CAPITAL LETTER ON */ + [0x10ae, 0x2d0e], /* GEORGIAN CAPITAL LETTER PAR */ + [0x10af, 0x2d0f], /* GEORGIAN CAPITAL LETTER ZHAR */ + [0x10b0, 0x2d10], /* GEORGIAN CAPITAL LETTER RAE */ + [0x10b1, 0x2d11], /* GEORGIAN CAPITAL LETTER SAN */ + [0x10b2, 0x2d12], /* GEORGIAN CAPITAL LETTER TAR */ + [0x10b3, 0x2d13], /* GEORGIAN CAPITAL LETTER UN */ + [0x10b4, 0x2d14], /* GEORGIAN CAPITAL LETTER PHAR */ + [0x10b5, 0x2d15], /* GEORGIAN CAPITAL LETTER KHAR */ + [0x10b6, 0x2d16], /* GEORGIAN CAPITAL LETTER GHAN */ + [0x10b7, 0x2d17], /* GEORGIAN CAPITAL LETTER QAR */ + [0x10b8, 0x2d18], /* GEORGIAN CAPITAL LETTER SHIN */ + [0x10b9, 0x2d19], /* GEORGIAN CAPITAL LETTER CHIN */ + [0x10ba, 0x2d1a], /* GEORGIAN CAPITAL LETTER CAN */ + [0x10bb, 0x2d1b], /* GEORGIAN CAPITAL LETTER JIL */ + [0x10bc, 0x2d1c], /* GEORGIAN CAPITAL LETTER CIL */ + [0x10bd, 0x2d1d], /* GEORGIAN CAPITAL LETTER CHAR */ + [0x10be, 0x2d1e], /* GEORGIAN CAPITAL LETTER XAN */ + [0x10bf, 0x2d1f], /* GEORGIAN CAPITAL LETTER JHAN */ + [0x10c0, 0x2d20], /* GEORGIAN CAPITAL LETTER HAE */ + [0x10c1, 0x2d21], /* GEORGIAN CAPITAL LETTER HE */ + [0x10c2, 0x2d22], /* GEORGIAN CAPITAL LETTER HIE */ + [0x10c3, 0x2d23], /* GEORGIAN CAPITAL LETTER WE */ + [0x10c4, 0x2d24], /* GEORGIAN CAPITAL LETTER HAR */ + [0x10c5, 0x2d25], /* GEORGIAN CAPITAL LETTER HOE */ + [0x10c6, 0x10c6], + [0x10c7, 0x2d27], /* GEORGIAN CAPITAL LETTER YN */ + [0x10c8, 0x10c8], + [0x10c9, 0x10c9], + [0x10ca, 0x10ca], + [0x10cb, 0x10cb], + [0x10cc, 0x10cc], + [0x10cd, 0x2d2d], /* GEORGIAN CAPITAL LETTER AEN */ + [0x10ce, 0x10ce], + [0x10cf, 0x10cf], + [0x10d0, 0x10d0], /* GEORGIAN LETTER AN (GEORGIAN SMALL LETTER AN) */ + [0x10d1, 0x10d1], /* GEORGIAN LETTER BAN (GEORGIAN SMALL LETTER BAN) */ + [0x10d2, 0x10d2], /* GEORGIAN LETTER GAN (GEORGIAN SMALL LETTER GAN) */ + [0x10d3, 0x10d3], /* GEORGIAN LETTER DON (GEORGIAN SMALL LETTER DON) */ + [0x10d4, 0x10d4], /* GEORGIAN LETTER EN (GEORGIAN SMALL LETTER EN) */ + [0x10d5, 0x10d5], /* GEORGIAN LETTER VIN (GEORGIAN SMALL LETTER VIN) */ + [0x10d6, 0x10d6], /* GEORGIAN LETTER ZEN (GEORGIAN SMALL LETTER ZEN) */ + [0x10d7, 0x10d7], /* GEORGIAN LETTER TAN (GEORGIAN SMALL LETTER TAN) */ + [0x10d8, 0x10d8], /* GEORGIAN LETTER IN (GEORGIAN SMALL LETTER IN) */ + [0x10d9, 0x10d9], /* GEORGIAN LETTER KAN (GEORGIAN SMALL LETTER KAN) */ + [0x10da, 0x10da], /* GEORGIAN LETTER LAS (GEORGIAN SMALL LETTER LAS) */ + [0x10db, 0x10db], /* GEORGIAN LETTER MAN (GEORGIAN SMALL LETTER MAN) */ + [0x10dc, 0x10dc], /* GEORGIAN LETTER NAR (GEORGIAN SMALL LETTER NAR) */ + [0x10dd, 0x10dd], /* GEORGIAN LETTER ON (GEORGIAN SMALL LETTER ON) */ + [0x10de, 0x10de], /* GEORGIAN LETTER PAR (GEORGIAN SMALL LETTER PAR) */ + [0x10df, 0x10df], /* GEORGIAN LETTER ZHAR (GEORGIAN SMALL LETTER ZHAR) */ + [0x10e0, 0x10e0], /* GEORGIAN LETTER RAE (GEORGIAN SMALL LETTER RAE) */ + [0x10e1, 0x10e1], /* GEORGIAN LETTER SAN (GEORGIAN SMALL LETTER SAN) */ + [0x10e2, 0x10e2], /* GEORGIAN LETTER TAR (GEORGIAN SMALL LETTER TAR) */ + [0x10e3, 0x10e3], /* GEORGIAN LETTER UN (GEORGIAN SMALL LETTER UN) */ + [0x10e4, 0x10e4], /* GEORGIAN LETTER PHAR (GEORGIAN SMALL LETTER PHAR) */ + [0x10e5, 0x10e5], /* GEORGIAN LETTER KHAR (GEORGIAN SMALL LETTER KHAR) */ + [0x10e6, 0x10e6], /* GEORGIAN LETTER GHAN (GEORGIAN SMALL LETTER GHAN) */ + [0x10e7, 0x10e7], /* GEORGIAN LETTER QAR (GEORGIAN SMALL LETTER QAR) */ + [0x10e8, 0x10e8], /* GEORGIAN LETTER SHIN (GEORGIAN SMALL LETTER SHIN) */ + [0x10e9, 0x10e9], /* GEORGIAN LETTER CHIN (GEORGIAN SMALL LETTER CHIN) */ + [0x10ea, 0x10ea], /* GEORGIAN LETTER CAN (GEORGIAN SMALL LETTER CAN) */ + [0x10eb, 0x10eb], /* GEORGIAN LETTER JIL (GEORGIAN SMALL LETTER JIL) */ + [0x10ec, 0x10ec], /* GEORGIAN LETTER CIL (GEORGIAN SMALL LETTER CIL) */ + [0x10ed, 0x10ed], /* GEORGIAN LETTER CHAR (GEORGIAN SMALL LETTER CHAR) */ + [0x10ee, 0x10ee], /* GEORGIAN LETTER XAN (GEORGIAN SMALL LETTER XAN) */ + [0x10ef, 0x10ef], /* GEORGIAN LETTER JHAN (GEORGIAN SMALL LETTER JHAN) */ + [0x10f0, 0x10f0], /* GEORGIAN LETTER HAE (GEORGIAN SMALL LETTER HAE) */ + [0x10f1, 0x10f1], /* GEORGIAN LETTER HE (GEORGIAN SMALL LETTER HE) */ + [0x10f2, 0x10f2], /* GEORGIAN LETTER HIE (GEORGIAN SMALL LETTER HIE) */ + [0x10f3, 0x10f3], /* GEORGIAN LETTER WE (GEORGIAN SMALL LETTER WE) */ + [0x10f4, 0x10f4], /* GEORGIAN LETTER HAR (GEORGIAN SMALL LETTER HAR) */ + [0x10f5, 0x10f5], /* GEORGIAN LETTER HOE (GEORGIAN SMALL LETTER HOE) */ + [0x10f6, 0x10f6], /* GEORGIAN LETTER FI (GEORGIAN SMALL LETTER FI) */ + [0x10f7, 0x10f7], /* GEORGIAN LETTER YN */ + [0x10f8, 0x10f8], /* GEORGIAN LETTER ELIFI */ + [0x10f9, 0x10f9], /* GEORGIAN LETTER TURNED GAN */ + [0x10fa, 0x10fa], /* GEORGIAN LETTER AIN */ + [0x10fb, 0x10fb], /* GEORGIAN PARAGRAPH SEPARATOR */ + [0x10fc, 0x10fc], /* MODIFIER LETTER GEORGIAN NAR */ + [0x10fd, 0x10fd], /* GEORGIAN LETTER AEN */ + [0x10fe, 0x10fe], /* GEORGIAN LETTER HARD SIGN */ + [0x10ff, 0x10ff], /* GEORGIAN LETTER LABIAL SIGN */ + [0x1100, 0x1100], /* HANGUL CHOSEONG KIYEOK */ + [0x1101, 0x1101], /* HANGUL CHOSEONG SSANGKIYEOK */ + [0x1102, 0x1102], /* HANGUL CHOSEONG NIEUN */ + [0x1103, 0x1103], /* HANGUL CHOSEONG TIKEUT */ + [0x1104, 0x1104], /* HANGUL CHOSEONG SSANGTIKEUT */ + [0x1105, 0x1105], /* HANGUL CHOSEONG RIEUL */ + [0x1106, 0x1106], /* HANGUL CHOSEONG MIEUM */ + [0x1107, 0x1107], /* HANGUL CHOSEONG PIEUP */ + [0x1108, 0x1108], /* HANGUL CHOSEONG SSANGPIEUP */ + [0x1109, 0x1109], /* HANGUL CHOSEONG SIOS */ + [0x110a, 0x110a], /* HANGUL CHOSEONG SSANGSIOS */ + [0x110b, 0x110b], /* HANGUL CHOSEONG IEUNG */ + [0x110c, 0x110c], /* HANGUL CHOSEONG CIEUC */ + [0x110d, 0x110d], /* HANGUL CHOSEONG SSANGCIEUC */ + [0x110e, 0x110e], /* HANGUL CHOSEONG CHIEUCH */ + [0x110f, 0x110f], /* HANGUL CHOSEONG KHIEUKH */ + [0x1110, 0x1110], /* HANGUL CHOSEONG THIEUTH */ + [0x1111, 0x1111], /* HANGUL CHOSEONG PHIEUPH */ + [0x1112, 0x1112], /* HANGUL CHOSEONG HIEUH */ + [0x1113, 0x1113], /* HANGUL CHOSEONG NIEUN-KIYEOK */ + [0x1114, 0x1114], /* HANGUL CHOSEONG SSANGNIEUN */ + [0x1115, 0x1115], /* HANGUL CHOSEONG NIEUN-TIKEUT */ + [0x1116, 0x1116], /* HANGUL CHOSEONG NIEUN-PIEUP */ + [0x1117, 0x1117], /* HANGUL CHOSEONG TIKEUT-KIYEOK */ + [0x1118, 0x1118], /* HANGUL CHOSEONG RIEUL-NIEUN */ + [0x1119, 0x1119], /* HANGUL CHOSEONG SSANGRIEUL */ + [0x111a, 0x111a], /* HANGUL CHOSEONG RIEUL-HIEUH */ + [0x111b, 0x111b], /* HANGUL CHOSEONG KAPYEOUNRIEUL */ + [0x111c, 0x111c], /* HANGUL CHOSEONG MIEUM-PIEUP */ + [0x111d, 0x111d], /* HANGUL CHOSEONG KAPYEOUNMIEUM */ + [0x111e, 0x111e], /* HANGUL CHOSEONG PIEUP-KIYEOK */ + [0x111f, 0x111f], /* HANGUL CHOSEONG PIEUP-NIEUN */ + [0x1120, 0x1120], /* HANGUL CHOSEONG PIEUP-TIKEUT */ + [0x1121, 0x1121], /* HANGUL CHOSEONG PIEUP-SIOS */ + [0x1122, 0x1122], /* HANGUL CHOSEONG PIEUP-SIOS-KIYEOK */ + [0x1123, 0x1123], /* HANGUL CHOSEONG PIEUP-SIOS-TIKEUT */ + [0x1124, 0x1124], /* HANGUL CHOSEONG PIEUP-SIOS-PIEUP */ + [0x1125, 0x1125], /* HANGUL CHOSEONG PIEUP-SSANGSIOS */ + [0x1126, 0x1126], /* HANGUL CHOSEONG PIEUP-SIOS-CIEUC */ + [0x1127, 0x1127], /* HANGUL CHOSEONG PIEUP-CIEUC */ + [0x1128, 0x1128], /* HANGUL CHOSEONG PIEUP-CHIEUCH */ + [0x1129, 0x1129], /* HANGUL CHOSEONG PIEUP-THIEUTH */ + [0x112a, 0x112a], /* HANGUL CHOSEONG PIEUP-PHIEUPH */ + [0x112b, 0x112b], /* HANGUL CHOSEONG KAPYEOUNPIEUP */ + [0x112c, 0x112c], /* HANGUL CHOSEONG KAPYEOUNSSANGPIEUP */ + [0x112d, 0x112d], /* HANGUL CHOSEONG SIOS-KIYEOK */ + [0x112e, 0x112e], /* HANGUL CHOSEONG SIOS-NIEUN */ + [0x112f, 0x112f], /* HANGUL CHOSEONG SIOS-TIKEUT */ + [0x1130, 0x1130], /* HANGUL CHOSEONG SIOS-RIEUL */ + [0x1131, 0x1131], /* HANGUL CHOSEONG SIOS-MIEUM */ + [0x1132, 0x1132], /* HANGUL CHOSEONG SIOS-PIEUP */ + [0x1133, 0x1133], /* HANGUL CHOSEONG SIOS-PIEUP-KIYEOK */ + [0x1134, 0x1134], /* HANGUL CHOSEONG SIOS-SSANGSIOS */ + [0x1135, 0x1135], /* HANGUL CHOSEONG SIOS-IEUNG */ + [0x1136, 0x1136], /* HANGUL CHOSEONG SIOS-CIEUC */ + [0x1137, 0x1137], /* HANGUL CHOSEONG SIOS-CHIEUCH */ + [0x1138, 0x1138], /* HANGUL CHOSEONG SIOS-KHIEUKH */ + [0x1139, 0x1139], /* HANGUL CHOSEONG SIOS-THIEUTH */ + [0x113a, 0x113a], /* HANGUL CHOSEONG SIOS-PHIEUPH */ + [0x113b, 0x113b], /* HANGUL CHOSEONG SIOS-HIEUH */ + [0x113c, 0x113c], /* HANGUL CHOSEONG CHITUEUMSIOS */ + [0x113d, 0x113d], /* HANGUL CHOSEONG CHITUEUMSSANGSIOS */ + [0x113e, 0x113e], /* HANGUL CHOSEONG CEONGCHIEUMSIOS */ + [0x113f, 0x113f], /* HANGUL CHOSEONG CEONGCHIEUMSSANGSIOS */ + [0x1140, 0x1140], /* HANGUL CHOSEONG PANSIOS */ + [0x1141, 0x1141], /* HANGUL CHOSEONG IEUNG-KIYEOK */ + [0x1142, 0x1142], /* HANGUL CHOSEONG IEUNG-TIKEUT */ + [0x1143, 0x1143], /* HANGUL CHOSEONG IEUNG-MIEUM */ + [0x1144, 0x1144], /* HANGUL CHOSEONG IEUNG-PIEUP */ + [0x1145, 0x1145], /* HANGUL CHOSEONG IEUNG-SIOS */ + [0x1146, 0x1146], /* HANGUL CHOSEONG IEUNG-PANSIOS */ + [0x1147, 0x1147], /* HANGUL CHOSEONG SSANGIEUNG */ + [0x1148, 0x1148], /* HANGUL CHOSEONG IEUNG-CIEUC */ + [0x1149, 0x1149], /* HANGUL CHOSEONG IEUNG-CHIEUCH */ + [0x114a, 0x114a], /* HANGUL CHOSEONG IEUNG-THIEUTH */ + [0x114b, 0x114b], /* HANGUL CHOSEONG IEUNG-PHIEUPH */ + [0x114c, 0x114c], /* HANGUL CHOSEONG YESIEUNG */ + [0x114d, 0x114d], /* HANGUL CHOSEONG CIEUC-IEUNG */ + [0x114e, 0x114e], /* HANGUL CHOSEONG CHITUEUMCIEUC */ + [0x114f, 0x114f], /* HANGUL CHOSEONG CHITUEUMSSANGCIEUC */ + [0x1150, 0x1150], /* HANGUL CHOSEONG CEONGCHIEUMCIEUC */ + [0x1151, 0x1151], /* HANGUL CHOSEONG CEONGCHIEUMSSANGCIEUC */ + [0x1152, 0x1152], /* HANGUL CHOSEONG CHIEUCH-KHIEUKH */ + [0x1153, 0x1153], /* HANGUL CHOSEONG CHIEUCH-HIEUH */ + [0x1154, 0x1154], /* HANGUL CHOSEONG CHITUEUMCHIEUCH */ + [0x1155, 0x1155], /* HANGUL CHOSEONG CEONGCHIEUMCHIEUCH */ + [0x1156, 0x1156], /* HANGUL CHOSEONG PHIEUPH-PIEUP */ + [0x1157, 0x1157], /* HANGUL CHOSEONG KAPYEOUNPHIEUPH */ + [0x1158, 0x1158], /* HANGUL CHOSEONG SSANGHIEUH */ + [0x1159, 0x1159], /* HANGUL CHOSEONG YEORINHIEUH */ + [0x115a, 0x115a], /* HANGUL CHOSEONG KIYEOK-TIKEUT */ + [0x115b, 0x115b], /* HANGUL CHOSEONG NIEUN-SIOS */ + [0x115c, 0x115c], /* HANGUL CHOSEONG NIEUN-CIEUC */ + [0x115d, 0x115d], /* HANGUL CHOSEONG NIEUN-HIEUH */ + [0x115e, 0x115e], /* HANGUL CHOSEONG TIKEUT-RIEUL */ + [0x115f, 0x115f], /* HANGUL CHOSEONG FILLER */ + [0x1160, 0x1160], /* HANGUL JUNGSEONG FILLER */ + [0x1161, 0x1161], /* HANGUL JUNGSEONG A */ + [0x1162, 0x1162], /* HANGUL JUNGSEONG AE */ + [0x1163, 0x1163], /* HANGUL JUNGSEONG YA */ + [0x1164, 0x1164], /* HANGUL JUNGSEONG YAE */ + [0x1165, 0x1165], /* HANGUL JUNGSEONG EO */ + [0x1166, 0x1166], /* HANGUL JUNGSEONG E */ + [0x1167, 0x1167], /* HANGUL JUNGSEONG YEO */ + [0x1168, 0x1168], /* HANGUL JUNGSEONG YE */ + [0x1169, 0x1169], /* HANGUL JUNGSEONG O */ + [0x116a, 0x116a], /* HANGUL JUNGSEONG WA */ + [0x116b, 0x116b], /* HANGUL JUNGSEONG WAE */ + [0x116c, 0x116c], /* HANGUL JUNGSEONG OE */ + [0x116d, 0x116d], /* HANGUL JUNGSEONG YO */ + [0x116e, 0x116e], /* HANGUL JUNGSEONG U */ + [0x116f, 0x116f], /* HANGUL JUNGSEONG WEO */ + [0x1170, 0x1170], /* HANGUL JUNGSEONG WE */ + [0x1171, 0x1171], /* HANGUL JUNGSEONG WI */ + [0x1172, 0x1172], /* HANGUL JUNGSEONG YU */ + [0x1173, 0x1173], /* HANGUL JUNGSEONG EU */ + [0x1174, 0x1174], /* HANGUL JUNGSEONG YI */ + [0x1175, 0x1175], /* HANGUL JUNGSEONG I */ + [0x1176, 0x1176], /* HANGUL JUNGSEONG A-O */ + [0x1177, 0x1177], /* HANGUL JUNGSEONG A-U */ + [0x1178, 0x1178], /* HANGUL JUNGSEONG YA-O */ + [0x1179, 0x1179], /* HANGUL JUNGSEONG YA-YO */ + [0x117a, 0x117a], /* HANGUL JUNGSEONG EO-O */ + [0x117b, 0x117b], /* HANGUL JUNGSEONG EO-U */ + [0x117c, 0x117c], /* HANGUL JUNGSEONG EO-EU */ + [0x117d, 0x117d], /* HANGUL JUNGSEONG YEO-O */ + [0x117e, 0x117e], /* HANGUL JUNGSEONG YEO-U */ + [0x117f, 0x117f], /* HANGUL JUNGSEONG O-EO */ + [0x1180, 0x1180], /* HANGUL JUNGSEONG O-E */ + [0x1181, 0x1181], /* HANGUL JUNGSEONG O-YE */ + [0x1182, 0x1182], /* HANGUL JUNGSEONG O-O */ + [0x1183, 0x1183], /* HANGUL JUNGSEONG O-U */ + [0x1184, 0x1184], /* HANGUL JUNGSEONG YO-YA */ + [0x1185, 0x1185], /* HANGUL JUNGSEONG YO-YAE */ + [0x1186, 0x1186], /* HANGUL JUNGSEONG YO-YEO */ + [0x1187, 0x1187], /* HANGUL JUNGSEONG YO-O */ + [0x1188, 0x1188], /* HANGUL JUNGSEONG YO-I */ + [0x1189, 0x1189], /* HANGUL JUNGSEONG U-A */ + [0x118a, 0x118a], /* HANGUL JUNGSEONG U-AE */ + [0x118b, 0x118b], /* HANGUL JUNGSEONG U-EO-EU */ + [0x118c, 0x118c], /* HANGUL JUNGSEONG U-YE */ + [0x118d, 0x118d], /* HANGUL JUNGSEONG U-U */ + [0x118e, 0x118e], /* HANGUL JUNGSEONG YU-A */ + [0x118f, 0x118f], /* HANGUL JUNGSEONG YU-EO */ + [0x1190, 0x1190], /* HANGUL JUNGSEONG YU-E */ + [0x1191, 0x1191], /* HANGUL JUNGSEONG YU-YEO */ + [0x1192, 0x1192], /* HANGUL JUNGSEONG YU-YE */ + [0x1193, 0x1193], /* HANGUL JUNGSEONG YU-U */ + [0x1194, 0x1194], /* HANGUL JUNGSEONG YU-I */ + [0x1195, 0x1195], /* HANGUL JUNGSEONG EU-U */ + [0x1196, 0x1196], /* HANGUL JUNGSEONG EU-EU */ + [0x1197, 0x1197], /* HANGUL JUNGSEONG YI-U */ + [0x1198, 0x1198], /* HANGUL JUNGSEONG I-A */ + [0x1199, 0x1199], /* HANGUL JUNGSEONG I-YA */ + [0x119a, 0x119a], /* HANGUL JUNGSEONG I-O */ + [0x119b, 0x119b], /* HANGUL JUNGSEONG I-U */ + [0x119c, 0x119c], /* HANGUL JUNGSEONG I-EU */ + [0x119d, 0x119d], /* HANGUL JUNGSEONG I-ARAEA */ + [0x119e, 0x119e], /* HANGUL JUNGSEONG ARAEA */ + [0x119f, 0x119f], /* HANGUL JUNGSEONG ARAEA-EO */ + [0x11a0, 0x11a0], /* HANGUL JUNGSEONG ARAEA-U */ + [0x11a1, 0x11a1], /* HANGUL JUNGSEONG ARAEA-I */ + [0x11a2, 0x11a2], /* HANGUL JUNGSEONG SSANGARAEA */ + [0x11a3, 0x11a3], /* HANGUL JUNGSEONG A-EU */ + [0x11a4, 0x11a4], /* HANGUL JUNGSEONG YA-U */ + [0x11a5, 0x11a5], /* HANGUL JUNGSEONG YEO-YA */ + [0x11a6, 0x11a6], /* HANGUL JUNGSEONG O-YA */ + [0x11a7, 0x11a7], /* HANGUL JUNGSEONG O-YAE */ + [0x11a8, 0x11a8], /* HANGUL JONGSEONG KIYEOK */ + [0x11a9, 0x11a9], /* HANGUL JONGSEONG SSANGKIYEOK */ + [0x11aa, 0x11aa], /* HANGUL JONGSEONG KIYEOK-SIOS */ + [0x11ab, 0x11ab], /* HANGUL JONGSEONG NIEUN */ + [0x11ac, 0x11ac], /* HANGUL JONGSEONG NIEUN-CIEUC */ + [0x11ad, 0x11ad], /* HANGUL JONGSEONG NIEUN-HIEUH */ + [0x11ae, 0x11ae], /* HANGUL JONGSEONG TIKEUT */ + [0x11af, 0x11af], /* HANGUL JONGSEONG RIEUL */ + [0x11b0, 0x11b0], /* HANGUL JONGSEONG RIEUL-KIYEOK */ + [0x11b1, 0x11b1], /* HANGUL JONGSEONG RIEUL-MIEUM */ + [0x11b2, 0x11b2], /* HANGUL JONGSEONG RIEUL-PIEUP */ + [0x11b3, 0x11b3], /* HANGUL JONGSEONG RIEUL-SIOS */ + [0x11b4, 0x11b4], /* HANGUL JONGSEONG RIEUL-THIEUTH */ + [0x11b5, 0x11b5], /* HANGUL JONGSEONG RIEUL-PHIEUPH */ + [0x11b6, 0x11b6], /* HANGUL JONGSEONG RIEUL-HIEUH */ + [0x11b7, 0x11b7], /* HANGUL JONGSEONG MIEUM */ + [0x11b8, 0x11b8], /* HANGUL JONGSEONG PIEUP */ + [0x11b9, 0x11b9], /* HANGUL JONGSEONG PIEUP-SIOS */ + [0x11ba, 0x11ba], /* HANGUL JONGSEONG SIOS */ + [0x11bb, 0x11bb], /* HANGUL JONGSEONG SSANGSIOS */ + [0x11bc, 0x11bc], /* HANGUL JONGSEONG IEUNG */ + [0x11bd, 0x11bd], /* HANGUL JONGSEONG CIEUC */ + [0x11be, 0x11be], /* HANGUL JONGSEONG CHIEUCH */ + [0x11bf, 0x11bf], /* HANGUL JONGSEONG KHIEUKH */ + [0x11c0, 0x11c0], /* HANGUL JONGSEONG THIEUTH */ + [0x11c1, 0x11c1], /* HANGUL JONGSEONG PHIEUPH */ + [0x11c2, 0x11c2], /* HANGUL JONGSEONG HIEUH */ + [0x11c3, 0x11c3], /* HANGUL JONGSEONG KIYEOK-RIEUL */ + [0x11c4, 0x11c4], /* HANGUL JONGSEONG KIYEOK-SIOS-KIYEOK */ + [0x11c5, 0x11c5], /* HANGUL JONGSEONG NIEUN-KIYEOK */ + [0x11c6, 0x11c6], /* HANGUL JONGSEONG NIEUN-TIKEUT */ + [0x11c7, 0x11c7], /* HANGUL JONGSEONG NIEUN-SIOS */ + [0x11c8, 0x11c8], /* HANGUL JONGSEONG NIEUN-PANSIOS */ + [0x11c9, 0x11c9], /* HANGUL JONGSEONG NIEUN-THIEUTH */ + [0x11ca, 0x11ca], /* HANGUL JONGSEONG TIKEUT-KIYEOK */ + [0x11cb, 0x11cb], /* HANGUL JONGSEONG TIKEUT-RIEUL */ + [0x11cc, 0x11cc], /* HANGUL JONGSEONG RIEUL-KIYEOK-SIOS */ + [0x11cd, 0x11cd], /* HANGUL JONGSEONG RIEUL-NIEUN */ + [0x11ce, 0x11ce], /* HANGUL JONGSEONG RIEUL-TIKEUT */ + [0x11cf, 0x11cf], /* HANGUL JONGSEONG RIEUL-TIKEUT-HIEUH */ + [0x11d0, 0x11d0], /* HANGUL JONGSEONG SSANGRIEUL */ + [0x11d1, 0x11d1], /* HANGUL JONGSEONG RIEUL-MIEUM-KIYEOK */ + [0x11d2, 0x11d2], /* HANGUL JONGSEONG RIEUL-MIEUM-SIOS */ + [0x11d3, 0x11d3], /* HANGUL JONGSEONG RIEUL-PIEUP-SIOS */ + [0x11d4, 0x11d4], /* HANGUL JONGSEONG RIEUL-PIEUP-HIEUH */ + [0x11d5, 0x11d5], /* HANGUL JONGSEONG RIEUL-KAPYEOUNPIEUP */ + [0x11d6, 0x11d6], /* HANGUL JONGSEONG RIEUL-SSANGSIOS */ + [0x11d7, 0x11d7], /* HANGUL JONGSEONG RIEUL-PANSIOS */ + [0x11d8, 0x11d8], /* HANGUL JONGSEONG RIEUL-KHIEUKH */ + [0x11d9, 0x11d9], /* HANGUL JONGSEONG RIEUL-YEORINHIEUH */ + [0x11da, 0x11da], /* HANGUL JONGSEONG MIEUM-KIYEOK */ + [0x11db, 0x11db], /* HANGUL JONGSEONG MIEUM-RIEUL */ + [0x11dc, 0x11dc], /* HANGUL JONGSEONG MIEUM-PIEUP */ + [0x11dd, 0x11dd], /* HANGUL JONGSEONG MIEUM-SIOS */ + [0x11de, 0x11de], /* HANGUL JONGSEONG MIEUM-SSANGSIOS */ + [0x11df, 0x11df], /* HANGUL JONGSEONG MIEUM-PANSIOS */ + [0x11e0, 0x11e0], /* HANGUL JONGSEONG MIEUM-CHIEUCH */ + [0x11e1, 0x11e1], /* HANGUL JONGSEONG MIEUM-HIEUH */ + [0x11e2, 0x11e2], /* HANGUL JONGSEONG KAPYEOUNMIEUM */ + [0x11e3, 0x11e3], /* HANGUL JONGSEONG PIEUP-RIEUL */ + [0x11e4, 0x11e4], /* HANGUL JONGSEONG PIEUP-PHIEUPH */ + [0x11e5, 0x11e5], /* HANGUL JONGSEONG PIEUP-HIEUH */ + [0x11e6, 0x11e6], /* HANGUL JONGSEONG KAPYEOUNPIEUP */ + [0x11e7, 0x11e7], /* HANGUL JONGSEONG SIOS-KIYEOK */ + [0x11e8, 0x11e8], /* HANGUL JONGSEONG SIOS-TIKEUT */ + [0x11e9, 0x11e9], /* HANGUL JONGSEONG SIOS-RIEUL */ + [0x11ea, 0x11ea], /* HANGUL JONGSEONG SIOS-PIEUP */ + [0x11eb, 0x11eb], /* HANGUL JONGSEONG PANSIOS */ + [0x11ec, 0x11ec], /* HANGUL JONGSEONG IEUNG-KIYEOK */ + [0x11ed, 0x11ed], /* HANGUL JONGSEONG IEUNG-SSANGKIYEOK */ + [0x11ee, 0x11ee], /* HANGUL JONGSEONG SSANGIEUNG */ + [0x11ef, 0x11ef], /* HANGUL JONGSEONG IEUNG-KHIEUKH */ + [0x11f0, 0x11f0], /* HANGUL JONGSEONG YESIEUNG */ + [0x11f1, 0x11f1], /* HANGUL JONGSEONG YESIEUNG-SIOS */ + [0x11f2, 0x11f2], /* HANGUL JONGSEONG YESIEUNG-PANSIOS */ + [0x11f3, 0x11f3], /* HANGUL JONGSEONG PHIEUPH-PIEUP */ + [0x11f4, 0x11f4], /* HANGUL JONGSEONG KAPYEOUNPHIEUPH */ + [0x11f5, 0x11f5], /* HANGUL JONGSEONG HIEUH-NIEUN */ + [0x11f6, 0x11f6], /* HANGUL JONGSEONG HIEUH-RIEUL */ + [0x11f7, 0x11f7], /* HANGUL JONGSEONG HIEUH-MIEUM */ + [0x11f8, 0x11f8], /* HANGUL JONGSEONG HIEUH-PIEUP */ + [0x11f9, 0x11f9], /* HANGUL JONGSEONG YEORINHIEUH */ + [0x11fa, 0x11fa], /* HANGUL JONGSEONG KIYEOK-NIEUN */ + [0x11fb, 0x11fb], /* HANGUL JONGSEONG KIYEOK-PIEUP */ + [0x11fc, 0x11fc], /* HANGUL JONGSEONG KIYEOK-CHIEUCH */ + [0x11fd, 0x11fd], /* HANGUL JONGSEONG KIYEOK-KHIEUKH */ + [0x11fe, 0x11fe], /* HANGUL JONGSEONG KIYEOK-HIEUH */ + [0x11ff, 0x11ff], /* HANGUL JONGSEONG SSANGNIEUN */ + [0x1200, 0x1200], /* ETHIOPIC SYLLABLE HA */ + [0x1201, 0x1201], /* ETHIOPIC SYLLABLE HU */ + [0x1202, 0x1202], /* ETHIOPIC SYLLABLE HI */ + [0x1203, 0x1203], /* ETHIOPIC SYLLABLE HAA */ + [0x1204, 0x1204], /* ETHIOPIC SYLLABLE HEE */ + [0x1205, 0x1205], /* ETHIOPIC SYLLABLE HE */ + [0x1206, 0x1206], /* ETHIOPIC SYLLABLE HO */ + [0x1207, 0x1207], /* ETHIOPIC SYLLABLE HOA */ + [0x1208, 0x1208], /* ETHIOPIC SYLLABLE LA */ + [0x1209, 0x1209], /* ETHIOPIC SYLLABLE LU */ + [0x120a, 0x120a], /* ETHIOPIC SYLLABLE LI */ + [0x120b, 0x120b], /* ETHIOPIC SYLLABLE LAA */ + [0x120c, 0x120c], /* ETHIOPIC SYLLABLE LEE */ + [0x120d, 0x120d], /* ETHIOPIC SYLLABLE LE */ + [0x120e, 0x120e], /* ETHIOPIC SYLLABLE LO */ + [0x120f, 0x120f], /* ETHIOPIC SYLLABLE LWA */ + [0x1210, 0x1210], /* ETHIOPIC SYLLABLE HHA */ + [0x1211, 0x1211], /* ETHIOPIC SYLLABLE HHU */ + [0x1212, 0x1212], /* ETHIOPIC SYLLABLE HHI */ + [0x1213, 0x1213], /* ETHIOPIC SYLLABLE HHAA */ + [0x1214, 0x1214], /* ETHIOPIC SYLLABLE HHEE */ + [0x1215, 0x1215], /* ETHIOPIC SYLLABLE HHE */ + [0x1216, 0x1216], /* ETHIOPIC SYLLABLE HHO */ + [0x1217, 0x1217], /* ETHIOPIC SYLLABLE HHWA */ + [0x1218, 0x1218], /* ETHIOPIC SYLLABLE MA */ + [0x1219, 0x1219], /* ETHIOPIC SYLLABLE MU */ + [0x121a, 0x121a], /* ETHIOPIC SYLLABLE MI */ + [0x121b, 0x121b], /* ETHIOPIC SYLLABLE MAA */ + [0x121c, 0x121c], /* ETHIOPIC SYLLABLE MEE */ + [0x121d, 0x121d], /* ETHIOPIC SYLLABLE ME */ + [0x121e, 0x121e], /* ETHIOPIC SYLLABLE MO */ + [0x121f, 0x121f], /* ETHIOPIC SYLLABLE MWA */ + [0x1220, 0x1220], /* ETHIOPIC SYLLABLE SZA */ + [0x1221, 0x1221], /* ETHIOPIC SYLLABLE SZU */ + [0x1222, 0x1222], /* ETHIOPIC SYLLABLE SZI */ + [0x1223, 0x1223], /* ETHIOPIC SYLLABLE SZAA */ + [0x1224, 0x1224], /* ETHIOPIC SYLLABLE SZEE */ + [0x1225, 0x1225], /* ETHIOPIC SYLLABLE SZE */ + [0x1226, 0x1226], /* ETHIOPIC SYLLABLE SZO */ + [0x1227, 0x1227], /* ETHIOPIC SYLLABLE SZWA */ + [0x1228, 0x1228], /* ETHIOPIC SYLLABLE RA */ + [0x1229, 0x1229], /* ETHIOPIC SYLLABLE RU */ + [0x122a, 0x122a], /* ETHIOPIC SYLLABLE RI */ + [0x122b, 0x122b], /* ETHIOPIC SYLLABLE RAA */ + [0x122c, 0x122c], /* ETHIOPIC SYLLABLE REE */ + [0x122d, 0x122d], /* ETHIOPIC SYLLABLE RE */ + [0x122e, 0x122e], /* ETHIOPIC SYLLABLE RO */ + [0x122f, 0x122f], /* ETHIOPIC SYLLABLE RWA */ + [0x1230, 0x1230], /* ETHIOPIC SYLLABLE SA */ + [0x1231, 0x1231], /* ETHIOPIC SYLLABLE SU */ + [0x1232, 0x1232], /* ETHIOPIC SYLLABLE SI */ + [0x1233, 0x1233], /* ETHIOPIC SYLLABLE SAA */ + [0x1234, 0x1234], /* ETHIOPIC SYLLABLE SEE */ + [0x1235, 0x1235], /* ETHIOPIC SYLLABLE SE */ + [0x1236, 0x1236], /* ETHIOPIC SYLLABLE SO */ + [0x1237, 0x1237], /* ETHIOPIC SYLLABLE SWA */ + [0x1238, 0x1238], /* ETHIOPIC SYLLABLE SHA */ + [0x1239, 0x1239], /* ETHIOPIC SYLLABLE SHU */ + [0x123a, 0x123a], /* ETHIOPIC SYLLABLE SHI */ + [0x123b, 0x123b], /* ETHIOPIC SYLLABLE SHAA */ + [0x123c, 0x123c], /* ETHIOPIC SYLLABLE SHEE */ + [0x123d, 0x123d], /* ETHIOPIC SYLLABLE SHE */ + [0x123e, 0x123e], /* ETHIOPIC SYLLABLE SHO */ + [0x123f, 0x123f], /* ETHIOPIC SYLLABLE SHWA */ + [0x1240, 0x1240], /* ETHIOPIC SYLLABLE QA */ + [0x1241, 0x1241], /* ETHIOPIC SYLLABLE QU */ + [0x1242, 0x1242], /* ETHIOPIC SYLLABLE QI */ + [0x1243, 0x1243], /* ETHIOPIC SYLLABLE QAA */ + [0x1244, 0x1244], /* ETHIOPIC SYLLABLE QEE */ + [0x1245, 0x1245], /* ETHIOPIC SYLLABLE QE */ + [0x1246, 0x1246], /* ETHIOPIC SYLLABLE QO */ + [0x1247, 0x1247], /* ETHIOPIC SYLLABLE QOA */ + [0x1248, 0x1248], /* ETHIOPIC SYLLABLE QWA */ + [0x1249, 0x1249], + [0x124a, 0x124a], /* ETHIOPIC SYLLABLE QWI */ + [0x124b, 0x124b], /* ETHIOPIC SYLLABLE QWAA */ + [0x124c, 0x124c], /* ETHIOPIC SYLLABLE QWEE */ + [0x124d, 0x124d], /* ETHIOPIC SYLLABLE QWE */ + [0x124e, 0x124e], + [0x124f, 0x124f], + [0x1250, 0x1250], /* ETHIOPIC SYLLABLE QHA */ + [0x1251, 0x1251], /* ETHIOPIC SYLLABLE QHU */ + [0x1252, 0x1252], /* ETHIOPIC SYLLABLE QHI */ + [0x1253, 0x1253], /* ETHIOPIC SYLLABLE QHAA */ + [0x1254, 0x1254], /* ETHIOPIC SYLLABLE QHEE */ + [0x1255, 0x1255], /* ETHIOPIC SYLLABLE QHE */ + [0x1256, 0x1256], /* ETHIOPIC SYLLABLE QHO */ + [0x1257, 0x1257], + [0x1258, 0x1258], /* ETHIOPIC SYLLABLE QHWA */ + [0x1259, 0x1259], + [0x125a, 0x125a], /* ETHIOPIC SYLLABLE QHWI */ + [0x125b, 0x125b], /* ETHIOPIC SYLLABLE QHWAA */ + [0x125c, 0x125c], /* ETHIOPIC SYLLABLE QHWEE */ + [0x125d, 0x125d], /* ETHIOPIC SYLLABLE QHWE */ + [0x125e, 0x125e], + [0x125f, 0x125f], + [0x1260, 0x1260], /* ETHIOPIC SYLLABLE BA */ + [0x1261, 0x1261], /* ETHIOPIC SYLLABLE BU */ + [0x1262, 0x1262], /* ETHIOPIC SYLLABLE BI */ + [0x1263, 0x1263], /* ETHIOPIC SYLLABLE BAA */ + [0x1264, 0x1264], /* ETHIOPIC SYLLABLE BEE */ + [0x1265, 0x1265], /* ETHIOPIC SYLLABLE BE */ + [0x1266, 0x1266], /* ETHIOPIC SYLLABLE BO */ + [0x1267, 0x1267], /* ETHIOPIC SYLLABLE BWA */ + [0x1268, 0x1268], /* ETHIOPIC SYLLABLE VA */ + [0x1269, 0x1269], /* ETHIOPIC SYLLABLE VU */ + [0x126a, 0x126a], /* ETHIOPIC SYLLABLE VI */ + [0x126b, 0x126b], /* ETHIOPIC SYLLABLE VAA */ + [0x126c, 0x126c], /* ETHIOPIC SYLLABLE VEE */ + [0x126d, 0x126d], /* ETHIOPIC SYLLABLE VE */ + [0x126e, 0x126e], /* ETHIOPIC SYLLABLE VO */ + [0x126f, 0x126f], /* ETHIOPIC SYLLABLE VWA */ + [0x1270, 0x1270], /* ETHIOPIC SYLLABLE TA */ + [0x1271, 0x1271], /* ETHIOPIC SYLLABLE TU */ + [0x1272, 0x1272], /* ETHIOPIC SYLLABLE TI */ + [0x1273, 0x1273], /* ETHIOPIC SYLLABLE TAA */ + [0x1274, 0x1274], /* ETHIOPIC SYLLABLE TEE */ + [0x1275, 0x1275], /* ETHIOPIC SYLLABLE TE */ + [0x1276, 0x1276], /* ETHIOPIC SYLLABLE TO */ + [0x1277, 0x1277], /* ETHIOPIC SYLLABLE TWA */ + [0x1278, 0x1278], /* ETHIOPIC SYLLABLE CA */ + [0x1279, 0x1279], /* ETHIOPIC SYLLABLE CU */ + [0x127a, 0x127a], /* ETHIOPIC SYLLABLE CI */ + [0x127b, 0x127b], /* ETHIOPIC SYLLABLE CAA */ + [0x127c, 0x127c], /* ETHIOPIC SYLLABLE CEE */ + [0x127d, 0x127d], /* ETHIOPIC SYLLABLE CE */ + [0x127e, 0x127e], /* ETHIOPIC SYLLABLE CO */ + [0x127f, 0x127f], /* ETHIOPIC SYLLABLE CWA */ + [0x1280, 0x1280], /* ETHIOPIC SYLLABLE XA */ + [0x1281, 0x1281], /* ETHIOPIC SYLLABLE XU */ + [0x1282, 0x1282], /* ETHIOPIC SYLLABLE XI */ + [0x1283, 0x1283], /* ETHIOPIC SYLLABLE XAA */ + [0x1284, 0x1284], /* ETHIOPIC SYLLABLE XEE */ + [0x1285, 0x1285], /* ETHIOPIC SYLLABLE XE */ + [0x1286, 0x1286], /* ETHIOPIC SYLLABLE XO */ + [0x1287, 0x1287], /* ETHIOPIC SYLLABLE XOA */ + [0x1288, 0x1288], /* ETHIOPIC SYLLABLE XWA */ + [0x1289, 0x1289], + [0x128a, 0x128a], /* ETHIOPIC SYLLABLE XWI */ + [0x128b, 0x128b], /* ETHIOPIC SYLLABLE XWAA */ + [0x128c, 0x128c], /* ETHIOPIC SYLLABLE XWEE */ + [0x128d, 0x128d], /* ETHIOPIC SYLLABLE XWE */ + [0x128e, 0x128e], + [0x128f, 0x128f], + [0x1290, 0x1290], /* ETHIOPIC SYLLABLE NA */ + [0x1291, 0x1291], /* ETHIOPIC SYLLABLE NU */ + [0x1292, 0x1292], /* ETHIOPIC SYLLABLE NI */ + [0x1293, 0x1293], /* ETHIOPIC SYLLABLE NAA */ + [0x1294, 0x1294], /* ETHIOPIC SYLLABLE NEE */ + [0x1295, 0x1295], /* ETHIOPIC SYLLABLE NE */ + [0x1296, 0x1296], /* ETHIOPIC SYLLABLE NO */ + [0x1297, 0x1297], /* ETHIOPIC SYLLABLE NWA */ + [0x1298, 0x1298], /* ETHIOPIC SYLLABLE NYA */ + [0x1299, 0x1299], /* ETHIOPIC SYLLABLE NYU */ + [0x129a, 0x129a], /* ETHIOPIC SYLLABLE NYI */ + [0x129b, 0x129b], /* ETHIOPIC SYLLABLE NYAA */ + [0x129c, 0x129c], /* ETHIOPIC SYLLABLE NYEE */ + [0x129d, 0x129d], /* ETHIOPIC SYLLABLE NYE */ + [0x129e, 0x129e], /* ETHIOPIC SYLLABLE NYO */ + [0x129f, 0x129f], /* ETHIOPIC SYLLABLE NYWA */ + [0x12a0, 0x12a0], /* ETHIOPIC SYLLABLE GLOTTAL A */ + [0x12a1, 0x12a1], /* ETHIOPIC SYLLABLE GLOTTAL U */ + [0x12a2, 0x12a2], /* ETHIOPIC SYLLABLE GLOTTAL I */ + [0x12a3, 0x12a3], /* ETHIOPIC SYLLABLE GLOTTAL AA */ + [0x12a4, 0x12a4], /* ETHIOPIC SYLLABLE GLOTTAL EE */ + [0x12a5, 0x12a5], /* ETHIOPIC SYLLABLE GLOTTAL E */ + [0x12a6, 0x12a6], /* ETHIOPIC SYLLABLE GLOTTAL O */ + [0x12a7, 0x12a7], /* ETHIOPIC SYLLABLE GLOTTAL WA */ + [0x12a8, 0x12a8], /* ETHIOPIC SYLLABLE KA */ + [0x12a9, 0x12a9], /* ETHIOPIC SYLLABLE KU */ + [0x12aa, 0x12aa], /* ETHIOPIC SYLLABLE KI */ + [0x12ab, 0x12ab], /* ETHIOPIC SYLLABLE KAA */ + [0x12ac, 0x12ac], /* ETHIOPIC SYLLABLE KEE */ + [0x12ad, 0x12ad], /* ETHIOPIC SYLLABLE KE */ + [0x12ae, 0x12ae], /* ETHIOPIC SYLLABLE KO */ + [0x12af, 0x12af], /* ETHIOPIC SYLLABLE KOA */ + [0x12b0, 0x12b0], /* ETHIOPIC SYLLABLE KWA */ + [0x12b1, 0x12b1], + [0x12b2, 0x12b2], /* ETHIOPIC SYLLABLE KWI */ + [0x12b3, 0x12b3], /* ETHIOPIC SYLLABLE KWAA */ + [0x12b4, 0x12b4], /* ETHIOPIC SYLLABLE KWEE */ + [0x12b5, 0x12b5], /* ETHIOPIC SYLLABLE KWE */ + [0x12b6, 0x12b6], + [0x12b7, 0x12b7], + [0x12b8, 0x12b8], /* ETHIOPIC SYLLABLE KXA */ + [0x12b9, 0x12b9], /* ETHIOPIC SYLLABLE KXU */ + [0x12ba, 0x12ba], /* ETHIOPIC SYLLABLE KXI */ + [0x12bb, 0x12bb], /* ETHIOPIC SYLLABLE KXAA */ + [0x12bc, 0x12bc], /* ETHIOPIC SYLLABLE KXEE */ + [0x12bd, 0x12bd], /* ETHIOPIC SYLLABLE KXE */ + [0x12be, 0x12be], /* ETHIOPIC SYLLABLE KXO */ + [0x12bf, 0x12bf], + [0x12c0, 0x12c0], /* ETHIOPIC SYLLABLE KXWA */ + [0x12c1, 0x12c1], + [0x12c2, 0x12c2], /* ETHIOPIC SYLLABLE KXWI */ + [0x12c3, 0x12c3], /* ETHIOPIC SYLLABLE KXWAA */ + [0x12c4, 0x12c4], /* ETHIOPIC SYLLABLE KXWEE */ + [0x12c5, 0x12c5], /* ETHIOPIC SYLLABLE KXWE */ + [0x12c6, 0x12c6], + [0x12c7, 0x12c7], + [0x12c8, 0x12c8], /* ETHIOPIC SYLLABLE WA */ + [0x12c9, 0x12c9], /* ETHIOPIC SYLLABLE WU */ + [0x12ca, 0x12ca], /* ETHIOPIC SYLLABLE WI */ + [0x12cb, 0x12cb], /* ETHIOPIC SYLLABLE WAA */ + [0x12cc, 0x12cc], /* ETHIOPIC SYLLABLE WEE */ + [0x12cd, 0x12cd], /* ETHIOPIC SYLLABLE WE */ + [0x12ce, 0x12ce], /* ETHIOPIC SYLLABLE WO */ + [0x12cf, 0x12cf], /* ETHIOPIC SYLLABLE WOA */ + [0x12d0, 0x12d0], /* ETHIOPIC SYLLABLE PHARYNGEAL A */ + [0x12d1, 0x12d1], /* ETHIOPIC SYLLABLE PHARYNGEAL U */ + [0x12d2, 0x12d2], /* ETHIOPIC SYLLABLE PHARYNGEAL I */ + [0x12d3, 0x12d3], /* ETHIOPIC SYLLABLE PHARYNGEAL AA */ + [0x12d4, 0x12d4], /* ETHIOPIC SYLLABLE PHARYNGEAL EE */ + [0x12d5, 0x12d5], /* ETHIOPIC SYLLABLE PHARYNGEAL E */ + [0x12d6, 0x12d6], /* ETHIOPIC SYLLABLE PHARYNGEAL O */ + [0x12d7, 0x12d7], + [0x12d8, 0x12d8], /* ETHIOPIC SYLLABLE ZA */ + [0x12d9, 0x12d9], /* ETHIOPIC SYLLABLE ZU */ + [0x12da, 0x12da], /* ETHIOPIC SYLLABLE ZI */ + [0x12db, 0x12db], /* ETHIOPIC SYLLABLE ZAA */ + [0x12dc, 0x12dc], /* ETHIOPIC SYLLABLE ZEE */ + [0x12dd, 0x12dd], /* ETHIOPIC SYLLABLE ZE */ + [0x12de, 0x12de], /* ETHIOPIC SYLLABLE ZO */ + [0x12df, 0x12df], /* ETHIOPIC SYLLABLE ZWA */ + [0x12e0, 0x12e0], /* ETHIOPIC SYLLABLE ZHA */ + [0x12e1, 0x12e1], /* ETHIOPIC SYLLABLE ZHU */ + [0x12e2, 0x12e2], /* ETHIOPIC SYLLABLE ZHI */ + [0x12e3, 0x12e3], /* ETHIOPIC SYLLABLE ZHAA */ + [0x12e4, 0x12e4], /* ETHIOPIC SYLLABLE ZHEE */ + [0x12e5, 0x12e5], /* ETHIOPIC SYLLABLE ZHE */ + [0x12e6, 0x12e6], /* ETHIOPIC SYLLABLE ZHO */ + [0x12e7, 0x12e7], /* ETHIOPIC SYLLABLE ZHWA */ + [0x12e8, 0x12e8], /* ETHIOPIC SYLLABLE YA */ + [0x12e9, 0x12e9], /* ETHIOPIC SYLLABLE YU */ + [0x12ea, 0x12ea], /* ETHIOPIC SYLLABLE YI */ + [0x12eb, 0x12eb], /* ETHIOPIC SYLLABLE YAA */ + [0x12ec, 0x12ec], /* ETHIOPIC SYLLABLE YEE */ + [0x12ed, 0x12ed], /* ETHIOPIC SYLLABLE YE */ + [0x12ee, 0x12ee], /* ETHIOPIC SYLLABLE YO */ + [0x12ef, 0x12ef], /* ETHIOPIC SYLLABLE YOA */ + [0x12f0, 0x12f0], /* ETHIOPIC SYLLABLE DA */ + [0x12f1, 0x12f1], /* ETHIOPIC SYLLABLE DU */ + [0x12f2, 0x12f2], /* ETHIOPIC SYLLABLE DI */ + [0x12f3, 0x12f3], /* ETHIOPIC SYLLABLE DAA */ + [0x12f4, 0x12f4], /* ETHIOPIC SYLLABLE DEE */ + [0x12f5, 0x12f5], /* ETHIOPIC SYLLABLE DE */ + [0x12f6, 0x12f6], /* ETHIOPIC SYLLABLE DO */ + [0x12f7, 0x12f7], /* ETHIOPIC SYLLABLE DWA */ + [0x12f8, 0x12f8], /* ETHIOPIC SYLLABLE DDA */ + [0x12f9, 0x12f9], /* ETHIOPIC SYLLABLE DDU */ + [0x12fa, 0x12fa], /* ETHIOPIC SYLLABLE DDI */ + [0x12fb, 0x12fb], /* ETHIOPIC SYLLABLE DDAA */ + [0x12fc, 0x12fc], /* ETHIOPIC SYLLABLE DDEE */ + [0x12fd, 0x12fd], /* ETHIOPIC SYLLABLE DDE */ + [0x12fe, 0x12fe], /* ETHIOPIC SYLLABLE DDO */ + [0x12ff, 0x12ff], /* ETHIOPIC SYLLABLE DDWA */ + [0x1300, 0x1300], /* ETHIOPIC SYLLABLE JA */ + [0x1301, 0x1301], /* ETHIOPIC SYLLABLE JU */ + [0x1302, 0x1302], /* ETHIOPIC SYLLABLE JI */ + [0x1303, 0x1303], /* ETHIOPIC SYLLABLE JAA */ + [0x1304, 0x1304], /* ETHIOPIC SYLLABLE JEE */ + [0x1305, 0x1305], /* ETHIOPIC SYLLABLE JE */ + [0x1306, 0x1306], /* ETHIOPIC SYLLABLE JO */ + [0x1307, 0x1307], /* ETHIOPIC SYLLABLE JWA */ + [0x1308, 0x1308], /* ETHIOPIC SYLLABLE GA */ + [0x1309, 0x1309], /* ETHIOPIC SYLLABLE GU */ + [0x130a, 0x130a], /* ETHIOPIC SYLLABLE GI */ + [0x130b, 0x130b], /* ETHIOPIC SYLLABLE GAA */ + [0x130c, 0x130c], /* ETHIOPIC SYLLABLE GEE */ + [0x130d, 0x130d], /* ETHIOPIC SYLLABLE GE */ + [0x130e, 0x130e], /* ETHIOPIC SYLLABLE GO */ + [0x130f, 0x130f], /* ETHIOPIC SYLLABLE GOA */ + [0x1310, 0x1310], /* ETHIOPIC SYLLABLE GWA */ + [0x1311, 0x1311], + [0x1312, 0x1312], /* ETHIOPIC SYLLABLE GWI */ + [0x1313, 0x1313], /* ETHIOPIC SYLLABLE GWAA */ + [0x1314, 0x1314], /* ETHIOPIC SYLLABLE GWEE */ + [0x1315, 0x1315], /* ETHIOPIC SYLLABLE GWE */ + [0x1316, 0x1316], + [0x1317, 0x1317], + [0x1318, 0x1318], /* ETHIOPIC SYLLABLE GGA */ + [0x1319, 0x1319], /* ETHIOPIC SYLLABLE GGU */ + [0x131a, 0x131a], /* ETHIOPIC SYLLABLE GGI */ + [0x131b, 0x131b], /* ETHIOPIC SYLLABLE GGAA */ + [0x131c, 0x131c], /* ETHIOPIC SYLLABLE GGEE */ + [0x131d, 0x131d], /* ETHIOPIC SYLLABLE GGE */ + [0x131e, 0x131e], /* ETHIOPIC SYLLABLE GGO */ + [0x131f, 0x131f], /* ETHIOPIC SYLLABLE GGWAA */ + [0x1320, 0x1320], /* ETHIOPIC SYLLABLE THA */ + [0x1321, 0x1321], /* ETHIOPIC SYLLABLE THU */ + [0x1322, 0x1322], /* ETHIOPIC SYLLABLE THI */ + [0x1323, 0x1323], /* ETHIOPIC SYLLABLE THAA */ + [0x1324, 0x1324], /* ETHIOPIC SYLLABLE THEE */ + [0x1325, 0x1325], /* ETHIOPIC SYLLABLE THE */ + [0x1326, 0x1326], /* ETHIOPIC SYLLABLE THO */ + [0x1327, 0x1327], /* ETHIOPIC SYLLABLE THWA */ + [0x1328, 0x1328], /* ETHIOPIC SYLLABLE CHA */ + [0x1329, 0x1329], /* ETHIOPIC SYLLABLE CHU */ + [0x132a, 0x132a], /* ETHIOPIC SYLLABLE CHI */ + [0x132b, 0x132b], /* ETHIOPIC SYLLABLE CHAA */ + [0x132c, 0x132c], /* ETHIOPIC SYLLABLE CHEE */ + [0x132d, 0x132d], /* ETHIOPIC SYLLABLE CHE */ + [0x132e, 0x132e], /* ETHIOPIC SYLLABLE CHO */ + [0x132f, 0x132f], /* ETHIOPIC SYLLABLE CHWA */ + [0x1330, 0x1330], /* ETHIOPIC SYLLABLE PHA */ + [0x1331, 0x1331], /* ETHIOPIC SYLLABLE PHU */ + [0x1332, 0x1332], /* ETHIOPIC SYLLABLE PHI */ + [0x1333, 0x1333], /* ETHIOPIC SYLLABLE PHAA */ + [0x1334, 0x1334], /* ETHIOPIC SYLLABLE PHEE */ + [0x1335, 0x1335], /* ETHIOPIC SYLLABLE PHE */ + [0x1336, 0x1336], /* ETHIOPIC SYLLABLE PHO */ + [0x1337, 0x1337], /* ETHIOPIC SYLLABLE PHWA */ + [0x1338, 0x1338], /* ETHIOPIC SYLLABLE TSA */ + [0x1339, 0x1339], /* ETHIOPIC SYLLABLE TSU */ + [0x133a, 0x133a], /* ETHIOPIC SYLLABLE TSI */ + [0x133b, 0x133b], /* ETHIOPIC SYLLABLE TSAA */ + [0x133c, 0x133c], /* ETHIOPIC SYLLABLE TSEE */ + [0x133d, 0x133d], /* ETHIOPIC SYLLABLE TSE */ + [0x133e, 0x133e], /* ETHIOPIC SYLLABLE TSO */ + [0x133f, 0x133f], /* ETHIOPIC SYLLABLE TSWA */ + [0x1340, 0x1340], /* ETHIOPIC SYLLABLE TZA */ + [0x1341, 0x1341], /* ETHIOPIC SYLLABLE TZU */ + [0x1342, 0x1342], /* ETHIOPIC SYLLABLE TZI */ + [0x1343, 0x1343], /* ETHIOPIC SYLLABLE TZAA */ + [0x1344, 0x1344], /* ETHIOPIC SYLLABLE TZEE */ + [0x1345, 0x1345], /* ETHIOPIC SYLLABLE TZE */ + [0x1346, 0x1346], /* ETHIOPIC SYLLABLE TZO */ + [0x1347, 0x1347], /* ETHIOPIC SYLLABLE TZOA */ + [0x1348, 0x1348], /* ETHIOPIC SYLLABLE FA */ + [0x1349, 0x1349], /* ETHIOPIC SYLLABLE FU */ + [0x134a, 0x134a], /* ETHIOPIC SYLLABLE FI */ + [0x134b, 0x134b], /* ETHIOPIC SYLLABLE FAA */ + [0x134c, 0x134c], /* ETHIOPIC SYLLABLE FEE */ + [0x134d, 0x134d], /* ETHIOPIC SYLLABLE FE */ + [0x134e, 0x134e], /* ETHIOPIC SYLLABLE FO */ + [0x134f, 0x134f], /* ETHIOPIC SYLLABLE FWA */ + [0x1350, 0x1350], /* ETHIOPIC SYLLABLE PA */ + [0x1351, 0x1351], /* ETHIOPIC SYLLABLE PU */ + [0x1352, 0x1352], /* ETHIOPIC SYLLABLE PI */ + [0x1353, 0x1353], /* ETHIOPIC SYLLABLE PAA */ + [0x1354, 0x1354], /* ETHIOPIC SYLLABLE PEE */ + [0x1355, 0x1355], /* ETHIOPIC SYLLABLE PE */ + [0x1356, 0x1356], /* ETHIOPIC SYLLABLE PO */ + [0x1357, 0x1357], /* ETHIOPIC SYLLABLE PWA */ + [0x1358, 0x1358], /* ETHIOPIC SYLLABLE RYA */ + [0x1359, 0x1359], /* ETHIOPIC SYLLABLE MYA */ + [0x135a, 0x135a], /* ETHIOPIC SYLLABLE FYA */ + [0x135b, 0x135b], + [0x135c, 0x135c], + [0x135d, 0x135d], /* ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK */ + [0x135e, 0x135e], /* ETHIOPIC COMBINING VOWEL LENGTH MARK */ + [0x135f, 0x135f], /* ETHIOPIC COMBINING GEMINATION MARK */ + [0x1360, 0x1360], /* ETHIOPIC SECTION MARK */ + [0x1361, 0x1361], /* ETHIOPIC WORDSPACE */ + [0x1362, 0x1362], /* ETHIOPIC FULL STOP */ + [0x1363, 0x1363], /* ETHIOPIC COMMA */ + [0x1364, 0x1364], /* ETHIOPIC SEMICOLON */ + [0x1365, 0x1365], /* ETHIOPIC COLON */ + [0x1366, 0x1366], /* ETHIOPIC PREFACE COLON */ + [0x1367, 0x1367], /* ETHIOPIC QUESTION MARK */ + [0x1368, 0x1368], /* ETHIOPIC PARAGRAPH SEPARATOR */ + [0x1369, 0x1369], /* ETHIOPIC DIGIT ONE */ + [0x136a, 0x136a], /* ETHIOPIC DIGIT TWO */ + [0x136b, 0x136b], /* ETHIOPIC DIGIT THREE */ + [0x136c, 0x136c], /* ETHIOPIC DIGIT FOUR */ + [0x136d, 0x136d], /* ETHIOPIC DIGIT FIVE */ + [0x136e, 0x136e], /* ETHIOPIC DIGIT SIX */ + [0x136f, 0x136f], /* ETHIOPIC DIGIT SEVEN */ + [0x1370, 0x1370], /* ETHIOPIC DIGIT EIGHT */ + [0x1371, 0x1371], /* ETHIOPIC DIGIT NINE */ + [0x1372, 0x1372], /* ETHIOPIC NUMBER TEN */ + [0x1373, 0x1373], /* ETHIOPIC NUMBER TWENTY */ + [0x1374, 0x1374], /* ETHIOPIC NUMBER THIRTY */ + [0x1375, 0x1375], /* ETHIOPIC NUMBER FORTY */ + [0x1376, 0x1376], /* ETHIOPIC NUMBER FIFTY */ + [0x1377, 0x1377], /* ETHIOPIC NUMBER SIXTY */ + [0x1378, 0x1378], /* ETHIOPIC NUMBER SEVENTY */ + [0x1379, 0x1379], /* ETHIOPIC NUMBER EIGHTY */ + [0x137a, 0x137a], /* ETHIOPIC NUMBER NINETY */ + [0x137b, 0x137b], /* ETHIOPIC NUMBER HUNDRED */ + [0x137c, 0x137c], /* ETHIOPIC NUMBER TEN THOUSAND */ + [0x137d, 0x137d], + [0x137e, 0x137e], + [0x137f, 0x137f], + [0x1380, 0x1380], /* ETHIOPIC SYLLABLE SEBATBEIT MWA */ + [0x1381, 0x1381], /* ETHIOPIC SYLLABLE MWI */ + [0x1382, 0x1382], /* ETHIOPIC SYLLABLE MWEE */ + [0x1383, 0x1383], /* ETHIOPIC SYLLABLE MWE */ + [0x1384, 0x1384], /* ETHIOPIC SYLLABLE SEBATBEIT BWA */ + [0x1385, 0x1385], /* ETHIOPIC SYLLABLE BWI */ + [0x1386, 0x1386], /* ETHIOPIC SYLLABLE BWEE */ + [0x1387, 0x1387], /* ETHIOPIC SYLLABLE BWE */ + [0x1388, 0x1388], /* ETHIOPIC SYLLABLE SEBATBEIT FWA */ + [0x1389, 0x1389], /* ETHIOPIC SYLLABLE FWI */ + [0x138a, 0x138a], /* ETHIOPIC SYLLABLE FWEE */ + [0x138b, 0x138b], /* ETHIOPIC SYLLABLE FWE */ + [0x138c, 0x138c], /* ETHIOPIC SYLLABLE SEBATBEIT PWA */ + [0x138d, 0x138d], /* ETHIOPIC SYLLABLE PWI */ + [0x138e, 0x138e], /* ETHIOPIC SYLLABLE PWEE */ + [0x138f, 0x138f], /* ETHIOPIC SYLLABLE PWE */ + [0x1390, 0x1390], /* ETHIOPIC TONAL MARK YIZET */ + [0x1391, 0x1391], /* ETHIOPIC TONAL MARK DERET */ + [0x1392, 0x1392], /* ETHIOPIC TONAL MARK RIKRIK */ + [0x1393, 0x1393], /* ETHIOPIC TONAL MARK SHORT RIKRIK */ + [0x1394, 0x1394], /* ETHIOPIC TONAL MARK DIFAT */ + [0x1395, 0x1395], /* ETHIOPIC TONAL MARK KENAT */ + [0x1396, 0x1396], /* ETHIOPIC TONAL MARK CHIRET */ + [0x1397, 0x1397], /* ETHIOPIC TONAL MARK HIDET */ + [0x1398, 0x1398], /* ETHIOPIC TONAL MARK DERET-HIDET */ + [0x1399, 0x1399], /* ETHIOPIC TONAL MARK KURT */ + [0x139a, 0x139a], + [0x139b, 0x139b], + [0x139c, 0x139c], + [0x139d, 0x139d], + [0x139e, 0x139e], + [0x139f, 0x139f], + [0x13a0, 0xab70], /* CHEROKEE LETTER A */ + [0x13a1, 0xab71], /* CHEROKEE LETTER E */ + [0x13a2, 0xab72], /* CHEROKEE LETTER I */ + [0x13a3, 0xab73], /* CHEROKEE LETTER O */ + [0x13a4, 0xab74], /* CHEROKEE LETTER U */ + [0x13a5, 0xab75], /* CHEROKEE LETTER V */ + [0x13a6, 0xab76], /* CHEROKEE LETTER GA */ + [0x13a7, 0xab77], /* CHEROKEE LETTER KA */ + [0x13a8, 0xab78], /* CHEROKEE LETTER GE */ + [0x13a9, 0xab79], /* CHEROKEE LETTER GI */ + [0x13aa, 0xab7a], /* CHEROKEE LETTER GO */ + [0x13ab, 0xab7b], /* CHEROKEE LETTER GU */ + [0x13ac, 0xab7c], /* CHEROKEE LETTER GV */ + [0x13ad, 0xab7d], /* CHEROKEE LETTER HA */ + [0x13ae, 0xab7e], /* CHEROKEE LETTER HE */ + [0x13af, 0xab7f], /* CHEROKEE LETTER HI */ + [0x13b0, 0xab80], /* CHEROKEE LETTER HO */ + [0x13b1, 0xab81], /* CHEROKEE LETTER HU */ + [0x13b2, 0xab82], /* CHEROKEE LETTER HV */ + [0x13b3, 0xab83], /* CHEROKEE LETTER LA */ + [0x13b4, 0xab84], /* CHEROKEE LETTER LE */ + [0x13b5, 0xab85], /* CHEROKEE LETTER LI */ + [0x13b6, 0xab86], /* CHEROKEE LETTER LO */ + [0x13b7, 0xab87], /* CHEROKEE LETTER LU */ + [0x13b8, 0xab88], /* CHEROKEE LETTER LV */ + [0x13b9, 0xab89], /* CHEROKEE LETTER MA */ + [0x13ba, 0xab8a], /* CHEROKEE LETTER ME */ + [0x13bb, 0xab8b], /* CHEROKEE LETTER MI */ + [0x13bc, 0xab8c], /* CHEROKEE LETTER MO */ + [0x13bd, 0xab8d], /* CHEROKEE LETTER MU */ + [0x13be, 0xab8e], /* CHEROKEE LETTER NA */ + [0x13bf, 0xab8f], /* CHEROKEE LETTER HNA */ + [0x13c0, 0xab90], /* CHEROKEE LETTER NAH */ + [0x13c1, 0xab91], /* CHEROKEE LETTER NE */ + [0x13c2, 0xab92], /* CHEROKEE LETTER NI */ + [0x13c3, 0xab93], /* CHEROKEE LETTER NO */ + [0x13c4, 0xab94], /* CHEROKEE LETTER NU */ + [0x13c5, 0xab95], /* CHEROKEE LETTER NV */ + [0x13c6, 0xab96], /* CHEROKEE LETTER QUA */ + [0x13c7, 0xab97], /* CHEROKEE LETTER QUE */ + [0x13c8, 0xab98], /* CHEROKEE LETTER QUI */ + [0x13c9, 0xab99], /* CHEROKEE LETTER QUO */ + [0x13ca, 0xab9a], /* CHEROKEE LETTER QUU */ + [0x13cb, 0xab9b], /* CHEROKEE LETTER QUV */ + [0x13cc, 0xab9c], /* CHEROKEE LETTER SA */ + [0x13cd, 0xab9d], /* CHEROKEE LETTER S */ + [0x13ce, 0xab9e], /* CHEROKEE LETTER SE */ + [0x13cf, 0xab9f], /* CHEROKEE LETTER SI */ + [0x13d0, 0xaba0], /* CHEROKEE LETTER SO */ + [0x13d1, 0xaba1], /* CHEROKEE LETTER SU */ + [0x13d2, 0xaba2], /* CHEROKEE LETTER SV */ + [0x13d3, 0xaba3], /* CHEROKEE LETTER DA */ + [0x13d4, 0xaba4], /* CHEROKEE LETTER TA */ + [0x13d5, 0xaba5], /* CHEROKEE LETTER DE */ + [0x13d6, 0xaba6], /* CHEROKEE LETTER TE */ + [0x13d7, 0xaba7], /* CHEROKEE LETTER DI */ + [0x13d8, 0xaba8], /* CHEROKEE LETTER TI */ + [0x13d9, 0xaba9], /* CHEROKEE LETTER DO */ + [0x13da, 0xabaa], /* CHEROKEE LETTER DU */ + [0x13db, 0xabab], /* CHEROKEE LETTER DV */ + [0x13dc, 0xabac], /* CHEROKEE LETTER DLA */ + [0x13dd, 0xabad], /* CHEROKEE LETTER TLA */ + [0x13de, 0xabae], /* CHEROKEE LETTER TLE */ + [0x13df, 0xabaf], /* CHEROKEE LETTER TLI */ + [0x13e0, 0xabb0], /* CHEROKEE LETTER TLO */ + [0x13e1, 0xabb1], /* CHEROKEE LETTER TLU */ + [0x13e2, 0xabb2], /* CHEROKEE LETTER TLV */ + [0x13e3, 0xabb3], /* CHEROKEE LETTER TSA */ + [0x13e4, 0xabb4], /* CHEROKEE LETTER TSE */ + [0x13e5, 0xabb5], /* CHEROKEE LETTER TSI */ + [0x13e6, 0xabb6], /* CHEROKEE LETTER TSO */ + [0x13e7, 0xabb7], /* CHEROKEE LETTER TSU */ + [0x13e8, 0xabb8], /* CHEROKEE LETTER TSV */ + [0x13e9, 0xabb9], /* CHEROKEE LETTER WA */ + [0x13ea, 0xabba], /* CHEROKEE LETTER WE */ + [0x13eb, 0xabbb], /* CHEROKEE LETTER WI */ + [0x13ec, 0xabbc], /* CHEROKEE LETTER WO */ + [0x13ed, 0xabbd], /* CHEROKEE LETTER WU */ + [0x13ee, 0xabbe], /* CHEROKEE LETTER WV */ + [0x13ef, 0xabbf], /* CHEROKEE LETTER YA */ + [0x13f0, 0x13f8], /* CHEROKEE LETTER YE */ + [0x13f1, 0x13f9], /* CHEROKEE LETTER YI */ + [0x13f2, 0x13fa], /* CHEROKEE LETTER YO */ + [0x13f3, 0x13fb], /* CHEROKEE LETTER YU */ + [0x13f4, 0x13fc], /* CHEROKEE LETTER YV */ + [0x13f5, 0x13fd], /* CHEROKEE LETTER MV */ + [0x13f6, 0x13f6], + [0x13f7, 0x13f7], + [0x13f0, 0x13f8], /* CHEROKEE SMALL LETTER YE */ + [0x13f1, 0x13f9], /* CHEROKEE SMALL LETTER YI */ + [0x13f2, 0x13fa], /* CHEROKEE SMALL LETTER YO */ + [0x13f3, 0x13fb], /* CHEROKEE SMALL LETTER YU */ + [0x13f4, 0x13fc], /* CHEROKEE SMALL LETTER YV */ + [0x13f5, 0x13fd], /* CHEROKEE SMALL LETTER MV */ + [0x13fe, 0x13fe], + [0x13ff, 0x13ff], + [0x1400, 0x1400], /* CANADIAN SYLLABICS HYPHEN */ + [0x1401, 0x1401], /* CANADIAN SYLLABICS E */ + [0x1402, 0x1402], /* CANADIAN SYLLABICS AAI */ + [0x1403, 0x1403], /* CANADIAN SYLLABICS I */ + [0x1404, 0x1404], /* CANADIAN SYLLABICS II */ + [0x1405, 0x1405], /* CANADIAN SYLLABICS O */ + [0x1406, 0x1406], /* CANADIAN SYLLABICS OO */ + [0x1407, 0x1407], /* CANADIAN SYLLABICS Y-CREE OO */ + [0x1408, 0x1408], /* CANADIAN SYLLABICS CARRIER EE */ + [0x1409, 0x1409], /* CANADIAN SYLLABICS CARRIER I */ + [0x140a, 0x140a], /* CANADIAN SYLLABICS A */ + [0x140b, 0x140b], /* CANADIAN SYLLABICS AA */ + [0x140c, 0x140c], /* CANADIAN SYLLABICS WE */ + [0x140d, 0x140d], /* CANADIAN SYLLABICS WEST-CREE WE */ + [0x140e, 0x140e], /* CANADIAN SYLLABICS WI */ + [0x140f, 0x140f], /* CANADIAN SYLLABICS WEST-CREE WI */ + [0x1410, 0x1410], /* CANADIAN SYLLABICS WII */ + [0x1411, 0x1411], /* CANADIAN SYLLABICS WEST-CREE WII */ + [0x1412, 0x1412], /* CANADIAN SYLLABICS WO */ + [0x1413, 0x1413], /* CANADIAN SYLLABICS WEST-CREE WO */ + [0x1414, 0x1414], /* CANADIAN SYLLABICS WOO */ + [0x1415, 0x1415], /* CANADIAN SYLLABICS WEST-CREE WOO */ + [0x1416, 0x1416], /* CANADIAN SYLLABICS NASKAPI WOO */ + [0x1417, 0x1417], /* CANADIAN SYLLABICS WA */ + [0x1418, 0x1418], /* CANADIAN SYLLABICS WEST-CREE WA */ + [0x1419, 0x1419], /* CANADIAN SYLLABICS WAA */ + [0x141a, 0x141a], /* CANADIAN SYLLABICS WEST-CREE WAA */ + [0x141b, 0x141b], /* CANADIAN SYLLABICS NASKAPI WAA */ + [0x141c, 0x141c], /* CANADIAN SYLLABICS AI */ + [0x141d, 0x141d], /* CANADIAN SYLLABICS Y-CREE W */ + [0x141e, 0x141e], /* CANADIAN SYLLABICS GLOTTAL STOP */ + [0x141f, 0x141f], /* CANADIAN SYLLABICS FINAL ACUTE */ + [0x1420, 0x1420], /* CANADIAN SYLLABICS FINAL GRAVE */ + [0x1421, 0x1421], /* CANADIAN SYLLABICS FINAL BOTTOM HALF RING */ + [0x1422, 0x1422], /* CANADIAN SYLLABICS FINAL TOP HALF RING */ + [0x1423, 0x1423], /* CANADIAN SYLLABICS FINAL RIGHT HALF RING */ + [0x1424, 0x1424], /* CANADIAN SYLLABICS FINAL RING */ + [0x1425, 0x1425], /* CANADIAN SYLLABICS FINAL DOUBLE ACUTE */ + [0x1426, 0x1426], /* CANADIAN SYLLABICS FINAL DOUBLE SHORT VERTICAL STROKES */ + [0x1427, 0x1427], /* CANADIAN SYLLABICS FINAL MIDDLE DOT */ + [0x1428, 0x1428], /* CANADIAN SYLLABICS FINAL SHORT HORIZONTAL STROKE */ + [0x1429, 0x1429], /* CANADIAN SYLLABICS FINAL PLUS */ + [0x142a, 0x142a], /* CANADIAN SYLLABICS FINAL DOWN TACK */ + [0x142b, 0x142b], /* CANADIAN SYLLABICS EN */ + [0x142c, 0x142c], /* CANADIAN SYLLABICS IN */ + [0x142d, 0x142d], /* CANADIAN SYLLABICS ON */ + [0x142e, 0x142e], /* CANADIAN SYLLABICS AN */ + [0x142f, 0x142f], /* CANADIAN SYLLABICS PE */ + [0x1430, 0x1430], /* CANADIAN SYLLABICS PAAI */ + [0x1431, 0x1431], /* CANADIAN SYLLABICS PI */ + [0x1432, 0x1432], /* CANADIAN SYLLABICS PII */ + [0x1433, 0x1433], /* CANADIAN SYLLABICS PO */ + [0x1434, 0x1434], /* CANADIAN SYLLABICS POO */ + [0x1435, 0x1435], /* CANADIAN SYLLABICS Y-CREE POO */ + [0x1436, 0x1436], /* CANADIAN SYLLABICS CARRIER HEE */ + [0x1437, 0x1437], /* CANADIAN SYLLABICS CARRIER HI */ + [0x1438, 0x1438], /* CANADIAN SYLLABICS PA */ + [0x1439, 0x1439], /* CANADIAN SYLLABICS PAA */ + [0x143a, 0x143a], /* CANADIAN SYLLABICS PWE */ + [0x143b, 0x143b], /* CANADIAN SYLLABICS WEST-CREE PWE */ + [0x143c, 0x143c], /* CANADIAN SYLLABICS PWI */ + [0x143d, 0x143d], /* CANADIAN SYLLABICS WEST-CREE PWI */ + [0x143e, 0x143e], /* CANADIAN SYLLABICS PWII */ + [0x143f, 0x143f], /* CANADIAN SYLLABICS WEST-CREE PWII */ + [0x1440, 0x1440], /* CANADIAN SYLLABICS PWO */ + [0x1441, 0x1441], /* CANADIAN SYLLABICS WEST-CREE PWO */ + [0x1442, 0x1442], /* CANADIAN SYLLABICS PWOO */ + [0x1443, 0x1443], /* CANADIAN SYLLABICS WEST-CREE PWOO */ + [0x1444, 0x1444], /* CANADIAN SYLLABICS PWA */ + [0x1445, 0x1445], /* CANADIAN SYLLABICS WEST-CREE PWA */ + [0x1446, 0x1446], /* CANADIAN SYLLABICS PWAA */ + [0x1447, 0x1447], /* CANADIAN SYLLABICS WEST-CREE PWAA */ + [0x1448, 0x1448], /* CANADIAN SYLLABICS Y-CREE PWAA */ + [0x1449, 0x1449], /* CANADIAN SYLLABICS P */ + [0x144a, 0x144a], /* CANADIAN SYLLABICS WEST-CREE P */ + [0x144b, 0x144b], /* CANADIAN SYLLABICS CARRIER H */ + [0x144c, 0x144c], /* CANADIAN SYLLABICS TE */ + [0x144d, 0x144d], /* CANADIAN SYLLABICS TAAI */ + [0x144e, 0x144e], /* CANADIAN SYLLABICS TI */ + [0x144f, 0x144f], /* CANADIAN SYLLABICS TII */ + [0x1450, 0x1450], /* CANADIAN SYLLABICS TO */ + [0x1451, 0x1451], /* CANADIAN SYLLABICS TOO */ + [0x1452, 0x1452], /* CANADIAN SYLLABICS Y-CREE TOO */ + [0x1453, 0x1453], /* CANADIAN SYLLABICS CARRIER DEE */ + [0x1454, 0x1454], /* CANADIAN SYLLABICS CARRIER DI */ + [0x1455, 0x1455], /* CANADIAN SYLLABICS TA */ + [0x1456, 0x1456], /* CANADIAN SYLLABICS TAA */ + [0x1457, 0x1457], /* CANADIAN SYLLABICS TWE */ + [0x1458, 0x1458], /* CANADIAN SYLLABICS WEST-CREE TWE */ + [0x1459, 0x1459], /* CANADIAN SYLLABICS TWI */ + [0x145a, 0x145a], /* CANADIAN SYLLABICS WEST-CREE TWI */ + [0x145b, 0x145b], /* CANADIAN SYLLABICS TWII */ + [0x145c, 0x145c], /* CANADIAN SYLLABICS WEST-CREE TWII */ + [0x145d, 0x145d], /* CANADIAN SYLLABICS TWO */ + [0x145e, 0x145e], /* CANADIAN SYLLABICS WEST-CREE TWO */ + [0x145f, 0x145f], /* CANADIAN SYLLABICS TWOO */ + [0x1460, 0x1460], /* CANADIAN SYLLABICS WEST-CREE TWOO */ + [0x1461, 0x1461], /* CANADIAN SYLLABICS TWA */ + [0x1462, 0x1462], /* CANADIAN SYLLABICS WEST-CREE TWA */ + [0x1463, 0x1463], /* CANADIAN SYLLABICS TWAA */ + [0x1464, 0x1464], /* CANADIAN SYLLABICS WEST-CREE TWAA */ + [0x1465, 0x1465], /* CANADIAN SYLLABICS NASKAPI TWAA */ + [0x1466, 0x1466], /* CANADIAN SYLLABICS T */ + [0x1467, 0x1467], /* CANADIAN SYLLABICS TTE */ + [0x1468, 0x1468], /* CANADIAN SYLLABICS TTI */ + [0x1469, 0x1469], /* CANADIAN SYLLABICS TTO */ + [0x146a, 0x146a], /* CANADIAN SYLLABICS TTA */ + [0x146b, 0x146b], /* CANADIAN SYLLABICS KE */ + [0x146c, 0x146c], /* CANADIAN SYLLABICS KAAI */ + [0x146d, 0x146d], /* CANADIAN SYLLABICS KI */ + [0x146e, 0x146e], /* CANADIAN SYLLABICS KII */ + [0x146f, 0x146f], /* CANADIAN SYLLABICS KO */ + [0x1470, 0x1470], /* CANADIAN SYLLABICS KOO */ + [0x1471, 0x1471], /* CANADIAN SYLLABICS Y-CREE KOO */ + [0x1472, 0x1472], /* CANADIAN SYLLABICS KA */ + [0x1473, 0x1473], /* CANADIAN SYLLABICS KAA */ + [0x1474, 0x1474], /* CANADIAN SYLLABICS KWE */ + [0x1475, 0x1475], /* CANADIAN SYLLABICS WEST-CREE KWE */ + [0x1476, 0x1476], /* CANADIAN SYLLABICS KWI */ + [0x1477, 0x1477], /* CANADIAN SYLLABICS WEST-CREE KWI */ + [0x1478, 0x1478], /* CANADIAN SYLLABICS KWII */ + [0x1479, 0x1479], /* CANADIAN SYLLABICS WEST-CREE KWII */ + [0x147a, 0x147a], /* CANADIAN SYLLABICS KWO */ + [0x147b, 0x147b], /* CANADIAN SYLLABICS WEST-CREE KWO */ + [0x147c, 0x147c], /* CANADIAN SYLLABICS KWOO */ + [0x147d, 0x147d], /* CANADIAN SYLLABICS WEST-CREE KWOO */ + [0x147e, 0x147e], /* CANADIAN SYLLABICS KWA */ + [0x147f, 0x147f], /* CANADIAN SYLLABICS WEST-CREE KWA */ + [0x1480, 0x1480], /* CANADIAN SYLLABICS KWAA */ + [0x1481, 0x1481], /* CANADIAN SYLLABICS WEST-CREE KWAA */ + [0x1482, 0x1482], /* CANADIAN SYLLABICS NASKAPI KWAA */ + [0x1483, 0x1483], /* CANADIAN SYLLABICS K */ + [0x1484, 0x1484], /* CANADIAN SYLLABICS KW */ + [0x1485, 0x1485], /* CANADIAN SYLLABICS SOUTH-SLAVEY KEH */ + [0x1486, 0x1486], /* CANADIAN SYLLABICS SOUTH-SLAVEY KIH */ + [0x1487, 0x1487], /* CANADIAN SYLLABICS SOUTH-SLAVEY KOH */ + [0x1488, 0x1488], /* CANADIAN SYLLABICS SOUTH-SLAVEY KAH */ + [0x1489, 0x1489], /* CANADIAN SYLLABICS CE */ + [0x148a, 0x148a], /* CANADIAN SYLLABICS CAAI */ + [0x148b, 0x148b], /* CANADIAN SYLLABICS CI */ + [0x148c, 0x148c], /* CANADIAN SYLLABICS CII */ + [0x148d, 0x148d], /* CANADIAN SYLLABICS CO */ + [0x148e, 0x148e], /* CANADIAN SYLLABICS COO */ + [0x148f, 0x148f], /* CANADIAN SYLLABICS Y-CREE COO */ + [0x1490, 0x1490], /* CANADIAN SYLLABICS CA */ + [0x1491, 0x1491], /* CANADIAN SYLLABICS CAA */ + [0x1492, 0x1492], /* CANADIAN SYLLABICS CWE */ + [0x1493, 0x1493], /* CANADIAN SYLLABICS WEST-CREE CWE */ + [0x1494, 0x1494], /* CANADIAN SYLLABICS CWI */ + [0x1495, 0x1495], /* CANADIAN SYLLABICS WEST-CREE CWI */ + [0x1496, 0x1496], /* CANADIAN SYLLABICS CWII */ + [0x1497, 0x1497], /* CANADIAN SYLLABICS WEST-CREE CWII */ + [0x1498, 0x1498], /* CANADIAN SYLLABICS CWO */ + [0x1499, 0x1499], /* CANADIAN SYLLABICS WEST-CREE CWO */ + [0x149a, 0x149a], /* CANADIAN SYLLABICS CWOO */ + [0x149b, 0x149b], /* CANADIAN SYLLABICS WEST-CREE CWOO */ + [0x149c, 0x149c], /* CANADIAN SYLLABICS CWA */ + [0x149d, 0x149d], /* CANADIAN SYLLABICS WEST-CREE CWA */ + [0x149e, 0x149e], /* CANADIAN SYLLABICS CWAA */ + [0x149f, 0x149f], /* CANADIAN SYLLABICS WEST-CREE CWAA */ + [0x14a0, 0x14a0], /* CANADIAN SYLLABICS NASKAPI CWAA */ + [0x14a1, 0x14a1], /* CANADIAN SYLLABICS C */ + [0x14a2, 0x14a2], /* CANADIAN SYLLABICS SAYISI TH */ + [0x14a3, 0x14a3], /* CANADIAN SYLLABICS ME */ + [0x14a4, 0x14a4], /* CANADIAN SYLLABICS MAAI */ + [0x14a5, 0x14a5], /* CANADIAN SYLLABICS MI */ + [0x14a6, 0x14a6], /* CANADIAN SYLLABICS MII */ + [0x14a7, 0x14a7], /* CANADIAN SYLLABICS MO */ + [0x14a8, 0x14a8], /* CANADIAN SYLLABICS MOO */ + [0x14a9, 0x14a9], /* CANADIAN SYLLABICS Y-CREE MOO */ + [0x14aa, 0x14aa], /* CANADIAN SYLLABICS MA */ + [0x14ab, 0x14ab], /* CANADIAN SYLLABICS MAA */ + [0x14ac, 0x14ac], /* CANADIAN SYLLABICS MWE */ + [0x14ad, 0x14ad], /* CANADIAN SYLLABICS WEST-CREE MWE */ + [0x14ae, 0x14ae], /* CANADIAN SYLLABICS MWI */ + [0x14af, 0x14af], /* CANADIAN SYLLABICS WEST-CREE MWI */ + [0x14b0, 0x14b0], /* CANADIAN SYLLABICS MWII */ + [0x14b1, 0x14b1], /* CANADIAN SYLLABICS WEST-CREE MWII */ + [0x14b2, 0x14b2], /* CANADIAN SYLLABICS MWO */ + [0x14b3, 0x14b3], /* CANADIAN SYLLABICS WEST-CREE MWO */ + [0x14b4, 0x14b4], /* CANADIAN SYLLABICS MWOO */ + [0x14b5, 0x14b5], /* CANADIAN SYLLABICS WEST-CREE MWOO */ + [0x14b6, 0x14b6], /* CANADIAN SYLLABICS MWA */ + [0x14b7, 0x14b7], /* CANADIAN SYLLABICS WEST-CREE MWA */ + [0x14b8, 0x14b8], /* CANADIAN SYLLABICS MWAA */ + [0x14b9, 0x14b9], /* CANADIAN SYLLABICS WEST-CREE MWAA */ + [0x14ba, 0x14ba], /* CANADIAN SYLLABICS NASKAPI MWAA */ + [0x14bb, 0x14bb], /* CANADIAN SYLLABICS M */ + [0x14bc, 0x14bc], /* CANADIAN SYLLABICS WEST-CREE M */ + [0x14bd, 0x14bd], /* CANADIAN SYLLABICS MH */ + [0x14be, 0x14be], /* CANADIAN SYLLABICS ATHAPASCAN M */ + [0x14bf, 0x14bf], /* CANADIAN SYLLABICS SAYISI M */ + [0x14c0, 0x14c0], /* CANADIAN SYLLABICS NE */ + [0x14c1, 0x14c1], /* CANADIAN SYLLABICS NAAI */ + [0x14c2, 0x14c2], /* CANADIAN SYLLABICS NI */ + [0x14c3, 0x14c3], /* CANADIAN SYLLABICS NII */ + [0x14c4, 0x14c4], /* CANADIAN SYLLABICS NO */ + [0x14c5, 0x14c5], /* CANADIAN SYLLABICS NOO */ + [0x14c6, 0x14c6], /* CANADIAN SYLLABICS Y-CREE NOO */ + [0x14c7, 0x14c7], /* CANADIAN SYLLABICS NA */ + [0x14c8, 0x14c8], /* CANADIAN SYLLABICS NAA */ + [0x14c9, 0x14c9], /* CANADIAN SYLLABICS NWE */ + [0x14ca, 0x14ca], /* CANADIAN SYLLABICS WEST-CREE NWE */ + [0x14cb, 0x14cb], /* CANADIAN SYLLABICS NWA */ + [0x14cc, 0x14cc], /* CANADIAN SYLLABICS WEST-CREE NWA */ + [0x14cd, 0x14cd], /* CANADIAN SYLLABICS NWAA */ + [0x14ce, 0x14ce], /* CANADIAN SYLLABICS WEST-CREE NWAA */ + [0x14cf, 0x14cf], /* CANADIAN SYLLABICS NASKAPI NWAA */ + [0x14d0, 0x14d0], /* CANADIAN SYLLABICS N */ + [0x14d1, 0x14d1], /* CANADIAN SYLLABICS CARRIER NG */ + [0x14d2, 0x14d2], /* CANADIAN SYLLABICS NH */ + [0x14d3, 0x14d3], /* CANADIAN SYLLABICS LE */ + [0x14d4, 0x14d4], /* CANADIAN SYLLABICS LAAI */ + [0x14d5, 0x14d5], /* CANADIAN SYLLABICS LI */ + [0x14d6, 0x14d6], /* CANADIAN SYLLABICS LII */ + [0x14d7, 0x14d7], /* CANADIAN SYLLABICS LO */ + [0x14d8, 0x14d8], /* CANADIAN SYLLABICS LOO */ + [0x14d9, 0x14d9], /* CANADIAN SYLLABICS Y-CREE LOO */ + [0x14da, 0x14da], /* CANADIAN SYLLABICS LA */ + [0x14db, 0x14db], /* CANADIAN SYLLABICS LAA */ + [0x14dc, 0x14dc], /* CANADIAN SYLLABICS LWE */ + [0x14dd, 0x14dd], /* CANADIAN SYLLABICS WEST-CREE LWE */ + [0x14de, 0x14de], /* CANADIAN SYLLABICS LWI */ + [0x14df, 0x14df], /* CANADIAN SYLLABICS WEST-CREE LWI */ + [0x14e0, 0x14e0], /* CANADIAN SYLLABICS LWII */ + [0x14e1, 0x14e1], /* CANADIAN SYLLABICS WEST-CREE LWII */ + [0x14e2, 0x14e2], /* CANADIAN SYLLABICS LWO */ + [0x14e3, 0x14e3], /* CANADIAN SYLLABICS WEST-CREE LWO */ + [0x14e4, 0x14e4], /* CANADIAN SYLLABICS LWOO */ + [0x14e5, 0x14e5], /* CANADIAN SYLLABICS WEST-CREE LWOO */ + [0x14e6, 0x14e6], /* CANADIAN SYLLABICS LWA */ + [0x14e7, 0x14e7], /* CANADIAN SYLLABICS WEST-CREE LWA */ + [0x14e8, 0x14e8], /* CANADIAN SYLLABICS LWAA */ + [0x14e9, 0x14e9], /* CANADIAN SYLLABICS WEST-CREE LWAA */ + [0x14ea, 0x14ea], /* CANADIAN SYLLABICS L */ + [0x14eb, 0x14eb], /* CANADIAN SYLLABICS WEST-CREE L */ + [0x14ec, 0x14ec], /* CANADIAN SYLLABICS MEDIAL L */ + [0x14ed, 0x14ed], /* CANADIAN SYLLABICS SE */ + [0x14ee, 0x14ee], /* CANADIAN SYLLABICS SAAI */ + [0x14ef, 0x14ef], /* CANADIAN SYLLABICS SI */ + [0x14f0, 0x14f0], /* CANADIAN SYLLABICS SII */ + [0x14f1, 0x14f1], /* CANADIAN SYLLABICS SO */ + [0x14f2, 0x14f2], /* CANADIAN SYLLABICS SOO */ + [0x14f3, 0x14f3], /* CANADIAN SYLLABICS Y-CREE SOO */ + [0x14f4, 0x14f4], /* CANADIAN SYLLABICS SA */ + [0x14f5, 0x14f5], /* CANADIAN SYLLABICS SAA */ + [0x14f6, 0x14f6], /* CANADIAN SYLLABICS SWE */ + [0x14f7, 0x14f7], /* CANADIAN SYLLABICS WEST-CREE SWE */ + [0x14f8, 0x14f8], /* CANADIAN SYLLABICS SWI */ + [0x14f9, 0x14f9], /* CANADIAN SYLLABICS WEST-CREE SWI */ + [0x14fa, 0x14fa], /* CANADIAN SYLLABICS SWII */ + [0x14fb, 0x14fb], /* CANADIAN SYLLABICS WEST-CREE SWII */ + [0x14fc, 0x14fc], /* CANADIAN SYLLABICS SWO */ + [0x14fd, 0x14fd], /* CANADIAN SYLLABICS WEST-CREE SWO */ + [0x14fe, 0x14fe], /* CANADIAN SYLLABICS SWOO */ + [0x14ff, 0x14ff], /* CANADIAN SYLLABICS WEST-CREE SWOO */ + [0x1500, 0x1500], /* CANADIAN SYLLABICS SWA */ + [0x1501, 0x1501], /* CANADIAN SYLLABICS WEST-CREE SWA */ + [0x1502, 0x1502], /* CANADIAN SYLLABICS SWAA */ + [0x1503, 0x1503], /* CANADIAN SYLLABICS WEST-CREE SWAA */ + [0x1504, 0x1504], /* CANADIAN SYLLABICS NASKAPI SWAA */ + [0x1505, 0x1505], /* CANADIAN SYLLABICS S */ + [0x1506, 0x1506], /* CANADIAN SYLLABICS ATHAPASCAN S */ + [0x1507, 0x1507], /* CANADIAN SYLLABICS SW */ + [0x1508, 0x1508], /* CANADIAN SYLLABICS BLACKFOOT S */ + [0x1509, 0x1509], /* CANADIAN SYLLABICS MOOSE-CREE SK */ + [0x150a, 0x150a], /* CANADIAN SYLLABICS NASKAPI SKW */ + [0x150b, 0x150b], /* CANADIAN SYLLABICS NASKAPI S-W */ + [0x150c, 0x150c], /* CANADIAN SYLLABICS NASKAPI SPWA */ + [0x150d, 0x150d], /* CANADIAN SYLLABICS NASKAPI STWA */ + [0x150e, 0x150e], /* CANADIAN SYLLABICS NASKAPI SKWA */ + [0x150f, 0x150f], /* CANADIAN SYLLABICS NASKAPI SCWA */ + [0x1510, 0x1510], /* CANADIAN SYLLABICS SHE */ + [0x1511, 0x1511], /* CANADIAN SYLLABICS SHI */ + [0x1512, 0x1512], /* CANADIAN SYLLABICS SHII */ + [0x1513, 0x1513], /* CANADIAN SYLLABICS SHO */ + [0x1514, 0x1514], /* CANADIAN SYLLABICS SHOO */ + [0x1515, 0x1515], /* CANADIAN SYLLABICS SHA */ + [0x1516, 0x1516], /* CANADIAN SYLLABICS SHAA */ + [0x1517, 0x1517], /* CANADIAN SYLLABICS SHWE */ + [0x1518, 0x1518], /* CANADIAN SYLLABICS WEST-CREE SHWE */ + [0x1519, 0x1519], /* CANADIAN SYLLABICS SHWI */ + [0x151a, 0x151a], /* CANADIAN SYLLABICS WEST-CREE SHWI */ + [0x151b, 0x151b], /* CANADIAN SYLLABICS SHWII */ + [0x151c, 0x151c], /* CANADIAN SYLLABICS WEST-CREE SHWII */ + [0x151d, 0x151d], /* CANADIAN SYLLABICS SHWO */ + [0x151e, 0x151e], /* CANADIAN SYLLABICS WEST-CREE SHWO */ + [0x151f, 0x151f], /* CANADIAN SYLLABICS SHWOO */ + [0x1520, 0x1520], /* CANADIAN SYLLABICS WEST-CREE SHWOO */ + [0x1521, 0x1521], /* CANADIAN SYLLABICS SHWA */ + [0x1522, 0x1522], /* CANADIAN SYLLABICS WEST-CREE SHWA */ + [0x1523, 0x1523], /* CANADIAN SYLLABICS SHWAA */ + [0x1524, 0x1524], /* CANADIAN SYLLABICS WEST-CREE SHWAA */ + [0x1525, 0x1525], /* CANADIAN SYLLABICS SH */ + [0x1526, 0x1526], /* CANADIAN SYLLABICS YE */ + [0x1527, 0x1527], /* CANADIAN SYLLABICS YAAI */ + [0x1528, 0x1528], /* CANADIAN SYLLABICS YI */ + [0x1529, 0x1529], /* CANADIAN SYLLABICS YII */ + [0x152a, 0x152a], /* CANADIAN SYLLABICS YO */ + [0x152b, 0x152b], /* CANADIAN SYLLABICS YOO */ + [0x152c, 0x152c], /* CANADIAN SYLLABICS Y-CREE YOO */ + [0x152d, 0x152d], /* CANADIAN SYLLABICS YA */ + [0x152e, 0x152e], /* CANADIAN SYLLABICS YAA */ + [0x152f, 0x152f], /* CANADIAN SYLLABICS YWE */ + [0x1530, 0x1530], /* CANADIAN SYLLABICS WEST-CREE YWE */ + [0x1531, 0x1531], /* CANADIAN SYLLABICS YWI */ + [0x1532, 0x1532], /* CANADIAN SYLLABICS WEST-CREE YWI */ + [0x1533, 0x1533], /* CANADIAN SYLLABICS YWII */ + [0x1534, 0x1534], /* CANADIAN SYLLABICS WEST-CREE YWII */ + [0x1535, 0x1535], /* CANADIAN SYLLABICS YWO */ + [0x1536, 0x1536], /* CANADIAN SYLLABICS WEST-CREE YWO */ + [0x1537, 0x1537], /* CANADIAN SYLLABICS YWOO */ + [0x1538, 0x1538], /* CANADIAN SYLLABICS WEST-CREE YWOO */ + [0x1539, 0x1539], /* CANADIAN SYLLABICS YWA */ + [0x153a, 0x153a], /* CANADIAN SYLLABICS WEST-CREE YWA */ + [0x153b, 0x153b], /* CANADIAN SYLLABICS YWAA */ + [0x153c, 0x153c], /* CANADIAN SYLLABICS WEST-CREE YWAA */ + [0x153d, 0x153d], /* CANADIAN SYLLABICS NASKAPI YWAA */ + [0x153e, 0x153e], /* CANADIAN SYLLABICS Y */ + [0x153f, 0x153f], /* CANADIAN SYLLABICS BIBLE-CREE Y */ + [0x1540, 0x1540], /* CANADIAN SYLLABICS WEST-CREE Y */ + [0x1541, 0x1541], /* CANADIAN SYLLABICS SAYISI YI */ + [0x1542, 0x1542], /* CANADIAN SYLLABICS RE */ + [0x1543, 0x1543], /* CANADIAN SYLLABICS R-CREE RE */ + [0x1544, 0x1544], /* CANADIAN SYLLABICS WEST-CREE LE */ + [0x1545, 0x1545], /* CANADIAN SYLLABICS RAAI */ + [0x1546, 0x1546], /* CANADIAN SYLLABICS RI */ + [0x1547, 0x1547], /* CANADIAN SYLLABICS RII */ + [0x1548, 0x1548], /* CANADIAN SYLLABICS RO */ + [0x1549, 0x1549], /* CANADIAN SYLLABICS ROO */ + [0x154a, 0x154a], /* CANADIAN SYLLABICS WEST-CREE LO */ + [0x154b, 0x154b], /* CANADIAN SYLLABICS RA */ + [0x154c, 0x154c], /* CANADIAN SYLLABICS RAA */ + [0x154d, 0x154d], /* CANADIAN SYLLABICS WEST-CREE LA */ + [0x154e, 0x154e], /* CANADIAN SYLLABICS RWAA */ + [0x154f, 0x154f], /* CANADIAN SYLLABICS WEST-CREE RWAA */ + [0x1550, 0x1550], /* CANADIAN SYLLABICS R */ + [0x1551, 0x1551], /* CANADIAN SYLLABICS WEST-CREE R */ + [0x1552, 0x1552], /* CANADIAN SYLLABICS MEDIAL R */ + [0x1553, 0x1553], /* CANADIAN SYLLABICS FE */ + [0x1554, 0x1554], /* CANADIAN SYLLABICS FAAI */ + [0x1555, 0x1555], /* CANADIAN SYLLABICS FI */ + [0x1556, 0x1556], /* CANADIAN SYLLABICS FII */ + [0x1557, 0x1557], /* CANADIAN SYLLABICS FO */ + [0x1558, 0x1558], /* CANADIAN SYLLABICS FOO */ + [0x1559, 0x1559], /* CANADIAN SYLLABICS FA */ + [0x155a, 0x155a], /* CANADIAN SYLLABICS FAA */ + [0x155b, 0x155b], /* CANADIAN SYLLABICS FWAA */ + [0x155c, 0x155c], /* CANADIAN SYLLABICS WEST-CREE FWAA */ + [0x155d, 0x155d], /* CANADIAN SYLLABICS F */ + [0x155e, 0x155e], /* CANADIAN SYLLABICS THE */ + [0x155f, 0x155f], /* CANADIAN SYLLABICS N-CREE THE */ + [0x1560, 0x1560], /* CANADIAN SYLLABICS THI */ + [0x1561, 0x1561], /* CANADIAN SYLLABICS N-CREE THI */ + [0x1562, 0x1562], /* CANADIAN SYLLABICS THII */ + [0x1563, 0x1563], /* CANADIAN SYLLABICS N-CREE THII */ + [0x1564, 0x1564], /* CANADIAN SYLLABICS THO */ + [0x1565, 0x1565], /* CANADIAN SYLLABICS THOO */ + [0x1566, 0x1566], /* CANADIAN SYLLABICS THA */ + [0x1567, 0x1567], /* CANADIAN SYLLABICS THAA */ + [0x1568, 0x1568], /* CANADIAN SYLLABICS THWAA */ + [0x1569, 0x1569], /* CANADIAN SYLLABICS WEST-CREE THWAA */ + [0x156a, 0x156a], /* CANADIAN SYLLABICS TH */ + [0x156b, 0x156b], /* CANADIAN SYLLABICS TTHE */ + [0x156c, 0x156c], /* CANADIAN SYLLABICS TTHI */ + [0x156d, 0x156d], /* CANADIAN SYLLABICS TTHO */ + [0x156e, 0x156e], /* CANADIAN SYLLABICS TTHA */ + [0x156f, 0x156f], /* CANADIAN SYLLABICS TTH */ + [0x1570, 0x1570], /* CANADIAN SYLLABICS TYE */ + [0x1571, 0x1571], /* CANADIAN SYLLABICS TYI */ + [0x1572, 0x1572], /* CANADIAN SYLLABICS TYO */ + [0x1573, 0x1573], /* CANADIAN SYLLABICS TYA */ + [0x1574, 0x1574], /* CANADIAN SYLLABICS NUNAVIK HE */ + [0x1575, 0x1575], /* CANADIAN SYLLABICS NUNAVIK HI */ + [0x1576, 0x1576], /* CANADIAN SYLLABICS NUNAVIK HII */ + [0x1577, 0x1577], /* CANADIAN SYLLABICS NUNAVIK HO */ + [0x1578, 0x1578], /* CANADIAN SYLLABICS NUNAVIK HOO */ + [0x1579, 0x1579], /* CANADIAN SYLLABICS NUNAVIK HA */ + [0x157a, 0x157a], /* CANADIAN SYLLABICS NUNAVIK HAA */ + [0x157b, 0x157b], /* CANADIAN SYLLABICS NUNAVIK H */ + [0x157c, 0x157c], /* CANADIAN SYLLABICS NUNAVUT H */ + [0x157d, 0x157d], /* CANADIAN SYLLABICS HK */ + [0x157e, 0x157e], /* CANADIAN SYLLABICS QAAI */ + [0x157f, 0x157f], /* CANADIAN SYLLABICS QI */ + [0x1580, 0x1580], /* CANADIAN SYLLABICS QII */ + [0x1581, 0x1581], /* CANADIAN SYLLABICS QO */ + [0x1582, 0x1582], /* CANADIAN SYLLABICS QOO */ + [0x1583, 0x1583], /* CANADIAN SYLLABICS QA */ + [0x1584, 0x1584], /* CANADIAN SYLLABICS QAA */ + [0x1585, 0x1585], /* CANADIAN SYLLABICS Q */ + [0x1586, 0x1586], /* CANADIAN SYLLABICS TLHE */ + [0x1587, 0x1587], /* CANADIAN SYLLABICS TLHI */ + [0x1588, 0x1588], /* CANADIAN SYLLABICS TLHO */ + [0x1589, 0x1589], /* CANADIAN SYLLABICS TLHA */ + [0x158a, 0x158a], /* CANADIAN SYLLABICS WEST-CREE RE */ + [0x158b, 0x158b], /* CANADIAN SYLLABICS WEST-CREE RI */ + [0x158c, 0x158c], /* CANADIAN SYLLABICS WEST-CREE RO */ + [0x158d, 0x158d], /* CANADIAN SYLLABICS WEST-CREE RA */ + [0x158e, 0x158e], /* CANADIAN SYLLABICS NGAAI */ + [0x158f, 0x158f], /* CANADIAN SYLLABICS NGI */ + [0x1590, 0x1590], /* CANADIAN SYLLABICS NGII */ + [0x1591, 0x1591], /* CANADIAN SYLLABICS NGO */ + [0x1592, 0x1592], /* CANADIAN SYLLABICS NGOO */ + [0x1593, 0x1593], /* CANADIAN SYLLABICS NGA */ + [0x1594, 0x1594], /* CANADIAN SYLLABICS NGAA */ + [0x1595, 0x1595], /* CANADIAN SYLLABICS NG */ + [0x1596, 0x1596], /* CANADIAN SYLLABICS NNG */ + [0x1597, 0x1597], /* CANADIAN SYLLABICS SAYISI SHE */ + [0x1598, 0x1598], /* CANADIAN SYLLABICS SAYISI SHI */ + [0x1599, 0x1599], /* CANADIAN SYLLABICS SAYISI SHO */ + [0x159a, 0x159a], /* CANADIAN SYLLABICS SAYISI SHA */ + [0x159b, 0x159b], /* CANADIAN SYLLABICS WOODS-CREE THE */ + [0x159c, 0x159c], /* CANADIAN SYLLABICS WOODS-CREE THI */ + [0x159d, 0x159d], /* CANADIAN SYLLABICS WOODS-CREE THO */ + [0x159e, 0x159e], /* CANADIAN SYLLABICS WOODS-CREE THA */ + [0x159f, 0x159f], /* CANADIAN SYLLABICS WOODS-CREE TH */ + [0x15a0, 0x15a0], /* CANADIAN SYLLABICS LHI */ + [0x15a1, 0x15a1], /* CANADIAN SYLLABICS LHII */ + [0x15a2, 0x15a2], /* CANADIAN SYLLABICS LHO */ + [0x15a3, 0x15a3], /* CANADIAN SYLLABICS LHOO */ + [0x15a4, 0x15a4], /* CANADIAN SYLLABICS LHA */ + [0x15a5, 0x15a5], /* CANADIAN SYLLABICS LHAA */ + [0x15a6, 0x15a6], /* CANADIAN SYLLABICS LH */ + [0x15a7, 0x15a7], /* CANADIAN SYLLABICS TH-CREE THE */ + [0x15a8, 0x15a8], /* CANADIAN SYLLABICS TH-CREE THI */ + [0x15a9, 0x15a9], /* CANADIAN SYLLABICS TH-CREE THII */ + [0x15aa, 0x15aa], /* CANADIAN SYLLABICS TH-CREE THO */ + [0x15ab, 0x15ab], /* CANADIAN SYLLABICS TH-CREE THOO */ + [0x15ac, 0x15ac], /* CANADIAN SYLLABICS TH-CREE THA */ + [0x15ad, 0x15ad], /* CANADIAN SYLLABICS TH-CREE THAA */ + [0x15ae, 0x15ae], /* CANADIAN SYLLABICS TH-CREE TH */ + [0x15af, 0x15af], /* CANADIAN SYLLABICS AIVILIK B */ + [0x15b0, 0x15b0], /* CANADIAN SYLLABICS BLACKFOOT E */ + [0x15b1, 0x15b1], /* CANADIAN SYLLABICS BLACKFOOT I */ + [0x15b2, 0x15b2], /* CANADIAN SYLLABICS BLACKFOOT O */ + [0x15b3, 0x15b3], /* CANADIAN SYLLABICS BLACKFOOT A */ + [0x15b4, 0x15b4], /* CANADIAN SYLLABICS BLACKFOOT WE */ + [0x15b5, 0x15b5], /* CANADIAN SYLLABICS BLACKFOOT WI */ + [0x15b6, 0x15b6], /* CANADIAN SYLLABICS BLACKFOOT WO */ + [0x15b7, 0x15b7], /* CANADIAN SYLLABICS BLACKFOOT WA */ + [0x15b8, 0x15b8], /* CANADIAN SYLLABICS BLACKFOOT NE */ + [0x15b9, 0x15b9], /* CANADIAN SYLLABICS BLACKFOOT NI */ + [0x15ba, 0x15ba], /* CANADIAN SYLLABICS BLACKFOOT NO */ + [0x15bb, 0x15bb], /* CANADIAN SYLLABICS BLACKFOOT NA */ + [0x15bc, 0x15bc], /* CANADIAN SYLLABICS BLACKFOOT KE */ + [0x15bd, 0x15bd], /* CANADIAN SYLLABICS BLACKFOOT KI */ + [0x15be, 0x15be], /* CANADIAN SYLLABICS BLACKFOOT KO */ + [0x15bf, 0x15bf], /* CANADIAN SYLLABICS BLACKFOOT KA */ + [0x15c0, 0x15c0], /* CANADIAN SYLLABICS SAYISI HE */ + [0x15c1, 0x15c1], /* CANADIAN SYLLABICS SAYISI HI */ + [0x15c2, 0x15c2], /* CANADIAN SYLLABICS SAYISI HO */ + [0x15c3, 0x15c3], /* CANADIAN SYLLABICS SAYISI HA */ + [0x15c4, 0x15c4], /* CANADIAN SYLLABICS CARRIER GHU */ + [0x15c5, 0x15c5], /* CANADIAN SYLLABICS CARRIER GHO */ + [0x15c6, 0x15c6], /* CANADIAN SYLLABICS CARRIER GHE */ + [0x15c7, 0x15c7], /* CANADIAN SYLLABICS CARRIER GHEE */ + [0x15c8, 0x15c8], /* CANADIAN SYLLABICS CARRIER GHI */ + [0x15c9, 0x15c9], /* CANADIAN SYLLABICS CARRIER GHA */ + [0x15ca, 0x15ca], /* CANADIAN SYLLABICS CARRIER RU */ + [0x15cb, 0x15cb], /* CANADIAN SYLLABICS CARRIER RO */ + [0x15cc, 0x15cc], /* CANADIAN SYLLABICS CARRIER RE */ + [0x15cd, 0x15cd], /* CANADIAN SYLLABICS CARRIER REE */ + [0x15ce, 0x15ce], /* CANADIAN SYLLABICS CARRIER RI */ + [0x15cf, 0x15cf], /* CANADIAN SYLLABICS CARRIER RA */ + [0x15d0, 0x15d0], /* CANADIAN SYLLABICS CARRIER WU */ + [0x15d1, 0x15d1], /* CANADIAN SYLLABICS CARRIER WO */ + [0x15d2, 0x15d2], /* CANADIAN SYLLABICS CARRIER WE */ + [0x15d3, 0x15d3], /* CANADIAN SYLLABICS CARRIER WEE */ + [0x15d4, 0x15d4], /* CANADIAN SYLLABICS CARRIER WI */ + [0x15d5, 0x15d5], /* CANADIAN SYLLABICS CARRIER WA */ + [0x15d6, 0x15d6], /* CANADIAN SYLLABICS CARRIER HWU */ + [0x15d7, 0x15d7], /* CANADIAN SYLLABICS CARRIER HWO */ + [0x15d8, 0x15d8], /* CANADIAN SYLLABICS CARRIER HWE */ + [0x15d9, 0x15d9], /* CANADIAN SYLLABICS CARRIER HWEE */ + [0x15da, 0x15da], /* CANADIAN SYLLABICS CARRIER HWI */ + [0x15db, 0x15db], /* CANADIAN SYLLABICS CARRIER HWA */ + [0x15dc, 0x15dc], /* CANADIAN SYLLABICS CARRIER THU */ + [0x15dd, 0x15dd], /* CANADIAN SYLLABICS CARRIER THO */ + [0x15de, 0x15de], /* CANADIAN SYLLABICS CARRIER THE */ + [0x15df, 0x15df], /* CANADIAN SYLLABICS CARRIER THEE */ + [0x15e0, 0x15e0], /* CANADIAN SYLLABICS CARRIER THI */ + [0x15e1, 0x15e1], /* CANADIAN SYLLABICS CARRIER THA */ + [0x15e2, 0x15e2], /* CANADIAN SYLLABICS CARRIER TTU */ + [0x15e3, 0x15e3], /* CANADIAN SYLLABICS CARRIER TTO */ + [0x15e4, 0x15e4], /* CANADIAN SYLLABICS CARRIER TTE */ + [0x15e5, 0x15e5], /* CANADIAN SYLLABICS CARRIER TTEE */ + [0x15e6, 0x15e6], /* CANADIAN SYLLABICS CARRIER TTI */ + [0x15e7, 0x15e7], /* CANADIAN SYLLABICS CARRIER TTA */ + [0x15e8, 0x15e8], /* CANADIAN SYLLABICS CARRIER PU */ + [0x15e9, 0x15e9], /* CANADIAN SYLLABICS CARRIER PO */ + [0x15ea, 0x15ea], /* CANADIAN SYLLABICS CARRIER PE */ + [0x15eb, 0x15eb], /* CANADIAN SYLLABICS CARRIER PEE */ + [0x15ec, 0x15ec], /* CANADIAN SYLLABICS CARRIER PI */ + [0x15ed, 0x15ed], /* CANADIAN SYLLABICS CARRIER PA */ + [0x15ee, 0x15ee], /* CANADIAN SYLLABICS CARRIER P */ + [0x15ef, 0x15ef], /* CANADIAN SYLLABICS CARRIER GU */ + [0x15f0, 0x15f0], /* CANADIAN SYLLABICS CARRIER GO */ + [0x15f1, 0x15f1], /* CANADIAN SYLLABICS CARRIER GE */ + [0x15f2, 0x15f2], /* CANADIAN SYLLABICS CARRIER GEE */ + [0x15f3, 0x15f3], /* CANADIAN SYLLABICS CARRIER GI */ + [0x15f4, 0x15f4], /* CANADIAN SYLLABICS CARRIER GA */ + [0x15f5, 0x15f5], /* CANADIAN SYLLABICS CARRIER KHU */ + [0x15f6, 0x15f6], /* CANADIAN SYLLABICS CARRIER KHO */ + [0x15f7, 0x15f7], /* CANADIAN SYLLABICS CARRIER KHE */ + [0x15f8, 0x15f8], /* CANADIAN SYLLABICS CARRIER KHEE */ + [0x15f9, 0x15f9], /* CANADIAN SYLLABICS CARRIER KHI */ + [0x15fa, 0x15fa], /* CANADIAN SYLLABICS CARRIER KHA */ + [0x15fb, 0x15fb], /* CANADIAN SYLLABICS CARRIER KKU */ + [0x15fc, 0x15fc], /* CANADIAN SYLLABICS CARRIER KKO */ + [0x15fd, 0x15fd], /* CANADIAN SYLLABICS CARRIER KKE */ + [0x15fe, 0x15fe], /* CANADIAN SYLLABICS CARRIER KKEE */ + [0x15ff, 0x15ff], /* CANADIAN SYLLABICS CARRIER KKI */ + [0x1600, 0x1600], /* CANADIAN SYLLABICS CARRIER KKA */ + [0x1601, 0x1601], /* CANADIAN SYLLABICS CARRIER KK */ + [0x1602, 0x1602], /* CANADIAN SYLLABICS CARRIER NU */ + [0x1603, 0x1603], /* CANADIAN SYLLABICS CARRIER NO */ + [0x1604, 0x1604], /* CANADIAN SYLLABICS CARRIER NE */ + [0x1605, 0x1605], /* CANADIAN SYLLABICS CARRIER NEE */ + [0x1606, 0x1606], /* CANADIAN SYLLABICS CARRIER NI */ + [0x1607, 0x1607], /* CANADIAN SYLLABICS CARRIER NA */ + [0x1608, 0x1608], /* CANADIAN SYLLABICS CARRIER MU */ + [0x1609, 0x1609], /* CANADIAN SYLLABICS CARRIER MO */ + [0x160a, 0x160a], /* CANADIAN SYLLABICS CARRIER ME */ + [0x160b, 0x160b], /* CANADIAN SYLLABICS CARRIER MEE */ + [0x160c, 0x160c], /* CANADIAN SYLLABICS CARRIER MI */ + [0x160d, 0x160d], /* CANADIAN SYLLABICS CARRIER MA */ + [0x160e, 0x160e], /* CANADIAN SYLLABICS CARRIER YU */ + [0x160f, 0x160f], /* CANADIAN SYLLABICS CARRIER YO */ + [0x1610, 0x1610], /* CANADIAN SYLLABICS CARRIER YE */ + [0x1611, 0x1611], /* CANADIAN SYLLABICS CARRIER YEE */ + [0x1612, 0x1612], /* CANADIAN SYLLABICS CARRIER YI */ + [0x1613, 0x1613], /* CANADIAN SYLLABICS CARRIER YA */ + [0x1614, 0x1614], /* CANADIAN SYLLABICS CARRIER JU */ + [0x1615, 0x1615], /* CANADIAN SYLLABICS SAYISI JU */ + [0x1616, 0x1616], /* CANADIAN SYLLABICS CARRIER JO */ + [0x1617, 0x1617], /* CANADIAN SYLLABICS CARRIER JE */ + [0x1618, 0x1618], /* CANADIAN SYLLABICS CARRIER JEE */ + [0x1619, 0x1619], /* CANADIAN SYLLABICS CARRIER JI */ + [0x161a, 0x161a], /* CANADIAN SYLLABICS SAYISI JI */ + [0x161b, 0x161b], /* CANADIAN SYLLABICS CARRIER JA */ + [0x161c, 0x161c], /* CANADIAN SYLLABICS CARRIER JJU */ + [0x161d, 0x161d], /* CANADIAN SYLLABICS CARRIER JJO */ + [0x161e, 0x161e], /* CANADIAN SYLLABICS CARRIER JJE */ + [0x161f, 0x161f], /* CANADIAN SYLLABICS CARRIER JJEE */ + [0x1620, 0x1620], /* CANADIAN SYLLABICS CARRIER JJI */ + [0x1621, 0x1621], /* CANADIAN SYLLABICS CARRIER JJA */ + [0x1622, 0x1622], /* CANADIAN SYLLABICS CARRIER LU */ + [0x1623, 0x1623], /* CANADIAN SYLLABICS CARRIER LO */ + [0x1624, 0x1624], /* CANADIAN SYLLABICS CARRIER LE */ + [0x1625, 0x1625], /* CANADIAN SYLLABICS CARRIER LEE */ + [0x1626, 0x1626], /* CANADIAN SYLLABICS CARRIER LI */ + [0x1627, 0x1627], /* CANADIAN SYLLABICS CARRIER LA */ + [0x1628, 0x1628], /* CANADIAN SYLLABICS CARRIER DLU */ + [0x1629, 0x1629], /* CANADIAN SYLLABICS CARRIER DLO */ + [0x162a, 0x162a], /* CANADIAN SYLLABICS CARRIER DLE */ + [0x162b, 0x162b], /* CANADIAN SYLLABICS CARRIER DLEE */ + [0x162c, 0x162c], /* CANADIAN SYLLABICS CARRIER DLI */ + [0x162d, 0x162d], /* CANADIAN SYLLABICS CARRIER DLA */ + [0x162e, 0x162e], /* CANADIAN SYLLABICS CARRIER LHU */ + [0x162f, 0x162f], /* CANADIAN SYLLABICS CARRIER LHO */ + [0x1630, 0x1630], /* CANADIAN SYLLABICS CARRIER LHE */ + [0x1631, 0x1631], /* CANADIAN SYLLABICS CARRIER LHEE */ + [0x1632, 0x1632], /* CANADIAN SYLLABICS CARRIER LHI */ + [0x1633, 0x1633], /* CANADIAN SYLLABICS CARRIER LHA */ + [0x1634, 0x1634], /* CANADIAN SYLLABICS CARRIER TLHU */ + [0x1635, 0x1635], /* CANADIAN SYLLABICS CARRIER TLHO */ + [0x1636, 0x1636], /* CANADIAN SYLLABICS CARRIER TLHE */ + [0x1637, 0x1637], /* CANADIAN SYLLABICS CARRIER TLHEE */ + [0x1638, 0x1638], /* CANADIAN SYLLABICS CARRIER TLHI */ + [0x1639, 0x1639], /* CANADIAN SYLLABICS CARRIER TLHA */ + [0x163a, 0x163a], /* CANADIAN SYLLABICS CARRIER TLU */ + [0x163b, 0x163b], /* CANADIAN SYLLABICS CARRIER TLO */ + [0x163c, 0x163c], /* CANADIAN SYLLABICS CARRIER TLE */ + [0x163d, 0x163d], /* CANADIAN SYLLABICS CARRIER TLEE */ + [0x163e, 0x163e], /* CANADIAN SYLLABICS CARRIER TLI */ + [0x163f, 0x163f], /* CANADIAN SYLLABICS CARRIER TLA */ + [0x1640, 0x1640], /* CANADIAN SYLLABICS CARRIER ZU */ + [0x1641, 0x1641], /* CANADIAN SYLLABICS CARRIER ZO */ + [0x1642, 0x1642], /* CANADIAN SYLLABICS CARRIER ZE */ + [0x1643, 0x1643], /* CANADIAN SYLLABICS CARRIER ZEE */ + [0x1644, 0x1644], /* CANADIAN SYLLABICS CARRIER ZI */ + [0x1645, 0x1645], /* CANADIAN SYLLABICS CARRIER ZA */ + [0x1646, 0x1646], /* CANADIAN SYLLABICS CARRIER Z */ + [0x1647, 0x1647], /* CANADIAN SYLLABICS CARRIER INITIAL Z */ + [0x1648, 0x1648], /* CANADIAN SYLLABICS CARRIER DZU */ + [0x1649, 0x1649], /* CANADIAN SYLLABICS CARRIER DZO */ + [0x164a, 0x164a], /* CANADIAN SYLLABICS CARRIER DZE */ + [0x164b, 0x164b], /* CANADIAN SYLLABICS CARRIER DZEE */ + [0x164c, 0x164c], /* CANADIAN SYLLABICS CARRIER DZI */ + [0x164d, 0x164d], /* CANADIAN SYLLABICS CARRIER DZA */ + [0x164e, 0x164e], /* CANADIAN SYLLABICS CARRIER SU */ + [0x164f, 0x164f], /* CANADIAN SYLLABICS CARRIER SO */ + [0x1650, 0x1650], /* CANADIAN SYLLABICS CARRIER SE */ + [0x1651, 0x1651], /* CANADIAN SYLLABICS CARRIER SEE */ + [0x1652, 0x1652], /* CANADIAN SYLLABICS CARRIER SI */ + [0x1653, 0x1653], /* CANADIAN SYLLABICS CARRIER SA */ + [0x1654, 0x1654], /* CANADIAN SYLLABICS CARRIER SHU */ + [0x1655, 0x1655], /* CANADIAN SYLLABICS CARRIER SHO */ + [0x1656, 0x1656], /* CANADIAN SYLLABICS CARRIER SHE */ + [0x1657, 0x1657], /* CANADIAN SYLLABICS CARRIER SHEE */ + [0x1658, 0x1658], /* CANADIAN SYLLABICS CARRIER SHI */ + [0x1659, 0x1659], /* CANADIAN SYLLABICS CARRIER SHA */ + [0x165a, 0x165a], /* CANADIAN SYLLABICS CARRIER SH */ + [0x165b, 0x165b], /* CANADIAN SYLLABICS CARRIER TSU */ + [0x165c, 0x165c], /* CANADIAN SYLLABICS CARRIER TSO */ + [0x165d, 0x165d], /* CANADIAN SYLLABICS CARRIER TSE */ + [0x165e, 0x165e], /* CANADIAN SYLLABICS CARRIER TSEE */ + [0x165f, 0x165f], /* CANADIAN SYLLABICS CARRIER TSI */ + [0x1660, 0x1660], /* CANADIAN SYLLABICS CARRIER TSA */ + [0x1661, 0x1661], /* CANADIAN SYLLABICS CARRIER CHU */ + [0x1662, 0x1662], /* CANADIAN SYLLABICS CARRIER CHO */ + [0x1663, 0x1663], /* CANADIAN SYLLABICS CARRIER CHE */ + [0x1664, 0x1664], /* CANADIAN SYLLABICS CARRIER CHEE */ + [0x1665, 0x1665], /* CANADIAN SYLLABICS CARRIER CHI */ + [0x1666, 0x1666], /* CANADIAN SYLLABICS CARRIER CHA */ + [0x1667, 0x1667], /* CANADIAN SYLLABICS CARRIER TTSU */ + [0x1668, 0x1668], /* CANADIAN SYLLABICS CARRIER TTSO */ + [0x1669, 0x1669], /* CANADIAN SYLLABICS CARRIER TTSE */ + [0x166a, 0x166a], /* CANADIAN SYLLABICS CARRIER TTSEE */ + [0x166b, 0x166b], /* CANADIAN SYLLABICS CARRIER TTSI */ + [0x166c, 0x166c], /* CANADIAN SYLLABICS CARRIER TTSA */ + [0x166d, 0x166d], /* CANADIAN SYLLABICS CHI SIGN */ + [0x166e, 0x166e], /* CANADIAN SYLLABICS FULL STOP */ + [0x166f, 0x166f], /* CANADIAN SYLLABICS QAI */ + [0x1670, 0x1670], /* CANADIAN SYLLABICS NGAI */ + [0x1671, 0x1671], /* CANADIAN SYLLABICS NNGI */ + [0x1672, 0x1672], /* CANADIAN SYLLABICS NNGII */ + [0x1673, 0x1673], /* CANADIAN SYLLABICS NNGO */ + [0x1674, 0x1674], /* CANADIAN SYLLABICS NNGOO */ + [0x1675, 0x1675], /* CANADIAN SYLLABICS NNGA */ + [0x1676, 0x1676], /* CANADIAN SYLLABICS NNGAA */ + [0x1677, 0x1677], /* CANADIAN SYLLABICS WOODS-CREE THWEE */ + [0x1678, 0x1678], /* CANADIAN SYLLABICS WOODS-CREE THWI */ + [0x1679, 0x1679], /* CANADIAN SYLLABICS WOODS-CREE THWII */ + [0x167a, 0x167a], /* CANADIAN SYLLABICS WOODS-CREE THWO */ + [0x167b, 0x167b], /* CANADIAN SYLLABICS WOODS-CREE THWOO */ + [0x167c, 0x167c], /* CANADIAN SYLLABICS WOODS-CREE THWA */ + [0x167d, 0x167d], /* CANADIAN SYLLABICS WOODS-CREE THWAA */ + [0x167e, 0x167e], /* CANADIAN SYLLABICS WOODS-CREE FINAL TH */ + [0x167f, 0x167f], /* CANADIAN SYLLABICS BLACKFOOT W */ + [0x1680, 0x1680], /* OGHAM SPACE MARK */ + [0x1681, 0x1681], /* OGHAM LETTER BEITH */ + [0x1682, 0x1682], /* OGHAM LETTER LUIS */ + [0x1683, 0x1683], /* OGHAM LETTER FEARN */ + [0x1684, 0x1684], /* OGHAM LETTER SAIL */ + [0x1685, 0x1685], /* OGHAM LETTER NION */ + [0x1686, 0x1686], /* OGHAM LETTER UATH */ + [0x1687, 0x1687], /* OGHAM LETTER DAIR */ + [0x1688, 0x1688], /* OGHAM LETTER TINNE */ + [0x1689, 0x1689], /* OGHAM LETTER COLL */ + [0x168a, 0x168a], /* OGHAM LETTER CEIRT */ + [0x168b, 0x168b], /* OGHAM LETTER MUIN */ + [0x168c, 0x168c], /* OGHAM LETTER GORT */ + [0x168d, 0x168d], /* OGHAM LETTER NGEADAL */ + [0x168e, 0x168e], /* OGHAM LETTER STRAIF */ + [0x168f, 0x168f], /* OGHAM LETTER RUIS */ + [0x1690, 0x1690], /* OGHAM LETTER AILM */ + [0x1691, 0x1691], /* OGHAM LETTER ONN */ + [0x1692, 0x1692], /* OGHAM LETTER UR */ + [0x1693, 0x1693], /* OGHAM LETTER EADHADH */ + [0x1694, 0x1694], /* OGHAM LETTER IODHADH */ + [0x1695, 0x1695], /* OGHAM LETTER EABHADH */ + [0x1696, 0x1696], /* OGHAM LETTER OR */ + [0x1697, 0x1697], /* OGHAM LETTER UILLEANN */ + [0x1698, 0x1698], /* OGHAM LETTER IFIN */ + [0x1699, 0x1699], /* OGHAM LETTER EAMHANCHOLL */ + [0x169a, 0x169a], /* OGHAM LETTER PEITH */ + [0x169b, 0x169b], /* OGHAM FEATHER MARK */ + [0x169c, 0x169c], /* OGHAM REVERSED FEATHER MARK */ + [0x169d, 0x169d], + [0x169e, 0x169e], + [0x169f, 0x169f], + [0x16a0, 0x16a0], /* RUNIC LETTER FEHU FEOH FE F */ + [0x16a1, 0x16a1], /* RUNIC LETTER V */ + [0x16a2, 0x16a2], /* RUNIC LETTER URUZ UR U */ + [0x16a3, 0x16a3], /* RUNIC LETTER YR */ + [0x16a4, 0x16a4], /* RUNIC LETTER Y */ + [0x16a5, 0x16a5], /* RUNIC LETTER W */ + [0x16a6, 0x16a6], /* RUNIC LETTER THURISAZ THURS THORN */ + [0x16a7, 0x16a7], /* RUNIC LETTER ETH */ + [0x16a8, 0x16a8], /* RUNIC LETTER ANSUZ A */ + [0x16a9, 0x16a9], /* RUNIC LETTER OS O */ + [0x16aa, 0x16aa], /* RUNIC LETTER AC A */ + [0x16ab, 0x16ab], /* RUNIC LETTER AESC */ + [0x16ac, 0x16ac], /* RUNIC LETTER LONG-BRANCH-OSS O */ + [0x16ad, 0x16ad], /* RUNIC LETTER SHORT-TWIG-OSS O */ + [0x16ae, 0x16ae], /* RUNIC LETTER O */ + [0x16af, 0x16af], /* RUNIC LETTER OE */ + [0x16b0, 0x16b0], /* RUNIC LETTER ON */ + [0x16b1, 0x16b1], /* RUNIC LETTER RAIDO RAD REID R */ + [0x16b2, 0x16b2], /* RUNIC LETTER KAUNA */ + [0x16b3, 0x16b3], /* RUNIC LETTER CEN */ + [0x16b4, 0x16b4], /* RUNIC LETTER KAUN K */ + [0x16b5, 0x16b5], /* RUNIC LETTER G */ + [0x16b6, 0x16b6], /* RUNIC LETTER ENG */ + [0x16b7, 0x16b7], /* RUNIC LETTER GEBO GYFU G */ + [0x16b8, 0x16b8], /* RUNIC LETTER GAR */ + [0x16b9, 0x16b9], /* RUNIC LETTER WUNJO WYNN W */ + [0x16ba, 0x16ba], /* RUNIC LETTER HAGLAZ H */ + [0x16bb, 0x16bb], /* RUNIC LETTER HAEGL H */ + [0x16bc, 0x16bc], /* RUNIC LETTER LONG-BRANCH-HAGALL H */ + [0x16bd, 0x16bd], /* RUNIC LETTER SHORT-TWIG-HAGALL H */ + [0x16be, 0x16be], /* RUNIC LETTER NAUDIZ NYD NAUD N */ + [0x16bf, 0x16bf], /* RUNIC LETTER SHORT-TWIG-NAUD N */ + [0x16c0, 0x16c0], /* RUNIC LETTER DOTTED-N */ + [0x16c1, 0x16c1], /* RUNIC LETTER ISAZ IS ISS I */ + [0x16c2, 0x16c2], /* RUNIC LETTER E */ + [0x16c3, 0x16c3], /* RUNIC LETTER JERAN J */ + [0x16c4, 0x16c4], /* RUNIC LETTER GER */ + [0x16c5, 0x16c5], /* RUNIC LETTER LONG-BRANCH-AR AE */ + [0x16c6, 0x16c6], /* RUNIC LETTER SHORT-TWIG-AR A */ + [0x16c7, 0x16c7], /* RUNIC LETTER IWAZ EOH */ + [0x16c8, 0x16c8], /* RUNIC LETTER PERTHO PEORTH P */ + [0x16c9, 0x16c9], /* RUNIC LETTER ALGIZ EOLHX */ + [0x16ca, 0x16ca], /* RUNIC LETTER SOWILO S */ + [0x16cb, 0x16cb], /* RUNIC LETTER SIGEL LONG-BRANCH-SOL S */ + [0x16cc, 0x16cc], /* RUNIC LETTER SHORT-TWIG-SOL S */ + [0x16cd, 0x16cd], /* RUNIC LETTER C */ + [0x16ce, 0x16ce], /* RUNIC LETTER Z */ + [0x16cf, 0x16cf], /* RUNIC LETTER TIWAZ TIR TYR T */ + [0x16d0, 0x16d0], /* RUNIC LETTER SHORT-TWIG-TYR T */ + [0x16d1, 0x16d1], /* RUNIC LETTER D */ + [0x16d2, 0x16d2], /* RUNIC LETTER BERKANAN BEORC BJARKAN B */ + [0x16d3, 0x16d3], /* RUNIC LETTER SHORT-TWIG-BJARKAN B */ + [0x16d4, 0x16d4], /* RUNIC LETTER DOTTED-P */ + [0x16d5, 0x16d5], /* RUNIC LETTER OPEN-P */ + [0x16d6, 0x16d6], /* RUNIC LETTER EHWAZ EH E */ + [0x16d7, 0x16d7], /* RUNIC LETTER MANNAZ MAN M */ + [0x16d8, 0x16d8], /* RUNIC LETTER LONG-BRANCH-MADR M */ + [0x16d9, 0x16d9], /* RUNIC LETTER SHORT-TWIG-MADR M */ + [0x16da, 0x16da], /* RUNIC LETTER LAUKAZ LAGU LOGR L */ + [0x16db, 0x16db], /* RUNIC LETTER DOTTED-L */ + [0x16dc, 0x16dc], /* RUNIC LETTER INGWAZ */ + [0x16dd, 0x16dd], /* RUNIC LETTER ING */ + [0x16de, 0x16de], /* RUNIC LETTER DAGAZ DAEG D */ + [0x16df, 0x16df], /* RUNIC LETTER OTHALAN ETHEL O */ + [0x16e0, 0x16e0], /* RUNIC LETTER EAR */ + [0x16e1, 0x16e1], /* RUNIC LETTER IOR */ + [0x16e2, 0x16e2], /* RUNIC LETTER CWEORTH */ + [0x16e3, 0x16e3], /* RUNIC LETTER CALC */ + [0x16e4, 0x16e4], /* RUNIC LETTER CEALC */ + [0x16e5, 0x16e5], /* RUNIC LETTER STAN */ + [0x16e6, 0x16e6], /* RUNIC LETTER LONG-BRANCH-YR */ + [0x16e7, 0x16e7], /* RUNIC LETTER SHORT-TWIG-YR */ + [0x16e8, 0x16e8], /* RUNIC LETTER ICELANDIC-YR */ + [0x16e9, 0x16e9], /* RUNIC LETTER Q */ + [0x16ea, 0x16ea], /* RUNIC LETTER X */ + [0x16eb, 0x16eb], /* RUNIC SINGLE PUNCTUATION */ + [0x16ec, 0x16ec], /* RUNIC MULTIPLE PUNCTUATION */ + [0x16ed, 0x16ed], /* RUNIC CROSS PUNCTUATION */ + [0x16ee, 0x16ee], /* RUNIC ARLAUG SYMBOL */ + [0x16ef, 0x16ef], /* RUNIC TVIMADUR SYMBOL */ + [0x16f0, 0x16f0], /* RUNIC BELGTHOR SYMBOL */ + [0x16f1, 0x16f1], /* RUNIC LETTER K */ + [0x16f2, 0x16f2], /* RUNIC LETTER SH */ + [0x16f3, 0x16f3], /* RUNIC LETTER OO */ + [0x16f4, 0x16f4], /* RUNIC LETTER FRANKS CASKET OS */ + [0x16f5, 0x16f5], /* RUNIC LETTER FRANKS CASKET IS */ + [0x16f6, 0x16f6], /* RUNIC LETTER FRANKS CASKET EH */ + [0x16f7, 0x16f7], /* RUNIC LETTER FRANKS CASKET AC */ + [0x16f8, 0x16f8], /* RUNIC LETTER FRANKS CASKET AESC */ + [0x16f9, 0x16f9], + [0x16fa, 0x16fa], + [0x16fb, 0x16fb], + [0x16fc, 0x16fc], + [0x16fd, 0x16fd], + [0x16fe, 0x16fe], + [0x16ff, 0x16ff], + [0x1700, 0x1700], /* TAGALOG LETTER A */ + [0x1701, 0x1701], /* TAGALOG LETTER I */ + [0x1702, 0x1702], /* TAGALOG LETTER U */ + [0x1703, 0x1703], /* TAGALOG LETTER KA */ + [0x1704, 0x1704], /* TAGALOG LETTER GA */ + [0x1705, 0x1705], /* TAGALOG LETTER NGA */ + [0x1706, 0x1706], /* TAGALOG LETTER TA */ + [0x1707, 0x1707], /* TAGALOG LETTER DA */ + [0x1708, 0x1708], /* TAGALOG LETTER NA */ + [0x1709, 0x1709], /* TAGALOG LETTER PA */ + [0x170a, 0x170a], /* TAGALOG LETTER BA */ + [0x170b, 0x170b], /* TAGALOG LETTER MA */ + [0x170c, 0x170c], /* TAGALOG LETTER YA */ + [0x170d, 0x170d], + [0x170e, 0x170e], /* TAGALOG LETTER LA */ + [0x170f, 0x170f], /* TAGALOG LETTER WA */ + [0x1710, 0x1710], /* TAGALOG LETTER SA */ + [0x1711, 0x1711], /* TAGALOG LETTER HA */ + [0x1712, 0x1712], /* TAGALOG VOWEL SIGN I */ + [0x1713, 0x1713], /* TAGALOG VOWEL SIGN U */ + [0x1714, 0x1714], /* TAGALOG SIGN VIRAMA */ + [0x1715, 0x1715], + [0x1716, 0x1716], + [0x1717, 0x1717], + [0x1718, 0x1718], + [0x1719, 0x1719], + [0x171a, 0x171a], + [0x171b, 0x171b], + [0x171c, 0x171c], + [0x171d, 0x171d], + [0x171e, 0x171e], + [0x171f, 0x171f], + [0x1720, 0x1720], /* HANUNOO LETTER A */ + [0x1721, 0x1721], /* HANUNOO LETTER I */ + [0x1722, 0x1722], /* HANUNOO LETTER U */ + [0x1723, 0x1723], /* HANUNOO LETTER KA */ + [0x1724, 0x1724], /* HANUNOO LETTER GA */ + [0x1725, 0x1725], /* HANUNOO LETTER NGA */ + [0x1726, 0x1726], /* HANUNOO LETTER TA */ + [0x1727, 0x1727], /* HANUNOO LETTER DA */ + [0x1728, 0x1728], /* HANUNOO LETTER NA */ + [0x1729, 0x1729], /* HANUNOO LETTER PA */ + [0x172a, 0x172a], /* HANUNOO LETTER BA */ + [0x172b, 0x172b], /* HANUNOO LETTER MA */ + [0x172c, 0x172c], /* HANUNOO LETTER YA */ + [0x172d, 0x172d], /* HANUNOO LETTER RA */ + [0x172e, 0x172e], /* HANUNOO LETTER LA */ + [0x172f, 0x172f], /* HANUNOO LETTER WA */ + [0x1730, 0x1730], /* HANUNOO LETTER SA */ + [0x1731, 0x1731], /* HANUNOO LETTER HA */ + [0x1732, 0x1732], /* HANUNOO VOWEL SIGN I */ + [0x1733, 0x1733], /* HANUNOO VOWEL SIGN U */ + [0x1734, 0x1734], /* HANUNOO SIGN PAMUDPOD */ + [0x1735, 0x1735], /* PHILIPPINE SINGLE PUNCTUATION */ + [0x1736, 0x1736], /* PHILIPPINE DOUBLE PUNCTUATION */ + [0x1737, 0x1737], + [0x1738, 0x1738], + [0x1739, 0x1739], + [0x173a, 0x173a], + [0x173b, 0x173b], + [0x173c, 0x173c], + [0x173d, 0x173d], + [0x173e, 0x173e], + [0x173f, 0x173f], + [0x1740, 0x1740], /* BUHID LETTER A */ + [0x1741, 0x1741], /* BUHID LETTER I */ + [0x1742, 0x1742], /* BUHID LETTER U */ + [0x1743, 0x1743], /* BUHID LETTER KA */ + [0x1744, 0x1744], /* BUHID LETTER GA */ + [0x1745, 0x1745], /* BUHID LETTER NGA */ + [0x1746, 0x1746], /* BUHID LETTER TA */ + [0x1747, 0x1747], /* BUHID LETTER DA */ + [0x1748, 0x1748], /* BUHID LETTER NA */ + [0x1749, 0x1749], /* BUHID LETTER PA */ + [0x174a, 0x174a], /* BUHID LETTER BA */ + [0x174b, 0x174b], /* BUHID LETTER MA */ + [0x174c, 0x174c], /* BUHID LETTER YA */ + [0x174d, 0x174d], /* BUHID LETTER RA */ + [0x174e, 0x174e], /* BUHID LETTER LA */ + [0x174f, 0x174f], /* BUHID LETTER WA */ + [0x1750, 0x1750], /* BUHID LETTER SA */ + [0x1751, 0x1751], /* BUHID LETTER HA */ + [0x1752, 0x1752], /* BUHID VOWEL SIGN I */ + [0x1753, 0x1753], /* BUHID VOWEL SIGN U */ + [0x1754, 0x1754], + [0x1755, 0x1755], + [0x1756, 0x1756], + [0x1757, 0x1757], + [0x1758, 0x1758], + [0x1759, 0x1759], + [0x175a, 0x175a], + [0x175b, 0x175b], + [0x175c, 0x175c], + [0x175d, 0x175d], + [0x175e, 0x175e], + [0x175f, 0x175f], + [0x1760, 0x1760], /* TAGBANWA LETTER A */ + [0x1761, 0x1761], /* TAGBANWA LETTER I */ + [0x1762, 0x1762], /* TAGBANWA LETTER U */ + [0x1763, 0x1763], /* TAGBANWA LETTER KA */ + [0x1764, 0x1764], /* TAGBANWA LETTER GA */ + [0x1765, 0x1765], /* TAGBANWA LETTER NGA */ + [0x1766, 0x1766], /* TAGBANWA LETTER TA */ + [0x1767, 0x1767], /* TAGBANWA LETTER DA */ + [0x1768, 0x1768], /* TAGBANWA LETTER NA */ + [0x1769, 0x1769], /* TAGBANWA LETTER PA */ + [0x176a, 0x176a], /* TAGBANWA LETTER BA */ + [0x176b, 0x176b], /* TAGBANWA LETTER MA */ + [0x176c, 0x176c], /* TAGBANWA LETTER YA */ + [0x176d, 0x176d], + [0x176e, 0x176e], /* TAGBANWA LETTER LA */ + [0x176f, 0x176f], /* TAGBANWA LETTER WA */ + [0x1770, 0x1770], /* TAGBANWA LETTER SA */ + [0x1771, 0x1771], + [0x1772, 0x1772], /* TAGBANWA VOWEL SIGN I */ + [0x1773, 0x1773], /* TAGBANWA VOWEL SIGN U */ + [0x1774, 0x1774], + [0x1775, 0x1775], + [0x1776, 0x1776], + [0x1777, 0x1777], + [0x1778, 0x1778], + [0x1779, 0x1779], + [0x177a, 0x177a], + [0x177b, 0x177b], + [0x177c, 0x177c], + [0x177d, 0x177d], + [0x177e, 0x177e], + [0x177f, 0x177f], + [0x1780, 0x1780], /* KHMER LETTER KA */ + [0x1781, 0x1781], /* KHMER LETTER KHA */ + [0x1782, 0x1782], /* KHMER LETTER KO */ + [0x1783, 0x1783], /* KHMER LETTER KHO */ + [0x1784, 0x1784], /* KHMER LETTER NGO */ + [0x1785, 0x1785], /* KHMER LETTER CA */ + [0x1786, 0x1786], /* KHMER LETTER CHA */ + [0x1787, 0x1787], /* KHMER LETTER CO */ + [0x1788, 0x1788], /* KHMER LETTER CHO */ + [0x1789, 0x1789], /* KHMER LETTER NYO */ + [0x178a, 0x178a], /* KHMER LETTER DA */ + [0x178b, 0x178b], /* KHMER LETTER TTHA */ + [0x178c, 0x178c], /* KHMER LETTER DO */ + [0x178d, 0x178d], /* KHMER LETTER TTHO */ + [0x178e, 0x178e], /* KHMER LETTER NNO */ + [0x178f, 0x178f], /* KHMER LETTER TA */ + [0x1790, 0x1790], /* KHMER LETTER THA */ + [0x1791, 0x1791], /* KHMER LETTER TO */ + [0x1792, 0x1792], /* KHMER LETTER THO */ + [0x1793, 0x1793], /* KHMER LETTER NO */ + [0x1794, 0x1794], /* KHMER LETTER BA */ + [0x1795, 0x1795], /* KHMER LETTER PHA */ + [0x1796, 0x1796], /* KHMER LETTER PO */ + [0x1797, 0x1797], /* KHMER LETTER PHO */ + [0x1798, 0x1798], /* KHMER LETTER MO */ + [0x1799, 0x1799], /* KHMER LETTER YO */ + [0x179a, 0x179a], /* KHMER LETTER RO */ + [0x179b, 0x179b], /* KHMER LETTER LO */ + [0x179c, 0x179c], /* KHMER LETTER VO */ + [0x179d, 0x179d], /* KHMER LETTER SHA */ + [0x179e, 0x179e], /* KHMER LETTER SSO */ + [0x179f, 0x179f], /* KHMER LETTER SA */ + [0x17a0, 0x17a0], /* KHMER LETTER HA */ + [0x17a1, 0x17a1], /* KHMER LETTER LA */ + [0x17a2, 0x17a2], /* KHMER LETTER QA */ + [0x17a3, 0x17a3], /* KHMER INDEPENDENT VOWEL QAQ */ + [0x17a4, 0x17a4], /* KHMER INDEPENDENT VOWEL QAA */ + [0x17a5, 0x17a5], /* KHMER INDEPENDENT VOWEL QI */ + [0x17a6, 0x17a6], /* KHMER INDEPENDENT VOWEL QII */ + [0x17a7, 0x17a7], /* KHMER INDEPENDENT VOWEL QU */ + [0x17a8, 0x17a8], /* KHMER INDEPENDENT VOWEL QUK */ + [0x17a9, 0x17a9], /* KHMER INDEPENDENT VOWEL QUU */ + [0x17aa, 0x17aa], /* KHMER INDEPENDENT VOWEL QUUV */ + [0x17ab, 0x17ab], /* KHMER INDEPENDENT VOWEL RY */ + [0x17ac, 0x17ac], /* KHMER INDEPENDENT VOWEL RYY */ + [0x17ad, 0x17ad], /* KHMER INDEPENDENT VOWEL LY */ + [0x17ae, 0x17ae], /* KHMER INDEPENDENT VOWEL LYY */ + [0x17af, 0x17af], /* KHMER INDEPENDENT VOWEL QE */ + [0x17b0, 0x17b0], /* KHMER INDEPENDENT VOWEL QAI */ + [0x17b1, 0x17b1], /* KHMER INDEPENDENT VOWEL QOO TYPE ONE */ + [0x17b2, 0x17b2], /* KHMER INDEPENDENT VOWEL QOO TYPE TWO */ + [0x17b3, 0x17b3], /* KHMER INDEPENDENT VOWEL QAU */ + [0x17b4, 0x17b4], /* KHMER VOWEL INHERENT AQ */ + [0x17b5, 0x17b5], /* KHMER VOWEL INHERENT AA */ + [0x17b6, 0x17b6], /* KHMER VOWEL SIGN AA */ + [0x17b7, 0x17b7], /* KHMER VOWEL SIGN I */ + [0x17b8, 0x17b8], /* KHMER VOWEL SIGN II */ + [0x17b9, 0x17b9], /* KHMER VOWEL SIGN Y */ + [0x17ba, 0x17ba], /* KHMER VOWEL SIGN YY */ + [0x17bb, 0x17bb], /* KHMER VOWEL SIGN U */ + [0x17bc, 0x17bc], /* KHMER VOWEL SIGN UU */ + [0x17bd, 0x17bd], /* KHMER VOWEL SIGN UA */ + [0x17be, 0x17be], /* KHMER VOWEL SIGN OE */ + [0x17bf, 0x17bf], /* KHMER VOWEL SIGN YA */ + [0x17c0, 0x17c0], /* KHMER VOWEL SIGN IE */ + [0x17c1, 0x17c1], /* KHMER VOWEL SIGN E */ + [0x17c2, 0x17c2], /* KHMER VOWEL SIGN AE */ + [0x17c3, 0x17c3], /* KHMER VOWEL SIGN AI */ + [0x17c4, 0x17c4], /* KHMER VOWEL SIGN OO */ + [0x17c5, 0x17c5], /* KHMER VOWEL SIGN AU */ + [0x17c6, 0x17c6], /* KHMER SIGN NIKAHIT */ + [0x17c7, 0x17c7], /* KHMER SIGN REAHMUK */ + [0x17c8, 0x17c8], /* KHMER SIGN YUUKALEAPINTU */ + [0x17c9, 0x17c9], /* KHMER SIGN MUUSIKATOAN */ + [0x17ca, 0x17ca], /* KHMER SIGN TRIISAP */ + [0x17cb, 0x17cb], /* KHMER SIGN BANTOC */ + [0x17cc, 0x17cc], /* KHMER SIGN ROBAT */ + [0x17cd, 0x17cd], /* KHMER SIGN TOANDAKHIAT */ + [0x17ce, 0x17ce], /* KHMER SIGN KAKABAT */ + [0x17cf, 0x17cf], /* KHMER SIGN AHSDA */ + [0x17d0, 0x17d0], /* KHMER SIGN SAMYOK SANNYA */ + [0x17d1, 0x17d1], /* KHMER SIGN VIRIAM */ + [0x17d2, 0x17d2], /* KHMER SIGN COENG */ + [0x17d3, 0x17d3], /* KHMER SIGN BATHAMASAT */ + [0x17d4, 0x17d4], /* KHMER SIGN KHAN */ + [0x17d5, 0x17d5], /* KHMER SIGN BARIYOOSAN */ + [0x17d6, 0x17d6], /* KHMER SIGN CAMNUC PII KUUH */ + [0x17d7, 0x17d7], /* KHMER SIGN LEK TOO */ + [0x17d8, 0x17d8], /* KHMER SIGN BEYYAL */ + [0x17d9, 0x17d9], /* KHMER SIGN PHNAEK MUAN */ + [0x17da, 0x17da], /* KHMER SIGN KOOMUUT */ + [0x17db, 0x17db], /* KHMER CURRENCY SYMBOL RIEL */ + [0x17dc, 0x17dc], /* KHMER SIGN AVAKRAHASANYA */ + [0x17dd, 0x17dd], /* KHMER SIGN ATTHACAN */ + [0x17de, 0x17de], + [0x17df, 0x17df], + [0x17e0, 0x17e0], /* KHMER DIGIT ZERO */ + [0x17e1, 0x17e1], /* KHMER DIGIT ONE */ + [0x17e2, 0x17e2], /* KHMER DIGIT TWO */ + [0x17e3, 0x17e3], /* KHMER DIGIT THREE */ + [0x17e4, 0x17e4], /* KHMER DIGIT FOUR */ + [0x17e5, 0x17e5], /* KHMER DIGIT FIVE */ + [0x17e6, 0x17e6], /* KHMER DIGIT SIX */ + [0x17e7, 0x17e7], /* KHMER DIGIT SEVEN */ + [0x17e8, 0x17e8], /* KHMER DIGIT EIGHT */ + [0x17e9, 0x17e9], /* KHMER DIGIT NINE */ + [0x17ea, 0x17ea], + [0x17eb, 0x17eb], + [0x17ec, 0x17ec], + [0x17ed, 0x17ed], + [0x17ee, 0x17ee], + [0x17ef, 0x17ef], + [0x17f0, 0x17f0], /* KHMER SYMBOL LEK ATTAK SON */ + [0x17f1, 0x17f1], /* KHMER SYMBOL LEK ATTAK MUOY */ + [0x17f2, 0x17f2], /* KHMER SYMBOL LEK ATTAK PII */ + [0x17f3, 0x17f3], /* KHMER SYMBOL LEK ATTAK BEI */ + [0x17f4, 0x17f4], /* KHMER SYMBOL LEK ATTAK BUON */ + [0x17f5, 0x17f5], /* KHMER SYMBOL LEK ATTAK PRAM */ + [0x17f6, 0x17f6], /* KHMER SYMBOL LEK ATTAK PRAM-MUOY */ + [0x17f7, 0x17f7], /* KHMER SYMBOL LEK ATTAK PRAM-PII */ + [0x17f8, 0x17f8], /* KHMER SYMBOL LEK ATTAK PRAM-BEI */ + [0x17f9, 0x17f9], /* KHMER SYMBOL LEK ATTAK PRAM-BUON */ + [0x17fa, 0x17fa], + [0x17fb, 0x17fb], + [0x17fc, 0x17fc], + [0x17fd, 0x17fd], + [0x17fe, 0x17fe], + [0x17ff, 0x17ff], + [0x1800, 0x1800], /* MONGOLIAN BIRGA */ + [0x1801, 0x1801], /* MONGOLIAN ELLIPSIS */ + [0x1802, 0x1802], /* MONGOLIAN COMMA */ + [0x1803, 0x1803], /* MONGOLIAN FULL STOP */ + [0x1804, 0x1804], /* MONGOLIAN COLON */ + [0x1805, 0x1805], /* MONGOLIAN FOUR DOTS */ + [0x1806, 0x1806], /* MONGOLIAN TODO SOFT HYPHEN */ + [0x1807, 0x1807], /* MONGOLIAN SIBE SYLLABLE BOUNDARY MARKER */ + [0x1808, 0x1808], /* MONGOLIAN MANCHU COMMA */ + [0x1809, 0x1809], /* MONGOLIAN MANCHU FULL STOP */ + [0x180a, 0x180a], /* MONGOLIAN NIRUGU */ + [0x180b, 0x180b], /* MONGOLIAN FREE VARIATION SELECTOR ONE */ + [0x180c, 0x180c], /* MONGOLIAN FREE VARIATION SELECTOR TWO */ + [0x180d, 0x180d], /* MONGOLIAN FREE VARIATION SELECTOR THREE */ + [0x180e, 0x180e], /* MONGOLIAN VOWEL SEPARATOR */ + [0x180f, 0x180f], + [0x1810, 0x1810], /* MONGOLIAN DIGIT ZERO */ + [0x1811, 0x1811], /* MONGOLIAN DIGIT ONE */ + [0x1812, 0x1812], /* MONGOLIAN DIGIT TWO */ + [0x1813, 0x1813], /* MONGOLIAN DIGIT THREE */ + [0x1814, 0x1814], /* MONGOLIAN DIGIT FOUR */ + [0x1815, 0x1815], /* MONGOLIAN DIGIT FIVE */ + [0x1816, 0x1816], /* MONGOLIAN DIGIT SIX */ + [0x1817, 0x1817], /* MONGOLIAN DIGIT SEVEN */ + [0x1818, 0x1818], /* MONGOLIAN DIGIT EIGHT */ + [0x1819, 0x1819], /* MONGOLIAN DIGIT NINE */ + [0x181a, 0x181a], + [0x181b, 0x181b], + [0x181c, 0x181c], + [0x181d, 0x181d], + [0x181e, 0x181e], + [0x181f, 0x181f], + [0x1820, 0x1820], /* MONGOLIAN LETTER A */ + [0x1821, 0x1821], /* MONGOLIAN LETTER E */ + [0x1822, 0x1822], /* MONGOLIAN LETTER I */ + [0x1823, 0x1823], /* MONGOLIAN LETTER O */ + [0x1824, 0x1824], /* MONGOLIAN LETTER U */ + [0x1825, 0x1825], /* MONGOLIAN LETTER OE */ + [0x1826, 0x1826], /* MONGOLIAN LETTER UE */ + [0x1827, 0x1827], /* MONGOLIAN LETTER EE */ + [0x1828, 0x1828], /* MONGOLIAN LETTER NA */ + [0x1829, 0x1829], /* MONGOLIAN LETTER ANG */ + [0x182a, 0x182a], /* MONGOLIAN LETTER BA */ + [0x182b, 0x182b], /* MONGOLIAN LETTER PA */ + [0x182c, 0x182c], /* MONGOLIAN LETTER QA */ + [0x182d, 0x182d], /* MONGOLIAN LETTER GA */ + [0x182e, 0x182e], /* MONGOLIAN LETTER MA */ + [0x182f, 0x182f], /* MONGOLIAN LETTER LA */ + [0x1830, 0x1830], /* MONGOLIAN LETTER SA */ + [0x1831, 0x1831], /* MONGOLIAN LETTER SHA */ + [0x1832, 0x1832], /* MONGOLIAN LETTER TA */ + [0x1833, 0x1833], /* MONGOLIAN LETTER DA */ + [0x1834, 0x1834], /* MONGOLIAN LETTER CHA */ + [0x1835, 0x1835], /* MONGOLIAN LETTER JA */ + [0x1836, 0x1836], /* MONGOLIAN LETTER YA */ + [0x1837, 0x1837], /* MONGOLIAN LETTER RA */ + [0x1838, 0x1838], /* MONGOLIAN LETTER WA */ + [0x1839, 0x1839], /* MONGOLIAN LETTER FA */ + [0x183a, 0x183a], /* MONGOLIAN LETTER KA */ + [0x183b, 0x183b], /* MONGOLIAN LETTER KHA */ + [0x183c, 0x183c], /* MONGOLIAN LETTER TSA */ + [0x183d, 0x183d], /* MONGOLIAN LETTER ZA */ + [0x183e, 0x183e], /* MONGOLIAN LETTER HAA */ + [0x183f, 0x183f], /* MONGOLIAN LETTER ZRA */ + [0x1840, 0x1840], /* MONGOLIAN LETTER LHA */ + [0x1841, 0x1841], /* MONGOLIAN LETTER ZHI */ + [0x1842, 0x1842], /* MONGOLIAN LETTER CHI */ + [0x1843, 0x1843], /* MONGOLIAN LETTER TODO LONG VOWEL SIGN */ + [0x1844, 0x1844], /* MONGOLIAN LETTER TODO E */ + [0x1845, 0x1845], /* MONGOLIAN LETTER TODO I */ + [0x1846, 0x1846], /* MONGOLIAN LETTER TODO O */ + [0x1847, 0x1847], /* MONGOLIAN LETTER TODO U */ + [0x1848, 0x1848], /* MONGOLIAN LETTER TODO OE */ + [0x1849, 0x1849], /* MONGOLIAN LETTER TODO UE */ + [0x184a, 0x184a], /* MONGOLIAN LETTER TODO ANG */ + [0x184b, 0x184b], /* MONGOLIAN LETTER TODO BA */ + [0x184c, 0x184c], /* MONGOLIAN LETTER TODO PA */ + [0x184d, 0x184d], /* MONGOLIAN LETTER TODO QA */ + [0x184e, 0x184e], /* MONGOLIAN LETTER TODO GA */ + [0x184f, 0x184f], /* MONGOLIAN LETTER TODO MA */ + [0x1850, 0x1850], /* MONGOLIAN LETTER TODO TA */ + [0x1851, 0x1851], /* MONGOLIAN LETTER TODO DA */ + [0x1852, 0x1852], /* MONGOLIAN LETTER TODO CHA */ + [0x1853, 0x1853], /* MONGOLIAN LETTER TODO JA */ + [0x1854, 0x1854], /* MONGOLIAN LETTER TODO TSA */ + [0x1855, 0x1855], /* MONGOLIAN LETTER TODO YA */ + [0x1856, 0x1856], /* MONGOLIAN LETTER TODO WA */ + [0x1857, 0x1857], /* MONGOLIAN LETTER TODO KA */ + [0x1858, 0x1858], /* MONGOLIAN LETTER TODO GAA */ + [0x1859, 0x1859], /* MONGOLIAN LETTER TODO HAA */ + [0x185a, 0x185a], /* MONGOLIAN LETTER TODO JIA */ + [0x185b, 0x185b], /* MONGOLIAN LETTER TODO NIA */ + [0x185c, 0x185c], /* MONGOLIAN LETTER TODO DZA */ + [0x185d, 0x185d], /* MONGOLIAN LETTER SIBE E */ + [0x185e, 0x185e], /* MONGOLIAN LETTER SIBE I */ + [0x185f, 0x185f], /* MONGOLIAN LETTER SIBE IY */ + [0x1860, 0x1860], /* MONGOLIAN LETTER SIBE UE */ + [0x1861, 0x1861], /* MONGOLIAN LETTER SIBE U */ + [0x1862, 0x1862], /* MONGOLIAN LETTER SIBE ANG */ + [0x1863, 0x1863], /* MONGOLIAN LETTER SIBE KA */ + [0x1864, 0x1864], /* MONGOLIAN LETTER SIBE GA */ + [0x1865, 0x1865], /* MONGOLIAN LETTER SIBE HA */ + [0x1866, 0x1866], /* MONGOLIAN LETTER SIBE PA */ + [0x1867, 0x1867], /* MONGOLIAN LETTER SIBE SHA */ + [0x1868, 0x1868], /* MONGOLIAN LETTER SIBE TA */ + [0x1869, 0x1869], /* MONGOLIAN LETTER SIBE DA */ + [0x186a, 0x186a], /* MONGOLIAN LETTER SIBE JA */ + [0x186b, 0x186b], /* MONGOLIAN LETTER SIBE FA */ + [0x186c, 0x186c], /* MONGOLIAN LETTER SIBE GAA */ + [0x186d, 0x186d], /* MONGOLIAN LETTER SIBE HAA */ + [0x186e, 0x186e], /* MONGOLIAN LETTER SIBE TSA */ + [0x186f, 0x186f], /* MONGOLIAN LETTER SIBE ZA */ + [0x1870, 0x1870], /* MONGOLIAN LETTER SIBE RAA */ + [0x1871, 0x1871], /* MONGOLIAN LETTER SIBE CHA */ + [0x1872, 0x1872], /* MONGOLIAN LETTER SIBE ZHA */ + [0x1873, 0x1873], /* MONGOLIAN LETTER MANCHU I */ + [0x1874, 0x1874], /* MONGOLIAN LETTER MANCHU KA */ + [0x1875, 0x1875], /* MONGOLIAN LETTER MANCHU RA */ + [0x1876, 0x1876], /* MONGOLIAN LETTER MANCHU FA */ + [0x1877, 0x1877], /* MONGOLIAN LETTER MANCHU ZHA */ + [0x1878, 0x1878], + [0x1879, 0x1879], + [0x187a, 0x187a], + [0x187b, 0x187b], + [0x187c, 0x187c], + [0x187d, 0x187d], + [0x187e, 0x187e], + [0x187f, 0x187f], + [0x1880, 0x1880], /* MONGOLIAN LETTER ALI GALI ANUSVARA ONE */ + [0x1881, 0x1881], /* MONGOLIAN LETTER ALI GALI VISARGA ONE */ + [0x1882, 0x1882], /* MONGOLIAN LETTER ALI GALI DAMARU */ + [0x1883, 0x1883], /* MONGOLIAN LETTER ALI GALI UBADAMA */ + [0x1884, 0x1884], /* MONGOLIAN LETTER ALI GALI INVERTED UBADAMA */ + [0x1885, 0x1885], /* MONGOLIAN LETTER ALI GALI BALUDA */ + [0x1886, 0x1886], /* MONGOLIAN LETTER ALI GALI THREE BALUDA */ + [0x1887, 0x1887], /* MONGOLIAN LETTER ALI GALI A */ + [0x1888, 0x1888], /* MONGOLIAN LETTER ALI GALI I */ + [0x1889, 0x1889], /* MONGOLIAN LETTER ALI GALI KA */ + [0x188a, 0x188a], /* MONGOLIAN LETTER ALI GALI NGA */ + [0x188b, 0x188b], /* MONGOLIAN LETTER ALI GALI CA */ + [0x188c, 0x188c], /* MONGOLIAN LETTER ALI GALI TTA */ + [0x188d, 0x188d], /* MONGOLIAN LETTER ALI GALI TTHA */ + [0x188e, 0x188e], /* MONGOLIAN LETTER ALI GALI DDA */ + [0x188f, 0x188f], /* MONGOLIAN LETTER ALI GALI NNA */ + [0x1890, 0x1890], /* MONGOLIAN LETTER ALI GALI TA */ + [0x1891, 0x1891], /* MONGOLIAN LETTER ALI GALI DA */ + [0x1892, 0x1892], /* MONGOLIAN LETTER ALI GALI PA */ + [0x1893, 0x1893], /* MONGOLIAN LETTER ALI GALI PHA */ + [0x1894, 0x1894], /* MONGOLIAN LETTER ALI GALI SSA */ + [0x1895, 0x1895], /* MONGOLIAN LETTER ALI GALI ZHA */ + [0x1896, 0x1896], /* MONGOLIAN LETTER ALI GALI ZA */ + [0x1897, 0x1897], /* MONGOLIAN LETTER ALI GALI AH */ + [0x1898, 0x1898], /* MONGOLIAN LETTER TODO ALI GALI TA */ + [0x1899, 0x1899], /* MONGOLIAN LETTER TODO ALI GALI ZHA */ + [0x189a, 0x189a], /* MONGOLIAN LETTER MANCHU ALI GALI GHA */ + [0x189b, 0x189b], /* MONGOLIAN LETTER MANCHU ALI GALI NGA */ + [0x189c, 0x189c], /* MONGOLIAN LETTER MANCHU ALI GALI CA */ + [0x189d, 0x189d], /* MONGOLIAN LETTER MANCHU ALI GALI JHA */ + [0x189e, 0x189e], /* MONGOLIAN LETTER MANCHU ALI GALI TTA */ + [0x189f, 0x189f], /* MONGOLIAN LETTER MANCHU ALI GALI DDHA */ + [0x18a0, 0x18a0], /* MONGOLIAN LETTER MANCHU ALI GALI TA */ + [0x18a1, 0x18a1], /* MONGOLIAN LETTER MANCHU ALI GALI DHA */ + [0x18a2, 0x18a2], /* MONGOLIAN LETTER MANCHU ALI GALI SSA */ + [0x18a3, 0x18a3], /* MONGOLIAN LETTER MANCHU ALI GALI CYA */ + [0x18a4, 0x18a4], /* MONGOLIAN LETTER MANCHU ALI GALI ZHA */ + [0x18a5, 0x18a5], /* MONGOLIAN LETTER MANCHU ALI GALI ZA */ + [0x18a6, 0x18a6], /* MONGOLIAN LETTER ALI GALI HALF U */ + [0x18a7, 0x18a7], /* MONGOLIAN LETTER ALI GALI HALF YA */ + [0x18a8, 0x18a8], /* MONGOLIAN LETTER MANCHU ALI GALI BHA */ + [0x18a9, 0x18a9], /* MONGOLIAN LETTER ALI GALI DAGALGA */ + [0x18aa, 0x18aa], /* MONGOLIAN LETTER MANCHU ALI GALI LHA */ + [0x18ab, 0x18ab], + [0x18ac, 0x18ac], + [0x18ad, 0x18ad], + [0x18ae, 0x18ae], + [0x18af, 0x18af], + [0x18b0, 0x18b0], /* CANADIAN SYLLABICS OY */ + [0x18b1, 0x18b1], /* CANADIAN SYLLABICS AY */ + [0x18b2, 0x18b2], /* CANADIAN SYLLABICS AAY */ + [0x18b3, 0x18b3], /* CANADIAN SYLLABICS WAY */ + [0x18b4, 0x18b4], /* CANADIAN SYLLABICS POY */ + [0x18b5, 0x18b5], /* CANADIAN SYLLABICS PAY */ + [0x18b6, 0x18b6], /* CANADIAN SYLLABICS PWOY */ + [0x18b7, 0x18b7], /* CANADIAN SYLLABICS TAY */ + [0x18b8, 0x18b8], /* CANADIAN SYLLABICS KAY */ + [0x18b9, 0x18b9], /* CANADIAN SYLLABICS KWAY */ + [0x18ba, 0x18ba], /* CANADIAN SYLLABICS MAY */ + [0x18bb, 0x18bb], /* CANADIAN SYLLABICS NOY */ + [0x18bc, 0x18bc], /* CANADIAN SYLLABICS NAY */ + [0x18bd, 0x18bd], /* CANADIAN SYLLABICS LAY */ + [0x18be, 0x18be], /* CANADIAN SYLLABICS SOY */ + [0x18bf, 0x18bf], /* CANADIAN SYLLABICS SAY */ + [0x18c0, 0x18c0], /* CANADIAN SYLLABICS SHOY */ + [0x18c1, 0x18c1], /* CANADIAN SYLLABICS SHAY */ + [0x18c2, 0x18c2], /* CANADIAN SYLLABICS SHWOY */ + [0x18c3, 0x18c3], /* CANADIAN SYLLABICS YOY */ + [0x18c4, 0x18c4], /* CANADIAN SYLLABICS YAY */ + [0x18c5, 0x18c5], /* CANADIAN SYLLABICS RAY */ + [0x18c6, 0x18c6], /* CANADIAN SYLLABICS NWI */ + [0x18c7, 0x18c7], /* CANADIAN SYLLABICS OJIBWAY NWI */ + [0x18c8, 0x18c8], /* CANADIAN SYLLABICS NWII */ + [0x18c9, 0x18c9], /* CANADIAN SYLLABICS OJIBWAY NWII */ + [0x18ca, 0x18ca], /* CANADIAN SYLLABICS NWO */ + [0x18cb, 0x18cb], /* CANADIAN SYLLABICS OJIBWAY NWO */ + [0x18cc, 0x18cc], /* CANADIAN SYLLABICS NWOO */ + [0x18cd, 0x18cd], /* CANADIAN SYLLABICS OJIBWAY NWOO */ + [0x18ce, 0x18ce], /* CANADIAN SYLLABICS RWEE */ + [0x18cf, 0x18cf], /* CANADIAN SYLLABICS RWI */ + [0x18d0, 0x18d0], /* CANADIAN SYLLABICS RWII */ + [0x18d1, 0x18d1], /* CANADIAN SYLLABICS RWO */ + [0x18d2, 0x18d2], /* CANADIAN SYLLABICS RWOO */ + [0x18d3, 0x18d3], /* CANADIAN SYLLABICS RWA */ + [0x18d4, 0x18d4], /* CANADIAN SYLLABICS OJIBWAY P */ + [0x18d5, 0x18d5], /* CANADIAN SYLLABICS OJIBWAY T */ + [0x18d6, 0x18d6], /* CANADIAN SYLLABICS OJIBWAY K */ + [0x18d7, 0x18d7], /* CANADIAN SYLLABICS OJIBWAY C */ + [0x18d8, 0x18d8], /* CANADIAN SYLLABICS OJIBWAY M */ + [0x18d9, 0x18d9], /* CANADIAN SYLLABICS OJIBWAY N */ + [0x18da, 0x18da], /* CANADIAN SYLLABICS OJIBWAY S */ + [0x18db, 0x18db], /* CANADIAN SYLLABICS OJIBWAY SH */ + [0x18dc, 0x18dc], /* CANADIAN SYLLABICS EASTERN W */ + [0x18dd, 0x18dd], /* CANADIAN SYLLABICS WESTERN W */ + [0x18de, 0x18de], /* CANADIAN SYLLABICS FINAL SMALL RING */ + [0x18df, 0x18df], /* CANADIAN SYLLABICS FINAL RAISED DOT */ + [0x18e0, 0x18e0], /* CANADIAN SYLLABICS R-CREE RWE */ + [0x18e1, 0x18e1], /* CANADIAN SYLLABICS WEST-CREE LOO */ + [0x18e2, 0x18e2], /* CANADIAN SYLLABICS WEST-CREE LAA */ + [0x18e3, 0x18e3], /* CANADIAN SYLLABICS THWE */ + [0x18e4, 0x18e4], /* CANADIAN SYLLABICS THWA */ + [0x18e5, 0x18e5], /* CANADIAN SYLLABICS TTHWE */ + [0x18e6, 0x18e6], /* CANADIAN SYLLABICS TTHOO */ + [0x18e7, 0x18e7], /* CANADIAN SYLLABICS TTHAA */ + [0x18e8, 0x18e8], /* CANADIAN SYLLABICS TLHWE */ + [0x18e9, 0x18e9], /* CANADIAN SYLLABICS TLHOO */ + [0x18ea, 0x18ea], /* CANADIAN SYLLABICS SAYISI SHWE */ + [0x18eb, 0x18eb], /* CANADIAN SYLLABICS SAYISI SHOO */ + [0x18ec, 0x18ec], /* CANADIAN SYLLABICS SAYISI HOO */ + [0x18ed, 0x18ed], /* CANADIAN SYLLABICS CARRIER GWU */ + [0x18ee, 0x18ee], /* CANADIAN SYLLABICS CARRIER DENE GEE */ + [0x18ef, 0x18ef], /* CANADIAN SYLLABICS CARRIER GAA */ + [0x18f0, 0x18f0], /* CANADIAN SYLLABICS CARRIER GWA */ + [0x18f1, 0x18f1], /* CANADIAN SYLLABICS SAYISI JUU */ + [0x18f2, 0x18f2], /* CANADIAN SYLLABICS CARRIER JWA */ + [0x18f3, 0x18f3], /* CANADIAN SYLLABICS BEAVER DENE L */ + [0x18f4, 0x18f4], /* CANADIAN SYLLABICS BEAVER DENE R */ + [0x18f5, 0x18f5], /* CANADIAN SYLLABICS CARRIER DENTAL S */ + [0x18f6, 0x18f6], + [0x18f7, 0x18f7], + [0x18f8, 0x18f8], + [0x18f9, 0x18f9], + [0x18fa, 0x18fa], + [0x18fb, 0x18fb], + [0x18fc, 0x18fc], + [0x18fd, 0x18fd], + [0x18fe, 0x18fe], + [0x18ff, 0x18ff], + [0x1900, 0x1900], /* LIMBU VOWEL-CARRIER LETTER */ + [0x1901, 0x1901], /* LIMBU LETTER KA */ + [0x1902, 0x1902], /* LIMBU LETTER KHA */ + [0x1903, 0x1903], /* LIMBU LETTER GA */ + [0x1904, 0x1904], /* LIMBU LETTER GHA */ + [0x1905, 0x1905], /* LIMBU LETTER NGA */ + [0x1906, 0x1906], /* LIMBU LETTER CA */ + [0x1907, 0x1907], /* LIMBU LETTER CHA */ + [0x1908, 0x1908], /* LIMBU LETTER JA */ + [0x1909, 0x1909], /* LIMBU LETTER JHA */ + [0x190a, 0x190a], /* LIMBU LETTER YAN */ + [0x190b, 0x190b], /* LIMBU LETTER TA */ + [0x190c, 0x190c], /* LIMBU LETTER THA */ + [0x190d, 0x190d], /* LIMBU LETTER DA */ + [0x190e, 0x190e], /* LIMBU LETTER DHA */ + [0x190f, 0x190f], /* LIMBU LETTER NA */ + [0x1910, 0x1910], /* LIMBU LETTER PA */ + [0x1911, 0x1911], /* LIMBU LETTER PHA */ + [0x1912, 0x1912], /* LIMBU LETTER BA */ + [0x1913, 0x1913], /* LIMBU LETTER BHA */ + [0x1914, 0x1914], /* LIMBU LETTER MA */ + [0x1915, 0x1915], /* LIMBU LETTER YA */ + [0x1916, 0x1916], /* LIMBU LETTER RA */ + [0x1917, 0x1917], /* LIMBU LETTER LA */ + [0x1918, 0x1918], /* LIMBU LETTER WA */ + [0x1919, 0x1919], /* LIMBU LETTER SHA */ + [0x191a, 0x191a], /* LIMBU LETTER SSA */ + [0x191b, 0x191b], /* LIMBU LETTER SA */ + [0x191c, 0x191c], /* LIMBU LETTER HA */ + [0x191d, 0x191d], /* LIMBU LETTER GYAN */ + [0x191e, 0x191e], /* LIMBU LETTER TRA */ + [0x191f, 0x191f], + [0x1920, 0x1920], /* LIMBU VOWEL SIGN A */ + [0x1921, 0x1921], /* LIMBU VOWEL SIGN I */ + [0x1922, 0x1922], /* LIMBU VOWEL SIGN U */ + [0x1923, 0x1923], /* LIMBU VOWEL SIGN EE */ + [0x1924, 0x1924], /* LIMBU VOWEL SIGN AI */ + [0x1925, 0x1925], /* LIMBU VOWEL SIGN OO */ + [0x1926, 0x1926], /* LIMBU VOWEL SIGN AU */ + [0x1927, 0x1927], /* LIMBU VOWEL SIGN E */ + [0x1928, 0x1928], /* LIMBU VOWEL SIGN O */ + [0x1929, 0x1929], /* LIMBU SUBJOINED LETTER YA */ + [0x192a, 0x192a], /* LIMBU SUBJOINED LETTER RA */ + [0x192b, 0x192b], /* LIMBU SUBJOINED LETTER WA */ + [0x192c, 0x192c], + [0x192d, 0x192d], + [0x192e, 0x192e], + [0x192f, 0x192f], + [0x1930, 0x1930], /* LIMBU SMALL LETTER KA */ + [0x1931, 0x1931], /* LIMBU SMALL LETTER NGA */ + [0x1932, 0x1932], /* LIMBU SMALL LETTER ANUSVARA */ + [0x1933, 0x1933], /* LIMBU SMALL LETTER TA */ + [0x1934, 0x1934], /* LIMBU SMALL LETTER NA */ + [0x1935, 0x1935], /* LIMBU SMALL LETTER PA */ + [0x1936, 0x1936], /* LIMBU SMALL LETTER MA */ + [0x1937, 0x1937], /* LIMBU SMALL LETTER RA */ + [0x1938, 0x1938], /* LIMBU SMALL LETTER LA */ + [0x1939, 0x1939], /* LIMBU SIGN MUKPHRENG */ + [0x193a, 0x193a], /* LIMBU SIGN KEMPHRENG */ + [0x193b, 0x193b], /* LIMBU SIGN SA-I */ + [0x193c, 0x193c], + [0x193d, 0x193d], + [0x193e, 0x193e], + [0x193f, 0x193f], + [0x1940, 0x1940], /* LIMBU SIGN LOO */ + [0x1941, 0x1941], + [0x1942, 0x1942], + [0x1943, 0x1943], + [0x1944, 0x1944], /* LIMBU EXCLAMATION MARK */ + [0x1945, 0x1945], /* LIMBU QUESTION MARK */ + [0x1946, 0x1946], /* LIMBU DIGIT ZERO */ + [0x1947, 0x1947], /* LIMBU DIGIT ONE */ + [0x1948, 0x1948], /* LIMBU DIGIT TWO */ + [0x1949, 0x1949], /* LIMBU DIGIT THREE */ + [0x194a, 0x194a], /* LIMBU DIGIT FOUR */ + [0x194b, 0x194b], /* LIMBU DIGIT FIVE */ + [0x194c, 0x194c], /* LIMBU DIGIT SIX */ + [0x194d, 0x194d], /* LIMBU DIGIT SEVEN */ + [0x194e, 0x194e], /* LIMBU DIGIT EIGHT */ + [0x194f, 0x194f], /* LIMBU DIGIT NINE */ + [0x1950, 0x1950], /* TAI LE LETTER KA */ + [0x1951, 0x1951], /* TAI LE LETTER XA */ + [0x1952, 0x1952], /* TAI LE LETTER NGA */ + [0x1953, 0x1953], /* TAI LE LETTER TSA */ + [0x1954, 0x1954], /* TAI LE LETTER SA */ + [0x1955, 0x1955], /* TAI LE LETTER YA */ + [0x1956, 0x1956], /* TAI LE LETTER TA */ + [0x1957, 0x1957], /* TAI LE LETTER THA */ + [0x1958, 0x1958], /* TAI LE LETTER LA */ + [0x1959, 0x1959], /* TAI LE LETTER PA */ + [0x195a, 0x195a], /* TAI LE LETTER PHA */ + [0x195b, 0x195b], /* TAI LE LETTER MA */ + [0x195c, 0x195c], /* TAI LE LETTER FA */ + [0x195d, 0x195d], /* TAI LE LETTER VA */ + [0x195e, 0x195e], /* TAI LE LETTER HA */ + [0x195f, 0x195f], /* TAI LE LETTER QA */ + [0x1960, 0x1960], /* TAI LE LETTER KHA */ + [0x1961, 0x1961], /* TAI LE LETTER TSHA */ + [0x1962, 0x1962], /* TAI LE LETTER NA */ + [0x1963, 0x1963], /* TAI LE LETTER A */ + [0x1964, 0x1964], /* TAI LE LETTER I */ + [0x1965, 0x1965], /* TAI LE LETTER EE */ + [0x1966, 0x1966], /* TAI LE LETTER EH */ + [0x1967, 0x1967], /* TAI LE LETTER U */ + [0x1968, 0x1968], /* TAI LE LETTER OO */ + [0x1969, 0x1969], /* TAI LE LETTER O */ + [0x196a, 0x196a], /* TAI LE LETTER UE */ + [0x196b, 0x196b], /* TAI LE LETTER E */ + [0x196c, 0x196c], /* TAI LE LETTER AUE */ + [0x196d, 0x196d], /* TAI LE LETTER AI */ + [0x196e, 0x196e], + [0x196f, 0x196f], + [0x1970, 0x1970], /* TAI LE LETTER TONE-2 */ + [0x1971, 0x1971], /* TAI LE LETTER TONE-3 */ + [0x1972, 0x1972], /* TAI LE LETTER TONE-4 */ + [0x1973, 0x1973], /* TAI LE LETTER TONE-5 */ + [0x1974, 0x1974], /* TAI LE LETTER TONE-6 */ + [0x1975, 0x1975], + [0x1976, 0x1976], + [0x1977, 0x1977], + [0x1978, 0x1978], + [0x1979, 0x1979], + [0x197a, 0x197a], + [0x197b, 0x197b], + [0x197c, 0x197c], + [0x197d, 0x197d], + [0x197e, 0x197e], + [0x197f, 0x197f], + [0x1980, 0x1980], /* NEW TAI LUE LETTER HIGH QA */ + [0x1981, 0x1981], /* NEW TAI LUE LETTER LOW QA */ + [0x1982, 0x1982], /* NEW TAI LUE LETTER HIGH KA */ + [0x1983, 0x1983], /* NEW TAI LUE LETTER HIGH XA */ + [0x1984, 0x1984], /* NEW TAI LUE LETTER HIGH NGA */ + [0x1985, 0x1985], /* NEW TAI LUE LETTER LOW KA */ + [0x1986, 0x1986], /* NEW TAI LUE LETTER LOW XA */ + [0x1987, 0x1987], /* NEW TAI LUE LETTER LOW NGA */ + [0x1988, 0x1988], /* NEW TAI LUE LETTER HIGH TSA */ + [0x1989, 0x1989], /* NEW TAI LUE LETTER HIGH SA */ + [0x198a, 0x198a], /* NEW TAI LUE LETTER HIGH YA */ + [0x198b, 0x198b], /* NEW TAI LUE LETTER LOW TSA */ + [0x198c, 0x198c], /* NEW TAI LUE LETTER LOW SA */ + [0x198d, 0x198d], /* NEW TAI LUE LETTER LOW YA */ + [0x198e, 0x198e], /* NEW TAI LUE LETTER HIGH TA */ + [0x198f, 0x198f], /* NEW TAI LUE LETTER HIGH THA */ + [0x1990, 0x1990], /* NEW TAI LUE LETTER HIGH NA */ + [0x1991, 0x1991], /* NEW TAI LUE LETTER LOW TA */ + [0x1992, 0x1992], /* NEW TAI LUE LETTER LOW THA */ + [0x1993, 0x1993], /* NEW TAI LUE LETTER LOW NA */ + [0x1994, 0x1994], /* NEW TAI LUE LETTER HIGH PA */ + [0x1995, 0x1995], /* NEW TAI LUE LETTER HIGH PHA */ + [0x1996, 0x1996], /* NEW TAI LUE LETTER HIGH MA */ + [0x1997, 0x1997], /* NEW TAI LUE LETTER LOW PA */ + [0x1998, 0x1998], /* NEW TAI LUE LETTER LOW PHA */ + [0x1999, 0x1999], /* NEW TAI LUE LETTER LOW MA */ + [0x199a, 0x199a], /* NEW TAI LUE LETTER HIGH FA */ + [0x199b, 0x199b], /* NEW TAI LUE LETTER HIGH VA */ + [0x199c, 0x199c], /* NEW TAI LUE LETTER HIGH LA */ + [0x199d, 0x199d], /* NEW TAI LUE LETTER LOW FA */ + [0x199e, 0x199e], /* NEW TAI LUE LETTER LOW VA */ + [0x199f, 0x199f], /* NEW TAI LUE LETTER LOW LA */ + [0x19a0, 0x19a0], /* NEW TAI LUE LETTER HIGH HA */ + [0x19a1, 0x19a1], /* NEW TAI LUE LETTER HIGH DA */ + [0x19a2, 0x19a2], /* NEW TAI LUE LETTER HIGH BA */ + [0x19a3, 0x19a3], /* NEW TAI LUE LETTER LOW HA */ + [0x19a4, 0x19a4], /* NEW TAI LUE LETTER LOW DA */ + [0x19a5, 0x19a5], /* NEW TAI LUE LETTER LOW BA */ + [0x19a6, 0x19a6], /* NEW TAI LUE LETTER HIGH KVA */ + [0x19a7, 0x19a7], /* NEW TAI LUE LETTER HIGH XVA */ + [0x19a8, 0x19a8], /* NEW TAI LUE LETTER LOW KVA */ + [0x19a9, 0x19a9], /* NEW TAI LUE LETTER LOW XVA */ + [0x19aa, 0x19aa], /* NEW TAI LUE LETTER HIGH SUA */ + [0x19ab, 0x19ab], /* NEW TAI LUE LETTER LOW SUA */ + [0x19ac, 0x19ac], + [0x19ad, 0x19ad], + [0x19ae, 0x19ae], + [0x19af, 0x19af], + [0x19b0, 0x19b0], /* NEW TAI LUE VOWEL SIGN VOWEL SHORTENER */ + [0x19b1, 0x19b1], /* NEW TAI LUE VOWEL SIGN AA */ + [0x19b2, 0x19b2], /* NEW TAI LUE VOWEL SIGN II */ + [0x19b3, 0x19b3], /* NEW TAI LUE VOWEL SIGN U */ + [0x19b4, 0x19b4], /* NEW TAI LUE VOWEL SIGN UU */ + [0x19b5, 0x19b5], /* NEW TAI LUE VOWEL SIGN E */ + [0x19b6, 0x19b6], /* NEW TAI LUE VOWEL SIGN AE */ + [0x19b7, 0x19b7], /* NEW TAI LUE VOWEL SIGN O */ + [0x19b8, 0x19b8], /* NEW TAI LUE VOWEL SIGN OA */ + [0x19b9, 0x19b9], /* NEW TAI LUE VOWEL SIGN UE */ + [0x19ba, 0x19ba], /* NEW TAI LUE VOWEL SIGN AY */ + [0x19bb, 0x19bb], /* NEW TAI LUE VOWEL SIGN AAY */ + [0x19bc, 0x19bc], /* NEW TAI LUE VOWEL SIGN UY */ + [0x19bd, 0x19bd], /* NEW TAI LUE VOWEL SIGN OY */ + [0x19be, 0x19be], /* NEW TAI LUE VOWEL SIGN OAY */ + [0x19bf, 0x19bf], /* NEW TAI LUE VOWEL SIGN UEY */ + [0x19c0, 0x19c0], /* NEW TAI LUE VOWEL SIGN IY */ + [0x19c1, 0x19c1], /* NEW TAI LUE LETTER FINAL V */ + [0x19c2, 0x19c2], /* NEW TAI LUE LETTER FINAL NG */ + [0x19c3, 0x19c3], /* NEW TAI LUE LETTER FINAL N */ + [0x19c4, 0x19c4], /* NEW TAI LUE LETTER FINAL M */ + [0x19c5, 0x19c5], /* NEW TAI LUE LETTER FINAL K */ + [0x19c6, 0x19c6], /* NEW TAI LUE LETTER FINAL D */ + [0x19c7, 0x19c7], /* NEW TAI LUE LETTER FINAL B */ + [0x19c8, 0x19c8], /* NEW TAI LUE TONE MARK-1 */ + [0x19c9, 0x19c9], /* NEW TAI LUE TONE MARK-2 */ + [0x19ca, 0x19ca], + [0x19cb, 0x19cb], + [0x19cc, 0x19cc], + [0x19cd, 0x19cd], + [0x19ce, 0x19ce], + [0x19cf, 0x19cf], + [0x19d0, 0x19d0], /* NEW TAI LUE DIGIT ZERO */ + [0x19d1, 0x19d1], /* NEW TAI LUE DIGIT ONE */ + [0x19d2, 0x19d2], /* NEW TAI LUE DIGIT TWO */ + [0x19d3, 0x19d3], /* NEW TAI LUE DIGIT THREE */ + [0x19d4, 0x19d4], /* NEW TAI LUE DIGIT FOUR */ + [0x19d5, 0x19d5], /* NEW TAI LUE DIGIT FIVE */ + [0x19d6, 0x19d6], /* NEW TAI LUE DIGIT SIX */ + [0x19d7, 0x19d7], /* NEW TAI LUE DIGIT SEVEN */ + [0x19d8, 0x19d8], /* NEW TAI LUE DIGIT EIGHT */ + [0x19d9, 0x19d9], /* NEW TAI LUE DIGIT NINE */ + [0x19da, 0x19da], /* NEW TAI LUE THAM DIGIT ONE */ + [0x19db, 0x19db], + [0x19dc, 0x19dc], + [0x19dd, 0x19dd], + [0x19de, 0x19de], /* NEW TAI LUE SIGN LAE */ + [0x19df, 0x19df], /* NEW TAI LUE SIGN LAEV */ + [0x19e0, 0x19e0], /* KHMER SYMBOL PATHAMASAT */ + [0x19e1, 0x19e1], /* KHMER SYMBOL MUOY KOET */ + [0x19e2, 0x19e2], /* KHMER SYMBOL PII KOET */ + [0x19e3, 0x19e3], /* KHMER SYMBOL BEI KOET */ + [0x19e4, 0x19e4], /* KHMER SYMBOL BUON KOET */ + [0x19e5, 0x19e5], /* KHMER SYMBOL PRAM KOET */ + [0x19e6, 0x19e6], /* KHMER SYMBOL PRAM-MUOY KOET */ + [0x19e7, 0x19e7], /* KHMER SYMBOL PRAM-PII KOET */ + [0x19e8, 0x19e8], /* KHMER SYMBOL PRAM-BEI KOET */ + [0x19e9, 0x19e9], /* KHMER SYMBOL PRAM-BUON KOET */ + [0x19ea, 0x19ea], /* KHMER SYMBOL DAP KOET */ + [0x19eb, 0x19eb], /* KHMER SYMBOL DAP-MUOY KOET */ + [0x19ec, 0x19ec], /* KHMER SYMBOL DAP-PII KOET */ + [0x19ed, 0x19ed], /* KHMER SYMBOL DAP-BEI KOET */ + [0x19ee, 0x19ee], /* KHMER SYMBOL DAP-BUON KOET */ + [0x19ef, 0x19ef], /* KHMER SYMBOL DAP-PRAM KOET */ + [0x19f0, 0x19f0], /* KHMER SYMBOL TUTEYASAT */ + [0x19f1, 0x19f1], /* KHMER SYMBOL MUOY ROC */ + [0x19f2, 0x19f2], /* KHMER SYMBOL PII ROC */ + [0x19f3, 0x19f3], /* KHMER SYMBOL BEI ROC */ + [0x19f4, 0x19f4], /* KHMER SYMBOL BUON ROC */ + [0x19f5, 0x19f5], /* KHMER SYMBOL PRAM ROC */ + [0x19f6, 0x19f6], /* KHMER SYMBOL PRAM-MUOY ROC */ + [0x19f7, 0x19f7], /* KHMER SYMBOL PRAM-PII ROC */ + [0x19f8, 0x19f8], /* KHMER SYMBOL PRAM-BEI ROC */ + [0x19f9, 0x19f9], /* KHMER SYMBOL PRAM-BUON ROC */ + [0x19fa, 0x19fa], /* KHMER SYMBOL DAP ROC */ + [0x19fb, 0x19fb], /* KHMER SYMBOL DAP-MUOY ROC */ + [0x19fc, 0x19fc], /* KHMER SYMBOL DAP-PII ROC */ + [0x19fd, 0x19fd], /* KHMER SYMBOL DAP-BEI ROC */ + [0x19fe, 0x19fe], /* KHMER SYMBOL DAP-BUON ROC */ + [0x19ff, 0x19ff], /* KHMER SYMBOL DAP-PRAM ROC */ + [0x1a00, 0x1a00], /* BUGINESE LETTER KA */ + [0x1a01, 0x1a01], /* BUGINESE LETTER GA */ + [0x1a02, 0x1a02], /* BUGINESE LETTER NGA */ + [0x1a03, 0x1a03], /* BUGINESE LETTER NGKA */ + [0x1a04, 0x1a04], /* BUGINESE LETTER PA */ + [0x1a05, 0x1a05], /* BUGINESE LETTER BA */ + [0x1a06, 0x1a06], /* BUGINESE LETTER MA */ + [0x1a07, 0x1a07], /* BUGINESE LETTER MPA */ + [0x1a08, 0x1a08], /* BUGINESE LETTER TA */ + [0x1a09, 0x1a09], /* BUGINESE LETTER DA */ + [0x1a0a, 0x1a0a], /* BUGINESE LETTER NA */ + [0x1a0b, 0x1a0b], /* BUGINESE LETTER NRA */ + [0x1a0c, 0x1a0c], /* BUGINESE LETTER CA */ + [0x1a0d, 0x1a0d], /* BUGINESE LETTER JA */ + [0x1a0e, 0x1a0e], /* BUGINESE LETTER NYA */ + [0x1a0f, 0x1a0f], /* BUGINESE LETTER NYCA */ + [0x1a10, 0x1a10], /* BUGINESE LETTER YA */ + [0x1a11, 0x1a11], /* BUGINESE LETTER RA */ + [0x1a12, 0x1a12], /* BUGINESE LETTER LA */ + [0x1a13, 0x1a13], /* BUGINESE LETTER VA */ + [0x1a14, 0x1a14], /* BUGINESE LETTER SA */ + [0x1a15, 0x1a15], /* BUGINESE LETTER A */ + [0x1a16, 0x1a16], /* BUGINESE LETTER HA */ + [0x1a17, 0x1a17], /* BUGINESE VOWEL SIGN I */ + [0x1a18, 0x1a18], /* BUGINESE VOWEL SIGN U */ + [0x1a19, 0x1a19], /* BUGINESE VOWEL SIGN E */ + [0x1a1a, 0x1a1a], /* BUGINESE VOWEL SIGN O */ + [0x1a1b, 0x1a1b], /* BUGINESE VOWEL SIGN AE */ + [0x1a1c, 0x1a1c], + [0x1a1d, 0x1a1d], + [0x1a1e, 0x1a1e], /* BUGINESE PALLAWA */ + [0x1a1f, 0x1a1f], /* BUGINESE END OF SECTION */ + [0x1a20, 0x1a20], /* TAI THAM LETTER HIGH KA */ + [0x1a21, 0x1a21], /* TAI THAM LETTER HIGH KHA */ + [0x1a22, 0x1a22], /* TAI THAM LETTER HIGH KXA */ + [0x1a23, 0x1a23], /* TAI THAM LETTER LOW KA */ + [0x1a24, 0x1a24], /* TAI THAM LETTER LOW KXA */ + [0x1a25, 0x1a25], /* TAI THAM LETTER LOW KHA */ + [0x1a26, 0x1a26], /* TAI THAM LETTER NGA */ + [0x1a27, 0x1a27], /* TAI THAM LETTER HIGH CA */ + [0x1a28, 0x1a28], /* TAI THAM LETTER HIGH CHA */ + [0x1a29, 0x1a29], /* TAI THAM LETTER LOW CA */ + [0x1a2a, 0x1a2a], /* TAI THAM LETTER LOW SA */ + [0x1a2b, 0x1a2b], /* TAI THAM LETTER LOW CHA */ + [0x1a2c, 0x1a2c], /* TAI THAM LETTER NYA */ + [0x1a2d, 0x1a2d], /* TAI THAM LETTER RATA */ + [0x1a2e, 0x1a2e], /* TAI THAM LETTER HIGH RATHA */ + [0x1a2f, 0x1a2f], /* TAI THAM LETTER DA */ + [0x1a30, 0x1a30], /* TAI THAM LETTER LOW RATHA */ + [0x1a31, 0x1a31], /* TAI THAM LETTER RANA */ + [0x1a32, 0x1a32], /* TAI THAM LETTER HIGH TA */ + [0x1a33, 0x1a33], /* TAI THAM LETTER HIGH THA */ + [0x1a34, 0x1a34], /* TAI THAM LETTER LOW TA */ + [0x1a35, 0x1a35], /* TAI THAM LETTER LOW THA */ + [0x1a36, 0x1a36], /* TAI THAM LETTER NA */ + [0x1a37, 0x1a37], /* TAI THAM LETTER BA */ + [0x1a38, 0x1a38], /* TAI THAM LETTER HIGH PA */ + [0x1a39, 0x1a39], /* TAI THAM LETTER HIGH PHA */ + [0x1a3a, 0x1a3a], /* TAI THAM LETTER HIGH FA */ + [0x1a3b, 0x1a3b], /* TAI THAM LETTER LOW PA */ + [0x1a3c, 0x1a3c], /* TAI THAM LETTER LOW FA */ + [0x1a3d, 0x1a3d], /* TAI THAM LETTER LOW PHA */ + [0x1a3e, 0x1a3e], /* TAI THAM LETTER MA */ + [0x1a3f, 0x1a3f], /* TAI THAM LETTER LOW YA */ + [0x1a40, 0x1a40], /* TAI THAM LETTER HIGH YA */ + [0x1a41, 0x1a41], /* TAI THAM LETTER RA */ + [0x1a42, 0x1a42], /* TAI THAM LETTER RUE */ + [0x1a43, 0x1a43], /* TAI THAM LETTER LA */ + [0x1a44, 0x1a44], /* TAI THAM LETTER LUE */ + [0x1a45, 0x1a45], /* TAI THAM LETTER WA */ + [0x1a46, 0x1a46], /* TAI THAM LETTER HIGH SHA */ + [0x1a47, 0x1a47], /* TAI THAM LETTER HIGH SSA */ + [0x1a48, 0x1a48], /* TAI THAM LETTER HIGH SA */ + [0x1a49, 0x1a49], /* TAI THAM LETTER HIGH HA */ + [0x1a4a, 0x1a4a], /* TAI THAM LETTER LLA */ + [0x1a4b, 0x1a4b], /* TAI THAM LETTER A */ + [0x1a4c, 0x1a4c], /* TAI THAM LETTER LOW HA */ + [0x1a4d, 0x1a4d], /* TAI THAM LETTER I */ + [0x1a4e, 0x1a4e], /* TAI THAM LETTER II */ + [0x1a4f, 0x1a4f], /* TAI THAM LETTER U */ + [0x1a50, 0x1a50], /* TAI THAM LETTER UU */ + [0x1a51, 0x1a51], /* TAI THAM LETTER EE */ + [0x1a52, 0x1a52], /* TAI THAM LETTER OO */ + [0x1a53, 0x1a53], /* TAI THAM LETTER LAE */ + [0x1a54, 0x1a54], /* TAI THAM LETTER GREAT SA */ + [0x1a55, 0x1a55], /* TAI THAM CONSONANT SIGN MEDIAL RA */ + [0x1a56, 0x1a56], /* TAI THAM CONSONANT SIGN MEDIAL LA */ + [0x1a57, 0x1a57], /* TAI THAM CONSONANT SIGN LA TANG LAI */ + [0x1a58, 0x1a58], /* TAI THAM SIGN MAI KANG LAI */ + [0x1a59, 0x1a59], /* TAI THAM CONSONANT SIGN FINAL NGA */ + [0x1a5a, 0x1a5a], /* TAI THAM CONSONANT SIGN LOW PA */ + [0x1a5b, 0x1a5b], /* TAI THAM CONSONANT SIGN HIGH RATHA OR LOW PA */ + [0x1a5c, 0x1a5c], /* TAI THAM CONSONANT SIGN MA */ + [0x1a5d, 0x1a5d], /* TAI THAM CONSONANT SIGN BA */ + [0x1a5e, 0x1a5e], /* TAI THAM CONSONANT SIGN SA */ + [0x1a5f, 0x1a5f], + [0x1a60, 0x1a60], /* TAI THAM SIGN SAKOT */ + [0x1a61, 0x1a61], /* TAI THAM VOWEL SIGN A */ + [0x1a62, 0x1a62], /* TAI THAM VOWEL SIGN MAI SAT */ + [0x1a63, 0x1a63], /* TAI THAM VOWEL SIGN AA */ + [0x1a64, 0x1a64], /* TAI THAM VOWEL SIGN TALL AA */ + [0x1a65, 0x1a65], /* TAI THAM VOWEL SIGN I */ + [0x1a66, 0x1a66], /* TAI THAM VOWEL SIGN II */ + [0x1a67, 0x1a67], /* TAI THAM VOWEL SIGN UE */ + [0x1a68, 0x1a68], /* TAI THAM VOWEL SIGN UUE */ + [0x1a69, 0x1a69], /* TAI THAM VOWEL SIGN U */ + [0x1a6a, 0x1a6a], /* TAI THAM VOWEL SIGN UU */ + [0x1a6b, 0x1a6b], /* TAI THAM VOWEL SIGN O */ + [0x1a6c, 0x1a6c], /* TAI THAM VOWEL SIGN OA BELOW */ + [0x1a6d, 0x1a6d], /* TAI THAM VOWEL SIGN OY */ + [0x1a6e, 0x1a6e], /* TAI THAM VOWEL SIGN E */ + [0x1a6f, 0x1a6f], /* TAI THAM VOWEL SIGN AE */ + [0x1a70, 0x1a70], /* TAI THAM VOWEL SIGN OO */ + [0x1a71, 0x1a71], /* TAI THAM VOWEL SIGN AI */ + [0x1a72, 0x1a72], /* TAI THAM VOWEL SIGN THAM AI */ + [0x1a73, 0x1a73], /* TAI THAM VOWEL SIGN OA ABOVE */ + [0x1a74, 0x1a74], /* TAI THAM SIGN MAI KANG */ + [0x1a75, 0x1a75], /* TAI THAM SIGN TONE-1 */ + [0x1a76, 0x1a76], /* TAI THAM SIGN TONE-2 */ + [0x1a77, 0x1a77], /* TAI THAM SIGN KHUEN TONE-3 */ + [0x1a78, 0x1a78], /* TAI THAM SIGN KHUEN TONE-4 */ + [0x1a79, 0x1a79], /* TAI THAM SIGN KHUEN TONE-5 */ + [0x1a7a, 0x1a7a], /* TAI THAM SIGN RA HAAM */ + [0x1a7b, 0x1a7b], /* TAI THAM SIGN MAI SAM */ + [0x1a7c, 0x1a7c], /* TAI THAM SIGN KHUEN-LUE KARAN */ + [0x1a7d, 0x1a7d], + [0x1a7e, 0x1a7e], + [0x1a7f, 0x1a7f], /* TAI THAM COMBINING CRYPTOGRAMMIC DOT */ + [0x1a80, 0x1a80], /* TAI THAM HORA DIGIT ZERO */ + [0x1a81, 0x1a81], /* TAI THAM HORA DIGIT ONE */ + [0x1a82, 0x1a82], /* TAI THAM HORA DIGIT TWO */ + [0x1a83, 0x1a83], /* TAI THAM HORA DIGIT THREE */ + [0x1a84, 0x1a84], /* TAI THAM HORA DIGIT FOUR */ + [0x1a85, 0x1a85], /* TAI THAM HORA DIGIT FIVE */ + [0x1a86, 0x1a86], /* TAI THAM HORA DIGIT SIX */ + [0x1a87, 0x1a87], /* TAI THAM HORA DIGIT SEVEN */ + [0x1a88, 0x1a88], /* TAI THAM HORA DIGIT EIGHT */ + [0x1a89, 0x1a89], /* TAI THAM HORA DIGIT NINE */ + [0x1a8a, 0x1a8a], + [0x1a8b, 0x1a8b], + [0x1a8c, 0x1a8c], + [0x1a8d, 0x1a8d], + [0x1a8e, 0x1a8e], + [0x1a8f, 0x1a8f], + [0x1a90, 0x1a90], /* TAI THAM THAM DIGIT ZERO */ + [0x1a91, 0x1a91], /* TAI THAM THAM DIGIT ONE */ + [0x1a92, 0x1a92], /* TAI THAM THAM DIGIT TWO */ + [0x1a93, 0x1a93], /* TAI THAM THAM DIGIT THREE */ + [0x1a94, 0x1a94], /* TAI THAM THAM DIGIT FOUR */ + [0x1a95, 0x1a95], /* TAI THAM THAM DIGIT FIVE */ + [0x1a96, 0x1a96], /* TAI THAM THAM DIGIT SIX */ + [0x1a97, 0x1a97], /* TAI THAM THAM DIGIT SEVEN */ + [0x1a98, 0x1a98], /* TAI THAM THAM DIGIT EIGHT */ + [0x1a99, 0x1a99], /* TAI THAM THAM DIGIT NINE */ + [0x1a9a, 0x1a9a], + [0x1a9b, 0x1a9b], + [0x1a9c, 0x1a9c], + [0x1a9d, 0x1a9d], + [0x1a9e, 0x1a9e], + [0x1a9f, 0x1a9f], + [0x1aa0, 0x1aa0], /* TAI THAM SIGN WIANG */ + [0x1aa1, 0x1aa1], /* TAI THAM SIGN WIANGWAAK */ + [0x1aa2, 0x1aa2], /* TAI THAM SIGN SAWAN */ + [0x1aa3, 0x1aa3], /* TAI THAM SIGN KEOW */ + [0x1aa4, 0x1aa4], /* TAI THAM SIGN HOY */ + [0x1aa5, 0x1aa5], /* TAI THAM SIGN DOKMAI */ + [0x1aa6, 0x1aa6], /* TAI THAM SIGN REVERSED ROTATED RANA */ + [0x1aa7, 0x1aa7], /* TAI THAM SIGN MAI YAMOK */ + [0x1aa8, 0x1aa8], /* TAI THAM SIGN KAAN */ + [0x1aa9, 0x1aa9], /* TAI THAM SIGN KAANKUU */ + [0x1aaa, 0x1aaa], /* TAI THAM SIGN SATKAAN */ + [0x1aab, 0x1aab], /* TAI THAM SIGN SATKAANKUU */ + [0x1aac, 0x1aac], /* TAI THAM SIGN HANG */ + [0x1aad, 0x1aad], /* TAI THAM SIGN CAANG */ + [0x1aae, 0x1aae], + [0x1aaf, 0x1aaf], + [0x1ab0, 0x1ab0], /* COMBINING DOUBLED CIRCUMFLEX ACCENT */ + [0x1ab1, 0x1ab1], /* COMBINING DIAERESIS-RING */ + [0x1ab2, 0x1ab2], /* COMBINING INFINITY */ + [0x1ab3, 0x1ab3], /* COMBINING DOWNWARDS ARROW */ + [0x1ab4, 0x1ab4], /* COMBINING TRIPLE DOT */ + [0x1ab5, 0x1ab5], /* COMBINING X-X BELOW */ + [0x1ab6, 0x1ab6], /* COMBINING WIGGLY LINE BELOW */ + [0x1ab7, 0x1ab7], /* COMBINING OPEN MARK BELOW */ + [0x1ab8, 0x1ab8], /* COMBINING DOUBLE OPEN MARK BELOW */ + [0x1ab9, 0x1ab9], /* COMBINING LIGHT CENTRALIZATION STROKE BELOW */ + [0x1aba, 0x1aba], /* COMBINING STRONG CENTRALIZATION STROKE BELOW */ + [0x1abb, 0x1abb], /* COMBINING PARENTHESES ABOVE */ + [0x1abc, 0x1abc], /* COMBINING DOUBLE PARENTHESES ABOVE */ + [0x1abd, 0x1abd], /* COMBINING PARENTHESES BELOW */ + [0x1abe, 0x1abe], /* COMBINING PARENTHESES OVERLAY */ + [0x1abf, 0x1abf], + [0x1ac0, 0x1ac0], + [0x1ac1, 0x1ac1], + [0x1ac2, 0x1ac2], + [0x1ac3, 0x1ac3], + [0x1ac4, 0x1ac4], + [0x1ac5, 0x1ac5], + [0x1ac6, 0x1ac6], + [0x1ac7, 0x1ac7], + [0x1ac8, 0x1ac8], + [0x1ac9, 0x1ac9], + [0x1aca, 0x1aca], + [0x1acb, 0x1acb], + [0x1acc, 0x1acc], + [0x1acd, 0x1acd], + [0x1ace, 0x1ace], + [0x1acf, 0x1acf], + [0x1ad0, 0x1ad0], + [0x1ad1, 0x1ad1], + [0x1ad2, 0x1ad2], + [0x1ad3, 0x1ad3], + [0x1ad4, 0x1ad4], + [0x1ad5, 0x1ad5], + [0x1ad6, 0x1ad6], + [0x1ad7, 0x1ad7], + [0x1ad8, 0x1ad8], + [0x1ad9, 0x1ad9], + [0x1ada, 0x1ada], + [0x1adb, 0x1adb], + [0x1adc, 0x1adc], + [0x1add, 0x1add], + [0x1ade, 0x1ade], + [0x1adf, 0x1adf], + [0x1ae0, 0x1ae0], + [0x1ae1, 0x1ae1], + [0x1ae2, 0x1ae2], + [0x1ae3, 0x1ae3], + [0x1ae4, 0x1ae4], + [0x1ae5, 0x1ae5], + [0x1ae6, 0x1ae6], + [0x1ae7, 0x1ae7], + [0x1ae8, 0x1ae8], + [0x1ae9, 0x1ae9], + [0x1aea, 0x1aea], + [0x1aeb, 0x1aeb], + [0x1aec, 0x1aec], + [0x1aed, 0x1aed], + [0x1aee, 0x1aee], + [0x1aef, 0x1aef], + [0x1af0, 0x1af0], + [0x1af1, 0x1af1], + [0x1af2, 0x1af2], + [0x1af3, 0x1af3], + [0x1af4, 0x1af4], + [0x1af5, 0x1af5], + [0x1af6, 0x1af6], + [0x1af7, 0x1af7], + [0x1af8, 0x1af8], + [0x1af9, 0x1af9], + [0x1afa, 0x1afa], + [0x1afb, 0x1afb], + [0x1afc, 0x1afc], + [0x1afd, 0x1afd], + [0x1afe, 0x1afe], + [0x1aff, 0x1aff], + [0x1b00, 0x1b00], /* BALINESE SIGN ULU RICEM */ + [0x1b01, 0x1b01], /* BALINESE SIGN ULU CANDRA */ + [0x1b02, 0x1b02], /* BALINESE SIGN CECEK */ + [0x1b03, 0x1b03], /* BALINESE SIGN SURANG */ + [0x1b04, 0x1b04], /* BALINESE SIGN BISAH */ + [0x1b05, 0x1b05], /* BALINESE LETTER AKARA */ + [0x1b06, 0x1b06], /* BALINESE LETTER AKARA TEDUNG */ + [0x1b07, 0x1b07], /* BALINESE LETTER IKARA */ + [0x1b08, 0x1b08], /* BALINESE LETTER IKARA TEDUNG */ + [0x1b09, 0x1b09], /* BALINESE LETTER UKARA */ + [0x1b0a, 0x1b0a], /* BALINESE LETTER UKARA TEDUNG */ + [0x1b0b, 0x1b0b], /* BALINESE LETTER RA REPA */ + [0x1b0c, 0x1b0c], /* BALINESE LETTER RA REPA TEDUNG */ + [0x1b0d, 0x1b0d], /* BALINESE LETTER LA LENGA */ + [0x1b0e, 0x1b0e], /* BALINESE LETTER LA LENGA TEDUNG */ + [0x1b0f, 0x1b0f], /* BALINESE LETTER EKARA */ + [0x1b10, 0x1b10], /* BALINESE LETTER AIKARA */ + [0x1b11, 0x1b11], /* BALINESE LETTER OKARA */ + [0x1b12, 0x1b12], /* BALINESE LETTER OKARA TEDUNG */ + [0x1b13, 0x1b13], /* BALINESE LETTER KA */ + [0x1b14, 0x1b14], /* BALINESE LETTER KA MAHAPRANA */ + [0x1b15, 0x1b15], /* BALINESE LETTER GA */ + [0x1b16, 0x1b16], /* BALINESE LETTER GA GORA */ + [0x1b17, 0x1b17], /* BALINESE LETTER NGA */ + [0x1b18, 0x1b18], /* BALINESE LETTER CA */ + [0x1b19, 0x1b19], /* BALINESE LETTER CA LACA */ + [0x1b1a, 0x1b1a], /* BALINESE LETTER JA */ + [0x1b1b, 0x1b1b], /* BALINESE LETTER JA JERA */ + [0x1b1c, 0x1b1c], /* BALINESE LETTER NYA */ + [0x1b1d, 0x1b1d], /* BALINESE LETTER TA LATIK */ + [0x1b1e, 0x1b1e], /* BALINESE LETTER TA MURDA MAHAPRANA */ + [0x1b1f, 0x1b1f], /* BALINESE LETTER DA MURDA ALPAPRANA */ + [0x1b20, 0x1b20], /* BALINESE LETTER DA MURDA MAHAPRANA */ + [0x1b21, 0x1b21], /* BALINESE LETTER NA RAMBAT */ + [0x1b22, 0x1b22], /* BALINESE LETTER TA */ + [0x1b23, 0x1b23], /* BALINESE LETTER TA TAWA */ + [0x1b24, 0x1b24], /* BALINESE LETTER DA */ + [0x1b25, 0x1b25], /* BALINESE LETTER DA MADU */ + [0x1b26, 0x1b26], /* BALINESE LETTER NA */ + [0x1b27, 0x1b27], /* BALINESE LETTER PA */ + [0x1b28, 0x1b28], /* BALINESE LETTER PA KAPAL */ + [0x1b29, 0x1b29], /* BALINESE LETTER BA */ + [0x1b2a, 0x1b2a], /* BALINESE LETTER BA KEMBANG */ + [0x1b2b, 0x1b2b], /* BALINESE LETTER MA */ + [0x1b2c, 0x1b2c], /* BALINESE LETTER YA */ + [0x1b2d, 0x1b2d], /* BALINESE LETTER RA */ + [0x1b2e, 0x1b2e], /* BALINESE LETTER LA */ + [0x1b2f, 0x1b2f], /* BALINESE LETTER WA */ + [0x1b30, 0x1b30], /* BALINESE LETTER SA SAGA */ + [0x1b31, 0x1b31], /* BALINESE LETTER SA SAPA */ + [0x1b32, 0x1b32], /* BALINESE LETTER SA */ + [0x1b33, 0x1b33], /* BALINESE LETTER HA */ + [0x1b34, 0x1b34], /* BALINESE SIGN REREKAN */ + [0x1b35, 0x1b35], /* BALINESE VOWEL SIGN TEDUNG */ + [0x1b36, 0x1b36], /* BALINESE VOWEL SIGN ULU */ + [0x1b37, 0x1b37], /* BALINESE VOWEL SIGN ULU SARI */ + [0x1b38, 0x1b38], /* BALINESE VOWEL SIGN SUKU */ + [0x1b39, 0x1b39], /* BALINESE VOWEL SIGN SUKU ILUT */ + [0x1b3a, 0x1b3a], /* BALINESE VOWEL SIGN RA REPA */ + [0x1b3b, 0x1b3b], /* BALINESE VOWEL SIGN RA REPA TEDUNG */ + [0x1b3c, 0x1b3c], /* BALINESE VOWEL SIGN LA LENGA */ + [0x1b3d, 0x1b3d], /* BALINESE VOWEL SIGN LA LENGA TEDUNG */ + [0x1b3e, 0x1b3e], /* BALINESE VOWEL SIGN TALING */ + [0x1b3f, 0x1b3f], /* BALINESE VOWEL SIGN TALING REPA */ + [0x1b40, 0x1b40], /* BALINESE VOWEL SIGN TALING TEDUNG */ + [0x1b41, 0x1b41], /* BALINESE VOWEL SIGN TALING REPA TEDUNG */ + [0x1b42, 0x1b42], /* BALINESE VOWEL SIGN PEPET */ + [0x1b43, 0x1b43], /* BALINESE VOWEL SIGN PEPET TEDUNG */ + [0x1b44, 0x1b44], /* BALINESE ADEG ADEG */ + [0x1b45, 0x1b45], /* BALINESE LETTER KAF SASAK */ + [0x1b46, 0x1b46], /* BALINESE LETTER KHOT SASAK */ + [0x1b47, 0x1b47], /* BALINESE LETTER TZIR SASAK */ + [0x1b48, 0x1b48], /* BALINESE LETTER EF SASAK */ + [0x1b49, 0x1b49], /* BALINESE LETTER VE SASAK */ + [0x1b4a, 0x1b4a], /* BALINESE LETTER ZAL SASAK */ + [0x1b4b, 0x1b4b], /* BALINESE LETTER ASYURA SASAK */ + [0x1b4c, 0x1b4c], + [0x1b4d, 0x1b4d], + [0x1b4e, 0x1b4e], + [0x1b4f, 0x1b4f], + [0x1b50, 0x1b50], /* BALINESE DIGIT ZERO */ + [0x1b51, 0x1b51], /* BALINESE DIGIT ONE */ + [0x1b52, 0x1b52], /* BALINESE DIGIT TWO */ + [0x1b53, 0x1b53], /* BALINESE DIGIT THREE */ + [0x1b54, 0x1b54], /* BALINESE DIGIT FOUR */ + [0x1b55, 0x1b55], /* BALINESE DIGIT FIVE */ + [0x1b56, 0x1b56], /* BALINESE DIGIT SIX */ + [0x1b57, 0x1b57], /* BALINESE DIGIT SEVEN */ + [0x1b58, 0x1b58], /* BALINESE DIGIT EIGHT */ + [0x1b59, 0x1b59], /* BALINESE DIGIT NINE */ + [0x1b5a, 0x1b5a], /* BALINESE PANTI */ + [0x1b5b, 0x1b5b], /* BALINESE PAMADA */ + [0x1b5c, 0x1b5c], /* BALINESE WINDU */ + [0x1b5d, 0x1b5d], /* BALINESE CARIK PAMUNGKAH */ + [0x1b5e, 0x1b5e], /* BALINESE CARIK SIKI */ + [0x1b5f, 0x1b5f], /* BALINESE CARIK PAREREN */ + [0x1b60, 0x1b60], /* BALINESE PAMENENG */ + [0x1b61, 0x1b61], /* BALINESE MUSICAL SYMBOL DONG */ + [0x1b62, 0x1b62], /* BALINESE MUSICAL SYMBOL DENG */ + [0x1b63, 0x1b63], /* BALINESE MUSICAL SYMBOL DUNG */ + [0x1b64, 0x1b64], /* BALINESE MUSICAL SYMBOL DANG */ + [0x1b65, 0x1b65], /* BALINESE MUSICAL SYMBOL DANG SURANG */ + [0x1b66, 0x1b66], /* BALINESE MUSICAL SYMBOL DING */ + [0x1b67, 0x1b67], /* BALINESE MUSICAL SYMBOL DAENG */ + [0x1b68, 0x1b68], /* BALINESE MUSICAL SYMBOL DEUNG */ + [0x1b69, 0x1b69], /* BALINESE MUSICAL SYMBOL DAING */ + [0x1b6a, 0x1b6a], /* BALINESE MUSICAL SYMBOL DANG GEDE */ + [0x1b6b, 0x1b6b], /* BALINESE MUSICAL SYMBOL COMBINING TEGEH */ + [0x1b6c, 0x1b6c], /* BALINESE MUSICAL SYMBOL COMBINING ENDEP */ + [0x1b6d, 0x1b6d], /* BALINESE MUSICAL SYMBOL COMBINING KEMPUL */ + [0x1b6e, 0x1b6e], /* BALINESE MUSICAL SYMBOL COMBINING KEMPLI */ + [0x1b6f, 0x1b6f], /* BALINESE MUSICAL SYMBOL COMBINING JEGOGAN */ + [0x1b70, 0x1b70], /* BALINESE MUSICAL SYMBOL COMBINING KEMPUL WITH JEGOGAN */ + [0x1b71, 0x1b71], /* BALINESE MUSICAL SYMBOL COMBINING KEMPLI WITH JEGOGAN */ + [0x1b72, 0x1b72], /* BALINESE MUSICAL SYMBOL COMBINING BENDE */ + [0x1b73, 0x1b73], /* BALINESE MUSICAL SYMBOL COMBINING GONG */ + [0x1b74, 0x1b74], /* BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG */ + [0x1b75, 0x1b75], /* BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DAG */ + [0x1b76, 0x1b76], /* BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TUK */ + [0x1b77, 0x1b77], /* BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TAK */ + [0x1b78, 0x1b78], /* BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PANG */ + [0x1b79, 0x1b79], /* BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PUNG */ + [0x1b7a, 0x1b7a], /* BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLAK */ + [0x1b7b, 0x1b7b], /* BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLUK */ + [0x1b7c, 0x1b7c], /* BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING */ + [0x1b7d, 0x1b7d], + [0x1b7e, 0x1b7e], + [0x1b7f, 0x1b7f], + [0x1b80, 0x1b80], /* SUNDANESE SIGN PANYECEK */ + [0x1b81, 0x1b81], /* SUNDANESE SIGN PANGLAYAR */ + [0x1b82, 0x1b82], /* SUNDANESE SIGN PANGWISAD */ + [0x1b83, 0x1b83], /* SUNDANESE LETTER A */ + [0x1b84, 0x1b84], /* SUNDANESE LETTER I */ + [0x1b85, 0x1b85], /* SUNDANESE LETTER U */ + [0x1b86, 0x1b86], /* SUNDANESE LETTER AE */ + [0x1b87, 0x1b87], /* SUNDANESE LETTER O */ + [0x1b88, 0x1b88], /* SUNDANESE LETTER E */ + [0x1b89, 0x1b89], /* SUNDANESE LETTER EU */ + [0x1b8a, 0x1b8a], /* SUNDANESE LETTER KA */ + [0x1b8b, 0x1b8b], /* SUNDANESE LETTER QA */ + [0x1b8c, 0x1b8c], /* SUNDANESE LETTER GA */ + [0x1b8d, 0x1b8d], /* SUNDANESE LETTER NGA */ + [0x1b8e, 0x1b8e], /* SUNDANESE LETTER CA */ + [0x1b8f, 0x1b8f], /* SUNDANESE LETTER JA */ + [0x1b90, 0x1b90], /* SUNDANESE LETTER ZA */ + [0x1b91, 0x1b91], /* SUNDANESE LETTER NYA */ + [0x1b92, 0x1b92], /* SUNDANESE LETTER TA */ + [0x1b93, 0x1b93], /* SUNDANESE LETTER DA */ + [0x1b94, 0x1b94], /* SUNDANESE LETTER NA */ + [0x1b95, 0x1b95], /* SUNDANESE LETTER PA */ + [0x1b96, 0x1b96], /* SUNDANESE LETTER FA */ + [0x1b97, 0x1b97], /* SUNDANESE LETTER VA */ + [0x1b98, 0x1b98], /* SUNDANESE LETTER BA */ + [0x1b99, 0x1b99], /* SUNDANESE LETTER MA */ + [0x1b9a, 0x1b9a], /* SUNDANESE LETTER YA */ + [0x1b9b, 0x1b9b], /* SUNDANESE LETTER RA */ + [0x1b9c, 0x1b9c], /* SUNDANESE LETTER LA */ + [0x1b9d, 0x1b9d], /* SUNDANESE LETTER WA */ + [0x1b9e, 0x1b9e], /* SUNDANESE LETTER SA */ + [0x1b9f, 0x1b9f], /* SUNDANESE LETTER XA */ + [0x1ba0, 0x1ba0], /* SUNDANESE LETTER HA */ + [0x1ba1, 0x1ba1], /* SUNDANESE CONSONANT SIGN PAMINGKAL */ + [0x1ba2, 0x1ba2], /* SUNDANESE CONSONANT SIGN PANYAKRA */ + [0x1ba3, 0x1ba3], /* SUNDANESE CONSONANT SIGN PANYIKU */ + [0x1ba4, 0x1ba4], /* SUNDANESE VOWEL SIGN PANGHULU */ + [0x1ba5, 0x1ba5], /* SUNDANESE VOWEL SIGN PANYUKU */ + [0x1ba6, 0x1ba6], /* SUNDANESE VOWEL SIGN PANAELAENG */ + [0x1ba7, 0x1ba7], /* SUNDANESE VOWEL SIGN PANOLONG */ + [0x1ba8, 0x1ba8], /* SUNDANESE VOWEL SIGN PAMEPET */ + [0x1ba9, 0x1ba9], /* SUNDANESE VOWEL SIGN PANEULEUNG */ + [0x1baa, 0x1baa], /* SUNDANESE SIGN PAMAAEH */ + [0x1bab, 0x1bab], /* SUNDANESE SIGN VIRAMA */ + [0x1bac, 0x1bac], /* SUNDANESE CONSONANT SIGN PASANGAN MA */ + [0x1bad, 0x1bad], /* SUNDANESE CONSONANT SIGN PASANGAN WA */ + [0x1bae, 0x1bae], /* SUNDANESE LETTER KHA */ + [0x1baf, 0x1baf], /* SUNDANESE LETTER SYA */ + [0x1bb0, 0x1bb0], /* SUNDANESE DIGIT ZERO */ + [0x1bb1, 0x1bb1], /* SUNDANESE DIGIT ONE */ + [0x1bb2, 0x1bb2], /* SUNDANESE DIGIT TWO */ + [0x1bb3, 0x1bb3], /* SUNDANESE DIGIT THREE */ + [0x1bb4, 0x1bb4], /* SUNDANESE DIGIT FOUR */ + [0x1bb5, 0x1bb5], /* SUNDANESE DIGIT FIVE */ + [0x1bb6, 0x1bb6], /* SUNDANESE DIGIT SIX */ + [0x1bb7, 0x1bb7], /* SUNDANESE DIGIT SEVEN */ + [0x1bb8, 0x1bb8], /* SUNDANESE DIGIT EIGHT */ + [0x1bb9, 0x1bb9], /* SUNDANESE DIGIT NINE */ + [0x1bba, 0x1bba], /* SUNDANESE AVAGRAHA */ + [0x1bbb, 0x1bbb], /* SUNDANESE LETTER REU */ + [0x1bbc, 0x1bbc], /* SUNDANESE LETTER LEU */ + [0x1bbd, 0x1bbd], /* SUNDANESE LETTER BHA */ + [0x1bbe, 0x1bbe], /* SUNDANESE LETTER FINAL K */ + [0x1bbf, 0x1bbf], /* SUNDANESE LETTER FINAL M */ + [0x1bc0, 0x1bc0], /* BATAK LETTER A */ + [0x1bc1, 0x1bc1], /* BATAK LETTER SIMALUNGUN A */ + [0x1bc2, 0x1bc2], /* BATAK LETTER HA */ + [0x1bc3, 0x1bc3], /* BATAK LETTER SIMALUNGUN HA */ + [0x1bc4, 0x1bc4], /* BATAK LETTER MANDAILING HA */ + [0x1bc5, 0x1bc5], /* BATAK LETTER BA */ + [0x1bc6, 0x1bc6], /* BATAK LETTER KARO BA */ + [0x1bc7, 0x1bc7], /* BATAK LETTER PA */ + [0x1bc8, 0x1bc8], /* BATAK LETTER SIMALUNGUN PA */ + [0x1bc9, 0x1bc9], /* BATAK LETTER NA */ + [0x1bca, 0x1bca], /* BATAK LETTER MANDAILING NA */ + [0x1bcb, 0x1bcb], /* BATAK LETTER WA */ + [0x1bcc, 0x1bcc], /* BATAK LETTER SIMALUNGUN WA */ + [0x1bcd, 0x1bcd], /* BATAK LETTER PAKPAK WA */ + [0x1bce, 0x1bce], /* BATAK LETTER GA */ + [0x1bcf, 0x1bcf], /* BATAK LETTER SIMALUNGUN GA */ + [0x1bd0, 0x1bd0], /* BATAK LETTER JA */ + [0x1bd1, 0x1bd1], /* BATAK LETTER DA */ + [0x1bd2, 0x1bd2], /* BATAK LETTER RA */ + [0x1bd3, 0x1bd3], /* BATAK LETTER SIMALUNGUN RA */ + [0x1bd4, 0x1bd4], /* BATAK LETTER MA */ + [0x1bd5, 0x1bd5], /* BATAK LETTER SIMALUNGUN MA */ + [0x1bd6, 0x1bd6], /* BATAK LETTER SOUTHERN TA */ + [0x1bd7, 0x1bd7], /* BATAK LETTER NORTHERN TA */ + [0x1bd8, 0x1bd8], /* BATAK LETTER SA */ + [0x1bd9, 0x1bd9], /* BATAK LETTER SIMALUNGUN SA */ + [0x1bda, 0x1bda], /* BATAK LETTER MANDAILING SA */ + [0x1bdb, 0x1bdb], /* BATAK LETTER YA */ + [0x1bdc, 0x1bdc], /* BATAK LETTER SIMALUNGUN YA */ + [0x1bdd, 0x1bdd], /* BATAK LETTER NGA */ + [0x1bde, 0x1bde], /* BATAK LETTER LA */ + [0x1bdf, 0x1bdf], /* BATAK LETTER SIMALUNGUN LA */ + [0x1be0, 0x1be0], /* BATAK LETTER NYA */ + [0x1be1, 0x1be1], /* BATAK LETTER CA */ + [0x1be2, 0x1be2], /* BATAK LETTER NDA */ + [0x1be3, 0x1be3], /* BATAK LETTER MBA */ + [0x1be4, 0x1be4], /* BATAK LETTER I */ + [0x1be5, 0x1be5], /* BATAK LETTER U */ + [0x1be6, 0x1be6], /* BATAK SIGN TOMPI */ + [0x1be7, 0x1be7], /* BATAK VOWEL SIGN E */ + [0x1be8, 0x1be8], /* BATAK VOWEL SIGN PAKPAK E */ + [0x1be9, 0x1be9], /* BATAK VOWEL SIGN EE */ + [0x1bea, 0x1bea], /* BATAK VOWEL SIGN I */ + [0x1beb, 0x1beb], /* BATAK VOWEL SIGN KARO I */ + [0x1bec, 0x1bec], /* BATAK VOWEL SIGN O */ + [0x1bed, 0x1bed], /* BATAK VOWEL SIGN KARO O */ + [0x1bee, 0x1bee], /* BATAK VOWEL SIGN U */ + [0x1bef, 0x1bef], /* BATAK VOWEL SIGN U FOR SIMALUNGUN SA */ + [0x1bf0, 0x1bf0], /* BATAK CONSONANT SIGN NG */ + [0x1bf1, 0x1bf1], /* BATAK CONSONANT SIGN H */ + [0x1bf2, 0x1bf2], /* BATAK PANGOLAT */ + [0x1bf3, 0x1bf3], /* BATAK PANONGONAN */ + [0x1bf4, 0x1bf4], + [0x1bf5, 0x1bf5], + [0x1bf6, 0x1bf6], + [0x1bf7, 0x1bf7], + [0x1bf8, 0x1bf8], + [0x1bf9, 0x1bf9], + [0x1bfa, 0x1bfa], + [0x1bfb, 0x1bfb], + [0x1bfc, 0x1bfc], /* BATAK SYMBOL BINDU NA METEK */ + [0x1bfd, 0x1bfd], /* BATAK SYMBOL BINDU PINARBORAS */ + [0x1bfe, 0x1bfe], /* BATAK SYMBOL BINDU JUDUL */ + [0x1bff, 0x1bff], /* BATAK SYMBOL BINDU PANGOLAT */ + [0x1c00, 0x1c00], /* LEPCHA LETTER KA */ + [0x1c01, 0x1c01], /* LEPCHA LETTER KLA */ + [0x1c02, 0x1c02], /* LEPCHA LETTER KHA */ + [0x1c03, 0x1c03], /* LEPCHA LETTER GA */ + [0x1c04, 0x1c04], /* LEPCHA LETTER GLA */ + [0x1c05, 0x1c05], /* LEPCHA LETTER NGA */ + [0x1c06, 0x1c06], /* LEPCHA LETTER CA */ + [0x1c07, 0x1c07], /* LEPCHA LETTER CHA */ + [0x1c08, 0x1c08], /* LEPCHA LETTER JA */ + [0x1c09, 0x1c09], /* LEPCHA LETTER NYA */ + [0x1c0a, 0x1c0a], /* LEPCHA LETTER TA */ + [0x1c0b, 0x1c0b], /* LEPCHA LETTER THA */ + [0x1c0c, 0x1c0c], /* LEPCHA LETTER DA */ + [0x1c0d, 0x1c0d], /* LEPCHA LETTER NA */ + [0x1c0e, 0x1c0e], /* LEPCHA LETTER PA */ + [0x1c0f, 0x1c0f], /* LEPCHA LETTER PLA */ + [0x1c10, 0x1c10], /* LEPCHA LETTER PHA */ + [0x1c11, 0x1c11], /* LEPCHA LETTER FA */ + [0x1c12, 0x1c12], /* LEPCHA LETTER FLA */ + [0x1c13, 0x1c13], /* LEPCHA LETTER BA */ + [0x1c14, 0x1c14], /* LEPCHA LETTER BLA */ + [0x1c15, 0x1c15], /* LEPCHA LETTER MA */ + [0x1c16, 0x1c16], /* LEPCHA LETTER MLA */ + [0x1c17, 0x1c17], /* LEPCHA LETTER TSA */ + [0x1c18, 0x1c18], /* LEPCHA LETTER TSHA */ + [0x1c19, 0x1c19], /* LEPCHA LETTER DZA */ + [0x1c1a, 0x1c1a], /* LEPCHA LETTER YA */ + [0x1c1b, 0x1c1b], /* LEPCHA LETTER RA */ + [0x1c1c, 0x1c1c], /* LEPCHA LETTER LA */ + [0x1c1d, 0x1c1d], /* LEPCHA LETTER HA */ + [0x1c1e, 0x1c1e], /* LEPCHA LETTER HLA */ + [0x1c1f, 0x1c1f], /* LEPCHA LETTER VA */ + [0x1c20, 0x1c20], /* LEPCHA LETTER SA */ + [0x1c21, 0x1c21], /* LEPCHA LETTER SHA */ + [0x1c22, 0x1c22], /* LEPCHA LETTER WA */ + [0x1c23, 0x1c23], /* LEPCHA LETTER A */ + [0x1c24, 0x1c24], /* LEPCHA SUBJOINED LETTER YA */ + [0x1c25, 0x1c25], /* LEPCHA SUBJOINED LETTER RA */ + [0x1c26, 0x1c26], /* LEPCHA VOWEL SIGN AA */ + [0x1c27, 0x1c27], /* LEPCHA VOWEL SIGN I */ + [0x1c28, 0x1c28], /* LEPCHA VOWEL SIGN O */ + [0x1c29, 0x1c29], /* LEPCHA VOWEL SIGN OO */ + [0x1c2a, 0x1c2a], /* LEPCHA VOWEL SIGN U */ + [0x1c2b, 0x1c2b], /* LEPCHA VOWEL SIGN UU */ + [0x1c2c, 0x1c2c], /* LEPCHA VOWEL SIGN E */ + [0x1c2d, 0x1c2d], /* LEPCHA CONSONANT SIGN K */ + [0x1c2e, 0x1c2e], /* LEPCHA CONSONANT SIGN M */ + [0x1c2f, 0x1c2f], /* LEPCHA CONSONANT SIGN L */ + [0x1c30, 0x1c30], /* LEPCHA CONSONANT SIGN N */ + [0x1c31, 0x1c31], /* LEPCHA CONSONANT SIGN P */ + [0x1c32, 0x1c32], /* LEPCHA CONSONANT SIGN R */ + [0x1c33, 0x1c33], /* LEPCHA CONSONANT SIGN T */ + [0x1c34, 0x1c34], /* LEPCHA CONSONANT SIGN NYIN-DO */ + [0x1c35, 0x1c35], /* LEPCHA CONSONANT SIGN KANG */ + [0x1c36, 0x1c36], /* LEPCHA SIGN RAN */ + [0x1c37, 0x1c37], /* LEPCHA SIGN NUKTA */ + [0x1c38, 0x1c38], + [0x1c39, 0x1c39], + [0x1c3a, 0x1c3a], + [0x1c3b, 0x1c3b], /* LEPCHA PUNCTUATION TA-ROL */ + [0x1c3c, 0x1c3c], /* LEPCHA PUNCTUATION NYET THYOOM TA-ROL */ + [0x1c3d, 0x1c3d], /* LEPCHA PUNCTUATION CER-WA */ + [0x1c3e, 0x1c3e], /* LEPCHA PUNCTUATION TSHOOK CER-WA */ + [0x1c3f, 0x1c3f], /* LEPCHA PUNCTUATION TSHOOK */ + [0x1c40, 0x1c40], /* LEPCHA DIGIT ZERO */ + [0x1c41, 0x1c41], /* LEPCHA DIGIT ONE */ + [0x1c42, 0x1c42], /* LEPCHA DIGIT TWO */ + [0x1c43, 0x1c43], /* LEPCHA DIGIT THREE */ + [0x1c44, 0x1c44], /* LEPCHA DIGIT FOUR */ + [0x1c45, 0x1c45], /* LEPCHA DIGIT FIVE */ + [0x1c46, 0x1c46], /* LEPCHA DIGIT SIX */ + [0x1c47, 0x1c47], /* LEPCHA DIGIT SEVEN */ + [0x1c48, 0x1c48], /* LEPCHA DIGIT EIGHT */ + [0x1c49, 0x1c49], /* LEPCHA DIGIT NINE */ + [0x1c4a, 0x1c4a], + [0x1c4b, 0x1c4b], + [0x1c4c, 0x1c4c], + [0x1c4d, 0x1c4d], /* LEPCHA LETTER TTA */ + [0x1c4e, 0x1c4e], /* LEPCHA LETTER TTHA */ + [0x1c4f, 0x1c4f], /* LEPCHA LETTER DDA */ + [0x1c50, 0x1c50], /* OL CHIKI DIGIT ZERO */ + [0x1c51, 0x1c51], /* OL CHIKI DIGIT ONE */ + [0x1c52, 0x1c52], /* OL CHIKI DIGIT TWO */ + [0x1c53, 0x1c53], /* OL CHIKI DIGIT THREE */ + [0x1c54, 0x1c54], /* OL CHIKI DIGIT FOUR */ + [0x1c55, 0x1c55], /* OL CHIKI DIGIT FIVE */ + [0x1c56, 0x1c56], /* OL CHIKI DIGIT SIX */ + [0x1c57, 0x1c57], /* OL CHIKI DIGIT SEVEN */ + [0x1c58, 0x1c58], /* OL CHIKI DIGIT EIGHT */ + [0x1c59, 0x1c59], /* OL CHIKI DIGIT NINE */ + [0x1c5a, 0x1c5a], /* OL CHIKI LETTER LA */ + [0x1c5b, 0x1c5b], /* OL CHIKI LETTER AT */ + [0x1c5c, 0x1c5c], /* OL CHIKI LETTER AG */ + [0x1c5d, 0x1c5d], /* OL CHIKI LETTER ANG */ + [0x1c5e, 0x1c5e], /* OL CHIKI LETTER AL */ + [0x1c5f, 0x1c5f], /* OL CHIKI LETTER LAA */ + [0x1c60, 0x1c60], /* OL CHIKI LETTER AAK */ + [0x1c61, 0x1c61], /* OL CHIKI LETTER AAJ */ + [0x1c62, 0x1c62], /* OL CHIKI LETTER AAM */ + [0x1c63, 0x1c63], /* OL CHIKI LETTER AAW */ + [0x1c64, 0x1c64], /* OL CHIKI LETTER LI */ + [0x1c65, 0x1c65], /* OL CHIKI LETTER IS */ + [0x1c66, 0x1c66], /* OL CHIKI LETTER IH */ + [0x1c67, 0x1c67], /* OL CHIKI LETTER INY */ + [0x1c68, 0x1c68], /* OL CHIKI LETTER IR */ + [0x1c69, 0x1c69], /* OL CHIKI LETTER LU */ + [0x1c6a, 0x1c6a], /* OL CHIKI LETTER UC */ + [0x1c6b, 0x1c6b], /* OL CHIKI LETTER UD */ + [0x1c6c, 0x1c6c], /* OL CHIKI LETTER UNN */ + [0x1c6d, 0x1c6d], /* OL CHIKI LETTER UY */ + [0x1c6e, 0x1c6e], /* OL CHIKI LETTER LE */ + [0x1c6f, 0x1c6f], /* OL CHIKI LETTER EP */ + [0x1c70, 0x1c70], /* OL CHIKI LETTER EDD */ + [0x1c71, 0x1c71], /* OL CHIKI LETTER EN */ + [0x1c72, 0x1c72], /* OL CHIKI LETTER ERR */ + [0x1c73, 0x1c73], /* OL CHIKI LETTER LO */ + [0x1c74, 0x1c74], /* OL CHIKI LETTER OTT */ + [0x1c75, 0x1c75], /* OL CHIKI LETTER OB */ + [0x1c76, 0x1c76], /* OL CHIKI LETTER OV */ + [0x1c77, 0x1c77], /* OL CHIKI LETTER OH */ + [0x1c78, 0x1c78], /* OL CHIKI MU TTUDDAG */ + [0x1c79, 0x1c79], /* OL CHIKI GAAHLAA TTUDDAAG */ + [0x1c7a, 0x1c7a], /* OL CHIKI MU-GAAHLAA TTUDDAAG */ + [0x1c7b, 0x1c7b], /* OL CHIKI RELAA */ + [0x1c7c, 0x1c7c], /* OL CHIKI PHAARKAA */ + [0x1c7d, 0x1c7d], /* OL CHIKI AHAD */ + [0x1c7e, 0x1c7e], /* OL CHIKI PUNCTUATION MUCAAD */ + [0x1c7f, 0x1c7f], /* OL CHIKI PUNCTUATION DOUBLE MUCAAD */ + [0x412, 0x1c80], /* CYRILLIC SMALL LETTER ROUNDED VE */ + [0x414, 0x1c81], /* CYRILLIC SMALL LETTER LONG-LEGGED DE */ + [0x41e, 0x1c82], /* CYRILLIC SMALL LETTER NARROW O */ + [0x421, 0x1c83], /* CYRILLIC SMALL LETTER WIDE ES */ + [0x422, 0x1c84], /* CYRILLIC SMALL LETTER TALL TE */ + [0x422, 0x1c85], /* CYRILLIC SMALL LETTER THREE-LEGGED TE */ + [0x42a, 0x1c86], /* CYRILLIC SMALL LETTER TALL HARD SIGN */ + [0x462, 0x1c87], /* CYRILLIC SMALL LETTER TALL YAT */ + [0xa64a, 0x1c88], /* CYRILLIC SMALL LETTER UNBLENDED UK */ + [0x1c89, 0x1c89], + [0x1c8a, 0x1c8a], + [0x1c8b, 0x1c8b], + [0x1c8c, 0x1c8c], + [0x1c8d, 0x1c8d], + [0x1c8e, 0x1c8e], + [0x1c8f, 0x1c8f], + [0x1c90, 0x1c90], + [0x1c91, 0x1c91], + [0x1c92, 0x1c92], + [0x1c93, 0x1c93], + [0x1c94, 0x1c94], + [0x1c95, 0x1c95], + [0x1c96, 0x1c96], + [0x1c97, 0x1c97], + [0x1c98, 0x1c98], + [0x1c99, 0x1c99], + [0x1c9a, 0x1c9a], + [0x1c9b, 0x1c9b], + [0x1c9c, 0x1c9c], + [0x1c9d, 0x1c9d], + [0x1c9e, 0x1c9e], + [0x1c9f, 0x1c9f], + [0x1ca0, 0x1ca0], + [0x1ca1, 0x1ca1], + [0x1ca2, 0x1ca2], + [0x1ca3, 0x1ca3], + [0x1ca4, 0x1ca4], + [0x1ca5, 0x1ca5], + [0x1ca6, 0x1ca6], + [0x1ca7, 0x1ca7], + [0x1ca8, 0x1ca8], + [0x1ca9, 0x1ca9], + [0x1caa, 0x1caa], + [0x1cab, 0x1cab], + [0x1cac, 0x1cac], + [0x1cad, 0x1cad], + [0x1cae, 0x1cae], + [0x1caf, 0x1caf], + [0x1cb0, 0x1cb0], + [0x1cb1, 0x1cb1], + [0x1cb2, 0x1cb2], + [0x1cb3, 0x1cb3], + [0x1cb4, 0x1cb4], + [0x1cb5, 0x1cb5], + [0x1cb6, 0x1cb6], + [0x1cb7, 0x1cb7], + [0x1cb8, 0x1cb8], + [0x1cb9, 0x1cb9], + [0x1cba, 0x1cba], + [0x1cbb, 0x1cbb], + [0x1cbc, 0x1cbc], + [0x1cbd, 0x1cbd], + [0x1cbe, 0x1cbe], + [0x1cbf, 0x1cbf], + [0x1cc0, 0x1cc0], /* SUNDANESE PUNCTUATION BINDU SURYA */ + [0x1cc1, 0x1cc1], /* SUNDANESE PUNCTUATION BINDU PANGLONG */ + [0x1cc2, 0x1cc2], /* SUNDANESE PUNCTUATION BINDU PURNAMA */ + [0x1cc3, 0x1cc3], /* SUNDANESE PUNCTUATION BINDU CAKRA */ + [0x1cc4, 0x1cc4], /* SUNDANESE PUNCTUATION BINDU LEU SATANGA */ + [0x1cc5, 0x1cc5], /* SUNDANESE PUNCTUATION BINDU KA SATANGA */ + [0x1cc6, 0x1cc6], /* SUNDANESE PUNCTUATION BINDU DA SATANGA */ + [0x1cc7, 0x1cc7], /* SUNDANESE PUNCTUATION BINDU BA SATANGA */ + [0x1cc8, 0x1cc8], + [0x1cc9, 0x1cc9], + [0x1cca, 0x1cca], + [0x1ccb, 0x1ccb], + [0x1ccc, 0x1ccc], + [0x1ccd, 0x1ccd], + [0x1cce, 0x1cce], + [0x1ccf, 0x1ccf], + [0x1cd0, 0x1cd0], /* VEDIC TONE KARSHANA */ + [0x1cd1, 0x1cd1], /* VEDIC TONE SHARA */ + [0x1cd2, 0x1cd2], /* VEDIC TONE PRENKHA */ + [0x1cd3, 0x1cd3], /* VEDIC SIGN NIHSHVASA */ + [0x1cd4, 0x1cd4], /* VEDIC SIGN YAJURVEDIC MIDLINE SVARITA */ + [0x1cd5, 0x1cd5], /* VEDIC TONE YAJURVEDIC AGGRAVATED INDEPENDENT SVARITA */ + [0x1cd6, 0x1cd6], /* VEDIC TONE YAJURVEDIC INDEPENDENT SVARITA */ + [0x1cd7, 0x1cd7], /* VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA */ + [0x1cd8, 0x1cd8], /* VEDIC TONE CANDRA BELOW */ + [0x1cd9, 0x1cd9], /* VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA SCHROEDER */ + [0x1cda, 0x1cda], /* VEDIC TONE DOUBLE SVARITA */ + [0x1cdb, 0x1cdb], /* VEDIC TONE TRIPLE SVARITA */ + [0x1cdc, 0x1cdc], /* VEDIC TONE KATHAKA ANUDATTA */ + [0x1cdd, 0x1cdd], /* VEDIC TONE DOT BELOW */ + [0x1cde, 0x1cde], /* VEDIC TONE TWO DOTS BELOW */ + [0x1cdf, 0x1cdf], /* VEDIC TONE THREE DOTS BELOW */ + [0x1ce0, 0x1ce0], /* VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA */ + [0x1ce1, 0x1ce1], /* VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA */ + [0x1ce2, 0x1ce2], /* VEDIC SIGN VISARGA SVARITA */ + [0x1ce3, 0x1ce3], /* VEDIC SIGN VISARGA UDATTA */ + [0x1ce4, 0x1ce4], /* VEDIC SIGN REVERSED VISARGA UDATTA */ + [0x1ce5, 0x1ce5], /* VEDIC SIGN VISARGA ANUDATTA */ + [0x1ce6, 0x1ce6], /* VEDIC SIGN REVERSED VISARGA ANUDATTA */ + [0x1ce7, 0x1ce7], /* VEDIC SIGN VISARGA UDATTA WITH TAIL */ + [0x1ce8, 0x1ce8], /* VEDIC SIGN VISARGA ANUDATTA WITH TAIL */ + [0x1ce9, 0x1ce9], /* VEDIC SIGN ANUSVARA ANTARGOMUKHA */ + [0x1cea, 0x1cea], /* VEDIC SIGN ANUSVARA BAHIRGOMUKHA */ + [0x1ceb, 0x1ceb], /* VEDIC SIGN ANUSVARA VAMAGOMUKHA */ + [0x1cec, 0x1cec], /* VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL */ + [0x1ced, 0x1ced], /* VEDIC SIGN TIRYAK */ + [0x1cee, 0x1cee], /* VEDIC SIGN HEXIFORM LONG ANUSVARA */ + [0x1cef, 0x1cef], /* VEDIC SIGN LONG ANUSVARA */ + [0x1cf0, 0x1cf0], /* VEDIC SIGN RTHANG LONG ANUSVARA */ + [0x1cf1, 0x1cf1], /* VEDIC SIGN ANUSVARA UBHAYATO MUKHA */ + [0x1cf2, 0x1cf2], /* VEDIC SIGN ARDHAVISARGA */ + [0x1cf3, 0x1cf3], /* VEDIC SIGN ROTATED ARDHAVISARGA */ + [0x1cf4, 0x1cf4], /* VEDIC TONE CANDRA ABOVE */ + [0x1cf5, 0x1cf5], /* VEDIC SIGN JIHVAMULIYA */ + [0x1cf6, 0x1cf6], /* VEDIC SIGN UPADHMANIYA */ + [0x1cf7, 0x1cf7], + [0x1cf8, 0x1cf8], /* VEDIC TONE RING ABOVE */ + [0x1cf9, 0x1cf9], /* VEDIC TONE DOUBLE RING ABOVE */ + [0x1cfa, 0x1cfa], + [0x1cfb, 0x1cfb], + [0x1cfc, 0x1cfc], + [0x1cfd, 0x1cfd], + [0x1cfe, 0x1cfe], + [0x1cff, 0x1cff], + [0x1d00, 0x1d00], /* LATIN LETTER SMALL CAPITAL A */ + [0x1d01, 0x1d01], /* LATIN LETTER SMALL CAPITAL AE */ + [0x1d02, 0x1d02], /* LATIN SMALL LETTER TURNED AE */ + [0x1d03, 0x1d03], /* LATIN LETTER SMALL CAPITAL BARRED B */ + [0x1d04, 0x1d04], /* LATIN LETTER SMALL CAPITAL C */ + [0x1d05, 0x1d05], /* LATIN LETTER SMALL CAPITAL D */ + [0x1d06, 0x1d06], /* LATIN LETTER SMALL CAPITAL ETH */ + [0x1d07, 0x1d07], /* LATIN LETTER SMALL CAPITAL E */ + [0x1d08, 0x1d08], /* LATIN SMALL LETTER TURNED OPEN E */ + [0x1d09, 0x1d09], /* LATIN SMALL LETTER TURNED I */ + [0x1d0a, 0x1d0a], /* LATIN LETTER SMALL CAPITAL J */ + [0x1d0b, 0x1d0b], /* LATIN LETTER SMALL CAPITAL K */ + [0x1d0c, 0x1d0c], /* LATIN LETTER SMALL CAPITAL L WITH STROKE */ + [0x1d0d, 0x1d0d], /* LATIN LETTER SMALL CAPITAL M */ + [0x1d0e, 0x1d0e], /* LATIN LETTER SMALL CAPITAL REVERSED N */ + [0x1d0f, 0x1d0f], /* LATIN LETTER SMALL CAPITAL O */ + [0x1d10, 0x1d10], /* LATIN LETTER SMALL CAPITAL OPEN O */ + [0x1d11, 0x1d11], /* LATIN SMALL LETTER SIDEWAYS O */ + [0x1d12, 0x1d12], /* LATIN SMALL LETTER SIDEWAYS OPEN O */ + [0x1d13, 0x1d13], /* LATIN SMALL LETTER SIDEWAYS O WITH STROKE */ + [0x1d14, 0x1d14], /* LATIN SMALL LETTER TURNED OE */ + [0x1d15, 0x1d15], /* LATIN LETTER SMALL CAPITAL OU */ + [0x1d16, 0x1d16], /* LATIN SMALL LETTER TOP HALF O */ + [0x1d17, 0x1d17], /* LATIN SMALL LETTER BOTTOM HALF O */ + [0x1d18, 0x1d18], /* LATIN LETTER SMALL CAPITAL P */ + [0x1d19, 0x1d19], /* LATIN LETTER SMALL CAPITAL REVERSED R */ + [0x1d1a, 0x1d1a], /* LATIN LETTER SMALL CAPITAL TURNED R */ + [0x1d1b, 0x1d1b], /* LATIN LETTER SMALL CAPITAL T */ + [0x1d1c, 0x1d1c], /* LATIN LETTER SMALL CAPITAL U */ + [0x1d1d, 0x1d1d], /* LATIN SMALL LETTER SIDEWAYS U */ + [0x1d1e, 0x1d1e], /* LATIN SMALL LETTER SIDEWAYS DIAERESIZED U */ + [0x1d1f, 0x1d1f], /* LATIN SMALL LETTER SIDEWAYS TURNED M */ + [0x1d20, 0x1d20], /* LATIN LETTER SMALL CAPITAL V */ + [0x1d21, 0x1d21], /* LATIN LETTER SMALL CAPITAL W */ + [0x1d22, 0x1d22], /* LATIN LETTER SMALL CAPITAL Z */ + [0x1d23, 0x1d23], /* LATIN LETTER SMALL CAPITAL EZH */ + [0x1d24, 0x1d24], /* LATIN LETTER VOICED LARYNGEAL SPIRANT */ + [0x1d25, 0x1d25], /* LATIN LETTER AIN */ + [0x1d26, 0x1d26], /* GREEK LETTER SMALL CAPITAL GAMMA */ + [0x1d27, 0x1d27], /* GREEK LETTER SMALL CAPITAL LAMDA */ + [0x1d28, 0x1d28], /* GREEK LETTER SMALL CAPITAL PI */ + [0x1d29, 0x1d29], /* GREEK LETTER SMALL CAPITAL RHO */ + [0x1d2a, 0x1d2a], /* GREEK LETTER SMALL CAPITAL PSI */ + [0x1d2b, 0x1d2b], /* CYRILLIC LETTER SMALL CAPITAL EL */ + [0x1d2c, 0x1d2c], /* MODIFIER LETTER CAPITAL A */ + [0x1d2d, 0x1d2d], /* MODIFIER LETTER CAPITAL AE */ + [0x1d2e, 0x1d2e], /* MODIFIER LETTER CAPITAL B */ + [0x1d2f, 0x1d2f], /* MODIFIER LETTER CAPITAL BARRED B */ + [0x1d30, 0x1d30], /* MODIFIER LETTER CAPITAL D */ + [0x1d31, 0x1d31], /* MODIFIER LETTER CAPITAL E */ + [0x1d32, 0x1d32], /* MODIFIER LETTER CAPITAL REVERSED E */ + [0x1d33, 0x1d33], /* MODIFIER LETTER CAPITAL G */ + [0x1d34, 0x1d34], /* MODIFIER LETTER CAPITAL H */ + [0x1d35, 0x1d35], /* MODIFIER LETTER CAPITAL I */ + [0x1d36, 0x1d36], /* MODIFIER LETTER CAPITAL J */ + [0x1d37, 0x1d37], /* MODIFIER LETTER CAPITAL K */ + [0x1d38, 0x1d38], /* MODIFIER LETTER CAPITAL L */ + [0x1d39, 0x1d39], /* MODIFIER LETTER CAPITAL M */ + [0x1d3a, 0x1d3a], /* MODIFIER LETTER CAPITAL N */ + [0x1d3b, 0x1d3b], /* MODIFIER LETTER CAPITAL REVERSED N */ + [0x1d3c, 0x1d3c], /* MODIFIER LETTER CAPITAL O */ + [0x1d3d, 0x1d3d], /* MODIFIER LETTER CAPITAL OU */ + [0x1d3e, 0x1d3e], /* MODIFIER LETTER CAPITAL P */ + [0x1d3f, 0x1d3f], /* MODIFIER LETTER CAPITAL R */ + [0x1d40, 0x1d40], /* MODIFIER LETTER CAPITAL T */ + [0x1d41, 0x1d41], /* MODIFIER LETTER CAPITAL U */ + [0x1d42, 0x1d42], /* MODIFIER LETTER CAPITAL W */ + [0x1d43, 0x1d43], /* MODIFIER LETTER SMALL A */ + [0x1d44, 0x1d44], /* MODIFIER LETTER SMALL TURNED A */ + [0x1d45, 0x1d45], /* MODIFIER LETTER SMALL ALPHA */ + [0x1d46, 0x1d46], /* MODIFIER LETTER SMALL TURNED AE */ + [0x1d47, 0x1d47], /* MODIFIER LETTER SMALL B */ + [0x1d48, 0x1d48], /* MODIFIER LETTER SMALL D */ + [0x1d49, 0x1d49], /* MODIFIER LETTER SMALL E */ + [0x1d4a, 0x1d4a], /* MODIFIER LETTER SMALL SCHWA */ + [0x1d4b, 0x1d4b], /* MODIFIER LETTER SMALL OPEN E */ + [0x1d4c, 0x1d4c], /* MODIFIER LETTER SMALL TURNED OPEN E */ + [0x1d4d, 0x1d4d], /* MODIFIER LETTER SMALL G */ + [0x1d4e, 0x1d4e], /* MODIFIER LETTER SMALL TURNED I */ + [0x1d4f, 0x1d4f], /* MODIFIER LETTER SMALL K */ + [0x1d50, 0x1d50], /* MODIFIER LETTER SMALL M */ + [0x1d51, 0x1d51], /* MODIFIER LETTER SMALL ENG */ + [0x1d52, 0x1d52], /* MODIFIER LETTER SMALL O */ + [0x1d53, 0x1d53], /* MODIFIER LETTER SMALL OPEN O */ + [0x1d54, 0x1d54], /* MODIFIER LETTER SMALL TOP HALF O */ + [0x1d55, 0x1d55], /* MODIFIER LETTER SMALL BOTTOM HALF O */ + [0x1d56, 0x1d56], /* MODIFIER LETTER SMALL P */ + [0x1d57, 0x1d57], /* MODIFIER LETTER SMALL T */ + [0x1d58, 0x1d58], /* MODIFIER LETTER SMALL U */ + [0x1d59, 0x1d59], /* MODIFIER LETTER SMALL SIDEWAYS U */ + [0x1d5a, 0x1d5a], /* MODIFIER LETTER SMALL TURNED M */ + [0x1d5b, 0x1d5b], /* MODIFIER LETTER SMALL V */ + [0x1d5c, 0x1d5c], /* MODIFIER LETTER SMALL AIN */ + [0x1d5d, 0x1d5d], /* MODIFIER LETTER SMALL BETA */ + [0x1d5e, 0x1d5e], /* MODIFIER LETTER SMALL GREEK GAMMA */ + [0x1d5f, 0x1d5f], /* MODIFIER LETTER SMALL DELTA */ + [0x1d60, 0x1d60], /* MODIFIER LETTER SMALL GREEK PHI */ + [0x1d61, 0x1d61], /* MODIFIER LETTER SMALL CHI */ + [0x1d62, 0x1d62], /* LATIN SUBSCRIPT SMALL LETTER I */ + [0x1d63, 0x1d63], /* LATIN SUBSCRIPT SMALL LETTER R */ + [0x1d64, 0x1d64], /* LATIN SUBSCRIPT SMALL LETTER U */ + [0x1d65, 0x1d65], /* LATIN SUBSCRIPT SMALL LETTER V */ + [0x1d66, 0x1d66], /* GREEK SUBSCRIPT SMALL LETTER BETA */ + [0x1d67, 0x1d67], /* GREEK SUBSCRIPT SMALL LETTER GAMMA */ + [0x1d68, 0x1d68], /* GREEK SUBSCRIPT SMALL LETTER RHO */ + [0x1d69, 0x1d69], /* GREEK SUBSCRIPT SMALL LETTER PHI */ + [0x1d6a, 0x1d6a], /* GREEK SUBSCRIPT SMALL LETTER CHI */ + [0x1d6b, 0x1d6b], /* LATIN SMALL LETTER UE */ + [0x1d6c, 0x1d6c], /* LATIN SMALL LETTER B WITH MIDDLE TILDE */ + [0x1d6d, 0x1d6d], /* LATIN SMALL LETTER D WITH MIDDLE TILDE */ + [0x1d6e, 0x1d6e], /* LATIN SMALL LETTER F WITH MIDDLE TILDE */ + [0x1d6f, 0x1d6f], /* LATIN SMALL LETTER M WITH MIDDLE TILDE */ + [0x1d70, 0x1d70], /* LATIN SMALL LETTER N WITH MIDDLE TILDE */ + [0x1d71, 0x1d71], /* LATIN SMALL LETTER P WITH MIDDLE TILDE */ + [0x1d72, 0x1d72], /* LATIN SMALL LETTER R WITH MIDDLE TILDE */ + [0x1d73, 0x1d73], /* LATIN SMALL LETTER R WITH FISHHOOK AND MIDDLE TILDE */ + [0x1d74, 0x1d74], /* LATIN SMALL LETTER S WITH MIDDLE TILDE */ + [0x1d75, 0x1d75], /* LATIN SMALL LETTER T WITH MIDDLE TILDE */ + [0x1d76, 0x1d76], /* LATIN SMALL LETTER Z WITH MIDDLE TILDE */ + [0x1d77, 0x1d77], /* LATIN SMALL LETTER TURNED G */ + [0x1d78, 0x1d78], /* MODIFIER LETTER CYRILLIC EN */ + [0xa77d, 0x1d79], /* LATIN SMALL LETTER INSULAR G */ + [0x1d7a, 0x1d7a], /* LATIN SMALL LETTER TH WITH STRIKETHROUGH */ + [0x1d7b, 0x1d7b], /* LATIN SMALL CAPITAL LETTER I WITH STROKE */ + [0x1d7c, 0x1d7c], /* LATIN SMALL LETTER IOTA WITH STROKE */ + [0x2c63, 0x1d7d], /* LATIN SMALL LETTER P WITH STROKE */ + [0x1d7e, 0x1d7e], /* LATIN SMALL CAPITAL LETTER U WITH STROKE */ + [0x1d7f, 0x1d7f], /* LATIN SMALL LETTER UPSILON WITH STROKE */ + [0x1d80, 0x1d80], /* LATIN SMALL LETTER B WITH PALATAL HOOK */ + [0x1d81, 0x1d81], /* LATIN SMALL LETTER D WITH PALATAL HOOK */ + [0x1d82, 0x1d82], /* LATIN SMALL LETTER F WITH PALATAL HOOK */ + [0x1d83, 0x1d83], /* LATIN SMALL LETTER G WITH PALATAL HOOK */ + [0x1d84, 0x1d84], /* LATIN SMALL LETTER K WITH PALATAL HOOK */ + [0x1d85, 0x1d85], /* LATIN SMALL LETTER L WITH PALATAL HOOK */ + [0x1d86, 0x1d86], /* LATIN SMALL LETTER M WITH PALATAL HOOK */ + [0x1d87, 0x1d87], /* LATIN SMALL LETTER N WITH PALATAL HOOK */ + [0x1d88, 0x1d88], /* LATIN SMALL LETTER P WITH PALATAL HOOK */ + [0x1d89, 0x1d89], /* LATIN SMALL LETTER R WITH PALATAL HOOK */ + [0x1d8a, 0x1d8a], /* LATIN SMALL LETTER S WITH PALATAL HOOK */ + [0x1d8b, 0x1d8b], /* LATIN SMALL LETTER ESH WITH PALATAL HOOK */ + [0x1d8c, 0x1d8c], /* LATIN SMALL LETTER V WITH PALATAL HOOK */ + [0x1d8d, 0x1d8d], /* LATIN SMALL LETTER X WITH PALATAL HOOK */ + [0x1d8e, 0x1d8e], /* LATIN SMALL LETTER Z WITH PALATAL HOOK */ + [0x1d8f, 0x1d8f], /* LATIN SMALL LETTER A WITH RETROFLEX HOOK */ + [0x1d90, 0x1d90], /* LATIN SMALL LETTER ALPHA WITH RETROFLEX HOOK */ + [0x1d91, 0x1d91], /* LATIN SMALL LETTER D WITH HOOK AND TAIL */ + [0x1d92, 0x1d92], /* LATIN SMALL LETTER E WITH RETROFLEX HOOK */ + [0x1d93, 0x1d93], /* LATIN SMALL LETTER OPEN E WITH RETROFLEX HOOK */ + [0x1d94, 0x1d94], /* LATIN SMALL LETTER REVERSED OPEN E WITH RETROFLEX HOOK */ + [0x1d95, 0x1d95], /* LATIN SMALL LETTER SCHWA WITH RETROFLEX HOOK */ + [0x1d96, 0x1d96], /* LATIN SMALL LETTER I WITH RETROFLEX HOOK */ + [0x1d97, 0x1d97], /* LATIN SMALL LETTER OPEN O WITH RETROFLEX HOOK */ + [0x1d98, 0x1d98], /* LATIN SMALL LETTER ESH WITH RETROFLEX HOOK */ + [0x1d99, 0x1d99], /* LATIN SMALL LETTER U WITH RETROFLEX HOOK */ + [0x1d9a, 0x1d9a], /* LATIN SMALL LETTER EZH WITH RETROFLEX HOOK */ + [0x1d9b, 0x1d9b], /* MODIFIER LETTER SMALL TURNED ALPHA */ + [0x1d9c, 0x1d9c], /* MODIFIER LETTER SMALL C */ + [0x1d9d, 0x1d9d], /* MODIFIER LETTER SMALL C WITH CURL */ + [0x1d9e, 0x1d9e], /* MODIFIER LETTER SMALL ETH */ + [0x1d9f, 0x1d9f], /* MODIFIER LETTER SMALL REVERSED OPEN E */ + [0x1da0, 0x1da0], /* MODIFIER LETTER SMALL F */ + [0x1da1, 0x1da1], /* MODIFIER LETTER SMALL DOTLESS J WITH STROKE */ + [0x1da2, 0x1da2], /* MODIFIER LETTER SMALL SCRIPT G */ + [0x1da3, 0x1da3], /* MODIFIER LETTER SMALL TURNED H */ + [0x1da4, 0x1da4], /* MODIFIER LETTER SMALL I WITH STROKE */ + [0x1da5, 0x1da5], /* MODIFIER LETTER SMALL IOTA */ + [0x1da6, 0x1da6], /* MODIFIER LETTER SMALL CAPITAL I */ + [0x1da7, 0x1da7], /* MODIFIER LETTER SMALL CAPITAL I WITH STROKE */ + [0x1da8, 0x1da8], /* MODIFIER LETTER SMALL J WITH CROSSED-TAIL */ + [0x1da9, 0x1da9], /* MODIFIER LETTER SMALL L WITH RETROFLEX HOOK */ + [0x1daa, 0x1daa], /* MODIFIER LETTER SMALL L WITH PALATAL HOOK */ + [0x1dab, 0x1dab], /* MODIFIER LETTER SMALL CAPITAL L */ + [0x1dac, 0x1dac], /* MODIFIER LETTER SMALL M WITH HOOK */ + [0x1dad, 0x1dad], /* MODIFIER LETTER SMALL TURNED M WITH LONG LEG */ + [0x1dae, 0x1dae], /* MODIFIER LETTER SMALL N WITH LEFT HOOK */ + [0x1daf, 0x1daf], /* MODIFIER LETTER SMALL N WITH RETROFLEX HOOK */ + [0x1db0, 0x1db0], /* MODIFIER LETTER SMALL CAPITAL N */ + [0x1db1, 0x1db1], /* MODIFIER LETTER SMALL BARRED O */ + [0x1db2, 0x1db2], /* MODIFIER LETTER SMALL PHI */ + [0x1db3, 0x1db3], /* MODIFIER LETTER SMALL S WITH HOOK */ + [0x1db4, 0x1db4], /* MODIFIER LETTER SMALL ESH */ + [0x1db5, 0x1db5], /* MODIFIER LETTER SMALL T WITH PALATAL HOOK */ + [0x1db6, 0x1db6], /* MODIFIER LETTER SMALL U BAR */ + [0x1db7, 0x1db7], /* MODIFIER LETTER SMALL UPSILON */ + [0x1db8, 0x1db8], /* MODIFIER LETTER SMALL CAPITAL U */ + [0x1db9, 0x1db9], /* MODIFIER LETTER SMALL V WITH HOOK */ + [0x1dba, 0x1dba], /* MODIFIER LETTER SMALL TURNED V */ + [0x1dbb, 0x1dbb], /* MODIFIER LETTER SMALL Z */ + [0x1dbc, 0x1dbc], /* MODIFIER LETTER SMALL Z WITH RETROFLEX HOOK */ + [0x1dbd, 0x1dbd], /* MODIFIER LETTER SMALL Z WITH CURL */ + [0x1dbe, 0x1dbe], /* MODIFIER LETTER SMALL EZH */ + [0x1dbf, 0x1dbf], /* MODIFIER LETTER SMALL THETA */ + [0x1dc0, 0x1dc0], /* COMBINING DOTTED GRAVE ACCENT */ + [0x1dc1, 0x1dc1], /* COMBINING DOTTED ACUTE ACCENT */ + [0x1dc2, 0x1dc2], /* COMBINING SNAKE BELOW */ + [0x1dc3, 0x1dc3], /* COMBINING SUSPENSION MARK */ + [0x1dc4, 0x1dc4], /* COMBINING MACRON-ACUTE */ + [0x1dc5, 0x1dc5], /* COMBINING GRAVE-MACRON */ + [0x1dc6, 0x1dc6], /* COMBINING MACRON-GRAVE */ + [0x1dc7, 0x1dc7], /* COMBINING ACUTE-MACRON */ + [0x1dc8, 0x1dc8], /* COMBINING GRAVE-ACUTE-GRAVE */ + [0x1dc9, 0x1dc9], /* COMBINING ACUTE-GRAVE-ACUTE */ + [0x1dca, 0x1dca], /* COMBINING LATIN SMALL LETTER R BELOW */ + [0x1dcb, 0x1dcb], /* COMBINING BREVE-MACRON */ + [0x1dcc, 0x1dcc], /* COMBINING MACRON-BREVE */ + [0x1dcd, 0x1dcd], /* COMBINING DOUBLE CIRCUMFLEX ABOVE */ + [0x1dce, 0x1dce], /* COMBINING OGONEK ABOVE */ + [0x1dcf, 0x1dcf], /* COMBINING ZIGZAG BELOW */ + [0x1dd0, 0x1dd0], /* COMBINING IS BELOW */ + [0x1dd1, 0x1dd1], /* COMBINING UR ABOVE */ + [0x1dd2, 0x1dd2], /* COMBINING US ABOVE */ + [0x1dd3, 0x1dd3], /* COMBINING LATIN SMALL LETTER FLATTENED OPEN A ABOVE */ + [0x1dd4, 0x1dd4], /* COMBINING LATIN SMALL LETTER AE */ + [0x1dd5, 0x1dd5], /* COMBINING LATIN SMALL LETTER AO */ + [0x1dd6, 0x1dd6], /* COMBINING LATIN SMALL LETTER AV */ + [0x1dd7, 0x1dd7], /* COMBINING LATIN SMALL LETTER C CEDILLA */ + [0x1dd8, 0x1dd8], /* COMBINING LATIN SMALL LETTER INSULAR D */ + [0x1dd9, 0x1dd9], /* COMBINING LATIN SMALL LETTER ETH */ + [0x1dda, 0x1dda], /* COMBINING LATIN SMALL LETTER G */ + [0x1ddb, 0x1ddb], /* COMBINING LATIN LETTER SMALL CAPITAL G */ + [0x1ddc, 0x1ddc], /* COMBINING LATIN SMALL LETTER K */ + [0x1ddd, 0x1ddd], /* COMBINING LATIN SMALL LETTER L */ + [0x1dde, 0x1dde], /* COMBINING LATIN LETTER SMALL CAPITAL L */ + [0x1ddf, 0x1ddf], /* COMBINING LATIN LETTER SMALL CAPITAL M */ + [0x1de0, 0x1de0], /* COMBINING LATIN SMALL LETTER N */ + [0x1de1, 0x1de1], /* COMBINING LATIN LETTER SMALL CAPITAL N */ + [0x1de2, 0x1de2], /* COMBINING LATIN LETTER SMALL CAPITAL R */ + [0x1de3, 0x1de3], /* COMBINING LATIN SMALL LETTER R ROTUNDA */ + [0x1de4, 0x1de4], /* COMBINING LATIN SMALL LETTER S */ + [0x1de5, 0x1de5], /* COMBINING LATIN SMALL LETTER LONG S */ + [0x1de6, 0x1de6], /* COMBINING LATIN SMALL LETTER Z */ + [0x1de7, 0x1de7], /* COMBINING LATIN SMALL LETTER ALPHA */ + [0x1de8, 0x1de8], /* COMBINING LATIN SMALL LETTER B */ + [0x1de9, 0x1de9], /* COMBINING LATIN SMALL LETTER BETA */ + [0x1dea, 0x1dea], /* COMBINING LATIN SMALL LETTER SCHWA */ + [0x1deb, 0x1deb], /* COMBINING LATIN SMALL LETTER F */ + [0x1dec, 0x1dec], /* COMBINING LATIN SMALL LETTER L WITH DOUBLE MIDDLE TILDE */ + [0x1ded, 0x1ded], /* COMBINING LATIN SMALL LETTER O WITH LIGHT CENTRALIZATION STROKE */ + [0x1dee, 0x1dee], /* COMBINING LATIN SMALL LETTER P */ + [0x1def, 0x1def], /* COMBINING LATIN SMALL LETTER ESH */ + [0x1df0, 0x1df0], /* COMBINING LATIN SMALL LETTER U WITH LIGHT CENTRALIZATION STROKE */ + [0x1df1, 0x1df1], /* COMBINING LATIN SMALL LETTER W */ + [0x1df2, 0x1df2], /* COMBINING LATIN SMALL LETTER A WITH DIAERESIS */ + [0x1df3, 0x1df3], /* COMBINING LATIN SMALL LETTER O WITH DIAERESIS */ + [0x1df4, 0x1df4], /* COMBINING LATIN SMALL LETTER U WITH DIAERESIS */ + [0x1df5, 0x1df5], /* COMBINING UP TACK ABOVE */ + [0x1df6, 0x1df6], + [0x1df7, 0x1df7], + [0x1df8, 0x1df8], + [0x1df9, 0x1df9], + [0x1dfa, 0x1dfa], + [0x1dfb, 0x1dfb], /* COMBINING DELETION MARK */ + [0x1dfc, 0x1dfc], /* COMBINING DOUBLE INVERTED BREVE BELOW */ + [0x1dfd, 0x1dfd], /* COMBINING ALMOST EQUAL TO BELOW */ + [0x1dfe, 0x1dfe], /* COMBINING LEFT ARROWHEAD ABOVE */ + [0x1dff, 0x1dff], /* COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW */ + [0x1e00, 0x1e01], /* LATIN CAPITAL LETTER A WITH RING BELOW */ + [0x1e00, 0x1e01], /* LATIN SMALL LETTER A WITH RING BELOW */ + [0x1e02, 0x1e03], /* LATIN CAPITAL LETTER B WITH DOT ABOVE */ + [0x1e02, 0x1e03], /* LATIN SMALL LETTER B WITH DOT ABOVE */ + [0x1e04, 0x1e05], /* LATIN CAPITAL LETTER B WITH DOT BELOW */ + [0x1e04, 0x1e05], /* LATIN SMALL LETTER B WITH DOT BELOW */ + [0x1e06, 0x1e07], /* LATIN CAPITAL LETTER B WITH LINE BELOW */ + [0x1e06, 0x1e07], /* LATIN SMALL LETTER B WITH LINE BELOW */ + [0x1e08, 0x1e09], /* LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE */ + [0x1e08, 0x1e09], /* LATIN SMALL LETTER C WITH CEDILLA AND ACUTE */ + [0x1e0a, 0x1e0b], /* LATIN CAPITAL LETTER D WITH DOT ABOVE */ + [0x1e0a, 0x1e0b], /* LATIN SMALL LETTER D WITH DOT ABOVE */ + [0x1e0c, 0x1e0d], /* LATIN CAPITAL LETTER D WITH DOT BELOW */ + [0x1e0c, 0x1e0d], /* LATIN SMALL LETTER D WITH DOT BELOW */ + [0x1e0e, 0x1e0f], /* LATIN CAPITAL LETTER D WITH LINE BELOW */ + [0x1e0e, 0x1e0f], /* LATIN SMALL LETTER D WITH LINE BELOW */ + [0x1e10, 0x1e11], /* LATIN CAPITAL LETTER D WITH CEDILLA */ + [0x1e10, 0x1e11], /* LATIN SMALL LETTER D WITH CEDILLA */ + [0x1e12, 0x1e13], /* LATIN CAPITAL LETTER D WITH CIRCUMFLEX BELOW */ + [0x1e12, 0x1e13], /* LATIN SMALL LETTER D WITH CIRCUMFLEX BELOW */ + [0x1e14, 0x1e15], /* LATIN CAPITAL LETTER E WITH MACRON AND GRAVE */ + [0x1e14, 0x1e15], /* LATIN SMALL LETTER E WITH MACRON AND GRAVE */ + [0x1e16, 0x1e17], /* LATIN CAPITAL LETTER E WITH MACRON AND ACUTE */ + [0x1e16, 0x1e17], /* LATIN SMALL LETTER E WITH MACRON AND ACUTE */ + [0x1e18, 0x1e19], /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX BELOW */ + [0x1e18, 0x1e19], /* LATIN SMALL LETTER E WITH CIRCUMFLEX BELOW */ + [0x1e1a, 0x1e1b], /* LATIN CAPITAL LETTER E WITH TILDE BELOW */ + [0x1e1a, 0x1e1b], /* LATIN SMALL LETTER E WITH TILDE BELOW */ + [0x1e1c, 0x1e1d], /* LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE */ + [0x1e1c, 0x1e1d], /* LATIN SMALL LETTER E WITH CEDILLA AND BREVE */ + [0x1e1e, 0x1e1f], /* LATIN CAPITAL LETTER F WITH DOT ABOVE */ + [0x1e1e, 0x1e1f], /* LATIN SMALL LETTER F WITH DOT ABOVE */ + [0x1e20, 0x1e21], /* LATIN CAPITAL LETTER G WITH MACRON */ + [0x1e20, 0x1e21], /* LATIN SMALL LETTER G WITH MACRON */ + [0x1e22, 0x1e23], /* LATIN CAPITAL LETTER H WITH DOT ABOVE */ + [0x1e22, 0x1e23], /* LATIN SMALL LETTER H WITH DOT ABOVE */ + [0x1e24, 0x1e25], /* LATIN CAPITAL LETTER H WITH DOT BELOW */ + [0x1e24, 0x1e25], /* LATIN SMALL LETTER H WITH DOT BELOW */ + [0x1e26, 0x1e27], /* LATIN CAPITAL LETTER H WITH DIAERESIS */ + [0x1e26, 0x1e27], /* LATIN SMALL LETTER H WITH DIAERESIS */ + [0x1e28, 0x1e29], /* LATIN CAPITAL LETTER H WITH CEDILLA */ + [0x1e28, 0x1e29], /* LATIN SMALL LETTER H WITH CEDILLA */ + [0x1e2a, 0x1e2b], /* LATIN CAPITAL LETTER H WITH BREVE BELOW */ + [0x1e2a, 0x1e2b], /* LATIN SMALL LETTER H WITH BREVE BELOW */ + [0x1e2c, 0x1e2d], /* LATIN CAPITAL LETTER I WITH TILDE BELOW */ + [0x1e2c, 0x1e2d], /* LATIN SMALL LETTER I WITH TILDE BELOW */ + [0x1e2e, 0x1e2f], /* LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE */ + [0x1e2e, 0x1e2f], /* LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE */ + [0x1e30, 0x1e31], /* LATIN CAPITAL LETTER K WITH ACUTE */ + [0x1e30, 0x1e31], /* LATIN SMALL LETTER K WITH ACUTE */ + [0x1e32, 0x1e33], /* LATIN CAPITAL LETTER K WITH DOT BELOW */ + [0x1e32, 0x1e33], /* LATIN SMALL LETTER K WITH DOT BELOW */ + [0x1e34, 0x1e35], /* LATIN CAPITAL LETTER K WITH LINE BELOW */ + [0x1e34, 0x1e35], /* LATIN SMALL LETTER K WITH LINE BELOW */ + [0x1e36, 0x1e37], /* LATIN CAPITAL LETTER L WITH DOT BELOW */ + [0x1e36, 0x1e37], /* LATIN SMALL LETTER L WITH DOT BELOW */ + [0x1e38, 0x1e39], /* LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON */ + [0x1e38, 0x1e39], /* LATIN SMALL LETTER L WITH DOT BELOW AND MACRON */ + [0x1e3a, 0x1e3b], /* LATIN CAPITAL LETTER L WITH LINE BELOW */ + [0x1e3a, 0x1e3b], /* LATIN SMALL LETTER L WITH LINE BELOW */ + [0x1e3c, 0x1e3d], /* LATIN CAPITAL LETTER L WITH CIRCUMFLEX BELOW */ + [0x1e3c, 0x1e3d], /* LATIN SMALL LETTER L WITH CIRCUMFLEX BELOW */ + [0x1e3e, 0x1e3f], /* LATIN CAPITAL LETTER M WITH ACUTE */ + [0x1e3e, 0x1e3f], /* LATIN SMALL LETTER M WITH ACUTE */ + [0x1e40, 0x1e41], /* LATIN CAPITAL LETTER M WITH DOT ABOVE */ + [0x1e40, 0x1e41], /* LATIN SMALL LETTER M WITH DOT ABOVE */ + [0x1e42, 0x1e43], /* LATIN CAPITAL LETTER M WITH DOT BELOW */ + [0x1e42, 0x1e43], /* LATIN SMALL LETTER M WITH DOT BELOW */ + [0x1e44, 0x1e45], /* LATIN CAPITAL LETTER N WITH DOT ABOVE */ + [0x1e44, 0x1e45], /* LATIN SMALL LETTER N WITH DOT ABOVE */ + [0x1e46, 0x1e47], /* LATIN CAPITAL LETTER N WITH DOT BELOW */ + [0x1e46, 0x1e47], /* LATIN SMALL LETTER N WITH DOT BELOW */ + [0x1e48, 0x1e49], /* LATIN CAPITAL LETTER N WITH LINE BELOW */ + [0x1e48, 0x1e49], /* LATIN SMALL LETTER N WITH LINE BELOW */ + [0x1e4a, 0x1e4b], /* LATIN CAPITAL LETTER N WITH CIRCUMFLEX BELOW */ + [0x1e4a, 0x1e4b], /* LATIN SMALL LETTER N WITH CIRCUMFLEX BELOW */ + [0x1e4c, 0x1e4d], /* LATIN CAPITAL LETTER O WITH TILDE AND ACUTE */ + [0x1e4c, 0x1e4d], /* LATIN SMALL LETTER O WITH TILDE AND ACUTE */ + [0x1e4e, 0x1e4f], /* LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS */ + [0x1e4e, 0x1e4f], /* LATIN SMALL LETTER O WITH TILDE AND DIAERESIS */ + [0x1e50, 0x1e51], /* LATIN CAPITAL LETTER O WITH MACRON AND GRAVE */ + [0x1e50, 0x1e51], /* LATIN SMALL LETTER O WITH MACRON AND GRAVE */ + [0x1e52, 0x1e53], /* LATIN CAPITAL LETTER O WITH MACRON AND ACUTE */ + [0x1e52, 0x1e53], /* LATIN SMALL LETTER O WITH MACRON AND ACUTE */ + [0x1e54, 0x1e55], /* LATIN CAPITAL LETTER P WITH ACUTE */ + [0x1e54, 0x1e55], /* LATIN SMALL LETTER P WITH ACUTE */ + [0x1e56, 0x1e57], /* LATIN CAPITAL LETTER P WITH DOT ABOVE */ + [0x1e56, 0x1e57], /* LATIN SMALL LETTER P WITH DOT ABOVE */ + [0x1e58, 0x1e59], /* LATIN CAPITAL LETTER R WITH DOT ABOVE */ + [0x1e58, 0x1e59], /* LATIN SMALL LETTER R WITH DOT ABOVE */ + [0x1e5a, 0x1e5b], /* LATIN CAPITAL LETTER R WITH DOT BELOW */ + [0x1e5a, 0x1e5b], /* LATIN SMALL LETTER R WITH DOT BELOW */ + [0x1e5c, 0x1e5d], /* LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON */ + [0x1e5c, 0x1e5d], /* LATIN SMALL LETTER R WITH DOT BELOW AND MACRON */ + [0x1e5e, 0x1e5f], /* LATIN CAPITAL LETTER R WITH LINE BELOW */ + [0x1e5e, 0x1e5f], /* LATIN SMALL LETTER R WITH LINE BELOW */ + [0x1e60, 0x1e61], /* LATIN CAPITAL LETTER S WITH DOT ABOVE */ + [0x1e60, 0x1e61], /* LATIN SMALL LETTER S WITH DOT ABOVE */ + [0x1e62, 0x1e63], /* LATIN CAPITAL LETTER S WITH DOT BELOW */ + [0x1e62, 0x1e63], /* LATIN SMALL LETTER S WITH DOT BELOW */ + [0x1e64, 0x1e65], /* LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE */ + [0x1e64, 0x1e65], /* LATIN SMALL LETTER S WITH ACUTE AND DOT ABOVE */ + [0x1e66, 0x1e67], /* LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE */ + [0x1e66, 0x1e67], /* LATIN SMALL LETTER S WITH CARON AND DOT ABOVE */ + [0x1e68, 0x1e69], /* LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE */ + [0x1e68, 0x1e69], /* LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE */ + [0x1e6a, 0x1e6b], /* LATIN CAPITAL LETTER T WITH DOT ABOVE */ + [0x1e6a, 0x1e6b], /* LATIN SMALL LETTER T WITH DOT ABOVE */ + [0x1e6c, 0x1e6d], /* LATIN CAPITAL LETTER T WITH DOT BELOW */ + [0x1e6c, 0x1e6d], /* LATIN SMALL LETTER T WITH DOT BELOW */ + [0x1e6e, 0x1e6f], /* LATIN CAPITAL LETTER T WITH LINE BELOW */ + [0x1e6e, 0x1e6f], /* LATIN SMALL LETTER T WITH LINE BELOW */ + [0x1e70, 0x1e71], /* LATIN CAPITAL LETTER T WITH CIRCUMFLEX BELOW */ + [0x1e70, 0x1e71], /* LATIN SMALL LETTER T WITH CIRCUMFLEX BELOW */ + [0x1e72, 0x1e73], /* LATIN CAPITAL LETTER U WITH DIAERESIS BELOW */ + [0x1e72, 0x1e73], /* LATIN SMALL LETTER U WITH DIAERESIS BELOW */ + [0x1e74, 0x1e75], /* LATIN CAPITAL LETTER U WITH TILDE BELOW */ + [0x1e74, 0x1e75], /* LATIN SMALL LETTER U WITH TILDE BELOW */ + [0x1e76, 0x1e77], /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX BELOW */ + [0x1e76, 0x1e77], /* LATIN SMALL LETTER U WITH CIRCUMFLEX BELOW */ + [0x1e78, 0x1e79], /* LATIN CAPITAL LETTER U WITH TILDE AND ACUTE */ + [0x1e78, 0x1e79], /* LATIN SMALL LETTER U WITH TILDE AND ACUTE */ + [0x1e7a, 0x1e7b], /* LATIN CAPITAL LETTER U WITH MACRON AND DIAERESIS */ + [0x1e7a, 0x1e7b], /* LATIN SMALL LETTER U WITH MACRON AND DIAERESIS */ + [0x1e7c, 0x1e7d], /* LATIN CAPITAL LETTER V WITH TILDE */ + [0x1e7c, 0x1e7d], /* LATIN SMALL LETTER V WITH TILDE */ + [0x1e7e, 0x1e7f], /* LATIN CAPITAL LETTER V WITH DOT BELOW */ + [0x1e7e, 0x1e7f], /* LATIN SMALL LETTER V WITH DOT BELOW */ + [0x1e80, 0x1e81], /* LATIN CAPITAL LETTER W WITH GRAVE */ + [0x1e80, 0x1e81], /* LATIN SMALL LETTER W WITH GRAVE */ + [0x1e82, 0x1e83], /* LATIN CAPITAL LETTER W WITH ACUTE */ + [0x1e82, 0x1e83], /* LATIN SMALL LETTER W WITH ACUTE */ + [0x1e84, 0x1e85], /* LATIN CAPITAL LETTER W WITH DIAERESIS */ + [0x1e84, 0x1e85], /* LATIN SMALL LETTER W WITH DIAERESIS */ + [0x1e86, 0x1e87], /* LATIN CAPITAL LETTER W WITH DOT ABOVE */ + [0x1e86, 0x1e87], /* LATIN SMALL LETTER W WITH DOT ABOVE */ + [0x1e88, 0x1e89], /* LATIN CAPITAL LETTER W WITH DOT BELOW */ + [0x1e88, 0x1e89], /* LATIN SMALL LETTER W WITH DOT BELOW */ + [0x1e8a, 0x1e8b], /* LATIN CAPITAL LETTER X WITH DOT ABOVE */ + [0x1e8a, 0x1e8b], /* LATIN SMALL LETTER X WITH DOT ABOVE */ + [0x1e8c, 0x1e8d], /* LATIN CAPITAL LETTER X WITH DIAERESIS */ + [0x1e8c, 0x1e8d], /* LATIN SMALL LETTER X WITH DIAERESIS */ + [0x1e8e, 0x1e8f], /* LATIN CAPITAL LETTER Y WITH DOT ABOVE */ + [0x1e8e, 0x1e8f], /* LATIN SMALL LETTER Y WITH DOT ABOVE */ + [0x1e90, 0x1e91], /* LATIN CAPITAL LETTER Z WITH CIRCUMFLEX */ + [0x1e90, 0x1e91], /* LATIN SMALL LETTER Z WITH CIRCUMFLEX */ + [0x1e92, 0x1e93], /* LATIN CAPITAL LETTER Z WITH DOT BELOW */ + [0x1e92, 0x1e93], /* LATIN SMALL LETTER Z WITH DOT BELOW */ + [0x1e94, 0x1e95], /* LATIN CAPITAL LETTER Z WITH LINE BELOW */ + [0x1e94, 0x1e95], /* LATIN SMALL LETTER Z WITH LINE BELOW */ + [0x1e96, 0x1e96], /* LATIN SMALL LETTER H WITH LINE BELOW */ + [0x1e97, 0x1e97], /* LATIN SMALL LETTER T WITH DIAERESIS */ + [0x1e98, 0x1e98], /* LATIN SMALL LETTER W WITH RING ABOVE */ + [0x1e99, 0x1e99], /* LATIN SMALL LETTER Y WITH RING ABOVE */ + [0x1e9a, 0x1e9a], /* LATIN SMALL LETTER A WITH RIGHT HALF RING */ + [0x1e60, 0x1e9b], /* LATIN SMALL LETTER LONG S WITH DOT ABOVE */ + [0x1e9c, 0x1e9c], /* LATIN SMALL LETTER LONG S WITH DIAGONAL STROKE */ + [0x1e9d, 0x1e9d], /* LATIN SMALL LETTER LONG S WITH HIGH STROKE */ + [0x1e9e, 0xdf], /* LATIN CAPITAL LETTER SHARP S */ + [0x1e9f, 0x1e9f], /* LATIN SMALL LETTER DELTA */ + [0x1ea0, 0x1ea1], /* LATIN CAPITAL LETTER A WITH DOT BELOW */ + [0x1ea0, 0x1ea1], /* LATIN SMALL LETTER A WITH DOT BELOW */ + [0x1ea2, 0x1ea3], /* LATIN CAPITAL LETTER A WITH HOOK ABOVE */ + [0x1ea2, 0x1ea3], /* LATIN SMALL LETTER A WITH HOOK ABOVE */ + [0x1ea4, 0x1ea5], /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE */ + [0x1ea4, 0x1ea5], /* LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE */ + [0x1ea6, 0x1ea7], /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE */ + [0x1ea6, 0x1ea7], /* LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE */ + [0x1ea8, 0x1ea9], /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE */ + [0x1ea8, 0x1ea9], /* LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE */ + [0x1eaa, 0x1eab], /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE */ + [0x1eaa, 0x1eab], /* LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE */ + [0x1eac, 0x1ead], /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW */ + [0x1eac, 0x1ead], /* LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW */ + [0x1eae, 0x1eaf], /* LATIN CAPITAL LETTER A WITH BREVE AND ACUTE */ + [0x1eae, 0x1eaf], /* LATIN SMALL LETTER A WITH BREVE AND ACUTE */ + [0x1eb0, 0x1eb1], /* LATIN CAPITAL LETTER A WITH BREVE AND GRAVE */ + [0x1eb0, 0x1eb1], /* LATIN SMALL LETTER A WITH BREVE AND GRAVE */ + [0x1eb2, 0x1eb3], /* LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE */ + [0x1eb2, 0x1eb3], /* LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE */ + [0x1eb4, 0x1eb5], /* LATIN CAPITAL LETTER A WITH BREVE AND TILDE */ + [0x1eb4, 0x1eb5], /* LATIN SMALL LETTER A WITH BREVE AND TILDE */ + [0x1eb6, 0x1eb7], /* LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW */ + [0x1eb6, 0x1eb7], /* LATIN SMALL LETTER A WITH BREVE AND DOT BELOW */ + [0x1eb8, 0x1eb9], /* LATIN CAPITAL LETTER E WITH DOT BELOW */ + [0x1eb8, 0x1eb9], /* LATIN SMALL LETTER E WITH DOT BELOW */ + [0x1eba, 0x1ebb], /* LATIN CAPITAL LETTER E WITH HOOK ABOVE */ + [0x1eba, 0x1ebb], /* LATIN SMALL LETTER E WITH HOOK ABOVE */ + [0x1ebc, 0x1ebd], /* LATIN CAPITAL LETTER E WITH TILDE */ + [0x1ebc, 0x1ebd], /* LATIN SMALL LETTER E WITH TILDE */ + [0x1ebe, 0x1ebf], /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE */ + [0x1ebe, 0x1ebf], /* LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE */ + [0x1ec0, 0x1ec1], /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE */ + [0x1ec0, 0x1ec1], /* LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE */ + [0x1ec2, 0x1ec3], /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE */ + [0x1ec2, 0x1ec3], /* LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE */ + [0x1ec4, 0x1ec5], /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE */ + [0x1ec4, 0x1ec5], /* LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE */ + [0x1ec6, 0x1ec7], /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW */ + [0x1ec6, 0x1ec7], /* LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW */ + [0x1ec8, 0x1ec9], /* LATIN CAPITAL LETTER I WITH HOOK ABOVE */ + [0x1ec8, 0x1ec9], /* LATIN SMALL LETTER I WITH HOOK ABOVE */ + [0x1eca, 0x1ecb], /* LATIN CAPITAL LETTER I WITH DOT BELOW */ + [0x1eca, 0x1ecb], /* LATIN SMALL LETTER I WITH DOT BELOW */ + [0x1ecc, 0x1ecd], /* LATIN CAPITAL LETTER O WITH DOT BELOW */ + [0x1ecc, 0x1ecd], /* LATIN SMALL LETTER O WITH DOT BELOW */ + [0x1ece, 0x1ecf], /* LATIN CAPITAL LETTER O WITH HOOK ABOVE */ + [0x1ece, 0x1ecf], /* LATIN SMALL LETTER O WITH HOOK ABOVE */ + [0x1ed0, 0x1ed1], /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE */ + [0x1ed0, 0x1ed1], /* LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE */ + [0x1ed2, 0x1ed3], /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE */ + [0x1ed2, 0x1ed3], /* LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE */ + [0x1ed4, 0x1ed5], /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE */ + [0x1ed4, 0x1ed5], /* LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE */ + [0x1ed6, 0x1ed7], /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE */ + [0x1ed6, 0x1ed7], /* LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE */ + [0x1ed8, 0x1ed9], /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW */ + [0x1ed8, 0x1ed9], /* LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW */ + [0x1eda, 0x1edb], /* LATIN CAPITAL LETTER O WITH HORN AND ACUTE */ + [0x1eda, 0x1edb], /* LATIN SMALL LETTER O WITH HORN AND ACUTE */ + [0x1edc, 0x1edd], /* LATIN CAPITAL LETTER O WITH HORN AND GRAVE */ + [0x1edc, 0x1edd], /* LATIN SMALL LETTER O WITH HORN AND GRAVE */ + [0x1ede, 0x1edf], /* LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE */ + [0x1ede, 0x1edf], /* LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE */ + [0x1ee0, 0x1ee1], /* LATIN CAPITAL LETTER O WITH HORN AND TILDE */ + [0x1ee0, 0x1ee1], /* LATIN SMALL LETTER O WITH HORN AND TILDE */ + [0x1ee2, 0x1ee3], /* LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW */ + [0x1ee2, 0x1ee3], /* LATIN SMALL LETTER O WITH HORN AND DOT BELOW */ + [0x1ee4, 0x1ee5], /* LATIN CAPITAL LETTER U WITH DOT BELOW */ + [0x1ee4, 0x1ee5], /* LATIN SMALL LETTER U WITH DOT BELOW */ + [0x1ee6, 0x1ee7], /* LATIN CAPITAL LETTER U WITH HOOK ABOVE */ + [0x1ee6, 0x1ee7], /* LATIN SMALL LETTER U WITH HOOK ABOVE */ + [0x1ee8, 0x1ee9], /* LATIN CAPITAL LETTER U WITH HORN AND ACUTE */ + [0x1ee8, 0x1ee9], /* LATIN SMALL LETTER U WITH HORN AND ACUTE */ + [0x1eea, 0x1eeb], /* LATIN CAPITAL LETTER U WITH HORN AND GRAVE */ + [0x1eea, 0x1eeb], /* LATIN SMALL LETTER U WITH HORN AND GRAVE */ + [0x1eec, 0x1eed], /* LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE */ + [0x1eec, 0x1eed], /* LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE */ + [0x1eee, 0x1eef], /* LATIN CAPITAL LETTER U WITH HORN AND TILDE */ + [0x1eee, 0x1eef], /* LATIN SMALL LETTER U WITH HORN AND TILDE */ + [0x1ef0, 0x1ef1], /* LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW */ + [0x1ef0, 0x1ef1], /* LATIN SMALL LETTER U WITH HORN AND DOT BELOW */ + [0x1ef2, 0x1ef3], /* LATIN CAPITAL LETTER Y WITH GRAVE */ + [0x1ef2, 0x1ef3], /* LATIN SMALL LETTER Y WITH GRAVE */ + [0x1ef4, 0x1ef5], /* LATIN CAPITAL LETTER Y WITH DOT BELOW */ + [0x1ef4, 0x1ef5], /* LATIN SMALL LETTER Y WITH DOT BELOW */ + [0x1ef6, 0x1ef7], /* LATIN CAPITAL LETTER Y WITH HOOK ABOVE */ + [0x1ef6, 0x1ef7], /* LATIN SMALL LETTER Y WITH HOOK ABOVE */ + [0x1ef8, 0x1ef9], /* LATIN CAPITAL LETTER Y WITH TILDE */ + [0x1ef8, 0x1ef9], /* LATIN SMALL LETTER Y WITH TILDE */ + [0x1efa, 0x1efb], /* LATIN CAPITAL LETTER MIDDLE-WELSH LL */ + [0x1efa, 0x1efb], /* LATIN SMALL LETTER MIDDLE-WELSH LL */ + [0x1efc, 0x1efd], /* LATIN CAPITAL LETTER MIDDLE-WELSH V */ + [0x1efc, 0x1efd], /* LATIN SMALL LETTER MIDDLE-WELSH V */ + [0x1efe, 0x1eff], /* LATIN CAPITAL LETTER Y WITH LOOP */ + [0x1efe, 0x1eff], /* LATIN SMALL LETTER Y WITH LOOP */ + [0x1f08, 0x1f00], /* GREEK SMALL LETTER ALPHA WITH PSILI */ + [0x1f09, 0x1f01], /* GREEK SMALL LETTER ALPHA WITH DASIA */ + [0x1f0a, 0x1f02], /* GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA */ + [0x1f0b, 0x1f03], /* GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA */ + [0x1f0c, 0x1f04], /* GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA */ + [0x1f0d, 0x1f05], /* GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA */ + [0x1f0e, 0x1f06], /* GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI */ + [0x1f0f, 0x1f07], /* GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI */ + [0x1f08, 0x1f00], /* GREEK CAPITAL LETTER ALPHA WITH PSILI */ + [0x1f09, 0x1f01], /* GREEK CAPITAL LETTER ALPHA WITH DASIA */ + [0x1f0a, 0x1f02], /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA */ + [0x1f0b, 0x1f03], /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA */ + [0x1f0c, 0x1f04], /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA */ + [0x1f0d, 0x1f05], /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA */ + [0x1f0e, 0x1f06], /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI */ + [0x1f0f, 0x1f07], /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI */ + [0x1f18, 0x1f10], /* GREEK SMALL LETTER EPSILON WITH PSILI */ + [0x1f19, 0x1f11], /* GREEK SMALL LETTER EPSILON WITH DASIA */ + [0x1f1a, 0x1f12], /* GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA */ + [0x1f1b, 0x1f13], /* GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA */ + [0x1f1c, 0x1f14], /* GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA */ + [0x1f1d, 0x1f15], /* GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA */ + [0x1f16, 0x1f16], + [0x1f17, 0x1f17], + [0x1f18, 0x1f10], /* GREEK CAPITAL LETTER EPSILON WITH PSILI */ + [0x1f19, 0x1f11], /* GREEK CAPITAL LETTER EPSILON WITH DASIA */ + [0x1f1a, 0x1f12], /* GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA */ + [0x1f1b, 0x1f13], /* GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA */ + [0x1f1c, 0x1f14], /* GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA */ + [0x1f1d, 0x1f15], /* GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA */ + [0x1f1e, 0x1f1e], + [0x1f1f, 0x1f1f], + [0x1f28, 0x1f20], /* GREEK SMALL LETTER ETA WITH PSILI */ + [0x1f29, 0x1f21], /* GREEK SMALL LETTER ETA WITH DASIA */ + [0x1f2a, 0x1f22], /* GREEK SMALL LETTER ETA WITH PSILI AND VARIA */ + [0x1f2b, 0x1f23], /* GREEK SMALL LETTER ETA WITH DASIA AND VARIA */ + [0x1f2c, 0x1f24], /* GREEK SMALL LETTER ETA WITH PSILI AND OXIA */ + [0x1f2d, 0x1f25], /* GREEK SMALL LETTER ETA WITH DASIA AND OXIA */ + [0x1f2e, 0x1f26], /* GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI */ + [0x1f2f, 0x1f27], /* GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI */ + [0x1f28, 0x1f20], /* GREEK CAPITAL LETTER ETA WITH PSILI */ + [0x1f29, 0x1f21], /* GREEK CAPITAL LETTER ETA WITH DASIA */ + [0x1f2a, 0x1f22], /* GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA */ + [0x1f2b, 0x1f23], /* GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA */ + [0x1f2c, 0x1f24], /* GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA */ + [0x1f2d, 0x1f25], /* GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA */ + [0x1f2e, 0x1f26], /* GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI */ + [0x1f2f, 0x1f27], /* GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI */ + [0x1f38, 0x1f30], /* GREEK SMALL LETTER IOTA WITH PSILI */ + [0x1f39, 0x1f31], /* GREEK SMALL LETTER IOTA WITH DASIA */ + [0x1f3a, 0x1f32], /* GREEK SMALL LETTER IOTA WITH PSILI AND VARIA */ + [0x1f3b, 0x1f33], /* GREEK SMALL LETTER IOTA WITH DASIA AND VARIA */ + [0x1f3c, 0x1f34], /* GREEK SMALL LETTER IOTA WITH PSILI AND OXIA */ + [0x1f3d, 0x1f35], /* GREEK SMALL LETTER IOTA WITH DASIA AND OXIA */ + [0x1f3e, 0x1f36], /* GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI */ + [0x1f3f, 0x1f37], /* GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI */ + [0x1f38, 0x1f30], /* GREEK CAPITAL LETTER IOTA WITH PSILI */ + [0x1f39, 0x1f31], /* GREEK CAPITAL LETTER IOTA WITH DASIA */ + [0x1f3a, 0x1f32], /* GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA */ + [0x1f3b, 0x1f33], /* GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA */ + [0x1f3c, 0x1f34], /* GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA */ + [0x1f3d, 0x1f35], /* GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA */ + [0x1f3e, 0x1f36], /* GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI */ + [0x1f3f, 0x1f37], /* GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI */ + [0x1f48, 0x1f40], /* GREEK SMALL LETTER OMICRON WITH PSILI */ + [0x1f49, 0x1f41], /* GREEK SMALL LETTER OMICRON WITH DASIA */ + [0x1f4a, 0x1f42], /* GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA */ + [0x1f4b, 0x1f43], /* GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA */ + [0x1f4c, 0x1f44], /* GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA */ + [0x1f4d, 0x1f45], /* GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA */ + [0x1f46, 0x1f46], + [0x1f47, 0x1f47], + [0x1f48, 0x1f40], /* GREEK CAPITAL LETTER OMICRON WITH PSILI */ + [0x1f49, 0x1f41], /* GREEK CAPITAL LETTER OMICRON WITH DASIA */ + [0x1f4a, 0x1f42], /* GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA */ + [0x1f4b, 0x1f43], /* GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA */ + [0x1f4c, 0x1f44], /* GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA */ + [0x1f4d, 0x1f45], /* GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA */ + [0x1f4e, 0x1f4e], + [0x1f4f, 0x1f4f], + [0x1f50, 0x1f50], /* GREEK SMALL LETTER UPSILON WITH PSILI */ + [0x1f59, 0x1f51], /* GREEK SMALL LETTER UPSILON WITH DASIA */ + [0x1f52, 0x1f52], /* GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA */ + [0x1f5b, 0x1f53], /* GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA */ + [0x1f54, 0x1f54], /* GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA */ + [0x1f5d, 0x1f55], /* GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA */ + [0x1f56, 0x1f56], /* GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI */ + [0x1f5f, 0x1f57], /* GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI */ + [0x1f58, 0x1f58], + [0x1f59, 0x1f51], /* GREEK CAPITAL LETTER UPSILON WITH DASIA */ + [0x1f5a, 0x1f5a], + [0x1f5b, 0x1f53], /* GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA */ + [0x1f5c, 0x1f5c], + [0x1f5d, 0x1f55], /* GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA */ + [0x1f5e, 0x1f5e], + [0x1f5f, 0x1f57], /* GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI */ + [0x1f68, 0x1f60], /* GREEK SMALL LETTER OMEGA WITH PSILI */ + [0x1f69, 0x1f61], /* GREEK SMALL LETTER OMEGA WITH DASIA */ + [0x1f6a, 0x1f62], /* GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA */ + [0x1f6b, 0x1f63], /* GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA */ + [0x1f6c, 0x1f64], /* GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA */ + [0x1f6d, 0x1f65], /* GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA */ + [0x1f6e, 0x1f66], /* GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI */ + [0x1f6f, 0x1f67], /* GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI */ + [0x1f68, 0x1f60], /* GREEK CAPITAL LETTER OMEGA WITH PSILI */ + [0x1f69, 0x1f61], /* GREEK CAPITAL LETTER OMEGA WITH DASIA */ + [0x1f6a, 0x1f62], /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA */ + [0x1f6b, 0x1f63], /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA */ + [0x1f6c, 0x1f64], /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA */ + [0x1f6d, 0x1f65], /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA */ + [0x1f6e, 0x1f66], /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI */ + [0x1f6f, 0x1f67], /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI */ + [0x1fba, 0x1f70], /* GREEK SMALL LETTER ALPHA WITH VARIA */ + [0x1fbb, 0x1f71], /* GREEK SMALL LETTER ALPHA WITH OXIA */ + [0x1fc8, 0x1f72], /* GREEK SMALL LETTER EPSILON WITH VARIA */ + [0x1fc9, 0x1f73], /* GREEK SMALL LETTER EPSILON WITH OXIA */ + [0x1fca, 0x1f74], /* GREEK SMALL LETTER ETA WITH VARIA */ + [0x1fcb, 0x1f75], /* GREEK SMALL LETTER ETA WITH OXIA */ + [0x1fda, 0x1f76], /* GREEK SMALL LETTER IOTA WITH VARIA */ + [0x1fdb, 0x1f77], /* GREEK SMALL LETTER IOTA WITH OXIA */ + [0x1ff8, 0x1f78], /* GREEK SMALL LETTER OMICRON WITH VARIA */ + [0x1ff9, 0x1f79], /* GREEK SMALL LETTER OMICRON WITH OXIA */ + [0x1fea, 0x1f7a], /* GREEK SMALL LETTER UPSILON WITH VARIA */ + [0x1feb, 0x1f7b], /* GREEK SMALL LETTER UPSILON WITH OXIA */ + [0x1ffa, 0x1f7c], /* GREEK SMALL LETTER OMEGA WITH VARIA */ + [0x1ffb, 0x1f7d], /* GREEK SMALL LETTER OMEGA WITH OXIA */ + [0x1f7e, 0x1f7e], + [0x1f7f, 0x1f7f], + [0x1f88, 0x1f80], /* GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI */ + [0x1f89, 0x1f81], /* GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI */ + [0x1f8a, 0x1f82], /* GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI */ + [0x1f8b, 0x1f83], /* GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI */ + [0x1f8c, 0x1f84], /* GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI */ + [0x1f8d, 0x1f85], /* GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI */ + [0x1f8e, 0x1f86], /* GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI */ + [0x1f8f, 0x1f87], /* GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI */ + [0x1f88, 0x1f80], /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI */ + [0x1f89, 0x1f81], /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI */ + [0x1f8a, 0x1f82], /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI */ + [0x1f8b, 0x1f83], /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI */ + [0x1f8c, 0x1f84], /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI */ + [0x1f8d, 0x1f85], /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI */ + [0x1f8e, 0x1f86], /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI */ + [0x1f8f, 0x1f87], /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI */ + [0x1f98, 0x1f90], /* GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI */ + [0x1f99, 0x1f91], /* GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI */ + [0x1f9a, 0x1f92], /* GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI */ + [0x1f9b, 0x1f93], /* GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI */ + [0x1f9c, 0x1f94], /* GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI */ + [0x1f9d, 0x1f95], /* GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI */ + [0x1f9e, 0x1f96], /* GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI */ + [0x1f9f, 0x1f97], /* GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI */ + [0x1f98, 0x1f90], /* GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI */ + [0x1f99, 0x1f91], /* GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI */ + [0x1f9a, 0x1f92], /* GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI */ + [0x1f9b, 0x1f93], /* GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI */ + [0x1f9c, 0x1f94], /* GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI */ + [0x1f9d, 0x1f95], /* GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI */ + [0x1f9e, 0x1f96], /* GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI */ + [0x1f9f, 0x1f97], /* GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI */ + [0x1fa8, 0x1fa0], /* GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI */ + [0x1fa9, 0x1fa1], /* GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI */ + [0x1faa, 0x1fa2], /* GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI */ + [0x1fab, 0x1fa3], /* GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI */ + [0x1fac, 0x1fa4], /* GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI */ + [0x1fad, 0x1fa5], /* GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI */ + [0x1fae, 0x1fa6], /* GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI */ + [0x1faf, 0x1fa7], /* GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI */ + [0x1fa8, 0x1fa0], /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI */ + [0x1fa9, 0x1fa1], /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI */ + [0x1faa, 0x1fa2], /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI */ + [0x1fab, 0x1fa3], /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI */ + [0x1fac, 0x1fa4], /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI */ + [0x1fad, 0x1fa5], /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI */ + [0x1fae, 0x1fa6], /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI */ + [0x1faf, 0x1fa7], /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI */ + [0x1fb8, 0x1fb0], /* GREEK SMALL LETTER ALPHA WITH VRACHY */ + [0x1fb9, 0x1fb1], /* GREEK SMALL LETTER ALPHA WITH MACRON */ + [0x1fb2, 0x1fb2], /* GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI */ + [0x1fbc, 0x1fb3], /* GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI */ + [0x1fb4, 0x1fb4], /* GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI */ + [0x1fb5, 0x1fb5], + [0x1fb6, 0x1fb6], /* GREEK SMALL LETTER ALPHA WITH PERISPOMENI */ + [0x1fb7, 0x1fb7], /* GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI */ + [0x1fb8, 0x1fb0], /* GREEK CAPITAL LETTER ALPHA WITH VRACHY */ + [0x1fb9, 0x1fb1], /* GREEK CAPITAL LETTER ALPHA WITH MACRON */ + [0x1fba, 0x1f70], /* GREEK CAPITAL LETTER ALPHA WITH VARIA */ + [0x1fbb, 0x1f71], /* GREEK CAPITAL LETTER ALPHA WITH OXIA */ + [0x1fbc, 0x1fb3], /* GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI */ + [0x1fbd, 0x1fbd], /* GREEK KORONIS */ + [0x399, 0x1fbe], /* GREEK PROSGEGRAMMENI */ + [0x1fbf, 0x1fbf], /* GREEK PSILI */ + [0x1fc0, 0x1fc0], /* GREEK PERISPOMENI */ + [0x1fc1, 0x1fc1], /* GREEK DIALYTIKA AND PERISPOMENI */ + [0x1fc2, 0x1fc2], /* GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI */ + [0x1fcc, 0x1fc3], /* GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI */ + [0x1fc4, 0x1fc4], /* GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI */ + [0x1fc5, 0x1fc5], + [0x1fc6, 0x1fc6], /* GREEK SMALL LETTER ETA WITH PERISPOMENI */ + [0x1fc7, 0x1fc7], /* GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI */ + [0x1fc8, 0x1f72], /* GREEK CAPITAL LETTER EPSILON WITH VARIA */ + [0x1fc9, 0x1f73], /* GREEK CAPITAL LETTER EPSILON WITH OXIA */ + [0x1fca, 0x1f74], /* GREEK CAPITAL LETTER ETA WITH VARIA */ + [0x1fcb, 0x1f75], /* GREEK CAPITAL LETTER ETA WITH OXIA */ + [0x1fcc, 0x1fc3], /* GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI */ + [0x1fcd, 0x1fcd], /* GREEK PSILI AND VARIA */ + [0x1fce, 0x1fce], /* GREEK PSILI AND OXIA */ + [0x1fcf, 0x1fcf], /* GREEK PSILI AND PERISPOMENI */ + [0x1fd8, 0x1fd0], /* GREEK SMALL LETTER IOTA WITH VRACHY */ + [0x1fd9, 0x1fd1], /* GREEK SMALL LETTER IOTA WITH MACRON */ + [0x1fd2, 0x1fd2], /* GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA */ + [0x1fd3, 0x1fd3], /* GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA */ + [0x1fd4, 0x1fd4], + [0x1fd5, 0x1fd5], + [0x1fd6, 0x1fd6], /* GREEK SMALL LETTER IOTA WITH PERISPOMENI */ + [0x1fd7, 0x1fd7], /* GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI */ + [0x1fd8, 0x1fd0], /* GREEK CAPITAL LETTER IOTA WITH VRACHY */ + [0x1fd9, 0x1fd1], /* GREEK CAPITAL LETTER IOTA WITH MACRON */ + [0x1fda, 0x1f76], /* GREEK CAPITAL LETTER IOTA WITH VARIA */ + [0x1fdb, 0x1f77], /* GREEK CAPITAL LETTER IOTA WITH OXIA */ + [0x1fdc, 0x1fdc], + [0x1fdd, 0x1fdd], /* GREEK DASIA AND VARIA */ + [0x1fde, 0x1fde], /* GREEK DASIA AND OXIA */ + [0x1fdf, 0x1fdf], /* GREEK DASIA AND PERISPOMENI */ + [0x1fe8, 0x1fe0], /* GREEK SMALL LETTER UPSILON WITH VRACHY */ + [0x1fe9, 0x1fe1], /* GREEK SMALL LETTER UPSILON WITH MACRON */ + [0x1fe2, 0x1fe2], /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA */ + [0x1fe3, 0x1fe3], /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA */ + [0x1fe4, 0x1fe4], /* GREEK SMALL LETTER RHO WITH PSILI */ + [0x1fec, 0x1fe5], /* GREEK SMALL LETTER RHO WITH DASIA */ + [0x1fe6, 0x1fe6], /* GREEK SMALL LETTER UPSILON WITH PERISPOMENI */ + [0x1fe7, 0x1fe7], /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI */ + [0x1fe8, 0x1fe0], /* GREEK CAPITAL LETTER UPSILON WITH VRACHY */ + [0x1fe9, 0x1fe1], /* GREEK CAPITAL LETTER UPSILON WITH MACRON */ + [0x1fea, 0x1f7a], /* GREEK CAPITAL LETTER UPSILON WITH VARIA */ + [0x1feb, 0x1f7b], /* GREEK CAPITAL LETTER UPSILON WITH OXIA */ + [0x1fec, 0x1fe5], /* GREEK CAPITAL LETTER RHO WITH DASIA */ + [0x1fed, 0x1fed], /* GREEK DIALYTIKA AND VARIA */ + [0x1fee, 0x1fee], /* GREEK DIALYTIKA AND OXIA */ + [0x1fef, 0x1fef], /* GREEK VARIA */ + [0x1ff0, 0x1ff0], + [0x1ff1, 0x1ff1], + [0x1ff2, 0x1ff2], /* GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI */ + [0x1ffc, 0x1ff3], /* GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI */ + [0x1ff4, 0x1ff4], /* GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI */ + [0x1ff5, 0x1ff5], + [0x1ff6, 0x1ff6], /* GREEK SMALL LETTER OMEGA WITH PERISPOMENI */ + [0x1ff7, 0x1ff7], /* GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI */ + [0x1ff8, 0x1f78], /* GREEK CAPITAL LETTER OMICRON WITH VARIA */ + [0x1ff9, 0x1f79], /* GREEK CAPITAL LETTER OMICRON WITH OXIA */ + [0x1ffa, 0x1f7c], /* GREEK CAPITAL LETTER OMEGA WITH VARIA */ + [0x1ffb, 0x1f7d], /* GREEK CAPITAL LETTER OMEGA WITH OXIA */ + [0x1ffc, 0x1ff3], /* GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI */ + [0x1ffd, 0x1ffd], /* GREEK OXIA */ + [0x1ffe, 0x1ffe], /* GREEK DASIA */ + [0x1fff, 0x1fff], + [0x2000, 0x2000], /* EN QUAD */ + [0x2001, 0x2001], /* EM QUAD */ + [0x2002, 0x2002], /* EN SPACE */ + [0x2003, 0x2003], /* EM SPACE */ + [0x2004, 0x2004], /* THREE-PER-EM SPACE */ + [0x2005, 0x2005], /* FOUR-PER-EM SPACE */ + [0x2006, 0x2006], /* SIX-PER-EM SPACE */ + [0x2007, 0x2007], /* FIGURE SPACE */ + [0x2008, 0x2008], /* PUNCTUATION SPACE */ + [0x2009, 0x2009], /* THIN SPACE */ + [0x200a, 0x200a], /* HAIR SPACE */ + [0x200b, 0x200b], /* ZERO WIDTH SPACE */ + [0x200c, 0x200c], /* ZERO WIDTH NON-JOINER */ + [0x200d, 0x200d], /* ZERO WIDTH JOINER */ + [0x200e, 0x200e], /* LEFT-TO-RIGHT MARK */ + [0x200f, 0x200f], /* RIGHT-TO-LEFT MARK */ + [0x2010, 0x2010], /* HYPHEN */ + [0x2011, 0x2011], /* NON-BREAKING HYPHEN */ + [0x2012, 0x2012], /* FIGURE DASH */ + [0x2013, 0x2013], /* EN DASH */ + [0x2014, 0x2014], /* EM DASH */ + [0x2015, 0x2015], /* HORIZONTAL BAR (QUOTATION DASH) */ + [0x2016, 0x2016], /* DOUBLE VERTICAL LINE (DOUBLE VERTICAL BAR) */ + [0x2017, 0x2017], /* DOUBLE LOW LINE (SPACING DOUBLE UNDERSCORE) */ + [0x2018, 0x2018], /* LEFT SINGLE QUOTATION MARK (SINGLE TURNED COMMA QUOTATION MARK) */ + [0x2019, 0x2019], /* RIGHT SINGLE QUOTATION MARK (SINGLE COMMA QUOTATION MARK) */ + [0x201a, 0x201a], /* SINGLE LOW-9 QUOTATION MARK (LOW SINGLE COMMA QUOTATION MARK) */ + [0x201b, 0x201b], /* SINGLE HIGH-REVERSED-9 QUOTATION MARK (SINGLE REVERSED COMMA QUOTATION MARK) */ + [0x201c, 0x201c], /* LEFT DOUBLE QUOTATION MARK (DOUBLE TURNED COMMA QUOTATION MARK) */ + [0x201d, 0x201d], /* RIGHT DOUBLE QUOTATION MARK (DOUBLE COMMA QUOTATION MARK) */ + [0x201e, 0x201e], /* DOUBLE LOW-9 QUOTATION MARK (LOW DOUBLE COMMA QUOTATION MARK) */ + [0x201f, 0x201f], /* DOUBLE HIGH-REVERSED-9 QUOTATION MARK (DOUBLE REVERSED COMMA QUOTATION MARK) */ + [0x2020, 0x2020], /* DAGGER */ + [0x2021, 0x2021], /* DOUBLE DAGGER */ + [0x2022, 0x2022], /* BULLET */ + [0x2023, 0x2023], /* TRIANGULAR BULLET */ + [0x2024, 0x2024], /* ONE DOT LEADER */ + [0x2025, 0x2025], /* TWO DOT LEADER */ + [0x2026, 0x2026], /* HORIZONTAL ELLIPSIS */ + [0x2027, 0x2027], /* HYPHENATION POINT */ + [0x2028, 0x2028], /* LINE SEPARATOR */ + [0x2029, 0x2029], /* PARAGRAPH SEPARATOR */ + [0x202a, 0x202a], /* LEFT-TO-RIGHT EMBEDDING */ + [0x202b, 0x202b], /* RIGHT-TO-LEFT EMBEDDING */ + [0x202c, 0x202c], /* POP DIRECTIONAL FORMATTING */ + [0x202d, 0x202d], /* LEFT-TO-RIGHT OVERRIDE */ + [0x202e, 0x202e], /* RIGHT-TO-LEFT OVERRIDE */ + [0x202f, 0x202f], /* NARROW NO-BREAK SPACE */ + [0x2030, 0x2030], /* PER MILLE SIGN */ + [0x2031, 0x2031], /* PER TEN THOUSAND SIGN */ + [0x2032, 0x2032], /* PRIME */ + [0x2033, 0x2033], /* DOUBLE PRIME */ + [0x2034, 0x2034], /* TRIPLE PRIME */ + [0x2035, 0x2035], /* REVERSED PRIME */ + [0x2036, 0x2036], /* REVERSED DOUBLE PRIME */ + [0x2037, 0x2037], /* REVERSED TRIPLE PRIME */ + [0x2038, 0x2038], /* CARET */ + [0x2039, 0x2039], /* SINGLE LEFT-POINTING ANGLE QUOTATION MARK (LEFT POINTING SINGLE GUILLEMET) */ + [0x203a, 0x203a], /* SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (RIGHT POINTING SINGLE GUILLEMET) */ + [0x203b, 0x203b], /* REFERENCE MARK */ + [0x203c, 0x203c], /* DOUBLE EXCLAMATION MARK */ + [0x203d, 0x203d], /* INTERROBANG */ + [0x203e, 0x203e], /* OVERLINE (SPACING OVERSCORE) */ + [0x203f, 0x203f], /* UNDERTIE */ + [0x2040, 0x2040], /* CHARACTER TIE */ + [0x2041, 0x2041], /* CARET INSERTION POINT */ + [0x2042, 0x2042], /* ASTERISM */ + [0x2043, 0x2043], /* HYPHEN BULLET */ + [0x2044, 0x2044], /* FRACTION SLASH */ + [0x2045, 0x2045], /* LEFT SQUARE BRACKET WITH QUILL */ + [0x2046, 0x2046], /* RIGHT SQUARE BRACKET WITH QUILL */ + [0x2047, 0x2047], /* DOUBLE QUESTION MARK */ + [0x2048, 0x2048], /* QUESTION EXCLAMATION MARK */ + [0x2049, 0x2049], /* EXCLAMATION QUESTION MARK */ + [0x204a, 0x204a], /* TIRONIAN SIGN ET */ + [0x204b, 0x204b], /* REVERSED PILCROW SIGN */ + [0x204c, 0x204c], /* BLACK LEFTWARDS BULLET */ + [0x204d, 0x204d], /* BLACK RIGHTWARDS BULLET */ + [0x204e, 0x204e], /* LOW ASTERISK */ + [0x204f, 0x204f], /* REVERSED SEMICOLON */ + [0x2050, 0x2050], /* CLOSE UP */ + [0x2051, 0x2051], /* TWO ASTERISKS ALIGNED VERTICALLY */ + [0x2052, 0x2052], /* COMMERCIAL MINUS SIGN */ + [0x2053, 0x2053], /* SWUNG DASH */ + [0x2054, 0x2054], /* INVERTED UNDERTIE */ + [0x2055, 0x2055], /* FLOWER PUNCTUATION MARK */ + [0x2056, 0x2056], /* THREE DOT PUNCTUATION */ + [0x2057, 0x2057], /* QUADRUPLE PRIME */ + [0x2058, 0x2058], /* FOUR DOT PUNCTUATION */ + [0x2059, 0x2059], /* FIVE DOT PUNCTUATION */ + [0x205a, 0x205a], /* TWO DOT PUNCTUATION */ + [0x205b, 0x205b], /* FOUR DOT MARK */ + [0x205c, 0x205c], /* DOTTED CROSS */ + [0x205d, 0x205d], /* TRICOLON */ + [0x205e, 0x205e], /* VERTICAL FOUR DOTS */ + [0x205f, 0x205f], /* MEDIUM MATHEMATICAL SPACE */ + [0x2060, 0x2060], /* WORD JOINER */ + [0x2061, 0x2061], /* FUNCTION APPLICATION */ + [0x2062, 0x2062], /* INVISIBLE TIMES */ + [0x2063, 0x2063], /* INVISIBLE SEPARATOR */ + [0x2064, 0x2064], /* INVISIBLE PLUS */ + [0x2065, 0x2065], + [0x2066, 0x2066], /* LEFT-TO-RIGHT ISOLATE */ + [0x2067, 0x2067], /* RIGHT-TO-LEFT ISOLATE */ + [0x2068, 0x2068], /* FIRST STRONG ISOLATE */ + [0x2069, 0x2069], /* POP DIRECTIONAL ISOLATE */ + [0x206a, 0x206a], /* INHIBIT SYMMETRIC SWAPPING */ + [0x206b, 0x206b], /* ACTIVATE SYMMETRIC SWAPPING */ + [0x206c, 0x206c], /* INHIBIT ARABIC FORM SHAPING */ + [0x206d, 0x206d], /* ACTIVATE ARABIC FORM SHAPING */ + [0x206e, 0x206e], /* NATIONAL DIGIT SHAPES */ + [0x206f, 0x206f], /* NOMINAL DIGIT SHAPES */ + [0x2070, 0x2070], /* SUPERSCRIPT ZERO (SUPERSCRIPT DIGIT ZERO) */ + [0x2071, 0x2071], /* SUPERSCRIPT LATIN SMALL LETTER I */ + [0x2072, 0x2072], + [0x2073, 0x2073], + [0x2074, 0x2074], /* SUPERSCRIPT FOUR (SUPERSCRIPT DIGIT FOUR) */ + [0x2075, 0x2075], /* SUPERSCRIPT FIVE (SUPERSCRIPT DIGIT FIVE) */ + [0x2076, 0x2076], /* SUPERSCRIPT SIX (SUPERSCRIPT DIGIT SIX) */ + [0x2077, 0x2077], /* SUPERSCRIPT SEVEN (SUPERSCRIPT DIGIT SEVEN) */ + [0x2078, 0x2078], /* SUPERSCRIPT EIGHT (SUPERSCRIPT DIGIT EIGHT) */ + [0x2079, 0x2079], /* SUPERSCRIPT NINE (SUPERSCRIPT DIGIT NINE) */ + [0x207a, 0x207a], /* SUPERSCRIPT PLUS SIGN */ + [0x207b, 0x207b], /* SUPERSCRIPT MINUS (SUPERSCRIPT HYPHEN-MINUS) */ + [0x207c, 0x207c], /* SUPERSCRIPT EQUALS SIGN */ + [0x207d, 0x207d], /* SUPERSCRIPT LEFT PARENTHESIS (SUPERSCRIPT OPENING PARENTHESIS) */ + [0x207e, 0x207e], /* SUPERSCRIPT RIGHT PARENTHESIS (SUPERSCRIPT CLOSING PARENTHESIS) */ + [0x207f, 0x207f], /* SUPERSCRIPT LATIN SMALL LETTER N */ + [0x2080, 0x2080], /* SUBSCRIPT ZERO (SUBSCRIPT DIGIT ZERO) */ + [0x2081, 0x2081], /* SUBSCRIPT ONE (SUBSCRIPT DIGIT ONE) */ + [0x2082, 0x2082], /* SUBSCRIPT TWO (SUBSCRIPT DIGIT TWO) */ + [0x2083, 0x2083], /* SUBSCRIPT THREE (SUBSCRIPT DIGIT THREE) */ + [0x2084, 0x2084], /* SUBSCRIPT FOUR (SUBSCRIPT DIGIT FOUR) */ + [0x2085, 0x2085], /* SUBSCRIPT FIVE (SUBSCRIPT DIGIT FIVE) */ + [0x2086, 0x2086], /* SUBSCRIPT SIX (SUBSCRIPT DIGIT SIX) */ + [0x2087, 0x2087], /* SUBSCRIPT SEVEN (SUBSCRIPT DIGIT SEVEN) */ + [0x2088, 0x2088], /* SUBSCRIPT EIGHT (SUBSCRIPT DIGIT EIGHT) */ + [0x2089, 0x2089], /* SUBSCRIPT NINE (SUBSCRIPT DIGIT NINE) */ + [0x208a, 0x208a], /* SUBSCRIPT PLUS SIGN */ + [0x208b, 0x208b], /* SUBSCRIPT MINUS (SUBSCRIPT HYPHEN-MINUS) */ + [0x208c, 0x208c], /* SUBSCRIPT EQUALS SIGN */ + [0x208d, 0x208d], /* SUBSCRIPT LEFT PARENTHESIS (SUBSCRIPT OPENING PARENTHESIS) */ + [0x208e, 0x208e], /* SUBSCRIPT RIGHT PARENTHESIS (SUBSCRIPT CLOSING PARENTHESIS) */ + [0x208f, 0x208f], + [0x2090, 0x2090], /* LATIN SUBSCRIPT SMALL LETTER A */ + [0x2091, 0x2091], /* LATIN SUBSCRIPT SMALL LETTER E */ + [0x2092, 0x2092], /* LATIN SUBSCRIPT SMALL LETTER O */ + [0x2093, 0x2093], /* LATIN SUBSCRIPT SMALL LETTER X */ + [0x2094, 0x2094], /* LATIN SUBSCRIPT SMALL LETTER SCHWA */ + [0x2095, 0x2095], /* LATIN SUBSCRIPT SMALL LETTER H */ + [0x2096, 0x2096], /* LATIN SUBSCRIPT SMALL LETTER K */ + [0x2097, 0x2097], /* LATIN SUBSCRIPT SMALL LETTER L */ + [0x2098, 0x2098], /* LATIN SUBSCRIPT SMALL LETTER M */ + [0x2099, 0x2099], /* LATIN SUBSCRIPT SMALL LETTER N */ + [0x209a, 0x209a], /* LATIN SUBSCRIPT SMALL LETTER P */ + [0x209b, 0x209b], /* LATIN SUBSCRIPT SMALL LETTER S */ + [0x209c, 0x209c], /* LATIN SUBSCRIPT SMALL LETTER T */ + [0x209d, 0x209d], + [0x209e, 0x209e], + [0x209f, 0x209f], + [0x20a0, 0x20a0], /* EURO-CURRENCY SIGN */ + [0x20a1, 0x20a1], /* COLON SIGN */ + [0x20a2, 0x20a2], /* CRUZEIRO SIGN */ + [0x20a3, 0x20a3], /* FRENCH FRANC SIGN */ + [0x20a4, 0x20a4], /* LIRA SIGN */ + [0x20a5, 0x20a5], /* MILL SIGN */ + [0x20a6, 0x20a6], /* NAIRA SIGN */ + [0x20a7, 0x20a7], /* PESETA SIGN */ + [0x20a8, 0x20a8], /* RUPEE SIGN */ + [0x20a9, 0x20a9], /* WON SIGN */ + [0x20aa, 0x20aa], /* NEW SHEQEL SIGN */ + [0x20ab, 0x20ab], /* DONG SIGN */ + [0x20ac, 0x20ac], /* EURO SIGN */ + [0x20ad, 0x20ad], /* KIP SIGN */ + [0x20ae, 0x20ae], /* TUGRIK SIGN */ + [0x20af, 0x20af], /* DRACHMA SIGN */ + [0x20b0, 0x20b0], /* GERMAN PENNY SIGN */ + [0x20b1, 0x20b1], /* PESO SIGN */ + [0x20b2, 0x20b2], /* GUARANI SIGN */ + [0x20b3, 0x20b3], /* AUSTRAL SIGN */ + [0x20b4, 0x20b4], /* HRYVNIA SIGN */ + [0x20b5, 0x20b5], /* CEDI SIGN */ + [0x20b6, 0x20b6], /* LIVRE TOURNOIS SIGN */ + [0x20b7, 0x20b7], /* SPESMILO SIGN */ + [0x20b8, 0x20b8], /* TENGE SIGN */ + [0x20b9, 0x20b9], /* INDIAN RUPEE SIGN */ + [0x20ba, 0x20ba], /* TURKISH LIRA SIGN */ + [0x20bb, 0x20bb], /* NORDIC MARK SIGN */ + [0x20bc, 0x20bc], /* MANAT SIGN */ + [0x20bd, 0x20bd], /* RUBLE SIGN */ + [0x20be, 0x20be], /* LARI SIGN */ + [0x20bf, 0x20bf], + [0x20c0, 0x20c0], + [0x20c1, 0x20c1], + [0x20c2, 0x20c2], + [0x20c3, 0x20c3], + [0x20c4, 0x20c4], + [0x20c5, 0x20c5], + [0x20c6, 0x20c6], + [0x20c7, 0x20c7], + [0x20c8, 0x20c8], + [0x20c9, 0x20c9], + [0x20ca, 0x20ca], + [0x20cb, 0x20cb], + [0x20cc, 0x20cc], + [0x20cd, 0x20cd], + [0x20ce, 0x20ce], + [0x20cf, 0x20cf], + [0x20d0, 0x20d0], /* COMBINING LEFT HARPOON ABOVE (NON-SPACING LEFT HARPOON ABOVE) */ + [0x20d1, 0x20d1], /* COMBINING RIGHT HARPOON ABOVE (NON-SPACING RIGHT HARPOON ABOVE) */ + [0x20d2, 0x20d2], /* COMBINING LONG VERTICAL LINE OVERLAY (NON-SPACING LONG VERTICAL BAR OVERLAY) */ + [0x20d3, 0x20d3], /* COMBINING SHORT VERTICAL LINE OVERLAY (NON-SPACING SHORT VERTICAL BAR OVERLAY) */ + [0x20d4, 0x20d4], /* COMBINING ANTICLOCKWISE ARROW ABOVE (NON-SPACING ANTICLOCKWISE ARROW ABOVE) */ + [0x20d5, 0x20d5], /* COMBINING CLOCKWISE ARROW ABOVE (NON-SPACING CLOCKWISE ARROW ABOVE) */ + [0x20d6, 0x20d6], /* COMBINING LEFT ARROW ABOVE (NON-SPACING LEFT ARROW ABOVE) */ + [0x20d7, 0x20d7], /* COMBINING RIGHT ARROW ABOVE (NON-SPACING RIGHT ARROW ABOVE) */ + [0x20d8, 0x20d8], /* COMBINING RING OVERLAY (NON-SPACING RING OVERLAY) */ + [0x20d9, 0x20d9], /* COMBINING CLOCKWISE RING OVERLAY (NON-SPACING CLOCKWISE RING OVERLAY) */ + [0x20da, 0x20da], /* COMBINING ANTICLOCKWISE RING OVERLAY (NON-SPACING ANTICLOCKWISE RING OVERLAY) */ + [0x20db, 0x20db], /* COMBINING THREE DOTS ABOVE (NON-SPACING THREE DOTS ABOVE) */ + [0x20dc, 0x20dc], /* COMBINING FOUR DOTS ABOVE (NON-SPACING FOUR DOTS ABOVE) */ + [0x20dd, 0x20dd], /* COMBINING ENCLOSING CIRCLE (ENCLOSING CIRCLE) */ + [0x20de, 0x20de], /* COMBINING ENCLOSING SQUARE (ENCLOSING SQUARE) */ + [0x20df, 0x20df], /* COMBINING ENCLOSING DIAMOND (ENCLOSING DIAMOND) */ + [0x20e0, 0x20e0], /* COMBINING ENCLOSING CIRCLE BACKSLASH (ENCLOSING CIRCLE SLASH) */ + [0x20e1, 0x20e1], /* COMBINING LEFT RIGHT ARROW ABOVE (NON-SPACING LEFT RIGHT ARROW ABOVE) */ + [0x20e2, 0x20e2], /* COMBINING ENCLOSING SCREEN */ + [0x20e3, 0x20e3], /* COMBINING ENCLOSING KEYCAP */ + [0x20e4, 0x20e4], /* COMBINING ENCLOSING UPWARD POINTING TRIANGLE */ + [0x20e5, 0x20e5], /* COMBINING REVERSE SOLIDUS OVERLAY */ + [0x20e6, 0x20e6], /* COMBINING DOUBLE VERTICAL STROKE OVERLAY */ + [0x20e7, 0x20e7], /* COMBINING ANNUITY SYMBOL */ + [0x20e8, 0x20e8], /* COMBINING TRIPLE UNDERDOT */ + [0x20e9, 0x20e9], /* COMBINING WIDE BRIDGE ABOVE */ + [0x20ea, 0x20ea], /* COMBINING LEFTWARDS ARROW OVERLAY */ + [0x20eb, 0x20eb], /* COMBINING LONG DOUBLE SOLIDUS OVERLAY */ + [0x20ec, 0x20ec], /* COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS */ + [0x20ed, 0x20ed], /* COMBINING LEFTWARDS HARPOON WITH BARB DOWNWARDS */ + [0x20ee, 0x20ee], /* COMBINING LEFT ARROW BELOW */ + [0x20ef, 0x20ef], /* COMBINING RIGHT ARROW BELOW */ + [0x20f0, 0x20f0], /* COMBINING ASTERISK ABOVE */ + [0x20f1, 0x20f1], + [0x20f2, 0x20f2], + [0x20f3, 0x20f3], + [0x20f4, 0x20f4], + [0x20f5, 0x20f5], + [0x20f6, 0x20f6], + [0x20f7, 0x20f7], + [0x20f8, 0x20f8], + [0x20f9, 0x20f9], + [0x20fa, 0x20fa], + [0x20fb, 0x20fb], + [0x20fc, 0x20fc], + [0x20fd, 0x20fd], + [0x20fe, 0x20fe], + [0x20ff, 0x20ff], + [0x2100, 0x2100], /* ACCOUNT OF */ + [0x2101, 0x2101], /* ADDRESSED TO THE SUBJECT */ + [0x2102, 0x2102], /* DOUBLE-STRUCK CAPITAL C (DOUBLE-STRUCK C) */ + [0x2103, 0x2103], /* DEGREE CELSIUS (DEGREES CENTIGRADE) */ + [0x2104, 0x2104], /* CENTRE LINE SYMBOL (C L SYMBOL) */ + [0x2105, 0x2105], /* CARE OF */ + [0x2106, 0x2106], /* CADA UNA */ + [0x2107, 0x2107], /* EULER CONSTANT (EULERS) */ + [0x2108, 0x2108], /* SCRUPLE */ + [0x2109, 0x2109], /* DEGREE FAHRENHEIT (DEGREES FAHRENHEIT) */ + [0x210a, 0x210a], /* SCRIPT SMALL G */ + [0x210b, 0x210b], /* SCRIPT CAPITAL H (SCRIPT H) */ + [0x210c, 0x210c], /* BLACK-LETTER CAPITAL H (BLACK-LETTER H) */ + [0x210d, 0x210d], /* DOUBLE-STRUCK CAPITAL H (DOUBLE-STRUCK H) */ + [0x210e, 0x210e], /* PLANCK CONSTANT */ + [0x210f, 0x210f], /* PLANCK CONSTANT OVER TWO PI (PLANCK CONSTANT OVER 2 PI) */ + [0x2110, 0x2110], /* SCRIPT CAPITAL I (SCRIPT I) */ + [0x2111, 0x2111], /* BLACK-LETTER CAPITAL I (BLACK-LETTER I) */ + [0x2112, 0x2112], /* SCRIPT CAPITAL L (SCRIPT L) */ + [0x2113, 0x2113], /* SCRIPT SMALL L */ + [0x2114, 0x2114], /* L B BAR SYMBOL */ + [0x2115, 0x2115], /* DOUBLE-STRUCK CAPITAL N (DOUBLE-STRUCK N) */ + [0x2116, 0x2116], /* NUMERO SIGN (NUMERO) */ + [0x2117, 0x2117], /* SOUND RECORDING COPYRIGHT */ + [0x2118, 0x2118], /* SCRIPT CAPITAL P (SCRIPT P) */ + [0x2119, 0x2119], /* DOUBLE-STRUCK CAPITAL P (DOUBLE-STRUCK P) */ + [0x211a, 0x211a], /* DOUBLE-STRUCK CAPITAL Q (DOUBLE-STRUCK Q) */ + [0x211b, 0x211b], /* SCRIPT CAPITAL R (SCRIPT R) */ + [0x211c, 0x211c], /* BLACK-LETTER CAPITAL R (BLACK-LETTER R) */ + [0x211d, 0x211d], /* DOUBLE-STRUCK CAPITAL R (DOUBLE-STRUCK R) */ + [0x211e, 0x211e], /* PRESCRIPTION TAKE */ + [0x211f, 0x211f], /* RESPONSE */ + [0x2120, 0x2120], /* SERVICE MARK */ + [0x2121, 0x2121], /* TELEPHONE SIGN (T E L SYMBOL) */ + [0x2122, 0x2122], /* TRADE MARK SIGN (TRADEMARK) */ + [0x2123, 0x2123], /* VERSICLE */ + [0x2124, 0x2124], /* DOUBLE-STRUCK CAPITAL Z (DOUBLE-STRUCK Z) */ + [0x2125, 0x2125], /* OUNCE SIGN (OUNCE) */ + [0x2126, 0x3c9], /* OHM SIGN (OHM) */ + [0x2127, 0x2127], /* INVERTED OHM SIGN (MHO) */ + [0x2128, 0x2128], /* BLACK-LETTER CAPITAL Z (BLACK-LETTER Z) */ + [0x2129, 0x2129], /* TURNED GREEK SMALL LETTER IOTA */ + [0x212a, 0x6b], /* KELVIN SIGN (DEGREES KELVIN) */ + [0x212b, 0xe5], /* ANGSTROM SIGN (ANGSTROM UNIT) */ + [0x212c, 0x212c], /* SCRIPT CAPITAL B (SCRIPT B) */ + [0x212d, 0x212d], /* BLACK-LETTER CAPITAL C (BLACK-LETTER C) */ + [0x212e, 0x212e], /* ESTIMATED SYMBOL */ + [0x212f, 0x212f], /* SCRIPT SMALL E */ + [0x2130, 0x2130], /* SCRIPT CAPITAL E (SCRIPT E) */ + [0x2131, 0x2131], /* SCRIPT CAPITAL F (SCRIPT F) */ + [0x2132, 0x214e], /* TURNED CAPITAL F (TURNED F) */ + [0x2133, 0x2133], /* SCRIPT CAPITAL M (SCRIPT M) */ + [0x2134, 0x2134], /* SCRIPT SMALL O */ + [0x2135, 0x2135], /* ALEF SYMBOL (FIRST TRANSFINITE CARDINAL) */ + [0x2136, 0x2136], /* BET SYMBOL (SECOND TRANSFINITE CARDINAL) */ + [0x2137, 0x2137], /* GIMEL SYMBOL (THIRD TRANSFINITE CARDINAL) */ + [0x2138, 0x2138], /* DALET SYMBOL (FOURTH TRANSFINITE CARDINAL) */ + [0x2139, 0x2139], /* INFORMATION SOURCE */ + [0x213a, 0x213a], /* ROTATED CAPITAL Q */ + [0x213b, 0x213b], /* FACSIMILE SIGN */ + [0x213c, 0x213c], /* DOUBLE-STRUCK SMALL PI */ + [0x213d, 0x213d], /* DOUBLE-STRUCK SMALL GAMMA */ + [0x213e, 0x213e], /* DOUBLE-STRUCK CAPITAL GAMMA */ + [0x213f, 0x213f], /* DOUBLE-STRUCK CAPITAL PI */ + [0x2140, 0x2140], /* DOUBLE-STRUCK N-ARY SUMMATION */ + [0x2141, 0x2141], /* TURNED SANS-SERIF CAPITAL G */ + [0x2142, 0x2142], /* TURNED SANS-SERIF CAPITAL L */ + [0x2143, 0x2143], /* REVERSED SANS-SERIF CAPITAL L */ + [0x2144, 0x2144], /* TURNED SANS-SERIF CAPITAL Y */ + [0x2145, 0x2145], /* DOUBLE-STRUCK ITALIC CAPITAL D */ + [0x2146, 0x2146], /* DOUBLE-STRUCK ITALIC SMALL D */ + [0x2147, 0x2147], /* DOUBLE-STRUCK ITALIC SMALL E */ + [0x2148, 0x2148], /* DOUBLE-STRUCK ITALIC SMALL I */ + [0x2149, 0x2149], /* DOUBLE-STRUCK ITALIC SMALL J */ + [0x214a, 0x214a], /* PROPERTY LINE */ + [0x214b, 0x214b], /* TURNED AMPERSAND */ + [0x214c, 0x214c], /* PER SIGN */ + [0x214d, 0x214d], /* AKTIESELSKAB */ + [0x2132, 0x214e], /* TURNED SMALL F */ + [0x214f, 0x214f], /* SYMBOL FOR SAMARITAN SOURCE */ + [0x2150, 0x2150], /* VULGAR FRACTION ONE SEVENTH */ + [0x2151, 0x2151], /* VULGAR FRACTION ONE NINTH */ + [0x2152, 0x2152], /* VULGAR FRACTION ONE TENTH */ + [0x2153, 0x2153], /* VULGAR FRACTION ONE THIRD (FRACTION ONE THIRD) */ + [0x2154, 0x2154], /* VULGAR FRACTION TWO THIRDS (FRACTION TWO THIRDS) */ + [0x2155, 0x2155], /* VULGAR FRACTION ONE FIFTH (FRACTION ONE FIFTH) */ + [0x2156, 0x2156], /* VULGAR FRACTION TWO FIFTHS (FRACTION TWO FIFTHS) */ + [0x2157, 0x2157], /* VULGAR FRACTION THREE FIFTHS (FRACTION THREE FIFTHS) */ + [0x2158, 0x2158], /* VULGAR FRACTION FOUR FIFTHS (FRACTION FOUR FIFTHS) */ + [0x2159, 0x2159], /* VULGAR FRACTION ONE SIXTH (FRACTION ONE SIXTH) */ + [0x215a, 0x215a], /* VULGAR FRACTION FIVE SIXTHS (FRACTION FIVE SIXTHS) */ + [0x215b, 0x215b], /* VULGAR FRACTION ONE EIGHTH (FRACTION ONE EIGHTH) */ + [0x215c, 0x215c], /* VULGAR FRACTION THREE EIGHTHS (FRACTION THREE EIGHTHS) */ + [0x215d, 0x215d], /* VULGAR FRACTION FIVE EIGHTHS (FRACTION FIVE EIGHTHS) */ + [0x215e, 0x215e], /* VULGAR FRACTION SEVEN EIGHTHS (FRACTION SEVEN EIGHTHS) */ + [0x215f, 0x215f], /* FRACTION NUMERATOR ONE */ + [0x2160, 0x2170], /* ROMAN NUMERAL ONE */ + [0x2161, 0x2171], /* ROMAN NUMERAL TWO */ + [0x2162, 0x2172], /* ROMAN NUMERAL THREE */ + [0x2163, 0x2173], /* ROMAN NUMERAL FOUR */ + [0x2164, 0x2174], /* ROMAN NUMERAL FIVE */ + [0x2165, 0x2175], /* ROMAN NUMERAL SIX */ + [0x2166, 0x2176], /* ROMAN NUMERAL SEVEN */ + [0x2167, 0x2177], /* ROMAN NUMERAL EIGHT */ + [0x2168, 0x2178], /* ROMAN NUMERAL NINE */ + [0x2169, 0x2179], /* ROMAN NUMERAL TEN */ + [0x216a, 0x217a], /* ROMAN NUMERAL ELEVEN */ + [0x216b, 0x217b], /* ROMAN NUMERAL TWELVE */ + [0x216c, 0x217c], /* ROMAN NUMERAL FIFTY */ + [0x216d, 0x217d], /* ROMAN NUMERAL ONE HUNDRED */ + [0x216e, 0x217e], /* ROMAN NUMERAL FIVE HUNDRED */ + [0x216f, 0x217f], /* ROMAN NUMERAL ONE THOUSAND */ + [0x2160, 0x2170], /* SMALL ROMAN NUMERAL ONE */ + [0x2161, 0x2171], /* SMALL ROMAN NUMERAL TWO */ + [0x2162, 0x2172], /* SMALL ROMAN NUMERAL THREE */ + [0x2163, 0x2173], /* SMALL ROMAN NUMERAL FOUR */ + [0x2164, 0x2174], /* SMALL ROMAN NUMERAL FIVE */ + [0x2165, 0x2175], /* SMALL ROMAN NUMERAL SIX */ + [0x2166, 0x2176], /* SMALL ROMAN NUMERAL SEVEN */ + [0x2167, 0x2177], /* SMALL ROMAN NUMERAL EIGHT */ + [0x2168, 0x2178], /* SMALL ROMAN NUMERAL NINE */ + [0x2169, 0x2179], /* SMALL ROMAN NUMERAL TEN */ + [0x216a, 0x217a], /* SMALL ROMAN NUMERAL ELEVEN */ + [0x216b, 0x217b], /* SMALL ROMAN NUMERAL TWELVE */ + [0x216c, 0x217c], /* SMALL ROMAN NUMERAL FIFTY */ + [0x216d, 0x217d], /* SMALL ROMAN NUMERAL ONE HUNDRED */ + [0x216e, 0x217e], /* SMALL ROMAN NUMERAL FIVE HUNDRED */ + [0x216f, 0x217f], /* SMALL ROMAN NUMERAL ONE THOUSAND */ + [0x2180, 0x2180], /* ROMAN NUMERAL ONE THOUSAND C D */ + [0x2181, 0x2181], /* ROMAN NUMERAL FIVE THOUSAND */ + [0x2182, 0x2182], /* ROMAN NUMERAL TEN THOUSAND */ + [0x2183, 0x2184], /* ROMAN NUMERAL REVERSED ONE HUNDRED */ + [0x2183, 0x2184], /* LATIN SMALL LETTER REVERSED C */ + [0x2185, 0x2185], /* ROMAN NUMERAL SIX LATE FORM */ + [0x2186, 0x2186], /* ROMAN NUMERAL FIFTY EARLY FORM */ + [0x2187, 0x2187], /* ROMAN NUMERAL FIFTY THOUSAND */ + [0x2188, 0x2188], /* ROMAN NUMERAL ONE HUNDRED THOUSAND */ + [0x2189, 0x2189], /* VULGAR FRACTION ZERO THIRDS */ + [0x218a, 0x218a], /* TURNED DIGIT TWO */ + [0x218b, 0x218b], /* TURNED DIGIT THREE */ + [0x218c, 0x218c], + [0x218d, 0x218d], + [0x218e, 0x218e], + [0x218f, 0x218f], + [0x2190, 0x2190], /* LEFTWARDS ARROW (LEFT ARROW) */ + [0x2191, 0x2191], /* UPWARDS ARROW (UP ARROW) */ + [0x2192, 0x2192], /* RIGHTWARDS ARROW (RIGHT ARROW) */ + [0x2193, 0x2193], /* DOWNWARDS ARROW (DOWN ARROW) */ + [0x2194, 0x2194], /* LEFT RIGHT ARROW */ + [0x2195, 0x2195], /* UP DOWN ARROW */ + [0x2196, 0x2196], /* NORTH WEST ARROW (UPPER LEFT ARROW) */ + [0x2197, 0x2197], /* NORTH EAST ARROW (UPPER RIGHT ARROW) */ + [0x2198, 0x2198], /* SOUTH EAST ARROW (LOWER RIGHT ARROW) */ + [0x2199, 0x2199], /* SOUTH WEST ARROW (LOWER LEFT ARROW) */ + [0x219a, 0x219a], /* LEFTWARDS ARROW WITH STROKE (LEFT ARROW WITH STROKE) */ + [0x219b, 0x219b], /* RIGHTWARDS ARROW WITH STROKE (RIGHT ARROW WITH STROKE) */ + [0x219c, 0x219c], /* LEFTWARDS WAVE ARROW (LEFT WAVE ARROW) */ + [0x219d, 0x219d], /* RIGHTWARDS WAVE ARROW (RIGHT WAVE ARROW) */ + [0x219e, 0x219e], /* LEFTWARDS TWO HEADED ARROW (LEFT TWO HEADED ARROW) */ + [0x219f, 0x219f], /* UPWARDS TWO HEADED ARROW (UP TWO HEADED ARROW) */ + [0x21a0, 0x21a0], /* RIGHTWARDS TWO HEADED ARROW (RIGHT TWO HEADED ARROW) */ + [0x21a1, 0x21a1], /* DOWNWARDS TWO HEADED ARROW (DOWN TWO HEADED ARROW) */ + [0x21a2, 0x21a2], /* LEFTWARDS ARROW WITH TAIL (LEFT ARROW WITH TAIL) */ + [0x21a3, 0x21a3], /* RIGHTWARDS ARROW WITH TAIL (RIGHT ARROW WITH TAIL) */ + [0x21a4, 0x21a4], /* LEFTWARDS ARROW FROM BAR (LEFT ARROW FROM BAR) */ + [0x21a5, 0x21a5], /* UPWARDS ARROW FROM BAR (UP ARROW FROM BAR) */ + [0x21a6, 0x21a6], /* RIGHTWARDS ARROW FROM BAR (RIGHT ARROW FROM BAR) */ + [0x21a7, 0x21a7], /* DOWNWARDS ARROW FROM BAR (DOWN ARROW FROM BAR) */ + [0x21a8, 0x21a8], /* UP DOWN ARROW WITH BASE */ + [0x21a9, 0x21a9], /* LEFTWARDS ARROW WITH HOOK (LEFT ARROW WITH HOOK) */ + [0x21aa, 0x21aa], /* RIGHTWARDS ARROW WITH HOOK (RIGHT ARROW WITH HOOK) */ + [0x21ab, 0x21ab], /* LEFTWARDS ARROW WITH LOOP (LEFT ARROW WITH LOOP) */ + [0x21ac, 0x21ac], /* RIGHTWARDS ARROW WITH LOOP (RIGHT ARROW WITH LOOP) */ + [0x21ad, 0x21ad], /* LEFT RIGHT WAVE ARROW */ + [0x21ae, 0x21ae], /* LEFT RIGHT ARROW WITH STROKE */ + [0x21af, 0x21af], /* DOWNWARDS ZIGZAG ARROW (DOWN ZIGZAG ARROW) */ + [0x21b0, 0x21b0], /* UPWARDS ARROW WITH TIP LEFTWARDS (UP ARROW WITH TIP LEFT) */ + [0x21b1, 0x21b1], /* UPWARDS ARROW WITH TIP RIGHTWARDS (UP ARROW WITH TIP RIGHT) */ + [0x21b2, 0x21b2], /* DOWNWARDS ARROW WITH TIP LEFTWARDS (DOWN ARROW WITH TIP LEFT) */ + [0x21b3, 0x21b3], /* DOWNWARDS ARROW WITH TIP RIGHTWARDS (DOWN ARROW WITH TIP RIGHT) */ + [0x21b4, 0x21b4], /* RIGHTWARDS ARROW WITH CORNER DOWNWARDS (RIGHT ARROW WITH CORNER DOWN) */ + [0x21b5, 0x21b5], /* DOWNWARDS ARROW WITH CORNER LEFTWARDS (DOWN ARROW WITH CORNER LEFT) */ + [0x21b6, 0x21b6], /* ANTICLOCKWISE TOP SEMICIRCLE ARROW */ + [0x21b7, 0x21b7], /* CLOCKWISE TOP SEMICIRCLE ARROW */ + [0x21b8, 0x21b8], /* NORTH WEST ARROW TO LONG BAR (UPPER LEFT ARROW TO LONG BAR) */ + [0x21b9, 0x21b9], /* LEFTWARDS ARROW TO BAR OVER RIGHTWARDS ARROW TO BAR (LEFT ARROW TO BAR OVER RIGHT ARROW TO BAR) */ + [0x21ba, 0x21ba], /* ANTICLOCKWISE OPEN CIRCLE ARROW */ + [0x21bb, 0x21bb], /* CLOCKWISE OPEN CIRCLE ARROW */ + [0x21bc, 0x21bc], /* LEFTWARDS HARPOON WITH BARB UPWARDS (LEFT HARPOON WITH BARB UP) */ + [0x21bd, 0x21bd], /* LEFTWARDS HARPOON WITH BARB DOWNWARDS (LEFT HARPOON WITH BARB DOWN) */ + [0x21be, 0x21be], /* UPWARDS HARPOON WITH BARB RIGHTWARDS (UP HARPOON WITH BARB RIGHT) */ + [0x21bf, 0x21bf], /* UPWARDS HARPOON WITH BARB LEFTWARDS (UP HARPOON WITH BARB LEFT) */ + [0x21c0, 0x21c0], /* RIGHTWARDS HARPOON WITH BARB UPWARDS (RIGHT HARPOON WITH BARB UP) */ + [0x21c1, 0x21c1], /* RIGHTWARDS HARPOON WITH BARB DOWNWARDS (RIGHT HARPOON WITH BARB DOWN) */ + [0x21c2, 0x21c2], /* DOWNWARDS HARPOON WITH BARB RIGHTWARDS (DOWN HARPOON WITH BARB RIGHT) */ + [0x21c3, 0x21c3], /* DOWNWARDS HARPOON WITH BARB LEFTWARDS (DOWN HARPOON WITH BARB LEFT) */ + [0x21c4, 0x21c4], /* RIGHTWARDS ARROW OVER LEFTWARDS ARROW (RIGHT ARROW OVER LEFT ARROW) */ + [0x21c5, 0x21c5], /* UPWARDS ARROW LEFTWARDS OF DOWNWARDS ARROW (UP ARROW LEFT OF DOWN ARROW) */ + [0x21c6, 0x21c6], /* LEFTWARDS ARROW OVER RIGHTWARDS ARROW (LEFT ARROW OVER RIGHT ARROW) */ + [0x21c7, 0x21c7], /* LEFTWARDS PAIRED ARROWS (LEFT PAIRED ARROWS) */ + [0x21c8, 0x21c8], /* UPWARDS PAIRED ARROWS (UP PAIRED ARROWS) */ + [0x21c9, 0x21c9], /* RIGHTWARDS PAIRED ARROWS (RIGHT PAIRED ARROWS) */ + [0x21ca, 0x21ca], /* DOWNWARDS PAIRED ARROWS (DOWN PAIRED ARROWS) */ + [0x21cb, 0x21cb], /* LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON (LEFT HARPOON OVER RIGHT HARPOON) */ + [0x21cc, 0x21cc], /* RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON (RIGHT HARPOON OVER LEFT HARPOON) */ + [0x21cd, 0x21cd], /* LEFTWARDS DOUBLE ARROW WITH STROKE (LEFT DOUBLE ARROW WITH STROKE) */ + [0x21ce, 0x21ce], /* LEFT RIGHT DOUBLE ARROW WITH STROKE */ + [0x21cf, 0x21cf], /* RIGHTWARDS DOUBLE ARROW WITH STROKE (RIGHT DOUBLE ARROW WITH STROKE) */ + [0x21d0, 0x21d0], /* LEFTWARDS DOUBLE ARROW (LEFT DOUBLE ARROW) */ + [0x21d1, 0x21d1], /* UPWARDS DOUBLE ARROW (UP DOUBLE ARROW) */ + [0x21d2, 0x21d2], /* RIGHTWARDS DOUBLE ARROW (RIGHT DOUBLE ARROW) */ + [0x21d3, 0x21d3], /* DOWNWARDS DOUBLE ARROW (DOWN DOUBLE ARROW) */ + [0x21d4, 0x21d4], /* LEFT RIGHT DOUBLE ARROW */ + [0x21d5, 0x21d5], /* UP DOWN DOUBLE ARROW */ + [0x21d6, 0x21d6], /* NORTH WEST DOUBLE ARROW (UPPER LEFT DOUBLE ARROW) */ + [0x21d7, 0x21d7], /* NORTH EAST DOUBLE ARROW (UPPER RIGHT DOUBLE ARROW) */ + [0x21d8, 0x21d8], /* SOUTH EAST DOUBLE ARROW (LOWER RIGHT DOUBLE ARROW) */ + [0x21d9, 0x21d9], /* SOUTH WEST DOUBLE ARROW (LOWER LEFT DOUBLE ARROW) */ + [0x21da, 0x21da], /* LEFTWARDS TRIPLE ARROW (LEFT TRIPLE ARROW) */ + [0x21db, 0x21db], /* RIGHTWARDS TRIPLE ARROW (RIGHT TRIPLE ARROW) */ + [0x21dc, 0x21dc], /* LEFTWARDS SQUIGGLE ARROW (LEFT SQUIGGLE ARROW) */ + [0x21dd, 0x21dd], /* RIGHTWARDS SQUIGGLE ARROW (RIGHT SQUIGGLE ARROW) */ + [0x21de, 0x21de], /* UPWARDS ARROW WITH DOUBLE STROKE (UP ARROW WITH DOUBLE STROKE) */ + [0x21df, 0x21df], /* DOWNWARDS ARROW WITH DOUBLE STROKE (DOWN ARROW WITH DOUBLE STROKE) */ + [0x21e0, 0x21e0], /* LEFTWARDS DASHED ARROW (LEFT DASHED ARROW) */ + [0x21e1, 0x21e1], /* UPWARDS DASHED ARROW (UP DASHED ARROW) */ + [0x21e2, 0x21e2], /* RIGHTWARDS DASHED ARROW (RIGHT DASHED ARROW) */ + [0x21e3, 0x21e3], /* DOWNWARDS DASHED ARROW (DOWN DASHED ARROW) */ + [0x21e4, 0x21e4], /* LEFTWARDS ARROW TO BAR (LEFT ARROW TO BAR) */ + [0x21e5, 0x21e5], /* RIGHTWARDS ARROW TO BAR (RIGHT ARROW TO BAR) */ + [0x21e6, 0x21e6], /* LEFTWARDS WHITE ARROW (WHITE LEFT ARROW) */ + [0x21e7, 0x21e7], /* UPWARDS WHITE ARROW (WHITE UP ARROW) */ + [0x21e8, 0x21e8], /* RIGHTWARDS WHITE ARROW (WHITE RIGHT ARROW) */ + [0x21e9, 0x21e9], /* DOWNWARDS WHITE ARROW (WHITE DOWN ARROW) */ + [0x21ea, 0x21ea], /* UPWARDS WHITE ARROW FROM BAR (WHITE UP ARROW FROM BAR) */ + [0x21eb, 0x21eb], /* UPWARDS WHITE ARROW ON PEDESTAL */ + [0x21ec, 0x21ec], /* UPWARDS WHITE ARROW ON PEDESTAL WITH HORIZONTAL BAR */ + [0x21ed, 0x21ed], /* UPWARDS WHITE ARROW ON PEDESTAL WITH VERTICAL BAR */ + [0x21ee, 0x21ee], /* UPWARDS WHITE DOUBLE ARROW */ + [0x21ef, 0x21ef], /* UPWARDS WHITE DOUBLE ARROW ON PEDESTAL */ + [0x21f0, 0x21f0], /* RIGHTWARDS WHITE ARROW FROM WALL */ + [0x21f1, 0x21f1], /* NORTH WEST ARROW TO CORNER */ + [0x21f2, 0x21f2], /* SOUTH EAST ARROW TO CORNER */ + [0x21f3, 0x21f3], /* UP DOWN WHITE ARROW */ + [0x21f4, 0x21f4], /* RIGHT ARROW WITH SMALL CIRCLE */ + [0x21f5, 0x21f5], /* DOWNWARDS ARROW LEFTWARDS OF UPWARDS ARROW */ + [0x21f6, 0x21f6], /* THREE RIGHTWARDS ARROWS */ + [0x21f7, 0x21f7], /* LEFTWARDS ARROW WITH VERTICAL STROKE */ + [0x21f8, 0x21f8], /* RIGHTWARDS ARROW WITH VERTICAL STROKE */ + [0x21f9, 0x21f9], /* LEFT RIGHT ARROW WITH VERTICAL STROKE */ + [0x21fa, 0x21fa], /* LEFTWARDS ARROW WITH DOUBLE VERTICAL STROKE */ + [0x21fb, 0x21fb], /* RIGHTWARDS ARROW WITH DOUBLE VERTICAL STROKE */ + [0x21fc, 0x21fc], /* LEFT RIGHT ARROW WITH DOUBLE VERTICAL STROKE */ + [0x21fd, 0x21fd], /* LEFTWARDS OPEN-HEADED ARROW */ + [0x21fe, 0x21fe], /* RIGHTWARDS OPEN-HEADED ARROW */ + [0x21ff, 0x21ff], /* LEFT RIGHT OPEN-HEADED ARROW */ + [0x2200, 0x2200], /* FOR ALL */ + [0x2201, 0x2201], /* COMPLEMENT */ + [0x2202, 0x2202], /* PARTIAL DIFFERENTIAL */ + [0x2203, 0x2203], /* THERE EXISTS */ + [0x2204, 0x2204], /* THERE DOES NOT EXIST */ + [0x2205, 0x2205], /* EMPTY SET */ + [0x2206, 0x2206], /* INCREMENT */ + [0x2207, 0x2207], /* NABLA */ + [0x2208, 0x2208], /* ELEMENT OF */ + [0x2209, 0x2209], /* NOT AN ELEMENT OF */ + [0x220a, 0x220a], /* SMALL ELEMENT OF */ + [0x220b, 0x220b], /* CONTAINS AS MEMBER */ + [0x220c, 0x220c], /* DOES NOT CONTAIN AS MEMBER */ + [0x220d, 0x220d], /* SMALL CONTAINS AS MEMBER */ + [0x220e, 0x220e], /* END OF PROOF */ + [0x220f, 0x220f], /* N-ARY PRODUCT */ + [0x2210, 0x2210], /* N-ARY COPRODUCT */ + [0x2211, 0x2211], /* N-ARY SUMMATION */ + [0x2212, 0x2212], /* MINUS SIGN */ + [0x2213, 0x2213], /* MINUS-OR-PLUS SIGN */ + [0x2214, 0x2214], /* DOT PLUS */ + [0x2215, 0x2215], /* DIVISION SLASH */ + [0x2216, 0x2216], /* SET MINUS */ + [0x2217, 0x2217], /* ASTERISK OPERATOR */ + [0x2218, 0x2218], /* RING OPERATOR */ + [0x2219, 0x2219], /* BULLET OPERATOR */ + [0x221a, 0x221a], /* SQUARE ROOT */ + [0x221b, 0x221b], /* CUBE ROOT */ + [0x221c, 0x221c], /* FOURTH ROOT */ + [0x221d, 0x221d], /* PROPORTIONAL TO */ + [0x221e, 0x221e], /* INFINITY */ + [0x221f, 0x221f], /* RIGHT ANGLE */ + [0x2220, 0x2220], /* ANGLE */ + [0x2221, 0x2221], /* MEASURED ANGLE */ + [0x2222, 0x2222], /* SPHERICAL ANGLE */ + [0x2223, 0x2223], /* DIVIDES */ + [0x2224, 0x2224], /* DOES NOT DIVIDE */ + [0x2225, 0x2225], /* PARALLEL TO */ + [0x2226, 0x2226], /* NOT PARALLEL TO */ + [0x2227, 0x2227], /* LOGICAL AND */ + [0x2228, 0x2228], /* LOGICAL OR */ + [0x2229, 0x2229], /* INTERSECTION */ + [0x222a, 0x222a], /* UNION */ + [0x222b, 0x222b], /* INTEGRAL */ + [0x222c, 0x222c], /* DOUBLE INTEGRAL */ + [0x222d, 0x222d], /* TRIPLE INTEGRAL */ + [0x222e, 0x222e], /* CONTOUR INTEGRAL */ + [0x222f, 0x222f], /* SURFACE INTEGRAL */ + [0x2230, 0x2230], /* VOLUME INTEGRAL */ + [0x2231, 0x2231], /* CLOCKWISE INTEGRAL */ + [0x2232, 0x2232], /* CLOCKWISE CONTOUR INTEGRAL */ + [0x2233, 0x2233], /* ANTICLOCKWISE CONTOUR INTEGRAL */ + [0x2234, 0x2234], /* THEREFORE */ + [0x2235, 0x2235], /* BECAUSE */ + [0x2236, 0x2236], /* RATIO */ + [0x2237, 0x2237], /* PROPORTION */ + [0x2238, 0x2238], /* DOT MINUS */ + [0x2239, 0x2239], /* EXCESS */ + [0x223a, 0x223a], /* GEOMETRIC PROPORTION */ + [0x223b, 0x223b], /* HOMOTHETIC */ + [0x223c, 0x223c], /* TILDE OPERATOR */ + [0x223d, 0x223d], /* REVERSED TILDE */ + [0x223e, 0x223e], /* INVERTED LAZY S */ + [0x223f, 0x223f], /* SINE WAVE */ + [0x2240, 0x2240], /* WREATH PRODUCT */ + [0x2241, 0x2241], /* NOT TILDE */ + [0x2242, 0x2242], /* MINUS TILDE */ + [0x2243, 0x2243], /* ASYMPTOTICALLY EQUAL TO */ + [0x2244, 0x2244], /* NOT ASYMPTOTICALLY EQUAL TO */ + [0x2245, 0x2245], /* APPROXIMATELY EQUAL TO */ + [0x2246, 0x2246], /* APPROXIMATELY BUT NOT ACTUALLY EQUAL TO */ + [0x2247, 0x2247], /* NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO */ + [0x2248, 0x2248], /* ALMOST EQUAL TO */ + [0x2249, 0x2249], /* NOT ALMOST EQUAL TO */ + [0x224a, 0x224a], /* ALMOST EQUAL OR EQUAL TO */ + [0x224b, 0x224b], /* TRIPLE TILDE */ + [0x224c, 0x224c], /* ALL EQUAL TO */ + [0x224d, 0x224d], /* EQUIVALENT TO */ + [0x224e, 0x224e], /* GEOMETRICALLY EQUIVALENT TO */ + [0x224f, 0x224f], /* DIFFERENCE BETWEEN */ + [0x2250, 0x2250], /* APPROACHES THE LIMIT */ + [0x2251, 0x2251], /* GEOMETRICALLY EQUAL TO */ + [0x2252, 0x2252], /* APPROXIMATELY EQUAL TO OR THE IMAGE OF */ + [0x2253, 0x2253], /* IMAGE OF OR APPROXIMATELY EQUAL TO */ + [0x2254, 0x2254], /* COLON EQUALS (COLON EQUAL) */ + [0x2255, 0x2255], /* EQUALS COLON (EQUAL COLON) */ + [0x2256, 0x2256], /* RING IN EQUAL TO */ + [0x2257, 0x2257], /* RING EQUAL TO */ + [0x2258, 0x2258], /* CORRESPONDS TO */ + [0x2259, 0x2259], /* ESTIMATES */ + [0x225a, 0x225a], /* EQUIANGULAR TO */ + [0x225b, 0x225b], /* STAR EQUALS */ + [0x225c, 0x225c], /* DELTA EQUAL TO */ + [0x225d, 0x225d], /* EQUAL TO BY DEFINITION */ + [0x225e, 0x225e], /* MEASURED BY */ + [0x225f, 0x225f], /* QUESTIONED EQUAL TO */ + [0x2260, 0x2260], /* NOT EQUAL TO */ + [0x2261, 0x2261], /* IDENTICAL TO */ + [0x2262, 0x2262], /* NOT IDENTICAL TO */ + [0x2263, 0x2263], /* STRICTLY EQUIVALENT TO */ + [0x2264, 0x2264], /* LESS-THAN OR EQUAL TO (LESS THAN OR EQUAL TO) */ + [0x2265, 0x2265], /* GREATER-THAN OR EQUAL TO (GREATER THAN OR EQUAL TO) */ + [0x2266, 0x2266], /* LESS-THAN OVER EQUAL TO (LESS THAN OVER EQUAL TO) */ + [0x2267, 0x2267], /* GREATER-THAN OVER EQUAL TO (GREATER THAN OVER EQUAL TO) */ + [0x2268, 0x2268], /* LESS-THAN BUT NOT EQUAL TO (LESS THAN BUT NOT EQUAL TO) */ + [0x2269, 0x2269], /* GREATER-THAN BUT NOT EQUAL TO (GREATER THAN BUT NOT EQUAL TO) */ + [0x226a, 0x226a], /* MUCH LESS-THAN (MUCH LESS THAN) */ + [0x226b, 0x226b], /* MUCH GREATER-THAN (MUCH GREATER THAN) */ + [0x226c, 0x226c], /* BETWEEN */ + [0x226d, 0x226d], /* NOT EQUIVALENT TO */ + [0x226e, 0x226e], /* NOT LESS-THAN (NOT LESS THAN) */ + [0x226f, 0x226f], /* NOT GREATER-THAN (NOT GREATER THAN) */ + [0x2270, 0x2270], /* NEITHER LESS-THAN NOR EQUAL TO (NEITHER LESS THAN NOR EQUAL TO) */ + [0x2271, 0x2271], /* NEITHER GREATER-THAN NOR EQUAL TO (NEITHER GREATER THAN NOR EQUAL TO) */ + [0x2272, 0x2272], /* LESS-THAN OR EQUIVALENT TO (LESS THAN OR EQUIVALENT TO) */ + [0x2273, 0x2273], /* GREATER-THAN OR EQUIVALENT TO (GREATER THAN OR EQUIVALENT TO) */ + [0x2274, 0x2274], /* NEITHER LESS-THAN NOR EQUIVALENT TO (NEITHER LESS THAN NOR EQUIVALENT TO) */ + [0x2275, 0x2275], /* NEITHER GREATER-THAN NOR EQUIVALENT TO (NEITHER GREATER THAN NOR EQUIVALENT TO) */ + [0x2276, 0x2276], /* LESS-THAN OR GREATER-THAN (LESS THAN OR GREATER THAN) */ + [0x2277, 0x2277], /* GREATER-THAN OR LESS-THAN (GREATER THAN OR LESS THAN) */ + [0x2278, 0x2278], /* NEITHER LESS-THAN NOR GREATER-THAN (NEITHER LESS THAN NOR GREATER THAN) */ + [0x2279, 0x2279], /* NEITHER GREATER-THAN NOR LESS-THAN (NEITHER GREATER THAN NOR LESS THAN) */ + [0x227a, 0x227a], /* PRECEDES */ + [0x227b, 0x227b], /* SUCCEEDS */ + [0x227c, 0x227c], /* PRECEDES OR EQUAL TO */ + [0x227d, 0x227d], /* SUCCEEDS OR EQUAL TO */ + [0x227e, 0x227e], /* PRECEDES OR EQUIVALENT TO */ + [0x227f, 0x227f], /* SUCCEEDS OR EQUIVALENT TO */ + [0x2280, 0x2280], /* DOES NOT PRECEDE */ + [0x2281, 0x2281], /* DOES NOT SUCCEED */ + [0x2282, 0x2282], /* SUBSET OF */ + [0x2283, 0x2283], /* SUPERSET OF */ + [0x2284, 0x2284], /* NOT A SUBSET OF */ + [0x2285, 0x2285], /* NOT A SUPERSET OF */ + [0x2286, 0x2286], /* SUBSET OF OR EQUAL TO */ + [0x2287, 0x2287], /* SUPERSET OF OR EQUAL TO */ + [0x2288, 0x2288], /* NEITHER A SUBSET OF NOR EQUAL TO */ + [0x2289, 0x2289], /* NEITHER A SUPERSET OF NOR EQUAL TO */ + [0x228a, 0x228a], /* SUBSET OF WITH NOT EQUAL TO (SUBSET OF OR NOT EQUAL TO) */ + [0x228b, 0x228b], /* SUPERSET OF WITH NOT EQUAL TO (SUPERSET OF OR NOT EQUAL TO) */ + [0x228c, 0x228c], /* MULTISET */ + [0x228d, 0x228d], /* MULTISET MULTIPLICATION */ + [0x228e, 0x228e], /* MULTISET UNION */ + [0x228f, 0x228f], /* SQUARE IMAGE OF */ + [0x2290, 0x2290], /* SQUARE ORIGINAL OF */ + [0x2291, 0x2291], /* SQUARE IMAGE OF OR EQUAL TO */ + [0x2292, 0x2292], /* SQUARE ORIGINAL OF OR EQUAL TO */ + [0x2293, 0x2293], /* SQUARE CAP */ + [0x2294, 0x2294], /* SQUARE CUP */ + [0x2295, 0x2295], /* CIRCLED PLUS */ + [0x2296, 0x2296], /* CIRCLED MINUS */ + [0x2297, 0x2297], /* CIRCLED TIMES */ + [0x2298, 0x2298], /* CIRCLED DIVISION SLASH */ + [0x2299, 0x2299], /* CIRCLED DOT OPERATOR */ + [0x229a, 0x229a], /* CIRCLED RING OPERATOR */ + [0x229b, 0x229b], /* CIRCLED ASTERISK OPERATOR */ + [0x229c, 0x229c], /* CIRCLED EQUALS */ + [0x229d, 0x229d], /* CIRCLED DASH */ + [0x229e, 0x229e], /* SQUARED PLUS */ + [0x229f, 0x229f], /* SQUARED MINUS */ + [0x22a0, 0x22a0], /* SQUARED TIMES */ + [0x22a1, 0x22a1], /* SQUARED DOT OPERATOR */ + [0x22a2, 0x22a2], /* RIGHT TACK */ + [0x22a3, 0x22a3], /* LEFT TACK */ + [0x22a4, 0x22a4], /* DOWN TACK */ + [0x22a5, 0x22a5], /* UP TACK */ + [0x22a6, 0x22a6], /* ASSERTION */ + [0x22a7, 0x22a7], /* MODELS */ + [0x22a8, 0x22a8], /* TRUE */ + [0x22a9, 0x22a9], /* FORCES */ + [0x22aa, 0x22aa], /* TRIPLE VERTICAL BAR RIGHT TURNSTILE */ + [0x22ab, 0x22ab], /* DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE */ + [0x22ac, 0x22ac], /* DOES NOT PROVE */ + [0x22ad, 0x22ad], /* NOT TRUE */ + [0x22ae, 0x22ae], /* DOES NOT FORCE */ + [0x22af, 0x22af], /* NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE */ + [0x22b0, 0x22b0], /* PRECEDES UNDER RELATION */ + [0x22b1, 0x22b1], /* SUCCEEDS UNDER RELATION */ + [0x22b2, 0x22b2], /* NORMAL SUBGROUP OF */ + [0x22b3, 0x22b3], /* CONTAINS AS NORMAL SUBGROUP */ + [0x22b4, 0x22b4], /* NORMAL SUBGROUP OF OR EQUAL TO */ + [0x22b5, 0x22b5], /* CONTAINS AS NORMAL SUBGROUP OR EQUAL TO */ + [0x22b6, 0x22b6], /* ORIGINAL OF */ + [0x22b7, 0x22b7], /* IMAGE OF */ + [0x22b8, 0x22b8], /* MULTIMAP */ + [0x22b9, 0x22b9], /* HERMITIAN CONJUGATE MATRIX */ + [0x22ba, 0x22ba], /* INTERCALATE */ + [0x22bb, 0x22bb], /* XOR */ + [0x22bc, 0x22bc], /* NAND */ + [0x22bd, 0x22bd], /* NOR */ + [0x22be, 0x22be], /* RIGHT ANGLE WITH ARC */ + [0x22bf, 0x22bf], /* RIGHT TRIANGLE */ + [0x22c0, 0x22c0], /* N-ARY LOGICAL AND */ + [0x22c1, 0x22c1], /* N-ARY LOGICAL OR */ + [0x22c2, 0x22c2], /* N-ARY INTERSECTION */ + [0x22c3, 0x22c3], /* N-ARY UNION */ + [0x22c4, 0x22c4], /* DIAMOND OPERATOR */ + [0x22c5, 0x22c5], /* DOT OPERATOR */ + [0x22c6, 0x22c6], /* STAR OPERATOR */ + [0x22c7, 0x22c7], /* DIVISION TIMES */ + [0x22c8, 0x22c8], /* BOWTIE */ + [0x22c9, 0x22c9], /* LEFT NORMAL FACTOR SEMIDIRECT PRODUCT */ + [0x22ca, 0x22ca], /* RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT */ + [0x22cb, 0x22cb], /* LEFT SEMIDIRECT PRODUCT */ + [0x22cc, 0x22cc], /* RIGHT SEMIDIRECT PRODUCT */ + [0x22cd, 0x22cd], /* REVERSED TILDE EQUALS */ + [0x22ce, 0x22ce], /* CURLY LOGICAL OR */ + [0x22cf, 0x22cf], /* CURLY LOGICAL AND */ + [0x22d0, 0x22d0], /* DOUBLE SUBSET */ + [0x22d1, 0x22d1], /* DOUBLE SUPERSET */ + [0x22d2, 0x22d2], /* DOUBLE INTERSECTION */ + [0x22d3, 0x22d3], /* DOUBLE UNION */ + [0x22d4, 0x22d4], /* PITCHFORK */ + [0x22d5, 0x22d5], /* EQUAL AND PARALLEL TO */ + [0x22d6, 0x22d6], /* LESS-THAN WITH DOT (LESS THAN WITH DOT) */ + [0x22d7, 0x22d7], /* GREATER-THAN WITH DOT (GREATER THAN WITH DOT) */ + [0x22d8, 0x22d8], /* VERY MUCH LESS-THAN (VERY MUCH LESS THAN) */ + [0x22d9, 0x22d9], /* VERY MUCH GREATER-THAN (VERY MUCH GREATER THAN) */ + [0x22da, 0x22da], /* LESS-THAN EQUAL TO OR GREATER-THAN (LESS THAN EQUAL TO OR GREATER THAN) */ + [0x22db, 0x22db], /* GREATER-THAN EQUAL TO OR LESS-THAN (GREATER THAN EQUAL TO OR LESS THAN) */ + [0x22dc, 0x22dc], /* EQUAL TO OR LESS-THAN (EQUAL TO OR LESS THAN) */ + [0x22dd, 0x22dd], /* EQUAL TO OR GREATER-THAN (EQUAL TO OR GREATER THAN) */ + [0x22de, 0x22de], /* EQUAL TO OR PRECEDES */ + [0x22df, 0x22df], /* EQUAL TO OR SUCCEEDS */ + [0x22e0, 0x22e0], /* DOES NOT PRECEDE OR EQUAL */ + [0x22e1, 0x22e1], /* DOES NOT SUCCEED OR EQUAL */ + [0x22e2, 0x22e2], /* NOT SQUARE IMAGE OF OR EQUAL TO */ + [0x22e3, 0x22e3], /* NOT SQUARE ORIGINAL OF OR EQUAL TO */ + [0x22e4, 0x22e4], /* SQUARE IMAGE OF OR NOT EQUAL TO */ + [0x22e5, 0x22e5], /* SQUARE ORIGINAL OF OR NOT EQUAL TO */ + [0x22e6, 0x22e6], /* LESS-THAN BUT NOT EQUIVALENT TO (LESS THAN BUT NOT EQUIVALENT TO) */ + [0x22e7, 0x22e7], /* GREATER-THAN BUT NOT EQUIVALENT TO (GREATER THAN BUT NOT EQUIVALENT TO) */ + [0x22e8, 0x22e8], /* PRECEDES BUT NOT EQUIVALENT TO */ + [0x22e9, 0x22e9], /* SUCCEEDS BUT NOT EQUIVALENT TO */ + [0x22ea, 0x22ea], /* NOT NORMAL SUBGROUP OF */ + [0x22eb, 0x22eb], /* DOES NOT CONTAIN AS NORMAL SUBGROUP */ + [0x22ec, 0x22ec], /* NOT NORMAL SUBGROUP OF OR EQUAL TO */ + [0x22ed, 0x22ed], /* DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL */ + [0x22ee, 0x22ee], /* VERTICAL ELLIPSIS */ + [0x22ef, 0x22ef], /* MIDLINE HORIZONTAL ELLIPSIS */ + [0x22f0, 0x22f0], /* UP RIGHT DIAGONAL ELLIPSIS */ + [0x22f1, 0x22f1], /* DOWN RIGHT DIAGONAL ELLIPSIS */ + [0x22f2, 0x22f2], /* ELEMENT OF WITH LONG HORIZONTAL STROKE */ + [0x22f3, 0x22f3], /* ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE */ + [0x22f4, 0x22f4], /* SMALL ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE */ + [0x22f5, 0x22f5], /* ELEMENT OF WITH DOT ABOVE */ + [0x22f6, 0x22f6], /* ELEMENT OF WITH OVERBAR */ + [0x22f7, 0x22f7], /* SMALL ELEMENT OF WITH OVERBAR */ + [0x22f8, 0x22f8], /* ELEMENT OF WITH UNDERBAR */ + [0x22f9, 0x22f9], /* ELEMENT OF WITH TWO HORIZONTAL STROKES */ + [0x22fa, 0x22fa], /* CONTAINS WITH LONG HORIZONTAL STROKE */ + [0x22fb, 0x22fb], /* CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE */ + [0x22fc, 0x22fc], /* SMALL CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE */ + [0x22fd, 0x22fd], /* CONTAINS WITH OVERBAR */ + [0x22fe, 0x22fe], /* SMALL CONTAINS WITH OVERBAR */ + [0x22ff, 0x22ff], /* Z NOTATION BAG MEMBERSHIP */ + [0x2300, 0x2300], /* DIAMETER SIGN */ + [0x2301, 0x2301], /* ELECTRIC ARROW */ + [0x2302, 0x2302], /* HOUSE */ + [0x2303, 0x2303], /* UP ARROWHEAD */ + [0x2304, 0x2304], /* DOWN ARROWHEAD */ + [0x2305, 0x2305], /* PROJECTIVE */ + [0x2306, 0x2306], /* PERSPECTIVE */ + [0x2307, 0x2307], /* WAVY LINE */ + [0x2308, 0x2308], /* LEFT CEILING */ + [0x2309, 0x2309], /* RIGHT CEILING */ + [0x230a, 0x230a], /* LEFT FLOOR */ + [0x230b, 0x230b], /* RIGHT FLOOR */ + [0x230c, 0x230c], /* BOTTOM RIGHT CROP */ + [0x230d, 0x230d], /* BOTTOM LEFT CROP */ + [0x230e, 0x230e], /* TOP RIGHT CROP */ + [0x230f, 0x230f], /* TOP LEFT CROP */ + [0x2310, 0x2310], /* REVERSED NOT SIGN */ + [0x2311, 0x2311], /* SQUARE LOZENGE */ + [0x2312, 0x2312], /* ARC */ + [0x2313, 0x2313], /* SEGMENT */ + [0x2314, 0x2314], /* SECTOR */ + [0x2315, 0x2315], /* TELEPHONE RECORDER */ + [0x2316, 0x2316], /* POSITION INDICATOR */ + [0x2317, 0x2317], /* VIEWDATA SQUARE */ + [0x2318, 0x2318], /* PLACE OF INTEREST SIGN (COMMAND KEY) */ + [0x2319, 0x2319], /* TURNED NOT SIGN */ + [0x231a, 0x231a], /* WATCH */ + [0x231b, 0x231b], /* HOURGLASS */ + [0x231c, 0x231c], /* TOP LEFT CORNER */ + [0x231d, 0x231d], /* TOP RIGHT CORNER */ + [0x231e, 0x231e], /* BOTTOM LEFT CORNER */ + [0x231f, 0x231f], /* BOTTOM RIGHT CORNER */ + [0x2320, 0x2320], /* TOP HALF INTEGRAL */ + [0x2321, 0x2321], /* BOTTOM HALF INTEGRAL */ + [0x2322, 0x2322], /* FROWN */ + [0x2323, 0x2323], /* SMILE */ + [0x2324, 0x2324], /* UP ARROWHEAD BETWEEN TWO HORIZONTAL BARS (ENTER KEY) */ + [0x2325, 0x2325], /* OPTION KEY */ + [0x2326, 0x2326], /* ERASE TO THE RIGHT (DELETE TO THE RIGHT KEY) */ + [0x2327, 0x2327], /* X IN A RECTANGLE BOX (CLEAR KEY) */ + [0x2328, 0x2328], /* KEYBOARD */ + [0x2329, 0x2329], /* LEFT-POINTING ANGLE BRACKET (BRA) */ + [0x232a, 0x232a], /* RIGHT-POINTING ANGLE BRACKET (KET) */ + [0x232b, 0x232b], /* ERASE TO THE LEFT (DELETE TO THE LEFT KEY) */ + [0x232c, 0x232c], /* BENZENE RING */ + [0x232d, 0x232d], /* CYLINDRICITY */ + [0x232e, 0x232e], /* ALL AROUND-PROFILE */ + [0x232f, 0x232f], /* SYMMETRY */ + [0x2330, 0x2330], /* TOTAL RUNOUT */ + [0x2331, 0x2331], /* DIMENSION ORIGIN */ + [0x2332, 0x2332], /* CONICAL TAPER */ + [0x2333, 0x2333], /* SLOPE */ + [0x2334, 0x2334], /* COUNTERBORE */ + [0x2335, 0x2335], /* COUNTERSINK */ + [0x2336, 0x2336], /* APL FUNCTIONAL SYMBOL I-BEAM */ + [0x2337, 0x2337], /* APL FUNCTIONAL SYMBOL SQUISH QUAD */ + [0x2338, 0x2338], /* APL FUNCTIONAL SYMBOL QUAD EQUAL */ + [0x2339, 0x2339], /* APL FUNCTIONAL SYMBOL QUAD DIVIDE */ + [0x233a, 0x233a], /* APL FUNCTIONAL SYMBOL QUAD DIAMOND */ + [0x233b, 0x233b], /* APL FUNCTIONAL SYMBOL QUAD JOT */ + [0x233c, 0x233c], /* APL FUNCTIONAL SYMBOL QUAD CIRCLE */ + [0x233d, 0x233d], /* APL FUNCTIONAL SYMBOL CIRCLE STILE */ + [0x233e, 0x233e], /* APL FUNCTIONAL SYMBOL CIRCLE JOT */ + [0x233f, 0x233f], /* APL FUNCTIONAL SYMBOL SLASH BAR */ + [0x2340, 0x2340], /* APL FUNCTIONAL SYMBOL BACKSLASH BAR */ + [0x2341, 0x2341], /* APL FUNCTIONAL SYMBOL QUAD SLASH */ + [0x2342, 0x2342], /* APL FUNCTIONAL SYMBOL QUAD BACKSLASH */ + [0x2343, 0x2343], /* APL FUNCTIONAL SYMBOL QUAD LESS-THAN */ + [0x2344, 0x2344], /* APL FUNCTIONAL SYMBOL QUAD GREATER-THAN */ + [0x2345, 0x2345], /* APL FUNCTIONAL SYMBOL LEFTWARDS VANE */ + [0x2346, 0x2346], /* APL FUNCTIONAL SYMBOL RIGHTWARDS VANE */ + [0x2347, 0x2347], /* APL FUNCTIONAL SYMBOL QUAD LEFTWARDS ARROW */ + [0x2348, 0x2348], /* APL FUNCTIONAL SYMBOL QUAD RIGHTWARDS ARROW */ + [0x2349, 0x2349], /* APL FUNCTIONAL SYMBOL CIRCLE BACKSLASH */ + [0x234a, 0x234a], /* APL FUNCTIONAL SYMBOL DOWN TACK UNDERBAR */ + [0x234b, 0x234b], /* APL FUNCTIONAL SYMBOL DELTA STILE */ + [0x234c, 0x234c], /* APL FUNCTIONAL SYMBOL QUAD DOWN CARET */ + [0x234d, 0x234d], /* APL FUNCTIONAL SYMBOL QUAD DELTA */ + [0x234e, 0x234e], /* APL FUNCTIONAL SYMBOL DOWN TACK JOT */ + [0x234f, 0x234f], /* APL FUNCTIONAL SYMBOL UPWARDS VANE */ + [0x2350, 0x2350], /* APL FUNCTIONAL SYMBOL QUAD UPWARDS ARROW */ + [0x2351, 0x2351], /* APL FUNCTIONAL SYMBOL UP TACK OVERBAR */ + [0x2352, 0x2352], /* APL FUNCTIONAL SYMBOL DEL STILE */ + [0x2353, 0x2353], /* APL FUNCTIONAL SYMBOL QUAD UP CARET */ + [0x2354, 0x2354], /* APL FUNCTIONAL SYMBOL QUAD DEL */ + [0x2355, 0x2355], /* APL FUNCTIONAL SYMBOL UP TACK JOT */ + [0x2356, 0x2356], /* APL FUNCTIONAL SYMBOL DOWNWARDS VANE */ + [0x2357, 0x2357], /* APL FUNCTIONAL SYMBOL QUAD DOWNWARDS ARROW */ + [0x2358, 0x2358], /* APL FUNCTIONAL SYMBOL QUOTE UNDERBAR */ + [0x2359, 0x2359], /* APL FUNCTIONAL SYMBOL DELTA UNDERBAR */ + [0x235a, 0x235a], /* APL FUNCTIONAL SYMBOL DIAMOND UNDERBAR */ + [0x235b, 0x235b], /* APL FUNCTIONAL SYMBOL JOT UNDERBAR */ + [0x235c, 0x235c], /* APL FUNCTIONAL SYMBOL CIRCLE UNDERBAR */ + [0x235d, 0x235d], /* APL FUNCTIONAL SYMBOL UP SHOE JOT */ + [0x235e, 0x235e], /* APL FUNCTIONAL SYMBOL QUOTE QUAD */ + [0x235f, 0x235f], /* APL FUNCTIONAL SYMBOL CIRCLE STAR */ + [0x2360, 0x2360], /* APL FUNCTIONAL SYMBOL QUAD COLON */ + [0x2361, 0x2361], /* APL FUNCTIONAL SYMBOL UP TACK DIAERESIS */ + [0x2362, 0x2362], /* APL FUNCTIONAL SYMBOL DEL DIAERESIS */ + [0x2363, 0x2363], /* APL FUNCTIONAL SYMBOL STAR DIAERESIS */ + [0x2364, 0x2364], /* APL FUNCTIONAL SYMBOL JOT DIAERESIS */ + [0x2365, 0x2365], /* APL FUNCTIONAL SYMBOL CIRCLE DIAERESIS */ + [0x2366, 0x2366], /* APL FUNCTIONAL SYMBOL DOWN SHOE STILE */ + [0x2367, 0x2367], /* APL FUNCTIONAL SYMBOL LEFT SHOE STILE */ + [0x2368, 0x2368], /* APL FUNCTIONAL SYMBOL TILDE DIAERESIS */ + [0x2369, 0x2369], /* APL FUNCTIONAL SYMBOL GREATER-THAN DIAERESIS */ + [0x236a, 0x236a], /* APL FUNCTIONAL SYMBOL COMMA BAR */ + [0x236b, 0x236b], /* APL FUNCTIONAL SYMBOL DEL TILDE */ + [0x236c, 0x236c], /* APL FUNCTIONAL SYMBOL ZILDE */ + [0x236d, 0x236d], /* APL FUNCTIONAL SYMBOL STILE TILDE */ + [0x236e, 0x236e], /* APL FUNCTIONAL SYMBOL SEMICOLON UNDERBAR */ + [0x236f, 0x236f], /* APL FUNCTIONAL SYMBOL QUAD NOT EQUAL */ + [0x2370, 0x2370], /* APL FUNCTIONAL SYMBOL QUAD QUESTION */ + [0x2371, 0x2371], /* APL FUNCTIONAL SYMBOL DOWN CARET TILDE */ + [0x2372, 0x2372], /* APL FUNCTIONAL SYMBOL UP CARET TILDE */ + [0x2373, 0x2373], /* APL FUNCTIONAL SYMBOL IOTA */ + [0x2374, 0x2374], /* APL FUNCTIONAL SYMBOL RHO */ + [0x2375, 0x2375], /* APL FUNCTIONAL SYMBOL OMEGA */ + [0x2376, 0x2376], /* APL FUNCTIONAL SYMBOL ALPHA UNDERBAR */ + [0x2377, 0x2377], /* APL FUNCTIONAL SYMBOL EPSILON UNDERBAR */ + [0x2378, 0x2378], /* APL FUNCTIONAL SYMBOL IOTA UNDERBAR */ + [0x2379, 0x2379], /* APL FUNCTIONAL SYMBOL OMEGA UNDERBAR */ + [0x237a, 0x237a], /* APL FUNCTIONAL SYMBOL ALPHA */ + [0x237b, 0x237b], /* NOT CHECK MARK */ + [0x237c, 0x237c], /* RIGHT ANGLE WITH DOWNWARDS ZIGZAG ARROW */ + [0x237d, 0x237d], /* SHOULDERED OPEN BOX */ + [0x237e, 0x237e], /* BELL SYMBOL */ + [0x237f, 0x237f], /* VERTICAL LINE WITH MIDDLE DOT */ + [0x2380, 0x2380], /* INSERTION SYMBOL */ + [0x2381, 0x2381], /* CONTINUOUS UNDERLINE SYMBOL */ + [0x2382, 0x2382], /* DISCONTINUOUS UNDERLINE SYMBOL */ + [0x2383, 0x2383], /* EMPHASIS SYMBOL */ + [0x2384, 0x2384], /* COMPOSITION SYMBOL */ + [0x2385, 0x2385], /* WHITE SQUARE WITH CENTRE VERTICAL LINE */ + [0x2386, 0x2386], /* ENTER SYMBOL */ + [0x2387, 0x2387], /* ALTERNATIVE KEY SYMBOL */ + [0x2388, 0x2388], /* HELM SYMBOL */ + [0x2389, 0x2389], /* CIRCLED HORIZONTAL BAR WITH NOTCH */ + [0x238a, 0x238a], /* CIRCLED TRIANGLE DOWN */ + [0x238b, 0x238b], /* BROKEN CIRCLE WITH NORTHWEST ARROW */ + [0x238c, 0x238c], /* UNDO SYMBOL */ + [0x238d, 0x238d], /* MONOSTABLE SYMBOL */ + [0x238e, 0x238e], /* HYSTERESIS SYMBOL */ + [0x238f, 0x238f], /* OPEN-CIRCUIT-OUTPUT H-TYPE SYMBOL */ + [0x2390, 0x2390], /* OPEN-CIRCUIT-OUTPUT L-TYPE SYMBOL */ + [0x2391, 0x2391], /* PASSIVE-PULL-DOWN-OUTPUT SYMBOL */ + [0x2392, 0x2392], /* PASSIVE-PULL-UP-OUTPUT SYMBOL */ + [0x2393, 0x2393], /* DIRECT CURRENT SYMBOL FORM TWO */ + [0x2394, 0x2394], /* SOFTWARE-FUNCTION SYMBOL */ + [0x2395, 0x2395], /* APL FUNCTIONAL SYMBOL QUAD */ + [0x2396, 0x2396], /* DECIMAL SEPARATOR KEY SYMBOL */ + [0x2397, 0x2397], /* PREVIOUS PAGE */ + [0x2398, 0x2398], /* NEXT PAGE */ + [0x2399, 0x2399], /* PRINT SCREEN SYMBOL */ + [0x239a, 0x239a], /* CLEAR SCREEN SYMBOL */ + [0x239b, 0x239b], /* LEFT PARENTHESIS UPPER HOOK */ + [0x239c, 0x239c], /* LEFT PARENTHESIS EXTENSION */ + [0x239d, 0x239d], /* LEFT PARENTHESIS LOWER HOOK */ + [0x239e, 0x239e], /* RIGHT PARENTHESIS UPPER HOOK */ + [0x239f, 0x239f], /* RIGHT PARENTHESIS EXTENSION */ + [0x23a0, 0x23a0], /* RIGHT PARENTHESIS LOWER HOOK */ + [0x23a1, 0x23a1], /* LEFT SQUARE BRACKET UPPER CORNER */ + [0x23a2, 0x23a2], /* LEFT SQUARE BRACKET EXTENSION */ + [0x23a3, 0x23a3], /* LEFT SQUARE BRACKET LOWER CORNER */ + [0x23a4, 0x23a4], /* RIGHT SQUARE BRACKET UPPER CORNER */ + [0x23a5, 0x23a5], /* RIGHT SQUARE BRACKET EXTENSION */ + [0x23a6, 0x23a6], /* RIGHT SQUARE BRACKET LOWER CORNER */ + [0x23a7, 0x23a7], /* LEFT CURLY BRACKET UPPER HOOK */ + [0x23a8, 0x23a8], /* LEFT CURLY BRACKET MIDDLE PIECE */ + [0x23a9, 0x23a9], /* LEFT CURLY BRACKET LOWER HOOK */ + [0x23aa, 0x23aa], /* CURLY BRACKET EXTENSION */ + [0x23ab, 0x23ab], /* RIGHT CURLY BRACKET UPPER HOOK */ + [0x23ac, 0x23ac], /* RIGHT CURLY BRACKET MIDDLE PIECE */ + [0x23ad, 0x23ad], /* RIGHT CURLY BRACKET LOWER HOOK */ + [0x23ae, 0x23ae], /* INTEGRAL EXTENSION */ + [0x23af, 0x23af], /* HORIZONTAL LINE EXTENSION */ + [0x23b0, 0x23b0], /* UPPER LEFT OR LOWER RIGHT CURLY BRACKET SECTION */ + [0x23b1, 0x23b1], /* UPPER RIGHT OR LOWER LEFT CURLY BRACKET SECTION */ + [0x23b2, 0x23b2], /* SUMMATION TOP */ + [0x23b3, 0x23b3], /* SUMMATION BOTTOM */ + [0x23b4, 0x23b4], /* TOP SQUARE BRACKET */ + [0x23b5, 0x23b5], /* BOTTOM SQUARE BRACKET */ + [0x23b6, 0x23b6], /* BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET */ + [0x23b7, 0x23b7], /* RADICAL SYMBOL BOTTOM */ + [0x23b8, 0x23b8], /* LEFT VERTICAL BOX LINE */ + [0x23b9, 0x23b9], /* RIGHT VERTICAL BOX LINE */ + [0x23ba, 0x23ba], /* HORIZONTAL SCAN LINE-1 */ + [0x23bb, 0x23bb], /* HORIZONTAL SCAN LINE-3 */ + [0x23bc, 0x23bc], /* HORIZONTAL SCAN LINE-7 */ + [0x23bd, 0x23bd], /* HORIZONTAL SCAN LINE-9 */ + [0x23be, 0x23be], /* DENTISTRY SYMBOL LIGHT VERTICAL AND TOP RIGHT */ + [0x23bf, 0x23bf], /* DENTISTRY SYMBOL LIGHT VERTICAL AND BOTTOM RIGHT */ + [0x23c0, 0x23c0], /* DENTISTRY SYMBOL LIGHT VERTICAL WITH CIRCLE */ + [0x23c1, 0x23c1], /* DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL WITH CIRCLE */ + [0x23c2, 0x23c2], /* DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL WITH CIRCLE */ + [0x23c3, 0x23c3], /* DENTISTRY SYMBOL LIGHT VERTICAL WITH TRIANGLE */ + [0x23c4, 0x23c4], /* DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL WITH TRIANGLE */ + [0x23c5, 0x23c5], /* DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL WITH TRIANGLE */ + [0x23c6, 0x23c6], /* DENTISTRY SYMBOL LIGHT VERTICAL AND WAVE */ + [0x23c7, 0x23c7], /* DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL WITH WAVE */ + [0x23c8, 0x23c8], /* DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL WITH WAVE */ + [0x23c9, 0x23c9], /* DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL */ + [0x23ca, 0x23ca], /* DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL */ + [0x23cb, 0x23cb], /* DENTISTRY SYMBOL LIGHT VERTICAL AND TOP LEFT */ + [0x23cc, 0x23cc], /* DENTISTRY SYMBOL LIGHT VERTICAL AND BOTTOM LEFT */ + [0x23cd, 0x23cd], /* SQUARE FOOT */ + [0x23ce, 0x23ce], /* RETURN SYMBOL */ + [0x23cf, 0x23cf], /* EJECT SYMBOL */ + [0x23d0, 0x23d0], /* VERTICAL LINE EXTENSION */ + [0x23d1, 0x23d1], /* METRICAL BREVE */ + [0x23d2, 0x23d2], /* METRICAL LONG OVER SHORT */ + [0x23d3, 0x23d3], /* METRICAL SHORT OVER LONG */ + [0x23d4, 0x23d4], /* METRICAL LONG OVER TWO SHORTS */ + [0x23d5, 0x23d5], /* METRICAL TWO SHORTS OVER LONG */ + [0x23d6, 0x23d6], /* METRICAL TWO SHORTS JOINED */ + [0x23d7, 0x23d7], /* METRICAL TRISEME */ + [0x23d8, 0x23d8], /* METRICAL TETRASEME */ + [0x23d9, 0x23d9], /* METRICAL PENTASEME */ + [0x23da, 0x23da], /* EARTH GROUND */ + [0x23db, 0x23db], /* FUSE */ + [0x23dc, 0x23dc], /* TOP PARENTHESIS */ + [0x23dd, 0x23dd], /* BOTTOM PARENTHESIS */ + [0x23de, 0x23de], /* TOP CURLY BRACKET */ + [0x23df, 0x23df], /* BOTTOM CURLY BRACKET */ + [0x23e0, 0x23e0], /* TOP TORTOISE SHELL BRACKET */ + [0x23e1, 0x23e1], /* BOTTOM TORTOISE SHELL BRACKET */ + [0x23e2, 0x23e2], /* WHITE TRAPEZIUM */ + [0x23e3, 0x23e3], /* BENZENE RING WITH CIRCLE */ + [0x23e4, 0x23e4], /* STRAIGHTNESS */ + [0x23e5, 0x23e5], /* FLATNESS */ + [0x23e6, 0x23e6], /* AC CURRENT */ + [0x23e7, 0x23e7], /* ELECTRICAL INTERSECTION */ + [0x23e8, 0x23e8], /* DECIMAL EXPONENT SYMBOL */ + [0x23e9, 0x23e9], /* BLACK RIGHT-POINTING DOUBLE TRIANGLE */ + [0x23ea, 0x23ea], /* BLACK LEFT-POINTING DOUBLE TRIANGLE */ + [0x23eb, 0x23eb], /* BLACK UP-POINTING DOUBLE TRIANGLE */ + [0x23ec, 0x23ec], /* BLACK DOWN-POINTING DOUBLE TRIANGLE */ + [0x23ed, 0x23ed], /* BLACK RIGHT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR */ + [0x23ee, 0x23ee], /* BLACK LEFT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR */ + [0x23ef, 0x23ef], /* BLACK RIGHT-POINTING TRIANGLE WITH DOUBLE VERTICAL BAR */ + [0x23f0, 0x23f0], /* ALARM CLOCK */ + [0x23f1, 0x23f1], /* STOPWATCH */ + [0x23f2, 0x23f2], /* TIMER CLOCK */ + [0x23f3, 0x23f3], /* HOURGLASS WITH FLOWING SAND */ + [0x23f4, 0x23f4], /* BLACK MEDIUM LEFT-POINTING TRIANGLE */ + [0x23f5, 0x23f5], /* BLACK MEDIUM RIGHT-POINTING TRIANGLE */ + [0x23f6, 0x23f6], /* BLACK MEDIUM UP-POINTING TRIANGLE */ + [0x23f7, 0x23f7], /* BLACK MEDIUM DOWN-POINTING TRIANGLE */ + [0x23f8, 0x23f8], /* DOUBLE VERTICAL BAR */ + [0x23f9, 0x23f9], /* BLACK SQUARE FOR STOP */ + [0x23fa, 0x23fa], /* BLACK CIRCLE FOR RECORD */ + [0x23fb, 0x23fb], /* POWER SYMBOL */ + [0x23fc, 0x23fc], /* POWER ON-OFF SYMBOL */ + [0x23fd, 0x23fd], /* POWER ON SYMBOL */ + [0x23fe, 0x23fe], /* POWER SLEEP SYMBOL */ + [0x23ff, 0x23ff], + [0x2400, 0x2400], /* SYMBOL FOR NULL (GRAPHIC FOR NULL) */ + [0x2401, 0x2401], /* SYMBOL FOR START OF HEADING (GRAPHIC FOR START OF HEADING) */ + [0x2402, 0x2402], /* SYMBOL FOR START OF TEXT (GRAPHIC FOR START OF TEXT) */ + [0x2403, 0x2403], /* SYMBOL FOR END OF TEXT (GRAPHIC FOR END OF TEXT) */ + [0x2404, 0x2404], /* SYMBOL FOR END OF TRANSMISSION (GRAPHIC FOR END OF TRANSMISSION) */ + [0x2405, 0x2405], /* SYMBOL FOR ENQUIRY (GRAPHIC FOR ENQUIRY) */ + [0x2406, 0x2406], /* SYMBOL FOR ACKNOWLEDGE (GRAPHIC FOR ACKNOWLEDGE) */ + [0x2407, 0x2407], /* SYMBOL FOR BELL (GRAPHIC FOR BELL) */ + [0x2408, 0x2408], /* SYMBOL FOR BACKSPACE (GRAPHIC FOR BACKSPACE) */ + [0x2409, 0x2409], /* SYMBOL FOR HORIZONTAL TABULATION (GRAPHIC FOR HORIZONTAL TABULATION) */ + [0x240a, 0x240a], /* SYMBOL FOR LINE FEED (GRAPHIC FOR LINE FEED) */ + [0x240b, 0x240b], /* SYMBOL FOR VERTICAL TABULATION (GRAPHIC FOR VERTICAL TABULATION) */ + [0x240c, 0x240c], /* SYMBOL FOR FORM FEED (GRAPHIC FOR FORM FEED) */ + [0x240d, 0x240d], /* SYMBOL FOR CARRIAGE RETURN (GRAPHIC FOR CARRIAGE RETURN) */ + [0x240e, 0x240e], /* SYMBOL FOR SHIFT OUT (GRAPHIC FOR SHIFT OUT) */ + [0x240f, 0x240f], /* SYMBOL FOR SHIFT IN (GRAPHIC FOR SHIFT IN) */ + [0x2410, 0x2410], /* SYMBOL FOR DATA LINK ESCAPE (GRAPHIC FOR DATA LINK ESCAPE) */ + [0x2411, 0x2411], /* SYMBOL FOR DEVICE CONTROL ONE (GRAPHIC FOR DEVICE CONTROL ONE) */ + [0x2412, 0x2412], /* SYMBOL FOR DEVICE CONTROL TWO (GRAPHIC FOR DEVICE CONTROL TWO) */ + [0x2413, 0x2413], /* SYMBOL FOR DEVICE CONTROL THREE (GRAPHIC FOR DEVICE CONTROL THREE) */ + [0x2414, 0x2414], /* SYMBOL FOR DEVICE CONTROL FOUR (GRAPHIC FOR DEVICE CONTROL FOUR) */ + [0x2415, 0x2415], /* SYMBOL FOR NEGATIVE ACKNOWLEDGE (GRAPHIC FOR NEGATIVE ACKNOWLEDGE) */ + [0x2416, 0x2416], /* SYMBOL FOR SYNCHRONOUS IDLE (GRAPHIC FOR SYNCHRONOUS IDLE) */ + [0x2417, 0x2417], /* SYMBOL FOR END OF TRANSMISSION BLOCK (GRAPHIC FOR END OF TRANSMISSION BLOCK) */ + [0x2418, 0x2418], /* SYMBOL FOR CANCEL (GRAPHIC FOR CANCEL) */ + [0x2419, 0x2419], /* SYMBOL FOR END OF MEDIUM (GRAPHIC FOR END OF MEDIUM) */ + [0x241a, 0x241a], /* SYMBOL FOR SUBSTITUTE (GRAPHIC FOR SUBSTITUTE) */ + [0x241b, 0x241b], /* SYMBOL FOR ESCAPE (GRAPHIC FOR ESCAPE) */ + [0x241c, 0x241c], /* SYMBOL FOR FILE SEPARATOR (GRAPHIC FOR FILE SEPARATOR) */ + [0x241d, 0x241d], /* SYMBOL FOR GROUP SEPARATOR (GRAPHIC FOR GROUP SEPARATOR) */ + [0x241e, 0x241e], /* SYMBOL FOR RECORD SEPARATOR (GRAPHIC FOR RECORD SEPARATOR) */ + [0x241f, 0x241f], /* SYMBOL FOR UNIT SEPARATOR (GRAPHIC FOR UNIT SEPARATOR) */ + [0x2420, 0x2420], /* SYMBOL FOR SPACE (GRAPHIC FOR SPACE) */ + [0x2421, 0x2421], /* SYMBOL FOR DELETE (GRAPHIC FOR DELETE) */ + [0x2422, 0x2422], /* BLANK SYMBOL (BLANK) */ + [0x2423, 0x2423], /* OPEN BOX */ + [0x2424, 0x2424], /* SYMBOL FOR NEWLINE (GRAPHIC FOR NEWLINE) */ + [0x2425, 0x2425], /* SYMBOL FOR DELETE FORM TWO */ + [0x2426, 0x2426], /* SYMBOL FOR SUBSTITUTE FORM TWO */ + [0x2427, 0x2427], + [0x2428, 0x2428], + [0x2429, 0x2429], + [0x242a, 0x242a], + [0x242b, 0x242b], + [0x242c, 0x242c], + [0x242d, 0x242d], + [0x242e, 0x242e], + [0x242f, 0x242f], + [0x2430, 0x2430], + [0x2431, 0x2431], + [0x2432, 0x2432], + [0x2433, 0x2433], + [0x2434, 0x2434], + [0x2435, 0x2435], + [0x2436, 0x2436], + [0x2437, 0x2437], + [0x2438, 0x2438], + [0x2439, 0x2439], + [0x243a, 0x243a], + [0x243b, 0x243b], + [0x243c, 0x243c], + [0x243d, 0x243d], + [0x243e, 0x243e], + [0x243f, 0x243f], + [0x2440, 0x2440], /* OCR HOOK */ + [0x2441, 0x2441], /* OCR CHAIR */ + [0x2442, 0x2442], /* OCR FORK */ + [0x2443, 0x2443], /* OCR INVERTED FORK */ + [0x2444, 0x2444], /* OCR BELT BUCKLE */ + [0x2445, 0x2445], /* OCR BOW TIE */ + [0x2446, 0x2446], /* OCR BRANCH BANK IDENTIFICATION */ + [0x2447, 0x2447], /* OCR AMOUNT OF CHECK */ + [0x2448, 0x2448], /* OCR DASH */ + [0x2449, 0x2449], /* OCR CUSTOMER ACCOUNT NUMBER */ + [0x244a, 0x244a], /* OCR DOUBLE BACKSLASH */ + [0x244b, 0x244b], + [0x244c, 0x244c], + [0x244d, 0x244d], + [0x244e, 0x244e], + [0x244f, 0x244f], + [0x2450, 0x2450], + [0x2451, 0x2451], + [0x2452, 0x2452], + [0x2453, 0x2453], + [0x2454, 0x2454], + [0x2455, 0x2455], + [0x2456, 0x2456], + [0x2457, 0x2457], + [0x2458, 0x2458], + [0x2459, 0x2459], + [0x245a, 0x245a], + [0x245b, 0x245b], + [0x245c, 0x245c], + [0x245d, 0x245d], + [0x245e, 0x245e], + [0x245f, 0x245f], + [0x2460, 0x2460], /* CIRCLED DIGIT ONE */ + [0x2461, 0x2461], /* CIRCLED DIGIT TWO */ + [0x2462, 0x2462], /* CIRCLED DIGIT THREE */ + [0x2463, 0x2463], /* CIRCLED DIGIT FOUR */ + [0x2464, 0x2464], /* CIRCLED DIGIT FIVE */ + [0x2465, 0x2465], /* CIRCLED DIGIT SIX */ + [0x2466, 0x2466], /* CIRCLED DIGIT SEVEN */ + [0x2467, 0x2467], /* CIRCLED DIGIT EIGHT */ + [0x2468, 0x2468], /* CIRCLED DIGIT NINE */ + [0x2469, 0x2469], /* CIRCLED NUMBER TEN */ + [0x246a, 0x246a], /* CIRCLED NUMBER ELEVEN */ + [0x246b, 0x246b], /* CIRCLED NUMBER TWELVE */ + [0x246c, 0x246c], /* CIRCLED NUMBER THIRTEEN */ + [0x246d, 0x246d], /* CIRCLED NUMBER FOURTEEN */ + [0x246e, 0x246e], /* CIRCLED NUMBER FIFTEEN */ + [0x246f, 0x246f], /* CIRCLED NUMBER SIXTEEN */ + [0x2470, 0x2470], /* CIRCLED NUMBER SEVENTEEN */ + [0x2471, 0x2471], /* CIRCLED NUMBER EIGHTEEN */ + [0x2472, 0x2472], /* CIRCLED NUMBER NINETEEN */ + [0x2473, 0x2473], /* CIRCLED NUMBER TWENTY */ + [0x2474, 0x2474], /* PARENTHESIZED DIGIT ONE */ + [0x2475, 0x2475], /* PARENTHESIZED DIGIT TWO */ + [0x2476, 0x2476], /* PARENTHESIZED DIGIT THREE */ + [0x2477, 0x2477], /* PARENTHESIZED DIGIT FOUR */ + [0x2478, 0x2478], /* PARENTHESIZED DIGIT FIVE */ + [0x2479, 0x2479], /* PARENTHESIZED DIGIT SIX */ + [0x247a, 0x247a], /* PARENTHESIZED DIGIT SEVEN */ + [0x247b, 0x247b], /* PARENTHESIZED DIGIT EIGHT */ + [0x247c, 0x247c], /* PARENTHESIZED DIGIT NINE */ + [0x247d, 0x247d], /* PARENTHESIZED NUMBER TEN */ + [0x247e, 0x247e], /* PARENTHESIZED NUMBER ELEVEN */ + [0x247f, 0x247f], /* PARENTHESIZED NUMBER TWELVE */ + [0x2480, 0x2480], /* PARENTHESIZED NUMBER THIRTEEN */ + [0x2481, 0x2481], /* PARENTHESIZED NUMBER FOURTEEN */ + [0x2482, 0x2482], /* PARENTHESIZED NUMBER FIFTEEN */ + [0x2483, 0x2483], /* PARENTHESIZED NUMBER SIXTEEN */ + [0x2484, 0x2484], /* PARENTHESIZED NUMBER SEVENTEEN */ + [0x2485, 0x2485], /* PARENTHESIZED NUMBER EIGHTEEN */ + [0x2486, 0x2486], /* PARENTHESIZED NUMBER NINETEEN */ + [0x2487, 0x2487], /* PARENTHESIZED NUMBER TWENTY */ + [0x2488, 0x2488], /* DIGIT ONE FULL STOP (DIGIT ONE PERIOD) */ + [0x2489, 0x2489], /* DIGIT TWO FULL STOP (DIGIT TWO PERIOD) */ + [0x248a, 0x248a], /* DIGIT THREE FULL STOP (DIGIT THREE PERIOD) */ + [0x248b, 0x248b], /* DIGIT FOUR FULL STOP (DIGIT FOUR PERIOD) */ + [0x248c, 0x248c], /* DIGIT FIVE FULL STOP (DIGIT FIVE PERIOD) */ + [0x248d, 0x248d], /* DIGIT SIX FULL STOP (DIGIT SIX PERIOD) */ + [0x248e, 0x248e], /* DIGIT SEVEN FULL STOP (DIGIT SEVEN PERIOD) */ + [0x248f, 0x248f], /* DIGIT EIGHT FULL STOP (DIGIT EIGHT PERIOD) */ + [0x2490, 0x2490], /* DIGIT NINE FULL STOP (DIGIT NINE PERIOD) */ + [0x2491, 0x2491], /* NUMBER TEN FULL STOP (NUMBER TEN PERIOD) */ + [0x2492, 0x2492], /* NUMBER ELEVEN FULL STOP (NUMBER ELEVEN PERIOD) */ + [0x2493, 0x2493], /* NUMBER TWELVE FULL STOP (NUMBER TWELVE PERIOD) */ + [0x2494, 0x2494], /* NUMBER THIRTEEN FULL STOP (NUMBER THIRTEEN PERIOD) */ + [0x2495, 0x2495], /* NUMBER FOURTEEN FULL STOP (NUMBER FOURTEEN PERIOD) */ + [0x2496, 0x2496], /* NUMBER FIFTEEN FULL STOP (NUMBER FIFTEEN PERIOD) */ + [0x2497, 0x2497], /* NUMBER SIXTEEN FULL STOP (NUMBER SIXTEEN PERIOD) */ + [0x2498, 0x2498], /* NUMBER SEVENTEEN FULL STOP (NUMBER SEVENTEEN PERIOD) */ + [0x2499, 0x2499], /* NUMBER EIGHTEEN FULL STOP (NUMBER EIGHTEEN PERIOD) */ + [0x249a, 0x249a], /* NUMBER NINETEEN FULL STOP (NUMBER NINETEEN PERIOD) */ + [0x249b, 0x249b], /* NUMBER TWENTY FULL STOP (NUMBER TWENTY PERIOD) */ + [0x249c, 0x249c], /* PARENTHESIZED LATIN SMALL LETTER A */ + [0x249d, 0x249d], /* PARENTHESIZED LATIN SMALL LETTER B */ + [0x249e, 0x249e], /* PARENTHESIZED LATIN SMALL LETTER C */ + [0x249f, 0x249f], /* PARENTHESIZED LATIN SMALL LETTER D */ + [0x24a0, 0x24a0], /* PARENTHESIZED LATIN SMALL LETTER E */ + [0x24a1, 0x24a1], /* PARENTHESIZED LATIN SMALL LETTER F */ + [0x24a2, 0x24a2], /* PARENTHESIZED LATIN SMALL LETTER G */ + [0x24a3, 0x24a3], /* PARENTHESIZED LATIN SMALL LETTER H */ + [0x24a4, 0x24a4], /* PARENTHESIZED LATIN SMALL LETTER I */ + [0x24a5, 0x24a5], /* PARENTHESIZED LATIN SMALL LETTER J */ + [0x24a6, 0x24a6], /* PARENTHESIZED LATIN SMALL LETTER K */ + [0x24a7, 0x24a7], /* PARENTHESIZED LATIN SMALL LETTER L */ + [0x24a8, 0x24a8], /* PARENTHESIZED LATIN SMALL LETTER M */ + [0x24a9, 0x24a9], /* PARENTHESIZED LATIN SMALL LETTER N */ + [0x24aa, 0x24aa], /* PARENTHESIZED LATIN SMALL LETTER O */ + [0x24ab, 0x24ab], /* PARENTHESIZED LATIN SMALL LETTER P */ + [0x24ac, 0x24ac], /* PARENTHESIZED LATIN SMALL LETTER Q */ + [0x24ad, 0x24ad], /* PARENTHESIZED LATIN SMALL LETTER R */ + [0x24ae, 0x24ae], /* PARENTHESIZED LATIN SMALL LETTER S */ + [0x24af, 0x24af], /* PARENTHESIZED LATIN SMALL LETTER T */ + [0x24b0, 0x24b0], /* PARENTHESIZED LATIN SMALL LETTER U */ + [0x24b1, 0x24b1], /* PARENTHESIZED LATIN SMALL LETTER V */ + [0x24b2, 0x24b2], /* PARENTHESIZED LATIN SMALL LETTER W */ + [0x24b3, 0x24b3], /* PARENTHESIZED LATIN SMALL LETTER X */ + [0x24b4, 0x24b4], /* PARENTHESIZED LATIN SMALL LETTER Y */ + [0x24b5, 0x24b5], /* PARENTHESIZED LATIN SMALL LETTER Z */ + [0x24b6, 0x24d0], /* CIRCLED LATIN CAPITAL LETTER A */ + [0x24b7, 0x24d1], /* CIRCLED LATIN CAPITAL LETTER B */ + [0x24b8, 0x24d2], /* CIRCLED LATIN CAPITAL LETTER C */ + [0x24b9, 0x24d3], /* CIRCLED LATIN CAPITAL LETTER D */ + [0x24ba, 0x24d4], /* CIRCLED LATIN CAPITAL LETTER E */ + [0x24bb, 0x24d5], /* CIRCLED LATIN CAPITAL LETTER F */ + [0x24bc, 0x24d6], /* CIRCLED LATIN CAPITAL LETTER G */ + [0x24bd, 0x24d7], /* CIRCLED LATIN CAPITAL LETTER H */ + [0x24be, 0x24d8], /* CIRCLED LATIN CAPITAL LETTER I */ + [0x24bf, 0x24d9], /* CIRCLED LATIN CAPITAL LETTER J */ + [0x24c0, 0x24da], /* CIRCLED LATIN CAPITAL LETTER K */ + [0x24c1, 0x24db], /* CIRCLED LATIN CAPITAL LETTER L */ + [0x24c2, 0x24dc], /* CIRCLED LATIN CAPITAL LETTER M */ + [0x24c3, 0x24dd], /* CIRCLED LATIN CAPITAL LETTER N */ + [0x24c4, 0x24de], /* CIRCLED LATIN CAPITAL LETTER O */ + [0x24c5, 0x24df], /* CIRCLED LATIN CAPITAL LETTER P */ + [0x24c6, 0x24e0], /* CIRCLED LATIN CAPITAL LETTER Q */ + [0x24c7, 0x24e1], /* CIRCLED LATIN CAPITAL LETTER R */ + [0x24c8, 0x24e2], /* CIRCLED LATIN CAPITAL LETTER S */ + [0x24c9, 0x24e3], /* CIRCLED LATIN CAPITAL LETTER T */ + [0x24ca, 0x24e4], /* CIRCLED LATIN CAPITAL LETTER U */ + [0x24cb, 0x24e5], /* CIRCLED LATIN CAPITAL LETTER V */ + [0x24cc, 0x24e6], /* CIRCLED LATIN CAPITAL LETTER W */ + [0x24cd, 0x24e7], /* CIRCLED LATIN CAPITAL LETTER X */ + [0x24ce, 0x24e8], /* CIRCLED LATIN CAPITAL LETTER Y */ + [0x24cf, 0x24e9], /* CIRCLED LATIN CAPITAL LETTER Z */ + [0x24b6, 0x24d0], /* CIRCLED LATIN SMALL LETTER A */ + [0x24b7, 0x24d1], /* CIRCLED LATIN SMALL LETTER B */ + [0x24b8, 0x24d2], /* CIRCLED LATIN SMALL LETTER C */ + [0x24b9, 0x24d3], /* CIRCLED LATIN SMALL LETTER D */ + [0x24ba, 0x24d4], /* CIRCLED LATIN SMALL LETTER E */ + [0x24bb, 0x24d5], /* CIRCLED LATIN SMALL LETTER F */ + [0x24bc, 0x24d6], /* CIRCLED LATIN SMALL LETTER G */ + [0x24bd, 0x24d7], /* CIRCLED LATIN SMALL LETTER H */ + [0x24be, 0x24d8], /* CIRCLED LATIN SMALL LETTER I */ + [0x24bf, 0x24d9], /* CIRCLED LATIN SMALL LETTER J */ + [0x24c0, 0x24da], /* CIRCLED LATIN SMALL LETTER K */ + [0x24c1, 0x24db], /* CIRCLED LATIN SMALL LETTER L */ + [0x24c2, 0x24dc], /* CIRCLED LATIN SMALL LETTER M */ + [0x24c3, 0x24dd], /* CIRCLED LATIN SMALL LETTER N */ + [0x24c4, 0x24de], /* CIRCLED LATIN SMALL LETTER O */ + [0x24c5, 0x24df], /* CIRCLED LATIN SMALL LETTER P */ + [0x24c6, 0x24e0], /* CIRCLED LATIN SMALL LETTER Q */ + [0x24c7, 0x24e1], /* CIRCLED LATIN SMALL LETTER R */ + [0x24c8, 0x24e2], /* CIRCLED LATIN SMALL LETTER S */ + [0x24c9, 0x24e3], /* CIRCLED LATIN SMALL LETTER T */ + [0x24ca, 0x24e4], /* CIRCLED LATIN SMALL LETTER U */ + [0x24cb, 0x24e5], /* CIRCLED LATIN SMALL LETTER V */ + [0x24cc, 0x24e6], /* CIRCLED LATIN SMALL LETTER W */ + [0x24cd, 0x24e7], /* CIRCLED LATIN SMALL LETTER X */ + [0x24ce, 0x24e8], /* CIRCLED LATIN SMALL LETTER Y */ + [0x24cf, 0x24e9], /* CIRCLED LATIN SMALL LETTER Z */ + [0x24ea, 0x24ea], /* CIRCLED DIGIT ZERO */ + [0x24eb, 0x24eb], /* NEGATIVE CIRCLED NUMBER ELEVEN */ + [0x24ec, 0x24ec], /* NEGATIVE CIRCLED NUMBER TWELVE */ + [0x24ed, 0x24ed], /* NEGATIVE CIRCLED NUMBER THIRTEEN */ + [0x24ee, 0x24ee], /* NEGATIVE CIRCLED NUMBER FOURTEEN */ + [0x24ef, 0x24ef], /* NEGATIVE CIRCLED NUMBER FIFTEEN */ + [0x24f0, 0x24f0], /* NEGATIVE CIRCLED NUMBER SIXTEEN */ + [0x24f1, 0x24f1], /* NEGATIVE CIRCLED NUMBER SEVENTEEN */ + [0x24f2, 0x24f2], /* NEGATIVE CIRCLED NUMBER EIGHTEEN */ + [0x24f3, 0x24f3], /* NEGATIVE CIRCLED NUMBER NINETEEN */ + [0x24f4, 0x24f4], /* NEGATIVE CIRCLED NUMBER TWENTY */ + [0x24f5, 0x24f5], /* DOUBLE CIRCLED DIGIT ONE */ + [0x24f6, 0x24f6], /* DOUBLE CIRCLED DIGIT TWO */ + [0x24f7, 0x24f7], /* DOUBLE CIRCLED DIGIT THREE */ + [0x24f8, 0x24f8], /* DOUBLE CIRCLED DIGIT FOUR */ + [0x24f9, 0x24f9], /* DOUBLE CIRCLED DIGIT FIVE */ + [0x24fa, 0x24fa], /* DOUBLE CIRCLED DIGIT SIX */ + [0x24fb, 0x24fb], /* DOUBLE CIRCLED DIGIT SEVEN */ + [0x24fc, 0x24fc], /* DOUBLE CIRCLED DIGIT EIGHT */ + [0x24fd, 0x24fd], /* DOUBLE CIRCLED DIGIT NINE */ + [0x24fe, 0x24fe], /* DOUBLE CIRCLED NUMBER TEN */ + [0x24ff, 0x24ff], /* NEGATIVE CIRCLED DIGIT ZERO */ + [0x2500, 0x2500], /* BOX DRAWINGS LIGHT HORIZONTAL (FORMS LIGHT HORIZONTAL) */ + [0x2501, 0x2501], /* BOX DRAWINGS HEAVY HORIZONTAL (FORMS HEAVY HORIZONTAL) */ + [0x2502, 0x2502], /* BOX DRAWINGS LIGHT VERTICAL (FORMS LIGHT VERTICAL) */ + [0x2503, 0x2503], /* BOX DRAWINGS HEAVY VERTICAL (FORMS HEAVY VERTICAL) */ + [0x2504, 0x2504], /* BOX DRAWINGS LIGHT TRIPLE DASH HORIZONTAL (FORMS LIGHT TRIPLE DASH HORIZONTAL) */ + [0x2505, 0x2505], /* BOX DRAWINGS HEAVY TRIPLE DASH HORIZONTAL (FORMS HEAVY TRIPLE DASH HORIZONTAL) */ + [0x2506, 0x2506], /* BOX DRAWINGS LIGHT TRIPLE DASH VERTICAL (FORMS LIGHT TRIPLE DASH VERTICAL) */ + [0x2507, 0x2507], /* BOX DRAWINGS HEAVY TRIPLE DASH VERTICAL (FORMS HEAVY TRIPLE DASH VERTICAL) */ + [0x2508, 0x2508], /* BOX DRAWINGS LIGHT QUADRUPLE DASH HORIZONTAL (FORMS LIGHT QUADRUPLE DASH HORIZONTAL) */ + [0x2509, 0x2509], /* BOX DRAWINGS HEAVY QUADRUPLE DASH HORIZONTAL (FORMS HEAVY QUADRUPLE DASH HORIZONTAL) */ + [0x250a, 0x250a], /* BOX DRAWINGS LIGHT QUADRUPLE DASH VERTICAL (FORMS LIGHT QUADRUPLE DASH VERTICAL) */ + [0x250b, 0x250b], /* BOX DRAWINGS HEAVY QUADRUPLE DASH VERTICAL (FORMS HEAVY QUADRUPLE DASH VERTICAL) */ + [0x250c, 0x250c], /* BOX DRAWINGS LIGHT DOWN AND RIGHT (FORMS LIGHT DOWN AND RIGHT) */ + [0x250d, 0x250d], /* BOX DRAWINGS DOWN LIGHT AND RIGHT HEAVY (FORMS DOWN LIGHT AND RIGHT HEAVY) */ + [0x250e, 0x250e], /* BOX DRAWINGS DOWN HEAVY AND RIGHT LIGHT (FORMS DOWN HEAVY AND RIGHT LIGHT) */ + [0x250f, 0x250f], /* BOX DRAWINGS HEAVY DOWN AND RIGHT (FORMS HEAVY DOWN AND RIGHT) */ + [0x2510, 0x2510], /* BOX DRAWINGS LIGHT DOWN AND LEFT (FORMS LIGHT DOWN AND LEFT) */ + [0x2511, 0x2511], /* BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY (FORMS DOWN LIGHT AND LEFT HEAVY) */ + [0x2512, 0x2512], /* BOX DRAWINGS DOWN HEAVY AND LEFT LIGHT (FORMS DOWN HEAVY AND LEFT LIGHT) */ + [0x2513, 0x2513], /* BOX DRAWINGS HEAVY DOWN AND LEFT (FORMS HEAVY DOWN AND LEFT) */ + [0x2514, 0x2514], /* BOX DRAWINGS LIGHT UP AND RIGHT (FORMS LIGHT UP AND RIGHT) */ + [0x2515, 0x2515], /* BOX DRAWINGS UP LIGHT AND RIGHT HEAVY (FORMS UP LIGHT AND RIGHT HEAVY) */ + [0x2516, 0x2516], /* BOX DRAWINGS UP HEAVY AND RIGHT LIGHT (FORMS UP HEAVY AND RIGHT LIGHT) */ + [0x2517, 0x2517], /* BOX DRAWINGS HEAVY UP AND RIGHT (FORMS HEAVY UP AND RIGHT) */ + [0x2518, 0x2518], /* BOX DRAWINGS LIGHT UP AND LEFT (FORMS LIGHT UP AND LEFT) */ + [0x2519, 0x2519], /* BOX DRAWINGS UP LIGHT AND LEFT HEAVY (FORMS UP LIGHT AND LEFT HEAVY) */ + [0x251a, 0x251a], /* BOX DRAWINGS UP HEAVY AND LEFT LIGHT (FORMS UP HEAVY AND LEFT LIGHT) */ + [0x251b, 0x251b], /* BOX DRAWINGS HEAVY UP AND LEFT (FORMS HEAVY UP AND LEFT) */ + [0x251c, 0x251c], /* BOX DRAWINGS LIGHT VERTICAL AND RIGHT (FORMS LIGHT VERTICAL AND RIGHT) */ + [0x251d, 0x251d], /* BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY (FORMS VERTICAL LIGHT AND RIGHT HEAVY) */ + [0x251e, 0x251e], /* BOX DRAWINGS UP HEAVY AND RIGHT DOWN LIGHT (FORMS UP HEAVY AND RIGHT DOWN LIGHT) */ + [0x251f, 0x251f], /* BOX DRAWINGS DOWN HEAVY AND RIGHT UP LIGHT (FORMS DOWN HEAVY AND RIGHT UP LIGHT) */ + [0x2520, 0x2520], /* BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT (FORMS VERTICAL HEAVY AND RIGHT LIGHT) */ + [0x2521, 0x2521], /* BOX DRAWINGS DOWN LIGHT AND RIGHT UP HEAVY (FORMS DOWN LIGHT AND RIGHT UP HEAVY) */ + [0x2522, 0x2522], /* BOX DRAWINGS UP LIGHT AND RIGHT DOWN HEAVY (FORMS UP LIGHT AND RIGHT DOWN HEAVY) */ + [0x2523, 0x2523], /* BOX DRAWINGS HEAVY VERTICAL AND RIGHT (FORMS HEAVY VERTICAL AND RIGHT) */ + [0x2524, 0x2524], /* BOX DRAWINGS LIGHT VERTICAL AND LEFT (FORMS LIGHT VERTICAL AND LEFT) */ + [0x2525, 0x2525], /* BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY (FORMS VERTICAL LIGHT AND LEFT HEAVY) */ + [0x2526, 0x2526], /* BOX DRAWINGS UP HEAVY AND LEFT DOWN LIGHT (FORMS UP HEAVY AND LEFT DOWN LIGHT) */ + [0x2527, 0x2527], /* BOX DRAWINGS DOWN HEAVY AND LEFT UP LIGHT (FORMS DOWN HEAVY AND LEFT UP LIGHT) */ + [0x2528, 0x2528], /* BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT (FORMS VERTICAL HEAVY AND LEFT LIGHT) */ + [0x2529, 0x2529], /* BOX DRAWINGS DOWN LIGHT AND LEFT UP HEAVY (FORMS DOWN LIGHT AND LEFT UP HEAVY) */ + [0x252a, 0x252a], /* BOX DRAWINGS UP LIGHT AND LEFT DOWN HEAVY (FORMS UP LIGHT AND LEFT DOWN HEAVY) */ + [0x252b, 0x252b], /* BOX DRAWINGS HEAVY VERTICAL AND LEFT (FORMS HEAVY VERTICAL AND LEFT) */ + [0x252c, 0x252c], /* BOX DRAWINGS LIGHT DOWN AND HORIZONTAL (FORMS LIGHT DOWN AND HORIZONTAL) */ + [0x252d, 0x252d], /* BOX DRAWINGS LEFT HEAVY AND RIGHT DOWN LIGHT (FORMS LEFT HEAVY AND RIGHT DOWN LIGHT) */ + [0x252e, 0x252e], /* BOX DRAWINGS RIGHT HEAVY AND LEFT DOWN LIGHT (FORMS RIGHT HEAVY AND LEFT DOWN LIGHT) */ + [0x252f, 0x252f], /* BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY (FORMS DOWN LIGHT AND HORIZONTAL HEAVY) */ + [0x2530, 0x2530], /* BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT (FORMS DOWN HEAVY AND HORIZONTAL LIGHT) */ + [0x2531, 0x2531], /* BOX DRAWINGS RIGHT LIGHT AND LEFT DOWN HEAVY (FORMS RIGHT LIGHT AND LEFT DOWN HEAVY) */ + [0x2532, 0x2532], /* BOX DRAWINGS LEFT LIGHT AND RIGHT DOWN HEAVY (FORMS LEFT LIGHT AND RIGHT DOWN HEAVY) */ + [0x2533, 0x2533], /* BOX DRAWINGS HEAVY DOWN AND HORIZONTAL (FORMS HEAVY DOWN AND HORIZONTAL) */ + [0x2534, 0x2534], /* BOX DRAWINGS LIGHT UP AND HORIZONTAL (FORMS LIGHT UP AND HORIZONTAL) */ + [0x2535, 0x2535], /* BOX DRAWINGS LEFT HEAVY AND RIGHT UP LIGHT (FORMS LEFT HEAVY AND RIGHT UP LIGHT) */ + [0x2536, 0x2536], /* BOX DRAWINGS RIGHT HEAVY AND LEFT UP LIGHT (FORMS RIGHT HEAVY AND LEFT UP LIGHT) */ + [0x2537, 0x2537], /* BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY (FORMS UP LIGHT AND HORIZONTAL HEAVY) */ + [0x2538, 0x2538], /* BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT (FORMS UP HEAVY AND HORIZONTAL LIGHT) */ + [0x2539, 0x2539], /* BOX DRAWINGS RIGHT LIGHT AND LEFT UP HEAVY (FORMS RIGHT LIGHT AND LEFT UP HEAVY) */ + [0x253a, 0x253a], /* BOX DRAWINGS LEFT LIGHT AND RIGHT UP HEAVY (FORMS LEFT LIGHT AND RIGHT UP HEAVY) */ + [0x253b, 0x253b], /* BOX DRAWINGS HEAVY UP AND HORIZONTAL (FORMS HEAVY UP AND HORIZONTAL) */ + [0x253c, 0x253c], /* BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL (FORMS LIGHT VERTICAL AND HORIZONTAL) */ + [0x253d, 0x253d], /* BOX DRAWINGS LEFT HEAVY AND RIGHT VERTICAL LIGHT (FORMS LEFT HEAVY AND RIGHT VERTICAL LIGHT) */ + [0x253e, 0x253e], /* BOX DRAWINGS RIGHT HEAVY AND LEFT VERTICAL LIGHT (FORMS RIGHT HEAVY AND LEFT VERTICAL LIGHT) */ + [0x253f, 0x253f], /* BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY (FORMS VERTICAL LIGHT AND HORIZONTAL HEAVY) */ + [0x2540, 0x2540], /* BOX DRAWINGS UP HEAVY AND DOWN HORIZONTAL LIGHT (FORMS UP HEAVY AND DOWN HORIZONTAL LIGHT) */ + [0x2541, 0x2541], /* BOX DRAWINGS DOWN HEAVY AND UP HORIZONTAL LIGHT (FORMS DOWN HEAVY AND UP HORIZONTAL LIGHT) */ + [0x2542, 0x2542], /* BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT (FORMS VERTICAL HEAVY AND HORIZONTAL LIGHT) */ + [0x2543, 0x2543], /* BOX DRAWINGS LEFT UP HEAVY AND RIGHT DOWN LIGHT (FORMS LEFT UP HEAVY AND RIGHT DOWN LIGHT) */ + [0x2544, 0x2544], /* BOX DRAWINGS RIGHT UP HEAVY AND LEFT DOWN LIGHT (FORMS RIGHT UP HEAVY AND LEFT DOWN LIGHT) */ + [0x2545, 0x2545], /* BOX DRAWINGS LEFT DOWN HEAVY AND RIGHT UP LIGHT (FORMS LEFT DOWN HEAVY AND RIGHT UP LIGHT) */ + [0x2546, 0x2546], /* BOX DRAWINGS RIGHT DOWN HEAVY AND LEFT UP LIGHT (FORMS RIGHT DOWN HEAVY AND LEFT UP LIGHT) */ + [0x2547, 0x2547], /* BOX DRAWINGS DOWN LIGHT AND UP HORIZONTAL HEAVY (FORMS DOWN LIGHT AND UP HORIZONTAL HEAVY) */ + [0x2548, 0x2548], /* BOX DRAWINGS UP LIGHT AND DOWN HORIZONTAL HEAVY (FORMS UP LIGHT AND DOWN HORIZONTAL HEAVY) */ + [0x2549, 0x2549], /* BOX DRAWINGS RIGHT LIGHT AND LEFT VERTICAL HEAVY (FORMS RIGHT LIGHT AND LEFT VERTICAL HEAVY) */ + [0x254a, 0x254a], /* BOX DRAWINGS LEFT LIGHT AND RIGHT VERTICAL HEAVY (FORMS LEFT LIGHT AND RIGHT VERTICAL HEAVY) */ + [0x254b, 0x254b], /* BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL (FORMS HEAVY VERTICAL AND HORIZONTAL) */ + [0x254c, 0x254c], /* BOX DRAWINGS LIGHT DOUBLE DASH HORIZONTAL (FORMS LIGHT DOUBLE DASH HORIZONTAL) */ + [0x254d, 0x254d], /* BOX DRAWINGS HEAVY DOUBLE DASH HORIZONTAL (FORMS HEAVY DOUBLE DASH HORIZONTAL) */ + [0x254e, 0x254e], /* BOX DRAWINGS LIGHT DOUBLE DASH VERTICAL (FORMS LIGHT DOUBLE DASH VERTICAL) */ + [0x254f, 0x254f], /* BOX DRAWINGS HEAVY DOUBLE DASH VERTICAL (FORMS HEAVY DOUBLE DASH VERTICAL) */ + [0x2550, 0x2550], /* BOX DRAWINGS DOUBLE HORIZONTAL (FORMS DOUBLE HORIZONTAL) */ + [0x2551, 0x2551], /* BOX DRAWINGS DOUBLE VERTICAL (FORMS DOUBLE VERTICAL) */ + [0x2552, 0x2552], /* BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE (FORMS DOWN SINGLE AND RIGHT DOUBLE) */ + [0x2553, 0x2553], /* BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE (FORMS DOWN DOUBLE AND RIGHT SINGLE) */ + [0x2554, 0x2554], /* BOX DRAWINGS DOUBLE DOWN AND RIGHT (FORMS DOUBLE DOWN AND RIGHT) */ + [0x2555, 0x2555], /* BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE (FORMS DOWN SINGLE AND LEFT DOUBLE) */ + [0x2556, 0x2556], /* BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE (FORMS DOWN DOUBLE AND LEFT SINGLE) */ + [0x2557, 0x2557], /* BOX DRAWINGS DOUBLE DOWN AND LEFT (FORMS DOUBLE DOWN AND LEFT) */ + [0x2558, 0x2558], /* BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE (FORMS UP SINGLE AND RIGHT DOUBLE) */ + [0x2559, 0x2559], /* BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE (FORMS UP DOUBLE AND RIGHT SINGLE) */ + [0x255a, 0x255a], /* BOX DRAWINGS DOUBLE UP AND RIGHT (FORMS DOUBLE UP AND RIGHT) */ + [0x255b, 0x255b], /* BOX DRAWINGS UP SINGLE AND LEFT DOUBLE (FORMS UP SINGLE AND LEFT DOUBLE) */ + [0x255c, 0x255c], /* BOX DRAWINGS UP DOUBLE AND LEFT SINGLE (FORMS UP DOUBLE AND LEFT SINGLE) */ + [0x255d, 0x255d], /* BOX DRAWINGS DOUBLE UP AND LEFT (FORMS DOUBLE UP AND LEFT) */ + [0x255e, 0x255e], /* BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE (FORMS VERTICAL SINGLE AND RIGHT DOUBLE) */ + [0x255f, 0x255f], /* BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE (FORMS VERTICAL DOUBLE AND RIGHT SINGLE) */ + [0x2560, 0x2560], /* BOX DRAWINGS DOUBLE VERTICAL AND RIGHT (FORMS DOUBLE VERTICAL AND RIGHT) */ + [0x2561, 0x2561], /* BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE (FORMS VERTICAL SINGLE AND LEFT DOUBLE) */ + [0x2562, 0x2562], /* BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE (FORMS VERTICAL DOUBLE AND LEFT SINGLE) */ + [0x2563, 0x2563], /* BOX DRAWINGS DOUBLE VERTICAL AND LEFT (FORMS DOUBLE VERTICAL AND LEFT) */ + [0x2564, 0x2564], /* BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE (FORMS DOWN SINGLE AND HORIZONTAL DOUBLE) */ + [0x2565, 0x2565], /* BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE (FORMS DOWN DOUBLE AND HORIZONTAL SINGLE) */ + [0x2566, 0x2566], /* BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL (FORMS DOUBLE DOWN AND HORIZONTAL) */ + [0x2567, 0x2567], /* BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE (FORMS UP SINGLE AND HORIZONTAL DOUBLE) */ + [0x2568, 0x2568], /* BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE (FORMS UP DOUBLE AND HORIZONTAL SINGLE) */ + [0x2569, 0x2569], /* BOX DRAWINGS DOUBLE UP AND HORIZONTAL (FORMS DOUBLE UP AND HORIZONTAL) */ + [0x256a, 0x256a], /* BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE (FORMS VERTICAL SINGLE AND HORIZONTAL DOUBLE) */ + [0x256b, 0x256b], /* BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE (FORMS VERTICAL DOUBLE AND HORIZONTAL SINGLE) */ + [0x256c, 0x256c], /* BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL (FORMS DOUBLE VERTICAL AND HORIZONTAL) */ + [0x256d, 0x256d], /* BOX DRAWINGS LIGHT ARC DOWN AND RIGHT (FORMS LIGHT ARC DOWN AND RIGHT) */ + [0x256e, 0x256e], /* BOX DRAWINGS LIGHT ARC DOWN AND LEFT (FORMS LIGHT ARC DOWN AND LEFT) */ + [0x256f, 0x256f], /* BOX DRAWINGS LIGHT ARC UP AND LEFT (FORMS LIGHT ARC UP AND LEFT) */ + [0x2570, 0x2570], /* BOX DRAWINGS LIGHT ARC UP AND RIGHT (FORMS LIGHT ARC UP AND RIGHT) */ + [0x2571, 0x2571], /* BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT (FORMS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT) */ + [0x2572, 0x2572], /* BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT (FORMS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT) */ + [0x2573, 0x2573], /* BOX DRAWINGS LIGHT DIAGONAL CROSS (FORMS LIGHT DIAGONAL CROSS) */ + [0x2574, 0x2574], /* BOX DRAWINGS LIGHT LEFT (FORMS LIGHT LEFT) */ + [0x2575, 0x2575], /* BOX DRAWINGS LIGHT UP (FORMS LIGHT UP) */ + [0x2576, 0x2576], /* BOX DRAWINGS LIGHT RIGHT (FORMS LIGHT RIGHT) */ + [0x2577, 0x2577], /* BOX DRAWINGS LIGHT DOWN (FORMS LIGHT DOWN) */ + [0x2578, 0x2578], /* BOX DRAWINGS HEAVY LEFT (FORMS HEAVY LEFT) */ + [0x2579, 0x2579], /* BOX DRAWINGS HEAVY UP (FORMS HEAVY UP) */ + [0x257a, 0x257a], /* BOX DRAWINGS HEAVY RIGHT (FORMS HEAVY RIGHT) */ + [0x257b, 0x257b], /* BOX DRAWINGS HEAVY DOWN (FORMS HEAVY DOWN) */ + [0x257c, 0x257c], /* BOX DRAWINGS LIGHT LEFT AND HEAVY RIGHT (FORMS LIGHT LEFT AND HEAVY RIGHT) */ + [0x257d, 0x257d], /* BOX DRAWINGS LIGHT UP AND HEAVY DOWN (FORMS LIGHT UP AND HEAVY DOWN) */ + [0x257e, 0x257e], /* BOX DRAWINGS HEAVY LEFT AND LIGHT RIGHT (FORMS HEAVY LEFT AND LIGHT RIGHT) */ + [0x257f, 0x257f], /* BOX DRAWINGS HEAVY UP AND LIGHT DOWN (FORMS HEAVY UP AND LIGHT DOWN) */ + [0x2580, 0x2580], /* UPPER HALF BLOCK */ + [0x2581, 0x2581], /* LOWER ONE EIGHTH BLOCK */ + [0x2582, 0x2582], /* LOWER ONE QUARTER BLOCK */ + [0x2583, 0x2583], /* LOWER THREE EIGHTHS BLOCK */ + [0x2584, 0x2584], /* LOWER HALF BLOCK */ + [0x2585, 0x2585], /* LOWER FIVE EIGHTHS BLOCK */ + [0x2586, 0x2586], /* LOWER THREE QUARTERS BLOCK (LOWER THREE QUARTER BLOCK) */ + [0x2587, 0x2587], /* LOWER SEVEN EIGHTHS BLOCK */ + [0x2588, 0x2588], /* FULL BLOCK */ + [0x2589, 0x2589], /* LEFT SEVEN EIGHTHS BLOCK */ + [0x258a, 0x258a], /* LEFT THREE QUARTERS BLOCK (LEFT THREE QUARTER BLOCK) */ + [0x258b, 0x258b], /* LEFT FIVE EIGHTHS BLOCK */ + [0x258c, 0x258c], /* LEFT HALF BLOCK */ + [0x258d, 0x258d], /* LEFT THREE EIGHTHS BLOCK */ + [0x258e, 0x258e], /* LEFT ONE QUARTER BLOCK */ + [0x258f, 0x258f], /* LEFT ONE EIGHTH BLOCK */ + [0x2590, 0x2590], /* RIGHT HALF BLOCK */ + [0x2591, 0x2591], /* LIGHT SHADE */ + [0x2592, 0x2592], /* MEDIUM SHADE */ + [0x2593, 0x2593], /* DARK SHADE */ + [0x2594, 0x2594], /* UPPER ONE EIGHTH BLOCK */ + [0x2595, 0x2595], /* RIGHT ONE EIGHTH BLOCK */ + [0x2596, 0x2596], /* QUADRANT LOWER LEFT */ + [0x2597, 0x2597], /* QUADRANT LOWER RIGHT */ + [0x2598, 0x2598], /* QUADRANT UPPER LEFT */ + [0x2599, 0x2599], /* QUADRANT UPPER LEFT AND LOWER LEFT AND LOWER RIGHT */ + [0x259a, 0x259a], /* QUADRANT UPPER LEFT AND LOWER RIGHT */ + [0x259b, 0x259b], /* QUADRANT UPPER LEFT AND UPPER RIGHT AND LOWER LEFT */ + [0x259c, 0x259c], /* QUADRANT UPPER LEFT AND UPPER RIGHT AND LOWER RIGHT */ + [0x259d, 0x259d], /* QUADRANT UPPER RIGHT */ + [0x259e, 0x259e], /* QUADRANT UPPER RIGHT AND LOWER LEFT */ + [0x259f, 0x259f], /* QUADRANT UPPER RIGHT AND LOWER LEFT AND LOWER RIGHT */ + [0x25a0, 0x25a0], /* BLACK SQUARE */ + [0x25a1, 0x25a1], /* WHITE SQUARE */ + [0x25a2, 0x25a2], /* WHITE SQUARE WITH ROUNDED CORNERS */ + [0x25a3, 0x25a3], /* WHITE SQUARE CONTAINING BLACK SMALL SQUARE */ + [0x25a4, 0x25a4], /* SQUARE WITH HORIZONTAL FILL */ + [0x25a5, 0x25a5], /* SQUARE WITH VERTICAL FILL */ + [0x25a6, 0x25a6], /* SQUARE WITH ORTHOGONAL CROSSHATCH FILL */ + [0x25a7, 0x25a7], /* SQUARE WITH UPPER LEFT TO LOWER RIGHT FILL */ + [0x25a8, 0x25a8], /* SQUARE WITH UPPER RIGHT TO LOWER LEFT FILL */ + [0x25a9, 0x25a9], /* SQUARE WITH DIAGONAL CROSSHATCH FILL */ + [0x25aa, 0x25aa], /* BLACK SMALL SQUARE */ + [0x25ab, 0x25ab], /* WHITE SMALL SQUARE */ + [0x25ac, 0x25ac], /* BLACK RECTANGLE */ + [0x25ad, 0x25ad], /* WHITE RECTANGLE */ + [0x25ae, 0x25ae], /* BLACK VERTICAL RECTANGLE */ + [0x25af, 0x25af], /* WHITE VERTICAL RECTANGLE */ + [0x25b0, 0x25b0], /* BLACK PARALLELOGRAM */ + [0x25b1, 0x25b1], /* WHITE PARALLELOGRAM */ + [0x25b2, 0x25b2], /* BLACK UP-POINTING TRIANGLE (BLACK UP POINTING TRIANGLE) */ + [0x25b3, 0x25b3], /* WHITE UP-POINTING TRIANGLE (WHITE UP POINTING TRIANGLE) */ + [0x25b4, 0x25b4], /* BLACK UP-POINTING SMALL TRIANGLE (BLACK UP POINTING SMALL TRIANGLE) */ + [0x25b5, 0x25b5], /* WHITE UP-POINTING SMALL TRIANGLE (WHITE UP POINTING SMALL TRIANGLE) */ + [0x25b6, 0x25b6], /* BLACK RIGHT-POINTING TRIANGLE (BLACK RIGHT POINTING TRIANGLE) */ + [0x25b7, 0x25b7], /* WHITE RIGHT-POINTING TRIANGLE (WHITE RIGHT POINTING TRIANGLE) */ + [0x25b8, 0x25b8], /* BLACK RIGHT-POINTING SMALL TRIANGLE (BLACK RIGHT POINTING SMALL TRIANGLE) */ + [0x25b9, 0x25b9], /* WHITE RIGHT-POINTING SMALL TRIANGLE (WHITE RIGHT POINTING SMALL TRIANGLE) */ + [0x25ba, 0x25ba], /* BLACK RIGHT-POINTING POINTER (BLACK RIGHT POINTING POINTER) */ + [0x25bb, 0x25bb], /* WHITE RIGHT-POINTING POINTER (WHITE RIGHT POINTING POINTER) */ + [0x25bc, 0x25bc], /* BLACK DOWN-POINTING TRIANGLE (BLACK DOWN POINTING TRIANGLE) */ + [0x25bd, 0x25bd], /* WHITE DOWN-POINTING TRIANGLE (WHITE DOWN POINTING TRIANGLE) */ + [0x25be, 0x25be], /* BLACK DOWN-POINTING SMALL TRIANGLE (BLACK DOWN POINTING SMALL TRIANGLE) */ + [0x25bf, 0x25bf], /* WHITE DOWN-POINTING SMALL TRIANGLE (WHITE DOWN POINTING SMALL TRIANGLE) */ + [0x25c0, 0x25c0], /* BLACK LEFT-POINTING TRIANGLE (BLACK LEFT POINTING TRIANGLE) */ + [0x25c1, 0x25c1], /* WHITE LEFT-POINTING TRIANGLE (WHITE LEFT POINTING TRIANGLE) */ + [0x25c2, 0x25c2], /* BLACK LEFT-POINTING SMALL TRIANGLE (BLACK LEFT POINTING SMALL TRIANGLE) */ + [0x25c3, 0x25c3], /* WHITE LEFT-POINTING SMALL TRIANGLE (WHITE LEFT POINTING SMALL TRIANGLE) */ + [0x25c4, 0x25c4], /* BLACK LEFT-POINTING POINTER (BLACK LEFT POINTING POINTER) */ + [0x25c5, 0x25c5], /* WHITE LEFT-POINTING POINTER (WHITE LEFT POINTING POINTER) */ + [0x25c6, 0x25c6], /* BLACK DIAMOND */ + [0x25c7, 0x25c7], /* WHITE DIAMOND */ + [0x25c8, 0x25c8], /* WHITE DIAMOND CONTAINING BLACK SMALL DIAMOND */ + [0x25c9, 0x25c9], /* FISHEYE */ + [0x25ca, 0x25ca], /* LOZENGE */ + [0x25cb, 0x25cb], /* WHITE CIRCLE */ + [0x25cc, 0x25cc], /* DOTTED CIRCLE */ + [0x25cd, 0x25cd], /* CIRCLE WITH VERTICAL FILL */ + [0x25ce, 0x25ce], /* BULLSEYE */ + [0x25cf, 0x25cf], /* BLACK CIRCLE */ + [0x25d0, 0x25d0], /* CIRCLE WITH LEFT HALF BLACK */ + [0x25d1, 0x25d1], /* CIRCLE WITH RIGHT HALF BLACK */ + [0x25d2, 0x25d2], /* CIRCLE WITH LOWER HALF BLACK */ + [0x25d3, 0x25d3], /* CIRCLE WITH UPPER HALF BLACK */ + [0x25d4, 0x25d4], /* CIRCLE WITH UPPER RIGHT QUADRANT BLACK */ + [0x25d5, 0x25d5], /* CIRCLE WITH ALL BUT UPPER LEFT QUADRANT BLACK */ + [0x25d6, 0x25d6], /* LEFT HALF BLACK CIRCLE */ + [0x25d7, 0x25d7], /* RIGHT HALF BLACK CIRCLE */ + [0x25d8, 0x25d8], /* INVERSE BULLET */ + [0x25d9, 0x25d9], /* INVERSE WHITE CIRCLE */ + [0x25da, 0x25da], /* UPPER HALF INVERSE WHITE CIRCLE */ + [0x25db, 0x25db], /* LOWER HALF INVERSE WHITE CIRCLE */ + [0x25dc, 0x25dc], /* UPPER LEFT QUADRANT CIRCULAR ARC */ + [0x25dd, 0x25dd], /* UPPER RIGHT QUADRANT CIRCULAR ARC */ + [0x25de, 0x25de], /* LOWER RIGHT QUADRANT CIRCULAR ARC */ + [0x25df, 0x25df], /* LOWER LEFT QUADRANT CIRCULAR ARC */ + [0x25e0, 0x25e0], /* UPPER HALF CIRCLE */ + [0x25e1, 0x25e1], /* LOWER HALF CIRCLE */ + [0x25e2, 0x25e2], /* BLACK LOWER RIGHT TRIANGLE */ + [0x25e3, 0x25e3], /* BLACK LOWER LEFT TRIANGLE */ + [0x25e4, 0x25e4], /* BLACK UPPER LEFT TRIANGLE */ + [0x25e5, 0x25e5], /* BLACK UPPER RIGHT TRIANGLE */ + [0x25e6, 0x25e6], /* WHITE BULLET */ + [0x25e7, 0x25e7], /* SQUARE WITH LEFT HALF BLACK */ + [0x25e8, 0x25e8], /* SQUARE WITH RIGHT HALF BLACK */ + [0x25e9, 0x25e9], /* SQUARE WITH UPPER LEFT DIAGONAL HALF BLACK */ + [0x25ea, 0x25ea], /* SQUARE WITH LOWER RIGHT DIAGONAL HALF BLACK */ + [0x25eb, 0x25eb], /* WHITE SQUARE WITH VERTICAL BISECTING LINE */ + [0x25ec, 0x25ec], /* WHITE UP-POINTING TRIANGLE WITH DOT (WHITE UP POINTING TRIANGLE WITH DOT) */ + [0x25ed, 0x25ed], /* UP-POINTING TRIANGLE WITH LEFT HALF BLACK (UP POINTING TRIANGLE WITH LEFT HALF BLACK) */ + [0x25ee, 0x25ee], /* UP-POINTING TRIANGLE WITH RIGHT HALF BLACK (UP POINTING TRIANGLE WITH RIGHT HALF BLACK) */ + [0x25ef, 0x25ef], /* LARGE CIRCLE */ + [0x25f0, 0x25f0], /* WHITE SQUARE WITH UPPER LEFT QUADRANT */ + [0x25f1, 0x25f1], /* WHITE SQUARE WITH LOWER LEFT QUADRANT */ + [0x25f2, 0x25f2], /* WHITE SQUARE WITH LOWER RIGHT QUADRANT */ + [0x25f3, 0x25f3], /* WHITE SQUARE WITH UPPER RIGHT QUADRANT */ + [0x25f4, 0x25f4], /* WHITE CIRCLE WITH UPPER LEFT QUADRANT */ + [0x25f5, 0x25f5], /* WHITE CIRCLE WITH LOWER LEFT QUADRANT */ + [0x25f6, 0x25f6], /* WHITE CIRCLE WITH LOWER RIGHT QUADRANT */ + [0x25f7, 0x25f7], /* WHITE CIRCLE WITH UPPER RIGHT QUADRANT */ + [0x25f8, 0x25f8], /* UPPER LEFT TRIANGLE */ + [0x25f9, 0x25f9], /* UPPER RIGHT TRIANGLE */ + [0x25fa, 0x25fa], /* LOWER LEFT TRIANGLE */ + [0x25fb, 0x25fb], /* WHITE MEDIUM SQUARE */ + [0x25fc, 0x25fc], /* BLACK MEDIUM SQUARE */ + [0x25fd, 0x25fd], /* WHITE MEDIUM SMALL SQUARE */ + [0x25fe, 0x25fe], /* BLACK MEDIUM SMALL SQUARE */ + [0x25ff, 0x25ff], /* LOWER RIGHT TRIANGLE */ + [0x2600, 0x2600], /* BLACK SUN WITH RAYS */ + [0x2601, 0x2601], /* CLOUD */ + [0x2602, 0x2602], /* UMBRELLA */ + [0x2603, 0x2603], /* SNOWMAN */ + [0x2604, 0x2604], /* COMET */ + [0x2605, 0x2605], /* BLACK STAR */ + [0x2606, 0x2606], /* WHITE STAR */ + [0x2607, 0x2607], /* LIGHTNING */ + [0x2608, 0x2608], /* THUNDERSTORM */ + [0x2609, 0x2609], /* SUN */ + [0x260a, 0x260a], /* ASCENDING NODE */ + [0x260b, 0x260b], /* DESCENDING NODE */ + [0x260c, 0x260c], /* CONJUNCTION */ + [0x260d, 0x260d], /* OPPOSITION */ + [0x260e, 0x260e], /* BLACK TELEPHONE */ + [0x260f, 0x260f], /* WHITE TELEPHONE */ + [0x2610, 0x2610], /* BALLOT BOX */ + [0x2611, 0x2611], /* BALLOT BOX WITH CHECK */ + [0x2612, 0x2612], /* BALLOT BOX WITH X */ + [0x2613, 0x2613], /* SALTIRE */ + [0x2614, 0x2614], /* UMBRELLA WITH RAIN DROPS */ + [0x2615, 0x2615], /* HOT BEVERAGE */ + [0x2616, 0x2616], /* WHITE SHOGI PIECE */ + [0x2617, 0x2617], /* BLACK SHOGI PIECE */ + [0x2618, 0x2618], /* SHAMROCK */ + [0x2619, 0x2619], /* REVERSED ROTATED FLORAL HEART BULLET */ + [0x261a, 0x261a], /* BLACK LEFT POINTING INDEX */ + [0x261b, 0x261b], /* BLACK RIGHT POINTING INDEX */ + [0x261c, 0x261c], /* WHITE LEFT POINTING INDEX */ + [0x261d, 0x261d], /* WHITE UP POINTING INDEX */ + [0x261e, 0x261e], /* WHITE RIGHT POINTING INDEX */ + [0x261f, 0x261f], /* WHITE DOWN POINTING INDEX */ + [0x2620, 0x2620], /* SKULL AND CROSSBONES */ + [0x2621, 0x2621], /* CAUTION SIGN */ + [0x2622, 0x2622], /* RADIOACTIVE SIGN */ + [0x2623, 0x2623], /* BIOHAZARD SIGN */ + [0x2624, 0x2624], /* CADUCEUS */ + [0x2625, 0x2625], /* ANKH */ + [0x2626, 0x2626], /* ORTHODOX CROSS */ + [0x2627, 0x2627], /* CHI RHO */ + [0x2628, 0x2628], /* CROSS OF LORRAINE */ + [0x2629, 0x2629], /* CROSS OF JERUSALEM */ + [0x262a, 0x262a], /* STAR AND CRESCENT */ + [0x262b, 0x262b], /* FARSI SYMBOL (SYMBOL OF IRAN) */ + [0x262c, 0x262c], /* ADI SHAKTI */ + [0x262d, 0x262d], /* HAMMER AND SICKLE */ + [0x262e, 0x262e], /* PEACE SYMBOL */ + [0x262f, 0x262f], /* YIN YANG */ + [0x2630, 0x2630], /* TRIGRAM FOR HEAVEN */ + [0x2631, 0x2631], /* TRIGRAM FOR LAKE */ + [0x2632, 0x2632], /* TRIGRAM FOR FIRE */ + [0x2633, 0x2633], /* TRIGRAM FOR THUNDER */ + [0x2634, 0x2634], /* TRIGRAM FOR WIND */ + [0x2635, 0x2635], /* TRIGRAM FOR WATER */ + [0x2636, 0x2636], /* TRIGRAM FOR MOUNTAIN */ + [0x2637, 0x2637], /* TRIGRAM FOR EARTH */ + [0x2638, 0x2638], /* WHEEL OF DHARMA */ + [0x2639, 0x2639], /* WHITE FROWNING FACE */ + [0x263a, 0x263a], /* WHITE SMILING FACE */ + [0x263b, 0x263b], /* BLACK SMILING FACE */ + [0x263c, 0x263c], /* WHITE SUN WITH RAYS */ + [0x263d, 0x263d], /* FIRST QUARTER MOON */ + [0x263e, 0x263e], /* LAST QUARTER MOON */ + [0x263f, 0x263f], /* MERCURY */ + [0x2640, 0x2640], /* FEMALE SIGN */ + [0x2641, 0x2641], /* EARTH */ + [0x2642, 0x2642], /* MALE SIGN */ + [0x2643, 0x2643], /* JUPITER */ + [0x2644, 0x2644], /* SATURN */ + [0x2645, 0x2645], /* URANUS */ + [0x2646, 0x2646], /* NEPTUNE */ + [0x2647, 0x2647], /* PLUTO */ + [0x2648, 0x2648], /* ARIES */ + [0x2649, 0x2649], /* TAURUS */ + [0x264a, 0x264a], /* GEMINI */ + [0x264b, 0x264b], /* CANCER */ + [0x264c, 0x264c], /* LEO */ + [0x264d, 0x264d], /* VIRGO */ + [0x264e, 0x264e], /* LIBRA */ + [0x264f, 0x264f], /* SCORPIUS */ + [0x2650, 0x2650], /* SAGITTARIUS */ + [0x2651, 0x2651], /* CAPRICORN */ + [0x2652, 0x2652], /* AQUARIUS */ + [0x2653, 0x2653], /* PISCES */ + [0x2654, 0x2654], /* WHITE CHESS KING */ + [0x2655, 0x2655], /* WHITE CHESS QUEEN */ + [0x2656, 0x2656], /* WHITE CHESS ROOK */ + [0x2657, 0x2657], /* WHITE CHESS BISHOP */ + [0x2658, 0x2658], /* WHITE CHESS KNIGHT */ + [0x2659, 0x2659], /* WHITE CHESS PAWN */ + [0x265a, 0x265a], /* BLACK CHESS KING */ + [0x265b, 0x265b], /* BLACK CHESS QUEEN */ + [0x265c, 0x265c], /* BLACK CHESS ROOK */ + [0x265d, 0x265d], /* BLACK CHESS BISHOP */ + [0x265e, 0x265e], /* BLACK CHESS KNIGHT */ + [0x265f, 0x265f], /* BLACK CHESS PAWN */ + [0x2660, 0x2660], /* BLACK SPADE SUIT */ + [0x2661, 0x2661], /* WHITE HEART SUIT */ + [0x2662, 0x2662], /* WHITE DIAMOND SUIT */ + [0x2663, 0x2663], /* BLACK CLUB SUIT */ + [0x2664, 0x2664], /* WHITE SPADE SUIT */ + [0x2665, 0x2665], /* BLACK HEART SUIT */ + [0x2666, 0x2666], /* BLACK DIAMOND SUIT */ + [0x2667, 0x2667], /* WHITE CLUB SUIT */ + [0x2668, 0x2668], /* HOT SPRINGS */ + [0x2669, 0x2669], /* QUARTER NOTE */ + [0x266a, 0x266a], /* EIGHTH NOTE */ + [0x266b, 0x266b], /* BEAMED EIGHTH NOTES (BARRED EIGHTH NOTES) */ + [0x266c, 0x266c], /* BEAMED SIXTEENTH NOTES (BARRED SIXTEENTH NOTES) */ + [0x266d, 0x266d], /* MUSIC FLAT SIGN (FLAT) */ + [0x266e, 0x266e], /* MUSIC NATURAL SIGN (NATURAL) */ + [0x266f, 0x266f], /* MUSIC SHARP SIGN (SHARP) */ + [0x2670, 0x2670], /* WEST SYRIAC CROSS */ + [0x2671, 0x2671], /* EAST SYRIAC CROSS */ + [0x2672, 0x2672], /* UNIVERSAL RECYCLING SYMBOL */ + [0x2673, 0x2673], /* RECYCLING SYMBOL FOR TYPE-1 PLASTICS */ + [0x2674, 0x2674], /* RECYCLING SYMBOL FOR TYPE-2 PLASTICS */ + [0x2675, 0x2675], /* RECYCLING SYMBOL FOR TYPE-3 PLASTICS */ + [0x2676, 0x2676], /* RECYCLING SYMBOL FOR TYPE-4 PLASTICS */ + [0x2677, 0x2677], /* RECYCLING SYMBOL FOR TYPE-5 PLASTICS */ + [0x2678, 0x2678], /* RECYCLING SYMBOL FOR TYPE-6 PLASTICS */ + [0x2679, 0x2679], /* RECYCLING SYMBOL FOR TYPE-7 PLASTICS */ + [0x267a, 0x267a], /* RECYCLING SYMBOL FOR GENERIC MATERIALS */ + [0x267b, 0x267b], /* BLACK UNIVERSAL RECYCLING SYMBOL */ + [0x267c, 0x267c], /* RECYCLED PAPER SYMBOL */ + [0x267d, 0x267d], /* PARTIALLY-RECYCLED PAPER SYMBOL */ + [0x267e, 0x267e], /* PERMANENT PAPER SIGN */ + [0x267f, 0x267f], /* WHEELCHAIR SYMBOL */ + [0x2680, 0x2680], /* DIE FACE-1 */ + [0x2681, 0x2681], /* DIE FACE-2 */ + [0x2682, 0x2682], /* DIE FACE-3 */ + [0x2683, 0x2683], /* DIE FACE-4 */ + [0x2684, 0x2684], /* DIE FACE-5 */ + [0x2685, 0x2685], /* DIE FACE-6 */ + [0x2686, 0x2686], /* WHITE CIRCLE WITH DOT RIGHT */ + [0x2687, 0x2687], /* WHITE CIRCLE WITH TWO DOTS */ + [0x2688, 0x2688], /* BLACK CIRCLE WITH WHITE DOT RIGHT */ + [0x2689, 0x2689], /* BLACK CIRCLE WITH TWO WHITE DOTS */ + [0x268a, 0x268a], /* MONOGRAM FOR YANG */ + [0x268b, 0x268b], /* MONOGRAM FOR YIN */ + [0x268c, 0x268c], /* DIGRAM FOR GREATER YANG */ + [0x268d, 0x268d], /* DIGRAM FOR LESSER YIN */ + [0x268e, 0x268e], /* DIGRAM FOR LESSER YANG */ + [0x268f, 0x268f], /* DIGRAM FOR GREATER YIN */ + [0x2690, 0x2690], /* WHITE FLAG */ + [0x2691, 0x2691], /* BLACK FLAG */ + [0x2692, 0x2692], /* HAMMER AND PICK */ + [0x2693, 0x2693], /* ANCHOR */ + [0x2694, 0x2694], /* CROSSED SWORDS */ + [0x2695, 0x2695], /* STAFF OF AESCULAPIUS */ + [0x2696, 0x2696], /* SCALES */ + [0x2697, 0x2697], /* ALEMBIC */ + [0x2698, 0x2698], /* FLOWER */ + [0x2699, 0x2699], /* GEAR */ + [0x269a, 0x269a], /* STAFF OF HERMES */ + [0x269b, 0x269b], /* ATOM SYMBOL */ + [0x269c, 0x269c], /* FLEUR-DE-LIS */ + [0x269d, 0x269d], /* OUTLINED WHITE STAR */ + [0x269e, 0x269e], /* THREE LINES CONVERGING RIGHT */ + [0x269f, 0x269f], /* THREE LINES CONVERGING LEFT */ + [0x26a0, 0x26a0], /* WARNING SIGN */ + [0x26a1, 0x26a1], /* HIGH VOLTAGE SIGN */ + [0x26a2, 0x26a2], /* DOUBLED FEMALE SIGN */ + [0x26a3, 0x26a3], /* DOUBLED MALE SIGN */ + [0x26a4, 0x26a4], /* INTERLOCKED FEMALE AND MALE SIGN */ + [0x26a5, 0x26a5], /* MALE AND FEMALE SIGN */ + [0x26a6, 0x26a6], /* MALE WITH STROKE SIGN */ + [0x26a7, 0x26a7], /* MALE WITH STROKE AND MALE AND FEMALE SIGN */ + [0x26a8, 0x26a8], /* VERTICAL MALE WITH STROKE SIGN */ + [0x26a9, 0x26a9], /* HORIZONTAL MALE WITH STROKE SIGN */ + [0x26aa, 0x26aa], /* MEDIUM WHITE CIRCLE */ + [0x26ab, 0x26ab], /* MEDIUM BLACK CIRCLE */ + [0x26ac, 0x26ac], /* MEDIUM SMALL WHITE CIRCLE */ + [0x26ad, 0x26ad], /* MARRIAGE SYMBOL */ + [0x26ae, 0x26ae], /* DIVORCE SYMBOL */ + [0x26af, 0x26af], /* UNMARRIED PARTNERSHIP SYMBOL */ + [0x26b0, 0x26b0], /* COFFIN */ + [0x26b1, 0x26b1], /* FUNERAL URN */ + [0x26b2, 0x26b2], /* NEUTER */ + [0x26b3, 0x26b3], /* CERES */ + [0x26b4, 0x26b4], /* PALLAS */ + [0x26b5, 0x26b5], /* JUNO */ + [0x26b6, 0x26b6], /* VESTA */ + [0x26b7, 0x26b7], /* CHIRON */ + [0x26b8, 0x26b8], /* BLACK MOON LILITH */ + [0x26b9, 0x26b9], /* SEXTILE */ + [0x26ba, 0x26ba], /* SEMISEXTILE */ + [0x26bb, 0x26bb], /* QUINCUNX */ + [0x26bc, 0x26bc], /* SESQUIQUADRATE */ + [0x26bd, 0x26bd], /* SOCCER BALL */ + [0x26be, 0x26be], /* BASEBALL */ + [0x26bf, 0x26bf], /* SQUARED KEY */ + [0x26c0, 0x26c0], /* WHITE DRAUGHTS MAN */ + [0x26c1, 0x26c1], /* WHITE DRAUGHTS KING */ + [0x26c2, 0x26c2], /* BLACK DRAUGHTS MAN */ + [0x26c3, 0x26c3], /* BLACK DRAUGHTS KING */ + [0x26c4, 0x26c4], /* SNOWMAN WITHOUT SNOW */ + [0x26c5, 0x26c5], /* SUN BEHIND CLOUD */ + [0x26c6, 0x26c6], /* RAIN */ + [0x26c7, 0x26c7], /* BLACK SNOWMAN */ + [0x26c8, 0x26c8], /* THUNDER CLOUD AND RAIN */ + [0x26c9, 0x26c9], /* TURNED WHITE SHOGI PIECE */ + [0x26ca, 0x26ca], /* TURNED BLACK SHOGI PIECE */ + [0x26cb, 0x26cb], /* WHITE DIAMOND IN SQUARE */ + [0x26cc, 0x26cc], /* CROSSING LANES */ + [0x26cd, 0x26cd], /* DISABLED CAR */ + [0x26ce, 0x26ce], /* OPHIUCHUS */ + [0x26cf, 0x26cf], /* PICK */ + [0x26d0, 0x26d0], /* CAR SLIDING */ + [0x26d1, 0x26d1], /* HELMET WITH WHITE CROSS */ + [0x26d2, 0x26d2], /* CIRCLED CROSSING LANES */ + [0x26d3, 0x26d3], /* CHAINS */ + [0x26d4, 0x26d4], /* NO ENTRY */ + [0x26d5, 0x26d5], /* ALTERNATE ONE-WAY LEFT WAY TRAFFIC */ + [0x26d6, 0x26d6], /* BLACK TWO-WAY LEFT WAY TRAFFIC */ + [0x26d7, 0x26d7], /* WHITE TWO-WAY LEFT WAY TRAFFIC */ + [0x26d8, 0x26d8], /* BLACK LEFT LANE MERGE */ + [0x26d9, 0x26d9], /* WHITE LEFT LANE MERGE */ + [0x26da, 0x26da], /* DRIVE SLOW SIGN */ + [0x26db, 0x26db], /* HEAVY WHITE DOWN-POINTING TRIANGLE */ + [0x26dc, 0x26dc], /* LEFT CLOSED ENTRY */ + [0x26dd, 0x26dd], /* SQUARED SALTIRE */ + [0x26de, 0x26de], /* FALLING DIAGONAL IN WHITE CIRCLE IN BLACK SQUARE */ + [0x26df, 0x26df], /* BLACK TRUCK */ + [0x26e0, 0x26e0], /* RESTRICTED LEFT ENTRY-1 */ + [0x26e1, 0x26e1], /* RESTRICTED LEFT ENTRY-2 */ + [0x26e2, 0x26e2], /* ASTRONOMICAL SYMBOL FOR URANUS */ + [0x26e3, 0x26e3], /* HEAVY CIRCLE WITH STROKE AND TWO DOTS ABOVE */ + [0x26e4, 0x26e4], /* PENTAGRAM */ + [0x26e5, 0x26e5], /* RIGHT-HANDED INTERLACED PENTAGRAM */ + [0x26e6, 0x26e6], /* LEFT-HANDED INTERLACED PENTAGRAM */ + [0x26e7, 0x26e7], /* INVERTED PENTAGRAM */ + [0x26e8, 0x26e8], /* BLACK CROSS ON SHIELD */ + [0x26e9, 0x26e9], /* SHINTO SHRINE */ + [0x26ea, 0x26ea], /* CHURCH */ + [0x26eb, 0x26eb], /* CASTLE */ + [0x26ec, 0x26ec], /* HISTORIC SITE */ + [0x26ed, 0x26ed], /* GEAR WITHOUT HUB */ + [0x26ee, 0x26ee], /* GEAR WITH HANDLES */ + [0x26ef, 0x26ef], /* MAP SYMBOL FOR LIGHTHOUSE */ + [0x26f0, 0x26f0], /* MOUNTAIN */ + [0x26f1, 0x26f1], /* UMBRELLA ON GROUND */ + [0x26f2, 0x26f2], /* FOUNTAIN */ + [0x26f3, 0x26f3], /* FLAG IN HOLE */ + [0x26f4, 0x26f4], /* FERRY */ + [0x26f5, 0x26f5], /* SAILBOAT */ + [0x26f6, 0x26f6], /* SQUARE FOUR CORNERS */ + [0x26f7, 0x26f7], /* SKIER */ + [0x26f8, 0x26f8], /* ICE SKATE */ + [0x26f9, 0x26f9], /* PERSON WITH BALL */ + [0x26fa, 0x26fa], /* TENT */ + [0x26fb, 0x26fb], /* JAPANESE BANK SYMBOL */ + [0x26fc, 0x26fc], /* HEADSTONE GRAVEYARD SYMBOL */ + [0x26fd, 0x26fd], /* FUEL PUMP */ + [0x26fe, 0x26fe], /* CUP ON BLACK SQUARE */ + [0x26ff, 0x26ff], /* WHITE FLAG WITH HORIZONTAL MIDDLE BLACK STRIPE */ + [0x2700, 0x2700], /* BLACK SAFETY SCISSORS */ + [0x2701, 0x2701], /* UPPER BLADE SCISSORS */ + [0x2702, 0x2702], /* BLACK SCISSORS */ + [0x2703, 0x2703], /* LOWER BLADE SCISSORS */ + [0x2704, 0x2704], /* WHITE SCISSORS */ + [0x2705, 0x2705], /* WHITE HEAVY CHECK MARK */ + [0x2706, 0x2706], /* TELEPHONE LOCATION SIGN */ + [0x2707, 0x2707], /* TAPE DRIVE */ + [0x2708, 0x2708], /* AIRPLANE */ + [0x2709, 0x2709], /* ENVELOPE */ + [0x270a, 0x270a], /* RAISED FIST */ + [0x270b, 0x270b], /* RAISED HAND */ + [0x270c, 0x270c], /* VICTORY HAND */ + [0x270d, 0x270d], /* WRITING HAND */ + [0x270e, 0x270e], /* LOWER RIGHT PENCIL */ + [0x270f, 0x270f], /* PENCIL */ + [0x2710, 0x2710], /* UPPER RIGHT PENCIL */ + [0x2711, 0x2711], /* WHITE NIB */ + [0x2712, 0x2712], /* BLACK NIB */ + [0x2713, 0x2713], /* CHECK MARK */ + [0x2714, 0x2714], /* HEAVY CHECK MARK */ + [0x2715, 0x2715], /* MULTIPLICATION X */ + [0x2716, 0x2716], /* HEAVY MULTIPLICATION X */ + [0x2717, 0x2717], /* BALLOT X */ + [0x2718, 0x2718], /* HEAVY BALLOT X */ + [0x2719, 0x2719], /* OUTLINED GREEK CROSS */ + [0x271a, 0x271a], /* HEAVY GREEK CROSS */ + [0x271b, 0x271b], /* OPEN CENTRE CROSS (OPEN CENTER CROSS) */ + [0x271c, 0x271c], /* HEAVY OPEN CENTRE CROSS (HEAVY OPEN CENTER CROSS) */ + [0x271d, 0x271d], /* LATIN CROSS */ + [0x271e, 0x271e], /* SHADOWED WHITE LATIN CROSS */ + [0x271f, 0x271f], /* OUTLINED LATIN CROSS */ + [0x2720, 0x2720], /* MALTESE CROSS */ + [0x2721, 0x2721], /* STAR OF DAVID */ + [0x2722, 0x2722], /* FOUR TEARDROP-SPOKED ASTERISK */ + [0x2723, 0x2723], /* FOUR BALLOON-SPOKED ASTERISK */ + [0x2724, 0x2724], /* HEAVY FOUR BALLOON-SPOKED ASTERISK */ + [0x2725, 0x2725], /* FOUR CLUB-SPOKED ASTERISK */ + [0x2726, 0x2726], /* BLACK FOUR POINTED STAR */ + [0x2727, 0x2727], /* WHITE FOUR POINTED STAR */ + [0x2728, 0x2728], /* SPARKLES */ + [0x2729, 0x2729], /* STRESS OUTLINED WHITE STAR */ + [0x272a, 0x272a], /* CIRCLED WHITE STAR */ + [0x272b, 0x272b], /* OPEN CENTRE BLACK STAR (OPEN CENTER BLACK STAR) */ + [0x272c, 0x272c], /* BLACK CENTRE WHITE STAR (BLACK CENTER WHITE STAR) */ + [0x272d, 0x272d], /* OUTLINED BLACK STAR */ + [0x272e, 0x272e], /* HEAVY OUTLINED BLACK STAR */ + [0x272f, 0x272f], /* PINWHEEL STAR */ + [0x2730, 0x2730], /* SHADOWED WHITE STAR */ + [0x2731, 0x2731], /* HEAVY ASTERISK */ + [0x2732, 0x2732], /* OPEN CENTRE ASTERISK (OPEN CENTER ASTERISK) */ + [0x2733, 0x2733], /* EIGHT SPOKED ASTERISK */ + [0x2734, 0x2734], /* EIGHT POINTED BLACK STAR */ + [0x2735, 0x2735], /* EIGHT POINTED PINWHEEL STAR */ + [0x2736, 0x2736], /* SIX POINTED BLACK STAR */ + [0x2737, 0x2737], /* EIGHT POINTED RECTILINEAR BLACK STAR */ + [0x2738, 0x2738], /* HEAVY EIGHT POINTED RECTILINEAR BLACK STAR */ + [0x2739, 0x2739], /* TWELVE POINTED BLACK STAR */ + [0x273a, 0x273a], /* SIXTEEN POINTED ASTERISK */ + [0x273b, 0x273b], /* TEARDROP-SPOKED ASTERISK */ + [0x273c, 0x273c], /* OPEN CENTRE TEARDROP-SPOKED ASTERISK (OPEN CENTER TEARDROP-SPOKED ASTERISK) */ + [0x273d, 0x273d], /* HEAVY TEARDROP-SPOKED ASTERISK */ + [0x273e, 0x273e], /* SIX PETALLED BLACK AND WHITE FLORETTE */ + [0x273f, 0x273f], /* BLACK FLORETTE */ + [0x2740, 0x2740], /* WHITE FLORETTE */ + [0x2741, 0x2741], /* EIGHT PETALLED OUTLINED BLACK FLORETTE */ + [0x2742, 0x2742], /* CIRCLED OPEN CENTRE EIGHT POINTED STAR (CIRCLED OPEN CENTER EIGHT POINTED STAR) */ + [0x2743, 0x2743], /* HEAVY TEARDROP-SPOKED PINWHEEL ASTERISK */ + [0x2744, 0x2744], /* SNOWFLAKE */ + [0x2745, 0x2745], /* TIGHT TRIFOLIATE SNOWFLAKE */ + [0x2746, 0x2746], /* HEAVY CHEVRON SNOWFLAKE */ + [0x2747, 0x2747], /* SPARKLE */ + [0x2748, 0x2748], /* HEAVY SPARKLE */ + [0x2749, 0x2749], /* BALLOON-SPOKED ASTERISK */ + [0x274a, 0x274a], /* EIGHT TEARDROP-SPOKED PROPELLER ASTERISK */ + [0x274b, 0x274b], /* HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK */ + [0x274c, 0x274c], /* CROSS MARK */ + [0x274d, 0x274d], /* SHADOWED WHITE CIRCLE */ + [0x274e, 0x274e], /* NEGATIVE SQUARED CROSS MARK */ + [0x274f, 0x274f], /* LOWER RIGHT DROP-SHADOWED WHITE SQUARE */ + [0x2750, 0x2750], /* UPPER RIGHT DROP-SHADOWED WHITE SQUARE */ + [0x2751, 0x2751], /* LOWER RIGHT SHADOWED WHITE SQUARE */ + [0x2752, 0x2752], /* UPPER RIGHT SHADOWED WHITE SQUARE */ + [0x2753, 0x2753], /* BLACK QUESTION MARK ORNAMENT */ + [0x2754, 0x2754], /* WHITE QUESTION MARK ORNAMENT */ + [0x2755, 0x2755], /* WHITE EXCLAMATION MARK ORNAMENT */ + [0x2756, 0x2756], /* BLACK DIAMOND MINUS WHITE X */ + [0x2757, 0x2757], /* HEAVY EXCLAMATION MARK SYMBOL */ + [0x2758, 0x2758], /* LIGHT VERTICAL BAR */ + [0x2759, 0x2759], /* MEDIUM VERTICAL BAR */ + [0x275a, 0x275a], /* HEAVY VERTICAL BAR */ + [0x275b, 0x275b], /* HEAVY SINGLE TURNED COMMA QUOTATION MARK ORNAMENT */ + [0x275c, 0x275c], /* HEAVY SINGLE COMMA QUOTATION MARK ORNAMENT */ + [0x275d, 0x275d], /* HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT */ + [0x275e, 0x275e], /* HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT */ + [0x275f, 0x275f], /* HEAVY LOW SINGLE COMMA QUOTATION MARK ORNAMENT */ + [0x2760, 0x2760], /* HEAVY LOW DOUBLE COMMA QUOTATION MARK ORNAMENT */ + [0x2761, 0x2761], /* CURVED STEM PARAGRAPH SIGN ORNAMENT */ + [0x2762, 0x2762], /* HEAVY EXCLAMATION MARK ORNAMENT */ + [0x2763, 0x2763], /* HEAVY HEART EXCLAMATION MARK ORNAMENT */ + [0x2764, 0x2764], /* HEAVY BLACK HEART */ + [0x2765, 0x2765], /* ROTATED HEAVY BLACK HEART BULLET */ + [0x2766, 0x2766], /* FLORAL HEART */ + [0x2767, 0x2767], /* ROTATED FLORAL HEART BULLET */ + [0x2768, 0x2768], /* MEDIUM LEFT PARENTHESIS ORNAMENT */ + [0x2769, 0x2769], /* MEDIUM RIGHT PARENTHESIS ORNAMENT */ + [0x276a, 0x276a], /* MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT */ + [0x276b, 0x276b], /* MEDIUM FLATTENED RIGHT PARENTHESIS ORNAMENT */ + [0x276c, 0x276c], /* MEDIUM LEFT-POINTING ANGLE BRACKET ORNAMENT */ + [0x276d, 0x276d], /* MEDIUM RIGHT-POINTING ANGLE BRACKET ORNAMENT */ + [0x276e, 0x276e], /* HEAVY LEFT-POINTING ANGLE QUOTATION MARK ORNAMENT */ + [0x276f, 0x276f], /* HEAVY RIGHT-POINTING ANGLE QUOTATION MARK ORNAMENT */ + [0x2770, 0x2770], /* HEAVY LEFT-POINTING ANGLE BRACKET ORNAMENT */ + [0x2771, 0x2771], /* HEAVY RIGHT-POINTING ANGLE BRACKET ORNAMENT */ + [0x2772, 0x2772], /* LIGHT LEFT TORTOISE SHELL BRACKET ORNAMENT */ + [0x2773, 0x2773], /* LIGHT RIGHT TORTOISE SHELL BRACKET ORNAMENT */ + [0x2774, 0x2774], /* MEDIUM LEFT CURLY BRACKET ORNAMENT */ + [0x2775, 0x2775], /* MEDIUM RIGHT CURLY BRACKET ORNAMENT */ + [0x2776, 0x2776], /* DINGBAT NEGATIVE CIRCLED DIGIT ONE (INVERSE CIRCLED DIGIT ONE) */ + [0x2777, 0x2777], /* DINGBAT NEGATIVE CIRCLED DIGIT TWO (INVERSE CIRCLED DIGIT TWO) */ + [0x2778, 0x2778], /* DINGBAT NEGATIVE CIRCLED DIGIT THREE (INVERSE CIRCLED DIGIT THREE) */ + [0x2779, 0x2779], /* DINGBAT NEGATIVE CIRCLED DIGIT FOUR (INVERSE CIRCLED DIGIT FOUR) */ + [0x277a, 0x277a], /* DINGBAT NEGATIVE CIRCLED DIGIT FIVE (INVERSE CIRCLED DIGIT FIVE) */ + [0x277b, 0x277b], /* DINGBAT NEGATIVE CIRCLED DIGIT SIX (INVERSE CIRCLED DIGIT SIX) */ + [0x277c, 0x277c], /* DINGBAT NEGATIVE CIRCLED DIGIT SEVEN (INVERSE CIRCLED DIGIT SEVEN) */ + [0x277d, 0x277d], /* DINGBAT NEGATIVE CIRCLED DIGIT EIGHT (INVERSE CIRCLED DIGIT EIGHT) */ + [0x277e, 0x277e], /* DINGBAT NEGATIVE CIRCLED DIGIT NINE (INVERSE CIRCLED DIGIT NINE) */ + [0x277f, 0x277f], /* DINGBAT NEGATIVE CIRCLED NUMBER TEN (INVERSE CIRCLED NUMBER TEN) */ + [0x2780, 0x2780], /* DINGBAT CIRCLED SANS-SERIF DIGIT ONE (CIRCLED SANS-SERIF DIGIT ONE) */ + [0x2781, 0x2781], /* DINGBAT CIRCLED SANS-SERIF DIGIT TWO (CIRCLED SANS-SERIF DIGIT TWO) */ + [0x2782, 0x2782], /* DINGBAT CIRCLED SANS-SERIF DIGIT THREE (CIRCLED SANS-SERIF DIGIT THREE) */ + [0x2783, 0x2783], /* DINGBAT CIRCLED SANS-SERIF DIGIT FOUR (CIRCLED SANS-SERIF DIGIT FOUR) */ + [0x2784, 0x2784], /* DINGBAT CIRCLED SANS-SERIF DIGIT FIVE (CIRCLED SANS-SERIF DIGIT FIVE) */ + [0x2785, 0x2785], /* DINGBAT CIRCLED SANS-SERIF DIGIT SIX (CIRCLED SANS-SERIF DIGIT SIX) */ + [0x2786, 0x2786], /* DINGBAT CIRCLED SANS-SERIF DIGIT SEVEN (CIRCLED SANS-SERIF DIGIT SEVEN) */ + [0x2787, 0x2787], /* DINGBAT CIRCLED SANS-SERIF DIGIT EIGHT (CIRCLED SANS-SERIF DIGIT EIGHT) */ + [0x2788, 0x2788], /* DINGBAT CIRCLED SANS-SERIF DIGIT NINE (CIRCLED SANS-SERIF DIGIT NINE) */ + [0x2789, 0x2789], /* DINGBAT CIRCLED SANS-SERIF NUMBER TEN (CIRCLED SANS-SERIF NUMBER TEN) */ + [0x278a, 0x278a], /* DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ONE (INVERSE CIRCLED SANS-SERIF DIGIT ONE) */ + [0x278b, 0x278b], /* DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT TWO (INVERSE CIRCLED SANS-SERIF DIGIT TWO) */ + [0x278c, 0x278c], /* DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT THREE (INVERSE CIRCLED SANS-SERIF DIGIT THREE) */ + [0x278d, 0x278d], /* DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FOUR (INVERSE CIRCLED SANS-SERIF DIGIT FOUR) */ + [0x278e, 0x278e], /* DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FIVE (INVERSE CIRCLED SANS-SERIF DIGIT FIVE) */ + [0x278f, 0x278f], /* DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SIX (INVERSE CIRCLED SANS-SERIF DIGIT SIX) */ + [0x2790, 0x2790], /* DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SEVEN (INVERSE CIRCLED SANS-SERIF DIGIT SEVEN) */ + [0x2791, 0x2791], /* DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT EIGHT (INVERSE CIRCLED SANS-SERIF DIGIT EIGHT) */ + [0x2792, 0x2792], /* DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT NINE (INVERSE CIRCLED SANS-SERIF DIGIT NINE) */ + [0x2793, 0x2793], /* DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN (INVERSE CIRCLED SANS-SERIF NUMBER TEN) */ + [0x2794, 0x2794], /* HEAVY WIDE-HEADED RIGHTWARDS ARROW (HEAVY WIDE-HEADED RIGHT ARROW) */ + [0x2795, 0x2795], /* HEAVY PLUS SIGN */ + [0x2796, 0x2796], /* HEAVY MINUS SIGN */ + [0x2797, 0x2797], /* HEAVY DIVISION SIGN */ + [0x2798, 0x2798], /* HEAVY SOUTH EAST ARROW (HEAVY LOWER RIGHT ARROW) */ + [0x2799, 0x2799], /* HEAVY RIGHTWARDS ARROW (HEAVY RIGHT ARROW) */ + [0x279a, 0x279a], /* HEAVY NORTH EAST ARROW (HEAVY UPPER RIGHT ARROW) */ + [0x279b, 0x279b], /* DRAFTING POINT RIGHTWARDS ARROW (DRAFTING POINT RIGHT ARROW) */ + [0x279c, 0x279c], /* HEAVY ROUND-TIPPED RIGHTWARDS ARROW (HEAVY ROUND-TIPPED RIGHT ARROW) */ + [0x279d, 0x279d], /* TRIANGLE-HEADED RIGHTWARDS ARROW (TRIANGLE-HEADED RIGHT ARROW) */ + [0x279e, 0x279e], /* HEAVY TRIANGLE-HEADED RIGHTWARDS ARROW (HEAVY TRIANGLE-HEADED RIGHT ARROW) */ + [0x279f, 0x279f], /* DASHED TRIANGLE-HEADED RIGHTWARDS ARROW (DASHED TRIANGLE-HEADED RIGHT ARROW) */ + [0x27a0, 0x27a0], /* HEAVY DASHED TRIANGLE-HEADED RIGHTWARDS ARROW (HEAVY DASHED TRIANGLE-HEADED RIGHT ARROW) */ + [0x27a1, 0x27a1], /* BLACK RIGHTWARDS ARROW (BLACK RIGHT ARROW) */ + [0x27a2, 0x27a2], /* THREE-D TOP-LIGHTED RIGHTWARDS ARROWHEAD (THREE-D TOP-LIGHTED RIGHT ARROWHEAD) */ + [0x27a3, 0x27a3], /* THREE-D BOTTOM-LIGHTED RIGHTWARDS ARROWHEAD (THREE-D BOTTOM-LIGHTED RIGHT ARROWHEAD) */ + [0x27a4, 0x27a4], /* BLACK RIGHTWARDS ARROWHEAD (BLACK RIGHT ARROWHEAD) */ + [0x27a5, 0x27a5], /* HEAVY BLACK CURVED DOWNWARDS AND RIGHTWARDS ARROW (HEAVY BLACK CURVED DOWN AND RIGHT ARROW) */ + [0x27a6, 0x27a6], /* HEAVY BLACK CURVED UPWARDS AND RIGHTWARDS ARROW (HEAVY BLACK CURVED UP AND RIGHT ARROW) */ + [0x27a7, 0x27a7], /* SQUAT BLACK RIGHTWARDS ARROW (SQUAT BLACK RIGHT ARROW) */ + [0x27a8, 0x27a8], /* HEAVY CONCAVE-POINTED BLACK RIGHTWARDS ARROW (HEAVY CONCAVE-POINTED BLACK RIGHT ARROW) */ + [0x27a9, 0x27a9], /* RIGHT-SHADED WHITE RIGHTWARDS ARROW (RIGHT-SHADED WHITE RIGHT ARROW) */ + [0x27aa, 0x27aa], /* LEFT-SHADED WHITE RIGHTWARDS ARROW (LEFT-SHADED WHITE RIGHT ARROW) */ + [0x27ab, 0x27ab], /* BACK-TILTED SHADOWED WHITE RIGHTWARDS ARROW (BACK-TILTED SHADOWED WHITE RIGHT ARROW) */ + [0x27ac, 0x27ac], /* FRONT-TILTED SHADOWED WHITE RIGHTWARDS ARROW (FRONT-TILTED SHADOWED WHITE RIGHT ARROW) */ + [0x27ad, 0x27ad], /* HEAVY LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW (HEAVY LOWER RIGHT-SHADOWED WHITE RIGHT ARROW) */ + [0x27ae, 0x27ae], /* HEAVY UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW (HEAVY UPPER RIGHT-SHADOWED WHITE RIGHT ARROW) */ + [0x27af, 0x27af], /* NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW (NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHT ARROW) */ + [0x27b0, 0x27b0], /* CURLY LOOP */ + [0x27b1, 0x27b1], /* NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW (NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHT ARROW) */ + [0x27b2, 0x27b2], /* CIRCLED HEAVY WHITE RIGHTWARDS ARROW (CIRCLED HEAVY WHITE RIGHT ARROW) */ + [0x27b3, 0x27b3], /* WHITE-FEATHERED RIGHTWARDS ARROW (WHITE-FEATHERED RIGHT ARROW) */ + [0x27b4, 0x27b4], /* BLACK-FEATHERED SOUTH EAST ARROW (BLACK-FEATHERED LOWER RIGHT ARROW) */ + [0x27b5, 0x27b5], /* BLACK-FEATHERED RIGHTWARDS ARROW (BLACK-FEATHERED RIGHT ARROW) */ + [0x27b6, 0x27b6], /* BLACK-FEATHERED NORTH EAST ARROW (BLACK-FEATHERED UPPER RIGHT ARROW) */ + [0x27b7, 0x27b7], /* HEAVY BLACK-FEATHERED SOUTH EAST ARROW (HEAVY BLACK-FEATHERED LOWER RIGHT ARROW) */ + [0x27b8, 0x27b8], /* HEAVY BLACK-FEATHERED RIGHTWARDS ARROW (HEAVY BLACK-FEATHERED RIGHT ARROW) */ + [0x27b9, 0x27b9], /* HEAVY BLACK-FEATHERED NORTH EAST ARROW (HEAVY BLACK-FEATHERED UPPER RIGHT ARROW) */ + [0x27ba, 0x27ba], /* TEARDROP-BARBED RIGHTWARDS ARROW (TEARDROP-BARBED RIGHT ARROW) */ + [0x27bb, 0x27bb], /* HEAVY TEARDROP-SHANKED RIGHTWARDS ARROW (HEAVY TEARDROP-SHANKED RIGHT ARROW) */ + [0x27bc, 0x27bc], /* WEDGE-TAILED RIGHTWARDS ARROW (WEDGE-TAILED RIGHT ARROW) */ + [0x27bd, 0x27bd], /* HEAVY WEDGE-TAILED RIGHTWARDS ARROW (HEAVY WEDGE-TAILED RIGHT ARROW) */ + [0x27be, 0x27be], /* OPEN-OUTLINED RIGHTWARDS ARROW (OPEN-OUTLINED RIGHT ARROW) */ + [0x27bf, 0x27bf], /* DOUBLE CURLY LOOP */ + [0x27c0, 0x27c0], /* THREE DIMENSIONAL ANGLE */ + [0x27c1, 0x27c1], /* WHITE TRIANGLE CONTAINING SMALL WHITE TRIANGLE */ + [0x27c2, 0x27c2], /* PERPENDICULAR */ + [0x27c3, 0x27c3], /* OPEN SUBSET */ + [0x27c4, 0x27c4], /* OPEN SUPERSET */ + [0x27c5, 0x27c5], /* LEFT S-SHAPED BAG DELIMITER */ + [0x27c6, 0x27c6], /* RIGHT S-SHAPED BAG DELIMITER */ + [0x27c7, 0x27c7], /* OR WITH DOT INSIDE */ + [0x27c8, 0x27c8], /* REVERSE SOLIDUS PRECEDING SUBSET */ + [0x27c9, 0x27c9], /* SUPERSET PRECEDING SOLIDUS */ + [0x27ca, 0x27ca], /* VERTICAL BAR WITH HORIZONTAL STROKE */ + [0x27cb, 0x27cb], /* MATHEMATICAL RISING DIAGONAL */ + [0x27cc, 0x27cc], /* LONG DIVISION */ + [0x27cd, 0x27cd], /* MATHEMATICAL FALLING DIAGONAL */ + [0x27ce, 0x27ce], /* SQUARED LOGICAL AND */ + [0x27cf, 0x27cf], /* SQUARED LOGICAL OR */ + [0x27d0, 0x27d0], /* WHITE DIAMOND WITH CENTRED DOT */ + [0x27d1, 0x27d1], /* AND WITH DOT */ + [0x27d2, 0x27d2], /* ELEMENT OF OPENING UPWARDS */ + [0x27d3, 0x27d3], /* LOWER RIGHT CORNER WITH DOT */ + [0x27d4, 0x27d4], /* UPPER LEFT CORNER WITH DOT */ + [0x27d5, 0x27d5], /* LEFT OUTER JOIN */ + [0x27d6, 0x27d6], /* RIGHT OUTER JOIN */ + [0x27d7, 0x27d7], /* FULL OUTER JOIN */ + [0x27d8, 0x27d8], /* LARGE UP TACK */ + [0x27d9, 0x27d9], /* LARGE DOWN TACK */ + [0x27da, 0x27da], /* LEFT AND RIGHT DOUBLE TURNSTILE */ + [0x27db, 0x27db], /* LEFT AND RIGHT TACK */ + [0x27dc, 0x27dc], /* LEFT MULTIMAP */ + [0x27dd, 0x27dd], /* LONG RIGHT TACK */ + [0x27de, 0x27de], /* LONG LEFT TACK */ + [0x27df, 0x27df], /* UP TACK WITH CIRCLE ABOVE */ + [0x27e0, 0x27e0], /* LOZENGE DIVIDED BY HORIZONTAL RULE */ + [0x27e1, 0x27e1], /* WHITE CONCAVE-SIDED DIAMOND */ + [0x27e2, 0x27e2], /* WHITE CONCAVE-SIDED DIAMOND WITH LEFTWARDS TICK */ + [0x27e3, 0x27e3], /* WHITE CONCAVE-SIDED DIAMOND WITH RIGHTWARDS TICK */ + [0x27e4, 0x27e4], /* WHITE SQUARE WITH LEFTWARDS TICK */ + [0x27e5, 0x27e5], /* WHITE SQUARE WITH RIGHTWARDS TICK */ + [0x27e6, 0x27e6], /* MATHEMATICAL LEFT WHITE SQUARE BRACKET */ + [0x27e7, 0x27e7], /* MATHEMATICAL RIGHT WHITE SQUARE BRACKET */ + [0x27e8, 0x27e8], /* MATHEMATICAL LEFT ANGLE BRACKET */ + [0x27e9, 0x27e9], /* MATHEMATICAL RIGHT ANGLE BRACKET */ + [0x27ea, 0x27ea], /* MATHEMATICAL LEFT DOUBLE ANGLE BRACKET */ + [0x27eb, 0x27eb], /* MATHEMATICAL RIGHT DOUBLE ANGLE BRACKET */ + [0x27ec, 0x27ec], /* MATHEMATICAL LEFT WHITE TORTOISE SHELL BRACKET */ + [0x27ed, 0x27ed], /* MATHEMATICAL RIGHT WHITE TORTOISE SHELL BRACKET */ + [0x27ee, 0x27ee], /* MATHEMATICAL LEFT FLATTENED PARENTHESIS */ + [0x27ef, 0x27ef], /* MATHEMATICAL RIGHT FLATTENED PARENTHESIS */ + [0x27f0, 0x27f0], /* UPWARDS QUADRUPLE ARROW */ + [0x27f1, 0x27f1], /* DOWNWARDS QUADRUPLE ARROW */ + [0x27f2, 0x27f2], /* ANTICLOCKWISE GAPPED CIRCLE ARROW */ + [0x27f3, 0x27f3], /* CLOCKWISE GAPPED CIRCLE ARROW */ + [0x27f4, 0x27f4], /* RIGHT ARROW WITH CIRCLED PLUS */ + [0x27f5, 0x27f5], /* LONG LEFTWARDS ARROW */ + [0x27f6, 0x27f6], /* LONG RIGHTWARDS ARROW */ + [0x27f7, 0x27f7], /* LONG LEFT RIGHT ARROW */ + [0x27f8, 0x27f8], /* LONG LEFTWARDS DOUBLE ARROW */ + [0x27f9, 0x27f9], /* LONG RIGHTWARDS DOUBLE ARROW */ + [0x27fa, 0x27fa], /* LONG LEFT RIGHT DOUBLE ARROW */ + [0x27fb, 0x27fb], /* LONG LEFTWARDS ARROW FROM BAR */ + [0x27fc, 0x27fc], /* LONG RIGHTWARDS ARROW FROM BAR */ + [0x27fd, 0x27fd], /* LONG LEFTWARDS DOUBLE ARROW FROM BAR */ + [0x27fe, 0x27fe], /* LONG RIGHTWARDS DOUBLE ARROW FROM BAR */ + [0x27ff, 0x27ff], /* LONG RIGHTWARDS SQUIGGLE ARROW */ + [0x2800, 0x2800], /* BRAILLE PATTERN BLANK */ + [0x2801, 0x2801], /* BRAILLE PATTERN DOTS-1 */ + [0x2802, 0x2802], /* BRAILLE PATTERN DOTS-2 */ + [0x2803, 0x2803], /* BRAILLE PATTERN DOTS-12 */ + [0x2804, 0x2804], /* BRAILLE PATTERN DOTS-3 */ + [0x2805, 0x2805], /* BRAILLE PATTERN DOTS-13 */ + [0x2806, 0x2806], /* BRAILLE PATTERN DOTS-23 */ + [0x2807, 0x2807], /* BRAILLE PATTERN DOTS-123 */ + [0x2808, 0x2808], /* BRAILLE PATTERN DOTS-4 */ + [0x2809, 0x2809], /* BRAILLE PATTERN DOTS-14 */ + [0x280a, 0x280a], /* BRAILLE PATTERN DOTS-24 */ + [0x280b, 0x280b], /* BRAILLE PATTERN DOTS-124 */ + [0x280c, 0x280c], /* BRAILLE PATTERN DOTS-34 */ + [0x280d, 0x280d], /* BRAILLE PATTERN DOTS-134 */ + [0x280e, 0x280e], /* BRAILLE PATTERN DOTS-234 */ + [0x280f, 0x280f], /* BRAILLE PATTERN DOTS-1234 */ + [0x2810, 0x2810], /* BRAILLE PATTERN DOTS-5 */ + [0x2811, 0x2811], /* BRAILLE PATTERN DOTS-15 */ + [0x2812, 0x2812], /* BRAILLE PATTERN DOTS-25 */ + [0x2813, 0x2813], /* BRAILLE PATTERN DOTS-125 */ + [0x2814, 0x2814], /* BRAILLE PATTERN DOTS-35 */ + [0x2815, 0x2815], /* BRAILLE PATTERN DOTS-135 */ + [0x2816, 0x2816], /* BRAILLE PATTERN DOTS-235 */ + [0x2817, 0x2817], /* BRAILLE PATTERN DOTS-1235 */ + [0x2818, 0x2818], /* BRAILLE PATTERN DOTS-45 */ + [0x2819, 0x2819], /* BRAILLE PATTERN DOTS-145 */ + [0x281a, 0x281a], /* BRAILLE PATTERN DOTS-245 */ + [0x281b, 0x281b], /* BRAILLE PATTERN DOTS-1245 */ + [0x281c, 0x281c], /* BRAILLE PATTERN DOTS-345 */ + [0x281d, 0x281d], /* BRAILLE PATTERN DOTS-1345 */ + [0x281e, 0x281e], /* BRAILLE PATTERN DOTS-2345 */ + [0x281f, 0x281f], /* BRAILLE PATTERN DOTS-12345 */ + [0x2820, 0x2820], /* BRAILLE PATTERN DOTS-6 */ + [0x2821, 0x2821], /* BRAILLE PATTERN DOTS-16 */ + [0x2822, 0x2822], /* BRAILLE PATTERN DOTS-26 */ + [0x2823, 0x2823], /* BRAILLE PATTERN DOTS-126 */ + [0x2824, 0x2824], /* BRAILLE PATTERN DOTS-36 */ + [0x2825, 0x2825], /* BRAILLE PATTERN DOTS-136 */ + [0x2826, 0x2826], /* BRAILLE PATTERN DOTS-236 */ + [0x2827, 0x2827], /* BRAILLE PATTERN DOTS-1236 */ + [0x2828, 0x2828], /* BRAILLE PATTERN DOTS-46 */ + [0x2829, 0x2829], /* BRAILLE PATTERN DOTS-146 */ + [0x282a, 0x282a], /* BRAILLE PATTERN DOTS-246 */ + [0x282b, 0x282b], /* BRAILLE PATTERN DOTS-1246 */ + [0x282c, 0x282c], /* BRAILLE PATTERN DOTS-346 */ + [0x282d, 0x282d], /* BRAILLE PATTERN DOTS-1346 */ + [0x282e, 0x282e], /* BRAILLE PATTERN DOTS-2346 */ + [0x282f, 0x282f], /* BRAILLE PATTERN DOTS-12346 */ + [0x2830, 0x2830], /* BRAILLE PATTERN DOTS-56 */ + [0x2831, 0x2831], /* BRAILLE PATTERN DOTS-156 */ + [0x2832, 0x2832], /* BRAILLE PATTERN DOTS-256 */ + [0x2833, 0x2833], /* BRAILLE PATTERN DOTS-1256 */ + [0x2834, 0x2834], /* BRAILLE PATTERN DOTS-356 */ + [0x2835, 0x2835], /* BRAILLE PATTERN DOTS-1356 */ + [0x2836, 0x2836], /* BRAILLE PATTERN DOTS-2356 */ + [0x2837, 0x2837], /* BRAILLE PATTERN DOTS-12356 */ + [0x2838, 0x2838], /* BRAILLE PATTERN DOTS-456 */ + [0x2839, 0x2839], /* BRAILLE PATTERN DOTS-1456 */ + [0x283a, 0x283a], /* BRAILLE PATTERN DOTS-2456 */ + [0x283b, 0x283b], /* BRAILLE PATTERN DOTS-12456 */ + [0x283c, 0x283c], /* BRAILLE PATTERN DOTS-3456 */ + [0x283d, 0x283d], /* BRAILLE PATTERN DOTS-13456 */ + [0x283e, 0x283e], /* BRAILLE PATTERN DOTS-23456 */ + [0x283f, 0x283f], /* BRAILLE PATTERN DOTS-123456 */ + [0x2840, 0x2840], /* BRAILLE PATTERN DOTS-7 */ + [0x2841, 0x2841], /* BRAILLE PATTERN DOTS-17 */ + [0x2842, 0x2842], /* BRAILLE PATTERN DOTS-27 */ + [0x2843, 0x2843], /* BRAILLE PATTERN DOTS-127 */ + [0x2844, 0x2844], /* BRAILLE PATTERN DOTS-37 */ + [0x2845, 0x2845], /* BRAILLE PATTERN DOTS-137 */ + [0x2846, 0x2846], /* BRAILLE PATTERN DOTS-237 */ + [0x2847, 0x2847], /* BRAILLE PATTERN DOTS-1237 */ + [0x2848, 0x2848], /* BRAILLE PATTERN DOTS-47 */ + [0x2849, 0x2849], /* BRAILLE PATTERN DOTS-147 */ + [0x284a, 0x284a], /* BRAILLE PATTERN DOTS-247 */ + [0x284b, 0x284b], /* BRAILLE PATTERN DOTS-1247 */ + [0x284c, 0x284c], /* BRAILLE PATTERN DOTS-347 */ + [0x284d, 0x284d], /* BRAILLE PATTERN DOTS-1347 */ + [0x284e, 0x284e], /* BRAILLE PATTERN DOTS-2347 */ + [0x284f, 0x284f], /* BRAILLE PATTERN DOTS-12347 */ + [0x2850, 0x2850], /* BRAILLE PATTERN DOTS-57 */ + [0x2851, 0x2851], /* BRAILLE PATTERN DOTS-157 */ + [0x2852, 0x2852], /* BRAILLE PATTERN DOTS-257 */ + [0x2853, 0x2853], /* BRAILLE PATTERN DOTS-1257 */ + [0x2854, 0x2854], /* BRAILLE PATTERN DOTS-357 */ + [0x2855, 0x2855], /* BRAILLE PATTERN DOTS-1357 */ + [0x2856, 0x2856], /* BRAILLE PATTERN DOTS-2357 */ + [0x2857, 0x2857], /* BRAILLE PATTERN DOTS-12357 */ + [0x2858, 0x2858], /* BRAILLE PATTERN DOTS-457 */ + [0x2859, 0x2859], /* BRAILLE PATTERN DOTS-1457 */ + [0x285a, 0x285a], /* BRAILLE PATTERN DOTS-2457 */ + [0x285b, 0x285b], /* BRAILLE PATTERN DOTS-12457 */ + [0x285c, 0x285c], /* BRAILLE PATTERN DOTS-3457 */ + [0x285d, 0x285d], /* BRAILLE PATTERN DOTS-13457 */ + [0x285e, 0x285e], /* BRAILLE PATTERN DOTS-23457 */ + [0x285f, 0x285f], /* BRAILLE PATTERN DOTS-123457 */ + [0x2860, 0x2860], /* BRAILLE PATTERN DOTS-67 */ + [0x2861, 0x2861], /* BRAILLE PATTERN DOTS-167 */ + [0x2862, 0x2862], /* BRAILLE PATTERN DOTS-267 */ + [0x2863, 0x2863], /* BRAILLE PATTERN DOTS-1267 */ + [0x2864, 0x2864], /* BRAILLE PATTERN DOTS-367 */ + [0x2865, 0x2865], /* BRAILLE PATTERN DOTS-1367 */ + [0x2866, 0x2866], /* BRAILLE PATTERN DOTS-2367 */ + [0x2867, 0x2867], /* BRAILLE PATTERN DOTS-12367 */ + [0x2868, 0x2868], /* BRAILLE PATTERN DOTS-467 */ + [0x2869, 0x2869], /* BRAILLE PATTERN DOTS-1467 */ + [0x286a, 0x286a], /* BRAILLE PATTERN DOTS-2467 */ + [0x286b, 0x286b], /* BRAILLE PATTERN DOTS-12467 */ + [0x286c, 0x286c], /* BRAILLE PATTERN DOTS-3467 */ + [0x286d, 0x286d], /* BRAILLE PATTERN DOTS-13467 */ + [0x286e, 0x286e], /* BRAILLE PATTERN DOTS-23467 */ + [0x286f, 0x286f], /* BRAILLE PATTERN DOTS-123467 */ + [0x2870, 0x2870], /* BRAILLE PATTERN DOTS-567 */ + [0x2871, 0x2871], /* BRAILLE PATTERN DOTS-1567 */ + [0x2872, 0x2872], /* BRAILLE PATTERN DOTS-2567 */ + [0x2873, 0x2873], /* BRAILLE PATTERN DOTS-12567 */ + [0x2874, 0x2874], /* BRAILLE PATTERN DOTS-3567 */ + [0x2875, 0x2875], /* BRAILLE PATTERN DOTS-13567 */ + [0x2876, 0x2876], /* BRAILLE PATTERN DOTS-23567 */ + [0x2877, 0x2877], /* BRAILLE PATTERN DOTS-123567 */ + [0x2878, 0x2878], /* BRAILLE PATTERN DOTS-4567 */ + [0x2879, 0x2879], /* BRAILLE PATTERN DOTS-14567 */ + [0x287a, 0x287a], /* BRAILLE PATTERN DOTS-24567 */ + [0x287b, 0x287b], /* BRAILLE PATTERN DOTS-124567 */ + [0x287c, 0x287c], /* BRAILLE PATTERN DOTS-34567 */ + [0x287d, 0x287d], /* BRAILLE PATTERN DOTS-134567 */ + [0x287e, 0x287e], /* BRAILLE PATTERN DOTS-234567 */ + [0x287f, 0x287f], /* BRAILLE PATTERN DOTS-1234567 */ + [0x2880, 0x2880], /* BRAILLE PATTERN DOTS-8 */ + [0x2881, 0x2881], /* BRAILLE PATTERN DOTS-18 */ + [0x2882, 0x2882], /* BRAILLE PATTERN DOTS-28 */ + [0x2883, 0x2883], /* BRAILLE PATTERN DOTS-128 */ + [0x2884, 0x2884], /* BRAILLE PATTERN DOTS-38 */ + [0x2885, 0x2885], /* BRAILLE PATTERN DOTS-138 */ + [0x2886, 0x2886], /* BRAILLE PATTERN DOTS-238 */ + [0x2887, 0x2887], /* BRAILLE PATTERN DOTS-1238 */ + [0x2888, 0x2888], /* BRAILLE PATTERN DOTS-48 */ + [0x2889, 0x2889], /* BRAILLE PATTERN DOTS-148 */ + [0x288a, 0x288a], /* BRAILLE PATTERN DOTS-248 */ + [0x288b, 0x288b], /* BRAILLE PATTERN DOTS-1248 */ + [0x288c, 0x288c], /* BRAILLE PATTERN DOTS-348 */ + [0x288d, 0x288d], /* BRAILLE PATTERN DOTS-1348 */ + [0x288e, 0x288e], /* BRAILLE PATTERN DOTS-2348 */ + [0x288f, 0x288f], /* BRAILLE PATTERN DOTS-12348 */ + [0x2890, 0x2890], /* BRAILLE PATTERN DOTS-58 */ + [0x2891, 0x2891], /* BRAILLE PATTERN DOTS-158 */ + [0x2892, 0x2892], /* BRAILLE PATTERN DOTS-258 */ + [0x2893, 0x2893], /* BRAILLE PATTERN DOTS-1258 */ + [0x2894, 0x2894], /* BRAILLE PATTERN DOTS-358 */ + [0x2895, 0x2895], /* BRAILLE PATTERN DOTS-1358 */ + [0x2896, 0x2896], /* BRAILLE PATTERN DOTS-2358 */ + [0x2897, 0x2897], /* BRAILLE PATTERN DOTS-12358 */ + [0x2898, 0x2898], /* BRAILLE PATTERN DOTS-458 */ + [0x2899, 0x2899], /* BRAILLE PATTERN DOTS-1458 */ + [0x289a, 0x289a], /* BRAILLE PATTERN DOTS-2458 */ + [0x289b, 0x289b], /* BRAILLE PATTERN DOTS-12458 */ + [0x289c, 0x289c], /* BRAILLE PATTERN DOTS-3458 */ + [0x289d, 0x289d], /* BRAILLE PATTERN DOTS-13458 */ + [0x289e, 0x289e], /* BRAILLE PATTERN DOTS-23458 */ + [0x289f, 0x289f], /* BRAILLE PATTERN DOTS-123458 */ + [0x28a0, 0x28a0], /* BRAILLE PATTERN DOTS-68 */ + [0x28a1, 0x28a1], /* BRAILLE PATTERN DOTS-168 */ + [0x28a2, 0x28a2], /* BRAILLE PATTERN DOTS-268 */ + [0x28a3, 0x28a3], /* BRAILLE PATTERN DOTS-1268 */ + [0x28a4, 0x28a4], /* BRAILLE PATTERN DOTS-368 */ + [0x28a5, 0x28a5], /* BRAILLE PATTERN DOTS-1368 */ + [0x28a6, 0x28a6], /* BRAILLE PATTERN DOTS-2368 */ + [0x28a7, 0x28a7], /* BRAILLE PATTERN DOTS-12368 */ + [0x28a8, 0x28a8], /* BRAILLE PATTERN DOTS-468 */ + [0x28a9, 0x28a9], /* BRAILLE PATTERN DOTS-1468 */ + [0x28aa, 0x28aa], /* BRAILLE PATTERN DOTS-2468 */ + [0x28ab, 0x28ab], /* BRAILLE PATTERN DOTS-12468 */ + [0x28ac, 0x28ac], /* BRAILLE PATTERN DOTS-3468 */ + [0x28ad, 0x28ad], /* BRAILLE PATTERN DOTS-13468 */ + [0x28ae, 0x28ae], /* BRAILLE PATTERN DOTS-23468 */ + [0x28af, 0x28af], /* BRAILLE PATTERN DOTS-123468 */ + [0x28b0, 0x28b0], /* BRAILLE PATTERN DOTS-568 */ + [0x28b1, 0x28b1], /* BRAILLE PATTERN DOTS-1568 */ + [0x28b2, 0x28b2], /* BRAILLE PATTERN DOTS-2568 */ + [0x28b3, 0x28b3], /* BRAILLE PATTERN DOTS-12568 */ + [0x28b4, 0x28b4], /* BRAILLE PATTERN DOTS-3568 */ + [0x28b5, 0x28b5], /* BRAILLE PATTERN DOTS-13568 */ + [0x28b6, 0x28b6], /* BRAILLE PATTERN DOTS-23568 */ + [0x28b7, 0x28b7], /* BRAILLE PATTERN DOTS-123568 */ + [0x28b8, 0x28b8], /* BRAILLE PATTERN DOTS-4568 */ + [0x28b9, 0x28b9], /* BRAILLE PATTERN DOTS-14568 */ + [0x28ba, 0x28ba], /* BRAILLE PATTERN DOTS-24568 */ + [0x28bb, 0x28bb], /* BRAILLE PATTERN DOTS-124568 */ + [0x28bc, 0x28bc], /* BRAILLE PATTERN DOTS-34568 */ + [0x28bd, 0x28bd], /* BRAILLE PATTERN DOTS-134568 */ + [0x28be, 0x28be], /* BRAILLE PATTERN DOTS-234568 */ + [0x28bf, 0x28bf], /* BRAILLE PATTERN DOTS-1234568 */ + [0x28c0, 0x28c0], /* BRAILLE PATTERN DOTS-78 */ + [0x28c1, 0x28c1], /* BRAILLE PATTERN DOTS-178 */ + [0x28c2, 0x28c2], /* BRAILLE PATTERN DOTS-278 */ + [0x28c3, 0x28c3], /* BRAILLE PATTERN DOTS-1278 */ + [0x28c4, 0x28c4], /* BRAILLE PATTERN DOTS-378 */ + [0x28c5, 0x28c5], /* BRAILLE PATTERN DOTS-1378 */ + [0x28c6, 0x28c6], /* BRAILLE PATTERN DOTS-2378 */ + [0x28c7, 0x28c7], /* BRAILLE PATTERN DOTS-12378 */ + [0x28c8, 0x28c8], /* BRAILLE PATTERN DOTS-478 */ + [0x28c9, 0x28c9], /* BRAILLE PATTERN DOTS-1478 */ + [0x28ca, 0x28ca], /* BRAILLE PATTERN DOTS-2478 */ + [0x28cb, 0x28cb], /* BRAILLE PATTERN DOTS-12478 */ + [0x28cc, 0x28cc], /* BRAILLE PATTERN DOTS-3478 */ + [0x28cd, 0x28cd], /* BRAILLE PATTERN DOTS-13478 */ + [0x28ce, 0x28ce], /* BRAILLE PATTERN DOTS-23478 */ + [0x28cf, 0x28cf], /* BRAILLE PATTERN DOTS-123478 */ + [0x28d0, 0x28d0], /* BRAILLE PATTERN DOTS-578 */ + [0x28d1, 0x28d1], /* BRAILLE PATTERN DOTS-1578 */ + [0x28d2, 0x28d2], /* BRAILLE PATTERN DOTS-2578 */ + [0x28d3, 0x28d3], /* BRAILLE PATTERN DOTS-12578 */ + [0x28d4, 0x28d4], /* BRAILLE PATTERN DOTS-3578 */ + [0x28d5, 0x28d5], /* BRAILLE PATTERN DOTS-13578 */ + [0x28d6, 0x28d6], /* BRAILLE PATTERN DOTS-23578 */ + [0x28d7, 0x28d7], /* BRAILLE PATTERN DOTS-123578 */ + [0x28d8, 0x28d8], /* BRAILLE PATTERN DOTS-4578 */ + [0x28d9, 0x28d9], /* BRAILLE PATTERN DOTS-14578 */ + [0x28da, 0x28da], /* BRAILLE PATTERN DOTS-24578 */ + [0x28db, 0x28db], /* BRAILLE PATTERN DOTS-124578 */ + [0x28dc, 0x28dc], /* BRAILLE PATTERN DOTS-34578 */ + [0x28dd, 0x28dd], /* BRAILLE PATTERN DOTS-134578 */ + [0x28de, 0x28de], /* BRAILLE PATTERN DOTS-234578 */ + [0x28df, 0x28df], /* BRAILLE PATTERN DOTS-1234578 */ + [0x28e0, 0x28e0], /* BRAILLE PATTERN DOTS-678 */ + [0x28e1, 0x28e1], /* BRAILLE PATTERN DOTS-1678 */ + [0x28e2, 0x28e2], /* BRAILLE PATTERN DOTS-2678 */ + [0x28e3, 0x28e3], /* BRAILLE PATTERN DOTS-12678 */ + [0x28e4, 0x28e4], /* BRAILLE PATTERN DOTS-3678 */ + [0x28e5, 0x28e5], /* BRAILLE PATTERN DOTS-13678 */ + [0x28e6, 0x28e6], /* BRAILLE PATTERN DOTS-23678 */ + [0x28e7, 0x28e7], /* BRAILLE PATTERN DOTS-123678 */ + [0x28e8, 0x28e8], /* BRAILLE PATTERN DOTS-4678 */ + [0x28e9, 0x28e9], /* BRAILLE PATTERN DOTS-14678 */ + [0x28ea, 0x28ea], /* BRAILLE PATTERN DOTS-24678 */ + [0x28eb, 0x28eb], /* BRAILLE PATTERN DOTS-124678 */ + [0x28ec, 0x28ec], /* BRAILLE PATTERN DOTS-34678 */ + [0x28ed, 0x28ed], /* BRAILLE PATTERN DOTS-134678 */ + [0x28ee, 0x28ee], /* BRAILLE PATTERN DOTS-234678 */ + [0x28ef, 0x28ef], /* BRAILLE PATTERN DOTS-1234678 */ + [0x28f0, 0x28f0], /* BRAILLE PATTERN DOTS-5678 */ + [0x28f1, 0x28f1], /* BRAILLE PATTERN DOTS-15678 */ + [0x28f2, 0x28f2], /* BRAILLE PATTERN DOTS-25678 */ + [0x28f3, 0x28f3], /* BRAILLE PATTERN DOTS-125678 */ + [0x28f4, 0x28f4], /* BRAILLE PATTERN DOTS-35678 */ + [0x28f5, 0x28f5], /* BRAILLE PATTERN DOTS-135678 */ + [0x28f6, 0x28f6], /* BRAILLE PATTERN DOTS-235678 */ + [0x28f7, 0x28f7], /* BRAILLE PATTERN DOTS-1235678 */ + [0x28f8, 0x28f8], /* BRAILLE PATTERN DOTS-45678 */ + [0x28f9, 0x28f9], /* BRAILLE PATTERN DOTS-145678 */ + [0x28fa, 0x28fa], /* BRAILLE PATTERN DOTS-245678 */ + [0x28fb, 0x28fb], /* BRAILLE PATTERN DOTS-1245678 */ + [0x28fc, 0x28fc], /* BRAILLE PATTERN DOTS-345678 */ + [0x28fd, 0x28fd], /* BRAILLE PATTERN DOTS-1345678 */ + [0x28fe, 0x28fe], /* BRAILLE PATTERN DOTS-2345678 */ + [0x28ff, 0x28ff], /* BRAILLE PATTERN DOTS-12345678 */ + [0x2900, 0x2900], /* RIGHTWARDS TWO-HEADED ARROW WITH VERTICAL STROKE */ + [0x2901, 0x2901], /* RIGHTWARDS TWO-HEADED ARROW WITH DOUBLE VERTICAL STROKE */ + [0x2902, 0x2902], /* LEFTWARDS DOUBLE ARROW WITH VERTICAL STROKE */ + [0x2903, 0x2903], /* RIGHTWARDS DOUBLE ARROW WITH VERTICAL STROKE */ + [0x2904, 0x2904], /* LEFT RIGHT DOUBLE ARROW WITH VERTICAL STROKE */ + [0x2905, 0x2905], /* RIGHTWARDS TWO-HEADED ARROW FROM BAR */ + [0x2906, 0x2906], /* LEFTWARDS DOUBLE ARROW FROM BAR */ + [0x2907, 0x2907], /* RIGHTWARDS DOUBLE ARROW FROM BAR */ + [0x2908, 0x2908], /* DOWNWARDS ARROW WITH HORIZONTAL STROKE */ + [0x2909, 0x2909], /* UPWARDS ARROW WITH HORIZONTAL STROKE */ + [0x290a, 0x290a], /* UPWARDS TRIPLE ARROW */ + [0x290b, 0x290b], /* DOWNWARDS TRIPLE ARROW */ + [0x290c, 0x290c], /* LEFTWARDS DOUBLE DASH ARROW */ + [0x290d, 0x290d], /* RIGHTWARDS DOUBLE DASH ARROW */ + [0x290e, 0x290e], /* LEFTWARDS TRIPLE DASH ARROW */ + [0x290f, 0x290f], /* RIGHTWARDS TRIPLE DASH ARROW */ + [0x2910, 0x2910], /* RIGHTWARDS TWO-HEADED TRIPLE DASH ARROW */ + [0x2911, 0x2911], /* RIGHTWARDS ARROW WITH DOTTED STEM */ + [0x2912, 0x2912], /* UPWARDS ARROW TO BAR */ + [0x2913, 0x2913], /* DOWNWARDS ARROW TO BAR */ + [0x2914, 0x2914], /* RIGHTWARDS ARROW WITH TAIL WITH VERTICAL STROKE */ + [0x2915, 0x2915], /* RIGHTWARDS ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE */ + [0x2916, 0x2916], /* RIGHTWARDS TWO-HEADED ARROW WITH TAIL */ + [0x2917, 0x2917], /* RIGHTWARDS TWO-HEADED ARROW WITH TAIL WITH VERTICAL STROKE */ + [0x2918, 0x2918], /* RIGHTWARDS TWO-HEADED ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE */ + [0x2919, 0x2919], /* LEFTWARDS ARROW-TAIL */ + [0x291a, 0x291a], /* RIGHTWARDS ARROW-TAIL */ + [0x291b, 0x291b], /* LEFTWARDS DOUBLE ARROW-TAIL */ + [0x291c, 0x291c], /* RIGHTWARDS DOUBLE ARROW-TAIL */ + [0x291d, 0x291d], /* LEFTWARDS ARROW TO BLACK DIAMOND */ + [0x291e, 0x291e], /* RIGHTWARDS ARROW TO BLACK DIAMOND */ + [0x291f, 0x291f], /* LEFTWARDS ARROW FROM BAR TO BLACK DIAMOND */ + [0x2920, 0x2920], /* RIGHTWARDS ARROW FROM BAR TO BLACK DIAMOND */ + [0x2921, 0x2921], /* NORTH WEST AND SOUTH EAST ARROW */ + [0x2922, 0x2922], /* NORTH EAST AND SOUTH WEST ARROW */ + [0x2923, 0x2923], /* NORTH WEST ARROW WITH HOOK */ + [0x2924, 0x2924], /* NORTH EAST ARROW WITH HOOK */ + [0x2925, 0x2925], /* SOUTH EAST ARROW WITH HOOK */ + [0x2926, 0x2926], /* SOUTH WEST ARROW WITH HOOK */ + [0x2927, 0x2927], /* NORTH WEST ARROW AND NORTH EAST ARROW */ + [0x2928, 0x2928], /* NORTH EAST ARROW AND SOUTH EAST ARROW */ + [0x2929, 0x2929], /* SOUTH EAST ARROW AND SOUTH WEST ARROW */ + [0x292a, 0x292a], /* SOUTH WEST ARROW AND NORTH WEST ARROW */ + [0x292b, 0x292b], /* RISING DIAGONAL CROSSING FALLING DIAGONAL */ + [0x292c, 0x292c], /* FALLING DIAGONAL CROSSING RISING DIAGONAL */ + [0x292d, 0x292d], /* SOUTH EAST ARROW CROSSING NORTH EAST ARROW */ + [0x292e, 0x292e], /* NORTH EAST ARROW CROSSING SOUTH EAST ARROW */ + [0x292f, 0x292f], /* FALLING DIAGONAL CROSSING NORTH EAST ARROW */ + [0x2930, 0x2930], /* RISING DIAGONAL CROSSING SOUTH EAST ARROW */ + [0x2931, 0x2931], /* NORTH EAST ARROW CROSSING NORTH WEST ARROW */ + [0x2932, 0x2932], /* NORTH WEST ARROW CROSSING NORTH EAST ARROW */ + [0x2933, 0x2933], /* WAVE ARROW POINTING DIRECTLY RIGHT */ + [0x2934, 0x2934], /* ARROW POINTING RIGHTWARDS THEN CURVING UPWARDS */ + [0x2935, 0x2935], /* ARROW POINTING RIGHTWARDS THEN CURVING DOWNWARDS */ + [0x2936, 0x2936], /* ARROW POINTING DOWNWARDS THEN CURVING LEFTWARDS */ + [0x2937, 0x2937], /* ARROW POINTING DOWNWARDS THEN CURVING RIGHTWARDS */ + [0x2938, 0x2938], /* RIGHT-SIDE ARC CLOCKWISE ARROW */ + [0x2939, 0x2939], /* LEFT-SIDE ARC ANTICLOCKWISE ARROW */ + [0x293a, 0x293a], /* TOP ARC ANTICLOCKWISE ARROW */ + [0x293b, 0x293b], /* BOTTOM ARC ANTICLOCKWISE ARROW */ + [0x293c, 0x293c], /* TOP ARC CLOCKWISE ARROW WITH MINUS */ + [0x293d, 0x293d], /* TOP ARC ANTICLOCKWISE ARROW WITH PLUS */ + [0x293e, 0x293e], /* LOWER RIGHT SEMICIRCULAR CLOCKWISE ARROW */ + [0x293f, 0x293f], /* LOWER LEFT SEMICIRCULAR ANTICLOCKWISE ARROW */ + [0x2940, 0x2940], /* ANTICLOCKWISE CLOSED CIRCLE ARROW */ + [0x2941, 0x2941], /* CLOCKWISE CLOSED CIRCLE ARROW */ + [0x2942, 0x2942], /* RIGHTWARDS ARROW ABOVE SHORT LEFTWARDS ARROW */ + [0x2943, 0x2943], /* LEFTWARDS ARROW ABOVE SHORT RIGHTWARDS ARROW */ + [0x2944, 0x2944], /* SHORT RIGHTWARDS ARROW ABOVE LEFTWARDS ARROW */ + [0x2945, 0x2945], /* RIGHTWARDS ARROW WITH PLUS BELOW */ + [0x2946, 0x2946], /* LEFTWARDS ARROW WITH PLUS BELOW */ + [0x2947, 0x2947], /* RIGHTWARDS ARROW THROUGH X */ + [0x2948, 0x2948], /* LEFT RIGHT ARROW THROUGH SMALL CIRCLE */ + [0x2949, 0x2949], /* UPWARDS TWO-HEADED ARROW FROM SMALL CIRCLE */ + [0x294a, 0x294a], /* LEFT BARB UP RIGHT BARB DOWN HARPOON */ + [0x294b, 0x294b], /* LEFT BARB DOWN RIGHT BARB UP HARPOON */ + [0x294c, 0x294c], /* UP BARB RIGHT DOWN BARB LEFT HARPOON */ + [0x294d, 0x294d], /* UP BARB LEFT DOWN BARB RIGHT HARPOON */ + [0x294e, 0x294e], /* LEFT BARB UP RIGHT BARB UP HARPOON */ + [0x294f, 0x294f], /* UP BARB RIGHT DOWN BARB RIGHT HARPOON */ + [0x2950, 0x2950], /* LEFT BARB DOWN RIGHT BARB DOWN HARPOON */ + [0x2951, 0x2951], /* UP BARB LEFT DOWN BARB LEFT HARPOON */ + [0x2952, 0x2952], /* LEFTWARDS HARPOON WITH BARB UP TO BAR */ + [0x2953, 0x2953], /* RIGHTWARDS HARPOON WITH BARB UP TO BAR */ + [0x2954, 0x2954], /* UPWARDS HARPOON WITH BARB RIGHT TO BAR */ + [0x2955, 0x2955], /* DOWNWARDS HARPOON WITH BARB RIGHT TO BAR */ + [0x2956, 0x2956], /* LEFTWARDS HARPOON WITH BARB DOWN TO BAR */ + [0x2957, 0x2957], /* RIGHTWARDS HARPOON WITH BARB DOWN TO BAR */ + [0x2958, 0x2958], /* UPWARDS HARPOON WITH BARB LEFT TO BAR */ + [0x2959, 0x2959], /* DOWNWARDS HARPOON WITH BARB LEFT TO BAR */ + [0x295a, 0x295a], /* LEFTWARDS HARPOON WITH BARB UP FROM BAR */ + [0x295b, 0x295b], /* RIGHTWARDS HARPOON WITH BARB UP FROM BAR */ + [0x295c, 0x295c], /* UPWARDS HARPOON WITH BARB RIGHT FROM BAR */ + [0x295d, 0x295d], /* DOWNWARDS HARPOON WITH BARB RIGHT FROM BAR */ + [0x295e, 0x295e], /* LEFTWARDS HARPOON WITH BARB DOWN FROM BAR */ + [0x295f, 0x295f], /* RIGHTWARDS HARPOON WITH BARB DOWN FROM BAR */ + [0x2960, 0x2960], /* UPWARDS HARPOON WITH BARB LEFT FROM BAR */ + [0x2961, 0x2961], /* DOWNWARDS HARPOON WITH BARB LEFT FROM BAR */ + [0x2962, 0x2962], /* LEFTWARDS HARPOON WITH BARB UP ABOVE LEFTWARDS HARPOON WITH BARB DOWN */ + [0x2963, 0x2963], /* UPWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT */ + [0x2964, 0x2964], /* RIGHTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB DOWN */ + [0x2965, 0x2965], /* DOWNWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT */ + [0x2966, 0x2966], /* LEFTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB UP */ + [0x2967, 0x2967], /* LEFTWARDS HARPOON WITH BARB DOWN ABOVE RIGHTWARDS HARPOON WITH BARB DOWN */ + [0x2968, 0x2968], /* RIGHTWARDS HARPOON WITH BARB UP ABOVE LEFTWARDS HARPOON WITH BARB UP */ + [0x2969, 0x2969], /* RIGHTWARDS HARPOON WITH BARB DOWN ABOVE LEFTWARDS HARPOON WITH BARB DOWN */ + [0x296a, 0x296a], /* LEFTWARDS HARPOON WITH BARB UP ABOVE LONG DASH */ + [0x296b, 0x296b], /* LEFTWARDS HARPOON WITH BARB DOWN BELOW LONG DASH */ + [0x296c, 0x296c], /* RIGHTWARDS HARPOON WITH BARB UP ABOVE LONG DASH */ + [0x296d, 0x296d], /* RIGHTWARDS HARPOON WITH BARB DOWN BELOW LONG DASH */ + [0x296e, 0x296e], /* UPWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT */ + [0x296f, 0x296f], /* DOWNWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT */ + [0x2970, 0x2970], /* RIGHT DOUBLE ARROW WITH ROUNDED HEAD */ + [0x2971, 0x2971], /* EQUALS SIGN ABOVE RIGHTWARDS ARROW */ + [0x2972, 0x2972], /* TILDE OPERATOR ABOVE RIGHTWARDS ARROW */ + [0x2973, 0x2973], /* LEFTWARDS ARROW ABOVE TILDE OPERATOR */ + [0x2974, 0x2974], /* RIGHTWARDS ARROW ABOVE TILDE OPERATOR */ + [0x2975, 0x2975], /* RIGHTWARDS ARROW ABOVE ALMOST EQUAL TO */ + [0x2976, 0x2976], /* LESS-THAN ABOVE LEFTWARDS ARROW */ + [0x2977, 0x2977], /* LEFTWARDS ARROW THROUGH LESS-THAN */ + [0x2978, 0x2978], /* GREATER-THAN ABOVE RIGHTWARDS ARROW */ + [0x2979, 0x2979], /* SUBSET ABOVE RIGHTWARDS ARROW */ + [0x297a, 0x297a], /* LEFTWARDS ARROW THROUGH SUBSET */ + [0x297b, 0x297b], /* SUPERSET ABOVE LEFTWARDS ARROW */ + [0x297c, 0x297c], /* LEFT FISH TAIL */ + [0x297d, 0x297d], /* RIGHT FISH TAIL */ + [0x297e, 0x297e], /* UP FISH TAIL */ + [0x297f, 0x297f], /* DOWN FISH TAIL */ + [0x2980, 0x2980], /* TRIPLE VERTICAL BAR DELIMITER */ + [0x2981, 0x2981], /* Z NOTATION SPOT */ + [0x2982, 0x2982], /* Z NOTATION TYPE COLON */ + [0x2983, 0x2983], /* LEFT WHITE CURLY BRACKET */ + [0x2984, 0x2984], /* RIGHT WHITE CURLY BRACKET */ + [0x2985, 0x2985], /* LEFT WHITE PARENTHESIS */ + [0x2986, 0x2986], /* RIGHT WHITE PARENTHESIS */ + [0x2987, 0x2987], /* Z NOTATION LEFT IMAGE BRACKET */ + [0x2988, 0x2988], /* Z NOTATION RIGHT IMAGE BRACKET */ + [0x2989, 0x2989], /* Z NOTATION LEFT BINDING BRACKET */ + [0x298a, 0x298a], /* Z NOTATION RIGHT BINDING BRACKET */ + [0x298b, 0x298b], /* LEFT SQUARE BRACKET WITH UNDERBAR */ + [0x298c, 0x298c], /* RIGHT SQUARE BRACKET WITH UNDERBAR */ + [0x298d, 0x298d], /* LEFT SQUARE BRACKET WITH TICK IN TOP CORNER */ + [0x298e, 0x298e], /* RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER */ + [0x298f, 0x298f], /* LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER */ + [0x2990, 0x2990], /* RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER */ + [0x2991, 0x2991], /* LEFT ANGLE BRACKET WITH DOT */ + [0x2992, 0x2992], /* RIGHT ANGLE BRACKET WITH DOT */ + [0x2993, 0x2993], /* LEFT ARC LESS-THAN BRACKET */ + [0x2994, 0x2994], /* RIGHT ARC GREATER-THAN BRACKET */ + [0x2995, 0x2995], /* DOUBLE LEFT ARC GREATER-THAN BRACKET */ + [0x2996, 0x2996], /* DOUBLE RIGHT ARC LESS-THAN BRACKET */ + [0x2997, 0x2997], /* LEFT BLACK TORTOISE SHELL BRACKET */ + [0x2998, 0x2998], /* RIGHT BLACK TORTOISE SHELL BRACKET */ + [0x2999, 0x2999], /* DOTTED FENCE */ + [0x299a, 0x299a], /* VERTICAL ZIGZAG LINE */ + [0x299b, 0x299b], /* MEASURED ANGLE OPENING LEFT */ + [0x299c, 0x299c], /* RIGHT ANGLE VARIANT WITH SQUARE */ + [0x299d, 0x299d], /* MEASURED RIGHT ANGLE WITH DOT */ + [0x299e, 0x299e], /* ANGLE WITH S INSIDE */ + [0x299f, 0x299f], /* ACUTE ANGLE */ + [0x29a0, 0x29a0], /* SPHERICAL ANGLE OPENING LEFT */ + [0x29a1, 0x29a1], /* SPHERICAL ANGLE OPENING UP */ + [0x29a2, 0x29a2], /* TURNED ANGLE */ + [0x29a3, 0x29a3], /* REVERSED ANGLE */ + [0x29a4, 0x29a4], /* ANGLE WITH UNDERBAR */ + [0x29a5, 0x29a5], /* REVERSED ANGLE WITH UNDERBAR */ + [0x29a6, 0x29a6], /* OBLIQUE ANGLE OPENING UP */ + [0x29a7, 0x29a7], /* OBLIQUE ANGLE OPENING DOWN */ + [0x29a8, 0x29a8], /* MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND RIGHT */ + [0x29a9, 0x29a9], /* MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND LEFT */ + [0x29aa, 0x29aa], /* MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND RIGHT */ + [0x29ab, 0x29ab], /* MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND LEFT */ + [0x29ac, 0x29ac], /* MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND UP */ + [0x29ad, 0x29ad], /* MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND UP */ + [0x29ae, 0x29ae], /* MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND DOWN */ + [0x29af, 0x29af], /* MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND DOWN */ + [0x29b0, 0x29b0], /* REVERSED EMPTY SET */ + [0x29b1, 0x29b1], /* EMPTY SET WITH OVERBAR */ + [0x29b2, 0x29b2], /* EMPTY SET WITH SMALL CIRCLE ABOVE */ + [0x29b3, 0x29b3], /* EMPTY SET WITH RIGHT ARROW ABOVE */ + [0x29b4, 0x29b4], /* EMPTY SET WITH LEFT ARROW ABOVE */ + [0x29b5, 0x29b5], /* CIRCLE WITH HORIZONTAL BAR */ + [0x29b6, 0x29b6], /* CIRCLED VERTICAL BAR */ + [0x29b7, 0x29b7], /* CIRCLED PARALLEL */ + [0x29b8, 0x29b8], /* CIRCLED REVERSE SOLIDUS */ + [0x29b9, 0x29b9], /* CIRCLED PERPENDICULAR */ + [0x29ba, 0x29ba], /* CIRCLE DIVIDED BY HORIZONTAL BAR AND TOP HALF DIVIDED BY VERTICAL BAR */ + [0x29bb, 0x29bb], /* CIRCLE WITH SUPERIMPOSED X */ + [0x29bc, 0x29bc], /* CIRCLED ANTICLOCKWISE-ROTATED DIVISION SIGN */ + [0x29bd, 0x29bd], /* UP ARROW THROUGH CIRCLE */ + [0x29be, 0x29be], /* CIRCLED WHITE BULLET */ + [0x29bf, 0x29bf], /* CIRCLED BULLET */ + [0x29c0, 0x29c0], /* CIRCLED LESS-THAN */ + [0x29c1, 0x29c1], /* CIRCLED GREATER-THAN */ + [0x29c2, 0x29c2], /* CIRCLE WITH SMALL CIRCLE TO THE RIGHT */ + [0x29c3, 0x29c3], /* CIRCLE WITH TWO HORIZONTAL STROKES TO THE RIGHT */ + [0x29c4, 0x29c4], /* SQUARED RISING DIAGONAL SLASH */ + [0x29c5, 0x29c5], /* SQUARED FALLING DIAGONAL SLASH */ + [0x29c6, 0x29c6], /* SQUARED ASTERISK */ + [0x29c7, 0x29c7], /* SQUARED SMALL CIRCLE */ + [0x29c8, 0x29c8], /* SQUARED SQUARE */ + [0x29c9, 0x29c9], /* TWO JOINED SQUARES */ + [0x29ca, 0x29ca], /* TRIANGLE WITH DOT ABOVE */ + [0x29cb, 0x29cb], /* TRIANGLE WITH UNDERBAR */ + [0x29cc, 0x29cc], /* S IN TRIANGLE */ + [0x29cd, 0x29cd], /* TRIANGLE WITH SERIFS AT BOTTOM */ + [0x29ce, 0x29ce], /* RIGHT TRIANGLE ABOVE LEFT TRIANGLE */ + [0x29cf, 0x29cf], /* LEFT TRIANGLE BESIDE VERTICAL BAR */ + [0x29d0, 0x29d0], /* VERTICAL BAR BESIDE RIGHT TRIANGLE */ + [0x29d1, 0x29d1], /* BOWTIE WITH LEFT HALF BLACK */ + [0x29d2, 0x29d2], /* BOWTIE WITH RIGHT HALF BLACK */ + [0x29d3, 0x29d3], /* BLACK BOWTIE */ + [0x29d4, 0x29d4], /* TIMES WITH LEFT HALF BLACK */ + [0x29d5, 0x29d5], /* TIMES WITH RIGHT HALF BLACK */ + [0x29d6, 0x29d6], /* WHITE HOURGLASS */ + [0x29d7, 0x29d7], /* BLACK HOURGLASS */ + [0x29d8, 0x29d8], /* LEFT WIGGLY FENCE */ + [0x29d9, 0x29d9], /* RIGHT WIGGLY FENCE */ + [0x29da, 0x29da], /* LEFT DOUBLE WIGGLY FENCE */ + [0x29db, 0x29db], /* RIGHT DOUBLE WIGGLY FENCE */ + [0x29dc, 0x29dc], /* INCOMPLETE INFINITY */ + [0x29dd, 0x29dd], /* TIE OVER INFINITY */ + [0x29de, 0x29de], /* INFINITY NEGATED WITH VERTICAL BAR */ + [0x29df, 0x29df], /* DOUBLE-ENDED MULTIMAP */ + [0x29e0, 0x29e0], /* SQUARE WITH CONTOURED OUTLINE */ + [0x29e1, 0x29e1], /* INCREASES AS */ + [0x29e2, 0x29e2], /* SHUFFLE PRODUCT */ + [0x29e3, 0x29e3], /* EQUALS SIGN AND SLANTED PARALLEL */ + [0x29e4, 0x29e4], /* EQUALS SIGN AND SLANTED PARALLEL WITH TILDE ABOVE */ + [0x29e5, 0x29e5], /* IDENTICAL TO AND SLANTED PARALLEL */ + [0x29e6, 0x29e6], /* GLEICH STARK */ + [0x29e7, 0x29e7], /* THERMODYNAMIC */ + [0x29e8, 0x29e8], /* DOWN-POINTING TRIANGLE WITH LEFT HALF BLACK */ + [0x29e9, 0x29e9], /* DOWN-POINTING TRIANGLE WITH RIGHT HALF BLACK */ + [0x29ea, 0x29ea], /* BLACK DIAMOND WITH DOWN ARROW */ + [0x29eb, 0x29eb], /* BLACK LOZENGE */ + [0x29ec, 0x29ec], /* WHITE CIRCLE WITH DOWN ARROW */ + [0x29ed, 0x29ed], /* BLACK CIRCLE WITH DOWN ARROW */ + [0x29ee, 0x29ee], /* ERROR-BARRED WHITE SQUARE */ + [0x29ef, 0x29ef], /* ERROR-BARRED BLACK SQUARE */ + [0x29f0, 0x29f0], /* ERROR-BARRED WHITE DIAMOND */ + [0x29f1, 0x29f1], /* ERROR-BARRED BLACK DIAMOND */ + [0x29f2, 0x29f2], /* ERROR-BARRED WHITE CIRCLE */ + [0x29f3, 0x29f3], /* ERROR-BARRED BLACK CIRCLE */ + [0x29f4, 0x29f4], /* RULE-DELAYED */ + [0x29f5, 0x29f5], /* REVERSE SOLIDUS OPERATOR */ + [0x29f6, 0x29f6], /* SOLIDUS WITH OVERBAR */ + [0x29f7, 0x29f7], /* REVERSE SOLIDUS WITH HORIZONTAL STROKE */ + [0x29f8, 0x29f8], /* BIG SOLIDUS */ + [0x29f9, 0x29f9], /* BIG REVERSE SOLIDUS */ + [0x29fa, 0x29fa], /* DOUBLE PLUS */ + [0x29fb, 0x29fb], /* TRIPLE PLUS */ + [0x29fc, 0x29fc], /* LEFT-POINTING CURVED ANGLE BRACKET */ + [0x29fd, 0x29fd], /* RIGHT-POINTING CURVED ANGLE BRACKET */ + [0x29fe, 0x29fe], /* TINY */ + [0x29ff, 0x29ff], /* MINY */ + [0x2a00, 0x2a00], /* N-ARY CIRCLED DOT OPERATOR */ + [0x2a01, 0x2a01], /* N-ARY CIRCLED PLUS OPERATOR */ + [0x2a02, 0x2a02], /* N-ARY CIRCLED TIMES OPERATOR */ + [0x2a03, 0x2a03], /* N-ARY UNION OPERATOR WITH DOT */ + [0x2a04, 0x2a04], /* N-ARY UNION OPERATOR WITH PLUS */ + [0x2a05, 0x2a05], /* N-ARY SQUARE INTERSECTION OPERATOR */ + [0x2a06, 0x2a06], /* N-ARY SQUARE UNION OPERATOR */ + [0x2a07, 0x2a07], /* TWO LOGICAL AND OPERATOR */ + [0x2a08, 0x2a08], /* TWO LOGICAL OR OPERATOR */ + [0x2a09, 0x2a09], /* N-ARY TIMES OPERATOR */ + [0x2a0a, 0x2a0a], /* MODULO TWO SUM */ + [0x2a0b, 0x2a0b], /* SUMMATION WITH INTEGRAL */ + [0x2a0c, 0x2a0c], /* QUADRUPLE INTEGRAL OPERATOR */ + [0x2a0d, 0x2a0d], /* FINITE PART INTEGRAL */ + [0x2a0e, 0x2a0e], /* INTEGRAL WITH DOUBLE STROKE */ + [0x2a0f, 0x2a0f], /* INTEGRAL AVERAGE WITH SLASH */ + [0x2a10, 0x2a10], /* CIRCULATION FUNCTION */ + [0x2a11, 0x2a11], /* ANTICLOCKWISE INTEGRATION */ + [0x2a12, 0x2a12], /* LINE INTEGRATION WITH RECTANGULAR PATH AROUND POLE */ + [0x2a13, 0x2a13], /* LINE INTEGRATION WITH SEMICIRCULAR PATH AROUND POLE */ + [0x2a14, 0x2a14], /* LINE INTEGRATION NOT INCLUDING THE POLE */ + [0x2a15, 0x2a15], /* INTEGRAL AROUND A POINT OPERATOR */ + [0x2a16, 0x2a16], /* QUATERNION INTEGRAL OPERATOR */ + [0x2a17, 0x2a17], /* INTEGRAL WITH LEFTWARDS ARROW WITH HOOK */ + [0x2a18, 0x2a18], /* INTEGRAL WITH TIMES SIGN */ + [0x2a19, 0x2a19], /* INTEGRAL WITH INTERSECTION */ + [0x2a1a, 0x2a1a], /* INTEGRAL WITH UNION */ + [0x2a1b, 0x2a1b], /* INTEGRAL WITH OVERBAR */ + [0x2a1c, 0x2a1c], /* INTEGRAL WITH UNDERBAR */ + [0x2a1d, 0x2a1d], /* JOIN */ + [0x2a1e, 0x2a1e], /* LARGE LEFT TRIANGLE OPERATOR */ + [0x2a1f, 0x2a1f], /* Z NOTATION SCHEMA COMPOSITION */ + [0x2a20, 0x2a20], /* Z NOTATION SCHEMA PIPING */ + [0x2a21, 0x2a21], /* Z NOTATION SCHEMA PROJECTION */ + [0x2a22, 0x2a22], /* PLUS SIGN WITH SMALL CIRCLE ABOVE */ + [0x2a23, 0x2a23], /* PLUS SIGN WITH CIRCUMFLEX ACCENT ABOVE */ + [0x2a24, 0x2a24], /* PLUS SIGN WITH TILDE ABOVE */ + [0x2a25, 0x2a25], /* PLUS SIGN WITH DOT BELOW */ + [0x2a26, 0x2a26], /* PLUS SIGN WITH TILDE BELOW */ + [0x2a27, 0x2a27], /* PLUS SIGN WITH SUBSCRIPT TWO */ + [0x2a28, 0x2a28], /* PLUS SIGN WITH BLACK TRIANGLE */ + [0x2a29, 0x2a29], /* MINUS SIGN WITH COMMA ABOVE */ + [0x2a2a, 0x2a2a], /* MINUS SIGN WITH DOT BELOW */ + [0x2a2b, 0x2a2b], /* MINUS SIGN WITH FALLING DOTS */ + [0x2a2c, 0x2a2c], /* MINUS SIGN WITH RISING DOTS */ + [0x2a2d, 0x2a2d], /* PLUS SIGN IN LEFT HALF CIRCLE */ + [0x2a2e, 0x2a2e], /* PLUS SIGN IN RIGHT HALF CIRCLE */ + [0x2a2f, 0x2a2f], /* VECTOR OR CROSS PRODUCT */ + [0x2a30, 0x2a30], /* MULTIPLICATION SIGN WITH DOT ABOVE */ + [0x2a31, 0x2a31], /* MULTIPLICATION SIGN WITH UNDERBAR */ + [0x2a32, 0x2a32], /* SEMIDIRECT PRODUCT WITH BOTTOM CLOSED */ + [0x2a33, 0x2a33], /* SMASH PRODUCT */ + [0x2a34, 0x2a34], /* MULTIPLICATION SIGN IN LEFT HALF CIRCLE */ + [0x2a35, 0x2a35], /* MULTIPLICATION SIGN IN RIGHT HALF CIRCLE */ + [0x2a36, 0x2a36], /* CIRCLED MULTIPLICATION SIGN WITH CIRCUMFLEX ACCENT */ + [0x2a37, 0x2a37], /* MULTIPLICATION SIGN IN DOUBLE CIRCLE */ + [0x2a38, 0x2a38], /* CIRCLED DIVISION SIGN */ + [0x2a39, 0x2a39], /* PLUS SIGN IN TRIANGLE */ + [0x2a3a, 0x2a3a], /* MINUS SIGN IN TRIANGLE */ + [0x2a3b, 0x2a3b], /* MULTIPLICATION SIGN IN TRIANGLE */ + [0x2a3c, 0x2a3c], /* INTERIOR PRODUCT */ + [0x2a3d, 0x2a3d], /* RIGHTHAND INTERIOR PRODUCT */ + [0x2a3e, 0x2a3e], /* Z NOTATION RELATIONAL COMPOSITION */ + [0x2a3f, 0x2a3f], /* AMALGAMATION OR COPRODUCT */ + [0x2a40, 0x2a40], /* INTERSECTION WITH DOT */ + [0x2a41, 0x2a41], /* UNION WITH MINUS SIGN */ + [0x2a42, 0x2a42], /* UNION WITH OVERBAR */ + [0x2a43, 0x2a43], /* INTERSECTION WITH OVERBAR */ + [0x2a44, 0x2a44], /* INTERSECTION WITH LOGICAL AND */ + [0x2a45, 0x2a45], /* UNION WITH LOGICAL OR */ + [0x2a46, 0x2a46], /* UNION ABOVE INTERSECTION */ + [0x2a47, 0x2a47], /* INTERSECTION ABOVE UNION */ + [0x2a48, 0x2a48], /* UNION ABOVE BAR ABOVE INTERSECTION */ + [0x2a49, 0x2a49], /* INTERSECTION ABOVE BAR ABOVE UNION */ + [0x2a4a, 0x2a4a], /* UNION BESIDE AND JOINED WITH UNION */ + [0x2a4b, 0x2a4b], /* INTERSECTION BESIDE AND JOINED WITH INTERSECTION */ + [0x2a4c, 0x2a4c], /* CLOSED UNION WITH SERIFS */ + [0x2a4d, 0x2a4d], /* CLOSED INTERSECTION WITH SERIFS */ + [0x2a4e, 0x2a4e], /* DOUBLE SQUARE INTERSECTION */ + [0x2a4f, 0x2a4f], /* DOUBLE SQUARE UNION */ + [0x2a50, 0x2a50], /* CLOSED UNION WITH SERIFS AND SMASH PRODUCT */ + [0x2a51, 0x2a51], /* LOGICAL AND WITH DOT ABOVE */ + [0x2a52, 0x2a52], /* LOGICAL OR WITH DOT ABOVE */ + [0x2a53, 0x2a53], /* DOUBLE LOGICAL AND */ + [0x2a54, 0x2a54], /* DOUBLE LOGICAL OR */ + [0x2a55, 0x2a55], /* TWO INTERSECTING LOGICAL AND */ + [0x2a56, 0x2a56], /* TWO INTERSECTING LOGICAL OR */ + [0x2a57, 0x2a57], /* SLOPING LARGE OR */ + [0x2a58, 0x2a58], /* SLOPING LARGE AND */ + [0x2a59, 0x2a59], /* LOGICAL OR OVERLAPPING LOGICAL AND */ + [0x2a5a, 0x2a5a], /* LOGICAL AND WITH MIDDLE STEM */ + [0x2a5b, 0x2a5b], /* LOGICAL OR WITH MIDDLE STEM */ + [0x2a5c, 0x2a5c], /* LOGICAL AND WITH HORIZONTAL DASH */ + [0x2a5d, 0x2a5d], /* LOGICAL OR WITH HORIZONTAL DASH */ + [0x2a5e, 0x2a5e], /* LOGICAL AND WITH DOUBLE OVERBAR */ + [0x2a5f, 0x2a5f], /* LOGICAL AND WITH UNDERBAR */ + [0x2a60, 0x2a60], /* LOGICAL AND WITH DOUBLE UNDERBAR */ + [0x2a61, 0x2a61], /* SMALL VEE WITH UNDERBAR */ + [0x2a62, 0x2a62], /* LOGICAL OR WITH DOUBLE OVERBAR */ + [0x2a63, 0x2a63], /* LOGICAL OR WITH DOUBLE UNDERBAR */ + [0x2a64, 0x2a64], /* Z NOTATION DOMAIN ANTIRESTRICTION */ + [0x2a65, 0x2a65], /* Z NOTATION RANGE ANTIRESTRICTION */ + [0x2a66, 0x2a66], /* EQUALS SIGN WITH DOT BELOW */ + [0x2a67, 0x2a67], /* IDENTICAL WITH DOT ABOVE */ + [0x2a68, 0x2a68], /* TRIPLE HORIZONTAL BAR WITH DOUBLE VERTICAL STROKE */ + [0x2a69, 0x2a69], /* TRIPLE HORIZONTAL BAR WITH TRIPLE VERTICAL STROKE */ + [0x2a6a, 0x2a6a], /* TILDE OPERATOR WITH DOT ABOVE */ + [0x2a6b, 0x2a6b], /* TILDE OPERATOR WITH RISING DOTS */ + [0x2a6c, 0x2a6c], /* SIMILAR MINUS SIMILAR */ + [0x2a6d, 0x2a6d], /* CONGRUENT WITH DOT ABOVE */ + [0x2a6e, 0x2a6e], /* EQUALS WITH ASTERISK */ + [0x2a6f, 0x2a6f], /* ALMOST EQUAL TO WITH CIRCUMFLEX ACCENT */ + [0x2a70, 0x2a70], /* APPROXIMATELY EQUAL OR EQUAL TO */ + [0x2a71, 0x2a71], /* EQUALS SIGN ABOVE PLUS SIGN */ + [0x2a72, 0x2a72], /* PLUS SIGN ABOVE EQUALS SIGN */ + [0x2a73, 0x2a73], /* EQUALS SIGN ABOVE TILDE OPERATOR */ + [0x2a74, 0x2a74], /* DOUBLE COLON EQUAL */ + [0x2a75, 0x2a75], /* TWO CONSECUTIVE EQUALS SIGNS */ + [0x2a76, 0x2a76], /* THREE CONSECUTIVE EQUALS SIGNS */ + [0x2a77, 0x2a77], /* EQUALS SIGN WITH TWO DOTS ABOVE AND TWO DOTS BELOW */ + [0x2a78, 0x2a78], /* EQUIVALENT WITH FOUR DOTS ABOVE */ + [0x2a79, 0x2a79], /* LESS-THAN WITH CIRCLE INSIDE */ + [0x2a7a, 0x2a7a], /* GREATER-THAN WITH CIRCLE INSIDE */ + [0x2a7b, 0x2a7b], /* LESS-THAN WITH QUESTION MARK ABOVE */ + [0x2a7c, 0x2a7c], /* GREATER-THAN WITH QUESTION MARK ABOVE */ + [0x2a7d, 0x2a7d], /* LESS-THAN OR SLANTED EQUAL TO */ + [0x2a7e, 0x2a7e], /* GREATER-THAN OR SLANTED EQUAL TO */ + [0x2a7f, 0x2a7f], /* LESS-THAN OR SLANTED EQUAL TO WITH DOT INSIDE */ + [0x2a80, 0x2a80], /* GREATER-THAN OR SLANTED EQUAL TO WITH DOT INSIDE */ + [0x2a81, 0x2a81], /* LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE */ + [0x2a82, 0x2a82], /* GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE */ + [0x2a83, 0x2a83], /* LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE RIGHT */ + [0x2a84, 0x2a84], /* GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE LEFT */ + [0x2a85, 0x2a85], /* LESS-THAN OR APPROXIMATE */ + [0x2a86, 0x2a86], /* GREATER-THAN OR APPROXIMATE */ + [0x2a87, 0x2a87], /* LESS-THAN AND SINGLE-LINE NOT EQUAL TO */ + [0x2a88, 0x2a88], /* GREATER-THAN AND SINGLE-LINE NOT EQUAL TO */ + [0x2a89, 0x2a89], /* LESS-THAN AND NOT APPROXIMATE */ + [0x2a8a, 0x2a8a], /* GREATER-THAN AND NOT APPROXIMATE */ + [0x2a8b, 0x2a8b], /* LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN */ + [0x2a8c, 0x2a8c], /* GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN */ + [0x2a8d, 0x2a8d], /* LESS-THAN ABOVE SIMILAR OR EQUAL */ + [0x2a8e, 0x2a8e], /* GREATER-THAN ABOVE SIMILAR OR EQUAL */ + [0x2a8f, 0x2a8f], /* LESS-THAN ABOVE SIMILAR ABOVE GREATER-THAN */ + [0x2a90, 0x2a90], /* GREATER-THAN ABOVE SIMILAR ABOVE LESS-THAN */ + [0x2a91, 0x2a91], /* LESS-THAN ABOVE GREATER-THAN ABOVE DOUBLE-LINE EQUAL */ + [0x2a92, 0x2a92], /* GREATER-THAN ABOVE LESS-THAN ABOVE DOUBLE-LINE EQUAL */ + [0x2a93, 0x2a93], /* LESS-THAN ABOVE SLANTED EQUAL ABOVE GREATER-THAN ABOVE SLANTED EQUAL */ + [0x2a94, 0x2a94], /* GREATER-THAN ABOVE SLANTED EQUAL ABOVE LESS-THAN ABOVE SLANTED EQUAL */ + [0x2a95, 0x2a95], /* SLANTED EQUAL TO OR LESS-THAN */ + [0x2a96, 0x2a96], /* SLANTED EQUAL TO OR GREATER-THAN */ + [0x2a97, 0x2a97], /* SLANTED EQUAL TO OR LESS-THAN WITH DOT INSIDE */ + [0x2a98, 0x2a98], /* SLANTED EQUAL TO OR GREATER-THAN WITH DOT INSIDE */ + [0x2a99, 0x2a99], /* DOUBLE-LINE EQUAL TO OR LESS-THAN */ + [0x2a9a, 0x2a9a], /* DOUBLE-LINE EQUAL TO OR GREATER-THAN */ + [0x2a9b, 0x2a9b], /* DOUBLE-LINE SLANTED EQUAL TO OR LESS-THAN */ + [0x2a9c, 0x2a9c], /* DOUBLE-LINE SLANTED EQUAL TO OR GREATER-THAN */ + [0x2a9d, 0x2a9d], /* SIMILAR OR LESS-THAN */ + [0x2a9e, 0x2a9e], /* SIMILAR OR GREATER-THAN */ + [0x2a9f, 0x2a9f], /* SIMILAR ABOVE LESS-THAN ABOVE EQUALS SIGN */ + [0x2aa0, 0x2aa0], /* SIMILAR ABOVE GREATER-THAN ABOVE EQUALS SIGN */ + [0x2aa1, 0x2aa1], /* DOUBLE NESTED LESS-THAN */ + [0x2aa2, 0x2aa2], /* DOUBLE NESTED GREATER-THAN */ + [0x2aa3, 0x2aa3], /* DOUBLE NESTED LESS-THAN WITH UNDERBAR */ + [0x2aa4, 0x2aa4], /* GREATER-THAN OVERLAPPING LESS-THAN */ + [0x2aa5, 0x2aa5], /* GREATER-THAN BESIDE LESS-THAN */ + [0x2aa6, 0x2aa6], /* LESS-THAN CLOSED BY CURVE */ + [0x2aa7, 0x2aa7], /* GREATER-THAN CLOSED BY CURVE */ + [0x2aa8, 0x2aa8], /* LESS-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL */ + [0x2aa9, 0x2aa9], /* GREATER-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL */ + [0x2aaa, 0x2aaa], /* SMALLER THAN */ + [0x2aab, 0x2aab], /* LARGER THAN */ + [0x2aac, 0x2aac], /* SMALLER THAN OR EQUAL TO */ + [0x2aad, 0x2aad], /* LARGER THAN OR EQUAL TO */ + [0x2aae, 0x2aae], /* EQUALS SIGN WITH BUMPY ABOVE */ + [0x2aaf, 0x2aaf], /* PRECEDES ABOVE SINGLE-LINE EQUALS SIGN */ + [0x2ab0, 0x2ab0], /* SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN */ + [0x2ab1, 0x2ab1], /* PRECEDES ABOVE SINGLE-LINE NOT EQUAL TO */ + [0x2ab2, 0x2ab2], /* SUCCEEDS ABOVE SINGLE-LINE NOT EQUAL TO */ + [0x2ab3, 0x2ab3], /* PRECEDES ABOVE EQUALS SIGN */ + [0x2ab4, 0x2ab4], /* SUCCEEDS ABOVE EQUALS SIGN */ + [0x2ab5, 0x2ab5], /* PRECEDES ABOVE NOT EQUAL TO */ + [0x2ab6, 0x2ab6], /* SUCCEEDS ABOVE NOT EQUAL TO */ + [0x2ab7, 0x2ab7], /* PRECEDES ABOVE ALMOST EQUAL TO */ + [0x2ab8, 0x2ab8], /* SUCCEEDS ABOVE ALMOST EQUAL TO */ + [0x2ab9, 0x2ab9], /* PRECEDES ABOVE NOT ALMOST EQUAL TO */ + [0x2aba, 0x2aba], /* SUCCEEDS ABOVE NOT ALMOST EQUAL TO */ + [0x2abb, 0x2abb], /* DOUBLE PRECEDES */ + [0x2abc, 0x2abc], /* DOUBLE SUCCEEDS */ + [0x2abd, 0x2abd], /* SUBSET WITH DOT */ + [0x2abe, 0x2abe], /* SUPERSET WITH DOT */ + [0x2abf, 0x2abf], /* SUBSET WITH PLUS SIGN BELOW */ + [0x2ac0, 0x2ac0], /* SUPERSET WITH PLUS SIGN BELOW */ + [0x2ac1, 0x2ac1], /* SUBSET WITH MULTIPLICATION SIGN BELOW */ + [0x2ac2, 0x2ac2], /* SUPERSET WITH MULTIPLICATION SIGN BELOW */ + [0x2ac3, 0x2ac3], /* SUBSET OF OR EQUAL TO WITH DOT ABOVE */ + [0x2ac4, 0x2ac4], /* SUPERSET OF OR EQUAL TO WITH DOT ABOVE */ + [0x2ac5, 0x2ac5], /* SUBSET OF ABOVE EQUALS SIGN */ + [0x2ac6, 0x2ac6], /* SUPERSET OF ABOVE EQUALS SIGN */ + [0x2ac7, 0x2ac7], /* SUBSET OF ABOVE TILDE OPERATOR */ + [0x2ac8, 0x2ac8], /* SUPERSET OF ABOVE TILDE OPERATOR */ + [0x2ac9, 0x2ac9], /* SUBSET OF ABOVE ALMOST EQUAL TO */ + [0x2aca, 0x2aca], /* SUPERSET OF ABOVE ALMOST EQUAL TO */ + [0x2acb, 0x2acb], /* SUBSET OF ABOVE NOT EQUAL TO */ + [0x2acc, 0x2acc], /* SUPERSET OF ABOVE NOT EQUAL TO */ + [0x2acd, 0x2acd], /* SQUARE LEFT OPEN BOX OPERATOR */ + [0x2ace, 0x2ace], /* SQUARE RIGHT OPEN BOX OPERATOR */ + [0x2acf, 0x2acf], /* CLOSED SUBSET */ + [0x2ad0, 0x2ad0], /* CLOSED SUPERSET */ + [0x2ad1, 0x2ad1], /* CLOSED SUBSET OR EQUAL TO */ + [0x2ad2, 0x2ad2], /* CLOSED SUPERSET OR EQUAL TO */ + [0x2ad3, 0x2ad3], /* SUBSET ABOVE SUPERSET */ + [0x2ad4, 0x2ad4], /* SUPERSET ABOVE SUBSET */ + [0x2ad5, 0x2ad5], /* SUBSET ABOVE SUBSET */ + [0x2ad6, 0x2ad6], /* SUPERSET ABOVE SUPERSET */ + [0x2ad7, 0x2ad7], /* SUPERSET BESIDE SUBSET */ + [0x2ad8, 0x2ad8], /* SUPERSET BESIDE AND JOINED BY DASH WITH SUBSET */ + [0x2ad9, 0x2ad9], /* ELEMENT OF OPENING DOWNWARDS */ + [0x2ada, 0x2ada], /* PITCHFORK WITH TEE TOP */ + [0x2adb, 0x2adb], /* TRANSVERSAL INTERSECTION */ + [0x2adc, 0x2adc], /* FORKING */ + [0x2add, 0x2add], /* NONFORKING */ + [0x2ade, 0x2ade], /* SHORT LEFT TACK */ + [0x2adf, 0x2adf], /* SHORT DOWN TACK */ + [0x2ae0, 0x2ae0], /* SHORT UP TACK */ + [0x2ae1, 0x2ae1], /* PERPENDICULAR WITH S */ + [0x2ae2, 0x2ae2], /* VERTICAL BAR TRIPLE RIGHT TURNSTILE */ + [0x2ae3, 0x2ae3], /* DOUBLE VERTICAL BAR LEFT TURNSTILE */ + [0x2ae4, 0x2ae4], /* VERTICAL BAR DOUBLE LEFT TURNSTILE */ + [0x2ae5, 0x2ae5], /* DOUBLE VERTICAL BAR DOUBLE LEFT TURNSTILE */ + [0x2ae6, 0x2ae6], /* LONG DASH FROM LEFT MEMBER OF DOUBLE VERTICAL */ + [0x2ae7, 0x2ae7], /* SHORT DOWN TACK WITH OVERBAR */ + [0x2ae8, 0x2ae8], /* SHORT UP TACK WITH UNDERBAR */ + [0x2ae9, 0x2ae9], /* SHORT UP TACK ABOVE SHORT DOWN TACK */ + [0x2aea, 0x2aea], /* DOUBLE DOWN TACK */ + [0x2aeb, 0x2aeb], /* DOUBLE UP TACK */ + [0x2aec, 0x2aec], /* DOUBLE STROKE NOT SIGN */ + [0x2aed, 0x2aed], /* REVERSED DOUBLE STROKE NOT SIGN */ + [0x2aee, 0x2aee], /* DOES NOT DIVIDE WITH REVERSED NEGATION SLASH */ + [0x2aef, 0x2aef], /* VERTICAL LINE WITH CIRCLE ABOVE */ + [0x2af0, 0x2af0], /* VERTICAL LINE WITH CIRCLE BELOW */ + [0x2af1, 0x2af1], /* DOWN TACK WITH CIRCLE BELOW */ + [0x2af2, 0x2af2], /* PARALLEL WITH HORIZONTAL STROKE */ + [0x2af3, 0x2af3], /* PARALLEL WITH TILDE OPERATOR */ + [0x2af4, 0x2af4], /* TRIPLE VERTICAL BAR BINARY RELATION */ + [0x2af5, 0x2af5], /* TRIPLE VERTICAL BAR WITH HORIZONTAL STROKE */ + [0x2af6, 0x2af6], /* TRIPLE COLON OPERATOR */ + [0x2af7, 0x2af7], /* TRIPLE NESTED LESS-THAN */ + [0x2af8, 0x2af8], /* TRIPLE NESTED GREATER-THAN */ + [0x2af9, 0x2af9], /* DOUBLE-LINE SLANTED LESS-THAN OR EQUAL TO */ + [0x2afa, 0x2afa], /* DOUBLE-LINE SLANTED GREATER-THAN OR EQUAL TO */ + [0x2afb, 0x2afb], /* TRIPLE SOLIDUS BINARY RELATION */ + [0x2afc, 0x2afc], /* LARGE TRIPLE VERTICAL BAR OPERATOR */ + [0x2afd, 0x2afd], /* DOUBLE SOLIDUS OPERATOR */ + [0x2afe, 0x2afe], /* WHITE VERTICAL BAR */ + [0x2aff, 0x2aff], /* N-ARY WHITE VERTICAL BAR */ + [0x2b00, 0x2b00], /* NORTH EAST WHITE ARROW */ + [0x2b01, 0x2b01], /* NORTH WEST WHITE ARROW */ + [0x2b02, 0x2b02], /* SOUTH EAST WHITE ARROW */ + [0x2b03, 0x2b03], /* SOUTH WEST WHITE ARROW */ + [0x2b04, 0x2b04], /* LEFT RIGHT WHITE ARROW */ + [0x2b05, 0x2b05], /* LEFTWARDS BLACK ARROW */ + [0x2b06, 0x2b06], /* UPWARDS BLACK ARROW */ + [0x2b07, 0x2b07], /* DOWNWARDS BLACK ARROW */ + [0x2b08, 0x2b08], /* NORTH EAST BLACK ARROW */ + [0x2b09, 0x2b09], /* NORTH WEST BLACK ARROW */ + [0x2b0a, 0x2b0a], /* SOUTH EAST BLACK ARROW */ + [0x2b0b, 0x2b0b], /* SOUTH WEST BLACK ARROW */ + [0x2b0c, 0x2b0c], /* LEFT RIGHT BLACK ARROW */ + [0x2b0d, 0x2b0d], /* UP DOWN BLACK ARROW */ + [0x2b0e, 0x2b0e], /* RIGHTWARDS ARROW WITH TIP DOWNWARDS */ + [0x2b0f, 0x2b0f], /* RIGHTWARDS ARROW WITH TIP UPWARDS */ + [0x2b10, 0x2b10], /* LEFTWARDS ARROW WITH TIP DOWNWARDS */ + [0x2b11, 0x2b11], /* LEFTWARDS ARROW WITH TIP UPWARDS */ + [0x2b12, 0x2b12], /* SQUARE WITH TOP HALF BLACK */ + [0x2b13, 0x2b13], /* SQUARE WITH BOTTOM HALF BLACK */ + [0x2b14, 0x2b14], /* SQUARE WITH UPPER RIGHT DIAGONAL HALF BLACK */ + [0x2b15, 0x2b15], /* SQUARE WITH LOWER LEFT DIAGONAL HALF BLACK */ + [0x2b16, 0x2b16], /* DIAMOND WITH LEFT HALF BLACK */ + [0x2b17, 0x2b17], /* DIAMOND WITH RIGHT HALF BLACK */ + [0x2b18, 0x2b18], /* DIAMOND WITH TOP HALF BLACK */ + [0x2b19, 0x2b19], /* DIAMOND WITH BOTTOM HALF BLACK */ + [0x2b1a, 0x2b1a], /* DOTTED SQUARE */ + [0x2b1b, 0x2b1b], /* BLACK LARGE SQUARE */ + [0x2b1c, 0x2b1c], /* WHITE LARGE SQUARE */ + [0x2b1d, 0x2b1d], /* BLACK VERY SMALL SQUARE */ + [0x2b1e, 0x2b1e], /* WHITE VERY SMALL SQUARE */ + [0x2b1f, 0x2b1f], /* BLACK PENTAGON */ + [0x2b20, 0x2b20], /* WHITE PENTAGON */ + [0x2b21, 0x2b21], /* WHITE HEXAGON */ + [0x2b22, 0x2b22], /* BLACK HEXAGON */ + [0x2b23, 0x2b23], /* HORIZONTAL BLACK HEXAGON */ + [0x2b24, 0x2b24], /* BLACK LARGE CIRCLE */ + [0x2b25, 0x2b25], /* BLACK MEDIUM DIAMOND */ + [0x2b26, 0x2b26], /* WHITE MEDIUM DIAMOND */ + [0x2b27, 0x2b27], /* BLACK MEDIUM LOZENGE */ + [0x2b28, 0x2b28], /* WHITE MEDIUM LOZENGE */ + [0x2b29, 0x2b29], /* BLACK SMALL DIAMOND */ + [0x2b2a, 0x2b2a], /* BLACK SMALL LOZENGE */ + [0x2b2b, 0x2b2b], /* WHITE SMALL LOZENGE */ + [0x2b2c, 0x2b2c], /* BLACK HORIZONTAL ELLIPSE */ + [0x2b2d, 0x2b2d], /* WHITE HORIZONTAL ELLIPSE */ + [0x2b2e, 0x2b2e], /* BLACK VERTICAL ELLIPSE */ + [0x2b2f, 0x2b2f], /* WHITE VERTICAL ELLIPSE */ + [0x2b30, 0x2b30], /* LEFT ARROW WITH SMALL CIRCLE */ + [0x2b31, 0x2b31], /* THREE LEFTWARDS ARROWS */ + [0x2b32, 0x2b32], /* LEFT ARROW WITH CIRCLED PLUS */ + [0x2b33, 0x2b33], /* LONG LEFTWARDS SQUIGGLE ARROW */ + [0x2b34, 0x2b34], /* LEFTWARDS TWO-HEADED ARROW WITH VERTICAL STROKE */ + [0x2b35, 0x2b35], /* LEFTWARDS TWO-HEADED ARROW WITH DOUBLE VERTICAL STROKE */ + [0x2b36, 0x2b36], /* LEFTWARDS TWO-HEADED ARROW FROM BAR */ + [0x2b37, 0x2b37], /* LEFTWARDS TWO-HEADED TRIPLE DASH ARROW */ + [0x2b38, 0x2b38], /* LEFTWARDS ARROW WITH DOTTED STEM */ + [0x2b39, 0x2b39], /* LEFTWARDS ARROW WITH TAIL WITH VERTICAL STROKE */ + [0x2b3a, 0x2b3a], /* LEFTWARDS ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE */ + [0x2b3b, 0x2b3b], /* LEFTWARDS TWO-HEADED ARROW WITH TAIL */ + [0x2b3c, 0x2b3c], /* LEFTWARDS TWO-HEADED ARROW WITH TAIL WITH VERTICAL STROKE */ + [0x2b3d, 0x2b3d], /* LEFTWARDS TWO-HEADED ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE */ + [0x2b3e, 0x2b3e], /* LEFTWARDS ARROW THROUGH X */ + [0x2b3f, 0x2b3f], /* WAVE ARROW POINTING DIRECTLY LEFT */ + [0x2b40, 0x2b40], /* EQUALS SIGN ABOVE LEFTWARDS ARROW */ + [0x2b41, 0x2b41], /* REVERSE TILDE OPERATOR ABOVE LEFTWARDS ARROW */ + [0x2b42, 0x2b42], /* LEFTWARDS ARROW ABOVE REVERSE ALMOST EQUAL TO */ + [0x2b43, 0x2b43], /* RIGHTWARDS ARROW THROUGH GREATER-THAN */ + [0x2b44, 0x2b44], /* RIGHTWARDS ARROW THROUGH SUPERSET */ + [0x2b45, 0x2b45], /* LEFTWARDS QUADRUPLE ARROW */ + [0x2b46, 0x2b46], /* RIGHTWARDS QUADRUPLE ARROW */ + [0x2b47, 0x2b47], /* REVERSE TILDE OPERATOR ABOVE RIGHTWARDS ARROW */ + [0x2b48, 0x2b48], /* RIGHTWARDS ARROW ABOVE REVERSE ALMOST EQUAL TO */ + [0x2b49, 0x2b49], /* TILDE OPERATOR ABOVE LEFTWARDS ARROW */ + [0x2b4a, 0x2b4a], /* LEFTWARDS ARROW ABOVE ALMOST EQUAL TO */ + [0x2b4b, 0x2b4b], /* LEFTWARDS ARROW ABOVE REVERSE TILDE OPERATOR */ + [0x2b4c, 0x2b4c], /* RIGHTWARDS ARROW ABOVE REVERSE TILDE OPERATOR */ + [0x2b4d, 0x2b4d], /* DOWNWARDS TRIANGLE-HEADED ZIGZAG ARROW */ + [0x2b4e, 0x2b4e], /* SHORT SLANTED NORTH ARROW */ + [0x2b4f, 0x2b4f], /* SHORT BACKSLANTED SOUTH ARROW */ + [0x2b50, 0x2b50], /* WHITE MEDIUM STAR */ + [0x2b51, 0x2b51], /* BLACK SMALL STAR */ + [0x2b52, 0x2b52], /* WHITE SMALL STAR */ + [0x2b53, 0x2b53], /* BLACK RIGHT-POINTING PENTAGON */ + [0x2b54, 0x2b54], /* WHITE RIGHT-POINTING PENTAGON */ + [0x2b55, 0x2b55], /* HEAVY LARGE CIRCLE */ + [0x2b56, 0x2b56], /* HEAVY OVAL WITH OVAL INSIDE */ + [0x2b57, 0x2b57], /* HEAVY CIRCLE WITH CIRCLE INSIDE */ + [0x2b58, 0x2b58], /* HEAVY CIRCLE */ + [0x2b59, 0x2b59], /* HEAVY CIRCLED SALTIRE */ + [0x2b5a, 0x2b5a], /* SLANTED NORTH ARROW WITH HOOKED HEAD */ + [0x2b5b, 0x2b5b], /* BACKSLANTED SOUTH ARROW WITH HOOKED TAIL */ + [0x2b5c, 0x2b5c], /* SLANTED NORTH ARROW WITH HORIZONTAL TAIL */ + [0x2b5d, 0x2b5d], /* BACKSLANTED SOUTH ARROW WITH HORIZONTAL TAIL */ + [0x2b5e, 0x2b5e], /* BENT ARROW POINTING DOWNWARDS THEN NORTH EAST */ + [0x2b5f, 0x2b5f], /* SHORT BENT ARROW POINTING DOWNWARDS THEN NORTH EAST */ + [0x2b60, 0x2b60], /* LEFTWARDS TRIANGLE-HEADED ARROW */ + [0x2b61, 0x2b61], /* UPWARDS TRIANGLE-HEADED ARROW */ + [0x2b62, 0x2b62], /* RIGHTWARDS TRIANGLE-HEADED ARROW */ + [0x2b63, 0x2b63], /* DOWNWARDS TRIANGLE-HEADED ARROW */ + [0x2b64, 0x2b64], /* LEFT RIGHT TRIANGLE-HEADED ARROW */ + [0x2b65, 0x2b65], /* UP DOWN TRIANGLE-HEADED ARROW */ + [0x2b66, 0x2b66], /* NORTH WEST TRIANGLE-HEADED ARROW */ + [0x2b67, 0x2b67], /* NORTH EAST TRIANGLE-HEADED ARROW */ + [0x2b68, 0x2b68], /* SOUTH EAST TRIANGLE-HEADED ARROW */ + [0x2b69, 0x2b69], /* SOUTH WEST TRIANGLE-HEADED ARROW */ + [0x2b6a, 0x2b6a], /* LEFTWARDS TRIANGLE-HEADED DASHED ARROW */ + [0x2b6b, 0x2b6b], /* UPWARDS TRIANGLE-HEADED DASHED ARROW */ + [0x2b6c, 0x2b6c], /* RIGHTWARDS TRIANGLE-HEADED DASHED ARROW */ + [0x2b6d, 0x2b6d], /* DOWNWARDS TRIANGLE-HEADED DASHED ARROW */ + [0x2b6e, 0x2b6e], /* CLOCKWISE TRIANGLE-HEADED OPEN CIRCLE ARROW */ + [0x2b6f, 0x2b6f], /* ANTICLOCKWISE TRIANGLE-HEADED OPEN CIRCLE ARROW */ + [0x2b70, 0x2b70], /* LEFTWARDS TRIANGLE-HEADED ARROW TO BAR */ + [0x2b71, 0x2b71], /* UPWARDS TRIANGLE-HEADED ARROW TO BAR */ + [0x2b72, 0x2b72], /* RIGHTWARDS TRIANGLE-HEADED ARROW TO BAR */ + [0x2b73, 0x2b73], /* DOWNWARDS TRIANGLE-HEADED ARROW TO BAR */ + [0x2b74, 0x2b74], + [0x2b75, 0x2b75], + [0x2b76, 0x2b76], /* NORTH WEST TRIANGLE-HEADED ARROW TO BAR */ + [0x2b77, 0x2b77], /* NORTH EAST TRIANGLE-HEADED ARROW TO BAR */ + [0x2b78, 0x2b78], /* SOUTH EAST TRIANGLE-HEADED ARROW TO BAR */ + [0x2b79, 0x2b79], /* SOUTH WEST TRIANGLE-HEADED ARROW TO BAR */ + [0x2b7a, 0x2b7a], /* LEFTWARDS TRIANGLE-HEADED ARROW WITH DOUBLE HORIZONTAL STROKE */ + [0x2b7b, 0x2b7b], /* UPWARDS TRIANGLE-HEADED ARROW WITH DOUBLE HORIZONTAL STROKE */ + [0x2b7c, 0x2b7c], /* RIGHTWARDS TRIANGLE-HEADED ARROW WITH DOUBLE HORIZONTAL STROKE */ + [0x2b7d, 0x2b7d], /* DOWNWARDS TRIANGLE-HEADED ARROW WITH DOUBLE HORIZONTAL STROKE */ + [0x2b7e, 0x2b7e], /* HORIZONTAL TAB KEY */ + [0x2b7f, 0x2b7f], /* VERTICAL TAB KEY */ + [0x2b80, 0x2b80], /* LEFTWARDS TRIANGLE-HEADED ARROW OVER RIGHTWARDS TRIANGLE-HEADED ARROW */ + [0x2b81, 0x2b81], /* UPWARDS TRIANGLE-HEADED ARROW LEFTWARDS OF DOWNWARDS TRIANGLE-HEADED ARROW */ + [0x2b82, 0x2b82], /* RIGHTWARDS TRIANGLE-HEADED ARROW OVER LEFTWARDS TRIANGLE-HEADED ARROW */ + [0x2b83, 0x2b83], /* DOWNWARDS TRIANGLE-HEADED ARROW LEFTWARDS OF UPWARDS TRIANGLE-HEADED ARROW */ + [0x2b84, 0x2b84], /* LEFTWARDS TRIANGLE-HEADED PAIRED ARROWS */ + [0x2b85, 0x2b85], /* UPWARDS TRIANGLE-HEADED PAIRED ARROWS */ + [0x2b86, 0x2b86], /* RIGHTWARDS TRIANGLE-HEADED PAIRED ARROWS */ + [0x2b87, 0x2b87], /* DOWNWARDS TRIANGLE-HEADED PAIRED ARROWS */ + [0x2b88, 0x2b88], /* LEFTWARDS BLACK CIRCLED WHITE ARROW */ + [0x2b89, 0x2b89], /* UPWARDS BLACK CIRCLED WHITE ARROW */ + [0x2b8a, 0x2b8a], /* RIGHTWARDS BLACK CIRCLED WHITE ARROW */ + [0x2b8b, 0x2b8b], /* DOWNWARDS BLACK CIRCLED WHITE ARROW */ + [0x2b8c, 0x2b8c], /* ANTICLOCKWISE TRIANGLE-HEADED RIGHT U-SHAPED ARROW */ + [0x2b8d, 0x2b8d], /* ANTICLOCKWISE TRIANGLE-HEADED BOTTOM U-SHAPED ARROW */ + [0x2b8e, 0x2b8e], /* ANTICLOCKWISE TRIANGLE-HEADED LEFT U-SHAPED ARROW */ + [0x2b8f, 0x2b8f], /* ANTICLOCKWISE TRIANGLE-HEADED TOP U-SHAPED ARROW */ + [0x2b90, 0x2b90], /* RETURN LEFT */ + [0x2b91, 0x2b91], /* RETURN RIGHT */ + [0x2b92, 0x2b92], /* NEWLINE LEFT */ + [0x2b93, 0x2b93], /* NEWLINE RIGHT */ + [0x2b94, 0x2b94], /* FOUR CORNER ARROWS CIRCLING ANTICLOCKWISE */ + [0x2b95, 0x2b95], /* RIGHTWARDS BLACK ARROW */ + [0x2b96, 0x2b96], + [0x2b97, 0x2b97], + [0x2b98, 0x2b98], /* THREE-D TOP-LIGHTED LEFTWARDS EQUILATERAL ARROWHEAD */ + [0x2b99, 0x2b99], /* THREE-D RIGHT-LIGHTED UPWARDS EQUILATERAL ARROWHEAD */ + [0x2b9a, 0x2b9a], /* THREE-D TOP-LIGHTED RIGHTWARDS EQUILATERAL ARROWHEAD */ + [0x2b9b, 0x2b9b], /* THREE-D LEFT-LIGHTED DOWNWARDS EQUILATERAL ARROWHEAD */ + [0x2b9c, 0x2b9c], /* BLACK LEFTWARDS EQUILATERAL ARROWHEAD */ + [0x2b9d, 0x2b9d], /* BLACK UPWARDS EQUILATERAL ARROWHEAD */ + [0x2b9e, 0x2b9e], /* BLACK RIGHTWARDS EQUILATERAL ARROWHEAD */ + [0x2b9f, 0x2b9f], /* BLACK DOWNWARDS EQUILATERAL ARROWHEAD */ + [0x2ba0, 0x2ba0], /* DOWNWARDS TRIANGLE-HEADED ARROW WITH LONG TIP LEFTWARDS */ + [0x2ba1, 0x2ba1], /* DOWNWARDS TRIANGLE-HEADED ARROW WITH LONG TIP RIGHTWARDS */ + [0x2ba2, 0x2ba2], /* UPWARDS TRIANGLE-HEADED ARROW WITH LONG TIP LEFTWARDS */ + [0x2ba3, 0x2ba3], /* UPWARDS TRIANGLE-HEADED ARROW WITH LONG TIP RIGHTWARDS */ + [0x2ba4, 0x2ba4], /* LEFTWARDS TRIANGLE-HEADED ARROW WITH LONG TIP UPWARDS */ + [0x2ba5, 0x2ba5], /* RIGHTWARDS TRIANGLE-HEADED ARROW WITH LONG TIP UPWARDS */ + [0x2ba6, 0x2ba6], /* LEFTWARDS TRIANGLE-HEADED ARROW WITH LONG TIP DOWNWARDS */ + [0x2ba7, 0x2ba7], /* RIGHTWARDS TRIANGLE-HEADED ARROW WITH LONG TIP DOWNWARDS */ + [0x2ba8, 0x2ba8], /* BLACK CURVED DOWNWARDS AND LEFTWARDS ARROW */ + [0x2ba9, 0x2ba9], /* BLACK CURVED DOWNWARDS AND RIGHTWARDS ARROW */ + [0x2baa, 0x2baa], /* BLACK CURVED UPWARDS AND LEFTWARDS ARROW */ + [0x2bab, 0x2bab], /* BLACK CURVED UPWARDS AND RIGHTWARDS ARROW */ + [0x2bac, 0x2bac], /* BLACK CURVED LEFTWARDS AND UPWARDS ARROW */ + [0x2bad, 0x2bad], /* BLACK CURVED RIGHTWARDS AND UPWARDS ARROW */ + [0x2bae, 0x2bae], /* BLACK CURVED LEFTWARDS AND DOWNWARDS ARROW */ + [0x2baf, 0x2baf], /* BLACK CURVED RIGHTWARDS AND DOWNWARDS ARROW */ + [0x2bb0, 0x2bb0], /* RIBBON ARROW DOWN LEFT */ + [0x2bb1, 0x2bb1], /* RIBBON ARROW DOWN RIGHT */ + [0x2bb2, 0x2bb2], /* RIBBON ARROW UP LEFT */ + [0x2bb3, 0x2bb3], /* RIBBON ARROW UP RIGHT */ + [0x2bb4, 0x2bb4], /* RIBBON ARROW LEFT UP */ + [0x2bb5, 0x2bb5], /* RIBBON ARROW RIGHT UP */ + [0x2bb6, 0x2bb6], /* RIBBON ARROW LEFT DOWN */ + [0x2bb7, 0x2bb7], /* RIBBON ARROW RIGHT DOWN */ + [0x2bb8, 0x2bb8], /* UPWARDS WHITE ARROW FROM BAR WITH HORIZONTAL BAR */ + [0x2bb9, 0x2bb9], /* UP ARROWHEAD IN A RECTANGLE BOX */ + [0x2bba, 0x2bba], + [0x2bbb, 0x2bbb], + [0x2bbc, 0x2bbc], + [0x2bbd, 0x2bbd], /* BALLOT BOX WITH LIGHT X */ + [0x2bbe, 0x2bbe], /* CIRCLED X */ + [0x2bbf, 0x2bbf], /* CIRCLED BOLD X */ + [0x2bc0, 0x2bc0], /* BLACK SQUARE CENTRED */ + [0x2bc1, 0x2bc1], /* BLACK DIAMOND CENTRED */ + [0x2bc2, 0x2bc2], /* TURNED BLACK PENTAGON */ + [0x2bc3, 0x2bc3], /* HORIZONTAL BLACK OCTAGON */ + [0x2bc4, 0x2bc4], /* BLACK OCTAGON */ + [0x2bc5, 0x2bc5], /* BLACK MEDIUM UP-POINTING TRIANGLE CENTRED */ + [0x2bc6, 0x2bc6], /* BLACK MEDIUM DOWN-POINTING TRIANGLE CENTRED */ + [0x2bc7, 0x2bc7], /* BLACK MEDIUM LEFT-POINTING TRIANGLE CENTRED */ + [0x2bc8, 0x2bc8], /* BLACK MEDIUM RIGHT-POINTING TRIANGLE CENTRED */ + [0x2bc9, 0x2bc9], + [0x2bca, 0x2bca], /* TOP HALF BLACK CIRCLE */ + [0x2bcb, 0x2bcb], /* BOTTOM HALF BLACK CIRCLE */ + [0x2bcc, 0x2bcc], /* LIGHT FOUR POINTED BLACK CUSP */ + [0x2bcd, 0x2bcd], /* ROTATED LIGHT FOUR POINTED BLACK CUSP */ + [0x2bce, 0x2bce], /* WHITE FOUR POINTED CUSP */ + [0x2bcf, 0x2bcf], /* ROTATED WHITE FOUR POINTED CUSP */ + [0x2bd0, 0x2bd0], /* SQUARE POSITION INDICATOR */ + [0x2bd1, 0x2bd1], /* UNCERTAINTY SIGN */ + [0x2bd2, 0x2bd2], + [0x2bd3, 0x2bd3], + [0x2bd4, 0x2bd4], + [0x2bd5, 0x2bd5], + [0x2bd6, 0x2bd6], + [0x2bd7, 0x2bd7], + [0x2bd8, 0x2bd8], + [0x2bd9, 0x2bd9], + [0x2bda, 0x2bda], + [0x2bdb, 0x2bdb], + [0x2bdc, 0x2bdc], + [0x2bdd, 0x2bdd], + [0x2bde, 0x2bde], + [0x2bdf, 0x2bdf], + [0x2be0, 0x2be0], + [0x2be1, 0x2be1], + [0x2be2, 0x2be2], + [0x2be3, 0x2be3], + [0x2be4, 0x2be4], + [0x2be5, 0x2be5], + [0x2be6, 0x2be6], + [0x2be7, 0x2be7], + [0x2be8, 0x2be8], + [0x2be9, 0x2be9], + [0x2bea, 0x2bea], + [0x2beb, 0x2beb], + [0x2bec, 0x2bec], /* LEFTWARDS TWO-HEADED ARROW WITH TRIANGLE ARROWHEADS */ + [0x2bed, 0x2bed], /* UPWARDS TWO-HEADED ARROW WITH TRIANGLE ARROWHEADS */ + [0x2bee, 0x2bee], /* RIGHTWARDS TWO-HEADED ARROW WITH TRIANGLE ARROWHEADS */ + [0x2bef, 0x2bef], /* DOWNWARDS TWO-HEADED ARROW WITH TRIANGLE ARROWHEADS */ + [0x2bf0, 0x2bf0], + [0x2bf1, 0x2bf1], + [0x2bf2, 0x2bf2], + [0x2bf3, 0x2bf3], + [0x2bf4, 0x2bf4], + [0x2bf5, 0x2bf5], + [0x2bf6, 0x2bf6], + [0x2bf7, 0x2bf7], + [0x2bf8, 0x2bf8], + [0x2bf9, 0x2bf9], + [0x2bfa, 0x2bfa], + [0x2bfb, 0x2bfb], + [0x2bfc, 0x2bfc], + [0x2bfd, 0x2bfd], + [0x2bfe, 0x2bfe], + [0x2bff, 0x2bff], + [0x2c00, 0x2c30], /* GLAGOLITIC CAPITAL LETTER AZU */ + [0x2c01, 0x2c31], /* GLAGOLITIC CAPITAL LETTER BUKY */ + [0x2c02, 0x2c32], /* GLAGOLITIC CAPITAL LETTER VEDE */ + [0x2c03, 0x2c33], /* GLAGOLITIC CAPITAL LETTER GLAGOLI */ + [0x2c04, 0x2c34], /* GLAGOLITIC CAPITAL LETTER DOBRO */ + [0x2c05, 0x2c35], /* GLAGOLITIC CAPITAL LETTER YESTU */ + [0x2c06, 0x2c36], /* GLAGOLITIC CAPITAL LETTER ZHIVETE */ + [0x2c07, 0x2c37], /* GLAGOLITIC CAPITAL LETTER DZELO */ + [0x2c08, 0x2c38], /* GLAGOLITIC CAPITAL LETTER ZEMLJA */ + [0x2c09, 0x2c39], /* GLAGOLITIC CAPITAL LETTER IZHE */ + [0x2c0a, 0x2c3a], /* GLAGOLITIC CAPITAL LETTER INITIAL IZHE */ + [0x2c0b, 0x2c3b], /* GLAGOLITIC CAPITAL LETTER I */ + [0x2c0c, 0x2c3c], /* GLAGOLITIC CAPITAL LETTER DJERVI */ + [0x2c0d, 0x2c3d], /* GLAGOLITIC CAPITAL LETTER KAKO */ + [0x2c0e, 0x2c3e], /* GLAGOLITIC CAPITAL LETTER LJUDIJE */ + [0x2c0f, 0x2c3f], /* GLAGOLITIC CAPITAL LETTER MYSLITE */ + [0x2c10, 0x2c40], /* GLAGOLITIC CAPITAL LETTER NASHI */ + [0x2c11, 0x2c41], /* GLAGOLITIC CAPITAL LETTER ONU */ + [0x2c12, 0x2c42], /* GLAGOLITIC CAPITAL LETTER POKOJI */ + [0x2c13, 0x2c43], /* GLAGOLITIC CAPITAL LETTER RITSI */ + [0x2c14, 0x2c44], /* GLAGOLITIC CAPITAL LETTER SLOVO */ + [0x2c15, 0x2c45], /* GLAGOLITIC CAPITAL LETTER TVRIDO */ + [0x2c16, 0x2c46], /* GLAGOLITIC CAPITAL LETTER UKU */ + [0x2c17, 0x2c47], /* GLAGOLITIC CAPITAL LETTER FRITU */ + [0x2c18, 0x2c48], /* GLAGOLITIC CAPITAL LETTER HERU */ + [0x2c19, 0x2c49], /* GLAGOLITIC CAPITAL LETTER OTU */ + [0x2c1a, 0x2c4a], /* GLAGOLITIC CAPITAL LETTER PE */ + [0x2c1b, 0x2c4b], /* GLAGOLITIC CAPITAL LETTER SHTA */ + [0x2c1c, 0x2c4c], /* GLAGOLITIC CAPITAL LETTER TSI */ + [0x2c1d, 0x2c4d], /* GLAGOLITIC CAPITAL LETTER CHRIVI */ + [0x2c1e, 0x2c4e], /* GLAGOLITIC CAPITAL LETTER SHA */ + [0x2c1f, 0x2c4f], /* GLAGOLITIC CAPITAL LETTER YERU */ + [0x2c20, 0x2c50], /* GLAGOLITIC CAPITAL LETTER YERI */ + [0x2c21, 0x2c51], /* GLAGOLITIC CAPITAL LETTER YATI */ + [0x2c22, 0x2c52], /* GLAGOLITIC CAPITAL LETTER SPIDERY HA */ + [0x2c23, 0x2c53], /* GLAGOLITIC CAPITAL LETTER YU */ + [0x2c24, 0x2c54], /* GLAGOLITIC CAPITAL LETTER SMALL YUS */ + [0x2c25, 0x2c55], /* GLAGOLITIC CAPITAL LETTER SMALL YUS WITH TAIL */ + [0x2c26, 0x2c56], /* GLAGOLITIC CAPITAL LETTER YO */ + [0x2c27, 0x2c57], /* GLAGOLITIC CAPITAL LETTER IOTATED SMALL YUS */ + [0x2c28, 0x2c58], /* GLAGOLITIC CAPITAL LETTER BIG YUS */ + [0x2c29, 0x2c59], /* GLAGOLITIC CAPITAL LETTER IOTATED BIG YUS */ + [0x2c2a, 0x2c5a], /* GLAGOLITIC CAPITAL LETTER FITA */ + [0x2c2b, 0x2c5b], /* GLAGOLITIC CAPITAL LETTER IZHITSA */ + [0x2c2c, 0x2c5c], /* GLAGOLITIC CAPITAL LETTER SHTAPIC */ + [0x2c2d, 0x2c5d], /* GLAGOLITIC CAPITAL LETTER TROKUTASTI A */ + [0x2c2e, 0x2c5e], /* GLAGOLITIC CAPITAL LETTER LATINATE MYSLITE */ + [0x2c2f, 0x2c2f], + [0x2c00, 0x2c30], /* GLAGOLITIC SMALL LETTER AZU */ + [0x2c01, 0x2c31], /* GLAGOLITIC SMALL LETTER BUKY */ + [0x2c02, 0x2c32], /* GLAGOLITIC SMALL LETTER VEDE */ + [0x2c03, 0x2c33], /* GLAGOLITIC SMALL LETTER GLAGOLI */ + [0x2c04, 0x2c34], /* GLAGOLITIC SMALL LETTER DOBRO */ + [0x2c05, 0x2c35], /* GLAGOLITIC SMALL LETTER YESTU */ + [0x2c06, 0x2c36], /* GLAGOLITIC SMALL LETTER ZHIVETE */ + [0x2c07, 0x2c37], /* GLAGOLITIC SMALL LETTER DZELO */ + [0x2c08, 0x2c38], /* GLAGOLITIC SMALL LETTER ZEMLJA */ + [0x2c09, 0x2c39], /* GLAGOLITIC SMALL LETTER IZHE */ + [0x2c0a, 0x2c3a], /* GLAGOLITIC SMALL LETTER INITIAL IZHE */ + [0x2c0b, 0x2c3b], /* GLAGOLITIC SMALL LETTER I */ + [0x2c0c, 0x2c3c], /* GLAGOLITIC SMALL LETTER DJERVI */ + [0x2c0d, 0x2c3d], /* GLAGOLITIC SMALL LETTER KAKO */ + [0x2c0e, 0x2c3e], /* GLAGOLITIC SMALL LETTER LJUDIJE */ + [0x2c0f, 0x2c3f], /* GLAGOLITIC SMALL LETTER MYSLITE */ + [0x2c10, 0x2c40], /* GLAGOLITIC SMALL LETTER NASHI */ + [0x2c11, 0x2c41], /* GLAGOLITIC SMALL LETTER ONU */ + [0x2c12, 0x2c42], /* GLAGOLITIC SMALL LETTER POKOJI */ + [0x2c13, 0x2c43], /* GLAGOLITIC SMALL LETTER RITSI */ + [0x2c14, 0x2c44], /* GLAGOLITIC SMALL LETTER SLOVO */ + [0x2c15, 0x2c45], /* GLAGOLITIC SMALL LETTER TVRIDO */ + [0x2c16, 0x2c46], /* GLAGOLITIC SMALL LETTER UKU */ + [0x2c17, 0x2c47], /* GLAGOLITIC SMALL LETTER FRITU */ + [0x2c18, 0x2c48], /* GLAGOLITIC SMALL LETTER HERU */ + [0x2c19, 0x2c49], /* GLAGOLITIC SMALL LETTER OTU */ + [0x2c1a, 0x2c4a], /* GLAGOLITIC SMALL LETTER PE */ + [0x2c1b, 0x2c4b], /* GLAGOLITIC SMALL LETTER SHTA */ + [0x2c1c, 0x2c4c], /* GLAGOLITIC SMALL LETTER TSI */ + [0x2c1d, 0x2c4d], /* GLAGOLITIC SMALL LETTER CHRIVI */ + [0x2c1e, 0x2c4e], /* GLAGOLITIC SMALL LETTER SHA */ + [0x2c1f, 0x2c4f], /* GLAGOLITIC SMALL LETTER YERU */ + [0x2c20, 0x2c50], /* GLAGOLITIC SMALL LETTER YERI */ + [0x2c21, 0x2c51], /* GLAGOLITIC SMALL LETTER YATI */ + [0x2c22, 0x2c52], /* GLAGOLITIC SMALL LETTER SPIDERY HA */ + [0x2c23, 0x2c53], /* GLAGOLITIC SMALL LETTER YU */ + [0x2c24, 0x2c54], /* GLAGOLITIC SMALL LETTER SMALL YUS */ + [0x2c25, 0x2c55], /* GLAGOLITIC SMALL LETTER SMALL YUS WITH TAIL */ + [0x2c26, 0x2c56], /* GLAGOLITIC SMALL LETTER YO */ + [0x2c27, 0x2c57], /* GLAGOLITIC SMALL LETTER IOTATED SMALL YUS */ + [0x2c28, 0x2c58], /* GLAGOLITIC SMALL LETTER BIG YUS */ + [0x2c29, 0x2c59], /* GLAGOLITIC SMALL LETTER IOTATED BIG YUS */ + [0x2c2a, 0x2c5a], /* GLAGOLITIC SMALL LETTER FITA */ + [0x2c2b, 0x2c5b], /* GLAGOLITIC SMALL LETTER IZHITSA */ + [0x2c2c, 0x2c5c], /* GLAGOLITIC SMALL LETTER SHTAPIC */ + [0x2c2d, 0x2c5d], /* GLAGOLITIC SMALL LETTER TROKUTASTI A */ + [0x2c2e, 0x2c5e], /* GLAGOLITIC SMALL LETTER LATINATE MYSLITE */ + [0x2c5f, 0x2c5f], + [0x2c60, 0x2c61], /* LATIN CAPITAL LETTER L WITH DOUBLE BAR */ + [0x2c60, 0x2c61], /* LATIN SMALL LETTER L WITH DOUBLE BAR */ + [0x2c62, 0x26b], /* LATIN CAPITAL LETTER L WITH MIDDLE TILDE */ + [0x2c63, 0x1d7d], /* LATIN CAPITAL LETTER P WITH STROKE */ + [0x2c64, 0x27d], /* LATIN CAPITAL LETTER R WITH TAIL */ + [0x23a, 0x2c65], /* LATIN SMALL LETTER A WITH STROKE */ + [0x23e, 0x2c66], /* LATIN SMALL LETTER T WITH DIAGONAL STROKE */ + [0x2c67, 0x2c68], /* LATIN CAPITAL LETTER H WITH DESCENDER */ + [0x2c67, 0x2c68], /* LATIN SMALL LETTER H WITH DESCENDER */ + [0x2c69, 0x2c6a], /* LATIN CAPITAL LETTER K WITH DESCENDER */ + [0x2c69, 0x2c6a], /* LATIN SMALL LETTER K WITH DESCENDER */ + [0x2c6b, 0x2c6c], /* LATIN CAPITAL LETTER Z WITH DESCENDER */ + [0x2c6b, 0x2c6c], /* LATIN SMALL LETTER Z WITH DESCENDER */ + [0x2c6d, 0x251], /* LATIN CAPITAL LETTER ALPHA */ + [0x2c6e, 0x271], /* LATIN CAPITAL LETTER M WITH HOOK */ + [0x2c6f, 0x250], /* LATIN CAPITAL LETTER TURNED A */ + [0x2c70, 0x252], /* LATIN CAPITAL LETTER TURNED ALPHA */ + [0x2c71, 0x2c71], /* LATIN SMALL LETTER V WITH RIGHT HOOK */ + [0x2c72, 0x2c73], /* LATIN CAPITAL LETTER W WITH HOOK */ + [0x2c72, 0x2c73], /* LATIN SMALL LETTER W WITH HOOK */ + [0x2c74, 0x2c74], /* LATIN SMALL LETTER V WITH CURL */ + [0x2c75, 0x2c76], /* LATIN CAPITAL LETTER HALF H */ + [0x2c75, 0x2c76], /* LATIN SMALL LETTER HALF H */ + [0x2c77, 0x2c77], /* LATIN SMALL LETTER TAILLESS PHI */ + [0x2c78, 0x2c78], /* LATIN SMALL LETTER E WITH NOTCH */ + [0x2c79, 0x2c79], /* LATIN SMALL LETTER TURNED R WITH TAIL */ + [0x2c7a, 0x2c7a], /* LATIN SMALL LETTER O WITH LOW RING INSIDE */ + [0x2c7b, 0x2c7b], /* LATIN LETTER SMALL CAPITAL TURNED E */ + [0x2c7c, 0x2c7c], /* LATIN SUBSCRIPT SMALL LETTER J */ + [0x2c7d, 0x2c7d], /* MODIFIER LETTER CAPITAL V */ + [0x2c7e, 0x23f], /* LATIN CAPITAL LETTER S WITH SWASH TAIL */ + [0x2c7f, 0x240], /* LATIN CAPITAL LETTER Z WITH SWASH TAIL */ + [0x2c80, 0x2c81], /* COPTIC CAPITAL LETTER ALFA */ + [0x2c80, 0x2c81], /* COPTIC SMALL LETTER ALFA */ + [0x2c82, 0x2c83], /* COPTIC CAPITAL LETTER VIDA */ + [0x2c82, 0x2c83], /* COPTIC SMALL LETTER VIDA */ + [0x2c84, 0x2c85], /* COPTIC CAPITAL LETTER GAMMA */ + [0x2c84, 0x2c85], /* COPTIC SMALL LETTER GAMMA */ + [0x2c86, 0x2c87], /* COPTIC CAPITAL LETTER DALDA */ + [0x2c86, 0x2c87], /* COPTIC SMALL LETTER DALDA */ + [0x2c88, 0x2c89], /* COPTIC CAPITAL LETTER EIE */ + [0x2c88, 0x2c89], /* COPTIC SMALL LETTER EIE */ + [0x2c8a, 0x2c8b], /* COPTIC CAPITAL LETTER SOU */ + [0x2c8a, 0x2c8b], /* COPTIC SMALL LETTER SOU */ + [0x2c8c, 0x2c8d], /* COPTIC CAPITAL LETTER ZATA */ + [0x2c8c, 0x2c8d], /* COPTIC SMALL LETTER ZATA */ + [0x2c8e, 0x2c8f], /* COPTIC CAPITAL LETTER HATE */ + [0x2c8e, 0x2c8f], /* COPTIC SMALL LETTER HATE */ + [0x2c90, 0x2c91], /* COPTIC CAPITAL LETTER THETHE */ + [0x2c90, 0x2c91], /* COPTIC SMALL LETTER THETHE */ + [0x2c92, 0x2c93], /* COPTIC CAPITAL LETTER IAUDA */ + [0x2c92, 0x2c93], /* COPTIC SMALL LETTER IAUDA */ + [0x2c94, 0x2c95], /* COPTIC CAPITAL LETTER KAPA */ + [0x2c94, 0x2c95], /* COPTIC SMALL LETTER KAPA */ + [0x2c96, 0x2c97], /* COPTIC CAPITAL LETTER LAULA */ + [0x2c96, 0x2c97], /* COPTIC SMALL LETTER LAULA */ + [0x2c98, 0x2c99], /* COPTIC CAPITAL LETTER MI */ + [0x2c98, 0x2c99], /* COPTIC SMALL LETTER MI */ + [0x2c9a, 0x2c9b], /* COPTIC CAPITAL LETTER NI */ + [0x2c9a, 0x2c9b], /* COPTIC SMALL LETTER NI */ + [0x2c9c, 0x2c9d], /* COPTIC CAPITAL LETTER KSI */ + [0x2c9c, 0x2c9d], /* COPTIC SMALL LETTER KSI */ + [0x2c9e, 0x2c9f], /* COPTIC CAPITAL LETTER O */ + [0x2c9e, 0x2c9f], /* COPTIC SMALL LETTER O */ + [0x2ca0, 0x2ca1], /* COPTIC CAPITAL LETTER PI */ + [0x2ca0, 0x2ca1], /* COPTIC SMALL LETTER PI */ + [0x2ca2, 0x2ca3], /* COPTIC CAPITAL LETTER RO */ + [0x2ca2, 0x2ca3], /* COPTIC SMALL LETTER RO */ + [0x2ca4, 0x2ca5], /* COPTIC CAPITAL LETTER SIMA */ + [0x2ca4, 0x2ca5], /* COPTIC SMALL LETTER SIMA */ + [0x2ca6, 0x2ca7], /* COPTIC CAPITAL LETTER TAU */ + [0x2ca6, 0x2ca7], /* COPTIC SMALL LETTER TAU */ + [0x2ca8, 0x2ca9], /* COPTIC CAPITAL LETTER UA */ + [0x2ca8, 0x2ca9], /* COPTIC SMALL LETTER UA */ + [0x2caa, 0x2cab], /* COPTIC CAPITAL LETTER FI */ + [0x2caa, 0x2cab], /* COPTIC SMALL LETTER FI */ + [0x2cac, 0x2cad], /* COPTIC CAPITAL LETTER KHI */ + [0x2cac, 0x2cad], /* COPTIC SMALL LETTER KHI */ + [0x2cae, 0x2caf], /* COPTIC CAPITAL LETTER PSI */ + [0x2cae, 0x2caf], /* COPTIC SMALL LETTER PSI */ + [0x2cb0, 0x2cb1], /* COPTIC CAPITAL LETTER OOU */ + [0x2cb0, 0x2cb1], /* COPTIC SMALL LETTER OOU */ + [0x2cb2, 0x2cb3], /* COPTIC CAPITAL LETTER DIALECT-P ALEF */ + [0x2cb2, 0x2cb3], /* COPTIC SMALL LETTER DIALECT-P ALEF */ + [0x2cb4, 0x2cb5], /* COPTIC CAPITAL LETTER OLD COPTIC AIN */ + [0x2cb4, 0x2cb5], /* COPTIC SMALL LETTER OLD COPTIC AIN */ + [0x2cb6, 0x2cb7], /* COPTIC CAPITAL LETTER CRYPTOGRAMMIC EIE */ + [0x2cb6, 0x2cb7], /* COPTIC SMALL LETTER CRYPTOGRAMMIC EIE */ + [0x2cb8, 0x2cb9], /* COPTIC CAPITAL LETTER DIALECT-P KAPA */ + [0x2cb8, 0x2cb9], /* COPTIC SMALL LETTER DIALECT-P KAPA */ + [0x2cba, 0x2cbb], /* COPTIC CAPITAL LETTER DIALECT-P NI */ + [0x2cba, 0x2cbb], /* COPTIC SMALL LETTER DIALECT-P NI */ + [0x2cbc, 0x2cbd], /* COPTIC CAPITAL LETTER CRYPTOGRAMMIC NI */ + [0x2cbc, 0x2cbd], /* COPTIC SMALL LETTER CRYPTOGRAMMIC NI */ + [0x2cbe, 0x2cbf], /* COPTIC CAPITAL LETTER OLD COPTIC OOU */ + [0x2cbe, 0x2cbf], /* COPTIC SMALL LETTER OLD COPTIC OOU */ + [0x2cc0, 0x2cc1], /* COPTIC CAPITAL LETTER SAMPI */ + [0x2cc0, 0x2cc1], /* COPTIC SMALL LETTER SAMPI */ + [0x2cc2, 0x2cc3], /* COPTIC CAPITAL LETTER CROSSED SHEI */ + [0x2cc2, 0x2cc3], /* COPTIC SMALL LETTER CROSSED SHEI */ + [0x2cc4, 0x2cc5], /* COPTIC CAPITAL LETTER OLD COPTIC SHEI */ + [0x2cc4, 0x2cc5], /* COPTIC SMALL LETTER OLD COPTIC SHEI */ + [0x2cc6, 0x2cc7], /* COPTIC CAPITAL LETTER OLD COPTIC ESH */ + [0x2cc6, 0x2cc7], /* COPTIC SMALL LETTER OLD COPTIC ESH */ + [0x2cc8, 0x2cc9], /* COPTIC CAPITAL LETTER AKHMIMIC KHEI */ + [0x2cc8, 0x2cc9], /* COPTIC SMALL LETTER AKHMIMIC KHEI */ + [0x2cca, 0x2ccb], /* COPTIC CAPITAL LETTER DIALECT-P HORI */ + [0x2cca, 0x2ccb], /* COPTIC SMALL LETTER DIALECT-P HORI */ + [0x2ccc, 0x2ccd], /* COPTIC CAPITAL LETTER OLD COPTIC HORI */ + [0x2ccc, 0x2ccd], /* COPTIC SMALL LETTER OLD COPTIC HORI */ + [0x2cce, 0x2ccf], /* COPTIC CAPITAL LETTER OLD COPTIC HA */ + [0x2cce, 0x2ccf], /* COPTIC SMALL LETTER OLD COPTIC HA */ + [0x2cd0, 0x2cd1], /* COPTIC CAPITAL LETTER L-SHAPED HA */ + [0x2cd0, 0x2cd1], /* COPTIC SMALL LETTER L-SHAPED HA */ + [0x2cd2, 0x2cd3], /* COPTIC CAPITAL LETTER OLD COPTIC HEI */ + [0x2cd2, 0x2cd3], /* COPTIC SMALL LETTER OLD COPTIC HEI */ + [0x2cd4, 0x2cd5], /* COPTIC CAPITAL LETTER OLD COPTIC HAT */ + [0x2cd4, 0x2cd5], /* COPTIC SMALL LETTER OLD COPTIC HAT */ + [0x2cd6, 0x2cd7], /* COPTIC CAPITAL LETTER OLD COPTIC GANGIA */ + [0x2cd6, 0x2cd7], /* COPTIC SMALL LETTER OLD COPTIC GANGIA */ + [0x2cd8, 0x2cd9], /* COPTIC CAPITAL LETTER OLD COPTIC DJA */ + [0x2cd8, 0x2cd9], /* COPTIC SMALL LETTER OLD COPTIC DJA */ + [0x2cda, 0x2cdb], /* COPTIC CAPITAL LETTER OLD COPTIC SHIMA */ + [0x2cda, 0x2cdb], /* COPTIC SMALL LETTER OLD COPTIC SHIMA */ + [0x2cdc, 0x2cdd], /* COPTIC CAPITAL LETTER OLD NUBIAN SHIMA */ + [0x2cdc, 0x2cdd], /* COPTIC SMALL LETTER OLD NUBIAN SHIMA */ + [0x2cde, 0x2cdf], /* COPTIC CAPITAL LETTER OLD NUBIAN NGI */ + [0x2cde, 0x2cdf], /* COPTIC SMALL LETTER OLD NUBIAN NGI */ + [0x2ce0, 0x2ce1], /* COPTIC CAPITAL LETTER OLD NUBIAN NYI */ + [0x2ce0, 0x2ce1], /* COPTIC SMALL LETTER OLD NUBIAN NYI */ + [0x2ce2, 0x2ce3], /* COPTIC CAPITAL LETTER OLD NUBIAN WAU */ + [0x2ce2, 0x2ce3], /* COPTIC SMALL LETTER OLD NUBIAN WAU */ + [0x2ce4, 0x2ce4], /* COPTIC SYMBOL KAI */ + [0x2ce5, 0x2ce5], /* COPTIC SYMBOL MI RO */ + [0x2ce6, 0x2ce6], /* COPTIC SYMBOL PI RO */ + [0x2ce7, 0x2ce7], /* COPTIC SYMBOL STAUROS */ + [0x2ce8, 0x2ce8], /* COPTIC SYMBOL TAU RO */ + [0x2ce9, 0x2ce9], /* COPTIC SYMBOL KHI RO */ + [0x2cea, 0x2cea], /* COPTIC SYMBOL SHIMA SIMA */ + [0x2ceb, 0x2cec], /* COPTIC CAPITAL LETTER CRYPTOGRAMMIC SHEI */ + [0x2ceb, 0x2cec], /* COPTIC SMALL LETTER CRYPTOGRAMMIC SHEI */ + [0x2ced, 0x2cee], /* COPTIC CAPITAL LETTER CRYPTOGRAMMIC GANGIA */ + [0x2ced, 0x2cee], /* COPTIC SMALL LETTER CRYPTOGRAMMIC GANGIA */ + [0x2cef, 0x2cef], /* COPTIC COMBINING NI ABOVE */ + [0x2cf0, 0x2cf0], /* COPTIC COMBINING SPIRITUS ASPER */ + [0x2cf1, 0x2cf1], /* COPTIC COMBINING SPIRITUS LENIS */ + [0x2cf2, 0x2cf3], /* COPTIC CAPITAL LETTER BOHAIRIC KHEI */ + [0x2cf2, 0x2cf3], /* COPTIC SMALL LETTER BOHAIRIC KHEI */ + [0x2cf4, 0x2cf4], + [0x2cf5, 0x2cf5], + [0x2cf6, 0x2cf6], + [0x2cf7, 0x2cf7], + [0x2cf8, 0x2cf8], + [0x2cf9, 0x2cf9], /* COPTIC OLD NUBIAN FULL STOP */ + [0x2cfa, 0x2cfa], /* COPTIC OLD NUBIAN DIRECT QUESTION MARK */ + [0x2cfb, 0x2cfb], /* COPTIC OLD NUBIAN INDIRECT QUESTION MARK */ + [0x2cfc, 0x2cfc], /* COPTIC OLD NUBIAN VERSE DIVIDER */ + [0x2cfd, 0x2cfd], /* COPTIC FRACTION ONE HALF */ + [0x2cfe, 0x2cfe], /* COPTIC FULL STOP */ + [0x2cff, 0x2cff], /* COPTIC MORPHOLOGICAL DIVIDER */ + [0x10a0, 0x2d00], /* GEORGIAN SMALL LETTER AN */ + [0x10a1, 0x2d01], /* GEORGIAN SMALL LETTER BAN */ + [0x10a2, 0x2d02], /* GEORGIAN SMALL LETTER GAN */ + [0x10a3, 0x2d03], /* GEORGIAN SMALL LETTER DON */ + [0x10a4, 0x2d04], /* GEORGIAN SMALL LETTER EN */ + [0x10a5, 0x2d05], /* GEORGIAN SMALL LETTER VIN */ + [0x10a6, 0x2d06], /* GEORGIAN SMALL LETTER ZEN */ + [0x10a7, 0x2d07], /* GEORGIAN SMALL LETTER TAN */ + [0x10a8, 0x2d08], /* GEORGIAN SMALL LETTER IN */ + [0x10a9, 0x2d09], /* GEORGIAN SMALL LETTER KAN */ + [0x10aa, 0x2d0a], /* GEORGIAN SMALL LETTER LAS */ + [0x10ab, 0x2d0b], /* GEORGIAN SMALL LETTER MAN */ + [0x10ac, 0x2d0c], /* GEORGIAN SMALL LETTER NAR */ + [0x10ad, 0x2d0d], /* GEORGIAN SMALL LETTER ON */ + [0x10ae, 0x2d0e], /* GEORGIAN SMALL LETTER PAR */ + [0x10af, 0x2d0f], /* GEORGIAN SMALL LETTER ZHAR */ + [0x10b0, 0x2d10], /* GEORGIAN SMALL LETTER RAE */ + [0x10b1, 0x2d11], /* GEORGIAN SMALL LETTER SAN */ + [0x10b2, 0x2d12], /* GEORGIAN SMALL LETTER TAR */ + [0x10b3, 0x2d13], /* GEORGIAN SMALL LETTER UN */ + [0x10b4, 0x2d14], /* GEORGIAN SMALL LETTER PHAR */ + [0x10b5, 0x2d15], /* GEORGIAN SMALL LETTER KHAR */ + [0x10b6, 0x2d16], /* GEORGIAN SMALL LETTER GHAN */ + [0x10b7, 0x2d17], /* GEORGIAN SMALL LETTER QAR */ + [0x10b8, 0x2d18], /* GEORGIAN SMALL LETTER SHIN */ + [0x10b9, 0x2d19], /* GEORGIAN SMALL LETTER CHIN */ + [0x10ba, 0x2d1a], /* GEORGIAN SMALL LETTER CAN */ + [0x10bb, 0x2d1b], /* GEORGIAN SMALL LETTER JIL */ + [0x10bc, 0x2d1c], /* GEORGIAN SMALL LETTER CIL */ + [0x10bd, 0x2d1d], /* GEORGIAN SMALL LETTER CHAR */ + [0x10be, 0x2d1e], /* GEORGIAN SMALL LETTER XAN */ + [0x10bf, 0x2d1f], /* GEORGIAN SMALL LETTER JHAN */ + [0x10c0, 0x2d20], /* GEORGIAN SMALL LETTER HAE */ + [0x10c1, 0x2d21], /* GEORGIAN SMALL LETTER HE */ + [0x10c2, 0x2d22], /* GEORGIAN SMALL LETTER HIE */ + [0x10c3, 0x2d23], /* GEORGIAN SMALL LETTER WE */ + [0x10c4, 0x2d24], /* GEORGIAN SMALL LETTER HAR */ + [0x10c5, 0x2d25], /* GEORGIAN SMALL LETTER HOE */ + [0x2d26, 0x2d26], + [0x10c7, 0x2d27], /* GEORGIAN SMALL LETTER YN */ + [0x2d28, 0x2d28], + [0x2d29, 0x2d29], + [0x2d2a, 0x2d2a], + [0x2d2b, 0x2d2b], + [0x2d2c, 0x2d2c], + [0x10cd, 0x2d2d], /* GEORGIAN SMALL LETTER AEN */ + [0x2d2e, 0x2d2e], + [0x2d2f, 0x2d2f], + [0x2d30, 0x2d30], /* TIFINAGH LETTER YA */ + [0x2d31, 0x2d31], /* TIFINAGH LETTER YAB */ + [0x2d32, 0x2d32], /* TIFINAGH LETTER YABH */ + [0x2d33, 0x2d33], /* TIFINAGH LETTER YAG */ + [0x2d34, 0x2d34], /* TIFINAGH LETTER YAGHH */ + [0x2d35, 0x2d35], /* TIFINAGH LETTER BERBER ACADEMY YAJ */ + [0x2d36, 0x2d36], /* TIFINAGH LETTER YAJ */ + [0x2d37, 0x2d37], /* TIFINAGH LETTER YAD */ + [0x2d38, 0x2d38], /* TIFINAGH LETTER YADH */ + [0x2d39, 0x2d39], /* TIFINAGH LETTER YADD */ + [0x2d3a, 0x2d3a], /* TIFINAGH LETTER YADDH */ + [0x2d3b, 0x2d3b], /* TIFINAGH LETTER YEY */ + [0x2d3c, 0x2d3c], /* TIFINAGH LETTER YAF */ + [0x2d3d, 0x2d3d], /* TIFINAGH LETTER YAK */ + [0x2d3e, 0x2d3e], /* TIFINAGH LETTER TUAREG YAK */ + [0x2d3f, 0x2d3f], /* TIFINAGH LETTER YAKHH */ + [0x2d40, 0x2d40], /* TIFINAGH LETTER YAH */ + [0x2d41, 0x2d41], /* TIFINAGH LETTER BERBER ACADEMY YAH */ + [0x2d42, 0x2d42], /* TIFINAGH LETTER TUAREG YAH */ + [0x2d43, 0x2d43], /* TIFINAGH LETTER YAHH */ + [0x2d44, 0x2d44], /* TIFINAGH LETTER YAA */ + [0x2d45, 0x2d45], /* TIFINAGH LETTER YAKH */ + [0x2d46, 0x2d46], /* TIFINAGH LETTER TUAREG YAKH */ + [0x2d47, 0x2d47], /* TIFINAGH LETTER YAQ */ + [0x2d48, 0x2d48], /* TIFINAGH LETTER TUAREG YAQ */ + [0x2d49, 0x2d49], /* TIFINAGH LETTER YI */ + [0x2d4a, 0x2d4a], /* TIFINAGH LETTER YAZH */ + [0x2d4b, 0x2d4b], /* TIFINAGH LETTER AHAGGAR YAZH */ + [0x2d4c, 0x2d4c], /* TIFINAGH LETTER TUAREG YAZH */ + [0x2d4d, 0x2d4d], /* TIFINAGH LETTER YAL */ + [0x2d4e, 0x2d4e], /* TIFINAGH LETTER YAM */ + [0x2d4f, 0x2d4f], /* TIFINAGH LETTER YAN */ + [0x2d50, 0x2d50], /* TIFINAGH LETTER TUAREG YAGN */ + [0x2d51, 0x2d51], /* TIFINAGH LETTER TUAREG YANG */ + [0x2d52, 0x2d52], /* TIFINAGH LETTER YAP */ + [0x2d53, 0x2d53], /* TIFINAGH LETTER YU */ + [0x2d54, 0x2d54], /* TIFINAGH LETTER YAR */ + [0x2d55, 0x2d55], /* TIFINAGH LETTER YARR */ + [0x2d56, 0x2d56], /* TIFINAGH LETTER YAGH */ + [0x2d57, 0x2d57], /* TIFINAGH LETTER TUAREG YAGH */ + [0x2d58, 0x2d58], /* TIFINAGH LETTER AYER YAGH */ + [0x2d59, 0x2d59], /* TIFINAGH LETTER YAS */ + [0x2d5a, 0x2d5a], /* TIFINAGH LETTER YASS */ + [0x2d5b, 0x2d5b], /* TIFINAGH LETTER YASH */ + [0x2d5c, 0x2d5c], /* TIFINAGH LETTER YAT */ + [0x2d5d, 0x2d5d], /* TIFINAGH LETTER YATH */ + [0x2d5e, 0x2d5e], /* TIFINAGH LETTER YACH */ + [0x2d5f, 0x2d5f], /* TIFINAGH LETTER YATT */ + [0x2d60, 0x2d60], /* TIFINAGH LETTER YAV */ + [0x2d61, 0x2d61], /* TIFINAGH LETTER YAW */ + [0x2d62, 0x2d62], /* TIFINAGH LETTER YAY */ + [0x2d63, 0x2d63], /* TIFINAGH LETTER YAZ */ + [0x2d64, 0x2d64], /* TIFINAGH LETTER TAWELLEMET YAZ */ + [0x2d65, 0x2d65], /* TIFINAGH LETTER YAZZ */ + [0x2d66, 0x2d66], /* TIFINAGH LETTER YE */ + [0x2d67, 0x2d67], /* TIFINAGH LETTER YO */ + [0x2d68, 0x2d68], + [0x2d69, 0x2d69], + [0x2d6a, 0x2d6a], + [0x2d6b, 0x2d6b], + [0x2d6c, 0x2d6c], + [0x2d6d, 0x2d6d], + [0x2d6e, 0x2d6e], + [0x2d6f, 0x2d6f], /* TIFINAGH MODIFIER LETTER LABIALIZATION MARK */ + [0x2d70, 0x2d70], /* TIFINAGH SEPARATOR MARK */ + [0x2d71, 0x2d71], + [0x2d72, 0x2d72], + [0x2d73, 0x2d73], + [0x2d74, 0x2d74], + [0x2d75, 0x2d75], + [0x2d76, 0x2d76], + [0x2d77, 0x2d77], + [0x2d78, 0x2d78], + [0x2d79, 0x2d79], + [0x2d7a, 0x2d7a], + [0x2d7b, 0x2d7b], + [0x2d7c, 0x2d7c], + [0x2d7d, 0x2d7d], + [0x2d7e, 0x2d7e], + [0x2d7f, 0x2d7f], /* TIFINAGH CONSONANT JOINER */ + [0x2d80, 0x2d80], /* ETHIOPIC SYLLABLE LOA */ + [0x2d81, 0x2d81], /* ETHIOPIC SYLLABLE MOA */ + [0x2d82, 0x2d82], /* ETHIOPIC SYLLABLE ROA */ + [0x2d83, 0x2d83], /* ETHIOPIC SYLLABLE SOA */ + [0x2d84, 0x2d84], /* ETHIOPIC SYLLABLE SHOA */ + [0x2d85, 0x2d85], /* ETHIOPIC SYLLABLE BOA */ + [0x2d86, 0x2d86], /* ETHIOPIC SYLLABLE TOA */ + [0x2d87, 0x2d87], /* ETHIOPIC SYLLABLE COA */ + [0x2d88, 0x2d88], /* ETHIOPIC SYLLABLE NOA */ + [0x2d89, 0x2d89], /* ETHIOPIC SYLLABLE NYOA */ + [0x2d8a, 0x2d8a], /* ETHIOPIC SYLLABLE GLOTTAL OA */ + [0x2d8b, 0x2d8b], /* ETHIOPIC SYLLABLE ZOA */ + [0x2d8c, 0x2d8c], /* ETHIOPIC SYLLABLE DOA */ + [0x2d8d, 0x2d8d], /* ETHIOPIC SYLLABLE DDOA */ + [0x2d8e, 0x2d8e], /* ETHIOPIC SYLLABLE JOA */ + [0x2d8f, 0x2d8f], /* ETHIOPIC SYLLABLE THOA */ + [0x2d90, 0x2d90], /* ETHIOPIC SYLLABLE CHOA */ + [0x2d91, 0x2d91], /* ETHIOPIC SYLLABLE PHOA */ + [0x2d92, 0x2d92], /* ETHIOPIC SYLLABLE POA */ + [0x2d93, 0x2d93], /* ETHIOPIC SYLLABLE GGWA */ + [0x2d94, 0x2d94], /* ETHIOPIC SYLLABLE GGWI */ + [0x2d95, 0x2d95], /* ETHIOPIC SYLLABLE GGWEE */ + [0x2d96, 0x2d96], /* ETHIOPIC SYLLABLE GGWE */ + [0x2d97, 0x2d97], + [0x2d98, 0x2d98], + [0x2d99, 0x2d99], + [0x2d9a, 0x2d9a], + [0x2d9b, 0x2d9b], + [0x2d9c, 0x2d9c], + [0x2d9d, 0x2d9d], + [0x2d9e, 0x2d9e], + [0x2d9f, 0x2d9f], + [0x2da0, 0x2da0], /* ETHIOPIC SYLLABLE SSA */ + [0x2da1, 0x2da1], /* ETHIOPIC SYLLABLE SSU */ + [0x2da2, 0x2da2], /* ETHIOPIC SYLLABLE SSI */ + [0x2da3, 0x2da3], /* ETHIOPIC SYLLABLE SSAA */ + [0x2da4, 0x2da4], /* ETHIOPIC SYLLABLE SSEE */ + [0x2da5, 0x2da5], /* ETHIOPIC SYLLABLE SSE */ + [0x2da6, 0x2da6], /* ETHIOPIC SYLLABLE SSO */ + [0x2da7, 0x2da7], + [0x2da8, 0x2da8], /* ETHIOPIC SYLLABLE CCA */ + [0x2da9, 0x2da9], /* ETHIOPIC SYLLABLE CCU */ + [0x2daa, 0x2daa], /* ETHIOPIC SYLLABLE CCI */ + [0x2dab, 0x2dab], /* ETHIOPIC SYLLABLE CCAA */ + [0x2dac, 0x2dac], /* ETHIOPIC SYLLABLE CCEE */ + [0x2dad, 0x2dad], /* ETHIOPIC SYLLABLE CCE */ + [0x2dae, 0x2dae], /* ETHIOPIC SYLLABLE CCO */ + [0x2daf, 0x2daf], + [0x2db0, 0x2db0], /* ETHIOPIC SYLLABLE ZZA */ + [0x2db1, 0x2db1], /* ETHIOPIC SYLLABLE ZZU */ + [0x2db2, 0x2db2], /* ETHIOPIC SYLLABLE ZZI */ + [0x2db3, 0x2db3], /* ETHIOPIC SYLLABLE ZZAA */ + [0x2db4, 0x2db4], /* ETHIOPIC SYLLABLE ZZEE */ + [0x2db5, 0x2db5], /* ETHIOPIC SYLLABLE ZZE */ + [0x2db6, 0x2db6], /* ETHIOPIC SYLLABLE ZZO */ + [0x2db7, 0x2db7], + [0x2db8, 0x2db8], /* ETHIOPIC SYLLABLE CCHA */ + [0x2db9, 0x2db9], /* ETHIOPIC SYLLABLE CCHU */ + [0x2dba, 0x2dba], /* ETHIOPIC SYLLABLE CCHI */ + [0x2dbb, 0x2dbb], /* ETHIOPIC SYLLABLE CCHAA */ + [0x2dbc, 0x2dbc], /* ETHIOPIC SYLLABLE CCHEE */ + [0x2dbd, 0x2dbd], /* ETHIOPIC SYLLABLE CCHE */ + [0x2dbe, 0x2dbe], /* ETHIOPIC SYLLABLE CCHO */ + [0x2dbf, 0x2dbf], + [0x2dc0, 0x2dc0], /* ETHIOPIC SYLLABLE QYA */ + [0x2dc1, 0x2dc1], /* ETHIOPIC SYLLABLE QYU */ + [0x2dc2, 0x2dc2], /* ETHIOPIC SYLLABLE QYI */ + [0x2dc3, 0x2dc3], /* ETHIOPIC SYLLABLE QYAA */ + [0x2dc4, 0x2dc4], /* ETHIOPIC SYLLABLE QYEE */ + [0x2dc5, 0x2dc5], /* ETHIOPIC SYLLABLE QYE */ + [0x2dc6, 0x2dc6], /* ETHIOPIC SYLLABLE QYO */ + [0x2dc7, 0x2dc7], + [0x2dc8, 0x2dc8], /* ETHIOPIC SYLLABLE KYA */ + [0x2dc9, 0x2dc9], /* ETHIOPIC SYLLABLE KYU */ + [0x2dca, 0x2dca], /* ETHIOPIC SYLLABLE KYI */ + [0x2dcb, 0x2dcb], /* ETHIOPIC SYLLABLE KYAA */ + [0x2dcc, 0x2dcc], /* ETHIOPIC SYLLABLE KYEE */ + [0x2dcd, 0x2dcd], /* ETHIOPIC SYLLABLE KYE */ + [0x2dce, 0x2dce], /* ETHIOPIC SYLLABLE KYO */ + [0x2dcf, 0x2dcf], + [0x2dd0, 0x2dd0], /* ETHIOPIC SYLLABLE XYA */ + [0x2dd1, 0x2dd1], /* ETHIOPIC SYLLABLE XYU */ + [0x2dd2, 0x2dd2], /* ETHIOPIC SYLLABLE XYI */ + [0x2dd3, 0x2dd3], /* ETHIOPIC SYLLABLE XYAA */ + [0x2dd4, 0x2dd4], /* ETHIOPIC SYLLABLE XYEE */ + [0x2dd5, 0x2dd5], /* ETHIOPIC SYLLABLE XYE */ + [0x2dd6, 0x2dd6], /* ETHIOPIC SYLLABLE XYO */ + [0x2dd7, 0x2dd7], + [0x2dd8, 0x2dd8], /* ETHIOPIC SYLLABLE GYA */ + [0x2dd9, 0x2dd9], /* ETHIOPIC SYLLABLE GYU */ + [0x2dda, 0x2dda], /* ETHIOPIC SYLLABLE GYI */ + [0x2ddb, 0x2ddb], /* ETHIOPIC SYLLABLE GYAA */ + [0x2ddc, 0x2ddc], /* ETHIOPIC SYLLABLE GYEE */ + [0x2ddd, 0x2ddd], /* ETHIOPIC SYLLABLE GYE */ + [0x2dde, 0x2dde], /* ETHIOPIC SYLLABLE GYO */ + [0x2ddf, 0x2ddf], + [0x2de0, 0x2de0], /* COMBINING CYRILLIC LETTER BE */ + [0x2de1, 0x2de1], /* COMBINING CYRILLIC LETTER VE */ + [0x2de2, 0x2de2], /* COMBINING CYRILLIC LETTER GHE */ + [0x2de3, 0x2de3], /* COMBINING CYRILLIC LETTER DE */ + [0x2de4, 0x2de4], /* COMBINING CYRILLIC LETTER ZHE */ + [0x2de5, 0x2de5], /* COMBINING CYRILLIC LETTER ZE */ + [0x2de6, 0x2de6], /* COMBINING CYRILLIC LETTER KA */ + [0x2de7, 0x2de7], /* COMBINING CYRILLIC LETTER EL */ + [0x2de8, 0x2de8], /* COMBINING CYRILLIC LETTER EM */ + [0x2de9, 0x2de9], /* COMBINING CYRILLIC LETTER EN */ + [0x2dea, 0x2dea], /* COMBINING CYRILLIC LETTER O */ + [0x2deb, 0x2deb], /* COMBINING CYRILLIC LETTER PE */ + [0x2dec, 0x2dec], /* COMBINING CYRILLIC LETTER ER */ + [0x2ded, 0x2ded], /* COMBINING CYRILLIC LETTER ES */ + [0x2dee, 0x2dee], /* COMBINING CYRILLIC LETTER TE */ + [0x2def, 0x2def], /* COMBINING CYRILLIC LETTER HA */ + [0x2df0, 0x2df0], /* COMBINING CYRILLIC LETTER TSE */ + [0x2df1, 0x2df1], /* COMBINING CYRILLIC LETTER CHE */ + [0x2df2, 0x2df2], /* COMBINING CYRILLIC LETTER SHA */ + [0x2df3, 0x2df3], /* COMBINING CYRILLIC LETTER SHCHA */ + [0x2df4, 0x2df4], /* COMBINING CYRILLIC LETTER FITA */ + [0x2df5, 0x2df5], /* COMBINING CYRILLIC LETTER ES-TE */ + [0x2df6, 0x2df6], /* COMBINING CYRILLIC LETTER A */ + [0x2df7, 0x2df7], /* COMBINING CYRILLIC LETTER IE */ + [0x2df8, 0x2df8], /* COMBINING CYRILLIC LETTER DJERV */ + [0x2df9, 0x2df9], /* COMBINING CYRILLIC LETTER MONOGRAPH UK */ + [0x2dfa, 0x2dfa], /* COMBINING CYRILLIC LETTER YAT */ + [0x2dfb, 0x2dfb], /* COMBINING CYRILLIC LETTER YU */ + [0x2dfc, 0x2dfc], /* COMBINING CYRILLIC LETTER IOTIFIED A */ + [0x2dfd, 0x2dfd], /* COMBINING CYRILLIC LETTER LITTLE YUS */ + [0x2dfe, 0x2dfe], /* COMBINING CYRILLIC LETTER BIG YUS */ + [0x2dff, 0x2dff], /* COMBINING CYRILLIC LETTER IOTIFIED BIG YUS */ + [0x2e00, 0x2e00], /* RIGHT ANGLE SUBSTITUTION MARKER */ + [0x2e01, 0x2e01], /* RIGHT ANGLE DOTTED SUBSTITUTION MARKER */ + [0x2e02, 0x2e02], /* LEFT SUBSTITUTION BRACKET */ + [0x2e03, 0x2e03], /* RIGHT SUBSTITUTION BRACKET */ + [0x2e04, 0x2e04], /* LEFT DOTTED SUBSTITUTION BRACKET */ + [0x2e05, 0x2e05], /* RIGHT DOTTED SUBSTITUTION BRACKET */ + [0x2e06, 0x2e06], /* RAISED INTERPOLATION MARKER */ + [0x2e07, 0x2e07], /* RAISED DOTTED INTERPOLATION MARKER */ + [0x2e08, 0x2e08], /* DOTTED TRANSPOSITION MARKER */ + [0x2e09, 0x2e09], /* LEFT TRANSPOSITION BRACKET */ + [0x2e0a, 0x2e0a], /* RIGHT TRANSPOSITION BRACKET */ + [0x2e0b, 0x2e0b], /* RAISED SQUARE */ + [0x2e0c, 0x2e0c], /* LEFT RAISED OMISSION BRACKET */ + [0x2e0d, 0x2e0d], /* RIGHT RAISED OMISSION BRACKET */ + [0x2e0e, 0x2e0e], /* EDITORIAL CORONIS */ + [0x2e0f, 0x2e0f], /* PARAGRAPHOS */ + [0x2e10, 0x2e10], /* FORKED PARAGRAPHOS */ + [0x2e11, 0x2e11], /* REVERSED FORKED PARAGRAPHOS */ + [0x2e12, 0x2e12], /* HYPODIASTOLE */ + [0x2e13, 0x2e13], /* DOTTED OBELOS */ + [0x2e14, 0x2e14], /* DOWNWARDS ANCORA */ + [0x2e15, 0x2e15], /* UPWARDS ANCORA */ + [0x2e16, 0x2e16], /* DOTTED RIGHT-POINTING ANGLE */ + [0x2e17, 0x2e17], /* DOUBLE OBLIQUE HYPHEN */ + [0x2e18, 0x2e18], /* INVERTED INTERROBANG */ + [0x2e19, 0x2e19], /* PALM BRANCH */ + [0x2e1a, 0x2e1a], /* HYPHEN WITH DIAERESIS */ + [0x2e1b, 0x2e1b], /* TILDE WITH RING ABOVE */ + [0x2e1c, 0x2e1c], /* LEFT LOW PARAPHRASE BRACKET */ + [0x2e1d, 0x2e1d], /* RIGHT LOW PARAPHRASE BRACKET */ + [0x2e1e, 0x2e1e], /* TILDE WITH DOT ABOVE */ + [0x2e1f, 0x2e1f], /* TILDE WITH DOT BELOW */ + [0x2e20, 0x2e20], /* LEFT VERTICAL BAR WITH QUILL */ + [0x2e21, 0x2e21], /* RIGHT VERTICAL BAR WITH QUILL */ + [0x2e22, 0x2e22], /* TOP LEFT HALF BRACKET */ + [0x2e23, 0x2e23], /* TOP RIGHT HALF BRACKET */ + [0x2e24, 0x2e24], /* BOTTOM LEFT HALF BRACKET */ + [0x2e25, 0x2e25], /* BOTTOM RIGHT HALF BRACKET */ + [0x2e26, 0x2e26], /* LEFT SIDEWAYS U BRACKET */ + [0x2e27, 0x2e27], /* RIGHT SIDEWAYS U BRACKET */ + [0x2e28, 0x2e28], /* LEFT DOUBLE PARENTHESIS */ + [0x2e29, 0x2e29], /* RIGHT DOUBLE PARENTHESIS */ + [0x2e2a, 0x2e2a], /* TWO DOTS OVER ONE DOT PUNCTUATION */ + [0x2e2b, 0x2e2b], /* ONE DOT OVER TWO DOTS PUNCTUATION */ + [0x2e2c, 0x2e2c], /* SQUARED FOUR DOT PUNCTUATION */ + [0x2e2d, 0x2e2d], /* FIVE DOT MARK */ + [0x2e2e, 0x2e2e], /* REVERSED QUESTION MARK */ + [0x2e2f, 0x2e2f], /* VERTICAL TILDE */ + [0x2e30, 0x2e30], /* RING POINT */ + [0x2e31, 0x2e31], /* WORD SEPARATOR MIDDLE DOT */ + [0x2e32, 0x2e32], /* TURNED COMMA */ + [0x2e33, 0x2e33], /* RAISED DOT */ + [0x2e34, 0x2e34], /* RAISED COMMA */ + [0x2e35, 0x2e35], /* TURNED SEMICOLON */ + [0x2e36, 0x2e36], /* DAGGER WITH LEFT GUARD */ + [0x2e37, 0x2e37], /* DAGGER WITH RIGHT GUARD */ + [0x2e38, 0x2e38], /* TURNED DAGGER */ + [0x2e39, 0x2e39], /* TOP HALF SECTION SIGN */ + [0x2e3a, 0x2e3a], /* TWO-EM DASH */ + [0x2e3b, 0x2e3b], /* THREE-EM DASH */ + [0x2e3c, 0x2e3c], /* STENOGRAPHIC FULL STOP */ + [0x2e3d, 0x2e3d], /* VERTICAL SIX DOTS */ + [0x2e3e, 0x2e3e], /* WIGGLY VERTICAL LINE */ + [0x2e3f, 0x2e3f], /* CAPITULUM */ + [0x2e40, 0x2e40], /* DOUBLE HYPHEN */ + [0x2e41, 0x2e41], /* REVERSED COMMA */ + [0x2e42, 0x2e42], /* DOUBLE LOW-REVERSED-9 QUOTATION MARK */ + [0x2e43, 0x2e43], /* DASH WITH LEFT UPTURN */ + [0x2e44, 0x2e44], /* DOUBLE SUSPENSION MARK */ + [0x2e45, 0x2e45], + [0x2e46, 0x2e46], + [0x2e47, 0x2e47], + [0x2e48, 0x2e48], + [0x2e49, 0x2e49], + [0x2e4a, 0x2e4a], + [0x2e4b, 0x2e4b], + [0x2e4c, 0x2e4c], + [0x2e4d, 0x2e4d], + [0x2e4e, 0x2e4e], + [0x2e4f, 0x2e4f], + [0x2e50, 0x2e50], + [0x2e51, 0x2e51], + [0x2e52, 0x2e52], + [0x2e53, 0x2e53], + [0x2e54, 0x2e54], + [0x2e55, 0x2e55], + [0x2e56, 0x2e56], + [0x2e57, 0x2e57], + [0x2e58, 0x2e58], + [0x2e59, 0x2e59], + [0x2e5a, 0x2e5a], + [0x2e5b, 0x2e5b], + [0x2e5c, 0x2e5c], + [0x2e5d, 0x2e5d], + [0x2e5e, 0x2e5e], + [0x2e5f, 0x2e5f], + [0x2e60, 0x2e60], + [0x2e61, 0x2e61], + [0x2e62, 0x2e62], + [0x2e63, 0x2e63], + [0x2e64, 0x2e64], + [0x2e65, 0x2e65], + [0x2e66, 0x2e66], + [0x2e67, 0x2e67], + [0x2e68, 0x2e68], + [0x2e69, 0x2e69], + [0x2e6a, 0x2e6a], + [0x2e6b, 0x2e6b], + [0x2e6c, 0x2e6c], + [0x2e6d, 0x2e6d], + [0x2e6e, 0x2e6e], + [0x2e6f, 0x2e6f], + [0x2e70, 0x2e70], + [0x2e71, 0x2e71], + [0x2e72, 0x2e72], + [0x2e73, 0x2e73], + [0x2e74, 0x2e74], + [0x2e75, 0x2e75], + [0x2e76, 0x2e76], + [0x2e77, 0x2e77], + [0x2e78, 0x2e78], + [0x2e79, 0x2e79], + [0x2e7a, 0x2e7a], + [0x2e7b, 0x2e7b], + [0x2e7c, 0x2e7c], + [0x2e7d, 0x2e7d], + [0x2e7e, 0x2e7e], + [0x2e7f, 0x2e7f], + [0x2e80, 0x2e80], /* CJK RADICAL REPEAT */ + [0x2e81, 0x2e81], /* CJK RADICAL CLIFF */ + [0x2e82, 0x2e82], /* CJK RADICAL SECOND ONE */ + [0x2e83, 0x2e83], /* CJK RADICAL SECOND TWO */ + [0x2e84, 0x2e84], /* CJK RADICAL SECOND THREE */ + [0x2e85, 0x2e85], /* CJK RADICAL PERSON */ + [0x2e86, 0x2e86], /* CJK RADICAL BOX */ + [0x2e87, 0x2e87], /* CJK RADICAL TABLE */ + [0x2e88, 0x2e88], /* CJK RADICAL KNIFE ONE */ + [0x2e89, 0x2e89], /* CJK RADICAL KNIFE TWO */ + [0x2e8a, 0x2e8a], /* CJK RADICAL DIVINATION */ + [0x2e8b, 0x2e8b], /* CJK RADICAL SEAL */ + [0x2e8c, 0x2e8c], /* CJK RADICAL SMALL ONE */ + [0x2e8d, 0x2e8d], /* CJK RADICAL SMALL TWO */ + [0x2e8e, 0x2e8e], /* CJK RADICAL LAME ONE */ + [0x2e8f, 0x2e8f], /* CJK RADICAL LAME TWO */ + [0x2e90, 0x2e90], /* CJK RADICAL LAME THREE */ + [0x2e91, 0x2e91], /* CJK RADICAL LAME FOUR */ + [0x2e92, 0x2e92], /* CJK RADICAL SNAKE */ + [0x2e93, 0x2e93], /* CJK RADICAL THREAD */ + [0x2e94, 0x2e94], /* CJK RADICAL SNOUT ONE */ + [0x2e95, 0x2e95], /* CJK RADICAL SNOUT TWO */ + [0x2e96, 0x2e96], /* CJK RADICAL HEART ONE */ + [0x2e97, 0x2e97], /* CJK RADICAL HEART TWO */ + [0x2e98, 0x2e98], /* CJK RADICAL HAND */ + [0x2e99, 0x2e99], /* CJK RADICAL RAP */ + [0x2e9a, 0x2e9a], + [0x2e9b, 0x2e9b], /* CJK RADICAL CHOKE */ + [0x2e9c, 0x2e9c], /* CJK RADICAL SUN */ + [0x2e9d, 0x2e9d], /* CJK RADICAL MOON */ + [0x2e9e, 0x2e9e], /* CJK RADICAL DEATH */ + [0x2e9f, 0x2e9f], /* CJK RADICAL MOTHER */ + [0x2ea0, 0x2ea0], /* CJK RADICAL CIVILIAN */ + [0x2ea1, 0x2ea1], /* CJK RADICAL WATER ONE */ + [0x2ea2, 0x2ea2], /* CJK RADICAL WATER TWO */ + [0x2ea3, 0x2ea3], /* CJK RADICAL FIRE */ + [0x2ea4, 0x2ea4], /* CJK RADICAL PAW ONE */ + [0x2ea5, 0x2ea5], /* CJK RADICAL PAW TWO */ + [0x2ea6, 0x2ea6], /* CJK RADICAL SIMPLIFIED HALF TREE TRUNK */ + [0x2ea7, 0x2ea7], /* CJK RADICAL COW */ + [0x2ea8, 0x2ea8], /* CJK RADICAL DOG */ + [0x2ea9, 0x2ea9], /* CJK RADICAL JADE */ + [0x2eaa, 0x2eaa], /* CJK RADICAL BOLT OF CLOTH */ + [0x2eab, 0x2eab], /* CJK RADICAL EYE */ + [0x2eac, 0x2eac], /* CJK RADICAL SPIRIT ONE */ + [0x2ead, 0x2ead], /* CJK RADICAL SPIRIT TWO */ + [0x2eae, 0x2eae], /* CJK RADICAL BAMBOO */ + [0x2eaf, 0x2eaf], /* CJK RADICAL SILK */ + [0x2eb0, 0x2eb0], /* CJK RADICAL C-SIMPLIFIED SILK */ + [0x2eb1, 0x2eb1], /* CJK RADICAL NET ONE */ + [0x2eb2, 0x2eb2], /* CJK RADICAL NET TWO */ + [0x2eb3, 0x2eb3], /* CJK RADICAL NET THREE */ + [0x2eb4, 0x2eb4], /* CJK RADICAL NET FOUR */ + [0x2eb5, 0x2eb5], /* CJK RADICAL MESH */ + [0x2eb6, 0x2eb6], /* CJK RADICAL SHEEP */ + [0x2eb7, 0x2eb7], /* CJK RADICAL RAM */ + [0x2eb8, 0x2eb8], /* CJK RADICAL EWE */ + [0x2eb9, 0x2eb9], /* CJK RADICAL OLD */ + [0x2eba, 0x2eba], /* CJK RADICAL BRUSH ONE */ + [0x2ebb, 0x2ebb], /* CJK RADICAL BRUSH TWO */ + [0x2ebc, 0x2ebc], /* CJK RADICAL MEAT */ + [0x2ebd, 0x2ebd], /* CJK RADICAL MORTAR */ + [0x2ebe, 0x2ebe], /* CJK RADICAL GRASS ONE */ + [0x2ebf, 0x2ebf], /* CJK RADICAL GRASS TWO */ + [0x2ec0, 0x2ec0], /* CJK RADICAL GRASS THREE */ + [0x2ec1, 0x2ec1], /* CJK RADICAL TIGER */ + [0x2ec2, 0x2ec2], /* CJK RADICAL CLOTHES */ + [0x2ec3, 0x2ec3], /* CJK RADICAL WEST ONE */ + [0x2ec4, 0x2ec4], /* CJK RADICAL WEST TWO */ + [0x2ec5, 0x2ec5], /* CJK RADICAL C-SIMPLIFIED SEE */ + [0x2ec6, 0x2ec6], /* CJK RADICAL SIMPLIFIED HORN */ + [0x2ec7, 0x2ec7], /* CJK RADICAL HORN */ + [0x2ec8, 0x2ec8], /* CJK RADICAL C-SIMPLIFIED SPEECH */ + [0x2ec9, 0x2ec9], /* CJK RADICAL C-SIMPLIFIED SHELL */ + [0x2eca, 0x2eca], /* CJK RADICAL FOOT */ + [0x2ecb, 0x2ecb], /* CJK RADICAL C-SIMPLIFIED CART */ + [0x2ecc, 0x2ecc], /* CJK RADICAL SIMPLIFIED WALK */ + [0x2ecd, 0x2ecd], /* CJK RADICAL WALK ONE */ + [0x2ece, 0x2ece], /* CJK RADICAL WALK TWO */ + [0x2ecf, 0x2ecf], /* CJK RADICAL CITY */ + [0x2ed0, 0x2ed0], /* CJK RADICAL C-SIMPLIFIED GOLD */ + [0x2ed1, 0x2ed1], /* CJK RADICAL LONG ONE */ + [0x2ed2, 0x2ed2], /* CJK RADICAL LONG TWO */ + [0x2ed3, 0x2ed3], /* CJK RADICAL C-SIMPLIFIED LONG */ + [0x2ed4, 0x2ed4], /* CJK RADICAL C-SIMPLIFIED GATE */ + [0x2ed5, 0x2ed5], /* CJK RADICAL MOUND ONE */ + [0x2ed6, 0x2ed6], /* CJK RADICAL MOUND TWO */ + [0x2ed7, 0x2ed7], /* CJK RADICAL RAIN */ + [0x2ed8, 0x2ed8], /* CJK RADICAL BLUE */ + [0x2ed9, 0x2ed9], /* CJK RADICAL C-SIMPLIFIED TANNED LEATHER */ + [0x2eda, 0x2eda], /* CJK RADICAL C-SIMPLIFIED LEAF */ + [0x2edb, 0x2edb], /* CJK RADICAL C-SIMPLIFIED WIND */ + [0x2edc, 0x2edc], /* CJK RADICAL C-SIMPLIFIED FLY */ + [0x2edd, 0x2edd], /* CJK RADICAL EAT ONE */ + [0x2ede, 0x2ede], /* CJK RADICAL EAT TWO */ + [0x2edf, 0x2edf], /* CJK RADICAL EAT THREE */ + [0x2ee0, 0x2ee0], /* CJK RADICAL C-SIMPLIFIED EAT */ + [0x2ee1, 0x2ee1], /* CJK RADICAL HEAD */ + [0x2ee2, 0x2ee2], /* CJK RADICAL C-SIMPLIFIED HORSE */ + [0x2ee3, 0x2ee3], /* CJK RADICAL BONE */ + [0x2ee4, 0x2ee4], /* CJK RADICAL GHOST */ + [0x2ee5, 0x2ee5], /* CJK RADICAL C-SIMPLIFIED FISH */ + [0x2ee6, 0x2ee6], /* CJK RADICAL C-SIMPLIFIED BIRD */ + [0x2ee7, 0x2ee7], /* CJK RADICAL C-SIMPLIFIED SALT */ + [0x2ee8, 0x2ee8], /* CJK RADICAL SIMPLIFIED WHEAT */ + [0x2ee9, 0x2ee9], /* CJK RADICAL SIMPLIFIED YELLOW */ + [0x2eea, 0x2eea], /* CJK RADICAL C-SIMPLIFIED FROG */ + [0x2eeb, 0x2eeb], /* CJK RADICAL J-SIMPLIFIED EVEN */ + [0x2eec, 0x2eec], /* CJK RADICAL C-SIMPLIFIED EVEN */ + [0x2eed, 0x2eed], /* CJK RADICAL J-SIMPLIFIED TOOTH */ + [0x2eee, 0x2eee], /* CJK RADICAL C-SIMPLIFIED TOOTH */ + [0x2eef, 0x2eef], /* CJK RADICAL J-SIMPLIFIED DRAGON */ + [0x2ef0, 0x2ef0], /* CJK RADICAL C-SIMPLIFIED DRAGON */ + [0x2ef1, 0x2ef1], /* CJK RADICAL TURTLE */ + [0x2ef2, 0x2ef2], /* CJK RADICAL J-SIMPLIFIED TURTLE */ + [0x2ef3, 0x2ef3], /* CJK RADICAL C-SIMPLIFIED TURTLE */ + [0x2ef4, 0x2ef4], + [0x2ef5, 0x2ef5], + [0x2ef6, 0x2ef6], + [0x2ef7, 0x2ef7], + [0x2ef8, 0x2ef8], + [0x2ef9, 0x2ef9], + [0x2efa, 0x2efa], + [0x2efb, 0x2efb], + [0x2efc, 0x2efc], + [0x2efd, 0x2efd], + [0x2efe, 0x2efe], + [0x2eff, 0x2eff], + [0x2f00, 0x2f00], /* KANGXI RADICAL ONE */ + [0x2f01, 0x2f01], /* KANGXI RADICAL LINE */ + [0x2f02, 0x2f02], /* KANGXI RADICAL DOT */ + [0x2f03, 0x2f03], /* KANGXI RADICAL SLASH */ + [0x2f04, 0x2f04], /* KANGXI RADICAL SECOND */ + [0x2f05, 0x2f05], /* KANGXI RADICAL HOOK */ + [0x2f06, 0x2f06], /* KANGXI RADICAL TWO */ + [0x2f07, 0x2f07], /* KANGXI RADICAL LID */ + [0x2f08, 0x2f08], /* KANGXI RADICAL MAN */ + [0x2f09, 0x2f09], /* KANGXI RADICAL LEGS */ + [0x2f0a, 0x2f0a], /* KANGXI RADICAL ENTER */ + [0x2f0b, 0x2f0b], /* KANGXI RADICAL EIGHT */ + [0x2f0c, 0x2f0c], /* KANGXI RADICAL DOWN BOX */ + [0x2f0d, 0x2f0d], /* KANGXI RADICAL COVER */ + [0x2f0e, 0x2f0e], /* KANGXI RADICAL ICE */ + [0x2f0f, 0x2f0f], /* KANGXI RADICAL TABLE */ + [0x2f10, 0x2f10], /* KANGXI RADICAL OPEN BOX */ + [0x2f11, 0x2f11], /* KANGXI RADICAL KNIFE */ + [0x2f12, 0x2f12], /* KANGXI RADICAL POWER */ + [0x2f13, 0x2f13], /* KANGXI RADICAL WRAP */ + [0x2f14, 0x2f14], /* KANGXI RADICAL SPOON */ + [0x2f15, 0x2f15], /* KANGXI RADICAL RIGHT OPEN BOX */ + [0x2f16, 0x2f16], /* KANGXI RADICAL HIDING ENCLOSURE */ + [0x2f17, 0x2f17], /* KANGXI RADICAL TEN */ + [0x2f18, 0x2f18], /* KANGXI RADICAL DIVINATION */ + [0x2f19, 0x2f19], /* KANGXI RADICAL SEAL */ + [0x2f1a, 0x2f1a], /* KANGXI RADICAL CLIFF */ + [0x2f1b, 0x2f1b], /* KANGXI RADICAL PRIVATE */ + [0x2f1c, 0x2f1c], /* KANGXI RADICAL AGAIN */ + [0x2f1d, 0x2f1d], /* KANGXI RADICAL MOUTH */ + [0x2f1e, 0x2f1e], /* KANGXI RADICAL ENCLOSURE */ + [0x2f1f, 0x2f1f], /* KANGXI RADICAL EARTH */ + [0x2f20, 0x2f20], /* KANGXI RADICAL SCHOLAR */ + [0x2f21, 0x2f21], /* KANGXI RADICAL GO */ + [0x2f22, 0x2f22], /* KANGXI RADICAL GO SLOWLY */ + [0x2f23, 0x2f23], /* KANGXI RADICAL EVENING */ + [0x2f24, 0x2f24], /* KANGXI RADICAL BIG */ + [0x2f25, 0x2f25], /* KANGXI RADICAL WOMAN */ + [0x2f26, 0x2f26], /* KANGXI RADICAL CHILD */ + [0x2f27, 0x2f27], /* KANGXI RADICAL ROOF */ + [0x2f28, 0x2f28], /* KANGXI RADICAL INCH */ + [0x2f29, 0x2f29], /* KANGXI RADICAL SMALL */ + [0x2f2a, 0x2f2a], /* KANGXI RADICAL LAME */ + [0x2f2b, 0x2f2b], /* KANGXI RADICAL CORPSE */ + [0x2f2c, 0x2f2c], /* KANGXI RADICAL SPROUT */ + [0x2f2d, 0x2f2d], /* KANGXI RADICAL MOUNTAIN */ + [0x2f2e, 0x2f2e], /* KANGXI RADICAL RIVER */ + [0x2f2f, 0x2f2f], /* KANGXI RADICAL WORK */ + [0x2f30, 0x2f30], /* KANGXI RADICAL ONESELF */ + [0x2f31, 0x2f31], /* KANGXI RADICAL TURBAN */ + [0x2f32, 0x2f32], /* KANGXI RADICAL DRY */ + [0x2f33, 0x2f33], /* KANGXI RADICAL SHORT THREAD */ + [0x2f34, 0x2f34], /* KANGXI RADICAL DOTTED CLIFF */ + [0x2f35, 0x2f35], /* KANGXI RADICAL LONG STRIDE */ + [0x2f36, 0x2f36], /* KANGXI RADICAL TWO HANDS */ + [0x2f37, 0x2f37], /* KANGXI RADICAL SHOOT */ + [0x2f38, 0x2f38], /* KANGXI RADICAL BOW */ + [0x2f39, 0x2f39], /* KANGXI RADICAL SNOUT */ + [0x2f3a, 0x2f3a], /* KANGXI RADICAL BRISTLE */ + [0x2f3b, 0x2f3b], /* KANGXI RADICAL STEP */ + [0x2f3c, 0x2f3c], /* KANGXI RADICAL HEART */ + [0x2f3d, 0x2f3d], /* KANGXI RADICAL HALBERD */ + [0x2f3e, 0x2f3e], /* KANGXI RADICAL DOOR */ + [0x2f3f, 0x2f3f], /* KANGXI RADICAL HAND */ + [0x2f40, 0x2f40], /* KANGXI RADICAL BRANCH */ + [0x2f41, 0x2f41], /* KANGXI RADICAL RAP */ + [0x2f42, 0x2f42], /* KANGXI RADICAL SCRIPT */ + [0x2f43, 0x2f43], /* KANGXI RADICAL DIPPER */ + [0x2f44, 0x2f44], /* KANGXI RADICAL AXE */ + [0x2f45, 0x2f45], /* KANGXI RADICAL SQUARE */ + [0x2f46, 0x2f46], /* KANGXI RADICAL NOT */ + [0x2f47, 0x2f47], /* KANGXI RADICAL SUN */ + [0x2f48, 0x2f48], /* KANGXI RADICAL SAY */ + [0x2f49, 0x2f49], /* KANGXI RADICAL MOON */ + [0x2f4a, 0x2f4a], /* KANGXI RADICAL TREE */ + [0x2f4b, 0x2f4b], /* KANGXI RADICAL LACK */ + [0x2f4c, 0x2f4c], /* KANGXI RADICAL STOP */ + [0x2f4d, 0x2f4d], /* KANGXI RADICAL DEATH */ + [0x2f4e, 0x2f4e], /* KANGXI RADICAL WEAPON */ + [0x2f4f, 0x2f4f], /* KANGXI RADICAL DO NOT */ + [0x2f50, 0x2f50], /* KANGXI RADICAL COMPARE */ + [0x2f51, 0x2f51], /* KANGXI RADICAL FUR */ + [0x2f52, 0x2f52], /* KANGXI RADICAL CLAN */ + [0x2f53, 0x2f53], /* KANGXI RADICAL STEAM */ + [0x2f54, 0x2f54], /* KANGXI RADICAL WATER */ + [0x2f55, 0x2f55], /* KANGXI RADICAL FIRE */ + [0x2f56, 0x2f56], /* KANGXI RADICAL CLAW */ + [0x2f57, 0x2f57], /* KANGXI RADICAL FATHER */ + [0x2f58, 0x2f58], /* KANGXI RADICAL DOUBLE X */ + [0x2f59, 0x2f59], /* KANGXI RADICAL HALF TREE TRUNK */ + [0x2f5a, 0x2f5a], /* KANGXI RADICAL SLICE */ + [0x2f5b, 0x2f5b], /* KANGXI RADICAL FANG */ + [0x2f5c, 0x2f5c], /* KANGXI RADICAL COW */ + [0x2f5d, 0x2f5d], /* KANGXI RADICAL DOG */ + [0x2f5e, 0x2f5e], /* KANGXI RADICAL PROFOUND */ + [0x2f5f, 0x2f5f], /* KANGXI RADICAL JADE */ + [0x2f60, 0x2f60], /* KANGXI RADICAL MELON */ + [0x2f61, 0x2f61], /* KANGXI RADICAL TILE */ + [0x2f62, 0x2f62], /* KANGXI RADICAL SWEET */ + [0x2f63, 0x2f63], /* KANGXI RADICAL LIFE */ + [0x2f64, 0x2f64], /* KANGXI RADICAL USE */ + [0x2f65, 0x2f65], /* KANGXI RADICAL FIELD */ + [0x2f66, 0x2f66], /* KANGXI RADICAL BOLT OF CLOTH */ + [0x2f67, 0x2f67], /* KANGXI RADICAL SICKNESS */ + [0x2f68, 0x2f68], /* KANGXI RADICAL DOTTED TENT */ + [0x2f69, 0x2f69], /* KANGXI RADICAL WHITE */ + [0x2f6a, 0x2f6a], /* KANGXI RADICAL SKIN */ + [0x2f6b, 0x2f6b], /* KANGXI RADICAL DISH */ + [0x2f6c, 0x2f6c], /* KANGXI RADICAL EYE */ + [0x2f6d, 0x2f6d], /* KANGXI RADICAL SPEAR */ + [0x2f6e, 0x2f6e], /* KANGXI RADICAL ARROW */ + [0x2f6f, 0x2f6f], /* KANGXI RADICAL STONE */ + [0x2f70, 0x2f70], /* KANGXI RADICAL SPIRIT */ + [0x2f71, 0x2f71], /* KANGXI RADICAL TRACK */ + [0x2f72, 0x2f72], /* KANGXI RADICAL GRAIN */ + [0x2f73, 0x2f73], /* KANGXI RADICAL CAVE */ + [0x2f74, 0x2f74], /* KANGXI RADICAL STAND */ + [0x2f75, 0x2f75], /* KANGXI RADICAL BAMBOO */ + [0x2f76, 0x2f76], /* KANGXI RADICAL RICE */ + [0x2f77, 0x2f77], /* KANGXI RADICAL SILK */ + [0x2f78, 0x2f78], /* KANGXI RADICAL JAR */ + [0x2f79, 0x2f79], /* KANGXI RADICAL NET */ + [0x2f7a, 0x2f7a], /* KANGXI RADICAL SHEEP */ + [0x2f7b, 0x2f7b], /* KANGXI RADICAL FEATHER */ + [0x2f7c, 0x2f7c], /* KANGXI RADICAL OLD */ + [0x2f7d, 0x2f7d], /* KANGXI RADICAL AND */ + [0x2f7e, 0x2f7e], /* KANGXI RADICAL PLOW */ + [0x2f7f, 0x2f7f], /* KANGXI RADICAL EAR */ + [0x2f80, 0x2f80], /* KANGXI RADICAL BRUSH */ + [0x2f81, 0x2f81], /* KANGXI RADICAL MEAT */ + [0x2f82, 0x2f82], /* KANGXI RADICAL MINISTER */ + [0x2f83, 0x2f83], /* KANGXI RADICAL SELF */ + [0x2f84, 0x2f84], /* KANGXI RADICAL ARRIVE */ + [0x2f85, 0x2f85], /* KANGXI RADICAL MORTAR */ + [0x2f86, 0x2f86], /* KANGXI RADICAL TONGUE */ + [0x2f87, 0x2f87], /* KANGXI RADICAL OPPOSE */ + [0x2f88, 0x2f88], /* KANGXI RADICAL BOAT */ + [0x2f89, 0x2f89], /* KANGXI RADICAL STOPPING */ + [0x2f8a, 0x2f8a], /* KANGXI RADICAL COLOR */ + [0x2f8b, 0x2f8b], /* KANGXI RADICAL GRASS */ + [0x2f8c, 0x2f8c], /* KANGXI RADICAL TIGER */ + [0x2f8d, 0x2f8d], /* KANGXI RADICAL INSECT */ + [0x2f8e, 0x2f8e], /* KANGXI RADICAL BLOOD */ + [0x2f8f, 0x2f8f], /* KANGXI RADICAL WALK ENCLOSURE */ + [0x2f90, 0x2f90], /* KANGXI RADICAL CLOTHES */ + [0x2f91, 0x2f91], /* KANGXI RADICAL WEST */ + [0x2f92, 0x2f92], /* KANGXI RADICAL SEE */ + [0x2f93, 0x2f93], /* KANGXI RADICAL HORN */ + [0x2f94, 0x2f94], /* KANGXI RADICAL SPEECH */ + [0x2f95, 0x2f95], /* KANGXI RADICAL VALLEY */ + [0x2f96, 0x2f96], /* KANGXI RADICAL BEAN */ + [0x2f97, 0x2f97], /* KANGXI RADICAL PIG */ + [0x2f98, 0x2f98], /* KANGXI RADICAL BADGER */ + [0x2f99, 0x2f99], /* KANGXI RADICAL SHELL */ + [0x2f9a, 0x2f9a], /* KANGXI RADICAL RED */ + [0x2f9b, 0x2f9b], /* KANGXI RADICAL RUN */ + [0x2f9c, 0x2f9c], /* KANGXI RADICAL FOOT */ + [0x2f9d, 0x2f9d], /* KANGXI RADICAL BODY */ + [0x2f9e, 0x2f9e], /* KANGXI RADICAL CART */ + [0x2f9f, 0x2f9f], /* KANGXI RADICAL BITTER */ + [0x2fa0, 0x2fa0], /* KANGXI RADICAL MORNING */ + [0x2fa1, 0x2fa1], /* KANGXI RADICAL WALK */ + [0x2fa2, 0x2fa2], /* KANGXI RADICAL CITY */ + [0x2fa3, 0x2fa3], /* KANGXI RADICAL WINE */ + [0x2fa4, 0x2fa4], /* KANGXI RADICAL DISTINGUISH */ + [0x2fa5, 0x2fa5], /* KANGXI RADICAL VILLAGE */ + [0x2fa6, 0x2fa6], /* KANGXI RADICAL GOLD */ + [0x2fa7, 0x2fa7], /* KANGXI RADICAL LONG */ + [0x2fa8, 0x2fa8], /* KANGXI RADICAL GATE */ + [0x2fa9, 0x2fa9], /* KANGXI RADICAL MOUND */ + [0x2faa, 0x2faa], /* KANGXI RADICAL SLAVE */ + [0x2fab, 0x2fab], /* KANGXI RADICAL SHORT TAILED BIRD */ + [0x2fac, 0x2fac], /* KANGXI RADICAL RAIN */ + [0x2fad, 0x2fad], /* KANGXI RADICAL BLUE */ + [0x2fae, 0x2fae], /* KANGXI RADICAL WRONG */ + [0x2faf, 0x2faf], /* KANGXI RADICAL FACE */ + [0x2fb0, 0x2fb0], /* KANGXI RADICAL LEATHER */ + [0x2fb1, 0x2fb1], /* KANGXI RADICAL TANNED LEATHER */ + [0x2fb2, 0x2fb2], /* KANGXI RADICAL LEEK */ + [0x2fb3, 0x2fb3], /* KANGXI RADICAL SOUND */ + [0x2fb4, 0x2fb4], /* KANGXI RADICAL LEAF */ + [0x2fb5, 0x2fb5], /* KANGXI RADICAL WIND */ + [0x2fb6, 0x2fb6], /* KANGXI RADICAL FLY */ + [0x2fb7, 0x2fb7], /* KANGXI RADICAL EAT */ + [0x2fb8, 0x2fb8], /* KANGXI RADICAL HEAD */ + [0x2fb9, 0x2fb9], /* KANGXI RADICAL FRAGRANT */ + [0x2fba, 0x2fba], /* KANGXI RADICAL HORSE */ + [0x2fbb, 0x2fbb], /* KANGXI RADICAL BONE */ + [0x2fbc, 0x2fbc], /* KANGXI RADICAL TALL */ + [0x2fbd, 0x2fbd], /* KANGXI RADICAL HAIR */ + [0x2fbe, 0x2fbe], /* KANGXI RADICAL FIGHT */ + [0x2fbf, 0x2fbf], /* KANGXI RADICAL SACRIFICIAL WINE */ + [0x2fc0, 0x2fc0], /* KANGXI RADICAL CAULDRON */ + [0x2fc1, 0x2fc1], /* KANGXI RADICAL GHOST */ + [0x2fc2, 0x2fc2], /* KANGXI RADICAL FISH */ + [0x2fc3, 0x2fc3], /* KANGXI RADICAL BIRD */ + [0x2fc4, 0x2fc4], /* KANGXI RADICAL SALT */ + [0x2fc5, 0x2fc5], /* KANGXI RADICAL DEER */ + [0x2fc6, 0x2fc6], /* KANGXI RADICAL WHEAT */ + [0x2fc7, 0x2fc7], /* KANGXI RADICAL HEMP */ + [0x2fc8, 0x2fc8], /* KANGXI RADICAL YELLOW */ + [0x2fc9, 0x2fc9], /* KANGXI RADICAL MILLET */ + [0x2fca, 0x2fca], /* KANGXI RADICAL BLACK */ + [0x2fcb, 0x2fcb], /* KANGXI RADICAL EMBROIDERY */ + [0x2fcc, 0x2fcc], /* KANGXI RADICAL FROG */ + [0x2fcd, 0x2fcd], /* KANGXI RADICAL TRIPOD */ + [0x2fce, 0x2fce], /* KANGXI RADICAL DRUM */ + [0x2fcf, 0x2fcf], /* KANGXI RADICAL RAT */ + [0x2fd0, 0x2fd0], /* KANGXI RADICAL NOSE */ + [0x2fd1, 0x2fd1], /* KANGXI RADICAL EVEN */ + [0x2fd2, 0x2fd2], /* KANGXI RADICAL TOOTH */ + [0x2fd3, 0x2fd3], /* KANGXI RADICAL DRAGON */ + [0x2fd4, 0x2fd4], /* KANGXI RADICAL TURTLE */ + [0x2fd5, 0x2fd5], /* KANGXI RADICAL FLUTE */ + [0x2fd6, 0x2fd6], + [0x2fd7, 0x2fd7], + [0x2fd8, 0x2fd8], + [0x2fd9, 0x2fd9], + [0x2fda, 0x2fda], + [0x2fdb, 0x2fdb], + [0x2fdc, 0x2fdc], + [0x2fdd, 0x2fdd], + [0x2fde, 0x2fde], + [0x2fdf, 0x2fdf], + [0x2fe0, 0x2fe0], + [0x2fe1, 0x2fe1], + [0x2fe2, 0x2fe2], + [0x2fe3, 0x2fe3], + [0x2fe4, 0x2fe4], + [0x2fe5, 0x2fe5], + [0x2fe6, 0x2fe6], + [0x2fe7, 0x2fe7], + [0x2fe8, 0x2fe8], + [0x2fe9, 0x2fe9], + [0x2fea, 0x2fea], + [0x2feb, 0x2feb], + [0x2fec, 0x2fec], + [0x2fed, 0x2fed], + [0x2fee, 0x2fee], + [0x2fef, 0x2fef], + [0x2ff0, 0x2ff0], /* IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT */ + [0x2ff1, 0x2ff1], /* IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO BELOW */ + [0x2ff2, 0x2ff2], /* IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO MIDDLE AND RIGHT */ + [0x2ff3, 0x2ff3], /* IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO MIDDLE AND BELOW */ + [0x2ff4, 0x2ff4], /* IDEOGRAPHIC DESCRIPTION CHARACTER FULL SURROUND */ + [0x2ff5, 0x2ff5], /* IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM ABOVE */ + [0x2ff6, 0x2ff6], /* IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM BELOW */ + [0x2ff7, 0x2ff7], /* IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LEFT */ + [0x2ff8, 0x2ff8], /* IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER LEFT */ + [0x2ff9, 0x2ff9], /* IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER RIGHT */ + [0x2ffa, 0x2ffa], /* IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LOWER LEFT */ + [0x2ffb, 0x2ffb], /* IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID */ + [0x2ffc, 0x2ffc], + [0x2ffd, 0x2ffd], + [0x2ffe, 0x2ffe], + [0x2fff, 0x2fff], + [0x3000, 0x3000], /* IDEOGRAPHIC SPACE */ + [0x3001, 0x3001], /* IDEOGRAPHIC COMMA */ + [0x3002, 0x3002], /* IDEOGRAPHIC FULL STOP (IDEOGRAPHIC PERIOD) */ + [0x3003, 0x3003], /* DITTO MARK */ + [0x3004, 0x3004], /* JAPANESE INDUSTRIAL STANDARD SYMBOL */ + [0x3005, 0x3005], /* IDEOGRAPHIC ITERATION MARK */ + [0x3006, 0x3006], /* IDEOGRAPHIC CLOSING MARK */ + [0x3007, 0x3007], /* IDEOGRAPHIC NUMBER ZERO */ + [0x3008, 0x3008], /* LEFT ANGLE BRACKET (OPENING ANGLE BRACKET) */ + [0x3009, 0x3009], /* RIGHT ANGLE BRACKET (CLOSING ANGLE BRACKET) */ + [0x300a, 0x300a], /* LEFT DOUBLE ANGLE BRACKET (OPENING DOUBLE ANGLE BRACKET) */ + [0x300b, 0x300b], /* RIGHT DOUBLE ANGLE BRACKET (CLOSING DOUBLE ANGLE BRACKET) */ + [0x300c, 0x300c], /* LEFT CORNER BRACKET (OPENING CORNER BRACKET) */ + [0x300d, 0x300d], /* RIGHT CORNER BRACKET (CLOSING CORNER BRACKET) */ + [0x300e, 0x300e], /* LEFT WHITE CORNER BRACKET (OPENING WHITE CORNER BRACKET) */ + [0x300f, 0x300f], /* RIGHT WHITE CORNER BRACKET (CLOSING WHITE CORNER BRACKET) */ + [0x3010, 0x3010], /* LEFT BLACK LENTICULAR BRACKET (OPENING BLACK LENTICULAR BRACKET) */ + [0x3011, 0x3011], /* RIGHT BLACK LENTICULAR BRACKET (CLOSING BLACK LENTICULAR BRACKET) */ + [0x3012, 0x3012], /* POSTAL MARK */ + [0x3013, 0x3013], /* GETA MARK */ + [0x3014, 0x3014], /* LEFT TORTOISE SHELL BRACKET (OPENING TORTOISE SHELL BRACKET) */ + [0x3015, 0x3015], /* RIGHT TORTOISE SHELL BRACKET (CLOSING TORTOISE SHELL BRACKET) */ + [0x3016, 0x3016], /* LEFT WHITE LENTICULAR BRACKET (OPENING WHITE LENTICULAR BRACKET) */ + [0x3017, 0x3017], /* RIGHT WHITE LENTICULAR BRACKET (CLOSING WHITE LENTICULAR BRACKET) */ + [0x3018, 0x3018], /* LEFT WHITE TORTOISE SHELL BRACKET (OPENING WHITE TORTOISE SHELL BRACKET) */ + [0x3019, 0x3019], /* RIGHT WHITE TORTOISE SHELL BRACKET (CLOSING WHITE TORTOISE SHELL BRACKET) */ + [0x301a, 0x301a], /* LEFT WHITE SQUARE BRACKET (OPENING WHITE SQUARE BRACKET) */ + [0x301b, 0x301b], /* RIGHT WHITE SQUARE BRACKET (CLOSING WHITE SQUARE BRACKET) */ + [0x301c, 0x301c], /* WAVE DASH */ + [0x301d, 0x301d], /* REVERSED DOUBLE PRIME QUOTATION MARK */ + [0x301e, 0x301e], /* DOUBLE PRIME QUOTATION MARK */ + [0x301f, 0x301f], /* LOW DOUBLE PRIME QUOTATION MARK */ + [0x3020, 0x3020], /* POSTAL MARK FACE */ + [0x3021, 0x3021], /* HANGZHOU NUMERAL ONE */ + [0x3022, 0x3022], /* HANGZHOU NUMERAL TWO */ + [0x3023, 0x3023], /* HANGZHOU NUMERAL THREE */ + [0x3024, 0x3024], /* HANGZHOU NUMERAL FOUR */ + [0x3025, 0x3025], /* HANGZHOU NUMERAL FIVE */ + [0x3026, 0x3026], /* HANGZHOU NUMERAL SIX */ + [0x3027, 0x3027], /* HANGZHOU NUMERAL SEVEN */ + [0x3028, 0x3028], /* HANGZHOU NUMERAL EIGHT */ + [0x3029, 0x3029], /* HANGZHOU NUMERAL NINE */ + [0x302a, 0x302a], /* IDEOGRAPHIC LEVEL TONE MARK */ + [0x302b, 0x302b], /* IDEOGRAPHIC RISING TONE MARK */ + [0x302c, 0x302c], /* IDEOGRAPHIC DEPARTING TONE MARK */ + [0x302d, 0x302d], /* IDEOGRAPHIC ENTERING TONE MARK */ + [0x302e, 0x302e], /* HANGUL SINGLE DOT TONE MARK */ + [0x302f, 0x302f], /* HANGUL DOUBLE DOT TONE MARK */ + [0x3030, 0x3030], /* WAVY DASH */ + [0x3031, 0x3031], /* VERTICAL KANA REPEAT MARK */ + [0x3032, 0x3032], /* VERTICAL KANA REPEAT WITH VOICED SOUND MARK */ + [0x3033, 0x3033], /* VERTICAL KANA REPEAT MARK UPPER HALF */ + [0x3034, 0x3034], /* VERTICAL KANA REPEAT WITH VOICED SOUND MARK UPPER HALF */ + [0x3035, 0x3035], /* VERTICAL KANA REPEAT MARK LOWER HALF */ + [0x3036, 0x3036], /* CIRCLED POSTAL MARK */ + [0x3037, 0x3037], /* IDEOGRAPHIC TELEGRAPH LINE FEED SEPARATOR SYMBOL */ + [0x3038, 0x3038], /* HANGZHOU NUMERAL TEN */ + [0x3039, 0x3039], /* HANGZHOU NUMERAL TWENTY */ + [0x303a, 0x303a], /* HANGZHOU NUMERAL THIRTY */ + [0x303b, 0x303b], /* VERTICAL IDEOGRAPHIC ITERATION MARK */ + [0x303c, 0x303c], /* MASU MARK */ + [0x303d, 0x303d], /* PART ALTERNATION MARK */ + [0x303e, 0x303e], /* IDEOGRAPHIC VARIATION INDICATOR */ + [0x303f, 0x303f], /* IDEOGRAPHIC HALF FILL SPACE */ + [0x3040, 0x3040], + [0x3041, 0x3041], /* HIRAGANA LETTER SMALL A */ + [0x3042, 0x3042], /* HIRAGANA LETTER A */ + [0x3043, 0x3043], /* HIRAGANA LETTER SMALL I */ + [0x3044, 0x3044], /* HIRAGANA LETTER I */ + [0x3045, 0x3045], /* HIRAGANA LETTER SMALL U */ + [0x3046, 0x3046], /* HIRAGANA LETTER U */ + [0x3047, 0x3047], /* HIRAGANA LETTER SMALL E */ + [0x3048, 0x3048], /* HIRAGANA LETTER E */ + [0x3049, 0x3049], /* HIRAGANA LETTER SMALL O */ + [0x304a, 0x304a], /* HIRAGANA LETTER O */ + [0x304b, 0x304b], /* HIRAGANA LETTER KA */ + [0x304c, 0x304c], /* HIRAGANA LETTER GA */ + [0x304d, 0x304d], /* HIRAGANA LETTER KI */ + [0x304e, 0x304e], /* HIRAGANA LETTER GI */ + [0x304f, 0x304f], /* HIRAGANA LETTER KU */ + [0x3050, 0x3050], /* HIRAGANA LETTER GU */ + [0x3051, 0x3051], /* HIRAGANA LETTER KE */ + [0x3052, 0x3052], /* HIRAGANA LETTER GE */ + [0x3053, 0x3053], /* HIRAGANA LETTER KO */ + [0x3054, 0x3054], /* HIRAGANA LETTER GO */ + [0x3055, 0x3055], /* HIRAGANA LETTER SA */ + [0x3056, 0x3056], /* HIRAGANA LETTER ZA */ + [0x3057, 0x3057], /* HIRAGANA LETTER SI */ + [0x3058, 0x3058], /* HIRAGANA LETTER ZI */ + [0x3059, 0x3059], /* HIRAGANA LETTER SU */ + [0x305a, 0x305a], /* HIRAGANA LETTER ZU */ + [0x305b, 0x305b], /* HIRAGANA LETTER SE */ + [0x305c, 0x305c], /* HIRAGANA LETTER ZE */ + [0x305d, 0x305d], /* HIRAGANA LETTER SO */ + [0x305e, 0x305e], /* HIRAGANA LETTER ZO */ + [0x305f, 0x305f], /* HIRAGANA LETTER TA */ + [0x3060, 0x3060], /* HIRAGANA LETTER DA */ + [0x3061, 0x3061], /* HIRAGANA LETTER TI */ + [0x3062, 0x3062], /* HIRAGANA LETTER DI */ + [0x3063, 0x3063], /* HIRAGANA LETTER SMALL TU */ + [0x3064, 0x3064], /* HIRAGANA LETTER TU */ + [0x3065, 0x3065], /* HIRAGANA LETTER DU */ + [0x3066, 0x3066], /* HIRAGANA LETTER TE */ + [0x3067, 0x3067], /* HIRAGANA LETTER DE */ + [0x3068, 0x3068], /* HIRAGANA LETTER TO */ + [0x3069, 0x3069], /* HIRAGANA LETTER DO */ + [0x306a, 0x306a], /* HIRAGANA LETTER NA */ + [0x306b, 0x306b], /* HIRAGANA LETTER NI */ + [0x306c, 0x306c], /* HIRAGANA LETTER NU */ + [0x306d, 0x306d], /* HIRAGANA LETTER NE */ + [0x306e, 0x306e], /* HIRAGANA LETTER NO */ + [0x306f, 0x306f], /* HIRAGANA LETTER HA */ + [0x3070, 0x3070], /* HIRAGANA LETTER BA */ + [0x3071, 0x3071], /* HIRAGANA LETTER PA */ + [0x3072, 0x3072], /* HIRAGANA LETTER HI */ + [0x3073, 0x3073], /* HIRAGANA LETTER BI */ + [0x3074, 0x3074], /* HIRAGANA LETTER PI */ + [0x3075, 0x3075], /* HIRAGANA LETTER HU */ + [0x3076, 0x3076], /* HIRAGANA LETTER BU */ + [0x3077, 0x3077], /* HIRAGANA LETTER PU */ + [0x3078, 0x3078], /* HIRAGANA LETTER HE */ + [0x3079, 0x3079], /* HIRAGANA LETTER BE */ + [0x307a, 0x307a], /* HIRAGANA LETTER PE */ + [0x307b, 0x307b], /* HIRAGANA LETTER HO */ + [0x307c, 0x307c], /* HIRAGANA LETTER BO */ + [0x307d, 0x307d], /* HIRAGANA LETTER PO */ + [0x307e, 0x307e], /* HIRAGANA LETTER MA */ + [0x307f, 0x307f], /* HIRAGANA LETTER MI */ + [0x3080, 0x3080], /* HIRAGANA LETTER MU */ + [0x3081, 0x3081], /* HIRAGANA LETTER ME */ + [0x3082, 0x3082], /* HIRAGANA LETTER MO */ + [0x3083, 0x3083], /* HIRAGANA LETTER SMALL YA */ + [0x3084, 0x3084], /* HIRAGANA LETTER YA */ + [0x3085, 0x3085], /* HIRAGANA LETTER SMALL YU */ + [0x3086, 0x3086], /* HIRAGANA LETTER YU */ + [0x3087, 0x3087], /* HIRAGANA LETTER SMALL YO */ + [0x3088, 0x3088], /* HIRAGANA LETTER YO */ + [0x3089, 0x3089], /* HIRAGANA LETTER RA */ + [0x308a, 0x308a], /* HIRAGANA LETTER RI */ + [0x308b, 0x308b], /* HIRAGANA LETTER RU */ + [0x308c, 0x308c], /* HIRAGANA LETTER RE */ + [0x308d, 0x308d], /* HIRAGANA LETTER RO */ + [0x308e, 0x308e], /* HIRAGANA LETTER SMALL WA */ + [0x308f, 0x308f], /* HIRAGANA LETTER WA */ + [0x3090, 0x3090], /* HIRAGANA LETTER WI */ + [0x3091, 0x3091], /* HIRAGANA LETTER WE */ + [0x3092, 0x3092], /* HIRAGANA LETTER WO */ + [0x3093, 0x3093], /* HIRAGANA LETTER N */ + [0x3094, 0x3094], /* HIRAGANA LETTER VU */ + [0x3095, 0x3095], /* HIRAGANA LETTER SMALL KA */ + [0x3096, 0x3096], /* HIRAGANA LETTER SMALL KE */ + [0x3097, 0x3097], + [0x3098, 0x3098], + [0x3099, 0x3099], /* COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK (NON-SPACING KATAKANA-HIRAGANA VOICED SOUND MARK) */ + [0x309a, 0x309a], /* COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK (NON-SPACING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK) */ + [0x309b, 0x309b], /* KATAKANA-HIRAGANA VOICED SOUND MARK */ + [0x309c, 0x309c], /* KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK */ + [0x309d, 0x309d], /* HIRAGANA ITERATION MARK */ + [0x309e, 0x309e], /* HIRAGANA VOICED ITERATION MARK */ + [0x309f, 0x309f], /* HIRAGANA DIGRAPH YORI */ + [0x30a0, 0x30a0], /* KATAKANA-HIRAGANA DOUBLE HYPHEN */ + [0x30a1, 0x30a1], /* KATAKANA LETTER SMALL A */ + [0x30a2, 0x30a2], /* KATAKANA LETTER A */ + [0x30a3, 0x30a3], /* KATAKANA LETTER SMALL I */ + [0x30a4, 0x30a4], /* KATAKANA LETTER I */ + [0x30a5, 0x30a5], /* KATAKANA LETTER SMALL U */ + [0x30a6, 0x30a6], /* KATAKANA LETTER U */ + [0x30a7, 0x30a7], /* KATAKANA LETTER SMALL E */ + [0x30a8, 0x30a8], /* KATAKANA LETTER E */ + [0x30a9, 0x30a9], /* KATAKANA LETTER SMALL O */ + [0x30aa, 0x30aa], /* KATAKANA LETTER O */ + [0x30ab, 0x30ab], /* KATAKANA LETTER KA */ + [0x30ac, 0x30ac], /* KATAKANA LETTER GA */ + [0x30ad, 0x30ad], /* KATAKANA LETTER KI */ + [0x30ae, 0x30ae], /* KATAKANA LETTER GI */ + [0x30af, 0x30af], /* KATAKANA LETTER KU */ + [0x30b0, 0x30b0], /* KATAKANA LETTER GU */ + [0x30b1, 0x30b1], /* KATAKANA LETTER KE */ + [0x30b2, 0x30b2], /* KATAKANA LETTER GE */ + [0x30b3, 0x30b3], /* KATAKANA LETTER KO */ + [0x30b4, 0x30b4], /* KATAKANA LETTER GO */ + [0x30b5, 0x30b5], /* KATAKANA LETTER SA */ + [0x30b6, 0x30b6], /* KATAKANA LETTER ZA */ + [0x30b7, 0x30b7], /* KATAKANA LETTER SI */ + [0x30b8, 0x30b8], /* KATAKANA LETTER ZI */ + [0x30b9, 0x30b9], /* KATAKANA LETTER SU */ + [0x30ba, 0x30ba], /* KATAKANA LETTER ZU */ + [0x30bb, 0x30bb], /* KATAKANA LETTER SE */ + [0x30bc, 0x30bc], /* KATAKANA LETTER ZE */ + [0x30bd, 0x30bd], /* KATAKANA LETTER SO */ + [0x30be, 0x30be], /* KATAKANA LETTER ZO */ + [0x30bf, 0x30bf], /* KATAKANA LETTER TA */ + [0x30c0, 0x30c0], /* KATAKANA LETTER DA */ + [0x30c1, 0x30c1], /* KATAKANA LETTER TI */ + [0x30c2, 0x30c2], /* KATAKANA LETTER DI */ + [0x30c3, 0x30c3], /* KATAKANA LETTER SMALL TU */ + [0x30c4, 0x30c4], /* KATAKANA LETTER TU */ + [0x30c5, 0x30c5], /* KATAKANA LETTER DU */ + [0x30c6, 0x30c6], /* KATAKANA LETTER TE */ + [0x30c7, 0x30c7], /* KATAKANA LETTER DE */ + [0x30c8, 0x30c8], /* KATAKANA LETTER TO */ + [0x30c9, 0x30c9], /* KATAKANA LETTER DO */ + [0x30ca, 0x30ca], /* KATAKANA LETTER NA */ + [0x30cb, 0x30cb], /* KATAKANA LETTER NI */ + [0x30cc, 0x30cc], /* KATAKANA LETTER NU */ + [0x30cd, 0x30cd], /* KATAKANA LETTER NE */ + [0x30ce, 0x30ce], /* KATAKANA LETTER NO */ + [0x30cf, 0x30cf], /* KATAKANA LETTER HA */ + [0x30d0, 0x30d0], /* KATAKANA LETTER BA */ + [0x30d1, 0x30d1], /* KATAKANA LETTER PA */ + [0x30d2, 0x30d2], /* KATAKANA LETTER HI */ + [0x30d3, 0x30d3], /* KATAKANA LETTER BI */ + [0x30d4, 0x30d4], /* KATAKANA LETTER PI */ + [0x30d5, 0x30d5], /* KATAKANA LETTER HU */ + [0x30d6, 0x30d6], /* KATAKANA LETTER BU */ + [0x30d7, 0x30d7], /* KATAKANA LETTER PU */ + [0x30d8, 0x30d8], /* KATAKANA LETTER HE */ + [0x30d9, 0x30d9], /* KATAKANA LETTER BE */ + [0x30da, 0x30da], /* KATAKANA LETTER PE */ + [0x30db, 0x30db], /* KATAKANA LETTER HO */ + [0x30dc, 0x30dc], /* KATAKANA LETTER BO */ + [0x30dd, 0x30dd], /* KATAKANA LETTER PO */ + [0x30de, 0x30de], /* KATAKANA LETTER MA */ + [0x30df, 0x30df], /* KATAKANA LETTER MI */ + [0x30e0, 0x30e0], /* KATAKANA LETTER MU */ + [0x30e1, 0x30e1], /* KATAKANA LETTER ME */ + [0x30e2, 0x30e2], /* KATAKANA LETTER MO */ + [0x30e3, 0x30e3], /* KATAKANA LETTER SMALL YA */ + [0x30e4, 0x30e4], /* KATAKANA LETTER YA */ + [0x30e5, 0x30e5], /* KATAKANA LETTER SMALL YU */ + [0x30e6, 0x30e6], /* KATAKANA LETTER YU */ + [0x30e7, 0x30e7], /* KATAKANA LETTER SMALL YO */ + [0x30e8, 0x30e8], /* KATAKANA LETTER YO */ + [0x30e9, 0x30e9], /* KATAKANA LETTER RA */ + [0x30ea, 0x30ea], /* KATAKANA LETTER RI */ + [0x30eb, 0x30eb], /* KATAKANA LETTER RU */ + [0x30ec, 0x30ec], /* KATAKANA LETTER RE */ + [0x30ed, 0x30ed], /* KATAKANA LETTER RO */ + [0x30ee, 0x30ee], /* KATAKANA LETTER SMALL WA */ + [0x30ef, 0x30ef], /* KATAKANA LETTER WA */ + [0x30f0, 0x30f0], /* KATAKANA LETTER WI */ + [0x30f1, 0x30f1], /* KATAKANA LETTER WE */ + [0x30f2, 0x30f2], /* KATAKANA LETTER WO */ + [0x30f3, 0x30f3], /* KATAKANA LETTER N */ + [0x30f4, 0x30f4], /* KATAKANA LETTER VU */ + [0x30f5, 0x30f5], /* KATAKANA LETTER SMALL KA */ + [0x30f6, 0x30f6], /* KATAKANA LETTER SMALL KE */ + [0x30f7, 0x30f7], /* KATAKANA LETTER VA */ + [0x30f8, 0x30f8], /* KATAKANA LETTER VI */ + [0x30f9, 0x30f9], /* KATAKANA LETTER VE */ + [0x30fa, 0x30fa], /* KATAKANA LETTER VO */ + [0x30fb, 0x30fb], /* KATAKANA MIDDLE DOT */ + [0x30fc, 0x30fc], /* KATAKANA-HIRAGANA PROLONGED SOUND MARK */ + [0x30fd, 0x30fd], /* KATAKANA ITERATION MARK */ + [0x30fe, 0x30fe], /* KATAKANA VOICED ITERATION MARK */ + [0x30ff, 0x30ff], /* KATAKANA DIGRAPH KOTO */ + [0x3100, 0x3100], + [0x3101, 0x3101], + [0x3102, 0x3102], + [0x3103, 0x3103], + [0x3104, 0x3104], + [0x3105, 0x3105], /* BOPOMOFO LETTER B */ + [0x3106, 0x3106], /* BOPOMOFO LETTER P */ + [0x3107, 0x3107], /* BOPOMOFO LETTER M */ + [0x3108, 0x3108], /* BOPOMOFO LETTER F */ + [0x3109, 0x3109], /* BOPOMOFO LETTER D */ + [0x310a, 0x310a], /* BOPOMOFO LETTER T */ + [0x310b, 0x310b], /* BOPOMOFO LETTER N */ + [0x310c, 0x310c], /* BOPOMOFO LETTER L */ + [0x310d, 0x310d], /* BOPOMOFO LETTER G */ + [0x310e, 0x310e], /* BOPOMOFO LETTER K */ + [0x310f, 0x310f], /* BOPOMOFO LETTER H */ + [0x3110, 0x3110], /* BOPOMOFO LETTER J */ + [0x3111, 0x3111], /* BOPOMOFO LETTER Q */ + [0x3112, 0x3112], /* BOPOMOFO LETTER X */ + [0x3113, 0x3113], /* BOPOMOFO LETTER ZH */ + [0x3114, 0x3114], /* BOPOMOFO LETTER CH */ + [0x3115, 0x3115], /* BOPOMOFO LETTER SH */ + [0x3116, 0x3116], /* BOPOMOFO LETTER R */ + [0x3117, 0x3117], /* BOPOMOFO LETTER Z */ + [0x3118, 0x3118], /* BOPOMOFO LETTER C */ + [0x3119, 0x3119], /* BOPOMOFO LETTER S */ + [0x311a, 0x311a], /* BOPOMOFO LETTER A */ + [0x311b, 0x311b], /* BOPOMOFO LETTER O */ + [0x311c, 0x311c], /* BOPOMOFO LETTER E */ + [0x311d, 0x311d], /* BOPOMOFO LETTER EH */ + [0x311e, 0x311e], /* BOPOMOFO LETTER AI */ + [0x311f, 0x311f], /* BOPOMOFO LETTER EI */ + [0x3120, 0x3120], /* BOPOMOFO LETTER AU */ + [0x3121, 0x3121], /* BOPOMOFO LETTER OU */ + [0x3122, 0x3122], /* BOPOMOFO LETTER AN */ + [0x3123, 0x3123], /* BOPOMOFO LETTER EN */ + [0x3124, 0x3124], /* BOPOMOFO LETTER ANG */ + [0x3125, 0x3125], /* BOPOMOFO LETTER ENG */ + [0x3126, 0x3126], /* BOPOMOFO LETTER ER */ + [0x3127, 0x3127], /* BOPOMOFO LETTER I */ + [0x3128, 0x3128], /* BOPOMOFO LETTER U */ + [0x3129, 0x3129], /* BOPOMOFO LETTER IU */ + [0x312a, 0x312a], /* BOPOMOFO LETTER V */ + [0x312b, 0x312b], /* BOPOMOFO LETTER NG */ + [0x312c, 0x312c], /* BOPOMOFO LETTER GN */ + [0x312d, 0x312d], /* BOPOMOFO LETTER IH */ + [0x312e, 0x312e], + [0x312f, 0x312f], + [0x3130, 0x3130], + [0x3131, 0x3131], /* HANGUL LETTER KIYEOK (HANGUL LETTER GIYEOG) */ + [0x3132, 0x3132], /* HANGUL LETTER SSANGKIYEOK (HANGUL LETTER SSANG GIYEOG) */ + [0x3133, 0x3133], /* HANGUL LETTER KIYEOK-SIOS (HANGUL LETTER GIYEOG SIOS) */ + [0x3134, 0x3134], /* HANGUL LETTER NIEUN */ + [0x3135, 0x3135], /* HANGUL LETTER NIEUN-CIEUC (HANGUL LETTER NIEUN JIEUJ) */ + [0x3136, 0x3136], /* HANGUL LETTER NIEUN-HIEUH (HANGUL LETTER NIEUN HIEUH) */ + [0x3137, 0x3137], /* HANGUL LETTER TIKEUT (HANGUL LETTER DIGEUD) */ + [0x3138, 0x3138], /* HANGUL LETTER SSANGTIKEUT (HANGUL LETTER SSANG DIGEUD) */ + [0x3139, 0x3139], /* HANGUL LETTER RIEUL (HANGUL LETTER LIEUL) */ + [0x313a, 0x313a], /* HANGUL LETTER RIEUL-KIYEOK (HANGUL LETTER LIEUL GIYEOG) */ + [0x313b, 0x313b], /* HANGUL LETTER RIEUL-MIEUM (HANGUL LETTER LIEUL MIEUM) */ + [0x313c, 0x313c], /* HANGUL LETTER RIEUL-PIEUP (HANGUL LETTER LIEUL BIEUB) */ + [0x313d, 0x313d], /* HANGUL LETTER RIEUL-SIOS (HANGUL LETTER LIEUL SIOS) */ + [0x313e, 0x313e], /* HANGUL LETTER RIEUL-THIEUTH (HANGUL LETTER LIEUL TIEUT) */ + [0x313f, 0x313f], /* HANGUL LETTER RIEUL-PHIEUPH (HANGUL LETTER LIEUL PIEUP) */ + [0x3140, 0x3140], /* HANGUL LETTER RIEUL-HIEUH (HANGUL LETTER LIEUL HIEUH) */ + [0x3141, 0x3141], /* HANGUL LETTER MIEUM */ + [0x3142, 0x3142], /* HANGUL LETTER PIEUP (HANGUL LETTER BIEUB) */ + [0x3143, 0x3143], /* HANGUL LETTER SSANGPIEUP (HANGUL LETTER SSANG BIEUB) */ + [0x3144, 0x3144], /* HANGUL LETTER PIEUP-SIOS (HANGUL LETTER BIEUB SIOS) */ + [0x3145, 0x3145], /* HANGUL LETTER SIOS */ + [0x3146, 0x3146], /* HANGUL LETTER SSANGSIOS (HANGUL LETTER SSANG SIOS) */ + [0x3147, 0x3147], /* HANGUL LETTER IEUNG */ + [0x3148, 0x3148], /* HANGUL LETTER CIEUC (HANGUL LETTER JIEUJ) */ + [0x3149, 0x3149], /* HANGUL LETTER SSANGCIEUC (HANGUL LETTER SSANG JIEUJ) */ + [0x314a, 0x314a], /* HANGUL LETTER CHIEUCH (HANGUL LETTER CIEUC) */ + [0x314b, 0x314b], /* HANGUL LETTER KHIEUKH (HANGUL LETTER KIYEOK) */ + [0x314c, 0x314c], /* HANGUL LETTER THIEUTH (HANGUL LETTER TIEUT) */ + [0x314d, 0x314d], /* HANGUL LETTER PHIEUPH (HANGUL LETTER PIEUP) */ + [0x314e, 0x314e], /* HANGUL LETTER HIEUH */ + [0x314f, 0x314f], /* HANGUL LETTER A */ + [0x3150, 0x3150], /* HANGUL LETTER AE */ + [0x3151, 0x3151], /* HANGUL LETTER YA */ + [0x3152, 0x3152], /* HANGUL LETTER YAE */ + [0x3153, 0x3153], /* HANGUL LETTER EO */ + [0x3154, 0x3154], /* HANGUL LETTER E */ + [0x3155, 0x3155], /* HANGUL LETTER YEO */ + [0x3156, 0x3156], /* HANGUL LETTER YE */ + [0x3157, 0x3157], /* HANGUL LETTER O */ + [0x3158, 0x3158], /* HANGUL LETTER WA */ + [0x3159, 0x3159], /* HANGUL LETTER WAE */ + [0x315a, 0x315a], /* HANGUL LETTER OE */ + [0x315b, 0x315b], /* HANGUL LETTER YO */ + [0x315c, 0x315c], /* HANGUL LETTER U */ + [0x315d, 0x315d], /* HANGUL LETTER WEO */ + [0x315e, 0x315e], /* HANGUL LETTER WE */ + [0x315f, 0x315f], /* HANGUL LETTER WI */ + [0x3160, 0x3160], /* HANGUL LETTER YU */ + [0x3161, 0x3161], /* HANGUL LETTER EU */ + [0x3162, 0x3162], /* HANGUL LETTER YI */ + [0x3163, 0x3163], /* HANGUL LETTER I */ + [0x3164, 0x3164], /* HANGUL FILLER (HANGUL CAE OM) */ + [0x3165, 0x3165], /* HANGUL LETTER SSANGNIEUN (HANGUL LETTER SSANG NIEUN) */ + [0x3166, 0x3166], /* HANGUL LETTER NIEUN-TIKEUT (HANGUL LETTER NIEUN DIGEUD) */ + [0x3167, 0x3167], /* HANGUL LETTER NIEUN-SIOS (HANGUL LETTER NIEUN SIOS) */ + [0x3168, 0x3168], /* HANGUL LETTER NIEUN-PANSIOS (HANGUL LETTER NIEUN BAN CHI EUM) */ + [0x3169, 0x3169], /* HANGUL LETTER RIEUL-KIYEOK-SIOS (HANGUL LETTER LIEUL GIYEOG SIOS) */ + [0x316a, 0x316a], /* HANGUL LETTER RIEUL-TIKEUT (HANGUL LETTER LIEUL DIGEUD) */ + [0x316b, 0x316b], /* HANGUL LETTER RIEUL-PIEUP-SIOS (HANGUL LETTER LIEUL BIEUB SIOS) */ + [0x316c, 0x316c], /* HANGUL LETTER RIEUL-PANSIOS (HANGUL LETTER LIEUL BAN CHI EUM) */ + [0x316d, 0x316d], /* HANGUL LETTER RIEUL-YEORINHIEUH (HANGUL LETTER LIEUL YEOLIN HIEUH) */ + [0x316e, 0x316e], /* HANGUL LETTER MIEUM-PIEUP (HANGUL LETTER MIEUM BIEUB) */ + [0x316f, 0x316f], /* HANGUL LETTER MIEUM-SIOS (HANGUL LETTER MIEUM SIOS) */ + [0x3170, 0x3170], /* HANGUL LETTER MIEUM-PANSIOS (HANGUL LETTER BIEUB BAN CHI EUM) */ + [0x3171, 0x3171], /* HANGUL LETTER KAPYEOUNMIEUM (HANGUL LETTER MIEUM SUN GYEONG EUM) */ + [0x3172, 0x3172], /* HANGUL LETTER PIEUP-KIYEOK (HANGUL LETTER BIEUB GIYEOG) */ + [0x3173, 0x3173], /* HANGUL LETTER PIEUP-TIKEUT (HANGUL LETTER BIEUB DIGEUD) */ + [0x3174, 0x3174], /* HANGUL LETTER PIEUP-SIOS-KIYEOK (HANGUL LETTER BIEUB SIOS GIYEOG) */ + [0x3175, 0x3175], /* HANGUL LETTER PIEUP-SIOS-TIKEUT (HANGUL LETTER BIEUB SIOS DIGEUD) */ + [0x3176, 0x3176], /* HANGUL LETTER PIEUP-CIEUC (HANGUL LETTER BIEUB JIEUJ) */ + [0x3177, 0x3177], /* HANGUL LETTER PIEUP-THIEUTH (HANGUL LETTER BIEUB TIEUT) */ + [0x3178, 0x3178], /* HANGUL LETTER KAPYEOUNPIEUP (HANGUL LETTER BIEUB SUN GYEONG EUM) */ + [0x3179, 0x3179], /* HANGUL LETTER KAPYEOUNSSANGPIEUP (HANGUL LETTER SSANG BIEUB SUN GYEONG EUM) */ + [0x317a, 0x317a], /* HANGUL LETTER SIOS-KIYEOK (HANGUL LETTER SIOS GIYEOG) */ + [0x317b, 0x317b], /* HANGUL LETTER SIOS-NIEUN (HANGUL LETTER SIOS NIEUN) */ + [0x317c, 0x317c], /* HANGUL LETTER SIOS-TIKEUT (HANGUL LETTER SIOS DIGEUD) */ + [0x317d, 0x317d], /* HANGUL LETTER SIOS-PIEUP (HANGUL LETTER SIOS BIEUB) */ + [0x317e, 0x317e], /* HANGUL LETTER SIOS-CIEUC (HANGUL LETTER SIOS JIEUJ) */ + [0x317f, 0x317f], /* HANGUL LETTER PANSIOS (HANGUL LETTER BAN CHI EUM) */ + [0x3180, 0x3180], /* HANGUL LETTER SSANGIEUNG (HANGUL LETTER SSANG IEUNG) */ + [0x3181, 0x3181], /* HANGUL LETTER YESIEUNG (HANGUL LETTER NGIEUNG) */ + [0x3182, 0x3182], /* HANGUL LETTER YESIEUNG-SIOS (HANGUL LETTER NGIEUNG SIOS) */ + [0x3183, 0x3183], /* HANGUL LETTER YESIEUNG-PANSIOS (HANGUL LETTER NGIEUNG BAN CHI EUM) */ + [0x3184, 0x3184], /* HANGUL LETTER KAPYEOUNPHIEUPH (HANGUL LETTER PIEUP SUN GYEONG EUM) */ + [0x3185, 0x3185], /* HANGUL LETTER SSANGHIEUH (HANGUL LETTER SSANG HIEUH) */ + [0x3186, 0x3186], /* HANGUL LETTER YEORINHIEUH (HANGUL LETTER YEOLIN HIEUH) */ + [0x3187, 0x3187], /* HANGUL LETTER YO-YA (HANGUL LETTER YOYA) */ + [0x3188, 0x3188], /* HANGUL LETTER YO-YAE (HANGUL LETTER YOYAE) */ + [0x3189, 0x3189], /* HANGUL LETTER YO-I (HANGUL LETTER YOI) */ + [0x318a, 0x318a], /* HANGUL LETTER YU-YEO (HANGUL LETTER YUYEO) */ + [0x318b, 0x318b], /* HANGUL LETTER YU-YE (HANGUL LETTER YUYE) */ + [0x318c, 0x318c], /* HANGUL LETTER YU-I (HANGUL LETTER YUI) */ + [0x318d, 0x318d], /* HANGUL LETTER ARAEA (HANGUL LETTER ALAE A) */ + [0x318e, 0x318e], /* HANGUL LETTER ARAEAE (HANGUL LETTER ALAE AE) */ + [0x318f, 0x318f], + [0x3190, 0x3190], /* IDEOGRAPHIC ANNOTATION LINKING MARK (KANBUN TATETEN) */ + [0x3191, 0x3191], /* IDEOGRAPHIC ANNOTATION REVERSE MARK (KAERITEN RE) */ + [0x3192, 0x3192], /* IDEOGRAPHIC ANNOTATION ONE MARK (KAERITEN ITI) */ + [0x3193, 0x3193], /* IDEOGRAPHIC ANNOTATION TWO MARK (KAERITEN NI) */ + [0x3194, 0x3194], /* IDEOGRAPHIC ANNOTATION THREE MARK (KAERITEN SAN) */ + [0x3195, 0x3195], /* IDEOGRAPHIC ANNOTATION FOUR MARK (KAERITEN SI) */ + [0x3196, 0x3196], /* IDEOGRAPHIC ANNOTATION TOP MARK (KAERITEN ZYOU) */ + [0x3197, 0x3197], /* IDEOGRAPHIC ANNOTATION MIDDLE MARK (KAERITEN TYUU) */ + [0x3198, 0x3198], /* IDEOGRAPHIC ANNOTATION BOTTOM MARK (KAERITEN GE) */ + [0x3199, 0x3199], /* IDEOGRAPHIC ANNOTATION FIRST MARK (KAERITEN KOU) */ + [0x319a, 0x319a], /* IDEOGRAPHIC ANNOTATION SECOND MARK (KAERITEN OTU) */ + [0x319b, 0x319b], /* IDEOGRAPHIC ANNOTATION THIRD MARK (KAERITEN HEI) */ + [0x319c, 0x319c], /* IDEOGRAPHIC ANNOTATION FOURTH MARK (KAERITEN TEI) */ + [0x319d, 0x319d], /* IDEOGRAPHIC ANNOTATION HEAVEN MARK (KAERITEN TEN) */ + [0x319e, 0x319e], /* IDEOGRAPHIC ANNOTATION EARTH MARK (KAERITEN TI) */ + [0x319f, 0x319f], /* IDEOGRAPHIC ANNOTATION MAN MARK (KAERITEN ZIN) */ + [0x31a0, 0x31a0], /* BOPOMOFO LETTER BU */ + [0x31a1, 0x31a1], /* BOPOMOFO LETTER ZI */ + [0x31a2, 0x31a2], /* BOPOMOFO LETTER JI */ + [0x31a3, 0x31a3], /* BOPOMOFO LETTER GU */ + [0x31a4, 0x31a4], /* BOPOMOFO LETTER EE */ + [0x31a5, 0x31a5], /* BOPOMOFO LETTER ENN */ + [0x31a6, 0x31a6], /* BOPOMOFO LETTER OO */ + [0x31a7, 0x31a7], /* BOPOMOFO LETTER ONN */ + [0x31a8, 0x31a8], /* BOPOMOFO LETTER IR */ + [0x31a9, 0x31a9], /* BOPOMOFO LETTER ANN */ + [0x31aa, 0x31aa], /* BOPOMOFO LETTER INN */ + [0x31ab, 0x31ab], /* BOPOMOFO LETTER UNN */ + [0x31ac, 0x31ac], /* BOPOMOFO LETTER IM */ + [0x31ad, 0x31ad], /* BOPOMOFO LETTER NGG */ + [0x31ae, 0x31ae], /* BOPOMOFO LETTER AINN */ + [0x31af, 0x31af], /* BOPOMOFO LETTER AUNN */ + [0x31b0, 0x31b0], /* BOPOMOFO LETTER AM */ + [0x31b1, 0x31b1], /* BOPOMOFO LETTER OM */ + [0x31b2, 0x31b2], /* BOPOMOFO LETTER ONG */ + [0x31b3, 0x31b3], /* BOPOMOFO LETTER INNN */ + [0x31b4, 0x31b4], /* BOPOMOFO FINAL LETTER P */ + [0x31b5, 0x31b5], /* BOPOMOFO FINAL LETTER T */ + [0x31b6, 0x31b6], /* BOPOMOFO FINAL LETTER K */ + [0x31b7, 0x31b7], /* BOPOMOFO FINAL LETTER H */ + [0x31b8, 0x31b8], /* BOPOMOFO LETTER GH */ + [0x31b9, 0x31b9], /* BOPOMOFO LETTER LH */ + [0x31ba, 0x31ba], /* BOPOMOFO LETTER ZY */ + [0x31bb, 0x31bb], + [0x31bc, 0x31bc], + [0x31bd, 0x31bd], + [0x31be, 0x31be], + [0x31bf, 0x31bf], + [0x31c0, 0x31c0], /* CJK STROKE T */ + [0x31c1, 0x31c1], /* CJK STROKE WG */ + [0x31c2, 0x31c2], /* CJK STROKE XG */ + [0x31c3, 0x31c3], /* CJK STROKE BXG */ + [0x31c4, 0x31c4], /* CJK STROKE SW */ + [0x31c5, 0x31c5], /* CJK STROKE HZZ */ + [0x31c6, 0x31c6], /* CJK STROKE HZG */ + [0x31c7, 0x31c7], /* CJK STROKE HP */ + [0x31c8, 0x31c8], /* CJK STROKE HZWG */ + [0x31c9, 0x31c9], /* CJK STROKE SZWG */ + [0x31ca, 0x31ca], /* CJK STROKE HZT */ + [0x31cb, 0x31cb], /* CJK STROKE HZZP */ + [0x31cc, 0x31cc], /* CJK STROKE HPWG */ + [0x31cd, 0x31cd], /* CJK STROKE HZW */ + [0x31ce, 0x31ce], /* CJK STROKE HZZZ */ + [0x31cf, 0x31cf], /* CJK STROKE N */ + [0x31d0, 0x31d0], /* CJK STROKE H */ + [0x31d1, 0x31d1], /* CJK STROKE S */ + [0x31d2, 0x31d2], /* CJK STROKE P */ + [0x31d3, 0x31d3], /* CJK STROKE SP */ + [0x31d4, 0x31d4], /* CJK STROKE D */ + [0x31d5, 0x31d5], /* CJK STROKE HZ */ + [0x31d6, 0x31d6], /* CJK STROKE HG */ + [0x31d7, 0x31d7], /* CJK STROKE SZ */ + [0x31d8, 0x31d8], /* CJK STROKE SWZ */ + [0x31d9, 0x31d9], /* CJK STROKE ST */ + [0x31da, 0x31da], /* CJK STROKE SG */ + [0x31db, 0x31db], /* CJK STROKE PD */ + [0x31dc, 0x31dc], /* CJK STROKE PZ */ + [0x31dd, 0x31dd], /* CJK STROKE TN */ + [0x31de, 0x31de], /* CJK STROKE SZZ */ + [0x31df, 0x31df], /* CJK STROKE SWG */ + [0x31e0, 0x31e0], /* CJK STROKE HXWG */ + [0x31e1, 0x31e1], /* CJK STROKE HZZZG */ + [0x31e2, 0x31e2], /* CJK STROKE PG */ + [0x31e3, 0x31e3], /* CJK STROKE Q */ + [0x31e4, 0x31e4], + [0x31e5, 0x31e5], + [0x31e6, 0x31e6], + [0x31e7, 0x31e7], + [0x31e8, 0x31e8], + [0x31e9, 0x31e9], + [0x31ea, 0x31ea], + [0x31eb, 0x31eb], + [0x31ec, 0x31ec], + [0x31ed, 0x31ed], + [0x31ee, 0x31ee], + [0x31ef, 0x31ef], + [0x31f0, 0x31f0], /* KATAKANA LETTER SMALL KU */ + [0x31f1, 0x31f1], /* KATAKANA LETTER SMALL SI */ + [0x31f2, 0x31f2], /* KATAKANA LETTER SMALL SU */ + [0x31f3, 0x31f3], /* KATAKANA LETTER SMALL TO */ + [0x31f4, 0x31f4], /* KATAKANA LETTER SMALL NU */ + [0x31f5, 0x31f5], /* KATAKANA LETTER SMALL HA */ + [0x31f6, 0x31f6], /* KATAKANA LETTER SMALL HI */ + [0x31f7, 0x31f7], /* KATAKANA LETTER SMALL HU */ + [0x31f8, 0x31f8], /* KATAKANA LETTER SMALL HE */ + [0x31f9, 0x31f9], /* KATAKANA LETTER SMALL HO */ + [0x31fa, 0x31fa], /* KATAKANA LETTER SMALL MU */ + [0x31fb, 0x31fb], /* KATAKANA LETTER SMALL RA */ + [0x31fc, 0x31fc], /* KATAKANA LETTER SMALL RI */ + [0x31fd, 0x31fd], /* KATAKANA LETTER SMALL RU */ + [0x31fe, 0x31fe], /* KATAKANA LETTER SMALL RE */ + [0x31ff, 0x31ff], /* KATAKANA LETTER SMALL RO */ + [0x3200, 0x3200], /* PARENTHESIZED HANGUL KIYEOK (PARENTHESIZED HANGUL GIYEOG) */ + [0x3201, 0x3201], /* PARENTHESIZED HANGUL NIEUN */ + [0x3202, 0x3202], /* PARENTHESIZED HANGUL TIKEUT (PARENTHESIZED HANGUL DIGEUD) */ + [0x3203, 0x3203], /* PARENTHESIZED HANGUL RIEUL (PARENTHESIZED HANGUL LIEUL) */ + [0x3204, 0x3204], /* PARENTHESIZED HANGUL MIEUM */ + [0x3205, 0x3205], /* PARENTHESIZED HANGUL PIEUP (PARENTHESIZED HANGUL BIEUB) */ + [0x3206, 0x3206], /* PARENTHESIZED HANGUL SIOS */ + [0x3207, 0x3207], /* PARENTHESIZED HANGUL IEUNG */ + [0x3208, 0x3208], /* PARENTHESIZED HANGUL CIEUC (PARENTHESIZED HANGUL JIEUJ) */ + [0x3209, 0x3209], /* PARENTHESIZED HANGUL CHIEUCH (PARENTHESIZED HANGUL CIEUC) */ + [0x320a, 0x320a], /* PARENTHESIZED HANGUL KHIEUKH (PARENTHESIZED HANGUL KIYEOK) */ + [0x320b, 0x320b], /* PARENTHESIZED HANGUL THIEUTH (PARENTHESIZED HANGUL TIEUT) */ + [0x320c, 0x320c], /* PARENTHESIZED HANGUL PHIEUPH (PARENTHESIZED HANGUL PIEUP) */ + [0x320d, 0x320d], /* PARENTHESIZED HANGUL HIEUH */ + [0x320e, 0x320e], /* PARENTHESIZED HANGUL KIYEOK A (PARENTHESIZED HANGUL GA) */ + [0x320f, 0x320f], /* PARENTHESIZED HANGUL NIEUN A (PARENTHESIZED HANGUL NA) */ + [0x3210, 0x3210], /* PARENTHESIZED HANGUL TIKEUT A (PARENTHESIZED HANGUL DA) */ + [0x3211, 0x3211], /* PARENTHESIZED HANGUL RIEUL A (PARENTHESIZED HANGUL LA) */ + [0x3212, 0x3212], /* PARENTHESIZED HANGUL MIEUM A (PARENTHESIZED HANGUL MA) */ + [0x3213, 0x3213], /* PARENTHESIZED HANGUL PIEUP A (PARENTHESIZED HANGUL BA) */ + [0x3214, 0x3214], /* PARENTHESIZED HANGUL SIOS A (PARENTHESIZED HANGUL SA) */ + [0x3215, 0x3215], /* PARENTHESIZED HANGUL IEUNG A (PARENTHESIZED HANGUL A) */ + [0x3216, 0x3216], /* PARENTHESIZED HANGUL CIEUC A (PARENTHESIZED HANGUL JA) */ + [0x3217, 0x3217], /* PARENTHESIZED HANGUL CHIEUCH A (PARENTHESIZED HANGUL CA) */ + [0x3218, 0x3218], /* PARENTHESIZED HANGUL KHIEUKH A (PARENTHESIZED HANGUL KA) */ + [0x3219, 0x3219], /* PARENTHESIZED HANGUL THIEUTH A (PARENTHESIZED HANGUL TA) */ + [0x321a, 0x321a], /* PARENTHESIZED HANGUL PHIEUPH A (PARENTHESIZED HANGUL PA) */ + [0x321b, 0x321b], /* PARENTHESIZED HANGUL HIEUH A (PARENTHESIZED HANGUL HA) */ + [0x321c, 0x321c], /* PARENTHESIZED HANGUL CIEUC U (PARENTHESIZED HANGUL JU) */ + [0x321d, 0x321d], /* PARENTHESIZED KOREAN CHARACTER OJEON */ + [0x321e, 0x321e], /* PARENTHESIZED KOREAN CHARACTER O HU */ + [0x321f, 0x321f], + [0x3220, 0x3220], /* PARENTHESIZED IDEOGRAPH ONE */ + [0x3221, 0x3221], /* PARENTHESIZED IDEOGRAPH TWO */ + [0x3222, 0x3222], /* PARENTHESIZED IDEOGRAPH THREE */ + [0x3223, 0x3223], /* PARENTHESIZED IDEOGRAPH FOUR */ + [0x3224, 0x3224], /* PARENTHESIZED IDEOGRAPH FIVE */ + [0x3225, 0x3225], /* PARENTHESIZED IDEOGRAPH SIX */ + [0x3226, 0x3226], /* PARENTHESIZED IDEOGRAPH SEVEN */ + [0x3227, 0x3227], /* PARENTHESIZED IDEOGRAPH EIGHT */ + [0x3228, 0x3228], /* PARENTHESIZED IDEOGRAPH NINE */ + [0x3229, 0x3229], /* PARENTHESIZED IDEOGRAPH TEN */ + [0x322a, 0x322a], /* PARENTHESIZED IDEOGRAPH MOON */ + [0x322b, 0x322b], /* PARENTHESIZED IDEOGRAPH FIRE */ + [0x322c, 0x322c], /* PARENTHESIZED IDEOGRAPH WATER */ + [0x322d, 0x322d], /* PARENTHESIZED IDEOGRAPH WOOD */ + [0x322e, 0x322e], /* PARENTHESIZED IDEOGRAPH METAL */ + [0x322f, 0x322f], /* PARENTHESIZED IDEOGRAPH EARTH */ + [0x3230, 0x3230], /* PARENTHESIZED IDEOGRAPH SUN */ + [0x3231, 0x3231], /* PARENTHESIZED IDEOGRAPH STOCK */ + [0x3232, 0x3232], /* PARENTHESIZED IDEOGRAPH HAVE */ + [0x3233, 0x3233], /* PARENTHESIZED IDEOGRAPH SOCIETY */ + [0x3234, 0x3234], /* PARENTHESIZED IDEOGRAPH NAME */ + [0x3235, 0x3235], /* PARENTHESIZED IDEOGRAPH SPECIAL */ + [0x3236, 0x3236], /* PARENTHESIZED IDEOGRAPH FINANCIAL */ + [0x3237, 0x3237], /* PARENTHESIZED IDEOGRAPH CONGRATULATION */ + [0x3238, 0x3238], /* PARENTHESIZED IDEOGRAPH LABOR */ + [0x3239, 0x3239], /* PARENTHESIZED IDEOGRAPH REPRESENT */ + [0x323a, 0x323a], /* PARENTHESIZED IDEOGRAPH CALL */ + [0x323b, 0x323b], /* PARENTHESIZED IDEOGRAPH STUDY */ + [0x323c, 0x323c], /* PARENTHESIZED IDEOGRAPH SUPERVISE */ + [0x323d, 0x323d], /* PARENTHESIZED IDEOGRAPH ENTERPRISE */ + [0x323e, 0x323e], /* PARENTHESIZED IDEOGRAPH RESOURCE */ + [0x323f, 0x323f], /* PARENTHESIZED IDEOGRAPH ALLIANCE */ + [0x3240, 0x3240], /* PARENTHESIZED IDEOGRAPH FESTIVAL */ + [0x3241, 0x3241], /* PARENTHESIZED IDEOGRAPH REST */ + [0x3242, 0x3242], /* PARENTHESIZED IDEOGRAPH SELF */ + [0x3243, 0x3243], /* PARENTHESIZED IDEOGRAPH REACH */ + [0x3244, 0x3244], /* CIRCLED IDEOGRAPH QUESTION */ + [0x3245, 0x3245], /* CIRCLED IDEOGRAPH KINDERGARTEN */ + [0x3246, 0x3246], /* CIRCLED IDEOGRAPH SCHOOL */ + [0x3247, 0x3247], /* CIRCLED IDEOGRAPH KOTO */ + [0x3248, 0x3248], /* CIRCLED NUMBER TEN ON BLACK SQUARE */ + [0x3249, 0x3249], /* CIRCLED NUMBER TWENTY ON BLACK SQUARE */ + [0x324a, 0x324a], /* CIRCLED NUMBER THIRTY ON BLACK SQUARE */ + [0x324b, 0x324b], /* CIRCLED NUMBER FORTY ON BLACK SQUARE */ + [0x324c, 0x324c], /* CIRCLED NUMBER FIFTY ON BLACK SQUARE */ + [0x324d, 0x324d], /* CIRCLED NUMBER SIXTY ON BLACK SQUARE */ + [0x324e, 0x324e], /* CIRCLED NUMBER SEVENTY ON BLACK SQUARE */ + [0x324f, 0x324f], /* CIRCLED NUMBER EIGHTY ON BLACK SQUARE */ + [0x3250, 0x3250], /* PARTNERSHIP SIGN */ + [0x3251, 0x3251], /* CIRCLED NUMBER TWENTY ONE */ + [0x3252, 0x3252], /* CIRCLED NUMBER TWENTY TWO */ + [0x3253, 0x3253], /* CIRCLED NUMBER TWENTY THREE */ + [0x3254, 0x3254], /* CIRCLED NUMBER TWENTY FOUR */ + [0x3255, 0x3255], /* CIRCLED NUMBER TWENTY FIVE */ + [0x3256, 0x3256], /* CIRCLED NUMBER TWENTY SIX */ + [0x3257, 0x3257], /* CIRCLED NUMBER TWENTY SEVEN */ + [0x3258, 0x3258], /* CIRCLED NUMBER TWENTY EIGHT */ + [0x3259, 0x3259], /* CIRCLED NUMBER TWENTY NINE */ + [0x325a, 0x325a], /* CIRCLED NUMBER THIRTY */ + [0x325b, 0x325b], /* CIRCLED NUMBER THIRTY ONE */ + [0x325c, 0x325c], /* CIRCLED NUMBER THIRTY TWO */ + [0x325d, 0x325d], /* CIRCLED NUMBER THIRTY THREE */ + [0x325e, 0x325e], /* CIRCLED NUMBER THIRTY FOUR */ + [0x325f, 0x325f], /* CIRCLED NUMBER THIRTY FIVE */ + [0x3260, 0x3260], /* CIRCLED HANGUL KIYEOK (CIRCLED HANGUL GIYEOG) */ + [0x3261, 0x3261], /* CIRCLED HANGUL NIEUN */ + [0x3262, 0x3262], /* CIRCLED HANGUL TIKEUT (CIRCLED HANGUL DIGEUD) */ + [0x3263, 0x3263], /* CIRCLED HANGUL RIEUL (CIRCLED HANGUL LIEUL) */ + [0x3264, 0x3264], /* CIRCLED HANGUL MIEUM */ + [0x3265, 0x3265], /* CIRCLED HANGUL PIEUP (CIRCLED HANGUL BIEUB) */ + [0x3266, 0x3266], /* CIRCLED HANGUL SIOS */ + [0x3267, 0x3267], /* CIRCLED HANGUL IEUNG */ + [0x3268, 0x3268], /* CIRCLED HANGUL CIEUC (CIRCLED HANGUL JIEUJ) */ + [0x3269, 0x3269], /* CIRCLED HANGUL CHIEUCH (CIRCLED HANGUL CIEUC) */ + [0x326a, 0x326a], /* CIRCLED HANGUL KHIEUKH (CIRCLED HANGUL KIYEOK) */ + [0x326b, 0x326b], /* CIRCLED HANGUL THIEUTH (CIRCLED HANGUL TIEUT) */ + [0x326c, 0x326c], /* CIRCLED HANGUL PHIEUPH (CIRCLED HANGUL PIEUP) */ + [0x326d, 0x326d], /* CIRCLED HANGUL HIEUH */ + [0x326e, 0x326e], /* CIRCLED HANGUL KIYEOK A (CIRCLED HANGUL GA) */ + [0x326f, 0x326f], /* CIRCLED HANGUL NIEUN A (CIRCLED HANGUL NA) */ + [0x3270, 0x3270], /* CIRCLED HANGUL TIKEUT A (CIRCLED HANGUL DA) */ + [0x3271, 0x3271], /* CIRCLED HANGUL RIEUL A (CIRCLED HANGUL LA) */ + [0x3272, 0x3272], /* CIRCLED HANGUL MIEUM A (CIRCLED HANGUL MA) */ + [0x3273, 0x3273], /* CIRCLED HANGUL PIEUP A (CIRCLED HANGUL BA) */ + [0x3274, 0x3274], /* CIRCLED HANGUL SIOS A (CIRCLED HANGUL SA) */ + [0x3275, 0x3275], /* CIRCLED HANGUL IEUNG A (CIRCLED HANGUL A) */ + [0x3276, 0x3276], /* CIRCLED HANGUL CIEUC A (CIRCLED HANGUL JA) */ + [0x3277, 0x3277], /* CIRCLED HANGUL CHIEUCH A (CIRCLED HANGUL CA) */ + [0x3278, 0x3278], /* CIRCLED HANGUL KHIEUKH A (CIRCLED HANGUL KA) */ + [0x3279, 0x3279], /* CIRCLED HANGUL THIEUTH A (CIRCLED HANGUL TA) */ + [0x327a, 0x327a], /* CIRCLED HANGUL PHIEUPH A (CIRCLED HANGUL PA) */ + [0x327b, 0x327b], /* CIRCLED HANGUL HIEUH A (CIRCLED HANGUL HA) */ + [0x327c, 0x327c], /* CIRCLED KOREAN CHARACTER CHAMKO */ + [0x327d, 0x327d], /* CIRCLED KOREAN CHARACTER JUEUI */ + [0x327e, 0x327e], /* CIRCLED HANGUL IEUNG U */ + [0x327f, 0x327f], /* KOREAN STANDARD SYMBOL */ + [0x3280, 0x3280], /* CIRCLED IDEOGRAPH ONE */ + [0x3281, 0x3281], /* CIRCLED IDEOGRAPH TWO */ + [0x3282, 0x3282], /* CIRCLED IDEOGRAPH THREE */ + [0x3283, 0x3283], /* CIRCLED IDEOGRAPH FOUR */ + [0x3284, 0x3284], /* CIRCLED IDEOGRAPH FIVE */ + [0x3285, 0x3285], /* CIRCLED IDEOGRAPH SIX */ + [0x3286, 0x3286], /* CIRCLED IDEOGRAPH SEVEN */ + [0x3287, 0x3287], /* CIRCLED IDEOGRAPH EIGHT */ + [0x3288, 0x3288], /* CIRCLED IDEOGRAPH NINE */ + [0x3289, 0x3289], /* CIRCLED IDEOGRAPH TEN */ + [0x328a, 0x328a], /* CIRCLED IDEOGRAPH MOON */ + [0x328b, 0x328b], /* CIRCLED IDEOGRAPH FIRE */ + [0x328c, 0x328c], /* CIRCLED IDEOGRAPH WATER */ + [0x328d, 0x328d], /* CIRCLED IDEOGRAPH WOOD */ + [0x328e, 0x328e], /* CIRCLED IDEOGRAPH METAL */ + [0x328f, 0x328f], /* CIRCLED IDEOGRAPH EARTH */ + [0x3290, 0x3290], /* CIRCLED IDEOGRAPH SUN */ + [0x3291, 0x3291], /* CIRCLED IDEOGRAPH STOCK */ + [0x3292, 0x3292], /* CIRCLED IDEOGRAPH HAVE */ + [0x3293, 0x3293], /* CIRCLED IDEOGRAPH SOCIETY */ + [0x3294, 0x3294], /* CIRCLED IDEOGRAPH NAME */ + [0x3295, 0x3295], /* CIRCLED IDEOGRAPH SPECIAL */ + [0x3296, 0x3296], /* CIRCLED IDEOGRAPH FINANCIAL */ + [0x3297, 0x3297], /* CIRCLED IDEOGRAPH CONGRATULATION */ + [0x3298, 0x3298], /* CIRCLED IDEOGRAPH LABOR */ + [0x3299, 0x3299], /* CIRCLED IDEOGRAPH SECRET */ + [0x329a, 0x329a], /* CIRCLED IDEOGRAPH MALE */ + [0x329b, 0x329b], /* CIRCLED IDEOGRAPH FEMALE */ + [0x329c, 0x329c], /* CIRCLED IDEOGRAPH SUITABLE */ + [0x329d, 0x329d], /* CIRCLED IDEOGRAPH EXCELLENT */ + [0x329e, 0x329e], /* CIRCLED IDEOGRAPH PRINT */ + [0x329f, 0x329f], /* CIRCLED IDEOGRAPH ATTENTION */ + [0x32a0, 0x32a0], /* CIRCLED IDEOGRAPH ITEM */ + [0x32a1, 0x32a1], /* CIRCLED IDEOGRAPH REST */ + [0x32a2, 0x32a2], /* CIRCLED IDEOGRAPH COPY */ + [0x32a3, 0x32a3], /* CIRCLED IDEOGRAPH CORRECT */ + [0x32a4, 0x32a4], /* CIRCLED IDEOGRAPH HIGH */ + [0x32a5, 0x32a5], /* CIRCLED IDEOGRAPH CENTRE (CIRCLED IDEOGRAPH CENTER) */ + [0x32a6, 0x32a6], /* CIRCLED IDEOGRAPH LOW */ + [0x32a7, 0x32a7], /* CIRCLED IDEOGRAPH LEFT */ + [0x32a8, 0x32a8], /* CIRCLED IDEOGRAPH RIGHT */ + [0x32a9, 0x32a9], /* CIRCLED IDEOGRAPH MEDICINE */ + [0x32aa, 0x32aa], /* CIRCLED IDEOGRAPH RELIGION */ + [0x32ab, 0x32ab], /* CIRCLED IDEOGRAPH STUDY */ + [0x32ac, 0x32ac], /* CIRCLED IDEOGRAPH SUPERVISE */ + [0x32ad, 0x32ad], /* CIRCLED IDEOGRAPH ENTERPRISE */ + [0x32ae, 0x32ae], /* CIRCLED IDEOGRAPH RESOURCE */ + [0x32af, 0x32af], /* CIRCLED IDEOGRAPH ALLIANCE */ + [0x32b0, 0x32b0], /* CIRCLED IDEOGRAPH NIGHT */ + [0x32b1, 0x32b1], /* CIRCLED NUMBER THIRTY SIX */ + [0x32b2, 0x32b2], /* CIRCLED NUMBER THIRTY SEVEN */ + [0x32b3, 0x32b3], /* CIRCLED NUMBER THIRTY EIGHT */ + [0x32b4, 0x32b4], /* CIRCLED NUMBER THIRTY NINE */ + [0x32b5, 0x32b5], /* CIRCLED NUMBER FORTY */ + [0x32b6, 0x32b6], /* CIRCLED NUMBER FORTY ONE */ + [0x32b7, 0x32b7], /* CIRCLED NUMBER FORTY TWO */ + [0x32b8, 0x32b8], /* CIRCLED NUMBER FORTY THREE */ + [0x32b9, 0x32b9], /* CIRCLED NUMBER FORTY FOUR */ + [0x32ba, 0x32ba], /* CIRCLED NUMBER FORTY FIVE */ + [0x32bb, 0x32bb], /* CIRCLED NUMBER FORTY SIX */ + [0x32bc, 0x32bc], /* CIRCLED NUMBER FORTY SEVEN */ + [0x32bd, 0x32bd], /* CIRCLED NUMBER FORTY EIGHT */ + [0x32be, 0x32be], /* CIRCLED NUMBER FORTY NINE */ + [0x32bf, 0x32bf], /* CIRCLED NUMBER FIFTY */ + [0x32c0, 0x32c0], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY */ + [0x32c1, 0x32c1], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR FEBRUARY */ + [0x32c2, 0x32c2], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR MARCH */ + [0x32c3, 0x32c3], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR APRIL */ + [0x32c4, 0x32c4], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR MAY */ + [0x32c5, 0x32c5], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR JUNE */ + [0x32c6, 0x32c6], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR JULY */ + [0x32c7, 0x32c7], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR AUGUST */ + [0x32c8, 0x32c8], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR SEPTEMBER */ + [0x32c9, 0x32c9], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR OCTOBER */ + [0x32ca, 0x32ca], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR NOVEMBER */ + [0x32cb, 0x32cb], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DECEMBER */ + [0x32cc, 0x32cc], /* SQUARE HG */ + [0x32cd, 0x32cd], /* SQUARE ERG */ + [0x32ce, 0x32ce], /* SQUARE EV */ + [0x32cf, 0x32cf], /* LIMITED LIABILITY SIGN */ + [0x32d0, 0x32d0], /* CIRCLED KATAKANA A */ + [0x32d1, 0x32d1], /* CIRCLED KATAKANA I */ + [0x32d2, 0x32d2], /* CIRCLED KATAKANA U */ + [0x32d3, 0x32d3], /* CIRCLED KATAKANA E */ + [0x32d4, 0x32d4], /* CIRCLED KATAKANA O */ + [0x32d5, 0x32d5], /* CIRCLED KATAKANA KA */ + [0x32d6, 0x32d6], /* CIRCLED KATAKANA KI */ + [0x32d7, 0x32d7], /* CIRCLED KATAKANA KU */ + [0x32d8, 0x32d8], /* CIRCLED KATAKANA KE */ + [0x32d9, 0x32d9], /* CIRCLED KATAKANA KO */ + [0x32da, 0x32da], /* CIRCLED KATAKANA SA */ + [0x32db, 0x32db], /* CIRCLED KATAKANA SI */ + [0x32dc, 0x32dc], /* CIRCLED KATAKANA SU */ + [0x32dd, 0x32dd], /* CIRCLED KATAKANA SE */ + [0x32de, 0x32de], /* CIRCLED KATAKANA SO */ + [0x32df, 0x32df], /* CIRCLED KATAKANA TA */ + [0x32e0, 0x32e0], /* CIRCLED KATAKANA TI */ + [0x32e1, 0x32e1], /* CIRCLED KATAKANA TU */ + [0x32e2, 0x32e2], /* CIRCLED KATAKANA TE */ + [0x32e3, 0x32e3], /* CIRCLED KATAKANA TO */ + [0x32e4, 0x32e4], /* CIRCLED KATAKANA NA */ + [0x32e5, 0x32e5], /* CIRCLED KATAKANA NI */ + [0x32e6, 0x32e6], /* CIRCLED KATAKANA NU */ + [0x32e7, 0x32e7], /* CIRCLED KATAKANA NE */ + [0x32e8, 0x32e8], /* CIRCLED KATAKANA NO */ + [0x32e9, 0x32e9], /* CIRCLED KATAKANA HA */ + [0x32ea, 0x32ea], /* CIRCLED KATAKANA HI */ + [0x32eb, 0x32eb], /* CIRCLED KATAKANA HU */ + [0x32ec, 0x32ec], /* CIRCLED KATAKANA HE */ + [0x32ed, 0x32ed], /* CIRCLED KATAKANA HO */ + [0x32ee, 0x32ee], /* CIRCLED KATAKANA MA */ + [0x32ef, 0x32ef], /* CIRCLED KATAKANA MI */ + [0x32f0, 0x32f0], /* CIRCLED KATAKANA MU */ + [0x32f1, 0x32f1], /* CIRCLED KATAKANA ME */ + [0x32f2, 0x32f2], /* CIRCLED KATAKANA MO */ + [0x32f3, 0x32f3], /* CIRCLED KATAKANA YA */ + [0x32f4, 0x32f4], /* CIRCLED KATAKANA YU */ + [0x32f5, 0x32f5], /* CIRCLED KATAKANA YO */ + [0x32f6, 0x32f6], /* CIRCLED KATAKANA RA */ + [0x32f7, 0x32f7], /* CIRCLED KATAKANA RI */ + [0x32f8, 0x32f8], /* CIRCLED KATAKANA RU */ + [0x32f9, 0x32f9], /* CIRCLED KATAKANA RE */ + [0x32fa, 0x32fa], /* CIRCLED KATAKANA RO */ + [0x32fb, 0x32fb], /* CIRCLED KATAKANA WA */ + [0x32fc, 0x32fc], /* CIRCLED KATAKANA WI */ + [0x32fd, 0x32fd], /* CIRCLED KATAKANA WE */ + [0x32fe, 0x32fe], /* CIRCLED KATAKANA WO */ + [0x32ff, 0x32ff], + [0x3300, 0x3300], /* SQUARE APAATO (SQUARED APAATO) */ + [0x3301, 0x3301], /* SQUARE ARUHUA (SQUARED ARUHUA) */ + [0x3302, 0x3302], /* SQUARE ANPEA (SQUARED ANPEA) */ + [0x3303, 0x3303], /* SQUARE AARU (SQUARED AARU) */ + [0x3304, 0x3304], /* SQUARE ININGU (SQUARED ININGU) */ + [0x3305, 0x3305], /* SQUARE INTI (SQUARED INTI) */ + [0x3306, 0x3306], /* SQUARE UON (SQUARED UON) */ + [0x3307, 0x3307], /* SQUARE ESUKUUDO (SQUARED ESUKUUDO) */ + [0x3308, 0x3308], /* SQUARE EEKAA (SQUARED EEKAA) */ + [0x3309, 0x3309], /* SQUARE ONSU (SQUARED ONSU) */ + [0x330a, 0x330a], /* SQUARE OOMU (SQUARED OOMU) */ + [0x330b, 0x330b], /* SQUARE KAIRI (SQUARED KAIRI) */ + [0x330c, 0x330c], /* SQUARE KARATTO (SQUARED KARATTO) */ + [0x330d, 0x330d], /* SQUARE KARORII (SQUARED KARORII) */ + [0x330e, 0x330e], /* SQUARE GARON (SQUARED GARON) */ + [0x330f, 0x330f], /* SQUARE GANMA (SQUARED GANMA) */ + [0x3310, 0x3310], /* SQUARE GIGA (SQUARED GIGA) */ + [0x3311, 0x3311], /* SQUARE GINII (SQUARED GINII) */ + [0x3312, 0x3312], /* SQUARE KYURII (SQUARED KYURII) */ + [0x3313, 0x3313], /* SQUARE GIRUDAA (SQUARED GIRUDAA) */ + [0x3314, 0x3314], /* SQUARE KIRO (SQUARED KIRO) */ + [0x3315, 0x3315], /* SQUARE KIROGURAMU (SQUARED KIROGURAMU) */ + [0x3316, 0x3316], /* SQUARE KIROMEETORU (SQUARED KIROMEETORU) */ + [0x3317, 0x3317], /* SQUARE KIROWATTO (SQUARED KIROWATTO) */ + [0x3318, 0x3318], /* SQUARE GURAMU (SQUARED GURAMU) */ + [0x3319, 0x3319], /* SQUARE GURAMUTON (SQUARED GURAMUTON) */ + [0x331a, 0x331a], /* SQUARE KURUZEIRO (SQUARED KURUZEIRO) */ + [0x331b, 0x331b], /* SQUARE KUROONE (SQUARED KUROONE) */ + [0x331c, 0x331c], /* SQUARE KEESU (SQUARED KEESU) */ + [0x331d, 0x331d], /* SQUARE KORUNA (SQUARED KORUNA) */ + [0x331e, 0x331e], /* SQUARE KOOPO (SQUARED KOOPO) */ + [0x331f, 0x331f], /* SQUARE SAIKURU (SQUARED SAIKURU) */ + [0x3320, 0x3320], /* SQUARE SANTIIMU (SQUARED SANTIIMU) */ + [0x3321, 0x3321], /* SQUARE SIRINGU (SQUARED SIRINGU) */ + [0x3322, 0x3322], /* SQUARE SENTI (SQUARED SENTI) */ + [0x3323, 0x3323], /* SQUARE SENTO (SQUARED SENTO) */ + [0x3324, 0x3324], /* SQUARE DAASU (SQUARED DAASU) */ + [0x3325, 0x3325], /* SQUARE DESI (SQUARED DESI) */ + [0x3326, 0x3326], /* SQUARE DORU (SQUARED DORU) */ + [0x3327, 0x3327], /* SQUARE TON (SQUARED TON) */ + [0x3328, 0x3328], /* SQUARE NANO (SQUARED NANO) */ + [0x3329, 0x3329], /* SQUARE NOTTO (SQUARED NOTTO) */ + [0x332a, 0x332a], /* SQUARE HAITU (SQUARED HAITU) */ + [0x332b, 0x332b], /* SQUARE PAASENTO (SQUARED PAASENTO) */ + [0x332c, 0x332c], /* SQUARE PAATU (SQUARED PAATU) */ + [0x332d, 0x332d], /* SQUARE BAARERU (SQUARED BAARERU) */ + [0x332e, 0x332e], /* SQUARE PIASUTORU (SQUARED PIASUTORU) */ + [0x332f, 0x332f], /* SQUARE PIKURU (SQUARED PIKURU) */ + [0x3330, 0x3330], /* SQUARE PIKO (SQUARED PIKO) */ + [0x3331, 0x3331], /* SQUARE BIRU (SQUARED BIRU) */ + [0x3332, 0x3332], /* SQUARE HUARADDO (SQUARED HUARADDO) */ + [0x3333, 0x3333], /* SQUARE HUIITO (SQUARED HUIITO) */ + [0x3334, 0x3334], /* SQUARE BUSSYERU (SQUARED BUSSYERU) */ + [0x3335, 0x3335], /* SQUARE HURAN (SQUARED HURAN) */ + [0x3336, 0x3336], /* SQUARE HEKUTAARU (SQUARED HEKUTAARU) */ + [0x3337, 0x3337], /* SQUARE PESO (SQUARED PESO) */ + [0x3338, 0x3338], /* SQUARE PENIHI (SQUARED PENIHI) */ + [0x3339, 0x3339], /* SQUARE HERUTU (SQUARED HERUTU) */ + [0x333a, 0x333a], /* SQUARE PENSU (SQUARED PENSU) */ + [0x333b, 0x333b], /* SQUARE PEEZI (SQUARED PEEZI) */ + [0x333c, 0x333c], /* SQUARE BEETA (SQUARED BEETA) */ + [0x333d, 0x333d], /* SQUARE POINTO (SQUARED POINTO) */ + [0x333e, 0x333e], /* SQUARE BORUTO (SQUARED BORUTO) */ + [0x333f, 0x333f], /* SQUARE HON (SQUARED HON) */ + [0x3340, 0x3340], /* SQUARE PONDO (SQUARED PONDO) */ + [0x3341, 0x3341], /* SQUARE HOORU (SQUARED HOORU) */ + [0x3342, 0x3342], /* SQUARE HOON (SQUARED HOON) */ + [0x3343, 0x3343], /* SQUARE MAIKURO (SQUARED MAIKURO) */ + [0x3344, 0x3344], /* SQUARE MAIRU (SQUARED MAIRU) */ + [0x3345, 0x3345], /* SQUARE MAHHA (SQUARED MAHHA) */ + [0x3346, 0x3346], /* SQUARE MARUKU (SQUARED MARUKU) */ + [0x3347, 0x3347], /* SQUARE MANSYON (SQUARED MANSYON) */ + [0x3348, 0x3348], /* SQUARE MIKURON (SQUARED MIKURON) */ + [0x3349, 0x3349], /* SQUARE MIRI (SQUARED MIRI) */ + [0x334a, 0x334a], /* SQUARE MIRIBAARU (SQUARED MIRIBAARU) */ + [0x334b, 0x334b], /* SQUARE MEGA (SQUARED MEGA) */ + [0x334c, 0x334c], /* SQUARE MEGATON (SQUARED MEGATON) */ + [0x334d, 0x334d], /* SQUARE MEETORU (SQUARED MEETORU) */ + [0x334e, 0x334e], /* SQUARE YAADO (SQUARED YAADO) */ + [0x334f, 0x334f], /* SQUARE YAARU (SQUARED YAARU) */ + [0x3350, 0x3350], /* SQUARE YUAN (SQUARED YUAN) */ + [0x3351, 0x3351], /* SQUARE RITTORU (SQUARED RITTORU) */ + [0x3352, 0x3352], /* SQUARE RIRA (SQUARED RIRA) */ + [0x3353, 0x3353], /* SQUARE RUPII (SQUARED RUPII) */ + [0x3354, 0x3354], /* SQUARE RUUBURU (SQUARED RUUBURU) */ + [0x3355, 0x3355], /* SQUARE REMU (SQUARED REMU) */ + [0x3356, 0x3356], /* SQUARE RENTOGEN (SQUARED RENTOGEN) */ + [0x3357, 0x3357], /* SQUARE WATTO (SQUARED WATTO) */ + [0x3358, 0x3358], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ZERO */ + [0x3359, 0x3359], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ONE */ + [0x335a, 0x335a], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWO */ + [0x335b, 0x335b], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THREE */ + [0x335c, 0x335c], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOUR */ + [0x335d, 0x335d], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIVE */ + [0x335e, 0x335e], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIX */ + [0x335f, 0x335f], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVEN */ + [0x3360, 0x3360], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHT */ + [0x3361, 0x3361], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINE */ + [0x3362, 0x3362], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TEN */ + [0x3363, 0x3363], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ELEVEN */ + [0x3364, 0x3364], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWELVE */ + [0x3365, 0x3365], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THIRTEEN */ + [0x3366, 0x3366], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOURTEEN */ + [0x3367, 0x3367], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIFTEEN */ + [0x3368, 0x3368], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIXTEEN */ + [0x3369, 0x3369], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVENTEEN */ + [0x336a, 0x336a], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHTEEN */ + [0x336b, 0x336b], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINETEEN */ + [0x336c, 0x336c], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY */ + [0x336d, 0x336d], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-ONE */ + [0x336e, 0x336e], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-TWO */ + [0x336f, 0x336f], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-THREE */ + [0x3370, 0x3370], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-FOUR */ + [0x3371, 0x3371], /* SQUARE HPA */ + [0x3372, 0x3372], /* SQUARE DA */ + [0x3373, 0x3373], /* SQUARE AU */ + [0x3374, 0x3374], /* SQUARE BAR */ + [0x3375, 0x3375], /* SQUARE OV */ + [0x3376, 0x3376], /* SQUARE PC */ + [0x3377, 0x3377], /* SQUARE DM */ + [0x3378, 0x3378], /* SQUARE DM SQUARED */ + [0x3379, 0x3379], /* SQUARE DM CUBED */ + [0x337a, 0x337a], /* SQUARE IU */ + [0x337b, 0x337b], /* SQUARE ERA NAME HEISEI (SQUARED TWO IDEOGRAPHS ERA NAME HEISEI) */ + [0x337c, 0x337c], /* SQUARE ERA NAME SYOUWA (SQUARED TWO IDEOGRAPHS ERA NAME SYOUWA) */ + [0x337d, 0x337d], /* SQUARE ERA NAME TAISYOU (SQUARED TWO IDEOGRAPHS ERA NAME TAISYOU) */ + [0x337e, 0x337e], /* SQUARE ERA NAME MEIZI (SQUARED TWO IDEOGRAPHS ERA NAME MEIZI) */ + [0x337f, 0x337f], /* SQUARE CORPORATION (SQUARED FOUR IDEOGRAPHS CORPORATION) */ + [0x3380, 0x3380], /* SQUARE PA AMPS (SQUARED PA AMPS) */ + [0x3381, 0x3381], /* SQUARE NA (SQUARED NA) */ + [0x3382, 0x3382], /* SQUARE MU A (SQUARED MU A) */ + [0x3383, 0x3383], /* SQUARE MA (SQUARED MA) */ + [0x3384, 0x3384], /* SQUARE KA (SQUARED KA) */ + [0x3385, 0x3385], /* SQUARE KB (SQUARED KB) */ + [0x3386, 0x3386], /* SQUARE MB (SQUARED MB) */ + [0x3387, 0x3387], /* SQUARE GB (SQUARED GB) */ + [0x3388, 0x3388], /* SQUARE CAL (SQUARED CAL) */ + [0x3389, 0x3389], /* SQUARE KCAL (SQUARED KCAL) */ + [0x338a, 0x338a], /* SQUARE PF (SQUARED PF) */ + [0x338b, 0x338b], /* SQUARE NF (SQUARED NF) */ + [0x338c, 0x338c], /* SQUARE MU F (SQUARED MU F) */ + [0x338d, 0x338d], /* SQUARE MU G (SQUARED MU G) */ + [0x338e, 0x338e], /* SQUARE MG (SQUARED MG) */ + [0x338f, 0x338f], /* SQUARE KG (SQUARED KG) */ + [0x3390, 0x3390], /* SQUARE HZ (SQUARED HZ) */ + [0x3391, 0x3391], /* SQUARE KHZ (SQUARED KHZ) */ + [0x3392, 0x3392], /* SQUARE MHZ (SQUARED MHZ) */ + [0x3393, 0x3393], /* SQUARE GHZ (SQUARED GHZ) */ + [0x3394, 0x3394], /* SQUARE THZ (SQUARED THZ) */ + [0x3395, 0x3395], /* SQUARE MU L (SQUARED MU L) */ + [0x3396, 0x3396], /* SQUARE ML (SQUARED ML) */ + [0x3397, 0x3397], /* SQUARE DL (SQUARED DL) */ + [0x3398, 0x3398], /* SQUARE KL (SQUARED KL) */ + [0x3399, 0x3399], /* SQUARE FM (SQUARED FM) */ + [0x339a, 0x339a], /* SQUARE NM (SQUARED NM) */ + [0x339b, 0x339b], /* SQUARE MU M (SQUARED MU M) */ + [0x339c, 0x339c], /* SQUARE MM (SQUARED MM) */ + [0x339d, 0x339d], /* SQUARE CM (SQUARED CM) */ + [0x339e, 0x339e], /* SQUARE KM (SQUARED KM) */ + [0x339f, 0x339f], /* SQUARE MM SQUARED (SQUARED MM SQUARED) */ + [0x33a0, 0x33a0], /* SQUARE CM SQUARED (SQUARED CM SQUARED) */ + [0x33a1, 0x33a1], /* SQUARE M SQUARED (SQUARED M SQUARED) */ + [0x33a2, 0x33a2], /* SQUARE KM SQUARED (SQUARED KM SQUARED) */ + [0x33a3, 0x33a3], /* SQUARE MM CUBED (SQUARED MM CUBED) */ + [0x33a4, 0x33a4], /* SQUARE CM CUBED (SQUARED CM CUBED) */ + [0x33a5, 0x33a5], /* SQUARE M CUBED (SQUARED M CUBED) */ + [0x33a6, 0x33a6], /* SQUARE KM CUBED (SQUARED KM CUBED) */ + [0x33a7, 0x33a7], /* SQUARE M OVER S (SQUARED M OVER S) */ + [0x33a8, 0x33a8], /* SQUARE M OVER S SQUARED (SQUARED M OVER S SQUARED) */ + [0x33a9, 0x33a9], /* SQUARE PA (SQUARED PA) */ + [0x33aa, 0x33aa], /* SQUARE KPA (SQUARED KPA) */ + [0x33ab, 0x33ab], /* SQUARE MPA (SQUARED MPA) */ + [0x33ac, 0x33ac], /* SQUARE GPA (SQUARED GPA) */ + [0x33ad, 0x33ad], /* SQUARE RAD (SQUARED RAD) */ + [0x33ae, 0x33ae], /* SQUARE RAD OVER S (SQUARED RAD OVER S) */ + [0x33af, 0x33af], /* SQUARE RAD OVER S SQUARED (SQUARED RAD OVER S SQUARED) */ + [0x33b0, 0x33b0], /* SQUARE PS (SQUARED PS) */ + [0x33b1, 0x33b1], /* SQUARE NS (SQUARED NS) */ + [0x33b2, 0x33b2], /* SQUARE MU S (SQUARED MU S) */ + [0x33b3, 0x33b3], /* SQUARE MS (SQUARED MS) */ + [0x33b4, 0x33b4], /* SQUARE PV (SQUARED PV) */ + [0x33b5, 0x33b5], /* SQUARE NV (SQUARED NV) */ + [0x33b6, 0x33b6], /* SQUARE MU V (SQUARED MU V) */ + [0x33b7, 0x33b7], /* SQUARE MV (SQUARED MV) */ + [0x33b8, 0x33b8], /* SQUARE KV (SQUARED KV) */ + [0x33b9, 0x33b9], /* SQUARE MV MEGA (SQUARED MV MEGA) */ + [0x33ba, 0x33ba], /* SQUARE PW (SQUARED PW) */ + [0x33bb, 0x33bb], /* SQUARE NW (SQUARED NW) */ + [0x33bc, 0x33bc], /* SQUARE MU W (SQUARED MU W) */ + [0x33bd, 0x33bd], /* SQUARE MW (SQUARED MW) */ + [0x33be, 0x33be], /* SQUARE KW (SQUARED KW) */ + [0x33bf, 0x33bf], /* SQUARE MW MEGA (SQUARED MW MEGA) */ + [0x33c0, 0x33c0], /* SQUARE K OHM (SQUARED K OHM) */ + [0x33c1, 0x33c1], /* SQUARE M OHM (SQUARED M OHM) */ + [0x33c2, 0x33c2], /* SQUARE AM (SQUARED AM) */ + [0x33c3, 0x33c3], /* SQUARE BQ (SQUARED BQ) */ + [0x33c4, 0x33c4], /* SQUARE CC (SQUARED CC) */ + [0x33c5, 0x33c5], /* SQUARE CD (SQUARED CD) */ + [0x33c6, 0x33c6], /* SQUARE C OVER KG (SQUARED C OVER KG) */ + [0x33c7, 0x33c7], /* SQUARE CO (SQUARED CO) */ + [0x33c8, 0x33c8], /* SQUARE DB (SQUARED DB) */ + [0x33c9, 0x33c9], /* SQUARE GY (SQUARED GY) */ + [0x33ca, 0x33ca], /* SQUARE HA (SQUARED HA) */ + [0x33cb, 0x33cb], /* SQUARE HP (SQUARED HP) */ + [0x33cc, 0x33cc], /* SQUARE IN (SQUARED IN) */ + [0x33cd, 0x33cd], /* SQUARE KK (SQUARED KK) */ + [0x33ce, 0x33ce], /* SQUARE KM CAPITAL (SQUARED KM CAPITAL) */ + [0x33cf, 0x33cf], /* SQUARE KT (SQUARED KT) */ + [0x33d0, 0x33d0], /* SQUARE LM (SQUARED LM) */ + [0x33d1, 0x33d1], /* SQUARE LN (SQUARED LN) */ + [0x33d2, 0x33d2], /* SQUARE LOG (SQUARED LOG) */ + [0x33d3, 0x33d3], /* SQUARE LX (SQUARED LX) */ + [0x33d4, 0x33d4], /* SQUARE MB SMALL (SQUARED MB SMALL) */ + [0x33d5, 0x33d5], /* SQUARE MIL (SQUARED MIL) */ + [0x33d6, 0x33d6], /* SQUARE MOL (SQUARED MOL) */ + [0x33d7, 0x33d7], /* SQUARE PH (SQUARED PH) */ + [0x33d8, 0x33d8], /* SQUARE PM (SQUARED PM) */ + [0x33d9, 0x33d9], /* SQUARE PPM (SQUARED PPM) */ + [0x33da, 0x33da], /* SQUARE PR (SQUARED PR) */ + [0x33db, 0x33db], /* SQUARE SR (SQUARED SR) */ + [0x33dc, 0x33dc], /* SQUARE SV (SQUARED SV) */ + [0x33dd, 0x33dd], /* SQUARE WB (SQUARED WB) */ + [0x33de, 0x33de], /* SQUARE V OVER M */ + [0x33df, 0x33df], /* SQUARE A OVER M */ + [0x33e0, 0x33e0], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ONE */ + [0x33e1, 0x33e1], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWO */ + [0x33e2, 0x33e2], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THREE */ + [0x33e3, 0x33e3], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOUR */ + [0x33e4, 0x33e4], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIVE */ + [0x33e5, 0x33e5], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIX */ + [0x33e6, 0x33e6], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVEN */ + [0x33e7, 0x33e7], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHT */ + [0x33e8, 0x33e8], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINE */ + [0x33e9, 0x33e9], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TEN */ + [0x33ea, 0x33ea], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ELEVEN */ + [0x33eb, 0x33eb], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWELVE */ + [0x33ec, 0x33ec], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTEEN */ + [0x33ed, 0x33ed], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOURTEEN */ + [0x33ee, 0x33ee], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIFTEEN */ + [0x33ef, 0x33ef], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIXTEEN */ + [0x33f0, 0x33f0], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVENTEEN */ + [0x33f1, 0x33f1], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHTEEN */ + [0x33f2, 0x33f2], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINETEEN */ + [0x33f3, 0x33f3], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY */ + [0x33f4, 0x33f4], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-ONE */ + [0x33f5, 0x33f5], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-TWO */ + [0x33f6, 0x33f6], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-THREE */ + [0x33f7, 0x33f7], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FOUR */ + [0x33f8, 0x33f8], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FIVE */ + [0x33f9, 0x33f9], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SIX */ + [0x33fa, 0x33fa], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SEVEN */ + [0x33fb, 0x33fb], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-EIGHT */ + [0x33fc, 0x33fc], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-NINE */ + [0x33fd, 0x33fd], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY */ + [0x33fe, 0x33fe], /* IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY-ONE */ + [0x33ff, 0x33ff], /* SQUARE GAL */ + [0x3400, 0x3400], /* CJK Ideograph Extension A */ + [0x3401, 0x3401], /* CJK Ideograph Extension A */ + [0x3402, 0x3402], /* CJK Ideograph Extension A */ + [0x3403, 0x3403], /* CJK Ideograph Extension A */ + [0x3404, 0x3404], /* CJK Ideograph Extension A */ + [0x3405, 0x3405], /* CJK Ideograph Extension A */ + [0x3406, 0x3406], /* CJK Ideograph Extension A */ + [0x3407, 0x3407], /* CJK Ideograph Extension A */ + [0x3408, 0x3408], /* CJK Ideograph Extension A */ + [0x3409, 0x3409], /* CJK Ideograph Extension A */ + [0x340a, 0x340a], /* CJK Ideograph Extension A */ + [0x340b, 0x340b], /* CJK Ideograph Extension A */ + [0x340c, 0x340c], /* CJK Ideograph Extension A */ + [0x340d, 0x340d], /* CJK Ideograph Extension A */ + [0x340e, 0x340e], /* CJK Ideograph Extension A */ + [0x340f, 0x340f], /* CJK Ideograph Extension A */ + [0x3410, 0x3410], /* CJK Ideograph Extension A */ + [0x3411, 0x3411], /* CJK Ideograph Extension A */ + [0x3412, 0x3412], /* CJK Ideograph Extension A */ + [0x3413, 0x3413], /* CJK Ideograph Extension A */ + [0x3414, 0x3414], /* CJK Ideograph Extension A */ + [0x3415, 0x3415], /* CJK Ideograph Extension A */ + [0x3416, 0x3416], /* CJK Ideograph Extension A */ + [0x3417, 0x3417], /* CJK Ideograph Extension A */ + [0x3418, 0x3418], /* CJK Ideograph Extension A */ + [0x3419, 0x3419], /* CJK Ideograph Extension A */ + [0x341a, 0x341a], /* CJK Ideograph Extension A */ + [0x341b, 0x341b], /* CJK Ideograph Extension A */ + [0x341c, 0x341c], /* CJK Ideograph Extension A */ + [0x341d, 0x341d], /* CJK Ideograph Extension A */ + [0x341e, 0x341e], /* CJK Ideograph Extension A */ + [0x341f, 0x341f], /* CJK Ideograph Extension A */ + [0x3420, 0x3420], /* CJK Ideograph Extension A */ + [0x3421, 0x3421], /* CJK Ideograph Extension A */ + [0x3422, 0x3422], /* CJK Ideograph Extension A */ + [0x3423, 0x3423], /* CJK Ideograph Extension A */ + [0x3424, 0x3424], /* CJK Ideograph Extension A */ + [0x3425, 0x3425], /* CJK Ideograph Extension A */ + [0x3426, 0x3426], /* CJK Ideograph Extension A */ + [0x3427, 0x3427], /* CJK Ideograph Extension A */ + [0x3428, 0x3428], /* CJK Ideograph Extension A */ + [0x3429, 0x3429], /* CJK Ideograph Extension A */ + [0x342a, 0x342a], /* CJK Ideograph Extension A */ + [0x342b, 0x342b], /* CJK Ideograph Extension A */ + [0x342c, 0x342c], /* CJK Ideograph Extension A */ + [0x342d, 0x342d], /* CJK Ideograph Extension A */ + [0x342e, 0x342e], /* CJK Ideograph Extension A */ + [0x342f, 0x342f], /* CJK Ideograph Extension A */ + [0x3430, 0x3430], /* CJK Ideograph Extension A */ + [0x3431, 0x3431], /* CJK Ideograph Extension A */ + [0x3432, 0x3432], /* CJK Ideograph Extension A */ + [0x3433, 0x3433], /* CJK Ideograph Extension A */ + [0x3434, 0x3434], /* CJK Ideograph Extension A */ + [0x3435, 0x3435], /* CJK Ideograph Extension A */ + [0x3436, 0x3436], /* CJK Ideograph Extension A */ + [0x3437, 0x3437], /* CJK Ideograph Extension A */ + [0x3438, 0x3438], /* CJK Ideograph Extension A */ + [0x3439, 0x3439], /* CJK Ideograph Extension A */ + [0x343a, 0x343a], /* CJK Ideograph Extension A */ + [0x343b, 0x343b], /* CJK Ideograph Extension A */ + [0x343c, 0x343c], /* CJK Ideograph Extension A */ + [0x343d, 0x343d], /* CJK Ideograph Extension A */ + [0x343e, 0x343e], /* CJK Ideograph Extension A */ + [0x343f, 0x343f], /* CJK Ideograph Extension A */ + [0x3440, 0x3440], /* CJK Ideograph Extension A */ + [0x3441, 0x3441], /* CJK Ideograph Extension A */ + [0x3442, 0x3442], /* CJK Ideograph Extension A */ + [0x3443, 0x3443], /* CJK Ideograph Extension A */ + [0x3444, 0x3444], /* CJK Ideograph Extension A */ + [0x3445, 0x3445], /* CJK Ideograph Extension A */ + [0x3446, 0x3446], /* CJK Ideograph Extension A */ + [0x3447, 0x3447], /* CJK Ideograph Extension A */ + [0x3448, 0x3448], /* CJK Ideograph Extension A */ + [0x3449, 0x3449], /* CJK Ideograph Extension A */ + [0x344a, 0x344a], /* CJK Ideograph Extension A */ + [0x344b, 0x344b], /* CJK Ideograph Extension A */ + [0x344c, 0x344c], /* CJK Ideograph Extension A */ + [0x344d, 0x344d], /* CJK Ideograph Extension A */ + [0x344e, 0x344e], /* CJK Ideograph Extension A */ + [0x344f, 0x344f], /* CJK Ideograph Extension A */ + [0x3450, 0x3450], /* CJK Ideograph Extension A */ + [0x3451, 0x3451], /* CJK Ideograph Extension A */ + [0x3452, 0x3452], /* CJK Ideograph Extension A */ + [0x3453, 0x3453], /* CJK Ideograph Extension A */ + [0x3454, 0x3454], /* CJK Ideograph Extension A */ + [0x3455, 0x3455], /* CJK Ideograph Extension A */ + [0x3456, 0x3456], /* CJK Ideograph Extension A */ + [0x3457, 0x3457], /* CJK Ideograph Extension A */ + [0x3458, 0x3458], /* CJK Ideograph Extension A */ + [0x3459, 0x3459], /* CJK Ideograph Extension A */ + [0x345a, 0x345a], /* CJK Ideograph Extension A */ + [0x345b, 0x345b], /* CJK Ideograph Extension A */ + [0x345c, 0x345c], /* CJK Ideograph Extension A */ + [0x345d, 0x345d], /* CJK Ideograph Extension A */ + [0x345e, 0x345e], /* CJK Ideograph Extension A */ + [0x345f, 0x345f], /* CJK Ideograph Extension A */ + [0x3460, 0x3460], /* CJK Ideograph Extension A */ + [0x3461, 0x3461], /* CJK Ideograph Extension A */ + [0x3462, 0x3462], /* CJK Ideograph Extension A */ + [0x3463, 0x3463], /* CJK Ideograph Extension A */ + [0x3464, 0x3464], /* CJK Ideograph Extension A */ + [0x3465, 0x3465], /* CJK Ideograph Extension A */ + [0x3466, 0x3466], /* CJK Ideograph Extension A */ + [0x3467, 0x3467], /* CJK Ideograph Extension A */ + [0x3468, 0x3468], /* CJK Ideograph Extension A */ + [0x3469, 0x3469], /* CJK Ideograph Extension A */ + [0x346a, 0x346a], /* CJK Ideograph Extension A */ + [0x346b, 0x346b], /* CJK Ideograph Extension A */ + [0x346c, 0x346c], /* CJK Ideograph Extension A */ + [0x346d, 0x346d], /* CJK Ideograph Extension A */ + [0x346e, 0x346e], /* CJK Ideograph Extension A */ + [0x346f, 0x346f], /* CJK Ideograph Extension A */ + [0x3470, 0x3470], /* CJK Ideograph Extension A */ + [0x3471, 0x3471], /* CJK Ideograph Extension A */ + [0x3472, 0x3472], /* CJK Ideograph Extension A */ + [0x3473, 0x3473], /* CJK Ideograph Extension A */ + [0x3474, 0x3474], /* CJK Ideograph Extension A */ + [0x3475, 0x3475], /* CJK Ideograph Extension A */ + [0x3476, 0x3476], /* CJK Ideograph Extension A */ + [0x3477, 0x3477], /* CJK Ideograph Extension A */ + [0x3478, 0x3478], /* CJK Ideograph Extension A */ + [0x3479, 0x3479], /* CJK Ideograph Extension A */ + [0x347a, 0x347a], /* CJK Ideograph Extension A */ + [0x347b, 0x347b], /* CJK Ideograph Extension A */ + [0x347c, 0x347c], /* CJK Ideograph Extension A */ + [0x347d, 0x347d], /* CJK Ideograph Extension A */ + [0x347e, 0x347e], /* CJK Ideograph Extension A */ + [0x347f, 0x347f], /* CJK Ideograph Extension A */ + [0x3480, 0x3480], /* CJK Ideograph Extension A */ + [0x3481, 0x3481], /* CJK Ideograph Extension A */ + [0x3482, 0x3482], /* CJK Ideograph Extension A */ + [0x3483, 0x3483], /* CJK Ideograph Extension A */ + [0x3484, 0x3484], /* CJK Ideograph Extension A */ + [0x3485, 0x3485], /* CJK Ideograph Extension A */ + [0x3486, 0x3486], /* CJK Ideograph Extension A */ + [0x3487, 0x3487], /* CJK Ideograph Extension A */ + [0x3488, 0x3488], /* CJK Ideograph Extension A */ + [0x3489, 0x3489], /* CJK Ideograph Extension A */ + [0x348a, 0x348a], /* CJK Ideograph Extension A */ + [0x348b, 0x348b], /* CJK Ideograph Extension A */ + [0x348c, 0x348c], /* CJK Ideograph Extension A */ + [0x348d, 0x348d], /* CJK Ideograph Extension A */ + [0x348e, 0x348e], /* CJK Ideograph Extension A */ + [0x348f, 0x348f], /* CJK Ideograph Extension A */ + [0x3490, 0x3490], /* CJK Ideograph Extension A */ + [0x3491, 0x3491], /* CJK Ideograph Extension A */ + [0x3492, 0x3492], /* CJK Ideograph Extension A */ + [0x3493, 0x3493], /* CJK Ideograph Extension A */ + [0x3494, 0x3494], /* CJK Ideograph Extension A */ + [0x3495, 0x3495], /* CJK Ideograph Extension A */ + [0x3496, 0x3496], /* CJK Ideograph Extension A */ + [0x3497, 0x3497], /* CJK Ideograph Extension A */ + [0x3498, 0x3498], /* CJK Ideograph Extension A */ + [0x3499, 0x3499], /* CJK Ideograph Extension A */ + [0x349a, 0x349a], /* CJK Ideograph Extension A */ + [0x349b, 0x349b], /* CJK Ideograph Extension A */ + [0x349c, 0x349c], /* CJK Ideograph Extension A */ + [0x349d, 0x349d], /* CJK Ideograph Extension A */ + [0x349e, 0x349e], /* CJK Ideograph Extension A */ + [0x349f, 0x349f], /* CJK Ideograph Extension A */ + [0x34a0, 0x34a0], /* CJK Ideograph Extension A */ + [0x34a1, 0x34a1], /* CJK Ideograph Extension A */ + [0x34a2, 0x34a2], /* CJK Ideograph Extension A */ + [0x34a3, 0x34a3], /* CJK Ideograph Extension A */ + [0x34a4, 0x34a4], /* CJK Ideograph Extension A */ + [0x34a5, 0x34a5], /* CJK Ideograph Extension A */ + [0x34a6, 0x34a6], /* CJK Ideograph Extension A */ + [0x34a7, 0x34a7], /* CJK Ideograph Extension A */ + [0x34a8, 0x34a8], /* CJK Ideograph Extension A */ + [0x34a9, 0x34a9], /* CJK Ideograph Extension A */ + [0x34aa, 0x34aa], /* CJK Ideograph Extension A */ + [0x34ab, 0x34ab], /* CJK Ideograph Extension A */ + [0x34ac, 0x34ac], /* CJK Ideograph Extension A */ + [0x34ad, 0x34ad], /* CJK Ideograph Extension A */ + [0x34ae, 0x34ae], /* CJK Ideograph Extension A */ + [0x34af, 0x34af], /* CJK Ideograph Extension A */ + [0x34b0, 0x34b0], /* CJK Ideograph Extension A */ + [0x34b1, 0x34b1], /* CJK Ideograph Extension A */ + [0x34b2, 0x34b2], /* CJK Ideograph Extension A */ + [0x34b3, 0x34b3], /* CJK Ideograph Extension A */ + [0x34b4, 0x34b4], /* CJK Ideograph Extension A */ + [0x34b5, 0x34b5], /* CJK Ideograph Extension A */ + [0x34b6, 0x34b6], /* CJK Ideograph Extension A */ + [0x34b7, 0x34b7], /* CJK Ideograph Extension A */ + [0x34b8, 0x34b8], /* CJK Ideograph Extension A */ + [0x34b9, 0x34b9], /* CJK Ideograph Extension A */ + [0x34ba, 0x34ba], /* CJK Ideograph Extension A */ + [0x34bb, 0x34bb], /* CJK Ideograph Extension A */ + [0x34bc, 0x34bc], /* CJK Ideograph Extension A */ + [0x34bd, 0x34bd], /* CJK Ideograph Extension A */ + [0x34be, 0x34be], /* CJK Ideograph Extension A */ + [0x34bf, 0x34bf], /* CJK Ideograph Extension A */ + [0x34c0, 0x34c0], /* CJK Ideograph Extension A */ + [0x34c1, 0x34c1], /* CJK Ideograph Extension A */ + [0x34c2, 0x34c2], /* CJK Ideograph Extension A */ + [0x34c3, 0x34c3], /* CJK Ideograph Extension A */ + [0x34c4, 0x34c4], /* CJK Ideograph Extension A */ + [0x34c5, 0x34c5], /* CJK Ideograph Extension A */ + [0x34c6, 0x34c6], /* CJK Ideograph Extension A */ + [0x34c7, 0x34c7], /* CJK Ideograph Extension A */ + [0x34c8, 0x34c8], /* CJK Ideograph Extension A */ + [0x34c9, 0x34c9], /* CJK Ideograph Extension A */ + [0x34ca, 0x34ca], /* CJK Ideograph Extension A */ + [0x34cb, 0x34cb], /* CJK Ideograph Extension A */ + [0x34cc, 0x34cc], /* CJK Ideograph Extension A */ + [0x34cd, 0x34cd], /* CJK Ideograph Extension A */ + [0x34ce, 0x34ce], /* CJK Ideograph Extension A */ + [0x34cf, 0x34cf], /* CJK Ideograph Extension A */ + [0x34d0, 0x34d0], /* CJK Ideograph Extension A */ + [0x34d1, 0x34d1], /* CJK Ideograph Extension A */ + [0x34d2, 0x34d2], /* CJK Ideograph Extension A */ + [0x34d3, 0x34d3], /* CJK Ideograph Extension A */ + [0x34d4, 0x34d4], /* CJK Ideograph Extension A */ + [0x34d5, 0x34d5], /* CJK Ideograph Extension A */ + [0x34d6, 0x34d6], /* CJK Ideograph Extension A */ + [0x34d7, 0x34d7], /* CJK Ideograph Extension A */ + [0x34d8, 0x34d8], /* CJK Ideograph Extension A */ + [0x34d9, 0x34d9], /* CJK Ideograph Extension A */ + [0x34da, 0x34da], /* CJK Ideograph Extension A */ + [0x34db, 0x34db], /* CJK Ideograph Extension A */ + [0x34dc, 0x34dc], /* CJK Ideograph Extension A */ + [0x34dd, 0x34dd], /* CJK Ideograph Extension A */ + [0x34de, 0x34de], /* CJK Ideograph Extension A */ + [0x34df, 0x34df], /* CJK Ideograph Extension A */ + [0x34e0, 0x34e0], /* CJK Ideograph Extension A */ + [0x34e1, 0x34e1], /* CJK Ideograph Extension A */ + [0x34e2, 0x34e2], /* CJK Ideograph Extension A */ + [0x34e3, 0x34e3], /* CJK Ideograph Extension A */ + [0x34e4, 0x34e4], /* CJK Ideograph Extension A */ + [0x34e5, 0x34e5], /* CJK Ideograph Extension A */ + [0x34e6, 0x34e6], /* CJK Ideograph Extension A */ + [0x34e7, 0x34e7], /* CJK Ideograph Extension A */ + [0x34e8, 0x34e8], /* CJK Ideograph Extension A */ + [0x34e9, 0x34e9], /* CJK Ideograph Extension A */ + [0x34ea, 0x34ea], /* CJK Ideograph Extension A */ + [0x34eb, 0x34eb], /* CJK Ideograph Extension A */ + [0x34ec, 0x34ec], /* CJK Ideograph Extension A */ + [0x34ed, 0x34ed], /* CJK Ideograph Extension A */ + [0x34ee, 0x34ee], /* CJK Ideograph Extension A */ + [0x34ef, 0x34ef], /* CJK Ideograph Extension A */ + [0x34f0, 0x34f0], /* CJK Ideograph Extension A */ + [0x34f1, 0x34f1], /* CJK Ideograph Extension A */ + [0x34f2, 0x34f2], /* CJK Ideograph Extension A */ + [0x34f3, 0x34f3], /* CJK Ideograph Extension A */ + [0x34f4, 0x34f4], /* CJK Ideograph Extension A */ + [0x34f5, 0x34f5], /* CJK Ideograph Extension A */ + [0x34f6, 0x34f6], /* CJK Ideograph Extension A */ + [0x34f7, 0x34f7], /* CJK Ideograph Extension A */ + [0x34f8, 0x34f8], /* CJK Ideograph Extension A */ + [0x34f9, 0x34f9], /* CJK Ideograph Extension A */ + [0x34fa, 0x34fa], /* CJK Ideograph Extension A */ + [0x34fb, 0x34fb], /* CJK Ideograph Extension A */ + [0x34fc, 0x34fc], /* CJK Ideograph Extension A */ + [0x34fd, 0x34fd], /* CJK Ideograph Extension A */ + [0x34fe, 0x34fe], /* CJK Ideograph Extension A */ + [0x34ff, 0x34ff], /* CJK Ideograph Extension A */ + [0x3500, 0x3500], /* CJK Ideograph Extension A */ + [0x3501, 0x3501], /* CJK Ideograph Extension A */ + [0x3502, 0x3502], /* CJK Ideograph Extension A */ + [0x3503, 0x3503], /* CJK Ideograph Extension A */ + [0x3504, 0x3504], /* CJK Ideograph Extension A */ + [0x3505, 0x3505], /* CJK Ideograph Extension A */ + [0x3506, 0x3506], /* CJK Ideograph Extension A */ + [0x3507, 0x3507], /* CJK Ideograph Extension A */ + [0x3508, 0x3508], /* CJK Ideograph Extension A */ + [0x3509, 0x3509], /* CJK Ideograph Extension A */ + [0x350a, 0x350a], /* CJK Ideograph Extension A */ + [0x350b, 0x350b], /* CJK Ideograph Extension A */ + [0x350c, 0x350c], /* CJK Ideograph Extension A */ + [0x350d, 0x350d], /* CJK Ideograph Extension A */ + [0x350e, 0x350e], /* CJK Ideograph Extension A */ + [0x350f, 0x350f], /* CJK Ideograph Extension A */ + [0x3510, 0x3510], /* CJK Ideograph Extension A */ + [0x3511, 0x3511], /* CJK Ideograph Extension A */ + [0x3512, 0x3512], /* CJK Ideograph Extension A */ + [0x3513, 0x3513], /* CJK Ideograph Extension A */ + [0x3514, 0x3514], /* CJK Ideograph Extension A */ + [0x3515, 0x3515], /* CJK Ideograph Extension A */ + [0x3516, 0x3516], /* CJK Ideograph Extension A */ + [0x3517, 0x3517], /* CJK Ideograph Extension A */ + [0x3518, 0x3518], /* CJK Ideograph Extension A */ + [0x3519, 0x3519], /* CJK Ideograph Extension A */ + [0x351a, 0x351a], /* CJK Ideograph Extension A */ + [0x351b, 0x351b], /* CJK Ideograph Extension A */ + [0x351c, 0x351c], /* CJK Ideograph Extension A */ + [0x351d, 0x351d], /* CJK Ideograph Extension A */ + [0x351e, 0x351e], /* CJK Ideograph Extension A */ + [0x351f, 0x351f], /* CJK Ideograph Extension A */ + [0x3520, 0x3520], /* CJK Ideograph Extension A */ + [0x3521, 0x3521], /* CJK Ideograph Extension A */ + [0x3522, 0x3522], /* CJK Ideograph Extension A */ + [0x3523, 0x3523], /* CJK Ideograph Extension A */ + [0x3524, 0x3524], /* CJK Ideograph Extension A */ + [0x3525, 0x3525], /* CJK Ideograph Extension A */ + [0x3526, 0x3526], /* CJK Ideograph Extension A */ + [0x3527, 0x3527], /* CJK Ideograph Extension A */ + [0x3528, 0x3528], /* CJK Ideograph Extension A */ + [0x3529, 0x3529], /* CJK Ideograph Extension A */ + [0x352a, 0x352a], /* CJK Ideograph Extension A */ + [0x352b, 0x352b], /* CJK Ideograph Extension A */ + [0x352c, 0x352c], /* CJK Ideograph Extension A */ + [0x352d, 0x352d], /* CJK Ideograph Extension A */ + [0x352e, 0x352e], /* CJK Ideograph Extension A */ + [0x352f, 0x352f], /* CJK Ideograph Extension A */ + [0x3530, 0x3530], /* CJK Ideograph Extension A */ + [0x3531, 0x3531], /* CJK Ideograph Extension A */ + [0x3532, 0x3532], /* CJK Ideograph Extension A */ + [0x3533, 0x3533], /* CJK Ideograph Extension A */ + [0x3534, 0x3534], /* CJK Ideograph Extension A */ + [0x3535, 0x3535], /* CJK Ideograph Extension A */ + [0x3536, 0x3536], /* CJK Ideograph Extension A */ + [0x3537, 0x3537], /* CJK Ideograph Extension A */ + [0x3538, 0x3538], /* CJK Ideograph Extension A */ + [0x3539, 0x3539], /* CJK Ideograph Extension A */ + [0x353a, 0x353a], /* CJK Ideograph Extension A */ + [0x353b, 0x353b], /* CJK Ideograph Extension A */ + [0x353c, 0x353c], /* CJK Ideograph Extension A */ + [0x353d, 0x353d], /* CJK Ideograph Extension A */ + [0x353e, 0x353e], /* CJK Ideograph Extension A */ + [0x353f, 0x353f], /* CJK Ideograph Extension A */ + [0x3540, 0x3540], /* CJK Ideograph Extension A */ + [0x3541, 0x3541], /* CJK Ideograph Extension A */ + [0x3542, 0x3542], /* CJK Ideograph Extension A */ + [0x3543, 0x3543], /* CJK Ideograph Extension A */ + [0x3544, 0x3544], /* CJK Ideograph Extension A */ + [0x3545, 0x3545], /* CJK Ideograph Extension A */ + [0x3546, 0x3546], /* CJK Ideograph Extension A */ + [0x3547, 0x3547], /* CJK Ideograph Extension A */ + [0x3548, 0x3548], /* CJK Ideograph Extension A */ + [0x3549, 0x3549], /* CJK Ideograph Extension A */ + [0x354a, 0x354a], /* CJK Ideograph Extension A */ + [0x354b, 0x354b], /* CJK Ideograph Extension A */ + [0x354c, 0x354c], /* CJK Ideograph Extension A */ + [0x354d, 0x354d], /* CJK Ideograph Extension A */ + [0x354e, 0x354e], /* CJK Ideograph Extension A */ + [0x354f, 0x354f], /* CJK Ideograph Extension A */ + [0x3550, 0x3550], /* CJK Ideograph Extension A */ + [0x3551, 0x3551], /* CJK Ideograph Extension A */ + [0x3552, 0x3552], /* CJK Ideograph Extension A */ + [0x3553, 0x3553], /* CJK Ideograph Extension A */ + [0x3554, 0x3554], /* CJK Ideograph Extension A */ + [0x3555, 0x3555], /* CJK Ideograph Extension A */ + [0x3556, 0x3556], /* CJK Ideograph Extension A */ + [0x3557, 0x3557], /* CJK Ideograph Extension A */ + [0x3558, 0x3558], /* CJK Ideograph Extension A */ + [0x3559, 0x3559], /* CJK Ideograph Extension A */ + [0x355a, 0x355a], /* CJK Ideograph Extension A */ + [0x355b, 0x355b], /* CJK Ideograph Extension A */ + [0x355c, 0x355c], /* CJK Ideograph Extension A */ + [0x355d, 0x355d], /* CJK Ideograph Extension A */ + [0x355e, 0x355e], /* CJK Ideograph Extension A */ + [0x355f, 0x355f], /* CJK Ideograph Extension A */ + [0x3560, 0x3560], /* CJK Ideograph Extension A */ + [0x3561, 0x3561], /* CJK Ideograph Extension A */ + [0x3562, 0x3562], /* CJK Ideograph Extension A */ + [0x3563, 0x3563], /* CJK Ideograph Extension A */ + [0x3564, 0x3564], /* CJK Ideograph Extension A */ + [0x3565, 0x3565], /* CJK Ideograph Extension A */ + [0x3566, 0x3566], /* CJK Ideograph Extension A */ + [0x3567, 0x3567], /* CJK Ideograph Extension A */ + [0x3568, 0x3568], /* CJK Ideograph Extension A */ + [0x3569, 0x3569], /* CJK Ideograph Extension A */ + [0x356a, 0x356a], /* CJK Ideograph Extension A */ + [0x356b, 0x356b], /* CJK Ideograph Extension A */ + [0x356c, 0x356c], /* CJK Ideograph Extension A */ + [0x356d, 0x356d], /* CJK Ideograph Extension A */ + [0x356e, 0x356e], /* CJK Ideograph Extension A */ + [0x356f, 0x356f], /* CJK Ideograph Extension A */ + [0x3570, 0x3570], /* CJK Ideograph Extension A */ + [0x3571, 0x3571], /* CJK Ideograph Extension A */ + [0x3572, 0x3572], /* CJK Ideograph Extension A */ + [0x3573, 0x3573], /* CJK Ideograph Extension A */ + [0x3574, 0x3574], /* CJK Ideograph Extension A */ + [0x3575, 0x3575], /* CJK Ideograph Extension A */ + [0x3576, 0x3576], /* CJK Ideograph Extension A */ + [0x3577, 0x3577], /* CJK Ideograph Extension A */ + [0x3578, 0x3578], /* CJK Ideograph Extension A */ + [0x3579, 0x3579], /* CJK Ideograph Extension A */ + [0x357a, 0x357a], /* CJK Ideograph Extension A */ + [0x357b, 0x357b], /* CJK Ideograph Extension A */ + [0x357c, 0x357c], /* CJK Ideograph Extension A */ + [0x357d, 0x357d], /* CJK Ideograph Extension A */ + [0x357e, 0x357e], /* CJK Ideograph Extension A */ + [0x357f, 0x357f], /* CJK Ideograph Extension A */ + [0x3580, 0x3580], /* CJK Ideograph Extension A */ + [0x3581, 0x3581], /* CJK Ideograph Extension A */ + [0x3582, 0x3582], /* CJK Ideograph Extension A */ + [0x3583, 0x3583], /* CJK Ideograph Extension A */ + [0x3584, 0x3584], /* CJK Ideograph Extension A */ + [0x3585, 0x3585], /* CJK Ideograph Extension A */ + [0x3586, 0x3586], /* CJK Ideograph Extension A */ + [0x3587, 0x3587], /* CJK Ideograph Extension A */ + [0x3588, 0x3588], /* CJK Ideograph Extension A */ + [0x3589, 0x3589], /* CJK Ideograph Extension A */ + [0x358a, 0x358a], /* CJK Ideograph Extension A */ + [0x358b, 0x358b], /* CJK Ideograph Extension A */ + [0x358c, 0x358c], /* CJK Ideograph Extension A */ + [0x358d, 0x358d], /* CJK Ideograph Extension A */ + [0x358e, 0x358e], /* CJK Ideograph Extension A */ + [0x358f, 0x358f], /* CJK Ideograph Extension A */ + [0x3590, 0x3590], /* CJK Ideograph Extension A */ + [0x3591, 0x3591], /* CJK Ideograph Extension A */ + [0x3592, 0x3592], /* CJK Ideograph Extension A */ + [0x3593, 0x3593], /* CJK Ideograph Extension A */ + [0x3594, 0x3594], /* CJK Ideograph Extension A */ + [0x3595, 0x3595], /* CJK Ideograph Extension A */ + [0x3596, 0x3596], /* CJK Ideograph Extension A */ + [0x3597, 0x3597], /* CJK Ideograph Extension A */ + [0x3598, 0x3598], /* CJK Ideograph Extension A */ + [0x3599, 0x3599], /* CJK Ideograph Extension A */ + [0x359a, 0x359a], /* CJK Ideograph Extension A */ + [0x359b, 0x359b], /* CJK Ideograph Extension A */ + [0x359c, 0x359c], /* CJK Ideograph Extension A */ + [0x359d, 0x359d], /* CJK Ideograph Extension A */ + [0x359e, 0x359e], /* CJK Ideograph Extension A */ + [0x359f, 0x359f], /* CJK Ideograph Extension A */ + [0x35a0, 0x35a0], /* CJK Ideograph Extension A */ + [0x35a1, 0x35a1], /* CJK Ideograph Extension A */ + [0x35a2, 0x35a2], /* CJK Ideograph Extension A */ + [0x35a3, 0x35a3], /* CJK Ideograph Extension A */ + [0x35a4, 0x35a4], /* CJK Ideograph Extension A */ + [0x35a5, 0x35a5], /* CJK Ideograph Extension A */ + [0x35a6, 0x35a6], /* CJK Ideograph Extension A */ + [0x35a7, 0x35a7], /* CJK Ideograph Extension A */ + [0x35a8, 0x35a8], /* CJK Ideograph Extension A */ + [0x35a9, 0x35a9], /* CJK Ideograph Extension A */ + [0x35aa, 0x35aa], /* CJK Ideograph Extension A */ + [0x35ab, 0x35ab], /* CJK Ideograph Extension A */ + [0x35ac, 0x35ac], /* CJK Ideograph Extension A */ + [0x35ad, 0x35ad], /* CJK Ideograph Extension A */ + [0x35ae, 0x35ae], /* CJK Ideograph Extension A */ + [0x35af, 0x35af], /* CJK Ideograph Extension A */ + [0x35b0, 0x35b0], /* CJK Ideograph Extension A */ + [0x35b1, 0x35b1], /* CJK Ideograph Extension A */ + [0x35b2, 0x35b2], /* CJK Ideograph Extension A */ + [0x35b3, 0x35b3], /* CJK Ideograph Extension A */ + [0x35b4, 0x35b4], /* CJK Ideograph Extension A */ + [0x35b5, 0x35b5], /* CJK Ideograph Extension A */ + [0x35b6, 0x35b6], /* CJK Ideograph Extension A */ + [0x35b7, 0x35b7], /* CJK Ideograph Extension A */ + [0x35b8, 0x35b8], /* CJK Ideograph Extension A */ + [0x35b9, 0x35b9], /* CJK Ideograph Extension A */ + [0x35ba, 0x35ba], /* CJK Ideograph Extension A */ + [0x35bb, 0x35bb], /* CJK Ideograph Extension A */ + [0x35bc, 0x35bc], /* CJK Ideograph Extension A */ + [0x35bd, 0x35bd], /* CJK Ideograph Extension A */ + [0x35be, 0x35be], /* CJK Ideograph Extension A */ + [0x35bf, 0x35bf], /* CJK Ideograph Extension A */ + [0x35c0, 0x35c0], /* CJK Ideograph Extension A */ + [0x35c1, 0x35c1], /* CJK Ideograph Extension A */ + [0x35c2, 0x35c2], /* CJK Ideograph Extension A */ + [0x35c3, 0x35c3], /* CJK Ideograph Extension A */ + [0x35c4, 0x35c4], /* CJK Ideograph Extension A */ + [0x35c5, 0x35c5], /* CJK Ideograph Extension A */ + [0x35c6, 0x35c6], /* CJK Ideograph Extension A */ + [0x35c7, 0x35c7], /* CJK Ideograph Extension A */ + [0x35c8, 0x35c8], /* CJK Ideograph Extension A */ + [0x35c9, 0x35c9], /* CJK Ideograph Extension A */ + [0x35ca, 0x35ca], /* CJK Ideograph Extension A */ + [0x35cb, 0x35cb], /* CJK Ideograph Extension A */ + [0x35cc, 0x35cc], /* CJK Ideograph Extension A */ + [0x35cd, 0x35cd], /* CJK Ideograph Extension A */ + [0x35ce, 0x35ce], /* CJK Ideograph Extension A */ + [0x35cf, 0x35cf], /* CJK Ideograph Extension A */ + [0x35d0, 0x35d0], /* CJK Ideograph Extension A */ + [0x35d1, 0x35d1], /* CJK Ideograph Extension A */ + [0x35d2, 0x35d2], /* CJK Ideograph Extension A */ + [0x35d3, 0x35d3], /* CJK Ideograph Extension A */ + [0x35d4, 0x35d4], /* CJK Ideograph Extension A */ + [0x35d5, 0x35d5], /* CJK Ideograph Extension A */ + [0x35d6, 0x35d6], /* CJK Ideograph Extension A */ + [0x35d7, 0x35d7], /* CJK Ideograph Extension A */ + [0x35d8, 0x35d8], /* CJK Ideograph Extension A */ + [0x35d9, 0x35d9], /* CJK Ideograph Extension A */ + [0x35da, 0x35da], /* CJK Ideograph Extension A */ + [0x35db, 0x35db], /* CJK Ideograph Extension A */ + [0x35dc, 0x35dc], /* CJK Ideograph Extension A */ + [0x35dd, 0x35dd], /* CJK Ideograph Extension A */ + [0x35de, 0x35de], /* CJK Ideograph Extension A */ + [0x35df, 0x35df], /* CJK Ideograph Extension A */ + [0x35e0, 0x35e0], /* CJK Ideograph Extension A */ + [0x35e1, 0x35e1], /* CJK Ideograph Extension A */ + [0x35e2, 0x35e2], /* CJK Ideograph Extension A */ + [0x35e3, 0x35e3], /* CJK Ideograph Extension A */ + [0x35e4, 0x35e4], /* CJK Ideograph Extension A */ + [0x35e5, 0x35e5], /* CJK Ideograph Extension A */ + [0x35e6, 0x35e6], /* CJK Ideograph Extension A */ + [0x35e7, 0x35e7], /* CJK Ideograph Extension A */ + [0x35e8, 0x35e8], /* CJK Ideograph Extension A */ + [0x35e9, 0x35e9], /* CJK Ideograph Extension A */ + [0x35ea, 0x35ea], /* CJK Ideograph Extension A */ + [0x35eb, 0x35eb], /* CJK Ideograph Extension A */ + [0x35ec, 0x35ec], /* CJK Ideograph Extension A */ + [0x35ed, 0x35ed], /* CJK Ideograph Extension A */ + [0x35ee, 0x35ee], /* CJK Ideograph Extension A */ + [0x35ef, 0x35ef], /* CJK Ideograph Extension A */ + [0x35f0, 0x35f0], /* CJK Ideograph Extension A */ + [0x35f1, 0x35f1], /* CJK Ideograph Extension A */ + [0x35f2, 0x35f2], /* CJK Ideograph Extension A */ + [0x35f3, 0x35f3], /* CJK Ideograph Extension A */ + [0x35f4, 0x35f4], /* CJK Ideograph Extension A */ + [0x35f5, 0x35f5], /* CJK Ideograph Extension A */ + [0x35f6, 0x35f6], /* CJK Ideograph Extension A */ + [0x35f7, 0x35f7], /* CJK Ideograph Extension A */ + [0x35f8, 0x35f8], /* CJK Ideograph Extension A */ + [0x35f9, 0x35f9], /* CJK Ideograph Extension A */ + [0x35fa, 0x35fa], /* CJK Ideograph Extension A */ + [0x35fb, 0x35fb], /* CJK Ideograph Extension A */ + [0x35fc, 0x35fc], /* CJK Ideograph Extension A */ + [0x35fd, 0x35fd], /* CJK Ideograph Extension A */ + [0x35fe, 0x35fe], /* CJK Ideograph Extension A */ + [0x35ff, 0x35ff], /* CJK Ideograph Extension A */ + [0x3600, 0x3600], /* CJK Ideograph Extension A */ + [0x3601, 0x3601], /* CJK Ideograph Extension A */ + [0x3602, 0x3602], /* CJK Ideograph Extension A */ + [0x3603, 0x3603], /* CJK Ideograph Extension A */ + [0x3604, 0x3604], /* CJK Ideograph Extension A */ + [0x3605, 0x3605], /* CJK Ideograph Extension A */ + [0x3606, 0x3606], /* CJK Ideograph Extension A */ + [0x3607, 0x3607], /* CJK Ideograph Extension A */ + [0x3608, 0x3608], /* CJK Ideograph Extension A */ + [0x3609, 0x3609], /* CJK Ideograph Extension A */ + [0x360a, 0x360a], /* CJK Ideograph Extension A */ + [0x360b, 0x360b], /* CJK Ideograph Extension A */ + [0x360c, 0x360c], /* CJK Ideograph Extension A */ + [0x360d, 0x360d], /* CJK Ideograph Extension A */ + [0x360e, 0x360e], /* CJK Ideograph Extension A */ + [0x360f, 0x360f], /* CJK Ideograph Extension A */ + [0x3610, 0x3610], /* CJK Ideograph Extension A */ + [0x3611, 0x3611], /* CJK Ideograph Extension A */ + [0x3612, 0x3612], /* CJK Ideograph Extension A */ + [0x3613, 0x3613], /* CJK Ideograph Extension A */ + [0x3614, 0x3614], /* CJK Ideograph Extension A */ + [0x3615, 0x3615], /* CJK Ideograph Extension A */ + [0x3616, 0x3616], /* CJK Ideograph Extension A */ + [0x3617, 0x3617], /* CJK Ideograph Extension A */ + [0x3618, 0x3618], /* CJK Ideograph Extension A */ + [0x3619, 0x3619], /* CJK Ideograph Extension A */ + [0x361a, 0x361a], /* CJK Ideograph Extension A */ + [0x361b, 0x361b], /* CJK Ideograph Extension A */ + [0x361c, 0x361c], /* CJK Ideograph Extension A */ + [0x361d, 0x361d], /* CJK Ideograph Extension A */ + [0x361e, 0x361e], /* CJK Ideograph Extension A */ + [0x361f, 0x361f], /* CJK Ideograph Extension A */ + [0x3620, 0x3620], /* CJK Ideograph Extension A */ + [0x3621, 0x3621], /* CJK Ideograph Extension A */ + [0x3622, 0x3622], /* CJK Ideograph Extension A */ + [0x3623, 0x3623], /* CJK Ideograph Extension A */ + [0x3624, 0x3624], /* CJK Ideograph Extension A */ + [0x3625, 0x3625], /* CJK Ideograph Extension A */ + [0x3626, 0x3626], /* CJK Ideograph Extension A */ + [0x3627, 0x3627], /* CJK Ideograph Extension A */ + [0x3628, 0x3628], /* CJK Ideograph Extension A */ + [0x3629, 0x3629], /* CJK Ideograph Extension A */ + [0x362a, 0x362a], /* CJK Ideograph Extension A */ + [0x362b, 0x362b], /* CJK Ideograph Extension A */ + [0x362c, 0x362c], /* CJK Ideograph Extension A */ + [0x362d, 0x362d], /* CJK Ideograph Extension A */ + [0x362e, 0x362e], /* CJK Ideograph Extension A */ + [0x362f, 0x362f], /* CJK Ideograph Extension A */ + [0x3630, 0x3630], /* CJK Ideograph Extension A */ + [0x3631, 0x3631], /* CJK Ideograph Extension A */ + [0x3632, 0x3632], /* CJK Ideograph Extension A */ + [0x3633, 0x3633], /* CJK Ideograph Extension A */ + [0x3634, 0x3634], /* CJK Ideograph Extension A */ + [0x3635, 0x3635], /* CJK Ideograph Extension A */ + [0x3636, 0x3636], /* CJK Ideograph Extension A */ + [0x3637, 0x3637], /* CJK Ideograph Extension A */ + [0x3638, 0x3638], /* CJK Ideograph Extension A */ + [0x3639, 0x3639], /* CJK Ideograph Extension A */ + [0x363a, 0x363a], /* CJK Ideograph Extension A */ + [0x363b, 0x363b], /* CJK Ideograph Extension A */ + [0x363c, 0x363c], /* CJK Ideograph Extension A */ + [0x363d, 0x363d], /* CJK Ideograph Extension A */ + [0x363e, 0x363e], /* CJK Ideograph Extension A */ + [0x363f, 0x363f], /* CJK Ideograph Extension A */ + [0x3640, 0x3640], /* CJK Ideograph Extension A */ + [0x3641, 0x3641], /* CJK Ideograph Extension A */ + [0x3642, 0x3642], /* CJK Ideograph Extension A */ + [0x3643, 0x3643], /* CJK Ideograph Extension A */ + [0x3644, 0x3644], /* CJK Ideograph Extension A */ + [0x3645, 0x3645], /* CJK Ideograph Extension A */ + [0x3646, 0x3646], /* CJK Ideograph Extension A */ + [0x3647, 0x3647], /* CJK Ideograph Extension A */ + [0x3648, 0x3648], /* CJK Ideograph Extension A */ + [0x3649, 0x3649], /* CJK Ideograph Extension A */ + [0x364a, 0x364a], /* CJK Ideograph Extension A */ + [0x364b, 0x364b], /* CJK Ideograph Extension A */ + [0x364c, 0x364c], /* CJK Ideograph Extension A */ + [0x364d, 0x364d], /* CJK Ideograph Extension A */ + [0x364e, 0x364e], /* CJK Ideograph Extension A */ + [0x364f, 0x364f], /* CJK Ideograph Extension A */ + [0x3650, 0x3650], /* CJK Ideograph Extension A */ + [0x3651, 0x3651], /* CJK Ideograph Extension A */ + [0x3652, 0x3652], /* CJK Ideograph Extension A */ + [0x3653, 0x3653], /* CJK Ideograph Extension A */ + [0x3654, 0x3654], /* CJK Ideograph Extension A */ + [0x3655, 0x3655], /* CJK Ideograph Extension A */ + [0x3656, 0x3656], /* CJK Ideograph Extension A */ + [0x3657, 0x3657], /* CJK Ideograph Extension A */ + [0x3658, 0x3658], /* CJK Ideograph Extension A */ + [0x3659, 0x3659], /* CJK Ideograph Extension A */ + [0x365a, 0x365a], /* CJK Ideograph Extension A */ + [0x365b, 0x365b], /* CJK Ideograph Extension A */ + [0x365c, 0x365c], /* CJK Ideograph Extension A */ + [0x365d, 0x365d], /* CJK Ideograph Extension A */ + [0x365e, 0x365e], /* CJK Ideograph Extension A */ + [0x365f, 0x365f], /* CJK Ideograph Extension A */ + [0x3660, 0x3660], /* CJK Ideograph Extension A */ + [0x3661, 0x3661], /* CJK Ideograph Extension A */ + [0x3662, 0x3662], /* CJK Ideograph Extension A */ + [0x3663, 0x3663], /* CJK Ideograph Extension A */ + [0x3664, 0x3664], /* CJK Ideograph Extension A */ + [0x3665, 0x3665], /* CJK Ideograph Extension A */ + [0x3666, 0x3666], /* CJK Ideograph Extension A */ + [0x3667, 0x3667], /* CJK Ideograph Extension A */ + [0x3668, 0x3668], /* CJK Ideograph Extension A */ + [0x3669, 0x3669], /* CJK Ideograph Extension A */ + [0x366a, 0x366a], /* CJK Ideograph Extension A */ + [0x366b, 0x366b], /* CJK Ideograph Extension A */ + [0x366c, 0x366c], /* CJK Ideograph Extension A */ + [0x366d, 0x366d], /* CJK Ideograph Extension A */ + [0x366e, 0x366e], /* CJK Ideograph Extension A */ + [0x366f, 0x366f], /* CJK Ideograph Extension A */ + [0x3670, 0x3670], /* CJK Ideograph Extension A */ + [0x3671, 0x3671], /* CJK Ideograph Extension A */ + [0x3672, 0x3672], /* CJK Ideograph Extension A */ + [0x3673, 0x3673], /* CJK Ideograph Extension A */ + [0x3674, 0x3674], /* CJK Ideograph Extension A */ + [0x3675, 0x3675], /* CJK Ideograph Extension A */ + [0x3676, 0x3676], /* CJK Ideograph Extension A */ + [0x3677, 0x3677], /* CJK Ideograph Extension A */ + [0x3678, 0x3678], /* CJK Ideograph Extension A */ + [0x3679, 0x3679], /* CJK Ideograph Extension A */ + [0x367a, 0x367a], /* CJK Ideograph Extension A */ + [0x367b, 0x367b], /* CJK Ideograph Extension A */ + [0x367c, 0x367c], /* CJK Ideograph Extension A */ + [0x367d, 0x367d], /* CJK Ideograph Extension A */ + [0x367e, 0x367e], /* CJK Ideograph Extension A */ + [0x367f, 0x367f], /* CJK Ideograph Extension A */ + [0x3680, 0x3680], /* CJK Ideograph Extension A */ + [0x3681, 0x3681], /* CJK Ideograph Extension A */ + [0x3682, 0x3682], /* CJK Ideograph Extension A */ + [0x3683, 0x3683], /* CJK Ideograph Extension A */ + [0x3684, 0x3684], /* CJK Ideograph Extension A */ + [0x3685, 0x3685], /* CJK Ideograph Extension A */ + [0x3686, 0x3686], /* CJK Ideograph Extension A */ + [0x3687, 0x3687], /* CJK Ideograph Extension A */ + [0x3688, 0x3688], /* CJK Ideograph Extension A */ + [0x3689, 0x3689], /* CJK Ideograph Extension A */ + [0x368a, 0x368a], /* CJK Ideograph Extension A */ + [0x368b, 0x368b], /* CJK Ideograph Extension A */ + [0x368c, 0x368c], /* CJK Ideograph Extension A */ + [0x368d, 0x368d], /* CJK Ideograph Extension A */ + [0x368e, 0x368e], /* CJK Ideograph Extension A */ + [0x368f, 0x368f], /* CJK Ideograph Extension A */ + [0x3690, 0x3690], /* CJK Ideograph Extension A */ + [0x3691, 0x3691], /* CJK Ideograph Extension A */ + [0x3692, 0x3692], /* CJK Ideograph Extension A */ + [0x3693, 0x3693], /* CJK Ideograph Extension A */ + [0x3694, 0x3694], /* CJK Ideograph Extension A */ + [0x3695, 0x3695], /* CJK Ideograph Extension A */ + [0x3696, 0x3696], /* CJK Ideograph Extension A */ + [0x3697, 0x3697], /* CJK Ideograph Extension A */ + [0x3698, 0x3698], /* CJK Ideograph Extension A */ + [0x3699, 0x3699], /* CJK Ideograph Extension A */ + [0x369a, 0x369a], /* CJK Ideograph Extension A */ + [0x369b, 0x369b], /* CJK Ideograph Extension A */ + [0x369c, 0x369c], /* CJK Ideograph Extension A */ + [0x369d, 0x369d], /* CJK Ideograph Extension A */ + [0x369e, 0x369e], /* CJK Ideograph Extension A */ + [0x369f, 0x369f], /* CJK Ideograph Extension A */ + [0x36a0, 0x36a0], /* CJK Ideograph Extension A */ + [0x36a1, 0x36a1], /* CJK Ideograph Extension A */ + [0x36a2, 0x36a2], /* CJK Ideograph Extension A */ + [0x36a3, 0x36a3], /* CJK Ideograph Extension A */ + [0x36a4, 0x36a4], /* CJK Ideograph Extension A */ + [0x36a5, 0x36a5], /* CJK Ideograph Extension A */ + [0x36a6, 0x36a6], /* CJK Ideograph Extension A */ + [0x36a7, 0x36a7], /* CJK Ideograph Extension A */ + [0x36a8, 0x36a8], /* CJK Ideograph Extension A */ + [0x36a9, 0x36a9], /* CJK Ideograph Extension A */ + [0x36aa, 0x36aa], /* CJK Ideograph Extension A */ + [0x36ab, 0x36ab], /* CJK Ideograph Extension A */ + [0x36ac, 0x36ac], /* CJK Ideograph Extension A */ + [0x36ad, 0x36ad], /* CJK Ideograph Extension A */ + [0x36ae, 0x36ae], /* CJK Ideograph Extension A */ + [0x36af, 0x36af], /* CJK Ideograph Extension A */ + [0x36b0, 0x36b0], /* CJK Ideograph Extension A */ + [0x36b1, 0x36b1], /* CJK Ideograph Extension A */ + [0x36b2, 0x36b2], /* CJK Ideograph Extension A */ + [0x36b3, 0x36b3], /* CJK Ideograph Extension A */ + [0x36b4, 0x36b4], /* CJK Ideograph Extension A */ + [0x36b5, 0x36b5], /* CJK Ideograph Extension A */ + [0x36b6, 0x36b6], /* CJK Ideograph Extension A */ + [0x36b7, 0x36b7], /* CJK Ideograph Extension A */ + [0x36b8, 0x36b8], /* CJK Ideograph Extension A */ + [0x36b9, 0x36b9], /* CJK Ideograph Extension A */ + [0x36ba, 0x36ba], /* CJK Ideograph Extension A */ + [0x36bb, 0x36bb], /* CJK Ideograph Extension A */ + [0x36bc, 0x36bc], /* CJK Ideograph Extension A */ + [0x36bd, 0x36bd], /* CJK Ideograph Extension A */ + [0x36be, 0x36be], /* CJK Ideograph Extension A */ + [0x36bf, 0x36bf], /* CJK Ideograph Extension A */ + [0x36c0, 0x36c0], /* CJK Ideograph Extension A */ + [0x36c1, 0x36c1], /* CJK Ideograph Extension A */ + [0x36c2, 0x36c2], /* CJK Ideograph Extension A */ + [0x36c3, 0x36c3], /* CJK Ideograph Extension A */ + [0x36c4, 0x36c4], /* CJK Ideograph Extension A */ + [0x36c5, 0x36c5], /* CJK Ideograph Extension A */ + [0x36c6, 0x36c6], /* CJK Ideograph Extension A */ + [0x36c7, 0x36c7], /* CJK Ideograph Extension A */ + [0x36c8, 0x36c8], /* CJK Ideograph Extension A */ + [0x36c9, 0x36c9], /* CJK Ideograph Extension A */ + [0x36ca, 0x36ca], /* CJK Ideograph Extension A */ + [0x36cb, 0x36cb], /* CJK Ideograph Extension A */ + [0x36cc, 0x36cc], /* CJK Ideograph Extension A */ + [0x36cd, 0x36cd], /* CJK Ideograph Extension A */ + [0x36ce, 0x36ce], /* CJK Ideograph Extension A */ + [0x36cf, 0x36cf], /* CJK Ideograph Extension A */ + [0x36d0, 0x36d0], /* CJK Ideograph Extension A */ + [0x36d1, 0x36d1], /* CJK Ideograph Extension A */ + [0x36d2, 0x36d2], /* CJK Ideograph Extension A */ + [0x36d3, 0x36d3], /* CJK Ideograph Extension A */ + [0x36d4, 0x36d4], /* CJK Ideograph Extension A */ + [0x36d5, 0x36d5], /* CJK Ideograph Extension A */ + [0x36d6, 0x36d6], /* CJK Ideograph Extension A */ + [0x36d7, 0x36d7], /* CJK Ideograph Extension A */ + [0x36d8, 0x36d8], /* CJK Ideograph Extension A */ + [0x36d9, 0x36d9], /* CJK Ideograph Extension A */ + [0x36da, 0x36da], /* CJK Ideograph Extension A */ + [0x36db, 0x36db], /* CJK Ideograph Extension A */ + [0x36dc, 0x36dc], /* CJK Ideograph Extension A */ + [0x36dd, 0x36dd], /* CJK Ideograph Extension A */ + [0x36de, 0x36de], /* CJK Ideograph Extension A */ + [0x36df, 0x36df], /* CJK Ideograph Extension A */ + [0x36e0, 0x36e0], /* CJK Ideograph Extension A */ + [0x36e1, 0x36e1], /* CJK Ideograph Extension A */ + [0x36e2, 0x36e2], /* CJK Ideograph Extension A */ + [0x36e3, 0x36e3], /* CJK Ideograph Extension A */ + [0x36e4, 0x36e4], /* CJK Ideograph Extension A */ + [0x36e5, 0x36e5], /* CJK Ideograph Extension A */ + [0x36e6, 0x36e6], /* CJK Ideograph Extension A */ + [0x36e7, 0x36e7], /* CJK Ideograph Extension A */ + [0x36e8, 0x36e8], /* CJK Ideograph Extension A */ + [0x36e9, 0x36e9], /* CJK Ideograph Extension A */ + [0x36ea, 0x36ea], /* CJK Ideograph Extension A */ + [0x36eb, 0x36eb], /* CJK Ideograph Extension A */ + [0x36ec, 0x36ec], /* CJK Ideograph Extension A */ + [0x36ed, 0x36ed], /* CJK Ideograph Extension A */ + [0x36ee, 0x36ee], /* CJK Ideograph Extension A */ + [0x36ef, 0x36ef], /* CJK Ideograph Extension A */ + [0x36f0, 0x36f0], /* CJK Ideograph Extension A */ + [0x36f1, 0x36f1], /* CJK Ideograph Extension A */ + [0x36f2, 0x36f2], /* CJK Ideograph Extension A */ + [0x36f3, 0x36f3], /* CJK Ideograph Extension A */ + [0x36f4, 0x36f4], /* CJK Ideograph Extension A */ + [0x36f5, 0x36f5], /* CJK Ideograph Extension A */ + [0x36f6, 0x36f6], /* CJK Ideograph Extension A */ + [0x36f7, 0x36f7], /* CJK Ideograph Extension A */ + [0x36f8, 0x36f8], /* CJK Ideograph Extension A */ + [0x36f9, 0x36f9], /* CJK Ideograph Extension A */ + [0x36fa, 0x36fa], /* CJK Ideograph Extension A */ + [0x36fb, 0x36fb], /* CJK Ideograph Extension A */ + [0x36fc, 0x36fc], /* CJK Ideograph Extension A */ + [0x36fd, 0x36fd], /* CJK Ideograph Extension A */ + [0x36fe, 0x36fe], /* CJK Ideograph Extension A */ + [0x36ff, 0x36ff], /* CJK Ideograph Extension A */ + [0x3700, 0x3700], /* CJK Ideograph Extension A */ + [0x3701, 0x3701], /* CJK Ideograph Extension A */ + [0x3702, 0x3702], /* CJK Ideograph Extension A */ + [0x3703, 0x3703], /* CJK Ideograph Extension A */ + [0x3704, 0x3704], /* CJK Ideograph Extension A */ + [0x3705, 0x3705], /* CJK Ideograph Extension A */ + [0x3706, 0x3706], /* CJK Ideograph Extension A */ + [0x3707, 0x3707], /* CJK Ideograph Extension A */ + [0x3708, 0x3708], /* CJK Ideograph Extension A */ + [0x3709, 0x3709], /* CJK Ideograph Extension A */ + [0x370a, 0x370a], /* CJK Ideograph Extension A */ + [0x370b, 0x370b], /* CJK Ideograph Extension A */ + [0x370c, 0x370c], /* CJK Ideograph Extension A */ + [0x370d, 0x370d], /* CJK Ideograph Extension A */ + [0x370e, 0x370e], /* CJK Ideograph Extension A */ + [0x370f, 0x370f], /* CJK Ideograph Extension A */ + [0x3710, 0x3710], /* CJK Ideograph Extension A */ + [0x3711, 0x3711], /* CJK Ideograph Extension A */ + [0x3712, 0x3712], /* CJK Ideograph Extension A */ + [0x3713, 0x3713], /* CJK Ideograph Extension A */ + [0x3714, 0x3714], /* CJK Ideograph Extension A */ + [0x3715, 0x3715], /* CJK Ideograph Extension A */ + [0x3716, 0x3716], /* CJK Ideograph Extension A */ + [0x3717, 0x3717], /* CJK Ideograph Extension A */ + [0x3718, 0x3718], /* CJK Ideograph Extension A */ + [0x3719, 0x3719], /* CJK Ideograph Extension A */ + [0x371a, 0x371a], /* CJK Ideograph Extension A */ + [0x371b, 0x371b], /* CJK Ideograph Extension A */ + [0x371c, 0x371c], /* CJK Ideograph Extension A */ + [0x371d, 0x371d], /* CJK Ideograph Extension A */ + [0x371e, 0x371e], /* CJK Ideograph Extension A */ + [0x371f, 0x371f], /* CJK Ideograph Extension A */ + [0x3720, 0x3720], /* CJK Ideograph Extension A */ + [0x3721, 0x3721], /* CJK Ideograph Extension A */ + [0x3722, 0x3722], /* CJK Ideograph Extension A */ + [0x3723, 0x3723], /* CJK Ideograph Extension A */ + [0x3724, 0x3724], /* CJK Ideograph Extension A */ + [0x3725, 0x3725], /* CJK Ideograph Extension A */ + [0x3726, 0x3726], /* CJK Ideograph Extension A */ + [0x3727, 0x3727], /* CJK Ideograph Extension A */ + [0x3728, 0x3728], /* CJK Ideograph Extension A */ + [0x3729, 0x3729], /* CJK Ideograph Extension A */ + [0x372a, 0x372a], /* CJK Ideograph Extension A */ + [0x372b, 0x372b], /* CJK Ideograph Extension A */ + [0x372c, 0x372c], /* CJK Ideograph Extension A */ + [0x372d, 0x372d], /* CJK Ideograph Extension A */ + [0x372e, 0x372e], /* CJK Ideograph Extension A */ + [0x372f, 0x372f], /* CJK Ideograph Extension A */ + [0x3730, 0x3730], /* CJK Ideograph Extension A */ + [0x3731, 0x3731], /* CJK Ideograph Extension A */ + [0x3732, 0x3732], /* CJK Ideograph Extension A */ + [0x3733, 0x3733], /* CJK Ideograph Extension A */ + [0x3734, 0x3734], /* CJK Ideograph Extension A */ + [0x3735, 0x3735], /* CJK Ideograph Extension A */ + [0x3736, 0x3736], /* CJK Ideograph Extension A */ + [0x3737, 0x3737], /* CJK Ideograph Extension A */ + [0x3738, 0x3738], /* CJK Ideograph Extension A */ + [0x3739, 0x3739], /* CJK Ideograph Extension A */ + [0x373a, 0x373a], /* CJK Ideograph Extension A */ + [0x373b, 0x373b], /* CJK Ideograph Extension A */ + [0x373c, 0x373c], /* CJK Ideograph Extension A */ + [0x373d, 0x373d], /* CJK Ideograph Extension A */ + [0x373e, 0x373e], /* CJK Ideograph Extension A */ + [0x373f, 0x373f], /* CJK Ideograph Extension A */ + [0x3740, 0x3740], /* CJK Ideograph Extension A */ + [0x3741, 0x3741], /* CJK Ideograph Extension A */ + [0x3742, 0x3742], /* CJK Ideograph Extension A */ + [0x3743, 0x3743], /* CJK Ideograph Extension A */ + [0x3744, 0x3744], /* CJK Ideograph Extension A */ + [0x3745, 0x3745], /* CJK Ideograph Extension A */ + [0x3746, 0x3746], /* CJK Ideograph Extension A */ + [0x3747, 0x3747], /* CJK Ideograph Extension A */ + [0x3748, 0x3748], /* CJK Ideograph Extension A */ + [0x3749, 0x3749], /* CJK Ideograph Extension A */ + [0x374a, 0x374a], /* CJK Ideograph Extension A */ + [0x374b, 0x374b], /* CJK Ideograph Extension A */ + [0x374c, 0x374c], /* CJK Ideograph Extension A */ + [0x374d, 0x374d], /* CJK Ideograph Extension A */ + [0x374e, 0x374e], /* CJK Ideograph Extension A */ + [0x374f, 0x374f], /* CJK Ideograph Extension A */ + [0x3750, 0x3750], /* CJK Ideograph Extension A */ + [0x3751, 0x3751], /* CJK Ideograph Extension A */ + [0x3752, 0x3752], /* CJK Ideograph Extension A */ + [0x3753, 0x3753], /* CJK Ideograph Extension A */ + [0x3754, 0x3754], /* CJK Ideograph Extension A */ + [0x3755, 0x3755], /* CJK Ideograph Extension A */ + [0x3756, 0x3756], /* CJK Ideograph Extension A */ + [0x3757, 0x3757], /* CJK Ideograph Extension A */ + [0x3758, 0x3758], /* CJK Ideograph Extension A */ + [0x3759, 0x3759], /* CJK Ideograph Extension A */ + [0x375a, 0x375a], /* CJK Ideograph Extension A */ + [0x375b, 0x375b], /* CJK Ideograph Extension A */ + [0x375c, 0x375c], /* CJK Ideograph Extension A */ + [0x375d, 0x375d], /* CJK Ideograph Extension A */ + [0x375e, 0x375e], /* CJK Ideograph Extension A */ + [0x375f, 0x375f], /* CJK Ideograph Extension A */ + [0x3760, 0x3760], /* CJK Ideograph Extension A */ + [0x3761, 0x3761], /* CJK Ideograph Extension A */ + [0x3762, 0x3762], /* CJK Ideograph Extension A */ + [0x3763, 0x3763], /* CJK Ideograph Extension A */ + [0x3764, 0x3764], /* CJK Ideograph Extension A */ + [0x3765, 0x3765], /* CJK Ideograph Extension A */ + [0x3766, 0x3766], /* CJK Ideograph Extension A */ + [0x3767, 0x3767], /* CJK Ideograph Extension A */ + [0x3768, 0x3768], /* CJK Ideograph Extension A */ + [0x3769, 0x3769], /* CJK Ideograph Extension A */ + [0x376a, 0x376a], /* CJK Ideograph Extension A */ + [0x376b, 0x376b], /* CJK Ideograph Extension A */ + [0x376c, 0x376c], /* CJK Ideograph Extension A */ + [0x376d, 0x376d], /* CJK Ideograph Extension A */ + [0x376e, 0x376e], /* CJK Ideograph Extension A */ + [0x376f, 0x376f], /* CJK Ideograph Extension A */ + [0x3770, 0x3770], /* CJK Ideograph Extension A */ + [0x3771, 0x3771], /* CJK Ideograph Extension A */ + [0x3772, 0x3772], /* CJK Ideograph Extension A */ + [0x3773, 0x3773], /* CJK Ideograph Extension A */ + [0x3774, 0x3774], /* CJK Ideograph Extension A */ + [0x3775, 0x3775], /* CJK Ideograph Extension A */ + [0x3776, 0x3776], /* CJK Ideograph Extension A */ + [0x3777, 0x3777], /* CJK Ideograph Extension A */ + [0x3778, 0x3778], /* CJK Ideograph Extension A */ + [0x3779, 0x3779], /* CJK Ideograph Extension A */ + [0x377a, 0x377a], /* CJK Ideograph Extension A */ + [0x377b, 0x377b], /* CJK Ideograph Extension A */ + [0x377c, 0x377c], /* CJK Ideograph Extension A */ + [0x377d, 0x377d], /* CJK Ideograph Extension A */ + [0x377e, 0x377e], /* CJK Ideograph Extension A */ + [0x377f, 0x377f], /* CJK Ideograph Extension A */ + [0x3780, 0x3780], /* CJK Ideograph Extension A */ + [0x3781, 0x3781], /* CJK Ideograph Extension A */ + [0x3782, 0x3782], /* CJK Ideograph Extension A */ + [0x3783, 0x3783], /* CJK Ideograph Extension A */ + [0x3784, 0x3784], /* CJK Ideograph Extension A */ + [0x3785, 0x3785], /* CJK Ideograph Extension A */ + [0x3786, 0x3786], /* CJK Ideograph Extension A */ + [0x3787, 0x3787], /* CJK Ideograph Extension A */ + [0x3788, 0x3788], /* CJK Ideograph Extension A */ + [0x3789, 0x3789], /* CJK Ideograph Extension A */ + [0x378a, 0x378a], /* CJK Ideograph Extension A */ + [0x378b, 0x378b], /* CJK Ideograph Extension A */ + [0x378c, 0x378c], /* CJK Ideograph Extension A */ + [0x378d, 0x378d], /* CJK Ideograph Extension A */ + [0x378e, 0x378e], /* CJK Ideograph Extension A */ + [0x378f, 0x378f], /* CJK Ideograph Extension A */ + [0x3790, 0x3790], /* CJK Ideograph Extension A */ + [0x3791, 0x3791], /* CJK Ideograph Extension A */ + [0x3792, 0x3792], /* CJK Ideograph Extension A */ + [0x3793, 0x3793], /* CJK Ideograph Extension A */ + [0x3794, 0x3794], /* CJK Ideograph Extension A */ + [0x3795, 0x3795], /* CJK Ideograph Extension A */ + [0x3796, 0x3796], /* CJK Ideograph Extension A */ + [0x3797, 0x3797], /* CJK Ideograph Extension A */ + [0x3798, 0x3798], /* CJK Ideograph Extension A */ + [0x3799, 0x3799], /* CJK Ideograph Extension A */ + [0x379a, 0x379a], /* CJK Ideograph Extension A */ + [0x379b, 0x379b], /* CJK Ideograph Extension A */ + [0x379c, 0x379c], /* CJK Ideograph Extension A */ + [0x379d, 0x379d], /* CJK Ideograph Extension A */ + [0x379e, 0x379e], /* CJK Ideograph Extension A */ + [0x379f, 0x379f], /* CJK Ideograph Extension A */ + [0x37a0, 0x37a0], /* CJK Ideograph Extension A */ + [0x37a1, 0x37a1], /* CJK Ideograph Extension A */ + [0x37a2, 0x37a2], /* CJK Ideograph Extension A */ + [0x37a3, 0x37a3], /* CJK Ideograph Extension A */ + [0x37a4, 0x37a4], /* CJK Ideograph Extension A */ + [0x37a5, 0x37a5], /* CJK Ideograph Extension A */ + [0x37a6, 0x37a6], /* CJK Ideograph Extension A */ + [0x37a7, 0x37a7], /* CJK Ideograph Extension A */ + [0x37a8, 0x37a8], /* CJK Ideograph Extension A */ + [0x37a9, 0x37a9], /* CJK Ideograph Extension A */ + [0x37aa, 0x37aa], /* CJK Ideograph Extension A */ + [0x37ab, 0x37ab], /* CJK Ideograph Extension A */ + [0x37ac, 0x37ac], /* CJK Ideograph Extension A */ + [0x37ad, 0x37ad], /* CJK Ideograph Extension A */ + [0x37ae, 0x37ae], /* CJK Ideograph Extension A */ + [0x37af, 0x37af], /* CJK Ideograph Extension A */ + [0x37b0, 0x37b0], /* CJK Ideograph Extension A */ + [0x37b1, 0x37b1], /* CJK Ideograph Extension A */ + [0x37b2, 0x37b2], /* CJK Ideograph Extension A */ + [0x37b3, 0x37b3], /* CJK Ideograph Extension A */ + [0x37b4, 0x37b4], /* CJK Ideograph Extension A */ + [0x37b5, 0x37b5], /* CJK Ideograph Extension A */ + [0x37b6, 0x37b6], /* CJK Ideograph Extension A */ + [0x37b7, 0x37b7], /* CJK Ideograph Extension A */ + [0x37b8, 0x37b8], /* CJK Ideograph Extension A */ + [0x37b9, 0x37b9], /* CJK Ideograph Extension A */ + [0x37ba, 0x37ba], /* CJK Ideograph Extension A */ + [0x37bb, 0x37bb], /* CJK Ideograph Extension A */ + [0x37bc, 0x37bc], /* CJK Ideograph Extension A */ + [0x37bd, 0x37bd], /* CJK Ideograph Extension A */ + [0x37be, 0x37be], /* CJK Ideograph Extension A */ + [0x37bf, 0x37bf], /* CJK Ideograph Extension A */ + [0x37c0, 0x37c0], /* CJK Ideograph Extension A */ + [0x37c1, 0x37c1], /* CJK Ideograph Extension A */ + [0x37c2, 0x37c2], /* CJK Ideograph Extension A */ + [0x37c3, 0x37c3], /* CJK Ideograph Extension A */ + [0x37c4, 0x37c4], /* CJK Ideograph Extension A */ + [0x37c5, 0x37c5], /* CJK Ideograph Extension A */ + [0x37c6, 0x37c6], /* CJK Ideograph Extension A */ + [0x37c7, 0x37c7], /* CJK Ideograph Extension A */ + [0x37c8, 0x37c8], /* CJK Ideograph Extension A */ + [0x37c9, 0x37c9], /* CJK Ideograph Extension A */ + [0x37ca, 0x37ca], /* CJK Ideograph Extension A */ + [0x37cb, 0x37cb], /* CJK Ideograph Extension A */ + [0x37cc, 0x37cc], /* CJK Ideograph Extension A */ + [0x37cd, 0x37cd], /* CJK Ideograph Extension A */ + [0x37ce, 0x37ce], /* CJK Ideograph Extension A */ + [0x37cf, 0x37cf], /* CJK Ideograph Extension A */ + [0x37d0, 0x37d0], /* CJK Ideograph Extension A */ + [0x37d1, 0x37d1], /* CJK Ideograph Extension A */ + [0x37d2, 0x37d2], /* CJK Ideograph Extension A */ + [0x37d3, 0x37d3], /* CJK Ideograph Extension A */ + [0x37d4, 0x37d4], /* CJK Ideograph Extension A */ + [0x37d5, 0x37d5], /* CJK Ideograph Extension A */ + [0x37d6, 0x37d6], /* CJK Ideograph Extension A */ + [0x37d7, 0x37d7], /* CJK Ideograph Extension A */ + [0x37d8, 0x37d8], /* CJK Ideograph Extension A */ + [0x37d9, 0x37d9], /* CJK Ideograph Extension A */ + [0x37da, 0x37da], /* CJK Ideograph Extension A */ + [0x37db, 0x37db], /* CJK Ideograph Extension A */ + [0x37dc, 0x37dc], /* CJK Ideograph Extension A */ + [0x37dd, 0x37dd], /* CJK Ideograph Extension A */ + [0x37de, 0x37de], /* CJK Ideograph Extension A */ + [0x37df, 0x37df], /* CJK Ideograph Extension A */ + [0x37e0, 0x37e0], /* CJK Ideograph Extension A */ + [0x37e1, 0x37e1], /* CJK Ideograph Extension A */ + [0x37e2, 0x37e2], /* CJK Ideograph Extension A */ + [0x37e3, 0x37e3], /* CJK Ideograph Extension A */ + [0x37e4, 0x37e4], /* CJK Ideograph Extension A */ + [0x37e5, 0x37e5], /* CJK Ideograph Extension A */ + [0x37e6, 0x37e6], /* CJK Ideograph Extension A */ + [0x37e7, 0x37e7], /* CJK Ideograph Extension A */ + [0x37e8, 0x37e8], /* CJK Ideograph Extension A */ + [0x37e9, 0x37e9], /* CJK Ideograph Extension A */ + [0x37ea, 0x37ea], /* CJK Ideograph Extension A */ + [0x37eb, 0x37eb], /* CJK Ideograph Extension A */ + [0x37ec, 0x37ec], /* CJK Ideograph Extension A */ + [0x37ed, 0x37ed], /* CJK Ideograph Extension A */ + [0x37ee, 0x37ee], /* CJK Ideograph Extension A */ + [0x37ef, 0x37ef], /* CJK Ideograph Extension A */ + [0x37f0, 0x37f0], /* CJK Ideograph Extension A */ + [0x37f1, 0x37f1], /* CJK Ideograph Extension A */ + [0x37f2, 0x37f2], /* CJK Ideograph Extension A */ + [0x37f3, 0x37f3], /* CJK Ideograph Extension A */ + [0x37f4, 0x37f4], /* CJK Ideograph Extension A */ + [0x37f5, 0x37f5], /* CJK Ideograph Extension A */ + [0x37f6, 0x37f6], /* CJK Ideograph Extension A */ + [0x37f7, 0x37f7], /* CJK Ideograph Extension A */ + [0x37f8, 0x37f8], /* CJK Ideograph Extension A */ + [0x37f9, 0x37f9], /* CJK Ideograph Extension A */ + [0x37fa, 0x37fa], /* CJK Ideograph Extension A */ + [0x37fb, 0x37fb], /* CJK Ideograph Extension A */ + [0x37fc, 0x37fc], /* CJK Ideograph Extension A */ + [0x37fd, 0x37fd], /* CJK Ideograph Extension A */ + [0x37fe, 0x37fe], /* CJK Ideograph Extension A */ + [0x37ff, 0x37ff], /* CJK Ideograph Extension A */ + [0x3800, 0x3800], /* CJK Ideograph Extension A */ + [0x3801, 0x3801], /* CJK Ideograph Extension A */ + [0x3802, 0x3802], /* CJK Ideograph Extension A */ + [0x3803, 0x3803], /* CJK Ideograph Extension A */ + [0x3804, 0x3804], /* CJK Ideograph Extension A */ + [0x3805, 0x3805], /* CJK Ideograph Extension A */ + [0x3806, 0x3806], /* CJK Ideograph Extension A */ + [0x3807, 0x3807], /* CJK Ideograph Extension A */ + [0x3808, 0x3808], /* CJK Ideograph Extension A */ + [0x3809, 0x3809], /* CJK Ideograph Extension A */ + [0x380a, 0x380a], /* CJK Ideograph Extension A */ + [0x380b, 0x380b], /* CJK Ideograph Extension A */ + [0x380c, 0x380c], /* CJK Ideograph Extension A */ + [0x380d, 0x380d], /* CJK Ideograph Extension A */ + [0x380e, 0x380e], /* CJK Ideograph Extension A */ + [0x380f, 0x380f], /* CJK Ideograph Extension A */ + [0x3810, 0x3810], /* CJK Ideograph Extension A */ + [0x3811, 0x3811], /* CJK Ideograph Extension A */ + [0x3812, 0x3812], /* CJK Ideograph Extension A */ + [0x3813, 0x3813], /* CJK Ideograph Extension A */ + [0x3814, 0x3814], /* CJK Ideograph Extension A */ + [0x3815, 0x3815], /* CJK Ideograph Extension A */ + [0x3816, 0x3816], /* CJK Ideograph Extension A */ + [0x3817, 0x3817], /* CJK Ideograph Extension A */ + [0x3818, 0x3818], /* CJK Ideograph Extension A */ + [0x3819, 0x3819], /* CJK Ideograph Extension A */ + [0x381a, 0x381a], /* CJK Ideograph Extension A */ + [0x381b, 0x381b], /* CJK Ideograph Extension A */ + [0x381c, 0x381c], /* CJK Ideograph Extension A */ + [0x381d, 0x381d], /* CJK Ideograph Extension A */ + [0x381e, 0x381e], /* CJK Ideograph Extension A */ + [0x381f, 0x381f], /* CJK Ideograph Extension A */ + [0x3820, 0x3820], /* CJK Ideograph Extension A */ + [0x3821, 0x3821], /* CJK Ideograph Extension A */ + [0x3822, 0x3822], /* CJK Ideograph Extension A */ + [0x3823, 0x3823], /* CJK Ideograph Extension A */ + [0x3824, 0x3824], /* CJK Ideograph Extension A */ + [0x3825, 0x3825], /* CJK Ideograph Extension A */ + [0x3826, 0x3826], /* CJK Ideograph Extension A */ + [0x3827, 0x3827], /* CJK Ideograph Extension A */ + [0x3828, 0x3828], /* CJK Ideograph Extension A */ + [0x3829, 0x3829], /* CJK Ideograph Extension A */ + [0x382a, 0x382a], /* CJK Ideograph Extension A */ + [0x382b, 0x382b], /* CJK Ideograph Extension A */ + [0x382c, 0x382c], /* CJK Ideograph Extension A */ + [0x382d, 0x382d], /* CJK Ideograph Extension A */ + [0x382e, 0x382e], /* CJK Ideograph Extension A */ + [0x382f, 0x382f], /* CJK Ideograph Extension A */ + [0x3830, 0x3830], /* CJK Ideograph Extension A */ + [0x3831, 0x3831], /* CJK Ideograph Extension A */ + [0x3832, 0x3832], /* CJK Ideograph Extension A */ + [0x3833, 0x3833], /* CJK Ideograph Extension A */ + [0x3834, 0x3834], /* CJK Ideograph Extension A */ + [0x3835, 0x3835], /* CJK Ideograph Extension A */ + [0x3836, 0x3836], /* CJK Ideograph Extension A */ + [0x3837, 0x3837], /* CJK Ideograph Extension A */ + [0x3838, 0x3838], /* CJK Ideograph Extension A */ + [0x3839, 0x3839], /* CJK Ideograph Extension A */ + [0x383a, 0x383a], /* CJK Ideograph Extension A */ + [0x383b, 0x383b], /* CJK Ideograph Extension A */ + [0x383c, 0x383c], /* CJK Ideograph Extension A */ + [0x383d, 0x383d], /* CJK Ideograph Extension A */ + [0x383e, 0x383e], /* CJK Ideograph Extension A */ + [0x383f, 0x383f], /* CJK Ideograph Extension A */ + [0x3840, 0x3840], /* CJK Ideograph Extension A */ + [0x3841, 0x3841], /* CJK Ideograph Extension A */ + [0x3842, 0x3842], /* CJK Ideograph Extension A */ + [0x3843, 0x3843], /* CJK Ideograph Extension A */ + [0x3844, 0x3844], /* CJK Ideograph Extension A */ + [0x3845, 0x3845], /* CJK Ideograph Extension A */ + [0x3846, 0x3846], /* CJK Ideograph Extension A */ + [0x3847, 0x3847], /* CJK Ideograph Extension A */ + [0x3848, 0x3848], /* CJK Ideograph Extension A */ + [0x3849, 0x3849], /* CJK Ideograph Extension A */ + [0x384a, 0x384a], /* CJK Ideograph Extension A */ + [0x384b, 0x384b], /* CJK Ideograph Extension A */ + [0x384c, 0x384c], /* CJK Ideograph Extension A */ + [0x384d, 0x384d], /* CJK Ideograph Extension A */ + [0x384e, 0x384e], /* CJK Ideograph Extension A */ + [0x384f, 0x384f], /* CJK Ideograph Extension A */ + [0x3850, 0x3850], /* CJK Ideograph Extension A */ + [0x3851, 0x3851], /* CJK Ideograph Extension A */ + [0x3852, 0x3852], /* CJK Ideograph Extension A */ + [0x3853, 0x3853], /* CJK Ideograph Extension A */ + [0x3854, 0x3854], /* CJK Ideograph Extension A */ + [0x3855, 0x3855], /* CJK Ideograph Extension A */ + [0x3856, 0x3856], /* CJK Ideograph Extension A */ + [0x3857, 0x3857], /* CJK Ideograph Extension A */ + [0x3858, 0x3858], /* CJK Ideograph Extension A */ + [0x3859, 0x3859], /* CJK Ideograph Extension A */ + [0x385a, 0x385a], /* CJK Ideograph Extension A */ + [0x385b, 0x385b], /* CJK Ideograph Extension A */ + [0x385c, 0x385c], /* CJK Ideograph Extension A */ + [0x385d, 0x385d], /* CJK Ideograph Extension A */ + [0x385e, 0x385e], /* CJK Ideograph Extension A */ + [0x385f, 0x385f], /* CJK Ideograph Extension A */ + [0x3860, 0x3860], /* CJK Ideograph Extension A */ + [0x3861, 0x3861], /* CJK Ideograph Extension A */ + [0x3862, 0x3862], /* CJK Ideograph Extension A */ + [0x3863, 0x3863], /* CJK Ideograph Extension A */ + [0x3864, 0x3864], /* CJK Ideograph Extension A */ + [0x3865, 0x3865], /* CJK Ideograph Extension A */ + [0x3866, 0x3866], /* CJK Ideograph Extension A */ + [0x3867, 0x3867], /* CJK Ideograph Extension A */ + [0x3868, 0x3868], /* CJK Ideograph Extension A */ + [0x3869, 0x3869], /* CJK Ideograph Extension A */ + [0x386a, 0x386a], /* CJK Ideograph Extension A */ + [0x386b, 0x386b], /* CJK Ideograph Extension A */ + [0x386c, 0x386c], /* CJK Ideograph Extension A */ + [0x386d, 0x386d], /* CJK Ideograph Extension A */ + [0x386e, 0x386e], /* CJK Ideograph Extension A */ + [0x386f, 0x386f], /* CJK Ideograph Extension A */ + [0x3870, 0x3870], /* CJK Ideograph Extension A */ + [0x3871, 0x3871], /* CJK Ideograph Extension A */ + [0x3872, 0x3872], /* CJK Ideograph Extension A */ + [0x3873, 0x3873], /* CJK Ideograph Extension A */ + [0x3874, 0x3874], /* CJK Ideograph Extension A */ + [0x3875, 0x3875], /* CJK Ideograph Extension A */ + [0x3876, 0x3876], /* CJK Ideograph Extension A */ + [0x3877, 0x3877], /* CJK Ideograph Extension A */ + [0x3878, 0x3878], /* CJK Ideograph Extension A */ + [0x3879, 0x3879], /* CJK Ideograph Extension A */ + [0x387a, 0x387a], /* CJK Ideograph Extension A */ + [0x387b, 0x387b], /* CJK Ideograph Extension A */ + [0x387c, 0x387c], /* CJK Ideograph Extension A */ + [0x387d, 0x387d], /* CJK Ideograph Extension A */ + [0x387e, 0x387e], /* CJK Ideograph Extension A */ + [0x387f, 0x387f], /* CJK Ideograph Extension A */ + [0x3880, 0x3880], /* CJK Ideograph Extension A */ + [0x3881, 0x3881], /* CJK Ideograph Extension A */ + [0x3882, 0x3882], /* CJK Ideograph Extension A */ + [0x3883, 0x3883], /* CJK Ideograph Extension A */ + [0x3884, 0x3884], /* CJK Ideograph Extension A */ + [0x3885, 0x3885], /* CJK Ideograph Extension A */ + [0x3886, 0x3886], /* CJK Ideograph Extension A */ + [0x3887, 0x3887], /* CJK Ideograph Extension A */ + [0x3888, 0x3888], /* CJK Ideograph Extension A */ + [0x3889, 0x3889], /* CJK Ideograph Extension A */ + [0x388a, 0x388a], /* CJK Ideograph Extension A */ + [0x388b, 0x388b], /* CJK Ideograph Extension A */ + [0x388c, 0x388c], /* CJK Ideograph Extension A */ + [0x388d, 0x388d], /* CJK Ideograph Extension A */ + [0x388e, 0x388e], /* CJK Ideograph Extension A */ + [0x388f, 0x388f], /* CJK Ideograph Extension A */ + [0x3890, 0x3890], /* CJK Ideograph Extension A */ + [0x3891, 0x3891], /* CJK Ideograph Extension A */ + [0x3892, 0x3892], /* CJK Ideograph Extension A */ + [0x3893, 0x3893], /* CJK Ideograph Extension A */ + [0x3894, 0x3894], /* CJK Ideograph Extension A */ + [0x3895, 0x3895], /* CJK Ideograph Extension A */ + [0x3896, 0x3896], /* CJK Ideograph Extension A */ + [0x3897, 0x3897], /* CJK Ideograph Extension A */ + [0x3898, 0x3898], /* CJK Ideograph Extension A */ + [0x3899, 0x3899], /* CJK Ideograph Extension A */ + [0x389a, 0x389a], /* CJK Ideograph Extension A */ + [0x389b, 0x389b], /* CJK Ideograph Extension A */ + [0x389c, 0x389c], /* CJK Ideograph Extension A */ + [0x389d, 0x389d], /* CJK Ideograph Extension A */ + [0x389e, 0x389e], /* CJK Ideograph Extension A */ + [0x389f, 0x389f], /* CJK Ideograph Extension A */ + [0x38a0, 0x38a0], /* CJK Ideograph Extension A */ + [0x38a1, 0x38a1], /* CJK Ideograph Extension A */ + [0x38a2, 0x38a2], /* CJK Ideograph Extension A */ + [0x38a3, 0x38a3], /* CJK Ideograph Extension A */ + [0x38a4, 0x38a4], /* CJK Ideograph Extension A */ + [0x38a5, 0x38a5], /* CJK Ideograph Extension A */ + [0x38a6, 0x38a6], /* CJK Ideograph Extension A */ + [0x38a7, 0x38a7], /* CJK Ideograph Extension A */ + [0x38a8, 0x38a8], /* CJK Ideograph Extension A */ + [0x38a9, 0x38a9], /* CJK Ideograph Extension A */ + [0x38aa, 0x38aa], /* CJK Ideograph Extension A */ + [0x38ab, 0x38ab], /* CJK Ideograph Extension A */ + [0x38ac, 0x38ac], /* CJK Ideograph Extension A */ + [0x38ad, 0x38ad], /* CJK Ideograph Extension A */ + [0x38ae, 0x38ae], /* CJK Ideograph Extension A */ + [0x38af, 0x38af], /* CJK Ideograph Extension A */ + [0x38b0, 0x38b0], /* CJK Ideograph Extension A */ + [0x38b1, 0x38b1], /* CJK Ideograph Extension A */ + [0x38b2, 0x38b2], /* CJK Ideograph Extension A */ + [0x38b3, 0x38b3], /* CJK Ideograph Extension A */ + [0x38b4, 0x38b4], /* CJK Ideograph Extension A */ + [0x38b5, 0x38b5], /* CJK Ideograph Extension A */ + [0x38b6, 0x38b6], /* CJK Ideograph Extension A */ + [0x38b7, 0x38b7], /* CJK Ideograph Extension A */ + [0x38b8, 0x38b8], /* CJK Ideograph Extension A */ + [0x38b9, 0x38b9], /* CJK Ideograph Extension A */ + [0x38ba, 0x38ba], /* CJK Ideograph Extension A */ + [0x38bb, 0x38bb], /* CJK Ideograph Extension A */ + [0x38bc, 0x38bc], /* CJK Ideograph Extension A */ + [0x38bd, 0x38bd], /* CJK Ideograph Extension A */ + [0x38be, 0x38be], /* CJK Ideograph Extension A */ + [0x38bf, 0x38bf], /* CJK Ideograph Extension A */ + [0x38c0, 0x38c0], /* CJK Ideograph Extension A */ + [0x38c1, 0x38c1], /* CJK Ideograph Extension A */ + [0x38c2, 0x38c2], /* CJK Ideograph Extension A */ + [0x38c3, 0x38c3], /* CJK Ideograph Extension A */ + [0x38c4, 0x38c4], /* CJK Ideograph Extension A */ + [0x38c5, 0x38c5], /* CJK Ideograph Extension A */ + [0x38c6, 0x38c6], /* CJK Ideograph Extension A */ + [0x38c7, 0x38c7], /* CJK Ideograph Extension A */ + [0x38c8, 0x38c8], /* CJK Ideograph Extension A */ + [0x38c9, 0x38c9], /* CJK Ideograph Extension A */ + [0x38ca, 0x38ca], /* CJK Ideograph Extension A */ + [0x38cb, 0x38cb], /* CJK Ideograph Extension A */ + [0x38cc, 0x38cc], /* CJK Ideograph Extension A */ + [0x38cd, 0x38cd], /* CJK Ideograph Extension A */ + [0x38ce, 0x38ce], /* CJK Ideograph Extension A */ + [0x38cf, 0x38cf], /* CJK Ideograph Extension A */ + [0x38d0, 0x38d0], /* CJK Ideograph Extension A */ + [0x38d1, 0x38d1], /* CJK Ideograph Extension A */ + [0x38d2, 0x38d2], /* CJK Ideograph Extension A */ + [0x38d3, 0x38d3], /* CJK Ideograph Extension A */ + [0x38d4, 0x38d4], /* CJK Ideograph Extension A */ + [0x38d5, 0x38d5], /* CJK Ideograph Extension A */ + [0x38d6, 0x38d6], /* CJK Ideograph Extension A */ + [0x38d7, 0x38d7], /* CJK Ideograph Extension A */ + [0x38d8, 0x38d8], /* CJK Ideograph Extension A */ + [0x38d9, 0x38d9], /* CJK Ideograph Extension A */ + [0x38da, 0x38da], /* CJK Ideograph Extension A */ + [0x38db, 0x38db], /* CJK Ideograph Extension A */ + [0x38dc, 0x38dc], /* CJK Ideograph Extension A */ + [0x38dd, 0x38dd], /* CJK Ideograph Extension A */ + [0x38de, 0x38de], /* CJK Ideograph Extension A */ + [0x38df, 0x38df], /* CJK Ideograph Extension A */ + [0x38e0, 0x38e0], /* CJK Ideograph Extension A */ + [0x38e1, 0x38e1], /* CJK Ideograph Extension A */ + [0x38e2, 0x38e2], /* CJK Ideograph Extension A */ + [0x38e3, 0x38e3], /* CJK Ideograph Extension A */ + [0x38e4, 0x38e4], /* CJK Ideograph Extension A */ + [0x38e5, 0x38e5], /* CJK Ideograph Extension A */ + [0x38e6, 0x38e6], /* CJK Ideograph Extension A */ + [0x38e7, 0x38e7], /* CJK Ideograph Extension A */ + [0x38e8, 0x38e8], /* CJK Ideograph Extension A */ + [0x38e9, 0x38e9], /* CJK Ideograph Extension A */ + [0x38ea, 0x38ea], /* CJK Ideograph Extension A */ + [0x38eb, 0x38eb], /* CJK Ideograph Extension A */ + [0x38ec, 0x38ec], /* CJK Ideograph Extension A */ + [0x38ed, 0x38ed], /* CJK Ideograph Extension A */ + [0x38ee, 0x38ee], /* CJK Ideograph Extension A */ + [0x38ef, 0x38ef], /* CJK Ideograph Extension A */ + [0x38f0, 0x38f0], /* CJK Ideograph Extension A */ + [0x38f1, 0x38f1], /* CJK Ideograph Extension A */ + [0x38f2, 0x38f2], /* CJK Ideograph Extension A */ + [0x38f3, 0x38f3], /* CJK Ideograph Extension A */ + [0x38f4, 0x38f4], /* CJK Ideograph Extension A */ + [0x38f5, 0x38f5], /* CJK Ideograph Extension A */ + [0x38f6, 0x38f6], /* CJK Ideograph Extension A */ + [0x38f7, 0x38f7], /* CJK Ideograph Extension A */ + [0x38f8, 0x38f8], /* CJK Ideograph Extension A */ + [0x38f9, 0x38f9], /* CJK Ideograph Extension A */ + [0x38fa, 0x38fa], /* CJK Ideograph Extension A */ + [0x38fb, 0x38fb], /* CJK Ideograph Extension A */ + [0x38fc, 0x38fc], /* CJK Ideograph Extension A */ + [0x38fd, 0x38fd], /* CJK Ideograph Extension A */ + [0x38fe, 0x38fe], /* CJK Ideograph Extension A */ + [0x38ff, 0x38ff], /* CJK Ideograph Extension A */ + [0x3900, 0x3900], /* CJK Ideograph Extension A */ + [0x3901, 0x3901], /* CJK Ideograph Extension A */ + [0x3902, 0x3902], /* CJK Ideograph Extension A */ + [0x3903, 0x3903], /* CJK Ideograph Extension A */ + [0x3904, 0x3904], /* CJK Ideograph Extension A */ + [0x3905, 0x3905], /* CJK Ideograph Extension A */ + [0x3906, 0x3906], /* CJK Ideograph Extension A */ + [0x3907, 0x3907], /* CJK Ideograph Extension A */ + [0x3908, 0x3908], /* CJK Ideograph Extension A */ + [0x3909, 0x3909], /* CJK Ideograph Extension A */ + [0x390a, 0x390a], /* CJK Ideograph Extension A */ + [0x390b, 0x390b], /* CJK Ideograph Extension A */ + [0x390c, 0x390c], /* CJK Ideograph Extension A */ + [0x390d, 0x390d], /* CJK Ideograph Extension A */ + [0x390e, 0x390e], /* CJK Ideograph Extension A */ + [0x390f, 0x390f], /* CJK Ideograph Extension A */ + [0x3910, 0x3910], /* CJK Ideograph Extension A */ + [0x3911, 0x3911], /* CJK Ideograph Extension A */ + [0x3912, 0x3912], /* CJK Ideograph Extension A */ + [0x3913, 0x3913], /* CJK Ideograph Extension A */ + [0x3914, 0x3914], /* CJK Ideograph Extension A */ + [0x3915, 0x3915], /* CJK Ideograph Extension A */ + [0x3916, 0x3916], /* CJK Ideograph Extension A */ + [0x3917, 0x3917], /* CJK Ideograph Extension A */ + [0x3918, 0x3918], /* CJK Ideograph Extension A */ + [0x3919, 0x3919], /* CJK Ideograph Extension A */ + [0x391a, 0x391a], /* CJK Ideograph Extension A */ + [0x391b, 0x391b], /* CJK Ideograph Extension A */ + [0x391c, 0x391c], /* CJK Ideograph Extension A */ + [0x391d, 0x391d], /* CJK Ideograph Extension A */ + [0x391e, 0x391e], /* CJK Ideograph Extension A */ + [0x391f, 0x391f], /* CJK Ideograph Extension A */ + [0x3920, 0x3920], /* CJK Ideograph Extension A */ + [0x3921, 0x3921], /* CJK Ideograph Extension A */ + [0x3922, 0x3922], /* CJK Ideograph Extension A */ + [0x3923, 0x3923], /* CJK Ideograph Extension A */ + [0x3924, 0x3924], /* CJK Ideograph Extension A */ + [0x3925, 0x3925], /* CJK Ideograph Extension A */ + [0x3926, 0x3926], /* CJK Ideograph Extension A */ + [0x3927, 0x3927], /* CJK Ideograph Extension A */ + [0x3928, 0x3928], /* CJK Ideograph Extension A */ + [0x3929, 0x3929], /* CJK Ideograph Extension A */ + [0x392a, 0x392a], /* CJK Ideograph Extension A */ + [0x392b, 0x392b], /* CJK Ideograph Extension A */ + [0x392c, 0x392c], /* CJK Ideograph Extension A */ + [0x392d, 0x392d], /* CJK Ideograph Extension A */ + [0x392e, 0x392e], /* CJK Ideograph Extension A */ + [0x392f, 0x392f], /* CJK Ideograph Extension A */ + [0x3930, 0x3930], /* CJK Ideograph Extension A */ + [0x3931, 0x3931], /* CJK Ideograph Extension A */ + [0x3932, 0x3932], /* CJK Ideograph Extension A */ + [0x3933, 0x3933], /* CJK Ideograph Extension A */ + [0x3934, 0x3934], /* CJK Ideograph Extension A */ + [0x3935, 0x3935], /* CJK Ideograph Extension A */ + [0x3936, 0x3936], /* CJK Ideograph Extension A */ + [0x3937, 0x3937], /* CJK Ideograph Extension A */ + [0x3938, 0x3938], /* CJK Ideograph Extension A */ + [0x3939, 0x3939], /* CJK Ideograph Extension A */ + [0x393a, 0x393a], /* CJK Ideograph Extension A */ + [0x393b, 0x393b], /* CJK Ideograph Extension A */ + [0x393c, 0x393c], /* CJK Ideograph Extension A */ + [0x393d, 0x393d], /* CJK Ideograph Extension A */ + [0x393e, 0x393e], /* CJK Ideograph Extension A */ + [0x393f, 0x393f], /* CJK Ideograph Extension A */ + [0x3940, 0x3940], /* CJK Ideograph Extension A */ + [0x3941, 0x3941], /* CJK Ideograph Extension A */ + [0x3942, 0x3942], /* CJK Ideograph Extension A */ + [0x3943, 0x3943], /* CJK Ideograph Extension A */ + [0x3944, 0x3944], /* CJK Ideograph Extension A */ + [0x3945, 0x3945], /* CJK Ideograph Extension A */ + [0x3946, 0x3946], /* CJK Ideograph Extension A */ + [0x3947, 0x3947], /* CJK Ideograph Extension A */ + [0x3948, 0x3948], /* CJK Ideograph Extension A */ + [0x3949, 0x3949], /* CJK Ideograph Extension A */ + [0x394a, 0x394a], /* CJK Ideograph Extension A */ + [0x394b, 0x394b], /* CJK Ideograph Extension A */ + [0x394c, 0x394c], /* CJK Ideograph Extension A */ + [0x394d, 0x394d], /* CJK Ideograph Extension A */ + [0x394e, 0x394e], /* CJK Ideograph Extension A */ + [0x394f, 0x394f], /* CJK Ideograph Extension A */ + [0x3950, 0x3950], /* CJK Ideograph Extension A */ + [0x3951, 0x3951], /* CJK Ideograph Extension A */ + [0x3952, 0x3952], /* CJK Ideograph Extension A */ + [0x3953, 0x3953], /* CJK Ideograph Extension A */ + [0x3954, 0x3954], /* CJK Ideograph Extension A */ + [0x3955, 0x3955], /* CJK Ideograph Extension A */ + [0x3956, 0x3956], /* CJK Ideograph Extension A */ + [0x3957, 0x3957], /* CJK Ideograph Extension A */ + [0x3958, 0x3958], /* CJK Ideograph Extension A */ + [0x3959, 0x3959], /* CJK Ideograph Extension A */ + [0x395a, 0x395a], /* CJK Ideograph Extension A */ + [0x395b, 0x395b], /* CJK Ideograph Extension A */ + [0x395c, 0x395c], /* CJK Ideograph Extension A */ + [0x395d, 0x395d], /* CJK Ideograph Extension A */ + [0x395e, 0x395e], /* CJK Ideograph Extension A */ + [0x395f, 0x395f], /* CJK Ideograph Extension A */ + [0x3960, 0x3960], /* CJK Ideograph Extension A */ + [0x3961, 0x3961], /* CJK Ideograph Extension A */ + [0x3962, 0x3962], /* CJK Ideograph Extension A */ + [0x3963, 0x3963], /* CJK Ideograph Extension A */ + [0x3964, 0x3964], /* CJK Ideograph Extension A */ + [0x3965, 0x3965], /* CJK Ideograph Extension A */ + [0x3966, 0x3966], /* CJK Ideograph Extension A */ + [0x3967, 0x3967], /* CJK Ideograph Extension A */ + [0x3968, 0x3968], /* CJK Ideograph Extension A */ + [0x3969, 0x3969], /* CJK Ideograph Extension A */ + [0x396a, 0x396a], /* CJK Ideograph Extension A */ + [0x396b, 0x396b], /* CJK Ideograph Extension A */ + [0x396c, 0x396c], /* CJK Ideograph Extension A */ + [0x396d, 0x396d], /* CJK Ideograph Extension A */ + [0x396e, 0x396e], /* CJK Ideograph Extension A */ + [0x396f, 0x396f], /* CJK Ideograph Extension A */ + [0x3970, 0x3970], /* CJK Ideograph Extension A */ + [0x3971, 0x3971], /* CJK Ideograph Extension A */ + [0x3972, 0x3972], /* CJK Ideograph Extension A */ + [0x3973, 0x3973], /* CJK Ideograph Extension A */ + [0x3974, 0x3974], /* CJK Ideograph Extension A */ + [0x3975, 0x3975], /* CJK Ideograph Extension A */ + [0x3976, 0x3976], /* CJK Ideograph Extension A */ + [0x3977, 0x3977], /* CJK Ideograph Extension A */ + [0x3978, 0x3978], /* CJK Ideograph Extension A */ + [0x3979, 0x3979], /* CJK Ideograph Extension A */ + [0x397a, 0x397a], /* CJK Ideograph Extension A */ + [0x397b, 0x397b], /* CJK Ideograph Extension A */ + [0x397c, 0x397c], /* CJK Ideograph Extension A */ + [0x397d, 0x397d], /* CJK Ideograph Extension A */ + [0x397e, 0x397e], /* CJK Ideograph Extension A */ + [0x397f, 0x397f], /* CJK Ideograph Extension A */ + [0x3980, 0x3980], /* CJK Ideograph Extension A */ + [0x3981, 0x3981], /* CJK Ideograph Extension A */ + [0x3982, 0x3982], /* CJK Ideograph Extension A */ + [0x3983, 0x3983], /* CJK Ideograph Extension A */ + [0x3984, 0x3984], /* CJK Ideograph Extension A */ + [0x3985, 0x3985], /* CJK Ideograph Extension A */ + [0x3986, 0x3986], /* CJK Ideograph Extension A */ + [0x3987, 0x3987], /* CJK Ideograph Extension A */ + [0x3988, 0x3988], /* CJK Ideograph Extension A */ + [0x3989, 0x3989], /* CJK Ideograph Extension A */ + [0x398a, 0x398a], /* CJK Ideograph Extension A */ + [0x398b, 0x398b], /* CJK Ideograph Extension A */ + [0x398c, 0x398c], /* CJK Ideograph Extension A */ + [0x398d, 0x398d], /* CJK Ideograph Extension A */ + [0x398e, 0x398e], /* CJK Ideograph Extension A */ + [0x398f, 0x398f], /* CJK Ideograph Extension A */ + [0x3990, 0x3990], /* CJK Ideograph Extension A */ + [0x3991, 0x3991], /* CJK Ideograph Extension A */ + [0x3992, 0x3992], /* CJK Ideograph Extension A */ + [0x3993, 0x3993], /* CJK Ideograph Extension A */ + [0x3994, 0x3994], /* CJK Ideograph Extension A */ + [0x3995, 0x3995], /* CJK Ideograph Extension A */ + [0x3996, 0x3996], /* CJK Ideograph Extension A */ + [0x3997, 0x3997], /* CJK Ideograph Extension A */ + [0x3998, 0x3998], /* CJK Ideograph Extension A */ + [0x3999, 0x3999], /* CJK Ideograph Extension A */ + [0x399a, 0x399a], /* CJK Ideograph Extension A */ + [0x399b, 0x399b], /* CJK Ideograph Extension A */ + [0x399c, 0x399c], /* CJK Ideograph Extension A */ + [0x399d, 0x399d], /* CJK Ideograph Extension A */ + [0x399e, 0x399e], /* CJK Ideograph Extension A */ + [0x399f, 0x399f], /* CJK Ideograph Extension A */ + [0x39a0, 0x39a0], /* CJK Ideograph Extension A */ + [0x39a1, 0x39a1], /* CJK Ideograph Extension A */ + [0x39a2, 0x39a2], /* CJK Ideograph Extension A */ + [0x39a3, 0x39a3], /* CJK Ideograph Extension A */ + [0x39a4, 0x39a4], /* CJK Ideograph Extension A */ + [0x39a5, 0x39a5], /* CJK Ideograph Extension A */ + [0x39a6, 0x39a6], /* CJK Ideograph Extension A */ + [0x39a7, 0x39a7], /* CJK Ideograph Extension A */ + [0x39a8, 0x39a8], /* CJK Ideograph Extension A */ + [0x39a9, 0x39a9], /* CJK Ideograph Extension A */ + [0x39aa, 0x39aa], /* CJK Ideograph Extension A */ + [0x39ab, 0x39ab], /* CJK Ideograph Extension A */ + [0x39ac, 0x39ac], /* CJK Ideograph Extension A */ + [0x39ad, 0x39ad], /* CJK Ideograph Extension A */ + [0x39ae, 0x39ae], /* CJK Ideograph Extension A */ + [0x39af, 0x39af], /* CJK Ideograph Extension A */ + [0x39b0, 0x39b0], /* CJK Ideograph Extension A */ + [0x39b1, 0x39b1], /* CJK Ideograph Extension A */ + [0x39b2, 0x39b2], /* CJK Ideograph Extension A */ + [0x39b3, 0x39b3], /* CJK Ideograph Extension A */ + [0x39b4, 0x39b4], /* CJK Ideograph Extension A */ + [0x39b5, 0x39b5], /* CJK Ideograph Extension A */ + [0x39b6, 0x39b6], /* CJK Ideograph Extension A */ + [0x39b7, 0x39b7], /* CJK Ideograph Extension A */ + [0x39b8, 0x39b8], /* CJK Ideograph Extension A */ + [0x39b9, 0x39b9], /* CJK Ideograph Extension A */ + [0x39ba, 0x39ba], /* CJK Ideograph Extension A */ + [0x39bb, 0x39bb], /* CJK Ideograph Extension A */ + [0x39bc, 0x39bc], /* CJK Ideograph Extension A */ + [0x39bd, 0x39bd], /* CJK Ideograph Extension A */ + [0x39be, 0x39be], /* CJK Ideograph Extension A */ + [0x39bf, 0x39bf], /* CJK Ideograph Extension A */ + [0x39c0, 0x39c0], /* CJK Ideograph Extension A */ + [0x39c1, 0x39c1], /* CJK Ideograph Extension A */ + [0x39c2, 0x39c2], /* CJK Ideograph Extension A */ + [0x39c3, 0x39c3], /* CJK Ideograph Extension A */ + [0x39c4, 0x39c4], /* CJK Ideograph Extension A */ + [0x39c5, 0x39c5], /* CJK Ideograph Extension A */ + [0x39c6, 0x39c6], /* CJK Ideograph Extension A */ + [0x39c7, 0x39c7], /* CJK Ideograph Extension A */ + [0x39c8, 0x39c8], /* CJK Ideograph Extension A */ + [0x39c9, 0x39c9], /* CJK Ideograph Extension A */ + [0x39ca, 0x39ca], /* CJK Ideograph Extension A */ + [0x39cb, 0x39cb], /* CJK Ideograph Extension A */ + [0x39cc, 0x39cc], /* CJK Ideograph Extension A */ + [0x39cd, 0x39cd], /* CJK Ideograph Extension A */ + [0x39ce, 0x39ce], /* CJK Ideograph Extension A */ + [0x39cf, 0x39cf], /* CJK Ideograph Extension A */ + [0x39d0, 0x39d0], /* CJK Ideograph Extension A */ + [0x39d1, 0x39d1], /* CJK Ideograph Extension A */ + [0x39d2, 0x39d2], /* CJK Ideograph Extension A */ + [0x39d3, 0x39d3], /* CJK Ideograph Extension A */ + [0x39d4, 0x39d4], /* CJK Ideograph Extension A */ + [0x39d5, 0x39d5], /* CJK Ideograph Extension A */ + [0x39d6, 0x39d6], /* CJK Ideograph Extension A */ + [0x39d7, 0x39d7], /* CJK Ideograph Extension A */ + [0x39d8, 0x39d8], /* CJK Ideograph Extension A */ + [0x39d9, 0x39d9], /* CJK Ideograph Extension A */ + [0x39da, 0x39da], /* CJK Ideograph Extension A */ + [0x39db, 0x39db], /* CJK Ideograph Extension A */ + [0x39dc, 0x39dc], /* CJK Ideograph Extension A */ + [0x39dd, 0x39dd], /* CJK Ideograph Extension A */ + [0x39de, 0x39de], /* CJK Ideograph Extension A */ + [0x39df, 0x39df], /* CJK Ideograph Extension A */ + [0x39e0, 0x39e0], /* CJK Ideograph Extension A */ + [0x39e1, 0x39e1], /* CJK Ideograph Extension A */ + [0x39e2, 0x39e2], /* CJK Ideograph Extension A */ + [0x39e3, 0x39e3], /* CJK Ideograph Extension A */ + [0x39e4, 0x39e4], /* CJK Ideograph Extension A */ + [0x39e5, 0x39e5], /* CJK Ideograph Extension A */ + [0x39e6, 0x39e6], /* CJK Ideograph Extension A */ + [0x39e7, 0x39e7], /* CJK Ideograph Extension A */ + [0x39e8, 0x39e8], /* CJK Ideograph Extension A */ + [0x39e9, 0x39e9], /* CJK Ideograph Extension A */ + [0x39ea, 0x39ea], /* CJK Ideograph Extension A */ + [0x39eb, 0x39eb], /* CJK Ideograph Extension A */ + [0x39ec, 0x39ec], /* CJK Ideograph Extension A */ + [0x39ed, 0x39ed], /* CJK Ideograph Extension A */ + [0x39ee, 0x39ee], /* CJK Ideograph Extension A */ + [0x39ef, 0x39ef], /* CJK Ideograph Extension A */ + [0x39f0, 0x39f0], /* CJK Ideograph Extension A */ + [0x39f1, 0x39f1], /* CJK Ideograph Extension A */ + [0x39f2, 0x39f2], /* CJK Ideograph Extension A */ + [0x39f3, 0x39f3], /* CJK Ideograph Extension A */ + [0x39f4, 0x39f4], /* CJK Ideograph Extension A */ + [0x39f5, 0x39f5], /* CJK Ideograph Extension A */ + [0x39f6, 0x39f6], /* CJK Ideograph Extension A */ + [0x39f7, 0x39f7], /* CJK Ideograph Extension A */ + [0x39f8, 0x39f8], /* CJK Ideograph Extension A */ + [0x39f9, 0x39f9], /* CJK Ideograph Extension A */ + [0x39fa, 0x39fa], /* CJK Ideograph Extension A */ + [0x39fb, 0x39fb], /* CJK Ideograph Extension A */ + [0x39fc, 0x39fc], /* CJK Ideograph Extension A */ + [0x39fd, 0x39fd], /* CJK Ideograph Extension A */ + [0x39fe, 0x39fe], /* CJK Ideograph Extension A */ + [0x39ff, 0x39ff], /* CJK Ideograph Extension A */ + [0x3a00, 0x3a00], /* CJK Ideograph Extension A */ + [0x3a01, 0x3a01], /* CJK Ideograph Extension A */ + [0x3a02, 0x3a02], /* CJK Ideograph Extension A */ + [0x3a03, 0x3a03], /* CJK Ideograph Extension A */ + [0x3a04, 0x3a04], /* CJK Ideograph Extension A */ + [0x3a05, 0x3a05], /* CJK Ideograph Extension A */ + [0x3a06, 0x3a06], /* CJK Ideograph Extension A */ + [0x3a07, 0x3a07], /* CJK Ideograph Extension A */ + [0x3a08, 0x3a08], /* CJK Ideograph Extension A */ + [0x3a09, 0x3a09], /* CJK Ideograph Extension A */ + [0x3a0a, 0x3a0a], /* CJK Ideograph Extension A */ + [0x3a0b, 0x3a0b], /* CJK Ideograph Extension A */ + [0x3a0c, 0x3a0c], /* CJK Ideograph Extension A */ + [0x3a0d, 0x3a0d], /* CJK Ideograph Extension A */ + [0x3a0e, 0x3a0e], /* CJK Ideograph Extension A */ + [0x3a0f, 0x3a0f], /* CJK Ideograph Extension A */ + [0x3a10, 0x3a10], /* CJK Ideograph Extension A */ + [0x3a11, 0x3a11], /* CJK Ideograph Extension A */ + [0x3a12, 0x3a12], /* CJK Ideograph Extension A */ + [0x3a13, 0x3a13], /* CJK Ideograph Extension A */ + [0x3a14, 0x3a14], /* CJK Ideograph Extension A */ + [0x3a15, 0x3a15], /* CJK Ideograph Extension A */ + [0x3a16, 0x3a16], /* CJK Ideograph Extension A */ + [0x3a17, 0x3a17], /* CJK Ideograph Extension A */ + [0x3a18, 0x3a18], /* CJK Ideograph Extension A */ + [0x3a19, 0x3a19], /* CJK Ideograph Extension A */ + [0x3a1a, 0x3a1a], /* CJK Ideograph Extension A */ + [0x3a1b, 0x3a1b], /* CJK Ideograph Extension A */ + [0x3a1c, 0x3a1c], /* CJK Ideograph Extension A */ + [0x3a1d, 0x3a1d], /* CJK Ideograph Extension A */ + [0x3a1e, 0x3a1e], /* CJK Ideograph Extension A */ + [0x3a1f, 0x3a1f], /* CJK Ideograph Extension A */ + [0x3a20, 0x3a20], /* CJK Ideograph Extension A */ + [0x3a21, 0x3a21], /* CJK Ideograph Extension A */ + [0x3a22, 0x3a22], /* CJK Ideograph Extension A */ + [0x3a23, 0x3a23], /* CJK Ideograph Extension A */ + [0x3a24, 0x3a24], /* CJK Ideograph Extension A */ + [0x3a25, 0x3a25], /* CJK Ideograph Extension A */ + [0x3a26, 0x3a26], /* CJK Ideograph Extension A */ + [0x3a27, 0x3a27], /* CJK Ideograph Extension A */ + [0x3a28, 0x3a28], /* CJK Ideograph Extension A */ + [0x3a29, 0x3a29], /* CJK Ideograph Extension A */ + [0x3a2a, 0x3a2a], /* CJK Ideograph Extension A */ + [0x3a2b, 0x3a2b], /* CJK Ideograph Extension A */ + [0x3a2c, 0x3a2c], /* CJK Ideograph Extension A */ + [0x3a2d, 0x3a2d], /* CJK Ideograph Extension A */ + [0x3a2e, 0x3a2e], /* CJK Ideograph Extension A */ + [0x3a2f, 0x3a2f], /* CJK Ideograph Extension A */ + [0x3a30, 0x3a30], /* CJK Ideograph Extension A */ + [0x3a31, 0x3a31], /* CJK Ideograph Extension A */ + [0x3a32, 0x3a32], /* CJK Ideograph Extension A */ + [0x3a33, 0x3a33], /* CJK Ideograph Extension A */ + [0x3a34, 0x3a34], /* CJK Ideograph Extension A */ + [0x3a35, 0x3a35], /* CJK Ideograph Extension A */ + [0x3a36, 0x3a36], /* CJK Ideograph Extension A */ + [0x3a37, 0x3a37], /* CJK Ideograph Extension A */ + [0x3a38, 0x3a38], /* CJK Ideograph Extension A */ + [0x3a39, 0x3a39], /* CJK Ideograph Extension A */ + [0x3a3a, 0x3a3a], /* CJK Ideograph Extension A */ + [0x3a3b, 0x3a3b], /* CJK Ideograph Extension A */ + [0x3a3c, 0x3a3c], /* CJK Ideograph Extension A */ + [0x3a3d, 0x3a3d], /* CJK Ideograph Extension A */ + [0x3a3e, 0x3a3e], /* CJK Ideograph Extension A */ + [0x3a3f, 0x3a3f], /* CJK Ideograph Extension A */ + [0x3a40, 0x3a40], /* CJK Ideograph Extension A */ + [0x3a41, 0x3a41], /* CJK Ideograph Extension A */ + [0x3a42, 0x3a42], /* CJK Ideograph Extension A */ + [0x3a43, 0x3a43], /* CJK Ideograph Extension A */ + [0x3a44, 0x3a44], /* CJK Ideograph Extension A */ + [0x3a45, 0x3a45], /* CJK Ideograph Extension A */ + [0x3a46, 0x3a46], /* CJK Ideograph Extension A */ + [0x3a47, 0x3a47], /* CJK Ideograph Extension A */ + [0x3a48, 0x3a48], /* CJK Ideograph Extension A */ + [0x3a49, 0x3a49], /* CJK Ideograph Extension A */ + [0x3a4a, 0x3a4a], /* CJK Ideograph Extension A */ + [0x3a4b, 0x3a4b], /* CJK Ideograph Extension A */ + [0x3a4c, 0x3a4c], /* CJK Ideograph Extension A */ + [0x3a4d, 0x3a4d], /* CJK Ideograph Extension A */ + [0x3a4e, 0x3a4e], /* CJK Ideograph Extension A */ + [0x3a4f, 0x3a4f], /* CJK Ideograph Extension A */ + [0x3a50, 0x3a50], /* CJK Ideograph Extension A */ + [0x3a51, 0x3a51], /* CJK Ideograph Extension A */ + [0x3a52, 0x3a52], /* CJK Ideograph Extension A */ + [0x3a53, 0x3a53], /* CJK Ideograph Extension A */ + [0x3a54, 0x3a54], /* CJK Ideograph Extension A */ + [0x3a55, 0x3a55], /* CJK Ideograph Extension A */ + [0x3a56, 0x3a56], /* CJK Ideograph Extension A */ + [0x3a57, 0x3a57], /* CJK Ideograph Extension A */ + [0x3a58, 0x3a58], /* CJK Ideograph Extension A */ + [0x3a59, 0x3a59], /* CJK Ideograph Extension A */ + [0x3a5a, 0x3a5a], /* CJK Ideograph Extension A */ + [0x3a5b, 0x3a5b], /* CJK Ideograph Extension A */ + [0x3a5c, 0x3a5c], /* CJK Ideograph Extension A */ + [0x3a5d, 0x3a5d], /* CJK Ideograph Extension A */ + [0x3a5e, 0x3a5e], /* CJK Ideograph Extension A */ + [0x3a5f, 0x3a5f], /* CJK Ideograph Extension A */ + [0x3a60, 0x3a60], /* CJK Ideograph Extension A */ + [0x3a61, 0x3a61], /* CJK Ideograph Extension A */ + [0x3a62, 0x3a62], /* CJK Ideograph Extension A */ + [0x3a63, 0x3a63], /* CJK Ideograph Extension A */ + [0x3a64, 0x3a64], /* CJK Ideograph Extension A */ + [0x3a65, 0x3a65], /* CJK Ideograph Extension A */ + [0x3a66, 0x3a66], /* CJK Ideograph Extension A */ + [0x3a67, 0x3a67], /* CJK Ideograph Extension A */ + [0x3a68, 0x3a68], /* CJK Ideograph Extension A */ + [0x3a69, 0x3a69], /* CJK Ideograph Extension A */ + [0x3a6a, 0x3a6a], /* CJK Ideograph Extension A */ + [0x3a6b, 0x3a6b], /* CJK Ideograph Extension A */ + [0x3a6c, 0x3a6c], /* CJK Ideograph Extension A */ + [0x3a6d, 0x3a6d], /* CJK Ideograph Extension A */ + [0x3a6e, 0x3a6e], /* CJK Ideograph Extension A */ + [0x3a6f, 0x3a6f], /* CJK Ideograph Extension A */ + [0x3a70, 0x3a70], /* CJK Ideograph Extension A */ + [0x3a71, 0x3a71], /* CJK Ideograph Extension A */ + [0x3a72, 0x3a72], /* CJK Ideograph Extension A */ + [0x3a73, 0x3a73], /* CJK Ideograph Extension A */ + [0x3a74, 0x3a74], /* CJK Ideograph Extension A */ + [0x3a75, 0x3a75], /* CJK Ideograph Extension A */ + [0x3a76, 0x3a76], /* CJK Ideograph Extension A */ + [0x3a77, 0x3a77], /* CJK Ideograph Extension A */ + [0x3a78, 0x3a78], /* CJK Ideograph Extension A */ + [0x3a79, 0x3a79], /* CJK Ideograph Extension A */ + [0x3a7a, 0x3a7a], /* CJK Ideograph Extension A */ + [0x3a7b, 0x3a7b], /* CJK Ideograph Extension A */ + [0x3a7c, 0x3a7c], /* CJK Ideograph Extension A */ + [0x3a7d, 0x3a7d], /* CJK Ideograph Extension A */ + [0x3a7e, 0x3a7e], /* CJK Ideograph Extension A */ + [0x3a7f, 0x3a7f], /* CJK Ideograph Extension A */ + [0x3a80, 0x3a80], /* CJK Ideograph Extension A */ + [0x3a81, 0x3a81], /* CJK Ideograph Extension A */ + [0x3a82, 0x3a82], /* CJK Ideograph Extension A */ + [0x3a83, 0x3a83], /* CJK Ideograph Extension A */ + [0x3a84, 0x3a84], /* CJK Ideograph Extension A */ + [0x3a85, 0x3a85], /* CJK Ideograph Extension A */ + [0x3a86, 0x3a86], /* CJK Ideograph Extension A */ + [0x3a87, 0x3a87], /* CJK Ideograph Extension A */ + [0x3a88, 0x3a88], /* CJK Ideograph Extension A */ + [0x3a89, 0x3a89], /* CJK Ideograph Extension A */ + [0x3a8a, 0x3a8a], /* CJK Ideograph Extension A */ + [0x3a8b, 0x3a8b], /* CJK Ideograph Extension A */ + [0x3a8c, 0x3a8c], /* CJK Ideograph Extension A */ + [0x3a8d, 0x3a8d], /* CJK Ideograph Extension A */ + [0x3a8e, 0x3a8e], /* CJK Ideograph Extension A */ + [0x3a8f, 0x3a8f], /* CJK Ideograph Extension A */ + [0x3a90, 0x3a90], /* CJK Ideograph Extension A */ + [0x3a91, 0x3a91], /* CJK Ideograph Extension A */ + [0x3a92, 0x3a92], /* CJK Ideograph Extension A */ + [0x3a93, 0x3a93], /* CJK Ideograph Extension A */ + [0x3a94, 0x3a94], /* CJK Ideograph Extension A */ + [0x3a95, 0x3a95], /* CJK Ideograph Extension A */ + [0x3a96, 0x3a96], /* CJK Ideograph Extension A */ + [0x3a97, 0x3a97], /* CJK Ideograph Extension A */ + [0x3a98, 0x3a98], /* CJK Ideograph Extension A */ + [0x3a99, 0x3a99], /* CJK Ideograph Extension A */ + [0x3a9a, 0x3a9a], /* CJK Ideograph Extension A */ + [0x3a9b, 0x3a9b], /* CJK Ideograph Extension A */ + [0x3a9c, 0x3a9c], /* CJK Ideograph Extension A */ + [0x3a9d, 0x3a9d], /* CJK Ideograph Extension A */ + [0x3a9e, 0x3a9e], /* CJK Ideograph Extension A */ + [0x3a9f, 0x3a9f], /* CJK Ideograph Extension A */ + [0x3aa0, 0x3aa0], /* CJK Ideograph Extension A */ + [0x3aa1, 0x3aa1], /* CJK Ideograph Extension A */ + [0x3aa2, 0x3aa2], /* CJK Ideograph Extension A */ + [0x3aa3, 0x3aa3], /* CJK Ideograph Extension A */ + [0x3aa4, 0x3aa4], /* CJK Ideograph Extension A */ + [0x3aa5, 0x3aa5], /* CJK Ideograph Extension A */ + [0x3aa6, 0x3aa6], /* CJK Ideograph Extension A */ + [0x3aa7, 0x3aa7], /* CJK Ideograph Extension A */ + [0x3aa8, 0x3aa8], /* CJK Ideograph Extension A */ + [0x3aa9, 0x3aa9], /* CJK Ideograph Extension A */ + [0x3aaa, 0x3aaa], /* CJK Ideograph Extension A */ + [0x3aab, 0x3aab], /* CJK Ideograph Extension A */ + [0x3aac, 0x3aac], /* CJK Ideograph Extension A */ + [0x3aad, 0x3aad], /* CJK Ideograph Extension A */ + [0x3aae, 0x3aae], /* CJK Ideograph Extension A */ + [0x3aaf, 0x3aaf], /* CJK Ideograph Extension A */ + [0x3ab0, 0x3ab0], /* CJK Ideograph Extension A */ + [0x3ab1, 0x3ab1], /* CJK Ideograph Extension A */ + [0x3ab2, 0x3ab2], /* CJK Ideograph Extension A */ + [0x3ab3, 0x3ab3], /* CJK Ideograph Extension A */ + [0x3ab4, 0x3ab4], /* CJK Ideograph Extension A */ + [0x3ab5, 0x3ab5], /* CJK Ideograph Extension A */ + [0x3ab6, 0x3ab6], /* CJK Ideograph Extension A */ + [0x3ab7, 0x3ab7], /* CJK Ideograph Extension A */ + [0x3ab8, 0x3ab8], /* CJK Ideograph Extension A */ + [0x3ab9, 0x3ab9], /* CJK Ideograph Extension A */ + [0x3aba, 0x3aba], /* CJK Ideograph Extension A */ + [0x3abb, 0x3abb], /* CJK Ideograph Extension A */ + [0x3abc, 0x3abc], /* CJK Ideograph Extension A */ + [0x3abd, 0x3abd], /* CJK Ideograph Extension A */ + [0x3abe, 0x3abe], /* CJK Ideograph Extension A */ + [0x3abf, 0x3abf], /* CJK Ideograph Extension A */ + [0x3ac0, 0x3ac0], /* CJK Ideograph Extension A */ + [0x3ac1, 0x3ac1], /* CJK Ideograph Extension A */ + [0x3ac2, 0x3ac2], /* CJK Ideograph Extension A */ + [0x3ac3, 0x3ac3], /* CJK Ideograph Extension A */ + [0x3ac4, 0x3ac4], /* CJK Ideograph Extension A */ + [0x3ac5, 0x3ac5], /* CJK Ideograph Extension A */ + [0x3ac6, 0x3ac6], /* CJK Ideograph Extension A */ + [0x3ac7, 0x3ac7], /* CJK Ideograph Extension A */ + [0x3ac8, 0x3ac8], /* CJK Ideograph Extension A */ + [0x3ac9, 0x3ac9], /* CJK Ideograph Extension A */ + [0x3aca, 0x3aca], /* CJK Ideograph Extension A */ + [0x3acb, 0x3acb], /* CJK Ideograph Extension A */ + [0x3acc, 0x3acc], /* CJK Ideograph Extension A */ + [0x3acd, 0x3acd], /* CJK Ideograph Extension A */ + [0x3ace, 0x3ace], /* CJK Ideograph Extension A */ + [0x3acf, 0x3acf], /* CJK Ideograph Extension A */ + [0x3ad0, 0x3ad0], /* CJK Ideograph Extension A */ + [0x3ad1, 0x3ad1], /* CJK Ideograph Extension A */ + [0x3ad2, 0x3ad2], /* CJK Ideograph Extension A */ + [0x3ad3, 0x3ad3], /* CJK Ideograph Extension A */ + [0x3ad4, 0x3ad4], /* CJK Ideograph Extension A */ + [0x3ad5, 0x3ad5], /* CJK Ideograph Extension A */ + [0x3ad6, 0x3ad6], /* CJK Ideograph Extension A */ + [0x3ad7, 0x3ad7], /* CJK Ideograph Extension A */ + [0x3ad8, 0x3ad8], /* CJK Ideograph Extension A */ + [0x3ad9, 0x3ad9], /* CJK Ideograph Extension A */ + [0x3ada, 0x3ada], /* CJK Ideograph Extension A */ + [0x3adb, 0x3adb], /* CJK Ideograph Extension A */ + [0x3adc, 0x3adc], /* CJK Ideograph Extension A */ + [0x3add, 0x3add], /* CJK Ideograph Extension A */ + [0x3ade, 0x3ade], /* CJK Ideograph Extension A */ + [0x3adf, 0x3adf], /* CJK Ideograph Extension A */ + [0x3ae0, 0x3ae0], /* CJK Ideograph Extension A */ + [0x3ae1, 0x3ae1], /* CJK Ideograph Extension A */ + [0x3ae2, 0x3ae2], /* CJK Ideograph Extension A */ + [0x3ae3, 0x3ae3], /* CJK Ideograph Extension A */ + [0x3ae4, 0x3ae4], /* CJK Ideograph Extension A */ + [0x3ae5, 0x3ae5], /* CJK Ideograph Extension A */ + [0x3ae6, 0x3ae6], /* CJK Ideograph Extension A */ + [0x3ae7, 0x3ae7], /* CJK Ideograph Extension A */ + [0x3ae8, 0x3ae8], /* CJK Ideograph Extension A */ + [0x3ae9, 0x3ae9], /* CJK Ideograph Extension A */ + [0x3aea, 0x3aea], /* CJK Ideograph Extension A */ + [0x3aeb, 0x3aeb], /* CJK Ideograph Extension A */ + [0x3aec, 0x3aec], /* CJK Ideograph Extension A */ + [0x3aed, 0x3aed], /* CJK Ideograph Extension A */ + [0x3aee, 0x3aee], /* CJK Ideograph Extension A */ + [0x3aef, 0x3aef], /* CJK Ideograph Extension A */ + [0x3af0, 0x3af0], /* CJK Ideograph Extension A */ + [0x3af1, 0x3af1], /* CJK Ideograph Extension A */ + [0x3af2, 0x3af2], /* CJK Ideograph Extension A */ + [0x3af3, 0x3af3], /* CJK Ideograph Extension A */ + [0x3af4, 0x3af4], /* CJK Ideograph Extension A */ + [0x3af5, 0x3af5], /* CJK Ideograph Extension A */ + [0x3af6, 0x3af6], /* CJK Ideograph Extension A */ + [0x3af7, 0x3af7], /* CJK Ideograph Extension A */ + [0x3af8, 0x3af8], /* CJK Ideograph Extension A */ + [0x3af9, 0x3af9], /* CJK Ideograph Extension A */ + [0x3afa, 0x3afa], /* CJK Ideograph Extension A */ + [0x3afb, 0x3afb], /* CJK Ideograph Extension A */ + [0x3afc, 0x3afc], /* CJK Ideograph Extension A */ + [0x3afd, 0x3afd], /* CJK Ideograph Extension A */ + [0x3afe, 0x3afe], /* CJK Ideograph Extension A */ + [0x3aff, 0x3aff], /* CJK Ideograph Extension A */ + [0x3b00, 0x3b00], /* CJK Ideograph Extension A */ + [0x3b01, 0x3b01], /* CJK Ideograph Extension A */ + [0x3b02, 0x3b02], /* CJK Ideograph Extension A */ + [0x3b03, 0x3b03], /* CJK Ideograph Extension A */ + [0x3b04, 0x3b04], /* CJK Ideograph Extension A */ + [0x3b05, 0x3b05], /* CJK Ideograph Extension A */ + [0x3b06, 0x3b06], /* CJK Ideograph Extension A */ + [0x3b07, 0x3b07], /* CJK Ideograph Extension A */ + [0x3b08, 0x3b08], /* CJK Ideograph Extension A */ + [0x3b09, 0x3b09], /* CJK Ideograph Extension A */ + [0x3b0a, 0x3b0a], /* CJK Ideograph Extension A */ + [0x3b0b, 0x3b0b], /* CJK Ideograph Extension A */ + [0x3b0c, 0x3b0c], /* CJK Ideograph Extension A */ + [0x3b0d, 0x3b0d], /* CJK Ideograph Extension A */ + [0x3b0e, 0x3b0e], /* CJK Ideograph Extension A */ + [0x3b0f, 0x3b0f], /* CJK Ideograph Extension A */ + [0x3b10, 0x3b10], /* CJK Ideograph Extension A */ + [0x3b11, 0x3b11], /* CJK Ideograph Extension A */ + [0x3b12, 0x3b12], /* CJK Ideograph Extension A */ + [0x3b13, 0x3b13], /* CJK Ideograph Extension A */ + [0x3b14, 0x3b14], /* CJK Ideograph Extension A */ + [0x3b15, 0x3b15], /* CJK Ideograph Extension A */ + [0x3b16, 0x3b16], /* CJK Ideograph Extension A */ + [0x3b17, 0x3b17], /* CJK Ideograph Extension A */ + [0x3b18, 0x3b18], /* CJK Ideograph Extension A */ + [0x3b19, 0x3b19], /* CJK Ideograph Extension A */ + [0x3b1a, 0x3b1a], /* CJK Ideograph Extension A */ + [0x3b1b, 0x3b1b], /* CJK Ideograph Extension A */ + [0x3b1c, 0x3b1c], /* CJK Ideograph Extension A */ + [0x3b1d, 0x3b1d], /* CJK Ideograph Extension A */ + [0x3b1e, 0x3b1e], /* CJK Ideograph Extension A */ + [0x3b1f, 0x3b1f], /* CJK Ideograph Extension A */ + [0x3b20, 0x3b20], /* CJK Ideograph Extension A */ + [0x3b21, 0x3b21], /* CJK Ideograph Extension A */ + [0x3b22, 0x3b22], /* CJK Ideograph Extension A */ + [0x3b23, 0x3b23], /* CJK Ideograph Extension A */ + [0x3b24, 0x3b24], /* CJK Ideograph Extension A */ + [0x3b25, 0x3b25], /* CJK Ideograph Extension A */ + [0x3b26, 0x3b26], /* CJK Ideograph Extension A */ + [0x3b27, 0x3b27], /* CJK Ideograph Extension A */ + [0x3b28, 0x3b28], /* CJK Ideograph Extension A */ + [0x3b29, 0x3b29], /* CJK Ideograph Extension A */ + [0x3b2a, 0x3b2a], /* CJK Ideograph Extension A */ + [0x3b2b, 0x3b2b], /* CJK Ideograph Extension A */ + [0x3b2c, 0x3b2c], /* CJK Ideograph Extension A */ + [0x3b2d, 0x3b2d], /* CJK Ideograph Extension A */ + [0x3b2e, 0x3b2e], /* CJK Ideograph Extension A */ + [0x3b2f, 0x3b2f], /* CJK Ideograph Extension A */ + [0x3b30, 0x3b30], /* CJK Ideograph Extension A */ + [0x3b31, 0x3b31], /* CJK Ideograph Extension A */ + [0x3b32, 0x3b32], /* CJK Ideograph Extension A */ + [0x3b33, 0x3b33], /* CJK Ideograph Extension A */ + [0x3b34, 0x3b34], /* CJK Ideograph Extension A */ + [0x3b35, 0x3b35], /* CJK Ideograph Extension A */ + [0x3b36, 0x3b36], /* CJK Ideograph Extension A */ + [0x3b37, 0x3b37], /* CJK Ideograph Extension A */ + [0x3b38, 0x3b38], /* CJK Ideograph Extension A */ + [0x3b39, 0x3b39], /* CJK Ideograph Extension A */ + [0x3b3a, 0x3b3a], /* CJK Ideograph Extension A */ + [0x3b3b, 0x3b3b], /* CJK Ideograph Extension A */ + [0x3b3c, 0x3b3c], /* CJK Ideograph Extension A */ + [0x3b3d, 0x3b3d], /* CJK Ideograph Extension A */ + [0x3b3e, 0x3b3e], /* CJK Ideograph Extension A */ + [0x3b3f, 0x3b3f], /* CJK Ideograph Extension A */ + [0x3b40, 0x3b40], /* CJK Ideograph Extension A */ + [0x3b41, 0x3b41], /* CJK Ideograph Extension A */ + [0x3b42, 0x3b42], /* CJK Ideograph Extension A */ + [0x3b43, 0x3b43], /* CJK Ideograph Extension A */ + [0x3b44, 0x3b44], /* CJK Ideograph Extension A */ + [0x3b45, 0x3b45], /* CJK Ideograph Extension A */ + [0x3b46, 0x3b46], /* CJK Ideograph Extension A */ + [0x3b47, 0x3b47], /* CJK Ideograph Extension A */ + [0x3b48, 0x3b48], /* CJK Ideograph Extension A */ + [0x3b49, 0x3b49], /* CJK Ideograph Extension A */ + [0x3b4a, 0x3b4a], /* CJK Ideograph Extension A */ + [0x3b4b, 0x3b4b], /* CJK Ideograph Extension A */ + [0x3b4c, 0x3b4c], /* CJK Ideograph Extension A */ + [0x3b4d, 0x3b4d], /* CJK Ideograph Extension A */ + [0x3b4e, 0x3b4e], /* CJK Ideograph Extension A */ + [0x3b4f, 0x3b4f], /* CJK Ideograph Extension A */ + [0x3b50, 0x3b50], /* CJK Ideograph Extension A */ + [0x3b51, 0x3b51], /* CJK Ideograph Extension A */ + [0x3b52, 0x3b52], /* CJK Ideograph Extension A */ + [0x3b53, 0x3b53], /* CJK Ideograph Extension A */ + [0x3b54, 0x3b54], /* CJK Ideograph Extension A */ + [0x3b55, 0x3b55], /* CJK Ideograph Extension A */ + [0x3b56, 0x3b56], /* CJK Ideograph Extension A */ + [0x3b57, 0x3b57], /* CJK Ideograph Extension A */ + [0x3b58, 0x3b58], /* CJK Ideograph Extension A */ + [0x3b59, 0x3b59], /* CJK Ideograph Extension A */ + [0x3b5a, 0x3b5a], /* CJK Ideograph Extension A */ + [0x3b5b, 0x3b5b], /* CJK Ideograph Extension A */ + [0x3b5c, 0x3b5c], /* CJK Ideograph Extension A */ + [0x3b5d, 0x3b5d], /* CJK Ideograph Extension A */ + [0x3b5e, 0x3b5e], /* CJK Ideograph Extension A */ + [0x3b5f, 0x3b5f], /* CJK Ideograph Extension A */ + [0x3b60, 0x3b60], /* CJK Ideograph Extension A */ + [0x3b61, 0x3b61], /* CJK Ideograph Extension A */ + [0x3b62, 0x3b62], /* CJK Ideograph Extension A */ + [0x3b63, 0x3b63], /* CJK Ideograph Extension A */ + [0x3b64, 0x3b64], /* CJK Ideograph Extension A */ + [0x3b65, 0x3b65], /* CJK Ideograph Extension A */ + [0x3b66, 0x3b66], /* CJK Ideograph Extension A */ + [0x3b67, 0x3b67], /* CJK Ideograph Extension A */ + [0x3b68, 0x3b68], /* CJK Ideograph Extension A */ + [0x3b69, 0x3b69], /* CJK Ideograph Extension A */ + [0x3b6a, 0x3b6a], /* CJK Ideograph Extension A */ + [0x3b6b, 0x3b6b], /* CJK Ideograph Extension A */ + [0x3b6c, 0x3b6c], /* CJK Ideograph Extension A */ + [0x3b6d, 0x3b6d], /* CJK Ideograph Extension A */ + [0x3b6e, 0x3b6e], /* CJK Ideograph Extension A */ + [0x3b6f, 0x3b6f], /* CJK Ideograph Extension A */ + [0x3b70, 0x3b70], /* CJK Ideograph Extension A */ + [0x3b71, 0x3b71], /* CJK Ideograph Extension A */ + [0x3b72, 0x3b72], /* CJK Ideograph Extension A */ + [0x3b73, 0x3b73], /* CJK Ideograph Extension A */ + [0x3b74, 0x3b74], /* CJK Ideograph Extension A */ + [0x3b75, 0x3b75], /* CJK Ideograph Extension A */ + [0x3b76, 0x3b76], /* CJK Ideograph Extension A */ + [0x3b77, 0x3b77], /* CJK Ideograph Extension A */ + [0x3b78, 0x3b78], /* CJK Ideograph Extension A */ + [0x3b79, 0x3b79], /* CJK Ideograph Extension A */ + [0x3b7a, 0x3b7a], /* CJK Ideograph Extension A */ + [0x3b7b, 0x3b7b], /* CJK Ideograph Extension A */ + [0x3b7c, 0x3b7c], /* CJK Ideograph Extension A */ + [0x3b7d, 0x3b7d], /* CJK Ideograph Extension A */ + [0x3b7e, 0x3b7e], /* CJK Ideograph Extension A */ + [0x3b7f, 0x3b7f], /* CJK Ideograph Extension A */ + [0x3b80, 0x3b80], /* CJK Ideograph Extension A */ + [0x3b81, 0x3b81], /* CJK Ideograph Extension A */ + [0x3b82, 0x3b82], /* CJK Ideograph Extension A */ + [0x3b83, 0x3b83], /* CJK Ideograph Extension A */ + [0x3b84, 0x3b84], /* CJK Ideograph Extension A */ + [0x3b85, 0x3b85], /* CJK Ideograph Extension A */ + [0x3b86, 0x3b86], /* CJK Ideograph Extension A */ + [0x3b87, 0x3b87], /* CJK Ideograph Extension A */ + [0x3b88, 0x3b88], /* CJK Ideograph Extension A */ + [0x3b89, 0x3b89], /* CJK Ideograph Extension A */ + [0x3b8a, 0x3b8a], /* CJK Ideograph Extension A */ + [0x3b8b, 0x3b8b], /* CJK Ideograph Extension A */ + [0x3b8c, 0x3b8c], /* CJK Ideograph Extension A */ + [0x3b8d, 0x3b8d], /* CJK Ideograph Extension A */ + [0x3b8e, 0x3b8e], /* CJK Ideograph Extension A */ + [0x3b8f, 0x3b8f], /* CJK Ideograph Extension A */ + [0x3b90, 0x3b90], /* CJK Ideograph Extension A */ + [0x3b91, 0x3b91], /* CJK Ideograph Extension A */ + [0x3b92, 0x3b92], /* CJK Ideograph Extension A */ + [0x3b93, 0x3b93], /* CJK Ideograph Extension A */ + [0x3b94, 0x3b94], /* CJK Ideograph Extension A */ + [0x3b95, 0x3b95], /* CJK Ideograph Extension A */ + [0x3b96, 0x3b96], /* CJK Ideograph Extension A */ + [0x3b97, 0x3b97], /* CJK Ideograph Extension A */ + [0x3b98, 0x3b98], /* CJK Ideograph Extension A */ + [0x3b99, 0x3b99], /* CJK Ideograph Extension A */ + [0x3b9a, 0x3b9a], /* CJK Ideograph Extension A */ + [0x3b9b, 0x3b9b], /* CJK Ideograph Extension A */ + [0x3b9c, 0x3b9c], /* CJK Ideograph Extension A */ + [0x3b9d, 0x3b9d], /* CJK Ideograph Extension A */ + [0x3b9e, 0x3b9e], /* CJK Ideograph Extension A */ + [0x3b9f, 0x3b9f], /* CJK Ideograph Extension A */ + [0x3ba0, 0x3ba0], /* CJK Ideograph Extension A */ + [0x3ba1, 0x3ba1], /* CJK Ideograph Extension A */ + [0x3ba2, 0x3ba2], /* CJK Ideograph Extension A */ + [0x3ba3, 0x3ba3], /* CJK Ideograph Extension A */ + [0x3ba4, 0x3ba4], /* CJK Ideograph Extension A */ + [0x3ba5, 0x3ba5], /* CJK Ideograph Extension A */ + [0x3ba6, 0x3ba6], /* CJK Ideograph Extension A */ + [0x3ba7, 0x3ba7], /* CJK Ideograph Extension A */ + [0x3ba8, 0x3ba8], /* CJK Ideograph Extension A */ + [0x3ba9, 0x3ba9], /* CJK Ideograph Extension A */ + [0x3baa, 0x3baa], /* CJK Ideograph Extension A */ + [0x3bab, 0x3bab], /* CJK Ideograph Extension A */ + [0x3bac, 0x3bac], /* CJK Ideograph Extension A */ + [0x3bad, 0x3bad], /* CJK Ideograph Extension A */ + [0x3bae, 0x3bae], /* CJK Ideograph Extension A */ + [0x3baf, 0x3baf], /* CJK Ideograph Extension A */ + [0x3bb0, 0x3bb0], /* CJK Ideograph Extension A */ + [0x3bb1, 0x3bb1], /* CJK Ideograph Extension A */ + [0x3bb2, 0x3bb2], /* CJK Ideograph Extension A */ + [0x3bb3, 0x3bb3], /* CJK Ideograph Extension A */ + [0x3bb4, 0x3bb4], /* CJK Ideograph Extension A */ + [0x3bb5, 0x3bb5], /* CJK Ideograph Extension A */ + [0x3bb6, 0x3bb6], /* CJK Ideograph Extension A */ + [0x3bb7, 0x3bb7], /* CJK Ideograph Extension A */ + [0x3bb8, 0x3bb8], /* CJK Ideograph Extension A */ + [0x3bb9, 0x3bb9], /* CJK Ideograph Extension A */ + [0x3bba, 0x3bba], /* CJK Ideograph Extension A */ + [0x3bbb, 0x3bbb], /* CJK Ideograph Extension A */ + [0x3bbc, 0x3bbc], /* CJK Ideograph Extension A */ + [0x3bbd, 0x3bbd], /* CJK Ideograph Extension A */ + [0x3bbe, 0x3bbe], /* CJK Ideograph Extension A */ + [0x3bbf, 0x3bbf], /* CJK Ideograph Extension A */ + [0x3bc0, 0x3bc0], /* CJK Ideograph Extension A */ + [0x3bc1, 0x3bc1], /* CJK Ideograph Extension A */ + [0x3bc2, 0x3bc2], /* CJK Ideograph Extension A */ + [0x3bc3, 0x3bc3], /* CJK Ideograph Extension A */ + [0x3bc4, 0x3bc4], /* CJK Ideograph Extension A */ + [0x3bc5, 0x3bc5], /* CJK Ideograph Extension A */ + [0x3bc6, 0x3bc6], /* CJK Ideograph Extension A */ + [0x3bc7, 0x3bc7], /* CJK Ideograph Extension A */ + [0x3bc8, 0x3bc8], /* CJK Ideograph Extension A */ + [0x3bc9, 0x3bc9], /* CJK Ideograph Extension A */ + [0x3bca, 0x3bca], /* CJK Ideograph Extension A */ + [0x3bcb, 0x3bcb], /* CJK Ideograph Extension A */ + [0x3bcc, 0x3bcc], /* CJK Ideograph Extension A */ + [0x3bcd, 0x3bcd], /* CJK Ideograph Extension A */ + [0x3bce, 0x3bce], /* CJK Ideograph Extension A */ + [0x3bcf, 0x3bcf], /* CJK Ideograph Extension A */ + [0x3bd0, 0x3bd0], /* CJK Ideograph Extension A */ + [0x3bd1, 0x3bd1], /* CJK Ideograph Extension A */ + [0x3bd2, 0x3bd2], /* CJK Ideograph Extension A */ + [0x3bd3, 0x3bd3], /* CJK Ideograph Extension A */ + [0x3bd4, 0x3bd4], /* CJK Ideograph Extension A */ + [0x3bd5, 0x3bd5], /* CJK Ideograph Extension A */ + [0x3bd6, 0x3bd6], /* CJK Ideograph Extension A */ + [0x3bd7, 0x3bd7], /* CJK Ideograph Extension A */ + [0x3bd8, 0x3bd8], /* CJK Ideograph Extension A */ + [0x3bd9, 0x3bd9], /* CJK Ideograph Extension A */ + [0x3bda, 0x3bda], /* CJK Ideograph Extension A */ + [0x3bdb, 0x3bdb], /* CJK Ideograph Extension A */ + [0x3bdc, 0x3bdc], /* CJK Ideograph Extension A */ + [0x3bdd, 0x3bdd], /* CJK Ideograph Extension A */ + [0x3bde, 0x3bde], /* CJK Ideograph Extension A */ + [0x3bdf, 0x3bdf], /* CJK Ideograph Extension A */ + [0x3be0, 0x3be0], /* CJK Ideograph Extension A */ + [0x3be1, 0x3be1], /* CJK Ideograph Extension A */ + [0x3be2, 0x3be2], /* CJK Ideograph Extension A */ + [0x3be3, 0x3be3], /* CJK Ideograph Extension A */ + [0x3be4, 0x3be4], /* CJK Ideograph Extension A */ + [0x3be5, 0x3be5], /* CJK Ideograph Extension A */ + [0x3be6, 0x3be6], /* CJK Ideograph Extension A */ + [0x3be7, 0x3be7], /* CJK Ideograph Extension A */ + [0x3be8, 0x3be8], /* CJK Ideograph Extension A */ + [0x3be9, 0x3be9], /* CJK Ideograph Extension A */ + [0x3bea, 0x3bea], /* CJK Ideograph Extension A */ + [0x3beb, 0x3beb], /* CJK Ideograph Extension A */ + [0x3bec, 0x3bec], /* CJK Ideograph Extension A */ + [0x3bed, 0x3bed], /* CJK Ideograph Extension A */ + [0x3bee, 0x3bee], /* CJK Ideograph Extension A */ + [0x3bef, 0x3bef], /* CJK Ideograph Extension A */ + [0x3bf0, 0x3bf0], /* CJK Ideograph Extension A */ + [0x3bf1, 0x3bf1], /* CJK Ideograph Extension A */ + [0x3bf2, 0x3bf2], /* CJK Ideograph Extension A */ + [0x3bf3, 0x3bf3], /* CJK Ideograph Extension A */ + [0x3bf4, 0x3bf4], /* CJK Ideograph Extension A */ + [0x3bf5, 0x3bf5], /* CJK Ideograph Extension A */ + [0x3bf6, 0x3bf6], /* CJK Ideograph Extension A */ + [0x3bf7, 0x3bf7], /* CJK Ideograph Extension A */ + [0x3bf8, 0x3bf8], /* CJK Ideograph Extension A */ + [0x3bf9, 0x3bf9], /* CJK Ideograph Extension A */ + [0x3bfa, 0x3bfa], /* CJK Ideograph Extension A */ + [0x3bfb, 0x3bfb], /* CJK Ideograph Extension A */ + [0x3bfc, 0x3bfc], /* CJK Ideograph Extension A */ + [0x3bfd, 0x3bfd], /* CJK Ideograph Extension A */ + [0x3bfe, 0x3bfe], /* CJK Ideograph Extension A */ + [0x3bff, 0x3bff], /* CJK Ideograph Extension A */ + [0x3c00, 0x3c00], /* CJK Ideograph Extension A */ + [0x3c01, 0x3c01], /* CJK Ideograph Extension A */ + [0x3c02, 0x3c02], /* CJK Ideograph Extension A */ + [0x3c03, 0x3c03], /* CJK Ideograph Extension A */ + [0x3c04, 0x3c04], /* CJK Ideograph Extension A */ + [0x3c05, 0x3c05], /* CJK Ideograph Extension A */ + [0x3c06, 0x3c06], /* CJK Ideograph Extension A */ + [0x3c07, 0x3c07], /* CJK Ideograph Extension A */ + [0x3c08, 0x3c08], /* CJK Ideograph Extension A */ + [0x3c09, 0x3c09], /* CJK Ideograph Extension A */ + [0x3c0a, 0x3c0a], /* CJK Ideograph Extension A */ + [0x3c0b, 0x3c0b], /* CJK Ideograph Extension A */ + [0x3c0c, 0x3c0c], /* CJK Ideograph Extension A */ + [0x3c0d, 0x3c0d], /* CJK Ideograph Extension A */ + [0x3c0e, 0x3c0e], /* CJK Ideograph Extension A */ + [0x3c0f, 0x3c0f], /* CJK Ideograph Extension A */ + [0x3c10, 0x3c10], /* CJK Ideograph Extension A */ + [0x3c11, 0x3c11], /* CJK Ideograph Extension A */ + [0x3c12, 0x3c12], /* CJK Ideograph Extension A */ + [0x3c13, 0x3c13], /* CJK Ideograph Extension A */ + [0x3c14, 0x3c14], /* CJK Ideograph Extension A */ + [0x3c15, 0x3c15], /* CJK Ideograph Extension A */ + [0x3c16, 0x3c16], /* CJK Ideograph Extension A */ + [0x3c17, 0x3c17], /* CJK Ideograph Extension A */ + [0x3c18, 0x3c18], /* CJK Ideograph Extension A */ + [0x3c19, 0x3c19], /* CJK Ideograph Extension A */ + [0x3c1a, 0x3c1a], /* CJK Ideograph Extension A */ + [0x3c1b, 0x3c1b], /* CJK Ideograph Extension A */ + [0x3c1c, 0x3c1c], /* CJK Ideograph Extension A */ + [0x3c1d, 0x3c1d], /* CJK Ideograph Extension A */ + [0x3c1e, 0x3c1e], /* CJK Ideograph Extension A */ + [0x3c1f, 0x3c1f], /* CJK Ideograph Extension A */ + [0x3c20, 0x3c20], /* CJK Ideograph Extension A */ + [0x3c21, 0x3c21], /* CJK Ideograph Extension A */ + [0x3c22, 0x3c22], /* CJK Ideograph Extension A */ + [0x3c23, 0x3c23], /* CJK Ideograph Extension A */ + [0x3c24, 0x3c24], /* CJK Ideograph Extension A */ + [0x3c25, 0x3c25], /* CJK Ideograph Extension A */ + [0x3c26, 0x3c26], /* CJK Ideograph Extension A */ + [0x3c27, 0x3c27], /* CJK Ideograph Extension A */ + [0x3c28, 0x3c28], /* CJK Ideograph Extension A */ + [0x3c29, 0x3c29], /* CJK Ideograph Extension A */ + [0x3c2a, 0x3c2a], /* CJK Ideograph Extension A */ + [0x3c2b, 0x3c2b], /* CJK Ideograph Extension A */ + [0x3c2c, 0x3c2c], /* CJK Ideograph Extension A */ + [0x3c2d, 0x3c2d], /* CJK Ideograph Extension A */ + [0x3c2e, 0x3c2e], /* CJK Ideograph Extension A */ + [0x3c2f, 0x3c2f], /* CJK Ideograph Extension A */ + [0x3c30, 0x3c30], /* CJK Ideograph Extension A */ + [0x3c31, 0x3c31], /* CJK Ideograph Extension A */ + [0x3c32, 0x3c32], /* CJK Ideograph Extension A */ + [0x3c33, 0x3c33], /* CJK Ideograph Extension A */ + [0x3c34, 0x3c34], /* CJK Ideograph Extension A */ + [0x3c35, 0x3c35], /* CJK Ideograph Extension A */ + [0x3c36, 0x3c36], /* CJK Ideograph Extension A */ + [0x3c37, 0x3c37], /* CJK Ideograph Extension A */ + [0x3c38, 0x3c38], /* CJK Ideograph Extension A */ + [0x3c39, 0x3c39], /* CJK Ideograph Extension A */ + [0x3c3a, 0x3c3a], /* CJK Ideograph Extension A */ + [0x3c3b, 0x3c3b], /* CJK Ideograph Extension A */ + [0x3c3c, 0x3c3c], /* CJK Ideograph Extension A */ + [0x3c3d, 0x3c3d], /* CJK Ideograph Extension A */ + [0x3c3e, 0x3c3e], /* CJK Ideograph Extension A */ + [0x3c3f, 0x3c3f], /* CJK Ideograph Extension A */ + [0x3c40, 0x3c40], /* CJK Ideograph Extension A */ + [0x3c41, 0x3c41], /* CJK Ideograph Extension A */ + [0x3c42, 0x3c42], /* CJK Ideograph Extension A */ + [0x3c43, 0x3c43], /* CJK Ideograph Extension A */ + [0x3c44, 0x3c44], /* CJK Ideograph Extension A */ + [0x3c45, 0x3c45], /* CJK Ideograph Extension A */ + [0x3c46, 0x3c46], /* CJK Ideograph Extension A */ + [0x3c47, 0x3c47], /* CJK Ideograph Extension A */ + [0x3c48, 0x3c48], /* CJK Ideograph Extension A */ + [0x3c49, 0x3c49], /* CJK Ideograph Extension A */ + [0x3c4a, 0x3c4a], /* CJK Ideograph Extension A */ + [0x3c4b, 0x3c4b], /* CJK Ideograph Extension A */ + [0x3c4c, 0x3c4c], /* CJK Ideograph Extension A */ + [0x3c4d, 0x3c4d], /* CJK Ideograph Extension A */ + [0x3c4e, 0x3c4e], /* CJK Ideograph Extension A */ + [0x3c4f, 0x3c4f], /* CJK Ideograph Extension A */ + [0x3c50, 0x3c50], /* CJK Ideograph Extension A */ + [0x3c51, 0x3c51], /* CJK Ideograph Extension A */ + [0x3c52, 0x3c52], /* CJK Ideograph Extension A */ + [0x3c53, 0x3c53], /* CJK Ideograph Extension A */ + [0x3c54, 0x3c54], /* CJK Ideograph Extension A */ + [0x3c55, 0x3c55], /* CJK Ideograph Extension A */ + [0x3c56, 0x3c56], /* CJK Ideograph Extension A */ + [0x3c57, 0x3c57], /* CJK Ideograph Extension A */ + [0x3c58, 0x3c58], /* CJK Ideograph Extension A */ + [0x3c59, 0x3c59], /* CJK Ideograph Extension A */ + [0x3c5a, 0x3c5a], /* CJK Ideograph Extension A */ + [0x3c5b, 0x3c5b], /* CJK Ideograph Extension A */ + [0x3c5c, 0x3c5c], /* CJK Ideograph Extension A */ + [0x3c5d, 0x3c5d], /* CJK Ideograph Extension A */ + [0x3c5e, 0x3c5e], /* CJK Ideograph Extension A */ + [0x3c5f, 0x3c5f], /* CJK Ideograph Extension A */ + [0x3c60, 0x3c60], /* CJK Ideograph Extension A */ + [0x3c61, 0x3c61], /* CJK Ideograph Extension A */ + [0x3c62, 0x3c62], /* CJK Ideograph Extension A */ + [0x3c63, 0x3c63], /* CJK Ideograph Extension A */ + [0x3c64, 0x3c64], /* CJK Ideograph Extension A */ + [0x3c65, 0x3c65], /* CJK Ideograph Extension A */ + [0x3c66, 0x3c66], /* CJK Ideograph Extension A */ + [0x3c67, 0x3c67], /* CJK Ideograph Extension A */ + [0x3c68, 0x3c68], /* CJK Ideograph Extension A */ + [0x3c69, 0x3c69], /* CJK Ideograph Extension A */ + [0x3c6a, 0x3c6a], /* CJK Ideograph Extension A */ + [0x3c6b, 0x3c6b], /* CJK Ideograph Extension A */ + [0x3c6c, 0x3c6c], /* CJK Ideograph Extension A */ + [0x3c6d, 0x3c6d], /* CJK Ideograph Extension A */ + [0x3c6e, 0x3c6e], /* CJK Ideograph Extension A */ + [0x3c6f, 0x3c6f], /* CJK Ideograph Extension A */ + [0x3c70, 0x3c70], /* CJK Ideograph Extension A */ + [0x3c71, 0x3c71], /* CJK Ideograph Extension A */ + [0x3c72, 0x3c72], /* CJK Ideograph Extension A */ + [0x3c73, 0x3c73], /* CJK Ideograph Extension A */ + [0x3c74, 0x3c74], /* CJK Ideograph Extension A */ + [0x3c75, 0x3c75], /* CJK Ideograph Extension A */ + [0x3c76, 0x3c76], /* CJK Ideograph Extension A */ + [0x3c77, 0x3c77], /* CJK Ideograph Extension A */ + [0x3c78, 0x3c78], /* CJK Ideograph Extension A */ + [0x3c79, 0x3c79], /* CJK Ideograph Extension A */ + [0x3c7a, 0x3c7a], /* CJK Ideograph Extension A */ + [0x3c7b, 0x3c7b], /* CJK Ideograph Extension A */ + [0x3c7c, 0x3c7c], /* CJK Ideograph Extension A */ + [0x3c7d, 0x3c7d], /* CJK Ideograph Extension A */ + [0x3c7e, 0x3c7e], /* CJK Ideograph Extension A */ + [0x3c7f, 0x3c7f], /* CJK Ideograph Extension A */ + [0x3c80, 0x3c80], /* CJK Ideograph Extension A */ + [0x3c81, 0x3c81], /* CJK Ideograph Extension A */ + [0x3c82, 0x3c82], /* CJK Ideograph Extension A */ + [0x3c83, 0x3c83], /* CJK Ideograph Extension A */ + [0x3c84, 0x3c84], /* CJK Ideograph Extension A */ + [0x3c85, 0x3c85], /* CJK Ideograph Extension A */ + [0x3c86, 0x3c86], /* CJK Ideograph Extension A */ + [0x3c87, 0x3c87], /* CJK Ideograph Extension A */ + [0x3c88, 0x3c88], /* CJK Ideograph Extension A */ + [0x3c89, 0x3c89], /* CJK Ideograph Extension A */ + [0x3c8a, 0x3c8a], /* CJK Ideograph Extension A */ + [0x3c8b, 0x3c8b], /* CJK Ideograph Extension A */ + [0x3c8c, 0x3c8c], /* CJK Ideograph Extension A */ + [0x3c8d, 0x3c8d], /* CJK Ideograph Extension A */ + [0x3c8e, 0x3c8e], /* CJK Ideograph Extension A */ + [0x3c8f, 0x3c8f], /* CJK Ideograph Extension A */ + [0x3c90, 0x3c90], /* CJK Ideograph Extension A */ + [0x3c91, 0x3c91], /* CJK Ideograph Extension A */ + [0x3c92, 0x3c92], /* CJK Ideograph Extension A */ + [0x3c93, 0x3c93], /* CJK Ideograph Extension A */ + [0x3c94, 0x3c94], /* CJK Ideograph Extension A */ + [0x3c95, 0x3c95], /* CJK Ideograph Extension A */ + [0x3c96, 0x3c96], /* CJK Ideograph Extension A */ + [0x3c97, 0x3c97], /* CJK Ideograph Extension A */ + [0x3c98, 0x3c98], /* CJK Ideograph Extension A */ + [0x3c99, 0x3c99], /* CJK Ideograph Extension A */ + [0x3c9a, 0x3c9a], /* CJK Ideograph Extension A */ + [0x3c9b, 0x3c9b], /* CJK Ideograph Extension A */ + [0x3c9c, 0x3c9c], /* CJK Ideograph Extension A */ + [0x3c9d, 0x3c9d], /* CJK Ideograph Extension A */ + [0x3c9e, 0x3c9e], /* CJK Ideograph Extension A */ + [0x3c9f, 0x3c9f], /* CJK Ideograph Extension A */ + [0x3ca0, 0x3ca0], /* CJK Ideograph Extension A */ + [0x3ca1, 0x3ca1], /* CJK Ideograph Extension A */ + [0x3ca2, 0x3ca2], /* CJK Ideograph Extension A */ + [0x3ca3, 0x3ca3], /* CJK Ideograph Extension A */ + [0x3ca4, 0x3ca4], /* CJK Ideograph Extension A */ + [0x3ca5, 0x3ca5], /* CJK Ideograph Extension A */ + [0x3ca6, 0x3ca6], /* CJK Ideograph Extension A */ + [0x3ca7, 0x3ca7], /* CJK Ideograph Extension A */ + [0x3ca8, 0x3ca8], /* CJK Ideograph Extension A */ + [0x3ca9, 0x3ca9], /* CJK Ideograph Extension A */ + [0x3caa, 0x3caa], /* CJK Ideograph Extension A */ + [0x3cab, 0x3cab], /* CJK Ideograph Extension A */ + [0x3cac, 0x3cac], /* CJK Ideograph Extension A */ + [0x3cad, 0x3cad], /* CJK Ideograph Extension A */ + [0x3cae, 0x3cae], /* CJK Ideograph Extension A */ + [0x3caf, 0x3caf], /* CJK Ideograph Extension A */ + [0x3cb0, 0x3cb0], /* CJK Ideograph Extension A */ + [0x3cb1, 0x3cb1], /* CJK Ideograph Extension A */ + [0x3cb2, 0x3cb2], /* CJK Ideograph Extension A */ + [0x3cb3, 0x3cb3], /* CJK Ideograph Extension A */ + [0x3cb4, 0x3cb4], /* CJK Ideograph Extension A */ + [0x3cb5, 0x3cb5], /* CJK Ideograph Extension A */ + [0x3cb6, 0x3cb6], /* CJK Ideograph Extension A */ + [0x3cb7, 0x3cb7], /* CJK Ideograph Extension A */ + [0x3cb8, 0x3cb8], /* CJK Ideograph Extension A */ + [0x3cb9, 0x3cb9], /* CJK Ideograph Extension A */ + [0x3cba, 0x3cba], /* CJK Ideograph Extension A */ + [0x3cbb, 0x3cbb], /* CJK Ideograph Extension A */ + [0x3cbc, 0x3cbc], /* CJK Ideograph Extension A */ + [0x3cbd, 0x3cbd], /* CJK Ideograph Extension A */ + [0x3cbe, 0x3cbe], /* CJK Ideograph Extension A */ + [0x3cbf, 0x3cbf], /* CJK Ideograph Extension A */ + [0x3cc0, 0x3cc0], /* CJK Ideograph Extension A */ + [0x3cc1, 0x3cc1], /* CJK Ideograph Extension A */ + [0x3cc2, 0x3cc2], /* CJK Ideograph Extension A */ + [0x3cc3, 0x3cc3], /* CJK Ideograph Extension A */ + [0x3cc4, 0x3cc4], /* CJK Ideograph Extension A */ + [0x3cc5, 0x3cc5], /* CJK Ideograph Extension A */ + [0x3cc6, 0x3cc6], /* CJK Ideograph Extension A */ + [0x3cc7, 0x3cc7], /* CJK Ideograph Extension A */ + [0x3cc8, 0x3cc8], /* CJK Ideograph Extension A */ + [0x3cc9, 0x3cc9], /* CJK Ideograph Extension A */ + [0x3cca, 0x3cca], /* CJK Ideograph Extension A */ + [0x3ccb, 0x3ccb], /* CJK Ideograph Extension A */ + [0x3ccc, 0x3ccc], /* CJK Ideograph Extension A */ + [0x3ccd, 0x3ccd], /* CJK Ideograph Extension A */ + [0x3cce, 0x3cce], /* CJK Ideograph Extension A */ + [0x3ccf, 0x3ccf], /* CJK Ideograph Extension A */ + [0x3cd0, 0x3cd0], /* CJK Ideograph Extension A */ + [0x3cd1, 0x3cd1], /* CJK Ideograph Extension A */ + [0x3cd2, 0x3cd2], /* CJK Ideograph Extension A */ + [0x3cd3, 0x3cd3], /* CJK Ideograph Extension A */ + [0x3cd4, 0x3cd4], /* CJK Ideograph Extension A */ + [0x3cd5, 0x3cd5], /* CJK Ideograph Extension A */ + [0x3cd6, 0x3cd6], /* CJK Ideograph Extension A */ + [0x3cd7, 0x3cd7], /* CJK Ideograph Extension A */ + [0x3cd8, 0x3cd8], /* CJK Ideograph Extension A */ + [0x3cd9, 0x3cd9], /* CJK Ideograph Extension A */ + [0x3cda, 0x3cda], /* CJK Ideograph Extension A */ + [0x3cdb, 0x3cdb], /* CJK Ideograph Extension A */ + [0x3cdc, 0x3cdc], /* CJK Ideograph Extension A */ + [0x3cdd, 0x3cdd], /* CJK Ideograph Extension A */ + [0x3cde, 0x3cde], /* CJK Ideograph Extension A */ + [0x3cdf, 0x3cdf], /* CJK Ideograph Extension A */ + [0x3ce0, 0x3ce0], /* CJK Ideograph Extension A */ + [0x3ce1, 0x3ce1], /* CJK Ideograph Extension A */ + [0x3ce2, 0x3ce2], /* CJK Ideograph Extension A */ + [0x3ce3, 0x3ce3], /* CJK Ideograph Extension A */ + [0x3ce4, 0x3ce4], /* CJK Ideograph Extension A */ + [0x3ce5, 0x3ce5], /* CJK Ideograph Extension A */ + [0x3ce6, 0x3ce6], /* CJK Ideograph Extension A */ + [0x3ce7, 0x3ce7], /* CJK Ideograph Extension A */ + [0x3ce8, 0x3ce8], /* CJK Ideograph Extension A */ + [0x3ce9, 0x3ce9], /* CJK Ideograph Extension A */ + [0x3cea, 0x3cea], /* CJK Ideograph Extension A */ + [0x3ceb, 0x3ceb], /* CJK Ideograph Extension A */ + [0x3cec, 0x3cec], /* CJK Ideograph Extension A */ + [0x3ced, 0x3ced], /* CJK Ideograph Extension A */ + [0x3cee, 0x3cee], /* CJK Ideograph Extension A */ + [0x3cef, 0x3cef], /* CJK Ideograph Extension A */ + [0x3cf0, 0x3cf0], /* CJK Ideograph Extension A */ + [0x3cf1, 0x3cf1], /* CJK Ideograph Extension A */ + [0x3cf2, 0x3cf2], /* CJK Ideograph Extension A */ + [0x3cf3, 0x3cf3], /* CJK Ideograph Extension A */ + [0x3cf4, 0x3cf4], /* CJK Ideograph Extension A */ + [0x3cf5, 0x3cf5], /* CJK Ideograph Extension A */ + [0x3cf6, 0x3cf6], /* CJK Ideograph Extension A */ + [0x3cf7, 0x3cf7], /* CJK Ideograph Extension A */ + [0x3cf8, 0x3cf8], /* CJK Ideograph Extension A */ + [0x3cf9, 0x3cf9], /* CJK Ideograph Extension A */ + [0x3cfa, 0x3cfa], /* CJK Ideograph Extension A */ + [0x3cfb, 0x3cfb], /* CJK Ideograph Extension A */ + [0x3cfc, 0x3cfc], /* CJK Ideograph Extension A */ + [0x3cfd, 0x3cfd], /* CJK Ideograph Extension A */ + [0x3cfe, 0x3cfe], /* CJK Ideograph Extension A */ + [0x3cff, 0x3cff], /* CJK Ideograph Extension A */ + [0x3d00, 0x3d00], /* CJK Ideograph Extension A */ + [0x3d01, 0x3d01], /* CJK Ideograph Extension A */ + [0x3d02, 0x3d02], /* CJK Ideograph Extension A */ + [0x3d03, 0x3d03], /* CJK Ideograph Extension A */ + [0x3d04, 0x3d04], /* CJK Ideograph Extension A */ + [0x3d05, 0x3d05], /* CJK Ideograph Extension A */ + [0x3d06, 0x3d06], /* CJK Ideograph Extension A */ + [0x3d07, 0x3d07], /* CJK Ideograph Extension A */ + [0x3d08, 0x3d08], /* CJK Ideograph Extension A */ + [0x3d09, 0x3d09], /* CJK Ideograph Extension A */ + [0x3d0a, 0x3d0a], /* CJK Ideograph Extension A */ + [0x3d0b, 0x3d0b], /* CJK Ideograph Extension A */ + [0x3d0c, 0x3d0c], /* CJK Ideograph Extension A */ + [0x3d0d, 0x3d0d], /* CJK Ideograph Extension A */ + [0x3d0e, 0x3d0e], /* CJK Ideograph Extension A */ + [0x3d0f, 0x3d0f], /* CJK Ideograph Extension A */ + [0x3d10, 0x3d10], /* CJK Ideograph Extension A */ + [0x3d11, 0x3d11], /* CJK Ideograph Extension A */ + [0x3d12, 0x3d12], /* CJK Ideograph Extension A */ + [0x3d13, 0x3d13], /* CJK Ideograph Extension A */ + [0x3d14, 0x3d14], /* CJK Ideograph Extension A */ + [0x3d15, 0x3d15], /* CJK Ideograph Extension A */ + [0x3d16, 0x3d16], /* CJK Ideograph Extension A */ + [0x3d17, 0x3d17], /* CJK Ideograph Extension A */ + [0x3d18, 0x3d18], /* CJK Ideograph Extension A */ + [0x3d19, 0x3d19], /* CJK Ideograph Extension A */ + [0x3d1a, 0x3d1a], /* CJK Ideograph Extension A */ + [0x3d1b, 0x3d1b], /* CJK Ideograph Extension A */ + [0x3d1c, 0x3d1c], /* CJK Ideograph Extension A */ + [0x3d1d, 0x3d1d], /* CJK Ideograph Extension A */ + [0x3d1e, 0x3d1e], /* CJK Ideograph Extension A */ + [0x3d1f, 0x3d1f], /* CJK Ideograph Extension A */ + [0x3d20, 0x3d20], /* CJK Ideograph Extension A */ + [0x3d21, 0x3d21], /* CJK Ideograph Extension A */ + [0x3d22, 0x3d22], /* CJK Ideograph Extension A */ + [0x3d23, 0x3d23], /* CJK Ideograph Extension A */ + [0x3d24, 0x3d24], /* CJK Ideograph Extension A */ + [0x3d25, 0x3d25], /* CJK Ideograph Extension A */ + [0x3d26, 0x3d26], /* CJK Ideograph Extension A */ + [0x3d27, 0x3d27], /* CJK Ideograph Extension A */ + [0x3d28, 0x3d28], /* CJK Ideograph Extension A */ + [0x3d29, 0x3d29], /* CJK Ideograph Extension A */ + [0x3d2a, 0x3d2a], /* CJK Ideograph Extension A */ + [0x3d2b, 0x3d2b], /* CJK Ideograph Extension A */ + [0x3d2c, 0x3d2c], /* CJK Ideograph Extension A */ + [0x3d2d, 0x3d2d], /* CJK Ideograph Extension A */ + [0x3d2e, 0x3d2e], /* CJK Ideograph Extension A */ + [0x3d2f, 0x3d2f], /* CJK Ideograph Extension A */ + [0x3d30, 0x3d30], /* CJK Ideograph Extension A */ + [0x3d31, 0x3d31], /* CJK Ideograph Extension A */ + [0x3d32, 0x3d32], /* CJK Ideograph Extension A */ + [0x3d33, 0x3d33], /* CJK Ideograph Extension A */ + [0x3d34, 0x3d34], /* CJK Ideograph Extension A */ + [0x3d35, 0x3d35], /* CJK Ideograph Extension A */ + [0x3d36, 0x3d36], /* CJK Ideograph Extension A */ + [0x3d37, 0x3d37], /* CJK Ideograph Extension A */ + [0x3d38, 0x3d38], /* CJK Ideograph Extension A */ + [0x3d39, 0x3d39], /* CJK Ideograph Extension A */ + [0x3d3a, 0x3d3a], /* CJK Ideograph Extension A */ + [0x3d3b, 0x3d3b], /* CJK Ideograph Extension A */ + [0x3d3c, 0x3d3c], /* CJK Ideograph Extension A */ + [0x3d3d, 0x3d3d], /* CJK Ideograph Extension A */ + [0x3d3e, 0x3d3e], /* CJK Ideograph Extension A */ + [0x3d3f, 0x3d3f], /* CJK Ideograph Extension A */ + [0x3d40, 0x3d40], /* CJK Ideograph Extension A */ + [0x3d41, 0x3d41], /* CJK Ideograph Extension A */ + [0x3d42, 0x3d42], /* CJK Ideograph Extension A */ + [0x3d43, 0x3d43], /* CJK Ideograph Extension A */ + [0x3d44, 0x3d44], /* CJK Ideograph Extension A */ + [0x3d45, 0x3d45], /* CJK Ideograph Extension A */ + [0x3d46, 0x3d46], /* CJK Ideograph Extension A */ + [0x3d47, 0x3d47], /* CJK Ideograph Extension A */ + [0x3d48, 0x3d48], /* CJK Ideograph Extension A */ + [0x3d49, 0x3d49], /* CJK Ideograph Extension A */ + [0x3d4a, 0x3d4a], /* CJK Ideograph Extension A */ + [0x3d4b, 0x3d4b], /* CJK Ideograph Extension A */ + [0x3d4c, 0x3d4c], /* CJK Ideograph Extension A */ + [0x3d4d, 0x3d4d], /* CJK Ideograph Extension A */ + [0x3d4e, 0x3d4e], /* CJK Ideograph Extension A */ + [0x3d4f, 0x3d4f], /* CJK Ideograph Extension A */ + [0x3d50, 0x3d50], /* CJK Ideograph Extension A */ + [0x3d51, 0x3d51], /* CJK Ideograph Extension A */ + [0x3d52, 0x3d52], /* CJK Ideograph Extension A */ + [0x3d53, 0x3d53], /* CJK Ideograph Extension A */ + [0x3d54, 0x3d54], /* CJK Ideograph Extension A */ + [0x3d55, 0x3d55], /* CJK Ideograph Extension A */ + [0x3d56, 0x3d56], /* CJK Ideograph Extension A */ + [0x3d57, 0x3d57], /* CJK Ideograph Extension A */ + [0x3d58, 0x3d58], /* CJK Ideograph Extension A */ + [0x3d59, 0x3d59], /* CJK Ideograph Extension A */ + [0x3d5a, 0x3d5a], /* CJK Ideograph Extension A */ + [0x3d5b, 0x3d5b], /* CJK Ideograph Extension A */ + [0x3d5c, 0x3d5c], /* CJK Ideograph Extension A */ + [0x3d5d, 0x3d5d], /* CJK Ideograph Extension A */ + [0x3d5e, 0x3d5e], /* CJK Ideograph Extension A */ + [0x3d5f, 0x3d5f], /* CJK Ideograph Extension A */ + [0x3d60, 0x3d60], /* CJK Ideograph Extension A */ + [0x3d61, 0x3d61], /* CJK Ideograph Extension A */ + [0x3d62, 0x3d62], /* CJK Ideograph Extension A */ + [0x3d63, 0x3d63], /* CJK Ideograph Extension A */ + [0x3d64, 0x3d64], /* CJK Ideograph Extension A */ + [0x3d65, 0x3d65], /* CJK Ideograph Extension A */ + [0x3d66, 0x3d66], /* CJK Ideograph Extension A */ + [0x3d67, 0x3d67], /* CJK Ideograph Extension A */ + [0x3d68, 0x3d68], /* CJK Ideograph Extension A */ + [0x3d69, 0x3d69], /* CJK Ideograph Extension A */ + [0x3d6a, 0x3d6a], /* CJK Ideograph Extension A */ + [0x3d6b, 0x3d6b], /* CJK Ideograph Extension A */ + [0x3d6c, 0x3d6c], /* CJK Ideograph Extension A */ + [0x3d6d, 0x3d6d], /* CJK Ideograph Extension A */ + [0x3d6e, 0x3d6e], /* CJK Ideograph Extension A */ + [0x3d6f, 0x3d6f], /* CJK Ideograph Extension A */ + [0x3d70, 0x3d70], /* CJK Ideograph Extension A */ + [0x3d71, 0x3d71], /* CJK Ideograph Extension A */ + [0x3d72, 0x3d72], /* CJK Ideograph Extension A */ + [0x3d73, 0x3d73], /* CJK Ideograph Extension A */ + [0x3d74, 0x3d74], /* CJK Ideograph Extension A */ + [0x3d75, 0x3d75], /* CJK Ideograph Extension A */ + [0x3d76, 0x3d76], /* CJK Ideograph Extension A */ + [0x3d77, 0x3d77], /* CJK Ideograph Extension A */ + [0x3d78, 0x3d78], /* CJK Ideograph Extension A */ + [0x3d79, 0x3d79], /* CJK Ideograph Extension A */ + [0x3d7a, 0x3d7a], /* CJK Ideograph Extension A */ + [0x3d7b, 0x3d7b], /* CJK Ideograph Extension A */ + [0x3d7c, 0x3d7c], /* CJK Ideograph Extension A */ + [0x3d7d, 0x3d7d], /* CJK Ideograph Extension A */ + [0x3d7e, 0x3d7e], /* CJK Ideograph Extension A */ + [0x3d7f, 0x3d7f], /* CJK Ideograph Extension A */ + [0x3d80, 0x3d80], /* CJK Ideograph Extension A */ + [0x3d81, 0x3d81], /* CJK Ideograph Extension A */ + [0x3d82, 0x3d82], /* CJK Ideograph Extension A */ + [0x3d83, 0x3d83], /* CJK Ideograph Extension A */ + [0x3d84, 0x3d84], /* CJK Ideograph Extension A */ + [0x3d85, 0x3d85], /* CJK Ideograph Extension A */ + [0x3d86, 0x3d86], /* CJK Ideograph Extension A */ + [0x3d87, 0x3d87], /* CJK Ideograph Extension A */ + [0x3d88, 0x3d88], /* CJK Ideograph Extension A */ + [0x3d89, 0x3d89], /* CJK Ideograph Extension A */ + [0x3d8a, 0x3d8a], /* CJK Ideograph Extension A */ + [0x3d8b, 0x3d8b], /* CJK Ideograph Extension A */ + [0x3d8c, 0x3d8c], /* CJK Ideograph Extension A */ + [0x3d8d, 0x3d8d], /* CJK Ideograph Extension A */ + [0x3d8e, 0x3d8e], /* CJK Ideograph Extension A */ + [0x3d8f, 0x3d8f], /* CJK Ideograph Extension A */ + [0x3d90, 0x3d90], /* CJK Ideograph Extension A */ + [0x3d91, 0x3d91], /* CJK Ideograph Extension A */ + [0x3d92, 0x3d92], /* CJK Ideograph Extension A */ + [0x3d93, 0x3d93], /* CJK Ideograph Extension A */ + [0x3d94, 0x3d94], /* CJK Ideograph Extension A */ + [0x3d95, 0x3d95], /* CJK Ideograph Extension A */ + [0x3d96, 0x3d96], /* CJK Ideograph Extension A */ + [0x3d97, 0x3d97], /* CJK Ideograph Extension A */ + [0x3d98, 0x3d98], /* CJK Ideograph Extension A */ + [0x3d99, 0x3d99], /* CJK Ideograph Extension A */ + [0x3d9a, 0x3d9a], /* CJK Ideograph Extension A */ + [0x3d9b, 0x3d9b], /* CJK Ideograph Extension A */ + [0x3d9c, 0x3d9c], /* CJK Ideograph Extension A */ + [0x3d9d, 0x3d9d], /* CJK Ideograph Extension A */ + [0x3d9e, 0x3d9e], /* CJK Ideograph Extension A */ + [0x3d9f, 0x3d9f], /* CJK Ideograph Extension A */ + [0x3da0, 0x3da0], /* CJK Ideograph Extension A */ + [0x3da1, 0x3da1], /* CJK Ideograph Extension A */ + [0x3da2, 0x3da2], /* CJK Ideograph Extension A */ + [0x3da3, 0x3da3], /* CJK Ideograph Extension A */ + [0x3da4, 0x3da4], /* CJK Ideograph Extension A */ + [0x3da5, 0x3da5], /* CJK Ideograph Extension A */ + [0x3da6, 0x3da6], /* CJK Ideograph Extension A */ + [0x3da7, 0x3da7], /* CJK Ideograph Extension A */ + [0x3da8, 0x3da8], /* CJK Ideograph Extension A */ + [0x3da9, 0x3da9], /* CJK Ideograph Extension A */ + [0x3daa, 0x3daa], /* CJK Ideograph Extension A */ + [0x3dab, 0x3dab], /* CJK Ideograph Extension A */ + [0x3dac, 0x3dac], /* CJK Ideograph Extension A */ + [0x3dad, 0x3dad], /* CJK Ideograph Extension A */ + [0x3dae, 0x3dae], /* CJK Ideograph Extension A */ + [0x3daf, 0x3daf], /* CJK Ideograph Extension A */ + [0x3db0, 0x3db0], /* CJK Ideograph Extension A */ + [0x3db1, 0x3db1], /* CJK Ideograph Extension A */ + [0x3db2, 0x3db2], /* CJK Ideograph Extension A */ + [0x3db3, 0x3db3], /* CJK Ideograph Extension A */ + [0x3db4, 0x3db4], /* CJK Ideograph Extension A */ + [0x3db5, 0x3db5], /* CJK Ideograph Extension A */ + [0x3db6, 0x3db6], /* CJK Ideograph Extension A */ + [0x3db7, 0x3db7], /* CJK Ideograph Extension A */ + [0x3db8, 0x3db8], /* CJK Ideograph Extension A */ + [0x3db9, 0x3db9], /* CJK Ideograph Extension A */ + [0x3dba, 0x3dba], /* CJK Ideograph Extension A */ + [0x3dbb, 0x3dbb], /* CJK Ideograph Extension A */ + [0x3dbc, 0x3dbc], /* CJK Ideograph Extension A */ + [0x3dbd, 0x3dbd], /* CJK Ideograph Extension A */ + [0x3dbe, 0x3dbe], /* CJK Ideograph Extension A */ + [0x3dbf, 0x3dbf], /* CJK Ideograph Extension A */ + [0x3dc0, 0x3dc0], /* CJK Ideograph Extension A */ + [0x3dc1, 0x3dc1], /* CJK Ideograph Extension A */ + [0x3dc2, 0x3dc2], /* CJK Ideograph Extension A */ + [0x3dc3, 0x3dc3], /* CJK Ideograph Extension A */ + [0x3dc4, 0x3dc4], /* CJK Ideograph Extension A */ + [0x3dc5, 0x3dc5], /* CJK Ideograph Extension A */ + [0x3dc6, 0x3dc6], /* CJK Ideograph Extension A */ + [0x3dc7, 0x3dc7], /* CJK Ideograph Extension A */ + [0x3dc8, 0x3dc8], /* CJK Ideograph Extension A */ + [0x3dc9, 0x3dc9], /* CJK Ideograph Extension A */ + [0x3dca, 0x3dca], /* CJK Ideograph Extension A */ + [0x3dcb, 0x3dcb], /* CJK Ideograph Extension A */ + [0x3dcc, 0x3dcc], /* CJK Ideograph Extension A */ + [0x3dcd, 0x3dcd], /* CJK Ideograph Extension A */ + [0x3dce, 0x3dce], /* CJK Ideograph Extension A */ + [0x3dcf, 0x3dcf], /* CJK Ideograph Extension A */ + [0x3dd0, 0x3dd0], /* CJK Ideograph Extension A */ + [0x3dd1, 0x3dd1], /* CJK Ideograph Extension A */ + [0x3dd2, 0x3dd2], /* CJK Ideograph Extension A */ + [0x3dd3, 0x3dd3], /* CJK Ideograph Extension A */ + [0x3dd4, 0x3dd4], /* CJK Ideograph Extension A */ + [0x3dd5, 0x3dd5], /* CJK Ideograph Extension A */ + [0x3dd6, 0x3dd6], /* CJK Ideograph Extension A */ + [0x3dd7, 0x3dd7], /* CJK Ideograph Extension A */ + [0x3dd8, 0x3dd8], /* CJK Ideograph Extension A */ + [0x3dd9, 0x3dd9], /* CJK Ideograph Extension A */ + [0x3dda, 0x3dda], /* CJK Ideograph Extension A */ + [0x3ddb, 0x3ddb], /* CJK Ideograph Extension A */ + [0x3ddc, 0x3ddc], /* CJK Ideograph Extension A */ + [0x3ddd, 0x3ddd], /* CJK Ideograph Extension A */ + [0x3dde, 0x3dde], /* CJK Ideograph Extension A */ + [0x3ddf, 0x3ddf], /* CJK Ideograph Extension A */ + [0x3de0, 0x3de0], /* CJK Ideograph Extension A */ + [0x3de1, 0x3de1], /* CJK Ideograph Extension A */ + [0x3de2, 0x3de2], /* CJK Ideograph Extension A */ + [0x3de3, 0x3de3], /* CJK Ideograph Extension A */ + [0x3de4, 0x3de4], /* CJK Ideograph Extension A */ + [0x3de5, 0x3de5], /* CJK Ideograph Extension A */ + [0x3de6, 0x3de6], /* CJK Ideograph Extension A */ + [0x3de7, 0x3de7], /* CJK Ideograph Extension A */ + [0x3de8, 0x3de8], /* CJK Ideograph Extension A */ + [0x3de9, 0x3de9], /* CJK Ideograph Extension A */ + [0x3dea, 0x3dea], /* CJK Ideograph Extension A */ + [0x3deb, 0x3deb], /* CJK Ideograph Extension A */ + [0x3dec, 0x3dec], /* CJK Ideograph Extension A */ + [0x3ded, 0x3ded], /* CJK Ideograph Extension A */ + [0x3dee, 0x3dee], /* CJK Ideograph Extension A */ + [0x3def, 0x3def], /* CJK Ideograph Extension A */ + [0x3df0, 0x3df0], /* CJK Ideograph Extension A */ + [0x3df1, 0x3df1], /* CJK Ideograph Extension A */ + [0x3df2, 0x3df2], /* CJK Ideograph Extension A */ + [0x3df3, 0x3df3], /* CJK Ideograph Extension A */ + [0x3df4, 0x3df4], /* CJK Ideograph Extension A */ + [0x3df5, 0x3df5], /* CJK Ideograph Extension A */ + [0x3df6, 0x3df6], /* CJK Ideograph Extension A */ + [0x3df7, 0x3df7], /* CJK Ideograph Extension A */ + [0x3df8, 0x3df8], /* CJK Ideograph Extension A */ + [0x3df9, 0x3df9], /* CJK Ideograph Extension A */ + [0x3dfa, 0x3dfa], /* CJK Ideograph Extension A */ + [0x3dfb, 0x3dfb], /* CJK Ideograph Extension A */ + [0x3dfc, 0x3dfc], /* CJK Ideograph Extension A */ + [0x3dfd, 0x3dfd], /* CJK Ideograph Extension A */ + [0x3dfe, 0x3dfe], /* CJK Ideograph Extension A */ + [0x3dff, 0x3dff], /* CJK Ideograph Extension A */ + [0x3e00, 0x3e00], /* CJK Ideograph Extension A */ + [0x3e01, 0x3e01], /* CJK Ideograph Extension A */ + [0x3e02, 0x3e02], /* CJK Ideograph Extension A */ + [0x3e03, 0x3e03], /* CJK Ideograph Extension A */ + [0x3e04, 0x3e04], /* CJK Ideograph Extension A */ + [0x3e05, 0x3e05], /* CJK Ideograph Extension A */ + [0x3e06, 0x3e06], /* CJK Ideograph Extension A */ + [0x3e07, 0x3e07], /* CJK Ideograph Extension A */ + [0x3e08, 0x3e08], /* CJK Ideograph Extension A */ + [0x3e09, 0x3e09], /* CJK Ideograph Extension A */ + [0x3e0a, 0x3e0a], /* CJK Ideograph Extension A */ + [0x3e0b, 0x3e0b], /* CJK Ideograph Extension A */ + [0x3e0c, 0x3e0c], /* CJK Ideograph Extension A */ + [0x3e0d, 0x3e0d], /* CJK Ideograph Extension A */ + [0x3e0e, 0x3e0e], /* CJK Ideograph Extension A */ + [0x3e0f, 0x3e0f], /* CJK Ideograph Extension A */ + [0x3e10, 0x3e10], /* CJK Ideograph Extension A */ + [0x3e11, 0x3e11], /* CJK Ideograph Extension A */ + [0x3e12, 0x3e12], /* CJK Ideograph Extension A */ + [0x3e13, 0x3e13], /* CJK Ideograph Extension A */ + [0x3e14, 0x3e14], /* CJK Ideograph Extension A */ + [0x3e15, 0x3e15], /* CJK Ideograph Extension A */ + [0x3e16, 0x3e16], /* CJK Ideograph Extension A */ + [0x3e17, 0x3e17], /* CJK Ideograph Extension A */ + [0x3e18, 0x3e18], /* CJK Ideograph Extension A */ + [0x3e19, 0x3e19], /* CJK Ideograph Extension A */ + [0x3e1a, 0x3e1a], /* CJK Ideograph Extension A */ + [0x3e1b, 0x3e1b], /* CJK Ideograph Extension A */ + [0x3e1c, 0x3e1c], /* CJK Ideograph Extension A */ + [0x3e1d, 0x3e1d], /* CJK Ideograph Extension A */ + [0x3e1e, 0x3e1e], /* CJK Ideograph Extension A */ + [0x3e1f, 0x3e1f], /* CJK Ideograph Extension A */ + [0x3e20, 0x3e20], /* CJK Ideograph Extension A */ + [0x3e21, 0x3e21], /* CJK Ideograph Extension A */ + [0x3e22, 0x3e22], /* CJK Ideograph Extension A */ + [0x3e23, 0x3e23], /* CJK Ideograph Extension A */ + [0x3e24, 0x3e24], /* CJK Ideograph Extension A */ + [0x3e25, 0x3e25], /* CJK Ideograph Extension A */ + [0x3e26, 0x3e26], /* CJK Ideograph Extension A */ + [0x3e27, 0x3e27], /* CJK Ideograph Extension A */ + [0x3e28, 0x3e28], /* CJK Ideograph Extension A */ + [0x3e29, 0x3e29], /* CJK Ideograph Extension A */ + [0x3e2a, 0x3e2a], /* CJK Ideograph Extension A */ + [0x3e2b, 0x3e2b], /* CJK Ideograph Extension A */ + [0x3e2c, 0x3e2c], /* CJK Ideograph Extension A */ + [0x3e2d, 0x3e2d], /* CJK Ideograph Extension A */ + [0x3e2e, 0x3e2e], /* CJK Ideograph Extension A */ + [0x3e2f, 0x3e2f], /* CJK Ideograph Extension A */ + [0x3e30, 0x3e30], /* CJK Ideograph Extension A */ + [0x3e31, 0x3e31], /* CJK Ideograph Extension A */ + [0x3e32, 0x3e32], /* CJK Ideograph Extension A */ + [0x3e33, 0x3e33], /* CJK Ideograph Extension A */ + [0x3e34, 0x3e34], /* CJK Ideograph Extension A */ + [0x3e35, 0x3e35], /* CJK Ideograph Extension A */ + [0x3e36, 0x3e36], /* CJK Ideograph Extension A */ + [0x3e37, 0x3e37], /* CJK Ideograph Extension A */ + [0x3e38, 0x3e38], /* CJK Ideograph Extension A */ + [0x3e39, 0x3e39], /* CJK Ideograph Extension A */ + [0x3e3a, 0x3e3a], /* CJK Ideograph Extension A */ + [0x3e3b, 0x3e3b], /* CJK Ideograph Extension A */ + [0x3e3c, 0x3e3c], /* CJK Ideograph Extension A */ + [0x3e3d, 0x3e3d], /* CJK Ideograph Extension A */ + [0x3e3e, 0x3e3e], /* CJK Ideograph Extension A */ + [0x3e3f, 0x3e3f], /* CJK Ideograph Extension A */ + [0x3e40, 0x3e40], /* CJK Ideograph Extension A */ + [0x3e41, 0x3e41], /* CJK Ideograph Extension A */ + [0x3e42, 0x3e42], /* CJK Ideograph Extension A */ + [0x3e43, 0x3e43], /* CJK Ideograph Extension A */ + [0x3e44, 0x3e44], /* CJK Ideograph Extension A */ + [0x3e45, 0x3e45], /* CJK Ideograph Extension A */ + [0x3e46, 0x3e46], /* CJK Ideograph Extension A */ + [0x3e47, 0x3e47], /* CJK Ideograph Extension A */ + [0x3e48, 0x3e48], /* CJK Ideograph Extension A */ + [0x3e49, 0x3e49], /* CJK Ideograph Extension A */ + [0x3e4a, 0x3e4a], /* CJK Ideograph Extension A */ + [0x3e4b, 0x3e4b], /* CJK Ideograph Extension A */ + [0x3e4c, 0x3e4c], /* CJK Ideograph Extension A */ + [0x3e4d, 0x3e4d], /* CJK Ideograph Extension A */ + [0x3e4e, 0x3e4e], /* CJK Ideograph Extension A */ + [0x3e4f, 0x3e4f], /* CJK Ideograph Extension A */ + [0x3e50, 0x3e50], /* CJK Ideograph Extension A */ + [0x3e51, 0x3e51], /* CJK Ideograph Extension A */ + [0x3e52, 0x3e52], /* CJK Ideograph Extension A */ + [0x3e53, 0x3e53], /* CJK Ideograph Extension A */ + [0x3e54, 0x3e54], /* CJK Ideograph Extension A */ + [0x3e55, 0x3e55], /* CJK Ideograph Extension A */ + [0x3e56, 0x3e56], /* CJK Ideograph Extension A */ + [0x3e57, 0x3e57], /* CJK Ideograph Extension A */ + [0x3e58, 0x3e58], /* CJK Ideograph Extension A */ + [0x3e59, 0x3e59], /* CJK Ideograph Extension A */ + [0x3e5a, 0x3e5a], /* CJK Ideograph Extension A */ + [0x3e5b, 0x3e5b], /* CJK Ideograph Extension A */ + [0x3e5c, 0x3e5c], /* CJK Ideograph Extension A */ + [0x3e5d, 0x3e5d], /* CJK Ideograph Extension A */ + [0x3e5e, 0x3e5e], /* CJK Ideograph Extension A */ + [0x3e5f, 0x3e5f], /* CJK Ideograph Extension A */ + [0x3e60, 0x3e60], /* CJK Ideograph Extension A */ + [0x3e61, 0x3e61], /* CJK Ideograph Extension A */ + [0x3e62, 0x3e62], /* CJK Ideograph Extension A */ + [0x3e63, 0x3e63], /* CJK Ideograph Extension A */ + [0x3e64, 0x3e64], /* CJK Ideograph Extension A */ + [0x3e65, 0x3e65], /* CJK Ideograph Extension A */ + [0x3e66, 0x3e66], /* CJK Ideograph Extension A */ + [0x3e67, 0x3e67], /* CJK Ideograph Extension A */ + [0x3e68, 0x3e68], /* CJK Ideograph Extension A */ + [0x3e69, 0x3e69], /* CJK Ideograph Extension A */ + [0x3e6a, 0x3e6a], /* CJK Ideograph Extension A */ + [0x3e6b, 0x3e6b], /* CJK Ideograph Extension A */ + [0x3e6c, 0x3e6c], /* CJK Ideograph Extension A */ + [0x3e6d, 0x3e6d], /* CJK Ideograph Extension A */ + [0x3e6e, 0x3e6e], /* CJK Ideograph Extension A */ + [0x3e6f, 0x3e6f], /* CJK Ideograph Extension A */ + [0x3e70, 0x3e70], /* CJK Ideograph Extension A */ + [0x3e71, 0x3e71], /* CJK Ideograph Extension A */ + [0x3e72, 0x3e72], /* CJK Ideograph Extension A */ + [0x3e73, 0x3e73], /* CJK Ideograph Extension A */ + [0x3e74, 0x3e74], /* CJK Ideograph Extension A */ + [0x3e75, 0x3e75], /* CJK Ideograph Extension A */ + [0x3e76, 0x3e76], /* CJK Ideograph Extension A */ + [0x3e77, 0x3e77], /* CJK Ideograph Extension A */ + [0x3e78, 0x3e78], /* CJK Ideograph Extension A */ + [0x3e79, 0x3e79], /* CJK Ideograph Extension A */ + [0x3e7a, 0x3e7a], /* CJK Ideograph Extension A */ + [0x3e7b, 0x3e7b], /* CJK Ideograph Extension A */ + [0x3e7c, 0x3e7c], /* CJK Ideograph Extension A */ + [0x3e7d, 0x3e7d], /* CJK Ideograph Extension A */ + [0x3e7e, 0x3e7e], /* CJK Ideograph Extension A */ + [0x3e7f, 0x3e7f], /* CJK Ideograph Extension A */ + [0x3e80, 0x3e80], /* CJK Ideograph Extension A */ + [0x3e81, 0x3e81], /* CJK Ideograph Extension A */ + [0x3e82, 0x3e82], /* CJK Ideograph Extension A */ + [0x3e83, 0x3e83], /* CJK Ideograph Extension A */ + [0x3e84, 0x3e84], /* CJK Ideograph Extension A */ + [0x3e85, 0x3e85], /* CJK Ideograph Extension A */ + [0x3e86, 0x3e86], /* CJK Ideograph Extension A */ + [0x3e87, 0x3e87], /* CJK Ideograph Extension A */ + [0x3e88, 0x3e88], /* CJK Ideograph Extension A */ + [0x3e89, 0x3e89], /* CJK Ideograph Extension A */ + [0x3e8a, 0x3e8a], /* CJK Ideograph Extension A */ + [0x3e8b, 0x3e8b], /* CJK Ideograph Extension A */ + [0x3e8c, 0x3e8c], /* CJK Ideograph Extension A */ + [0x3e8d, 0x3e8d], /* CJK Ideograph Extension A */ + [0x3e8e, 0x3e8e], /* CJK Ideograph Extension A */ + [0x3e8f, 0x3e8f], /* CJK Ideograph Extension A */ + [0x3e90, 0x3e90], /* CJK Ideograph Extension A */ + [0x3e91, 0x3e91], /* CJK Ideograph Extension A */ + [0x3e92, 0x3e92], /* CJK Ideograph Extension A */ + [0x3e93, 0x3e93], /* CJK Ideograph Extension A */ + [0x3e94, 0x3e94], /* CJK Ideograph Extension A */ + [0x3e95, 0x3e95], /* CJK Ideograph Extension A */ + [0x3e96, 0x3e96], /* CJK Ideograph Extension A */ + [0x3e97, 0x3e97], /* CJK Ideograph Extension A */ + [0x3e98, 0x3e98], /* CJK Ideograph Extension A */ + [0x3e99, 0x3e99], /* CJK Ideograph Extension A */ + [0x3e9a, 0x3e9a], /* CJK Ideograph Extension A */ + [0x3e9b, 0x3e9b], /* CJK Ideograph Extension A */ + [0x3e9c, 0x3e9c], /* CJK Ideograph Extension A */ + [0x3e9d, 0x3e9d], /* CJK Ideograph Extension A */ + [0x3e9e, 0x3e9e], /* CJK Ideograph Extension A */ + [0x3e9f, 0x3e9f], /* CJK Ideograph Extension A */ + [0x3ea0, 0x3ea0], /* CJK Ideograph Extension A */ + [0x3ea1, 0x3ea1], /* CJK Ideograph Extension A */ + [0x3ea2, 0x3ea2], /* CJK Ideograph Extension A */ + [0x3ea3, 0x3ea3], /* CJK Ideograph Extension A */ + [0x3ea4, 0x3ea4], /* CJK Ideograph Extension A */ + [0x3ea5, 0x3ea5], /* CJK Ideograph Extension A */ + [0x3ea6, 0x3ea6], /* CJK Ideograph Extension A */ + [0x3ea7, 0x3ea7], /* CJK Ideograph Extension A */ + [0x3ea8, 0x3ea8], /* CJK Ideograph Extension A */ + [0x3ea9, 0x3ea9], /* CJK Ideograph Extension A */ + [0x3eaa, 0x3eaa], /* CJK Ideograph Extension A */ + [0x3eab, 0x3eab], /* CJK Ideograph Extension A */ + [0x3eac, 0x3eac], /* CJK Ideograph Extension A */ + [0x3ead, 0x3ead], /* CJK Ideograph Extension A */ + [0x3eae, 0x3eae], /* CJK Ideograph Extension A */ + [0x3eaf, 0x3eaf], /* CJK Ideograph Extension A */ + [0x3eb0, 0x3eb0], /* CJK Ideograph Extension A */ + [0x3eb1, 0x3eb1], /* CJK Ideograph Extension A */ + [0x3eb2, 0x3eb2], /* CJK Ideograph Extension A */ + [0x3eb3, 0x3eb3], /* CJK Ideograph Extension A */ + [0x3eb4, 0x3eb4], /* CJK Ideograph Extension A */ + [0x3eb5, 0x3eb5], /* CJK Ideograph Extension A */ + [0x3eb6, 0x3eb6], /* CJK Ideograph Extension A */ + [0x3eb7, 0x3eb7], /* CJK Ideograph Extension A */ + [0x3eb8, 0x3eb8], /* CJK Ideograph Extension A */ + [0x3eb9, 0x3eb9], /* CJK Ideograph Extension A */ + [0x3eba, 0x3eba], /* CJK Ideograph Extension A */ + [0x3ebb, 0x3ebb], /* CJK Ideograph Extension A */ + [0x3ebc, 0x3ebc], /* CJK Ideograph Extension A */ + [0x3ebd, 0x3ebd], /* CJK Ideograph Extension A */ + [0x3ebe, 0x3ebe], /* CJK Ideograph Extension A */ + [0x3ebf, 0x3ebf], /* CJK Ideograph Extension A */ + [0x3ec0, 0x3ec0], /* CJK Ideograph Extension A */ + [0x3ec1, 0x3ec1], /* CJK Ideograph Extension A */ + [0x3ec2, 0x3ec2], /* CJK Ideograph Extension A */ + [0x3ec3, 0x3ec3], /* CJK Ideograph Extension A */ + [0x3ec4, 0x3ec4], /* CJK Ideograph Extension A */ + [0x3ec5, 0x3ec5], /* CJK Ideograph Extension A */ + [0x3ec6, 0x3ec6], /* CJK Ideograph Extension A */ + [0x3ec7, 0x3ec7], /* CJK Ideograph Extension A */ + [0x3ec8, 0x3ec8], /* CJK Ideograph Extension A */ + [0x3ec9, 0x3ec9], /* CJK Ideograph Extension A */ + [0x3eca, 0x3eca], /* CJK Ideograph Extension A */ + [0x3ecb, 0x3ecb], /* CJK Ideograph Extension A */ + [0x3ecc, 0x3ecc], /* CJK Ideograph Extension A */ + [0x3ecd, 0x3ecd], /* CJK Ideograph Extension A */ + [0x3ece, 0x3ece], /* CJK Ideograph Extension A */ + [0x3ecf, 0x3ecf], /* CJK Ideograph Extension A */ + [0x3ed0, 0x3ed0], /* CJK Ideograph Extension A */ + [0x3ed1, 0x3ed1], /* CJK Ideograph Extension A */ + [0x3ed2, 0x3ed2], /* CJK Ideograph Extension A */ + [0x3ed3, 0x3ed3], /* CJK Ideograph Extension A */ + [0x3ed4, 0x3ed4], /* CJK Ideograph Extension A */ + [0x3ed5, 0x3ed5], /* CJK Ideograph Extension A */ + [0x3ed6, 0x3ed6], /* CJK Ideograph Extension A */ + [0x3ed7, 0x3ed7], /* CJK Ideograph Extension A */ + [0x3ed8, 0x3ed8], /* CJK Ideograph Extension A */ + [0x3ed9, 0x3ed9], /* CJK Ideograph Extension A */ + [0x3eda, 0x3eda], /* CJK Ideograph Extension A */ + [0x3edb, 0x3edb], /* CJK Ideograph Extension A */ + [0x3edc, 0x3edc], /* CJK Ideograph Extension A */ + [0x3edd, 0x3edd], /* CJK Ideograph Extension A */ + [0x3ede, 0x3ede], /* CJK Ideograph Extension A */ + [0x3edf, 0x3edf], /* CJK Ideograph Extension A */ + [0x3ee0, 0x3ee0], /* CJK Ideograph Extension A */ + [0x3ee1, 0x3ee1], /* CJK Ideograph Extension A */ + [0x3ee2, 0x3ee2], /* CJK Ideograph Extension A */ + [0x3ee3, 0x3ee3], /* CJK Ideograph Extension A */ + [0x3ee4, 0x3ee4], /* CJK Ideograph Extension A */ + [0x3ee5, 0x3ee5], /* CJK Ideograph Extension A */ + [0x3ee6, 0x3ee6], /* CJK Ideograph Extension A */ + [0x3ee7, 0x3ee7], /* CJK Ideograph Extension A */ + [0x3ee8, 0x3ee8], /* CJK Ideograph Extension A */ + [0x3ee9, 0x3ee9], /* CJK Ideograph Extension A */ + [0x3eea, 0x3eea], /* CJK Ideograph Extension A */ + [0x3eeb, 0x3eeb], /* CJK Ideograph Extension A */ + [0x3eec, 0x3eec], /* CJK Ideograph Extension A */ + [0x3eed, 0x3eed], /* CJK Ideograph Extension A */ + [0x3eee, 0x3eee], /* CJK Ideograph Extension A */ + [0x3eef, 0x3eef], /* CJK Ideograph Extension A */ + [0x3ef0, 0x3ef0], /* CJK Ideograph Extension A */ + [0x3ef1, 0x3ef1], /* CJK Ideograph Extension A */ + [0x3ef2, 0x3ef2], /* CJK Ideograph Extension A */ + [0x3ef3, 0x3ef3], /* CJK Ideograph Extension A */ + [0x3ef4, 0x3ef4], /* CJK Ideograph Extension A */ + [0x3ef5, 0x3ef5], /* CJK Ideograph Extension A */ + [0x3ef6, 0x3ef6], /* CJK Ideograph Extension A */ + [0x3ef7, 0x3ef7], /* CJK Ideograph Extension A */ + [0x3ef8, 0x3ef8], /* CJK Ideograph Extension A */ + [0x3ef9, 0x3ef9], /* CJK Ideograph Extension A */ + [0x3efa, 0x3efa], /* CJK Ideograph Extension A */ + [0x3efb, 0x3efb], /* CJK Ideograph Extension A */ + [0x3efc, 0x3efc], /* CJK Ideograph Extension A */ + [0x3efd, 0x3efd], /* CJK Ideograph Extension A */ + [0x3efe, 0x3efe], /* CJK Ideograph Extension A */ + [0x3eff, 0x3eff], /* CJK Ideograph Extension A */ + [0x3f00, 0x3f00], /* CJK Ideograph Extension A */ + [0x3f01, 0x3f01], /* CJK Ideograph Extension A */ + [0x3f02, 0x3f02], /* CJK Ideograph Extension A */ + [0x3f03, 0x3f03], /* CJK Ideograph Extension A */ + [0x3f04, 0x3f04], /* CJK Ideograph Extension A */ + [0x3f05, 0x3f05], /* CJK Ideograph Extension A */ + [0x3f06, 0x3f06], /* CJK Ideograph Extension A */ + [0x3f07, 0x3f07], /* CJK Ideograph Extension A */ + [0x3f08, 0x3f08], /* CJK Ideograph Extension A */ + [0x3f09, 0x3f09], /* CJK Ideograph Extension A */ + [0x3f0a, 0x3f0a], /* CJK Ideograph Extension A */ + [0x3f0b, 0x3f0b], /* CJK Ideograph Extension A */ + [0x3f0c, 0x3f0c], /* CJK Ideograph Extension A */ + [0x3f0d, 0x3f0d], /* CJK Ideograph Extension A */ + [0x3f0e, 0x3f0e], /* CJK Ideograph Extension A */ + [0x3f0f, 0x3f0f], /* CJK Ideograph Extension A */ + [0x3f10, 0x3f10], /* CJK Ideograph Extension A */ + [0x3f11, 0x3f11], /* CJK Ideograph Extension A */ + [0x3f12, 0x3f12], /* CJK Ideograph Extension A */ + [0x3f13, 0x3f13], /* CJK Ideograph Extension A */ + [0x3f14, 0x3f14], /* CJK Ideograph Extension A */ + [0x3f15, 0x3f15], /* CJK Ideograph Extension A */ + [0x3f16, 0x3f16], /* CJK Ideograph Extension A */ + [0x3f17, 0x3f17], /* CJK Ideograph Extension A */ + [0x3f18, 0x3f18], /* CJK Ideograph Extension A */ + [0x3f19, 0x3f19], /* CJK Ideograph Extension A */ + [0x3f1a, 0x3f1a], /* CJK Ideograph Extension A */ + [0x3f1b, 0x3f1b], /* CJK Ideograph Extension A */ + [0x3f1c, 0x3f1c], /* CJK Ideograph Extension A */ + [0x3f1d, 0x3f1d], /* CJK Ideograph Extension A */ + [0x3f1e, 0x3f1e], /* CJK Ideograph Extension A */ + [0x3f1f, 0x3f1f], /* CJK Ideograph Extension A */ + [0x3f20, 0x3f20], /* CJK Ideograph Extension A */ + [0x3f21, 0x3f21], /* CJK Ideograph Extension A */ + [0x3f22, 0x3f22], /* CJK Ideograph Extension A */ + [0x3f23, 0x3f23], /* CJK Ideograph Extension A */ + [0x3f24, 0x3f24], /* CJK Ideograph Extension A */ + [0x3f25, 0x3f25], /* CJK Ideograph Extension A */ + [0x3f26, 0x3f26], /* CJK Ideograph Extension A */ + [0x3f27, 0x3f27], /* CJK Ideograph Extension A */ + [0x3f28, 0x3f28], /* CJK Ideograph Extension A */ + [0x3f29, 0x3f29], /* CJK Ideograph Extension A */ + [0x3f2a, 0x3f2a], /* CJK Ideograph Extension A */ + [0x3f2b, 0x3f2b], /* CJK Ideograph Extension A */ + [0x3f2c, 0x3f2c], /* CJK Ideograph Extension A */ + [0x3f2d, 0x3f2d], /* CJK Ideograph Extension A */ + [0x3f2e, 0x3f2e], /* CJK Ideograph Extension A */ + [0x3f2f, 0x3f2f], /* CJK Ideograph Extension A */ + [0x3f30, 0x3f30], /* CJK Ideograph Extension A */ + [0x3f31, 0x3f31], /* CJK Ideograph Extension A */ + [0x3f32, 0x3f32], /* CJK Ideograph Extension A */ + [0x3f33, 0x3f33], /* CJK Ideograph Extension A */ + [0x3f34, 0x3f34], /* CJK Ideograph Extension A */ + [0x3f35, 0x3f35], /* CJK Ideograph Extension A */ + [0x3f36, 0x3f36], /* CJK Ideograph Extension A */ + [0x3f37, 0x3f37], /* CJK Ideograph Extension A */ + [0x3f38, 0x3f38], /* CJK Ideograph Extension A */ + [0x3f39, 0x3f39], /* CJK Ideograph Extension A */ + [0x3f3a, 0x3f3a], /* CJK Ideograph Extension A */ + [0x3f3b, 0x3f3b], /* CJK Ideograph Extension A */ + [0x3f3c, 0x3f3c], /* CJK Ideograph Extension A */ + [0x3f3d, 0x3f3d], /* CJK Ideograph Extension A */ + [0x3f3e, 0x3f3e], /* CJK Ideograph Extension A */ + [0x3f3f, 0x3f3f], /* CJK Ideograph Extension A */ + [0x3f40, 0x3f40], /* CJK Ideograph Extension A */ + [0x3f41, 0x3f41], /* CJK Ideograph Extension A */ + [0x3f42, 0x3f42], /* CJK Ideograph Extension A */ + [0x3f43, 0x3f43], /* CJK Ideograph Extension A */ + [0x3f44, 0x3f44], /* CJK Ideograph Extension A */ + [0x3f45, 0x3f45], /* CJK Ideograph Extension A */ + [0x3f46, 0x3f46], /* CJK Ideograph Extension A */ + [0x3f47, 0x3f47], /* CJK Ideograph Extension A */ + [0x3f48, 0x3f48], /* CJK Ideograph Extension A */ + [0x3f49, 0x3f49], /* CJK Ideograph Extension A */ + [0x3f4a, 0x3f4a], /* CJK Ideograph Extension A */ + [0x3f4b, 0x3f4b], /* CJK Ideograph Extension A */ + [0x3f4c, 0x3f4c], /* CJK Ideograph Extension A */ + [0x3f4d, 0x3f4d], /* CJK Ideograph Extension A */ + [0x3f4e, 0x3f4e], /* CJK Ideograph Extension A */ + [0x3f4f, 0x3f4f], /* CJK Ideograph Extension A */ + [0x3f50, 0x3f50], /* CJK Ideograph Extension A */ + [0x3f51, 0x3f51], /* CJK Ideograph Extension A */ + [0x3f52, 0x3f52], /* CJK Ideograph Extension A */ + [0x3f53, 0x3f53], /* CJK Ideograph Extension A */ + [0x3f54, 0x3f54], /* CJK Ideograph Extension A */ + [0x3f55, 0x3f55], /* CJK Ideograph Extension A */ + [0x3f56, 0x3f56], /* CJK Ideograph Extension A */ + [0x3f57, 0x3f57], /* CJK Ideograph Extension A */ + [0x3f58, 0x3f58], /* CJK Ideograph Extension A */ + [0x3f59, 0x3f59], /* CJK Ideograph Extension A */ + [0x3f5a, 0x3f5a], /* CJK Ideograph Extension A */ + [0x3f5b, 0x3f5b], /* CJK Ideograph Extension A */ + [0x3f5c, 0x3f5c], /* CJK Ideograph Extension A */ + [0x3f5d, 0x3f5d], /* CJK Ideograph Extension A */ + [0x3f5e, 0x3f5e], /* CJK Ideograph Extension A */ + [0x3f5f, 0x3f5f], /* CJK Ideograph Extension A */ + [0x3f60, 0x3f60], /* CJK Ideograph Extension A */ + [0x3f61, 0x3f61], /* CJK Ideograph Extension A */ + [0x3f62, 0x3f62], /* CJK Ideograph Extension A */ + [0x3f63, 0x3f63], /* CJK Ideograph Extension A */ + [0x3f64, 0x3f64], /* CJK Ideograph Extension A */ + [0x3f65, 0x3f65], /* CJK Ideograph Extension A */ + [0x3f66, 0x3f66], /* CJK Ideograph Extension A */ + [0x3f67, 0x3f67], /* CJK Ideograph Extension A */ + [0x3f68, 0x3f68], /* CJK Ideograph Extension A */ + [0x3f69, 0x3f69], /* CJK Ideograph Extension A */ + [0x3f6a, 0x3f6a], /* CJK Ideograph Extension A */ + [0x3f6b, 0x3f6b], /* CJK Ideograph Extension A */ + [0x3f6c, 0x3f6c], /* CJK Ideograph Extension A */ + [0x3f6d, 0x3f6d], /* CJK Ideograph Extension A */ + [0x3f6e, 0x3f6e], /* CJK Ideograph Extension A */ + [0x3f6f, 0x3f6f], /* CJK Ideograph Extension A */ + [0x3f70, 0x3f70], /* CJK Ideograph Extension A */ + [0x3f71, 0x3f71], /* CJK Ideograph Extension A */ + [0x3f72, 0x3f72], /* CJK Ideograph Extension A */ + [0x3f73, 0x3f73], /* CJK Ideograph Extension A */ + [0x3f74, 0x3f74], /* CJK Ideograph Extension A */ + [0x3f75, 0x3f75], /* CJK Ideograph Extension A */ + [0x3f76, 0x3f76], /* CJK Ideograph Extension A */ + [0x3f77, 0x3f77], /* CJK Ideograph Extension A */ + [0x3f78, 0x3f78], /* CJK Ideograph Extension A */ + [0x3f79, 0x3f79], /* CJK Ideograph Extension A */ + [0x3f7a, 0x3f7a], /* CJK Ideograph Extension A */ + [0x3f7b, 0x3f7b], /* CJK Ideograph Extension A */ + [0x3f7c, 0x3f7c], /* CJK Ideograph Extension A */ + [0x3f7d, 0x3f7d], /* CJK Ideograph Extension A */ + [0x3f7e, 0x3f7e], /* CJK Ideograph Extension A */ + [0x3f7f, 0x3f7f], /* CJK Ideograph Extension A */ + [0x3f80, 0x3f80], /* CJK Ideograph Extension A */ + [0x3f81, 0x3f81], /* CJK Ideograph Extension A */ + [0x3f82, 0x3f82], /* CJK Ideograph Extension A */ + [0x3f83, 0x3f83], /* CJK Ideograph Extension A */ + [0x3f84, 0x3f84], /* CJK Ideograph Extension A */ + [0x3f85, 0x3f85], /* CJK Ideograph Extension A */ + [0x3f86, 0x3f86], /* CJK Ideograph Extension A */ + [0x3f87, 0x3f87], /* CJK Ideograph Extension A */ + [0x3f88, 0x3f88], /* CJK Ideograph Extension A */ + [0x3f89, 0x3f89], /* CJK Ideograph Extension A */ + [0x3f8a, 0x3f8a], /* CJK Ideograph Extension A */ + [0x3f8b, 0x3f8b], /* CJK Ideograph Extension A */ + [0x3f8c, 0x3f8c], /* CJK Ideograph Extension A */ + [0x3f8d, 0x3f8d], /* CJK Ideograph Extension A */ + [0x3f8e, 0x3f8e], /* CJK Ideograph Extension A */ + [0x3f8f, 0x3f8f], /* CJK Ideograph Extension A */ + [0x3f90, 0x3f90], /* CJK Ideograph Extension A */ + [0x3f91, 0x3f91], /* CJK Ideograph Extension A */ + [0x3f92, 0x3f92], /* CJK Ideograph Extension A */ + [0x3f93, 0x3f93], /* CJK Ideograph Extension A */ + [0x3f94, 0x3f94], /* CJK Ideograph Extension A */ + [0x3f95, 0x3f95], /* CJK Ideograph Extension A */ + [0x3f96, 0x3f96], /* CJK Ideograph Extension A */ + [0x3f97, 0x3f97], /* CJK Ideograph Extension A */ + [0x3f98, 0x3f98], /* CJK Ideograph Extension A */ + [0x3f99, 0x3f99], /* CJK Ideograph Extension A */ + [0x3f9a, 0x3f9a], /* CJK Ideograph Extension A */ + [0x3f9b, 0x3f9b], /* CJK Ideograph Extension A */ + [0x3f9c, 0x3f9c], /* CJK Ideograph Extension A */ + [0x3f9d, 0x3f9d], /* CJK Ideograph Extension A */ + [0x3f9e, 0x3f9e], /* CJK Ideograph Extension A */ + [0x3f9f, 0x3f9f], /* CJK Ideograph Extension A */ + [0x3fa0, 0x3fa0], /* CJK Ideograph Extension A */ + [0x3fa1, 0x3fa1], /* CJK Ideograph Extension A */ + [0x3fa2, 0x3fa2], /* CJK Ideograph Extension A */ + [0x3fa3, 0x3fa3], /* CJK Ideograph Extension A */ + [0x3fa4, 0x3fa4], /* CJK Ideograph Extension A */ + [0x3fa5, 0x3fa5], /* CJK Ideograph Extension A */ + [0x3fa6, 0x3fa6], /* CJK Ideograph Extension A */ + [0x3fa7, 0x3fa7], /* CJK Ideograph Extension A */ + [0x3fa8, 0x3fa8], /* CJK Ideograph Extension A */ + [0x3fa9, 0x3fa9], /* CJK Ideograph Extension A */ + [0x3faa, 0x3faa], /* CJK Ideograph Extension A */ + [0x3fab, 0x3fab], /* CJK Ideograph Extension A */ + [0x3fac, 0x3fac], /* CJK Ideograph Extension A */ + [0x3fad, 0x3fad], /* CJK Ideograph Extension A */ + [0x3fae, 0x3fae], /* CJK Ideograph Extension A */ + [0x3faf, 0x3faf], /* CJK Ideograph Extension A */ + [0x3fb0, 0x3fb0], /* CJK Ideograph Extension A */ + [0x3fb1, 0x3fb1], /* CJK Ideograph Extension A */ + [0x3fb2, 0x3fb2], /* CJK Ideograph Extension A */ + [0x3fb3, 0x3fb3], /* CJK Ideograph Extension A */ + [0x3fb4, 0x3fb4], /* CJK Ideograph Extension A */ + [0x3fb5, 0x3fb5], /* CJK Ideograph Extension A */ + [0x3fb6, 0x3fb6], /* CJK Ideograph Extension A */ + [0x3fb7, 0x3fb7], /* CJK Ideograph Extension A */ + [0x3fb8, 0x3fb8], /* CJK Ideograph Extension A */ + [0x3fb9, 0x3fb9], /* CJK Ideograph Extension A */ + [0x3fba, 0x3fba], /* CJK Ideograph Extension A */ + [0x3fbb, 0x3fbb], /* CJK Ideograph Extension A */ + [0x3fbc, 0x3fbc], /* CJK Ideograph Extension A */ + [0x3fbd, 0x3fbd], /* CJK Ideograph Extension A */ + [0x3fbe, 0x3fbe], /* CJK Ideograph Extension A */ + [0x3fbf, 0x3fbf], /* CJK Ideograph Extension A */ + [0x3fc0, 0x3fc0], /* CJK Ideograph Extension A */ + [0x3fc1, 0x3fc1], /* CJK Ideograph Extension A */ + [0x3fc2, 0x3fc2], /* CJK Ideograph Extension A */ + [0x3fc3, 0x3fc3], /* CJK Ideograph Extension A */ + [0x3fc4, 0x3fc4], /* CJK Ideograph Extension A */ + [0x3fc5, 0x3fc5], /* CJK Ideograph Extension A */ + [0x3fc6, 0x3fc6], /* CJK Ideograph Extension A */ + [0x3fc7, 0x3fc7], /* CJK Ideograph Extension A */ + [0x3fc8, 0x3fc8], /* CJK Ideograph Extension A */ + [0x3fc9, 0x3fc9], /* CJK Ideograph Extension A */ + [0x3fca, 0x3fca], /* CJK Ideograph Extension A */ + [0x3fcb, 0x3fcb], /* CJK Ideograph Extension A */ + [0x3fcc, 0x3fcc], /* CJK Ideograph Extension A */ + [0x3fcd, 0x3fcd], /* CJK Ideograph Extension A */ + [0x3fce, 0x3fce], /* CJK Ideograph Extension A */ + [0x3fcf, 0x3fcf], /* CJK Ideograph Extension A */ + [0x3fd0, 0x3fd0], /* CJK Ideograph Extension A */ + [0x3fd1, 0x3fd1], /* CJK Ideograph Extension A */ + [0x3fd2, 0x3fd2], /* CJK Ideograph Extension A */ + [0x3fd3, 0x3fd3], /* CJK Ideograph Extension A */ + [0x3fd4, 0x3fd4], /* CJK Ideograph Extension A */ + [0x3fd5, 0x3fd5], /* CJK Ideograph Extension A */ + [0x3fd6, 0x3fd6], /* CJK Ideograph Extension A */ + [0x3fd7, 0x3fd7], /* CJK Ideograph Extension A */ + [0x3fd8, 0x3fd8], /* CJK Ideograph Extension A */ + [0x3fd9, 0x3fd9], /* CJK Ideograph Extension A */ + [0x3fda, 0x3fda], /* CJK Ideograph Extension A */ + [0x3fdb, 0x3fdb], /* CJK Ideograph Extension A */ + [0x3fdc, 0x3fdc], /* CJK Ideograph Extension A */ + [0x3fdd, 0x3fdd], /* CJK Ideograph Extension A */ + [0x3fde, 0x3fde], /* CJK Ideograph Extension A */ + [0x3fdf, 0x3fdf], /* CJK Ideograph Extension A */ + [0x3fe0, 0x3fe0], /* CJK Ideograph Extension A */ + [0x3fe1, 0x3fe1], /* CJK Ideograph Extension A */ + [0x3fe2, 0x3fe2], /* CJK Ideograph Extension A */ + [0x3fe3, 0x3fe3], /* CJK Ideograph Extension A */ + [0x3fe4, 0x3fe4], /* CJK Ideograph Extension A */ + [0x3fe5, 0x3fe5], /* CJK Ideograph Extension A */ + [0x3fe6, 0x3fe6], /* CJK Ideograph Extension A */ + [0x3fe7, 0x3fe7], /* CJK Ideograph Extension A */ + [0x3fe8, 0x3fe8], /* CJK Ideograph Extension A */ + [0x3fe9, 0x3fe9], /* CJK Ideograph Extension A */ + [0x3fea, 0x3fea], /* CJK Ideograph Extension A */ + [0x3feb, 0x3feb], /* CJK Ideograph Extension A */ + [0x3fec, 0x3fec], /* CJK Ideograph Extension A */ + [0x3fed, 0x3fed], /* CJK Ideograph Extension A */ + [0x3fee, 0x3fee], /* CJK Ideograph Extension A */ + [0x3fef, 0x3fef], /* CJK Ideograph Extension A */ + [0x3ff0, 0x3ff0], /* CJK Ideograph Extension A */ + [0x3ff1, 0x3ff1], /* CJK Ideograph Extension A */ + [0x3ff2, 0x3ff2], /* CJK Ideograph Extension A */ + [0x3ff3, 0x3ff3], /* CJK Ideograph Extension A */ + [0x3ff4, 0x3ff4], /* CJK Ideograph Extension A */ + [0x3ff5, 0x3ff5], /* CJK Ideograph Extension A */ + [0x3ff6, 0x3ff6], /* CJK Ideograph Extension A */ + [0x3ff7, 0x3ff7], /* CJK Ideograph Extension A */ + [0x3ff8, 0x3ff8], /* CJK Ideograph Extension A */ + [0x3ff9, 0x3ff9], /* CJK Ideograph Extension A */ + [0x3ffa, 0x3ffa], /* CJK Ideograph Extension A */ + [0x3ffb, 0x3ffb], /* CJK Ideograph Extension A */ + [0x3ffc, 0x3ffc], /* CJK Ideograph Extension A */ + [0x3ffd, 0x3ffd], /* CJK Ideograph Extension A */ + [0x3ffe, 0x3ffe], /* CJK Ideograph Extension A */ + [0x3fff, 0x3fff], /* CJK Ideograph Extension A */ + [0x4000, 0x4000], /* CJK Ideograph Extension A */ + [0x4001, 0x4001], /* CJK Ideograph Extension A */ + [0x4002, 0x4002], /* CJK Ideograph Extension A */ + [0x4003, 0x4003], /* CJK Ideograph Extension A */ + [0x4004, 0x4004], /* CJK Ideograph Extension A */ + [0x4005, 0x4005], /* CJK Ideograph Extension A */ + [0x4006, 0x4006], /* CJK Ideograph Extension A */ + [0x4007, 0x4007], /* CJK Ideograph Extension A */ + [0x4008, 0x4008], /* CJK Ideograph Extension A */ + [0x4009, 0x4009], /* CJK Ideograph Extension A */ + [0x400a, 0x400a], /* CJK Ideograph Extension A */ + [0x400b, 0x400b], /* CJK Ideograph Extension A */ + [0x400c, 0x400c], /* CJK Ideograph Extension A */ + [0x400d, 0x400d], /* CJK Ideograph Extension A */ + [0x400e, 0x400e], /* CJK Ideograph Extension A */ + [0x400f, 0x400f], /* CJK Ideograph Extension A */ + [0x4010, 0x4010], /* CJK Ideograph Extension A */ + [0x4011, 0x4011], /* CJK Ideograph Extension A */ + [0x4012, 0x4012], /* CJK Ideograph Extension A */ + [0x4013, 0x4013], /* CJK Ideograph Extension A */ + [0x4014, 0x4014], /* CJK Ideograph Extension A */ + [0x4015, 0x4015], /* CJK Ideograph Extension A */ + [0x4016, 0x4016], /* CJK Ideograph Extension A */ + [0x4017, 0x4017], /* CJK Ideograph Extension A */ + [0x4018, 0x4018], /* CJK Ideograph Extension A */ + [0x4019, 0x4019], /* CJK Ideograph Extension A */ + [0x401a, 0x401a], /* CJK Ideograph Extension A */ + [0x401b, 0x401b], /* CJK Ideograph Extension A */ + [0x401c, 0x401c], /* CJK Ideograph Extension A */ + [0x401d, 0x401d], /* CJK Ideograph Extension A */ + [0x401e, 0x401e], /* CJK Ideograph Extension A */ + [0x401f, 0x401f], /* CJK Ideograph Extension A */ + [0x4020, 0x4020], /* CJK Ideograph Extension A */ + [0x4021, 0x4021], /* CJK Ideograph Extension A */ + [0x4022, 0x4022], /* CJK Ideograph Extension A */ + [0x4023, 0x4023], /* CJK Ideograph Extension A */ + [0x4024, 0x4024], /* CJK Ideograph Extension A */ + [0x4025, 0x4025], /* CJK Ideograph Extension A */ + [0x4026, 0x4026], /* CJK Ideograph Extension A */ + [0x4027, 0x4027], /* CJK Ideograph Extension A */ + [0x4028, 0x4028], /* CJK Ideograph Extension A */ + [0x4029, 0x4029], /* CJK Ideograph Extension A */ + [0x402a, 0x402a], /* CJK Ideograph Extension A */ + [0x402b, 0x402b], /* CJK Ideograph Extension A */ + [0x402c, 0x402c], /* CJK Ideograph Extension A */ + [0x402d, 0x402d], /* CJK Ideograph Extension A */ + [0x402e, 0x402e], /* CJK Ideograph Extension A */ + [0x402f, 0x402f], /* CJK Ideograph Extension A */ + [0x4030, 0x4030], /* CJK Ideograph Extension A */ + [0x4031, 0x4031], /* CJK Ideograph Extension A */ + [0x4032, 0x4032], /* CJK Ideograph Extension A */ + [0x4033, 0x4033], /* CJK Ideograph Extension A */ + [0x4034, 0x4034], /* CJK Ideograph Extension A */ + [0x4035, 0x4035], /* CJK Ideograph Extension A */ + [0x4036, 0x4036], /* CJK Ideograph Extension A */ + [0x4037, 0x4037], /* CJK Ideograph Extension A */ + [0x4038, 0x4038], /* CJK Ideograph Extension A */ + [0x4039, 0x4039], /* CJK Ideograph Extension A */ + [0x403a, 0x403a], /* CJK Ideograph Extension A */ + [0x403b, 0x403b], /* CJK Ideograph Extension A */ + [0x403c, 0x403c], /* CJK Ideograph Extension A */ + [0x403d, 0x403d], /* CJK Ideograph Extension A */ + [0x403e, 0x403e], /* CJK Ideograph Extension A */ + [0x403f, 0x403f], /* CJK Ideograph Extension A */ + [0x4040, 0x4040], /* CJK Ideograph Extension A */ + [0x4041, 0x4041], /* CJK Ideograph Extension A */ + [0x4042, 0x4042], /* CJK Ideograph Extension A */ + [0x4043, 0x4043], /* CJK Ideograph Extension A */ + [0x4044, 0x4044], /* CJK Ideograph Extension A */ + [0x4045, 0x4045], /* CJK Ideograph Extension A */ + [0x4046, 0x4046], /* CJK Ideograph Extension A */ + [0x4047, 0x4047], /* CJK Ideograph Extension A */ + [0x4048, 0x4048], /* CJK Ideograph Extension A */ + [0x4049, 0x4049], /* CJK Ideograph Extension A */ + [0x404a, 0x404a], /* CJK Ideograph Extension A */ + [0x404b, 0x404b], /* CJK Ideograph Extension A */ + [0x404c, 0x404c], /* CJK Ideograph Extension A */ + [0x404d, 0x404d], /* CJK Ideograph Extension A */ + [0x404e, 0x404e], /* CJK Ideograph Extension A */ + [0x404f, 0x404f], /* CJK Ideograph Extension A */ + [0x4050, 0x4050], /* CJK Ideograph Extension A */ + [0x4051, 0x4051], /* CJK Ideograph Extension A */ + [0x4052, 0x4052], /* CJK Ideograph Extension A */ + [0x4053, 0x4053], /* CJK Ideograph Extension A */ + [0x4054, 0x4054], /* CJK Ideograph Extension A */ + [0x4055, 0x4055], /* CJK Ideograph Extension A */ + [0x4056, 0x4056], /* CJK Ideograph Extension A */ + [0x4057, 0x4057], /* CJK Ideograph Extension A */ + [0x4058, 0x4058], /* CJK Ideograph Extension A */ + [0x4059, 0x4059], /* CJK Ideograph Extension A */ + [0x405a, 0x405a], /* CJK Ideograph Extension A */ + [0x405b, 0x405b], /* CJK Ideograph Extension A */ + [0x405c, 0x405c], /* CJK Ideograph Extension A */ + [0x405d, 0x405d], /* CJK Ideograph Extension A */ + [0x405e, 0x405e], /* CJK Ideograph Extension A */ + [0x405f, 0x405f], /* CJK Ideograph Extension A */ + [0x4060, 0x4060], /* CJK Ideograph Extension A */ + [0x4061, 0x4061], /* CJK Ideograph Extension A */ + [0x4062, 0x4062], /* CJK Ideograph Extension A */ + [0x4063, 0x4063], /* CJK Ideograph Extension A */ + [0x4064, 0x4064], /* CJK Ideograph Extension A */ + [0x4065, 0x4065], /* CJK Ideograph Extension A */ + [0x4066, 0x4066], /* CJK Ideograph Extension A */ + [0x4067, 0x4067], /* CJK Ideograph Extension A */ + [0x4068, 0x4068], /* CJK Ideograph Extension A */ + [0x4069, 0x4069], /* CJK Ideograph Extension A */ + [0x406a, 0x406a], /* CJK Ideograph Extension A */ + [0x406b, 0x406b], /* CJK Ideograph Extension A */ + [0x406c, 0x406c], /* CJK Ideograph Extension A */ + [0x406d, 0x406d], /* CJK Ideograph Extension A */ + [0x406e, 0x406e], /* CJK Ideograph Extension A */ + [0x406f, 0x406f], /* CJK Ideograph Extension A */ + [0x4070, 0x4070], /* CJK Ideograph Extension A */ + [0x4071, 0x4071], /* CJK Ideograph Extension A */ + [0x4072, 0x4072], /* CJK Ideograph Extension A */ + [0x4073, 0x4073], /* CJK Ideograph Extension A */ + [0x4074, 0x4074], /* CJK Ideograph Extension A */ + [0x4075, 0x4075], /* CJK Ideograph Extension A */ + [0x4076, 0x4076], /* CJK Ideograph Extension A */ + [0x4077, 0x4077], /* CJK Ideograph Extension A */ + [0x4078, 0x4078], /* CJK Ideograph Extension A */ + [0x4079, 0x4079], /* CJK Ideograph Extension A */ + [0x407a, 0x407a], /* CJK Ideograph Extension A */ + [0x407b, 0x407b], /* CJK Ideograph Extension A */ + [0x407c, 0x407c], /* CJK Ideograph Extension A */ + [0x407d, 0x407d], /* CJK Ideograph Extension A */ + [0x407e, 0x407e], /* CJK Ideograph Extension A */ + [0x407f, 0x407f], /* CJK Ideograph Extension A */ + [0x4080, 0x4080], /* CJK Ideograph Extension A */ + [0x4081, 0x4081], /* CJK Ideograph Extension A */ + [0x4082, 0x4082], /* CJK Ideograph Extension A */ + [0x4083, 0x4083], /* CJK Ideograph Extension A */ + [0x4084, 0x4084], /* CJK Ideograph Extension A */ + [0x4085, 0x4085], /* CJK Ideograph Extension A */ + [0x4086, 0x4086], /* CJK Ideograph Extension A */ + [0x4087, 0x4087], /* CJK Ideograph Extension A */ + [0x4088, 0x4088], /* CJK Ideograph Extension A */ + [0x4089, 0x4089], /* CJK Ideograph Extension A */ + [0x408a, 0x408a], /* CJK Ideograph Extension A */ + [0x408b, 0x408b], /* CJK Ideograph Extension A */ + [0x408c, 0x408c], /* CJK Ideograph Extension A */ + [0x408d, 0x408d], /* CJK Ideograph Extension A */ + [0x408e, 0x408e], /* CJK Ideograph Extension A */ + [0x408f, 0x408f], /* CJK Ideograph Extension A */ + [0x4090, 0x4090], /* CJK Ideograph Extension A */ + [0x4091, 0x4091], /* CJK Ideograph Extension A */ + [0x4092, 0x4092], /* CJK Ideograph Extension A */ + [0x4093, 0x4093], /* CJK Ideograph Extension A */ + [0x4094, 0x4094], /* CJK Ideograph Extension A */ + [0x4095, 0x4095], /* CJK Ideograph Extension A */ + [0x4096, 0x4096], /* CJK Ideograph Extension A */ + [0x4097, 0x4097], /* CJK Ideograph Extension A */ + [0x4098, 0x4098], /* CJK Ideograph Extension A */ + [0x4099, 0x4099], /* CJK Ideograph Extension A */ + [0x409a, 0x409a], /* CJK Ideograph Extension A */ + [0x409b, 0x409b], /* CJK Ideograph Extension A */ + [0x409c, 0x409c], /* CJK Ideograph Extension A */ + [0x409d, 0x409d], /* CJK Ideograph Extension A */ + [0x409e, 0x409e], /* CJK Ideograph Extension A */ + [0x409f, 0x409f], /* CJK Ideograph Extension A */ + [0x40a0, 0x40a0], /* CJK Ideograph Extension A */ + [0x40a1, 0x40a1], /* CJK Ideograph Extension A */ + [0x40a2, 0x40a2], /* CJK Ideograph Extension A */ + [0x40a3, 0x40a3], /* CJK Ideograph Extension A */ + [0x40a4, 0x40a4], /* CJK Ideograph Extension A */ + [0x40a5, 0x40a5], /* CJK Ideograph Extension A */ + [0x40a6, 0x40a6], /* CJK Ideograph Extension A */ + [0x40a7, 0x40a7], /* CJK Ideograph Extension A */ + [0x40a8, 0x40a8], /* CJK Ideograph Extension A */ + [0x40a9, 0x40a9], /* CJK Ideograph Extension A */ + [0x40aa, 0x40aa], /* CJK Ideograph Extension A */ + [0x40ab, 0x40ab], /* CJK Ideograph Extension A */ + [0x40ac, 0x40ac], /* CJK Ideograph Extension A */ + [0x40ad, 0x40ad], /* CJK Ideograph Extension A */ + [0x40ae, 0x40ae], /* CJK Ideograph Extension A */ + [0x40af, 0x40af], /* CJK Ideograph Extension A */ + [0x40b0, 0x40b0], /* CJK Ideograph Extension A */ + [0x40b1, 0x40b1], /* CJK Ideograph Extension A */ + [0x40b2, 0x40b2], /* CJK Ideograph Extension A */ + [0x40b3, 0x40b3], /* CJK Ideograph Extension A */ + [0x40b4, 0x40b4], /* CJK Ideograph Extension A */ + [0x40b5, 0x40b5], /* CJK Ideograph Extension A */ + [0x40b6, 0x40b6], /* CJK Ideograph Extension A */ + [0x40b7, 0x40b7], /* CJK Ideograph Extension A */ + [0x40b8, 0x40b8], /* CJK Ideograph Extension A */ + [0x40b9, 0x40b9], /* CJK Ideograph Extension A */ + [0x40ba, 0x40ba], /* CJK Ideograph Extension A */ + [0x40bb, 0x40bb], /* CJK Ideograph Extension A */ + [0x40bc, 0x40bc], /* CJK Ideograph Extension A */ + [0x40bd, 0x40bd], /* CJK Ideograph Extension A */ + [0x40be, 0x40be], /* CJK Ideograph Extension A */ + [0x40bf, 0x40bf], /* CJK Ideograph Extension A */ + [0x40c0, 0x40c0], /* CJK Ideograph Extension A */ + [0x40c1, 0x40c1], /* CJK Ideograph Extension A */ + [0x40c2, 0x40c2], /* CJK Ideograph Extension A */ + [0x40c3, 0x40c3], /* CJK Ideograph Extension A */ + [0x40c4, 0x40c4], /* CJK Ideograph Extension A */ + [0x40c5, 0x40c5], /* CJK Ideograph Extension A */ + [0x40c6, 0x40c6], /* CJK Ideograph Extension A */ + [0x40c7, 0x40c7], /* CJK Ideograph Extension A */ + [0x40c8, 0x40c8], /* CJK Ideograph Extension A */ + [0x40c9, 0x40c9], /* CJK Ideograph Extension A */ + [0x40ca, 0x40ca], /* CJK Ideograph Extension A */ + [0x40cb, 0x40cb], /* CJK Ideograph Extension A */ + [0x40cc, 0x40cc], /* CJK Ideograph Extension A */ + [0x40cd, 0x40cd], /* CJK Ideograph Extension A */ + [0x40ce, 0x40ce], /* CJK Ideograph Extension A */ + [0x40cf, 0x40cf], /* CJK Ideograph Extension A */ + [0x40d0, 0x40d0], /* CJK Ideograph Extension A */ + [0x40d1, 0x40d1], /* CJK Ideograph Extension A */ + [0x40d2, 0x40d2], /* CJK Ideograph Extension A */ + [0x40d3, 0x40d3], /* CJK Ideograph Extension A */ + [0x40d4, 0x40d4], /* CJK Ideograph Extension A */ + [0x40d5, 0x40d5], /* CJK Ideograph Extension A */ + [0x40d6, 0x40d6], /* CJK Ideograph Extension A */ + [0x40d7, 0x40d7], /* CJK Ideograph Extension A */ + [0x40d8, 0x40d8], /* CJK Ideograph Extension A */ + [0x40d9, 0x40d9], /* CJK Ideograph Extension A */ + [0x40da, 0x40da], /* CJK Ideograph Extension A */ + [0x40db, 0x40db], /* CJK Ideograph Extension A */ + [0x40dc, 0x40dc], /* CJK Ideograph Extension A */ + [0x40dd, 0x40dd], /* CJK Ideograph Extension A */ + [0x40de, 0x40de], /* CJK Ideograph Extension A */ + [0x40df, 0x40df], /* CJK Ideograph Extension A */ + [0x40e0, 0x40e0], /* CJK Ideograph Extension A */ + [0x40e1, 0x40e1], /* CJK Ideograph Extension A */ + [0x40e2, 0x40e2], /* CJK Ideograph Extension A */ + [0x40e3, 0x40e3], /* CJK Ideograph Extension A */ + [0x40e4, 0x40e4], /* CJK Ideograph Extension A */ + [0x40e5, 0x40e5], /* CJK Ideograph Extension A */ + [0x40e6, 0x40e6], /* CJK Ideograph Extension A */ + [0x40e7, 0x40e7], /* CJK Ideograph Extension A */ + [0x40e8, 0x40e8], /* CJK Ideograph Extension A */ + [0x40e9, 0x40e9], /* CJK Ideograph Extension A */ + [0x40ea, 0x40ea], /* CJK Ideograph Extension A */ + [0x40eb, 0x40eb], /* CJK Ideograph Extension A */ + [0x40ec, 0x40ec], /* CJK Ideograph Extension A */ + [0x40ed, 0x40ed], /* CJK Ideograph Extension A */ + [0x40ee, 0x40ee], /* CJK Ideograph Extension A */ + [0x40ef, 0x40ef], /* CJK Ideograph Extension A */ + [0x40f0, 0x40f0], /* CJK Ideograph Extension A */ + [0x40f1, 0x40f1], /* CJK Ideograph Extension A */ + [0x40f2, 0x40f2], /* CJK Ideograph Extension A */ + [0x40f3, 0x40f3], /* CJK Ideograph Extension A */ + [0x40f4, 0x40f4], /* CJK Ideograph Extension A */ + [0x40f5, 0x40f5], /* CJK Ideograph Extension A */ + [0x40f6, 0x40f6], /* CJK Ideograph Extension A */ + [0x40f7, 0x40f7], /* CJK Ideograph Extension A */ + [0x40f8, 0x40f8], /* CJK Ideograph Extension A */ + [0x40f9, 0x40f9], /* CJK Ideograph Extension A */ + [0x40fa, 0x40fa], /* CJK Ideograph Extension A */ + [0x40fb, 0x40fb], /* CJK Ideograph Extension A */ + [0x40fc, 0x40fc], /* CJK Ideograph Extension A */ + [0x40fd, 0x40fd], /* CJK Ideograph Extension A */ + [0x40fe, 0x40fe], /* CJK Ideograph Extension A */ + [0x40ff, 0x40ff], /* CJK Ideograph Extension A */ + [0x4100, 0x4100], /* CJK Ideograph Extension A */ + [0x4101, 0x4101], /* CJK Ideograph Extension A */ + [0x4102, 0x4102], /* CJK Ideograph Extension A */ + [0x4103, 0x4103], /* CJK Ideograph Extension A */ + [0x4104, 0x4104], /* CJK Ideograph Extension A */ + [0x4105, 0x4105], /* CJK Ideograph Extension A */ + [0x4106, 0x4106], /* CJK Ideograph Extension A */ + [0x4107, 0x4107], /* CJK Ideograph Extension A */ + [0x4108, 0x4108], /* CJK Ideograph Extension A */ + [0x4109, 0x4109], /* CJK Ideograph Extension A */ + [0x410a, 0x410a], /* CJK Ideograph Extension A */ + [0x410b, 0x410b], /* CJK Ideograph Extension A */ + [0x410c, 0x410c], /* CJK Ideograph Extension A */ + [0x410d, 0x410d], /* CJK Ideograph Extension A */ + [0x410e, 0x410e], /* CJK Ideograph Extension A */ + [0x410f, 0x410f], /* CJK Ideograph Extension A */ + [0x4110, 0x4110], /* CJK Ideograph Extension A */ + [0x4111, 0x4111], /* CJK Ideograph Extension A */ + [0x4112, 0x4112], /* CJK Ideograph Extension A */ + [0x4113, 0x4113], /* CJK Ideograph Extension A */ + [0x4114, 0x4114], /* CJK Ideograph Extension A */ + [0x4115, 0x4115], /* CJK Ideograph Extension A */ + [0x4116, 0x4116], /* CJK Ideograph Extension A */ + [0x4117, 0x4117], /* CJK Ideograph Extension A */ + [0x4118, 0x4118], /* CJK Ideograph Extension A */ + [0x4119, 0x4119], /* CJK Ideograph Extension A */ + [0x411a, 0x411a], /* CJK Ideograph Extension A */ + [0x411b, 0x411b], /* CJK Ideograph Extension A */ + [0x411c, 0x411c], /* CJK Ideograph Extension A */ + [0x411d, 0x411d], /* CJK Ideograph Extension A */ + [0x411e, 0x411e], /* CJK Ideograph Extension A */ + [0x411f, 0x411f], /* CJK Ideograph Extension A */ + [0x4120, 0x4120], /* CJK Ideograph Extension A */ + [0x4121, 0x4121], /* CJK Ideograph Extension A */ + [0x4122, 0x4122], /* CJK Ideograph Extension A */ + [0x4123, 0x4123], /* CJK Ideograph Extension A */ + [0x4124, 0x4124], /* CJK Ideograph Extension A */ + [0x4125, 0x4125], /* CJK Ideograph Extension A */ + [0x4126, 0x4126], /* CJK Ideograph Extension A */ + [0x4127, 0x4127], /* CJK Ideograph Extension A */ + [0x4128, 0x4128], /* CJK Ideograph Extension A */ + [0x4129, 0x4129], /* CJK Ideograph Extension A */ + [0x412a, 0x412a], /* CJK Ideograph Extension A */ + [0x412b, 0x412b], /* CJK Ideograph Extension A */ + [0x412c, 0x412c], /* CJK Ideograph Extension A */ + [0x412d, 0x412d], /* CJK Ideograph Extension A */ + [0x412e, 0x412e], /* CJK Ideograph Extension A */ + [0x412f, 0x412f], /* CJK Ideograph Extension A */ + [0x4130, 0x4130], /* CJK Ideograph Extension A */ + [0x4131, 0x4131], /* CJK Ideograph Extension A */ + [0x4132, 0x4132], /* CJK Ideograph Extension A */ + [0x4133, 0x4133], /* CJK Ideograph Extension A */ + [0x4134, 0x4134], /* CJK Ideograph Extension A */ + [0x4135, 0x4135], /* CJK Ideograph Extension A */ + [0x4136, 0x4136], /* CJK Ideograph Extension A */ + [0x4137, 0x4137], /* CJK Ideograph Extension A */ + [0x4138, 0x4138], /* CJK Ideograph Extension A */ + [0x4139, 0x4139], /* CJK Ideograph Extension A */ + [0x413a, 0x413a], /* CJK Ideograph Extension A */ + [0x413b, 0x413b], /* CJK Ideograph Extension A */ + [0x413c, 0x413c], /* CJK Ideograph Extension A */ + [0x413d, 0x413d], /* CJK Ideograph Extension A */ + [0x413e, 0x413e], /* CJK Ideograph Extension A */ + [0x413f, 0x413f], /* CJK Ideograph Extension A */ + [0x4140, 0x4140], /* CJK Ideograph Extension A */ + [0x4141, 0x4141], /* CJK Ideograph Extension A */ + [0x4142, 0x4142], /* CJK Ideograph Extension A */ + [0x4143, 0x4143], /* CJK Ideograph Extension A */ + [0x4144, 0x4144], /* CJK Ideograph Extension A */ + [0x4145, 0x4145], /* CJK Ideograph Extension A */ + [0x4146, 0x4146], /* CJK Ideograph Extension A */ + [0x4147, 0x4147], /* CJK Ideograph Extension A */ + [0x4148, 0x4148], /* CJK Ideograph Extension A */ + [0x4149, 0x4149], /* CJK Ideograph Extension A */ + [0x414a, 0x414a], /* CJK Ideograph Extension A */ + [0x414b, 0x414b], /* CJK Ideograph Extension A */ + [0x414c, 0x414c], /* CJK Ideograph Extension A */ + [0x414d, 0x414d], /* CJK Ideograph Extension A */ + [0x414e, 0x414e], /* CJK Ideograph Extension A */ + [0x414f, 0x414f], /* CJK Ideograph Extension A */ + [0x4150, 0x4150], /* CJK Ideograph Extension A */ + [0x4151, 0x4151], /* CJK Ideograph Extension A */ + [0x4152, 0x4152], /* CJK Ideograph Extension A */ + [0x4153, 0x4153], /* CJK Ideograph Extension A */ + [0x4154, 0x4154], /* CJK Ideograph Extension A */ + [0x4155, 0x4155], /* CJK Ideograph Extension A */ + [0x4156, 0x4156], /* CJK Ideograph Extension A */ + [0x4157, 0x4157], /* CJK Ideograph Extension A */ + [0x4158, 0x4158], /* CJK Ideograph Extension A */ + [0x4159, 0x4159], /* CJK Ideograph Extension A */ + [0x415a, 0x415a], /* CJK Ideograph Extension A */ + [0x415b, 0x415b], /* CJK Ideograph Extension A */ + [0x415c, 0x415c], /* CJK Ideograph Extension A */ + [0x415d, 0x415d], /* CJK Ideograph Extension A */ + [0x415e, 0x415e], /* CJK Ideograph Extension A */ + [0x415f, 0x415f], /* CJK Ideograph Extension A */ + [0x4160, 0x4160], /* CJK Ideograph Extension A */ + [0x4161, 0x4161], /* CJK Ideograph Extension A */ + [0x4162, 0x4162], /* CJK Ideograph Extension A */ + [0x4163, 0x4163], /* CJK Ideograph Extension A */ + [0x4164, 0x4164], /* CJK Ideograph Extension A */ + [0x4165, 0x4165], /* CJK Ideograph Extension A */ + [0x4166, 0x4166], /* CJK Ideograph Extension A */ + [0x4167, 0x4167], /* CJK Ideograph Extension A */ + [0x4168, 0x4168], /* CJK Ideograph Extension A */ + [0x4169, 0x4169], /* CJK Ideograph Extension A */ + [0x416a, 0x416a], /* CJK Ideograph Extension A */ + [0x416b, 0x416b], /* CJK Ideograph Extension A */ + [0x416c, 0x416c], /* CJK Ideograph Extension A */ + [0x416d, 0x416d], /* CJK Ideograph Extension A */ + [0x416e, 0x416e], /* CJK Ideograph Extension A */ + [0x416f, 0x416f], /* CJK Ideograph Extension A */ + [0x4170, 0x4170], /* CJK Ideograph Extension A */ + [0x4171, 0x4171], /* CJK Ideograph Extension A */ + [0x4172, 0x4172], /* CJK Ideograph Extension A */ + [0x4173, 0x4173], /* CJK Ideograph Extension A */ + [0x4174, 0x4174], /* CJK Ideograph Extension A */ + [0x4175, 0x4175], /* CJK Ideograph Extension A */ + [0x4176, 0x4176], /* CJK Ideograph Extension A */ + [0x4177, 0x4177], /* CJK Ideograph Extension A */ + [0x4178, 0x4178], /* CJK Ideograph Extension A */ + [0x4179, 0x4179], /* CJK Ideograph Extension A */ + [0x417a, 0x417a], /* CJK Ideograph Extension A */ + [0x417b, 0x417b], /* CJK Ideograph Extension A */ + [0x417c, 0x417c], /* CJK Ideograph Extension A */ + [0x417d, 0x417d], /* CJK Ideograph Extension A */ + [0x417e, 0x417e], /* CJK Ideograph Extension A */ + [0x417f, 0x417f], /* CJK Ideograph Extension A */ + [0x4180, 0x4180], /* CJK Ideograph Extension A */ + [0x4181, 0x4181], /* CJK Ideograph Extension A */ + [0x4182, 0x4182], /* CJK Ideograph Extension A */ + [0x4183, 0x4183], /* CJK Ideograph Extension A */ + [0x4184, 0x4184], /* CJK Ideograph Extension A */ + [0x4185, 0x4185], /* CJK Ideograph Extension A */ + [0x4186, 0x4186], /* CJK Ideograph Extension A */ + [0x4187, 0x4187], /* CJK Ideograph Extension A */ + [0x4188, 0x4188], /* CJK Ideograph Extension A */ + [0x4189, 0x4189], /* CJK Ideograph Extension A */ + [0x418a, 0x418a], /* CJK Ideograph Extension A */ + [0x418b, 0x418b], /* CJK Ideograph Extension A */ + [0x418c, 0x418c], /* CJK Ideograph Extension A */ + [0x418d, 0x418d], /* CJK Ideograph Extension A */ + [0x418e, 0x418e], /* CJK Ideograph Extension A */ + [0x418f, 0x418f], /* CJK Ideograph Extension A */ + [0x4190, 0x4190], /* CJK Ideograph Extension A */ + [0x4191, 0x4191], /* CJK Ideograph Extension A */ + [0x4192, 0x4192], /* CJK Ideograph Extension A */ + [0x4193, 0x4193], /* CJK Ideograph Extension A */ + [0x4194, 0x4194], /* CJK Ideograph Extension A */ + [0x4195, 0x4195], /* CJK Ideograph Extension A */ + [0x4196, 0x4196], /* CJK Ideograph Extension A */ + [0x4197, 0x4197], /* CJK Ideograph Extension A */ + [0x4198, 0x4198], /* CJK Ideograph Extension A */ + [0x4199, 0x4199], /* CJK Ideograph Extension A */ + [0x419a, 0x419a], /* CJK Ideograph Extension A */ + [0x419b, 0x419b], /* CJK Ideograph Extension A */ + [0x419c, 0x419c], /* CJK Ideograph Extension A */ + [0x419d, 0x419d], /* CJK Ideograph Extension A */ + [0x419e, 0x419e], /* CJK Ideograph Extension A */ + [0x419f, 0x419f], /* CJK Ideograph Extension A */ + [0x41a0, 0x41a0], /* CJK Ideograph Extension A */ + [0x41a1, 0x41a1], /* CJK Ideograph Extension A */ + [0x41a2, 0x41a2], /* CJK Ideograph Extension A */ + [0x41a3, 0x41a3], /* CJK Ideograph Extension A */ + [0x41a4, 0x41a4], /* CJK Ideograph Extension A */ + [0x41a5, 0x41a5], /* CJK Ideograph Extension A */ + [0x41a6, 0x41a6], /* CJK Ideograph Extension A */ + [0x41a7, 0x41a7], /* CJK Ideograph Extension A */ + [0x41a8, 0x41a8], /* CJK Ideograph Extension A */ + [0x41a9, 0x41a9], /* CJK Ideograph Extension A */ + [0x41aa, 0x41aa], /* CJK Ideograph Extension A */ + [0x41ab, 0x41ab], /* CJK Ideograph Extension A */ + [0x41ac, 0x41ac], /* CJK Ideograph Extension A */ + [0x41ad, 0x41ad], /* CJK Ideograph Extension A */ + [0x41ae, 0x41ae], /* CJK Ideograph Extension A */ + [0x41af, 0x41af], /* CJK Ideograph Extension A */ + [0x41b0, 0x41b0], /* CJK Ideograph Extension A */ + [0x41b1, 0x41b1], /* CJK Ideograph Extension A */ + [0x41b2, 0x41b2], /* CJK Ideograph Extension A */ + [0x41b3, 0x41b3], /* CJK Ideograph Extension A */ + [0x41b4, 0x41b4], /* CJK Ideograph Extension A */ + [0x41b5, 0x41b5], /* CJK Ideograph Extension A */ + [0x41b6, 0x41b6], /* CJK Ideograph Extension A */ + [0x41b7, 0x41b7], /* CJK Ideograph Extension A */ + [0x41b8, 0x41b8], /* CJK Ideograph Extension A */ + [0x41b9, 0x41b9], /* CJK Ideograph Extension A */ + [0x41ba, 0x41ba], /* CJK Ideograph Extension A */ + [0x41bb, 0x41bb], /* CJK Ideograph Extension A */ + [0x41bc, 0x41bc], /* CJK Ideograph Extension A */ + [0x41bd, 0x41bd], /* CJK Ideograph Extension A */ + [0x41be, 0x41be], /* CJK Ideograph Extension A */ + [0x41bf, 0x41bf], /* CJK Ideograph Extension A */ + [0x41c0, 0x41c0], /* CJK Ideograph Extension A */ + [0x41c1, 0x41c1], /* CJK Ideograph Extension A */ + [0x41c2, 0x41c2], /* CJK Ideograph Extension A */ + [0x41c3, 0x41c3], /* CJK Ideograph Extension A */ + [0x41c4, 0x41c4], /* CJK Ideograph Extension A */ + [0x41c5, 0x41c5], /* CJK Ideograph Extension A */ + [0x41c6, 0x41c6], /* CJK Ideograph Extension A */ + [0x41c7, 0x41c7], /* CJK Ideograph Extension A */ + [0x41c8, 0x41c8], /* CJK Ideograph Extension A */ + [0x41c9, 0x41c9], /* CJK Ideograph Extension A */ + [0x41ca, 0x41ca], /* CJK Ideograph Extension A */ + [0x41cb, 0x41cb], /* CJK Ideograph Extension A */ + [0x41cc, 0x41cc], /* CJK Ideograph Extension A */ + [0x41cd, 0x41cd], /* CJK Ideograph Extension A */ + [0x41ce, 0x41ce], /* CJK Ideograph Extension A */ + [0x41cf, 0x41cf], /* CJK Ideograph Extension A */ + [0x41d0, 0x41d0], /* CJK Ideograph Extension A */ + [0x41d1, 0x41d1], /* CJK Ideograph Extension A */ + [0x41d2, 0x41d2], /* CJK Ideograph Extension A */ + [0x41d3, 0x41d3], /* CJK Ideograph Extension A */ + [0x41d4, 0x41d4], /* CJK Ideograph Extension A */ + [0x41d5, 0x41d5], /* CJK Ideograph Extension A */ + [0x41d6, 0x41d6], /* CJK Ideograph Extension A */ + [0x41d7, 0x41d7], /* CJK Ideograph Extension A */ + [0x41d8, 0x41d8], /* CJK Ideograph Extension A */ + [0x41d9, 0x41d9], /* CJK Ideograph Extension A */ + [0x41da, 0x41da], /* CJK Ideograph Extension A */ + [0x41db, 0x41db], /* CJK Ideograph Extension A */ + [0x41dc, 0x41dc], /* CJK Ideograph Extension A */ + [0x41dd, 0x41dd], /* CJK Ideograph Extension A */ + [0x41de, 0x41de], /* CJK Ideograph Extension A */ + [0x41df, 0x41df], /* CJK Ideograph Extension A */ + [0x41e0, 0x41e0], /* CJK Ideograph Extension A */ + [0x41e1, 0x41e1], /* CJK Ideograph Extension A */ + [0x41e2, 0x41e2], /* CJK Ideograph Extension A */ + [0x41e3, 0x41e3], /* CJK Ideograph Extension A */ + [0x41e4, 0x41e4], /* CJK Ideograph Extension A */ + [0x41e5, 0x41e5], /* CJK Ideograph Extension A */ + [0x41e6, 0x41e6], /* CJK Ideograph Extension A */ + [0x41e7, 0x41e7], /* CJK Ideograph Extension A */ + [0x41e8, 0x41e8], /* CJK Ideograph Extension A */ + [0x41e9, 0x41e9], /* CJK Ideograph Extension A */ + [0x41ea, 0x41ea], /* CJK Ideograph Extension A */ + [0x41eb, 0x41eb], /* CJK Ideograph Extension A */ + [0x41ec, 0x41ec], /* CJK Ideograph Extension A */ + [0x41ed, 0x41ed], /* CJK Ideograph Extension A */ + [0x41ee, 0x41ee], /* CJK Ideograph Extension A */ + [0x41ef, 0x41ef], /* CJK Ideograph Extension A */ + [0x41f0, 0x41f0], /* CJK Ideograph Extension A */ + [0x41f1, 0x41f1], /* CJK Ideograph Extension A */ + [0x41f2, 0x41f2], /* CJK Ideograph Extension A */ + [0x41f3, 0x41f3], /* CJK Ideograph Extension A */ + [0x41f4, 0x41f4], /* CJK Ideograph Extension A */ + [0x41f5, 0x41f5], /* CJK Ideograph Extension A */ + [0x41f6, 0x41f6], /* CJK Ideograph Extension A */ + [0x41f7, 0x41f7], /* CJK Ideograph Extension A */ + [0x41f8, 0x41f8], /* CJK Ideograph Extension A */ + [0x41f9, 0x41f9], /* CJK Ideograph Extension A */ + [0x41fa, 0x41fa], /* CJK Ideograph Extension A */ + [0x41fb, 0x41fb], /* CJK Ideograph Extension A */ + [0x41fc, 0x41fc], /* CJK Ideograph Extension A */ + [0x41fd, 0x41fd], /* CJK Ideograph Extension A */ + [0x41fe, 0x41fe], /* CJK Ideograph Extension A */ + [0x41ff, 0x41ff], /* CJK Ideograph Extension A */ + [0x4200, 0x4200], /* CJK Ideograph Extension A */ + [0x4201, 0x4201], /* CJK Ideograph Extension A */ + [0x4202, 0x4202], /* CJK Ideograph Extension A */ + [0x4203, 0x4203], /* CJK Ideograph Extension A */ + [0x4204, 0x4204], /* CJK Ideograph Extension A */ + [0x4205, 0x4205], /* CJK Ideograph Extension A */ + [0x4206, 0x4206], /* CJK Ideograph Extension A */ + [0x4207, 0x4207], /* CJK Ideograph Extension A */ + [0x4208, 0x4208], /* CJK Ideograph Extension A */ + [0x4209, 0x4209], /* CJK Ideograph Extension A */ + [0x420a, 0x420a], /* CJK Ideograph Extension A */ + [0x420b, 0x420b], /* CJK Ideograph Extension A */ + [0x420c, 0x420c], /* CJK Ideograph Extension A */ + [0x420d, 0x420d], /* CJK Ideograph Extension A */ + [0x420e, 0x420e], /* CJK Ideograph Extension A */ + [0x420f, 0x420f], /* CJK Ideograph Extension A */ + [0x4210, 0x4210], /* CJK Ideograph Extension A */ + [0x4211, 0x4211], /* CJK Ideograph Extension A */ + [0x4212, 0x4212], /* CJK Ideograph Extension A */ + [0x4213, 0x4213], /* CJK Ideograph Extension A */ + [0x4214, 0x4214], /* CJK Ideograph Extension A */ + [0x4215, 0x4215], /* CJK Ideograph Extension A */ + [0x4216, 0x4216], /* CJK Ideograph Extension A */ + [0x4217, 0x4217], /* CJK Ideograph Extension A */ + [0x4218, 0x4218], /* CJK Ideograph Extension A */ + [0x4219, 0x4219], /* CJK Ideograph Extension A */ + [0x421a, 0x421a], /* CJK Ideograph Extension A */ + [0x421b, 0x421b], /* CJK Ideograph Extension A */ + [0x421c, 0x421c], /* CJK Ideograph Extension A */ + [0x421d, 0x421d], /* CJK Ideograph Extension A */ + [0x421e, 0x421e], /* CJK Ideograph Extension A */ + [0x421f, 0x421f], /* CJK Ideograph Extension A */ + [0x4220, 0x4220], /* CJK Ideograph Extension A */ + [0x4221, 0x4221], /* CJK Ideograph Extension A */ + [0x4222, 0x4222], /* CJK Ideograph Extension A */ + [0x4223, 0x4223], /* CJK Ideograph Extension A */ + [0x4224, 0x4224], /* CJK Ideograph Extension A */ + [0x4225, 0x4225], /* CJK Ideograph Extension A */ + [0x4226, 0x4226], /* CJK Ideograph Extension A */ + [0x4227, 0x4227], /* CJK Ideograph Extension A */ + [0x4228, 0x4228], /* CJK Ideograph Extension A */ + [0x4229, 0x4229], /* CJK Ideograph Extension A */ + [0x422a, 0x422a], /* CJK Ideograph Extension A */ + [0x422b, 0x422b], /* CJK Ideograph Extension A */ + [0x422c, 0x422c], /* CJK Ideograph Extension A */ + [0x422d, 0x422d], /* CJK Ideograph Extension A */ + [0x422e, 0x422e], /* CJK Ideograph Extension A */ + [0x422f, 0x422f], /* CJK Ideograph Extension A */ + [0x4230, 0x4230], /* CJK Ideograph Extension A */ + [0x4231, 0x4231], /* CJK Ideograph Extension A */ + [0x4232, 0x4232], /* CJK Ideograph Extension A */ + [0x4233, 0x4233], /* CJK Ideograph Extension A */ + [0x4234, 0x4234], /* CJK Ideograph Extension A */ + [0x4235, 0x4235], /* CJK Ideograph Extension A */ + [0x4236, 0x4236], /* CJK Ideograph Extension A */ + [0x4237, 0x4237], /* CJK Ideograph Extension A */ + [0x4238, 0x4238], /* CJK Ideograph Extension A */ + [0x4239, 0x4239], /* CJK Ideograph Extension A */ + [0x423a, 0x423a], /* CJK Ideograph Extension A */ + [0x423b, 0x423b], /* CJK Ideograph Extension A */ + [0x423c, 0x423c], /* CJK Ideograph Extension A */ + [0x423d, 0x423d], /* CJK Ideograph Extension A */ + [0x423e, 0x423e], /* CJK Ideograph Extension A */ + [0x423f, 0x423f], /* CJK Ideograph Extension A */ + [0x4240, 0x4240], /* CJK Ideograph Extension A */ + [0x4241, 0x4241], /* CJK Ideograph Extension A */ + [0x4242, 0x4242], /* CJK Ideograph Extension A */ + [0x4243, 0x4243], /* CJK Ideograph Extension A */ + [0x4244, 0x4244], /* CJK Ideograph Extension A */ + [0x4245, 0x4245], /* CJK Ideograph Extension A */ + [0x4246, 0x4246], /* CJK Ideograph Extension A */ + [0x4247, 0x4247], /* CJK Ideograph Extension A */ + [0x4248, 0x4248], /* CJK Ideograph Extension A */ + [0x4249, 0x4249], /* CJK Ideograph Extension A */ + [0x424a, 0x424a], /* CJK Ideograph Extension A */ + [0x424b, 0x424b], /* CJK Ideograph Extension A */ + [0x424c, 0x424c], /* CJK Ideograph Extension A */ + [0x424d, 0x424d], /* CJK Ideograph Extension A */ + [0x424e, 0x424e], /* CJK Ideograph Extension A */ + [0x424f, 0x424f], /* CJK Ideograph Extension A */ + [0x4250, 0x4250], /* CJK Ideograph Extension A */ + [0x4251, 0x4251], /* CJK Ideograph Extension A */ + [0x4252, 0x4252], /* CJK Ideograph Extension A */ + [0x4253, 0x4253], /* CJK Ideograph Extension A */ + [0x4254, 0x4254], /* CJK Ideograph Extension A */ + [0x4255, 0x4255], /* CJK Ideograph Extension A */ + [0x4256, 0x4256], /* CJK Ideograph Extension A */ + [0x4257, 0x4257], /* CJK Ideograph Extension A */ + [0x4258, 0x4258], /* CJK Ideograph Extension A */ + [0x4259, 0x4259], /* CJK Ideograph Extension A */ + [0x425a, 0x425a], /* CJK Ideograph Extension A */ + [0x425b, 0x425b], /* CJK Ideograph Extension A */ + [0x425c, 0x425c], /* CJK Ideograph Extension A */ + [0x425d, 0x425d], /* CJK Ideograph Extension A */ + [0x425e, 0x425e], /* CJK Ideograph Extension A */ + [0x425f, 0x425f], /* CJK Ideograph Extension A */ + [0x4260, 0x4260], /* CJK Ideograph Extension A */ + [0x4261, 0x4261], /* CJK Ideograph Extension A */ + [0x4262, 0x4262], /* CJK Ideograph Extension A */ + [0x4263, 0x4263], /* CJK Ideograph Extension A */ + [0x4264, 0x4264], /* CJK Ideograph Extension A */ + [0x4265, 0x4265], /* CJK Ideograph Extension A */ + [0x4266, 0x4266], /* CJK Ideograph Extension A */ + [0x4267, 0x4267], /* CJK Ideograph Extension A */ + [0x4268, 0x4268], /* CJK Ideograph Extension A */ + [0x4269, 0x4269], /* CJK Ideograph Extension A */ + [0x426a, 0x426a], /* CJK Ideograph Extension A */ + [0x426b, 0x426b], /* CJK Ideograph Extension A */ + [0x426c, 0x426c], /* CJK Ideograph Extension A */ + [0x426d, 0x426d], /* CJK Ideograph Extension A */ + [0x426e, 0x426e], /* CJK Ideograph Extension A */ + [0x426f, 0x426f], /* CJK Ideograph Extension A */ + [0x4270, 0x4270], /* CJK Ideograph Extension A */ + [0x4271, 0x4271], /* CJK Ideograph Extension A */ + [0x4272, 0x4272], /* CJK Ideograph Extension A */ + [0x4273, 0x4273], /* CJK Ideograph Extension A */ + [0x4274, 0x4274], /* CJK Ideograph Extension A */ + [0x4275, 0x4275], /* CJK Ideograph Extension A */ + [0x4276, 0x4276], /* CJK Ideograph Extension A */ + [0x4277, 0x4277], /* CJK Ideograph Extension A */ + [0x4278, 0x4278], /* CJK Ideograph Extension A */ + [0x4279, 0x4279], /* CJK Ideograph Extension A */ + [0x427a, 0x427a], /* CJK Ideograph Extension A */ + [0x427b, 0x427b], /* CJK Ideograph Extension A */ + [0x427c, 0x427c], /* CJK Ideograph Extension A */ + [0x427d, 0x427d], /* CJK Ideograph Extension A */ + [0x427e, 0x427e], /* CJK Ideograph Extension A */ + [0x427f, 0x427f], /* CJK Ideograph Extension A */ + [0x4280, 0x4280], /* CJK Ideograph Extension A */ + [0x4281, 0x4281], /* CJK Ideograph Extension A */ + [0x4282, 0x4282], /* CJK Ideograph Extension A */ + [0x4283, 0x4283], /* CJK Ideograph Extension A */ + [0x4284, 0x4284], /* CJK Ideograph Extension A */ + [0x4285, 0x4285], /* CJK Ideograph Extension A */ + [0x4286, 0x4286], /* CJK Ideograph Extension A */ + [0x4287, 0x4287], /* CJK Ideograph Extension A */ + [0x4288, 0x4288], /* CJK Ideograph Extension A */ + [0x4289, 0x4289], /* CJK Ideograph Extension A */ + [0x428a, 0x428a], /* CJK Ideograph Extension A */ + [0x428b, 0x428b], /* CJK Ideograph Extension A */ + [0x428c, 0x428c], /* CJK Ideograph Extension A */ + [0x428d, 0x428d], /* CJK Ideograph Extension A */ + [0x428e, 0x428e], /* CJK Ideograph Extension A */ + [0x428f, 0x428f], /* CJK Ideograph Extension A */ + [0x4290, 0x4290], /* CJK Ideograph Extension A */ + [0x4291, 0x4291], /* CJK Ideograph Extension A */ + [0x4292, 0x4292], /* CJK Ideograph Extension A */ + [0x4293, 0x4293], /* CJK Ideograph Extension A */ + [0x4294, 0x4294], /* CJK Ideograph Extension A */ + [0x4295, 0x4295], /* CJK Ideograph Extension A */ + [0x4296, 0x4296], /* CJK Ideograph Extension A */ + [0x4297, 0x4297], /* CJK Ideograph Extension A */ + [0x4298, 0x4298], /* CJK Ideograph Extension A */ + [0x4299, 0x4299], /* CJK Ideograph Extension A */ + [0x429a, 0x429a], /* CJK Ideograph Extension A */ + [0x429b, 0x429b], /* CJK Ideograph Extension A */ + [0x429c, 0x429c], /* CJK Ideograph Extension A */ + [0x429d, 0x429d], /* CJK Ideograph Extension A */ + [0x429e, 0x429e], /* CJK Ideograph Extension A */ + [0x429f, 0x429f], /* CJK Ideograph Extension A */ + [0x42a0, 0x42a0], /* CJK Ideograph Extension A */ + [0x42a1, 0x42a1], /* CJK Ideograph Extension A */ + [0x42a2, 0x42a2], /* CJK Ideograph Extension A */ + [0x42a3, 0x42a3], /* CJK Ideograph Extension A */ + [0x42a4, 0x42a4], /* CJK Ideograph Extension A */ + [0x42a5, 0x42a5], /* CJK Ideograph Extension A */ + [0x42a6, 0x42a6], /* CJK Ideograph Extension A */ + [0x42a7, 0x42a7], /* CJK Ideograph Extension A */ + [0x42a8, 0x42a8], /* CJK Ideograph Extension A */ + [0x42a9, 0x42a9], /* CJK Ideograph Extension A */ + [0x42aa, 0x42aa], /* CJK Ideograph Extension A */ + [0x42ab, 0x42ab], /* CJK Ideograph Extension A */ + [0x42ac, 0x42ac], /* CJK Ideograph Extension A */ + [0x42ad, 0x42ad], /* CJK Ideograph Extension A */ + [0x42ae, 0x42ae], /* CJK Ideograph Extension A */ + [0x42af, 0x42af], /* CJK Ideograph Extension A */ + [0x42b0, 0x42b0], /* CJK Ideograph Extension A */ + [0x42b1, 0x42b1], /* CJK Ideograph Extension A */ + [0x42b2, 0x42b2], /* CJK Ideograph Extension A */ + [0x42b3, 0x42b3], /* CJK Ideograph Extension A */ + [0x42b4, 0x42b4], /* CJK Ideograph Extension A */ + [0x42b5, 0x42b5], /* CJK Ideograph Extension A */ + [0x42b6, 0x42b6], /* CJK Ideograph Extension A */ + [0x42b7, 0x42b7], /* CJK Ideograph Extension A */ + [0x42b8, 0x42b8], /* CJK Ideograph Extension A */ + [0x42b9, 0x42b9], /* CJK Ideograph Extension A */ + [0x42ba, 0x42ba], /* CJK Ideograph Extension A */ + [0x42bb, 0x42bb], /* CJK Ideograph Extension A */ + [0x42bc, 0x42bc], /* CJK Ideograph Extension A */ + [0x42bd, 0x42bd], /* CJK Ideograph Extension A */ + [0x42be, 0x42be], /* CJK Ideograph Extension A */ + [0x42bf, 0x42bf], /* CJK Ideograph Extension A */ + [0x42c0, 0x42c0], /* CJK Ideograph Extension A */ + [0x42c1, 0x42c1], /* CJK Ideograph Extension A */ + [0x42c2, 0x42c2], /* CJK Ideograph Extension A */ + [0x42c3, 0x42c3], /* CJK Ideograph Extension A */ + [0x42c4, 0x42c4], /* CJK Ideograph Extension A */ + [0x42c5, 0x42c5], /* CJK Ideograph Extension A */ + [0x42c6, 0x42c6], /* CJK Ideograph Extension A */ + [0x42c7, 0x42c7], /* CJK Ideograph Extension A */ + [0x42c8, 0x42c8], /* CJK Ideograph Extension A */ + [0x42c9, 0x42c9], /* CJK Ideograph Extension A */ + [0x42ca, 0x42ca], /* CJK Ideograph Extension A */ + [0x42cb, 0x42cb], /* CJK Ideograph Extension A */ + [0x42cc, 0x42cc], /* CJK Ideograph Extension A */ + [0x42cd, 0x42cd], /* CJK Ideograph Extension A */ + [0x42ce, 0x42ce], /* CJK Ideograph Extension A */ + [0x42cf, 0x42cf], /* CJK Ideograph Extension A */ + [0x42d0, 0x42d0], /* CJK Ideograph Extension A */ + [0x42d1, 0x42d1], /* CJK Ideograph Extension A */ + [0x42d2, 0x42d2], /* CJK Ideograph Extension A */ + [0x42d3, 0x42d3], /* CJK Ideograph Extension A */ + [0x42d4, 0x42d4], /* CJK Ideograph Extension A */ + [0x42d5, 0x42d5], /* CJK Ideograph Extension A */ + [0x42d6, 0x42d6], /* CJK Ideograph Extension A */ + [0x42d7, 0x42d7], /* CJK Ideograph Extension A */ + [0x42d8, 0x42d8], /* CJK Ideograph Extension A */ + [0x42d9, 0x42d9], /* CJK Ideograph Extension A */ + [0x42da, 0x42da], /* CJK Ideograph Extension A */ + [0x42db, 0x42db], /* CJK Ideograph Extension A */ + [0x42dc, 0x42dc], /* CJK Ideograph Extension A */ + [0x42dd, 0x42dd], /* CJK Ideograph Extension A */ + [0x42de, 0x42de], /* CJK Ideograph Extension A */ + [0x42df, 0x42df], /* CJK Ideograph Extension A */ + [0x42e0, 0x42e0], /* CJK Ideograph Extension A */ + [0x42e1, 0x42e1], /* CJK Ideograph Extension A */ + [0x42e2, 0x42e2], /* CJK Ideograph Extension A */ + [0x42e3, 0x42e3], /* CJK Ideograph Extension A */ + [0x42e4, 0x42e4], /* CJK Ideograph Extension A */ + [0x42e5, 0x42e5], /* CJK Ideograph Extension A */ + [0x42e6, 0x42e6], /* CJK Ideograph Extension A */ + [0x42e7, 0x42e7], /* CJK Ideograph Extension A */ + [0x42e8, 0x42e8], /* CJK Ideograph Extension A */ + [0x42e9, 0x42e9], /* CJK Ideograph Extension A */ + [0x42ea, 0x42ea], /* CJK Ideograph Extension A */ + [0x42eb, 0x42eb], /* CJK Ideograph Extension A */ + [0x42ec, 0x42ec], /* CJK Ideograph Extension A */ + [0x42ed, 0x42ed], /* CJK Ideograph Extension A */ + [0x42ee, 0x42ee], /* CJK Ideograph Extension A */ + [0x42ef, 0x42ef], /* CJK Ideograph Extension A */ + [0x42f0, 0x42f0], /* CJK Ideograph Extension A */ + [0x42f1, 0x42f1], /* CJK Ideograph Extension A */ + [0x42f2, 0x42f2], /* CJK Ideograph Extension A */ + [0x42f3, 0x42f3], /* CJK Ideograph Extension A */ + [0x42f4, 0x42f4], /* CJK Ideograph Extension A */ + [0x42f5, 0x42f5], /* CJK Ideograph Extension A */ + [0x42f6, 0x42f6], /* CJK Ideograph Extension A */ + [0x42f7, 0x42f7], /* CJK Ideograph Extension A */ + [0x42f8, 0x42f8], /* CJK Ideograph Extension A */ + [0x42f9, 0x42f9], /* CJK Ideograph Extension A */ + [0x42fa, 0x42fa], /* CJK Ideograph Extension A */ + [0x42fb, 0x42fb], /* CJK Ideograph Extension A */ + [0x42fc, 0x42fc], /* CJK Ideograph Extension A */ + [0x42fd, 0x42fd], /* CJK Ideograph Extension A */ + [0x42fe, 0x42fe], /* CJK Ideograph Extension A */ + [0x42ff, 0x42ff], /* CJK Ideograph Extension A */ + [0x4300, 0x4300], /* CJK Ideograph Extension A */ + [0x4301, 0x4301], /* CJK Ideograph Extension A */ + [0x4302, 0x4302], /* CJK Ideograph Extension A */ + [0x4303, 0x4303], /* CJK Ideograph Extension A */ + [0x4304, 0x4304], /* CJK Ideograph Extension A */ + [0x4305, 0x4305], /* CJK Ideograph Extension A */ + [0x4306, 0x4306], /* CJK Ideograph Extension A */ + [0x4307, 0x4307], /* CJK Ideograph Extension A */ + [0x4308, 0x4308], /* CJK Ideograph Extension A */ + [0x4309, 0x4309], /* CJK Ideograph Extension A */ + [0x430a, 0x430a], /* CJK Ideograph Extension A */ + [0x430b, 0x430b], /* CJK Ideograph Extension A */ + [0x430c, 0x430c], /* CJK Ideograph Extension A */ + [0x430d, 0x430d], /* CJK Ideograph Extension A */ + [0x430e, 0x430e], /* CJK Ideograph Extension A */ + [0x430f, 0x430f], /* CJK Ideograph Extension A */ + [0x4310, 0x4310], /* CJK Ideograph Extension A */ + [0x4311, 0x4311], /* CJK Ideograph Extension A */ + [0x4312, 0x4312], /* CJK Ideograph Extension A */ + [0x4313, 0x4313], /* CJK Ideograph Extension A */ + [0x4314, 0x4314], /* CJK Ideograph Extension A */ + [0x4315, 0x4315], /* CJK Ideograph Extension A */ + [0x4316, 0x4316], /* CJK Ideograph Extension A */ + [0x4317, 0x4317], /* CJK Ideograph Extension A */ + [0x4318, 0x4318], /* CJK Ideograph Extension A */ + [0x4319, 0x4319], /* CJK Ideograph Extension A */ + [0x431a, 0x431a], /* CJK Ideograph Extension A */ + [0x431b, 0x431b], /* CJK Ideograph Extension A */ + [0x431c, 0x431c], /* CJK Ideograph Extension A */ + [0x431d, 0x431d], /* CJK Ideograph Extension A */ + [0x431e, 0x431e], /* CJK Ideograph Extension A */ + [0x431f, 0x431f], /* CJK Ideograph Extension A */ + [0x4320, 0x4320], /* CJK Ideograph Extension A */ + [0x4321, 0x4321], /* CJK Ideograph Extension A */ + [0x4322, 0x4322], /* CJK Ideograph Extension A */ + [0x4323, 0x4323], /* CJK Ideograph Extension A */ + [0x4324, 0x4324], /* CJK Ideograph Extension A */ + [0x4325, 0x4325], /* CJK Ideograph Extension A */ + [0x4326, 0x4326], /* CJK Ideograph Extension A */ + [0x4327, 0x4327], /* CJK Ideograph Extension A */ + [0x4328, 0x4328], /* CJK Ideograph Extension A */ + [0x4329, 0x4329], /* CJK Ideograph Extension A */ + [0x432a, 0x432a], /* CJK Ideograph Extension A */ + [0x432b, 0x432b], /* CJK Ideograph Extension A */ + [0x432c, 0x432c], /* CJK Ideograph Extension A */ + [0x432d, 0x432d], /* CJK Ideograph Extension A */ + [0x432e, 0x432e], /* CJK Ideograph Extension A */ + [0x432f, 0x432f], /* CJK Ideograph Extension A */ + [0x4330, 0x4330], /* CJK Ideograph Extension A */ + [0x4331, 0x4331], /* CJK Ideograph Extension A */ + [0x4332, 0x4332], /* CJK Ideograph Extension A */ + [0x4333, 0x4333], /* CJK Ideograph Extension A */ + [0x4334, 0x4334], /* CJK Ideograph Extension A */ + [0x4335, 0x4335], /* CJK Ideograph Extension A */ + [0x4336, 0x4336], /* CJK Ideograph Extension A */ + [0x4337, 0x4337], /* CJK Ideograph Extension A */ + [0x4338, 0x4338], /* CJK Ideograph Extension A */ + [0x4339, 0x4339], /* CJK Ideograph Extension A */ + [0x433a, 0x433a], /* CJK Ideograph Extension A */ + [0x433b, 0x433b], /* CJK Ideograph Extension A */ + [0x433c, 0x433c], /* CJK Ideograph Extension A */ + [0x433d, 0x433d], /* CJK Ideograph Extension A */ + [0x433e, 0x433e], /* CJK Ideograph Extension A */ + [0x433f, 0x433f], /* CJK Ideograph Extension A */ + [0x4340, 0x4340], /* CJK Ideograph Extension A */ + [0x4341, 0x4341], /* CJK Ideograph Extension A */ + [0x4342, 0x4342], /* CJK Ideograph Extension A */ + [0x4343, 0x4343], /* CJK Ideograph Extension A */ + [0x4344, 0x4344], /* CJK Ideograph Extension A */ + [0x4345, 0x4345], /* CJK Ideograph Extension A */ + [0x4346, 0x4346], /* CJK Ideograph Extension A */ + [0x4347, 0x4347], /* CJK Ideograph Extension A */ + [0x4348, 0x4348], /* CJK Ideograph Extension A */ + [0x4349, 0x4349], /* CJK Ideograph Extension A */ + [0x434a, 0x434a], /* CJK Ideograph Extension A */ + [0x434b, 0x434b], /* CJK Ideograph Extension A */ + [0x434c, 0x434c], /* CJK Ideograph Extension A */ + [0x434d, 0x434d], /* CJK Ideograph Extension A */ + [0x434e, 0x434e], /* CJK Ideograph Extension A */ + [0x434f, 0x434f], /* CJK Ideograph Extension A */ + [0x4350, 0x4350], /* CJK Ideograph Extension A */ + [0x4351, 0x4351], /* CJK Ideograph Extension A */ + [0x4352, 0x4352], /* CJK Ideograph Extension A */ + [0x4353, 0x4353], /* CJK Ideograph Extension A */ + [0x4354, 0x4354], /* CJK Ideograph Extension A */ + [0x4355, 0x4355], /* CJK Ideograph Extension A */ + [0x4356, 0x4356], /* CJK Ideograph Extension A */ + [0x4357, 0x4357], /* CJK Ideograph Extension A */ + [0x4358, 0x4358], /* CJK Ideograph Extension A */ + [0x4359, 0x4359], /* CJK Ideograph Extension A */ + [0x435a, 0x435a], /* CJK Ideograph Extension A */ + [0x435b, 0x435b], /* CJK Ideograph Extension A */ + [0x435c, 0x435c], /* CJK Ideograph Extension A */ + [0x435d, 0x435d], /* CJK Ideograph Extension A */ + [0x435e, 0x435e], /* CJK Ideograph Extension A */ + [0x435f, 0x435f], /* CJK Ideograph Extension A */ + [0x4360, 0x4360], /* CJK Ideograph Extension A */ + [0x4361, 0x4361], /* CJK Ideograph Extension A */ + [0x4362, 0x4362], /* CJK Ideograph Extension A */ + [0x4363, 0x4363], /* CJK Ideograph Extension A */ + [0x4364, 0x4364], /* CJK Ideograph Extension A */ + [0x4365, 0x4365], /* CJK Ideograph Extension A */ + [0x4366, 0x4366], /* CJK Ideograph Extension A */ + [0x4367, 0x4367], /* CJK Ideograph Extension A */ + [0x4368, 0x4368], /* CJK Ideograph Extension A */ + [0x4369, 0x4369], /* CJK Ideograph Extension A */ + [0x436a, 0x436a], /* CJK Ideograph Extension A */ + [0x436b, 0x436b], /* CJK Ideograph Extension A */ + [0x436c, 0x436c], /* CJK Ideograph Extension A */ + [0x436d, 0x436d], /* CJK Ideograph Extension A */ + [0x436e, 0x436e], /* CJK Ideograph Extension A */ + [0x436f, 0x436f], /* CJK Ideograph Extension A */ + [0x4370, 0x4370], /* CJK Ideograph Extension A */ + [0x4371, 0x4371], /* CJK Ideograph Extension A */ + [0x4372, 0x4372], /* CJK Ideograph Extension A */ + [0x4373, 0x4373], /* CJK Ideograph Extension A */ + [0x4374, 0x4374], /* CJK Ideograph Extension A */ + [0x4375, 0x4375], /* CJK Ideograph Extension A */ + [0x4376, 0x4376], /* CJK Ideograph Extension A */ + [0x4377, 0x4377], /* CJK Ideograph Extension A */ + [0x4378, 0x4378], /* CJK Ideograph Extension A */ + [0x4379, 0x4379], /* CJK Ideograph Extension A */ + [0x437a, 0x437a], /* CJK Ideograph Extension A */ + [0x437b, 0x437b], /* CJK Ideograph Extension A */ + [0x437c, 0x437c], /* CJK Ideograph Extension A */ + [0x437d, 0x437d], /* CJK Ideograph Extension A */ + [0x437e, 0x437e], /* CJK Ideograph Extension A */ + [0x437f, 0x437f], /* CJK Ideograph Extension A */ + [0x4380, 0x4380], /* CJK Ideograph Extension A */ + [0x4381, 0x4381], /* CJK Ideograph Extension A */ + [0x4382, 0x4382], /* CJK Ideograph Extension A */ + [0x4383, 0x4383], /* CJK Ideograph Extension A */ + [0x4384, 0x4384], /* CJK Ideograph Extension A */ + [0x4385, 0x4385], /* CJK Ideograph Extension A */ + [0x4386, 0x4386], /* CJK Ideograph Extension A */ + [0x4387, 0x4387], /* CJK Ideograph Extension A */ + [0x4388, 0x4388], /* CJK Ideograph Extension A */ + [0x4389, 0x4389], /* CJK Ideograph Extension A */ + [0x438a, 0x438a], /* CJK Ideograph Extension A */ + [0x438b, 0x438b], /* CJK Ideograph Extension A */ + [0x438c, 0x438c], /* CJK Ideograph Extension A */ + [0x438d, 0x438d], /* CJK Ideograph Extension A */ + [0x438e, 0x438e], /* CJK Ideograph Extension A */ + [0x438f, 0x438f], /* CJK Ideograph Extension A */ + [0x4390, 0x4390], /* CJK Ideograph Extension A */ + [0x4391, 0x4391], /* CJK Ideograph Extension A */ + [0x4392, 0x4392], /* CJK Ideograph Extension A */ + [0x4393, 0x4393], /* CJK Ideograph Extension A */ + [0x4394, 0x4394], /* CJK Ideograph Extension A */ + [0x4395, 0x4395], /* CJK Ideograph Extension A */ + [0x4396, 0x4396], /* CJK Ideograph Extension A */ + [0x4397, 0x4397], /* CJK Ideograph Extension A */ + [0x4398, 0x4398], /* CJK Ideograph Extension A */ + [0x4399, 0x4399], /* CJK Ideograph Extension A */ + [0x439a, 0x439a], /* CJK Ideograph Extension A */ + [0x439b, 0x439b], /* CJK Ideograph Extension A */ + [0x439c, 0x439c], /* CJK Ideograph Extension A */ + [0x439d, 0x439d], /* CJK Ideograph Extension A */ + [0x439e, 0x439e], /* CJK Ideograph Extension A */ + [0x439f, 0x439f], /* CJK Ideograph Extension A */ + [0x43a0, 0x43a0], /* CJK Ideograph Extension A */ + [0x43a1, 0x43a1], /* CJK Ideograph Extension A */ + [0x43a2, 0x43a2], /* CJK Ideograph Extension A */ + [0x43a3, 0x43a3], /* CJK Ideograph Extension A */ + [0x43a4, 0x43a4], /* CJK Ideograph Extension A */ + [0x43a5, 0x43a5], /* CJK Ideograph Extension A */ + [0x43a6, 0x43a6], /* CJK Ideograph Extension A */ + [0x43a7, 0x43a7], /* CJK Ideograph Extension A */ + [0x43a8, 0x43a8], /* CJK Ideograph Extension A */ + [0x43a9, 0x43a9], /* CJK Ideograph Extension A */ + [0x43aa, 0x43aa], /* CJK Ideograph Extension A */ + [0x43ab, 0x43ab], /* CJK Ideograph Extension A */ + [0x43ac, 0x43ac], /* CJK Ideograph Extension A */ + [0x43ad, 0x43ad], /* CJK Ideograph Extension A */ + [0x43ae, 0x43ae], /* CJK Ideograph Extension A */ + [0x43af, 0x43af], /* CJK Ideograph Extension A */ + [0x43b0, 0x43b0], /* CJK Ideograph Extension A */ + [0x43b1, 0x43b1], /* CJK Ideograph Extension A */ + [0x43b2, 0x43b2], /* CJK Ideograph Extension A */ + [0x43b3, 0x43b3], /* CJK Ideograph Extension A */ + [0x43b4, 0x43b4], /* CJK Ideograph Extension A */ + [0x43b5, 0x43b5], /* CJK Ideograph Extension A */ + [0x43b6, 0x43b6], /* CJK Ideograph Extension A */ + [0x43b7, 0x43b7], /* CJK Ideograph Extension A */ + [0x43b8, 0x43b8], /* CJK Ideograph Extension A */ + [0x43b9, 0x43b9], /* CJK Ideograph Extension A */ + [0x43ba, 0x43ba], /* CJK Ideograph Extension A */ + [0x43bb, 0x43bb], /* CJK Ideograph Extension A */ + [0x43bc, 0x43bc], /* CJK Ideograph Extension A */ + [0x43bd, 0x43bd], /* CJK Ideograph Extension A */ + [0x43be, 0x43be], /* CJK Ideograph Extension A */ + [0x43bf, 0x43bf], /* CJK Ideograph Extension A */ + [0x43c0, 0x43c0], /* CJK Ideograph Extension A */ + [0x43c1, 0x43c1], /* CJK Ideograph Extension A */ + [0x43c2, 0x43c2], /* CJK Ideograph Extension A */ + [0x43c3, 0x43c3], /* CJK Ideograph Extension A */ + [0x43c4, 0x43c4], /* CJK Ideograph Extension A */ + [0x43c5, 0x43c5], /* CJK Ideograph Extension A */ + [0x43c6, 0x43c6], /* CJK Ideograph Extension A */ + [0x43c7, 0x43c7], /* CJK Ideograph Extension A */ + [0x43c8, 0x43c8], /* CJK Ideograph Extension A */ + [0x43c9, 0x43c9], /* CJK Ideograph Extension A */ + [0x43ca, 0x43ca], /* CJK Ideograph Extension A */ + [0x43cb, 0x43cb], /* CJK Ideograph Extension A */ + [0x43cc, 0x43cc], /* CJK Ideograph Extension A */ + [0x43cd, 0x43cd], /* CJK Ideograph Extension A */ + [0x43ce, 0x43ce], /* CJK Ideograph Extension A */ + [0x43cf, 0x43cf], /* CJK Ideograph Extension A */ + [0x43d0, 0x43d0], /* CJK Ideograph Extension A */ + [0x43d1, 0x43d1], /* CJK Ideograph Extension A */ + [0x43d2, 0x43d2], /* CJK Ideograph Extension A */ + [0x43d3, 0x43d3], /* CJK Ideograph Extension A */ + [0x43d4, 0x43d4], /* CJK Ideograph Extension A */ + [0x43d5, 0x43d5], /* CJK Ideograph Extension A */ + [0x43d6, 0x43d6], /* CJK Ideograph Extension A */ + [0x43d7, 0x43d7], /* CJK Ideograph Extension A */ + [0x43d8, 0x43d8], /* CJK Ideograph Extension A */ + [0x43d9, 0x43d9], /* CJK Ideograph Extension A */ + [0x43da, 0x43da], /* CJK Ideograph Extension A */ + [0x43db, 0x43db], /* CJK Ideograph Extension A */ + [0x43dc, 0x43dc], /* CJK Ideograph Extension A */ + [0x43dd, 0x43dd], /* CJK Ideograph Extension A */ + [0x43de, 0x43de], /* CJK Ideograph Extension A */ + [0x43df, 0x43df], /* CJK Ideograph Extension A */ + [0x43e0, 0x43e0], /* CJK Ideograph Extension A */ + [0x43e1, 0x43e1], /* CJK Ideograph Extension A */ + [0x43e2, 0x43e2], /* CJK Ideograph Extension A */ + [0x43e3, 0x43e3], /* CJK Ideograph Extension A */ + [0x43e4, 0x43e4], /* CJK Ideograph Extension A */ + [0x43e5, 0x43e5], /* CJK Ideograph Extension A */ + [0x43e6, 0x43e6], /* CJK Ideograph Extension A */ + [0x43e7, 0x43e7], /* CJK Ideograph Extension A */ + [0x43e8, 0x43e8], /* CJK Ideograph Extension A */ + [0x43e9, 0x43e9], /* CJK Ideograph Extension A */ + [0x43ea, 0x43ea], /* CJK Ideograph Extension A */ + [0x43eb, 0x43eb], /* CJK Ideograph Extension A */ + [0x43ec, 0x43ec], /* CJK Ideograph Extension A */ + [0x43ed, 0x43ed], /* CJK Ideograph Extension A */ + [0x43ee, 0x43ee], /* CJK Ideograph Extension A */ + [0x43ef, 0x43ef], /* CJK Ideograph Extension A */ + [0x43f0, 0x43f0], /* CJK Ideograph Extension A */ + [0x43f1, 0x43f1], /* CJK Ideograph Extension A */ + [0x43f2, 0x43f2], /* CJK Ideograph Extension A */ + [0x43f3, 0x43f3], /* CJK Ideograph Extension A */ + [0x43f4, 0x43f4], /* CJK Ideograph Extension A */ + [0x43f5, 0x43f5], /* CJK Ideograph Extension A */ + [0x43f6, 0x43f6], /* CJK Ideograph Extension A */ + [0x43f7, 0x43f7], /* CJK Ideograph Extension A */ + [0x43f8, 0x43f8], /* CJK Ideograph Extension A */ + [0x43f9, 0x43f9], /* CJK Ideograph Extension A */ + [0x43fa, 0x43fa], /* CJK Ideograph Extension A */ + [0x43fb, 0x43fb], /* CJK Ideograph Extension A */ + [0x43fc, 0x43fc], /* CJK Ideograph Extension A */ + [0x43fd, 0x43fd], /* CJK Ideograph Extension A */ + [0x43fe, 0x43fe], /* CJK Ideograph Extension A */ + [0x43ff, 0x43ff], /* CJK Ideograph Extension A */ + [0x4400, 0x4400], /* CJK Ideograph Extension A */ + [0x4401, 0x4401], /* CJK Ideograph Extension A */ + [0x4402, 0x4402], /* CJK Ideograph Extension A */ + [0x4403, 0x4403], /* CJK Ideograph Extension A */ + [0x4404, 0x4404], /* CJK Ideograph Extension A */ + [0x4405, 0x4405], /* CJK Ideograph Extension A */ + [0x4406, 0x4406], /* CJK Ideograph Extension A */ + [0x4407, 0x4407], /* CJK Ideograph Extension A */ + [0x4408, 0x4408], /* CJK Ideograph Extension A */ + [0x4409, 0x4409], /* CJK Ideograph Extension A */ + [0x440a, 0x440a], /* CJK Ideograph Extension A */ + [0x440b, 0x440b], /* CJK Ideograph Extension A */ + [0x440c, 0x440c], /* CJK Ideograph Extension A */ + [0x440d, 0x440d], /* CJK Ideograph Extension A */ + [0x440e, 0x440e], /* CJK Ideograph Extension A */ + [0x440f, 0x440f], /* CJK Ideograph Extension A */ + [0x4410, 0x4410], /* CJK Ideograph Extension A */ + [0x4411, 0x4411], /* CJK Ideograph Extension A */ + [0x4412, 0x4412], /* CJK Ideograph Extension A */ + [0x4413, 0x4413], /* CJK Ideograph Extension A */ + [0x4414, 0x4414], /* CJK Ideograph Extension A */ + [0x4415, 0x4415], /* CJK Ideograph Extension A */ + [0x4416, 0x4416], /* CJK Ideograph Extension A */ + [0x4417, 0x4417], /* CJK Ideograph Extension A */ + [0x4418, 0x4418], /* CJK Ideograph Extension A */ + [0x4419, 0x4419], /* CJK Ideograph Extension A */ + [0x441a, 0x441a], /* CJK Ideograph Extension A */ + [0x441b, 0x441b], /* CJK Ideograph Extension A */ + [0x441c, 0x441c], /* CJK Ideograph Extension A */ + [0x441d, 0x441d], /* CJK Ideograph Extension A */ + [0x441e, 0x441e], /* CJK Ideograph Extension A */ + [0x441f, 0x441f], /* CJK Ideograph Extension A */ + [0x4420, 0x4420], /* CJK Ideograph Extension A */ + [0x4421, 0x4421], /* CJK Ideograph Extension A */ + [0x4422, 0x4422], /* CJK Ideograph Extension A */ + [0x4423, 0x4423], /* CJK Ideograph Extension A */ + [0x4424, 0x4424], /* CJK Ideograph Extension A */ + [0x4425, 0x4425], /* CJK Ideograph Extension A */ + [0x4426, 0x4426], /* CJK Ideograph Extension A */ + [0x4427, 0x4427], /* CJK Ideograph Extension A */ + [0x4428, 0x4428], /* CJK Ideograph Extension A */ + [0x4429, 0x4429], /* CJK Ideograph Extension A */ + [0x442a, 0x442a], /* CJK Ideograph Extension A */ + [0x442b, 0x442b], /* CJK Ideograph Extension A */ + [0x442c, 0x442c], /* CJK Ideograph Extension A */ + [0x442d, 0x442d], /* CJK Ideograph Extension A */ + [0x442e, 0x442e], /* CJK Ideograph Extension A */ + [0x442f, 0x442f], /* CJK Ideograph Extension A */ + [0x4430, 0x4430], /* CJK Ideograph Extension A */ + [0x4431, 0x4431], /* CJK Ideograph Extension A */ + [0x4432, 0x4432], /* CJK Ideograph Extension A */ + [0x4433, 0x4433], /* CJK Ideograph Extension A */ + [0x4434, 0x4434], /* CJK Ideograph Extension A */ + [0x4435, 0x4435], /* CJK Ideograph Extension A */ + [0x4436, 0x4436], /* CJK Ideograph Extension A */ + [0x4437, 0x4437], /* CJK Ideograph Extension A */ + [0x4438, 0x4438], /* CJK Ideograph Extension A */ + [0x4439, 0x4439], /* CJK Ideograph Extension A */ + [0x443a, 0x443a], /* CJK Ideograph Extension A */ + [0x443b, 0x443b], /* CJK Ideograph Extension A */ + [0x443c, 0x443c], /* CJK Ideograph Extension A */ + [0x443d, 0x443d], /* CJK Ideograph Extension A */ + [0x443e, 0x443e], /* CJK Ideograph Extension A */ + [0x443f, 0x443f], /* CJK Ideograph Extension A */ + [0x4440, 0x4440], /* CJK Ideograph Extension A */ + [0x4441, 0x4441], /* CJK Ideograph Extension A */ + [0x4442, 0x4442], /* CJK Ideograph Extension A */ + [0x4443, 0x4443], /* CJK Ideograph Extension A */ + [0x4444, 0x4444], /* CJK Ideograph Extension A */ + [0x4445, 0x4445], /* CJK Ideograph Extension A */ + [0x4446, 0x4446], /* CJK Ideograph Extension A */ + [0x4447, 0x4447], /* CJK Ideograph Extension A */ + [0x4448, 0x4448], /* CJK Ideograph Extension A */ + [0x4449, 0x4449], /* CJK Ideograph Extension A */ + [0x444a, 0x444a], /* CJK Ideograph Extension A */ + [0x444b, 0x444b], /* CJK Ideograph Extension A */ + [0x444c, 0x444c], /* CJK Ideograph Extension A */ + [0x444d, 0x444d], /* CJK Ideograph Extension A */ + [0x444e, 0x444e], /* CJK Ideograph Extension A */ + [0x444f, 0x444f], /* CJK Ideograph Extension A */ + [0x4450, 0x4450], /* CJK Ideograph Extension A */ + [0x4451, 0x4451], /* CJK Ideograph Extension A */ + [0x4452, 0x4452], /* CJK Ideograph Extension A */ + [0x4453, 0x4453], /* CJK Ideograph Extension A */ + [0x4454, 0x4454], /* CJK Ideograph Extension A */ + [0x4455, 0x4455], /* CJK Ideograph Extension A */ + [0x4456, 0x4456], /* CJK Ideograph Extension A */ + [0x4457, 0x4457], /* CJK Ideograph Extension A */ + [0x4458, 0x4458], /* CJK Ideograph Extension A */ + [0x4459, 0x4459], /* CJK Ideograph Extension A */ + [0x445a, 0x445a], /* CJK Ideograph Extension A */ + [0x445b, 0x445b], /* CJK Ideograph Extension A */ + [0x445c, 0x445c], /* CJK Ideograph Extension A */ + [0x445d, 0x445d], /* CJK Ideograph Extension A */ + [0x445e, 0x445e], /* CJK Ideograph Extension A */ + [0x445f, 0x445f], /* CJK Ideograph Extension A */ + [0x4460, 0x4460], /* CJK Ideograph Extension A */ + [0x4461, 0x4461], /* CJK Ideograph Extension A */ + [0x4462, 0x4462], /* CJK Ideograph Extension A */ + [0x4463, 0x4463], /* CJK Ideograph Extension A */ + [0x4464, 0x4464], /* CJK Ideograph Extension A */ + [0x4465, 0x4465], /* CJK Ideograph Extension A */ + [0x4466, 0x4466], /* CJK Ideograph Extension A */ + [0x4467, 0x4467], /* CJK Ideograph Extension A */ + [0x4468, 0x4468], /* CJK Ideograph Extension A */ + [0x4469, 0x4469], /* CJK Ideograph Extension A */ + [0x446a, 0x446a], /* CJK Ideograph Extension A */ + [0x446b, 0x446b], /* CJK Ideograph Extension A */ + [0x446c, 0x446c], /* CJK Ideograph Extension A */ + [0x446d, 0x446d], /* CJK Ideograph Extension A */ + [0x446e, 0x446e], /* CJK Ideograph Extension A */ + [0x446f, 0x446f], /* CJK Ideograph Extension A */ + [0x4470, 0x4470], /* CJK Ideograph Extension A */ + [0x4471, 0x4471], /* CJK Ideograph Extension A */ + [0x4472, 0x4472], /* CJK Ideograph Extension A */ + [0x4473, 0x4473], /* CJK Ideograph Extension A */ + [0x4474, 0x4474], /* CJK Ideograph Extension A */ + [0x4475, 0x4475], /* CJK Ideograph Extension A */ + [0x4476, 0x4476], /* CJK Ideograph Extension A */ + [0x4477, 0x4477], /* CJK Ideograph Extension A */ + [0x4478, 0x4478], /* CJK Ideograph Extension A */ + [0x4479, 0x4479], /* CJK Ideograph Extension A */ + [0x447a, 0x447a], /* CJK Ideograph Extension A */ + [0x447b, 0x447b], /* CJK Ideograph Extension A */ + [0x447c, 0x447c], /* CJK Ideograph Extension A */ + [0x447d, 0x447d], /* CJK Ideograph Extension A */ + [0x447e, 0x447e], /* CJK Ideograph Extension A */ + [0x447f, 0x447f], /* CJK Ideograph Extension A */ + [0x4480, 0x4480], /* CJK Ideograph Extension A */ + [0x4481, 0x4481], /* CJK Ideograph Extension A */ + [0x4482, 0x4482], /* CJK Ideograph Extension A */ + [0x4483, 0x4483], /* CJK Ideograph Extension A */ + [0x4484, 0x4484], /* CJK Ideograph Extension A */ + [0x4485, 0x4485], /* CJK Ideograph Extension A */ + [0x4486, 0x4486], /* CJK Ideograph Extension A */ + [0x4487, 0x4487], /* CJK Ideograph Extension A */ + [0x4488, 0x4488], /* CJK Ideograph Extension A */ + [0x4489, 0x4489], /* CJK Ideograph Extension A */ + [0x448a, 0x448a], /* CJK Ideograph Extension A */ + [0x448b, 0x448b], /* CJK Ideograph Extension A */ + [0x448c, 0x448c], /* CJK Ideograph Extension A */ + [0x448d, 0x448d], /* CJK Ideograph Extension A */ + [0x448e, 0x448e], /* CJK Ideograph Extension A */ + [0x448f, 0x448f], /* CJK Ideograph Extension A */ + [0x4490, 0x4490], /* CJK Ideograph Extension A */ + [0x4491, 0x4491], /* CJK Ideograph Extension A */ + [0x4492, 0x4492], /* CJK Ideograph Extension A */ + [0x4493, 0x4493], /* CJK Ideograph Extension A */ + [0x4494, 0x4494], /* CJK Ideograph Extension A */ + [0x4495, 0x4495], /* CJK Ideograph Extension A */ + [0x4496, 0x4496], /* CJK Ideograph Extension A */ + [0x4497, 0x4497], /* CJK Ideograph Extension A */ + [0x4498, 0x4498], /* CJK Ideograph Extension A */ + [0x4499, 0x4499], /* CJK Ideograph Extension A */ + [0x449a, 0x449a], /* CJK Ideograph Extension A */ + [0x449b, 0x449b], /* CJK Ideograph Extension A */ + [0x449c, 0x449c], /* CJK Ideograph Extension A */ + [0x449d, 0x449d], /* CJK Ideograph Extension A */ + [0x449e, 0x449e], /* CJK Ideograph Extension A */ + [0x449f, 0x449f], /* CJK Ideograph Extension A */ + [0x44a0, 0x44a0], /* CJK Ideograph Extension A */ + [0x44a1, 0x44a1], /* CJK Ideograph Extension A */ + [0x44a2, 0x44a2], /* CJK Ideograph Extension A */ + [0x44a3, 0x44a3], /* CJK Ideograph Extension A */ + [0x44a4, 0x44a4], /* CJK Ideograph Extension A */ + [0x44a5, 0x44a5], /* CJK Ideograph Extension A */ + [0x44a6, 0x44a6], /* CJK Ideograph Extension A */ + [0x44a7, 0x44a7], /* CJK Ideograph Extension A */ + [0x44a8, 0x44a8], /* CJK Ideograph Extension A */ + [0x44a9, 0x44a9], /* CJK Ideograph Extension A */ + [0x44aa, 0x44aa], /* CJK Ideograph Extension A */ + [0x44ab, 0x44ab], /* CJK Ideograph Extension A */ + [0x44ac, 0x44ac], /* CJK Ideograph Extension A */ + [0x44ad, 0x44ad], /* CJK Ideograph Extension A */ + [0x44ae, 0x44ae], /* CJK Ideograph Extension A */ + [0x44af, 0x44af], /* CJK Ideograph Extension A */ + [0x44b0, 0x44b0], /* CJK Ideograph Extension A */ + [0x44b1, 0x44b1], /* CJK Ideograph Extension A */ + [0x44b2, 0x44b2], /* CJK Ideograph Extension A */ + [0x44b3, 0x44b3], /* CJK Ideograph Extension A */ + [0x44b4, 0x44b4], /* CJK Ideograph Extension A */ + [0x44b5, 0x44b5], /* CJK Ideograph Extension A */ + [0x44b6, 0x44b6], /* CJK Ideograph Extension A */ + [0x44b7, 0x44b7], /* CJK Ideograph Extension A */ + [0x44b8, 0x44b8], /* CJK Ideograph Extension A */ + [0x44b9, 0x44b9], /* CJK Ideograph Extension A */ + [0x44ba, 0x44ba], /* CJK Ideograph Extension A */ + [0x44bb, 0x44bb], /* CJK Ideograph Extension A */ + [0x44bc, 0x44bc], /* CJK Ideograph Extension A */ + [0x44bd, 0x44bd], /* CJK Ideograph Extension A */ + [0x44be, 0x44be], /* CJK Ideograph Extension A */ + [0x44bf, 0x44bf], /* CJK Ideograph Extension A */ + [0x44c0, 0x44c0], /* CJK Ideograph Extension A */ + [0x44c1, 0x44c1], /* CJK Ideograph Extension A */ + [0x44c2, 0x44c2], /* CJK Ideograph Extension A */ + [0x44c3, 0x44c3], /* CJK Ideograph Extension A */ + [0x44c4, 0x44c4], /* CJK Ideograph Extension A */ + [0x44c5, 0x44c5], /* CJK Ideograph Extension A */ + [0x44c6, 0x44c6], /* CJK Ideograph Extension A */ + [0x44c7, 0x44c7], /* CJK Ideograph Extension A */ + [0x44c8, 0x44c8], /* CJK Ideograph Extension A */ + [0x44c9, 0x44c9], /* CJK Ideograph Extension A */ + [0x44ca, 0x44ca], /* CJK Ideograph Extension A */ + [0x44cb, 0x44cb], /* CJK Ideograph Extension A */ + [0x44cc, 0x44cc], /* CJK Ideograph Extension A */ + [0x44cd, 0x44cd], /* CJK Ideograph Extension A */ + [0x44ce, 0x44ce], /* CJK Ideograph Extension A */ + [0x44cf, 0x44cf], /* CJK Ideograph Extension A */ + [0x44d0, 0x44d0], /* CJK Ideograph Extension A */ + [0x44d1, 0x44d1], /* CJK Ideograph Extension A */ + [0x44d2, 0x44d2], /* CJK Ideograph Extension A */ + [0x44d3, 0x44d3], /* CJK Ideograph Extension A */ + [0x44d4, 0x44d4], /* CJK Ideograph Extension A */ + [0x44d5, 0x44d5], /* CJK Ideograph Extension A */ + [0x44d6, 0x44d6], /* CJK Ideograph Extension A */ + [0x44d7, 0x44d7], /* CJK Ideograph Extension A */ + [0x44d8, 0x44d8], /* CJK Ideograph Extension A */ + [0x44d9, 0x44d9], /* CJK Ideograph Extension A */ + [0x44da, 0x44da], /* CJK Ideograph Extension A */ + [0x44db, 0x44db], /* CJK Ideograph Extension A */ + [0x44dc, 0x44dc], /* CJK Ideograph Extension A */ + [0x44dd, 0x44dd], /* CJK Ideograph Extension A */ + [0x44de, 0x44de], /* CJK Ideograph Extension A */ + [0x44df, 0x44df], /* CJK Ideograph Extension A */ + [0x44e0, 0x44e0], /* CJK Ideograph Extension A */ + [0x44e1, 0x44e1], /* CJK Ideograph Extension A */ + [0x44e2, 0x44e2], /* CJK Ideograph Extension A */ + [0x44e3, 0x44e3], /* CJK Ideograph Extension A */ + [0x44e4, 0x44e4], /* CJK Ideograph Extension A */ + [0x44e5, 0x44e5], /* CJK Ideograph Extension A */ + [0x44e6, 0x44e6], /* CJK Ideograph Extension A */ + [0x44e7, 0x44e7], /* CJK Ideograph Extension A */ + [0x44e8, 0x44e8], /* CJK Ideograph Extension A */ + [0x44e9, 0x44e9], /* CJK Ideograph Extension A */ + [0x44ea, 0x44ea], /* CJK Ideograph Extension A */ + [0x44eb, 0x44eb], /* CJK Ideograph Extension A */ + [0x44ec, 0x44ec], /* CJK Ideograph Extension A */ + [0x44ed, 0x44ed], /* CJK Ideograph Extension A */ + [0x44ee, 0x44ee], /* CJK Ideograph Extension A */ + [0x44ef, 0x44ef], /* CJK Ideograph Extension A */ + [0x44f0, 0x44f0], /* CJK Ideograph Extension A */ + [0x44f1, 0x44f1], /* CJK Ideograph Extension A */ + [0x44f2, 0x44f2], /* CJK Ideograph Extension A */ + [0x44f3, 0x44f3], /* CJK Ideograph Extension A */ + [0x44f4, 0x44f4], /* CJK Ideograph Extension A */ + [0x44f5, 0x44f5], /* CJK Ideograph Extension A */ + [0x44f6, 0x44f6], /* CJK Ideograph Extension A */ + [0x44f7, 0x44f7], /* CJK Ideograph Extension A */ + [0x44f8, 0x44f8], /* CJK Ideograph Extension A */ + [0x44f9, 0x44f9], /* CJK Ideograph Extension A */ + [0x44fa, 0x44fa], /* CJK Ideograph Extension A */ + [0x44fb, 0x44fb], /* CJK Ideograph Extension A */ + [0x44fc, 0x44fc], /* CJK Ideograph Extension A */ + [0x44fd, 0x44fd], /* CJK Ideograph Extension A */ + [0x44fe, 0x44fe], /* CJK Ideograph Extension A */ + [0x44ff, 0x44ff], /* CJK Ideograph Extension A */ + [0x4500, 0x4500], /* CJK Ideograph Extension A */ + [0x4501, 0x4501], /* CJK Ideograph Extension A */ + [0x4502, 0x4502], /* CJK Ideograph Extension A */ + [0x4503, 0x4503], /* CJK Ideograph Extension A */ + [0x4504, 0x4504], /* CJK Ideograph Extension A */ + [0x4505, 0x4505], /* CJK Ideograph Extension A */ + [0x4506, 0x4506], /* CJK Ideograph Extension A */ + [0x4507, 0x4507], /* CJK Ideograph Extension A */ + [0x4508, 0x4508], /* CJK Ideograph Extension A */ + [0x4509, 0x4509], /* CJK Ideograph Extension A */ + [0x450a, 0x450a], /* CJK Ideograph Extension A */ + [0x450b, 0x450b], /* CJK Ideograph Extension A */ + [0x450c, 0x450c], /* CJK Ideograph Extension A */ + [0x450d, 0x450d], /* CJK Ideograph Extension A */ + [0x450e, 0x450e], /* CJK Ideograph Extension A */ + [0x450f, 0x450f], /* CJK Ideograph Extension A */ + [0x4510, 0x4510], /* CJK Ideograph Extension A */ + [0x4511, 0x4511], /* CJK Ideograph Extension A */ + [0x4512, 0x4512], /* CJK Ideograph Extension A */ + [0x4513, 0x4513], /* CJK Ideograph Extension A */ + [0x4514, 0x4514], /* CJK Ideograph Extension A */ + [0x4515, 0x4515], /* CJK Ideograph Extension A */ + [0x4516, 0x4516], /* CJK Ideograph Extension A */ + [0x4517, 0x4517], /* CJK Ideograph Extension A */ + [0x4518, 0x4518], /* CJK Ideograph Extension A */ + [0x4519, 0x4519], /* CJK Ideograph Extension A */ + [0x451a, 0x451a], /* CJK Ideograph Extension A */ + [0x451b, 0x451b], /* CJK Ideograph Extension A */ + [0x451c, 0x451c], /* CJK Ideograph Extension A */ + [0x451d, 0x451d], /* CJK Ideograph Extension A */ + [0x451e, 0x451e], /* CJK Ideograph Extension A */ + [0x451f, 0x451f], /* CJK Ideograph Extension A */ + [0x4520, 0x4520], /* CJK Ideograph Extension A */ + [0x4521, 0x4521], /* CJK Ideograph Extension A */ + [0x4522, 0x4522], /* CJK Ideograph Extension A */ + [0x4523, 0x4523], /* CJK Ideograph Extension A */ + [0x4524, 0x4524], /* CJK Ideograph Extension A */ + [0x4525, 0x4525], /* CJK Ideograph Extension A */ + [0x4526, 0x4526], /* CJK Ideograph Extension A */ + [0x4527, 0x4527], /* CJK Ideograph Extension A */ + [0x4528, 0x4528], /* CJK Ideograph Extension A */ + [0x4529, 0x4529], /* CJK Ideograph Extension A */ + [0x452a, 0x452a], /* CJK Ideograph Extension A */ + [0x452b, 0x452b], /* CJK Ideograph Extension A */ + [0x452c, 0x452c], /* CJK Ideograph Extension A */ + [0x452d, 0x452d], /* CJK Ideograph Extension A */ + [0x452e, 0x452e], /* CJK Ideograph Extension A */ + [0x452f, 0x452f], /* CJK Ideograph Extension A */ + [0x4530, 0x4530], /* CJK Ideograph Extension A */ + [0x4531, 0x4531], /* CJK Ideograph Extension A */ + [0x4532, 0x4532], /* CJK Ideograph Extension A */ + [0x4533, 0x4533], /* CJK Ideograph Extension A */ + [0x4534, 0x4534], /* CJK Ideograph Extension A */ + [0x4535, 0x4535], /* CJK Ideograph Extension A */ + [0x4536, 0x4536], /* CJK Ideograph Extension A */ + [0x4537, 0x4537], /* CJK Ideograph Extension A */ + [0x4538, 0x4538], /* CJK Ideograph Extension A */ + [0x4539, 0x4539], /* CJK Ideograph Extension A */ + [0x453a, 0x453a], /* CJK Ideograph Extension A */ + [0x453b, 0x453b], /* CJK Ideograph Extension A */ + [0x453c, 0x453c], /* CJK Ideograph Extension A */ + [0x453d, 0x453d], /* CJK Ideograph Extension A */ + [0x453e, 0x453e], /* CJK Ideograph Extension A */ + [0x453f, 0x453f], /* CJK Ideograph Extension A */ + [0x4540, 0x4540], /* CJK Ideograph Extension A */ + [0x4541, 0x4541], /* CJK Ideograph Extension A */ + [0x4542, 0x4542], /* CJK Ideograph Extension A */ + [0x4543, 0x4543], /* CJK Ideograph Extension A */ + [0x4544, 0x4544], /* CJK Ideograph Extension A */ + [0x4545, 0x4545], /* CJK Ideograph Extension A */ + [0x4546, 0x4546], /* CJK Ideograph Extension A */ + [0x4547, 0x4547], /* CJK Ideograph Extension A */ + [0x4548, 0x4548], /* CJK Ideograph Extension A */ + [0x4549, 0x4549], /* CJK Ideograph Extension A */ + [0x454a, 0x454a], /* CJK Ideograph Extension A */ + [0x454b, 0x454b], /* CJK Ideograph Extension A */ + [0x454c, 0x454c], /* CJK Ideograph Extension A */ + [0x454d, 0x454d], /* CJK Ideograph Extension A */ + [0x454e, 0x454e], /* CJK Ideograph Extension A */ + [0x454f, 0x454f], /* CJK Ideograph Extension A */ + [0x4550, 0x4550], /* CJK Ideograph Extension A */ + [0x4551, 0x4551], /* CJK Ideograph Extension A */ + [0x4552, 0x4552], /* CJK Ideograph Extension A */ + [0x4553, 0x4553], /* CJK Ideograph Extension A */ + [0x4554, 0x4554], /* CJK Ideograph Extension A */ + [0x4555, 0x4555], /* CJK Ideograph Extension A */ + [0x4556, 0x4556], /* CJK Ideograph Extension A */ + [0x4557, 0x4557], /* CJK Ideograph Extension A */ + [0x4558, 0x4558], /* CJK Ideograph Extension A */ + [0x4559, 0x4559], /* CJK Ideograph Extension A */ + [0x455a, 0x455a], /* CJK Ideograph Extension A */ + [0x455b, 0x455b], /* CJK Ideograph Extension A */ + [0x455c, 0x455c], /* CJK Ideograph Extension A */ + [0x455d, 0x455d], /* CJK Ideograph Extension A */ + [0x455e, 0x455e], /* CJK Ideograph Extension A */ + [0x455f, 0x455f], /* CJK Ideograph Extension A */ + [0x4560, 0x4560], /* CJK Ideograph Extension A */ + [0x4561, 0x4561], /* CJK Ideograph Extension A */ + [0x4562, 0x4562], /* CJK Ideograph Extension A */ + [0x4563, 0x4563], /* CJK Ideograph Extension A */ + [0x4564, 0x4564], /* CJK Ideograph Extension A */ + [0x4565, 0x4565], /* CJK Ideograph Extension A */ + [0x4566, 0x4566], /* CJK Ideograph Extension A */ + [0x4567, 0x4567], /* CJK Ideograph Extension A */ + [0x4568, 0x4568], /* CJK Ideograph Extension A */ + [0x4569, 0x4569], /* CJK Ideograph Extension A */ + [0x456a, 0x456a], /* CJK Ideograph Extension A */ + [0x456b, 0x456b], /* CJK Ideograph Extension A */ + [0x456c, 0x456c], /* CJK Ideograph Extension A */ + [0x456d, 0x456d], /* CJK Ideograph Extension A */ + [0x456e, 0x456e], /* CJK Ideograph Extension A */ + [0x456f, 0x456f], /* CJK Ideograph Extension A */ + [0x4570, 0x4570], /* CJK Ideograph Extension A */ + [0x4571, 0x4571], /* CJK Ideograph Extension A */ + [0x4572, 0x4572], /* CJK Ideograph Extension A */ + [0x4573, 0x4573], /* CJK Ideograph Extension A */ + [0x4574, 0x4574], /* CJK Ideograph Extension A */ + [0x4575, 0x4575], /* CJK Ideograph Extension A */ + [0x4576, 0x4576], /* CJK Ideograph Extension A */ + [0x4577, 0x4577], /* CJK Ideograph Extension A */ + [0x4578, 0x4578], /* CJK Ideograph Extension A */ + [0x4579, 0x4579], /* CJK Ideograph Extension A */ + [0x457a, 0x457a], /* CJK Ideograph Extension A */ + [0x457b, 0x457b], /* CJK Ideograph Extension A */ + [0x457c, 0x457c], /* CJK Ideograph Extension A */ + [0x457d, 0x457d], /* CJK Ideograph Extension A */ + [0x457e, 0x457e], /* CJK Ideograph Extension A */ + [0x457f, 0x457f], /* CJK Ideograph Extension A */ + [0x4580, 0x4580], /* CJK Ideograph Extension A */ + [0x4581, 0x4581], /* CJK Ideograph Extension A */ + [0x4582, 0x4582], /* CJK Ideograph Extension A */ + [0x4583, 0x4583], /* CJK Ideograph Extension A */ + [0x4584, 0x4584], /* CJK Ideograph Extension A */ + [0x4585, 0x4585], /* CJK Ideograph Extension A */ + [0x4586, 0x4586], /* CJK Ideograph Extension A */ + [0x4587, 0x4587], /* CJK Ideograph Extension A */ + [0x4588, 0x4588], /* CJK Ideograph Extension A */ + [0x4589, 0x4589], /* CJK Ideograph Extension A */ + [0x458a, 0x458a], /* CJK Ideograph Extension A */ + [0x458b, 0x458b], /* CJK Ideograph Extension A */ + [0x458c, 0x458c], /* CJK Ideograph Extension A */ + [0x458d, 0x458d], /* CJK Ideograph Extension A */ + [0x458e, 0x458e], /* CJK Ideograph Extension A */ + [0x458f, 0x458f], /* CJK Ideograph Extension A */ + [0x4590, 0x4590], /* CJK Ideograph Extension A */ + [0x4591, 0x4591], /* CJK Ideograph Extension A */ + [0x4592, 0x4592], /* CJK Ideograph Extension A */ + [0x4593, 0x4593], /* CJK Ideograph Extension A */ + [0x4594, 0x4594], /* CJK Ideograph Extension A */ + [0x4595, 0x4595], /* CJK Ideograph Extension A */ + [0x4596, 0x4596], /* CJK Ideograph Extension A */ + [0x4597, 0x4597], /* CJK Ideograph Extension A */ + [0x4598, 0x4598], /* CJK Ideograph Extension A */ + [0x4599, 0x4599], /* CJK Ideograph Extension A */ + [0x459a, 0x459a], /* CJK Ideograph Extension A */ + [0x459b, 0x459b], /* CJK Ideograph Extension A */ + [0x459c, 0x459c], /* CJK Ideograph Extension A */ + [0x459d, 0x459d], /* CJK Ideograph Extension A */ + [0x459e, 0x459e], /* CJK Ideograph Extension A */ + [0x459f, 0x459f], /* CJK Ideograph Extension A */ + [0x45a0, 0x45a0], /* CJK Ideograph Extension A */ + [0x45a1, 0x45a1], /* CJK Ideograph Extension A */ + [0x45a2, 0x45a2], /* CJK Ideograph Extension A */ + [0x45a3, 0x45a3], /* CJK Ideograph Extension A */ + [0x45a4, 0x45a4], /* CJK Ideograph Extension A */ + [0x45a5, 0x45a5], /* CJK Ideograph Extension A */ + [0x45a6, 0x45a6], /* CJK Ideograph Extension A */ + [0x45a7, 0x45a7], /* CJK Ideograph Extension A */ + [0x45a8, 0x45a8], /* CJK Ideograph Extension A */ + [0x45a9, 0x45a9], /* CJK Ideograph Extension A */ + [0x45aa, 0x45aa], /* CJK Ideograph Extension A */ + [0x45ab, 0x45ab], /* CJK Ideograph Extension A */ + [0x45ac, 0x45ac], /* CJK Ideograph Extension A */ + [0x45ad, 0x45ad], /* CJK Ideograph Extension A */ + [0x45ae, 0x45ae], /* CJK Ideograph Extension A */ + [0x45af, 0x45af], /* CJK Ideograph Extension A */ + [0x45b0, 0x45b0], /* CJK Ideograph Extension A */ + [0x45b1, 0x45b1], /* CJK Ideograph Extension A */ + [0x45b2, 0x45b2], /* CJK Ideograph Extension A */ + [0x45b3, 0x45b3], /* CJK Ideograph Extension A */ + [0x45b4, 0x45b4], /* CJK Ideograph Extension A */ + [0x45b5, 0x45b5], /* CJK Ideograph Extension A */ + [0x45b6, 0x45b6], /* CJK Ideograph Extension A */ + [0x45b7, 0x45b7], /* CJK Ideograph Extension A */ + [0x45b8, 0x45b8], /* CJK Ideograph Extension A */ + [0x45b9, 0x45b9], /* CJK Ideograph Extension A */ + [0x45ba, 0x45ba], /* CJK Ideograph Extension A */ + [0x45bb, 0x45bb], /* CJK Ideograph Extension A */ + [0x45bc, 0x45bc], /* CJK Ideograph Extension A */ + [0x45bd, 0x45bd], /* CJK Ideograph Extension A */ + [0x45be, 0x45be], /* CJK Ideograph Extension A */ + [0x45bf, 0x45bf], /* CJK Ideograph Extension A */ + [0x45c0, 0x45c0], /* CJK Ideograph Extension A */ + [0x45c1, 0x45c1], /* CJK Ideograph Extension A */ + [0x45c2, 0x45c2], /* CJK Ideograph Extension A */ + [0x45c3, 0x45c3], /* CJK Ideograph Extension A */ + [0x45c4, 0x45c4], /* CJK Ideograph Extension A */ + [0x45c5, 0x45c5], /* CJK Ideograph Extension A */ + [0x45c6, 0x45c6], /* CJK Ideograph Extension A */ + [0x45c7, 0x45c7], /* CJK Ideograph Extension A */ + [0x45c8, 0x45c8], /* CJK Ideograph Extension A */ + [0x45c9, 0x45c9], /* CJK Ideograph Extension A */ + [0x45ca, 0x45ca], /* CJK Ideograph Extension A */ + [0x45cb, 0x45cb], /* CJK Ideograph Extension A */ + [0x45cc, 0x45cc], /* CJK Ideograph Extension A */ + [0x45cd, 0x45cd], /* CJK Ideograph Extension A */ + [0x45ce, 0x45ce], /* CJK Ideograph Extension A */ + [0x45cf, 0x45cf], /* CJK Ideograph Extension A */ + [0x45d0, 0x45d0], /* CJK Ideograph Extension A */ + [0x45d1, 0x45d1], /* CJK Ideograph Extension A */ + [0x45d2, 0x45d2], /* CJK Ideograph Extension A */ + [0x45d3, 0x45d3], /* CJK Ideograph Extension A */ + [0x45d4, 0x45d4], /* CJK Ideograph Extension A */ + [0x45d5, 0x45d5], /* CJK Ideograph Extension A */ + [0x45d6, 0x45d6], /* CJK Ideograph Extension A */ + [0x45d7, 0x45d7], /* CJK Ideograph Extension A */ + [0x45d8, 0x45d8], /* CJK Ideograph Extension A */ + [0x45d9, 0x45d9], /* CJK Ideograph Extension A */ + [0x45da, 0x45da], /* CJK Ideograph Extension A */ + [0x45db, 0x45db], /* CJK Ideograph Extension A */ + [0x45dc, 0x45dc], /* CJK Ideograph Extension A */ + [0x45dd, 0x45dd], /* CJK Ideograph Extension A */ + [0x45de, 0x45de], /* CJK Ideograph Extension A */ + [0x45df, 0x45df], /* CJK Ideograph Extension A */ + [0x45e0, 0x45e0], /* CJK Ideograph Extension A */ + [0x45e1, 0x45e1], /* CJK Ideograph Extension A */ + [0x45e2, 0x45e2], /* CJK Ideograph Extension A */ + [0x45e3, 0x45e3], /* CJK Ideograph Extension A */ + [0x45e4, 0x45e4], /* CJK Ideograph Extension A */ + [0x45e5, 0x45e5], /* CJK Ideograph Extension A */ + [0x45e6, 0x45e6], /* CJK Ideograph Extension A */ + [0x45e7, 0x45e7], /* CJK Ideograph Extension A */ + [0x45e8, 0x45e8], /* CJK Ideograph Extension A */ + [0x45e9, 0x45e9], /* CJK Ideograph Extension A */ + [0x45ea, 0x45ea], /* CJK Ideograph Extension A */ + [0x45eb, 0x45eb], /* CJK Ideograph Extension A */ + [0x45ec, 0x45ec], /* CJK Ideograph Extension A */ + [0x45ed, 0x45ed], /* CJK Ideograph Extension A */ + [0x45ee, 0x45ee], /* CJK Ideograph Extension A */ + [0x45ef, 0x45ef], /* CJK Ideograph Extension A */ + [0x45f0, 0x45f0], /* CJK Ideograph Extension A */ + [0x45f1, 0x45f1], /* CJK Ideograph Extension A */ + [0x45f2, 0x45f2], /* CJK Ideograph Extension A */ + [0x45f3, 0x45f3], /* CJK Ideograph Extension A */ + [0x45f4, 0x45f4], /* CJK Ideograph Extension A */ + [0x45f5, 0x45f5], /* CJK Ideograph Extension A */ + [0x45f6, 0x45f6], /* CJK Ideograph Extension A */ + [0x45f7, 0x45f7], /* CJK Ideograph Extension A */ + [0x45f8, 0x45f8], /* CJK Ideograph Extension A */ + [0x45f9, 0x45f9], /* CJK Ideograph Extension A */ + [0x45fa, 0x45fa], /* CJK Ideograph Extension A */ + [0x45fb, 0x45fb], /* CJK Ideograph Extension A */ + [0x45fc, 0x45fc], /* CJK Ideograph Extension A */ + [0x45fd, 0x45fd], /* CJK Ideograph Extension A */ + [0x45fe, 0x45fe], /* CJK Ideograph Extension A */ + [0x45ff, 0x45ff], /* CJK Ideograph Extension A */ + [0x4600, 0x4600], /* CJK Ideograph Extension A */ + [0x4601, 0x4601], /* CJK Ideograph Extension A */ + [0x4602, 0x4602], /* CJK Ideograph Extension A */ + [0x4603, 0x4603], /* CJK Ideograph Extension A */ + [0x4604, 0x4604], /* CJK Ideograph Extension A */ + [0x4605, 0x4605], /* CJK Ideograph Extension A */ + [0x4606, 0x4606], /* CJK Ideograph Extension A */ + [0x4607, 0x4607], /* CJK Ideograph Extension A */ + [0x4608, 0x4608], /* CJK Ideograph Extension A */ + [0x4609, 0x4609], /* CJK Ideograph Extension A */ + [0x460a, 0x460a], /* CJK Ideograph Extension A */ + [0x460b, 0x460b], /* CJK Ideograph Extension A */ + [0x460c, 0x460c], /* CJK Ideograph Extension A */ + [0x460d, 0x460d], /* CJK Ideograph Extension A */ + [0x460e, 0x460e], /* CJK Ideograph Extension A */ + [0x460f, 0x460f], /* CJK Ideograph Extension A */ + [0x4610, 0x4610], /* CJK Ideograph Extension A */ + [0x4611, 0x4611], /* CJK Ideograph Extension A */ + [0x4612, 0x4612], /* CJK Ideograph Extension A */ + [0x4613, 0x4613], /* CJK Ideograph Extension A */ + [0x4614, 0x4614], /* CJK Ideograph Extension A */ + [0x4615, 0x4615], /* CJK Ideograph Extension A */ + [0x4616, 0x4616], /* CJK Ideograph Extension A */ + [0x4617, 0x4617], /* CJK Ideograph Extension A */ + [0x4618, 0x4618], /* CJK Ideograph Extension A */ + [0x4619, 0x4619], /* CJK Ideograph Extension A */ + [0x461a, 0x461a], /* CJK Ideograph Extension A */ + [0x461b, 0x461b], /* CJK Ideograph Extension A */ + [0x461c, 0x461c], /* CJK Ideograph Extension A */ + [0x461d, 0x461d], /* CJK Ideograph Extension A */ + [0x461e, 0x461e], /* CJK Ideograph Extension A */ + [0x461f, 0x461f], /* CJK Ideograph Extension A */ + [0x4620, 0x4620], /* CJK Ideograph Extension A */ + [0x4621, 0x4621], /* CJK Ideograph Extension A */ + [0x4622, 0x4622], /* CJK Ideograph Extension A */ + [0x4623, 0x4623], /* CJK Ideograph Extension A */ + [0x4624, 0x4624], /* CJK Ideograph Extension A */ + [0x4625, 0x4625], /* CJK Ideograph Extension A */ + [0x4626, 0x4626], /* CJK Ideograph Extension A */ + [0x4627, 0x4627], /* CJK Ideograph Extension A */ + [0x4628, 0x4628], /* CJK Ideograph Extension A */ + [0x4629, 0x4629], /* CJK Ideograph Extension A */ + [0x462a, 0x462a], /* CJK Ideograph Extension A */ + [0x462b, 0x462b], /* CJK Ideograph Extension A */ + [0x462c, 0x462c], /* CJK Ideograph Extension A */ + [0x462d, 0x462d], /* CJK Ideograph Extension A */ + [0x462e, 0x462e], /* CJK Ideograph Extension A */ + [0x462f, 0x462f], /* CJK Ideograph Extension A */ + [0x4630, 0x4630], /* CJK Ideograph Extension A */ + [0x4631, 0x4631], /* CJK Ideograph Extension A */ + [0x4632, 0x4632], /* CJK Ideograph Extension A */ + [0x4633, 0x4633], /* CJK Ideograph Extension A */ + [0x4634, 0x4634], /* CJK Ideograph Extension A */ + [0x4635, 0x4635], /* CJK Ideograph Extension A */ + [0x4636, 0x4636], /* CJK Ideograph Extension A */ + [0x4637, 0x4637], /* CJK Ideograph Extension A */ + [0x4638, 0x4638], /* CJK Ideograph Extension A */ + [0x4639, 0x4639], /* CJK Ideograph Extension A */ + [0x463a, 0x463a], /* CJK Ideograph Extension A */ + [0x463b, 0x463b], /* CJK Ideograph Extension A */ + [0x463c, 0x463c], /* CJK Ideograph Extension A */ + [0x463d, 0x463d], /* CJK Ideograph Extension A */ + [0x463e, 0x463e], /* CJK Ideograph Extension A */ + [0x463f, 0x463f], /* CJK Ideograph Extension A */ + [0x4640, 0x4640], /* CJK Ideograph Extension A */ + [0x4641, 0x4641], /* CJK Ideograph Extension A */ + [0x4642, 0x4642], /* CJK Ideograph Extension A */ + [0x4643, 0x4643], /* CJK Ideograph Extension A */ + [0x4644, 0x4644], /* CJK Ideograph Extension A */ + [0x4645, 0x4645], /* CJK Ideograph Extension A */ + [0x4646, 0x4646], /* CJK Ideograph Extension A */ + [0x4647, 0x4647], /* CJK Ideograph Extension A */ + [0x4648, 0x4648], /* CJK Ideograph Extension A */ + [0x4649, 0x4649], /* CJK Ideograph Extension A */ + [0x464a, 0x464a], /* CJK Ideograph Extension A */ + [0x464b, 0x464b], /* CJK Ideograph Extension A */ + [0x464c, 0x464c], /* CJK Ideograph Extension A */ + [0x464d, 0x464d], /* CJK Ideograph Extension A */ + [0x464e, 0x464e], /* CJK Ideograph Extension A */ + [0x464f, 0x464f], /* CJK Ideograph Extension A */ + [0x4650, 0x4650], /* CJK Ideograph Extension A */ + [0x4651, 0x4651], /* CJK Ideograph Extension A */ + [0x4652, 0x4652], /* CJK Ideograph Extension A */ + [0x4653, 0x4653], /* CJK Ideograph Extension A */ + [0x4654, 0x4654], /* CJK Ideograph Extension A */ + [0x4655, 0x4655], /* CJK Ideograph Extension A */ + [0x4656, 0x4656], /* CJK Ideograph Extension A */ + [0x4657, 0x4657], /* CJK Ideograph Extension A */ + [0x4658, 0x4658], /* CJK Ideograph Extension A */ + [0x4659, 0x4659], /* CJK Ideograph Extension A */ + [0x465a, 0x465a], /* CJK Ideograph Extension A */ + [0x465b, 0x465b], /* CJK Ideograph Extension A */ + [0x465c, 0x465c], /* CJK Ideograph Extension A */ + [0x465d, 0x465d], /* CJK Ideograph Extension A */ + [0x465e, 0x465e], /* CJK Ideograph Extension A */ + [0x465f, 0x465f], /* CJK Ideograph Extension A */ + [0x4660, 0x4660], /* CJK Ideograph Extension A */ + [0x4661, 0x4661], /* CJK Ideograph Extension A */ + [0x4662, 0x4662], /* CJK Ideograph Extension A */ + [0x4663, 0x4663], /* CJK Ideograph Extension A */ + [0x4664, 0x4664], /* CJK Ideograph Extension A */ + [0x4665, 0x4665], /* CJK Ideograph Extension A */ + [0x4666, 0x4666], /* CJK Ideograph Extension A */ + [0x4667, 0x4667], /* CJK Ideograph Extension A */ + [0x4668, 0x4668], /* CJK Ideograph Extension A */ + [0x4669, 0x4669], /* CJK Ideograph Extension A */ + [0x466a, 0x466a], /* CJK Ideograph Extension A */ + [0x466b, 0x466b], /* CJK Ideograph Extension A */ + [0x466c, 0x466c], /* CJK Ideograph Extension A */ + [0x466d, 0x466d], /* CJK Ideograph Extension A */ + [0x466e, 0x466e], /* CJK Ideograph Extension A */ + [0x466f, 0x466f], /* CJK Ideograph Extension A */ + [0x4670, 0x4670], /* CJK Ideograph Extension A */ + [0x4671, 0x4671], /* CJK Ideograph Extension A */ + [0x4672, 0x4672], /* CJK Ideograph Extension A */ + [0x4673, 0x4673], /* CJK Ideograph Extension A */ + [0x4674, 0x4674], /* CJK Ideograph Extension A */ + [0x4675, 0x4675], /* CJK Ideograph Extension A */ + [0x4676, 0x4676], /* CJK Ideograph Extension A */ + [0x4677, 0x4677], /* CJK Ideograph Extension A */ + [0x4678, 0x4678], /* CJK Ideograph Extension A */ + [0x4679, 0x4679], /* CJK Ideograph Extension A */ + [0x467a, 0x467a], /* CJK Ideograph Extension A */ + [0x467b, 0x467b], /* CJK Ideograph Extension A */ + [0x467c, 0x467c], /* CJK Ideograph Extension A */ + [0x467d, 0x467d], /* CJK Ideograph Extension A */ + [0x467e, 0x467e], /* CJK Ideograph Extension A */ + [0x467f, 0x467f], /* CJK Ideograph Extension A */ + [0x4680, 0x4680], /* CJK Ideograph Extension A */ + [0x4681, 0x4681], /* CJK Ideograph Extension A */ + [0x4682, 0x4682], /* CJK Ideograph Extension A */ + [0x4683, 0x4683], /* CJK Ideograph Extension A */ + [0x4684, 0x4684], /* CJK Ideograph Extension A */ + [0x4685, 0x4685], /* CJK Ideograph Extension A */ + [0x4686, 0x4686], /* CJK Ideograph Extension A */ + [0x4687, 0x4687], /* CJK Ideograph Extension A */ + [0x4688, 0x4688], /* CJK Ideograph Extension A */ + [0x4689, 0x4689], /* CJK Ideograph Extension A */ + [0x468a, 0x468a], /* CJK Ideograph Extension A */ + [0x468b, 0x468b], /* CJK Ideograph Extension A */ + [0x468c, 0x468c], /* CJK Ideograph Extension A */ + [0x468d, 0x468d], /* CJK Ideograph Extension A */ + [0x468e, 0x468e], /* CJK Ideograph Extension A */ + [0x468f, 0x468f], /* CJK Ideograph Extension A */ + [0x4690, 0x4690], /* CJK Ideograph Extension A */ + [0x4691, 0x4691], /* CJK Ideograph Extension A */ + [0x4692, 0x4692], /* CJK Ideograph Extension A */ + [0x4693, 0x4693], /* CJK Ideograph Extension A */ + [0x4694, 0x4694], /* CJK Ideograph Extension A */ + [0x4695, 0x4695], /* CJK Ideograph Extension A */ + [0x4696, 0x4696], /* CJK Ideograph Extension A */ + [0x4697, 0x4697], /* CJK Ideograph Extension A */ + [0x4698, 0x4698], /* CJK Ideograph Extension A */ + [0x4699, 0x4699], /* CJK Ideograph Extension A */ + [0x469a, 0x469a], /* CJK Ideograph Extension A */ + [0x469b, 0x469b], /* CJK Ideograph Extension A */ + [0x469c, 0x469c], /* CJK Ideograph Extension A */ + [0x469d, 0x469d], /* CJK Ideograph Extension A */ + [0x469e, 0x469e], /* CJK Ideograph Extension A */ + [0x469f, 0x469f], /* CJK Ideograph Extension A */ + [0x46a0, 0x46a0], /* CJK Ideograph Extension A */ + [0x46a1, 0x46a1], /* CJK Ideograph Extension A */ + [0x46a2, 0x46a2], /* CJK Ideograph Extension A */ + [0x46a3, 0x46a3], /* CJK Ideograph Extension A */ + [0x46a4, 0x46a4], /* CJK Ideograph Extension A */ + [0x46a5, 0x46a5], /* CJK Ideograph Extension A */ + [0x46a6, 0x46a6], /* CJK Ideograph Extension A */ + [0x46a7, 0x46a7], /* CJK Ideograph Extension A */ + [0x46a8, 0x46a8], /* CJK Ideograph Extension A */ + [0x46a9, 0x46a9], /* CJK Ideograph Extension A */ + [0x46aa, 0x46aa], /* CJK Ideograph Extension A */ + [0x46ab, 0x46ab], /* CJK Ideograph Extension A */ + [0x46ac, 0x46ac], /* CJK Ideograph Extension A */ + [0x46ad, 0x46ad], /* CJK Ideograph Extension A */ + [0x46ae, 0x46ae], /* CJK Ideograph Extension A */ + [0x46af, 0x46af], /* CJK Ideograph Extension A */ + [0x46b0, 0x46b0], /* CJK Ideograph Extension A */ + [0x46b1, 0x46b1], /* CJK Ideograph Extension A */ + [0x46b2, 0x46b2], /* CJK Ideograph Extension A */ + [0x46b3, 0x46b3], /* CJK Ideograph Extension A */ + [0x46b4, 0x46b4], /* CJK Ideograph Extension A */ + [0x46b5, 0x46b5], /* CJK Ideograph Extension A */ + [0x46b6, 0x46b6], /* CJK Ideograph Extension A */ + [0x46b7, 0x46b7], /* CJK Ideograph Extension A */ + [0x46b8, 0x46b8], /* CJK Ideograph Extension A */ + [0x46b9, 0x46b9], /* CJK Ideograph Extension A */ + [0x46ba, 0x46ba], /* CJK Ideograph Extension A */ + [0x46bb, 0x46bb], /* CJK Ideograph Extension A */ + [0x46bc, 0x46bc], /* CJK Ideograph Extension A */ + [0x46bd, 0x46bd], /* CJK Ideograph Extension A */ + [0x46be, 0x46be], /* CJK Ideograph Extension A */ + [0x46bf, 0x46bf], /* CJK Ideograph Extension A */ + [0x46c0, 0x46c0], /* CJK Ideograph Extension A */ + [0x46c1, 0x46c1], /* CJK Ideograph Extension A */ + [0x46c2, 0x46c2], /* CJK Ideograph Extension A */ + [0x46c3, 0x46c3], /* CJK Ideograph Extension A */ + [0x46c4, 0x46c4], /* CJK Ideograph Extension A */ + [0x46c5, 0x46c5], /* CJK Ideograph Extension A */ + [0x46c6, 0x46c6], /* CJK Ideograph Extension A */ + [0x46c7, 0x46c7], /* CJK Ideograph Extension A */ + [0x46c8, 0x46c8], /* CJK Ideograph Extension A */ + [0x46c9, 0x46c9], /* CJK Ideograph Extension A */ + [0x46ca, 0x46ca], /* CJK Ideograph Extension A */ + [0x46cb, 0x46cb], /* CJK Ideograph Extension A */ + [0x46cc, 0x46cc], /* CJK Ideograph Extension A */ + [0x46cd, 0x46cd], /* CJK Ideograph Extension A */ + [0x46ce, 0x46ce], /* CJK Ideograph Extension A */ + [0x46cf, 0x46cf], /* CJK Ideograph Extension A */ + [0x46d0, 0x46d0], /* CJK Ideograph Extension A */ + [0x46d1, 0x46d1], /* CJK Ideograph Extension A */ + [0x46d2, 0x46d2], /* CJK Ideograph Extension A */ + [0x46d3, 0x46d3], /* CJK Ideograph Extension A */ + [0x46d4, 0x46d4], /* CJK Ideograph Extension A */ + [0x46d5, 0x46d5], /* CJK Ideograph Extension A */ + [0x46d6, 0x46d6], /* CJK Ideograph Extension A */ + [0x46d7, 0x46d7], /* CJK Ideograph Extension A */ + [0x46d8, 0x46d8], /* CJK Ideograph Extension A */ + [0x46d9, 0x46d9], /* CJK Ideograph Extension A */ + [0x46da, 0x46da], /* CJK Ideograph Extension A */ + [0x46db, 0x46db], /* CJK Ideograph Extension A */ + [0x46dc, 0x46dc], /* CJK Ideograph Extension A */ + [0x46dd, 0x46dd], /* CJK Ideograph Extension A */ + [0x46de, 0x46de], /* CJK Ideograph Extension A */ + [0x46df, 0x46df], /* CJK Ideograph Extension A */ + [0x46e0, 0x46e0], /* CJK Ideograph Extension A */ + [0x46e1, 0x46e1], /* CJK Ideograph Extension A */ + [0x46e2, 0x46e2], /* CJK Ideograph Extension A */ + [0x46e3, 0x46e3], /* CJK Ideograph Extension A */ + [0x46e4, 0x46e4], /* CJK Ideograph Extension A */ + [0x46e5, 0x46e5], /* CJK Ideograph Extension A */ + [0x46e6, 0x46e6], /* CJK Ideograph Extension A */ + [0x46e7, 0x46e7], /* CJK Ideograph Extension A */ + [0x46e8, 0x46e8], /* CJK Ideograph Extension A */ + [0x46e9, 0x46e9], /* CJK Ideograph Extension A */ + [0x46ea, 0x46ea], /* CJK Ideograph Extension A */ + [0x46eb, 0x46eb], /* CJK Ideograph Extension A */ + [0x46ec, 0x46ec], /* CJK Ideograph Extension A */ + [0x46ed, 0x46ed], /* CJK Ideograph Extension A */ + [0x46ee, 0x46ee], /* CJK Ideograph Extension A */ + [0x46ef, 0x46ef], /* CJK Ideograph Extension A */ + [0x46f0, 0x46f0], /* CJK Ideograph Extension A */ + [0x46f1, 0x46f1], /* CJK Ideograph Extension A */ + [0x46f2, 0x46f2], /* CJK Ideograph Extension A */ + [0x46f3, 0x46f3], /* CJK Ideograph Extension A */ + [0x46f4, 0x46f4], /* CJK Ideograph Extension A */ + [0x46f5, 0x46f5], /* CJK Ideograph Extension A */ + [0x46f6, 0x46f6], /* CJK Ideograph Extension A */ + [0x46f7, 0x46f7], /* CJK Ideograph Extension A */ + [0x46f8, 0x46f8], /* CJK Ideograph Extension A */ + [0x46f9, 0x46f9], /* CJK Ideograph Extension A */ + [0x46fa, 0x46fa], /* CJK Ideograph Extension A */ + [0x46fb, 0x46fb], /* CJK Ideograph Extension A */ + [0x46fc, 0x46fc], /* CJK Ideograph Extension A */ + [0x46fd, 0x46fd], /* CJK Ideograph Extension A */ + [0x46fe, 0x46fe], /* CJK Ideograph Extension A */ + [0x46ff, 0x46ff], /* CJK Ideograph Extension A */ + [0x4700, 0x4700], /* CJK Ideograph Extension A */ + [0x4701, 0x4701], /* CJK Ideograph Extension A */ + [0x4702, 0x4702], /* CJK Ideograph Extension A */ + [0x4703, 0x4703], /* CJK Ideograph Extension A */ + [0x4704, 0x4704], /* CJK Ideograph Extension A */ + [0x4705, 0x4705], /* CJK Ideograph Extension A */ + [0x4706, 0x4706], /* CJK Ideograph Extension A */ + [0x4707, 0x4707], /* CJK Ideograph Extension A */ + [0x4708, 0x4708], /* CJK Ideograph Extension A */ + [0x4709, 0x4709], /* CJK Ideograph Extension A */ + [0x470a, 0x470a], /* CJK Ideograph Extension A */ + [0x470b, 0x470b], /* CJK Ideograph Extension A */ + [0x470c, 0x470c], /* CJK Ideograph Extension A */ + [0x470d, 0x470d], /* CJK Ideograph Extension A */ + [0x470e, 0x470e], /* CJK Ideograph Extension A */ + [0x470f, 0x470f], /* CJK Ideograph Extension A */ + [0x4710, 0x4710], /* CJK Ideograph Extension A */ + [0x4711, 0x4711], /* CJK Ideograph Extension A */ + [0x4712, 0x4712], /* CJK Ideograph Extension A */ + [0x4713, 0x4713], /* CJK Ideograph Extension A */ + [0x4714, 0x4714], /* CJK Ideograph Extension A */ + [0x4715, 0x4715], /* CJK Ideograph Extension A */ + [0x4716, 0x4716], /* CJK Ideograph Extension A */ + [0x4717, 0x4717], /* CJK Ideograph Extension A */ + [0x4718, 0x4718], /* CJK Ideograph Extension A */ + [0x4719, 0x4719], /* CJK Ideograph Extension A */ + [0x471a, 0x471a], /* CJK Ideograph Extension A */ + [0x471b, 0x471b], /* CJK Ideograph Extension A */ + [0x471c, 0x471c], /* CJK Ideograph Extension A */ + [0x471d, 0x471d], /* CJK Ideograph Extension A */ + [0x471e, 0x471e], /* CJK Ideograph Extension A */ + [0x471f, 0x471f], /* CJK Ideograph Extension A */ + [0x4720, 0x4720], /* CJK Ideograph Extension A */ + [0x4721, 0x4721], /* CJK Ideograph Extension A */ + [0x4722, 0x4722], /* CJK Ideograph Extension A */ + [0x4723, 0x4723], /* CJK Ideograph Extension A */ + [0x4724, 0x4724], /* CJK Ideograph Extension A */ + [0x4725, 0x4725], /* CJK Ideograph Extension A */ + [0x4726, 0x4726], /* CJK Ideograph Extension A */ + [0x4727, 0x4727], /* CJK Ideograph Extension A */ + [0x4728, 0x4728], /* CJK Ideograph Extension A */ + [0x4729, 0x4729], /* CJK Ideograph Extension A */ + [0x472a, 0x472a], /* CJK Ideograph Extension A */ + [0x472b, 0x472b], /* CJK Ideograph Extension A */ + [0x472c, 0x472c], /* CJK Ideograph Extension A */ + [0x472d, 0x472d], /* CJK Ideograph Extension A */ + [0x472e, 0x472e], /* CJK Ideograph Extension A */ + [0x472f, 0x472f], /* CJK Ideograph Extension A */ + [0x4730, 0x4730], /* CJK Ideograph Extension A */ + [0x4731, 0x4731], /* CJK Ideograph Extension A */ + [0x4732, 0x4732], /* CJK Ideograph Extension A */ + [0x4733, 0x4733], /* CJK Ideograph Extension A */ + [0x4734, 0x4734], /* CJK Ideograph Extension A */ + [0x4735, 0x4735], /* CJK Ideograph Extension A */ + [0x4736, 0x4736], /* CJK Ideograph Extension A */ + [0x4737, 0x4737], /* CJK Ideograph Extension A */ + [0x4738, 0x4738], /* CJK Ideograph Extension A */ + [0x4739, 0x4739], /* CJK Ideograph Extension A */ + [0x473a, 0x473a], /* CJK Ideograph Extension A */ + [0x473b, 0x473b], /* CJK Ideograph Extension A */ + [0x473c, 0x473c], /* CJK Ideograph Extension A */ + [0x473d, 0x473d], /* CJK Ideograph Extension A */ + [0x473e, 0x473e], /* CJK Ideograph Extension A */ + [0x473f, 0x473f], /* CJK Ideograph Extension A */ + [0x4740, 0x4740], /* CJK Ideograph Extension A */ + [0x4741, 0x4741], /* CJK Ideograph Extension A */ + [0x4742, 0x4742], /* CJK Ideograph Extension A */ + [0x4743, 0x4743], /* CJK Ideograph Extension A */ + [0x4744, 0x4744], /* CJK Ideograph Extension A */ + [0x4745, 0x4745], /* CJK Ideograph Extension A */ + [0x4746, 0x4746], /* CJK Ideograph Extension A */ + [0x4747, 0x4747], /* CJK Ideograph Extension A */ + [0x4748, 0x4748], /* CJK Ideograph Extension A */ + [0x4749, 0x4749], /* CJK Ideograph Extension A */ + [0x474a, 0x474a], /* CJK Ideograph Extension A */ + [0x474b, 0x474b], /* CJK Ideograph Extension A */ + [0x474c, 0x474c], /* CJK Ideograph Extension A */ + [0x474d, 0x474d], /* CJK Ideograph Extension A */ + [0x474e, 0x474e], /* CJK Ideograph Extension A */ + [0x474f, 0x474f], /* CJK Ideograph Extension A */ + [0x4750, 0x4750], /* CJK Ideograph Extension A */ + [0x4751, 0x4751], /* CJK Ideograph Extension A */ + [0x4752, 0x4752], /* CJK Ideograph Extension A */ + [0x4753, 0x4753], /* CJK Ideograph Extension A */ + [0x4754, 0x4754], /* CJK Ideograph Extension A */ + [0x4755, 0x4755], /* CJK Ideograph Extension A */ + [0x4756, 0x4756], /* CJK Ideograph Extension A */ + [0x4757, 0x4757], /* CJK Ideograph Extension A */ + [0x4758, 0x4758], /* CJK Ideograph Extension A */ + [0x4759, 0x4759], /* CJK Ideograph Extension A */ + [0x475a, 0x475a], /* CJK Ideograph Extension A */ + [0x475b, 0x475b], /* CJK Ideograph Extension A */ + [0x475c, 0x475c], /* CJK Ideograph Extension A */ + [0x475d, 0x475d], /* CJK Ideograph Extension A */ + [0x475e, 0x475e], /* CJK Ideograph Extension A */ + [0x475f, 0x475f], /* CJK Ideograph Extension A */ + [0x4760, 0x4760], /* CJK Ideograph Extension A */ + [0x4761, 0x4761], /* CJK Ideograph Extension A */ + [0x4762, 0x4762], /* CJK Ideograph Extension A */ + [0x4763, 0x4763], /* CJK Ideograph Extension A */ + [0x4764, 0x4764], /* CJK Ideograph Extension A */ + [0x4765, 0x4765], /* CJK Ideograph Extension A */ + [0x4766, 0x4766], /* CJK Ideograph Extension A */ + [0x4767, 0x4767], /* CJK Ideograph Extension A */ + [0x4768, 0x4768], /* CJK Ideograph Extension A */ + [0x4769, 0x4769], /* CJK Ideograph Extension A */ + [0x476a, 0x476a], /* CJK Ideograph Extension A */ + [0x476b, 0x476b], /* CJK Ideograph Extension A */ + [0x476c, 0x476c], /* CJK Ideograph Extension A */ + [0x476d, 0x476d], /* CJK Ideograph Extension A */ + [0x476e, 0x476e], /* CJK Ideograph Extension A */ + [0x476f, 0x476f], /* CJK Ideograph Extension A */ + [0x4770, 0x4770], /* CJK Ideograph Extension A */ + [0x4771, 0x4771], /* CJK Ideograph Extension A */ + [0x4772, 0x4772], /* CJK Ideograph Extension A */ + [0x4773, 0x4773], /* CJK Ideograph Extension A */ + [0x4774, 0x4774], /* CJK Ideograph Extension A */ + [0x4775, 0x4775], /* CJK Ideograph Extension A */ + [0x4776, 0x4776], /* CJK Ideograph Extension A */ + [0x4777, 0x4777], /* CJK Ideograph Extension A */ + [0x4778, 0x4778], /* CJK Ideograph Extension A */ + [0x4779, 0x4779], /* CJK Ideograph Extension A */ + [0x477a, 0x477a], /* CJK Ideograph Extension A */ + [0x477b, 0x477b], /* CJK Ideograph Extension A */ + [0x477c, 0x477c], /* CJK Ideograph Extension A */ + [0x477d, 0x477d], /* CJK Ideograph Extension A */ + [0x477e, 0x477e], /* CJK Ideograph Extension A */ + [0x477f, 0x477f], /* CJK Ideograph Extension A */ + [0x4780, 0x4780], /* CJK Ideograph Extension A */ + [0x4781, 0x4781], /* CJK Ideograph Extension A */ + [0x4782, 0x4782], /* CJK Ideograph Extension A */ + [0x4783, 0x4783], /* CJK Ideograph Extension A */ + [0x4784, 0x4784], /* CJK Ideograph Extension A */ + [0x4785, 0x4785], /* CJK Ideograph Extension A */ + [0x4786, 0x4786], /* CJK Ideograph Extension A */ + [0x4787, 0x4787], /* CJK Ideograph Extension A */ + [0x4788, 0x4788], /* CJK Ideograph Extension A */ + [0x4789, 0x4789], /* CJK Ideograph Extension A */ + [0x478a, 0x478a], /* CJK Ideograph Extension A */ + [0x478b, 0x478b], /* CJK Ideograph Extension A */ + [0x478c, 0x478c], /* CJK Ideograph Extension A */ + [0x478d, 0x478d], /* CJK Ideograph Extension A */ + [0x478e, 0x478e], /* CJK Ideograph Extension A */ + [0x478f, 0x478f], /* CJK Ideograph Extension A */ + [0x4790, 0x4790], /* CJK Ideograph Extension A */ + [0x4791, 0x4791], /* CJK Ideograph Extension A */ + [0x4792, 0x4792], /* CJK Ideograph Extension A */ + [0x4793, 0x4793], /* CJK Ideograph Extension A */ + [0x4794, 0x4794], /* CJK Ideograph Extension A */ + [0x4795, 0x4795], /* CJK Ideograph Extension A */ + [0x4796, 0x4796], /* CJK Ideograph Extension A */ + [0x4797, 0x4797], /* CJK Ideograph Extension A */ + [0x4798, 0x4798], /* CJK Ideograph Extension A */ + [0x4799, 0x4799], /* CJK Ideograph Extension A */ + [0x479a, 0x479a], /* CJK Ideograph Extension A */ + [0x479b, 0x479b], /* CJK Ideograph Extension A */ + [0x479c, 0x479c], /* CJK Ideograph Extension A */ + [0x479d, 0x479d], /* CJK Ideograph Extension A */ + [0x479e, 0x479e], /* CJK Ideograph Extension A */ + [0x479f, 0x479f], /* CJK Ideograph Extension A */ + [0x47a0, 0x47a0], /* CJK Ideograph Extension A */ + [0x47a1, 0x47a1], /* CJK Ideograph Extension A */ + [0x47a2, 0x47a2], /* CJK Ideograph Extension A */ + [0x47a3, 0x47a3], /* CJK Ideograph Extension A */ + [0x47a4, 0x47a4], /* CJK Ideograph Extension A */ + [0x47a5, 0x47a5], /* CJK Ideograph Extension A */ + [0x47a6, 0x47a6], /* CJK Ideograph Extension A */ + [0x47a7, 0x47a7], /* CJK Ideograph Extension A */ + [0x47a8, 0x47a8], /* CJK Ideograph Extension A */ + [0x47a9, 0x47a9], /* CJK Ideograph Extension A */ + [0x47aa, 0x47aa], /* CJK Ideograph Extension A */ + [0x47ab, 0x47ab], /* CJK Ideograph Extension A */ + [0x47ac, 0x47ac], /* CJK Ideograph Extension A */ + [0x47ad, 0x47ad], /* CJK Ideograph Extension A */ + [0x47ae, 0x47ae], /* CJK Ideograph Extension A */ + [0x47af, 0x47af], /* CJK Ideograph Extension A */ + [0x47b0, 0x47b0], /* CJK Ideograph Extension A */ + [0x47b1, 0x47b1], /* CJK Ideograph Extension A */ + [0x47b2, 0x47b2], /* CJK Ideograph Extension A */ + [0x47b3, 0x47b3], /* CJK Ideograph Extension A */ + [0x47b4, 0x47b4], /* CJK Ideograph Extension A */ + [0x47b5, 0x47b5], /* CJK Ideograph Extension A */ + [0x47b6, 0x47b6], /* CJK Ideograph Extension A */ + [0x47b7, 0x47b7], /* CJK Ideograph Extension A */ + [0x47b8, 0x47b8], /* CJK Ideograph Extension A */ + [0x47b9, 0x47b9], /* CJK Ideograph Extension A */ + [0x47ba, 0x47ba], /* CJK Ideograph Extension A */ + [0x47bb, 0x47bb], /* CJK Ideograph Extension A */ + [0x47bc, 0x47bc], /* CJK Ideograph Extension A */ + [0x47bd, 0x47bd], /* CJK Ideograph Extension A */ + [0x47be, 0x47be], /* CJK Ideograph Extension A */ + [0x47bf, 0x47bf], /* CJK Ideograph Extension A */ + [0x47c0, 0x47c0], /* CJK Ideograph Extension A */ + [0x47c1, 0x47c1], /* CJK Ideograph Extension A */ + [0x47c2, 0x47c2], /* CJK Ideograph Extension A */ + [0x47c3, 0x47c3], /* CJK Ideograph Extension A */ + [0x47c4, 0x47c4], /* CJK Ideograph Extension A */ + [0x47c5, 0x47c5], /* CJK Ideograph Extension A */ + [0x47c6, 0x47c6], /* CJK Ideograph Extension A */ + [0x47c7, 0x47c7], /* CJK Ideograph Extension A */ + [0x47c8, 0x47c8], /* CJK Ideograph Extension A */ + [0x47c9, 0x47c9], /* CJK Ideograph Extension A */ + [0x47ca, 0x47ca], /* CJK Ideograph Extension A */ + [0x47cb, 0x47cb], /* CJK Ideograph Extension A */ + [0x47cc, 0x47cc], /* CJK Ideograph Extension A */ + [0x47cd, 0x47cd], /* CJK Ideograph Extension A */ + [0x47ce, 0x47ce], /* CJK Ideograph Extension A */ + [0x47cf, 0x47cf], /* CJK Ideograph Extension A */ + [0x47d0, 0x47d0], /* CJK Ideograph Extension A */ + [0x47d1, 0x47d1], /* CJK Ideograph Extension A */ + [0x47d2, 0x47d2], /* CJK Ideograph Extension A */ + [0x47d3, 0x47d3], /* CJK Ideograph Extension A */ + [0x47d4, 0x47d4], /* CJK Ideograph Extension A */ + [0x47d5, 0x47d5], /* CJK Ideograph Extension A */ + [0x47d6, 0x47d6], /* CJK Ideograph Extension A */ + [0x47d7, 0x47d7], /* CJK Ideograph Extension A */ + [0x47d8, 0x47d8], /* CJK Ideograph Extension A */ + [0x47d9, 0x47d9], /* CJK Ideograph Extension A */ + [0x47da, 0x47da], /* CJK Ideograph Extension A */ + [0x47db, 0x47db], /* CJK Ideograph Extension A */ + [0x47dc, 0x47dc], /* CJK Ideograph Extension A */ + [0x47dd, 0x47dd], /* CJK Ideograph Extension A */ + [0x47de, 0x47de], /* CJK Ideograph Extension A */ + [0x47df, 0x47df], /* CJK Ideograph Extension A */ + [0x47e0, 0x47e0], /* CJK Ideograph Extension A */ + [0x47e1, 0x47e1], /* CJK Ideograph Extension A */ + [0x47e2, 0x47e2], /* CJK Ideograph Extension A */ + [0x47e3, 0x47e3], /* CJK Ideograph Extension A */ + [0x47e4, 0x47e4], /* CJK Ideograph Extension A */ + [0x47e5, 0x47e5], /* CJK Ideograph Extension A */ + [0x47e6, 0x47e6], /* CJK Ideograph Extension A */ + [0x47e7, 0x47e7], /* CJK Ideograph Extension A */ + [0x47e8, 0x47e8], /* CJK Ideograph Extension A */ + [0x47e9, 0x47e9], /* CJK Ideograph Extension A */ + [0x47ea, 0x47ea], /* CJK Ideograph Extension A */ + [0x47eb, 0x47eb], /* CJK Ideograph Extension A */ + [0x47ec, 0x47ec], /* CJK Ideograph Extension A */ + [0x47ed, 0x47ed], /* CJK Ideograph Extension A */ + [0x47ee, 0x47ee], /* CJK Ideograph Extension A */ + [0x47ef, 0x47ef], /* CJK Ideograph Extension A */ + [0x47f0, 0x47f0], /* CJK Ideograph Extension A */ + [0x47f1, 0x47f1], /* CJK Ideograph Extension A */ + [0x47f2, 0x47f2], /* CJK Ideograph Extension A */ + [0x47f3, 0x47f3], /* CJK Ideograph Extension A */ + [0x47f4, 0x47f4], /* CJK Ideograph Extension A */ + [0x47f5, 0x47f5], /* CJK Ideograph Extension A */ + [0x47f6, 0x47f6], /* CJK Ideograph Extension A */ + [0x47f7, 0x47f7], /* CJK Ideograph Extension A */ + [0x47f8, 0x47f8], /* CJK Ideograph Extension A */ + [0x47f9, 0x47f9], /* CJK Ideograph Extension A */ + [0x47fa, 0x47fa], /* CJK Ideograph Extension A */ + [0x47fb, 0x47fb], /* CJK Ideograph Extension A */ + [0x47fc, 0x47fc], /* CJK Ideograph Extension A */ + [0x47fd, 0x47fd], /* CJK Ideograph Extension A */ + [0x47fe, 0x47fe], /* CJK Ideograph Extension A */ + [0x47ff, 0x47ff], /* CJK Ideograph Extension A */ + [0x4800, 0x4800], /* CJK Ideograph Extension A */ + [0x4801, 0x4801], /* CJK Ideograph Extension A */ + [0x4802, 0x4802], /* CJK Ideograph Extension A */ + [0x4803, 0x4803], /* CJK Ideograph Extension A */ + [0x4804, 0x4804], /* CJK Ideograph Extension A */ + [0x4805, 0x4805], /* CJK Ideograph Extension A */ + [0x4806, 0x4806], /* CJK Ideograph Extension A */ + [0x4807, 0x4807], /* CJK Ideograph Extension A */ + [0x4808, 0x4808], /* CJK Ideograph Extension A */ + [0x4809, 0x4809], /* CJK Ideograph Extension A */ + [0x480a, 0x480a], /* CJK Ideograph Extension A */ + [0x480b, 0x480b], /* CJK Ideograph Extension A */ + [0x480c, 0x480c], /* CJK Ideograph Extension A */ + [0x480d, 0x480d], /* CJK Ideograph Extension A */ + [0x480e, 0x480e], /* CJK Ideograph Extension A */ + [0x480f, 0x480f], /* CJK Ideograph Extension A */ + [0x4810, 0x4810], /* CJK Ideograph Extension A */ + [0x4811, 0x4811], /* CJK Ideograph Extension A */ + [0x4812, 0x4812], /* CJK Ideograph Extension A */ + [0x4813, 0x4813], /* CJK Ideograph Extension A */ + [0x4814, 0x4814], /* CJK Ideograph Extension A */ + [0x4815, 0x4815], /* CJK Ideograph Extension A */ + [0x4816, 0x4816], /* CJK Ideograph Extension A */ + [0x4817, 0x4817], /* CJK Ideograph Extension A */ + [0x4818, 0x4818], /* CJK Ideograph Extension A */ + [0x4819, 0x4819], /* CJK Ideograph Extension A */ + [0x481a, 0x481a], /* CJK Ideograph Extension A */ + [0x481b, 0x481b], /* CJK Ideograph Extension A */ + [0x481c, 0x481c], /* CJK Ideograph Extension A */ + [0x481d, 0x481d], /* CJK Ideograph Extension A */ + [0x481e, 0x481e], /* CJK Ideograph Extension A */ + [0x481f, 0x481f], /* CJK Ideograph Extension A */ + [0x4820, 0x4820], /* CJK Ideograph Extension A */ + [0x4821, 0x4821], /* CJK Ideograph Extension A */ + [0x4822, 0x4822], /* CJK Ideograph Extension A */ + [0x4823, 0x4823], /* CJK Ideograph Extension A */ + [0x4824, 0x4824], /* CJK Ideograph Extension A */ + [0x4825, 0x4825], /* CJK Ideograph Extension A */ + [0x4826, 0x4826], /* CJK Ideograph Extension A */ + [0x4827, 0x4827], /* CJK Ideograph Extension A */ + [0x4828, 0x4828], /* CJK Ideograph Extension A */ + [0x4829, 0x4829], /* CJK Ideograph Extension A */ + [0x482a, 0x482a], /* CJK Ideograph Extension A */ + [0x482b, 0x482b], /* CJK Ideograph Extension A */ + [0x482c, 0x482c], /* CJK Ideograph Extension A */ + [0x482d, 0x482d], /* CJK Ideograph Extension A */ + [0x482e, 0x482e], /* CJK Ideograph Extension A */ + [0x482f, 0x482f], /* CJK Ideograph Extension A */ + [0x4830, 0x4830], /* CJK Ideograph Extension A */ + [0x4831, 0x4831], /* CJK Ideograph Extension A */ + [0x4832, 0x4832], /* CJK Ideograph Extension A */ + [0x4833, 0x4833], /* CJK Ideograph Extension A */ + [0x4834, 0x4834], /* CJK Ideograph Extension A */ + [0x4835, 0x4835], /* CJK Ideograph Extension A */ + [0x4836, 0x4836], /* CJK Ideograph Extension A */ + [0x4837, 0x4837], /* CJK Ideograph Extension A */ + [0x4838, 0x4838], /* CJK Ideograph Extension A */ + [0x4839, 0x4839], /* CJK Ideograph Extension A */ + [0x483a, 0x483a], /* CJK Ideograph Extension A */ + [0x483b, 0x483b], /* CJK Ideograph Extension A */ + [0x483c, 0x483c], /* CJK Ideograph Extension A */ + [0x483d, 0x483d], /* CJK Ideograph Extension A */ + [0x483e, 0x483e], /* CJK Ideograph Extension A */ + [0x483f, 0x483f], /* CJK Ideograph Extension A */ + [0x4840, 0x4840], /* CJK Ideograph Extension A */ + [0x4841, 0x4841], /* CJK Ideograph Extension A */ + [0x4842, 0x4842], /* CJK Ideograph Extension A */ + [0x4843, 0x4843], /* CJK Ideograph Extension A */ + [0x4844, 0x4844], /* CJK Ideograph Extension A */ + [0x4845, 0x4845], /* CJK Ideograph Extension A */ + [0x4846, 0x4846], /* CJK Ideograph Extension A */ + [0x4847, 0x4847], /* CJK Ideograph Extension A */ + [0x4848, 0x4848], /* CJK Ideograph Extension A */ + [0x4849, 0x4849], /* CJK Ideograph Extension A */ + [0x484a, 0x484a], /* CJK Ideograph Extension A */ + [0x484b, 0x484b], /* CJK Ideograph Extension A */ + [0x484c, 0x484c], /* CJK Ideograph Extension A */ + [0x484d, 0x484d], /* CJK Ideograph Extension A */ + [0x484e, 0x484e], /* CJK Ideograph Extension A */ + [0x484f, 0x484f], /* CJK Ideograph Extension A */ + [0x4850, 0x4850], /* CJK Ideograph Extension A */ + [0x4851, 0x4851], /* CJK Ideograph Extension A */ + [0x4852, 0x4852], /* CJK Ideograph Extension A */ + [0x4853, 0x4853], /* CJK Ideograph Extension A */ + [0x4854, 0x4854], /* CJK Ideograph Extension A */ + [0x4855, 0x4855], /* CJK Ideograph Extension A */ + [0x4856, 0x4856], /* CJK Ideograph Extension A */ + [0x4857, 0x4857], /* CJK Ideograph Extension A */ + [0x4858, 0x4858], /* CJK Ideograph Extension A */ + [0x4859, 0x4859], /* CJK Ideograph Extension A */ + [0x485a, 0x485a], /* CJK Ideograph Extension A */ + [0x485b, 0x485b], /* CJK Ideograph Extension A */ + [0x485c, 0x485c], /* CJK Ideograph Extension A */ + [0x485d, 0x485d], /* CJK Ideograph Extension A */ + [0x485e, 0x485e], /* CJK Ideograph Extension A */ + [0x485f, 0x485f], /* CJK Ideograph Extension A */ + [0x4860, 0x4860], /* CJK Ideograph Extension A */ + [0x4861, 0x4861], /* CJK Ideograph Extension A */ + [0x4862, 0x4862], /* CJK Ideograph Extension A */ + [0x4863, 0x4863], /* CJK Ideograph Extension A */ + [0x4864, 0x4864], /* CJK Ideograph Extension A */ + [0x4865, 0x4865], /* CJK Ideograph Extension A */ + [0x4866, 0x4866], /* CJK Ideograph Extension A */ + [0x4867, 0x4867], /* CJK Ideograph Extension A */ + [0x4868, 0x4868], /* CJK Ideograph Extension A */ + [0x4869, 0x4869], /* CJK Ideograph Extension A */ + [0x486a, 0x486a], /* CJK Ideograph Extension A */ + [0x486b, 0x486b], /* CJK Ideograph Extension A */ + [0x486c, 0x486c], /* CJK Ideograph Extension A */ + [0x486d, 0x486d], /* CJK Ideograph Extension A */ + [0x486e, 0x486e], /* CJK Ideograph Extension A */ + [0x486f, 0x486f], /* CJK Ideograph Extension A */ + [0x4870, 0x4870], /* CJK Ideograph Extension A */ + [0x4871, 0x4871], /* CJK Ideograph Extension A */ + [0x4872, 0x4872], /* CJK Ideograph Extension A */ + [0x4873, 0x4873], /* CJK Ideograph Extension A */ + [0x4874, 0x4874], /* CJK Ideograph Extension A */ + [0x4875, 0x4875], /* CJK Ideograph Extension A */ + [0x4876, 0x4876], /* CJK Ideograph Extension A */ + [0x4877, 0x4877], /* CJK Ideograph Extension A */ + [0x4878, 0x4878], /* CJK Ideograph Extension A */ + [0x4879, 0x4879], /* CJK Ideograph Extension A */ + [0x487a, 0x487a], /* CJK Ideograph Extension A */ + [0x487b, 0x487b], /* CJK Ideograph Extension A */ + [0x487c, 0x487c], /* CJK Ideograph Extension A */ + [0x487d, 0x487d], /* CJK Ideograph Extension A */ + [0x487e, 0x487e], /* CJK Ideograph Extension A */ + [0x487f, 0x487f], /* CJK Ideograph Extension A */ + [0x4880, 0x4880], /* CJK Ideograph Extension A */ + [0x4881, 0x4881], /* CJK Ideograph Extension A */ + [0x4882, 0x4882], /* CJK Ideograph Extension A */ + [0x4883, 0x4883], /* CJK Ideograph Extension A */ + [0x4884, 0x4884], /* CJK Ideograph Extension A */ + [0x4885, 0x4885], /* CJK Ideograph Extension A */ + [0x4886, 0x4886], /* CJK Ideograph Extension A */ + [0x4887, 0x4887], /* CJK Ideograph Extension A */ + [0x4888, 0x4888], /* CJK Ideograph Extension A */ + [0x4889, 0x4889], /* CJK Ideograph Extension A */ + [0x488a, 0x488a], /* CJK Ideograph Extension A */ + [0x488b, 0x488b], /* CJK Ideograph Extension A */ + [0x488c, 0x488c], /* CJK Ideograph Extension A */ + [0x488d, 0x488d], /* CJK Ideograph Extension A */ + [0x488e, 0x488e], /* CJK Ideograph Extension A */ + [0x488f, 0x488f], /* CJK Ideograph Extension A */ + [0x4890, 0x4890], /* CJK Ideograph Extension A */ + [0x4891, 0x4891], /* CJK Ideograph Extension A */ + [0x4892, 0x4892], /* CJK Ideograph Extension A */ + [0x4893, 0x4893], /* CJK Ideograph Extension A */ + [0x4894, 0x4894], /* CJK Ideograph Extension A */ + [0x4895, 0x4895], /* CJK Ideograph Extension A */ + [0x4896, 0x4896], /* CJK Ideograph Extension A */ + [0x4897, 0x4897], /* CJK Ideograph Extension A */ + [0x4898, 0x4898], /* CJK Ideograph Extension A */ + [0x4899, 0x4899], /* CJK Ideograph Extension A */ + [0x489a, 0x489a], /* CJK Ideograph Extension A */ + [0x489b, 0x489b], /* CJK Ideograph Extension A */ + [0x489c, 0x489c], /* CJK Ideograph Extension A */ + [0x489d, 0x489d], /* CJK Ideograph Extension A */ + [0x489e, 0x489e], /* CJK Ideograph Extension A */ + [0x489f, 0x489f], /* CJK Ideograph Extension A */ + [0x48a0, 0x48a0], /* CJK Ideograph Extension A */ + [0x48a1, 0x48a1], /* CJK Ideograph Extension A */ + [0x48a2, 0x48a2], /* CJK Ideograph Extension A */ + [0x48a3, 0x48a3], /* CJK Ideograph Extension A */ + [0x48a4, 0x48a4], /* CJK Ideograph Extension A */ + [0x48a5, 0x48a5], /* CJK Ideograph Extension A */ + [0x48a6, 0x48a6], /* CJK Ideograph Extension A */ + [0x48a7, 0x48a7], /* CJK Ideograph Extension A */ + [0x48a8, 0x48a8], /* CJK Ideograph Extension A */ + [0x48a9, 0x48a9], /* CJK Ideograph Extension A */ + [0x48aa, 0x48aa], /* CJK Ideograph Extension A */ + [0x48ab, 0x48ab], /* CJK Ideograph Extension A */ + [0x48ac, 0x48ac], /* CJK Ideograph Extension A */ + [0x48ad, 0x48ad], /* CJK Ideograph Extension A */ + [0x48ae, 0x48ae], /* CJK Ideograph Extension A */ + [0x48af, 0x48af], /* CJK Ideograph Extension A */ + [0x48b0, 0x48b0], /* CJK Ideograph Extension A */ + [0x48b1, 0x48b1], /* CJK Ideograph Extension A */ + [0x48b2, 0x48b2], /* CJK Ideograph Extension A */ + [0x48b3, 0x48b3], /* CJK Ideograph Extension A */ + [0x48b4, 0x48b4], /* CJK Ideograph Extension A */ + [0x48b5, 0x48b5], /* CJK Ideograph Extension A */ + [0x48b6, 0x48b6], /* CJK Ideograph Extension A */ + [0x48b7, 0x48b7], /* CJK Ideograph Extension A */ + [0x48b8, 0x48b8], /* CJK Ideograph Extension A */ + [0x48b9, 0x48b9], /* CJK Ideograph Extension A */ + [0x48ba, 0x48ba], /* CJK Ideograph Extension A */ + [0x48bb, 0x48bb], /* CJK Ideograph Extension A */ + [0x48bc, 0x48bc], /* CJK Ideograph Extension A */ + [0x48bd, 0x48bd], /* CJK Ideograph Extension A */ + [0x48be, 0x48be], /* CJK Ideograph Extension A */ + [0x48bf, 0x48bf], /* CJK Ideograph Extension A */ + [0x48c0, 0x48c0], /* CJK Ideograph Extension A */ + [0x48c1, 0x48c1], /* CJK Ideograph Extension A */ + [0x48c2, 0x48c2], /* CJK Ideograph Extension A */ + [0x48c3, 0x48c3], /* CJK Ideograph Extension A */ + [0x48c4, 0x48c4], /* CJK Ideograph Extension A */ + [0x48c5, 0x48c5], /* CJK Ideograph Extension A */ + [0x48c6, 0x48c6], /* CJK Ideograph Extension A */ + [0x48c7, 0x48c7], /* CJK Ideograph Extension A */ + [0x48c8, 0x48c8], /* CJK Ideograph Extension A */ + [0x48c9, 0x48c9], /* CJK Ideograph Extension A */ + [0x48ca, 0x48ca], /* CJK Ideograph Extension A */ + [0x48cb, 0x48cb], /* CJK Ideograph Extension A */ + [0x48cc, 0x48cc], /* CJK Ideograph Extension A */ + [0x48cd, 0x48cd], /* CJK Ideograph Extension A */ + [0x48ce, 0x48ce], /* CJK Ideograph Extension A */ + [0x48cf, 0x48cf], /* CJK Ideograph Extension A */ + [0x48d0, 0x48d0], /* CJK Ideograph Extension A */ + [0x48d1, 0x48d1], /* CJK Ideograph Extension A */ + [0x48d2, 0x48d2], /* CJK Ideograph Extension A */ + [0x48d3, 0x48d3], /* CJK Ideograph Extension A */ + [0x48d4, 0x48d4], /* CJK Ideograph Extension A */ + [0x48d5, 0x48d5], /* CJK Ideograph Extension A */ + [0x48d6, 0x48d6], /* CJK Ideograph Extension A */ + [0x48d7, 0x48d7], /* CJK Ideograph Extension A */ + [0x48d8, 0x48d8], /* CJK Ideograph Extension A */ + [0x48d9, 0x48d9], /* CJK Ideograph Extension A */ + [0x48da, 0x48da], /* CJK Ideograph Extension A */ + [0x48db, 0x48db], /* CJK Ideograph Extension A */ + [0x48dc, 0x48dc], /* CJK Ideograph Extension A */ + [0x48dd, 0x48dd], /* CJK Ideograph Extension A */ + [0x48de, 0x48de], /* CJK Ideograph Extension A */ + [0x48df, 0x48df], /* CJK Ideograph Extension A */ + [0x48e0, 0x48e0], /* CJK Ideograph Extension A */ + [0x48e1, 0x48e1], /* CJK Ideograph Extension A */ + [0x48e2, 0x48e2], /* CJK Ideograph Extension A */ + [0x48e3, 0x48e3], /* CJK Ideograph Extension A */ + [0x48e4, 0x48e4], /* CJK Ideograph Extension A */ + [0x48e5, 0x48e5], /* CJK Ideograph Extension A */ + [0x48e6, 0x48e6], /* CJK Ideograph Extension A */ + [0x48e7, 0x48e7], /* CJK Ideograph Extension A */ + [0x48e8, 0x48e8], /* CJK Ideograph Extension A */ + [0x48e9, 0x48e9], /* CJK Ideograph Extension A */ + [0x48ea, 0x48ea], /* CJK Ideograph Extension A */ + [0x48eb, 0x48eb], /* CJK Ideograph Extension A */ + [0x48ec, 0x48ec], /* CJK Ideograph Extension A */ + [0x48ed, 0x48ed], /* CJK Ideograph Extension A */ + [0x48ee, 0x48ee], /* CJK Ideograph Extension A */ + [0x48ef, 0x48ef], /* CJK Ideograph Extension A */ + [0x48f0, 0x48f0], /* CJK Ideograph Extension A */ + [0x48f1, 0x48f1], /* CJK Ideograph Extension A */ + [0x48f2, 0x48f2], /* CJK Ideograph Extension A */ + [0x48f3, 0x48f3], /* CJK Ideograph Extension A */ + [0x48f4, 0x48f4], /* CJK Ideograph Extension A */ + [0x48f5, 0x48f5], /* CJK Ideograph Extension A */ + [0x48f6, 0x48f6], /* CJK Ideograph Extension A */ + [0x48f7, 0x48f7], /* CJK Ideograph Extension A */ + [0x48f8, 0x48f8], /* CJK Ideograph Extension A */ + [0x48f9, 0x48f9], /* CJK Ideograph Extension A */ + [0x48fa, 0x48fa], /* CJK Ideograph Extension A */ + [0x48fb, 0x48fb], /* CJK Ideograph Extension A */ + [0x48fc, 0x48fc], /* CJK Ideograph Extension A */ + [0x48fd, 0x48fd], /* CJK Ideograph Extension A */ + [0x48fe, 0x48fe], /* CJK Ideograph Extension A */ + [0x48ff, 0x48ff], /* CJK Ideograph Extension A */ + [0x4900, 0x4900], /* CJK Ideograph Extension A */ + [0x4901, 0x4901], /* CJK Ideograph Extension A */ + [0x4902, 0x4902], /* CJK Ideograph Extension A */ + [0x4903, 0x4903], /* CJK Ideograph Extension A */ + [0x4904, 0x4904], /* CJK Ideograph Extension A */ + [0x4905, 0x4905], /* CJK Ideograph Extension A */ + [0x4906, 0x4906], /* CJK Ideograph Extension A */ + [0x4907, 0x4907], /* CJK Ideograph Extension A */ + [0x4908, 0x4908], /* CJK Ideograph Extension A */ + [0x4909, 0x4909], /* CJK Ideograph Extension A */ + [0x490a, 0x490a], /* CJK Ideograph Extension A */ + [0x490b, 0x490b], /* CJK Ideograph Extension A */ + [0x490c, 0x490c], /* CJK Ideograph Extension A */ + [0x490d, 0x490d], /* CJK Ideograph Extension A */ + [0x490e, 0x490e], /* CJK Ideograph Extension A */ + [0x490f, 0x490f], /* CJK Ideograph Extension A */ + [0x4910, 0x4910], /* CJK Ideograph Extension A */ + [0x4911, 0x4911], /* CJK Ideograph Extension A */ + [0x4912, 0x4912], /* CJK Ideograph Extension A */ + [0x4913, 0x4913], /* CJK Ideograph Extension A */ + [0x4914, 0x4914], /* CJK Ideograph Extension A */ + [0x4915, 0x4915], /* CJK Ideograph Extension A */ + [0x4916, 0x4916], /* CJK Ideograph Extension A */ + [0x4917, 0x4917], /* CJK Ideograph Extension A */ + [0x4918, 0x4918], /* CJK Ideograph Extension A */ + [0x4919, 0x4919], /* CJK Ideograph Extension A */ + [0x491a, 0x491a], /* CJK Ideograph Extension A */ + [0x491b, 0x491b], /* CJK Ideograph Extension A */ + [0x491c, 0x491c], /* CJK Ideograph Extension A */ + [0x491d, 0x491d], /* CJK Ideograph Extension A */ + [0x491e, 0x491e], /* CJK Ideograph Extension A */ + [0x491f, 0x491f], /* CJK Ideograph Extension A */ + [0x4920, 0x4920], /* CJK Ideograph Extension A */ + [0x4921, 0x4921], /* CJK Ideograph Extension A */ + [0x4922, 0x4922], /* CJK Ideograph Extension A */ + [0x4923, 0x4923], /* CJK Ideograph Extension A */ + [0x4924, 0x4924], /* CJK Ideograph Extension A */ + [0x4925, 0x4925], /* CJK Ideograph Extension A */ + [0x4926, 0x4926], /* CJK Ideograph Extension A */ + [0x4927, 0x4927], /* CJK Ideograph Extension A */ + [0x4928, 0x4928], /* CJK Ideograph Extension A */ + [0x4929, 0x4929], /* CJK Ideograph Extension A */ + [0x492a, 0x492a], /* CJK Ideograph Extension A */ + [0x492b, 0x492b], /* CJK Ideograph Extension A */ + [0x492c, 0x492c], /* CJK Ideograph Extension A */ + [0x492d, 0x492d], /* CJK Ideograph Extension A */ + [0x492e, 0x492e], /* CJK Ideograph Extension A */ + [0x492f, 0x492f], /* CJK Ideograph Extension A */ + [0x4930, 0x4930], /* CJK Ideograph Extension A */ + [0x4931, 0x4931], /* CJK Ideograph Extension A */ + [0x4932, 0x4932], /* CJK Ideograph Extension A */ + [0x4933, 0x4933], /* CJK Ideograph Extension A */ + [0x4934, 0x4934], /* CJK Ideograph Extension A */ + [0x4935, 0x4935], /* CJK Ideograph Extension A */ + [0x4936, 0x4936], /* CJK Ideograph Extension A */ + [0x4937, 0x4937], /* CJK Ideograph Extension A */ + [0x4938, 0x4938], /* CJK Ideograph Extension A */ + [0x4939, 0x4939], /* CJK Ideograph Extension A */ + [0x493a, 0x493a], /* CJK Ideograph Extension A */ + [0x493b, 0x493b], /* CJK Ideograph Extension A */ + [0x493c, 0x493c], /* CJK Ideograph Extension A */ + [0x493d, 0x493d], /* CJK Ideograph Extension A */ + [0x493e, 0x493e], /* CJK Ideograph Extension A */ + [0x493f, 0x493f], /* CJK Ideograph Extension A */ + [0x4940, 0x4940], /* CJK Ideograph Extension A */ + [0x4941, 0x4941], /* CJK Ideograph Extension A */ + [0x4942, 0x4942], /* CJK Ideograph Extension A */ + [0x4943, 0x4943], /* CJK Ideograph Extension A */ + [0x4944, 0x4944], /* CJK Ideograph Extension A */ + [0x4945, 0x4945], /* CJK Ideograph Extension A */ + [0x4946, 0x4946], /* CJK Ideograph Extension A */ + [0x4947, 0x4947], /* CJK Ideograph Extension A */ + [0x4948, 0x4948], /* CJK Ideograph Extension A */ + [0x4949, 0x4949], /* CJK Ideograph Extension A */ + [0x494a, 0x494a], /* CJK Ideograph Extension A */ + [0x494b, 0x494b], /* CJK Ideograph Extension A */ + [0x494c, 0x494c], /* CJK Ideograph Extension A */ + [0x494d, 0x494d], /* CJK Ideograph Extension A */ + [0x494e, 0x494e], /* CJK Ideograph Extension A */ + [0x494f, 0x494f], /* CJK Ideograph Extension A */ + [0x4950, 0x4950], /* CJK Ideograph Extension A */ + [0x4951, 0x4951], /* CJK Ideograph Extension A */ + [0x4952, 0x4952], /* CJK Ideograph Extension A */ + [0x4953, 0x4953], /* CJK Ideograph Extension A */ + [0x4954, 0x4954], /* CJK Ideograph Extension A */ + [0x4955, 0x4955], /* CJK Ideograph Extension A */ + [0x4956, 0x4956], /* CJK Ideograph Extension A */ + [0x4957, 0x4957], /* CJK Ideograph Extension A */ + [0x4958, 0x4958], /* CJK Ideograph Extension A */ + [0x4959, 0x4959], /* CJK Ideograph Extension A */ + [0x495a, 0x495a], /* CJK Ideograph Extension A */ + [0x495b, 0x495b], /* CJK Ideograph Extension A */ + [0x495c, 0x495c], /* CJK Ideograph Extension A */ + [0x495d, 0x495d], /* CJK Ideograph Extension A */ + [0x495e, 0x495e], /* CJK Ideograph Extension A */ + [0x495f, 0x495f], /* CJK Ideograph Extension A */ + [0x4960, 0x4960], /* CJK Ideograph Extension A */ + [0x4961, 0x4961], /* CJK Ideograph Extension A */ + [0x4962, 0x4962], /* CJK Ideograph Extension A */ + [0x4963, 0x4963], /* CJK Ideograph Extension A */ + [0x4964, 0x4964], /* CJK Ideograph Extension A */ + [0x4965, 0x4965], /* CJK Ideograph Extension A */ + [0x4966, 0x4966], /* CJK Ideograph Extension A */ + [0x4967, 0x4967], /* CJK Ideograph Extension A */ + [0x4968, 0x4968], /* CJK Ideograph Extension A */ + [0x4969, 0x4969], /* CJK Ideograph Extension A */ + [0x496a, 0x496a], /* CJK Ideograph Extension A */ + [0x496b, 0x496b], /* CJK Ideograph Extension A */ + [0x496c, 0x496c], /* CJK Ideograph Extension A */ + [0x496d, 0x496d], /* CJK Ideograph Extension A */ + [0x496e, 0x496e], /* CJK Ideograph Extension A */ + [0x496f, 0x496f], /* CJK Ideograph Extension A */ + [0x4970, 0x4970], /* CJK Ideograph Extension A */ + [0x4971, 0x4971], /* CJK Ideograph Extension A */ + [0x4972, 0x4972], /* CJK Ideograph Extension A */ + [0x4973, 0x4973], /* CJK Ideograph Extension A */ + [0x4974, 0x4974], /* CJK Ideograph Extension A */ + [0x4975, 0x4975], /* CJK Ideograph Extension A */ + [0x4976, 0x4976], /* CJK Ideograph Extension A */ + [0x4977, 0x4977], /* CJK Ideograph Extension A */ + [0x4978, 0x4978], /* CJK Ideograph Extension A */ + [0x4979, 0x4979], /* CJK Ideograph Extension A */ + [0x497a, 0x497a], /* CJK Ideograph Extension A */ + [0x497b, 0x497b], /* CJK Ideograph Extension A */ + [0x497c, 0x497c], /* CJK Ideograph Extension A */ + [0x497d, 0x497d], /* CJK Ideograph Extension A */ + [0x497e, 0x497e], /* CJK Ideograph Extension A */ + [0x497f, 0x497f], /* CJK Ideograph Extension A */ + [0x4980, 0x4980], /* CJK Ideograph Extension A */ + [0x4981, 0x4981], /* CJK Ideograph Extension A */ + [0x4982, 0x4982], /* CJK Ideograph Extension A */ + [0x4983, 0x4983], /* CJK Ideograph Extension A */ + [0x4984, 0x4984], /* CJK Ideograph Extension A */ + [0x4985, 0x4985], /* CJK Ideograph Extension A */ + [0x4986, 0x4986], /* CJK Ideograph Extension A */ + [0x4987, 0x4987], /* CJK Ideograph Extension A */ + [0x4988, 0x4988], /* CJK Ideograph Extension A */ + [0x4989, 0x4989], /* CJK Ideograph Extension A */ + [0x498a, 0x498a], /* CJK Ideograph Extension A */ + [0x498b, 0x498b], /* CJK Ideograph Extension A */ + [0x498c, 0x498c], /* CJK Ideograph Extension A */ + [0x498d, 0x498d], /* CJK Ideograph Extension A */ + [0x498e, 0x498e], /* CJK Ideograph Extension A */ + [0x498f, 0x498f], /* CJK Ideograph Extension A */ + [0x4990, 0x4990], /* CJK Ideograph Extension A */ + [0x4991, 0x4991], /* CJK Ideograph Extension A */ + [0x4992, 0x4992], /* CJK Ideograph Extension A */ + [0x4993, 0x4993], /* CJK Ideograph Extension A */ + [0x4994, 0x4994], /* CJK Ideograph Extension A */ + [0x4995, 0x4995], /* CJK Ideograph Extension A */ + [0x4996, 0x4996], /* CJK Ideograph Extension A */ + [0x4997, 0x4997], /* CJK Ideograph Extension A */ + [0x4998, 0x4998], /* CJK Ideograph Extension A */ + [0x4999, 0x4999], /* CJK Ideograph Extension A */ + [0x499a, 0x499a], /* CJK Ideograph Extension A */ + [0x499b, 0x499b], /* CJK Ideograph Extension A */ + [0x499c, 0x499c], /* CJK Ideograph Extension A */ + [0x499d, 0x499d], /* CJK Ideograph Extension A */ + [0x499e, 0x499e], /* CJK Ideograph Extension A */ + [0x499f, 0x499f], /* CJK Ideograph Extension A */ + [0x49a0, 0x49a0], /* CJK Ideograph Extension A */ + [0x49a1, 0x49a1], /* CJK Ideograph Extension A */ + [0x49a2, 0x49a2], /* CJK Ideograph Extension A */ + [0x49a3, 0x49a3], /* CJK Ideograph Extension A */ + [0x49a4, 0x49a4], /* CJK Ideograph Extension A */ + [0x49a5, 0x49a5], /* CJK Ideograph Extension A */ + [0x49a6, 0x49a6], /* CJK Ideograph Extension A */ + [0x49a7, 0x49a7], /* CJK Ideograph Extension A */ + [0x49a8, 0x49a8], /* CJK Ideograph Extension A */ + [0x49a9, 0x49a9], /* CJK Ideograph Extension A */ + [0x49aa, 0x49aa], /* CJK Ideograph Extension A */ + [0x49ab, 0x49ab], /* CJK Ideograph Extension A */ + [0x49ac, 0x49ac], /* CJK Ideograph Extension A */ + [0x49ad, 0x49ad], /* CJK Ideograph Extension A */ + [0x49ae, 0x49ae], /* CJK Ideograph Extension A */ + [0x49af, 0x49af], /* CJK Ideograph Extension A */ + [0x49b0, 0x49b0], /* CJK Ideograph Extension A */ + [0x49b1, 0x49b1], /* CJK Ideograph Extension A */ + [0x49b2, 0x49b2], /* CJK Ideograph Extension A */ + [0x49b3, 0x49b3], /* CJK Ideograph Extension A */ + [0x49b4, 0x49b4], /* CJK Ideograph Extension A */ + [0x49b5, 0x49b5], /* CJK Ideograph Extension A */ + [0x49b6, 0x49b6], /* CJK Ideograph Extension A */ + [0x49b7, 0x49b7], /* CJK Ideograph Extension A */ + [0x49b8, 0x49b8], /* CJK Ideograph Extension A */ + [0x49b9, 0x49b9], /* CJK Ideograph Extension A */ + [0x49ba, 0x49ba], /* CJK Ideograph Extension A */ + [0x49bb, 0x49bb], /* CJK Ideograph Extension A */ + [0x49bc, 0x49bc], /* CJK Ideograph Extension A */ + [0x49bd, 0x49bd], /* CJK Ideograph Extension A */ + [0x49be, 0x49be], /* CJK Ideograph Extension A */ + [0x49bf, 0x49bf], /* CJK Ideograph Extension A */ + [0x49c0, 0x49c0], /* CJK Ideograph Extension A */ + [0x49c1, 0x49c1], /* CJK Ideograph Extension A */ + [0x49c2, 0x49c2], /* CJK Ideograph Extension A */ + [0x49c3, 0x49c3], /* CJK Ideograph Extension A */ + [0x49c4, 0x49c4], /* CJK Ideograph Extension A */ + [0x49c5, 0x49c5], /* CJK Ideograph Extension A */ + [0x49c6, 0x49c6], /* CJK Ideograph Extension A */ + [0x49c7, 0x49c7], /* CJK Ideograph Extension A */ + [0x49c8, 0x49c8], /* CJK Ideograph Extension A */ + [0x49c9, 0x49c9], /* CJK Ideograph Extension A */ + [0x49ca, 0x49ca], /* CJK Ideograph Extension A */ + [0x49cb, 0x49cb], /* CJK Ideograph Extension A */ + [0x49cc, 0x49cc], /* CJK Ideograph Extension A */ + [0x49cd, 0x49cd], /* CJK Ideograph Extension A */ + [0x49ce, 0x49ce], /* CJK Ideograph Extension A */ + [0x49cf, 0x49cf], /* CJK Ideograph Extension A */ + [0x49d0, 0x49d0], /* CJK Ideograph Extension A */ + [0x49d1, 0x49d1], /* CJK Ideograph Extension A */ + [0x49d2, 0x49d2], /* CJK Ideograph Extension A */ + [0x49d3, 0x49d3], /* CJK Ideograph Extension A */ + [0x49d4, 0x49d4], /* CJK Ideograph Extension A */ + [0x49d5, 0x49d5], /* CJK Ideograph Extension A */ + [0x49d6, 0x49d6], /* CJK Ideograph Extension A */ + [0x49d7, 0x49d7], /* CJK Ideograph Extension A */ + [0x49d8, 0x49d8], /* CJK Ideograph Extension A */ + [0x49d9, 0x49d9], /* CJK Ideograph Extension A */ + [0x49da, 0x49da], /* CJK Ideograph Extension A */ + [0x49db, 0x49db], /* CJK Ideograph Extension A */ + [0x49dc, 0x49dc], /* CJK Ideograph Extension A */ + [0x49dd, 0x49dd], /* CJK Ideograph Extension A */ + [0x49de, 0x49de], /* CJK Ideograph Extension A */ + [0x49df, 0x49df], /* CJK Ideograph Extension A */ + [0x49e0, 0x49e0], /* CJK Ideograph Extension A */ + [0x49e1, 0x49e1], /* CJK Ideograph Extension A */ + [0x49e2, 0x49e2], /* CJK Ideograph Extension A */ + [0x49e3, 0x49e3], /* CJK Ideograph Extension A */ + [0x49e4, 0x49e4], /* CJK Ideograph Extension A */ + [0x49e5, 0x49e5], /* CJK Ideograph Extension A */ + [0x49e6, 0x49e6], /* CJK Ideograph Extension A */ + [0x49e7, 0x49e7], /* CJK Ideograph Extension A */ + [0x49e8, 0x49e8], /* CJK Ideograph Extension A */ + [0x49e9, 0x49e9], /* CJK Ideograph Extension A */ + [0x49ea, 0x49ea], /* CJK Ideograph Extension A */ + [0x49eb, 0x49eb], /* CJK Ideograph Extension A */ + [0x49ec, 0x49ec], /* CJK Ideograph Extension A */ + [0x49ed, 0x49ed], /* CJK Ideograph Extension A */ + [0x49ee, 0x49ee], /* CJK Ideograph Extension A */ + [0x49ef, 0x49ef], /* CJK Ideograph Extension A */ + [0x49f0, 0x49f0], /* CJK Ideograph Extension A */ + [0x49f1, 0x49f1], /* CJK Ideograph Extension A */ + [0x49f2, 0x49f2], /* CJK Ideograph Extension A */ + [0x49f3, 0x49f3], /* CJK Ideograph Extension A */ + [0x49f4, 0x49f4], /* CJK Ideograph Extension A */ + [0x49f5, 0x49f5], /* CJK Ideograph Extension A */ + [0x49f6, 0x49f6], /* CJK Ideograph Extension A */ + [0x49f7, 0x49f7], /* CJK Ideograph Extension A */ + [0x49f8, 0x49f8], /* CJK Ideograph Extension A */ + [0x49f9, 0x49f9], /* CJK Ideograph Extension A */ + [0x49fa, 0x49fa], /* CJK Ideograph Extension A */ + [0x49fb, 0x49fb], /* CJK Ideograph Extension A */ + [0x49fc, 0x49fc], /* CJK Ideograph Extension A */ + [0x49fd, 0x49fd], /* CJK Ideograph Extension A */ + [0x49fe, 0x49fe], /* CJK Ideograph Extension A */ + [0x49ff, 0x49ff], /* CJK Ideograph Extension A */ + [0x4a00, 0x4a00], /* CJK Ideograph Extension A */ + [0x4a01, 0x4a01], /* CJK Ideograph Extension A */ + [0x4a02, 0x4a02], /* CJK Ideograph Extension A */ + [0x4a03, 0x4a03], /* CJK Ideograph Extension A */ + [0x4a04, 0x4a04], /* CJK Ideograph Extension A */ + [0x4a05, 0x4a05], /* CJK Ideograph Extension A */ + [0x4a06, 0x4a06], /* CJK Ideograph Extension A */ + [0x4a07, 0x4a07], /* CJK Ideograph Extension A */ + [0x4a08, 0x4a08], /* CJK Ideograph Extension A */ + [0x4a09, 0x4a09], /* CJK Ideograph Extension A */ + [0x4a0a, 0x4a0a], /* CJK Ideograph Extension A */ + [0x4a0b, 0x4a0b], /* CJK Ideograph Extension A */ + [0x4a0c, 0x4a0c], /* CJK Ideograph Extension A */ + [0x4a0d, 0x4a0d], /* CJK Ideograph Extension A */ + [0x4a0e, 0x4a0e], /* CJK Ideograph Extension A */ + [0x4a0f, 0x4a0f], /* CJK Ideograph Extension A */ + [0x4a10, 0x4a10], /* CJK Ideograph Extension A */ + [0x4a11, 0x4a11], /* CJK Ideograph Extension A */ + [0x4a12, 0x4a12], /* CJK Ideograph Extension A */ + [0x4a13, 0x4a13], /* CJK Ideograph Extension A */ + [0x4a14, 0x4a14], /* CJK Ideograph Extension A */ + [0x4a15, 0x4a15], /* CJK Ideograph Extension A */ + [0x4a16, 0x4a16], /* CJK Ideograph Extension A */ + [0x4a17, 0x4a17], /* CJK Ideograph Extension A */ + [0x4a18, 0x4a18], /* CJK Ideograph Extension A */ + [0x4a19, 0x4a19], /* CJK Ideograph Extension A */ + [0x4a1a, 0x4a1a], /* CJK Ideograph Extension A */ + [0x4a1b, 0x4a1b], /* CJK Ideograph Extension A */ + [0x4a1c, 0x4a1c], /* CJK Ideograph Extension A */ + [0x4a1d, 0x4a1d], /* CJK Ideograph Extension A */ + [0x4a1e, 0x4a1e], /* CJK Ideograph Extension A */ + [0x4a1f, 0x4a1f], /* CJK Ideograph Extension A */ + [0x4a20, 0x4a20], /* CJK Ideograph Extension A */ + [0x4a21, 0x4a21], /* CJK Ideograph Extension A */ + [0x4a22, 0x4a22], /* CJK Ideograph Extension A */ + [0x4a23, 0x4a23], /* CJK Ideograph Extension A */ + [0x4a24, 0x4a24], /* CJK Ideograph Extension A */ + [0x4a25, 0x4a25], /* CJK Ideograph Extension A */ + [0x4a26, 0x4a26], /* CJK Ideograph Extension A */ + [0x4a27, 0x4a27], /* CJK Ideograph Extension A */ + [0x4a28, 0x4a28], /* CJK Ideograph Extension A */ + [0x4a29, 0x4a29], /* CJK Ideograph Extension A */ + [0x4a2a, 0x4a2a], /* CJK Ideograph Extension A */ + [0x4a2b, 0x4a2b], /* CJK Ideograph Extension A */ + [0x4a2c, 0x4a2c], /* CJK Ideograph Extension A */ + [0x4a2d, 0x4a2d], /* CJK Ideograph Extension A */ + [0x4a2e, 0x4a2e], /* CJK Ideograph Extension A */ + [0x4a2f, 0x4a2f], /* CJK Ideograph Extension A */ + [0x4a30, 0x4a30], /* CJK Ideograph Extension A */ + [0x4a31, 0x4a31], /* CJK Ideograph Extension A */ + [0x4a32, 0x4a32], /* CJK Ideograph Extension A */ + [0x4a33, 0x4a33], /* CJK Ideograph Extension A */ + [0x4a34, 0x4a34], /* CJK Ideograph Extension A */ + [0x4a35, 0x4a35], /* CJK Ideograph Extension A */ + [0x4a36, 0x4a36], /* CJK Ideograph Extension A */ + [0x4a37, 0x4a37], /* CJK Ideograph Extension A */ + [0x4a38, 0x4a38], /* CJK Ideograph Extension A */ + [0x4a39, 0x4a39], /* CJK Ideograph Extension A */ + [0x4a3a, 0x4a3a], /* CJK Ideograph Extension A */ + [0x4a3b, 0x4a3b], /* CJK Ideograph Extension A */ + [0x4a3c, 0x4a3c], /* CJK Ideograph Extension A */ + [0x4a3d, 0x4a3d], /* CJK Ideograph Extension A */ + [0x4a3e, 0x4a3e], /* CJK Ideograph Extension A */ + [0x4a3f, 0x4a3f], /* CJK Ideograph Extension A */ + [0x4a40, 0x4a40], /* CJK Ideograph Extension A */ + [0x4a41, 0x4a41], /* CJK Ideograph Extension A */ + [0x4a42, 0x4a42], /* CJK Ideograph Extension A */ + [0x4a43, 0x4a43], /* CJK Ideograph Extension A */ + [0x4a44, 0x4a44], /* CJK Ideograph Extension A */ + [0x4a45, 0x4a45], /* CJK Ideograph Extension A */ + [0x4a46, 0x4a46], /* CJK Ideograph Extension A */ + [0x4a47, 0x4a47], /* CJK Ideograph Extension A */ + [0x4a48, 0x4a48], /* CJK Ideograph Extension A */ + [0x4a49, 0x4a49], /* CJK Ideograph Extension A */ + [0x4a4a, 0x4a4a], /* CJK Ideograph Extension A */ + [0x4a4b, 0x4a4b], /* CJK Ideograph Extension A */ + [0x4a4c, 0x4a4c], /* CJK Ideograph Extension A */ + [0x4a4d, 0x4a4d], /* CJK Ideograph Extension A */ + [0x4a4e, 0x4a4e], /* CJK Ideograph Extension A */ + [0x4a4f, 0x4a4f], /* CJK Ideograph Extension A */ + [0x4a50, 0x4a50], /* CJK Ideograph Extension A */ + [0x4a51, 0x4a51], /* CJK Ideograph Extension A */ + [0x4a52, 0x4a52], /* CJK Ideograph Extension A */ + [0x4a53, 0x4a53], /* CJK Ideograph Extension A */ + [0x4a54, 0x4a54], /* CJK Ideograph Extension A */ + [0x4a55, 0x4a55], /* CJK Ideograph Extension A */ + [0x4a56, 0x4a56], /* CJK Ideograph Extension A */ + [0x4a57, 0x4a57], /* CJK Ideograph Extension A */ + [0x4a58, 0x4a58], /* CJK Ideograph Extension A */ + [0x4a59, 0x4a59], /* CJK Ideograph Extension A */ + [0x4a5a, 0x4a5a], /* CJK Ideograph Extension A */ + [0x4a5b, 0x4a5b], /* CJK Ideograph Extension A */ + [0x4a5c, 0x4a5c], /* CJK Ideograph Extension A */ + [0x4a5d, 0x4a5d], /* CJK Ideograph Extension A */ + [0x4a5e, 0x4a5e], /* CJK Ideograph Extension A */ + [0x4a5f, 0x4a5f], /* CJK Ideograph Extension A */ + [0x4a60, 0x4a60], /* CJK Ideograph Extension A */ + [0x4a61, 0x4a61], /* CJK Ideograph Extension A */ + [0x4a62, 0x4a62], /* CJK Ideograph Extension A */ + [0x4a63, 0x4a63], /* CJK Ideograph Extension A */ + [0x4a64, 0x4a64], /* CJK Ideograph Extension A */ + [0x4a65, 0x4a65], /* CJK Ideograph Extension A */ + [0x4a66, 0x4a66], /* CJK Ideograph Extension A */ + [0x4a67, 0x4a67], /* CJK Ideograph Extension A */ + [0x4a68, 0x4a68], /* CJK Ideograph Extension A */ + [0x4a69, 0x4a69], /* CJK Ideograph Extension A */ + [0x4a6a, 0x4a6a], /* CJK Ideograph Extension A */ + [0x4a6b, 0x4a6b], /* CJK Ideograph Extension A */ + [0x4a6c, 0x4a6c], /* CJK Ideograph Extension A */ + [0x4a6d, 0x4a6d], /* CJK Ideograph Extension A */ + [0x4a6e, 0x4a6e], /* CJK Ideograph Extension A */ + [0x4a6f, 0x4a6f], /* CJK Ideograph Extension A */ + [0x4a70, 0x4a70], /* CJK Ideograph Extension A */ + [0x4a71, 0x4a71], /* CJK Ideograph Extension A */ + [0x4a72, 0x4a72], /* CJK Ideograph Extension A */ + [0x4a73, 0x4a73], /* CJK Ideograph Extension A */ + [0x4a74, 0x4a74], /* CJK Ideograph Extension A */ + [0x4a75, 0x4a75], /* CJK Ideograph Extension A */ + [0x4a76, 0x4a76], /* CJK Ideograph Extension A */ + [0x4a77, 0x4a77], /* CJK Ideograph Extension A */ + [0x4a78, 0x4a78], /* CJK Ideograph Extension A */ + [0x4a79, 0x4a79], /* CJK Ideograph Extension A */ + [0x4a7a, 0x4a7a], /* CJK Ideograph Extension A */ + [0x4a7b, 0x4a7b], /* CJK Ideograph Extension A */ + [0x4a7c, 0x4a7c], /* CJK Ideograph Extension A */ + [0x4a7d, 0x4a7d], /* CJK Ideograph Extension A */ + [0x4a7e, 0x4a7e], /* CJK Ideograph Extension A */ + [0x4a7f, 0x4a7f], /* CJK Ideograph Extension A */ + [0x4a80, 0x4a80], /* CJK Ideograph Extension A */ + [0x4a81, 0x4a81], /* CJK Ideograph Extension A */ + [0x4a82, 0x4a82], /* CJK Ideograph Extension A */ + [0x4a83, 0x4a83], /* CJK Ideograph Extension A */ + [0x4a84, 0x4a84], /* CJK Ideograph Extension A */ + [0x4a85, 0x4a85], /* CJK Ideograph Extension A */ + [0x4a86, 0x4a86], /* CJK Ideograph Extension A */ + [0x4a87, 0x4a87], /* CJK Ideograph Extension A */ + [0x4a88, 0x4a88], /* CJK Ideograph Extension A */ + [0x4a89, 0x4a89], /* CJK Ideograph Extension A */ + [0x4a8a, 0x4a8a], /* CJK Ideograph Extension A */ + [0x4a8b, 0x4a8b], /* CJK Ideograph Extension A */ + [0x4a8c, 0x4a8c], /* CJK Ideograph Extension A */ + [0x4a8d, 0x4a8d], /* CJK Ideograph Extension A */ + [0x4a8e, 0x4a8e], /* CJK Ideograph Extension A */ + [0x4a8f, 0x4a8f], /* CJK Ideograph Extension A */ + [0x4a90, 0x4a90], /* CJK Ideograph Extension A */ + [0x4a91, 0x4a91], /* CJK Ideograph Extension A */ + [0x4a92, 0x4a92], /* CJK Ideograph Extension A */ + [0x4a93, 0x4a93], /* CJK Ideograph Extension A */ + [0x4a94, 0x4a94], /* CJK Ideograph Extension A */ + [0x4a95, 0x4a95], /* CJK Ideograph Extension A */ + [0x4a96, 0x4a96], /* CJK Ideograph Extension A */ + [0x4a97, 0x4a97], /* CJK Ideograph Extension A */ + [0x4a98, 0x4a98], /* CJK Ideograph Extension A */ + [0x4a99, 0x4a99], /* CJK Ideograph Extension A */ + [0x4a9a, 0x4a9a], /* CJK Ideograph Extension A */ + [0x4a9b, 0x4a9b], /* CJK Ideograph Extension A */ + [0x4a9c, 0x4a9c], /* CJK Ideograph Extension A */ + [0x4a9d, 0x4a9d], /* CJK Ideograph Extension A */ + [0x4a9e, 0x4a9e], /* CJK Ideograph Extension A */ + [0x4a9f, 0x4a9f], /* CJK Ideograph Extension A */ + [0x4aa0, 0x4aa0], /* CJK Ideograph Extension A */ + [0x4aa1, 0x4aa1], /* CJK Ideograph Extension A */ + [0x4aa2, 0x4aa2], /* CJK Ideograph Extension A */ + [0x4aa3, 0x4aa3], /* CJK Ideograph Extension A */ + [0x4aa4, 0x4aa4], /* CJK Ideograph Extension A */ + [0x4aa5, 0x4aa5], /* CJK Ideograph Extension A */ + [0x4aa6, 0x4aa6], /* CJK Ideograph Extension A */ + [0x4aa7, 0x4aa7], /* CJK Ideograph Extension A */ + [0x4aa8, 0x4aa8], /* CJK Ideograph Extension A */ + [0x4aa9, 0x4aa9], /* CJK Ideograph Extension A */ + [0x4aaa, 0x4aaa], /* CJK Ideograph Extension A */ + [0x4aab, 0x4aab], /* CJK Ideograph Extension A */ + [0x4aac, 0x4aac], /* CJK Ideograph Extension A */ + [0x4aad, 0x4aad], /* CJK Ideograph Extension A */ + [0x4aae, 0x4aae], /* CJK Ideograph Extension A */ + [0x4aaf, 0x4aaf], /* CJK Ideograph Extension A */ + [0x4ab0, 0x4ab0], /* CJK Ideograph Extension A */ + [0x4ab1, 0x4ab1], /* CJK Ideograph Extension A */ + [0x4ab2, 0x4ab2], /* CJK Ideograph Extension A */ + [0x4ab3, 0x4ab3], /* CJK Ideograph Extension A */ + [0x4ab4, 0x4ab4], /* CJK Ideograph Extension A */ + [0x4ab5, 0x4ab5], /* CJK Ideograph Extension A */ + [0x4ab6, 0x4ab6], /* CJK Ideograph Extension A */ + [0x4ab7, 0x4ab7], /* CJK Ideograph Extension A */ + [0x4ab8, 0x4ab8], /* CJK Ideograph Extension A */ + [0x4ab9, 0x4ab9], /* CJK Ideograph Extension A */ + [0x4aba, 0x4aba], /* CJK Ideograph Extension A */ + [0x4abb, 0x4abb], /* CJK Ideograph Extension A */ + [0x4abc, 0x4abc], /* CJK Ideograph Extension A */ + [0x4abd, 0x4abd], /* CJK Ideograph Extension A */ + [0x4abe, 0x4abe], /* CJK Ideograph Extension A */ + [0x4abf, 0x4abf], /* CJK Ideograph Extension A */ + [0x4ac0, 0x4ac0], /* CJK Ideograph Extension A */ + [0x4ac1, 0x4ac1], /* CJK Ideograph Extension A */ + [0x4ac2, 0x4ac2], /* CJK Ideograph Extension A */ + [0x4ac3, 0x4ac3], /* CJK Ideograph Extension A */ + [0x4ac4, 0x4ac4], /* CJK Ideograph Extension A */ + [0x4ac5, 0x4ac5], /* CJK Ideograph Extension A */ + [0x4ac6, 0x4ac6], /* CJK Ideograph Extension A */ + [0x4ac7, 0x4ac7], /* CJK Ideograph Extension A */ + [0x4ac8, 0x4ac8], /* CJK Ideograph Extension A */ + [0x4ac9, 0x4ac9], /* CJK Ideograph Extension A */ + [0x4aca, 0x4aca], /* CJK Ideograph Extension A */ + [0x4acb, 0x4acb], /* CJK Ideograph Extension A */ + [0x4acc, 0x4acc], /* CJK Ideograph Extension A */ + [0x4acd, 0x4acd], /* CJK Ideograph Extension A */ + [0x4ace, 0x4ace], /* CJK Ideograph Extension A */ + [0x4acf, 0x4acf], /* CJK Ideograph Extension A */ + [0x4ad0, 0x4ad0], /* CJK Ideograph Extension A */ + [0x4ad1, 0x4ad1], /* CJK Ideograph Extension A */ + [0x4ad2, 0x4ad2], /* CJK Ideograph Extension A */ + [0x4ad3, 0x4ad3], /* CJK Ideograph Extension A */ + [0x4ad4, 0x4ad4], /* CJK Ideograph Extension A */ + [0x4ad5, 0x4ad5], /* CJK Ideograph Extension A */ + [0x4ad6, 0x4ad6], /* CJK Ideograph Extension A */ + [0x4ad7, 0x4ad7], /* CJK Ideograph Extension A */ + [0x4ad8, 0x4ad8], /* CJK Ideograph Extension A */ + [0x4ad9, 0x4ad9], /* CJK Ideograph Extension A */ + [0x4ada, 0x4ada], /* CJK Ideograph Extension A */ + [0x4adb, 0x4adb], /* CJK Ideograph Extension A */ + [0x4adc, 0x4adc], /* CJK Ideograph Extension A */ + [0x4add, 0x4add], /* CJK Ideograph Extension A */ + [0x4ade, 0x4ade], /* CJK Ideograph Extension A */ + [0x4adf, 0x4adf], /* CJK Ideograph Extension A */ + [0x4ae0, 0x4ae0], /* CJK Ideograph Extension A */ + [0x4ae1, 0x4ae1], /* CJK Ideograph Extension A */ + [0x4ae2, 0x4ae2], /* CJK Ideograph Extension A */ + [0x4ae3, 0x4ae3], /* CJK Ideograph Extension A */ + [0x4ae4, 0x4ae4], /* CJK Ideograph Extension A */ + [0x4ae5, 0x4ae5], /* CJK Ideograph Extension A */ + [0x4ae6, 0x4ae6], /* CJK Ideograph Extension A */ + [0x4ae7, 0x4ae7], /* CJK Ideograph Extension A */ + [0x4ae8, 0x4ae8], /* CJK Ideograph Extension A */ + [0x4ae9, 0x4ae9], /* CJK Ideograph Extension A */ + [0x4aea, 0x4aea], /* CJK Ideograph Extension A */ + [0x4aeb, 0x4aeb], /* CJK Ideograph Extension A */ + [0x4aec, 0x4aec], /* CJK Ideograph Extension A */ + [0x4aed, 0x4aed], /* CJK Ideograph Extension A */ + [0x4aee, 0x4aee], /* CJK Ideograph Extension A */ + [0x4aef, 0x4aef], /* CJK Ideograph Extension A */ + [0x4af0, 0x4af0], /* CJK Ideograph Extension A */ + [0x4af1, 0x4af1], /* CJK Ideograph Extension A */ + [0x4af2, 0x4af2], /* CJK Ideograph Extension A */ + [0x4af3, 0x4af3], /* CJK Ideograph Extension A */ + [0x4af4, 0x4af4], /* CJK Ideograph Extension A */ + [0x4af5, 0x4af5], /* CJK Ideograph Extension A */ + [0x4af6, 0x4af6], /* CJK Ideograph Extension A */ + [0x4af7, 0x4af7], /* CJK Ideograph Extension A */ + [0x4af8, 0x4af8], /* CJK Ideograph Extension A */ + [0x4af9, 0x4af9], /* CJK Ideograph Extension A */ + [0x4afa, 0x4afa], /* CJK Ideograph Extension A */ + [0x4afb, 0x4afb], /* CJK Ideograph Extension A */ + [0x4afc, 0x4afc], /* CJK Ideograph Extension A */ + [0x4afd, 0x4afd], /* CJK Ideograph Extension A */ + [0x4afe, 0x4afe], /* CJK Ideograph Extension A */ + [0x4aff, 0x4aff], /* CJK Ideograph Extension A */ + [0x4b00, 0x4b00], /* CJK Ideograph Extension A */ + [0x4b01, 0x4b01], /* CJK Ideograph Extension A */ + [0x4b02, 0x4b02], /* CJK Ideograph Extension A */ + [0x4b03, 0x4b03], /* CJK Ideograph Extension A */ + [0x4b04, 0x4b04], /* CJK Ideograph Extension A */ + [0x4b05, 0x4b05], /* CJK Ideograph Extension A */ + [0x4b06, 0x4b06], /* CJK Ideograph Extension A */ + [0x4b07, 0x4b07], /* CJK Ideograph Extension A */ + [0x4b08, 0x4b08], /* CJK Ideograph Extension A */ + [0x4b09, 0x4b09], /* CJK Ideograph Extension A */ + [0x4b0a, 0x4b0a], /* CJK Ideograph Extension A */ + [0x4b0b, 0x4b0b], /* CJK Ideograph Extension A */ + [0x4b0c, 0x4b0c], /* CJK Ideograph Extension A */ + [0x4b0d, 0x4b0d], /* CJK Ideograph Extension A */ + [0x4b0e, 0x4b0e], /* CJK Ideograph Extension A */ + [0x4b0f, 0x4b0f], /* CJK Ideograph Extension A */ + [0x4b10, 0x4b10], /* CJK Ideograph Extension A */ + [0x4b11, 0x4b11], /* CJK Ideograph Extension A */ + [0x4b12, 0x4b12], /* CJK Ideograph Extension A */ + [0x4b13, 0x4b13], /* CJK Ideograph Extension A */ + [0x4b14, 0x4b14], /* CJK Ideograph Extension A */ + [0x4b15, 0x4b15], /* CJK Ideograph Extension A */ + [0x4b16, 0x4b16], /* CJK Ideograph Extension A */ + [0x4b17, 0x4b17], /* CJK Ideograph Extension A */ + [0x4b18, 0x4b18], /* CJK Ideograph Extension A */ + [0x4b19, 0x4b19], /* CJK Ideograph Extension A */ + [0x4b1a, 0x4b1a], /* CJK Ideograph Extension A */ + [0x4b1b, 0x4b1b], /* CJK Ideograph Extension A */ + [0x4b1c, 0x4b1c], /* CJK Ideograph Extension A */ + [0x4b1d, 0x4b1d], /* CJK Ideograph Extension A */ + [0x4b1e, 0x4b1e], /* CJK Ideograph Extension A */ + [0x4b1f, 0x4b1f], /* CJK Ideograph Extension A */ + [0x4b20, 0x4b20], /* CJK Ideograph Extension A */ + [0x4b21, 0x4b21], /* CJK Ideograph Extension A */ + [0x4b22, 0x4b22], /* CJK Ideograph Extension A */ + [0x4b23, 0x4b23], /* CJK Ideograph Extension A */ + [0x4b24, 0x4b24], /* CJK Ideograph Extension A */ + [0x4b25, 0x4b25], /* CJK Ideograph Extension A */ + [0x4b26, 0x4b26], /* CJK Ideograph Extension A */ + [0x4b27, 0x4b27], /* CJK Ideograph Extension A */ + [0x4b28, 0x4b28], /* CJK Ideograph Extension A */ + [0x4b29, 0x4b29], /* CJK Ideograph Extension A */ + [0x4b2a, 0x4b2a], /* CJK Ideograph Extension A */ + [0x4b2b, 0x4b2b], /* CJK Ideograph Extension A */ + [0x4b2c, 0x4b2c], /* CJK Ideograph Extension A */ + [0x4b2d, 0x4b2d], /* CJK Ideograph Extension A */ + [0x4b2e, 0x4b2e], /* CJK Ideograph Extension A */ + [0x4b2f, 0x4b2f], /* CJK Ideograph Extension A */ + [0x4b30, 0x4b30], /* CJK Ideograph Extension A */ + [0x4b31, 0x4b31], /* CJK Ideograph Extension A */ + [0x4b32, 0x4b32], /* CJK Ideograph Extension A */ + [0x4b33, 0x4b33], /* CJK Ideograph Extension A */ + [0x4b34, 0x4b34], /* CJK Ideograph Extension A */ + [0x4b35, 0x4b35], /* CJK Ideograph Extension A */ + [0x4b36, 0x4b36], /* CJK Ideograph Extension A */ + [0x4b37, 0x4b37], /* CJK Ideograph Extension A */ + [0x4b38, 0x4b38], /* CJK Ideograph Extension A */ + [0x4b39, 0x4b39], /* CJK Ideograph Extension A */ + [0x4b3a, 0x4b3a], /* CJK Ideograph Extension A */ + [0x4b3b, 0x4b3b], /* CJK Ideograph Extension A */ + [0x4b3c, 0x4b3c], /* CJK Ideograph Extension A */ + [0x4b3d, 0x4b3d], /* CJK Ideograph Extension A */ + [0x4b3e, 0x4b3e], /* CJK Ideograph Extension A */ + [0x4b3f, 0x4b3f], /* CJK Ideograph Extension A */ + [0x4b40, 0x4b40], /* CJK Ideograph Extension A */ + [0x4b41, 0x4b41], /* CJK Ideograph Extension A */ + [0x4b42, 0x4b42], /* CJK Ideograph Extension A */ + [0x4b43, 0x4b43], /* CJK Ideograph Extension A */ + [0x4b44, 0x4b44], /* CJK Ideograph Extension A */ + [0x4b45, 0x4b45], /* CJK Ideograph Extension A */ + [0x4b46, 0x4b46], /* CJK Ideograph Extension A */ + [0x4b47, 0x4b47], /* CJK Ideograph Extension A */ + [0x4b48, 0x4b48], /* CJK Ideograph Extension A */ + [0x4b49, 0x4b49], /* CJK Ideograph Extension A */ + [0x4b4a, 0x4b4a], /* CJK Ideograph Extension A */ + [0x4b4b, 0x4b4b], /* CJK Ideograph Extension A */ + [0x4b4c, 0x4b4c], /* CJK Ideograph Extension A */ + [0x4b4d, 0x4b4d], /* CJK Ideograph Extension A */ + [0x4b4e, 0x4b4e], /* CJK Ideograph Extension A */ + [0x4b4f, 0x4b4f], /* CJK Ideograph Extension A */ + [0x4b50, 0x4b50], /* CJK Ideograph Extension A */ + [0x4b51, 0x4b51], /* CJK Ideograph Extension A */ + [0x4b52, 0x4b52], /* CJK Ideograph Extension A */ + [0x4b53, 0x4b53], /* CJK Ideograph Extension A */ + [0x4b54, 0x4b54], /* CJK Ideograph Extension A */ + [0x4b55, 0x4b55], /* CJK Ideograph Extension A */ + [0x4b56, 0x4b56], /* CJK Ideograph Extension A */ + [0x4b57, 0x4b57], /* CJK Ideograph Extension A */ + [0x4b58, 0x4b58], /* CJK Ideograph Extension A */ + [0x4b59, 0x4b59], /* CJK Ideograph Extension A */ + [0x4b5a, 0x4b5a], /* CJK Ideograph Extension A */ + [0x4b5b, 0x4b5b], /* CJK Ideograph Extension A */ + [0x4b5c, 0x4b5c], /* CJK Ideograph Extension A */ + [0x4b5d, 0x4b5d], /* CJK Ideograph Extension A */ + [0x4b5e, 0x4b5e], /* CJK Ideograph Extension A */ + [0x4b5f, 0x4b5f], /* CJK Ideograph Extension A */ + [0x4b60, 0x4b60], /* CJK Ideograph Extension A */ + [0x4b61, 0x4b61], /* CJK Ideograph Extension A */ + [0x4b62, 0x4b62], /* CJK Ideograph Extension A */ + [0x4b63, 0x4b63], /* CJK Ideograph Extension A */ + [0x4b64, 0x4b64], /* CJK Ideograph Extension A */ + [0x4b65, 0x4b65], /* CJK Ideograph Extension A */ + [0x4b66, 0x4b66], /* CJK Ideograph Extension A */ + [0x4b67, 0x4b67], /* CJK Ideograph Extension A */ + [0x4b68, 0x4b68], /* CJK Ideograph Extension A */ + [0x4b69, 0x4b69], /* CJK Ideograph Extension A */ + [0x4b6a, 0x4b6a], /* CJK Ideograph Extension A */ + [0x4b6b, 0x4b6b], /* CJK Ideograph Extension A */ + [0x4b6c, 0x4b6c], /* CJK Ideograph Extension A */ + [0x4b6d, 0x4b6d], /* CJK Ideograph Extension A */ + [0x4b6e, 0x4b6e], /* CJK Ideograph Extension A */ + [0x4b6f, 0x4b6f], /* CJK Ideograph Extension A */ + [0x4b70, 0x4b70], /* CJK Ideograph Extension A */ + [0x4b71, 0x4b71], /* CJK Ideograph Extension A */ + [0x4b72, 0x4b72], /* CJK Ideograph Extension A */ + [0x4b73, 0x4b73], /* CJK Ideograph Extension A */ + [0x4b74, 0x4b74], /* CJK Ideograph Extension A */ + [0x4b75, 0x4b75], /* CJK Ideograph Extension A */ + [0x4b76, 0x4b76], /* CJK Ideograph Extension A */ + [0x4b77, 0x4b77], /* CJK Ideograph Extension A */ + [0x4b78, 0x4b78], /* CJK Ideograph Extension A */ + [0x4b79, 0x4b79], /* CJK Ideograph Extension A */ + [0x4b7a, 0x4b7a], /* CJK Ideograph Extension A */ + [0x4b7b, 0x4b7b], /* CJK Ideograph Extension A */ + [0x4b7c, 0x4b7c], /* CJK Ideograph Extension A */ + [0x4b7d, 0x4b7d], /* CJK Ideograph Extension A */ + [0x4b7e, 0x4b7e], /* CJK Ideograph Extension A */ + [0x4b7f, 0x4b7f], /* CJK Ideograph Extension A */ + [0x4b80, 0x4b80], /* CJK Ideograph Extension A */ + [0x4b81, 0x4b81], /* CJK Ideograph Extension A */ + [0x4b82, 0x4b82], /* CJK Ideograph Extension A */ + [0x4b83, 0x4b83], /* CJK Ideograph Extension A */ + [0x4b84, 0x4b84], /* CJK Ideograph Extension A */ + [0x4b85, 0x4b85], /* CJK Ideograph Extension A */ + [0x4b86, 0x4b86], /* CJK Ideograph Extension A */ + [0x4b87, 0x4b87], /* CJK Ideograph Extension A */ + [0x4b88, 0x4b88], /* CJK Ideograph Extension A */ + [0x4b89, 0x4b89], /* CJK Ideograph Extension A */ + [0x4b8a, 0x4b8a], /* CJK Ideograph Extension A */ + [0x4b8b, 0x4b8b], /* CJK Ideograph Extension A */ + [0x4b8c, 0x4b8c], /* CJK Ideograph Extension A */ + [0x4b8d, 0x4b8d], /* CJK Ideograph Extension A */ + [0x4b8e, 0x4b8e], /* CJK Ideograph Extension A */ + [0x4b8f, 0x4b8f], /* CJK Ideograph Extension A */ + [0x4b90, 0x4b90], /* CJK Ideograph Extension A */ + [0x4b91, 0x4b91], /* CJK Ideograph Extension A */ + [0x4b92, 0x4b92], /* CJK Ideograph Extension A */ + [0x4b93, 0x4b93], /* CJK Ideograph Extension A */ + [0x4b94, 0x4b94], /* CJK Ideograph Extension A */ + [0x4b95, 0x4b95], /* CJK Ideograph Extension A */ + [0x4b96, 0x4b96], /* CJK Ideograph Extension A */ + [0x4b97, 0x4b97], /* CJK Ideograph Extension A */ + [0x4b98, 0x4b98], /* CJK Ideograph Extension A */ + [0x4b99, 0x4b99], /* CJK Ideograph Extension A */ + [0x4b9a, 0x4b9a], /* CJK Ideograph Extension A */ + [0x4b9b, 0x4b9b], /* CJK Ideograph Extension A */ + [0x4b9c, 0x4b9c], /* CJK Ideograph Extension A */ + [0x4b9d, 0x4b9d], /* CJK Ideograph Extension A */ + [0x4b9e, 0x4b9e], /* CJK Ideograph Extension A */ + [0x4b9f, 0x4b9f], /* CJK Ideograph Extension A */ + [0x4ba0, 0x4ba0], /* CJK Ideograph Extension A */ + [0x4ba1, 0x4ba1], /* CJK Ideograph Extension A */ + [0x4ba2, 0x4ba2], /* CJK Ideograph Extension A */ + [0x4ba3, 0x4ba3], /* CJK Ideograph Extension A */ + [0x4ba4, 0x4ba4], /* CJK Ideograph Extension A */ + [0x4ba5, 0x4ba5], /* CJK Ideograph Extension A */ + [0x4ba6, 0x4ba6], /* CJK Ideograph Extension A */ + [0x4ba7, 0x4ba7], /* CJK Ideograph Extension A */ + [0x4ba8, 0x4ba8], /* CJK Ideograph Extension A */ + [0x4ba9, 0x4ba9], /* CJK Ideograph Extension A */ + [0x4baa, 0x4baa], /* CJK Ideograph Extension A */ + [0x4bab, 0x4bab], /* CJK Ideograph Extension A */ + [0x4bac, 0x4bac], /* CJK Ideograph Extension A */ + [0x4bad, 0x4bad], /* CJK Ideograph Extension A */ + [0x4bae, 0x4bae], /* CJK Ideograph Extension A */ + [0x4baf, 0x4baf], /* CJK Ideograph Extension A */ + [0x4bb0, 0x4bb0], /* CJK Ideograph Extension A */ + [0x4bb1, 0x4bb1], /* CJK Ideograph Extension A */ + [0x4bb2, 0x4bb2], /* CJK Ideograph Extension A */ + [0x4bb3, 0x4bb3], /* CJK Ideograph Extension A */ + [0x4bb4, 0x4bb4], /* CJK Ideograph Extension A */ + [0x4bb5, 0x4bb5], /* CJK Ideograph Extension A */ + [0x4bb6, 0x4bb6], /* CJK Ideograph Extension A */ + [0x4bb7, 0x4bb7], /* CJK Ideograph Extension A */ + [0x4bb8, 0x4bb8], /* CJK Ideograph Extension A */ + [0x4bb9, 0x4bb9], /* CJK Ideograph Extension A */ + [0x4bba, 0x4bba], /* CJK Ideograph Extension A */ + [0x4bbb, 0x4bbb], /* CJK Ideograph Extension A */ + [0x4bbc, 0x4bbc], /* CJK Ideograph Extension A */ + [0x4bbd, 0x4bbd], /* CJK Ideograph Extension A */ + [0x4bbe, 0x4bbe], /* CJK Ideograph Extension A */ + [0x4bbf, 0x4bbf], /* CJK Ideograph Extension A */ + [0x4bc0, 0x4bc0], /* CJK Ideograph Extension A */ + [0x4bc1, 0x4bc1], /* CJK Ideograph Extension A */ + [0x4bc2, 0x4bc2], /* CJK Ideograph Extension A */ + [0x4bc3, 0x4bc3], /* CJK Ideograph Extension A */ + [0x4bc4, 0x4bc4], /* CJK Ideograph Extension A */ + [0x4bc5, 0x4bc5], /* CJK Ideograph Extension A */ + [0x4bc6, 0x4bc6], /* CJK Ideograph Extension A */ + [0x4bc7, 0x4bc7], /* CJK Ideograph Extension A */ + [0x4bc8, 0x4bc8], /* CJK Ideograph Extension A */ + [0x4bc9, 0x4bc9], /* CJK Ideograph Extension A */ + [0x4bca, 0x4bca], /* CJK Ideograph Extension A */ + [0x4bcb, 0x4bcb], /* CJK Ideograph Extension A */ + [0x4bcc, 0x4bcc], /* CJK Ideograph Extension A */ + [0x4bcd, 0x4bcd], /* CJK Ideograph Extension A */ + [0x4bce, 0x4bce], /* CJK Ideograph Extension A */ + [0x4bcf, 0x4bcf], /* CJK Ideograph Extension A */ + [0x4bd0, 0x4bd0], /* CJK Ideograph Extension A */ + [0x4bd1, 0x4bd1], /* CJK Ideograph Extension A */ + [0x4bd2, 0x4bd2], /* CJK Ideograph Extension A */ + [0x4bd3, 0x4bd3], /* CJK Ideograph Extension A */ + [0x4bd4, 0x4bd4], /* CJK Ideograph Extension A */ + [0x4bd5, 0x4bd5], /* CJK Ideograph Extension A */ + [0x4bd6, 0x4bd6], /* CJK Ideograph Extension A */ + [0x4bd7, 0x4bd7], /* CJK Ideograph Extension A */ + [0x4bd8, 0x4bd8], /* CJK Ideograph Extension A */ + [0x4bd9, 0x4bd9], /* CJK Ideograph Extension A */ + [0x4bda, 0x4bda], /* CJK Ideograph Extension A */ + [0x4bdb, 0x4bdb], /* CJK Ideograph Extension A */ + [0x4bdc, 0x4bdc], /* CJK Ideograph Extension A */ + [0x4bdd, 0x4bdd], /* CJK Ideograph Extension A */ + [0x4bde, 0x4bde], /* CJK Ideograph Extension A */ + [0x4bdf, 0x4bdf], /* CJK Ideograph Extension A */ + [0x4be0, 0x4be0], /* CJK Ideograph Extension A */ + [0x4be1, 0x4be1], /* CJK Ideograph Extension A */ + [0x4be2, 0x4be2], /* CJK Ideograph Extension A */ + [0x4be3, 0x4be3], /* CJK Ideograph Extension A */ + [0x4be4, 0x4be4], /* CJK Ideograph Extension A */ + [0x4be5, 0x4be5], /* CJK Ideograph Extension A */ + [0x4be6, 0x4be6], /* CJK Ideograph Extension A */ + [0x4be7, 0x4be7], /* CJK Ideograph Extension A */ + [0x4be8, 0x4be8], /* CJK Ideograph Extension A */ + [0x4be9, 0x4be9], /* CJK Ideograph Extension A */ + [0x4bea, 0x4bea], /* CJK Ideograph Extension A */ + [0x4beb, 0x4beb], /* CJK Ideograph Extension A */ + [0x4bec, 0x4bec], /* CJK Ideograph Extension A */ + [0x4bed, 0x4bed], /* CJK Ideograph Extension A */ + [0x4bee, 0x4bee], /* CJK Ideograph Extension A */ + [0x4bef, 0x4bef], /* CJK Ideograph Extension A */ + [0x4bf0, 0x4bf0], /* CJK Ideograph Extension A */ + [0x4bf1, 0x4bf1], /* CJK Ideograph Extension A */ + [0x4bf2, 0x4bf2], /* CJK Ideograph Extension A */ + [0x4bf3, 0x4bf3], /* CJK Ideograph Extension A */ + [0x4bf4, 0x4bf4], /* CJK Ideograph Extension A */ + [0x4bf5, 0x4bf5], /* CJK Ideograph Extension A */ + [0x4bf6, 0x4bf6], /* CJK Ideograph Extension A */ + [0x4bf7, 0x4bf7], /* CJK Ideograph Extension A */ + [0x4bf8, 0x4bf8], /* CJK Ideograph Extension A */ + [0x4bf9, 0x4bf9], /* CJK Ideograph Extension A */ + [0x4bfa, 0x4bfa], /* CJK Ideograph Extension A */ + [0x4bfb, 0x4bfb], /* CJK Ideograph Extension A */ + [0x4bfc, 0x4bfc], /* CJK Ideograph Extension A */ + [0x4bfd, 0x4bfd], /* CJK Ideograph Extension A */ + [0x4bfe, 0x4bfe], /* CJK Ideograph Extension A */ + [0x4bff, 0x4bff], /* CJK Ideograph Extension A */ + [0x4c00, 0x4c00], /* CJK Ideograph Extension A */ + [0x4c01, 0x4c01], /* CJK Ideograph Extension A */ + [0x4c02, 0x4c02], /* CJK Ideograph Extension A */ + [0x4c03, 0x4c03], /* CJK Ideograph Extension A */ + [0x4c04, 0x4c04], /* CJK Ideograph Extension A */ + [0x4c05, 0x4c05], /* CJK Ideograph Extension A */ + [0x4c06, 0x4c06], /* CJK Ideograph Extension A */ + [0x4c07, 0x4c07], /* CJK Ideograph Extension A */ + [0x4c08, 0x4c08], /* CJK Ideograph Extension A */ + [0x4c09, 0x4c09], /* CJK Ideograph Extension A */ + [0x4c0a, 0x4c0a], /* CJK Ideograph Extension A */ + [0x4c0b, 0x4c0b], /* CJK Ideograph Extension A */ + [0x4c0c, 0x4c0c], /* CJK Ideograph Extension A */ + [0x4c0d, 0x4c0d], /* CJK Ideograph Extension A */ + [0x4c0e, 0x4c0e], /* CJK Ideograph Extension A */ + [0x4c0f, 0x4c0f], /* CJK Ideograph Extension A */ + [0x4c10, 0x4c10], /* CJK Ideograph Extension A */ + [0x4c11, 0x4c11], /* CJK Ideograph Extension A */ + [0x4c12, 0x4c12], /* CJK Ideograph Extension A */ + [0x4c13, 0x4c13], /* CJK Ideograph Extension A */ + [0x4c14, 0x4c14], /* CJK Ideograph Extension A */ + [0x4c15, 0x4c15], /* CJK Ideograph Extension A */ + [0x4c16, 0x4c16], /* CJK Ideograph Extension A */ + [0x4c17, 0x4c17], /* CJK Ideograph Extension A */ + [0x4c18, 0x4c18], /* CJK Ideograph Extension A */ + [0x4c19, 0x4c19], /* CJK Ideograph Extension A */ + [0x4c1a, 0x4c1a], /* CJK Ideograph Extension A */ + [0x4c1b, 0x4c1b], /* CJK Ideograph Extension A */ + [0x4c1c, 0x4c1c], /* CJK Ideograph Extension A */ + [0x4c1d, 0x4c1d], /* CJK Ideograph Extension A */ + [0x4c1e, 0x4c1e], /* CJK Ideograph Extension A */ + [0x4c1f, 0x4c1f], /* CJK Ideograph Extension A */ + [0x4c20, 0x4c20], /* CJK Ideograph Extension A */ + [0x4c21, 0x4c21], /* CJK Ideograph Extension A */ + [0x4c22, 0x4c22], /* CJK Ideograph Extension A */ + [0x4c23, 0x4c23], /* CJK Ideograph Extension A */ + [0x4c24, 0x4c24], /* CJK Ideograph Extension A */ + [0x4c25, 0x4c25], /* CJK Ideograph Extension A */ + [0x4c26, 0x4c26], /* CJK Ideograph Extension A */ + [0x4c27, 0x4c27], /* CJK Ideograph Extension A */ + [0x4c28, 0x4c28], /* CJK Ideograph Extension A */ + [0x4c29, 0x4c29], /* CJK Ideograph Extension A */ + [0x4c2a, 0x4c2a], /* CJK Ideograph Extension A */ + [0x4c2b, 0x4c2b], /* CJK Ideograph Extension A */ + [0x4c2c, 0x4c2c], /* CJK Ideograph Extension A */ + [0x4c2d, 0x4c2d], /* CJK Ideograph Extension A */ + [0x4c2e, 0x4c2e], /* CJK Ideograph Extension A */ + [0x4c2f, 0x4c2f], /* CJK Ideograph Extension A */ + [0x4c30, 0x4c30], /* CJK Ideograph Extension A */ + [0x4c31, 0x4c31], /* CJK Ideograph Extension A */ + [0x4c32, 0x4c32], /* CJK Ideograph Extension A */ + [0x4c33, 0x4c33], /* CJK Ideograph Extension A */ + [0x4c34, 0x4c34], /* CJK Ideograph Extension A */ + [0x4c35, 0x4c35], /* CJK Ideograph Extension A */ + [0x4c36, 0x4c36], /* CJK Ideograph Extension A */ + [0x4c37, 0x4c37], /* CJK Ideograph Extension A */ + [0x4c38, 0x4c38], /* CJK Ideograph Extension A */ + [0x4c39, 0x4c39], /* CJK Ideograph Extension A */ + [0x4c3a, 0x4c3a], /* CJK Ideograph Extension A */ + [0x4c3b, 0x4c3b], /* CJK Ideograph Extension A */ + [0x4c3c, 0x4c3c], /* CJK Ideograph Extension A */ + [0x4c3d, 0x4c3d], /* CJK Ideograph Extension A */ + [0x4c3e, 0x4c3e], /* CJK Ideograph Extension A */ + [0x4c3f, 0x4c3f], /* CJK Ideograph Extension A */ + [0x4c40, 0x4c40], /* CJK Ideograph Extension A */ + [0x4c41, 0x4c41], /* CJK Ideograph Extension A */ + [0x4c42, 0x4c42], /* CJK Ideograph Extension A */ + [0x4c43, 0x4c43], /* CJK Ideograph Extension A */ + [0x4c44, 0x4c44], /* CJK Ideograph Extension A */ + [0x4c45, 0x4c45], /* CJK Ideograph Extension A */ + [0x4c46, 0x4c46], /* CJK Ideograph Extension A */ + [0x4c47, 0x4c47], /* CJK Ideograph Extension A */ + [0x4c48, 0x4c48], /* CJK Ideograph Extension A */ + [0x4c49, 0x4c49], /* CJK Ideograph Extension A */ + [0x4c4a, 0x4c4a], /* CJK Ideograph Extension A */ + [0x4c4b, 0x4c4b], /* CJK Ideograph Extension A */ + [0x4c4c, 0x4c4c], /* CJK Ideograph Extension A */ + [0x4c4d, 0x4c4d], /* CJK Ideograph Extension A */ + [0x4c4e, 0x4c4e], /* CJK Ideograph Extension A */ + [0x4c4f, 0x4c4f], /* CJK Ideograph Extension A */ + [0x4c50, 0x4c50], /* CJK Ideograph Extension A */ + [0x4c51, 0x4c51], /* CJK Ideograph Extension A */ + [0x4c52, 0x4c52], /* CJK Ideograph Extension A */ + [0x4c53, 0x4c53], /* CJK Ideograph Extension A */ + [0x4c54, 0x4c54], /* CJK Ideograph Extension A */ + [0x4c55, 0x4c55], /* CJK Ideograph Extension A */ + [0x4c56, 0x4c56], /* CJK Ideograph Extension A */ + [0x4c57, 0x4c57], /* CJK Ideograph Extension A */ + [0x4c58, 0x4c58], /* CJK Ideograph Extension A */ + [0x4c59, 0x4c59], /* CJK Ideograph Extension A */ + [0x4c5a, 0x4c5a], /* CJK Ideograph Extension A */ + [0x4c5b, 0x4c5b], /* CJK Ideograph Extension A */ + [0x4c5c, 0x4c5c], /* CJK Ideograph Extension A */ + [0x4c5d, 0x4c5d], /* CJK Ideograph Extension A */ + [0x4c5e, 0x4c5e], /* CJK Ideograph Extension A */ + [0x4c5f, 0x4c5f], /* CJK Ideograph Extension A */ + [0x4c60, 0x4c60], /* CJK Ideograph Extension A */ + [0x4c61, 0x4c61], /* CJK Ideograph Extension A */ + [0x4c62, 0x4c62], /* CJK Ideograph Extension A */ + [0x4c63, 0x4c63], /* CJK Ideograph Extension A */ + [0x4c64, 0x4c64], /* CJK Ideograph Extension A */ + [0x4c65, 0x4c65], /* CJK Ideograph Extension A */ + [0x4c66, 0x4c66], /* CJK Ideograph Extension A */ + [0x4c67, 0x4c67], /* CJK Ideograph Extension A */ + [0x4c68, 0x4c68], /* CJK Ideograph Extension A */ + [0x4c69, 0x4c69], /* CJK Ideograph Extension A */ + [0x4c6a, 0x4c6a], /* CJK Ideograph Extension A */ + [0x4c6b, 0x4c6b], /* CJK Ideograph Extension A */ + [0x4c6c, 0x4c6c], /* CJK Ideograph Extension A */ + [0x4c6d, 0x4c6d], /* CJK Ideograph Extension A */ + [0x4c6e, 0x4c6e], /* CJK Ideograph Extension A */ + [0x4c6f, 0x4c6f], /* CJK Ideograph Extension A */ + [0x4c70, 0x4c70], /* CJK Ideograph Extension A */ + [0x4c71, 0x4c71], /* CJK Ideograph Extension A */ + [0x4c72, 0x4c72], /* CJK Ideograph Extension A */ + [0x4c73, 0x4c73], /* CJK Ideograph Extension A */ + [0x4c74, 0x4c74], /* CJK Ideograph Extension A */ + [0x4c75, 0x4c75], /* CJK Ideograph Extension A */ + [0x4c76, 0x4c76], /* CJK Ideograph Extension A */ + [0x4c77, 0x4c77], /* CJK Ideograph Extension A */ + [0x4c78, 0x4c78], /* CJK Ideograph Extension A */ + [0x4c79, 0x4c79], /* CJK Ideograph Extension A */ + [0x4c7a, 0x4c7a], /* CJK Ideograph Extension A */ + [0x4c7b, 0x4c7b], /* CJK Ideograph Extension A */ + [0x4c7c, 0x4c7c], /* CJK Ideograph Extension A */ + [0x4c7d, 0x4c7d], /* CJK Ideograph Extension A */ + [0x4c7e, 0x4c7e], /* CJK Ideograph Extension A */ + [0x4c7f, 0x4c7f], /* CJK Ideograph Extension A */ + [0x4c80, 0x4c80], /* CJK Ideograph Extension A */ + [0x4c81, 0x4c81], /* CJK Ideograph Extension A */ + [0x4c82, 0x4c82], /* CJK Ideograph Extension A */ + [0x4c83, 0x4c83], /* CJK Ideograph Extension A */ + [0x4c84, 0x4c84], /* CJK Ideograph Extension A */ + [0x4c85, 0x4c85], /* CJK Ideograph Extension A */ + [0x4c86, 0x4c86], /* CJK Ideograph Extension A */ + [0x4c87, 0x4c87], /* CJK Ideograph Extension A */ + [0x4c88, 0x4c88], /* CJK Ideograph Extension A */ + [0x4c89, 0x4c89], /* CJK Ideograph Extension A */ + [0x4c8a, 0x4c8a], /* CJK Ideograph Extension A */ + [0x4c8b, 0x4c8b], /* CJK Ideograph Extension A */ + [0x4c8c, 0x4c8c], /* CJK Ideograph Extension A */ + [0x4c8d, 0x4c8d], /* CJK Ideograph Extension A */ + [0x4c8e, 0x4c8e], /* CJK Ideograph Extension A */ + [0x4c8f, 0x4c8f], /* CJK Ideograph Extension A */ + [0x4c90, 0x4c90], /* CJK Ideograph Extension A */ + [0x4c91, 0x4c91], /* CJK Ideograph Extension A */ + [0x4c92, 0x4c92], /* CJK Ideograph Extension A */ + [0x4c93, 0x4c93], /* CJK Ideograph Extension A */ + [0x4c94, 0x4c94], /* CJK Ideograph Extension A */ + [0x4c95, 0x4c95], /* CJK Ideograph Extension A */ + [0x4c96, 0x4c96], /* CJK Ideograph Extension A */ + [0x4c97, 0x4c97], /* CJK Ideograph Extension A */ + [0x4c98, 0x4c98], /* CJK Ideograph Extension A */ + [0x4c99, 0x4c99], /* CJK Ideograph Extension A */ + [0x4c9a, 0x4c9a], /* CJK Ideograph Extension A */ + [0x4c9b, 0x4c9b], /* CJK Ideograph Extension A */ + [0x4c9c, 0x4c9c], /* CJK Ideograph Extension A */ + [0x4c9d, 0x4c9d], /* CJK Ideograph Extension A */ + [0x4c9e, 0x4c9e], /* CJK Ideograph Extension A */ + [0x4c9f, 0x4c9f], /* CJK Ideograph Extension A */ + [0x4ca0, 0x4ca0], /* CJK Ideograph Extension A */ + [0x4ca1, 0x4ca1], /* CJK Ideograph Extension A */ + [0x4ca2, 0x4ca2], /* CJK Ideograph Extension A */ + [0x4ca3, 0x4ca3], /* CJK Ideograph Extension A */ + [0x4ca4, 0x4ca4], /* CJK Ideograph Extension A */ + [0x4ca5, 0x4ca5], /* CJK Ideograph Extension A */ + [0x4ca6, 0x4ca6], /* CJK Ideograph Extension A */ + [0x4ca7, 0x4ca7], /* CJK Ideograph Extension A */ + [0x4ca8, 0x4ca8], /* CJK Ideograph Extension A */ + [0x4ca9, 0x4ca9], /* CJK Ideograph Extension A */ + [0x4caa, 0x4caa], /* CJK Ideograph Extension A */ + [0x4cab, 0x4cab], /* CJK Ideograph Extension A */ + [0x4cac, 0x4cac], /* CJK Ideograph Extension A */ + [0x4cad, 0x4cad], /* CJK Ideograph Extension A */ + [0x4cae, 0x4cae], /* CJK Ideograph Extension A */ + [0x4caf, 0x4caf], /* CJK Ideograph Extension A */ + [0x4cb0, 0x4cb0], /* CJK Ideograph Extension A */ + [0x4cb1, 0x4cb1], /* CJK Ideograph Extension A */ + [0x4cb2, 0x4cb2], /* CJK Ideograph Extension A */ + [0x4cb3, 0x4cb3], /* CJK Ideograph Extension A */ + [0x4cb4, 0x4cb4], /* CJK Ideograph Extension A */ + [0x4cb5, 0x4cb5], /* CJK Ideograph Extension A */ + [0x4cb6, 0x4cb6], /* CJK Ideograph Extension A */ + [0x4cb7, 0x4cb7], /* CJK Ideograph Extension A */ + [0x4cb8, 0x4cb8], /* CJK Ideograph Extension A */ + [0x4cb9, 0x4cb9], /* CJK Ideograph Extension A */ + [0x4cba, 0x4cba], /* CJK Ideograph Extension A */ + [0x4cbb, 0x4cbb], /* CJK Ideograph Extension A */ + [0x4cbc, 0x4cbc], /* CJK Ideograph Extension A */ + [0x4cbd, 0x4cbd], /* CJK Ideograph Extension A */ + [0x4cbe, 0x4cbe], /* CJK Ideograph Extension A */ + [0x4cbf, 0x4cbf], /* CJK Ideograph Extension A */ + [0x4cc0, 0x4cc0], /* CJK Ideograph Extension A */ + [0x4cc1, 0x4cc1], /* CJK Ideograph Extension A */ + [0x4cc2, 0x4cc2], /* CJK Ideograph Extension A */ + [0x4cc3, 0x4cc3], /* CJK Ideograph Extension A */ + [0x4cc4, 0x4cc4], /* CJK Ideograph Extension A */ + [0x4cc5, 0x4cc5], /* CJK Ideograph Extension A */ + [0x4cc6, 0x4cc6], /* CJK Ideograph Extension A */ + [0x4cc7, 0x4cc7], /* CJK Ideograph Extension A */ + [0x4cc8, 0x4cc8], /* CJK Ideograph Extension A */ + [0x4cc9, 0x4cc9], /* CJK Ideograph Extension A */ + [0x4cca, 0x4cca], /* CJK Ideograph Extension A */ + [0x4ccb, 0x4ccb], /* CJK Ideograph Extension A */ + [0x4ccc, 0x4ccc], /* CJK Ideograph Extension A */ + [0x4ccd, 0x4ccd], /* CJK Ideograph Extension A */ + [0x4cce, 0x4cce], /* CJK Ideograph Extension A */ + [0x4ccf, 0x4ccf], /* CJK Ideograph Extension A */ + [0x4cd0, 0x4cd0], /* CJK Ideograph Extension A */ + [0x4cd1, 0x4cd1], /* CJK Ideograph Extension A */ + [0x4cd2, 0x4cd2], /* CJK Ideograph Extension A */ + [0x4cd3, 0x4cd3], /* CJK Ideograph Extension A */ + [0x4cd4, 0x4cd4], /* CJK Ideograph Extension A */ + [0x4cd5, 0x4cd5], /* CJK Ideograph Extension A */ + [0x4cd6, 0x4cd6], /* CJK Ideograph Extension A */ + [0x4cd7, 0x4cd7], /* CJK Ideograph Extension A */ + [0x4cd8, 0x4cd8], /* CJK Ideograph Extension A */ + [0x4cd9, 0x4cd9], /* CJK Ideograph Extension A */ + [0x4cda, 0x4cda], /* CJK Ideograph Extension A */ + [0x4cdb, 0x4cdb], /* CJK Ideograph Extension A */ + [0x4cdc, 0x4cdc], /* CJK Ideograph Extension A */ + [0x4cdd, 0x4cdd], /* CJK Ideograph Extension A */ + [0x4cde, 0x4cde], /* CJK Ideograph Extension A */ + [0x4cdf, 0x4cdf], /* CJK Ideograph Extension A */ + [0x4ce0, 0x4ce0], /* CJK Ideograph Extension A */ + [0x4ce1, 0x4ce1], /* CJK Ideograph Extension A */ + [0x4ce2, 0x4ce2], /* CJK Ideograph Extension A */ + [0x4ce3, 0x4ce3], /* CJK Ideograph Extension A */ + [0x4ce4, 0x4ce4], /* CJK Ideograph Extension A */ + [0x4ce5, 0x4ce5], /* CJK Ideograph Extension A */ + [0x4ce6, 0x4ce6], /* CJK Ideograph Extension A */ + [0x4ce7, 0x4ce7], /* CJK Ideograph Extension A */ + [0x4ce8, 0x4ce8], /* CJK Ideograph Extension A */ + [0x4ce9, 0x4ce9], /* CJK Ideograph Extension A */ + [0x4cea, 0x4cea], /* CJK Ideograph Extension A */ + [0x4ceb, 0x4ceb], /* CJK Ideograph Extension A */ + [0x4cec, 0x4cec], /* CJK Ideograph Extension A */ + [0x4ced, 0x4ced], /* CJK Ideograph Extension A */ + [0x4cee, 0x4cee], /* CJK Ideograph Extension A */ + [0x4cef, 0x4cef], /* CJK Ideograph Extension A */ + [0x4cf0, 0x4cf0], /* CJK Ideograph Extension A */ + [0x4cf1, 0x4cf1], /* CJK Ideograph Extension A */ + [0x4cf2, 0x4cf2], /* CJK Ideograph Extension A */ + [0x4cf3, 0x4cf3], /* CJK Ideograph Extension A */ + [0x4cf4, 0x4cf4], /* CJK Ideograph Extension A */ + [0x4cf5, 0x4cf5], /* CJK Ideograph Extension A */ + [0x4cf6, 0x4cf6], /* CJK Ideograph Extension A */ + [0x4cf7, 0x4cf7], /* CJK Ideograph Extension A */ + [0x4cf8, 0x4cf8], /* CJK Ideograph Extension A */ + [0x4cf9, 0x4cf9], /* CJK Ideograph Extension A */ + [0x4cfa, 0x4cfa], /* CJK Ideograph Extension A */ + [0x4cfb, 0x4cfb], /* CJK Ideograph Extension A */ + [0x4cfc, 0x4cfc], /* CJK Ideograph Extension A */ + [0x4cfd, 0x4cfd], /* CJK Ideograph Extension A */ + [0x4cfe, 0x4cfe], /* CJK Ideograph Extension A */ + [0x4cff, 0x4cff], /* CJK Ideograph Extension A */ + [0x4d00, 0x4d00], /* CJK Ideograph Extension A */ + [0x4d01, 0x4d01], /* CJK Ideograph Extension A */ + [0x4d02, 0x4d02], /* CJK Ideograph Extension A */ + [0x4d03, 0x4d03], /* CJK Ideograph Extension A */ + [0x4d04, 0x4d04], /* CJK Ideograph Extension A */ + [0x4d05, 0x4d05], /* CJK Ideograph Extension A */ + [0x4d06, 0x4d06], /* CJK Ideograph Extension A */ + [0x4d07, 0x4d07], /* CJK Ideograph Extension A */ + [0x4d08, 0x4d08], /* CJK Ideograph Extension A */ + [0x4d09, 0x4d09], /* CJK Ideograph Extension A */ + [0x4d0a, 0x4d0a], /* CJK Ideograph Extension A */ + [0x4d0b, 0x4d0b], /* CJK Ideograph Extension A */ + [0x4d0c, 0x4d0c], /* CJK Ideograph Extension A */ + [0x4d0d, 0x4d0d], /* CJK Ideograph Extension A */ + [0x4d0e, 0x4d0e], /* CJK Ideograph Extension A */ + [0x4d0f, 0x4d0f], /* CJK Ideograph Extension A */ + [0x4d10, 0x4d10], /* CJK Ideograph Extension A */ + [0x4d11, 0x4d11], /* CJK Ideograph Extension A */ + [0x4d12, 0x4d12], /* CJK Ideograph Extension A */ + [0x4d13, 0x4d13], /* CJK Ideograph Extension A */ + [0x4d14, 0x4d14], /* CJK Ideograph Extension A */ + [0x4d15, 0x4d15], /* CJK Ideograph Extension A */ + [0x4d16, 0x4d16], /* CJK Ideograph Extension A */ + [0x4d17, 0x4d17], /* CJK Ideograph Extension A */ + [0x4d18, 0x4d18], /* CJK Ideograph Extension A */ + [0x4d19, 0x4d19], /* CJK Ideograph Extension A */ + [0x4d1a, 0x4d1a], /* CJK Ideograph Extension A */ + [0x4d1b, 0x4d1b], /* CJK Ideograph Extension A */ + [0x4d1c, 0x4d1c], /* CJK Ideograph Extension A */ + [0x4d1d, 0x4d1d], /* CJK Ideograph Extension A */ + [0x4d1e, 0x4d1e], /* CJK Ideograph Extension A */ + [0x4d1f, 0x4d1f], /* CJK Ideograph Extension A */ + [0x4d20, 0x4d20], /* CJK Ideograph Extension A */ + [0x4d21, 0x4d21], /* CJK Ideograph Extension A */ + [0x4d22, 0x4d22], /* CJK Ideograph Extension A */ + [0x4d23, 0x4d23], /* CJK Ideograph Extension A */ + [0x4d24, 0x4d24], /* CJK Ideograph Extension A */ + [0x4d25, 0x4d25], /* CJK Ideograph Extension A */ + [0x4d26, 0x4d26], /* CJK Ideograph Extension A */ + [0x4d27, 0x4d27], /* CJK Ideograph Extension A */ + [0x4d28, 0x4d28], /* CJK Ideograph Extension A */ + [0x4d29, 0x4d29], /* CJK Ideograph Extension A */ + [0x4d2a, 0x4d2a], /* CJK Ideograph Extension A */ + [0x4d2b, 0x4d2b], /* CJK Ideograph Extension A */ + [0x4d2c, 0x4d2c], /* CJK Ideograph Extension A */ + [0x4d2d, 0x4d2d], /* CJK Ideograph Extension A */ + [0x4d2e, 0x4d2e], /* CJK Ideograph Extension A */ + [0x4d2f, 0x4d2f], /* CJK Ideograph Extension A */ + [0x4d30, 0x4d30], /* CJK Ideograph Extension A */ + [0x4d31, 0x4d31], /* CJK Ideograph Extension A */ + [0x4d32, 0x4d32], /* CJK Ideograph Extension A */ + [0x4d33, 0x4d33], /* CJK Ideograph Extension A */ + [0x4d34, 0x4d34], /* CJK Ideograph Extension A */ + [0x4d35, 0x4d35], /* CJK Ideograph Extension A */ + [0x4d36, 0x4d36], /* CJK Ideograph Extension A */ + [0x4d37, 0x4d37], /* CJK Ideograph Extension A */ + [0x4d38, 0x4d38], /* CJK Ideograph Extension A */ + [0x4d39, 0x4d39], /* CJK Ideograph Extension A */ + [0x4d3a, 0x4d3a], /* CJK Ideograph Extension A */ + [0x4d3b, 0x4d3b], /* CJK Ideograph Extension A */ + [0x4d3c, 0x4d3c], /* CJK Ideograph Extension A */ + [0x4d3d, 0x4d3d], /* CJK Ideograph Extension A */ + [0x4d3e, 0x4d3e], /* CJK Ideograph Extension A */ + [0x4d3f, 0x4d3f], /* CJK Ideograph Extension A */ + [0x4d40, 0x4d40], /* CJK Ideograph Extension A */ + [0x4d41, 0x4d41], /* CJK Ideograph Extension A */ + [0x4d42, 0x4d42], /* CJK Ideograph Extension A */ + [0x4d43, 0x4d43], /* CJK Ideograph Extension A */ + [0x4d44, 0x4d44], /* CJK Ideograph Extension A */ + [0x4d45, 0x4d45], /* CJK Ideograph Extension A */ + [0x4d46, 0x4d46], /* CJK Ideograph Extension A */ + [0x4d47, 0x4d47], /* CJK Ideograph Extension A */ + [0x4d48, 0x4d48], /* CJK Ideograph Extension A */ + [0x4d49, 0x4d49], /* CJK Ideograph Extension A */ + [0x4d4a, 0x4d4a], /* CJK Ideograph Extension A */ + [0x4d4b, 0x4d4b], /* CJK Ideograph Extension A */ + [0x4d4c, 0x4d4c], /* CJK Ideograph Extension A */ + [0x4d4d, 0x4d4d], /* CJK Ideograph Extension A */ + [0x4d4e, 0x4d4e], /* CJK Ideograph Extension A */ + [0x4d4f, 0x4d4f], /* CJK Ideograph Extension A */ + [0x4d50, 0x4d50], /* CJK Ideograph Extension A */ + [0x4d51, 0x4d51], /* CJK Ideograph Extension A */ + [0x4d52, 0x4d52], /* CJK Ideograph Extension A */ + [0x4d53, 0x4d53], /* CJK Ideograph Extension A */ + [0x4d54, 0x4d54], /* CJK Ideograph Extension A */ + [0x4d55, 0x4d55], /* CJK Ideograph Extension A */ + [0x4d56, 0x4d56], /* CJK Ideograph Extension A */ + [0x4d57, 0x4d57], /* CJK Ideograph Extension A */ + [0x4d58, 0x4d58], /* CJK Ideograph Extension A */ + [0x4d59, 0x4d59], /* CJK Ideograph Extension A */ + [0x4d5a, 0x4d5a], /* CJK Ideograph Extension A */ + [0x4d5b, 0x4d5b], /* CJK Ideograph Extension A */ + [0x4d5c, 0x4d5c], /* CJK Ideograph Extension A */ + [0x4d5d, 0x4d5d], /* CJK Ideograph Extension A */ + [0x4d5e, 0x4d5e], /* CJK Ideograph Extension A */ + [0x4d5f, 0x4d5f], /* CJK Ideograph Extension A */ + [0x4d60, 0x4d60], /* CJK Ideograph Extension A */ + [0x4d61, 0x4d61], /* CJK Ideograph Extension A */ + [0x4d62, 0x4d62], /* CJK Ideograph Extension A */ + [0x4d63, 0x4d63], /* CJK Ideograph Extension A */ + [0x4d64, 0x4d64], /* CJK Ideograph Extension A */ + [0x4d65, 0x4d65], /* CJK Ideograph Extension A */ + [0x4d66, 0x4d66], /* CJK Ideograph Extension A */ + [0x4d67, 0x4d67], /* CJK Ideograph Extension A */ + [0x4d68, 0x4d68], /* CJK Ideograph Extension A */ + [0x4d69, 0x4d69], /* CJK Ideograph Extension A */ + [0x4d6a, 0x4d6a], /* CJK Ideograph Extension A */ + [0x4d6b, 0x4d6b], /* CJK Ideograph Extension A */ + [0x4d6c, 0x4d6c], /* CJK Ideograph Extension A */ + [0x4d6d, 0x4d6d], /* CJK Ideograph Extension A */ + [0x4d6e, 0x4d6e], /* CJK Ideograph Extension A */ + [0x4d6f, 0x4d6f], /* CJK Ideograph Extension A */ + [0x4d70, 0x4d70], /* CJK Ideograph Extension A */ + [0x4d71, 0x4d71], /* CJK Ideograph Extension A */ + [0x4d72, 0x4d72], /* CJK Ideograph Extension A */ + [0x4d73, 0x4d73], /* CJK Ideograph Extension A */ + [0x4d74, 0x4d74], /* CJK Ideograph Extension A */ + [0x4d75, 0x4d75], /* CJK Ideograph Extension A */ + [0x4d76, 0x4d76], /* CJK Ideograph Extension A */ + [0x4d77, 0x4d77], /* CJK Ideograph Extension A */ + [0x4d78, 0x4d78], /* CJK Ideograph Extension A */ + [0x4d79, 0x4d79], /* CJK Ideograph Extension A */ + [0x4d7a, 0x4d7a], /* CJK Ideograph Extension A */ + [0x4d7b, 0x4d7b], /* CJK Ideograph Extension A */ + [0x4d7c, 0x4d7c], /* CJK Ideograph Extension A */ + [0x4d7d, 0x4d7d], /* CJK Ideograph Extension A */ + [0x4d7e, 0x4d7e], /* CJK Ideograph Extension A */ + [0x4d7f, 0x4d7f], /* CJK Ideograph Extension A */ + [0x4d80, 0x4d80], /* CJK Ideograph Extension A */ + [0x4d81, 0x4d81], /* CJK Ideograph Extension A */ + [0x4d82, 0x4d82], /* CJK Ideograph Extension A */ + [0x4d83, 0x4d83], /* CJK Ideograph Extension A */ + [0x4d84, 0x4d84], /* CJK Ideograph Extension A */ + [0x4d85, 0x4d85], /* CJK Ideograph Extension A */ + [0x4d86, 0x4d86], /* CJK Ideograph Extension A */ + [0x4d87, 0x4d87], /* CJK Ideograph Extension A */ + [0x4d88, 0x4d88], /* CJK Ideograph Extension A */ + [0x4d89, 0x4d89], /* CJK Ideograph Extension A */ + [0x4d8a, 0x4d8a], /* CJK Ideograph Extension A */ + [0x4d8b, 0x4d8b], /* CJK Ideograph Extension A */ + [0x4d8c, 0x4d8c], /* CJK Ideograph Extension A */ + [0x4d8d, 0x4d8d], /* CJK Ideograph Extension A */ + [0x4d8e, 0x4d8e], /* CJK Ideograph Extension A */ + [0x4d8f, 0x4d8f], /* CJK Ideograph Extension A */ + [0x4d90, 0x4d90], /* CJK Ideograph Extension A */ + [0x4d91, 0x4d91], /* CJK Ideograph Extension A */ + [0x4d92, 0x4d92], /* CJK Ideograph Extension A */ + [0x4d93, 0x4d93], /* CJK Ideograph Extension A */ + [0x4d94, 0x4d94], /* CJK Ideograph Extension A */ + [0x4d95, 0x4d95], /* CJK Ideograph Extension A */ + [0x4d96, 0x4d96], /* CJK Ideograph Extension A */ + [0x4d97, 0x4d97], /* CJK Ideograph Extension A */ + [0x4d98, 0x4d98], /* CJK Ideograph Extension A */ + [0x4d99, 0x4d99], /* CJK Ideograph Extension A */ + [0x4d9a, 0x4d9a], /* CJK Ideograph Extension A */ + [0x4d9b, 0x4d9b], /* CJK Ideograph Extension A */ + [0x4d9c, 0x4d9c], /* CJK Ideograph Extension A */ + [0x4d9d, 0x4d9d], /* CJK Ideograph Extension A */ + [0x4d9e, 0x4d9e], /* CJK Ideograph Extension A */ + [0x4d9f, 0x4d9f], /* CJK Ideograph Extension A */ + [0x4da0, 0x4da0], /* CJK Ideograph Extension A */ + [0x4da1, 0x4da1], /* CJK Ideograph Extension A */ + [0x4da2, 0x4da2], /* CJK Ideograph Extension A */ + [0x4da3, 0x4da3], /* CJK Ideograph Extension A */ + [0x4da4, 0x4da4], /* CJK Ideograph Extension A */ + [0x4da5, 0x4da5], /* CJK Ideograph Extension A */ + [0x4da6, 0x4da6], /* CJK Ideograph Extension A */ + [0x4da7, 0x4da7], /* CJK Ideograph Extension A */ + [0x4da8, 0x4da8], /* CJK Ideograph Extension A */ + [0x4da9, 0x4da9], /* CJK Ideograph Extension A */ + [0x4daa, 0x4daa], /* CJK Ideograph Extension A */ + [0x4dab, 0x4dab], /* CJK Ideograph Extension A */ + [0x4dac, 0x4dac], /* CJK Ideograph Extension A */ + [0x4dad, 0x4dad], /* CJK Ideograph Extension A */ + [0x4dae, 0x4dae], /* CJK Ideograph Extension A */ + [0x4daf, 0x4daf], /* CJK Ideograph Extension A */ + [0x4db0, 0x4db0], /* CJK Ideograph Extension A */ + [0x4db1, 0x4db1], /* CJK Ideograph Extension A */ + [0x4db2, 0x4db2], /* CJK Ideograph Extension A */ + [0x4db3, 0x4db3], /* CJK Ideograph Extension A */ + [0x4db4, 0x4db4], /* CJK Ideograph Extension A */ + [0x4db5, 0x4db5], /* CJK Ideograph Extension A */ + [0x4db6, 0x4db6], + [0x4db7, 0x4db7], + [0x4db8, 0x4db8], + [0x4db9, 0x4db9], + [0x4dba, 0x4dba], + [0x4dbb, 0x4dbb], + [0x4dbc, 0x4dbc], + [0x4dbd, 0x4dbd], + [0x4dbe, 0x4dbe], + [0x4dbf, 0x4dbf], + [0x4dc0, 0x4dc0], /* HEXAGRAM FOR THE CREATIVE HEAVEN */ + [0x4dc1, 0x4dc1], /* HEXAGRAM FOR THE RECEPTIVE EARTH */ + [0x4dc2, 0x4dc2], /* HEXAGRAM FOR DIFFICULTY AT THE BEGINNING */ + [0x4dc3, 0x4dc3], /* HEXAGRAM FOR YOUTHFUL FOLLY */ + [0x4dc4, 0x4dc4], /* HEXAGRAM FOR WAITING */ + [0x4dc5, 0x4dc5], /* HEXAGRAM FOR CONFLICT */ + [0x4dc6, 0x4dc6], /* HEXAGRAM FOR THE ARMY */ + [0x4dc7, 0x4dc7], /* HEXAGRAM FOR HOLDING TOGETHER */ + [0x4dc8, 0x4dc8], /* HEXAGRAM FOR SMALL TAMING */ + [0x4dc9, 0x4dc9], /* HEXAGRAM FOR TREADING */ + [0x4dca, 0x4dca], /* HEXAGRAM FOR PEACE */ + [0x4dcb, 0x4dcb], /* HEXAGRAM FOR STANDSTILL */ + [0x4dcc, 0x4dcc], /* HEXAGRAM FOR FELLOWSHIP */ + [0x4dcd, 0x4dcd], /* HEXAGRAM FOR GREAT POSSESSION */ + [0x4dce, 0x4dce], /* HEXAGRAM FOR MODESTY */ + [0x4dcf, 0x4dcf], /* HEXAGRAM FOR ENTHUSIASM */ + [0x4dd0, 0x4dd0], /* HEXAGRAM FOR FOLLOWING */ + [0x4dd1, 0x4dd1], /* HEXAGRAM FOR WORK ON THE DECAYED */ + [0x4dd2, 0x4dd2], /* HEXAGRAM FOR APPROACH */ + [0x4dd3, 0x4dd3], /* HEXAGRAM FOR CONTEMPLATION */ + [0x4dd4, 0x4dd4], /* HEXAGRAM FOR BITING THROUGH */ + [0x4dd5, 0x4dd5], /* HEXAGRAM FOR GRACE */ + [0x4dd6, 0x4dd6], /* HEXAGRAM FOR SPLITTING APART */ + [0x4dd7, 0x4dd7], /* HEXAGRAM FOR RETURN */ + [0x4dd8, 0x4dd8], /* HEXAGRAM FOR INNOCENCE */ + [0x4dd9, 0x4dd9], /* HEXAGRAM FOR GREAT TAMING */ + [0x4dda, 0x4dda], /* HEXAGRAM FOR MOUTH CORNERS */ + [0x4ddb, 0x4ddb], /* HEXAGRAM FOR GREAT PREPONDERANCE */ + [0x4ddc, 0x4ddc], /* HEXAGRAM FOR THE ABYSMAL WATER */ + [0x4ddd, 0x4ddd], /* HEXAGRAM FOR THE CLINGING FIRE */ + [0x4dde, 0x4dde], /* HEXAGRAM FOR INFLUENCE */ + [0x4ddf, 0x4ddf], /* HEXAGRAM FOR DURATION */ + [0x4de0, 0x4de0], /* HEXAGRAM FOR RETREAT */ + [0x4de1, 0x4de1], /* HEXAGRAM FOR GREAT POWER */ + [0x4de2, 0x4de2], /* HEXAGRAM FOR PROGRESS */ + [0x4de3, 0x4de3], /* HEXAGRAM FOR DARKENING OF THE LIGHT */ + [0x4de4, 0x4de4], /* HEXAGRAM FOR THE FAMILY */ + [0x4de5, 0x4de5], /* HEXAGRAM FOR OPPOSITION */ + [0x4de6, 0x4de6], /* HEXAGRAM FOR OBSTRUCTION */ + [0x4de7, 0x4de7], /* HEXAGRAM FOR DELIVERANCE */ + [0x4de8, 0x4de8], /* HEXAGRAM FOR DECREASE */ + [0x4de9, 0x4de9], /* HEXAGRAM FOR INCREASE */ + [0x4dea, 0x4dea], /* HEXAGRAM FOR BREAKTHROUGH */ + [0x4deb, 0x4deb], /* HEXAGRAM FOR COMING TO MEET */ + [0x4dec, 0x4dec], /* HEXAGRAM FOR GATHERING TOGETHER */ + [0x4ded, 0x4ded], /* HEXAGRAM FOR PUSHING UPWARD */ + [0x4dee, 0x4dee], /* HEXAGRAM FOR OPPRESSION */ + [0x4def, 0x4def], /* HEXAGRAM FOR THE WELL */ + [0x4df0, 0x4df0], /* HEXAGRAM FOR REVOLUTION */ + [0x4df1, 0x4df1], /* HEXAGRAM FOR THE CAULDRON */ + [0x4df2, 0x4df2], /* HEXAGRAM FOR THE AROUSING THUNDER */ + [0x4df3, 0x4df3], /* HEXAGRAM FOR THE KEEPING STILL MOUNTAIN */ + [0x4df4, 0x4df4], /* HEXAGRAM FOR DEVELOPMENT */ + [0x4df5, 0x4df5], /* HEXAGRAM FOR THE MARRYING MAIDEN */ + [0x4df6, 0x4df6], /* HEXAGRAM FOR ABUNDANCE */ + [0x4df7, 0x4df7], /* HEXAGRAM FOR THE WANDERER */ + [0x4df8, 0x4df8], /* HEXAGRAM FOR THE GENTLE WIND */ + [0x4df9, 0x4df9], /* HEXAGRAM FOR THE JOYOUS LAKE */ + [0x4dfa, 0x4dfa], /* HEXAGRAM FOR DISPERSION */ + [0x4dfb, 0x4dfb], /* HEXAGRAM FOR LIMITATION */ + [0x4dfc, 0x4dfc], /* HEXAGRAM FOR INNER TRUTH */ + [0x4dfd, 0x4dfd], /* HEXAGRAM FOR SMALL PREPONDERANCE */ + [0x4dfe, 0x4dfe], /* HEXAGRAM FOR AFTER COMPLETION */ + [0x4dff, 0x4dff], /* HEXAGRAM FOR BEFORE COMPLETION */ + [0x4e00, 0x4e00], /* CJK Ideograph */ + [0x4e01, 0x4e01], /* CJK Ideograph */ + [0x4e02, 0x4e02], /* CJK Ideograph */ + [0x4e03, 0x4e03], /* CJK Ideograph */ + [0x4e04, 0x4e04], /* CJK Ideograph */ + [0x4e05, 0x4e05], /* CJK Ideograph */ + [0x4e06, 0x4e06], /* CJK Ideograph */ + [0x4e07, 0x4e07], /* CJK Ideograph */ + [0x4e08, 0x4e08], /* CJK Ideograph */ + [0x4e09, 0x4e09], /* CJK Ideograph */ + [0x4e0a, 0x4e0a], /* CJK Ideograph */ + [0x4e0b, 0x4e0b], /* CJK Ideograph */ + [0x4e0c, 0x4e0c], /* CJK Ideograph */ + [0x4e0d, 0x4e0d], /* CJK Ideograph */ + [0x4e0e, 0x4e0e], /* CJK Ideograph */ + [0x4e0f, 0x4e0f], /* CJK Ideograph */ + [0x4e10, 0x4e10], /* CJK Ideograph */ + [0x4e11, 0x4e11], /* CJK Ideograph */ + [0x4e12, 0x4e12], /* CJK Ideograph */ + [0x4e13, 0x4e13], /* CJK Ideograph */ + [0x4e14, 0x4e14], /* CJK Ideograph */ + [0x4e15, 0x4e15], /* CJK Ideograph */ + [0x4e16, 0x4e16], /* CJK Ideograph */ + [0x4e17, 0x4e17], /* CJK Ideograph */ + [0x4e18, 0x4e18], /* CJK Ideograph */ + [0x4e19, 0x4e19], /* CJK Ideograph */ + [0x4e1a, 0x4e1a], /* CJK Ideograph */ + [0x4e1b, 0x4e1b], /* CJK Ideograph */ + [0x4e1c, 0x4e1c], /* CJK Ideograph */ + [0x4e1d, 0x4e1d], /* CJK Ideograph */ + [0x4e1e, 0x4e1e], /* CJK Ideograph */ + [0x4e1f, 0x4e1f], /* CJK Ideograph */ + [0x4e20, 0x4e20], /* CJK Ideograph */ + [0x4e21, 0x4e21], /* CJK Ideograph */ + [0x4e22, 0x4e22], /* CJK Ideograph */ + [0x4e23, 0x4e23], /* CJK Ideograph */ + [0x4e24, 0x4e24], /* CJK Ideograph */ + [0x4e25, 0x4e25], /* CJK Ideograph */ + [0x4e26, 0x4e26], /* CJK Ideograph */ + [0x4e27, 0x4e27], /* CJK Ideograph */ + [0x4e28, 0x4e28], /* CJK Ideograph */ + [0x4e29, 0x4e29], /* CJK Ideograph */ + [0x4e2a, 0x4e2a], /* CJK Ideograph */ + [0x4e2b, 0x4e2b], /* CJK Ideograph */ + [0x4e2c, 0x4e2c], /* CJK Ideograph */ + [0x4e2d, 0x4e2d], /* CJK Ideograph */ + [0x4e2e, 0x4e2e], /* CJK Ideograph */ + [0x4e2f, 0x4e2f], /* CJK Ideograph */ + [0x4e30, 0x4e30], /* CJK Ideograph */ + [0x4e31, 0x4e31], /* CJK Ideograph */ + [0x4e32, 0x4e32], /* CJK Ideograph */ + [0x4e33, 0x4e33], /* CJK Ideograph */ + [0x4e34, 0x4e34], /* CJK Ideograph */ + [0x4e35, 0x4e35], /* CJK Ideograph */ + [0x4e36, 0x4e36], /* CJK Ideograph */ + [0x4e37, 0x4e37], /* CJK Ideograph */ + [0x4e38, 0x4e38], /* CJK Ideograph */ + [0x4e39, 0x4e39], /* CJK Ideograph */ + [0x4e3a, 0x4e3a], /* CJK Ideograph */ + [0x4e3b, 0x4e3b], /* CJK Ideograph */ + [0x4e3c, 0x4e3c], /* CJK Ideograph */ + [0x4e3d, 0x4e3d], /* CJK Ideograph */ + [0x4e3e, 0x4e3e], /* CJK Ideograph */ + [0x4e3f, 0x4e3f], /* CJK Ideograph */ + [0x4e40, 0x4e40], /* CJK Ideograph */ + [0x4e41, 0x4e41], /* CJK Ideograph */ + [0x4e42, 0x4e42], /* CJK Ideograph */ + [0x4e43, 0x4e43], /* CJK Ideograph */ + [0x4e44, 0x4e44], /* CJK Ideograph */ + [0x4e45, 0x4e45], /* CJK Ideograph */ + [0x4e46, 0x4e46], /* CJK Ideograph */ + [0x4e47, 0x4e47], /* CJK Ideograph */ + [0x4e48, 0x4e48], /* CJK Ideograph */ + [0x4e49, 0x4e49], /* CJK Ideograph */ + [0x4e4a, 0x4e4a], /* CJK Ideograph */ + [0x4e4b, 0x4e4b], /* CJK Ideograph */ + [0x4e4c, 0x4e4c], /* CJK Ideograph */ + [0x4e4d, 0x4e4d], /* CJK Ideograph */ + [0x4e4e, 0x4e4e], /* CJK Ideograph */ + [0x4e4f, 0x4e4f], /* CJK Ideograph */ + [0x4e50, 0x4e50], /* CJK Ideograph */ + [0x4e51, 0x4e51], /* CJK Ideograph */ + [0x4e52, 0x4e52], /* CJK Ideograph */ + [0x4e53, 0x4e53], /* CJK Ideograph */ + [0x4e54, 0x4e54], /* CJK Ideograph */ + [0x4e55, 0x4e55], /* CJK Ideograph */ + [0x4e56, 0x4e56], /* CJK Ideograph */ + [0x4e57, 0x4e57], /* CJK Ideograph */ + [0x4e58, 0x4e58], /* CJK Ideograph */ + [0x4e59, 0x4e59], /* CJK Ideograph */ + [0x4e5a, 0x4e5a], /* CJK Ideograph */ + [0x4e5b, 0x4e5b], /* CJK Ideograph */ + [0x4e5c, 0x4e5c], /* CJK Ideograph */ + [0x4e5d, 0x4e5d], /* CJK Ideograph */ + [0x4e5e, 0x4e5e], /* CJK Ideograph */ + [0x4e5f, 0x4e5f], /* CJK Ideograph */ + [0x4e60, 0x4e60], /* CJK Ideograph */ + [0x4e61, 0x4e61], /* CJK Ideograph */ + [0x4e62, 0x4e62], /* CJK Ideograph */ + [0x4e63, 0x4e63], /* CJK Ideograph */ + [0x4e64, 0x4e64], /* CJK Ideograph */ + [0x4e65, 0x4e65], /* CJK Ideograph */ + [0x4e66, 0x4e66], /* CJK Ideograph */ + [0x4e67, 0x4e67], /* CJK Ideograph */ + [0x4e68, 0x4e68], /* CJK Ideograph */ + [0x4e69, 0x4e69], /* CJK Ideograph */ + [0x4e6a, 0x4e6a], /* CJK Ideograph */ + [0x4e6b, 0x4e6b], /* CJK Ideograph */ + [0x4e6c, 0x4e6c], /* CJK Ideograph */ + [0x4e6d, 0x4e6d], /* CJK Ideograph */ + [0x4e6e, 0x4e6e], /* CJK Ideograph */ + [0x4e6f, 0x4e6f], /* CJK Ideograph */ + [0x4e70, 0x4e70], /* CJK Ideograph */ + [0x4e71, 0x4e71], /* CJK Ideograph */ + [0x4e72, 0x4e72], /* CJK Ideograph */ + [0x4e73, 0x4e73], /* CJK Ideograph */ + [0x4e74, 0x4e74], /* CJK Ideograph */ + [0x4e75, 0x4e75], /* CJK Ideograph */ + [0x4e76, 0x4e76], /* CJK Ideograph */ + [0x4e77, 0x4e77], /* CJK Ideograph */ + [0x4e78, 0x4e78], /* CJK Ideograph */ + [0x4e79, 0x4e79], /* CJK Ideograph */ + [0x4e7a, 0x4e7a], /* CJK Ideograph */ + [0x4e7b, 0x4e7b], /* CJK Ideograph */ + [0x4e7c, 0x4e7c], /* CJK Ideograph */ + [0x4e7d, 0x4e7d], /* CJK Ideograph */ + [0x4e7e, 0x4e7e], /* CJK Ideograph */ + [0x4e7f, 0x4e7f], /* CJK Ideograph */ + [0x4e80, 0x4e80], /* CJK Ideograph */ + [0x4e81, 0x4e81], /* CJK Ideograph */ + [0x4e82, 0x4e82], /* CJK Ideograph */ + [0x4e83, 0x4e83], /* CJK Ideograph */ + [0x4e84, 0x4e84], /* CJK Ideograph */ + [0x4e85, 0x4e85], /* CJK Ideograph */ + [0x4e86, 0x4e86], /* CJK Ideograph */ + [0x4e87, 0x4e87], /* CJK Ideograph */ + [0x4e88, 0x4e88], /* CJK Ideograph */ + [0x4e89, 0x4e89], /* CJK Ideograph */ + [0x4e8a, 0x4e8a], /* CJK Ideograph */ + [0x4e8b, 0x4e8b], /* CJK Ideograph */ + [0x4e8c, 0x4e8c], /* CJK Ideograph */ + [0x4e8d, 0x4e8d], /* CJK Ideograph */ + [0x4e8e, 0x4e8e], /* CJK Ideograph */ + [0x4e8f, 0x4e8f], /* CJK Ideograph */ + [0x4e90, 0x4e90], /* CJK Ideograph */ + [0x4e91, 0x4e91], /* CJK Ideograph */ + [0x4e92, 0x4e92], /* CJK Ideograph */ + [0x4e93, 0x4e93], /* CJK Ideograph */ + [0x4e94, 0x4e94], /* CJK Ideograph */ + [0x4e95, 0x4e95], /* CJK Ideograph */ + [0x4e96, 0x4e96], /* CJK Ideograph */ + [0x4e97, 0x4e97], /* CJK Ideograph */ + [0x4e98, 0x4e98], /* CJK Ideograph */ + [0x4e99, 0x4e99], /* CJK Ideograph */ + [0x4e9a, 0x4e9a], /* CJK Ideograph */ + [0x4e9b, 0x4e9b], /* CJK Ideograph */ + [0x4e9c, 0x4e9c], /* CJK Ideograph */ + [0x4e9d, 0x4e9d], /* CJK Ideograph */ + [0x4e9e, 0x4e9e], /* CJK Ideograph */ + [0x4e9f, 0x4e9f], /* CJK Ideograph */ + [0x4ea0, 0x4ea0], /* CJK Ideograph */ + [0x4ea1, 0x4ea1], /* CJK Ideograph */ + [0x4ea2, 0x4ea2], /* CJK Ideograph */ + [0x4ea3, 0x4ea3], /* CJK Ideograph */ + [0x4ea4, 0x4ea4], /* CJK Ideograph */ + [0x4ea5, 0x4ea5], /* CJK Ideograph */ + [0x4ea6, 0x4ea6], /* CJK Ideograph */ + [0x4ea7, 0x4ea7], /* CJK Ideograph */ + [0x4ea8, 0x4ea8], /* CJK Ideograph */ + [0x4ea9, 0x4ea9], /* CJK Ideograph */ + [0x4eaa, 0x4eaa], /* CJK Ideograph */ + [0x4eab, 0x4eab], /* CJK Ideograph */ + [0x4eac, 0x4eac], /* CJK Ideograph */ + [0x4ead, 0x4ead], /* CJK Ideograph */ + [0x4eae, 0x4eae], /* CJK Ideograph */ + [0x4eaf, 0x4eaf], /* CJK Ideograph */ + [0x4eb0, 0x4eb0], /* CJK Ideograph */ + [0x4eb1, 0x4eb1], /* CJK Ideograph */ + [0x4eb2, 0x4eb2], /* CJK Ideograph */ + [0x4eb3, 0x4eb3], /* CJK Ideograph */ + [0x4eb4, 0x4eb4], /* CJK Ideograph */ + [0x4eb5, 0x4eb5], /* CJK Ideograph */ + [0x4eb6, 0x4eb6], /* CJK Ideograph */ + [0x4eb7, 0x4eb7], /* CJK Ideograph */ + [0x4eb8, 0x4eb8], /* CJK Ideograph */ + [0x4eb9, 0x4eb9], /* CJK Ideograph */ + [0x4eba, 0x4eba], /* CJK Ideograph */ + [0x4ebb, 0x4ebb], /* CJK Ideograph */ + [0x4ebc, 0x4ebc], /* CJK Ideograph */ + [0x4ebd, 0x4ebd], /* CJK Ideograph */ + [0x4ebe, 0x4ebe], /* CJK Ideograph */ + [0x4ebf, 0x4ebf], /* CJK Ideograph */ + [0x4ec0, 0x4ec0], /* CJK Ideograph */ + [0x4ec1, 0x4ec1], /* CJK Ideograph */ + [0x4ec2, 0x4ec2], /* CJK Ideograph */ + [0x4ec3, 0x4ec3], /* CJK Ideograph */ + [0x4ec4, 0x4ec4], /* CJK Ideograph */ + [0x4ec5, 0x4ec5], /* CJK Ideograph */ + [0x4ec6, 0x4ec6], /* CJK Ideograph */ + [0x4ec7, 0x4ec7], /* CJK Ideograph */ + [0x4ec8, 0x4ec8], /* CJK Ideograph */ + [0x4ec9, 0x4ec9], /* CJK Ideograph */ + [0x4eca, 0x4eca], /* CJK Ideograph */ + [0x4ecb, 0x4ecb], /* CJK Ideograph */ + [0x4ecc, 0x4ecc], /* CJK Ideograph */ + [0x4ecd, 0x4ecd], /* CJK Ideograph */ + [0x4ece, 0x4ece], /* CJK Ideograph */ + [0x4ecf, 0x4ecf], /* CJK Ideograph */ + [0x4ed0, 0x4ed0], /* CJK Ideograph */ + [0x4ed1, 0x4ed1], /* CJK Ideograph */ + [0x4ed2, 0x4ed2], /* CJK Ideograph */ + [0x4ed3, 0x4ed3], /* CJK Ideograph */ + [0x4ed4, 0x4ed4], /* CJK Ideograph */ + [0x4ed5, 0x4ed5], /* CJK Ideograph */ + [0x4ed6, 0x4ed6], /* CJK Ideograph */ + [0x4ed7, 0x4ed7], /* CJK Ideograph */ + [0x4ed8, 0x4ed8], /* CJK Ideograph */ + [0x4ed9, 0x4ed9], /* CJK Ideograph */ + [0x4eda, 0x4eda], /* CJK Ideograph */ + [0x4edb, 0x4edb], /* CJK Ideograph */ + [0x4edc, 0x4edc], /* CJK Ideograph */ + [0x4edd, 0x4edd], /* CJK Ideograph */ + [0x4ede, 0x4ede], /* CJK Ideograph */ + [0x4edf, 0x4edf], /* CJK Ideograph */ + [0x4ee0, 0x4ee0], /* CJK Ideograph */ + [0x4ee1, 0x4ee1], /* CJK Ideograph */ + [0x4ee2, 0x4ee2], /* CJK Ideograph */ + [0x4ee3, 0x4ee3], /* CJK Ideograph */ + [0x4ee4, 0x4ee4], /* CJK Ideograph */ + [0x4ee5, 0x4ee5], /* CJK Ideograph */ + [0x4ee6, 0x4ee6], /* CJK Ideograph */ + [0x4ee7, 0x4ee7], /* CJK Ideograph */ + [0x4ee8, 0x4ee8], /* CJK Ideograph */ + [0x4ee9, 0x4ee9], /* CJK Ideograph */ + [0x4eea, 0x4eea], /* CJK Ideograph */ + [0x4eeb, 0x4eeb], /* CJK Ideograph */ + [0x4eec, 0x4eec], /* CJK Ideograph */ + [0x4eed, 0x4eed], /* CJK Ideograph */ + [0x4eee, 0x4eee], /* CJK Ideograph */ + [0x4eef, 0x4eef], /* CJK Ideograph */ + [0x4ef0, 0x4ef0], /* CJK Ideograph */ + [0x4ef1, 0x4ef1], /* CJK Ideograph */ + [0x4ef2, 0x4ef2], /* CJK Ideograph */ + [0x4ef3, 0x4ef3], /* CJK Ideograph */ + [0x4ef4, 0x4ef4], /* CJK Ideograph */ + [0x4ef5, 0x4ef5], /* CJK Ideograph */ + [0x4ef6, 0x4ef6], /* CJK Ideograph */ + [0x4ef7, 0x4ef7], /* CJK Ideograph */ + [0x4ef8, 0x4ef8], /* CJK Ideograph */ + [0x4ef9, 0x4ef9], /* CJK Ideograph */ + [0x4efa, 0x4efa], /* CJK Ideograph */ + [0x4efb, 0x4efb], /* CJK Ideograph */ + [0x4efc, 0x4efc], /* CJK Ideograph */ + [0x4efd, 0x4efd], /* CJK Ideograph */ + [0x4efe, 0x4efe], /* CJK Ideograph */ + [0x4eff, 0x4eff], /* CJK Ideograph */ + [0x4f00, 0x4f00], /* CJK Ideograph */ + [0x4f01, 0x4f01], /* CJK Ideograph */ + [0x4f02, 0x4f02], /* CJK Ideograph */ + [0x4f03, 0x4f03], /* CJK Ideograph */ + [0x4f04, 0x4f04], /* CJK Ideograph */ + [0x4f05, 0x4f05], /* CJK Ideograph */ + [0x4f06, 0x4f06], /* CJK Ideograph */ + [0x4f07, 0x4f07], /* CJK Ideograph */ + [0x4f08, 0x4f08], /* CJK Ideograph */ + [0x4f09, 0x4f09], /* CJK Ideograph */ + [0x4f0a, 0x4f0a], /* CJK Ideograph */ + [0x4f0b, 0x4f0b], /* CJK Ideograph */ + [0x4f0c, 0x4f0c], /* CJK Ideograph */ + [0x4f0d, 0x4f0d], /* CJK Ideograph */ + [0x4f0e, 0x4f0e], /* CJK Ideograph */ + [0x4f0f, 0x4f0f], /* CJK Ideograph */ + [0x4f10, 0x4f10], /* CJK Ideograph */ + [0x4f11, 0x4f11], /* CJK Ideograph */ + [0x4f12, 0x4f12], /* CJK Ideograph */ + [0x4f13, 0x4f13], /* CJK Ideograph */ + [0x4f14, 0x4f14], /* CJK Ideograph */ + [0x4f15, 0x4f15], /* CJK Ideograph */ + [0x4f16, 0x4f16], /* CJK Ideograph */ + [0x4f17, 0x4f17], /* CJK Ideograph */ + [0x4f18, 0x4f18], /* CJK Ideograph */ + [0x4f19, 0x4f19], /* CJK Ideograph */ + [0x4f1a, 0x4f1a], /* CJK Ideograph */ + [0x4f1b, 0x4f1b], /* CJK Ideograph */ + [0x4f1c, 0x4f1c], /* CJK Ideograph */ + [0x4f1d, 0x4f1d], /* CJK Ideograph */ + [0x4f1e, 0x4f1e], /* CJK Ideograph */ + [0x4f1f, 0x4f1f], /* CJK Ideograph */ + [0x4f20, 0x4f20], /* CJK Ideograph */ + [0x4f21, 0x4f21], /* CJK Ideograph */ + [0x4f22, 0x4f22], /* CJK Ideograph */ + [0x4f23, 0x4f23], /* CJK Ideograph */ + [0x4f24, 0x4f24], /* CJK Ideograph */ + [0x4f25, 0x4f25], /* CJK Ideograph */ + [0x4f26, 0x4f26], /* CJK Ideograph */ + [0x4f27, 0x4f27], /* CJK Ideograph */ + [0x4f28, 0x4f28], /* CJK Ideograph */ + [0x4f29, 0x4f29], /* CJK Ideograph */ + [0x4f2a, 0x4f2a], /* CJK Ideograph */ + [0x4f2b, 0x4f2b], /* CJK Ideograph */ + [0x4f2c, 0x4f2c], /* CJK Ideograph */ + [0x4f2d, 0x4f2d], /* CJK Ideograph */ + [0x4f2e, 0x4f2e], /* CJK Ideograph */ + [0x4f2f, 0x4f2f], /* CJK Ideograph */ + [0x4f30, 0x4f30], /* CJK Ideograph */ + [0x4f31, 0x4f31], /* CJK Ideograph */ + [0x4f32, 0x4f32], /* CJK Ideograph */ + [0x4f33, 0x4f33], /* CJK Ideograph */ + [0x4f34, 0x4f34], /* CJK Ideograph */ + [0x4f35, 0x4f35], /* CJK Ideograph */ + [0x4f36, 0x4f36], /* CJK Ideograph */ + [0x4f37, 0x4f37], /* CJK Ideograph */ + [0x4f38, 0x4f38], /* CJK Ideograph */ + [0x4f39, 0x4f39], /* CJK Ideograph */ + [0x4f3a, 0x4f3a], /* CJK Ideograph */ + [0x4f3b, 0x4f3b], /* CJK Ideograph */ + [0x4f3c, 0x4f3c], /* CJK Ideograph */ + [0x4f3d, 0x4f3d], /* CJK Ideograph */ + [0x4f3e, 0x4f3e], /* CJK Ideograph */ + [0x4f3f, 0x4f3f], /* CJK Ideograph */ + [0x4f40, 0x4f40], /* CJK Ideograph */ + [0x4f41, 0x4f41], /* CJK Ideograph */ + [0x4f42, 0x4f42], /* CJK Ideograph */ + [0x4f43, 0x4f43], /* CJK Ideograph */ + [0x4f44, 0x4f44], /* CJK Ideograph */ + [0x4f45, 0x4f45], /* CJK Ideograph */ + [0x4f46, 0x4f46], /* CJK Ideograph */ + [0x4f47, 0x4f47], /* CJK Ideograph */ + [0x4f48, 0x4f48], /* CJK Ideograph */ + [0x4f49, 0x4f49], /* CJK Ideograph */ + [0x4f4a, 0x4f4a], /* CJK Ideograph */ + [0x4f4b, 0x4f4b], /* CJK Ideograph */ + [0x4f4c, 0x4f4c], /* CJK Ideograph */ + [0x4f4d, 0x4f4d], /* CJK Ideograph */ + [0x4f4e, 0x4f4e], /* CJK Ideograph */ + [0x4f4f, 0x4f4f], /* CJK Ideograph */ + [0x4f50, 0x4f50], /* CJK Ideograph */ + [0x4f51, 0x4f51], /* CJK Ideograph */ + [0x4f52, 0x4f52], /* CJK Ideograph */ + [0x4f53, 0x4f53], /* CJK Ideograph */ + [0x4f54, 0x4f54], /* CJK Ideograph */ + [0x4f55, 0x4f55], /* CJK Ideograph */ + [0x4f56, 0x4f56], /* CJK Ideograph */ + [0x4f57, 0x4f57], /* CJK Ideograph */ + [0x4f58, 0x4f58], /* CJK Ideograph */ + [0x4f59, 0x4f59], /* CJK Ideograph */ + [0x4f5a, 0x4f5a], /* CJK Ideograph */ + [0x4f5b, 0x4f5b], /* CJK Ideograph */ + [0x4f5c, 0x4f5c], /* CJK Ideograph */ + [0x4f5d, 0x4f5d], /* CJK Ideograph */ + [0x4f5e, 0x4f5e], /* CJK Ideograph */ + [0x4f5f, 0x4f5f], /* CJK Ideograph */ + [0x4f60, 0x4f60], /* CJK Ideograph */ + [0x4f61, 0x4f61], /* CJK Ideograph */ + [0x4f62, 0x4f62], /* CJK Ideograph */ + [0x4f63, 0x4f63], /* CJK Ideograph */ + [0x4f64, 0x4f64], /* CJK Ideograph */ + [0x4f65, 0x4f65], /* CJK Ideograph */ + [0x4f66, 0x4f66], /* CJK Ideograph */ + [0x4f67, 0x4f67], /* CJK Ideograph */ + [0x4f68, 0x4f68], /* CJK Ideograph */ + [0x4f69, 0x4f69], /* CJK Ideograph */ + [0x4f6a, 0x4f6a], /* CJK Ideograph */ + [0x4f6b, 0x4f6b], /* CJK Ideograph */ + [0x4f6c, 0x4f6c], /* CJK Ideograph */ + [0x4f6d, 0x4f6d], /* CJK Ideograph */ + [0x4f6e, 0x4f6e], /* CJK Ideograph */ + [0x4f6f, 0x4f6f], /* CJK Ideograph */ + [0x4f70, 0x4f70], /* CJK Ideograph */ + [0x4f71, 0x4f71], /* CJK Ideograph */ + [0x4f72, 0x4f72], /* CJK Ideograph */ + [0x4f73, 0x4f73], /* CJK Ideograph */ + [0x4f74, 0x4f74], /* CJK Ideograph */ + [0x4f75, 0x4f75], /* CJK Ideograph */ + [0x4f76, 0x4f76], /* CJK Ideograph */ + [0x4f77, 0x4f77], /* CJK Ideograph */ + [0x4f78, 0x4f78], /* CJK Ideograph */ + [0x4f79, 0x4f79], /* CJK Ideograph */ + [0x4f7a, 0x4f7a], /* CJK Ideograph */ + [0x4f7b, 0x4f7b], /* CJK Ideograph */ + [0x4f7c, 0x4f7c], /* CJK Ideograph */ + [0x4f7d, 0x4f7d], /* CJK Ideograph */ + [0x4f7e, 0x4f7e], /* CJK Ideograph */ + [0x4f7f, 0x4f7f], /* CJK Ideograph */ + [0x4f80, 0x4f80], /* CJK Ideograph */ + [0x4f81, 0x4f81], /* CJK Ideograph */ + [0x4f82, 0x4f82], /* CJK Ideograph */ + [0x4f83, 0x4f83], /* CJK Ideograph */ + [0x4f84, 0x4f84], /* CJK Ideograph */ + [0x4f85, 0x4f85], /* CJK Ideograph */ + [0x4f86, 0x4f86], /* CJK Ideograph */ + [0x4f87, 0x4f87], /* CJK Ideograph */ + [0x4f88, 0x4f88], /* CJK Ideograph */ + [0x4f89, 0x4f89], /* CJK Ideograph */ + [0x4f8a, 0x4f8a], /* CJK Ideograph */ + [0x4f8b, 0x4f8b], /* CJK Ideograph */ + [0x4f8c, 0x4f8c], /* CJK Ideograph */ + [0x4f8d, 0x4f8d], /* CJK Ideograph */ + [0x4f8e, 0x4f8e], /* CJK Ideograph */ + [0x4f8f, 0x4f8f], /* CJK Ideograph */ + [0x4f90, 0x4f90], /* CJK Ideograph */ + [0x4f91, 0x4f91], /* CJK Ideograph */ + [0x4f92, 0x4f92], /* CJK Ideograph */ + [0x4f93, 0x4f93], /* CJK Ideograph */ + [0x4f94, 0x4f94], /* CJK Ideograph */ + [0x4f95, 0x4f95], /* CJK Ideograph */ + [0x4f96, 0x4f96], /* CJK Ideograph */ + [0x4f97, 0x4f97], /* CJK Ideograph */ + [0x4f98, 0x4f98], /* CJK Ideograph */ + [0x4f99, 0x4f99], /* CJK Ideograph */ + [0x4f9a, 0x4f9a], /* CJK Ideograph */ + [0x4f9b, 0x4f9b], /* CJK Ideograph */ + [0x4f9c, 0x4f9c], /* CJK Ideograph */ + [0x4f9d, 0x4f9d], /* CJK Ideograph */ + [0x4f9e, 0x4f9e], /* CJK Ideograph */ + [0x4f9f, 0x4f9f], /* CJK Ideograph */ + [0x4fa0, 0x4fa0], /* CJK Ideograph */ + [0x4fa1, 0x4fa1], /* CJK Ideograph */ + [0x4fa2, 0x4fa2], /* CJK Ideograph */ + [0x4fa3, 0x4fa3], /* CJK Ideograph */ + [0x4fa4, 0x4fa4], /* CJK Ideograph */ + [0x4fa5, 0x4fa5], /* CJK Ideograph */ + [0x4fa6, 0x4fa6], /* CJK Ideograph */ + [0x4fa7, 0x4fa7], /* CJK Ideograph */ + [0x4fa8, 0x4fa8], /* CJK Ideograph */ + [0x4fa9, 0x4fa9], /* CJK Ideograph */ + [0x4faa, 0x4faa], /* CJK Ideograph */ + [0x4fab, 0x4fab], /* CJK Ideograph */ + [0x4fac, 0x4fac], /* CJK Ideograph */ + [0x4fad, 0x4fad], /* CJK Ideograph */ + [0x4fae, 0x4fae], /* CJK Ideograph */ + [0x4faf, 0x4faf], /* CJK Ideograph */ + [0x4fb0, 0x4fb0], /* CJK Ideograph */ + [0x4fb1, 0x4fb1], /* CJK Ideograph */ + [0x4fb2, 0x4fb2], /* CJK Ideograph */ + [0x4fb3, 0x4fb3], /* CJK Ideograph */ + [0x4fb4, 0x4fb4], /* CJK Ideograph */ + [0x4fb5, 0x4fb5], /* CJK Ideograph */ + [0x4fb6, 0x4fb6], /* CJK Ideograph */ + [0x4fb7, 0x4fb7], /* CJK Ideograph */ + [0x4fb8, 0x4fb8], /* CJK Ideograph */ + [0x4fb9, 0x4fb9], /* CJK Ideograph */ + [0x4fba, 0x4fba], /* CJK Ideograph */ + [0x4fbb, 0x4fbb], /* CJK Ideograph */ + [0x4fbc, 0x4fbc], /* CJK Ideograph */ + [0x4fbd, 0x4fbd], /* CJK Ideograph */ + [0x4fbe, 0x4fbe], /* CJK Ideograph */ + [0x4fbf, 0x4fbf], /* CJK Ideograph */ + [0x4fc0, 0x4fc0], /* CJK Ideograph */ + [0x4fc1, 0x4fc1], /* CJK Ideograph */ + [0x4fc2, 0x4fc2], /* CJK Ideograph */ + [0x4fc3, 0x4fc3], /* CJK Ideograph */ + [0x4fc4, 0x4fc4], /* CJK Ideograph */ + [0x4fc5, 0x4fc5], /* CJK Ideograph */ + [0x4fc6, 0x4fc6], /* CJK Ideograph */ + [0x4fc7, 0x4fc7], /* CJK Ideograph */ + [0x4fc8, 0x4fc8], /* CJK Ideograph */ + [0x4fc9, 0x4fc9], /* CJK Ideograph */ + [0x4fca, 0x4fca], /* CJK Ideograph */ + [0x4fcb, 0x4fcb], /* CJK Ideograph */ + [0x4fcc, 0x4fcc], /* CJK Ideograph */ + [0x4fcd, 0x4fcd], /* CJK Ideograph */ + [0x4fce, 0x4fce], /* CJK Ideograph */ + [0x4fcf, 0x4fcf], /* CJK Ideograph */ + [0x4fd0, 0x4fd0], /* CJK Ideograph */ + [0x4fd1, 0x4fd1], /* CJK Ideograph */ + [0x4fd2, 0x4fd2], /* CJK Ideograph */ + [0x4fd3, 0x4fd3], /* CJK Ideograph */ + [0x4fd4, 0x4fd4], /* CJK Ideograph */ + [0x4fd5, 0x4fd5], /* CJK Ideograph */ + [0x4fd6, 0x4fd6], /* CJK Ideograph */ + [0x4fd7, 0x4fd7], /* CJK Ideograph */ + [0x4fd8, 0x4fd8], /* CJK Ideograph */ + [0x4fd9, 0x4fd9], /* CJK Ideograph */ + [0x4fda, 0x4fda], /* CJK Ideograph */ + [0x4fdb, 0x4fdb], /* CJK Ideograph */ + [0x4fdc, 0x4fdc], /* CJK Ideograph */ + [0x4fdd, 0x4fdd], /* CJK Ideograph */ + [0x4fde, 0x4fde], /* CJK Ideograph */ + [0x4fdf, 0x4fdf], /* CJK Ideograph */ + [0x4fe0, 0x4fe0], /* CJK Ideograph */ + [0x4fe1, 0x4fe1], /* CJK Ideograph */ + [0x4fe2, 0x4fe2], /* CJK Ideograph */ + [0x4fe3, 0x4fe3], /* CJK Ideograph */ + [0x4fe4, 0x4fe4], /* CJK Ideograph */ + [0x4fe5, 0x4fe5], /* CJK Ideograph */ + [0x4fe6, 0x4fe6], /* CJK Ideograph */ + [0x4fe7, 0x4fe7], /* CJK Ideograph */ + [0x4fe8, 0x4fe8], /* CJK Ideograph */ + [0x4fe9, 0x4fe9], /* CJK Ideograph */ + [0x4fea, 0x4fea], /* CJK Ideograph */ + [0x4feb, 0x4feb], /* CJK Ideograph */ + [0x4fec, 0x4fec], /* CJK Ideograph */ + [0x4fed, 0x4fed], /* CJK Ideograph */ + [0x4fee, 0x4fee], /* CJK Ideograph */ + [0x4fef, 0x4fef], /* CJK Ideograph */ + [0x4ff0, 0x4ff0], /* CJK Ideograph */ + [0x4ff1, 0x4ff1], /* CJK Ideograph */ + [0x4ff2, 0x4ff2], /* CJK Ideograph */ + [0x4ff3, 0x4ff3], /* CJK Ideograph */ + [0x4ff4, 0x4ff4], /* CJK Ideograph */ + [0x4ff5, 0x4ff5], /* CJK Ideograph */ + [0x4ff6, 0x4ff6], /* CJK Ideograph */ + [0x4ff7, 0x4ff7], /* CJK Ideograph */ + [0x4ff8, 0x4ff8], /* CJK Ideograph */ + [0x4ff9, 0x4ff9], /* CJK Ideograph */ + [0x4ffa, 0x4ffa], /* CJK Ideograph */ + [0x4ffb, 0x4ffb], /* CJK Ideograph */ + [0x4ffc, 0x4ffc], /* CJK Ideograph */ + [0x4ffd, 0x4ffd], /* CJK Ideograph */ + [0x4ffe, 0x4ffe], /* CJK Ideograph */ + [0x4fff, 0x4fff], /* CJK Ideograph */ + [0x5000, 0x5000], /* CJK Ideograph */ + [0x5001, 0x5001], /* CJK Ideograph */ + [0x5002, 0x5002], /* CJK Ideograph */ + [0x5003, 0x5003], /* CJK Ideograph */ + [0x5004, 0x5004], /* CJK Ideograph */ + [0x5005, 0x5005], /* CJK Ideograph */ + [0x5006, 0x5006], /* CJK Ideograph */ + [0x5007, 0x5007], /* CJK Ideograph */ + [0x5008, 0x5008], /* CJK Ideograph */ + [0x5009, 0x5009], /* CJK Ideograph */ + [0x500a, 0x500a], /* CJK Ideograph */ + [0x500b, 0x500b], /* CJK Ideograph */ + [0x500c, 0x500c], /* CJK Ideograph */ + [0x500d, 0x500d], /* CJK Ideograph */ + [0x500e, 0x500e], /* CJK Ideograph */ + [0x500f, 0x500f], /* CJK Ideograph */ + [0x5010, 0x5010], /* CJK Ideograph */ + [0x5011, 0x5011], /* CJK Ideograph */ + [0x5012, 0x5012], /* CJK Ideograph */ + [0x5013, 0x5013], /* CJK Ideograph */ + [0x5014, 0x5014], /* CJK Ideograph */ + [0x5015, 0x5015], /* CJK Ideograph */ + [0x5016, 0x5016], /* CJK Ideograph */ + [0x5017, 0x5017], /* CJK Ideograph */ + [0x5018, 0x5018], /* CJK Ideograph */ + [0x5019, 0x5019], /* CJK Ideograph */ + [0x501a, 0x501a], /* CJK Ideograph */ + [0x501b, 0x501b], /* CJK Ideograph */ + [0x501c, 0x501c], /* CJK Ideograph */ + [0x501d, 0x501d], /* CJK Ideograph */ + [0x501e, 0x501e], /* CJK Ideograph */ + [0x501f, 0x501f], /* CJK Ideograph */ + [0x5020, 0x5020], /* CJK Ideograph */ + [0x5021, 0x5021], /* CJK Ideograph */ + [0x5022, 0x5022], /* CJK Ideograph */ + [0x5023, 0x5023], /* CJK Ideograph */ + [0x5024, 0x5024], /* CJK Ideograph */ + [0x5025, 0x5025], /* CJK Ideograph */ + [0x5026, 0x5026], /* CJK Ideograph */ + [0x5027, 0x5027], /* CJK Ideograph */ + [0x5028, 0x5028], /* CJK Ideograph */ + [0x5029, 0x5029], /* CJK Ideograph */ + [0x502a, 0x502a], /* CJK Ideograph */ + [0x502b, 0x502b], /* CJK Ideograph */ + [0x502c, 0x502c], /* CJK Ideograph */ + [0x502d, 0x502d], /* CJK Ideograph */ + [0x502e, 0x502e], /* CJK Ideograph */ + [0x502f, 0x502f], /* CJK Ideograph */ + [0x5030, 0x5030], /* CJK Ideograph */ + [0x5031, 0x5031], /* CJK Ideograph */ + [0x5032, 0x5032], /* CJK Ideograph */ + [0x5033, 0x5033], /* CJK Ideograph */ + [0x5034, 0x5034], /* CJK Ideograph */ + [0x5035, 0x5035], /* CJK Ideograph */ + [0x5036, 0x5036], /* CJK Ideograph */ + [0x5037, 0x5037], /* CJK Ideograph */ + [0x5038, 0x5038], /* CJK Ideograph */ + [0x5039, 0x5039], /* CJK Ideograph */ + [0x503a, 0x503a], /* CJK Ideograph */ + [0x503b, 0x503b], /* CJK Ideograph */ + [0x503c, 0x503c], /* CJK Ideograph */ + [0x503d, 0x503d], /* CJK Ideograph */ + [0x503e, 0x503e], /* CJK Ideograph */ + [0x503f, 0x503f], /* CJK Ideograph */ + [0x5040, 0x5040], /* CJK Ideograph */ + [0x5041, 0x5041], /* CJK Ideograph */ + [0x5042, 0x5042], /* CJK Ideograph */ + [0x5043, 0x5043], /* CJK Ideograph */ + [0x5044, 0x5044], /* CJK Ideograph */ + [0x5045, 0x5045], /* CJK Ideograph */ + [0x5046, 0x5046], /* CJK Ideograph */ + [0x5047, 0x5047], /* CJK Ideograph */ + [0x5048, 0x5048], /* CJK Ideograph */ + [0x5049, 0x5049], /* CJK Ideograph */ + [0x504a, 0x504a], /* CJK Ideograph */ + [0x504b, 0x504b], /* CJK Ideograph */ + [0x504c, 0x504c], /* CJK Ideograph */ + [0x504d, 0x504d], /* CJK Ideograph */ + [0x504e, 0x504e], /* CJK Ideograph */ + [0x504f, 0x504f], /* CJK Ideograph */ + [0x5050, 0x5050], /* CJK Ideograph */ + [0x5051, 0x5051], /* CJK Ideograph */ + [0x5052, 0x5052], /* CJK Ideograph */ + [0x5053, 0x5053], /* CJK Ideograph */ + [0x5054, 0x5054], /* CJK Ideograph */ + [0x5055, 0x5055], /* CJK Ideograph */ + [0x5056, 0x5056], /* CJK Ideograph */ + [0x5057, 0x5057], /* CJK Ideograph */ + [0x5058, 0x5058], /* CJK Ideograph */ + [0x5059, 0x5059], /* CJK Ideograph */ + [0x505a, 0x505a], /* CJK Ideograph */ + [0x505b, 0x505b], /* CJK Ideograph */ + [0x505c, 0x505c], /* CJK Ideograph */ + [0x505d, 0x505d], /* CJK Ideograph */ + [0x505e, 0x505e], /* CJK Ideograph */ + [0x505f, 0x505f], /* CJK Ideograph */ + [0x5060, 0x5060], /* CJK Ideograph */ + [0x5061, 0x5061], /* CJK Ideograph */ + [0x5062, 0x5062], /* CJK Ideograph */ + [0x5063, 0x5063], /* CJK Ideograph */ + [0x5064, 0x5064], /* CJK Ideograph */ + [0x5065, 0x5065], /* CJK Ideograph */ + [0x5066, 0x5066], /* CJK Ideograph */ + [0x5067, 0x5067], /* CJK Ideograph */ + [0x5068, 0x5068], /* CJK Ideograph */ + [0x5069, 0x5069], /* CJK Ideograph */ + [0x506a, 0x506a], /* CJK Ideograph */ + [0x506b, 0x506b], /* CJK Ideograph */ + [0x506c, 0x506c], /* CJK Ideograph */ + [0x506d, 0x506d], /* CJK Ideograph */ + [0x506e, 0x506e], /* CJK Ideograph */ + [0x506f, 0x506f], /* CJK Ideograph */ + [0x5070, 0x5070], /* CJK Ideograph */ + [0x5071, 0x5071], /* CJK Ideograph */ + [0x5072, 0x5072], /* CJK Ideograph */ + [0x5073, 0x5073], /* CJK Ideograph */ + [0x5074, 0x5074], /* CJK Ideograph */ + [0x5075, 0x5075], /* CJK Ideograph */ + [0x5076, 0x5076], /* CJK Ideograph */ + [0x5077, 0x5077], /* CJK Ideograph */ + [0x5078, 0x5078], /* CJK Ideograph */ + [0x5079, 0x5079], /* CJK Ideograph */ + [0x507a, 0x507a], /* CJK Ideograph */ + [0x507b, 0x507b], /* CJK Ideograph */ + [0x507c, 0x507c], /* CJK Ideograph */ + [0x507d, 0x507d], /* CJK Ideograph */ + [0x507e, 0x507e], /* CJK Ideograph */ + [0x507f, 0x507f], /* CJK Ideograph */ + [0x5080, 0x5080], /* CJK Ideograph */ + [0x5081, 0x5081], /* CJK Ideograph */ + [0x5082, 0x5082], /* CJK Ideograph */ + [0x5083, 0x5083], /* CJK Ideograph */ + [0x5084, 0x5084], /* CJK Ideograph */ + [0x5085, 0x5085], /* CJK Ideograph */ + [0x5086, 0x5086], /* CJK Ideograph */ + [0x5087, 0x5087], /* CJK Ideograph */ + [0x5088, 0x5088], /* CJK Ideograph */ + [0x5089, 0x5089], /* CJK Ideograph */ + [0x508a, 0x508a], /* CJK Ideograph */ + [0x508b, 0x508b], /* CJK Ideograph */ + [0x508c, 0x508c], /* CJK Ideograph */ + [0x508d, 0x508d], /* CJK Ideograph */ + [0x508e, 0x508e], /* CJK Ideograph */ + [0x508f, 0x508f], /* CJK Ideograph */ + [0x5090, 0x5090], /* CJK Ideograph */ + [0x5091, 0x5091], /* CJK Ideograph */ + [0x5092, 0x5092], /* CJK Ideograph */ + [0x5093, 0x5093], /* CJK Ideograph */ + [0x5094, 0x5094], /* CJK Ideograph */ + [0x5095, 0x5095], /* CJK Ideograph */ + [0x5096, 0x5096], /* CJK Ideograph */ + [0x5097, 0x5097], /* CJK Ideograph */ + [0x5098, 0x5098], /* CJK Ideograph */ + [0x5099, 0x5099], /* CJK Ideograph */ + [0x509a, 0x509a], /* CJK Ideograph */ + [0x509b, 0x509b], /* CJK Ideograph */ + [0x509c, 0x509c], /* CJK Ideograph */ + [0x509d, 0x509d], /* CJK Ideograph */ + [0x509e, 0x509e], /* CJK Ideograph */ + [0x509f, 0x509f], /* CJK Ideograph */ + [0x50a0, 0x50a0], /* CJK Ideograph */ + [0x50a1, 0x50a1], /* CJK Ideograph */ + [0x50a2, 0x50a2], /* CJK Ideograph */ + [0x50a3, 0x50a3], /* CJK Ideograph */ + [0x50a4, 0x50a4], /* CJK Ideograph */ + [0x50a5, 0x50a5], /* CJK Ideograph */ + [0x50a6, 0x50a6], /* CJK Ideograph */ + [0x50a7, 0x50a7], /* CJK Ideograph */ + [0x50a8, 0x50a8], /* CJK Ideograph */ + [0x50a9, 0x50a9], /* CJK Ideograph */ + [0x50aa, 0x50aa], /* CJK Ideograph */ + [0x50ab, 0x50ab], /* CJK Ideograph */ + [0x50ac, 0x50ac], /* CJK Ideograph */ + [0x50ad, 0x50ad], /* CJK Ideograph */ + [0x50ae, 0x50ae], /* CJK Ideograph */ + [0x50af, 0x50af], /* CJK Ideograph */ + [0x50b0, 0x50b0], /* CJK Ideograph */ + [0x50b1, 0x50b1], /* CJK Ideograph */ + [0x50b2, 0x50b2], /* CJK Ideograph */ + [0x50b3, 0x50b3], /* CJK Ideograph */ + [0x50b4, 0x50b4], /* CJK Ideograph */ + [0x50b5, 0x50b5], /* CJK Ideograph */ + [0x50b6, 0x50b6], /* CJK Ideograph */ + [0x50b7, 0x50b7], /* CJK Ideograph */ + [0x50b8, 0x50b8], /* CJK Ideograph */ + [0x50b9, 0x50b9], /* CJK Ideograph */ + [0x50ba, 0x50ba], /* CJK Ideograph */ + [0x50bb, 0x50bb], /* CJK Ideograph */ + [0x50bc, 0x50bc], /* CJK Ideograph */ + [0x50bd, 0x50bd], /* CJK Ideograph */ + [0x50be, 0x50be], /* CJK Ideograph */ + [0x50bf, 0x50bf], /* CJK Ideograph */ + [0x50c0, 0x50c0], /* CJK Ideograph */ + [0x50c1, 0x50c1], /* CJK Ideograph */ + [0x50c2, 0x50c2], /* CJK Ideograph */ + [0x50c3, 0x50c3], /* CJK Ideograph */ + [0x50c4, 0x50c4], /* CJK Ideograph */ + [0x50c5, 0x50c5], /* CJK Ideograph */ + [0x50c6, 0x50c6], /* CJK Ideograph */ + [0x50c7, 0x50c7], /* CJK Ideograph */ + [0x50c8, 0x50c8], /* CJK Ideograph */ + [0x50c9, 0x50c9], /* CJK Ideograph */ + [0x50ca, 0x50ca], /* CJK Ideograph */ + [0x50cb, 0x50cb], /* CJK Ideograph */ + [0x50cc, 0x50cc], /* CJK Ideograph */ + [0x50cd, 0x50cd], /* CJK Ideograph */ + [0x50ce, 0x50ce], /* CJK Ideograph */ + [0x50cf, 0x50cf], /* CJK Ideograph */ + [0x50d0, 0x50d0], /* CJK Ideograph */ + [0x50d1, 0x50d1], /* CJK Ideograph */ + [0x50d2, 0x50d2], /* CJK Ideograph */ + [0x50d3, 0x50d3], /* CJK Ideograph */ + [0x50d4, 0x50d4], /* CJK Ideograph */ + [0x50d5, 0x50d5], /* CJK Ideograph */ + [0x50d6, 0x50d6], /* CJK Ideograph */ + [0x50d7, 0x50d7], /* CJK Ideograph */ + [0x50d8, 0x50d8], /* CJK Ideograph */ + [0x50d9, 0x50d9], /* CJK Ideograph */ + [0x50da, 0x50da], /* CJK Ideograph */ + [0x50db, 0x50db], /* CJK Ideograph */ + [0x50dc, 0x50dc], /* CJK Ideograph */ + [0x50dd, 0x50dd], /* CJK Ideograph */ + [0x50de, 0x50de], /* CJK Ideograph */ + [0x50df, 0x50df], /* CJK Ideograph */ + [0x50e0, 0x50e0], /* CJK Ideograph */ + [0x50e1, 0x50e1], /* CJK Ideograph */ + [0x50e2, 0x50e2], /* CJK Ideograph */ + [0x50e3, 0x50e3], /* CJK Ideograph */ + [0x50e4, 0x50e4], /* CJK Ideograph */ + [0x50e5, 0x50e5], /* CJK Ideograph */ + [0x50e6, 0x50e6], /* CJK Ideograph */ + [0x50e7, 0x50e7], /* CJK Ideograph */ + [0x50e8, 0x50e8], /* CJK Ideograph */ + [0x50e9, 0x50e9], /* CJK Ideograph */ + [0x50ea, 0x50ea], /* CJK Ideograph */ + [0x50eb, 0x50eb], /* CJK Ideograph */ + [0x50ec, 0x50ec], /* CJK Ideograph */ + [0x50ed, 0x50ed], /* CJK Ideograph */ + [0x50ee, 0x50ee], /* CJK Ideograph */ + [0x50ef, 0x50ef], /* CJK Ideograph */ + [0x50f0, 0x50f0], /* CJK Ideograph */ + [0x50f1, 0x50f1], /* CJK Ideograph */ + [0x50f2, 0x50f2], /* CJK Ideograph */ + [0x50f3, 0x50f3], /* CJK Ideograph */ + [0x50f4, 0x50f4], /* CJK Ideograph */ + [0x50f5, 0x50f5], /* CJK Ideograph */ + [0x50f6, 0x50f6], /* CJK Ideograph */ + [0x50f7, 0x50f7], /* CJK Ideograph */ + [0x50f8, 0x50f8], /* CJK Ideograph */ + [0x50f9, 0x50f9], /* CJK Ideograph */ + [0x50fa, 0x50fa], /* CJK Ideograph */ + [0x50fb, 0x50fb], /* CJK Ideograph */ + [0x50fc, 0x50fc], /* CJK Ideograph */ + [0x50fd, 0x50fd], /* CJK Ideograph */ + [0x50fe, 0x50fe], /* CJK Ideograph */ + [0x50ff, 0x50ff], /* CJK Ideograph */ + [0x5100, 0x5100], /* CJK Ideograph */ + [0x5101, 0x5101], /* CJK Ideograph */ + [0x5102, 0x5102], /* CJK Ideograph */ + [0x5103, 0x5103], /* CJK Ideograph */ + [0x5104, 0x5104], /* CJK Ideograph */ + [0x5105, 0x5105], /* CJK Ideograph */ + [0x5106, 0x5106], /* CJK Ideograph */ + [0x5107, 0x5107], /* CJK Ideograph */ + [0x5108, 0x5108], /* CJK Ideograph */ + [0x5109, 0x5109], /* CJK Ideograph */ + [0x510a, 0x510a], /* CJK Ideograph */ + [0x510b, 0x510b], /* CJK Ideograph */ + [0x510c, 0x510c], /* CJK Ideograph */ + [0x510d, 0x510d], /* CJK Ideograph */ + [0x510e, 0x510e], /* CJK Ideograph */ + [0x510f, 0x510f], /* CJK Ideograph */ + [0x5110, 0x5110], /* CJK Ideograph */ + [0x5111, 0x5111], /* CJK Ideograph */ + [0x5112, 0x5112], /* CJK Ideograph */ + [0x5113, 0x5113], /* CJK Ideograph */ + [0x5114, 0x5114], /* CJK Ideograph */ + [0x5115, 0x5115], /* CJK Ideograph */ + [0x5116, 0x5116], /* CJK Ideograph */ + [0x5117, 0x5117], /* CJK Ideograph */ + [0x5118, 0x5118], /* CJK Ideograph */ + [0x5119, 0x5119], /* CJK Ideograph */ + [0x511a, 0x511a], /* CJK Ideograph */ + [0x511b, 0x511b], /* CJK Ideograph */ + [0x511c, 0x511c], /* CJK Ideograph */ + [0x511d, 0x511d], /* CJK Ideograph */ + [0x511e, 0x511e], /* CJK Ideograph */ + [0x511f, 0x511f], /* CJK Ideograph */ + [0x5120, 0x5120], /* CJK Ideograph */ + [0x5121, 0x5121], /* CJK Ideograph */ + [0x5122, 0x5122], /* CJK Ideograph */ + [0x5123, 0x5123], /* CJK Ideograph */ + [0x5124, 0x5124], /* CJK Ideograph */ + [0x5125, 0x5125], /* CJK Ideograph */ + [0x5126, 0x5126], /* CJK Ideograph */ + [0x5127, 0x5127], /* CJK Ideograph */ + [0x5128, 0x5128], /* CJK Ideograph */ + [0x5129, 0x5129], /* CJK Ideograph */ + [0x512a, 0x512a], /* CJK Ideograph */ + [0x512b, 0x512b], /* CJK Ideograph */ + [0x512c, 0x512c], /* CJK Ideograph */ + [0x512d, 0x512d], /* CJK Ideograph */ + [0x512e, 0x512e], /* CJK Ideograph */ + [0x512f, 0x512f], /* CJK Ideograph */ + [0x5130, 0x5130], /* CJK Ideograph */ + [0x5131, 0x5131], /* CJK Ideograph */ + [0x5132, 0x5132], /* CJK Ideograph */ + [0x5133, 0x5133], /* CJK Ideograph */ + [0x5134, 0x5134], /* CJK Ideograph */ + [0x5135, 0x5135], /* CJK Ideograph */ + [0x5136, 0x5136], /* CJK Ideograph */ + [0x5137, 0x5137], /* CJK Ideograph */ + [0x5138, 0x5138], /* CJK Ideograph */ + [0x5139, 0x5139], /* CJK Ideograph */ + [0x513a, 0x513a], /* CJK Ideograph */ + [0x513b, 0x513b], /* CJK Ideograph */ + [0x513c, 0x513c], /* CJK Ideograph */ + [0x513d, 0x513d], /* CJK Ideograph */ + [0x513e, 0x513e], /* CJK Ideograph */ + [0x513f, 0x513f], /* CJK Ideograph */ + [0x5140, 0x5140], /* CJK Ideograph */ + [0x5141, 0x5141], /* CJK Ideograph */ + [0x5142, 0x5142], /* CJK Ideograph */ + [0x5143, 0x5143], /* CJK Ideograph */ + [0x5144, 0x5144], /* CJK Ideograph */ + [0x5145, 0x5145], /* CJK Ideograph */ + [0x5146, 0x5146], /* CJK Ideograph */ + [0x5147, 0x5147], /* CJK Ideograph */ + [0x5148, 0x5148], /* CJK Ideograph */ + [0x5149, 0x5149], /* CJK Ideograph */ + [0x514a, 0x514a], /* CJK Ideograph */ + [0x514b, 0x514b], /* CJK Ideograph */ + [0x514c, 0x514c], /* CJK Ideograph */ + [0x514d, 0x514d], /* CJK Ideograph */ + [0x514e, 0x514e], /* CJK Ideograph */ + [0x514f, 0x514f], /* CJK Ideograph */ + [0x5150, 0x5150], /* CJK Ideograph */ + [0x5151, 0x5151], /* CJK Ideograph */ + [0x5152, 0x5152], /* CJK Ideograph */ + [0x5153, 0x5153], /* CJK Ideograph */ + [0x5154, 0x5154], /* CJK Ideograph */ + [0x5155, 0x5155], /* CJK Ideograph */ + [0x5156, 0x5156], /* CJK Ideograph */ + [0x5157, 0x5157], /* CJK Ideograph */ + [0x5158, 0x5158], /* CJK Ideograph */ + [0x5159, 0x5159], /* CJK Ideograph */ + [0x515a, 0x515a], /* CJK Ideograph */ + [0x515b, 0x515b], /* CJK Ideograph */ + [0x515c, 0x515c], /* CJK Ideograph */ + [0x515d, 0x515d], /* CJK Ideograph */ + [0x515e, 0x515e], /* CJK Ideograph */ + [0x515f, 0x515f], /* CJK Ideograph */ + [0x5160, 0x5160], /* CJK Ideograph */ + [0x5161, 0x5161], /* CJK Ideograph */ + [0x5162, 0x5162], /* CJK Ideograph */ + [0x5163, 0x5163], /* CJK Ideograph */ + [0x5164, 0x5164], /* CJK Ideograph */ + [0x5165, 0x5165], /* CJK Ideograph */ + [0x5166, 0x5166], /* CJK Ideograph */ + [0x5167, 0x5167], /* CJK Ideograph */ + [0x5168, 0x5168], /* CJK Ideograph */ + [0x5169, 0x5169], /* CJK Ideograph */ + [0x516a, 0x516a], /* CJK Ideograph */ + [0x516b, 0x516b], /* CJK Ideograph */ + [0x516c, 0x516c], /* CJK Ideograph */ + [0x516d, 0x516d], /* CJK Ideograph */ + [0x516e, 0x516e], /* CJK Ideograph */ + [0x516f, 0x516f], /* CJK Ideograph */ + [0x5170, 0x5170], /* CJK Ideograph */ + [0x5171, 0x5171], /* CJK Ideograph */ + [0x5172, 0x5172], /* CJK Ideograph */ + [0x5173, 0x5173], /* CJK Ideograph */ + [0x5174, 0x5174], /* CJK Ideograph */ + [0x5175, 0x5175], /* CJK Ideograph */ + [0x5176, 0x5176], /* CJK Ideograph */ + [0x5177, 0x5177], /* CJK Ideograph */ + [0x5178, 0x5178], /* CJK Ideograph */ + [0x5179, 0x5179], /* CJK Ideograph */ + [0x517a, 0x517a], /* CJK Ideograph */ + [0x517b, 0x517b], /* CJK Ideograph */ + [0x517c, 0x517c], /* CJK Ideograph */ + [0x517d, 0x517d], /* CJK Ideograph */ + [0x517e, 0x517e], /* CJK Ideograph */ + [0x517f, 0x517f], /* CJK Ideograph */ + [0x5180, 0x5180], /* CJK Ideograph */ + [0x5181, 0x5181], /* CJK Ideograph */ + [0x5182, 0x5182], /* CJK Ideograph */ + [0x5183, 0x5183], /* CJK Ideograph */ + [0x5184, 0x5184], /* CJK Ideograph */ + [0x5185, 0x5185], /* CJK Ideograph */ + [0x5186, 0x5186], /* CJK Ideograph */ + [0x5187, 0x5187], /* CJK Ideograph */ + [0x5188, 0x5188], /* CJK Ideograph */ + [0x5189, 0x5189], /* CJK Ideograph */ + [0x518a, 0x518a], /* CJK Ideograph */ + [0x518b, 0x518b], /* CJK Ideograph */ + [0x518c, 0x518c], /* CJK Ideograph */ + [0x518d, 0x518d], /* CJK Ideograph */ + [0x518e, 0x518e], /* CJK Ideograph */ + [0x518f, 0x518f], /* CJK Ideograph */ + [0x5190, 0x5190], /* CJK Ideograph */ + [0x5191, 0x5191], /* CJK Ideograph */ + [0x5192, 0x5192], /* CJK Ideograph */ + [0x5193, 0x5193], /* CJK Ideograph */ + [0x5194, 0x5194], /* CJK Ideograph */ + [0x5195, 0x5195], /* CJK Ideograph */ + [0x5196, 0x5196], /* CJK Ideograph */ + [0x5197, 0x5197], /* CJK Ideograph */ + [0x5198, 0x5198], /* CJK Ideograph */ + [0x5199, 0x5199], /* CJK Ideograph */ + [0x519a, 0x519a], /* CJK Ideograph */ + [0x519b, 0x519b], /* CJK Ideograph */ + [0x519c, 0x519c], /* CJK Ideograph */ + [0x519d, 0x519d], /* CJK Ideograph */ + [0x519e, 0x519e], /* CJK Ideograph */ + [0x519f, 0x519f], /* CJK Ideograph */ + [0x51a0, 0x51a0], /* CJK Ideograph */ + [0x51a1, 0x51a1], /* CJK Ideograph */ + [0x51a2, 0x51a2], /* CJK Ideograph */ + [0x51a3, 0x51a3], /* CJK Ideograph */ + [0x51a4, 0x51a4], /* CJK Ideograph */ + [0x51a5, 0x51a5], /* CJK Ideograph */ + [0x51a6, 0x51a6], /* CJK Ideograph */ + [0x51a7, 0x51a7], /* CJK Ideograph */ + [0x51a8, 0x51a8], /* CJK Ideograph */ + [0x51a9, 0x51a9], /* CJK Ideograph */ + [0x51aa, 0x51aa], /* CJK Ideograph */ + [0x51ab, 0x51ab], /* CJK Ideograph */ + [0x51ac, 0x51ac], /* CJK Ideograph */ + [0x51ad, 0x51ad], /* CJK Ideograph */ + [0x51ae, 0x51ae], /* CJK Ideograph */ + [0x51af, 0x51af], /* CJK Ideograph */ + [0x51b0, 0x51b0], /* CJK Ideograph */ + [0x51b1, 0x51b1], /* CJK Ideograph */ + [0x51b2, 0x51b2], /* CJK Ideograph */ + [0x51b3, 0x51b3], /* CJK Ideograph */ + [0x51b4, 0x51b4], /* CJK Ideograph */ + [0x51b5, 0x51b5], /* CJK Ideograph */ + [0x51b6, 0x51b6], /* CJK Ideograph */ + [0x51b7, 0x51b7], /* CJK Ideograph */ + [0x51b8, 0x51b8], /* CJK Ideograph */ + [0x51b9, 0x51b9], /* CJK Ideograph */ + [0x51ba, 0x51ba], /* CJK Ideograph */ + [0x51bb, 0x51bb], /* CJK Ideograph */ + [0x51bc, 0x51bc], /* CJK Ideograph */ + [0x51bd, 0x51bd], /* CJK Ideograph */ + [0x51be, 0x51be], /* CJK Ideograph */ + [0x51bf, 0x51bf], /* CJK Ideograph */ + [0x51c0, 0x51c0], /* CJK Ideograph */ + [0x51c1, 0x51c1], /* CJK Ideograph */ + [0x51c2, 0x51c2], /* CJK Ideograph */ + [0x51c3, 0x51c3], /* CJK Ideograph */ + [0x51c4, 0x51c4], /* CJK Ideograph */ + [0x51c5, 0x51c5], /* CJK Ideograph */ + [0x51c6, 0x51c6], /* CJK Ideograph */ + [0x51c7, 0x51c7], /* CJK Ideograph */ + [0x51c8, 0x51c8], /* CJK Ideograph */ + [0x51c9, 0x51c9], /* CJK Ideograph */ + [0x51ca, 0x51ca], /* CJK Ideograph */ + [0x51cb, 0x51cb], /* CJK Ideograph */ + [0x51cc, 0x51cc], /* CJK Ideograph */ + [0x51cd, 0x51cd], /* CJK Ideograph */ + [0x51ce, 0x51ce], /* CJK Ideograph */ + [0x51cf, 0x51cf], /* CJK Ideograph */ + [0x51d0, 0x51d0], /* CJK Ideograph */ + [0x51d1, 0x51d1], /* CJK Ideograph */ + [0x51d2, 0x51d2], /* CJK Ideograph */ + [0x51d3, 0x51d3], /* CJK Ideograph */ + [0x51d4, 0x51d4], /* CJK Ideograph */ + [0x51d5, 0x51d5], /* CJK Ideograph */ + [0x51d6, 0x51d6], /* CJK Ideograph */ + [0x51d7, 0x51d7], /* CJK Ideograph */ + [0x51d8, 0x51d8], /* CJK Ideograph */ + [0x51d9, 0x51d9], /* CJK Ideograph */ + [0x51da, 0x51da], /* CJK Ideograph */ + [0x51db, 0x51db], /* CJK Ideograph */ + [0x51dc, 0x51dc], /* CJK Ideograph */ + [0x51dd, 0x51dd], /* CJK Ideograph */ + [0x51de, 0x51de], /* CJK Ideograph */ + [0x51df, 0x51df], /* CJK Ideograph */ + [0x51e0, 0x51e0], /* CJK Ideograph */ + [0x51e1, 0x51e1], /* CJK Ideograph */ + [0x51e2, 0x51e2], /* CJK Ideograph */ + [0x51e3, 0x51e3], /* CJK Ideograph */ + [0x51e4, 0x51e4], /* CJK Ideograph */ + [0x51e5, 0x51e5], /* CJK Ideograph */ + [0x51e6, 0x51e6], /* CJK Ideograph */ + [0x51e7, 0x51e7], /* CJK Ideograph */ + [0x51e8, 0x51e8], /* CJK Ideograph */ + [0x51e9, 0x51e9], /* CJK Ideograph */ + [0x51ea, 0x51ea], /* CJK Ideograph */ + [0x51eb, 0x51eb], /* CJK Ideograph */ + [0x51ec, 0x51ec], /* CJK Ideograph */ + [0x51ed, 0x51ed], /* CJK Ideograph */ + [0x51ee, 0x51ee], /* CJK Ideograph */ + [0x51ef, 0x51ef], /* CJK Ideograph */ + [0x51f0, 0x51f0], /* CJK Ideograph */ + [0x51f1, 0x51f1], /* CJK Ideograph */ + [0x51f2, 0x51f2], /* CJK Ideograph */ + [0x51f3, 0x51f3], /* CJK Ideograph */ + [0x51f4, 0x51f4], /* CJK Ideograph */ + [0x51f5, 0x51f5], /* CJK Ideograph */ + [0x51f6, 0x51f6], /* CJK Ideograph */ + [0x51f7, 0x51f7], /* CJK Ideograph */ + [0x51f8, 0x51f8], /* CJK Ideograph */ + [0x51f9, 0x51f9], /* CJK Ideograph */ + [0x51fa, 0x51fa], /* CJK Ideograph */ + [0x51fb, 0x51fb], /* CJK Ideograph */ + [0x51fc, 0x51fc], /* CJK Ideograph */ + [0x51fd, 0x51fd], /* CJK Ideograph */ + [0x51fe, 0x51fe], /* CJK Ideograph */ + [0x51ff, 0x51ff], /* CJK Ideograph */ + [0x5200, 0x5200], /* CJK Ideograph */ + [0x5201, 0x5201], /* CJK Ideograph */ + [0x5202, 0x5202], /* CJK Ideograph */ + [0x5203, 0x5203], /* CJK Ideograph */ + [0x5204, 0x5204], /* CJK Ideograph */ + [0x5205, 0x5205], /* CJK Ideograph */ + [0x5206, 0x5206], /* CJK Ideograph */ + [0x5207, 0x5207], /* CJK Ideograph */ + [0x5208, 0x5208], /* CJK Ideograph */ + [0x5209, 0x5209], /* CJK Ideograph */ + [0x520a, 0x520a], /* CJK Ideograph */ + [0x520b, 0x520b], /* CJK Ideograph */ + [0x520c, 0x520c], /* CJK Ideograph */ + [0x520d, 0x520d], /* CJK Ideograph */ + [0x520e, 0x520e], /* CJK Ideograph */ + [0x520f, 0x520f], /* CJK Ideograph */ + [0x5210, 0x5210], /* CJK Ideograph */ + [0x5211, 0x5211], /* CJK Ideograph */ + [0x5212, 0x5212], /* CJK Ideograph */ + [0x5213, 0x5213], /* CJK Ideograph */ + [0x5214, 0x5214], /* CJK Ideograph */ + [0x5215, 0x5215], /* CJK Ideograph */ + [0x5216, 0x5216], /* CJK Ideograph */ + [0x5217, 0x5217], /* CJK Ideograph */ + [0x5218, 0x5218], /* CJK Ideograph */ + [0x5219, 0x5219], /* CJK Ideograph */ + [0x521a, 0x521a], /* CJK Ideograph */ + [0x521b, 0x521b], /* CJK Ideograph */ + [0x521c, 0x521c], /* CJK Ideograph */ + [0x521d, 0x521d], /* CJK Ideograph */ + [0x521e, 0x521e], /* CJK Ideograph */ + [0x521f, 0x521f], /* CJK Ideograph */ + [0x5220, 0x5220], /* CJK Ideograph */ + [0x5221, 0x5221], /* CJK Ideograph */ + [0x5222, 0x5222], /* CJK Ideograph */ + [0x5223, 0x5223], /* CJK Ideograph */ + [0x5224, 0x5224], /* CJK Ideograph */ + [0x5225, 0x5225], /* CJK Ideograph */ + [0x5226, 0x5226], /* CJK Ideograph */ + [0x5227, 0x5227], /* CJK Ideograph */ + [0x5228, 0x5228], /* CJK Ideograph */ + [0x5229, 0x5229], /* CJK Ideograph */ + [0x522a, 0x522a], /* CJK Ideograph */ + [0x522b, 0x522b], /* CJK Ideograph */ + [0x522c, 0x522c], /* CJK Ideograph */ + [0x522d, 0x522d], /* CJK Ideograph */ + [0x522e, 0x522e], /* CJK Ideograph */ + [0x522f, 0x522f], /* CJK Ideograph */ + [0x5230, 0x5230], /* CJK Ideograph */ + [0x5231, 0x5231], /* CJK Ideograph */ + [0x5232, 0x5232], /* CJK Ideograph */ + [0x5233, 0x5233], /* CJK Ideograph */ + [0x5234, 0x5234], /* CJK Ideograph */ + [0x5235, 0x5235], /* CJK Ideograph */ + [0x5236, 0x5236], /* CJK Ideograph */ + [0x5237, 0x5237], /* CJK Ideograph */ + [0x5238, 0x5238], /* CJK Ideograph */ + [0x5239, 0x5239], /* CJK Ideograph */ + [0x523a, 0x523a], /* CJK Ideograph */ + [0x523b, 0x523b], /* CJK Ideograph */ + [0x523c, 0x523c], /* CJK Ideograph */ + [0x523d, 0x523d], /* CJK Ideograph */ + [0x523e, 0x523e], /* CJK Ideograph */ + [0x523f, 0x523f], /* CJK Ideograph */ + [0x5240, 0x5240], /* CJK Ideograph */ + [0x5241, 0x5241], /* CJK Ideograph */ + [0x5242, 0x5242], /* CJK Ideograph */ + [0x5243, 0x5243], /* CJK Ideograph */ + [0x5244, 0x5244], /* CJK Ideograph */ + [0x5245, 0x5245], /* CJK Ideograph */ + [0x5246, 0x5246], /* CJK Ideograph */ + [0x5247, 0x5247], /* CJK Ideograph */ + [0x5248, 0x5248], /* CJK Ideograph */ + [0x5249, 0x5249], /* CJK Ideograph */ + [0x524a, 0x524a], /* CJK Ideograph */ + [0x524b, 0x524b], /* CJK Ideograph */ + [0x524c, 0x524c], /* CJK Ideograph */ + [0x524d, 0x524d], /* CJK Ideograph */ + [0x524e, 0x524e], /* CJK Ideograph */ + [0x524f, 0x524f], /* CJK Ideograph */ + [0x5250, 0x5250], /* CJK Ideograph */ + [0x5251, 0x5251], /* CJK Ideograph */ + [0x5252, 0x5252], /* CJK Ideograph */ + [0x5253, 0x5253], /* CJK Ideograph */ + [0x5254, 0x5254], /* CJK Ideograph */ + [0x5255, 0x5255], /* CJK Ideograph */ + [0x5256, 0x5256], /* CJK Ideograph */ + [0x5257, 0x5257], /* CJK Ideograph */ + [0x5258, 0x5258], /* CJK Ideograph */ + [0x5259, 0x5259], /* CJK Ideograph */ + [0x525a, 0x525a], /* CJK Ideograph */ + [0x525b, 0x525b], /* CJK Ideograph */ + [0x525c, 0x525c], /* CJK Ideograph */ + [0x525d, 0x525d], /* CJK Ideograph */ + [0x525e, 0x525e], /* CJK Ideograph */ + [0x525f, 0x525f], /* CJK Ideograph */ + [0x5260, 0x5260], /* CJK Ideograph */ + [0x5261, 0x5261], /* CJK Ideograph */ + [0x5262, 0x5262], /* CJK Ideograph */ + [0x5263, 0x5263], /* CJK Ideograph */ + [0x5264, 0x5264], /* CJK Ideograph */ + [0x5265, 0x5265], /* CJK Ideograph */ + [0x5266, 0x5266], /* CJK Ideograph */ + [0x5267, 0x5267], /* CJK Ideograph */ + [0x5268, 0x5268], /* CJK Ideograph */ + [0x5269, 0x5269], /* CJK Ideograph */ + [0x526a, 0x526a], /* CJK Ideograph */ + [0x526b, 0x526b], /* CJK Ideograph */ + [0x526c, 0x526c], /* CJK Ideograph */ + [0x526d, 0x526d], /* CJK Ideograph */ + [0x526e, 0x526e], /* CJK Ideograph */ + [0x526f, 0x526f], /* CJK Ideograph */ + [0x5270, 0x5270], /* CJK Ideograph */ + [0x5271, 0x5271], /* CJK Ideograph */ + [0x5272, 0x5272], /* CJK Ideograph */ + [0x5273, 0x5273], /* CJK Ideograph */ + [0x5274, 0x5274], /* CJK Ideograph */ + [0x5275, 0x5275], /* CJK Ideograph */ + [0x5276, 0x5276], /* CJK Ideograph */ + [0x5277, 0x5277], /* CJK Ideograph */ + [0x5278, 0x5278], /* CJK Ideograph */ + [0x5279, 0x5279], /* CJK Ideograph */ + [0x527a, 0x527a], /* CJK Ideograph */ + [0x527b, 0x527b], /* CJK Ideograph */ + [0x527c, 0x527c], /* CJK Ideograph */ + [0x527d, 0x527d], /* CJK Ideograph */ + [0x527e, 0x527e], /* CJK Ideograph */ + [0x527f, 0x527f], /* CJK Ideograph */ + [0x5280, 0x5280], /* CJK Ideograph */ + [0x5281, 0x5281], /* CJK Ideograph */ + [0x5282, 0x5282], /* CJK Ideograph */ + [0x5283, 0x5283], /* CJK Ideograph */ + [0x5284, 0x5284], /* CJK Ideograph */ + [0x5285, 0x5285], /* CJK Ideograph */ + [0x5286, 0x5286], /* CJK Ideograph */ + [0x5287, 0x5287], /* CJK Ideograph */ + [0x5288, 0x5288], /* CJK Ideograph */ + [0x5289, 0x5289], /* CJK Ideograph */ + [0x528a, 0x528a], /* CJK Ideograph */ + [0x528b, 0x528b], /* CJK Ideograph */ + [0x528c, 0x528c], /* CJK Ideograph */ + [0x528d, 0x528d], /* CJK Ideograph */ + [0x528e, 0x528e], /* CJK Ideograph */ + [0x528f, 0x528f], /* CJK Ideograph */ + [0x5290, 0x5290], /* CJK Ideograph */ + [0x5291, 0x5291], /* CJK Ideograph */ + [0x5292, 0x5292], /* CJK Ideograph */ + [0x5293, 0x5293], /* CJK Ideograph */ + [0x5294, 0x5294], /* CJK Ideograph */ + [0x5295, 0x5295], /* CJK Ideograph */ + [0x5296, 0x5296], /* CJK Ideograph */ + [0x5297, 0x5297], /* CJK Ideograph */ + [0x5298, 0x5298], /* CJK Ideograph */ + [0x5299, 0x5299], /* CJK Ideograph */ + [0x529a, 0x529a], /* CJK Ideograph */ + [0x529b, 0x529b], /* CJK Ideograph */ + [0x529c, 0x529c], /* CJK Ideograph */ + [0x529d, 0x529d], /* CJK Ideograph */ + [0x529e, 0x529e], /* CJK Ideograph */ + [0x529f, 0x529f], /* CJK Ideograph */ + [0x52a0, 0x52a0], /* CJK Ideograph */ + [0x52a1, 0x52a1], /* CJK Ideograph */ + [0x52a2, 0x52a2], /* CJK Ideograph */ + [0x52a3, 0x52a3], /* CJK Ideograph */ + [0x52a4, 0x52a4], /* CJK Ideograph */ + [0x52a5, 0x52a5], /* CJK Ideograph */ + [0x52a6, 0x52a6], /* CJK Ideograph */ + [0x52a7, 0x52a7], /* CJK Ideograph */ + [0x52a8, 0x52a8], /* CJK Ideograph */ + [0x52a9, 0x52a9], /* CJK Ideograph */ + [0x52aa, 0x52aa], /* CJK Ideograph */ + [0x52ab, 0x52ab], /* CJK Ideograph */ + [0x52ac, 0x52ac], /* CJK Ideograph */ + [0x52ad, 0x52ad], /* CJK Ideograph */ + [0x52ae, 0x52ae], /* CJK Ideograph */ + [0x52af, 0x52af], /* CJK Ideograph */ + [0x52b0, 0x52b0], /* CJK Ideograph */ + [0x52b1, 0x52b1], /* CJK Ideograph */ + [0x52b2, 0x52b2], /* CJK Ideograph */ + [0x52b3, 0x52b3], /* CJK Ideograph */ + [0x52b4, 0x52b4], /* CJK Ideograph */ + [0x52b5, 0x52b5], /* CJK Ideograph */ + [0x52b6, 0x52b6], /* CJK Ideograph */ + [0x52b7, 0x52b7], /* CJK Ideograph */ + [0x52b8, 0x52b8], /* CJK Ideograph */ + [0x52b9, 0x52b9], /* CJK Ideograph */ + [0x52ba, 0x52ba], /* CJK Ideograph */ + [0x52bb, 0x52bb], /* CJK Ideograph */ + [0x52bc, 0x52bc], /* CJK Ideograph */ + [0x52bd, 0x52bd], /* CJK Ideograph */ + [0x52be, 0x52be], /* CJK Ideograph */ + [0x52bf, 0x52bf], /* CJK Ideograph */ + [0x52c0, 0x52c0], /* CJK Ideograph */ + [0x52c1, 0x52c1], /* CJK Ideograph */ + [0x52c2, 0x52c2], /* CJK Ideograph */ + [0x52c3, 0x52c3], /* CJK Ideograph */ + [0x52c4, 0x52c4], /* CJK Ideograph */ + [0x52c5, 0x52c5], /* CJK Ideograph */ + [0x52c6, 0x52c6], /* CJK Ideograph */ + [0x52c7, 0x52c7], /* CJK Ideograph */ + [0x52c8, 0x52c8], /* CJK Ideograph */ + [0x52c9, 0x52c9], /* CJK Ideograph */ + [0x52ca, 0x52ca], /* CJK Ideograph */ + [0x52cb, 0x52cb], /* CJK Ideograph */ + [0x52cc, 0x52cc], /* CJK Ideograph */ + [0x52cd, 0x52cd], /* CJK Ideograph */ + [0x52ce, 0x52ce], /* CJK Ideograph */ + [0x52cf, 0x52cf], /* CJK Ideograph */ + [0x52d0, 0x52d0], /* CJK Ideograph */ + [0x52d1, 0x52d1], /* CJK Ideograph */ + [0x52d2, 0x52d2], /* CJK Ideograph */ + [0x52d3, 0x52d3], /* CJK Ideograph */ + [0x52d4, 0x52d4], /* CJK Ideograph */ + [0x52d5, 0x52d5], /* CJK Ideograph */ + [0x52d6, 0x52d6], /* CJK Ideograph */ + [0x52d7, 0x52d7], /* CJK Ideograph */ + [0x52d8, 0x52d8], /* CJK Ideograph */ + [0x52d9, 0x52d9], /* CJK Ideograph */ + [0x52da, 0x52da], /* CJK Ideograph */ + [0x52db, 0x52db], /* CJK Ideograph */ + [0x52dc, 0x52dc], /* CJK Ideograph */ + [0x52dd, 0x52dd], /* CJK Ideograph */ + [0x52de, 0x52de], /* CJK Ideograph */ + [0x52df, 0x52df], /* CJK Ideograph */ + [0x52e0, 0x52e0], /* CJK Ideograph */ + [0x52e1, 0x52e1], /* CJK Ideograph */ + [0x52e2, 0x52e2], /* CJK Ideograph */ + [0x52e3, 0x52e3], /* CJK Ideograph */ + [0x52e4, 0x52e4], /* CJK Ideograph */ + [0x52e5, 0x52e5], /* CJK Ideograph */ + [0x52e6, 0x52e6], /* CJK Ideograph */ + [0x52e7, 0x52e7], /* CJK Ideograph */ + [0x52e8, 0x52e8], /* CJK Ideograph */ + [0x52e9, 0x52e9], /* CJK Ideograph */ + [0x52ea, 0x52ea], /* CJK Ideograph */ + [0x52eb, 0x52eb], /* CJK Ideograph */ + [0x52ec, 0x52ec], /* CJK Ideograph */ + [0x52ed, 0x52ed], /* CJK Ideograph */ + [0x52ee, 0x52ee], /* CJK Ideograph */ + [0x52ef, 0x52ef], /* CJK Ideograph */ + [0x52f0, 0x52f0], /* CJK Ideograph */ + [0x52f1, 0x52f1], /* CJK Ideograph */ + [0x52f2, 0x52f2], /* CJK Ideograph */ + [0x52f3, 0x52f3], /* CJK Ideograph */ + [0x52f4, 0x52f4], /* CJK Ideograph */ + [0x52f5, 0x52f5], /* CJK Ideograph */ + [0x52f6, 0x52f6], /* CJK Ideograph */ + [0x52f7, 0x52f7], /* CJK Ideograph */ + [0x52f8, 0x52f8], /* CJK Ideograph */ + [0x52f9, 0x52f9], /* CJK Ideograph */ + [0x52fa, 0x52fa], /* CJK Ideograph */ + [0x52fb, 0x52fb], /* CJK Ideograph */ + [0x52fc, 0x52fc], /* CJK Ideograph */ + [0x52fd, 0x52fd], /* CJK Ideograph */ + [0x52fe, 0x52fe], /* CJK Ideograph */ + [0x52ff, 0x52ff], /* CJK Ideograph */ + [0x5300, 0x5300], /* CJK Ideograph */ + [0x5301, 0x5301], /* CJK Ideograph */ + [0x5302, 0x5302], /* CJK Ideograph */ + [0x5303, 0x5303], /* CJK Ideograph */ + [0x5304, 0x5304], /* CJK Ideograph */ + [0x5305, 0x5305], /* CJK Ideograph */ + [0x5306, 0x5306], /* CJK Ideograph */ + [0x5307, 0x5307], /* CJK Ideograph */ + [0x5308, 0x5308], /* CJK Ideograph */ + [0x5309, 0x5309], /* CJK Ideograph */ + [0x530a, 0x530a], /* CJK Ideograph */ + [0x530b, 0x530b], /* CJK Ideograph */ + [0x530c, 0x530c], /* CJK Ideograph */ + [0x530d, 0x530d], /* CJK Ideograph */ + [0x530e, 0x530e], /* CJK Ideograph */ + [0x530f, 0x530f], /* CJK Ideograph */ + [0x5310, 0x5310], /* CJK Ideograph */ + [0x5311, 0x5311], /* CJK Ideograph */ + [0x5312, 0x5312], /* CJK Ideograph */ + [0x5313, 0x5313], /* CJK Ideograph */ + [0x5314, 0x5314], /* CJK Ideograph */ + [0x5315, 0x5315], /* CJK Ideograph */ + [0x5316, 0x5316], /* CJK Ideograph */ + [0x5317, 0x5317], /* CJK Ideograph */ + [0x5318, 0x5318], /* CJK Ideograph */ + [0x5319, 0x5319], /* CJK Ideograph */ + [0x531a, 0x531a], /* CJK Ideograph */ + [0x531b, 0x531b], /* CJK Ideograph */ + [0x531c, 0x531c], /* CJK Ideograph */ + [0x531d, 0x531d], /* CJK Ideograph */ + [0x531e, 0x531e], /* CJK Ideograph */ + [0x531f, 0x531f], /* CJK Ideograph */ + [0x5320, 0x5320], /* CJK Ideograph */ + [0x5321, 0x5321], /* CJK Ideograph */ + [0x5322, 0x5322], /* CJK Ideograph */ + [0x5323, 0x5323], /* CJK Ideograph */ + [0x5324, 0x5324], /* CJK Ideograph */ + [0x5325, 0x5325], /* CJK Ideograph */ + [0x5326, 0x5326], /* CJK Ideograph */ + [0x5327, 0x5327], /* CJK Ideograph */ + [0x5328, 0x5328], /* CJK Ideograph */ + [0x5329, 0x5329], /* CJK Ideograph */ + [0x532a, 0x532a], /* CJK Ideograph */ + [0x532b, 0x532b], /* CJK Ideograph */ + [0x532c, 0x532c], /* CJK Ideograph */ + [0x532d, 0x532d], /* CJK Ideograph */ + [0x532e, 0x532e], /* CJK Ideograph */ + [0x532f, 0x532f], /* CJK Ideograph */ + [0x5330, 0x5330], /* CJK Ideograph */ + [0x5331, 0x5331], /* CJK Ideograph */ + [0x5332, 0x5332], /* CJK Ideograph */ + [0x5333, 0x5333], /* CJK Ideograph */ + [0x5334, 0x5334], /* CJK Ideograph */ + [0x5335, 0x5335], /* CJK Ideograph */ + [0x5336, 0x5336], /* CJK Ideograph */ + [0x5337, 0x5337], /* CJK Ideograph */ + [0x5338, 0x5338], /* CJK Ideograph */ + [0x5339, 0x5339], /* CJK Ideograph */ + [0x533a, 0x533a], /* CJK Ideograph */ + [0x533b, 0x533b], /* CJK Ideograph */ + [0x533c, 0x533c], /* CJK Ideograph */ + [0x533d, 0x533d], /* CJK Ideograph */ + [0x533e, 0x533e], /* CJK Ideograph */ + [0x533f, 0x533f], /* CJK Ideograph */ + [0x5340, 0x5340], /* CJK Ideograph */ + [0x5341, 0x5341], /* CJK Ideograph */ + [0x5342, 0x5342], /* CJK Ideograph */ + [0x5343, 0x5343], /* CJK Ideograph */ + [0x5344, 0x5344], /* CJK Ideograph */ + [0x5345, 0x5345], /* CJK Ideograph */ + [0x5346, 0x5346], /* CJK Ideograph */ + [0x5347, 0x5347], /* CJK Ideograph */ + [0x5348, 0x5348], /* CJK Ideograph */ + [0x5349, 0x5349], /* CJK Ideograph */ + [0x534a, 0x534a], /* CJK Ideograph */ + [0x534b, 0x534b], /* CJK Ideograph */ + [0x534c, 0x534c], /* CJK Ideograph */ + [0x534d, 0x534d], /* CJK Ideograph */ + [0x534e, 0x534e], /* CJK Ideograph */ + [0x534f, 0x534f], /* CJK Ideograph */ + [0x5350, 0x5350], /* CJK Ideograph */ + [0x5351, 0x5351], /* CJK Ideograph */ + [0x5352, 0x5352], /* CJK Ideograph */ + [0x5353, 0x5353], /* CJK Ideograph */ + [0x5354, 0x5354], /* CJK Ideograph */ + [0x5355, 0x5355], /* CJK Ideograph */ + [0x5356, 0x5356], /* CJK Ideograph */ + [0x5357, 0x5357], /* CJK Ideograph */ + [0x5358, 0x5358], /* CJK Ideograph */ + [0x5359, 0x5359], /* CJK Ideograph */ + [0x535a, 0x535a], /* CJK Ideograph */ + [0x535b, 0x535b], /* CJK Ideograph */ + [0x535c, 0x535c], /* CJK Ideograph */ + [0x535d, 0x535d], /* CJK Ideograph */ + [0x535e, 0x535e], /* CJK Ideograph */ + [0x535f, 0x535f], /* CJK Ideograph */ + [0x5360, 0x5360], /* CJK Ideograph */ + [0x5361, 0x5361], /* CJK Ideograph */ + [0x5362, 0x5362], /* CJK Ideograph */ + [0x5363, 0x5363], /* CJK Ideograph */ + [0x5364, 0x5364], /* CJK Ideograph */ + [0x5365, 0x5365], /* CJK Ideograph */ + [0x5366, 0x5366], /* CJK Ideograph */ + [0x5367, 0x5367], /* CJK Ideograph */ + [0x5368, 0x5368], /* CJK Ideograph */ + [0x5369, 0x5369], /* CJK Ideograph */ + [0x536a, 0x536a], /* CJK Ideograph */ + [0x536b, 0x536b], /* CJK Ideograph */ + [0x536c, 0x536c], /* CJK Ideograph */ + [0x536d, 0x536d], /* CJK Ideograph */ + [0x536e, 0x536e], /* CJK Ideograph */ + [0x536f, 0x536f], /* CJK Ideograph */ + [0x5370, 0x5370], /* CJK Ideograph */ + [0x5371, 0x5371], /* CJK Ideograph */ + [0x5372, 0x5372], /* CJK Ideograph */ + [0x5373, 0x5373], /* CJK Ideograph */ + [0x5374, 0x5374], /* CJK Ideograph */ + [0x5375, 0x5375], /* CJK Ideograph */ + [0x5376, 0x5376], /* CJK Ideograph */ + [0x5377, 0x5377], /* CJK Ideograph */ + [0x5378, 0x5378], /* CJK Ideograph */ + [0x5379, 0x5379], /* CJK Ideograph */ + [0x537a, 0x537a], /* CJK Ideograph */ + [0x537b, 0x537b], /* CJK Ideograph */ + [0x537c, 0x537c], /* CJK Ideograph */ + [0x537d, 0x537d], /* CJK Ideograph */ + [0x537e, 0x537e], /* CJK Ideograph */ + [0x537f, 0x537f], /* CJK Ideograph */ + [0x5380, 0x5380], /* CJK Ideograph */ + [0x5381, 0x5381], /* CJK Ideograph */ + [0x5382, 0x5382], /* CJK Ideograph */ + [0x5383, 0x5383], /* CJK Ideograph */ + [0x5384, 0x5384], /* CJK Ideograph */ + [0x5385, 0x5385], /* CJK Ideograph */ + [0x5386, 0x5386], /* CJK Ideograph */ + [0x5387, 0x5387], /* CJK Ideograph */ + [0x5388, 0x5388], /* CJK Ideograph */ + [0x5389, 0x5389], /* CJK Ideograph */ + [0x538a, 0x538a], /* CJK Ideograph */ + [0x538b, 0x538b], /* CJK Ideograph */ + [0x538c, 0x538c], /* CJK Ideograph */ + [0x538d, 0x538d], /* CJK Ideograph */ + [0x538e, 0x538e], /* CJK Ideograph */ + [0x538f, 0x538f], /* CJK Ideograph */ + [0x5390, 0x5390], /* CJK Ideograph */ + [0x5391, 0x5391], /* CJK Ideograph */ + [0x5392, 0x5392], /* CJK Ideograph */ + [0x5393, 0x5393], /* CJK Ideograph */ + [0x5394, 0x5394], /* CJK Ideograph */ + [0x5395, 0x5395], /* CJK Ideograph */ + [0x5396, 0x5396], /* CJK Ideograph */ + [0x5397, 0x5397], /* CJK Ideograph */ + [0x5398, 0x5398], /* CJK Ideograph */ + [0x5399, 0x5399], /* CJK Ideograph */ + [0x539a, 0x539a], /* CJK Ideograph */ + [0x539b, 0x539b], /* CJK Ideograph */ + [0x539c, 0x539c], /* CJK Ideograph */ + [0x539d, 0x539d], /* CJK Ideograph */ + [0x539e, 0x539e], /* CJK Ideograph */ + [0x539f, 0x539f], /* CJK Ideograph */ + [0x53a0, 0x53a0], /* CJK Ideograph */ + [0x53a1, 0x53a1], /* CJK Ideograph */ + [0x53a2, 0x53a2], /* CJK Ideograph */ + [0x53a3, 0x53a3], /* CJK Ideograph */ + [0x53a4, 0x53a4], /* CJK Ideograph */ + [0x53a5, 0x53a5], /* CJK Ideograph */ + [0x53a6, 0x53a6], /* CJK Ideograph */ + [0x53a7, 0x53a7], /* CJK Ideograph */ + [0x53a8, 0x53a8], /* CJK Ideograph */ + [0x53a9, 0x53a9], /* CJK Ideograph */ + [0x53aa, 0x53aa], /* CJK Ideograph */ + [0x53ab, 0x53ab], /* CJK Ideograph */ + [0x53ac, 0x53ac], /* CJK Ideograph */ + [0x53ad, 0x53ad], /* CJK Ideograph */ + [0x53ae, 0x53ae], /* CJK Ideograph */ + [0x53af, 0x53af], /* CJK Ideograph */ + [0x53b0, 0x53b0], /* CJK Ideograph */ + [0x53b1, 0x53b1], /* CJK Ideograph */ + [0x53b2, 0x53b2], /* CJK Ideograph */ + [0x53b3, 0x53b3], /* CJK Ideograph */ + [0x53b4, 0x53b4], /* CJK Ideograph */ + [0x53b5, 0x53b5], /* CJK Ideograph */ + [0x53b6, 0x53b6], /* CJK Ideograph */ + [0x53b7, 0x53b7], /* CJK Ideograph */ + [0x53b8, 0x53b8], /* CJK Ideograph */ + [0x53b9, 0x53b9], /* CJK Ideograph */ + [0x53ba, 0x53ba], /* CJK Ideograph */ + [0x53bb, 0x53bb], /* CJK Ideograph */ + [0x53bc, 0x53bc], /* CJK Ideograph */ + [0x53bd, 0x53bd], /* CJK Ideograph */ + [0x53be, 0x53be], /* CJK Ideograph */ + [0x53bf, 0x53bf], /* CJK Ideograph */ + [0x53c0, 0x53c0], /* CJK Ideograph */ + [0x53c1, 0x53c1], /* CJK Ideograph */ + [0x53c2, 0x53c2], /* CJK Ideograph */ + [0x53c3, 0x53c3], /* CJK Ideograph */ + [0x53c4, 0x53c4], /* CJK Ideograph */ + [0x53c5, 0x53c5], /* CJK Ideograph */ + [0x53c6, 0x53c6], /* CJK Ideograph */ + [0x53c7, 0x53c7], /* CJK Ideograph */ + [0x53c8, 0x53c8], /* CJK Ideograph */ + [0x53c9, 0x53c9], /* CJK Ideograph */ + [0x53ca, 0x53ca], /* CJK Ideograph */ + [0x53cb, 0x53cb], /* CJK Ideograph */ + [0x53cc, 0x53cc], /* CJK Ideograph */ + [0x53cd, 0x53cd], /* CJK Ideograph */ + [0x53ce, 0x53ce], /* CJK Ideograph */ + [0x53cf, 0x53cf], /* CJK Ideograph */ + [0x53d0, 0x53d0], /* CJK Ideograph */ + [0x53d1, 0x53d1], /* CJK Ideograph */ + [0x53d2, 0x53d2], /* CJK Ideograph */ + [0x53d3, 0x53d3], /* CJK Ideograph */ + [0x53d4, 0x53d4], /* CJK Ideograph */ + [0x53d5, 0x53d5], /* CJK Ideograph */ + [0x53d6, 0x53d6], /* CJK Ideograph */ + [0x53d7, 0x53d7], /* CJK Ideograph */ + [0x53d8, 0x53d8], /* CJK Ideograph */ + [0x53d9, 0x53d9], /* CJK Ideograph */ + [0x53da, 0x53da], /* CJK Ideograph */ + [0x53db, 0x53db], /* CJK Ideograph */ + [0x53dc, 0x53dc], /* CJK Ideograph */ + [0x53dd, 0x53dd], /* CJK Ideograph */ + [0x53de, 0x53de], /* CJK Ideograph */ + [0x53df, 0x53df], /* CJK Ideograph */ + [0x53e0, 0x53e0], /* CJK Ideograph */ + [0x53e1, 0x53e1], /* CJK Ideograph */ + [0x53e2, 0x53e2], /* CJK Ideograph */ + [0x53e3, 0x53e3], /* CJK Ideograph */ + [0x53e4, 0x53e4], /* CJK Ideograph */ + [0x53e5, 0x53e5], /* CJK Ideograph */ + [0x53e6, 0x53e6], /* CJK Ideograph */ + [0x53e7, 0x53e7], /* CJK Ideograph */ + [0x53e8, 0x53e8], /* CJK Ideograph */ + [0x53e9, 0x53e9], /* CJK Ideograph */ + [0x53ea, 0x53ea], /* CJK Ideograph */ + [0x53eb, 0x53eb], /* CJK Ideograph */ + [0x53ec, 0x53ec], /* CJK Ideograph */ + [0x53ed, 0x53ed], /* CJK Ideograph */ + [0x53ee, 0x53ee], /* CJK Ideograph */ + [0x53ef, 0x53ef], /* CJK Ideograph */ + [0x53f0, 0x53f0], /* CJK Ideograph */ + [0x53f1, 0x53f1], /* CJK Ideograph */ + [0x53f2, 0x53f2], /* CJK Ideograph */ + [0x53f3, 0x53f3], /* CJK Ideograph */ + [0x53f4, 0x53f4], /* CJK Ideograph */ + [0x53f5, 0x53f5], /* CJK Ideograph */ + [0x53f6, 0x53f6], /* CJK Ideograph */ + [0x53f7, 0x53f7], /* CJK Ideograph */ + [0x53f8, 0x53f8], /* CJK Ideograph */ + [0x53f9, 0x53f9], /* CJK Ideograph */ + [0x53fa, 0x53fa], /* CJK Ideograph */ + [0x53fb, 0x53fb], /* CJK Ideograph */ + [0x53fc, 0x53fc], /* CJK Ideograph */ + [0x53fd, 0x53fd], /* CJK Ideograph */ + [0x53fe, 0x53fe], /* CJK Ideograph */ + [0x53ff, 0x53ff], /* CJK Ideograph */ + [0x5400, 0x5400], /* CJK Ideograph */ + [0x5401, 0x5401], /* CJK Ideograph */ + [0x5402, 0x5402], /* CJK Ideograph */ + [0x5403, 0x5403], /* CJK Ideograph */ + [0x5404, 0x5404], /* CJK Ideograph */ + [0x5405, 0x5405], /* CJK Ideograph */ + [0x5406, 0x5406], /* CJK Ideograph */ + [0x5407, 0x5407], /* CJK Ideograph */ + [0x5408, 0x5408], /* CJK Ideograph */ + [0x5409, 0x5409], /* CJK Ideograph */ + [0x540a, 0x540a], /* CJK Ideograph */ + [0x540b, 0x540b], /* CJK Ideograph */ + [0x540c, 0x540c], /* CJK Ideograph */ + [0x540d, 0x540d], /* CJK Ideograph */ + [0x540e, 0x540e], /* CJK Ideograph */ + [0x540f, 0x540f], /* CJK Ideograph */ + [0x5410, 0x5410], /* CJK Ideograph */ + [0x5411, 0x5411], /* CJK Ideograph */ + [0x5412, 0x5412], /* CJK Ideograph */ + [0x5413, 0x5413], /* CJK Ideograph */ + [0x5414, 0x5414], /* CJK Ideograph */ + [0x5415, 0x5415], /* CJK Ideograph */ + [0x5416, 0x5416], /* CJK Ideograph */ + [0x5417, 0x5417], /* CJK Ideograph */ + [0x5418, 0x5418], /* CJK Ideograph */ + [0x5419, 0x5419], /* CJK Ideograph */ + [0x541a, 0x541a], /* CJK Ideograph */ + [0x541b, 0x541b], /* CJK Ideograph */ + [0x541c, 0x541c], /* CJK Ideograph */ + [0x541d, 0x541d], /* CJK Ideograph */ + [0x541e, 0x541e], /* CJK Ideograph */ + [0x541f, 0x541f], /* CJK Ideograph */ + [0x5420, 0x5420], /* CJK Ideograph */ + [0x5421, 0x5421], /* CJK Ideograph */ + [0x5422, 0x5422], /* CJK Ideograph */ + [0x5423, 0x5423], /* CJK Ideograph */ + [0x5424, 0x5424], /* CJK Ideograph */ + [0x5425, 0x5425], /* CJK Ideograph */ + [0x5426, 0x5426], /* CJK Ideograph */ + [0x5427, 0x5427], /* CJK Ideograph */ + [0x5428, 0x5428], /* CJK Ideograph */ + [0x5429, 0x5429], /* CJK Ideograph */ + [0x542a, 0x542a], /* CJK Ideograph */ + [0x542b, 0x542b], /* CJK Ideograph */ + [0x542c, 0x542c], /* CJK Ideograph */ + [0x542d, 0x542d], /* CJK Ideograph */ + [0x542e, 0x542e], /* CJK Ideograph */ + [0x542f, 0x542f], /* CJK Ideograph */ + [0x5430, 0x5430], /* CJK Ideograph */ + [0x5431, 0x5431], /* CJK Ideograph */ + [0x5432, 0x5432], /* CJK Ideograph */ + [0x5433, 0x5433], /* CJK Ideograph */ + [0x5434, 0x5434], /* CJK Ideograph */ + [0x5435, 0x5435], /* CJK Ideograph */ + [0x5436, 0x5436], /* CJK Ideograph */ + [0x5437, 0x5437], /* CJK Ideograph */ + [0x5438, 0x5438], /* CJK Ideograph */ + [0x5439, 0x5439], /* CJK Ideograph */ + [0x543a, 0x543a], /* CJK Ideograph */ + [0x543b, 0x543b], /* CJK Ideograph */ + [0x543c, 0x543c], /* CJK Ideograph */ + [0x543d, 0x543d], /* CJK Ideograph */ + [0x543e, 0x543e], /* CJK Ideograph */ + [0x543f, 0x543f], /* CJK Ideograph */ + [0x5440, 0x5440], /* CJK Ideograph */ + [0x5441, 0x5441], /* CJK Ideograph */ + [0x5442, 0x5442], /* CJK Ideograph */ + [0x5443, 0x5443], /* CJK Ideograph */ + [0x5444, 0x5444], /* CJK Ideograph */ + [0x5445, 0x5445], /* CJK Ideograph */ + [0x5446, 0x5446], /* CJK Ideograph */ + [0x5447, 0x5447], /* CJK Ideograph */ + [0x5448, 0x5448], /* CJK Ideograph */ + [0x5449, 0x5449], /* CJK Ideograph */ + [0x544a, 0x544a], /* CJK Ideograph */ + [0x544b, 0x544b], /* CJK Ideograph */ + [0x544c, 0x544c], /* CJK Ideograph */ + [0x544d, 0x544d], /* CJK Ideograph */ + [0x544e, 0x544e], /* CJK Ideograph */ + [0x544f, 0x544f], /* CJK Ideograph */ + [0x5450, 0x5450], /* CJK Ideograph */ + [0x5451, 0x5451], /* CJK Ideograph */ + [0x5452, 0x5452], /* CJK Ideograph */ + [0x5453, 0x5453], /* CJK Ideograph */ + [0x5454, 0x5454], /* CJK Ideograph */ + [0x5455, 0x5455], /* CJK Ideograph */ + [0x5456, 0x5456], /* CJK Ideograph */ + [0x5457, 0x5457], /* CJK Ideograph */ + [0x5458, 0x5458], /* CJK Ideograph */ + [0x5459, 0x5459], /* CJK Ideograph */ + [0x545a, 0x545a], /* CJK Ideograph */ + [0x545b, 0x545b], /* CJK Ideograph */ + [0x545c, 0x545c], /* CJK Ideograph */ + [0x545d, 0x545d], /* CJK Ideograph */ + [0x545e, 0x545e], /* CJK Ideograph */ + [0x545f, 0x545f], /* CJK Ideograph */ + [0x5460, 0x5460], /* CJK Ideograph */ + [0x5461, 0x5461], /* CJK Ideograph */ + [0x5462, 0x5462], /* CJK Ideograph */ + [0x5463, 0x5463], /* CJK Ideograph */ + [0x5464, 0x5464], /* CJK Ideograph */ + [0x5465, 0x5465], /* CJK Ideograph */ + [0x5466, 0x5466], /* CJK Ideograph */ + [0x5467, 0x5467], /* CJK Ideograph */ + [0x5468, 0x5468], /* CJK Ideograph */ + [0x5469, 0x5469], /* CJK Ideograph */ + [0x546a, 0x546a], /* CJK Ideograph */ + [0x546b, 0x546b], /* CJK Ideograph */ + [0x546c, 0x546c], /* CJK Ideograph */ + [0x546d, 0x546d], /* CJK Ideograph */ + [0x546e, 0x546e], /* CJK Ideograph */ + [0x546f, 0x546f], /* CJK Ideograph */ + [0x5470, 0x5470], /* CJK Ideograph */ + [0x5471, 0x5471], /* CJK Ideograph */ + [0x5472, 0x5472], /* CJK Ideograph */ + [0x5473, 0x5473], /* CJK Ideograph */ + [0x5474, 0x5474], /* CJK Ideograph */ + [0x5475, 0x5475], /* CJK Ideograph */ + [0x5476, 0x5476], /* CJK Ideograph */ + [0x5477, 0x5477], /* CJK Ideograph */ + [0x5478, 0x5478], /* CJK Ideograph */ + [0x5479, 0x5479], /* CJK Ideograph */ + [0x547a, 0x547a], /* CJK Ideograph */ + [0x547b, 0x547b], /* CJK Ideograph */ + [0x547c, 0x547c], /* CJK Ideograph */ + [0x547d, 0x547d], /* CJK Ideograph */ + [0x547e, 0x547e], /* CJK Ideograph */ + [0x547f, 0x547f], /* CJK Ideograph */ + [0x5480, 0x5480], /* CJK Ideograph */ + [0x5481, 0x5481], /* CJK Ideograph */ + [0x5482, 0x5482], /* CJK Ideograph */ + [0x5483, 0x5483], /* CJK Ideograph */ + [0x5484, 0x5484], /* CJK Ideograph */ + [0x5485, 0x5485], /* CJK Ideograph */ + [0x5486, 0x5486], /* CJK Ideograph */ + [0x5487, 0x5487], /* CJK Ideograph */ + [0x5488, 0x5488], /* CJK Ideograph */ + [0x5489, 0x5489], /* CJK Ideograph */ + [0x548a, 0x548a], /* CJK Ideograph */ + [0x548b, 0x548b], /* CJK Ideograph */ + [0x548c, 0x548c], /* CJK Ideograph */ + [0x548d, 0x548d], /* CJK Ideograph */ + [0x548e, 0x548e], /* CJK Ideograph */ + [0x548f, 0x548f], /* CJK Ideograph */ + [0x5490, 0x5490], /* CJK Ideograph */ + [0x5491, 0x5491], /* CJK Ideograph */ + [0x5492, 0x5492], /* CJK Ideograph */ + [0x5493, 0x5493], /* CJK Ideograph */ + [0x5494, 0x5494], /* CJK Ideograph */ + [0x5495, 0x5495], /* CJK Ideograph */ + [0x5496, 0x5496], /* CJK Ideograph */ + [0x5497, 0x5497], /* CJK Ideograph */ + [0x5498, 0x5498], /* CJK Ideograph */ + [0x5499, 0x5499], /* CJK Ideograph */ + [0x549a, 0x549a], /* CJK Ideograph */ + [0x549b, 0x549b], /* CJK Ideograph */ + [0x549c, 0x549c], /* CJK Ideograph */ + [0x549d, 0x549d], /* CJK Ideograph */ + [0x549e, 0x549e], /* CJK Ideograph */ + [0x549f, 0x549f], /* CJK Ideograph */ + [0x54a0, 0x54a0], /* CJK Ideograph */ + [0x54a1, 0x54a1], /* CJK Ideograph */ + [0x54a2, 0x54a2], /* CJK Ideograph */ + [0x54a3, 0x54a3], /* CJK Ideograph */ + [0x54a4, 0x54a4], /* CJK Ideograph */ + [0x54a5, 0x54a5], /* CJK Ideograph */ + [0x54a6, 0x54a6], /* CJK Ideograph */ + [0x54a7, 0x54a7], /* CJK Ideograph */ + [0x54a8, 0x54a8], /* CJK Ideograph */ + [0x54a9, 0x54a9], /* CJK Ideograph */ + [0x54aa, 0x54aa], /* CJK Ideograph */ + [0x54ab, 0x54ab], /* CJK Ideograph */ + [0x54ac, 0x54ac], /* CJK Ideograph */ + [0x54ad, 0x54ad], /* CJK Ideograph */ + [0x54ae, 0x54ae], /* CJK Ideograph */ + [0x54af, 0x54af], /* CJK Ideograph */ + [0x54b0, 0x54b0], /* CJK Ideograph */ + [0x54b1, 0x54b1], /* CJK Ideograph */ + [0x54b2, 0x54b2], /* CJK Ideograph */ + [0x54b3, 0x54b3], /* CJK Ideograph */ + [0x54b4, 0x54b4], /* CJK Ideograph */ + [0x54b5, 0x54b5], /* CJK Ideograph */ + [0x54b6, 0x54b6], /* CJK Ideograph */ + [0x54b7, 0x54b7], /* CJK Ideograph */ + [0x54b8, 0x54b8], /* CJK Ideograph */ + [0x54b9, 0x54b9], /* CJK Ideograph */ + [0x54ba, 0x54ba], /* CJK Ideograph */ + [0x54bb, 0x54bb], /* CJK Ideograph */ + [0x54bc, 0x54bc], /* CJK Ideograph */ + [0x54bd, 0x54bd], /* CJK Ideograph */ + [0x54be, 0x54be], /* CJK Ideograph */ + [0x54bf, 0x54bf], /* CJK Ideograph */ + [0x54c0, 0x54c0], /* CJK Ideograph */ + [0x54c1, 0x54c1], /* CJK Ideograph */ + [0x54c2, 0x54c2], /* CJK Ideograph */ + [0x54c3, 0x54c3], /* CJK Ideograph */ + [0x54c4, 0x54c4], /* CJK Ideograph */ + [0x54c5, 0x54c5], /* CJK Ideograph */ + [0x54c6, 0x54c6], /* CJK Ideograph */ + [0x54c7, 0x54c7], /* CJK Ideograph */ + [0x54c8, 0x54c8], /* CJK Ideograph */ + [0x54c9, 0x54c9], /* CJK Ideograph */ + [0x54ca, 0x54ca], /* CJK Ideograph */ + [0x54cb, 0x54cb], /* CJK Ideograph */ + [0x54cc, 0x54cc], /* CJK Ideograph */ + [0x54cd, 0x54cd], /* CJK Ideograph */ + [0x54ce, 0x54ce], /* CJK Ideograph */ + [0x54cf, 0x54cf], /* CJK Ideograph */ + [0x54d0, 0x54d0], /* CJK Ideograph */ + [0x54d1, 0x54d1], /* CJK Ideograph */ + [0x54d2, 0x54d2], /* CJK Ideograph */ + [0x54d3, 0x54d3], /* CJK Ideograph */ + [0x54d4, 0x54d4], /* CJK Ideograph */ + [0x54d5, 0x54d5], /* CJK Ideograph */ + [0x54d6, 0x54d6], /* CJK Ideograph */ + [0x54d7, 0x54d7], /* CJK Ideograph */ + [0x54d8, 0x54d8], /* CJK Ideograph */ + [0x54d9, 0x54d9], /* CJK Ideograph */ + [0x54da, 0x54da], /* CJK Ideograph */ + [0x54db, 0x54db], /* CJK Ideograph */ + [0x54dc, 0x54dc], /* CJK Ideograph */ + [0x54dd, 0x54dd], /* CJK Ideograph */ + [0x54de, 0x54de], /* CJK Ideograph */ + [0x54df, 0x54df], /* CJK Ideograph */ + [0x54e0, 0x54e0], /* CJK Ideograph */ + [0x54e1, 0x54e1], /* CJK Ideograph */ + [0x54e2, 0x54e2], /* CJK Ideograph */ + [0x54e3, 0x54e3], /* CJK Ideograph */ + [0x54e4, 0x54e4], /* CJK Ideograph */ + [0x54e5, 0x54e5], /* CJK Ideograph */ + [0x54e6, 0x54e6], /* CJK Ideograph */ + [0x54e7, 0x54e7], /* CJK Ideograph */ + [0x54e8, 0x54e8], /* CJK Ideograph */ + [0x54e9, 0x54e9], /* CJK Ideograph */ + [0x54ea, 0x54ea], /* CJK Ideograph */ + [0x54eb, 0x54eb], /* CJK Ideograph */ + [0x54ec, 0x54ec], /* CJK Ideograph */ + [0x54ed, 0x54ed], /* CJK Ideograph */ + [0x54ee, 0x54ee], /* CJK Ideograph */ + [0x54ef, 0x54ef], /* CJK Ideograph */ + [0x54f0, 0x54f0], /* CJK Ideograph */ + [0x54f1, 0x54f1], /* CJK Ideograph */ + [0x54f2, 0x54f2], /* CJK Ideograph */ + [0x54f3, 0x54f3], /* CJK Ideograph */ + [0x54f4, 0x54f4], /* CJK Ideograph */ + [0x54f5, 0x54f5], /* CJK Ideograph */ + [0x54f6, 0x54f6], /* CJK Ideograph */ + [0x54f7, 0x54f7], /* CJK Ideograph */ + [0x54f8, 0x54f8], /* CJK Ideograph */ + [0x54f9, 0x54f9], /* CJK Ideograph */ + [0x54fa, 0x54fa], /* CJK Ideograph */ + [0x54fb, 0x54fb], /* CJK Ideograph */ + [0x54fc, 0x54fc], /* CJK Ideograph */ + [0x54fd, 0x54fd], /* CJK Ideograph */ + [0x54fe, 0x54fe], /* CJK Ideograph */ + [0x54ff, 0x54ff], /* CJK Ideograph */ + [0x5500, 0x5500], /* CJK Ideograph */ + [0x5501, 0x5501], /* CJK Ideograph */ + [0x5502, 0x5502], /* CJK Ideograph */ + [0x5503, 0x5503], /* CJK Ideograph */ + [0x5504, 0x5504], /* CJK Ideograph */ + [0x5505, 0x5505], /* CJK Ideograph */ + [0x5506, 0x5506], /* CJK Ideograph */ + [0x5507, 0x5507], /* CJK Ideograph */ + [0x5508, 0x5508], /* CJK Ideograph */ + [0x5509, 0x5509], /* CJK Ideograph */ + [0x550a, 0x550a], /* CJK Ideograph */ + [0x550b, 0x550b], /* CJK Ideograph */ + [0x550c, 0x550c], /* CJK Ideograph */ + [0x550d, 0x550d], /* CJK Ideograph */ + [0x550e, 0x550e], /* CJK Ideograph */ + [0x550f, 0x550f], /* CJK Ideograph */ + [0x5510, 0x5510], /* CJK Ideograph */ + [0x5511, 0x5511], /* CJK Ideograph */ + [0x5512, 0x5512], /* CJK Ideograph */ + [0x5513, 0x5513], /* CJK Ideograph */ + [0x5514, 0x5514], /* CJK Ideograph */ + [0x5515, 0x5515], /* CJK Ideograph */ + [0x5516, 0x5516], /* CJK Ideograph */ + [0x5517, 0x5517], /* CJK Ideograph */ + [0x5518, 0x5518], /* CJK Ideograph */ + [0x5519, 0x5519], /* CJK Ideograph */ + [0x551a, 0x551a], /* CJK Ideograph */ + [0x551b, 0x551b], /* CJK Ideograph */ + [0x551c, 0x551c], /* CJK Ideograph */ + [0x551d, 0x551d], /* CJK Ideograph */ + [0x551e, 0x551e], /* CJK Ideograph */ + [0x551f, 0x551f], /* CJK Ideograph */ + [0x5520, 0x5520], /* CJK Ideograph */ + [0x5521, 0x5521], /* CJK Ideograph */ + [0x5522, 0x5522], /* CJK Ideograph */ + [0x5523, 0x5523], /* CJK Ideograph */ + [0x5524, 0x5524], /* CJK Ideograph */ + [0x5525, 0x5525], /* CJK Ideograph */ + [0x5526, 0x5526], /* CJK Ideograph */ + [0x5527, 0x5527], /* CJK Ideograph */ + [0x5528, 0x5528], /* CJK Ideograph */ + [0x5529, 0x5529], /* CJK Ideograph */ + [0x552a, 0x552a], /* CJK Ideograph */ + [0x552b, 0x552b], /* CJK Ideograph */ + [0x552c, 0x552c], /* CJK Ideograph */ + [0x552d, 0x552d], /* CJK Ideograph */ + [0x552e, 0x552e], /* CJK Ideograph */ + [0x552f, 0x552f], /* CJK Ideograph */ + [0x5530, 0x5530], /* CJK Ideograph */ + [0x5531, 0x5531], /* CJK Ideograph */ + [0x5532, 0x5532], /* CJK Ideograph */ + [0x5533, 0x5533], /* CJK Ideograph */ + [0x5534, 0x5534], /* CJK Ideograph */ + [0x5535, 0x5535], /* CJK Ideograph */ + [0x5536, 0x5536], /* CJK Ideograph */ + [0x5537, 0x5537], /* CJK Ideograph */ + [0x5538, 0x5538], /* CJK Ideograph */ + [0x5539, 0x5539], /* CJK Ideograph */ + [0x553a, 0x553a], /* CJK Ideograph */ + [0x553b, 0x553b], /* CJK Ideograph */ + [0x553c, 0x553c], /* CJK Ideograph */ + [0x553d, 0x553d], /* CJK Ideograph */ + [0x553e, 0x553e], /* CJK Ideograph */ + [0x553f, 0x553f], /* CJK Ideograph */ + [0x5540, 0x5540], /* CJK Ideograph */ + [0x5541, 0x5541], /* CJK Ideograph */ + [0x5542, 0x5542], /* CJK Ideograph */ + [0x5543, 0x5543], /* CJK Ideograph */ + [0x5544, 0x5544], /* CJK Ideograph */ + [0x5545, 0x5545], /* CJK Ideograph */ + [0x5546, 0x5546], /* CJK Ideograph */ + [0x5547, 0x5547], /* CJK Ideograph */ + [0x5548, 0x5548], /* CJK Ideograph */ + [0x5549, 0x5549], /* CJK Ideograph */ + [0x554a, 0x554a], /* CJK Ideograph */ + [0x554b, 0x554b], /* CJK Ideograph */ + [0x554c, 0x554c], /* CJK Ideograph */ + [0x554d, 0x554d], /* CJK Ideograph */ + [0x554e, 0x554e], /* CJK Ideograph */ + [0x554f, 0x554f], /* CJK Ideograph */ + [0x5550, 0x5550], /* CJK Ideograph */ + [0x5551, 0x5551], /* CJK Ideograph */ + [0x5552, 0x5552], /* CJK Ideograph */ + [0x5553, 0x5553], /* CJK Ideograph */ + [0x5554, 0x5554], /* CJK Ideograph */ + [0x5555, 0x5555], /* CJK Ideograph */ + [0x5556, 0x5556], /* CJK Ideograph */ + [0x5557, 0x5557], /* CJK Ideograph */ + [0x5558, 0x5558], /* CJK Ideograph */ + [0x5559, 0x5559], /* CJK Ideograph */ + [0x555a, 0x555a], /* CJK Ideograph */ + [0x555b, 0x555b], /* CJK Ideograph */ + [0x555c, 0x555c], /* CJK Ideograph */ + [0x555d, 0x555d], /* CJK Ideograph */ + [0x555e, 0x555e], /* CJK Ideograph */ + [0x555f, 0x555f], /* CJK Ideograph */ + [0x5560, 0x5560], /* CJK Ideograph */ + [0x5561, 0x5561], /* CJK Ideograph */ + [0x5562, 0x5562], /* CJK Ideograph */ + [0x5563, 0x5563], /* CJK Ideograph */ + [0x5564, 0x5564], /* CJK Ideograph */ + [0x5565, 0x5565], /* CJK Ideograph */ + [0x5566, 0x5566], /* CJK Ideograph */ + [0x5567, 0x5567], /* CJK Ideograph */ + [0x5568, 0x5568], /* CJK Ideograph */ + [0x5569, 0x5569], /* CJK Ideograph */ + [0x556a, 0x556a], /* CJK Ideograph */ + [0x556b, 0x556b], /* CJK Ideograph */ + [0x556c, 0x556c], /* CJK Ideograph */ + [0x556d, 0x556d], /* CJK Ideograph */ + [0x556e, 0x556e], /* CJK Ideograph */ + [0x556f, 0x556f], /* CJK Ideograph */ + [0x5570, 0x5570], /* CJK Ideograph */ + [0x5571, 0x5571], /* CJK Ideograph */ + [0x5572, 0x5572], /* CJK Ideograph */ + [0x5573, 0x5573], /* CJK Ideograph */ + [0x5574, 0x5574], /* CJK Ideograph */ + [0x5575, 0x5575], /* CJK Ideograph */ + [0x5576, 0x5576], /* CJK Ideograph */ + [0x5577, 0x5577], /* CJK Ideograph */ + [0x5578, 0x5578], /* CJK Ideograph */ + [0x5579, 0x5579], /* CJK Ideograph */ + [0x557a, 0x557a], /* CJK Ideograph */ + [0x557b, 0x557b], /* CJK Ideograph */ + [0x557c, 0x557c], /* CJK Ideograph */ + [0x557d, 0x557d], /* CJK Ideograph */ + [0x557e, 0x557e], /* CJK Ideograph */ + [0x557f, 0x557f], /* CJK Ideograph */ + [0x5580, 0x5580], /* CJK Ideograph */ + [0x5581, 0x5581], /* CJK Ideograph */ + [0x5582, 0x5582], /* CJK Ideograph */ + [0x5583, 0x5583], /* CJK Ideograph */ + [0x5584, 0x5584], /* CJK Ideograph */ + [0x5585, 0x5585], /* CJK Ideograph */ + [0x5586, 0x5586], /* CJK Ideograph */ + [0x5587, 0x5587], /* CJK Ideograph */ + [0x5588, 0x5588], /* CJK Ideograph */ + [0x5589, 0x5589], /* CJK Ideograph */ + [0x558a, 0x558a], /* CJK Ideograph */ + [0x558b, 0x558b], /* CJK Ideograph */ + [0x558c, 0x558c], /* CJK Ideograph */ + [0x558d, 0x558d], /* CJK Ideograph */ + [0x558e, 0x558e], /* CJK Ideograph */ + [0x558f, 0x558f], /* CJK Ideograph */ + [0x5590, 0x5590], /* CJK Ideograph */ + [0x5591, 0x5591], /* CJK Ideograph */ + [0x5592, 0x5592], /* CJK Ideograph */ + [0x5593, 0x5593], /* CJK Ideograph */ + [0x5594, 0x5594], /* CJK Ideograph */ + [0x5595, 0x5595], /* CJK Ideograph */ + [0x5596, 0x5596], /* CJK Ideograph */ + [0x5597, 0x5597], /* CJK Ideograph */ + [0x5598, 0x5598], /* CJK Ideograph */ + [0x5599, 0x5599], /* CJK Ideograph */ + [0x559a, 0x559a], /* CJK Ideograph */ + [0x559b, 0x559b], /* CJK Ideograph */ + [0x559c, 0x559c], /* CJK Ideograph */ + [0x559d, 0x559d], /* CJK Ideograph */ + [0x559e, 0x559e], /* CJK Ideograph */ + [0x559f, 0x559f], /* CJK Ideograph */ + [0x55a0, 0x55a0], /* CJK Ideograph */ + [0x55a1, 0x55a1], /* CJK Ideograph */ + [0x55a2, 0x55a2], /* CJK Ideograph */ + [0x55a3, 0x55a3], /* CJK Ideograph */ + [0x55a4, 0x55a4], /* CJK Ideograph */ + [0x55a5, 0x55a5], /* CJK Ideograph */ + [0x55a6, 0x55a6], /* CJK Ideograph */ + [0x55a7, 0x55a7], /* CJK Ideograph */ + [0x55a8, 0x55a8], /* CJK Ideograph */ + [0x55a9, 0x55a9], /* CJK Ideograph */ + [0x55aa, 0x55aa], /* CJK Ideograph */ + [0x55ab, 0x55ab], /* CJK Ideograph */ + [0x55ac, 0x55ac], /* CJK Ideograph */ + [0x55ad, 0x55ad], /* CJK Ideograph */ + [0x55ae, 0x55ae], /* CJK Ideograph */ + [0x55af, 0x55af], /* CJK Ideograph */ + [0x55b0, 0x55b0], /* CJK Ideograph */ + [0x55b1, 0x55b1], /* CJK Ideograph */ + [0x55b2, 0x55b2], /* CJK Ideograph */ + [0x55b3, 0x55b3], /* CJK Ideograph */ + [0x55b4, 0x55b4], /* CJK Ideograph */ + [0x55b5, 0x55b5], /* CJK Ideograph */ + [0x55b6, 0x55b6], /* CJK Ideograph */ + [0x55b7, 0x55b7], /* CJK Ideograph */ + [0x55b8, 0x55b8], /* CJK Ideograph */ + [0x55b9, 0x55b9], /* CJK Ideograph */ + [0x55ba, 0x55ba], /* CJK Ideograph */ + [0x55bb, 0x55bb], /* CJK Ideograph */ + [0x55bc, 0x55bc], /* CJK Ideograph */ + [0x55bd, 0x55bd], /* CJK Ideograph */ + [0x55be, 0x55be], /* CJK Ideograph */ + [0x55bf, 0x55bf], /* CJK Ideograph */ + [0x55c0, 0x55c0], /* CJK Ideograph */ + [0x55c1, 0x55c1], /* CJK Ideograph */ + [0x55c2, 0x55c2], /* CJK Ideograph */ + [0x55c3, 0x55c3], /* CJK Ideograph */ + [0x55c4, 0x55c4], /* CJK Ideograph */ + [0x55c5, 0x55c5], /* CJK Ideograph */ + [0x55c6, 0x55c6], /* CJK Ideograph */ + [0x55c7, 0x55c7], /* CJK Ideograph */ + [0x55c8, 0x55c8], /* CJK Ideograph */ + [0x55c9, 0x55c9], /* CJK Ideograph */ + [0x55ca, 0x55ca], /* CJK Ideograph */ + [0x55cb, 0x55cb], /* CJK Ideograph */ + [0x55cc, 0x55cc], /* CJK Ideograph */ + [0x55cd, 0x55cd], /* CJK Ideograph */ + [0x55ce, 0x55ce], /* CJK Ideograph */ + [0x55cf, 0x55cf], /* CJK Ideograph */ + [0x55d0, 0x55d0], /* CJK Ideograph */ + [0x55d1, 0x55d1], /* CJK Ideograph */ + [0x55d2, 0x55d2], /* CJK Ideograph */ + [0x55d3, 0x55d3], /* CJK Ideograph */ + [0x55d4, 0x55d4], /* CJK Ideograph */ + [0x55d5, 0x55d5], /* CJK Ideograph */ + [0x55d6, 0x55d6], /* CJK Ideograph */ + [0x55d7, 0x55d7], /* CJK Ideograph */ + [0x55d8, 0x55d8], /* CJK Ideograph */ + [0x55d9, 0x55d9], /* CJK Ideograph */ + [0x55da, 0x55da], /* CJK Ideograph */ + [0x55db, 0x55db], /* CJK Ideograph */ + [0x55dc, 0x55dc], /* CJK Ideograph */ + [0x55dd, 0x55dd], /* CJK Ideograph */ + [0x55de, 0x55de], /* CJK Ideograph */ + [0x55df, 0x55df], /* CJK Ideograph */ + [0x55e0, 0x55e0], /* CJK Ideograph */ + [0x55e1, 0x55e1], /* CJK Ideograph */ + [0x55e2, 0x55e2], /* CJK Ideograph */ + [0x55e3, 0x55e3], /* CJK Ideograph */ + [0x55e4, 0x55e4], /* CJK Ideograph */ + [0x55e5, 0x55e5], /* CJK Ideograph */ + [0x55e6, 0x55e6], /* CJK Ideograph */ + [0x55e7, 0x55e7], /* CJK Ideograph */ + [0x55e8, 0x55e8], /* CJK Ideograph */ + [0x55e9, 0x55e9], /* CJK Ideograph */ + [0x55ea, 0x55ea], /* CJK Ideograph */ + [0x55eb, 0x55eb], /* CJK Ideograph */ + [0x55ec, 0x55ec], /* CJK Ideograph */ + [0x55ed, 0x55ed], /* CJK Ideograph */ + [0x55ee, 0x55ee], /* CJK Ideograph */ + [0x55ef, 0x55ef], /* CJK Ideograph */ + [0x55f0, 0x55f0], /* CJK Ideograph */ + [0x55f1, 0x55f1], /* CJK Ideograph */ + [0x55f2, 0x55f2], /* CJK Ideograph */ + [0x55f3, 0x55f3], /* CJK Ideograph */ + [0x55f4, 0x55f4], /* CJK Ideograph */ + [0x55f5, 0x55f5], /* CJK Ideograph */ + [0x55f6, 0x55f6], /* CJK Ideograph */ + [0x55f7, 0x55f7], /* CJK Ideograph */ + [0x55f8, 0x55f8], /* CJK Ideograph */ + [0x55f9, 0x55f9], /* CJK Ideograph */ + [0x55fa, 0x55fa], /* CJK Ideograph */ + [0x55fb, 0x55fb], /* CJK Ideograph */ + [0x55fc, 0x55fc], /* CJK Ideograph */ + [0x55fd, 0x55fd], /* CJK Ideograph */ + [0x55fe, 0x55fe], /* CJK Ideograph */ + [0x55ff, 0x55ff], /* CJK Ideograph */ + [0x5600, 0x5600], /* CJK Ideograph */ + [0x5601, 0x5601], /* CJK Ideograph */ + [0x5602, 0x5602], /* CJK Ideograph */ + [0x5603, 0x5603], /* CJK Ideograph */ + [0x5604, 0x5604], /* CJK Ideograph */ + [0x5605, 0x5605], /* CJK Ideograph */ + [0x5606, 0x5606], /* CJK Ideograph */ + [0x5607, 0x5607], /* CJK Ideograph */ + [0x5608, 0x5608], /* CJK Ideograph */ + [0x5609, 0x5609], /* CJK Ideograph */ + [0x560a, 0x560a], /* CJK Ideograph */ + [0x560b, 0x560b], /* CJK Ideograph */ + [0x560c, 0x560c], /* CJK Ideograph */ + [0x560d, 0x560d], /* CJK Ideograph */ + [0x560e, 0x560e], /* CJK Ideograph */ + [0x560f, 0x560f], /* CJK Ideograph */ + [0x5610, 0x5610], /* CJK Ideograph */ + [0x5611, 0x5611], /* CJK Ideograph */ + [0x5612, 0x5612], /* CJK Ideograph */ + [0x5613, 0x5613], /* CJK Ideograph */ + [0x5614, 0x5614], /* CJK Ideograph */ + [0x5615, 0x5615], /* CJK Ideograph */ + [0x5616, 0x5616], /* CJK Ideograph */ + [0x5617, 0x5617], /* CJK Ideograph */ + [0x5618, 0x5618], /* CJK Ideograph */ + [0x5619, 0x5619], /* CJK Ideograph */ + [0x561a, 0x561a], /* CJK Ideograph */ + [0x561b, 0x561b], /* CJK Ideograph */ + [0x561c, 0x561c], /* CJK Ideograph */ + [0x561d, 0x561d], /* CJK Ideograph */ + [0x561e, 0x561e], /* CJK Ideograph */ + [0x561f, 0x561f], /* CJK Ideograph */ + [0x5620, 0x5620], /* CJK Ideograph */ + [0x5621, 0x5621], /* CJK Ideograph */ + [0x5622, 0x5622], /* CJK Ideograph */ + [0x5623, 0x5623], /* CJK Ideograph */ + [0x5624, 0x5624], /* CJK Ideograph */ + [0x5625, 0x5625], /* CJK Ideograph */ + [0x5626, 0x5626], /* CJK Ideograph */ + [0x5627, 0x5627], /* CJK Ideograph */ + [0x5628, 0x5628], /* CJK Ideograph */ + [0x5629, 0x5629], /* CJK Ideograph */ + [0x562a, 0x562a], /* CJK Ideograph */ + [0x562b, 0x562b], /* CJK Ideograph */ + [0x562c, 0x562c], /* CJK Ideograph */ + [0x562d, 0x562d], /* CJK Ideograph */ + [0x562e, 0x562e], /* CJK Ideograph */ + [0x562f, 0x562f], /* CJK Ideograph */ + [0x5630, 0x5630], /* CJK Ideograph */ + [0x5631, 0x5631], /* CJK Ideograph */ + [0x5632, 0x5632], /* CJK Ideograph */ + [0x5633, 0x5633], /* CJK Ideograph */ + [0x5634, 0x5634], /* CJK Ideograph */ + [0x5635, 0x5635], /* CJK Ideograph */ + [0x5636, 0x5636], /* CJK Ideograph */ + [0x5637, 0x5637], /* CJK Ideograph */ + [0x5638, 0x5638], /* CJK Ideograph */ + [0x5639, 0x5639], /* CJK Ideograph */ + [0x563a, 0x563a], /* CJK Ideograph */ + [0x563b, 0x563b], /* CJK Ideograph */ + [0x563c, 0x563c], /* CJK Ideograph */ + [0x563d, 0x563d], /* CJK Ideograph */ + [0x563e, 0x563e], /* CJK Ideograph */ + [0x563f, 0x563f], /* CJK Ideograph */ + [0x5640, 0x5640], /* CJK Ideograph */ + [0x5641, 0x5641], /* CJK Ideograph */ + [0x5642, 0x5642], /* CJK Ideograph */ + [0x5643, 0x5643], /* CJK Ideograph */ + [0x5644, 0x5644], /* CJK Ideograph */ + [0x5645, 0x5645], /* CJK Ideograph */ + [0x5646, 0x5646], /* CJK Ideograph */ + [0x5647, 0x5647], /* CJK Ideograph */ + [0x5648, 0x5648], /* CJK Ideograph */ + [0x5649, 0x5649], /* CJK Ideograph */ + [0x564a, 0x564a], /* CJK Ideograph */ + [0x564b, 0x564b], /* CJK Ideograph */ + [0x564c, 0x564c], /* CJK Ideograph */ + [0x564d, 0x564d], /* CJK Ideograph */ + [0x564e, 0x564e], /* CJK Ideograph */ + [0x564f, 0x564f], /* CJK Ideograph */ + [0x5650, 0x5650], /* CJK Ideograph */ + [0x5651, 0x5651], /* CJK Ideograph */ + [0x5652, 0x5652], /* CJK Ideograph */ + [0x5653, 0x5653], /* CJK Ideograph */ + [0x5654, 0x5654], /* CJK Ideograph */ + [0x5655, 0x5655], /* CJK Ideograph */ + [0x5656, 0x5656], /* CJK Ideograph */ + [0x5657, 0x5657], /* CJK Ideograph */ + [0x5658, 0x5658], /* CJK Ideograph */ + [0x5659, 0x5659], /* CJK Ideograph */ + [0x565a, 0x565a], /* CJK Ideograph */ + [0x565b, 0x565b], /* CJK Ideograph */ + [0x565c, 0x565c], /* CJK Ideograph */ + [0x565d, 0x565d], /* CJK Ideograph */ + [0x565e, 0x565e], /* CJK Ideograph */ + [0x565f, 0x565f], /* CJK Ideograph */ + [0x5660, 0x5660], /* CJK Ideograph */ + [0x5661, 0x5661], /* CJK Ideograph */ + [0x5662, 0x5662], /* CJK Ideograph */ + [0x5663, 0x5663], /* CJK Ideograph */ + [0x5664, 0x5664], /* CJK Ideograph */ + [0x5665, 0x5665], /* CJK Ideograph */ + [0x5666, 0x5666], /* CJK Ideograph */ + [0x5667, 0x5667], /* CJK Ideograph */ + [0x5668, 0x5668], /* CJK Ideograph */ + [0x5669, 0x5669], /* CJK Ideograph */ + [0x566a, 0x566a], /* CJK Ideograph */ + [0x566b, 0x566b], /* CJK Ideograph */ + [0x566c, 0x566c], /* CJK Ideograph */ + [0x566d, 0x566d], /* CJK Ideograph */ + [0x566e, 0x566e], /* CJK Ideograph */ + [0x566f, 0x566f], /* CJK Ideograph */ + [0x5670, 0x5670], /* CJK Ideograph */ + [0x5671, 0x5671], /* CJK Ideograph */ + [0x5672, 0x5672], /* CJK Ideograph */ + [0x5673, 0x5673], /* CJK Ideograph */ + [0x5674, 0x5674], /* CJK Ideograph */ + [0x5675, 0x5675], /* CJK Ideograph */ + [0x5676, 0x5676], /* CJK Ideograph */ + [0x5677, 0x5677], /* CJK Ideograph */ + [0x5678, 0x5678], /* CJK Ideograph */ + [0x5679, 0x5679], /* CJK Ideograph */ + [0x567a, 0x567a], /* CJK Ideograph */ + [0x567b, 0x567b], /* CJK Ideograph */ + [0x567c, 0x567c], /* CJK Ideograph */ + [0x567d, 0x567d], /* CJK Ideograph */ + [0x567e, 0x567e], /* CJK Ideograph */ + [0x567f, 0x567f], /* CJK Ideograph */ + [0x5680, 0x5680], /* CJK Ideograph */ + [0x5681, 0x5681], /* CJK Ideograph */ + [0x5682, 0x5682], /* CJK Ideograph */ + [0x5683, 0x5683], /* CJK Ideograph */ + [0x5684, 0x5684], /* CJK Ideograph */ + [0x5685, 0x5685], /* CJK Ideograph */ + [0x5686, 0x5686], /* CJK Ideograph */ + [0x5687, 0x5687], /* CJK Ideograph */ + [0x5688, 0x5688], /* CJK Ideograph */ + [0x5689, 0x5689], /* CJK Ideograph */ + [0x568a, 0x568a], /* CJK Ideograph */ + [0x568b, 0x568b], /* CJK Ideograph */ + [0x568c, 0x568c], /* CJK Ideograph */ + [0x568d, 0x568d], /* CJK Ideograph */ + [0x568e, 0x568e], /* CJK Ideograph */ + [0x568f, 0x568f], /* CJK Ideograph */ + [0x5690, 0x5690], /* CJK Ideograph */ + [0x5691, 0x5691], /* CJK Ideograph */ + [0x5692, 0x5692], /* CJK Ideograph */ + [0x5693, 0x5693], /* CJK Ideograph */ + [0x5694, 0x5694], /* CJK Ideograph */ + [0x5695, 0x5695], /* CJK Ideograph */ + [0x5696, 0x5696], /* CJK Ideograph */ + [0x5697, 0x5697], /* CJK Ideograph */ + [0x5698, 0x5698], /* CJK Ideograph */ + [0x5699, 0x5699], /* CJK Ideograph */ + [0x569a, 0x569a], /* CJK Ideograph */ + [0x569b, 0x569b], /* CJK Ideograph */ + [0x569c, 0x569c], /* CJK Ideograph */ + [0x569d, 0x569d], /* CJK Ideograph */ + [0x569e, 0x569e], /* CJK Ideograph */ + [0x569f, 0x569f], /* CJK Ideograph */ + [0x56a0, 0x56a0], /* CJK Ideograph */ + [0x56a1, 0x56a1], /* CJK Ideograph */ + [0x56a2, 0x56a2], /* CJK Ideograph */ + [0x56a3, 0x56a3], /* CJK Ideograph */ + [0x56a4, 0x56a4], /* CJK Ideograph */ + [0x56a5, 0x56a5], /* CJK Ideograph */ + [0x56a6, 0x56a6], /* CJK Ideograph */ + [0x56a7, 0x56a7], /* CJK Ideograph */ + [0x56a8, 0x56a8], /* CJK Ideograph */ + [0x56a9, 0x56a9], /* CJK Ideograph */ + [0x56aa, 0x56aa], /* CJK Ideograph */ + [0x56ab, 0x56ab], /* CJK Ideograph */ + [0x56ac, 0x56ac], /* CJK Ideograph */ + [0x56ad, 0x56ad], /* CJK Ideograph */ + [0x56ae, 0x56ae], /* CJK Ideograph */ + [0x56af, 0x56af], /* CJK Ideograph */ + [0x56b0, 0x56b0], /* CJK Ideograph */ + [0x56b1, 0x56b1], /* CJK Ideograph */ + [0x56b2, 0x56b2], /* CJK Ideograph */ + [0x56b3, 0x56b3], /* CJK Ideograph */ + [0x56b4, 0x56b4], /* CJK Ideograph */ + [0x56b5, 0x56b5], /* CJK Ideograph */ + [0x56b6, 0x56b6], /* CJK Ideograph */ + [0x56b7, 0x56b7], /* CJK Ideograph */ + [0x56b8, 0x56b8], /* CJK Ideograph */ + [0x56b9, 0x56b9], /* CJK Ideograph */ + [0x56ba, 0x56ba], /* CJK Ideograph */ + [0x56bb, 0x56bb], /* CJK Ideograph */ + [0x56bc, 0x56bc], /* CJK Ideograph */ + [0x56bd, 0x56bd], /* CJK Ideograph */ + [0x56be, 0x56be], /* CJK Ideograph */ + [0x56bf, 0x56bf], /* CJK Ideograph */ + [0x56c0, 0x56c0], /* CJK Ideograph */ + [0x56c1, 0x56c1], /* CJK Ideograph */ + [0x56c2, 0x56c2], /* CJK Ideograph */ + [0x56c3, 0x56c3], /* CJK Ideograph */ + [0x56c4, 0x56c4], /* CJK Ideograph */ + [0x56c5, 0x56c5], /* CJK Ideograph */ + [0x56c6, 0x56c6], /* CJK Ideograph */ + [0x56c7, 0x56c7], /* CJK Ideograph */ + [0x56c8, 0x56c8], /* CJK Ideograph */ + [0x56c9, 0x56c9], /* CJK Ideograph */ + [0x56ca, 0x56ca], /* CJK Ideograph */ + [0x56cb, 0x56cb], /* CJK Ideograph */ + [0x56cc, 0x56cc], /* CJK Ideograph */ + [0x56cd, 0x56cd], /* CJK Ideograph */ + [0x56ce, 0x56ce], /* CJK Ideograph */ + [0x56cf, 0x56cf], /* CJK Ideograph */ + [0x56d0, 0x56d0], /* CJK Ideograph */ + [0x56d1, 0x56d1], /* CJK Ideograph */ + [0x56d2, 0x56d2], /* CJK Ideograph */ + [0x56d3, 0x56d3], /* CJK Ideograph */ + [0x56d4, 0x56d4], /* CJK Ideograph */ + [0x56d5, 0x56d5], /* CJK Ideograph */ + [0x56d6, 0x56d6], /* CJK Ideograph */ + [0x56d7, 0x56d7], /* CJK Ideograph */ + [0x56d8, 0x56d8], /* CJK Ideograph */ + [0x56d9, 0x56d9], /* CJK Ideograph */ + [0x56da, 0x56da], /* CJK Ideograph */ + [0x56db, 0x56db], /* CJK Ideograph */ + [0x56dc, 0x56dc], /* CJK Ideograph */ + [0x56dd, 0x56dd], /* CJK Ideograph */ + [0x56de, 0x56de], /* CJK Ideograph */ + [0x56df, 0x56df], /* CJK Ideograph */ + [0x56e0, 0x56e0], /* CJK Ideograph */ + [0x56e1, 0x56e1], /* CJK Ideograph */ + [0x56e2, 0x56e2], /* CJK Ideograph */ + [0x56e3, 0x56e3], /* CJK Ideograph */ + [0x56e4, 0x56e4], /* CJK Ideograph */ + [0x56e5, 0x56e5], /* CJK Ideograph */ + [0x56e6, 0x56e6], /* CJK Ideograph */ + [0x56e7, 0x56e7], /* CJK Ideograph */ + [0x56e8, 0x56e8], /* CJK Ideograph */ + [0x56e9, 0x56e9], /* CJK Ideograph */ + [0x56ea, 0x56ea], /* CJK Ideograph */ + [0x56eb, 0x56eb], /* CJK Ideograph */ + [0x56ec, 0x56ec], /* CJK Ideograph */ + [0x56ed, 0x56ed], /* CJK Ideograph */ + [0x56ee, 0x56ee], /* CJK Ideograph */ + [0x56ef, 0x56ef], /* CJK Ideograph */ + [0x56f0, 0x56f0], /* CJK Ideograph */ + [0x56f1, 0x56f1], /* CJK Ideograph */ + [0x56f2, 0x56f2], /* CJK Ideograph */ + [0x56f3, 0x56f3], /* CJK Ideograph */ + [0x56f4, 0x56f4], /* CJK Ideograph */ + [0x56f5, 0x56f5], /* CJK Ideograph */ + [0x56f6, 0x56f6], /* CJK Ideograph */ + [0x56f7, 0x56f7], /* CJK Ideograph */ + [0x56f8, 0x56f8], /* CJK Ideograph */ + [0x56f9, 0x56f9], /* CJK Ideograph */ + [0x56fa, 0x56fa], /* CJK Ideograph */ + [0x56fb, 0x56fb], /* CJK Ideograph */ + [0x56fc, 0x56fc], /* CJK Ideograph */ + [0x56fd, 0x56fd], /* CJK Ideograph */ + [0x56fe, 0x56fe], /* CJK Ideograph */ + [0x56ff, 0x56ff], /* CJK Ideograph */ + [0x5700, 0x5700], /* CJK Ideograph */ + [0x5701, 0x5701], /* CJK Ideograph */ + [0x5702, 0x5702], /* CJK Ideograph */ + [0x5703, 0x5703], /* CJK Ideograph */ + [0x5704, 0x5704], /* CJK Ideograph */ + [0x5705, 0x5705], /* CJK Ideograph */ + [0x5706, 0x5706], /* CJK Ideograph */ + [0x5707, 0x5707], /* CJK Ideograph */ + [0x5708, 0x5708], /* CJK Ideograph */ + [0x5709, 0x5709], /* CJK Ideograph */ + [0x570a, 0x570a], /* CJK Ideograph */ + [0x570b, 0x570b], /* CJK Ideograph */ + [0x570c, 0x570c], /* CJK Ideograph */ + [0x570d, 0x570d], /* CJK Ideograph */ + [0x570e, 0x570e], /* CJK Ideograph */ + [0x570f, 0x570f], /* CJK Ideograph */ + [0x5710, 0x5710], /* CJK Ideograph */ + [0x5711, 0x5711], /* CJK Ideograph */ + [0x5712, 0x5712], /* CJK Ideograph */ + [0x5713, 0x5713], /* CJK Ideograph */ + [0x5714, 0x5714], /* CJK Ideograph */ + [0x5715, 0x5715], /* CJK Ideograph */ + [0x5716, 0x5716], /* CJK Ideograph */ + [0x5717, 0x5717], /* CJK Ideograph */ + [0x5718, 0x5718], /* CJK Ideograph */ + [0x5719, 0x5719], /* CJK Ideograph */ + [0x571a, 0x571a], /* CJK Ideograph */ + [0x571b, 0x571b], /* CJK Ideograph */ + [0x571c, 0x571c], /* CJK Ideograph */ + [0x571d, 0x571d], /* CJK Ideograph */ + [0x571e, 0x571e], /* CJK Ideograph */ + [0x571f, 0x571f], /* CJK Ideograph */ + [0x5720, 0x5720], /* CJK Ideograph */ + [0x5721, 0x5721], /* CJK Ideograph */ + [0x5722, 0x5722], /* CJK Ideograph */ + [0x5723, 0x5723], /* CJK Ideograph */ + [0x5724, 0x5724], /* CJK Ideograph */ + [0x5725, 0x5725], /* CJK Ideograph */ + [0x5726, 0x5726], /* CJK Ideograph */ + [0x5727, 0x5727], /* CJK Ideograph */ + [0x5728, 0x5728], /* CJK Ideograph */ + [0x5729, 0x5729], /* CJK Ideograph */ + [0x572a, 0x572a], /* CJK Ideograph */ + [0x572b, 0x572b], /* CJK Ideograph */ + [0x572c, 0x572c], /* CJK Ideograph */ + [0x572d, 0x572d], /* CJK Ideograph */ + [0x572e, 0x572e], /* CJK Ideograph */ + [0x572f, 0x572f], /* CJK Ideograph */ + [0x5730, 0x5730], /* CJK Ideograph */ + [0x5731, 0x5731], /* CJK Ideograph */ + [0x5732, 0x5732], /* CJK Ideograph */ + [0x5733, 0x5733], /* CJK Ideograph */ + [0x5734, 0x5734], /* CJK Ideograph */ + [0x5735, 0x5735], /* CJK Ideograph */ + [0x5736, 0x5736], /* CJK Ideograph */ + [0x5737, 0x5737], /* CJK Ideograph */ + [0x5738, 0x5738], /* CJK Ideograph */ + [0x5739, 0x5739], /* CJK Ideograph */ + [0x573a, 0x573a], /* CJK Ideograph */ + [0x573b, 0x573b], /* CJK Ideograph */ + [0x573c, 0x573c], /* CJK Ideograph */ + [0x573d, 0x573d], /* CJK Ideograph */ + [0x573e, 0x573e], /* CJK Ideograph */ + [0x573f, 0x573f], /* CJK Ideograph */ + [0x5740, 0x5740], /* CJK Ideograph */ + [0x5741, 0x5741], /* CJK Ideograph */ + [0x5742, 0x5742], /* CJK Ideograph */ + [0x5743, 0x5743], /* CJK Ideograph */ + [0x5744, 0x5744], /* CJK Ideograph */ + [0x5745, 0x5745], /* CJK Ideograph */ + [0x5746, 0x5746], /* CJK Ideograph */ + [0x5747, 0x5747], /* CJK Ideograph */ + [0x5748, 0x5748], /* CJK Ideograph */ + [0x5749, 0x5749], /* CJK Ideograph */ + [0x574a, 0x574a], /* CJK Ideograph */ + [0x574b, 0x574b], /* CJK Ideograph */ + [0x574c, 0x574c], /* CJK Ideograph */ + [0x574d, 0x574d], /* CJK Ideograph */ + [0x574e, 0x574e], /* CJK Ideograph */ + [0x574f, 0x574f], /* CJK Ideograph */ + [0x5750, 0x5750], /* CJK Ideograph */ + [0x5751, 0x5751], /* CJK Ideograph */ + [0x5752, 0x5752], /* CJK Ideograph */ + [0x5753, 0x5753], /* CJK Ideograph */ + [0x5754, 0x5754], /* CJK Ideograph */ + [0x5755, 0x5755], /* CJK Ideograph */ + [0x5756, 0x5756], /* CJK Ideograph */ + [0x5757, 0x5757], /* CJK Ideograph */ + [0x5758, 0x5758], /* CJK Ideograph */ + [0x5759, 0x5759], /* CJK Ideograph */ + [0x575a, 0x575a], /* CJK Ideograph */ + [0x575b, 0x575b], /* CJK Ideograph */ + [0x575c, 0x575c], /* CJK Ideograph */ + [0x575d, 0x575d], /* CJK Ideograph */ + [0x575e, 0x575e], /* CJK Ideograph */ + [0x575f, 0x575f], /* CJK Ideograph */ + [0x5760, 0x5760], /* CJK Ideograph */ + [0x5761, 0x5761], /* CJK Ideograph */ + [0x5762, 0x5762], /* CJK Ideograph */ + [0x5763, 0x5763], /* CJK Ideograph */ + [0x5764, 0x5764], /* CJK Ideograph */ + [0x5765, 0x5765], /* CJK Ideograph */ + [0x5766, 0x5766], /* CJK Ideograph */ + [0x5767, 0x5767], /* CJK Ideograph */ + [0x5768, 0x5768], /* CJK Ideograph */ + [0x5769, 0x5769], /* CJK Ideograph */ + [0x576a, 0x576a], /* CJK Ideograph */ + [0x576b, 0x576b], /* CJK Ideograph */ + [0x576c, 0x576c], /* CJK Ideograph */ + [0x576d, 0x576d], /* CJK Ideograph */ + [0x576e, 0x576e], /* CJK Ideograph */ + [0x576f, 0x576f], /* CJK Ideograph */ + [0x5770, 0x5770], /* CJK Ideograph */ + [0x5771, 0x5771], /* CJK Ideograph */ + [0x5772, 0x5772], /* CJK Ideograph */ + [0x5773, 0x5773], /* CJK Ideograph */ + [0x5774, 0x5774], /* CJK Ideograph */ + [0x5775, 0x5775], /* CJK Ideograph */ + [0x5776, 0x5776], /* CJK Ideograph */ + [0x5777, 0x5777], /* CJK Ideograph */ + [0x5778, 0x5778], /* CJK Ideograph */ + [0x5779, 0x5779], /* CJK Ideograph */ + [0x577a, 0x577a], /* CJK Ideograph */ + [0x577b, 0x577b], /* CJK Ideograph */ + [0x577c, 0x577c], /* CJK Ideograph */ + [0x577d, 0x577d], /* CJK Ideograph */ + [0x577e, 0x577e], /* CJK Ideograph */ + [0x577f, 0x577f], /* CJK Ideograph */ + [0x5780, 0x5780], /* CJK Ideograph */ + [0x5781, 0x5781], /* CJK Ideograph */ + [0x5782, 0x5782], /* CJK Ideograph */ + [0x5783, 0x5783], /* CJK Ideograph */ + [0x5784, 0x5784], /* CJK Ideograph */ + [0x5785, 0x5785], /* CJK Ideograph */ + [0x5786, 0x5786], /* CJK Ideograph */ + [0x5787, 0x5787], /* CJK Ideograph */ + [0x5788, 0x5788], /* CJK Ideograph */ + [0x5789, 0x5789], /* CJK Ideograph */ + [0x578a, 0x578a], /* CJK Ideograph */ + [0x578b, 0x578b], /* CJK Ideograph */ + [0x578c, 0x578c], /* CJK Ideograph */ + [0x578d, 0x578d], /* CJK Ideograph */ + [0x578e, 0x578e], /* CJK Ideograph */ + [0x578f, 0x578f], /* CJK Ideograph */ + [0x5790, 0x5790], /* CJK Ideograph */ + [0x5791, 0x5791], /* CJK Ideograph */ + [0x5792, 0x5792], /* CJK Ideograph */ + [0x5793, 0x5793], /* CJK Ideograph */ + [0x5794, 0x5794], /* CJK Ideograph */ + [0x5795, 0x5795], /* CJK Ideograph */ + [0x5796, 0x5796], /* CJK Ideograph */ + [0x5797, 0x5797], /* CJK Ideograph */ + [0x5798, 0x5798], /* CJK Ideograph */ + [0x5799, 0x5799], /* CJK Ideograph */ + [0x579a, 0x579a], /* CJK Ideograph */ + [0x579b, 0x579b], /* CJK Ideograph */ + [0x579c, 0x579c], /* CJK Ideograph */ + [0x579d, 0x579d], /* CJK Ideograph */ + [0x579e, 0x579e], /* CJK Ideograph */ + [0x579f, 0x579f], /* CJK Ideograph */ + [0x57a0, 0x57a0], /* CJK Ideograph */ + [0x57a1, 0x57a1], /* CJK Ideograph */ + [0x57a2, 0x57a2], /* CJK Ideograph */ + [0x57a3, 0x57a3], /* CJK Ideograph */ + [0x57a4, 0x57a4], /* CJK Ideograph */ + [0x57a5, 0x57a5], /* CJK Ideograph */ + [0x57a6, 0x57a6], /* CJK Ideograph */ + [0x57a7, 0x57a7], /* CJK Ideograph */ + [0x57a8, 0x57a8], /* CJK Ideograph */ + [0x57a9, 0x57a9], /* CJK Ideograph */ + [0x57aa, 0x57aa], /* CJK Ideograph */ + [0x57ab, 0x57ab], /* CJK Ideograph */ + [0x57ac, 0x57ac], /* CJK Ideograph */ + [0x57ad, 0x57ad], /* CJK Ideograph */ + [0x57ae, 0x57ae], /* CJK Ideograph */ + [0x57af, 0x57af], /* CJK Ideograph */ + [0x57b0, 0x57b0], /* CJK Ideograph */ + [0x57b1, 0x57b1], /* CJK Ideograph */ + [0x57b2, 0x57b2], /* CJK Ideograph */ + [0x57b3, 0x57b3], /* CJK Ideograph */ + [0x57b4, 0x57b4], /* CJK Ideograph */ + [0x57b5, 0x57b5], /* CJK Ideograph */ + [0x57b6, 0x57b6], /* CJK Ideograph */ + [0x57b7, 0x57b7], /* CJK Ideograph */ + [0x57b8, 0x57b8], /* CJK Ideograph */ + [0x57b9, 0x57b9], /* CJK Ideograph */ + [0x57ba, 0x57ba], /* CJK Ideograph */ + [0x57bb, 0x57bb], /* CJK Ideograph */ + [0x57bc, 0x57bc], /* CJK Ideograph */ + [0x57bd, 0x57bd], /* CJK Ideograph */ + [0x57be, 0x57be], /* CJK Ideograph */ + [0x57bf, 0x57bf], /* CJK Ideograph */ + [0x57c0, 0x57c0], /* CJK Ideograph */ + [0x57c1, 0x57c1], /* CJK Ideograph */ + [0x57c2, 0x57c2], /* CJK Ideograph */ + [0x57c3, 0x57c3], /* CJK Ideograph */ + [0x57c4, 0x57c4], /* CJK Ideograph */ + [0x57c5, 0x57c5], /* CJK Ideograph */ + [0x57c6, 0x57c6], /* CJK Ideograph */ + [0x57c7, 0x57c7], /* CJK Ideograph */ + [0x57c8, 0x57c8], /* CJK Ideograph */ + [0x57c9, 0x57c9], /* CJK Ideograph */ + [0x57ca, 0x57ca], /* CJK Ideograph */ + [0x57cb, 0x57cb], /* CJK Ideograph */ + [0x57cc, 0x57cc], /* CJK Ideograph */ + [0x57cd, 0x57cd], /* CJK Ideograph */ + [0x57ce, 0x57ce], /* CJK Ideograph */ + [0x57cf, 0x57cf], /* CJK Ideograph */ + [0x57d0, 0x57d0], /* CJK Ideograph */ + [0x57d1, 0x57d1], /* CJK Ideograph */ + [0x57d2, 0x57d2], /* CJK Ideograph */ + [0x57d3, 0x57d3], /* CJK Ideograph */ + [0x57d4, 0x57d4], /* CJK Ideograph */ + [0x57d5, 0x57d5], /* CJK Ideograph */ + [0x57d6, 0x57d6], /* CJK Ideograph */ + [0x57d7, 0x57d7], /* CJK Ideograph */ + [0x57d8, 0x57d8], /* CJK Ideograph */ + [0x57d9, 0x57d9], /* CJK Ideograph */ + [0x57da, 0x57da], /* CJK Ideograph */ + [0x57db, 0x57db], /* CJK Ideograph */ + [0x57dc, 0x57dc], /* CJK Ideograph */ + [0x57dd, 0x57dd], /* CJK Ideograph */ + [0x57de, 0x57de], /* CJK Ideograph */ + [0x57df, 0x57df], /* CJK Ideograph */ + [0x57e0, 0x57e0], /* CJK Ideograph */ + [0x57e1, 0x57e1], /* CJK Ideograph */ + [0x57e2, 0x57e2], /* CJK Ideograph */ + [0x57e3, 0x57e3], /* CJK Ideograph */ + [0x57e4, 0x57e4], /* CJK Ideograph */ + [0x57e5, 0x57e5], /* CJK Ideograph */ + [0x57e6, 0x57e6], /* CJK Ideograph */ + [0x57e7, 0x57e7], /* CJK Ideograph */ + [0x57e8, 0x57e8], /* CJK Ideograph */ + [0x57e9, 0x57e9], /* CJK Ideograph */ + [0x57ea, 0x57ea], /* CJK Ideograph */ + [0x57eb, 0x57eb], /* CJK Ideograph */ + [0x57ec, 0x57ec], /* CJK Ideograph */ + [0x57ed, 0x57ed], /* CJK Ideograph */ + [0x57ee, 0x57ee], /* CJK Ideograph */ + [0x57ef, 0x57ef], /* CJK Ideograph */ + [0x57f0, 0x57f0], /* CJK Ideograph */ + [0x57f1, 0x57f1], /* CJK Ideograph */ + [0x57f2, 0x57f2], /* CJK Ideograph */ + [0x57f3, 0x57f3], /* CJK Ideograph */ + [0x57f4, 0x57f4], /* CJK Ideograph */ + [0x57f5, 0x57f5], /* CJK Ideograph */ + [0x57f6, 0x57f6], /* CJK Ideograph */ + [0x57f7, 0x57f7], /* CJK Ideograph */ + [0x57f8, 0x57f8], /* CJK Ideograph */ + [0x57f9, 0x57f9], /* CJK Ideograph */ + [0x57fa, 0x57fa], /* CJK Ideograph */ + [0x57fb, 0x57fb], /* CJK Ideograph */ + [0x57fc, 0x57fc], /* CJK Ideograph */ + [0x57fd, 0x57fd], /* CJK Ideograph */ + [0x57fe, 0x57fe], /* CJK Ideograph */ + [0x57ff, 0x57ff], /* CJK Ideograph */ + [0x5800, 0x5800], /* CJK Ideograph */ + [0x5801, 0x5801], /* CJK Ideograph */ + [0x5802, 0x5802], /* CJK Ideograph */ + [0x5803, 0x5803], /* CJK Ideograph */ + [0x5804, 0x5804], /* CJK Ideograph */ + [0x5805, 0x5805], /* CJK Ideograph */ + [0x5806, 0x5806], /* CJK Ideograph */ + [0x5807, 0x5807], /* CJK Ideograph */ + [0x5808, 0x5808], /* CJK Ideograph */ + [0x5809, 0x5809], /* CJK Ideograph */ + [0x580a, 0x580a], /* CJK Ideograph */ + [0x580b, 0x580b], /* CJK Ideograph */ + [0x580c, 0x580c], /* CJK Ideograph */ + [0x580d, 0x580d], /* CJK Ideograph */ + [0x580e, 0x580e], /* CJK Ideograph */ + [0x580f, 0x580f], /* CJK Ideograph */ + [0x5810, 0x5810], /* CJK Ideograph */ + [0x5811, 0x5811], /* CJK Ideograph */ + [0x5812, 0x5812], /* CJK Ideograph */ + [0x5813, 0x5813], /* CJK Ideograph */ + [0x5814, 0x5814], /* CJK Ideograph */ + [0x5815, 0x5815], /* CJK Ideograph */ + [0x5816, 0x5816], /* CJK Ideograph */ + [0x5817, 0x5817], /* CJK Ideograph */ + [0x5818, 0x5818], /* CJK Ideograph */ + [0x5819, 0x5819], /* CJK Ideograph */ + [0x581a, 0x581a], /* CJK Ideograph */ + [0x581b, 0x581b], /* CJK Ideograph */ + [0x581c, 0x581c], /* CJK Ideograph */ + [0x581d, 0x581d], /* CJK Ideograph */ + [0x581e, 0x581e], /* CJK Ideograph */ + [0x581f, 0x581f], /* CJK Ideograph */ + [0x5820, 0x5820], /* CJK Ideograph */ + [0x5821, 0x5821], /* CJK Ideograph */ + [0x5822, 0x5822], /* CJK Ideograph */ + [0x5823, 0x5823], /* CJK Ideograph */ + [0x5824, 0x5824], /* CJK Ideograph */ + [0x5825, 0x5825], /* CJK Ideograph */ + [0x5826, 0x5826], /* CJK Ideograph */ + [0x5827, 0x5827], /* CJK Ideograph */ + [0x5828, 0x5828], /* CJK Ideograph */ + [0x5829, 0x5829], /* CJK Ideograph */ + [0x582a, 0x582a], /* CJK Ideograph */ + [0x582b, 0x582b], /* CJK Ideograph */ + [0x582c, 0x582c], /* CJK Ideograph */ + [0x582d, 0x582d], /* CJK Ideograph */ + [0x582e, 0x582e], /* CJK Ideograph */ + [0x582f, 0x582f], /* CJK Ideograph */ + [0x5830, 0x5830], /* CJK Ideograph */ + [0x5831, 0x5831], /* CJK Ideograph */ + [0x5832, 0x5832], /* CJK Ideograph */ + [0x5833, 0x5833], /* CJK Ideograph */ + [0x5834, 0x5834], /* CJK Ideograph */ + [0x5835, 0x5835], /* CJK Ideograph */ + [0x5836, 0x5836], /* CJK Ideograph */ + [0x5837, 0x5837], /* CJK Ideograph */ + [0x5838, 0x5838], /* CJK Ideograph */ + [0x5839, 0x5839], /* CJK Ideograph */ + [0x583a, 0x583a], /* CJK Ideograph */ + [0x583b, 0x583b], /* CJK Ideograph */ + [0x583c, 0x583c], /* CJK Ideograph */ + [0x583d, 0x583d], /* CJK Ideograph */ + [0x583e, 0x583e], /* CJK Ideograph */ + [0x583f, 0x583f], /* CJK Ideograph */ + [0x5840, 0x5840], /* CJK Ideograph */ + [0x5841, 0x5841], /* CJK Ideograph */ + [0x5842, 0x5842], /* CJK Ideograph */ + [0x5843, 0x5843], /* CJK Ideograph */ + [0x5844, 0x5844], /* CJK Ideograph */ + [0x5845, 0x5845], /* CJK Ideograph */ + [0x5846, 0x5846], /* CJK Ideograph */ + [0x5847, 0x5847], /* CJK Ideograph */ + [0x5848, 0x5848], /* CJK Ideograph */ + [0x5849, 0x5849], /* CJK Ideograph */ + [0x584a, 0x584a], /* CJK Ideograph */ + [0x584b, 0x584b], /* CJK Ideograph */ + [0x584c, 0x584c], /* CJK Ideograph */ + [0x584d, 0x584d], /* CJK Ideograph */ + [0x584e, 0x584e], /* CJK Ideograph */ + [0x584f, 0x584f], /* CJK Ideograph */ + [0x5850, 0x5850], /* CJK Ideograph */ + [0x5851, 0x5851], /* CJK Ideograph */ + [0x5852, 0x5852], /* CJK Ideograph */ + [0x5853, 0x5853], /* CJK Ideograph */ + [0x5854, 0x5854], /* CJK Ideograph */ + [0x5855, 0x5855], /* CJK Ideograph */ + [0x5856, 0x5856], /* CJK Ideograph */ + [0x5857, 0x5857], /* CJK Ideograph */ + [0x5858, 0x5858], /* CJK Ideograph */ + [0x5859, 0x5859], /* CJK Ideograph */ + [0x585a, 0x585a], /* CJK Ideograph */ + [0x585b, 0x585b], /* CJK Ideograph */ + [0x585c, 0x585c], /* CJK Ideograph */ + [0x585d, 0x585d], /* CJK Ideograph */ + [0x585e, 0x585e], /* CJK Ideograph */ + [0x585f, 0x585f], /* CJK Ideograph */ + [0x5860, 0x5860], /* CJK Ideograph */ + [0x5861, 0x5861], /* CJK Ideograph */ + [0x5862, 0x5862], /* CJK Ideograph */ + [0x5863, 0x5863], /* CJK Ideograph */ + [0x5864, 0x5864], /* CJK Ideograph */ + [0x5865, 0x5865], /* CJK Ideograph */ + [0x5866, 0x5866], /* CJK Ideograph */ + [0x5867, 0x5867], /* CJK Ideograph */ + [0x5868, 0x5868], /* CJK Ideograph */ + [0x5869, 0x5869], /* CJK Ideograph */ + [0x586a, 0x586a], /* CJK Ideograph */ + [0x586b, 0x586b], /* CJK Ideograph */ + [0x586c, 0x586c], /* CJK Ideograph */ + [0x586d, 0x586d], /* CJK Ideograph */ + [0x586e, 0x586e], /* CJK Ideograph */ + [0x586f, 0x586f], /* CJK Ideograph */ + [0x5870, 0x5870], /* CJK Ideograph */ + [0x5871, 0x5871], /* CJK Ideograph */ + [0x5872, 0x5872], /* CJK Ideograph */ + [0x5873, 0x5873], /* CJK Ideograph */ + [0x5874, 0x5874], /* CJK Ideograph */ + [0x5875, 0x5875], /* CJK Ideograph */ + [0x5876, 0x5876], /* CJK Ideograph */ + [0x5877, 0x5877], /* CJK Ideograph */ + [0x5878, 0x5878], /* CJK Ideograph */ + [0x5879, 0x5879], /* CJK Ideograph */ + [0x587a, 0x587a], /* CJK Ideograph */ + [0x587b, 0x587b], /* CJK Ideograph */ + [0x587c, 0x587c], /* CJK Ideograph */ + [0x587d, 0x587d], /* CJK Ideograph */ + [0x587e, 0x587e], /* CJK Ideograph */ + [0x587f, 0x587f], /* CJK Ideograph */ + [0x5880, 0x5880], /* CJK Ideograph */ + [0x5881, 0x5881], /* CJK Ideograph */ + [0x5882, 0x5882], /* CJK Ideograph */ + [0x5883, 0x5883], /* CJK Ideograph */ + [0x5884, 0x5884], /* CJK Ideograph */ + [0x5885, 0x5885], /* CJK Ideograph */ + [0x5886, 0x5886], /* CJK Ideograph */ + [0x5887, 0x5887], /* CJK Ideograph */ + [0x5888, 0x5888], /* CJK Ideograph */ + [0x5889, 0x5889], /* CJK Ideograph */ + [0x588a, 0x588a], /* CJK Ideograph */ + [0x588b, 0x588b], /* CJK Ideograph */ + [0x588c, 0x588c], /* CJK Ideograph */ + [0x588d, 0x588d], /* CJK Ideograph */ + [0x588e, 0x588e], /* CJK Ideograph */ + [0x588f, 0x588f], /* CJK Ideograph */ + [0x5890, 0x5890], /* CJK Ideograph */ + [0x5891, 0x5891], /* CJK Ideograph */ + [0x5892, 0x5892], /* CJK Ideograph */ + [0x5893, 0x5893], /* CJK Ideograph */ + [0x5894, 0x5894], /* CJK Ideograph */ + [0x5895, 0x5895], /* CJK Ideograph */ + [0x5896, 0x5896], /* CJK Ideograph */ + [0x5897, 0x5897], /* CJK Ideograph */ + [0x5898, 0x5898], /* CJK Ideograph */ + [0x5899, 0x5899], /* CJK Ideograph */ + [0x589a, 0x589a], /* CJK Ideograph */ + [0x589b, 0x589b], /* CJK Ideograph */ + [0x589c, 0x589c], /* CJK Ideograph */ + [0x589d, 0x589d], /* CJK Ideograph */ + [0x589e, 0x589e], /* CJK Ideograph */ + [0x589f, 0x589f], /* CJK Ideograph */ + [0x58a0, 0x58a0], /* CJK Ideograph */ + [0x58a1, 0x58a1], /* CJK Ideograph */ + [0x58a2, 0x58a2], /* CJK Ideograph */ + [0x58a3, 0x58a3], /* CJK Ideograph */ + [0x58a4, 0x58a4], /* CJK Ideograph */ + [0x58a5, 0x58a5], /* CJK Ideograph */ + [0x58a6, 0x58a6], /* CJK Ideograph */ + [0x58a7, 0x58a7], /* CJK Ideograph */ + [0x58a8, 0x58a8], /* CJK Ideograph */ + [0x58a9, 0x58a9], /* CJK Ideograph */ + [0x58aa, 0x58aa], /* CJK Ideograph */ + [0x58ab, 0x58ab], /* CJK Ideograph */ + [0x58ac, 0x58ac], /* CJK Ideograph */ + [0x58ad, 0x58ad], /* CJK Ideograph */ + [0x58ae, 0x58ae], /* CJK Ideograph */ + [0x58af, 0x58af], /* CJK Ideograph */ + [0x58b0, 0x58b0], /* CJK Ideograph */ + [0x58b1, 0x58b1], /* CJK Ideograph */ + [0x58b2, 0x58b2], /* CJK Ideograph */ + [0x58b3, 0x58b3], /* CJK Ideograph */ + [0x58b4, 0x58b4], /* CJK Ideograph */ + [0x58b5, 0x58b5], /* CJK Ideograph */ + [0x58b6, 0x58b6], /* CJK Ideograph */ + [0x58b7, 0x58b7], /* CJK Ideograph */ + [0x58b8, 0x58b8], /* CJK Ideograph */ + [0x58b9, 0x58b9], /* CJK Ideograph */ + [0x58ba, 0x58ba], /* CJK Ideograph */ + [0x58bb, 0x58bb], /* CJK Ideograph */ + [0x58bc, 0x58bc], /* CJK Ideograph */ + [0x58bd, 0x58bd], /* CJK Ideograph */ + [0x58be, 0x58be], /* CJK Ideograph */ + [0x58bf, 0x58bf], /* CJK Ideograph */ + [0x58c0, 0x58c0], /* CJK Ideograph */ + [0x58c1, 0x58c1], /* CJK Ideograph */ + [0x58c2, 0x58c2], /* CJK Ideograph */ + [0x58c3, 0x58c3], /* CJK Ideograph */ + [0x58c4, 0x58c4], /* CJK Ideograph */ + [0x58c5, 0x58c5], /* CJK Ideograph */ + [0x58c6, 0x58c6], /* CJK Ideograph */ + [0x58c7, 0x58c7], /* CJK Ideograph */ + [0x58c8, 0x58c8], /* CJK Ideograph */ + [0x58c9, 0x58c9], /* CJK Ideograph */ + [0x58ca, 0x58ca], /* CJK Ideograph */ + [0x58cb, 0x58cb], /* CJK Ideograph */ + [0x58cc, 0x58cc], /* CJK Ideograph */ + [0x58cd, 0x58cd], /* CJK Ideograph */ + [0x58ce, 0x58ce], /* CJK Ideograph */ + [0x58cf, 0x58cf], /* CJK Ideograph */ + [0x58d0, 0x58d0], /* CJK Ideograph */ + [0x58d1, 0x58d1], /* CJK Ideograph */ + [0x58d2, 0x58d2], /* CJK Ideograph */ + [0x58d3, 0x58d3], /* CJK Ideograph */ + [0x58d4, 0x58d4], /* CJK Ideograph */ + [0x58d5, 0x58d5], /* CJK Ideograph */ + [0x58d6, 0x58d6], /* CJK Ideograph */ + [0x58d7, 0x58d7], /* CJK Ideograph */ + [0x58d8, 0x58d8], /* CJK Ideograph */ + [0x58d9, 0x58d9], /* CJK Ideograph */ + [0x58da, 0x58da], /* CJK Ideograph */ + [0x58db, 0x58db], /* CJK Ideograph */ + [0x58dc, 0x58dc], /* CJK Ideograph */ + [0x58dd, 0x58dd], /* CJK Ideograph */ + [0x58de, 0x58de], /* CJK Ideograph */ + [0x58df, 0x58df], /* CJK Ideograph */ + [0x58e0, 0x58e0], /* CJK Ideograph */ + [0x58e1, 0x58e1], /* CJK Ideograph */ + [0x58e2, 0x58e2], /* CJK Ideograph */ + [0x58e3, 0x58e3], /* CJK Ideograph */ + [0x58e4, 0x58e4], /* CJK Ideograph */ + [0x58e5, 0x58e5], /* CJK Ideograph */ + [0x58e6, 0x58e6], /* CJK Ideograph */ + [0x58e7, 0x58e7], /* CJK Ideograph */ + [0x58e8, 0x58e8], /* CJK Ideograph */ + [0x58e9, 0x58e9], /* CJK Ideograph */ + [0x58ea, 0x58ea], /* CJK Ideograph */ + [0x58eb, 0x58eb], /* CJK Ideograph */ + [0x58ec, 0x58ec], /* CJK Ideograph */ + [0x58ed, 0x58ed], /* CJK Ideograph */ + [0x58ee, 0x58ee], /* CJK Ideograph */ + [0x58ef, 0x58ef], /* CJK Ideograph */ + [0x58f0, 0x58f0], /* CJK Ideograph */ + [0x58f1, 0x58f1], /* CJK Ideograph */ + [0x58f2, 0x58f2], /* CJK Ideograph */ + [0x58f3, 0x58f3], /* CJK Ideograph */ + [0x58f4, 0x58f4], /* CJK Ideograph */ + [0x58f5, 0x58f5], /* CJK Ideograph */ + [0x58f6, 0x58f6], /* CJK Ideograph */ + [0x58f7, 0x58f7], /* CJK Ideograph */ + [0x58f8, 0x58f8], /* CJK Ideograph */ + [0x58f9, 0x58f9], /* CJK Ideograph */ + [0x58fa, 0x58fa], /* CJK Ideograph */ + [0x58fb, 0x58fb], /* CJK Ideograph */ + [0x58fc, 0x58fc], /* CJK Ideograph */ + [0x58fd, 0x58fd], /* CJK Ideograph */ + [0x58fe, 0x58fe], /* CJK Ideograph */ + [0x58ff, 0x58ff], /* CJK Ideograph */ + [0x5900, 0x5900], /* CJK Ideograph */ + [0x5901, 0x5901], /* CJK Ideograph */ + [0x5902, 0x5902], /* CJK Ideograph */ + [0x5903, 0x5903], /* CJK Ideograph */ + [0x5904, 0x5904], /* CJK Ideograph */ + [0x5905, 0x5905], /* CJK Ideograph */ + [0x5906, 0x5906], /* CJK Ideograph */ + [0x5907, 0x5907], /* CJK Ideograph */ + [0x5908, 0x5908], /* CJK Ideograph */ + [0x5909, 0x5909], /* CJK Ideograph */ + [0x590a, 0x590a], /* CJK Ideograph */ + [0x590b, 0x590b], /* CJK Ideograph */ + [0x590c, 0x590c], /* CJK Ideograph */ + [0x590d, 0x590d], /* CJK Ideograph */ + [0x590e, 0x590e], /* CJK Ideograph */ + [0x590f, 0x590f], /* CJK Ideograph */ + [0x5910, 0x5910], /* CJK Ideograph */ + [0x5911, 0x5911], /* CJK Ideograph */ + [0x5912, 0x5912], /* CJK Ideograph */ + [0x5913, 0x5913], /* CJK Ideograph */ + [0x5914, 0x5914], /* CJK Ideograph */ + [0x5915, 0x5915], /* CJK Ideograph */ + [0x5916, 0x5916], /* CJK Ideograph */ + [0x5917, 0x5917], /* CJK Ideograph */ + [0x5918, 0x5918], /* CJK Ideograph */ + [0x5919, 0x5919], /* CJK Ideograph */ + [0x591a, 0x591a], /* CJK Ideograph */ + [0x591b, 0x591b], /* CJK Ideograph */ + [0x591c, 0x591c], /* CJK Ideograph */ + [0x591d, 0x591d], /* CJK Ideograph */ + [0x591e, 0x591e], /* CJK Ideograph */ + [0x591f, 0x591f], /* CJK Ideograph */ + [0x5920, 0x5920], /* CJK Ideograph */ + [0x5921, 0x5921], /* CJK Ideograph */ + [0x5922, 0x5922], /* CJK Ideograph */ + [0x5923, 0x5923], /* CJK Ideograph */ + [0x5924, 0x5924], /* CJK Ideograph */ + [0x5925, 0x5925], /* CJK Ideograph */ + [0x5926, 0x5926], /* CJK Ideograph */ + [0x5927, 0x5927], /* CJK Ideograph */ + [0x5928, 0x5928], /* CJK Ideograph */ + [0x5929, 0x5929], /* CJK Ideograph */ + [0x592a, 0x592a], /* CJK Ideograph */ + [0x592b, 0x592b], /* CJK Ideograph */ + [0x592c, 0x592c], /* CJK Ideograph */ + [0x592d, 0x592d], /* CJK Ideograph */ + [0x592e, 0x592e], /* CJK Ideograph */ + [0x592f, 0x592f], /* CJK Ideograph */ + [0x5930, 0x5930], /* CJK Ideograph */ + [0x5931, 0x5931], /* CJK Ideograph */ + [0x5932, 0x5932], /* CJK Ideograph */ + [0x5933, 0x5933], /* CJK Ideograph */ + [0x5934, 0x5934], /* CJK Ideograph */ + [0x5935, 0x5935], /* CJK Ideograph */ + [0x5936, 0x5936], /* CJK Ideograph */ + [0x5937, 0x5937], /* CJK Ideograph */ + [0x5938, 0x5938], /* CJK Ideograph */ + [0x5939, 0x5939], /* CJK Ideograph */ + [0x593a, 0x593a], /* CJK Ideograph */ + [0x593b, 0x593b], /* CJK Ideograph */ + [0x593c, 0x593c], /* CJK Ideograph */ + [0x593d, 0x593d], /* CJK Ideograph */ + [0x593e, 0x593e], /* CJK Ideograph */ + [0x593f, 0x593f], /* CJK Ideograph */ + [0x5940, 0x5940], /* CJK Ideograph */ + [0x5941, 0x5941], /* CJK Ideograph */ + [0x5942, 0x5942], /* CJK Ideograph */ + [0x5943, 0x5943], /* CJK Ideograph */ + [0x5944, 0x5944], /* CJK Ideograph */ + [0x5945, 0x5945], /* CJK Ideograph */ + [0x5946, 0x5946], /* CJK Ideograph */ + [0x5947, 0x5947], /* CJK Ideograph */ + [0x5948, 0x5948], /* CJK Ideograph */ + [0x5949, 0x5949], /* CJK Ideograph */ + [0x594a, 0x594a], /* CJK Ideograph */ + [0x594b, 0x594b], /* CJK Ideograph */ + [0x594c, 0x594c], /* CJK Ideograph */ + [0x594d, 0x594d], /* CJK Ideograph */ + [0x594e, 0x594e], /* CJK Ideograph */ + [0x594f, 0x594f], /* CJK Ideograph */ + [0x5950, 0x5950], /* CJK Ideograph */ + [0x5951, 0x5951], /* CJK Ideograph */ + [0x5952, 0x5952], /* CJK Ideograph */ + [0x5953, 0x5953], /* CJK Ideograph */ + [0x5954, 0x5954], /* CJK Ideograph */ + [0x5955, 0x5955], /* CJK Ideograph */ + [0x5956, 0x5956], /* CJK Ideograph */ + [0x5957, 0x5957], /* CJK Ideograph */ + [0x5958, 0x5958], /* CJK Ideograph */ + [0x5959, 0x5959], /* CJK Ideograph */ + [0x595a, 0x595a], /* CJK Ideograph */ + [0x595b, 0x595b], /* CJK Ideograph */ + [0x595c, 0x595c], /* CJK Ideograph */ + [0x595d, 0x595d], /* CJK Ideograph */ + [0x595e, 0x595e], /* CJK Ideograph */ + [0x595f, 0x595f], /* CJK Ideograph */ + [0x5960, 0x5960], /* CJK Ideograph */ + [0x5961, 0x5961], /* CJK Ideograph */ + [0x5962, 0x5962], /* CJK Ideograph */ + [0x5963, 0x5963], /* CJK Ideograph */ + [0x5964, 0x5964], /* CJK Ideograph */ + [0x5965, 0x5965], /* CJK Ideograph */ + [0x5966, 0x5966], /* CJK Ideograph */ + [0x5967, 0x5967], /* CJK Ideograph */ + [0x5968, 0x5968], /* CJK Ideograph */ + [0x5969, 0x5969], /* CJK Ideograph */ + [0x596a, 0x596a], /* CJK Ideograph */ + [0x596b, 0x596b], /* CJK Ideograph */ + [0x596c, 0x596c], /* CJK Ideograph */ + [0x596d, 0x596d], /* CJK Ideograph */ + [0x596e, 0x596e], /* CJK Ideograph */ + [0x596f, 0x596f], /* CJK Ideograph */ + [0x5970, 0x5970], /* CJK Ideograph */ + [0x5971, 0x5971], /* CJK Ideograph */ + [0x5972, 0x5972], /* CJK Ideograph */ + [0x5973, 0x5973], /* CJK Ideograph */ + [0x5974, 0x5974], /* CJK Ideograph */ + [0x5975, 0x5975], /* CJK Ideograph */ + [0x5976, 0x5976], /* CJK Ideograph */ + [0x5977, 0x5977], /* CJK Ideograph */ + [0x5978, 0x5978], /* CJK Ideograph */ + [0x5979, 0x5979], /* CJK Ideograph */ + [0x597a, 0x597a], /* CJK Ideograph */ + [0x597b, 0x597b], /* CJK Ideograph */ + [0x597c, 0x597c], /* CJK Ideograph */ + [0x597d, 0x597d], /* CJK Ideograph */ + [0x597e, 0x597e], /* CJK Ideograph */ + [0x597f, 0x597f], /* CJK Ideograph */ + [0x5980, 0x5980], /* CJK Ideograph */ + [0x5981, 0x5981], /* CJK Ideograph */ + [0x5982, 0x5982], /* CJK Ideograph */ + [0x5983, 0x5983], /* CJK Ideograph */ + [0x5984, 0x5984], /* CJK Ideograph */ + [0x5985, 0x5985], /* CJK Ideograph */ + [0x5986, 0x5986], /* CJK Ideograph */ + [0x5987, 0x5987], /* CJK Ideograph */ + [0x5988, 0x5988], /* CJK Ideograph */ + [0x5989, 0x5989], /* CJK Ideograph */ + [0x598a, 0x598a], /* CJK Ideograph */ + [0x598b, 0x598b], /* CJK Ideograph */ + [0x598c, 0x598c], /* CJK Ideograph */ + [0x598d, 0x598d], /* CJK Ideograph */ + [0x598e, 0x598e], /* CJK Ideograph */ + [0x598f, 0x598f], /* CJK Ideograph */ + [0x5990, 0x5990], /* CJK Ideograph */ + [0x5991, 0x5991], /* CJK Ideograph */ + [0x5992, 0x5992], /* CJK Ideograph */ + [0x5993, 0x5993], /* CJK Ideograph */ + [0x5994, 0x5994], /* CJK Ideograph */ + [0x5995, 0x5995], /* CJK Ideograph */ + [0x5996, 0x5996], /* CJK Ideograph */ + [0x5997, 0x5997], /* CJK Ideograph */ + [0x5998, 0x5998], /* CJK Ideograph */ + [0x5999, 0x5999], /* CJK Ideograph */ + [0x599a, 0x599a], /* CJK Ideograph */ + [0x599b, 0x599b], /* CJK Ideograph */ + [0x599c, 0x599c], /* CJK Ideograph */ + [0x599d, 0x599d], /* CJK Ideograph */ + [0x599e, 0x599e], /* CJK Ideograph */ + [0x599f, 0x599f], /* CJK Ideograph */ + [0x59a0, 0x59a0], /* CJK Ideograph */ + [0x59a1, 0x59a1], /* CJK Ideograph */ + [0x59a2, 0x59a2], /* CJK Ideograph */ + [0x59a3, 0x59a3], /* CJK Ideograph */ + [0x59a4, 0x59a4], /* CJK Ideograph */ + [0x59a5, 0x59a5], /* CJK Ideograph */ + [0x59a6, 0x59a6], /* CJK Ideograph */ + [0x59a7, 0x59a7], /* CJK Ideograph */ + [0x59a8, 0x59a8], /* CJK Ideograph */ + [0x59a9, 0x59a9], /* CJK Ideograph */ + [0x59aa, 0x59aa], /* CJK Ideograph */ + [0x59ab, 0x59ab], /* CJK Ideograph */ + [0x59ac, 0x59ac], /* CJK Ideograph */ + [0x59ad, 0x59ad], /* CJK Ideograph */ + [0x59ae, 0x59ae], /* CJK Ideograph */ + [0x59af, 0x59af], /* CJK Ideograph */ + [0x59b0, 0x59b0], /* CJK Ideograph */ + [0x59b1, 0x59b1], /* CJK Ideograph */ + [0x59b2, 0x59b2], /* CJK Ideograph */ + [0x59b3, 0x59b3], /* CJK Ideograph */ + [0x59b4, 0x59b4], /* CJK Ideograph */ + [0x59b5, 0x59b5], /* CJK Ideograph */ + [0x59b6, 0x59b6], /* CJK Ideograph */ + [0x59b7, 0x59b7], /* CJK Ideograph */ + [0x59b8, 0x59b8], /* CJK Ideograph */ + [0x59b9, 0x59b9], /* CJK Ideograph */ + [0x59ba, 0x59ba], /* CJK Ideograph */ + [0x59bb, 0x59bb], /* CJK Ideograph */ + [0x59bc, 0x59bc], /* CJK Ideograph */ + [0x59bd, 0x59bd], /* CJK Ideograph */ + [0x59be, 0x59be], /* CJK Ideograph */ + [0x59bf, 0x59bf], /* CJK Ideograph */ + [0x59c0, 0x59c0], /* CJK Ideograph */ + [0x59c1, 0x59c1], /* CJK Ideograph */ + [0x59c2, 0x59c2], /* CJK Ideograph */ + [0x59c3, 0x59c3], /* CJK Ideograph */ + [0x59c4, 0x59c4], /* CJK Ideograph */ + [0x59c5, 0x59c5], /* CJK Ideograph */ + [0x59c6, 0x59c6], /* CJK Ideograph */ + [0x59c7, 0x59c7], /* CJK Ideograph */ + [0x59c8, 0x59c8], /* CJK Ideograph */ + [0x59c9, 0x59c9], /* CJK Ideograph */ + [0x59ca, 0x59ca], /* CJK Ideograph */ + [0x59cb, 0x59cb], /* CJK Ideograph */ + [0x59cc, 0x59cc], /* CJK Ideograph */ + [0x59cd, 0x59cd], /* CJK Ideograph */ + [0x59ce, 0x59ce], /* CJK Ideograph */ + [0x59cf, 0x59cf], /* CJK Ideograph */ + [0x59d0, 0x59d0], /* CJK Ideograph */ + [0x59d1, 0x59d1], /* CJK Ideograph */ + [0x59d2, 0x59d2], /* CJK Ideograph */ + [0x59d3, 0x59d3], /* CJK Ideograph */ + [0x59d4, 0x59d4], /* CJK Ideograph */ + [0x59d5, 0x59d5], /* CJK Ideograph */ + [0x59d6, 0x59d6], /* CJK Ideograph */ + [0x59d7, 0x59d7], /* CJK Ideograph */ + [0x59d8, 0x59d8], /* CJK Ideograph */ + [0x59d9, 0x59d9], /* CJK Ideograph */ + [0x59da, 0x59da], /* CJK Ideograph */ + [0x59db, 0x59db], /* CJK Ideograph */ + [0x59dc, 0x59dc], /* CJK Ideograph */ + [0x59dd, 0x59dd], /* CJK Ideograph */ + [0x59de, 0x59de], /* CJK Ideograph */ + [0x59df, 0x59df], /* CJK Ideograph */ + [0x59e0, 0x59e0], /* CJK Ideograph */ + [0x59e1, 0x59e1], /* CJK Ideograph */ + [0x59e2, 0x59e2], /* CJK Ideograph */ + [0x59e3, 0x59e3], /* CJK Ideograph */ + [0x59e4, 0x59e4], /* CJK Ideograph */ + [0x59e5, 0x59e5], /* CJK Ideograph */ + [0x59e6, 0x59e6], /* CJK Ideograph */ + [0x59e7, 0x59e7], /* CJK Ideograph */ + [0x59e8, 0x59e8], /* CJK Ideograph */ + [0x59e9, 0x59e9], /* CJK Ideograph */ + [0x59ea, 0x59ea], /* CJK Ideograph */ + [0x59eb, 0x59eb], /* CJK Ideograph */ + [0x59ec, 0x59ec], /* CJK Ideograph */ + [0x59ed, 0x59ed], /* CJK Ideograph */ + [0x59ee, 0x59ee], /* CJK Ideograph */ + [0x59ef, 0x59ef], /* CJK Ideograph */ + [0x59f0, 0x59f0], /* CJK Ideograph */ + [0x59f1, 0x59f1], /* CJK Ideograph */ + [0x59f2, 0x59f2], /* CJK Ideograph */ + [0x59f3, 0x59f3], /* CJK Ideograph */ + [0x59f4, 0x59f4], /* CJK Ideograph */ + [0x59f5, 0x59f5], /* CJK Ideograph */ + [0x59f6, 0x59f6], /* CJK Ideograph */ + [0x59f7, 0x59f7], /* CJK Ideograph */ + [0x59f8, 0x59f8], /* CJK Ideograph */ + [0x59f9, 0x59f9], /* CJK Ideograph */ + [0x59fa, 0x59fa], /* CJK Ideograph */ + [0x59fb, 0x59fb], /* CJK Ideograph */ + [0x59fc, 0x59fc], /* CJK Ideograph */ + [0x59fd, 0x59fd], /* CJK Ideograph */ + [0x59fe, 0x59fe], /* CJK Ideograph */ + [0x59ff, 0x59ff], /* CJK Ideograph */ + [0x5a00, 0x5a00], /* CJK Ideograph */ + [0x5a01, 0x5a01], /* CJK Ideograph */ + [0x5a02, 0x5a02], /* CJK Ideograph */ + [0x5a03, 0x5a03], /* CJK Ideograph */ + [0x5a04, 0x5a04], /* CJK Ideograph */ + [0x5a05, 0x5a05], /* CJK Ideograph */ + [0x5a06, 0x5a06], /* CJK Ideograph */ + [0x5a07, 0x5a07], /* CJK Ideograph */ + [0x5a08, 0x5a08], /* CJK Ideograph */ + [0x5a09, 0x5a09], /* CJK Ideograph */ + [0x5a0a, 0x5a0a], /* CJK Ideograph */ + [0x5a0b, 0x5a0b], /* CJK Ideograph */ + [0x5a0c, 0x5a0c], /* CJK Ideograph */ + [0x5a0d, 0x5a0d], /* CJK Ideograph */ + [0x5a0e, 0x5a0e], /* CJK Ideograph */ + [0x5a0f, 0x5a0f], /* CJK Ideograph */ + [0x5a10, 0x5a10], /* CJK Ideograph */ + [0x5a11, 0x5a11], /* CJK Ideograph */ + [0x5a12, 0x5a12], /* CJK Ideograph */ + [0x5a13, 0x5a13], /* CJK Ideograph */ + [0x5a14, 0x5a14], /* CJK Ideograph */ + [0x5a15, 0x5a15], /* CJK Ideograph */ + [0x5a16, 0x5a16], /* CJK Ideograph */ + [0x5a17, 0x5a17], /* CJK Ideograph */ + [0x5a18, 0x5a18], /* CJK Ideograph */ + [0x5a19, 0x5a19], /* CJK Ideograph */ + [0x5a1a, 0x5a1a], /* CJK Ideograph */ + [0x5a1b, 0x5a1b], /* CJK Ideograph */ + [0x5a1c, 0x5a1c], /* CJK Ideograph */ + [0x5a1d, 0x5a1d], /* CJK Ideograph */ + [0x5a1e, 0x5a1e], /* CJK Ideograph */ + [0x5a1f, 0x5a1f], /* CJK Ideograph */ + [0x5a20, 0x5a20], /* CJK Ideograph */ + [0x5a21, 0x5a21], /* CJK Ideograph */ + [0x5a22, 0x5a22], /* CJK Ideograph */ + [0x5a23, 0x5a23], /* CJK Ideograph */ + [0x5a24, 0x5a24], /* CJK Ideograph */ + [0x5a25, 0x5a25], /* CJK Ideograph */ + [0x5a26, 0x5a26], /* CJK Ideograph */ + [0x5a27, 0x5a27], /* CJK Ideograph */ + [0x5a28, 0x5a28], /* CJK Ideograph */ + [0x5a29, 0x5a29], /* CJK Ideograph */ + [0x5a2a, 0x5a2a], /* CJK Ideograph */ + [0x5a2b, 0x5a2b], /* CJK Ideograph */ + [0x5a2c, 0x5a2c], /* CJK Ideograph */ + [0x5a2d, 0x5a2d], /* CJK Ideograph */ + [0x5a2e, 0x5a2e], /* CJK Ideograph */ + [0x5a2f, 0x5a2f], /* CJK Ideograph */ + [0x5a30, 0x5a30], /* CJK Ideograph */ + [0x5a31, 0x5a31], /* CJK Ideograph */ + [0x5a32, 0x5a32], /* CJK Ideograph */ + [0x5a33, 0x5a33], /* CJK Ideograph */ + [0x5a34, 0x5a34], /* CJK Ideograph */ + [0x5a35, 0x5a35], /* CJK Ideograph */ + [0x5a36, 0x5a36], /* CJK Ideograph */ + [0x5a37, 0x5a37], /* CJK Ideograph */ + [0x5a38, 0x5a38], /* CJK Ideograph */ + [0x5a39, 0x5a39], /* CJK Ideograph */ + [0x5a3a, 0x5a3a], /* CJK Ideograph */ + [0x5a3b, 0x5a3b], /* CJK Ideograph */ + [0x5a3c, 0x5a3c], /* CJK Ideograph */ + [0x5a3d, 0x5a3d], /* CJK Ideograph */ + [0x5a3e, 0x5a3e], /* CJK Ideograph */ + [0x5a3f, 0x5a3f], /* CJK Ideograph */ + [0x5a40, 0x5a40], /* CJK Ideograph */ + [0x5a41, 0x5a41], /* CJK Ideograph */ + [0x5a42, 0x5a42], /* CJK Ideograph */ + [0x5a43, 0x5a43], /* CJK Ideograph */ + [0x5a44, 0x5a44], /* CJK Ideograph */ + [0x5a45, 0x5a45], /* CJK Ideograph */ + [0x5a46, 0x5a46], /* CJK Ideograph */ + [0x5a47, 0x5a47], /* CJK Ideograph */ + [0x5a48, 0x5a48], /* CJK Ideograph */ + [0x5a49, 0x5a49], /* CJK Ideograph */ + [0x5a4a, 0x5a4a], /* CJK Ideograph */ + [0x5a4b, 0x5a4b], /* CJK Ideograph */ + [0x5a4c, 0x5a4c], /* CJK Ideograph */ + [0x5a4d, 0x5a4d], /* CJK Ideograph */ + [0x5a4e, 0x5a4e], /* CJK Ideograph */ + [0x5a4f, 0x5a4f], /* CJK Ideograph */ + [0x5a50, 0x5a50], /* CJK Ideograph */ + [0x5a51, 0x5a51], /* CJK Ideograph */ + [0x5a52, 0x5a52], /* CJK Ideograph */ + [0x5a53, 0x5a53], /* CJK Ideograph */ + [0x5a54, 0x5a54], /* CJK Ideograph */ + [0x5a55, 0x5a55], /* CJK Ideograph */ + [0x5a56, 0x5a56], /* CJK Ideograph */ + [0x5a57, 0x5a57], /* CJK Ideograph */ + [0x5a58, 0x5a58], /* CJK Ideograph */ + [0x5a59, 0x5a59], /* CJK Ideograph */ + [0x5a5a, 0x5a5a], /* CJK Ideograph */ + [0x5a5b, 0x5a5b], /* CJK Ideograph */ + [0x5a5c, 0x5a5c], /* CJK Ideograph */ + [0x5a5d, 0x5a5d], /* CJK Ideograph */ + [0x5a5e, 0x5a5e], /* CJK Ideograph */ + [0x5a5f, 0x5a5f], /* CJK Ideograph */ + [0x5a60, 0x5a60], /* CJK Ideograph */ + [0x5a61, 0x5a61], /* CJK Ideograph */ + [0x5a62, 0x5a62], /* CJK Ideograph */ + [0x5a63, 0x5a63], /* CJK Ideograph */ + [0x5a64, 0x5a64], /* CJK Ideograph */ + [0x5a65, 0x5a65], /* CJK Ideograph */ + [0x5a66, 0x5a66], /* CJK Ideograph */ + [0x5a67, 0x5a67], /* CJK Ideograph */ + [0x5a68, 0x5a68], /* CJK Ideograph */ + [0x5a69, 0x5a69], /* CJK Ideograph */ + [0x5a6a, 0x5a6a], /* CJK Ideograph */ + [0x5a6b, 0x5a6b], /* CJK Ideograph */ + [0x5a6c, 0x5a6c], /* CJK Ideograph */ + [0x5a6d, 0x5a6d], /* CJK Ideograph */ + [0x5a6e, 0x5a6e], /* CJK Ideograph */ + [0x5a6f, 0x5a6f], /* CJK Ideograph */ + [0x5a70, 0x5a70], /* CJK Ideograph */ + [0x5a71, 0x5a71], /* CJK Ideograph */ + [0x5a72, 0x5a72], /* CJK Ideograph */ + [0x5a73, 0x5a73], /* CJK Ideograph */ + [0x5a74, 0x5a74], /* CJK Ideograph */ + [0x5a75, 0x5a75], /* CJK Ideograph */ + [0x5a76, 0x5a76], /* CJK Ideograph */ + [0x5a77, 0x5a77], /* CJK Ideograph */ + [0x5a78, 0x5a78], /* CJK Ideograph */ + [0x5a79, 0x5a79], /* CJK Ideograph */ + [0x5a7a, 0x5a7a], /* CJK Ideograph */ + [0x5a7b, 0x5a7b], /* CJK Ideograph */ + [0x5a7c, 0x5a7c], /* CJK Ideograph */ + [0x5a7d, 0x5a7d], /* CJK Ideograph */ + [0x5a7e, 0x5a7e], /* CJK Ideograph */ + [0x5a7f, 0x5a7f], /* CJK Ideograph */ + [0x5a80, 0x5a80], /* CJK Ideograph */ + [0x5a81, 0x5a81], /* CJK Ideograph */ + [0x5a82, 0x5a82], /* CJK Ideograph */ + [0x5a83, 0x5a83], /* CJK Ideograph */ + [0x5a84, 0x5a84], /* CJK Ideograph */ + [0x5a85, 0x5a85], /* CJK Ideograph */ + [0x5a86, 0x5a86], /* CJK Ideograph */ + [0x5a87, 0x5a87], /* CJK Ideograph */ + [0x5a88, 0x5a88], /* CJK Ideograph */ + [0x5a89, 0x5a89], /* CJK Ideograph */ + [0x5a8a, 0x5a8a], /* CJK Ideograph */ + [0x5a8b, 0x5a8b], /* CJK Ideograph */ + [0x5a8c, 0x5a8c], /* CJK Ideograph */ + [0x5a8d, 0x5a8d], /* CJK Ideograph */ + [0x5a8e, 0x5a8e], /* CJK Ideograph */ + [0x5a8f, 0x5a8f], /* CJK Ideograph */ + [0x5a90, 0x5a90], /* CJK Ideograph */ + [0x5a91, 0x5a91], /* CJK Ideograph */ + [0x5a92, 0x5a92], /* CJK Ideograph */ + [0x5a93, 0x5a93], /* CJK Ideograph */ + [0x5a94, 0x5a94], /* CJK Ideograph */ + [0x5a95, 0x5a95], /* CJK Ideograph */ + [0x5a96, 0x5a96], /* CJK Ideograph */ + [0x5a97, 0x5a97], /* CJK Ideograph */ + [0x5a98, 0x5a98], /* CJK Ideograph */ + [0x5a99, 0x5a99], /* CJK Ideograph */ + [0x5a9a, 0x5a9a], /* CJK Ideograph */ + [0x5a9b, 0x5a9b], /* CJK Ideograph */ + [0x5a9c, 0x5a9c], /* CJK Ideograph */ + [0x5a9d, 0x5a9d], /* CJK Ideograph */ + [0x5a9e, 0x5a9e], /* CJK Ideograph */ + [0x5a9f, 0x5a9f], /* CJK Ideograph */ + [0x5aa0, 0x5aa0], /* CJK Ideograph */ + [0x5aa1, 0x5aa1], /* CJK Ideograph */ + [0x5aa2, 0x5aa2], /* CJK Ideograph */ + [0x5aa3, 0x5aa3], /* CJK Ideograph */ + [0x5aa4, 0x5aa4], /* CJK Ideograph */ + [0x5aa5, 0x5aa5], /* CJK Ideograph */ + [0x5aa6, 0x5aa6], /* CJK Ideograph */ + [0x5aa7, 0x5aa7], /* CJK Ideograph */ + [0x5aa8, 0x5aa8], /* CJK Ideograph */ + [0x5aa9, 0x5aa9], /* CJK Ideograph */ + [0x5aaa, 0x5aaa], /* CJK Ideograph */ + [0x5aab, 0x5aab], /* CJK Ideograph */ + [0x5aac, 0x5aac], /* CJK Ideograph */ + [0x5aad, 0x5aad], /* CJK Ideograph */ + [0x5aae, 0x5aae], /* CJK Ideograph */ + [0x5aaf, 0x5aaf], /* CJK Ideograph */ + [0x5ab0, 0x5ab0], /* CJK Ideograph */ + [0x5ab1, 0x5ab1], /* CJK Ideograph */ + [0x5ab2, 0x5ab2], /* CJK Ideograph */ + [0x5ab3, 0x5ab3], /* CJK Ideograph */ + [0x5ab4, 0x5ab4], /* CJK Ideograph */ + [0x5ab5, 0x5ab5], /* CJK Ideograph */ + [0x5ab6, 0x5ab6], /* CJK Ideograph */ + [0x5ab7, 0x5ab7], /* CJK Ideograph */ + [0x5ab8, 0x5ab8], /* CJK Ideograph */ + [0x5ab9, 0x5ab9], /* CJK Ideograph */ + [0x5aba, 0x5aba], /* CJK Ideograph */ + [0x5abb, 0x5abb], /* CJK Ideograph */ + [0x5abc, 0x5abc], /* CJK Ideograph */ + [0x5abd, 0x5abd], /* CJK Ideograph */ + [0x5abe, 0x5abe], /* CJK Ideograph */ + [0x5abf, 0x5abf], /* CJK Ideograph */ + [0x5ac0, 0x5ac0], /* CJK Ideograph */ + [0x5ac1, 0x5ac1], /* CJK Ideograph */ + [0x5ac2, 0x5ac2], /* CJK Ideograph */ + [0x5ac3, 0x5ac3], /* CJK Ideograph */ + [0x5ac4, 0x5ac4], /* CJK Ideograph */ + [0x5ac5, 0x5ac5], /* CJK Ideograph */ + [0x5ac6, 0x5ac6], /* CJK Ideograph */ + [0x5ac7, 0x5ac7], /* CJK Ideograph */ + [0x5ac8, 0x5ac8], /* CJK Ideograph */ + [0x5ac9, 0x5ac9], /* CJK Ideograph */ + [0x5aca, 0x5aca], /* CJK Ideograph */ + [0x5acb, 0x5acb], /* CJK Ideograph */ + [0x5acc, 0x5acc], /* CJK Ideograph */ + [0x5acd, 0x5acd], /* CJK Ideograph */ + [0x5ace, 0x5ace], /* CJK Ideograph */ + [0x5acf, 0x5acf], /* CJK Ideograph */ + [0x5ad0, 0x5ad0], /* CJK Ideograph */ + [0x5ad1, 0x5ad1], /* CJK Ideograph */ + [0x5ad2, 0x5ad2], /* CJK Ideograph */ + [0x5ad3, 0x5ad3], /* CJK Ideograph */ + [0x5ad4, 0x5ad4], /* CJK Ideograph */ + [0x5ad5, 0x5ad5], /* CJK Ideograph */ + [0x5ad6, 0x5ad6], /* CJK Ideograph */ + [0x5ad7, 0x5ad7], /* CJK Ideograph */ + [0x5ad8, 0x5ad8], /* CJK Ideograph */ + [0x5ad9, 0x5ad9], /* CJK Ideograph */ + [0x5ada, 0x5ada], /* CJK Ideograph */ + [0x5adb, 0x5adb], /* CJK Ideograph */ + [0x5adc, 0x5adc], /* CJK Ideograph */ + [0x5add, 0x5add], /* CJK Ideograph */ + [0x5ade, 0x5ade], /* CJK Ideograph */ + [0x5adf, 0x5adf], /* CJK Ideograph */ + [0x5ae0, 0x5ae0], /* CJK Ideograph */ + [0x5ae1, 0x5ae1], /* CJK Ideograph */ + [0x5ae2, 0x5ae2], /* CJK Ideograph */ + [0x5ae3, 0x5ae3], /* CJK Ideograph */ + [0x5ae4, 0x5ae4], /* CJK Ideograph */ + [0x5ae5, 0x5ae5], /* CJK Ideograph */ + [0x5ae6, 0x5ae6], /* CJK Ideograph */ + [0x5ae7, 0x5ae7], /* CJK Ideograph */ + [0x5ae8, 0x5ae8], /* CJK Ideograph */ + [0x5ae9, 0x5ae9], /* CJK Ideograph */ + [0x5aea, 0x5aea], /* CJK Ideograph */ + [0x5aeb, 0x5aeb], /* CJK Ideograph */ + [0x5aec, 0x5aec], /* CJK Ideograph */ + [0x5aed, 0x5aed], /* CJK Ideograph */ + [0x5aee, 0x5aee], /* CJK Ideograph */ + [0x5aef, 0x5aef], /* CJK Ideograph */ + [0x5af0, 0x5af0], /* CJK Ideograph */ + [0x5af1, 0x5af1], /* CJK Ideograph */ + [0x5af2, 0x5af2], /* CJK Ideograph */ + [0x5af3, 0x5af3], /* CJK Ideograph */ + [0x5af4, 0x5af4], /* CJK Ideograph */ + [0x5af5, 0x5af5], /* CJK Ideograph */ + [0x5af6, 0x5af6], /* CJK Ideograph */ + [0x5af7, 0x5af7], /* CJK Ideograph */ + [0x5af8, 0x5af8], /* CJK Ideograph */ + [0x5af9, 0x5af9], /* CJK Ideograph */ + [0x5afa, 0x5afa], /* CJK Ideograph */ + [0x5afb, 0x5afb], /* CJK Ideograph */ + [0x5afc, 0x5afc], /* CJK Ideograph */ + [0x5afd, 0x5afd], /* CJK Ideograph */ + [0x5afe, 0x5afe], /* CJK Ideograph */ + [0x5aff, 0x5aff], /* CJK Ideograph */ + [0x5b00, 0x5b00], /* CJK Ideograph */ + [0x5b01, 0x5b01], /* CJK Ideograph */ + [0x5b02, 0x5b02], /* CJK Ideograph */ + [0x5b03, 0x5b03], /* CJK Ideograph */ + [0x5b04, 0x5b04], /* CJK Ideograph */ + [0x5b05, 0x5b05], /* CJK Ideograph */ + [0x5b06, 0x5b06], /* CJK Ideograph */ + [0x5b07, 0x5b07], /* CJK Ideograph */ + [0x5b08, 0x5b08], /* CJK Ideograph */ + [0x5b09, 0x5b09], /* CJK Ideograph */ + [0x5b0a, 0x5b0a], /* CJK Ideograph */ + [0x5b0b, 0x5b0b], /* CJK Ideograph */ + [0x5b0c, 0x5b0c], /* CJK Ideograph */ + [0x5b0d, 0x5b0d], /* CJK Ideograph */ + [0x5b0e, 0x5b0e], /* CJK Ideograph */ + [0x5b0f, 0x5b0f], /* CJK Ideograph */ + [0x5b10, 0x5b10], /* CJK Ideograph */ + [0x5b11, 0x5b11], /* CJK Ideograph */ + [0x5b12, 0x5b12], /* CJK Ideograph */ + [0x5b13, 0x5b13], /* CJK Ideograph */ + [0x5b14, 0x5b14], /* CJK Ideograph */ + [0x5b15, 0x5b15], /* CJK Ideograph */ + [0x5b16, 0x5b16], /* CJK Ideograph */ + [0x5b17, 0x5b17], /* CJK Ideograph */ + [0x5b18, 0x5b18], /* CJK Ideograph */ + [0x5b19, 0x5b19], /* CJK Ideograph */ + [0x5b1a, 0x5b1a], /* CJK Ideograph */ + [0x5b1b, 0x5b1b], /* CJK Ideograph */ + [0x5b1c, 0x5b1c], /* CJK Ideograph */ + [0x5b1d, 0x5b1d], /* CJK Ideograph */ + [0x5b1e, 0x5b1e], /* CJK Ideograph */ + [0x5b1f, 0x5b1f], /* CJK Ideograph */ + [0x5b20, 0x5b20], /* CJK Ideograph */ + [0x5b21, 0x5b21], /* CJK Ideograph */ + [0x5b22, 0x5b22], /* CJK Ideograph */ + [0x5b23, 0x5b23], /* CJK Ideograph */ + [0x5b24, 0x5b24], /* CJK Ideograph */ + [0x5b25, 0x5b25], /* CJK Ideograph */ + [0x5b26, 0x5b26], /* CJK Ideograph */ + [0x5b27, 0x5b27], /* CJK Ideograph */ + [0x5b28, 0x5b28], /* CJK Ideograph */ + [0x5b29, 0x5b29], /* CJK Ideograph */ + [0x5b2a, 0x5b2a], /* CJK Ideograph */ + [0x5b2b, 0x5b2b], /* CJK Ideograph */ + [0x5b2c, 0x5b2c], /* CJK Ideograph */ + [0x5b2d, 0x5b2d], /* CJK Ideograph */ + [0x5b2e, 0x5b2e], /* CJK Ideograph */ + [0x5b2f, 0x5b2f], /* CJK Ideograph */ + [0x5b30, 0x5b30], /* CJK Ideograph */ + [0x5b31, 0x5b31], /* CJK Ideograph */ + [0x5b32, 0x5b32], /* CJK Ideograph */ + [0x5b33, 0x5b33], /* CJK Ideograph */ + [0x5b34, 0x5b34], /* CJK Ideograph */ + [0x5b35, 0x5b35], /* CJK Ideograph */ + [0x5b36, 0x5b36], /* CJK Ideograph */ + [0x5b37, 0x5b37], /* CJK Ideograph */ + [0x5b38, 0x5b38], /* CJK Ideograph */ + [0x5b39, 0x5b39], /* CJK Ideograph */ + [0x5b3a, 0x5b3a], /* CJK Ideograph */ + [0x5b3b, 0x5b3b], /* CJK Ideograph */ + [0x5b3c, 0x5b3c], /* CJK Ideograph */ + [0x5b3d, 0x5b3d], /* CJK Ideograph */ + [0x5b3e, 0x5b3e], /* CJK Ideograph */ + [0x5b3f, 0x5b3f], /* CJK Ideograph */ + [0x5b40, 0x5b40], /* CJK Ideograph */ + [0x5b41, 0x5b41], /* CJK Ideograph */ + [0x5b42, 0x5b42], /* CJK Ideograph */ + [0x5b43, 0x5b43], /* CJK Ideograph */ + [0x5b44, 0x5b44], /* CJK Ideograph */ + [0x5b45, 0x5b45], /* CJK Ideograph */ + [0x5b46, 0x5b46], /* CJK Ideograph */ + [0x5b47, 0x5b47], /* CJK Ideograph */ + [0x5b48, 0x5b48], /* CJK Ideograph */ + [0x5b49, 0x5b49], /* CJK Ideograph */ + [0x5b4a, 0x5b4a], /* CJK Ideograph */ + [0x5b4b, 0x5b4b], /* CJK Ideograph */ + [0x5b4c, 0x5b4c], /* CJK Ideograph */ + [0x5b4d, 0x5b4d], /* CJK Ideograph */ + [0x5b4e, 0x5b4e], /* CJK Ideograph */ + [0x5b4f, 0x5b4f], /* CJK Ideograph */ + [0x5b50, 0x5b50], /* CJK Ideograph */ + [0x5b51, 0x5b51], /* CJK Ideograph */ + [0x5b52, 0x5b52], /* CJK Ideograph */ + [0x5b53, 0x5b53], /* CJK Ideograph */ + [0x5b54, 0x5b54], /* CJK Ideograph */ + [0x5b55, 0x5b55], /* CJK Ideograph */ + [0x5b56, 0x5b56], /* CJK Ideograph */ + [0x5b57, 0x5b57], /* CJK Ideograph */ + [0x5b58, 0x5b58], /* CJK Ideograph */ + [0x5b59, 0x5b59], /* CJK Ideograph */ + [0x5b5a, 0x5b5a], /* CJK Ideograph */ + [0x5b5b, 0x5b5b], /* CJK Ideograph */ + [0x5b5c, 0x5b5c], /* CJK Ideograph */ + [0x5b5d, 0x5b5d], /* CJK Ideograph */ + [0x5b5e, 0x5b5e], /* CJK Ideograph */ + [0x5b5f, 0x5b5f], /* CJK Ideograph */ + [0x5b60, 0x5b60], /* CJK Ideograph */ + [0x5b61, 0x5b61], /* CJK Ideograph */ + [0x5b62, 0x5b62], /* CJK Ideograph */ + [0x5b63, 0x5b63], /* CJK Ideograph */ + [0x5b64, 0x5b64], /* CJK Ideograph */ + [0x5b65, 0x5b65], /* CJK Ideograph */ + [0x5b66, 0x5b66], /* CJK Ideograph */ + [0x5b67, 0x5b67], /* CJK Ideograph */ + [0x5b68, 0x5b68], /* CJK Ideograph */ + [0x5b69, 0x5b69], /* CJK Ideograph */ + [0x5b6a, 0x5b6a], /* CJK Ideograph */ + [0x5b6b, 0x5b6b], /* CJK Ideograph */ + [0x5b6c, 0x5b6c], /* CJK Ideograph */ + [0x5b6d, 0x5b6d], /* CJK Ideograph */ + [0x5b6e, 0x5b6e], /* CJK Ideograph */ + [0x5b6f, 0x5b6f], /* CJK Ideograph */ + [0x5b70, 0x5b70], /* CJK Ideograph */ + [0x5b71, 0x5b71], /* CJK Ideograph */ + [0x5b72, 0x5b72], /* CJK Ideograph */ + [0x5b73, 0x5b73], /* CJK Ideograph */ + [0x5b74, 0x5b74], /* CJK Ideograph */ + [0x5b75, 0x5b75], /* CJK Ideograph */ + [0x5b76, 0x5b76], /* CJK Ideograph */ + [0x5b77, 0x5b77], /* CJK Ideograph */ + [0x5b78, 0x5b78], /* CJK Ideograph */ + [0x5b79, 0x5b79], /* CJK Ideograph */ + [0x5b7a, 0x5b7a], /* CJK Ideograph */ + [0x5b7b, 0x5b7b], /* CJK Ideograph */ + [0x5b7c, 0x5b7c], /* CJK Ideograph */ + [0x5b7d, 0x5b7d], /* CJK Ideograph */ + [0x5b7e, 0x5b7e], /* CJK Ideograph */ + [0x5b7f, 0x5b7f], /* CJK Ideograph */ + [0x5b80, 0x5b80], /* CJK Ideograph */ + [0x5b81, 0x5b81], /* CJK Ideograph */ + [0x5b82, 0x5b82], /* CJK Ideograph */ + [0x5b83, 0x5b83], /* CJK Ideograph */ + [0x5b84, 0x5b84], /* CJK Ideograph */ + [0x5b85, 0x5b85], /* CJK Ideograph */ + [0x5b86, 0x5b86], /* CJK Ideograph */ + [0x5b87, 0x5b87], /* CJK Ideograph */ + [0x5b88, 0x5b88], /* CJK Ideograph */ + [0x5b89, 0x5b89], /* CJK Ideograph */ + [0x5b8a, 0x5b8a], /* CJK Ideograph */ + [0x5b8b, 0x5b8b], /* CJK Ideograph */ + [0x5b8c, 0x5b8c], /* CJK Ideograph */ + [0x5b8d, 0x5b8d], /* CJK Ideograph */ + [0x5b8e, 0x5b8e], /* CJK Ideograph */ + [0x5b8f, 0x5b8f], /* CJK Ideograph */ + [0x5b90, 0x5b90], /* CJK Ideograph */ + [0x5b91, 0x5b91], /* CJK Ideograph */ + [0x5b92, 0x5b92], /* CJK Ideograph */ + [0x5b93, 0x5b93], /* CJK Ideograph */ + [0x5b94, 0x5b94], /* CJK Ideograph */ + [0x5b95, 0x5b95], /* CJK Ideograph */ + [0x5b96, 0x5b96], /* CJK Ideograph */ + [0x5b97, 0x5b97], /* CJK Ideograph */ + [0x5b98, 0x5b98], /* CJK Ideograph */ + [0x5b99, 0x5b99], /* CJK Ideograph */ + [0x5b9a, 0x5b9a], /* CJK Ideograph */ + [0x5b9b, 0x5b9b], /* CJK Ideograph */ + [0x5b9c, 0x5b9c], /* CJK Ideograph */ + [0x5b9d, 0x5b9d], /* CJK Ideograph */ + [0x5b9e, 0x5b9e], /* CJK Ideograph */ + [0x5b9f, 0x5b9f], /* CJK Ideograph */ + [0x5ba0, 0x5ba0], /* CJK Ideograph */ + [0x5ba1, 0x5ba1], /* CJK Ideograph */ + [0x5ba2, 0x5ba2], /* CJK Ideograph */ + [0x5ba3, 0x5ba3], /* CJK Ideograph */ + [0x5ba4, 0x5ba4], /* CJK Ideograph */ + [0x5ba5, 0x5ba5], /* CJK Ideograph */ + [0x5ba6, 0x5ba6], /* CJK Ideograph */ + [0x5ba7, 0x5ba7], /* CJK Ideograph */ + [0x5ba8, 0x5ba8], /* CJK Ideograph */ + [0x5ba9, 0x5ba9], /* CJK Ideograph */ + [0x5baa, 0x5baa], /* CJK Ideograph */ + [0x5bab, 0x5bab], /* CJK Ideograph */ + [0x5bac, 0x5bac], /* CJK Ideograph */ + [0x5bad, 0x5bad], /* CJK Ideograph */ + [0x5bae, 0x5bae], /* CJK Ideograph */ + [0x5baf, 0x5baf], /* CJK Ideograph */ + [0x5bb0, 0x5bb0], /* CJK Ideograph */ + [0x5bb1, 0x5bb1], /* CJK Ideograph */ + [0x5bb2, 0x5bb2], /* CJK Ideograph */ + [0x5bb3, 0x5bb3], /* CJK Ideograph */ + [0x5bb4, 0x5bb4], /* CJK Ideograph */ + [0x5bb5, 0x5bb5], /* CJK Ideograph */ + [0x5bb6, 0x5bb6], /* CJK Ideograph */ + [0x5bb7, 0x5bb7], /* CJK Ideograph */ + [0x5bb8, 0x5bb8], /* CJK Ideograph */ + [0x5bb9, 0x5bb9], /* CJK Ideograph */ + [0x5bba, 0x5bba], /* CJK Ideograph */ + [0x5bbb, 0x5bbb], /* CJK Ideograph */ + [0x5bbc, 0x5bbc], /* CJK Ideograph */ + [0x5bbd, 0x5bbd], /* CJK Ideograph */ + [0x5bbe, 0x5bbe], /* CJK Ideograph */ + [0x5bbf, 0x5bbf], /* CJK Ideograph */ + [0x5bc0, 0x5bc0], /* CJK Ideograph */ + [0x5bc1, 0x5bc1], /* CJK Ideograph */ + [0x5bc2, 0x5bc2], /* CJK Ideograph */ + [0x5bc3, 0x5bc3], /* CJK Ideograph */ + [0x5bc4, 0x5bc4], /* CJK Ideograph */ + [0x5bc5, 0x5bc5], /* CJK Ideograph */ + [0x5bc6, 0x5bc6], /* CJK Ideograph */ + [0x5bc7, 0x5bc7], /* CJK Ideograph */ + [0x5bc8, 0x5bc8], /* CJK Ideograph */ + [0x5bc9, 0x5bc9], /* CJK Ideograph */ + [0x5bca, 0x5bca], /* CJK Ideograph */ + [0x5bcb, 0x5bcb], /* CJK Ideograph */ + [0x5bcc, 0x5bcc], /* CJK Ideograph */ + [0x5bcd, 0x5bcd], /* CJK Ideograph */ + [0x5bce, 0x5bce], /* CJK Ideograph */ + [0x5bcf, 0x5bcf], /* CJK Ideograph */ + [0x5bd0, 0x5bd0], /* CJK Ideograph */ + [0x5bd1, 0x5bd1], /* CJK Ideograph */ + [0x5bd2, 0x5bd2], /* CJK Ideograph */ + [0x5bd3, 0x5bd3], /* CJK Ideograph */ + [0x5bd4, 0x5bd4], /* CJK Ideograph */ + [0x5bd5, 0x5bd5], /* CJK Ideograph */ + [0x5bd6, 0x5bd6], /* CJK Ideograph */ + [0x5bd7, 0x5bd7], /* CJK Ideograph */ + [0x5bd8, 0x5bd8], /* CJK Ideograph */ + [0x5bd9, 0x5bd9], /* CJK Ideograph */ + [0x5bda, 0x5bda], /* CJK Ideograph */ + [0x5bdb, 0x5bdb], /* CJK Ideograph */ + [0x5bdc, 0x5bdc], /* CJK Ideograph */ + [0x5bdd, 0x5bdd], /* CJK Ideograph */ + [0x5bde, 0x5bde], /* CJK Ideograph */ + [0x5bdf, 0x5bdf], /* CJK Ideograph */ + [0x5be0, 0x5be0], /* CJK Ideograph */ + [0x5be1, 0x5be1], /* CJK Ideograph */ + [0x5be2, 0x5be2], /* CJK Ideograph */ + [0x5be3, 0x5be3], /* CJK Ideograph */ + [0x5be4, 0x5be4], /* CJK Ideograph */ + [0x5be5, 0x5be5], /* CJK Ideograph */ + [0x5be6, 0x5be6], /* CJK Ideograph */ + [0x5be7, 0x5be7], /* CJK Ideograph */ + [0x5be8, 0x5be8], /* CJK Ideograph */ + [0x5be9, 0x5be9], /* CJK Ideograph */ + [0x5bea, 0x5bea], /* CJK Ideograph */ + [0x5beb, 0x5beb], /* CJK Ideograph */ + [0x5bec, 0x5bec], /* CJK Ideograph */ + [0x5bed, 0x5bed], /* CJK Ideograph */ + [0x5bee, 0x5bee], /* CJK Ideograph */ + [0x5bef, 0x5bef], /* CJK Ideograph */ + [0x5bf0, 0x5bf0], /* CJK Ideograph */ + [0x5bf1, 0x5bf1], /* CJK Ideograph */ + [0x5bf2, 0x5bf2], /* CJK Ideograph */ + [0x5bf3, 0x5bf3], /* CJK Ideograph */ + [0x5bf4, 0x5bf4], /* CJK Ideograph */ + [0x5bf5, 0x5bf5], /* CJK Ideograph */ + [0x5bf6, 0x5bf6], /* CJK Ideograph */ + [0x5bf7, 0x5bf7], /* CJK Ideograph */ + [0x5bf8, 0x5bf8], /* CJK Ideograph */ + [0x5bf9, 0x5bf9], /* CJK Ideograph */ + [0x5bfa, 0x5bfa], /* CJK Ideograph */ + [0x5bfb, 0x5bfb], /* CJK Ideograph */ + [0x5bfc, 0x5bfc], /* CJK Ideograph */ + [0x5bfd, 0x5bfd], /* CJK Ideograph */ + [0x5bfe, 0x5bfe], /* CJK Ideograph */ + [0x5bff, 0x5bff], /* CJK Ideograph */ + [0x5c00, 0x5c00], /* CJK Ideograph */ + [0x5c01, 0x5c01], /* CJK Ideograph */ + [0x5c02, 0x5c02], /* CJK Ideograph */ + [0x5c03, 0x5c03], /* CJK Ideograph */ + [0x5c04, 0x5c04], /* CJK Ideograph */ + [0x5c05, 0x5c05], /* CJK Ideograph */ + [0x5c06, 0x5c06], /* CJK Ideograph */ + [0x5c07, 0x5c07], /* CJK Ideograph */ + [0x5c08, 0x5c08], /* CJK Ideograph */ + [0x5c09, 0x5c09], /* CJK Ideograph */ + [0x5c0a, 0x5c0a], /* CJK Ideograph */ + [0x5c0b, 0x5c0b], /* CJK Ideograph */ + [0x5c0c, 0x5c0c], /* CJK Ideograph */ + [0x5c0d, 0x5c0d], /* CJK Ideograph */ + [0x5c0e, 0x5c0e], /* CJK Ideograph */ + [0x5c0f, 0x5c0f], /* CJK Ideograph */ + [0x5c10, 0x5c10], /* CJK Ideograph */ + [0x5c11, 0x5c11], /* CJK Ideograph */ + [0x5c12, 0x5c12], /* CJK Ideograph */ + [0x5c13, 0x5c13], /* CJK Ideograph */ + [0x5c14, 0x5c14], /* CJK Ideograph */ + [0x5c15, 0x5c15], /* CJK Ideograph */ + [0x5c16, 0x5c16], /* CJK Ideograph */ + [0x5c17, 0x5c17], /* CJK Ideograph */ + [0x5c18, 0x5c18], /* CJK Ideograph */ + [0x5c19, 0x5c19], /* CJK Ideograph */ + [0x5c1a, 0x5c1a], /* CJK Ideograph */ + [0x5c1b, 0x5c1b], /* CJK Ideograph */ + [0x5c1c, 0x5c1c], /* CJK Ideograph */ + [0x5c1d, 0x5c1d], /* CJK Ideograph */ + [0x5c1e, 0x5c1e], /* CJK Ideograph */ + [0x5c1f, 0x5c1f], /* CJK Ideograph */ + [0x5c20, 0x5c20], /* CJK Ideograph */ + [0x5c21, 0x5c21], /* CJK Ideograph */ + [0x5c22, 0x5c22], /* CJK Ideograph */ + [0x5c23, 0x5c23], /* CJK Ideograph */ + [0x5c24, 0x5c24], /* CJK Ideograph */ + [0x5c25, 0x5c25], /* CJK Ideograph */ + [0x5c26, 0x5c26], /* CJK Ideograph */ + [0x5c27, 0x5c27], /* CJK Ideograph */ + [0x5c28, 0x5c28], /* CJK Ideograph */ + [0x5c29, 0x5c29], /* CJK Ideograph */ + [0x5c2a, 0x5c2a], /* CJK Ideograph */ + [0x5c2b, 0x5c2b], /* CJK Ideograph */ + [0x5c2c, 0x5c2c], /* CJK Ideograph */ + [0x5c2d, 0x5c2d], /* CJK Ideograph */ + [0x5c2e, 0x5c2e], /* CJK Ideograph */ + [0x5c2f, 0x5c2f], /* CJK Ideograph */ + [0x5c30, 0x5c30], /* CJK Ideograph */ + [0x5c31, 0x5c31], /* CJK Ideograph */ + [0x5c32, 0x5c32], /* CJK Ideograph */ + [0x5c33, 0x5c33], /* CJK Ideograph */ + [0x5c34, 0x5c34], /* CJK Ideograph */ + [0x5c35, 0x5c35], /* CJK Ideograph */ + [0x5c36, 0x5c36], /* CJK Ideograph */ + [0x5c37, 0x5c37], /* CJK Ideograph */ + [0x5c38, 0x5c38], /* CJK Ideograph */ + [0x5c39, 0x5c39], /* CJK Ideograph */ + [0x5c3a, 0x5c3a], /* CJK Ideograph */ + [0x5c3b, 0x5c3b], /* CJK Ideograph */ + [0x5c3c, 0x5c3c], /* CJK Ideograph */ + [0x5c3d, 0x5c3d], /* CJK Ideograph */ + [0x5c3e, 0x5c3e], /* CJK Ideograph */ + [0x5c3f, 0x5c3f], /* CJK Ideograph */ + [0x5c40, 0x5c40], /* CJK Ideograph */ + [0x5c41, 0x5c41], /* CJK Ideograph */ + [0x5c42, 0x5c42], /* CJK Ideograph */ + [0x5c43, 0x5c43], /* CJK Ideograph */ + [0x5c44, 0x5c44], /* CJK Ideograph */ + [0x5c45, 0x5c45], /* CJK Ideograph */ + [0x5c46, 0x5c46], /* CJK Ideograph */ + [0x5c47, 0x5c47], /* CJK Ideograph */ + [0x5c48, 0x5c48], /* CJK Ideograph */ + [0x5c49, 0x5c49], /* CJK Ideograph */ + [0x5c4a, 0x5c4a], /* CJK Ideograph */ + [0x5c4b, 0x5c4b], /* CJK Ideograph */ + [0x5c4c, 0x5c4c], /* CJK Ideograph */ + [0x5c4d, 0x5c4d], /* CJK Ideograph */ + [0x5c4e, 0x5c4e], /* CJK Ideograph */ + [0x5c4f, 0x5c4f], /* CJK Ideograph */ + [0x5c50, 0x5c50], /* CJK Ideograph */ + [0x5c51, 0x5c51], /* CJK Ideograph */ + [0x5c52, 0x5c52], /* CJK Ideograph */ + [0x5c53, 0x5c53], /* CJK Ideograph */ + [0x5c54, 0x5c54], /* CJK Ideograph */ + [0x5c55, 0x5c55], /* CJK Ideograph */ + [0x5c56, 0x5c56], /* CJK Ideograph */ + [0x5c57, 0x5c57], /* CJK Ideograph */ + [0x5c58, 0x5c58], /* CJK Ideograph */ + [0x5c59, 0x5c59], /* CJK Ideograph */ + [0x5c5a, 0x5c5a], /* CJK Ideograph */ + [0x5c5b, 0x5c5b], /* CJK Ideograph */ + [0x5c5c, 0x5c5c], /* CJK Ideograph */ + [0x5c5d, 0x5c5d], /* CJK Ideograph */ + [0x5c5e, 0x5c5e], /* CJK Ideograph */ + [0x5c5f, 0x5c5f], /* CJK Ideograph */ + [0x5c60, 0x5c60], /* CJK Ideograph */ + [0x5c61, 0x5c61], /* CJK Ideograph */ + [0x5c62, 0x5c62], /* CJK Ideograph */ + [0x5c63, 0x5c63], /* CJK Ideograph */ + [0x5c64, 0x5c64], /* CJK Ideograph */ + [0x5c65, 0x5c65], /* CJK Ideograph */ + [0x5c66, 0x5c66], /* CJK Ideograph */ + [0x5c67, 0x5c67], /* CJK Ideograph */ + [0x5c68, 0x5c68], /* CJK Ideograph */ + [0x5c69, 0x5c69], /* CJK Ideograph */ + [0x5c6a, 0x5c6a], /* CJK Ideograph */ + [0x5c6b, 0x5c6b], /* CJK Ideograph */ + [0x5c6c, 0x5c6c], /* CJK Ideograph */ + [0x5c6d, 0x5c6d], /* CJK Ideograph */ + [0x5c6e, 0x5c6e], /* CJK Ideograph */ + [0x5c6f, 0x5c6f], /* CJK Ideograph */ + [0x5c70, 0x5c70], /* CJK Ideograph */ + [0x5c71, 0x5c71], /* CJK Ideograph */ + [0x5c72, 0x5c72], /* CJK Ideograph */ + [0x5c73, 0x5c73], /* CJK Ideograph */ + [0x5c74, 0x5c74], /* CJK Ideograph */ + [0x5c75, 0x5c75], /* CJK Ideograph */ + [0x5c76, 0x5c76], /* CJK Ideograph */ + [0x5c77, 0x5c77], /* CJK Ideograph */ + [0x5c78, 0x5c78], /* CJK Ideograph */ + [0x5c79, 0x5c79], /* CJK Ideograph */ + [0x5c7a, 0x5c7a], /* CJK Ideograph */ + [0x5c7b, 0x5c7b], /* CJK Ideograph */ + [0x5c7c, 0x5c7c], /* CJK Ideograph */ + [0x5c7d, 0x5c7d], /* CJK Ideograph */ + [0x5c7e, 0x5c7e], /* CJK Ideograph */ + [0x5c7f, 0x5c7f], /* CJK Ideograph */ + [0x5c80, 0x5c80], /* CJK Ideograph */ + [0x5c81, 0x5c81], /* CJK Ideograph */ + [0x5c82, 0x5c82], /* CJK Ideograph */ + [0x5c83, 0x5c83], /* CJK Ideograph */ + [0x5c84, 0x5c84], /* CJK Ideograph */ + [0x5c85, 0x5c85], /* CJK Ideograph */ + [0x5c86, 0x5c86], /* CJK Ideograph */ + [0x5c87, 0x5c87], /* CJK Ideograph */ + [0x5c88, 0x5c88], /* CJK Ideograph */ + [0x5c89, 0x5c89], /* CJK Ideograph */ + [0x5c8a, 0x5c8a], /* CJK Ideograph */ + [0x5c8b, 0x5c8b], /* CJK Ideograph */ + [0x5c8c, 0x5c8c], /* CJK Ideograph */ + [0x5c8d, 0x5c8d], /* CJK Ideograph */ + [0x5c8e, 0x5c8e], /* CJK Ideograph */ + [0x5c8f, 0x5c8f], /* CJK Ideograph */ + [0x5c90, 0x5c90], /* CJK Ideograph */ + [0x5c91, 0x5c91], /* CJK Ideograph */ + [0x5c92, 0x5c92], /* CJK Ideograph */ + [0x5c93, 0x5c93], /* CJK Ideograph */ + [0x5c94, 0x5c94], /* CJK Ideograph */ + [0x5c95, 0x5c95], /* CJK Ideograph */ + [0x5c96, 0x5c96], /* CJK Ideograph */ + [0x5c97, 0x5c97], /* CJK Ideograph */ + [0x5c98, 0x5c98], /* CJK Ideograph */ + [0x5c99, 0x5c99], /* CJK Ideograph */ + [0x5c9a, 0x5c9a], /* CJK Ideograph */ + [0x5c9b, 0x5c9b], /* CJK Ideograph */ + [0x5c9c, 0x5c9c], /* CJK Ideograph */ + [0x5c9d, 0x5c9d], /* CJK Ideograph */ + [0x5c9e, 0x5c9e], /* CJK Ideograph */ + [0x5c9f, 0x5c9f], /* CJK Ideograph */ + [0x5ca0, 0x5ca0], /* CJK Ideograph */ + [0x5ca1, 0x5ca1], /* CJK Ideograph */ + [0x5ca2, 0x5ca2], /* CJK Ideograph */ + [0x5ca3, 0x5ca3], /* CJK Ideograph */ + [0x5ca4, 0x5ca4], /* CJK Ideograph */ + [0x5ca5, 0x5ca5], /* CJK Ideograph */ + [0x5ca6, 0x5ca6], /* CJK Ideograph */ + [0x5ca7, 0x5ca7], /* CJK Ideograph */ + [0x5ca8, 0x5ca8], /* CJK Ideograph */ + [0x5ca9, 0x5ca9], /* CJK Ideograph */ + [0x5caa, 0x5caa], /* CJK Ideograph */ + [0x5cab, 0x5cab], /* CJK Ideograph */ + [0x5cac, 0x5cac], /* CJK Ideograph */ + [0x5cad, 0x5cad], /* CJK Ideograph */ + [0x5cae, 0x5cae], /* CJK Ideograph */ + [0x5caf, 0x5caf], /* CJK Ideograph */ + [0x5cb0, 0x5cb0], /* CJK Ideograph */ + [0x5cb1, 0x5cb1], /* CJK Ideograph */ + [0x5cb2, 0x5cb2], /* CJK Ideograph */ + [0x5cb3, 0x5cb3], /* CJK Ideograph */ + [0x5cb4, 0x5cb4], /* CJK Ideograph */ + [0x5cb5, 0x5cb5], /* CJK Ideograph */ + [0x5cb6, 0x5cb6], /* CJK Ideograph */ + [0x5cb7, 0x5cb7], /* CJK Ideograph */ + [0x5cb8, 0x5cb8], /* CJK Ideograph */ + [0x5cb9, 0x5cb9], /* CJK Ideograph */ + [0x5cba, 0x5cba], /* CJK Ideograph */ + [0x5cbb, 0x5cbb], /* CJK Ideograph */ + [0x5cbc, 0x5cbc], /* CJK Ideograph */ + [0x5cbd, 0x5cbd], /* CJK Ideograph */ + [0x5cbe, 0x5cbe], /* CJK Ideograph */ + [0x5cbf, 0x5cbf], /* CJK Ideograph */ + [0x5cc0, 0x5cc0], /* CJK Ideograph */ + [0x5cc1, 0x5cc1], /* CJK Ideograph */ + [0x5cc2, 0x5cc2], /* CJK Ideograph */ + [0x5cc3, 0x5cc3], /* CJK Ideograph */ + [0x5cc4, 0x5cc4], /* CJK Ideograph */ + [0x5cc5, 0x5cc5], /* CJK Ideograph */ + [0x5cc6, 0x5cc6], /* CJK Ideograph */ + [0x5cc7, 0x5cc7], /* CJK Ideograph */ + [0x5cc8, 0x5cc8], /* CJK Ideograph */ + [0x5cc9, 0x5cc9], /* CJK Ideograph */ + [0x5cca, 0x5cca], /* CJK Ideograph */ + [0x5ccb, 0x5ccb], /* CJK Ideograph */ + [0x5ccc, 0x5ccc], /* CJK Ideograph */ + [0x5ccd, 0x5ccd], /* CJK Ideograph */ + [0x5cce, 0x5cce], /* CJK Ideograph */ + [0x5ccf, 0x5ccf], /* CJK Ideograph */ + [0x5cd0, 0x5cd0], /* CJK Ideograph */ + [0x5cd1, 0x5cd1], /* CJK Ideograph */ + [0x5cd2, 0x5cd2], /* CJK Ideograph */ + [0x5cd3, 0x5cd3], /* CJK Ideograph */ + [0x5cd4, 0x5cd4], /* CJK Ideograph */ + [0x5cd5, 0x5cd5], /* CJK Ideograph */ + [0x5cd6, 0x5cd6], /* CJK Ideograph */ + [0x5cd7, 0x5cd7], /* CJK Ideograph */ + [0x5cd8, 0x5cd8], /* CJK Ideograph */ + [0x5cd9, 0x5cd9], /* CJK Ideograph */ + [0x5cda, 0x5cda], /* CJK Ideograph */ + [0x5cdb, 0x5cdb], /* CJK Ideograph */ + [0x5cdc, 0x5cdc], /* CJK Ideograph */ + [0x5cdd, 0x5cdd], /* CJK Ideograph */ + [0x5cde, 0x5cde], /* CJK Ideograph */ + [0x5cdf, 0x5cdf], /* CJK Ideograph */ + [0x5ce0, 0x5ce0], /* CJK Ideograph */ + [0x5ce1, 0x5ce1], /* CJK Ideograph */ + [0x5ce2, 0x5ce2], /* CJK Ideograph */ + [0x5ce3, 0x5ce3], /* CJK Ideograph */ + [0x5ce4, 0x5ce4], /* CJK Ideograph */ + [0x5ce5, 0x5ce5], /* CJK Ideograph */ + [0x5ce6, 0x5ce6], /* CJK Ideograph */ + [0x5ce7, 0x5ce7], /* CJK Ideograph */ + [0x5ce8, 0x5ce8], /* CJK Ideograph */ + [0x5ce9, 0x5ce9], /* CJK Ideograph */ + [0x5cea, 0x5cea], /* CJK Ideograph */ + [0x5ceb, 0x5ceb], /* CJK Ideograph */ + [0x5cec, 0x5cec], /* CJK Ideograph */ + [0x5ced, 0x5ced], /* CJK Ideograph */ + [0x5cee, 0x5cee], /* CJK Ideograph */ + [0x5cef, 0x5cef], /* CJK Ideograph */ + [0x5cf0, 0x5cf0], /* CJK Ideograph */ + [0x5cf1, 0x5cf1], /* CJK Ideograph */ + [0x5cf2, 0x5cf2], /* CJK Ideograph */ + [0x5cf3, 0x5cf3], /* CJK Ideograph */ + [0x5cf4, 0x5cf4], /* CJK Ideograph */ + [0x5cf5, 0x5cf5], /* CJK Ideograph */ + [0x5cf6, 0x5cf6], /* CJK Ideograph */ + [0x5cf7, 0x5cf7], /* CJK Ideograph */ + [0x5cf8, 0x5cf8], /* CJK Ideograph */ + [0x5cf9, 0x5cf9], /* CJK Ideograph */ + [0x5cfa, 0x5cfa], /* CJK Ideograph */ + [0x5cfb, 0x5cfb], /* CJK Ideograph */ + [0x5cfc, 0x5cfc], /* CJK Ideograph */ + [0x5cfd, 0x5cfd], /* CJK Ideograph */ + [0x5cfe, 0x5cfe], /* CJK Ideograph */ + [0x5cff, 0x5cff], /* CJK Ideograph */ + [0x5d00, 0x5d00], /* CJK Ideograph */ + [0x5d01, 0x5d01], /* CJK Ideograph */ + [0x5d02, 0x5d02], /* CJK Ideograph */ + [0x5d03, 0x5d03], /* CJK Ideograph */ + [0x5d04, 0x5d04], /* CJK Ideograph */ + [0x5d05, 0x5d05], /* CJK Ideograph */ + [0x5d06, 0x5d06], /* CJK Ideograph */ + [0x5d07, 0x5d07], /* CJK Ideograph */ + [0x5d08, 0x5d08], /* CJK Ideograph */ + [0x5d09, 0x5d09], /* CJK Ideograph */ + [0x5d0a, 0x5d0a], /* CJK Ideograph */ + [0x5d0b, 0x5d0b], /* CJK Ideograph */ + [0x5d0c, 0x5d0c], /* CJK Ideograph */ + [0x5d0d, 0x5d0d], /* CJK Ideograph */ + [0x5d0e, 0x5d0e], /* CJK Ideograph */ + [0x5d0f, 0x5d0f], /* CJK Ideograph */ + [0x5d10, 0x5d10], /* CJK Ideograph */ + [0x5d11, 0x5d11], /* CJK Ideograph */ + [0x5d12, 0x5d12], /* CJK Ideograph */ + [0x5d13, 0x5d13], /* CJK Ideograph */ + [0x5d14, 0x5d14], /* CJK Ideograph */ + [0x5d15, 0x5d15], /* CJK Ideograph */ + [0x5d16, 0x5d16], /* CJK Ideograph */ + [0x5d17, 0x5d17], /* CJK Ideograph */ + [0x5d18, 0x5d18], /* CJK Ideograph */ + [0x5d19, 0x5d19], /* CJK Ideograph */ + [0x5d1a, 0x5d1a], /* CJK Ideograph */ + [0x5d1b, 0x5d1b], /* CJK Ideograph */ + [0x5d1c, 0x5d1c], /* CJK Ideograph */ + [0x5d1d, 0x5d1d], /* CJK Ideograph */ + [0x5d1e, 0x5d1e], /* CJK Ideograph */ + [0x5d1f, 0x5d1f], /* CJK Ideograph */ + [0x5d20, 0x5d20], /* CJK Ideograph */ + [0x5d21, 0x5d21], /* CJK Ideograph */ + [0x5d22, 0x5d22], /* CJK Ideograph */ + [0x5d23, 0x5d23], /* CJK Ideograph */ + [0x5d24, 0x5d24], /* CJK Ideograph */ + [0x5d25, 0x5d25], /* CJK Ideograph */ + [0x5d26, 0x5d26], /* CJK Ideograph */ + [0x5d27, 0x5d27], /* CJK Ideograph */ + [0x5d28, 0x5d28], /* CJK Ideograph */ + [0x5d29, 0x5d29], /* CJK Ideograph */ + [0x5d2a, 0x5d2a], /* CJK Ideograph */ + [0x5d2b, 0x5d2b], /* CJK Ideograph */ + [0x5d2c, 0x5d2c], /* CJK Ideograph */ + [0x5d2d, 0x5d2d], /* CJK Ideograph */ + [0x5d2e, 0x5d2e], /* CJK Ideograph */ + [0x5d2f, 0x5d2f], /* CJK Ideograph */ + [0x5d30, 0x5d30], /* CJK Ideograph */ + [0x5d31, 0x5d31], /* CJK Ideograph */ + [0x5d32, 0x5d32], /* CJK Ideograph */ + [0x5d33, 0x5d33], /* CJK Ideograph */ + [0x5d34, 0x5d34], /* CJK Ideograph */ + [0x5d35, 0x5d35], /* CJK Ideograph */ + [0x5d36, 0x5d36], /* CJK Ideograph */ + [0x5d37, 0x5d37], /* CJK Ideograph */ + [0x5d38, 0x5d38], /* CJK Ideograph */ + [0x5d39, 0x5d39], /* CJK Ideograph */ + [0x5d3a, 0x5d3a], /* CJK Ideograph */ + [0x5d3b, 0x5d3b], /* CJK Ideograph */ + [0x5d3c, 0x5d3c], /* CJK Ideograph */ + [0x5d3d, 0x5d3d], /* CJK Ideograph */ + [0x5d3e, 0x5d3e], /* CJK Ideograph */ + [0x5d3f, 0x5d3f], /* CJK Ideograph */ + [0x5d40, 0x5d40], /* CJK Ideograph */ + [0x5d41, 0x5d41], /* CJK Ideograph */ + [0x5d42, 0x5d42], /* CJK Ideograph */ + [0x5d43, 0x5d43], /* CJK Ideograph */ + [0x5d44, 0x5d44], /* CJK Ideograph */ + [0x5d45, 0x5d45], /* CJK Ideograph */ + [0x5d46, 0x5d46], /* CJK Ideograph */ + [0x5d47, 0x5d47], /* CJK Ideograph */ + [0x5d48, 0x5d48], /* CJK Ideograph */ + [0x5d49, 0x5d49], /* CJK Ideograph */ + [0x5d4a, 0x5d4a], /* CJK Ideograph */ + [0x5d4b, 0x5d4b], /* CJK Ideograph */ + [0x5d4c, 0x5d4c], /* CJK Ideograph */ + [0x5d4d, 0x5d4d], /* CJK Ideograph */ + [0x5d4e, 0x5d4e], /* CJK Ideograph */ + [0x5d4f, 0x5d4f], /* CJK Ideograph */ + [0x5d50, 0x5d50], /* CJK Ideograph */ + [0x5d51, 0x5d51], /* CJK Ideograph */ + [0x5d52, 0x5d52], /* CJK Ideograph */ + [0x5d53, 0x5d53], /* CJK Ideograph */ + [0x5d54, 0x5d54], /* CJK Ideograph */ + [0x5d55, 0x5d55], /* CJK Ideograph */ + [0x5d56, 0x5d56], /* CJK Ideograph */ + [0x5d57, 0x5d57], /* CJK Ideograph */ + [0x5d58, 0x5d58], /* CJK Ideograph */ + [0x5d59, 0x5d59], /* CJK Ideograph */ + [0x5d5a, 0x5d5a], /* CJK Ideograph */ + [0x5d5b, 0x5d5b], /* CJK Ideograph */ + [0x5d5c, 0x5d5c], /* CJK Ideograph */ + [0x5d5d, 0x5d5d], /* CJK Ideograph */ + [0x5d5e, 0x5d5e], /* CJK Ideograph */ + [0x5d5f, 0x5d5f], /* CJK Ideograph */ + [0x5d60, 0x5d60], /* CJK Ideograph */ + [0x5d61, 0x5d61], /* CJK Ideograph */ + [0x5d62, 0x5d62], /* CJK Ideograph */ + [0x5d63, 0x5d63], /* CJK Ideograph */ + [0x5d64, 0x5d64], /* CJK Ideograph */ + [0x5d65, 0x5d65], /* CJK Ideograph */ + [0x5d66, 0x5d66], /* CJK Ideograph */ + [0x5d67, 0x5d67], /* CJK Ideograph */ + [0x5d68, 0x5d68], /* CJK Ideograph */ + [0x5d69, 0x5d69], /* CJK Ideograph */ + [0x5d6a, 0x5d6a], /* CJK Ideograph */ + [0x5d6b, 0x5d6b], /* CJK Ideograph */ + [0x5d6c, 0x5d6c], /* CJK Ideograph */ + [0x5d6d, 0x5d6d], /* CJK Ideograph */ + [0x5d6e, 0x5d6e], /* CJK Ideograph */ + [0x5d6f, 0x5d6f], /* CJK Ideograph */ + [0x5d70, 0x5d70], /* CJK Ideograph */ + [0x5d71, 0x5d71], /* CJK Ideograph */ + [0x5d72, 0x5d72], /* CJK Ideograph */ + [0x5d73, 0x5d73], /* CJK Ideograph */ + [0x5d74, 0x5d74], /* CJK Ideograph */ + [0x5d75, 0x5d75], /* CJK Ideograph */ + [0x5d76, 0x5d76], /* CJK Ideograph */ + [0x5d77, 0x5d77], /* CJK Ideograph */ + [0x5d78, 0x5d78], /* CJK Ideograph */ + [0x5d79, 0x5d79], /* CJK Ideograph */ + [0x5d7a, 0x5d7a], /* CJK Ideograph */ + [0x5d7b, 0x5d7b], /* CJK Ideograph */ + [0x5d7c, 0x5d7c], /* CJK Ideograph */ + [0x5d7d, 0x5d7d], /* CJK Ideograph */ + [0x5d7e, 0x5d7e], /* CJK Ideograph */ + [0x5d7f, 0x5d7f], /* CJK Ideograph */ + [0x5d80, 0x5d80], /* CJK Ideograph */ + [0x5d81, 0x5d81], /* CJK Ideograph */ + [0x5d82, 0x5d82], /* CJK Ideograph */ + [0x5d83, 0x5d83], /* CJK Ideograph */ + [0x5d84, 0x5d84], /* CJK Ideograph */ + [0x5d85, 0x5d85], /* CJK Ideograph */ + [0x5d86, 0x5d86], /* CJK Ideograph */ + [0x5d87, 0x5d87], /* CJK Ideograph */ + [0x5d88, 0x5d88], /* CJK Ideograph */ + [0x5d89, 0x5d89], /* CJK Ideograph */ + [0x5d8a, 0x5d8a], /* CJK Ideograph */ + [0x5d8b, 0x5d8b], /* CJK Ideograph */ + [0x5d8c, 0x5d8c], /* CJK Ideograph */ + [0x5d8d, 0x5d8d], /* CJK Ideograph */ + [0x5d8e, 0x5d8e], /* CJK Ideograph */ + [0x5d8f, 0x5d8f], /* CJK Ideograph */ + [0x5d90, 0x5d90], /* CJK Ideograph */ + [0x5d91, 0x5d91], /* CJK Ideograph */ + [0x5d92, 0x5d92], /* CJK Ideograph */ + [0x5d93, 0x5d93], /* CJK Ideograph */ + [0x5d94, 0x5d94], /* CJK Ideograph */ + [0x5d95, 0x5d95], /* CJK Ideograph */ + [0x5d96, 0x5d96], /* CJK Ideograph */ + [0x5d97, 0x5d97], /* CJK Ideograph */ + [0x5d98, 0x5d98], /* CJK Ideograph */ + [0x5d99, 0x5d99], /* CJK Ideograph */ + [0x5d9a, 0x5d9a], /* CJK Ideograph */ + [0x5d9b, 0x5d9b], /* CJK Ideograph */ + [0x5d9c, 0x5d9c], /* CJK Ideograph */ + [0x5d9d, 0x5d9d], /* CJK Ideograph */ + [0x5d9e, 0x5d9e], /* CJK Ideograph */ + [0x5d9f, 0x5d9f], /* CJK Ideograph */ + [0x5da0, 0x5da0], /* CJK Ideograph */ + [0x5da1, 0x5da1], /* CJK Ideograph */ + [0x5da2, 0x5da2], /* CJK Ideograph */ + [0x5da3, 0x5da3], /* CJK Ideograph */ + [0x5da4, 0x5da4], /* CJK Ideograph */ + [0x5da5, 0x5da5], /* CJK Ideograph */ + [0x5da6, 0x5da6], /* CJK Ideograph */ + [0x5da7, 0x5da7], /* CJK Ideograph */ + [0x5da8, 0x5da8], /* CJK Ideograph */ + [0x5da9, 0x5da9], /* CJK Ideograph */ + [0x5daa, 0x5daa], /* CJK Ideograph */ + [0x5dab, 0x5dab], /* CJK Ideograph */ + [0x5dac, 0x5dac], /* CJK Ideograph */ + [0x5dad, 0x5dad], /* CJK Ideograph */ + [0x5dae, 0x5dae], /* CJK Ideograph */ + [0x5daf, 0x5daf], /* CJK Ideograph */ + [0x5db0, 0x5db0], /* CJK Ideograph */ + [0x5db1, 0x5db1], /* CJK Ideograph */ + [0x5db2, 0x5db2], /* CJK Ideograph */ + [0x5db3, 0x5db3], /* CJK Ideograph */ + [0x5db4, 0x5db4], /* CJK Ideograph */ + [0x5db5, 0x5db5], /* CJK Ideograph */ + [0x5db6, 0x5db6], /* CJK Ideograph */ + [0x5db7, 0x5db7], /* CJK Ideograph */ + [0x5db8, 0x5db8], /* CJK Ideograph */ + [0x5db9, 0x5db9], /* CJK Ideograph */ + [0x5dba, 0x5dba], /* CJK Ideograph */ + [0x5dbb, 0x5dbb], /* CJK Ideograph */ + [0x5dbc, 0x5dbc], /* CJK Ideograph */ + [0x5dbd, 0x5dbd], /* CJK Ideograph */ + [0x5dbe, 0x5dbe], /* CJK Ideograph */ + [0x5dbf, 0x5dbf], /* CJK Ideograph */ + [0x5dc0, 0x5dc0], /* CJK Ideograph */ + [0x5dc1, 0x5dc1], /* CJK Ideograph */ + [0x5dc2, 0x5dc2], /* CJK Ideograph */ + [0x5dc3, 0x5dc3], /* CJK Ideograph */ + [0x5dc4, 0x5dc4], /* CJK Ideograph */ + [0x5dc5, 0x5dc5], /* CJK Ideograph */ + [0x5dc6, 0x5dc6], /* CJK Ideograph */ + [0x5dc7, 0x5dc7], /* CJK Ideograph */ + [0x5dc8, 0x5dc8], /* CJK Ideograph */ + [0x5dc9, 0x5dc9], /* CJK Ideograph */ + [0x5dca, 0x5dca], /* CJK Ideograph */ + [0x5dcb, 0x5dcb], /* CJK Ideograph */ + [0x5dcc, 0x5dcc], /* CJK Ideograph */ + [0x5dcd, 0x5dcd], /* CJK Ideograph */ + [0x5dce, 0x5dce], /* CJK Ideograph */ + [0x5dcf, 0x5dcf], /* CJK Ideograph */ + [0x5dd0, 0x5dd0], /* CJK Ideograph */ + [0x5dd1, 0x5dd1], /* CJK Ideograph */ + [0x5dd2, 0x5dd2], /* CJK Ideograph */ + [0x5dd3, 0x5dd3], /* CJK Ideograph */ + [0x5dd4, 0x5dd4], /* CJK Ideograph */ + [0x5dd5, 0x5dd5], /* CJK Ideograph */ + [0x5dd6, 0x5dd6], /* CJK Ideograph */ + [0x5dd7, 0x5dd7], /* CJK Ideograph */ + [0x5dd8, 0x5dd8], /* CJK Ideograph */ + [0x5dd9, 0x5dd9], /* CJK Ideograph */ + [0x5dda, 0x5dda], /* CJK Ideograph */ + [0x5ddb, 0x5ddb], /* CJK Ideograph */ + [0x5ddc, 0x5ddc], /* CJK Ideograph */ + [0x5ddd, 0x5ddd], /* CJK Ideograph */ + [0x5dde, 0x5dde], /* CJK Ideograph */ + [0x5ddf, 0x5ddf], /* CJK Ideograph */ + [0x5de0, 0x5de0], /* CJK Ideograph */ + [0x5de1, 0x5de1], /* CJK Ideograph */ + [0x5de2, 0x5de2], /* CJK Ideograph */ + [0x5de3, 0x5de3], /* CJK Ideograph */ + [0x5de4, 0x5de4], /* CJK Ideograph */ + [0x5de5, 0x5de5], /* CJK Ideograph */ + [0x5de6, 0x5de6], /* CJK Ideograph */ + [0x5de7, 0x5de7], /* CJK Ideograph */ + [0x5de8, 0x5de8], /* CJK Ideograph */ + [0x5de9, 0x5de9], /* CJK Ideograph */ + [0x5dea, 0x5dea], /* CJK Ideograph */ + [0x5deb, 0x5deb], /* CJK Ideograph */ + [0x5dec, 0x5dec], /* CJK Ideograph */ + [0x5ded, 0x5ded], /* CJK Ideograph */ + [0x5dee, 0x5dee], /* CJK Ideograph */ + [0x5def, 0x5def], /* CJK Ideograph */ + [0x5df0, 0x5df0], /* CJK Ideograph */ + [0x5df1, 0x5df1], /* CJK Ideograph */ + [0x5df2, 0x5df2], /* CJK Ideograph */ + [0x5df3, 0x5df3], /* CJK Ideograph */ + [0x5df4, 0x5df4], /* CJK Ideograph */ + [0x5df5, 0x5df5], /* CJK Ideograph */ + [0x5df6, 0x5df6], /* CJK Ideograph */ + [0x5df7, 0x5df7], /* CJK Ideograph */ + [0x5df8, 0x5df8], /* CJK Ideograph */ + [0x5df9, 0x5df9], /* CJK Ideograph */ + [0x5dfa, 0x5dfa], /* CJK Ideograph */ + [0x5dfb, 0x5dfb], /* CJK Ideograph */ + [0x5dfc, 0x5dfc], /* CJK Ideograph */ + [0x5dfd, 0x5dfd], /* CJK Ideograph */ + [0x5dfe, 0x5dfe], /* CJK Ideograph */ + [0x5dff, 0x5dff], /* CJK Ideograph */ + [0x5e00, 0x5e00], /* CJK Ideograph */ + [0x5e01, 0x5e01], /* CJK Ideograph */ + [0x5e02, 0x5e02], /* CJK Ideograph */ + [0x5e03, 0x5e03], /* CJK Ideograph */ + [0x5e04, 0x5e04], /* CJK Ideograph */ + [0x5e05, 0x5e05], /* CJK Ideograph */ + [0x5e06, 0x5e06], /* CJK Ideograph */ + [0x5e07, 0x5e07], /* CJK Ideograph */ + [0x5e08, 0x5e08], /* CJK Ideograph */ + [0x5e09, 0x5e09], /* CJK Ideograph */ + [0x5e0a, 0x5e0a], /* CJK Ideograph */ + [0x5e0b, 0x5e0b], /* CJK Ideograph */ + [0x5e0c, 0x5e0c], /* CJK Ideograph */ + [0x5e0d, 0x5e0d], /* CJK Ideograph */ + [0x5e0e, 0x5e0e], /* CJK Ideograph */ + [0x5e0f, 0x5e0f], /* CJK Ideograph */ + [0x5e10, 0x5e10], /* CJK Ideograph */ + [0x5e11, 0x5e11], /* CJK Ideograph */ + [0x5e12, 0x5e12], /* CJK Ideograph */ + [0x5e13, 0x5e13], /* CJK Ideograph */ + [0x5e14, 0x5e14], /* CJK Ideograph */ + [0x5e15, 0x5e15], /* CJK Ideograph */ + [0x5e16, 0x5e16], /* CJK Ideograph */ + [0x5e17, 0x5e17], /* CJK Ideograph */ + [0x5e18, 0x5e18], /* CJK Ideograph */ + [0x5e19, 0x5e19], /* CJK Ideograph */ + [0x5e1a, 0x5e1a], /* CJK Ideograph */ + [0x5e1b, 0x5e1b], /* CJK Ideograph */ + [0x5e1c, 0x5e1c], /* CJK Ideograph */ + [0x5e1d, 0x5e1d], /* CJK Ideograph */ + [0x5e1e, 0x5e1e], /* CJK Ideograph */ + [0x5e1f, 0x5e1f], /* CJK Ideograph */ + [0x5e20, 0x5e20], /* CJK Ideograph */ + [0x5e21, 0x5e21], /* CJK Ideograph */ + [0x5e22, 0x5e22], /* CJK Ideograph */ + [0x5e23, 0x5e23], /* CJK Ideograph */ + [0x5e24, 0x5e24], /* CJK Ideograph */ + [0x5e25, 0x5e25], /* CJK Ideograph */ + [0x5e26, 0x5e26], /* CJK Ideograph */ + [0x5e27, 0x5e27], /* CJK Ideograph */ + [0x5e28, 0x5e28], /* CJK Ideograph */ + [0x5e29, 0x5e29], /* CJK Ideograph */ + [0x5e2a, 0x5e2a], /* CJK Ideograph */ + [0x5e2b, 0x5e2b], /* CJK Ideograph */ + [0x5e2c, 0x5e2c], /* CJK Ideograph */ + [0x5e2d, 0x5e2d], /* CJK Ideograph */ + [0x5e2e, 0x5e2e], /* CJK Ideograph */ + [0x5e2f, 0x5e2f], /* CJK Ideograph */ + [0x5e30, 0x5e30], /* CJK Ideograph */ + [0x5e31, 0x5e31], /* CJK Ideograph */ + [0x5e32, 0x5e32], /* CJK Ideograph */ + [0x5e33, 0x5e33], /* CJK Ideograph */ + [0x5e34, 0x5e34], /* CJK Ideograph */ + [0x5e35, 0x5e35], /* CJK Ideograph */ + [0x5e36, 0x5e36], /* CJK Ideograph */ + [0x5e37, 0x5e37], /* CJK Ideograph */ + [0x5e38, 0x5e38], /* CJK Ideograph */ + [0x5e39, 0x5e39], /* CJK Ideograph */ + [0x5e3a, 0x5e3a], /* CJK Ideograph */ + [0x5e3b, 0x5e3b], /* CJK Ideograph */ + [0x5e3c, 0x5e3c], /* CJK Ideograph */ + [0x5e3d, 0x5e3d], /* CJK Ideograph */ + [0x5e3e, 0x5e3e], /* CJK Ideograph */ + [0x5e3f, 0x5e3f], /* CJK Ideograph */ + [0x5e40, 0x5e40], /* CJK Ideograph */ + [0x5e41, 0x5e41], /* CJK Ideograph */ + [0x5e42, 0x5e42], /* CJK Ideograph */ + [0x5e43, 0x5e43], /* CJK Ideograph */ + [0x5e44, 0x5e44], /* CJK Ideograph */ + [0x5e45, 0x5e45], /* CJK Ideograph */ + [0x5e46, 0x5e46], /* CJK Ideograph */ + [0x5e47, 0x5e47], /* CJK Ideograph */ + [0x5e48, 0x5e48], /* CJK Ideograph */ + [0x5e49, 0x5e49], /* CJK Ideograph */ + [0x5e4a, 0x5e4a], /* CJK Ideograph */ + [0x5e4b, 0x5e4b], /* CJK Ideograph */ + [0x5e4c, 0x5e4c], /* CJK Ideograph */ + [0x5e4d, 0x5e4d], /* CJK Ideograph */ + [0x5e4e, 0x5e4e], /* CJK Ideograph */ + [0x5e4f, 0x5e4f], /* CJK Ideograph */ + [0x5e50, 0x5e50], /* CJK Ideograph */ + [0x5e51, 0x5e51], /* CJK Ideograph */ + [0x5e52, 0x5e52], /* CJK Ideograph */ + [0x5e53, 0x5e53], /* CJK Ideograph */ + [0x5e54, 0x5e54], /* CJK Ideograph */ + [0x5e55, 0x5e55], /* CJK Ideograph */ + [0x5e56, 0x5e56], /* CJK Ideograph */ + [0x5e57, 0x5e57], /* CJK Ideograph */ + [0x5e58, 0x5e58], /* CJK Ideograph */ + [0x5e59, 0x5e59], /* CJK Ideograph */ + [0x5e5a, 0x5e5a], /* CJK Ideograph */ + [0x5e5b, 0x5e5b], /* CJK Ideograph */ + [0x5e5c, 0x5e5c], /* CJK Ideograph */ + [0x5e5d, 0x5e5d], /* CJK Ideograph */ + [0x5e5e, 0x5e5e], /* CJK Ideograph */ + [0x5e5f, 0x5e5f], /* CJK Ideograph */ + [0x5e60, 0x5e60], /* CJK Ideograph */ + [0x5e61, 0x5e61], /* CJK Ideograph */ + [0x5e62, 0x5e62], /* CJK Ideograph */ + [0x5e63, 0x5e63], /* CJK Ideograph */ + [0x5e64, 0x5e64], /* CJK Ideograph */ + [0x5e65, 0x5e65], /* CJK Ideograph */ + [0x5e66, 0x5e66], /* CJK Ideograph */ + [0x5e67, 0x5e67], /* CJK Ideograph */ + [0x5e68, 0x5e68], /* CJK Ideograph */ + [0x5e69, 0x5e69], /* CJK Ideograph */ + [0x5e6a, 0x5e6a], /* CJK Ideograph */ + [0x5e6b, 0x5e6b], /* CJK Ideograph */ + [0x5e6c, 0x5e6c], /* CJK Ideograph */ + [0x5e6d, 0x5e6d], /* CJK Ideograph */ + [0x5e6e, 0x5e6e], /* CJK Ideograph */ + [0x5e6f, 0x5e6f], /* CJK Ideograph */ + [0x5e70, 0x5e70], /* CJK Ideograph */ + [0x5e71, 0x5e71], /* CJK Ideograph */ + [0x5e72, 0x5e72], /* CJK Ideograph */ + [0x5e73, 0x5e73], /* CJK Ideograph */ + [0x5e74, 0x5e74], /* CJK Ideograph */ + [0x5e75, 0x5e75], /* CJK Ideograph */ + [0x5e76, 0x5e76], /* CJK Ideograph */ + [0x5e77, 0x5e77], /* CJK Ideograph */ + [0x5e78, 0x5e78], /* CJK Ideograph */ + [0x5e79, 0x5e79], /* CJK Ideograph */ + [0x5e7a, 0x5e7a], /* CJK Ideograph */ + [0x5e7b, 0x5e7b], /* CJK Ideograph */ + [0x5e7c, 0x5e7c], /* CJK Ideograph */ + [0x5e7d, 0x5e7d], /* CJK Ideograph */ + [0x5e7e, 0x5e7e], /* CJK Ideograph */ + [0x5e7f, 0x5e7f], /* CJK Ideograph */ + [0x5e80, 0x5e80], /* CJK Ideograph */ + [0x5e81, 0x5e81], /* CJK Ideograph */ + [0x5e82, 0x5e82], /* CJK Ideograph */ + [0x5e83, 0x5e83], /* CJK Ideograph */ + [0x5e84, 0x5e84], /* CJK Ideograph */ + [0x5e85, 0x5e85], /* CJK Ideograph */ + [0x5e86, 0x5e86], /* CJK Ideograph */ + [0x5e87, 0x5e87], /* CJK Ideograph */ + [0x5e88, 0x5e88], /* CJK Ideograph */ + [0x5e89, 0x5e89], /* CJK Ideograph */ + [0x5e8a, 0x5e8a], /* CJK Ideograph */ + [0x5e8b, 0x5e8b], /* CJK Ideograph */ + [0x5e8c, 0x5e8c], /* CJK Ideograph */ + [0x5e8d, 0x5e8d], /* CJK Ideograph */ + [0x5e8e, 0x5e8e], /* CJK Ideograph */ + [0x5e8f, 0x5e8f], /* CJK Ideograph */ + [0x5e90, 0x5e90], /* CJK Ideograph */ + [0x5e91, 0x5e91], /* CJK Ideograph */ + [0x5e92, 0x5e92], /* CJK Ideograph */ + [0x5e93, 0x5e93], /* CJK Ideograph */ + [0x5e94, 0x5e94], /* CJK Ideograph */ + [0x5e95, 0x5e95], /* CJK Ideograph */ + [0x5e96, 0x5e96], /* CJK Ideograph */ + [0x5e97, 0x5e97], /* CJK Ideograph */ + [0x5e98, 0x5e98], /* CJK Ideograph */ + [0x5e99, 0x5e99], /* CJK Ideograph */ + [0x5e9a, 0x5e9a], /* CJK Ideograph */ + [0x5e9b, 0x5e9b], /* CJK Ideograph */ + [0x5e9c, 0x5e9c], /* CJK Ideograph */ + [0x5e9d, 0x5e9d], /* CJK Ideograph */ + [0x5e9e, 0x5e9e], /* CJK Ideograph */ + [0x5e9f, 0x5e9f], /* CJK Ideograph */ + [0x5ea0, 0x5ea0], /* CJK Ideograph */ + [0x5ea1, 0x5ea1], /* CJK Ideograph */ + [0x5ea2, 0x5ea2], /* CJK Ideograph */ + [0x5ea3, 0x5ea3], /* CJK Ideograph */ + [0x5ea4, 0x5ea4], /* CJK Ideograph */ + [0x5ea5, 0x5ea5], /* CJK Ideograph */ + [0x5ea6, 0x5ea6], /* CJK Ideograph */ + [0x5ea7, 0x5ea7], /* CJK Ideograph */ + [0x5ea8, 0x5ea8], /* CJK Ideograph */ + [0x5ea9, 0x5ea9], /* CJK Ideograph */ + [0x5eaa, 0x5eaa], /* CJK Ideograph */ + [0x5eab, 0x5eab], /* CJK Ideograph */ + [0x5eac, 0x5eac], /* CJK Ideograph */ + [0x5ead, 0x5ead], /* CJK Ideograph */ + [0x5eae, 0x5eae], /* CJK Ideograph */ + [0x5eaf, 0x5eaf], /* CJK Ideograph */ + [0x5eb0, 0x5eb0], /* CJK Ideograph */ + [0x5eb1, 0x5eb1], /* CJK Ideograph */ + [0x5eb2, 0x5eb2], /* CJK Ideograph */ + [0x5eb3, 0x5eb3], /* CJK Ideograph */ + [0x5eb4, 0x5eb4], /* CJK Ideograph */ + [0x5eb5, 0x5eb5], /* CJK Ideograph */ + [0x5eb6, 0x5eb6], /* CJK Ideograph */ + [0x5eb7, 0x5eb7], /* CJK Ideograph */ + [0x5eb8, 0x5eb8], /* CJK Ideograph */ + [0x5eb9, 0x5eb9], /* CJK Ideograph */ + [0x5eba, 0x5eba], /* CJK Ideograph */ + [0x5ebb, 0x5ebb], /* CJK Ideograph */ + [0x5ebc, 0x5ebc], /* CJK Ideograph */ + [0x5ebd, 0x5ebd], /* CJK Ideograph */ + [0x5ebe, 0x5ebe], /* CJK Ideograph */ + [0x5ebf, 0x5ebf], /* CJK Ideograph */ + [0x5ec0, 0x5ec0], /* CJK Ideograph */ + [0x5ec1, 0x5ec1], /* CJK Ideograph */ + [0x5ec2, 0x5ec2], /* CJK Ideograph */ + [0x5ec3, 0x5ec3], /* CJK Ideograph */ + [0x5ec4, 0x5ec4], /* CJK Ideograph */ + [0x5ec5, 0x5ec5], /* CJK Ideograph */ + [0x5ec6, 0x5ec6], /* CJK Ideograph */ + [0x5ec7, 0x5ec7], /* CJK Ideograph */ + [0x5ec8, 0x5ec8], /* CJK Ideograph */ + [0x5ec9, 0x5ec9], /* CJK Ideograph */ + [0x5eca, 0x5eca], /* CJK Ideograph */ + [0x5ecb, 0x5ecb], /* CJK Ideograph */ + [0x5ecc, 0x5ecc], /* CJK Ideograph */ + [0x5ecd, 0x5ecd], /* CJK Ideograph */ + [0x5ece, 0x5ece], /* CJK Ideograph */ + [0x5ecf, 0x5ecf], /* CJK Ideograph */ + [0x5ed0, 0x5ed0], /* CJK Ideograph */ + [0x5ed1, 0x5ed1], /* CJK Ideograph */ + [0x5ed2, 0x5ed2], /* CJK Ideograph */ + [0x5ed3, 0x5ed3], /* CJK Ideograph */ + [0x5ed4, 0x5ed4], /* CJK Ideograph */ + [0x5ed5, 0x5ed5], /* CJK Ideograph */ + [0x5ed6, 0x5ed6], /* CJK Ideograph */ + [0x5ed7, 0x5ed7], /* CJK Ideograph */ + [0x5ed8, 0x5ed8], /* CJK Ideograph */ + [0x5ed9, 0x5ed9], /* CJK Ideograph */ + [0x5eda, 0x5eda], /* CJK Ideograph */ + [0x5edb, 0x5edb], /* CJK Ideograph */ + [0x5edc, 0x5edc], /* CJK Ideograph */ + [0x5edd, 0x5edd], /* CJK Ideograph */ + [0x5ede, 0x5ede], /* CJK Ideograph */ + [0x5edf, 0x5edf], /* CJK Ideograph */ + [0x5ee0, 0x5ee0], /* CJK Ideograph */ + [0x5ee1, 0x5ee1], /* CJK Ideograph */ + [0x5ee2, 0x5ee2], /* CJK Ideograph */ + [0x5ee3, 0x5ee3], /* CJK Ideograph */ + [0x5ee4, 0x5ee4], /* CJK Ideograph */ + [0x5ee5, 0x5ee5], /* CJK Ideograph */ + [0x5ee6, 0x5ee6], /* CJK Ideograph */ + [0x5ee7, 0x5ee7], /* CJK Ideograph */ + [0x5ee8, 0x5ee8], /* CJK Ideograph */ + [0x5ee9, 0x5ee9], /* CJK Ideograph */ + [0x5eea, 0x5eea], /* CJK Ideograph */ + [0x5eeb, 0x5eeb], /* CJK Ideograph */ + [0x5eec, 0x5eec], /* CJK Ideograph */ + [0x5eed, 0x5eed], /* CJK Ideograph */ + [0x5eee, 0x5eee], /* CJK Ideograph */ + [0x5eef, 0x5eef], /* CJK Ideograph */ + [0x5ef0, 0x5ef0], /* CJK Ideograph */ + [0x5ef1, 0x5ef1], /* CJK Ideograph */ + [0x5ef2, 0x5ef2], /* CJK Ideograph */ + [0x5ef3, 0x5ef3], /* CJK Ideograph */ + [0x5ef4, 0x5ef4], /* CJK Ideograph */ + [0x5ef5, 0x5ef5], /* CJK Ideograph */ + [0x5ef6, 0x5ef6], /* CJK Ideograph */ + [0x5ef7, 0x5ef7], /* CJK Ideograph */ + [0x5ef8, 0x5ef8], /* CJK Ideograph */ + [0x5ef9, 0x5ef9], /* CJK Ideograph */ + [0x5efa, 0x5efa], /* CJK Ideograph */ + [0x5efb, 0x5efb], /* CJK Ideograph */ + [0x5efc, 0x5efc], /* CJK Ideograph */ + [0x5efd, 0x5efd], /* CJK Ideograph */ + [0x5efe, 0x5efe], /* CJK Ideograph */ + [0x5eff, 0x5eff], /* CJK Ideograph */ + [0x5f00, 0x5f00], /* CJK Ideograph */ + [0x5f01, 0x5f01], /* CJK Ideograph */ + [0x5f02, 0x5f02], /* CJK Ideograph */ + [0x5f03, 0x5f03], /* CJK Ideograph */ + [0x5f04, 0x5f04], /* CJK Ideograph */ + [0x5f05, 0x5f05], /* CJK Ideograph */ + [0x5f06, 0x5f06], /* CJK Ideograph */ + [0x5f07, 0x5f07], /* CJK Ideograph */ + [0x5f08, 0x5f08], /* CJK Ideograph */ + [0x5f09, 0x5f09], /* CJK Ideograph */ + [0x5f0a, 0x5f0a], /* CJK Ideograph */ + [0x5f0b, 0x5f0b], /* CJK Ideograph */ + [0x5f0c, 0x5f0c], /* CJK Ideograph */ + [0x5f0d, 0x5f0d], /* CJK Ideograph */ + [0x5f0e, 0x5f0e], /* CJK Ideograph */ + [0x5f0f, 0x5f0f], /* CJK Ideograph */ + [0x5f10, 0x5f10], /* CJK Ideograph */ + [0x5f11, 0x5f11], /* CJK Ideograph */ + [0x5f12, 0x5f12], /* CJK Ideograph */ + [0x5f13, 0x5f13], /* CJK Ideograph */ + [0x5f14, 0x5f14], /* CJK Ideograph */ + [0x5f15, 0x5f15], /* CJK Ideograph */ + [0x5f16, 0x5f16], /* CJK Ideograph */ + [0x5f17, 0x5f17], /* CJK Ideograph */ + [0x5f18, 0x5f18], /* CJK Ideograph */ + [0x5f19, 0x5f19], /* CJK Ideograph */ + [0x5f1a, 0x5f1a], /* CJK Ideograph */ + [0x5f1b, 0x5f1b], /* CJK Ideograph */ + [0x5f1c, 0x5f1c], /* CJK Ideograph */ + [0x5f1d, 0x5f1d], /* CJK Ideograph */ + [0x5f1e, 0x5f1e], /* CJK Ideograph */ + [0x5f1f, 0x5f1f], /* CJK Ideograph */ + [0x5f20, 0x5f20], /* CJK Ideograph */ + [0x5f21, 0x5f21], /* CJK Ideograph */ + [0x5f22, 0x5f22], /* CJK Ideograph */ + [0x5f23, 0x5f23], /* CJK Ideograph */ + [0x5f24, 0x5f24], /* CJK Ideograph */ + [0x5f25, 0x5f25], /* CJK Ideograph */ + [0x5f26, 0x5f26], /* CJK Ideograph */ + [0x5f27, 0x5f27], /* CJK Ideograph */ + [0x5f28, 0x5f28], /* CJK Ideograph */ + [0x5f29, 0x5f29], /* CJK Ideograph */ + [0x5f2a, 0x5f2a], /* CJK Ideograph */ + [0x5f2b, 0x5f2b], /* CJK Ideograph */ + [0x5f2c, 0x5f2c], /* CJK Ideograph */ + [0x5f2d, 0x5f2d], /* CJK Ideograph */ + [0x5f2e, 0x5f2e], /* CJK Ideograph */ + [0x5f2f, 0x5f2f], /* CJK Ideograph */ + [0x5f30, 0x5f30], /* CJK Ideograph */ + [0x5f31, 0x5f31], /* CJK Ideograph */ + [0x5f32, 0x5f32], /* CJK Ideograph */ + [0x5f33, 0x5f33], /* CJK Ideograph */ + [0x5f34, 0x5f34], /* CJK Ideograph */ + [0x5f35, 0x5f35], /* CJK Ideograph */ + [0x5f36, 0x5f36], /* CJK Ideograph */ + [0x5f37, 0x5f37], /* CJK Ideograph */ + [0x5f38, 0x5f38], /* CJK Ideograph */ + [0x5f39, 0x5f39], /* CJK Ideograph */ + [0x5f3a, 0x5f3a], /* CJK Ideograph */ + [0x5f3b, 0x5f3b], /* CJK Ideograph */ + [0x5f3c, 0x5f3c], /* CJK Ideograph */ + [0x5f3d, 0x5f3d], /* CJK Ideograph */ + [0x5f3e, 0x5f3e], /* CJK Ideograph */ + [0x5f3f, 0x5f3f], /* CJK Ideograph */ + [0x5f40, 0x5f40], /* CJK Ideograph */ + [0x5f41, 0x5f41], /* CJK Ideograph */ + [0x5f42, 0x5f42], /* CJK Ideograph */ + [0x5f43, 0x5f43], /* CJK Ideograph */ + [0x5f44, 0x5f44], /* CJK Ideograph */ + [0x5f45, 0x5f45], /* CJK Ideograph */ + [0x5f46, 0x5f46], /* CJK Ideograph */ + [0x5f47, 0x5f47], /* CJK Ideograph */ + [0x5f48, 0x5f48], /* CJK Ideograph */ + [0x5f49, 0x5f49], /* CJK Ideograph */ + [0x5f4a, 0x5f4a], /* CJK Ideograph */ + [0x5f4b, 0x5f4b], /* CJK Ideograph */ + [0x5f4c, 0x5f4c], /* CJK Ideograph */ + [0x5f4d, 0x5f4d], /* CJK Ideograph */ + [0x5f4e, 0x5f4e], /* CJK Ideograph */ + [0x5f4f, 0x5f4f], /* CJK Ideograph */ + [0x5f50, 0x5f50], /* CJK Ideograph */ + [0x5f51, 0x5f51], /* CJK Ideograph */ + [0x5f52, 0x5f52], /* CJK Ideograph */ + [0x5f53, 0x5f53], /* CJK Ideograph */ + [0x5f54, 0x5f54], /* CJK Ideograph */ + [0x5f55, 0x5f55], /* CJK Ideograph */ + [0x5f56, 0x5f56], /* CJK Ideograph */ + [0x5f57, 0x5f57], /* CJK Ideograph */ + [0x5f58, 0x5f58], /* CJK Ideograph */ + [0x5f59, 0x5f59], /* CJK Ideograph */ + [0x5f5a, 0x5f5a], /* CJK Ideograph */ + [0x5f5b, 0x5f5b], /* CJK Ideograph */ + [0x5f5c, 0x5f5c], /* CJK Ideograph */ + [0x5f5d, 0x5f5d], /* CJK Ideograph */ + [0x5f5e, 0x5f5e], /* CJK Ideograph */ + [0x5f5f, 0x5f5f], /* CJK Ideograph */ + [0x5f60, 0x5f60], /* CJK Ideograph */ + [0x5f61, 0x5f61], /* CJK Ideograph */ + [0x5f62, 0x5f62], /* CJK Ideograph */ + [0x5f63, 0x5f63], /* CJK Ideograph */ + [0x5f64, 0x5f64], /* CJK Ideograph */ + [0x5f65, 0x5f65], /* CJK Ideograph */ + [0x5f66, 0x5f66], /* CJK Ideograph */ + [0x5f67, 0x5f67], /* CJK Ideograph */ + [0x5f68, 0x5f68], /* CJK Ideograph */ + [0x5f69, 0x5f69], /* CJK Ideograph */ + [0x5f6a, 0x5f6a], /* CJK Ideograph */ + [0x5f6b, 0x5f6b], /* CJK Ideograph */ + [0x5f6c, 0x5f6c], /* CJK Ideograph */ + [0x5f6d, 0x5f6d], /* CJK Ideograph */ + [0x5f6e, 0x5f6e], /* CJK Ideograph */ + [0x5f6f, 0x5f6f], /* CJK Ideograph */ + [0x5f70, 0x5f70], /* CJK Ideograph */ + [0x5f71, 0x5f71], /* CJK Ideograph */ + [0x5f72, 0x5f72], /* CJK Ideograph */ + [0x5f73, 0x5f73], /* CJK Ideograph */ + [0x5f74, 0x5f74], /* CJK Ideograph */ + [0x5f75, 0x5f75], /* CJK Ideograph */ + [0x5f76, 0x5f76], /* CJK Ideograph */ + [0x5f77, 0x5f77], /* CJK Ideograph */ + [0x5f78, 0x5f78], /* CJK Ideograph */ + [0x5f79, 0x5f79], /* CJK Ideograph */ + [0x5f7a, 0x5f7a], /* CJK Ideograph */ + [0x5f7b, 0x5f7b], /* CJK Ideograph */ + [0x5f7c, 0x5f7c], /* CJK Ideograph */ + [0x5f7d, 0x5f7d], /* CJK Ideograph */ + [0x5f7e, 0x5f7e], /* CJK Ideograph */ + [0x5f7f, 0x5f7f], /* CJK Ideograph */ + [0x5f80, 0x5f80], /* CJK Ideograph */ + [0x5f81, 0x5f81], /* CJK Ideograph */ + [0x5f82, 0x5f82], /* CJK Ideograph */ + [0x5f83, 0x5f83], /* CJK Ideograph */ + [0x5f84, 0x5f84], /* CJK Ideograph */ + [0x5f85, 0x5f85], /* CJK Ideograph */ + [0x5f86, 0x5f86], /* CJK Ideograph */ + [0x5f87, 0x5f87], /* CJK Ideograph */ + [0x5f88, 0x5f88], /* CJK Ideograph */ + [0x5f89, 0x5f89], /* CJK Ideograph */ + [0x5f8a, 0x5f8a], /* CJK Ideograph */ + [0x5f8b, 0x5f8b], /* CJK Ideograph */ + [0x5f8c, 0x5f8c], /* CJK Ideograph */ + [0x5f8d, 0x5f8d], /* CJK Ideograph */ + [0x5f8e, 0x5f8e], /* CJK Ideograph */ + [0x5f8f, 0x5f8f], /* CJK Ideograph */ + [0x5f90, 0x5f90], /* CJK Ideograph */ + [0x5f91, 0x5f91], /* CJK Ideograph */ + [0x5f92, 0x5f92], /* CJK Ideograph */ + [0x5f93, 0x5f93], /* CJK Ideograph */ + [0x5f94, 0x5f94], /* CJK Ideograph */ + [0x5f95, 0x5f95], /* CJK Ideograph */ + [0x5f96, 0x5f96], /* CJK Ideograph */ + [0x5f97, 0x5f97], /* CJK Ideograph */ + [0x5f98, 0x5f98], /* CJK Ideograph */ + [0x5f99, 0x5f99], /* CJK Ideograph */ + [0x5f9a, 0x5f9a], /* CJK Ideograph */ + [0x5f9b, 0x5f9b], /* CJK Ideograph */ + [0x5f9c, 0x5f9c], /* CJK Ideograph */ + [0x5f9d, 0x5f9d], /* CJK Ideograph */ + [0x5f9e, 0x5f9e], /* CJK Ideograph */ + [0x5f9f, 0x5f9f], /* CJK Ideograph */ + [0x5fa0, 0x5fa0], /* CJK Ideograph */ + [0x5fa1, 0x5fa1], /* CJK Ideograph */ + [0x5fa2, 0x5fa2], /* CJK Ideograph */ + [0x5fa3, 0x5fa3], /* CJK Ideograph */ + [0x5fa4, 0x5fa4], /* CJK Ideograph */ + [0x5fa5, 0x5fa5], /* CJK Ideograph */ + [0x5fa6, 0x5fa6], /* CJK Ideograph */ + [0x5fa7, 0x5fa7], /* CJK Ideograph */ + [0x5fa8, 0x5fa8], /* CJK Ideograph */ + [0x5fa9, 0x5fa9], /* CJK Ideograph */ + [0x5faa, 0x5faa], /* CJK Ideograph */ + [0x5fab, 0x5fab], /* CJK Ideograph */ + [0x5fac, 0x5fac], /* CJK Ideograph */ + [0x5fad, 0x5fad], /* CJK Ideograph */ + [0x5fae, 0x5fae], /* CJK Ideograph */ + [0x5faf, 0x5faf], /* CJK Ideograph */ + [0x5fb0, 0x5fb0], /* CJK Ideograph */ + [0x5fb1, 0x5fb1], /* CJK Ideograph */ + [0x5fb2, 0x5fb2], /* CJK Ideograph */ + [0x5fb3, 0x5fb3], /* CJK Ideograph */ + [0x5fb4, 0x5fb4], /* CJK Ideograph */ + [0x5fb5, 0x5fb5], /* CJK Ideograph */ + [0x5fb6, 0x5fb6], /* CJK Ideograph */ + [0x5fb7, 0x5fb7], /* CJK Ideograph */ + [0x5fb8, 0x5fb8], /* CJK Ideograph */ + [0x5fb9, 0x5fb9], /* CJK Ideograph */ + [0x5fba, 0x5fba], /* CJK Ideograph */ + [0x5fbb, 0x5fbb], /* CJK Ideograph */ + [0x5fbc, 0x5fbc], /* CJK Ideograph */ + [0x5fbd, 0x5fbd], /* CJK Ideograph */ + [0x5fbe, 0x5fbe], /* CJK Ideograph */ + [0x5fbf, 0x5fbf], /* CJK Ideograph */ + [0x5fc0, 0x5fc0], /* CJK Ideograph */ + [0x5fc1, 0x5fc1], /* CJK Ideograph */ + [0x5fc2, 0x5fc2], /* CJK Ideograph */ + [0x5fc3, 0x5fc3], /* CJK Ideograph */ + [0x5fc4, 0x5fc4], /* CJK Ideograph */ + [0x5fc5, 0x5fc5], /* CJK Ideograph */ + [0x5fc6, 0x5fc6], /* CJK Ideograph */ + [0x5fc7, 0x5fc7], /* CJK Ideograph */ + [0x5fc8, 0x5fc8], /* CJK Ideograph */ + [0x5fc9, 0x5fc9], /* CJK Ideograph */ + [0x5fca, 0x5fca], /* CJK Ideograph */ + [0x5fcb, 0x5fcb], /* CJK Ideograph */ + [0x5fcc, 0x5fcc], /* CJK Ideograph */ + [0x5fcd, 0x5fcd], /* CJK Ideograph */ + [0x5fce, 0x5fce], /* CJK Ideograph */ + [0x5fcf, 0x5fcf], /* CJK Ideograph */ + [0x5fd0, 0x5fd0], /* CJK Ideograph */ + [0x5fd1, 0x5fd1], /* CJK Ideograph */ + [0x5fd2, 0x5fd2], /* CJK Ideograph */ + [0x5fd3, 0x5fd3], /* CJK Ideograph */ + [0x5fd4, 0x5fd4], /* CJK Ideograph */ + [0x5fd5, 0x5fd5], /* CJK Ideograph */ + [0x5fd6, 0x5fd6], /* CJK Ideograph */ + [0x5fd7, 0x5fd7], /* CJK Ideograph */ + [0x5fd8, 0x5fd8], /* CJK Ideograph */ + [0x5fd9, 0x5fd9], /* CJK Ideograph */ + [0x5fda, 0x5fda], /* CJK Ideograph */ + [0x5fdb, 0x5fdb], /* CJK Ideograph */ + [0x5fdc, 0x5fdc], /* CJK Ideograph */ + [0x5fdd, 0x5fdd], /* CJK Ideograph */ + [0x5fde, 0x5fde], /* CJK Ideograph */ + [0x5fdf, 0x5fdf], /* CJK Ideograph */ + [0x5fe0, 0x5fe0], /* CJK Ideograph */ + [0x5fe1, 0x5fe1], /* CJK Ideograph */ + [0x5fe2, 0x5fe2], /* CJK Ideograph */ + [0x5fe3, 0x5fe3], /* CJK Ideograph */ + [0x5fe4, 0x5fe4], /* CJK Ideograph */ + [0x5fe5, 0x5fe5], /* CJK Ideograph */ + [0x5fe6, 0x5fe6], /* CJK Ideograph */ + [0x5fe7, 0x5fe7], /* CJK Ideograph */ + [0x5fe8, 0x5fe8], /* CJK Ideograph */ + [0x5fe9, 0x5fe9], /* CJK Ideograph */ + [0x5fea, 0x5fea], /* CJK Ideograph */ + [0x5feb, 0x5feb], /* CJK Ideograph */ + [0x5fec, 0x5fec], /* CJK Ideograph */ + [0x5fed, 0x5fed], /* CJK Ideograph */ + [0x5fee, 0x5fee], /* CJK Ideograph */ + [0x5fef, 0x5fef], /* CJK Ideograph */ + [0x5ff0, 0x5ff0], /* CJK Ideograph */ + [0x5ff1, 0x5ff1], /* CJK Ideograph */ + [0x5ff2, 0x5ff2], /* CJK Ideograph */ + [0x5ff3, 0x5ff3], /* CJK Ideograph */ + [0x5ff4, 0x5ff4], /* CJK Ideograph */ + [0x5ff5, 0x5ff5], /* CJK Ideograph */ + [0x5ff6, 0x5ff6], /* CJK Ideograph */ + [0x5ff7, 0x5ff7], /* CJK Ideograph */ + [0x5ff8, 0x5ff8], /* CJK Ideograph */ + [0x5ff9, 0x5ff9], /* CJK Ideograph */ + [0x5ffa, 0x5ffa], /* CJK Ideograph */ + [0x5ffb, 0x5ffb], /* CJK Ideograph */ + [0x5ffc, 0x5ffc], /* CJK Ideograph */ + [0x5ffd, 0x5ffd], /* CJK Ideograph */ + [0x5ffe, 0x5ffe], /* CJK Ideograph */ + [0x5fff, 0x5fff], /* CJK Ideograph */ + [0x6000, 0x6000], /* CJK Ideograph */ + [0x6001, 0x6001], /* CJK Ideograph */ + [0x6002, 0x6002], /* CJK Ideograph */ + [0x6003, 0x6003], /* CJK Ideograph */ + [0x6004, 0x6004], /* CJK Ideograph */ + [0x6005, 0x6005], /* CJK Ideograph */ + [0x6006, 0x6006], /* CJK Ideograph */ + [0x6007, 0x6007], /* CJK Ideograph */ + [0x6008, 0x6008], /* CJK Ideograph */ + [0x6009, 0x6009], /* CJK Ideograph */ + [0x600a, 0x600a], /* CJK Ideograph */ + [0x600b, 0x600b], /* CJK Ideograph */ + [0x600c, 0x600c], /* CJK Ideograph */ + [0x600d, 0x600d], /* CJK Ideograph */ + [0x600e, 0x600e], /* CJK Ideograph */ + [0x600f, 0x600f], /* CJK Ideograph */ + [0x6010, 0x6010], /* CJK Ideograph */ + [0x6011, 0x6011], /* CJK Ideograph */ + [0x6012, 0x6012], /* CJK Ideograph */ + [0x6013, 0x6013], /* CJK Ideograph */ + [0x6014, 0x6014], /* CJK Ideograph */ + [0x6015, 0x6015], /* CJK Ideograph */ + [0x6016, 0x6016], /* CJK Ideograph */ + [0x6017, 0x6017], /* CJK Ideograph */ + [0x6018, 0x6018], /* CJK Ideograph */ + [0x6019, 0x6019], /* CJK Ideograph */ + [0x601a, 0x601a], /* CJK Ideograph */ + [0x601b, 0x601b], /* CJK Ideograph */ + [0x601c, 0x601c], /* CJK Ideograph */ + [0x601d, 0x601d], /* CJK Ideograph */ + [0x601e, 0x601e], /* CJK Ideograph */ + [0x601f, 0x601f], /* CJK Ideograph */ + [0x6020, 0x6020], /* CJK Ideograph */ + [0x6021, 0x6021], /* CJK Ideograph */ + [0x6022, 0x6022], /* CJK Ideograph */ + [0x6023, 0x6023], /* CJK Ideograph */ + [0x6024, 0x6024], /* CJK Ideograph */ + [0x6025, 0x6025], /* CJK Ideograph */ + [0x6026, 0x6026], /* CJK Ideograph */ + [0x6027, 0x6027], /* CJK Ideograph */ + [0x6028, 0x6028], /* CJK Ideograph */ + [0x6029, 0x6029], /* CJK Ideograph */ + [0x602a, 0x602a], /* CJK Ideograph */ + [0x602b, 0x602b], /* CJK Ideograph */ + [0x602c, 0x602c], /* CJK Ideograph */ + [0x602d, 0x602d], /* CJK Ideograph */ + [0x602e, 0x602e], /* CJK Ideograph */ + [0x602f, 0x602f], /* CJK Ideograph */ + [0x6030, 0x6030], /* CJK Ideograph */ + [0x6031, 0x6031], /* CJK Ideograph */ + [0x6032, 0x6032], /* CJK Ideograph */ + [0x6033, 0x6033], /* CJK Ideograph */ + [0x6034, 0x6034], /* CJK Ideograph */ + [0x6035, 0x6035], /* CJK Ideograph */ + [0x6036, 0x6036], /* CJK Ideograph */ + [0x6037, 0x6037], /* CJK Ideograph */ + [0x6038, 0x6038], /* CJK Ideograph */ + [0x6039, 0x6039], /* CJK Ideograph */ + [0x603a, 0x603a], /* CJK Ideograph */ + [0x603b, 0x603b], /* CJK Ideograph */ + [0x603c, 0x603c], /* CJK Ideograph */ + [0x603d, 0x603d], /* CJK Ideograph */ + [0x603e, 0x603e], /* CJK Ideograph */ + [0x603f, 0x603f], /* CJK Ideograph */ + [0x6040, 0x6040], /* CJK Ideograph */ + [0x6041, 0x6041], /* CJK Ideograph */ + [0x6042, 0x6042], /* CJK Ideograph */ + [0x6043, 0x6043], /* CJK Ideograph */ + [0x6044, 0x6044], /* CJK Ideograph */ + [0x6045, 0x6045], /* CJK Ideograph */ + [0x6046, 0x6046], /* CJK Ideograph */ + [0x6047, 0x6047], /* CJK Ideograph */ + [0x6048, 0x6048], /* CJK Ideograph */ + [0x6049, 0x6049], /* CJK Ideograph */ + [0x604a, 0x604a], /* CJK Ideograph */ + [0x604b, 0x604b], /* CJK Ideograph */ + [0x604c, 0x604c], /* CJK Ideograph */ + [0x604d, 0x604d], /* CJK Ideograph */ + [0x604e, 0x604e], /* CJK Ideograph */ + [0x604f, 0x604f], /* CJK Ideograph */ + [0x6050, 0x6050], /* CJK Ideograph */ + [0x6051, 0x6051], /* CJK Ideograph */ + [0x6052, 0x6052], /* CJK Ideograph */ + [0x6053, 0x6053], /* CJK Ideograph */ + [0x6054, 0x6054], /* CJK Ideograph */ + [0x6055, 0x6055], /* CJK Ideograph */ + [0x6056, 0x6056], /* CJK Ideograph */ + [0x6057, 0x6057], /* CJK Ideograph */ + [0x6058, 0x6058], /* CJK Ideograph */ + [0x6059, 0x6059], /* CJK Ideograph */ + [0x605a, 0x605a], /* CJK Ideograph */ + [0x605b, 0x605b], /* CJK Ideograph */ + [0x605c, 0x605c], /* CJK Ideograph */ + [0x605d, 0x605d], /* CJK Ideograph */ + [0x605e, 0x605e], /* CJK Ideograph */ + [0x605f, 0x605f], /* CJK Ideograph */ + [0x6060, 0x6060], /* CJK Ideograph */ + [0x6061, 0x6061], /* CJK Ideograph */ + [0x6062, 0x6062], /* CJK Ideograph */ + [0x6063, 0x6063], /* CJK Ideograph */ + [0x6064, 0x6064], /* CJK Ideograph */ + [0x6065, 0x6065], /* CJK Ideograph */ + [0x6066, 0x6066], /* CJK Ideograph */ + [0x6067, 0x6067], /* CJK Ideograph */ + [0x6068, 0x6068], /* CJK Ideograph */ + [0x6069, 0x6069], /* CJK Ideograph */ + [0x606a, 0x606a], /* CJK Ideograph */ + [0x606b, 0x606b], /* CJK Ideograph */ + [0x606c, 0x606c], /* CJK Ideograph */ + [0x606d, 0x606d], /* CJK Ideograph */ + [0x606e, 0x606e], /* CJK Ideograph */ + [0x606f, 0x606f], /* CJK Ideograph */ + [0x6070, 0x6070], /* CJK Ideograph */ + [0x6071, 0x6071], /* CJK Ideograph */ + [0x6072, 0x6072], /* CJK Ideograph */ + [0x6073, 0x6073], /* CJK Ideograph */ + [0x6074, 0x6074], /* CJK Ideograph */ + [0x6075, 0x6075], /* CJK Ideograph */ + [0x6076, 0x6076], /* CJK Ideograph */ + [0x6077, 0x6077], /* CJK Ideograph */ + [0x6078, 0x6078], /* CJK Ideograph */ + [0x6079, 0x6079], /* CJK Ideograph */ + [0x607a, 0x607a], /* CJK Ideograph */ + [0x607b, 0x607b], /* CJK Ideograph */ + [0x607c, 0x607c], /* CJK Ideograph */ + [0x607d, 0x607d], /* CJK Ideograph */ + [0x607e, 0x607e], /* CJK Ideograph */ + [0x607f, 0x607f], /* CJK Ideograph */ + [0x6080, 0x6080], /* CJK Ideograph */ + [0x6081, 0x6081], /* CJK Ideograph */ + [0x6082, 0x6082], /* CJK Ideograph */ + [0x6083, 0x6083], /* CJK Ideograph */ + [0x6084, 0x6084], /* CJK Ideograph */ + [0x6085, 0x6085], /* CJK Ideograph */ + [0x6086, 0x6086], /* CJK Ideograph */ + [0x6087, 0x6087], /* CJK Ideograph */ + [0x6088, 0x6088], /* CJK Ideograph */ + [0x6089, 0x6089], /* CJK Ideograph */ + [0x608a, 0x608a], /* CJK Ideograph */ + [0x608b, 0x608b], /* CJK Ideograph */ + [0x608c, 0x608c], /* CJK Ideograph */ + [0x608d, 0x608d], /* CJK Ideograph */ + [0x608e, 0x608e], /* CJK Ideograph */ + [0x608f, 0x608f], /* CJK Ideograph */ + [0x6090, 0x6090], /* CJK Ideograph */ + [0x6091, 0x6091], /* CJK Ideograph */ + [0x6092, 0x6092], /* CJK Ideograph */ + [0x6093, 0x6093], /* CJK Ideograph */ + [0x6094, 0x6094], /* CJK Ideograph */ + [0x6095, 0x6095], /* CJK Ideograph */ + [0x6096, 0x6096], /* CJK Ideograph */ + [0x6097, 0x6097], /* CJK Ideograph */ + [0x6098, 0x6098], /* CJK Ideograph */ + [0x6099, 0x6099], /* CJK Ideograph */ + [0x609a, 0x609a], /* CJK Ideograph */ + [0x609b, 0x609b], /* CJK Ideograph */ + [0x609c, 0x609c], /* CJK Ideograph */ + [0x609d, 0x609d], /* CJK Ideograph */ + [0x609e, 0x609e], /* CJK Ideograph */ + [0x609f, 0x609f], /* CJK Ideograph */ + [0x60a0, 0x60a0], /* CJK Ideograph */ + [0x60a1, 0x60a1], /* CJK Ideograph */ + [0x60a2, 0x60a2], /* CJK Ideograph */ + [0x60a3, 0x60a3], /* CJK Ideograph */ + [0x60a4, 0x60a4], /* CJK Ideograph */ + [0x60a5, 0x60a5], /* CJK Ideograph */ + [0x60a6, 0x60a6], /* CJK Ideograph */ + [0x60a7, 0x60a7], /* CJK Ideograph */ + [0x60a8, 0x60a8], /* CJK Ideograph */ + [0x60a9, 0x60a9], /* CJK Ideograph */ + [0x60aa, 0x60aa], /* CJK Ideograph */ + [0x60ab, 0x60ab], /* CJK Ideograph */ + [0x60ac, 0x60ac], /* CJK Ideograph */ + [0x60ad, 0x60ad], /* CJK Ideograph */ + [0x60ae, 0x60ae], /* CJK Ideograph */ + [0x60af, 0x60af], /* CJK Ideograph */ + [0x60b0, 0x60b0], /* CJK Ideograph */ + [0x60b1, 0x60b1], /* CJK Ideograph */ + [0x60b2, 0x60b2], /* CJK Ideograph */ + [0x60b3, 0x60b3], /* CJK Ideograph */ + [0x60b4, 0x60b4], /* CJK Ideograph */ + [0x60b5, 0x60b5], /* CJK Ideograph */ + [0x60b6, 0x60b6], /* CJK Ideograph */ + [0x60b7, 0x60b7], /* CJK Ideograph */ + [0x60b8, 0x60b8], /* CJK Ideograph */ + [0x60b9, 0x60b9], /* CJK Ideograph */ + [0x60ba, 0x60ba], /* CJK Ideograph */ + [0x60bb, 0x60bb], /* CJK Ideograph */ + [0x60bc, 0x60bc], /* CJK Ideograph */ + [0x60bd, 0x60bd], /* CJK Ideograph */ + [0x60be, 0x60be], /* CJK Ideograph */ + [0x60bf, 0x60bf], /* CJK Ideograph */ + [0x60c0, 0x60c0], /* CJK Ideograph */ + [0x60c1, 0x60c1], /* CJK Ideograph */ + [0x60c2, 0x60c2], /* CJK Ideograph */ + [0x60c3, 0x60c3], /* CJK Ideograph */ + [0x60c4, 0x60c4], /* CJK Ideograph */ + [0x60c5, 0x60c5], /* CJK Ideograph */ + [0x60c6, 0x60c6], /* CJK Ideograph */ + [0x60c7, 0x60c7], /* CJK Ideograph */ + [0x60c8, 0x60c8], /* CJK Ideograph */ + [0x60c9, 0x60c9], /* CJK Ideograph */ + [0x60ca, 0x60ca], /* CJK Ideograph */ + [0x60cb, 0x60cb], /* CJK Ideograph */ + [0x60cc, 0x60cc], /* CJK Ideograph */ + [0x60cd, 0x60cd], /* CJK Ideograph */ + [0x60ce, 0x60ce], /* CJK Ideograph */ + [0x60cf, 0x60cf], /* CJK Ideograph */ + [0x60d0, 0x60d0], /* CJK Ideograph */ + [0x60d1, 0x60d1], /* CJK Ideograph */ + [0x60d2, 0x60d2], /* CJK Ideograph */ + [0x60d3, 0x60d3], /* CJK Ideograph */ + [0x60d4, 0x60d4], /* CJK Ideograph */ + [0x60d5, 0x60d5], /* CJK Ideograph */ + [0x60d6, 0x60d6], /* CJK Ideograph */ + [0x60d7, 0x60d7], /* CJK Ideograph */ + [0x60d8, 0x60d8], /* CJK Ideograph */ + [0x60d9, 0x60d9], /* CJK Ideograph */ + [0x60da, 0x60da], /* CJK Ideograph */ + [0x60db, 0x60db], /* CJK Ideograph */ + [0x60dc, 0x60dc], /* CJK Ideograph */ + [0x60dd, 0x60dd], /* CJK Ideograph */ + [0x60de, 0x60de], /* CJK Ideograph */ + [0x60df, 0x60df], /* CJK Ideograph */ + [0x60e0, 0x60e0], /* CJK Ideograph */ + [0x60e1, 0x60e1], /* CJK Ideograph */ + [0x60e2, 0x60e2], /* CJK Ideograph */ + [0x60e3, 0x60e3], /* CJK Ideograph */ + [0x60e4, 0x60e4], /* CJK Ideograph */ + [0x60e5, 0x60e5], /* CJK Ideograph */ + [0x60e6, 0x60e6], /* CJK Ideograph */ + [0x60e7, 0x60e7], /* CJK Ideograph */ + [0x60e8, 0x60e8], /* CJK Ideograph */ + [0x60e9, 0x60e9], /* CJK Ideograph */ + [0x60ea, 0x60ea], /* CJK Ideograph */ + [0x60eb, 0x60eb], /* CJK Ideograph */ + [0x60ec, 0x60ec], /* CJK Ideograph */ + [0x60ed, 0x60ed], /* CJK Ideograph */ + [0x60ee, 0x60ee], /* CJK Ideograph */ + [0x60ef, 0x60ef], /* CJK Ideograph */ + [0x60f0, 0x60f0], /* CJK Ideograph */ + [0x60f1, 0x60f1], /* CJK Ideograph */ + [0x60f2, 0x60f2], /* CJK Ideograph */ + [0x60f3, 0x60f3], /* CJK Ideograph */ + [0x60f4, 0x60f4], /* CJK Ideograph */ + [0x60f5, 0x60f5], /* CJK Ideograph */ + [0x60f6, 0x60f6], /* CJK Ideograph */ + [0x60f7, 0x60f7], /* CJK Ideograph */ + [0x60f8, 0x60f8], /* CJK Ideograph */ + [0x60f9, 0x60f9], /* CJK Ideograph */ + [0x60fa, 0x60fa], /* CJK Ideograph */ + [0x60fb, 0x60fb], /* CJK Ideograph */ + [0x60fc, 0x60fc], /* CJK Ideograph */ + [0x60fd, 0x60fd], /* CJK Ideograph */ + [0x60fe, 0x60fe], /* CJK Ideograph */ + [0x60ff, 0x60ff], /* CJK Ideograph */ + [0x6100, 0x6100], /* CJK Ideograph */ + [0x6101, 0x6101], /* CJK Ideograph */ + [0x6102, 0x6102], /* CJK Ideograph */ + [0x6103, 0x6103], /* CJK Ideograph */ + [0x6104, 0x6104], /* CJK Ideograph */ + [0x6105, 0x6105], /* CJK Ideograph */ + [0x6106, 0x6106], /* CJK Ideograph */ + [0x6107, 0x6107], /* CJK Ideograph */ + [0x6108, 0x6108], /* CJK Ideograph */ + [0x6109, 0x6109], /* CJK Ideograph */ + [0x610a, 0x610a], /* CJK Ideograph */ + [0x610b, 0x610b], /* CJK Ideograph */ + [0x610c, 0x610c], /* CJK Ideograph */ + [0x610d, 0x610d], /* CJK Ideograph */ + [0x610e, 0x610e], /* CJK Ideograph */ + [0x610f, 0x610f], /* CJK Ideograph */ + [0x6110, 0x6110], /* CJK Ideograph */ + [0x6111, 0x6111], /* CJK Ideograph */ + [0x6112, 0x6112], /* CJK Ideograph */ + [0x6113, 0x6113], /* CJK Ideograph */ + [0x6114, 0x6114], /* CJK Ideograph */ + [0x6115, 0x6115], /* CJK Ideograph */ + [0x6116, 0x6116], /* CJK Ideograph */ + [0x6117, 0x6117], /* CJK Ideograph */ + [0x6118, 0x6118], /* CJK Ideograph */ + [0x6119, 0x6119], /* CJK Ideograph */ + [0x611a, 0x611a], /* CJK Ideograph */ + [0x611b, 0x611b], /* CJK Ideograph */ + [0x611c, 0x611c], /* CJK Ideograph */ + [0x611d, 0x611d], /* CJK Ideograph */ + [0x611e, 0x611e], /* CJK Ideograph */ + [0x611f, 0x611f], /* CJK Ideograph */ + [0x6120, 0x6120], /* CJK Ideograph */ + [0x6121, 0x6121], /* CJK Ideograph */ + [0x6122, 0x6122], /* CJK Ideograph */ + [0x6123, 0x6123], /* CJK Ideograph */ + [0x6124, 0x6124], /* CJK Ideograph */ + [0x6125, 0x6125], /* CJK Ideograph */ + [0x6126, 0x6126], /* CJK Ideograph */ + [0x6127, 0x6127], /* CJK Ideograph */ + [0x6128, 0x6128], /* CJK Ideograph */ + [0x6129, 0x6129], /* CJK Ideograph */ + [0x612a, 0x612a], /* CJK Ideograph */ + [0x612b, 0x612b], /* CJK Ideograph */ + [0x612c, 0x612c], /* CJK Ideograph */ + [0x612d, 0x612d], /* CJK Ideograph */ + [0x612e, 0x612e], /* CJK Ideograph */ + [0x612f, 0x612f], /* CJK Ideograph */ + [0x6130, 0x6130], /* CJK Ideograph */ + [0x6131, 0x6131], /* CJK Ideograph */ + [0x6132, 0x6132], /* CJK Ideograph */ + [0x6133, 0x6133], /* CJK Ideograph */ + [0x6134, 0x6134], /* CJK Ideograph */ + [0x6135, 0x6135], /* CJK Ideograph */ + [0x6136, 0x6136], /* CJK Ideograph */ + [0x6137, 0x6137], /* CJK Ideograph */ + [0x6138, 0x6138], /* CJK Ideograph */ + [0x6139, 0x6139], /* CJK Ideograph */ + [0x613a, 0x613a], /* CJK Ideograph */ + [0x613b, 0x613b], /* CJK Ideograph */ + [0x613c, 0x613c], /* CJK Ideograph */ + [0x613d, 0x613d], /* CJK Ideograph */ + [0x613e, 0x613e], /* CJK Ideograph */ + [0x613f, 0x613f], /* CJK Ideograph */ + [0x6140, 0x6140], /* CJK Ideograph */ + [0x6141, 0x6141], /* CJK Ideograph */ + [0x6142, 0x6142], /* CJK Ideograph */ + [0x6143, 0x6143], /* CJK Ideograph */ + [0x6144, 0x6144], /* CJK Ideograph */ + [0x6145, 0x6145], /* CJK Ideograph */ + [0x6146, 0x6146], /* CJK Ideograph */ + [0x6147, 0x6147], /* CJK Ideograph */ + [0x6148, 0x6148], /* CJK Ideograph */ + [0x6149, 0x6149], /* CJK Ideograph */ + [0x614a, 0x614a], /* CJK Ideograph */ + [0x614b, 0x614b], /* CJK Ideograph */ + [0x614c, 0x614c], /* CJK Ideograph */ + [0x614d, 0x614d], /* CJK Ideograph */ + [0x614e, 0x614e], /* CJK Ideograph */ + [0x614f, 0x614f], /* CJK Ideograph */ + [0x6150, 0x6150], /* CJK Ideograph */ + [0x6151, 0x6151], /* CJK Ideograph */ + [0x6152, 0x6152], /* CJK Ideograph */ + [0x6153, 0x6153], /* CJK Ideograph */ + [0x6154, 0x6154], /* CJK Ideograph */ + [0x6155, 0x6155], /* CJK Ideograph */ + [0x6156, 0x6156], /* CJK Ideograph */ + [0x6157, 0x6157], /* CJK Ideograph */ + [0x6158, 0x6158], /* CJK Ideograph */ + [0x6159, 0x6159], /* CJK Ideograph */ + [0x615a, 0x615a], /* CJK Ideograph */ + [0x615b, 0x615b], /* CJK Ideograph */ + [0x615c, 0x615c], /* CJK Ideograph */ + [0x615d, 0x615d], /* CJK Ideograph */ + [0x615e, 0x615e], /* CJK Ideograph */ + [0x615f, 0x615f], /* CJK Ideograph */ + [0x6160, 0x6160], /* CJK Ideograph */ + [0x6161, 0x6161], /* CJK Ideograph */ + [0x6162, 0x6162], /* CJK Ideograph */ + [0x6163, 0x6163], /* CJK Ideograph */ + [0x6164, 0x6164], /* CJK Ideograph */ + [0x6165, 0x6165], /* CJK Ideograph */ + [0x6166, 0x6166], /* CJK Ideograph */ + [0x6167, 0x6167], /* CJK Ideograph */ + [0x6168, 0x6168], /* CJK Ideograph */ + [0x6169, 0x6169], /* CJK Ideograph */ + [0x616a, 0x616a], /* CJK Ideograph */ + [0x616b, 0x616b], /* CJK Ideograph */ + [0x616c, 0x616c], /* CJK Ideograph */ + [0x616d, 0x616d], /* CJK Ideograph */ + [0x616e, 0x616e], /* CJK Ideograph */ + [0x616f, 0x616f], /* CJK Ideograph */ + [0x6170, 0x6170], /* CJK Ideograph */ + [0x6171, 0x6171], /* CJK Ideograph */ + [0x6172, 0x6172], /* CJK Ideograph */ + [0x6173, 0x6173], /* CJK Ideograph */ + [0x6174, 0x6174], /* CJK Ideograph */ + [0x6175, 0x6175], /* CJK Ideograph */ + [0x6176, 0x6176], /* CJK Ideograph */ + [0x6177, 0x6177], /* CJK Ideograph */ + [0x6178, 0x6178], /* CJK Ideograph */ + [0x6179, 0x6179], /* CJK Ideograph */ + [0x617a, 0x617a], /* CJK Ideograph */ + [0x617b, 0x617b], /* CJK Ideograph */ + [0x617c, 0x617c], /* CJK Ideograph */ + [0x617d, 0x617d], /* CJK Ideograph */ + [0x617e, 0x617e], /* CJK Ideograph */ + [0x617f, 0x617f], /* CJK Ideograph */ + [0x6180, 0x6180], /* CJK Ideograph */ + [0x6181, 0x6181], /* CJK Ideograph */ + [0x6182, 0x6182], /* CJK Ideograph */ + [0x6183, 0x6183], /* CJK Ideograph */ + [0x6184, 0x6184], /* CJK Ideograph */ + [0x6185, 0x6185], /* CJK Ideograph */ + [0x6186, 0x6186], /* CJK Ideograph */ + [0x6187, 0x6187], /* CJK Ideograph */ + [0x6188, 0x6188], /* CJK Ideograph */ + [0x6189, 0x6189], /* CJK Ideograph */ + [0x618a, 0x618a], /* CJK Ideograph */ + [0x618b, 0x618b], /* CJK Ideograph */ + [0x618c, 0x618c], /* CJK Ideograph */ + [0x618d, 0x618d], /* CJK Ideograph */ + [0x618e, 0x618e], /* CJK Ideograph */ + [0x618f, 0x618f], /* CJK Ideograph */ + [0x6190, 0x6190], /* CJK Ideograph */ + [0x6191, 0x6191], /* CJK Ideograph */ + [0x6192, 0x6192], /* CJK Ideograph */ + [0x6193, 0x6193], /* CJK Ideograph */ + [0x6194, 0x6194], /* CJK Ideograph */ + [0x6195, 0x6195], /* CJK Ideograph */ + [0x6196, 0x6196], /* CJK Ideograph */ + [0x6197, 0x6197], /* CJK Ideograph */ + [0x6198, 0x6198], /* CJK Ideograph */ + [0x6199, 0x6199], /* CJK Ideograph */ + [0x619a, 0x619a], /* CJK Ideograph */ + [0x619b, 0x619b], /* CJK Ideograph */ + [0x619c, 0x619c], /* CJK Ideograph */ + [0x619d, 0x619d], /* CJK Ideograph */ + [0x619e, 0x619e], /* CJK Ideograph */ + [0x619f, 0x619f], /* CJK Ideograph */ + [0x61a0, 0x61a0], /* CJK Ideograph */ + [0x61a1, 0x61a1], /* CJK Ideograph */ + [0x61a2, 0x61a2], /* CJK Ideograph */ + [0x61a3, 0x61a3], /* CJK Ideograph */ + [0x61a4, 0x61a4], /* CJK Ideograph */ + [0x61a5, 0x61a5], /* CJK Ideograph */ + [0x61a6, 0x61a6], /* CJK Ideograph */ + [0x61a7, 0x61a7], /* CJK Ideograph */ + [0x61a8, 0x61a8], /* CJK Ideograph */ + [0x61a9, 0x61a9], /* CJK Ideograph */ + [0x61aa, 0x61aa], /* CJK Ideograph */ + [0x61ab, 0x61ab], /* CJK Ideograph */ + [0x61ac, 0x61ac], /* CJK Ideograph */ + [0x61ad, 0x61ad], /* CJK Ideograph */ + [0x61ae, 0x61ae], /* CJK Ideograph */ + [0x61af, 0x61af], /* CJK Ideograph */ + [0x61b0, 0x61b0], /* CJK Ideograph */ + [0x61b1, 0x61b1], /* CJK Ideograph */ + [0x61b2, 0x61b2], /* CJK Ideograph */ + [0x61b3, 0x61b3], /* CJK Ideograph */ + [0x61b4, 0x61b4], /* CJK Ideograph */ + [0x61b5, 0x61b5], /* CJK Ideograph */ + [0x61b6, 0x61b6], /* CJK Ideograph */ + [0x61b7, 0x61b7], /* CJK Ideograph */ + [0x61b8, 0x61b8], /* CJK Ideograph */ + [0x61b9, 0x61b9], /* CJK Ideograph */ + [0x61ba, 0x61ba], /* CJK Ideograph */ + [0x61bb, 0x61bb], /* CJK Ideograph */ + [0x61bc, 0x61bc], /* CJK Ideograph */ + [0x61bd, 0x61bd], /* CJK Ideograph */ + [0x61be, 0x61be], /* CJK Ideograph */ + [0x61bf, 0x61bf], /* CJK Ideograph */ + [0x61c0, 0x61c0], /* CJK Ideograph */ + [0x61c1, 0x61c1], /* CJK Ideograph */ + [0x61c2, 0x61c2], /* CJK Ideograph */ + [0x61c3, 0x61c3], /* CJK Ideograph */ + [0x61c4, 0x61c4], /* CJK Ideograph */ + [0x61c5, 0x61c5], /* CJK Ideograph */ + [0x61c6, 0x61c6], /* CJK Ideograph */ + [0x61c7, 0x61c7], /* CJK Ideograph */ + [0x61c8, 0x61c8], /* CJK Ideograph */ + [0x61c9, 0x61c9], /* CJK Ideograph */ + [0x61ca, 0x61ca], /* CJK Ideograph */ + [0x61cb, 0x61cb], /* CJK Ideograph */ + [0x61cc, 0x61cc], /* CJK Ideograph */ + [0x61cd, 0x61cd], /* CJK Ideograph */ + [0x61ce, 0x61ce], /* CJK Ideograph */ + [0x61cf, 0x61cf], /* CJK Ideograph */ + [0x61d0, 0x61d0], /* CJK Ideograph */ + [0x61d1, 0x61d1], /* CJK Ideograph */ + [0x61d2, 0x61d2], /* CJK Ideograph */ + [0x61d3, 0x61d3], /* CJK Ideograph */ + [0x61d4, 0x61d4], /* CJK Ideograph */ + [0x61d5, 0x61d5], /* CJK Ideograph */ + [0x61d6, 0x61d6], /* CJK Ideograph */ + [0x61d7, 0x61d7], /* CJK Ideograph */ + [0x61d8, 0x61d8], /* CJK Ideograph */ + [0x61d9, 0x61d9], /* CJK Ideograph */ + [0x61da, 0x61da], /* CJK Ideograph */ + [0x61db, 0x61db], /* CJK Ideograph */ + [0x61dc, 0x61dc], /* CJK Ideograph */ + [0x61dd, 0x61dd], /* CJK Ideograph */ + [0x61de, 0x61de], /* CJK Ideograph */ + [0x61df, 0x61df], /* CJK Ideograph */ + [0x61e0, 0x61e0], /* CJK Ideograph */ + [0x61e1, 0x61e1], /* CJK Ideograph */ + [0x61e2, 0x61e2], /* CJK Ideograph */ + [0x61e3, 0x61e3], /* CJK Ideograph */ + [0x61e4, 0x61e4], /* CJK Ideograph */ + [0x61e5, 0x61e5], /* CJK Ideograph */ + [0x61e6, 0x61e6], /* CJK Ideograph */ + [0x61e7, 0x61e7], /* CJK Ideograph */ + [0x61e8, 0x61e8], /* CJK Ideograph */ + [0x61e9, 0x61e9], /* CJK Ideograph */ + [0x61ea, 0x61ea], /* CJK Ideograph */ + [0x61eb, 0x61eb], /* CJK Ideograph */ + [0x61ec, 0x61ec], /* CJK Ideograph */ + [0x61ed, 0x61ed], /* CJK Ideograph */ + [0x61ee, 0x61ee], /* CJK Ideograph */ + [0x61ef, 0x61ef], /* CJK Ideograph */ + [0x61f0, 0x61f0], /* CJK Ideograph */ + [0x61f1, 0x61f1], /* CJK Ideograph */ + [0x61f2, 0x61f2], /* CJK Ideograph */ + [0x61f3, 0x61f3], /* CJK Ideograph */ + [0x61f4, 0x61f4], /* CJK Ideograph */ + [0x61f5, 0x61f5], /* CJK Ideograph */ + [0x61f6, 0x61f6], /* CJK Ideograph */ + [0x61f7, 0x61f7], /* CJK Ideograph */ + [0x61f8, 0x61f8], /* CJK Ideograph */ + [0x61f9, 0x61f9], /* CJK Ideograph */ + [0x61fa, 0x61fa], /* CJK Ideograph */ + [0x61fb, 0x61fb], /* CJK Ideograph */ + [0x61fc, 0x61fc], /* CJK Ideograph */ + [0x61fd, 0x61fd], /* CJK Ideograph */ + [0x61fe, 0x61fe], /* CJK Ideograph */ + [0x61ff, 0x61ff], /* CJK Ideograph */ + [0x6200, 0x6200], /* CJK Ideograph */ + [0x6201, 0x6201], /* CJK Ideograph */ + [0x6202, 0x6202], /* CJK Ideograph */ + [0x6203, 0x6203], /* CJK Ideograph */ + [0x6204, 0x6204], /* CJK Ideograph */ + [0x6205, 0x6205], /* CJK Ideograph */ + [0x6206, 0x6206], /* CJK Ideograph */ + [0x6207, 0x6207], /* CJK Ideograph */ + [0x6208, 0x6208], /* CJK Ideograph */ + [0x6209, 0x6209], /* CJK Ideograph */ + [0x620a, 0x620a], /* CJK Ideograph */ + [0x620b, 0x620b], /* CJK Ideograph */ + [0x620c, 0x620c], /* CJK Ideograph */ + [0x620d, 0x620d], /* CJK Ideograph */ + [0x620e, 0x620e], /* CJK Ideograph */ + [0x620f, 0x620f], /* CJK Ideograph */ + [0x6210, 0x6210], /* CJK Ideograph */ + [0x6211, 0x6211], /* CJK Ideograph */ + [0x6212, 0x6212], /* CJK Ideograph */ + [0x6213, 0x6213], /* CJK Ideograph */ + [0x6214, 0x6214], /* CJK Ideograph */ + [0x6215, 0x6215], /* CJK Ideograph */ + [0x6216, 0x6216], /* CJK Ideograph */ + [0x6217, 0x6217], /* CJK Ideograph */ + [0x6218, 0x6218], /* CJK Ideograph */ + [0x6219, 0x6219], /* CJK Ideograph */ + [0x621a, 0x621a], /* CJK Ideograph */ + [0x621b, 0x621b], /* CJK Ideograph */ + [0x621c, 0x621c], /* CJK Ideograph */ + [0x621d, 0x621d], /* CJK Ideograph */ + [0x621e, 0x621e], /* CJK Ideograph */ + [0x621f, 0x621f], /* CJK Ideograph */ + [0x6220, 0x6220], /* CJK Ideograph */ + [0x6221, 0x6221], /* CJK Ideograph */ + [0x6222, 0x6222], /* CJK Ideograph */ + [0x6223, 0x6223], /* CJK Ideograph */ + [0x6224, 0x6224], /* CJK Ideograph */ + [0x6225, 0x6225], /* CJK Ideograph */ + [0x6226, 0x6226], /* CJK Ideograph */ + [0x6227, 0x6227], /* CJK Ideograph */ + [0x6228, 0x6228], /* CJK Ideograph */ + [0x6229, 0x6229], /* CJK Ideograph */ + [0x622a, 0x622a], /* CJK Ideograph */ + [0x622b, 0x622b], /* CJK Ideograph */ + [0x622c, 0x622c], /* CJK Ideograph */ + [0x622d, 0x622d], /* CJK Ideograph */ + [0x622e, 0x622e], /* CJK Ideograph */ + [0x622f, 0x622f], /* CJK Ideograph */ + [0x6230, 0x6230], /* CJK Ideograph */ + [0x6231, 0x6231], /* CJK Ideograph */ + [0x6232, 0x6232], /* CJK Ideograph */ + [0x6233, 0x6233], /* CJK Ideograph */ + [0x6234, 0x6234], /* CJK Ideograph */ + [0x6235, 0x6235], /* CJK Ideograph */ + [0x6236, 0x6236], /* CJK Ideograph */ + [0x6237, 0x6237], /* CJK Ideograph */ + [0x6238, 0x6238], /* CJK Ideograph */ + [0x6239, 0x6239], /* CJK Ideograph */ + [0x623a, 0x623a], /* CJK Ideograph */ + [0x623b, 0x623b], /* CJK Ideograph */ + [0x623c, 0x623c], /* CJK Ideograph */ + [0x623d, 0x623d], /* CJK Ideograph */ + [0x623e, 0x623e], /* CJK Ideograph */ + [0x623f, 0x623f], /* CJK Ideograph */ + [0x6240, 0x6240], /* CJK Ideograph */ + [0x6241, 0x6241], /* CJK Ideograph */ + [0x6242, 0x6242], /* CJK Ideograph */ + [0x6243, 0x6243], /* CJK Ideograph */ + [0x6244, 0x6244], /* CJK Ideograph */ + [0x6245, 0x6245], /* CJK Ideograph */ + [0x6246, 0x6246], /* CJK Ideograph */ + [0x6247, 0x6247], /* CJK Ideograph */ + [0x6248, 0x6248], /* CJK Ideograph */ + [0x6249, 0x6249], /* CJK Ideograph */ + [0x624a, 0x624a], /* CJK Ideograph */ + [0x624b, 0x624b], /* CJK Ideograph */ + [0x624c, 0x624c], /* CJK Ideograph */ + [0x624d, 0x624d], /* CJK Ideograph */ + [0x624e, 0x624e], /* CJK Ideograph */ + [0x624f, 0x624f], /* CJK Ideograph */ + [0x6250, 0x6250], /* CJK Ideograph */ + [0x6251, 0x6251], /* CJK Ideograph */ + [0x6252, 0x6252], /* CJK Ideograph */ + [0x6253, 0x6253], /* CJK Ideograph */ + [0x6254, 0x6254], /* CJK Ideograph */ + [0x6255, 0x6255], /* CJK Ideograph */ + [0x6256, 0x6256], /* CJK Ideograph */ + [0x6257, 0x6257], /* CJK Ideograph */ + [0x6258, 0x6258], /* CJK Ideograph */ + [0x6259, 0x6259], /* CJK Ideograph */ + [0x625a, 0x625a], /* CJK Ideograph */ + [0x625b, 0x625b], /* CJK Ideograph */ + [0x625c, 0x625c], /* CJK Ideograph */ + [0x625d, 0x625d], /* CJK Ideograph */ + [0x625e, 0x625e], /* CJK Ideograph */ + [0x625f, 0x625f], /* CJK Ideograph */ + [0x6260, 0x6260], /* CJK Ideograph */ + [0x6261, 0x6261], /* CJK Ideograph */ + [0x6262, 0x6262], /* CJK Ideograph */ + [0x6263, 0x6263], /* CJK Ideograph */ + [0x6264, 0x6264], /* CJK Ideograph */ + [0x6265, 0x6265], /* CJK Ideograph */ + [0x6266, 0x6266], /* CJK Ideograph */ + [0x6267, 0x6267], /* CJK Ideograph */ + [0x6268, 0x6268], /* CJK Ideograph */ + [0x6269, 0x6269], /* CJK Ideograph */ + [0x626a, 0x626a], /* CJK Ideograph */ + [0x626b, 0x626b], /* CJK Ideograph */ + [0x626c, 0x626c], /* CJK Ideograph */ + [0x626d, 0x626d], /* CJK Ideograph */ + [0x626e, 0x626e], /* CJK Ideograph */ + [0x626f, 0x626f], /* CJK Ideograph */ + [0x6270, 0x6270], /* CJK Ideograph */ + [0x6271, 0x6271], /* CJK Ideograph */ + [0x6272, 0x6272], /* CJK Ideograph */ + [0x6273, 0x6273], /* CJK Ideograph */ + [0x6274, 0x6274], /* CJK Ideograph */ + [0x6275, 0x6275], /* CJK Ideograph */ + [0x6276, 0x6276], /* CJK Ideograph */ + [0x6277, 0x6277], /* CJK Ideograph */ + [0x6278, 0x6278], /* CJK Ideograph */ + [0x6279, 0x6279], /* CJK Ideograph */ + [0x627a, 0x627a], /* CJK Ideograph */ + [0x627b, 0x627b], /* CJK Ideograph */ + [0x627c, 0x627c], /* CJK Ideograph */ + [0x627d, 0x627d], /* CJK Ideograph */ + [0x627e, 0x627e], /* CJK Ideograph */ + [0x627f, 0x627f], /* CJK Ideograph */ + [0x6280, 0x6280], /* CJK Ideograph */ + [0x6281, 0x6281], /* CJK Ideograph */ + [0x6282, 0x6282], /* CJK Ideograph */ + [0x6283, 0x6283], /* CJK Ideograph */ + [0x6284, 0x6284], /* CJK Ideograph */ + [0x6285, 0x6285], /* CJK Ideograph */ + [0x6286, 0x6286], /* CJK Ideograph */ + [0x6287, 0x6287], /* CJK Ideograph */ + [0x6288, 0x6288], /* CJK Ideograph */ + [0x6289, 0x6289], /* CJK Ideograph */ + [0x628a, 0x628a], /* CJK Ideograph */ + [0x628b, 0x628b], /* CJK Ideograph */ + [0x628c, 0x628c], /* CJK Ideograph */ + [0x628d, 0x628d], /* CJK Ideograph */ + [0x628e, 0x628e], /* CJK Ideograph */ + [0x628f, 0x628f], /* CJK Ideograph */ + [0x6290, 0x6290], /* CJK Ideograph */ + [0x6291, 0x6291], /* CJK Ideograph */ + [0x6292, 0x6292], /* CJK Ideograph */ + [0x6293, 0x6293], /* CJK Ideograph */ + [0x6294, 0x6294], /* CJK Ideograph */ + [0x6295, 0x6295], /* CJK Ideograph */ + [0x6296, 0x6296], /* CJK Ideograph */ + [0x6297, 0x6297], /* CJK Ideograph */ + [0x6298, 0x6298], /* CJK Ideograph */ + [0x6299, 0x6299], /* CJK Ideograph */ + [0x629a, 0x629a], /* CJK Ideograph */ + [0x629b, 0x629b], /* CJK Ideograph */ + [0x629c, 0x629c], /* CJK Ideograph */ + [0x629d, 0x629d], /* CJK Ideograph */ + [0x629e, 0x629e], /* CJK Ideograph */ + [0x629f, 0x629f], /* CJK Ideograph */ + [0x62a0, 0x62a0], /* CJK Ideograph */ + [0x62a1, 0x62a1], /* CJK Ideograph */ + [0x62a2, 0x62a2], /* CJK Ideograph */ + [0x62a3, 0x62a3], /* CJK Ideograph */ + [0x62a4, 0x62a4], /* CJK Ideograph */ + [0x62a5, 0x62a5], /* CJK Ideograph */ + [0x62a6, 0x62a6], /* CJK Ideograph */ + [0x62a7, 0x62a7], /* CJK Ideograph */ + [0x62a8, 0x62a8], /* CJK Ideograph */ + [0x62a9, 0x62a9], /* CJK Ideograph */ + [0x62aa, 0x62aa], /* CJK Ideograph */ + [0x62ab, 0x62ab], /* CJK Ideograph */ + [0x62ac, 0x62ac], /* CJK Ideograph */ + [0x62ad, 0x62ad], /* CJK Ideograph */ + [0x62ae, 0x62ae], /* CJK Ideograph */ + [0x62af, 0x62af], /* CJK Ideograph */ + [0x62b0, 0x62b0], /* CJK Ideograph */ + [0x62b1, 0x62b1], /* CJK Ideograph */ + [0x62b2, 0x62b2], /* CJK Ideograph */ + [0x62b3, 0x62b3], /* CJK Ideograph */ + [0x62b4, 0x62b4], /* CJK Ideograph */ + [0x62b5, 0x62b5], /* CJK Ideograph */ + [0x62b6, 0x62b6], /* CJK Ideograph */ + [0x62b7, 0x62b7], /* CJK Ideograph */ + [0x62b8, 0x62b8], /* CJK Ideograph */ + [0x62b9, 0x62b9], /* CJK Ideograph */ + [0x62ba, 0x62ba], /* CJK Ideograph */ + [0x62bb, 0x62bb], /* CJK Ideograph */ + [0x62bc, 0x62bc], /* CJK Ideograph */ + [0x62bd, 0x62bd], /* CJK Ideograph */ + [0x62be, 0x62be], /* CJK Ideograph */ + [0x62bf, 0x62bf], /* CJK Ideograph */ + [0x62c0, 0x62c0], /* CJK Ideograph */ + [0x62c1, 0x62c1], /* CJK Ideograph */ + [0x62c2, 0x62c2], /* CJK Ideograph */ + [0x62c3, 0x62c3], /* CJK Ideograph */ + [0x62c4, 0x62c4], /* CJK Ideograph */ + [0x62c5, 0x62c5], /* CJK Ideograph */ + [0x62c6, 0x62c6], /* CJK Ideograph */ + [0x62c7, 0x62c7], /* CJK Ideograph */ + [0x62c8, 0x62c8], /* CJK Ideograph */ + [0x62c9, 0x62c9], /* CJK Ideograph */ + [0x62ca, 0x62ca], /* CJK Ideograph */ + [0x62cb, 0x62cb], /* CJK Ideograph */ + [0x62cc, 0x62cc], /* CJK Ideograph */ + [0x62cd, 0x62cd], /* CJK Ideograph */ + [0x62ce, 0x62ce], /* CJK Ideograph */ + [0x62cf, 0x62cf], /* CJK Ideograph */ + [0x62d0, 0x62d0], /* CJK Ideograph */ + [0x62d1, 0x62d1], /* CJK Ideograph */ + [0x62d2, 0x62d2], /* CJK Ideograph */ + [0x62d3, 0x62d3], /* CJK Ideograph */ + [0x62d4, 0x62d4], /* CJK Ideograph */ + [0x62d5, 0x62d5], /* CJK Ideograph */ + [0x62d6, 0x62d6], /* CJK Ideograph */ + [0x62d7, 0x62d7], /* CJK Ideograph */ + [0x62d8, 0x62d8], /* CJK Ideograph */ + [0x62d9, 0x62d9], /* CJK Ideograph */ + [0x62da, 0x62da], /* CJK Ideograph */ + [0x62db, 0x62db], /* CJK Ideograph */ + [0x62dc, 0x62dc], /* CJK Ideograph */ + [0x62dd, 0x62dd], /* CJK Ideograph */ + [0x62de, 0x62de], /* CJK Ideograph */ + [0x62df, 0x62df], /* CJK Ideograph */ + [0x62e0, 0x62e0], /* CJK Ideograph */ + [0x62e1, 0x62e1], /* CJK Ideograph */ + [0x62e2, 0x62e2], /* CJK Ideograph */ + [0x62e3, 0x62e3], /* CJK Ideograph */ + [0x62e4, 0x62e4], /* CJK Ideograph */ + [0x62e5, 0x62e5], /* CJK Ideograph */ + [0x62e6, 0x62e6], /* CJK Ideograph */ + [0x62e7, 0x62e7], /* CJK Ideograph */ + [0x62e8, 0x62e8], /* CJK Ideograph */ + [0x62e9, 0x62e9], /* CJK Ideograph */ + [0x62ea, 0x62ea], /* CJK Ideograph */ + [0x62eb, 0x62eb], /* CJK Ideograph */ + [0x62ec, 0x62ec], /* CJK Ideograph */ + [0x62ed, 0x62ed], /* CJK Ideograph */ + [0x62ee, 0x62ee], /* CJK Ideograph */ + [0x62ef, 0x62ef], /* CJK Ideograph */ + [0x62f0, 0x62f0], /* CJK Ideograph */ + [0x62f1, 0x62f1], /* CJK Ideograph */ + [0x62f2, 0x62f2], /* CJK Ideograph */ + [0x62f3, 0x62f3], /* CJK Ideograph */ + [0x62f4, 0x62f4], /* CJK Ideograph */ + [0x62f5, 0x62f5], /* CJK Ideograph */ + [0x62f6, 0x62f6], /* CJK Ideograph */ + [0x62f7, 0x62f7], /* CJK Ideograph */ + [0x62f8, 0x62f8], /* CJK Ideograph */ + [0x62f9, 0x62f9], /* CJK Ideograph */ + [0x62fa, 0x62fa], /* CJK Ideograph */ + [0x62fb, 0x62fb], /* CJK Ideograph */ + [0x62fc, 0x62fc], /* CJK Ideograph */ + [0x62fd, 0x62fd], /* CJK Ideograph */ + [0x62fe, 0x62fe], /* CJK Ideograph */ + [0x62ff, 0x62ff], /* CJK Ideograph */ + [0x6300, 0x6300], /* CJK Ideograph */ + [0x6301, 0x6301], /* CJK Ideograph */ + [0x6302, 0x6302], /* CJK Ideograph */ + [0x6303, 0x6303], /* CJK Ideograph */ + [0x6304, 0x6304], /* CJK Ideograph */ + [0x6305, 0x6305], /* CJK Ideograph */ + [0x6306, 0x6306], /* CJK Ideograph */ + [0x6307, 0x6307], /* CJK Ideograph */ + [0x6308, 0x6308], /* CJK Ideograph */ + [0x6309, 0x6309], /* CJK Ideograph */ + [0x630a, 0x630a], /* CJK Ideograph */ + [0x630b, 0x630b], /* CJK Ideograph */ + [0x630c, 0x630c], /* CJK Ideograph */ + [0x630d, 0x630d], /* CJK Ideograph */ + [0x630e, 0x630e], /* CJK Ideograph */ + [0x630f, 0x630f], /* CJK Ideograph */ + [0x6310, 0x6310], /* CJK Ideograph */ + [0x6311, 0x6311], /* CJK Ideograph */ + [0x6312, 0x6312], /* CJK Ideograph */ + [0x6313, 0x6313], /* CJK Ideograph */ + [0x6314, 0x6314], /* CJK Ideograph */ + [0x6315, 0x6315], /* CJK Ideograph */ + [0x6316, 0x6316], /* CJK Ideograph */ + [0x6317, 0x6317], /* CJK Ideograph */ + [0x6318, 0x6318], /* CJK Ideograph */ + [0x6319, 0x6319], /* CJK Ideograph */ + [0x631a, 0x631a], /* CJK Ideograph */ + [0x631b, 0x631b], /* CJK Ideograph */ + [0x631c, 0x631c], /* CJK Ideograph */ + [0x631d, 0x631d], /* CJK Ideograph */ + [0x631e, 0x631e], /* CJK Ideograph */ + [0x631f, 0x631f], /* CJK Ideograph */ + [0x6320, 0x6320], /* CJK Ideograph */ + [0x6321, 0x6321], /* CJK Ideograph */ + [0x6322, 0x6322], /* CJK Ideograph */ + [0x6323, 0x6323], /* CJK Ideograph */ + [0x6324, 0x6324], /* CJK Ideograph */ + [0x6325, 0x6325], /* CJK Ideograph */ + [0x6326, 0x6326], /* CJK Ideograph */ + [0x6327, 0x6327], /* CJK Ideograph */ + [0x6328, 0x6328], /* CJK Ideograph */ + [0x6329, 0x6329], /* CJK Ideograph */ + [0x632a, 0x632a], /* CJK Ideograph */ + [0x632b, 0x632b], /* CJK Ideograph */ + [0x632c, 0x632c], /* CJK Ideograph */ + [0x632d, 0x632d], /* CJK Ideograph */ + [0x632e, 0x632e], /* CJK Ideograph */ + [0x632f, 0x632f], /* CJK Ideograph */ + [0x6330, 0x6330], /* CJK Ideograph */ + [0x6331, 0x6331], /* CJK Ideograph */ + [0x6332, 0x6332], /* CJK Ideograph */ + [0x6333, 0x6333], /* CJK Ideograph */ + [0x6334, 0x6334], /* CJK Ideograph */ + [0x6335, 0x6335], /* CJK Ideograph */ + [0x6336, 0x6336], /* CJK Ideograph */ + [0x6337, 0x6337], /* CJK Ideograph */ + [0x6338, 0x6338], /* CJK Ideograph */ + [0x6339, 0x6339], /* CJK Ideograph */ + [0x633a, 0x633a], /* CJK Ideograph */ + [0x633b, 0x633b], /* CJK Ideograph */ + [0x633c, 0x633c], /* CJK Ideograph */ + [0x633d, 0x633d], /* CJK Ideograph */ + [0x633e, 0x633e], /* CJK Ideograph */ + [0x633f, 0x633f], /* CJK Ideograph */ + [0x6340, 0x6340], /* CJK Ideograph */ + [0x6341, 0x6341], /* CJK Ideograph */ + [0x6342, 0x6342], /* CJK Ideograph */ + [0x6343, 0x6343], /* CJK Ideograph */ + [0x6344, 0x6344], /* CJK Ideograph */ + [0x6345, 0x6345], /* CJK Ideograph */ + [0x6346, 0x6346], /* CJK Ideograph */ + [0x6347, 0x6347], /* CJK Ideograph */ + [0x6348, 0x6348], /* CJK Ideograph */ + [0x6349, 0x6349], /* CJK Ideograph */ + [0x634a, 0x634a], /* CJK Ideograph */ + [0x634b, 0x634b], /* CJK Ideograph */ + [0x634c, 0x634c], /* CJK Ideograph */ + [0x634d, 0x634d], /* CJK Ideograph */ + [0x634e, 0x634e], /* CJK Ideograph */ + [0x634f, 0x634f], /* CJK Ideograph */ + [0x6350, 0x6350], /* CJK Ideograph */ + [0x6351, 0x6351], /* CJK Ideograph */ + [0x6352, 0x6352], /* CJK Ideograph */ + [0x6353, 0x6353], /* CJK Ideograph */ + [0x6354, 0x6354], /* CJK Ideograph */ + [0x6355, 0x6355], /* CJK Ideograph */ + [0x6356, 0x6356], /* CJK Ideograph */ + [0x6357, 0x6357], /* CJK Ideograph */ + [0x6358, 0x6358], /* CJK Ideograph */ + [0x6359, 0x6359], /* CJK Ideograph */ + [0x635a, 0x635a], /* CJK Ideograph */ + [0x635b, 0x635b], /* CJK Ideograph */ + [0x635c, 0x635c], /* CJK Ideograph */ + [0x635d, 0x635d], /* CJK Ideograph */ + [0x635e, 0x635e], /* CJK Ideograph */ + [0x635f, 0x635f], /* CJK Ideograph */ + [0x6360, 0x6360], /* CJK Ideograph */ + [0x6361, 0x6361], /* CJK Ideograph */ + [0x6362, 0x6362], /* CJK Ideograph */ + [0x6363, 0x6363], /* CJK Ideograph */ + [0x6364, 0x6364], /* CJK Ideograph */ + [0x6365, 0x6365], /* CJK Ideograph */ + [0x6366, 0x6366], /* CJK Ideograph */ + [0x6367, 0x6367], /* CJK Ideograph */ + [0x6368, 0x6368], /* CJK Ideograph */ + [0x6369, 0x6369], /* CJK Ideograph */ + [0x636a, 0x636a], /* CJK Ideograph */ + [0x636b, 0x636b], /* CJK Ideograph */ + [0x636c, 0x636c], /* CJK Ideograph */ + [0x636d, 0x636d], /* CJK Ideograph */ + [0x636e, 0x636e], /* CJK Ideograph */ + [0x636f, 0x636f], /* CJK Ideograph */ + [0x6370, 0x6370], /* CJK Ideograph */ + [0x6371, 0x6371], /* CJK Ideograph */ + [0x6372, 0x6372], /* CJK Ideograph */ + [0x6373, 0x6373], /* CJK Ideograph */ + [0x6374, 0x6374], /* CJK Ideograph */ + [0x6375, 0x6375], /* CJK Ideograph */ + [0x6376, 0x6376], /* CJK Ideograph */ + [0x6377, 0x6377], /* CJK Ideograph */ + [0x6378, 0x6378], /* CJK Ideograph */ + [0x6379, 0x6379], /* CJK Ideograph */ + [0x637a, 0x637a], /* CJK Ideograph */ + [0x637b, 0x637b], /* CJK Ideograph */ + [0x637c, 0x637c], /* CJK Ideograph */ + [0x637d, 0x637d], /* CJK Ideograph */ + [0x637e, 0x637e], /* CJK Ideograph */ + [0x637f, 0x637f], /* CJK Ideograph */ + [0x6380, 0x6380], /* CJK Ideograph */ + [0x6381, 0x6381], /* CJK Ideograph */ + [0x6382, 0x6382], /* CJK Ideograph */ + [0x6383, 0x6383], /* CJK Ideograph */ + [0x6384, 0x6384], /* CJK Ideograph */ + [0x6385, 0x6385], /* CJK Ideograph */ + [0x6386, 0x6386], /* CJK Ideograph */ + [0x6387, 0x6387], /* CJK Ideograph */ + [0x6388, 0x6388], /* CJK Ideograph */ + [0x6389, 0x6389], /* CJK Ideograph */ + [0x638a, 0x638a], /* CJK Ideograph */ + [0x638b, 0x638b], /* CJK Ideograph */ + [0x638c, 0x638c], /* CJK Ideograph */ + [0x638d, 0x638d], /* CJK Ideograph */ + [0x638e, 0x638e], /* CJK Ideograph */ + [0x638f, 0x638f], /* CJK Ideograph */ + [0x6390, 0x6390], /* CJK Ideograph */ + [0x6391, 0x6391], /* CJK Ideograph */ + [0x6392, 0x6392], /* CJK Ideograph */ + [0x6393, 0x6393], /* CJK Ideograph */ + [0x6394, 0x6394], /* CJK Ideograph */ + [0x6395, 0x6395], /* CJK Ideograph */ + [0x6396, 0x6396], /* CJK Ideograph */ + [0x6397, 0x6397], /* CJK Ideograph */ + [0x6398, 0x6398], /* CJK Ideograph */ + [0x6399, 0x6399], /* CJK Ideograph */ + [0x639a, 0x639a], /* CJK Ideograph */ + [0x639b, 0x639b], /* CJK Ideograph */ + [0x639c, 0x639c], /* CJK Ideograph */ + [0x639d, 0x639d], /* CJK Ideograph */ + [0x639e, 0x639e], /* CJK Ideograph */ + [0x639f, 0x639f], /* CJK Ideograph */ + [0x63a0, 0x63a0], /* CJK Ideograph */ + [0x63a1, 0x63a1], /* CJK Ideograph */ + [0x63a2, 0x63a2], /* CJK Ideograph */ + [0x63a3, 0x63a3], /* CJK Ideograph */ + [0x63a4, 0x63a4], /* CJK Ideograph */ + [0x63a5, 0x63a5], /* CJK Ideograph */ + [0x63a6, 0x63a6], /* CJK Ideograph */ + [0x63a7, 0x63a7], /* CJK Ideograph */ + [0x63a8, 0x63a8], /* CJK Ideograph */ + [0x63a9, 0x63a9], /* CJK Ideograph */ + [0x63aa, 0x63aa], /* CJK Ideograph */ + [0x63ab, 0x63ab], /* CJK Ideograph */ + [0x63ac, 0x63ac], /* CJK Ideograph */ + [0x63ad, 0x63ad], /* CJK Ideograph */ + [0x63ae, 0x63ae], /* CJK Ideograph */ + [0x63af, 0x63af], /* CJK Ideograph */ + [0x63b0, 0x63b0], /* CJK Ideograph */ + [0x63b1, 0x63b1], /* CJK Ideograph */ + [0x63b2, 0x63b2], /* CJK Ideograph */ + [0x63b3, 0x63b3], /* CJK Ideograph */ + [0x63b4, 0x63b4], /* CJK Ideograph */ + [0x63b5, 0x63b5], /* CJK Ideograph */ + [0x63b6, 0x63b6], /* CJK Ideograph */ + [0x63b7, 0x63b7], /* CJK Ideograph */ + [0x63b8, 0x63b8], /* CJK Ideograph */ + [0x63b9, 0x63b9], /* CJK Ideograph */ + [0x63ba, 0x63ba], /* CJK Ideograph */ + [0x63bb, 0x63bb], /* CJK Ideograph */ + [0x63bc, 0x63bc], /* CJK Ideograph */ + [0x63bd, 0x63bd], /* CJK Ideograph */ + [0x63be, 0x63be], /* CJK Ideograph */ + [0x63bf, 0x63bf], /* CJK Ideograph */ + [0x63c0, 0x63c0], /* CJK Ideograph */ + [0x63c1, 0x63c1], /* CJK Ideograph */ + [0x63c2, 0x63c2], /* CJK Ideograph */ + [0x63c3, 0x63c3], /* CJK Ideograph */ + [0x63c4, 0x63c4], /* CJK Ideograph */ + [0x63c5, 0x63c5], /* CJK Ideograph */ + [0x63c6, 0x63c6], /* CJK Ideograph */ + [0x63c7, 0x63c7], /* CJK Ideograph */ + [0x63c8, 0x63c8], /* CJK Ideograph */ + [0x63c9, 0x63c9], /* CJK Ideograph */ + [0x63ca, 0x63ca], /* CJK Ideograph */ + [0x63cb, 0x63cb], /* CJK Ideograph */ + [0x63cc, 0x63cc], /* CJK Ideograph */ + [0x63cd, 0x63cd], /* CJK Ideograph */ + [0x63ce, 0x63ce], /* CJK Ideograph */ + [0x63cf, 0x63cf], /* CJK Ideograph */ + [0x63d0, 0x63d0], /* CJK Ideograph */ + [0x63d1, 0x63d1], /* CJK Ideograph */ + [0x63d2, 0x63d2], /* CJK Ideograph */ + [0x63d3, 0x63d3], /* CJK Ideograph */ + [0x63d4, 0x63d4], /* CJK Ideograph */ + [0x63d5, 0x63d5], /* CJK Ideograph */ + [0x63d6, 0x63d6], /* CJK Ideograph */ + [0x63d7, 0x63d7], /* CJK Ideograph */ + [0x63d8, 0x63d8], /* CJK Ideograph */ + [0x63d9, 0x63d9], /* CJK Ideograph */ + [0x63da, 0x63da], /* CJK Ideograph */ + [0x63db, 0x63db], /* CJK Ideograph */ + [0x63dc, 0x63dc], /* CJK Ideograph */ + [0x63dd, 0x63dd], /* CJK Ideograph */ + [0x63de, 0x63de], /* CJK Ideograph */ + [0x63df, 0x63df], /* CJK Ideograph */ + [0x63e0, 0x63e0], /* CJK Ideograph */ + [0x63e1, 0x63e1], /* CJK Ideograph */ + [0x63e2, 0x63e2], /* CJK Ideograph */ + [0x63e3, 0x63e3], /* CJK Ideograph */ + [0x63e4, 0x63e4], /* CJK Ideograph */ + [0x63e5, 0x63e5], /* CJK Ideograph */ + [0x63e6, 0x63e6], /* CJK Ideograph */ + [0x63e7, 0x63e7], /* CJK Ideograph */ + [0x63e8, 0x63e8], /* CJK Ideograph */ + [0x63e9, 0x63e9], /* CJK Ideograph */ + [0x63ea, 0x63ea], /* CJK Ideograph */ + [0x63eb, 0x63eb], /* CJK Ideograph */ + [0x63ec, 0x63ec], /* CJK Ideograph */ + [0x63ed, 0x63ed], /* CJK Ideograph */ + [0x63ee, 0x63ee], /* CJK Ideograph */ + [0x63ef, 0x63ef], /* CJK Ideograph */ + [0x63f0, 0x63f0], /* CJK Ideograph */ + [0x63f1, 0x63f1], /* CJK Ideograph */ + [0x63f2, 0x63f2], /* CJK Ideograph */ + [0x63f3, 0x63f3], /* CJK Ideograph */ + [0x63f4, 0x63f4], /* CJK Ideograph */ + [0x63f5, 0x63f5], /* CJK Ideograph */ + [0x63f6, 0x63f6], /* CJK Ideograph */ + [0x63f7, 0x63f7], /* CJK Ideograph */ + [0x63f8, 0x63f8], /* CJK Ideograph */ + [0x63f9, 0x63f9], /* CJK Ideograph */ + [0x63fa, 0x63fa], /* CJK Ideograph */ + [0x63fb, 0x63fb], /* CJK Ideograph */ + [0x63fc, 0x63fc], /* CJK Ideograph */ + [0x63fd, 0x63fd], /* CJK Ideograph */ + [0x63fe, 0x63fe], /* CJK Ideograph */ + [0x63ff, 0x63ff], /* CJK Ideograph */ + [0x6400, 0x6400], /* CJK Ideograph */ + [0x6401, 0x6401], /* CJK Ideograph */ + [0x6402, 0x6402], /* CJK Ideograph */ + [0x6403, 0x6403], /* CJK Ideograph */ + [0x6404, 0x6404], /* CJK Ideograph */ + [0x6405, 0x6405], /* CJK Ideograph */ + [0x6406, 0x6406], /* CJK Ideograph */ + [0x6407, 0x6407], /* CJK Ideograph */ + [0x6408, 0x6408], /* CJK Ideograph */ + [0x6409, 0x6409], /* CJK Ideograph */ + [0x640a, 0x640a], /* CJK Ideograph */ + [0x640b, 0x640b], /* CJK Ideograph */ + [0x640c, 0x640c], /* CJK Ideograph */ + [0x640d, 0x640d], /* CJK Ideograph */ + [0x640e, 0x640e], /* CJK Ideograph */ + [0x640f, 0x640f], /* CJK Ideograph */ + [0x6410, 0x6410], /* CJK Ideograph */ + [0x6411, 0x6411], /* CJK Ideograph */ + [0x6412, 0x6412], /* CJK Ideograph */ + [0x6413, 0x6413], /* CJK Ideograph */ + [0x6414, 0x6414], /* CJK Ideograph */ + [0x6415, 0x6415], /* CJK Ideograph */ + [0x6416, 0x6416], /* CJK Ideograph */ + [0x6417, 0x6417], /* CJK Ideograph */ + [0x6418, 0x6418], /* CJK Ideograph */ + [0x6419, 0x6419], /* CJK Ideograph */ + [0x641a, 0x641a], /* CJK Ideograph */ + [0x641b, 0x641b], /* CJK Ideograph */ + [0x641c, 0x641c], /* CJK Ideograph */ + [0x641d, 0x641d], /* CJK Ideograph */ + [0x641e, 0x641e], /* CJK Ideograph */ + [0x641f, 0x641f], /* CJK Ideograph */ + [0x6420, 0x6420], /* CJK Ideograph */ + [0x6421, 0x6421], /* CJK Ideograph */ + [0x6422, 0x6422], /* CJK Ideograph */ + [0x6423, 0x6423], /* CJK Ideograph */ + [0x6424, 0x6424], /* CJK Ideograph */ + [0x6425, 0x6425], /* CJK Ideograph */ + [0x6426, 0x6426], /* CJK Ideograph */ + [0x6427, 0x6427], /* CJK Ideograph */ + [0x6428, 0x6428], /* CJK Ideograph */ + [0x6429, 0x6429], /* CJK Ideograph */ + [0x642a, 0x642a], /* CJK Ideograph */ + [0x642b, 0x642b], /* CJK Ideograph */ + [0x642c, 0x642c], /* CJK Ideograph */ + [0x642d, 0x642d], /* CJK Ideograph */ + [0x642e, 0x642e], /* CJK Ideograph */ + [0x642f, 0x642f], /* CJK Ideograph */ + [0x6430, 0x6430], /* CJK Ideograph */ + [0x6431, 0x6431], /* CJK Ideograph */ + [0x6432, 0x6432], /* CJK Ideograph */ + [0x6433, 0x6433], /* CJK Ideograph */ + [0x6434, 0x6434], /* CJK Ideograph */ + [0x6435, 0x6435], /* CJK Ideograph */ + [0x6436, 0x6436], /* CJK Ideograph */ + [0x6437, 0x6437], /* CJK Ideograph */ + [0x6438, 0x6438], /* CJK Ideograph */ + [0x6439, 0x6439], /* CJK Ideograph */ + [0x643a, 0x643a], /* CJK Ideograph */ + [0x643b, 0x643b], /* CJK Ideograph */ + [0x643c, 0x643c], /* CJK Ideograph */ + [0x643d, 0x643d], /* CJK Ideograph */ + [0x643e, 0x643e], /* CJK Ideograph */ + [0x643f, 0x643f], /* CJK Ideograph */ + [0x6440, 0x6440], /* CJK Ideograph */ + [0x6441, 0x6441], /* CJK Ideograph */ + [0x6442, 0x6442], /* CJK Ideograph */ + [0x6443, 0x6443], /* CJK Ideograph */ + [0x6444, 0x6444], /* CJK Ideograph */ + [0x6445, 0x6445], /* CJK Ideograph */ + [0x6446, 0x6446], /* CJK Ideograph */ + [0x6447, 0x6447], /* CJK Ideograph */ + [0x6448, 0x6448], /* CJK Ideograph */ + [0x6449, 0x6449], /* CJK Ideograph */ + [0x644a, 0x644a], /* CJK Ideograph */ + [0x644b, 0x644b], /* CJK Ideograph */ + [0x644c, 0x644c], /* CJK Ideograph */ + [0x644d, 0x644d], /* CJK Ideograph */ + [0x644e, 0x644e], /* CJK Ideograph */ + [0x644f, 0x644f], /* CJK Ideograph */ + [0x6450, 0x6450], /* CJK Ideograph */ + [0x6451, 0x6451], /* CJK Ideograph */ + [0x6452, 0x6452], /* CJK Ideograph */ + [0x6453, 0x6453], /* CJK Ideograph */ + [0x6454, 0x6454], /* CJK Ideograph */ + [0x6455, 0x6455], /* CJK Ideograph */ + [0x6456, 0x6456], /* CJK Ideograph */ + [0x6457, 0x6457], /* CJK Ideograph */ + [0x6458, 0x6458], /* CJK Ideograph */ + [0x6459, 0x6459], /* CJK Ideograph */ + [0x645a, 0x645a], /* CJK Ideograph */ + [0x645b, 0x645b], /* CJK Ideograph */ + [0x645c, 0x645c], /* CJK Ideograph */ + [0x645d, 0x645d], /* CJK Ideograph */ + [0x645e, 0x645e], /* CJK Ideograph */ + [0x645f, 0x645f], /* CJK Ideograph */ + [0x6460, 0x6460], /* CJK Ideograph */ + [0x6461, 0x6461], /* CJK Ideograph */ + [0x6462, 0x6462], /* CJK Ideograph */ + [0x6463, 0x6463], /* CJK Ideograph */ + [0x6464, 0x6464], /* CJK Ideograph */ + [0x6465, 0x6465], /* CJK Ideograph */ + [0x6466, 0x6466], /* CJK Ideograph */ + [0x6467, 0x6467], /* CJK Ideograph */ + [0x6468, 0x6468], /* CJK Ideograph */ + [0x6469, 0x6469], /* CJK Ideograph */ + [0x646a, 0x646a], /* CJK Ideograph */ + [0x646b, 0x646b], /* CJK Ideograph */ + [0x646c, 0x646c], /* CJK Ideograph */ + [0x646d, 0x646d], /* CJK Ideograph */ + [0x646e, 0x646e], /* CJK Ideograph */ + [0x646f, 0x646f], /* CJK Ideograph */ + [0x6470, 0x6470], /* CJK Ideograph */ + [0x6471, 0x6471], /* CJK Ideograph */ + [0x6472, 0x6472], /* CJK Ideograph */ + [0x6473, 0x6473], /* CJK Ideograph */ + [0x6474, 0x6474], /* CJK Ideograph */ + [0x6475, 0x6475], /* CJK Ideograph */ + [0x6476, 0x6476], /* CJK Ideograph */ + [0x6477, 0x6477], /* CJK Ideograph */ + [0x6478, 0x6478], /* CJK Ideograph */ + [0x6479, 0x6479], /* CJK Ideograph */ + [0x647a, 0x647a], /* CJK Ideograph */ + [0x647b, 0x647b], /* CJK Ideograph */ + [0x647c, 0x647c], /* CJK Ideograph */ + [0x647d, 0x647d], /* CJK Ideograph */ + [0x647e, 0x647e], /* CJK Ideograph */ + [0x647f, 0x647f], /* CJK Ideograph */ + [0x6480, 0x6480], /* CJK Ideograph */ + [0x6481, 0x6481], /* CJK Ideograph */ + [0x6482, 0x6482], /* CJK Ideograph */ + [0x6483, 0x6483], /* CJK Ideograph */ + [0x6484, 0x6484], /* CJK Ideograph */ + [0x6485, 0x6485], /* CJK Ideograph */ + [0x6486, 0x6486], /* CJK Ideograph */ + [0x6487, 0x6487], /* CJK Ideograph */ + [0x6488, 0x6488], /* CJK Ideograph */ + [0x6489, 0x6489], /* CJK Ideograph */ + [0x648a, 0x648a], /* CJK Ideograph */ + [0x648b, 0x648b], /* CJK Ideograph */ + [0x648c, 0x648c], /* CJK Ideograph */ + [0x648d, 0x648d], /* CJK Ideograph */ + [0x648e, 0x648e], /* CJK Ideograph */ + [0x648f, 0x648f], /* CJK Ideograph */ + [0x6490, 0x6490], /* CJK Ideograph */ + [0x6491, 0x6491], /* CJK Ideograph */ + [0x6492, 0x6492], /* CJK Ideograph */ + [0x6493, 0x6493], /* CJK Ideograph */ + [0x6494, 0x6494], /* CJK Ideograph */ + [0x6495, 0x6495], /* CJK Ideograph */ + [0x6496, 0x6496], /* CJK Ideograph */ + [0x6497, 0x6497], /* CJK Ideograph */ + [0x6498, 0x6498], /* CJK Ideograph */ + [0x6499, 0x6499], /* CJK Ideograph */ + [0x649a, 0x649a], /* CJK Ideograph */ + [0x649b, 0x649b], /* CJK Ideograph */ + [0x649c, 0x649c], /* CJK Ideograph */ + [0x649d, 0x649d], /* CJK Ideograph */ + [0x649e, 0x649e], /* CJK Ideograph */ + [0x649f, 0x649f], /* CJK Ideograph */ + [0x64a0, 0x64a0], /* CJK Ideograph */ + [0x64a1, 0x64a1], /* CJK Ideograph */ + [0x64a2, 0x64a2], /* CJK Ideograph */ + [0x64a3, 0x64a3], /* CJK Ideograph */ + [0x64a4, 0x64a4], /* CJK Ideograph */ + [0x64a5, 0x64a5], /* CJK Ideograph */ + [0x64a6, 0x64a6], /* CJK Ideograph */ + [0x64a7, 0x64a7], /* CJK Ideograph */ + [0x64a8, 0x64a8], /* CJK Ideograph */ + [0x64a9, 0x64a9], /* CJK Ideograph */ + [0x64aa, 0x64aa], /* CJK Ideograph */ + [0x64ab, 0x64ab], /* CJK Ideograph */ + [0x64ac, 0x64ac], /* CJK Ideograph */ + [0x64ad, 0x64ad], /* CJK Ideograph */ + [0x64ae, 0x64ae], /* CJK Ideograph */ + [0x64af, 0x64af], /* CJK Ideograph */ + [0x64b0, 0x64b0], /* CJK Ideograph */ + [0x64b1, 0x64b1], /* CJK Ideograph */ + [0x64b2, 0x64b2], /* CJK Ideograph */ + [0x64b3, 0x64b3], /* CJK Ideograph */ + [0x64b4, 0x64b4], /* CJK Ideograph */ + [0x64b5, 0x64b5], /* CJK Ideograph */ + [0x64b6, 0x64b6], /* CJK Ideograph */ + [0x64b7, 0x64b7], /* CJK Ideograph */ + [0x64b8, 0x64b8], /* CJK Ideograph */ + [0x64b9, 0x64b9], /* CJK Ideograph */ + [0x64ba, 0x64ba], /* CJK Ideograph */ + [0x64bb, 0x64bb], /* CJK Ideograph */ + [0x64bc, 0x64bc], /* CJK Ideograph */ + [0x64bd, 0x64bd], /* CJK Ideograph */ + [0x64be, 0x64be], /* CJK Ideograph */ + [0x64bf, 0x64bf], /* CJK Ideograph */ + [0x64c0, 0x64c0], /* CJK Ideograph */ + [0x64c1, 0x64c1], /* CJK Ideograph */ + [0x64c2, 0x64c2], /* CJK Ideograph */ + [0x64c3, 0x64c3], /* CJK Ideograph */ + [0x64c4, 0x64c4], /* CJK Ideograph */ + [0x64c5, 0x64c5], /* CJK Ideograph */ + [0x64c6, 0x64c6], /* CJK Ideograph */ + [0x64c7, 0x64c7], /* CJK Ideograph */ + [0x64c8, 0x64c8], /* CJK Ideograph */ + [0x64c9, 0x64c9], /* CJK Ideograph */ + [0x64ca, 0x64ca], /* CJK Ideograph */ + [0x64cb, 0x64cb], /* CJK Ideograph */ + [0x64cc, 0x64cc], /* CJK Ideograph */ + [0x64cd, 0x64cd], /* CJK Ideograph */ + [0x64ce, 0x64ce], /* CJK Ideograph */ + [0x64cf, 0x64cf], /* CJK Ideograph */ + [0x64d0, 0x64d0], /* CJK Ideograph */ + [0x64d1, 0x64d1], /* CJK Ideograph */ + [0x64d2, 0x64d2], /* CJK Ideograph */ + [0x64d3, 0x64d3], /* CJK Ideograph */ + [0x64d4, 0x64d4], /* CJK Ideograph */ + [0x64d5, 0x64d5], /* CJK Ideograph */ + [0x64d6, 0x64d6], /* CJK Ideograph */ + [0x64d7, 0x64d7], /* CJK Ideograph */ + [0x64d8, 0x64d8], /* CJK Ideograph */ + [0x64d9, 0x64d9], /* CJK Ideograph */ + [0x64da, 0x64da], /* CJK Ideograph */ + [0x64db, 0x64db], /* CJK Ideograph */ + [0x64dc, 0x64dc], /* CJK Ideograph */ + [0x64dd, 0x64dd], /* CJK Ideograph */ + [0x64de, 0x64de], /* CJK Ideograph */ + [0x64df, 0x64df], /* CJK Ideograph */ + [0x64e0, 0x64e0], /* CJK Ideograph */ + [0x64e1, 0x64e1], /* CJK Ideograph */ + [0x64e2, 0x64e2], /* CJK Ideograph */ + [0x64e3, 0x64e3], /* CJK Ideograph */ + [0x64e4, 0x64e4], /* CJK Ideograph */ + [0x64e5, 0x64e5], /* CJK Ideograph */ + [0x64e6, 0x64e6], /* CJK Ideograph */ + [0x64e7, 0x64e7], /* CJK Ideograph */ + [0x64e8, 0x64e8], /* CJK Ideograph */ + [0x64e9, 0x64e9], /* CJK Ideograph */ + [0x64ea, 0x64ea], /* CJK Ideograph */ + [0x64eb, 0x64eb], /* CJK Ideograph */ + [0x64ec, 0x64ec], /* CJK Ideograph */ + [0x64ed, 0x64ed], /* CJK Ideograph */ + [0x64ee, 0x64ee], /* CJK Ideograph */ + [0x64ef, 0x64ef], /* CJK Ideograph */ + [0x64f0, 0x64f0], /* CJK Ideograph */ + [0x64f1, 0x64f1], /* CJK Ideograph */ + [0x64f2, 0x64f2], /* CJK Ideograph */ + [0x64f3, 0x64f3], /* CJK Ideograph */ + [0x64f4, 0x64f4], /* CJK Ideograph */ + [0x64f5, 0x64f5], /* CJK Ideograph */ + [0x64f6, 0x64f6], /* CJK Ideograph */ + [0x64f7, 0x64f7], /* CJK Ideograph */ + [0x64f8, 0x64f8], /* CJK Ideograph */ + [0x64f9, 0x64f9], /* CJK Ideograph */ + [0x64fa, 0x64fa], /* CJK Ideograph */ + [0x64fb, 0x64fb], /* CJK Ideograph */ + [0x64fc, 0x64fc], /* CJK Ideograph */ + [0x64fd, 0x64fd], /* CJK Ideograph */ + [0x64fe, 0x64fe], /* CJK Ideograph */ + [0x64ff, 0x64ff], /* CJK Ideograph */ + [0x6500, 0x6500], /* CJK Ideograph */ + [0x6501, 0x6501], /* CJK Ideograph */ + [0x6502, 0x6502], /* CJK Ideograph */ + [0x6503, 0x6503], /* CJK Ideograph */ + [0x6504, 0x6504], /* CJK Ideograph */ + [0x6505, 0x6505], /* CJK Ideograph */ + [0x6506, 0x6506], /* CJK Ideograph */ + [0x6507, 0x6507], /* CJK Ideograph */ + [0x6508, 0x6508], /* CJK Ideograph */ + [0x6509, 0x6509], /* CJK Ideograph */ + [0x650a, 0x650a], /* CJK Ideograph */ + [0x650b, 0x650b], /* CJK Ideograph */ + [0x650c, 0x650c], /* CJK Ideograph */ + [0x650d, 0x650d], /* CJK Ideograph */ + [0x650e, 0x650e], /* CJK Ideograph */ + [0x650f, 0x650f], /* CJK Ideograph */ + [0x6510, 0x6510], /* CJK Ideograph */ + [0x6511, 0x6511], /* CJK Ideograph */ + [0x6512, 0x6512], /* CJK Ideograph */ + [0x6513, 0x6513], /* CJK Ideograph */ + [0x6514, 0x6514], /* CJK Ideograph */ + [0x6515, 0x6515], /* CJK Ideograph */ + [0x6516, 0x6516], /* CJK Ideograph */ + [0x6517, 0x6517], /* CJK Ideograph */ + [0x6518, 0x6518], /* CJK Ideograph */ + [0x6519, 0x6519], /* CJK Ideograph */ + [0x651a, 0x651a], /* CJK Ideograph */ + [0x651b, 0x651b], /* CJK Ideograph */ + [0x651c, 0x651c], /* CJK Ideograph */ + [0x651d, 0x651d], /* CJK Ideograph */ + [0x651e, 0x651e], /* CJK Ideograph */ + [0x651f, 0x651f], /* CJK Ideograph */ + [0x6520, 0x6520], /* CJK Ideograph */ + [0x6521, 0x6521], /* CJK Ideograph */ + [0x6522, 0x6522], /* CJK Ideograph */ + [0x6523, 0x6523], /* CJK Ideograph */ + [0x6524, 0x6524], /* CJK Ideograph */ + [0x6525, 0x6525], /* CJK Ideograph */ + [0x6526, 0x6526], /* CJK Ideograph */ + [0x6527, 0x6527], /* CJK Ideograph */ + [0x6528, 0x6528], /* CJK Ideograph */ + [0x6529, 0x6529], /* CJK Ideograph */ + [0x652a, 0x652a], /* CJK Ideograph */ + [0x652b, 0x652b], /* CJK Ideograph */ + [0x652c, 0x652c], /* CJK Ideograph */ + [0x652d, 0x652d], /* CJK Ideograph */ + [0x652e, 0x652e], /* CJK Ideograph */ + [0x652f, 0x652f], /* CJK Ideograph */ + [0x6530, 0x6530], /* CJK Ideograph */ + [0x6531, 0x6531], /* CJK Ideograph */ + [0x6532, 0x6532], /* CJK Ideograph */ + [0x6533, 0x6533], /* CJK Ideograph */ + [0x6534, 0x6534], /* CJK Ideograph */ + [0x6535, 0x6535], /* CJK Ideograph */ + [0x6536, 0x6536], /* CJK Ideograph */ + [0x6537, 0x6537], /* CJK Ideograph */ + [0x6538, 0x6538], /* CJK Ideograph */ + [0x6539, 0x6539], /* CJK Ideograph */ + [0x653a, 0x653a], /* CJK Ideograph */ + [0x653b, 0x653b], /* CJK Ideograph */ + [0x653c, 0x653c], /* CJK Ideograph */ + [0x653d, 0x653d], /* CJK Ideograph */ + [0x653e, 0x653e], /* CJK Ideograph */ + [0x653f, 0x653f], /* CJK Ideograph */ + [0x6540, 0x6540], /* CJK Ideograph */ + [0x6541, 0x6541], /* CJK Ideograph */ + [0x6542, 0x6542], /* CJK Ideograph */ + [0x6543, 0x6543], /* CJK Ideograph */ + [0x6544, 0x6544], /* CJK Ideograph */ + [0x6545, 0x6545], /* CJK Ideograph */ + [0x6546, 0x6546], /* CJK Ideograph */ + [0x6547, 0x6547], /* CJK Ideograph */ + [0x6548, 0x6548], /* CJK Ideograph */ + [0x6549, 0x6549], /* CJK Ideograph */ + [0x654a, 0x654a], /* CJK Ideograph */ + [0x654b, 0x654b], /* CJK Ideograph */ + [0x654c, 0x654c], /* CJK Ideograph */ + [0x654d, 0x654d], /* CJK Ideograph */ + [0x654e, 0x654e], /* CJK Ideograph */ + [0x654f, 0x654f], /* CJK Ideograph */ + [0x6550, 0x6550], /* CJK Ideograph */ + [0x6551, 0x6551], /* CJK Ideograph */ + [0x6552, 0x6552], /* CJK Ideograph */ + [0x6553, 0x6553], /* CJK Ideograph */ + [0x6554, 0x6554], /* CJK Ideograph */ + [0x6555, 0x6555], /* CJK Ideograph */ + [0x6556, 0x6556], /* CJK Ideograph */ + [0x6557, 0x6557], /* CJK Ideograph */ + [0x6558, 0x6558], /* CJK Ideograph */ + [0x6559, 0x6559], /* CJK Ideograph */ + [0x655a, 0x655a], /* CJK Ideograph */ + [0x655b, 0x655b], /* CJK Ideograph */ + [0x655c, 0x655c], /* CJK Ideograph */ + [0x655d, 0x655d], /* CJK Ideograph */ + [0x655e, 0x655e], /* CJK Ideograph */ + [0x655f, 0x655f], /* CJK Ideograph */ + [0x6560, 0x6560], /* CJK Ideograph */ + [0x6561, 0x6561], /* CJK Ideograph */ + [0x6562, 0x6562], /* CJK Ideograph */ + [0x6563, 0x6563], /* CJK Ideograph */ + [0x6564, 0x6564], /* CJK Ideograph */ + [0x6565, 0x6565], /* CJK Ideograph */ + [0x6566, 0x6566], /* CJK Ideograph */ + [0x6567, 0x6567], /* CJK Ideograph */ + [0x6568, 0x6568], /* CJK Ideograph */ + [0x6569, 0x6569], /* CJK Ideograph */ + [0x656a, 0x656a], /* CJK Ideograph */ + [0x656b, 0x656b], /* CJK Ideograph */ + [0x656c, 0x656c], /* CJK Ideograph */ + [0x656d, 0x656d], /* CJK Ideograph */ + [0x656e, 0x656e], /* CJK Ideograph */ + [0x656f, 0x656f], /* CJK Ideograph */ + [0x6570, 0x6570], /* CJK Ideograph */ + [0x6571, 0x6571], /* CJK Ideograph */ + [0x6572, 0x6572], /* CJK Ideograph */ + [0x6573, 0x6573], /* CJK Ideograph */ + [0x6574, 0x6574], /* CJK Ideograph */ + [0x6575, 0x6575], /* CJK Ideograph */ + [0x6576, 0x6576], /* CJK Ideograph */ + [0x6577, 0x6577], /* CJK Ideograph */ + [0x6578, 0x6578], /* CJK Ideograph */ + [0x6579, 0x6579], /* CJK Ideograph */ + [0x657a, 0x657a], /* CJK Ideograph */ + [0x657b, 0x657b], /* CJK Ideograph */ + [0x657c, 0x657c], /* CJK Ideograph */ + [0x657d, 0x657d], /* CJK Ideograph */ + [0x657e, 0x657e], /* CJK Ideograph */ + [0x657f, 0x657f], /* CJK Ideograph */ + [0x6580, 0x6580], /* CJK Ideograph */ + [0x6581, 0x6581], /* CJK Ideograph */ + [0x6582, 0x6582], /* CJK Ideograph */ + [0x6583, 0x6583], /* CJK Ideograph */ + [0x6584, 0x6584], /* CJK Ideograph */ + [0x6585, 0x6585], /* CJK Ideograph */ + [0x6586, 0x6586], /* CJK Ideograph */ + [0x6587, 0x6587], /* CJK Ideograph */ + [0x6588, 0x6588], /* CJK Ideograph */ + [0x6589, 0x6589], /* CJK Ideograph */ + [0x658a, 0x658a], /* CJK Ideograph */ + [0x658b, 0x658b], /* CJK Ideograph */ + [0x658c, 0x658c], /* CJK Ideograph */ + [0x658d, 0x658d], /* CJK Ideograph */ + [0x658e, 0x658e], /* CJK Ideograph */ + [0x658f, 0x658f], /* CJK Ideograph */ + [0x6590, 0x6590], /* CJK Ideograph */ + [0x6591, 0x6591], /* CJK Ideograph */ + [0x6592, 0x6592], /* CJK Ideograph */ + [0x6593, 0x6593], /* CJK Ideograph */ + [0x6594, 0x6594], /* CJK Ideograph */ + [0x6595, 0x6595], /* CJK Ideograph */ + [0x6596, 0x6596], /* CJK Ideograph */ + [0x6597, 0x6597], /* CJK Ideograph */ + [0x6598, 0x6598], /* CJK Ideograph */ + [0x6599, 0x6599], /* CJK Ideograph */ + [0x659a, 0x659a], /* CJK Ideograph */ + [0x659b, 0x659b], /* CJK Ideograph */ + [0x659c, 0x659c], /* CJK Ideograph */ + [0x659d, 0x659d], /* CJK Ideograph */ + [0x659e, 0x659e], /* CJK Ideograph */ + [0x659f, 0x659f], /* CJK Ideograph */ + [0x65a0, 0x65a0], /* CJK Ideograph */ + [0x65a1, 0x65a1], /* CJK Ideograph */ + [0x65a2, 0x65a2], /* CJK Ideograph */ + [0x65a3, 0x65a3], /* CJK Ideograph */ + [0x65a4, 0x65a4], /* CJK Ideograph */ + [0x65a5, 0x65a5], /* CJK Ideograph */ + [0x65a6, 0x65a6], /* CJK Ideograph */ + [0x65a7, 0x65a7], /* CJK Ideograph */ + [0x65a8, 0x65a8], /* CJK Ideograph */ + [0x65a9, 0x65a9], /* CJK Ideograph */ + [0x65aa, 0x65aa], /* CJK Ideograph */ + [0x65ab, 0x65ab], /* CJK Ideograph */ + [0x65ac, 0x65ac], /* CJK Ideograph */ + [0x65ad, 0x65ad], /* CJK Ideograph */ + [0x65ae, 0x65ae], /* CJK Ideograph */ + [0x65af, 0x65af], /* CJK Ideograph */ + [0x65b0, 0x65b0], /* CJK Ideograph */ + [0x65b1, 0x65b1], /* CJK Ideograph */ + [0x65b2, 0x65b2], /* CJK Ideograph */ + [0x65b3, 0x65b3], /* CJK Ideograph */ + [0x65b4, 0x65b4], /* CJK Ideograph */ + [0x65b5, 0x65b5], /* CJK Ideograph */ + [0x65b6, 0x65b6], /* CJK Ideograph */ + [0x65b7, 0x65b7], /* CJK Ideograph */ + [0x65b8, 0x65b8], /* CJK Ideograph */ + [0x65b9, 0x65b9], /* CJK Ideograph */ + [0x65ba, 0x65ba], /* CJK Ideograph */ + [0x65bb, 0x65bb], /* CJK Ideograph */ + [0x65bc, 0x65bc], /* CJK Ideograph */ + [0x65bd, 0x65bd], /* CJK Ideograph */ + [0x65be, 0x65be], /* CJK Ideograph */ + [0x65bf, 0x65bf], /* CJK Ideograph */ + [0x65c0, 0x65c0], /* CJK Ideograph */ + [0x65c1, 0x65c1], /* CJK Ideograph */ + [0x65c2, 0x65c2], /* CJK Ideograph */ + [0x65c3, 0x65c3], /* CJK Ideograph */ + [0x65c4, 0x65c4], /* CJK Ideograph */ + [0x65c5, 0x65c5], /* CJK Ideograph */ + [0x65c6, 0x65c6], /* CJK Ideograph */ + [0x65c7, 0x65c7], /* CJK Ideograph */ + [0x65c8, 0x65c8], /* CJK Ideograph */ + [0x65c9, 0x65c9], /* CJK Ideograph */ + [0x65ca, 0x65ca], /* CJK Ideograph */ + [0x65cb, 0x65cb], /* CJK Ideograph */ + [0x65cc, 0x65cc], /* CJK Ideograph */ + [0x65cd, 0x65cd], /* CJK Ideograph */ + [0x65ce, 0x65ce], /* CJK Ideograph */ + [0x65cf, 0x65cf], /* CJK Ideograph */ + [0x65d0, 0x65d0], /* CJK Ideograph */ + [0x65d1, 0x65d1], /* CJK Ideograph */ + [0x65d2, 0x65d2], /* CJK Ideograph */ + [0x65d3, 0x65d3], /* CJK Ideograph */ + [0x65d4, 0x65d4], /* CJK Ideograph */ + [0x65d5, 0x65d5], /* CJK Ideograph */ + [0x65d6, 0x65d6], /* CJK Ideograph */ + [0x65d7, 0x65d7], /* CJK Ideograph */ + [0x65d8, 0x65d8], /* CJK Ideograph */ + [0x65d9, 0x65d9], /* CJK Ideograph */ + [0x65da, 0x65da], /* CJK Ideograph */ + [0x65db, 0x65db], /* CJK Ideograph */ + [0x65dc, 0x65dc], /* CJK Ideograph */ + [0x65dd, 0x65dd], /* CJK Ideograph */ + [0x65de, 0x65de], /* CJK Ideograph */ + [0x65df, 0x65df], /* CJK Ideograph */ + [0x65e0, 0x65e0], /* CJK Ideograph */ + [0x65e1, 0x65e1], /* CJK Ideograph */ + [0x65e2, 0x65e2], /* CJK Ideograph */ + [0x65e3, 0x65e3], /* CJK Ideograph */ + [0x65e4, 0x65e4], /* CJK Ideograph */ + [0x65e5, 0x65e5], /* CJK Ideograph */ + [0x65e6, 0x65e6], /* CJK Ideograph */ + [0x65e7, 0x65e7], /* CJK Ideograph */ + [0x65e8, 0x65e8], /* CJK Ideograph */ + [0x65e9, 0x65e9], /* CJK Ideograph */ + [0x65ea, 0x65ea], /* CJK Ideograph */ + [0x65eb, 0x65eb], /* CJK Ideograph */ + [0x65ec, 0x65ec], /* CJK Ideograph */ + [0x65ed, 0x65ed], /* CJK Ideograph */ + [0x65ee, 0x65ee], /* CJK Ideograph */ + [0x65ef, 0x65ef], /* CJK Ideograph */ + [0x65f0, 0x65f0], /* CJK Ideograph */ + [0x65f1, 0x65f1], /* CJK Ideograph */ + [0x65f2, 0x65f2], /* CJK Ideograph */ + [0x65f3, 0x65f3], /* CJK Ideograph */ + [0x65f4, 0x65f4], /* CJK Ideograph */ + [0x65f5, 0x65f5], /* CJK Ideograph */ + [0x65f6, 0x65f6], /* CJK Ideograph */ + [0x65f7, 0x65f7], /* CJK Ideograph */ + [0x65f8, 0x65f8], /* CJK Ideograph */ + [0x65f9, 0x65f9], /* CJK Ideograph */ + [0x65fa, 0x65fa], /* CJK Ideograph */ + [0x65fb, 0x65fb], /* CJK Ideograph */ + [0x65fc, 0x65fc], /* CJK Ideograph */ + [0x65fd, 0x65fd], /* CJK Ideograph */ + [0x65fe, 0x65fe], /* CJK Ideograph */ + [0x65ff, 0x65ff], /* CJK Ideograph */ + [0x6600, 0x6600], /* CJK Ideograph */ + [0x6601, 0x6601], /* CJK Ideograph */ + [0x6602, 0x6602], /* CJK Ideograph */ + [0x6603, 0x6603], /* CJK Ideograph */ + [0x6604, 0x6604], /* CJK Ideograph */ + [0x6605, 0x6605], /* CJK Ideograph */ + [0x6606, 0x6606], /* CJK Ideograph */ + [0x6607, 0x6607], /* CJK Ideograph */ + [0x6608, 0x6608], /* CJK Ideograph */ + [0x6609, 0x6609], /* CJK Ideograph */ + [0x660a, 0x660a], /* CJK Ideograph */ + [0x660b, 0x660b], /* CJK Ideograph */ + [0x660c, 0x660c], /* CJK Ideograph */ + [0x660d, 0x660d], /* CJK Ideograph */ + [0x660e, 0x660e], /* CJK Ideograph */ + [0x660f, 0x660f], /* CJK Ideograph */ + [0x6610, 0x6610], /* CJK Ideograph */ + [0x6611, 0x6611], /* CJK Ideograph */ + [0x6612, 0x6612], /* CJK Ideograph */ + [0x6613, 0x6613], /* CJK Ideograph */ + [0x6614, 0x6614], /* CJK Ideograph */ + [0x6615, 0x6615], /* CJK Ideograph */ + [0x6616, 0x6616], /* CJK Ideograph */ + [0x6617, 0x6617], /* CJK Ideograph */ + [0x6618, 0x6618], /* CJK Ideograph */ + [0x6619, 0x6619], /* CJK Ideograph */ + [0x661a, 0x661a], /* CJK Ideograph */ + [0x661b, 0x661b], /* CJK Ideograph */ + [0x661c, 0x661c], /* CJK Ideograph */ + [0x661d, 0x661d], /* CJK Ideograph */ + [0x661e, 0x661e], /* CJK Ideograph */ + [0x661f, 0x661f], /* CJK Ideograph */ + [0x6620, 0x6620], /* CJK Ideograph */ + [0x6621, 0x6621], /* CJK Ideograph */ + [0x6622, 0x6622], /* CJK Ideograph */ + [0x6623, 0x6623], /* CJK Ideograph */ + [0x6624, 0x6624], /* CJK Ideograph */ + [0x6625, 0x6625], /* CJK Ideograph */ + [0x6626, 0x6626], /* CJK Ideograph */ + [0x6627, 0x6627], /* CJK Ideograph */ + [0x6628, 0x6628], /* CJK Ideograph */ + [0x6629, 0x6629], /* CJK Ideograph */ + [0x662a, 0x662a], /* CJK Ideograph */ + [0x662b, 0x662b], /* CJK Ideograph */ + [0x662c, 0x662c], /* CJK Ideograph */ + [0x662d, 0x662d], /* CJK Ideograph */ + [0x662e, 0x662e], /* CJK Ideograph */ + [0x662f, 0x662f], /* CJK Ideograph */ + [0x6630, 0x6630], /* CJK Ideograph */ + [0x6631, 0x6631], /* CJK Ideograph */ + [0x6632, 0x6632], /* CJK Ideograph */ + [0x6633, 0x6633], /* CJK Ideograph */ + [0x6634, 0x6634], /* CJK Ideograph */ + [0x6635, 0x6635], /* CJK Ideograph */ + [0x6636, 0x6636], /* CJK Ideograph */ + [0x6637, 0x6637], /* CJK Ideograph */ + [0x6638, 0x6638], /* CJK Ideograph */ + [0x6639, 0x6639], /* CJK Ideograph */ + [0x663a, 0x663a], /* CJK Ideograph */ + [0x663b, 0x663b], /* CJK Ideograph */ + [0x663c, 0x663c], /* CJK Ideograph */ + [0x663d, 0x663d], /* CJK Ideograph */ + [0x663e, 0x663e], /* CJK Ideograph */ + [0x663f, 0x663f], /* CJK Ideograph */ + [0x6640, 0x6640], /* CJK Ideograph */ + [0x6641, 0x6641], /* CJK Ideograph */ + [0x6642, 0x6642], /* CJK Ideograph */ + [0x6643, 0x6643], /* CJK Ideograph */ + [0x6644, 0x6644], /* CJK Ideograph */ + [0x6645, 0x6645], /* CJK Ideograph */ + [0x6646, 0x6646], /* CJK Ideograph */ + [0x6647, 0x6647], /* CJK Ideograph */ + [0x6648, 0x6648], /* CJK Ideograph */ + [0x6649, 0x6649], /* CJK Ideograph */ + [0x664a, 0x664a], /* CJK Ideograph */ + [0x664b, 0x664b], /* CJK Ideograph */ + [0x664c, 0x664c], /* CJK Ideograph */ + [0x664d, 0x664d], /* CJK Ideograph */ + [0x664e, 0x664e], /* CJK Ideograph */ + [0x664f, 0x664f], /* CJK Ideograph */ + [0x6650, 0x6650], /* CJK Ideograph */ + [0x6651, 0x6651], /* CJK Ideograph */ + [0x6652, 0x6652], /* CJK Ideograph */ + [0x6653, 0x6653], /* CJK Ideograph */ + [0x6654, 0x6654], /* CJK Ideograph */ + [0x6655, 0x6655], /* CJK Ideograph */ + [0x6656, 0x6656], /* CJK Ideograph */ + [0x6657, 0x6657], /* CJK Ideograph */ + [0x6658, 0x6658], /* CJK Ideograph */ + [0x6659, 0x6659], /* CJK Ideograph */ + [0x665a, 0x665a], /* CJK Ideograph */ + [0x665b, 0x665b], /* CJK Ideograph */ + [0x665c, 0x665c], /* CJK Ideograph */ + [0x665d, 0x665d], /* CJK Ideograph */ + [0x665e, 0x665e], /* CJK Ideograph */ + [0x665f, 0x665f], /* CJK Ideograph */ + [0x6660, 0x6660], /* CJK Ideograph */ + [0x6661, 0x6661], /* CJK Ideograph */ + [0x6662, 0x6662], /* CJK Ideograph */ + [0x6663, 0x6663], /* CJK Ideograph */ + [0x6664, 0x6664], /* CJK Ideograph */ + [0x6665, 0x6665], /* CJK Ideograph */ + [0x6666, 0x6666], /* CJK Ideograph */ + [0x6667, 0x6667], /* CJK Ideograph */ + [0x6668, 0x6668], /* CJK Ideograph */ + [0x6669, 0x6669], /* CJK Ideograph */ + [0x666a, 0x666a], /* CJK Ideograph */ + [0x666b, 0x666b], /* CJK Ideograph */ + [0x666c, 0x666c], /* CJK Ideograph */ + [0x666d, 0x666d], /* CJK Ideograph */ + [0x666e, 0x666e], /* CJK Ideograph */ + [0x666f, 0x666f], /* CJK Ideograph */ + [0x6670, 0x6670], /* CJK Ideograph */ + [0x6671, 0x6671], /* CJK Ideograph */ + [0x6672, 0x6672], /* CJK Ideograph */ + [0x6673, 0x6673], /* CJK Ideograph */ + [0x6674, 0x6674], /* CJK Ideograph */ + [0x6675, 0x6675], /* CJK Ideograph */ + [0x6676, 0x6676], /* CJK Ideograph */ + [0x6677, 0x6677], /* CJK Ideograph */ + [0x6678, 0x6678], /* CJK Ideograph */ + [0x6679, 0x6679], /* CJK Ideograph */ + [0x667a, 0x667a], /* CJK Ideograph */ + [0x667b, 0x667b], /* CJK Ideograph */ + [0x667c, 0x667c], /* CJK Ideograph */ + [0x667d, 0x667d], /* CJK Ideograph */ + [0x667e, 0x667e], /* CJK Ideograph */ + [0x667f, 0x667f], /* CJK Ideograph */ + [0x6680, 0x6680], /* CJK Ideograph */ + [0x6681, 0x6681], /* CJK Ideograph */ + [0x6682, 0x6682], /* CJK Ideograph */ + [0x6683, 0x6683], /* CJK Ideograph */ + [0x6684, 0x6684], /* CJK Ideograph */ + [0x6685, 0x6685], /* CJK Ideograph */ + [0x6686, 0x6686], /* CJK Ideograph */ + [0x6687, 0x6687], /* CJK Ideograph */ + [0x6688, 0x6688], /* CJK Ideograph */ + [0x6689, 0x6689], /* CJK Ideograph */ + [0x668a, 0x668a], /* CJK Ideograph */ + [0x668b, 0x668b], /* CJK Ideograph */ + [0x668c, 0x668c], /* CJK Ideograph */ + [0x668d, 0x668d], /* CJK Ideograph */ + [0x668e, 0x668e], /* CJK Ideograph */ + [0x668f, 0x668f], /* CJK Ideograph */ + [0x6690, 0x6690], /* CJK Ideograph */ + [0x6691, 0x6691], /* CJK Ideograph */ + [0x6692, 0x6692], /* CJK Ideograph */ + [0x6693, 0x6693], /* CJK Ideograph */ + [0x6694, 0x6694], /* CJK Ideograph */ + [0x6695, 0x6695], /* CJK Ideograph */ + [0x6696, 0x6696], /* CJK Ideograph */ + [0x6697, 0x6697], /* CJK Ideograph */ + [0x6698, 0x6698], /* CJK Ideograph */ + [0x6699, 0x6699], /* CJK Ideograph */ + [0x669a, 0x669a], /* CJK Ideograph */ + [0x669b, 0x669b], /* CJK Ideograph */ + [0x669c, 0x669c], /* CJK Ideograph */ + [0x669d, 0x669d], /* CJK Ideograph */ + [0x669e, 0x669e], /* CJK Ideograph */ + [0x669f, 0x669f], /* CJK Ideograph */ + [0x66a0, 0x66a0], /* CJK Ideograph */ + [0x66a1, 0x66a1], /* CJK Ideograph */ + [0x66a2, 0x66a2], /* CJK Ideograph */ + [0x66a3, 0x66a3], /* CJK Ideograph */ + [0x66a4, 0x66a4], /* CJK Ideograph */ + [0x66a5, 0x66a5], /* CJK Ideograph */ + [0x66a6, 0x66a6], /* CJK Ideograph */ + [0x66a7, 0x66a7], /* CJK Ideograph */ + [0x66a8, 0x66a8], /* CJK Ideograph */ + [0x66a9, 0x66a9], /* CJK Ideograph */ + [0x66aa, 0x66aa], /* CJK Ideograph */ + [0x66ab, 0x66ab], /* CJK Ideograph */ + [0x66ac, 0x66ac], /* CJK Ideograph */ + [0x66ad, 0x66ad], /* CJK Ideograph */ + [0x66ae, 0x66ae], /* CJK Ideograph */ + [0x66af, 0x66af], /* CJK Ideograph */ + [0x66b0, 0x66b0], /* CJK Ideograph */ + [0x66b1, 0x66b1], /* CJK Ideograph */ + [0x66b2, 0x66b2], /* CJK Ideograph */ + [0x66b3, 0x66b3], /* CJK Ideograph */ + [0x66b4, 0x66b4], /* CJK Ideograph */ + [0x66b5, 0x66b5], /* CJK Ideograph */ + [0x66b6, 0x66b6], /* CJK Ideograph */ + [0x66b7, 0x66b7], /* CJK Ideograph */ + [0x66b8, 0x66b8], /* CJK Ideograph */ + [0x66b9, 0x66b9], /* CJK Ideograph */ + [0x66ba, 0x66ba], /* CJK Ideograph */ + [0x66bb, 0x66bb], /* CJK Ideograph */ + [0x66bc, 0x66bc], /* CJK Ideograph */ + [0x66bd, 0x66bd], /* CJK Ideograph */ + [0x66be, 0x66be], /* CJK Ideograph */ + [0x66bf, 0x66bf], /* CJK Ideograph */ + [0x66c0, 0x66c0], /* CJK Ideograph */ + [0x66c1, 0x66c1], /* CJK Ideograph */ + [0x66c2, 0x66c2], /* CJK Ideograph */ + [0x66c3, 0x66c3], /* CJK Ideograph */ + [0x66c4, 0x66c4], /* CJK Ideograph */ + [0x66c5, 0x66c5], /* CJK Ideograph */ + [0x66c6, 0x66c6], /* CJK Ideograph */ + [0x66c7, 0x66c7], /* CJK Ideograph */ + [0x66c8, 0x66c8], /* CJK Ideograph */ + [0x66c9, 0x66c9], /* CJK Ideograph */ + [0x66ca, 0x66ca], /* CJK Ideograph */ + [0x66cb, 0x66cb], /* CJK Ideograph */ + [0x66cc, 0x66cc], /* CJK Ideograph */ + [0x66cd, 0x66cd], /* CJK Ideograph */ + [0x66ce, 0x66ce], /* CJK Ideograph */ + [0x66cf, 0x66cf], /* CJK Ideograph */ + [0x66d0, 0x66d0], /* CJK Ideograph */ + [0x66d1, 0x66d1], /* CJK Ideograph */ + [0x66d2, 0x66d2], /* CJK Ideograph */ + [0x66d3, 0x66d3], /* CJK Ideograph */ + [0x66d4, 0x66d4], /* CJK Ideograph */ + [0x66d5, 0x66d5], /* CJK Ideograph */ + [0x66d6, 0x66d6], /* CJK Ideograph */ + [0x66d7, 0x66d7], /* CJK Ideograph */ + [0x66d8, 0x66d8], /* CJK Ideograph */ + [0x66d9, 0x66d9], /* CJK Ideograph */ + [0x66da, 0x66da], /* CJK Ideograph */ + [0x66db, 0x66db], /* CJK Ideograph */ + [0x66dc, 0x66dc], /* CJK Ideograph */ + [0x66dd, 0x66dd], /* CJK Ideograph */ + [0x66de, 0x66de], /* CJK Ideograph */ + [0x66df, 0x66df], /* CJK Ideograph */ + [0x66e0, 0x66e0], /* CJK Ideograph */ + [0x66e1, 0x66e1], /* CJK Ideograph */ + [0x66e2, 0x66e2], /* CJK Ideograph */ + [0x66e3, 0x66e3], /* CJK Ideograph */ + [0x66e4, 0x66e4], /* CJK Ideograph */ + [0x66e5, 0x66e5], /* CJK Ideograph */ + [0x66e6, 0x66e6], /* CJK Ideograph */ + [0x66e7, 0x66e7], /* CJK Ideograph */ + [0x66e8, 0x66e8], /* CJK Ideograph */ + [0x66e9, 0x66e9], /* CJK Ideograph */ + [0x66ea, 0x66ea], /* CJK Ideograph */ + [0x66eb, 0x66eb], /* CJK Ideograph */ + [0x66ec, 0x66ec], /* CJK Ideograph */ + [0x66ed, 0x66ed], /* CJK Ideograph */ + [0x66ee, 0x66ee], /* CJK Ideograph */ + [0x66ef, 0x66ef], /* CJK Ideograph */ + [0x66f0, 0x66f0], /* CJK Ideograph */ + [0x66f1, 0x66f1], /* CJK Ideograph */ + [0x66f2, 0x66f2], /* CJK Ideograph */ + [0x66f3, 0x66f3], /* CJK Ideograph */ + [0x66f4, 0x66f4], /* CJK Ideograph */ + [0x66f5, 0x66f5], /* CJK Ideograph */ + [0x66f6, 0x66f6], /* CJK Ideograph */ + [0x66f7, 0x66f7], /* CJK Ideograph */ + [0x66f8, 0x66f8], /* CJK Ideograph */ + [0x66f9, 0x66f9], /* CJK Ideograph */ + [0x66fa, 0x66fa], /* CJK Ideograph */ + [0x66fb, 0x66fb], /* CJK Ideograph */ + [0x66fc, 0x66fc], /* CJK Ideograph */ + [0x66fd, 0x66fd], /* CJK Ideograph */ + [0x66fe, 0x66fe], /* CJK Ideograph */ + [0x66ff, 0x66ff], /* CJK Ideograph */ + [0x6700, 0x6700], /* CJK Ideograph */ + [0x6701, 0x6701], /* CJK Ideograph */ + [0x6702, 0x6702], /* CJK Ideograph */ + [0x6703, 0x6703], /* CJK Ideograph */ + [0x6704, 0x6704], /* CJK Ideograph */ + [0x6705, 0x6705], /* CJK Ideograph */ + [0x6706, 0x6706], /* CJK Ideograph */ + [0x6707, 0x6707], /* CJK Ideograph */ + [0x6708, 0x6708], /* CJK Ideograph */ + [0x6709, 0x6709], /* CJK Ideograph */ + [0x670a, 0x670a], /* CJK Ideograph */ + [0x670b, 0x670b], /* CJK Ideograph */ + [0x670c, 0x670c], /* CJK Ideograph */ + [0x670d, 0x670d], /* CJK Ideograph */ + [0x670e, 0x670e], /* CJK Ideograph */ + [0x670f, 0x670f], /* CJK Ideograph */ + [0x6710, 0x6710], /* CJK Ideograph */ + [0x6711, 0x6711], /* CJK Ideograph */ + [0x6712, 0x6712], /* CJK Ideograph */ + [0x6713, 0x6713], /* CJK Ideograph */ + [0x6714, 0x6714], /* CJK Ideograph */ + [0x6715, 0x6715], /* CJK Ideograph */ + [0x6716, 0x6716], /* CJK Ideograph */ + [0x6717, 0x6717], /* CJK Ideograph */ + [0x6718, 0x6718], /* CJK Ideograph */ + [0x6719, 0x6719], /* CJK Ideograph */ + [0x671a, 0x671a], /* CJK Ideograph */ + [0x671b, 0x671b], /* CJK Ideograph */ + [0x671c, 0x671c], /* CJK Ideograph */ + [0x671d, 0x671d], /* CJK Ideograph */ + [0x671e, 0x671e], /* CJK Ideograph */ + [0x671f, 0x671f], /* CJK Ideograph */ + [0x6720, 0x6720], /* CJK Ideograph */ + [0x6721, 0x6721], /* CJK Ideograph */ + [0x6722, 0x6722], /* CJK Ideograph */ + [0x6723, 0x6723], /* CJK Ideograph */ + [0x6724, 0x6724], /* CJK Ideograph */ + [0x6725, 0x6725], /* CJK Ideograph */ + [0x6726, 0x6726], /* CJK Ideograph */ + [0x6727, 0x6727], /* CJK Ideograph */ + [0x6728, 0x6728], /* CJK Ideograph */ + [0x6729, 0x6729], /* CJK Ideograph */ + [0x672a, 0x672a], /* CJK Ideograph */ + [0x672b, 0x672b], /* CJK Ideograph */ + [0x672c, 0x672c], /* CJK Ideograph */ + [0x672d, 0x672d], /* CJK Ideograph */ + [0x672e, 0x672e], /* CJK Ideograph */ + [0x672f, 0x672f], /* CJK Ideograph */ + [0x6730, 0x6730], /* CJK Ideograph */ + [0x6731, 0x6731], /* CJK Ideograph */ + [0x6732, 0x6732], /* CJK Ideograph */ + [0x6733, 0x6733], /* CJK Ideograph */ + [0x6734, 0x6734], /* CJK Ideograph */ + [0x6735, 0x6735], /* CJK Ideograph */ + [0x6736, 0x6736], /* CJK Ideograph */ + [0x6737, 0x6737], /* CJK Ideograph */ + [0x6738, 0x6738], /* CJK Ideograph */ + [0x6739, 0x6739], /* CJK Ideograph */ + [0x673a, 0x673a], /* CJK Ideograph */ + [0x673b, 0x673b], /* CJK Ideograph */ + [0x673c, 0x673c], /* CJK Ideograph */ + [0x673d, 0x673d], /* CJK Ideograph */ + [0x673e, 0x673e], /* CJK Ideograph */ + [0x673f, 0x673f], /* CJK Ideograph */ + [0x6740, 0x6740], /* CJK Ideograph */ + [0x6741, 0x6741], /* CJK Ideograph */ + [0x6742, 0x6742], /* CJK Ideograph */ + [0x6743, 0x6743], /* CJK Ideograph */ + [0x6744, 0x6744], /* CJK Ideograph */ + [0x6745, 0x6745], /* CJK Ideograph */ + [0x6746, 0x6746], /* CJK Ideograph */ + [0x6747, 0x6747], /* CJK Ideograph */ + [0x6748, 0x6748], /* CJK Ideograph */ + [0x6749, 0x6749], /* CJK Ideograph */ + [0x674a, 0x674a], /* CJK Ideograph */ + [0x674b, 0x674b], /* CJK Ideograph */ + [0x674c, 0x674c], /* CJK Ideograph */ + [0x674d, 0x674d], /* CJK Ideograph */ + [0x674e, 0x674e], /* CJK Ideograph */ + [0x674f, 0x674f], /* CJK Ideograph */ + [0x6750, 0x6750], /* CJK Ideograph */ + [0x6751, 0x6751], /* CJK Ideograph */ + [0x6752, 0x6752], /* CJK Ideograph */ + [0x6753, 0x6753], /* CJK Ideograph */ + [0x6754, 0x6754], /* CJK Ideograph */ + [0x6755, 0x6755], /* CJK Ideograph */ + [0x6756, 0x6756], /* CJK Ideograph */ + [0x6757, 0x6757], /* CJK Ideograph */ + [0x6758, 0x6758], /* CJK Ideograph */ + [0x6759, 0x6759], /* CJK Ideograph */ + [0x675a, 0x675a], /* CJK Ideograph */ + [0x675b, 0x675b], /* CJK Ideograph */ + [0x675c, 0x675c], /* CJK Ideograph */ + [0x675d, 0x675d], /* CJK Ideograph */ + [0x675e, 0x675e], /* CJK Ideograph */ + [0x675f, 0x675f], /* CJK Ideograph */ + [0x6760, 0x6760], /* CJK Ideograph */ + [0x6761, 0x6761], /* CJK Ideograph */ + [0x6762, 0x6762], /* CJK Ideograph */ + [0x6763, 0x6763], /* CJK Ideograph */ + [0x6764, 0x6764], /* CJK Ideograph */ + [0x6765, 0x6765], /* CJK Ideograph */ + [0x6766, 0x6766], /* CJK Ideograph */ + [0x6767, 0x6767], /* CJK Ideograph */ + [0x6768, 0x6768], /* CJK Ideograph */ + [0x6769, 0x6769], /* CJK Ideograph */ + [0x676a, 0x676a], /* CJK Ideograph */ + [0x676b, 0x676b], /* CJK Ideograph */ + [0x676c, 0x676c], /* CJK Ideograph */ + [0x676d, 0x676d], /* CJK Ideograph */ + [0x676e, 0x676e], /* CJK Ideograph */ + [0x676f, 0x676f], /* CJK Ideograph */ + [0x6770, 0x6770], /* CJK Ideograph */ + [0x6771, 0x6771], /* CJK Ideograph */ + [0x6772, 0x6772], /* CJK Ideograph */ + [0x6773, 0x6773], /* CJK Ideograph */ + [0x6774, 0x6774], /* CJK Ideograph */ + [0x6775, 0x6775], /* CJK Ideograph */ + [0x6776, 0x6776], /* CJK Ideograph */ + [0x6777, 0x6777], /* CJK Ideograph */ + [0x6778, 0x6778], /* CJK Ideograph */ + [0x6779, 0x6779], /* CJK Ideograph */ + [0x677a, 0x677a], /* CJK Ideograph */ + [0x677b, 0x677b], /* CJK Ideograph */ + [0x677c, 0x677c], /* CJK Ideograph */ + [0x677d, 0x677d], /* CJK Ideograph */ + [0x677e, 0x677e], /* CJK Ideograph */ + [0x677f, 0x677f], /* CJK Ideograph */ + [0x6780, 0x6780], /* CJK Ideograph */ + [0x6781, 0x6781], /* CJK Ideograph */ + [0x6782, 0x6782], /* CJK Ideograph */ + [0x6783, 0x6783], /* CJK Ideograph */ + [0x6784, 0x6784], /* CJK Ideograph */ + [0x6785, 0x6785], /* CJK Ideograph */ + [0x6786, 0x6786], /* CJK Ideograph */ + [0x6787, 0x6787], /* CJK Ideograph */ + [0x6788, 0x6788], /* CJK Ideograph */ + [0x6789, 0x6789], /* CJK Ideograph */ + [0x678a, 0x678a], /* CJK Ideograph */ + [0x678b, 0x678b], /* CJK Ideograph */ + [0x678c, 0x678c], /* CJK Ideograph */ + [0x678d, 0x678d], /* CJK Ideograph */ + [0x678e, 0x678e], /* CJK Ideograph */ + [0x678f, 0x678f], /* CJK Ideograph */ + [0x6790, 0x6790], /* CJK Ideograph */ + [0x6791, 0x6791], /* CJK Ideograph */ + [0x6792, 0x6792], /* CJK Ideograph */ + [0x6793, 0x6793], /* CJK Ideograph */ + [0x6794, 0x6794], /* CJK Ideograph */ + [0x6795, 0x6795], /* CJK Ideograph */ + [0x6796, 0x6796], /* CJK Ideograph */ + [0x6797, 0x6797], /* CJK Ideograph */ + [0x6798, 0x6798], /* CJK Ideograph */ + [0x6799, 0x6799], /* CJK Ideograph */ + [0x679a, 0x679a], /* CJK Ideograph */ + [0x679b, 0x679b], /* CJK Ideograph */ + [0x679c, 0x679c], /* CJK Ideograph */ + [0x679d, 0x679d], /* CJK Ideograph */ + [0x679e, 0x679e], /* CJK Ideograph */ + [0x679f, 0x679f], /* CJK Ideograph */ + [0x67a0, 0x67a0], /* CJK Ideograph */ + [0x67a1, 0x67a1], /* CJK Ideograph */ + [0x67a2, 0x67a2], /* CJK Ideograph */ + [0x67a3, 0x67a3], /* CJK Ideograph */ + [0x67a4, 0x67a4], /* CJK Ideograph */ + [0x67a5, 0x67a5], /* CJK Ideograph */ + [0x67a6, 0x67a6], /* CJK Ideograph */ + [0x67a7, 0x67a7], /* CJK Ideograph */ + [0x67a8, 0x67a8], /* CJK Ideograph */ + [0x67a9, 0x67a9], /* CJK Ideograph */ + [0x67aa, 0x67aa], /* CJK Ideograph */ + [0x67ab, 0x67ab], /* CJK Ideograph */ + [0x67ac, 0x67ac], /* CJK Ideograph */ + [0x67ad, 0x67ad], /* CJK Ideograph */ + [0x67ae, 0x67ae], /* CJK Ideograph */ + [0x67af, 0x67af], /* CJK Ideograph */ + [0x67b0, 0x67b0], /* CJK Ideograph */ + [0x67b1, 0x67b1], /* CJK Ideograph */ + [0x67b2, 0x67b2], /* CJK Ideograph */ + [0x67b3, 0x67b3], /* CJK Ideograph */ + [0x67b4, 0x67b4], /* CJK Ideograph */ + [0x67b5, 0x67b5], /* CJK Ideograph */ + [0x67b6, 0x67b6], /* CJK Ideograph */ + [0x67b7, 0x67b7], /* CJK Ideograph */ + [0x67b8, 0x67b8], /* CJK Ideograph */ + [0x67b9, 0x67b9], /* CJK Ideograph */ + [0x67ba, 0x67ba], /* CJK Ideograph */ + [0x67bb, 0x67bb], /* CJK Ideograph */ + [0x67bc, 0x67bc], /* CJK Ideograph */ + [0x67bd, 0x67bd], /* CJK Ideograph */ + [0x67be, 0x67be], /* CJK Ideograph */ + [0x67bf, 0x67bf], /* CJK Ideograph */ + [0x67c0, 0x67c0], /* CJK Ideograph */ + [0x67c1, 0x67c1], /* CJK Ideograph */ + [0x67c2, 0x67c2], /* CJK Ideograph */ + [0x67c3, 0x67c3], /* CJK Ideograph */ + [0x67c4, 0x67c4], /* CJK Ideograph */ + [0x67c5, 0x67c5], /* CJK Ideograph */ + [0x67c6, 0x67c6], /* CJK Ideograph */ + [0x67c7, 0x67c7], /* CJK Ideograph */ + [0x67c8, 0x67c8], /* CJK Ideograph */ + [0x67c9, 0x67c9], /* CJK Ideograph */ + [0x67ca, 0x67ca], /* CJK Ideograph */ + [0x67cb, 0x67cb], /* CJK Ideograph */ + [0x67cc, 0x67cc], /* CJK Ideograph */ + [0x67cd, 0x67cd], /* CJK Ideograph */ + [0x67ce, 0x67ce], /* CJK Ideograph */ + [0x67cf, 0x67cf], /* CJK Ideograph */ + [0x67d0, 0x67d0], /* CJK Ideograph */ + [0x67d1, 0x67d1], /* CJK Ideograph */ + [0x67d2, 0x67d2], /* CJK Ideograph */ + [0x67d3, 0x67d3], /* CJK Ideograph */ + [0x67d4, 0x67d4], /* CJK Ideograph */ + [0x67d5, 0x67d5], /* CJK Ideograph */ + [0x67d6, 0x67d6], /* CJK Ideograph */ + [0x67d7, 0x67d7], /* CJK Ideograph */ + [0x67d8, 0x67d8], /* CJK Ideograph */ + [0x67d9, 0x67d9], /* CJK Ideograph */ + [0x67da, 0x67da], /* CJK Ideograph */ + [0x67db, 0x67db], /* CJK Ideograph */ + [0x67dc, 0x67dc], /* CJK Ideograph */ + [0x67dd, 0x67dd], /* CJK Ideograph */ + [0x67de, 0x67de], /* CJK Ideograph */ + [0x67df, 0x67df], /* CJK Ideograph */ + [0x67e0, 0x67e0], /* CJK Ideograph */ + [0x67e1, 0x67e1], /* CJK Ideograph */ + [0x67e2, 0x67e2], /* CJK Ideograph */ + [0x67e3, 0x67e3], /* CJK Ideograph */ + [0x67e4, 0x67e4], /* CJK Ideograph */ + [0x67e5, 0x67e5], /* CJK Ideograph */ + [0x67e6, 0x67e6], /* CJK Ideograph */ + [0x67e7, 0x67e7], /* CJK Ideograph */ + [0x67e8, 0x67e8], /* CJK Ideograph */ + [0x67e9, 0x67e9], /* CJK Ideograph */ + [0x67ea, 0x67ea], /* CJK Ideograph */ + [0x67eb, 0x67eb], /* CJK Ideograph */ + [0x67ec, 0x67ec], /* CJK Ideograph */ + [0x67ed, 0x67ed], /* CJK Ideograph */ + [0x67ee, 0x67ee], /* CJK Ideograph */ + [0x67ef, 0x67ef], /* CJK Ideograph */ + [0x67f0, 0x67f0], /* CJK Ideograph */ + [0x67f1, 0x67f1], /* CJK Ideograph */ + [0x67f2, 0x67f2], /* CJK Ideograph */ + [0x67f3, 0x67f3], /* CJK Ideograph */ + [0x67f4, 0x67f4], /* CJK Ideograph */ + [0x67f5, 0x67f5], /* CJK Ideograph */ + [0x67f6, 0x67f6], /* CJK Ideograph */ + [0x67f7, 0x67f7], /* CJK Ideograph */ + [0x67f8, 0x67f8], /* CJK Ideograph */ + [0x67f9, 0x67f9], /* CJK Ideograph */ + [0x67fa, 0x67fa], /* CJK Ideograph */ + [0x67fb, 0x67fb], /* CJK Ideograph */ + [0x67fc, 0x67fc], /* CJK Ideograph */ + [0x67fd, 0x67fd], /* CJK Ideograph */ + [0x67fe, 0x67fe], /* CJK Ideograph */ + [0x67ff, 0x67ff], /* CJK Ideograph */ + [0x6800, 0x6800], /* CJK Ideograph */ + [0x6801, 0x6801], /* CJK Ideograph */ + [0x6802, 0x6802], /* CJK Ideograph */ + [0x6803, 0x6803], /* CJK Ideograph */ + [0x6804, 0x6804], /* CJK Ideograph */ + [0x6805, 0x6805], /* CJK Ideograph */ + [0x6806, 0x6806], /* CJK Ideograph */ + [0x6807, 0x6807], /* CJK Ideograph */ + [0x6808, 0x6808], /* CJK Ideograph */ + [0x6809, 0x6809], /* CJK Ideograph */ + [0x680a, 0x680a], /* CJK Ideograph */ + [0x680b, 0x680b], /* CJK Ideograph */ + [0x680c, 0x680c], /* CJK Ideograph */ + [0x680d, 0x680d], /* CJK Ideograph */ + [0x680e, 0x680e], /* CJK Ideograph */ + [0x680f, 0x680f], /* CJK Ideograph */ + [0x6810, 0x6810], /* CJK Ideograph */ + [0x6811, 0x6811], /* CJK Ideograph */ + [0x6812, 0x6812], /* CJK Ideograph */ + [0x6813, 0x6813], /* CJK Ideograph */ + [0x6814, 0x6814], /* CJK Ideograph */ + [0x6815, 0x6815], /* CJK Ideograph */ + [0x6816, 0x6816], /* CJK Ideograph */ + [0x6817, 0x6817], /* CJK Ideograph */ + [0x6818, 0x6818], /* CJK Ideograph */ + [0x6819, 0x6819], /* CJK Ideograph */ + [0x681a, 0x681a], /* CJK Ideograph */ + [0x681b, 0x681b], /* CJK Ideograph */ + [0x681c, 0x681c], /* CJK Ideograph */ + [0x681d, 0x681d], /* CJK Ideograph */ + [0x681e, 0x681e], /* CJK Ideograph */ + [0x681f, 0x681f], /* CJK Ideograph */ + [0x6820, 0x6820], /* CJK Ideograph */ + [0x6821, 0x6821], /* CJK Ideograph */ + [0x6822, 0x6822], /* CJK Ideograph */ + [0x6823, 0x6823], /* CJK Ideograph */ + [0x6824, 0x6824], /* CJK Ideograph */ + [0x6825, 0x6825], /* CJK Ideograph */ + [0x6826, 0x6826], /* CJK Ideograph */ + [0x6827, 0x6827], /* CJK Ideograph */ + [0x6828, 0x6828], /* CJK Ideograph */ + [0x6829, 0x6829], /* CJK Ideograph */ + [0x682a, 0x682a], /* CJK Ideograph */ + [0x682b, 0x682b], /* CJK Ideograph */ + [0x682c, 0x682c], /* CJK Ideograph */ + [0x682d, 0x682d], /* CJK Ideograph */ + [0x682e, 0x682e], /* CJK Ideograph */ + [0x682f, 0x682f], /* CJK Ideograph */ + [0x6830, 0x6830], /* CJK Ideograph */ + [0x6831, 0x6831], /* CJK Ideograph */ + [0x6832, 0x6832], /* CJK Ideograph */ + [0x6833, 0x6833], /* CJK Ideograph */ + [0x6834, 0x6834], /* CJK Ideograph */ + [0x6835, 0x6835], /* CJK Ideograph */ + [0x6836, 0x6836], /* CJK Ideograph */ + [0x6837, 0x6837], /* CJK Ideograph */ + [0x6838, 0x6838], /* CJK Ideograph */ + [0x6839, 0x6839], /* CJK Ideograph */ + [0x683a, 0x683a], /* CJK Ideograph */ + [0x683b, 0x683b], /* CJK Ideograph */ + [0x683c, 0x683c], /* CJK Ideograph */ + [0x683d, 0x683d], /* CJK Ideograph */ + [0x683e, 0x683e], /* CJK Ideograph */ + [0x683f, 0x683f], /* CJK Ideograph */ + [0x6840, 0x6840], /* CJK Ideograph */ + [0x6841, 0x6841], /* CJK Ideograph */ + [0x6842, 0x6842], /* CJK Ideograph */ + [0x6843, 0x6843], /* CJK Ideograph */ + [0x6844, 0x6844], /* CJK Ideograph */ + [0x6845, 0x6845], /* CJK Ideograph */ + [0x6846, 0x6846], /* CJK Ideograph */ + [0x6847, 0x6847], /* CJK Ideograph */ + [0x6848, 0x6848], /* CJK Ideograph */ + [0x6849, 0x6849], /* CJK Ideograph */ + [0x684a, 0x684a], /* CJK Ideograph */ + [0x684b, 0x684b], /* CJK Ideograph */ + [0x684c, 0x684c], /* CJK Ideograph */ + [0x684d, 0x684d], /* CJK Ideograph */ + [0x684e, 0x684e], /* CJK Ideograph */ + [0x684f, 0x684f], /* CJK Ideograph */ + [0x6850, 0x6850], /* CJK Ideograph */ + [0x6851, 0x6851], /* CJK Ideograph */ + [0x6852, 0x6852], /* CJK Ideograph */ + [0x6853, 0x6853], /* CJK Ideograph */ + [0x6854, 0x6854], /* CJK Ideograph */ + [0x6855, 0x6855], /* CJK Ideograph */ + [0x6856, 0x6856], /* CJK Ideograph */ + [0x6857, 0x6857], /* CJK Ideograph */ + [0x6858, 0x6858], /* CJK Ideograph */ + [0x6859, 0x6859], /* CJK Ideograph */ + [0x685a, 0x685a], /* CJK Ideograph */ + [0x685b, 0x685b], /* CJK Ideograph */ + [0x685c, 0x685c], /* CJK Ideograph */ + [0x685d, 0x685d], /* CJK Ideograph */ + [0x685e, 0x685e], /* CJK Ideograph */ + [0x685f, 0x685f], /* CJK Ideograph */ + [0x6860, 0x6860], /* CJK Ideograph */ + [0x6861, 0x6861], /* CJK Ideograph */ + [0x6862, 0x6862], /* CJK Ideograph */ + [0x6863, 0x6863], /* CJK Ideograph */ + [0x6864, 0x6864], /* CJK Ideograph */ + [0x6865, 0x6865], /* CJK Ideograph */ + [0x6866, 0x6866], /* CJK Ideograph */ + [0x6867, 0x6867], /* CJK Ideograph */ + [0x6868, 0x6868], /* CJK Ideograph */ + [0x6869, 0x6869], /* CJK Ideograph */ + [0x686a, 0x686a], /* CJK Ideograph */ + [0x686b, 0x686b], /* CJK Ideograph */ + [0x686c, 0x686c], /* CJK Ideograph */ + [0x686d, 0x686d], /* CJK Ideograph */ + [0x686e, 0x686e], /* CJK Ideograph */ + [0x686f, 0x686f], /* CJK Ideograph */ + [0x6870, 0x6870], /* CJK Ideograph */ + [0x6871, 0x6871], /* CJK Ideograph */ + [0x6872, 0x6872], /* CJK Ideograph */ + [0x6873, 0x6873], /* CJK Ideograph */ + [0x6874, 0x6874], /* CJK Ideograph */ + [0x6875, 0x6875], /* CJK Ideograph */ + [0x6876, 0x6876], /* CJK Ideograph */ + [0x6877, 0x6877], /* CJK Ideograph */ + [0x6878, 0x6878], /* CJK Ideograph */ + [0x6879, 0x6879], /* CJK Ideograph */ + [0x687a, 0x687a], /* CJK Ideograph */ + [0x687b, 0x687b], /* CJK Ideograph */ + [0x687c, 0x687c], /* CJK Ideograph */ + [0x687d, 0x687d], /* CJK Ideograph */ + [0x687e, 0x687e], /* CJK Ideograph */ + [0x687f, 0x687f], /* CJK Ideograph */ + [0x6880, 0x6880], /* CJK Ideograph */ + [0x6881, 0x6881], /* CJK Ideograph */ + [0x6882, 0x6882], /* CJK Ideograph */ + [0x6883, 0x6883], /* CJK Ideograph */ + [0x6884, 0x6884], /* CJK Ideograph */ + [0x6885, 0x6885], /* CJK Ideograph */ + [0x6886, 0x6886], /* CJK Ideograph */ + [0x6887, 0x6887], /* CJK Ideograph */ + [0x6888, 0x6888], /* CJK Ideograph */ + [0x6889, 0x6889], /* CJK Ideograph */ + [0x688a, 0x688a], /* CJK Ideograph */ + [0x688b, 0x688b], /* CJK Ideograph */ + [0x688c, 0x688c], /* CJK Ideograph */ + [0x688d, 0x688d], /* CJK Ideograph */ + [0x688e, 0x688e], /* CJK Ideograph */ + [0x688f, 0x688f], /* CJK Ideograph */ + [0x6890, 0x6890], /* CJK Ideograph */ + [0x6891, 0x6891], /* CJK Ideograph */ + [0x6892, 0x6892], /* CJK Ideograph */ + [0x6893, 0x6893], /* CJK Ideograph */ + [0x6894, 0x6894], /* CJK Ideograph */ + [0x6895, 0x6895], /* CJK Ideograph */ + [0x6896, 0x6896], /* CJK Ideograph */ + [0x6897, 0x6897], /* CJK Ideograph */ + [0x6898, 0x6898], /* CJK Ideograph */ + [0x6899, 0x6899], /* CJK Ideograph */ + [0x689a, 0x689a], /* CJK Ideograph */ + [0x689b, 0x689b], /* CJK Ideograph */ + [0x689c, 0x689c], /* CJK Ideograph */ + [0x689d, 0x689d], /* CJK Ideograph */ + [0x689e, 0x689e], /* CJK Ideograph */ + [0x689f, 0x689f], /* CJK Ideograph */ + [0x68a0, 0x68a0], /* CJK Ideograph */ + [0x68a1, 0x68a1], /* CJK Ideograph */ + [0x68a2, 0x68a2], /* CJK Ideograph */ + [0x68a3, 0x68a3], /* CJK Ideograph */ + [0x68a4, 0x68a4], /* CJK Ideograph */ + [0x68a5, 0x68a5], /* CJK Ideograph */ + [0x68a6, 0x68a6], /* CJK Ideograph */ + [0x68a7, 0x68a7], /* CJK Ideograph */ + [0x68a8, 0x68a8], /* CJK Ideograph */ + [0x68a9, 0x68a9], /* CJK Ideograph */ + [0x68aa, 0x68aa], /* CJK Ideograph */ + [0x68ab, 0x68ab], /* CJK Ideograph */ + [0x68ac, 0x68ac], /* CJK Ideograph */ + [0x68ad, 0x68ad], /* CJK Ideograph */ + [0x68ae, 0x68ae], /* CJK Ideograph */ + [0x68af, 0x68af], /* CJK Ideograph */ + [0x68b0, 0x68b0], /* CJK Ideograph */ + [0x68b1, 0x68b1], /* CJK Ideograph */ + [0x68b2, 0x68b2], /* CJK Ideograph */ + [0x68b3, 0x68b3], /* CJK Ideograph */ + [0x68b4, 0x68b4], /* CJK Ideograph */ + [0x68b5, 0x68b5], /* CJK Ideograph */ + [0x68b6, 0x68b6], /* CJK Ideograph */ + [0x68b7, 0x68b7], /* CJK Ideograph */ + [0x68b8, 0x68b8], /* CJK Ideograph */ + [0x68b9, 0x68b9], /* CJK Ideograph */ + [0x68ba, 0x68ba], /* CJK Ideograph */ + [0x68bb, 0x68bb], /* CJK Ideograph */ + [0x68bc, 0x68bc], /* CJK Ideograph */ + [0x68bd, 0x68bd], /* CJK Ideograph */ + [0x68be, 0x68be], /* CJK Ideograph */ + [0x68bf, 0x68bf], /* CJK Ideograph */ + [0x68c0, 0x68c0], /* CJK Ideograph */ + [0x68c1, 0x68c1], /* CJK Ideograph */ + [0x68c2, 0x68c2], /* CJK Ideograph */ + [0x68c3, 0x68c3], /* CJK Ideograph */ + [0x68c4, 0x68c4], /* CJK Ideograph */ + [0x68c5, 0x68c5], /* CJK Ideograph */ + [0x68c6, 0x68c6], /* CJK Ideograph */ + [0x68c7, 0x68c7], /* CJK Ideograph */ + [0x68c8, 0x68c8], /* CJK Ideograph */ + [0x68c9, 0x68c9], /* CJK Ideograph */ + [0x68ca, 0x68ca], /* CJK Ideograph */ + [0x68cb, 0x68cb], /* CJK Ideograph */ + [0x68cc, 0x68cc], /* CJK Ideograph */ + [0x68cd, 0x68cd], /* CJK Ideograph */ + [0x68ce, 0x68ce], /* CJK Ideograph */ + [0x68cf, 0x68cf], /* CJK Ideograph */ + [0x68d0, 0x68d0], /* CJK Ideograph */ + [0x68d1, 0x68d1], /* CJK Ideograph */ + [0x68d2, 0x68d2], /* CJK Ideograph */ + [0x68d3, 0x68d3], /* CJK Ideograph */ + [0x68d4, 0x68d4], /* CJK Ideograph */ + [0x68d5, 0x68d5], /* CJK Ideograph */ + [0x68d6, 0x68d6], /* CJK Ideograph */ + [0x68d7, 0x68d7], /* CJK Ideograph */ + [0x68d8, 0x68d8], /* CJK Ideograph */ + [0x68d9, 0x68d9], /* CJK Ideograph */ + [0x68da, 0x68da], /* CJK Ideograph */ + [0x68db, 0x68db], /* CJK Ideograph */ + [0x68dc, 0x68dc], /* CJK Ideograph */ + [0x68dd, 0x68dd], /* CJK Ideograph */ + [0x68de, 0x68de], /* CJK Ideograph */ + [0x68df, 0x68df], /* CJK Ideograph */ + [0x68e0, 0x68e0], /* CJK Ideograph */ + [0x68e1, 0x68e1], /* CJK Ideograph */ + [0x68e2, 0x68e2], /* CJK Ideograph */ + [0x68e3, 0x68e3], /* CJK Ideograph */ + [0x68e4, 0x68e4], /* CJK Ideograph */ + [0x68e5, 0x68e5], /* CJK Ideograph */ + [0x68e6, 0x68e6], /* CJK Ideograph */ + [0x68e7, 0x68e7], /* CJK Ideograph */ + [0x68e8, 0x68e8], /* CJK Ideograph */ + [0x68e9, 0x68e9], /* CJK Ideograph */ + [0x68ea, 0x68ea], /* CJK Ideograph */ + [0x68eb, 0x68eb], /* CJK Ideograph */ + [0x68ec, 0x68ec], /* CJK Ideograph */ + [0x68ed, 0x68ed], /* CJK Ideograph */ + [0x68ee, 0x68ee], /* CJK Ideograph */ + [0x68ef, 0x68ef], /* CJK Ideograph */ + [0x68f0, 0x68f0], /* CJK Ideograph */ + [0x68f1, 0x68f1], /* CJK Ideograph */ + [0x68f2, 0x68f2], /* CJK Ideograph */ + [0x68f3, 0x68f3], /* CJK Ideograph */ + [0x68f4, 0x68f4], /* CJK Ideograph */ + [0x68f5, 0x68f5], /* CJK Ideograph */ + [0x68f6, 0x68f6], /* CJK Ideograph */ + [0x68f7, 0x68f7], /* CJK Ideograph */ + [0x68f8, 0x68f8], /* CJK Ideograph */ + [0x68f9, 0x68f9], /* CJK Ideograph */ + [0x68fa, 0x68fa], /* CJK Ideograph */ + [0x68fb, 0x68fb], /* CJK Ideograph */ + [0x68fc, 0x68fc], /* CJK Ideograph */ + [0x68fd, 0x68fd], /* CJK Ideograph */ + [0x68fe, 0x68fe], /* CJK Ideograph */ + [0x68ff, 0x68ff], /* CJK Ideograph */ + [0x6900, 0x6900], /* CJK Ideograph */ + [0x6901, 0x6901], /* CJK Ideograph */ + [0x6902, 0x6902], /* CJK Ideograph */ + [0x6903, 0x6903], /* CJK Ideograph */ + [0x6904, 0x6904], /* CJK Ideograph */ + [0x6905, 0x6905], /* CJK Ideograph */ + [0x6906, 0x6906], /* CJK Ideograph */ + [0x6907, 0x6907], /* CJK Ideograph */ + [0x6908, 0x6908], /* CJK Ideograph */ + [0x6909, 0x6909], /* CJK Ideograph */ + [0x690a, 0x690a], /* CJK Ideograph */ + [0x690b, 0x690b], /* CJK Ideograph */ + [0x690c, 0x690c], /* CJK Ideograph */ + [0x690d, 0x690d], /* CJK Ideograph */ + [0x690e, 0x690e], /* CJK Ideograph */ + [0x690f, 0x690f], /* CJK Ideograph */ + [0x6910, 0x6910], /* CJK Ideograph */ + [0x6911, 0x6911], /* CJK Ideograph */ + [0x6912, 0x6912], /* CJK Ideograph */ + [0x6913, 0x6913], /* CJK Ideograph */ + [0x6914, 0x6914], /* CJK Ideograph */ + [0x6915, 0x6915], /* CJK Ideograph */ + [0x6916, 0x6916], /* CJK Ideograph */ + [0x6917, 0x6917], /* CJK Ideograph */ + [0x6918, 0x6918], /* CJK Ideograph */ + [0x6919, 0x6919], /* CJK Ideograph */ + [0x691a, 0x691a], /* CJK Ideograph */ + [0x691b, 0x691b], /* CJK Ideograph */ + [0x691c, 0x691c], /* CJK Ideograph */ + [0x691d, 0x691d], /* CJK Ideograph */ + [0x691e, 0x691e], /* CJK Ideograph */ + [0x691f, 0x691f], /* CJK Ideograph */ + [0x6920, 0x6920], /* CJK Ideograph */ + [0x6921, 0x6921], /* CJK Ideograph */ + [0x6922, 0x6922], /* CJK Ideograph */ + [0x6923, 0x6923], /* CJK Ideograph */ + [0x6924, 0x6924], /* CJK Ideograph */ + [0x6925, 0x6925], /* CJK Ideograph */ + [0x6926, 0x6926], /* CJK Ideograph */ + [0x6927, 0x6927], /* CJK Ideograph */ + [0x6928, 0x6928], /* CJK Ideograph */ + [0x6929, 0x6929], /* CJK Ideograph */ + [0x692a, 0x692a], /* CJK Ideograph */ + [0x692b, 0x692b], /* CJK Ideograph */ + [0x692c, 0x692c], /* CJK Ideograph */ + [0x692d, 0x692d], /* CJK Ideograph */ + [0x692e, 0x692e], /* CJK Ideograph */ + [0x692f, 0x692f], /* CJK Ideograph */ + [0x6930, 0x6930], /* CJK Ideograph */ + [0x6931, 0x6931], /* CJK Ideograph */ + [0x6932, 0x6932], /* CJK Ideograph */ + [0x6933, 0x6933], /* CJK Ideograph */ + [0x6934, 0x6934], /* CJK Ideograph */ + [0x6935, 0x6935], /* CJK Ideograph */ + [0x6936, 0x6936], /* CJK Ideograph */ + [0x6937, 0x6937], /* CJK Ideograph */ + [0x6938, 0x6938], /* CJK Ideograph */ + [0x6939, 0x6939], /* CJK Ideograph */ + [0x693a, 0x693a], /* CJK Ideograph */ + [0x693b, 0x693b], /* CJK Ideograph */ + [0x693c, 0x693c], /* CJK Ideograph */ + [0x693d, 0x693d], /* CJK Ideograph */ + [0x693e, 0x693e], /* CJK Ideograph */ + [0x693f, 0x693f], /* CJK Ideograph */ + [0x6940, 0x6940], /* CJK Ideograph */ + [0x6941, 0x6941], /* CJK Ideograph */ + [0x6942, 0x6942], /* CJK Ideograph */ + [0x6943, 0x6943], /* CJK Ideograph */ + [0x6944, 0x6944], /* CJK Ideograph */ + [0x6945, 0x6945], /* CJK Ideograph */ + [0x6946, 0x6946], /* CJK Ideograph */ + [0x6947, 0x6947], /* CJK Ideograph */ + [0x6948, 0x6948], /* CJK Ideograph */ + [0x6949, 0x6949], /* CJK Ideograph */ + [0x694a, 0x694a], /* CJK Ideograph */ + [0x694b, 0x694b], /* CJK Ideograph */ + [0x694c, 0x694c], /* CJK Ideograph */ + [0x694d, 0x694d], /* CJK Ideograph */ + [0x694e, 0x694e], /* CJK Ideograph */ + [0x694f, 0x694f], /* CJK Ideograph */ + [0x6950, 0x6950], /* CJK Ideograph */ + [0x6951, 0x6951], /* CJK Ideograph */ + [0x6952, 0x6952], /* CJK Ideograph */ + [0x6953, 0x6953], /* CJK Ideograph */ + [0x6954, 0x6954], /* CJK Ideograph */ + [0x6955, 0x6955], /* CJK Ideograph */ + [0x6956, 0x6956], /* CJK Ideograph */ + [0x6957, 0x6957], /* CJK Ideograph */ + [0x6958, 0x6958], /* CJK Ideograph */ + [0x6959, 0x6959], /* CJK Ideograph */ + [0x695a, 0x695a], /* CJK Ideograph */ + [0x695b, 0x695b], /* CJK Ideograph */ + [0x695c, 0x695c], /* CJK Ideograph */ + [0x695d, 0x695d], /* CJK Ideograph */ + [0x695e, 0x695e], /* CJK Ideograph */ + [0x695f, 0x695f], /* CJK Ideograph */ + [0x6960, 0x6960], /* CJK Ideograph */ + [0x6961, 0x6961], /* CJK Ideograph */ + [0x6962, 0x6962], /* CJK Ideograph */ + [0x6963, 0x6963], /* CJK Ideograph */ + [0x6964, 0x6964], /* CJK Ideograph */ + [0x6965, 0x6965], /* CJK Ideograph */ + [0x6966, 0x6966], /* CJK Ideograph */ + [0x6967, 0x6967], /* CJK Ideograph */ + [0x6968, 0x6968], /* CJK Ideograph */ + [0x6969, 0x6969], /* CJK Ideograph */ + [0x696a, 0x696a], /* CJK Ideograph */ + [0x696b, 0x696b], /* CJK Ideograph */ + [0x696c, 0x696c], /* CJK Ideograph */ + [0x696d, 0x696d], /* CJK Ideograph */ + [0x696e, 0x696e], /* CJK Ideograph */ + [0x696f, 0x696f], /* CJK Ideograph */ + [0x6970, 0x6970], /* CJK Ideograph */ + [0x6971, 0x6971], /* CJK Ideograph */ + [0x6972, 0x6972], /* CJK Ideograph */ + [0x6973, 0x6973], /* CJK Ideograph */ + [0x6974, 0x6974], /* CJK Ideograph */ + [0x6975, 0x6975], /* CJK Ideograph */ + [0x6976, 0x6976], /* CJK Ideograph */ + [0x6977, 0x6977], /* CJK Ideograph */ + [0x6978, 0x6978], /* CJK Ideograph */ + [0x6979, 0x6979], /* CJK Ideograph */ + [0x697a, 0x697a], /* CJK Ideograph */ + [0x697b, 0x697b], /* CJK Ideograph */ + [0x697c, 0x697c], /* CJK Ideograph */ + [0x697d, 0x697d], /* CJK Ideograph */ + [0x697e, 0x697e], /* CJK Ideograph */ + [0x697f, 0x697f], /* CJK Ideograph */ + [0x6980, 0x6980], /* CJK Ideograph */ + [0x6981, 0x6981], /* CJK Ideograph */ + [0x6982, 0x6982], /* CJK Ideograph */ + [0x6983, 0x6983], /* CJK Ideograph */ + [0x6984, 0x6984], /* CJK Ideograph */ + [0x6985, 0x6985], /* CJK Ideograph */ + [0x6986, 0x6986], /* CJK Ideograph */ + [0x6987, 0x6987], /* CJK Ideograph */ + [0x6988, 0x6988], /* CJK Ideograph */ + [0x6989, 0x6989], /* CJK Ideograph */ + [0x698a, 0x698a], /* CJK Ideograph */ + [0x698b, 0x698b], /* CJK Ideograph */ + [0x698c, 0x698c], /* CJK Ideograph */ + [0x698d, 0x698d], /* CJK Ideograph */ + [0x698e, 0x698e], /* CJK Ideograph */ + [0x698f, 0x698f], /* CJK Ideograph */ + [0x6990, 0x6990], /* CJK Ideograph */ + [0x6991, 0x6991], /* CJK Ideograph */ + [0x6992, 0x6992], /* CJK Ideograph */ + [0x6993, 0x6993], /* CJK Ideograph */ + [0x6994, 0x6994], /* CJK Ideograph */ + [0x6995, 0x6995], /* CJK Ideograph */ + [0x6996, 0x6996], /* CJK Ideograph */ + [0x6997, 0x6997], /* CJK Ideograph */ + [0x6998, 0x6998], /* CJK Ideograph */ + [0x6999, 0x6999], /* CJK Ideograph */ + [0x699a, 0x699a], /* CJK Ideograph */ + [0x699b, 0x699b], /* CJK Ideograph */ + [0x699c, 0x699c], /* CJK Ideograph */ + [0x699d, 0x699d], /* CJK Ideograph */ + [0x699e, 0x699e], /* CJK Ideograph */ + [0x699f, 0x699f], /* CJK Ideograph */ + [0x69a0, 0x69a0], /* CJK Ideograph */ + [0x69a1, 0x69a1], /* CJK Ideograph */ + [0x69a2, 0x69a2], /* CJK Ideograph */ + [0x69a3, 0x69a3], /* CJK Ideograph */ + [0x69a4, 0x69a4], /* CJK Ideograph */ + [0x69a5, 0x69a5], /* CJK Ideograph */ + [0x69a6, 0x69a6], /* CJK Ideograph */ + [0x69a7, 0x69a7], /* CJK Ideograph */ + [0x69a8, 0x69a8], /* CJK Ideograph */ + [0x69a9, 0x69a9], /* CJK Ideograph */ + [0x69aa, 0x69aa], /* CJK Ideograph */ + [0x69ab, 0x69ab], /* CJK Ideograph */ + [0x69ac, 0x69ac], /* CJK Ideograph */ + [0x69ad, 0x69ad], /* CJK Ideograph */ + [0x69ae, 0x69ae], /* CJK Ideograph */ + [0x69af, 0x69af], /* CJK Ideograph */ + [0x69b0, 0x69b0], /* CJK Ideograph */ + [0x69b1, 0x69b1], /* CJK Ideograph */ + [0x69b2, 0x69b2], /* CJK Ideograph */ + [0x69b3, 0x69b3], /* CJK Ideograph */ + [0x69b4, 0x69b4], /* CJK Ideograph */ + [0x69b5, 0x69b5], /* CJK Ideograph */ + [0x69b6, 0x69b6], /* CJK Ideograph */ + [0x69b7, 0x69b7], /* CJK Ideograph */ + [0x69b8, 0x69b8], /* CJK Ideograph */ + [0x69b9, 0x69b9], /* CJK Ideograph */ + [0x69ba, 0x69ba], /* CJK Ideograph */ + [0x69bb, 0x69bb], /* CJK Ideograph */ + [0x69bc, 0x69bc], /* CJK Ideograph */ + [0x69bd, 0x69bd], /* CJK Ideograph */ + [0x69be, 0x69be], /* CJK Ideograph */ + [0x69bf, 0x69bf], /* CJK Ideograph */ + [0x69c0, 0x69c0], /* CJK Ideograph */ + [0x69c1, 0x69c1], /* CJK Ideograph */ + [0x69c2, 0x69c2], /* CJK Ideograph */ + [0x69c3, 0x69c3], /* CJK Ideograph */ + [0x69c4, 0x69c4], /* CJK Ideograph */ + [0x69c5, 0x69c5], /* CJK Ideograph */ + [0x69c6, 0x69c6], /* CJK Ideograph */ + [0x69c7, 0x69c7], /* CJK Ideograph */ + [0x69c8, 0x69c8], /* CJK Ideograph */ + [0x69c9, 0x69c9], /* CJK Ideograph */ + [0x69ca, 0x69ca], /* CJK Ideograph */ + [0x69cb, 0x69cb], /* CJK Ideograph */ + [0x69cc, 0x69cc], /* CJK Ideograph */ + [0x69cd, 0x69cd], /* CJK Ideograph */ + [0x69ce, 0x69ce], /* CJK Ideograph */ + [0x69cf, 0x69cf], /* CJK Ideograph */ + [0x69d0, 0x69d0], /* CJK Ideograph */ + [0x69d1, 0x69d1], /* CJK Ideograph */ + [0x69d2, 0x69d2], /* CJK Ideograph */ + [0x69d3, 0x69d3], /* CJK Ideograph */ + [0x69d4, 0x69d4], /* CJK Ideograph */ + [0x69d5, 0x69d5], /* CJK Ideograph */ + [0x69d6, 0x69d6], /* CJK Ideograph */ + [0x69d7, 0x69d7], /* CJK Ideograph */ + [0x69d8, 0x69d8], /* CJK Ideograph */ + [0x69d9, 0x69d9], /* CJK Ideograph */ + [0x69da, 0x69da], /* CJK Ideograph */ + [0x69db, 0x69db], /* CJK Ideograph */ + [0x69dc, 0x69dc], /* CJK Ideograph */ + [0x69dd, 0x69dd], /* CJK Ideograph */ + [0x69de, 0x69de], /* CJK Ideograph */ + [0x69df, 0x69df], /* CJK Ideograph */ + [0x69e0, 0x69e0], /* CJK Ideograph */ + [0x69e1, 0x69e1], /* CJK Ideograph */ + [0x69e2, 0x69e2], /* CJK Ideograph */ + [0x69e3, 0x69e3], /* CJK Ideograph */ + [0x69e4, 0x69e4], /* CJK Ideograph */ + [0x69e5, 0x69e5], /* CJK Ideograph */ + [0x69e6, 0x69e6], /* CJK Ideograph */ + [0x69e7, 0x69e7], /* CJK Ideograph */ + [0x69e8, 0x69e8], /* CJK Ideograph */ + [0x69e9, 0x69e9], /* CJK Ideograph */ + [0x69ea, 0x69ea], /* CJK Ideograph */ + [0x69eb, 0x69eb], /* CJK Ideograph */ + [0x69ec, 0x69ec], /* CJK Ideograph */ + [0x69ed, 0x69ed], /* CJK Ideograph */ + [0x69ee, 0x69ee], /* CJK Ideograph */ + [0x69ef, 0x69ef], /* CJK Ideograph */ + [0x69f0, 0x69f0], /* CJK Ideograph */ + [0x69f1, 0x69f1], /* CJK Ideograph */ + [0x69f2, 0x69f2], /* CJK Ideograph */ + [0x69f3, 0x69f3], /* CJK Ideograph */ + [0x69f4, 0x69f4], /* CJK Ideograph */ + [0x69f5, 0x69f5], /* CJK Ideograph */ + [0x69f6, 0x69f6], /* CJK Ideograph */ + [0x69f7, 0x69f7], /* CJK Ideograph */ + [0x69f8, 0x69f8], /* CJK Ideograph */ + [0x69f9, 0x69f9], /* CJK Ideograph */ + [0x69fa, 0x69fa], /* CJK Ideograph */ + [0x69fb, 0x69fb], /* CJK Ideograph */ + [0x69fc, 0x69fc], /* CJK Ideograph */ + [0x69fd, 0x69fd], /* CJK Ideograph */ + [0x69fe, 0x69fe], /* CJK Ideograph */ + [0x69ff, 0x69ff], /* CJK Ideograph */ + [0x6a00, 0x6a00], /* CJK Ideograph */ + [0x6a01, 0x6a01], /* CJK Ideograph */ + [0x6a02, 0x6a02], /* CJK Ideograph */ + [0x6a03, 0x6a03], /* CJK Ideograph */ + [0x6a04, 0x6a04], /* CJK Ideograph */ + [0x6a05, 0x6a05], /* CJK Ideograph */ + [0x6a06, 0x6a06], /* CJK Ideograph */ + [0x6a07, 0x6a07], /* CJK Ideograph */ + [0x6a08, 0x6a08], /* CJK Ideograph */ + [0x6a09, 0x6a09], /* CJK Ideograph */ + [0x6a0a, 0x6a0a], /* CJK Ideograph */ + [0x6a0b, 0x6a0b], /* CJK Ideograph */ + [0x6a0c, 0x6a0c], /* CJK Ideograph */ + [0x6a0d, 0x6a0d], /* CJK Ideograph */ + [0x6a0e, 0x6a0e], /* CJK Ideograph */ + [0x6a0f, 0x6a0f], /* CJK Ideograph */ + [0x6a10, 0x6a10], /* CJK Ideograph */ + [0x6a11, 0x6a11], /* CJK Ideograph */ + [0x6a12, 0x6a12], /* CJK Ideograph */ + [0x6a13, 0x6a13], /* CJK Ideograph */ + [0x6a14, 0x6a14], /* CJK Ideograph */ + [0x6a15, 0x6a15], /* CJK Ideograph */ + [0x6a16, 0x6a16], /* CJK Ideograph */ + [0x6a17, 0x6a17], /* CJK Ideograph */ + [0x6a18, 0x6a18], /* CJK Ideograph */ + [0x6a19, 0x6a19], /* CJK Ideograph */ + [0x6a1a, 0x6a1a], /* CJK Ideograph */ + [0x6a1b, 0x6a1b], /* CJK Ideograph */ + [0x6a1c, 0x6a1c], /* CJK Ideograph */ + [0x6a1d, 0x6a1d], /* CJK Ideograph */ + [0x6a1e, 0x6a1e], /* CJK Ideograph */ + [0x6a1f, 0x6a1f], /* CJK Ideograph */ + [0x6a20, 0x6a20], /* CJK Ideograph */ + [0x6a21, 0x6a21], /* CJK Ideograph */ + [0x6a22, 0x6a22], /* CJK Ideograph */ + [0x6a23, 0x6a23], /* CJK Ideograph */ + [0x6a24, 0x6a24], /* CJK Ideograph */ + [0x6a25, 0x6a25], /* CJK Ideograph */ + [0x6a26, 0x6a26], /* CJK Ideograph */ + [0x6a27, 0x6a27], /* CJK Ideograph */ + [0x6a28, 0x6a28], /* CJK Ideograph */ + [0x6a29, 0x6a29], /* CJK Ideograph */ + [0x6a2a, 0x6a2a], /* CJK Ideograph */ + [0x6a2b, 0x6a2b], /* CJK Ideograph */ + [0x6a2c, 0x6a2c], /* CJK Ideograph */ + [0x6a2d, 0x6a2d], /* CJK Ideograph */ + [0x6a2e, 0x6a2e], /* CJK Ideograph */ + [0x6a2f, 0x6a2f], /* CJK Ideograph */ + [0x6a30, 0x6a30], /* CJK Ideograph */ + [0x6a31, 0x6a31], /* CJK Ideograph */ + [0x6a32, 0x6a32], /* CJK Ideograph */ + [0x6a33, 0x6a33], /* CJK Ideograph */ + [0x6a34, 0x6a34], /* CJK Ideograph */ + [0x6a35, 0x6a35], /* CJK Ideograph */ + [0x6a36, 0x6a36], /* CJK Ideograph */ + [0x6a37, 0x6a37], /* CJK Ideograph */ + [0x6a38, 0x6a38], /* CJK Ideograph */ + [0x6a39, 0x6a39], /* CJK Ideograph */ + [0x6a3a, 0x6a3a], /* CJK Ideograph */ + [0x6a3b, 0x6a3b], /* CJK Ideograph */ + [0x6a3c, 0x6a3c], /* CJK Ideograph */ + [0x6a3d, 0x6a3d], /* CJK Ideograph */ + [0x6a3e, 0x6a3e], /* CJK Ideograph */ + [0x6a3f, 0x6a3f], /* CJK Ideograph */ + [0x6a40, 0x6a40], /* CJK Ideograph */ + [0x6a41, 0x6a41], /* CJK Ideograph */ + [0x6a42, 0x6a42], /* CJK Ideograph */ + [0x6a43, 0x6a43], /* CJK Ideograph */ + [0x6a44, 0x6a44], /* CJK Ideograph */ + [0x6a45, 0x6a45], /* CJK Ideograph */ + [0x6a46, 0x6a46], /* CJK Ideograph */ + [0x6a47, 0x6a47], /* CJK Ideograph */ + [0x6a48, 0x6a48], /* CJK Ideograph */ + [0x6a49, 0x6a49], /* CJK Ideograph */ + [0x6a4a, 0x6a4a], /* CJK Ideograph */ + [0x6a4b, 0x6a4b], /* CJK Ideograph */ + [0x6a4c, 0x6a4c], /* CJK Ideograph */ + [0x6a4d, 0x6a4d], /* CJK Ideograph */ + [0x6a4e, 0x6a4e], /* CJK Ideograph */ + [0x6a4f, 0x6a4f], /* CJK Ideograph */ + [0x6a50, 0x6a50], /* CJK Ideograph */ + [0x6a51, 0x6a51], /* CJK Ideograph */ + [0x6a52, 0x6a52], /* CJK Ideograph */ + [0x6a53, 0x6a53], /* CJK Ideograph */ + [0x6a54, 0x6a54], /* CJK Ideograph */ + [0x6a55, 0x6a55], /* CJK Ideograph */ + [0x6a56, 0x6a56], /* CJK Ideograph */ + [0x6a57, 0x6a57], /* CJK Ideograph */ + [0x6a58, 0x6a58], /* CJK Ideograph */ + [0x6a59, 0x6a59], /* CJK Ideograph */ + [0x6a5a, 0x6a5a], /* CJK Ideograph */ + [0x6a5b, 0x6a5b], /* CJK Ideograph */ + [0x6a5c, 0x6a5c], /* CJK Ideograph */ + [0x6a5d, 0x6a5d], /* CJK Ideograph */ + [0x6a5e, 0x6a5e], /* CJK Ideograph */ + [0x6a5f, 0x6a5f], /* CJK Ideograph */ + [0x6a60, 0x6a60], /* CJK Ideograph */ + [0x6a61, 0x6a61], /* CJK Ideograph */ + [0x6a62, 0x6a62], /* CJK Ideograph */ + [0x6a63, 0x6a63], /* CJK Ideograph */ + [0x6a64, 0x6a64], /* CJK Ideograph */ + [0x6a65, 0x6a65], /* CJK Ideograph */ + [0x6a66, 0x6a66], /* CJK Ideograph */ + [0x6a67, 0x6a67], /* CJK Ideograph */ + [0x6a68, 0x6a68], /* CJK Ideograph */ + [0x6a69, 0x6a69], /* CJK Ideograph */ + [0x6a6a, 0x6a6a], /* CJK Ideograph */ + [0x6a6b, 0x6a6b], /* CJK Ideograph */ + [0x6a6c, 0x6a6c], /* CJK Ideograph */ + [0x6a6d, 0x6a6d], /* CJK Ideograph */ + [0x6a6e, 0x6a6e], /* CJK Ideograph */ + [0x6a6f, 0x6a6f], /* CJK Ideograph */ + [0x6a70, 0x6a70], /* CJK Ideograph */ + [0x6a71, 0x6a71], /* CJK Ideograph */ + [0x6a72, 0x6a72], /* CJK Ideograph */ + [0x6a73, 0x6a73], /* CJK Ideograph */ + [0x6a74, 0x6a74], /* CJK Ideograph */ + [0x6a75, 0x6a75], /* CJK Ideograph */ + [0x6a76, 0x6a76], /* CJK Ideograph */ + [0x6a77, 0x6a77], /* CJK Ideograph */ + [0x6a78, 0x6a78], /* CJK Ideograph */ + [0x6a79, 0x6a79], /* CJK Ideograph */ + [0x6a7a, 0x6a7a], /* CJK Ideograph */ + [0x6a7b, 0x6a7b], /* CJK Ideograph */ + [0x6a7c, 0x6a7c], /* CJK Ideograph */ + [0x6a7d, 0x6a7d], /* CJK Ideograph */ + [0x6a7e, 0x6a7e], /* CJK Ideograph */ + [0x6a7f, 0x6a7f], /* CJK Ideograph */ + [0x6a80, 0x6a80], /* CJK Ideograph */ + [0x6a81, 0x6a81], /* CJK Ideograph */ + [0x6a82, 0x6a82], /* CJK Ideograph */ + [0x6a83, 0x6a83], /* CJK Ideograph */ + [0x6a84, 0x6a84], /* CJK Ideograph */ + [0x6a85, 0x6a85], /* CJK Ideograph */ + [0x6a86, 0x6a86], /* CJK Ideograph */ + [0x6a87, 0x6a87], /* CJK Ideograph */ + [0x6a88, 0x6a88], /* CJK Ideograph */ + [0x6a89, 0x6a89], /* CJK Ideograph */ + [0x6a8a, 0x6a8a], /* CJK Ideograph */ + [0x6a8b, 0x6a8b], /* CJK Ideograph */ + [0x6a8c, 0x6a8c], /* CJK Ideograph */ + [0x6a8d, 0x6a8d], /* CJK Ideograph */ + [0x6a8e, 0x6a8e], /* CJK Ideograph */ + [0x6a8f, 0x6a8f], /* CJK Ideograph */ + [0x6a90, 0x6a90], /* CJK Ideograph */ + [0x6a91, 0x6a91], /* CJK Ideograph */ + [0x6a92, 0x6a92], /* CJK Ideograph */ + [0x6a93, 0x6a93], /* CJK Ideograph */ + [0x6a94, 0x6a94], /* CJK Ideograph */ + [0x6a95, 0x6a95], /* CJK Ideograph */ + [0x6a96, 0x6a96], /* CJK Ideograph */ + [0x6a97, 0x6a97], /* CJK Ideograph */ + [0x6a98, 0x6a98], /* CJK Ideograph */ + [0x6a99, 0x6a99], /* CJK Ideograph */ + [0x6a9a, 0x6a9a], /* CJK Ideograph */ + [0x6a9b, 0x6a9b], /* CJK Ideograph */ + [0x6a9c, 0x6a9c], /* CJK Ideograph */ + [0x6a9d, 0x6a9d], /* CJK Ideograph */ + [0x6a9e, 0x6a9e], /* CJK Ideograph */ + [0x6a9f, 0x6a9f], /* CJK Ideograph */ + [0x6aa0, 0x6aa0], /* CJK Ideograph */ + [0x6aa1, 0x6aa1], /* CJK Ideograph */ + [0x6aa2, 0x6aa2], /* CJK Ideograph */ + [0x6aa3, 0x6aa3], /* CJK Ideograph */ + [0x6aa4, 0x6aa4], /* CJK Ideograph */ + [0x6aa5, 0x6aa5], /* CJK Ideograph */ + [0x6aa6, 0x6aa6], /* CJK Ideograph */ + [0x6aa7, 0x6aa7], /* CJK Ideograph */ + [0x6aa8, 0x6aa8], /* CJK Ideograph */ + [0x6aa9, 0x6aa9], /* CJK Ideograph */ + [0x6aaa, 0x6aaa], /* CJK Ideograph */ + [0x6aab, 0x6aab], /* CJK Ideograph */ + [0x6aac, 0x6aac], /* CJK Ideograph */ + [0x6aad, 0x6aad], /* CJK Ideograph */ + [0x6aae, 0x6aae], /* CJK Ideograph */ + [0x6aaf, 0x6aaf], /* CJK Ideograph */ + [0x6ab0, 0x6ab0], /* CJK Ideograph */ + [0x6ab1, 0x6ab1], /* CJK Ideograph */ + [0x6ab2, 0x6ab2], /* CJK Ideograph */ + [0x6ab3, 0x6ab3], /* CJK Ideograph */ + [0x6ab4, 0x6ab4], /* CJK Ideograph */ + [0x6ab5, 0x6ab5], /* CJK Ideograph */ + [0x6ab6, 0x6ab6], /* CJK Ideograph */ + [0x6ab7, 0x6ab7], /* CJK Ideograph */ + [0x6ab8, 0x6ab8], /* CJK Ideograph */ + [0x6ab9, 0x6ab9], /* CJK Ideograph */ + [0x6aba, 0x6aba], /* CJK Ideograph */ + [0x6abb, 0x6abb], /* CJK Ideograph */ + [0x6abc, 0x6abc], /* CJK Ideograph */ + [0x6abd, 0x6abd], /* CJK Ideograph */ + [0x6abe, 0x6abe], /* CJK Ideograph */ + [0x6abf, 0x6abf], /* CJK Ideograph */ + [0x6ac0, 0x6ac0], /* CJK Ideograph */ + [0x6ac1, 0x6ac1], /* CJK Ideograph */ + [0x6ac2, 0x6ac2], /* CJK Ideograph */ + [0x6ac3, 0x6ac3], /* CJK Ideograph */ + [0x6ac4, 0x6ac4], /* CJK Ideograph */ + [0x6ac5, 0x6ac5], /* CJK Ideograph */ + [0x6ac6, 0x6ac6], /* CJK Ideograph */ + [0x6ac7, 0x6ac7], /* CJK Ideograph */ + [0x6ac8, 0x6ac8], /* CJK Ideograph */ + [0x6ac9, 0x6ac9], /* CJK Ideograph */ + [0x6aca, 0x6aca], /* CJK Ideograph */ + [0x6acb, 0x6acb], /* CJK Ideograph */ + [0x6acc, 0x6acc], /* CJK Ideograph */ + [0x6acd, 0x6acd], /* CJK Ideograph */ + [0x6ace, 0x6ace], /* CJK Ideograph */ + [0x6acf, 0x6acf], /* CJK Ideograph */ + [0x6ad0, 0x6ad0], /* CJK Ideograph */ + [0x6ad1, 0x6ad1], /* CJK Ideograph */ + [0x6ad2, 0x6ad2], /* CJK Ideograph */ + [0x6ad3, 0x6ad3], /* CJK Ideograph */ + [0x6ad4, 0x6ad4], /* CJK Ideograph */ + [0x6ad5, 0x6ad5], /* CJK Ideograph */ + [0x6ad6, 0x6ad6], /* CJK Ideograph */ + [0x6ad7, 0x6ad7], /* CJK Ideograph */ + [0x6ad8, 0x6ad8], /* CJK Ideograph */ + [0x6ad9, 0x6ad9], /* CJK Ideograph */ + [0x6ada, 0x6ada], /* CJK Ideograph */ + [0x6adb, 0x6adb], /* CJK Ideograph */ + [0x6adc, 0x6adc], /* CJK Ideograph */ + [0x6add, 0x6add], /* CJK Ideograph */ + [0x6ade, 0x6ade], /* CJK Ideograph */ + [0x6adf, 0x6adf], /* CJK Ideograph */ + [0x6ae0, 0x6ae0], /* CJK Ideograph */ + [0x6ae1, 0x6ae1], /* CJK Ideograph */ + [0x6ae2, 0x6ae2], /* CJK Ideograph */ + [0x6ae3, 0x6ae3], /* CJK Ideograph */ + [0x6ae4, 0x6ae4], /* CJK Ideograph */ + [0x6ae5, 0x6ae5], /* CJK Ideograph */ + [0x6ae6, 0x6ae6], /* CJK Ideograph */ + [0x6ae7, 0x6ae7], /* CJK Ideograph */ + [0x6ae8, 0x6ae8], /* CJK Ideograph */ + [0x6ae9, 0x6ae9], /* CJK Ideograph */ + [0x6aea, 0x6aea], /* CJK Ideograph */ + [0x6aeb, 0x6aeb], /* CJK Ideograph */ + [0x6aec, 0x6aec], /* CJK Ideograph */ + [0x6aed, 0x6aed], /* CJK Ideograph */ + [0x6aee, 0x6aee], /* CJK Ideograph */ + [0x6aef, 0x6aef], /* CJK Ideograph */ + [0x6af0, 0x6af0], /* CJK Ideograph */ + [0x6af1, 0x6af1], /* CJK Ideograph */ + [0x6af2, 0x6af2], /* CJK Ideograph */ + [0x6af3, 0x6af3], /* CJK Ideograph */ + [0x6af4, 0x6af4], /* CJK Ideograph */ + [0x6af5, 0x6af5], /* CJK Ideograph */ + [0x6af6, 0x6af6], /* CJK Ideograph */ + [0x6af7, 0x6af7], /* CJK Ideograph */ + [0x6af8, 0x6af8], /* CJK Ideograph */ + [0x6af9, 0x6af9], /* CJK Ideograph */ + [0x6afa, 0x6afa], /* CJK Ideograph */ + [0x6afb, 0x6afb], /* CJK Ideograph */ + [0x6afc, 0x6afc], /* CJK Ideograph */ + [0x6afd, 0x6afd], /* CJK Ideograph */ + [0x6afe, 0x6afe], /* CJK Ideograph */ + [0x6aff, 0x6aff], /* CJK Ideograph */ + [0x6b00, 0x6b00], /* CJK Ideograph */ + [0x6b01, 0x6b01], /* CJK Ideograph */ + [0x6b02, 0x6b02], /* CJK Ideograph */ + [0x6b03, 0x6b03], /* CJK Ideograph */ + [0x6b04, 0x6b04], /* CJK Ideograph */ + [0x6b05, 0x6b05], /* CJK Ideograph */ + [0x6b06, 0x6b06], /* CJK Ideograph */ + [0x6b07, 0x6b07], /* CJK Ideograph */ + [0x6b08, 0x6b08], /* CJK Ideograph */ + [0x6b09, 0x6b09], /* CJK Ideograph */ + [0x6b0a, 0x6b0a], /* CJK Ideograph */ + [0x6b0b, 0x6b0b], /* CJK Ideograph */ + [0x6b0c, 0x6b0c], /* CJK Ideograph */ + [0x6b0d, 0x6b0d], /* CJK Ideograph */ + [0x6b0e, 0x6b0e], /* CJK Ideograph */ + [0x6b0f, 0x6b0f], /* CJK Ideograph */ + [0x6b10, 0x6b10], /* CJK Ideograph */ + [0x6b11, 0x6b11], /* CJK Ideograph */ + [0x6b12, 0x6b12], /* CJK Ideograph */ + [0x6b13, 0x6b13], /* CJK Ideograph */ + [0x6b14, 0x6b14], /* CJK Ideograph */ + [0x6b15, 0x6b15], /* CJK Ideograph */ + [0x6b16, 0x6b16], /* CJK Ideograph */ + [0x6b17, 0x6b17], /* CJK Ideograph */ + [0x6b18, 0x6b18], /* CJK Ideograph */ + [0x6b19, 0x6b19], /* CJK Ideograph */ + [0x6b1a, 0x6b1a], /* CJK Ideograph */ + [0x6b1b, 0x6b1b], /* CJK Ideograph */ + [0x6b1c, 0x6b1c], /* CJK Ideograph */ + [0x6b1d, 0x6b1d], /* CJK Ideograph */ + [0x6b1e, 0x6b1e], /* CJK Ideograph */ + [0x6b1f, 0x6b1f], /* CJK Ideograph */ + [0x6b20, 0x6b20], /* CJK Ideograph */ + [0x6b21, 0x6b21], /* CJK Ideograph */ + [0x6b22, 0x6b22], /* CJK Ideograph */ + [0x6b23, 0x6b23], /* CJK Ideograph */ + [0x6b24, 0x6b24], /* CJK Ideograph */ + [0x6b25, 0x6b25], /* CJK Ideograph */ + [0x6b26, 0x6b26], /* CJK Ideograph */ + [0x6b27, 0x6b27], /* CJK Ideograph */ + [0x6b28, 0x6b28], /* CJK Ideograph */ + [0x6b29, 0x6b29], /* CJK Ideograph */ + [0x6b2a, 0x6b2a], /* CJK Ideograph */ + [0x6b2b, 0x6b2b], /* CJK Ideograph */ + [0x6b2c, 0x6b2c], /* CJK Ideograph */ + [0x6b2d, 0x6b2d], /* CJK Ideograph */ + [0x6b2e, 0x6b2e], /* CJK Ideograph */ + [0x6b2f, 0x6b2f], /* CJK Ideograph */ + [0x6b30, 0x6b30], /* CJK Ideograph */ + [0x6b31, 0x6b31], /* CJK Ideograph */ + [0x6b32, 0x6b32], /* CJK Ideograph */ + [0x6b33, 0x6b33], /* CJK Ideograph */ + [0x6b34, 0x6b34], /* CJK Ideograph */ + [0x6b35, 0x6b35], /* CJK Ideograph */ + [0x6b36, 0x6b36], /* CJK Ideograph */ + [0x6b37, 0x6b37], /* CJK Ideograph */ + [0x6b38, 0x6b38], /* CJK Ideograph */ + [0x6b39, 0x6b39], /* CJK Ideograph */ + [0x6b3a, 0x6b3a], /* CJK Ideograph */ + [0x6b3b, 0x6b3b], /* CJK Ideograph */ + [0x6b3c, 0x6b3c], /* CJK Ideograph */ + [0x6b3d, 0x6b3d], /* CJK Ideograph */ + [0x6b3e, 0x6b3e], /* CJK Ideograph */ + [0x6b3f, 0x6b3f], /* CJK Ideograph */ + [0x6b40, 0x6b40], /* CJK Ideograph */ + [0x6b41, 0x6b41], /* CJK Ideograph */ + [0x6b42, 0x6b42], /* CJK Ideograph */ + [0x6b43, 0x6b43], /* CJK Ideograph */ + [0x6b44, 0x6b44], /* CJK Ideograph */ + [0x6b45, 0x6b45], /* CJK Ideograph */ + [0x6b46, 0x6b46], /* CJK Ideograph */ + [0x6b47, 0x6b47], /* CJK Ideograph */ + [0x6b48, 0x6b48], /* CJK Ideograph */ + [0x6b49, 0x6b49], /* CJK Ideograph */ + [0x6b4a, 0x6b4a], /* CJK Ideograph */ + [0x6b4b, 0x6b4b], /* CJK Ideograph */ + [0x6b4c, 0x6b4c], /* CJK Ideograph */ + [0x6b4d, 0x6b4d], /* CJK Ideograph */ + [0x6b4e, 0x6b4e], /* CJK Ideograph */ + [0x6b4f, 0x6b4f], /* CJK Ideograph */ + [0x6b50, 0x6b50], /* CJK Ideograph */ + [0x6b51, 0x6b51], /* CJK Ideograph */ + [0x6b52, 0x6b52], /* CJK Ideograph */ + [0x6b53, 0x6b53], /* CJK Ideograph */ + [0x6b54, 0x6b54], /* CJK Ideograph */ + [0x6b55, 0x6b55], /* CJK Ideograph */ + [0x6b56, 0x6b56], /* CJK Ideograph */ + [0x6b57, 0x6b57], /* CJK Ideograph */ + [0x6b58, 0x6b58], /* CJK Ideograph */ + [0x6b59, 0x6b59], /* CJK Ideograph */ + [0x6b5a, 0x6b5a], /* CJK Ideograph */ + [0x6b5b, 0x6b5b], /* CJK Ideograph */ + [0x6b5c, 0x6b5c], /* CJK Ideograph */ + [0x6b5d, 0x6b5d], /* CJK Ideograph */ + [0x6b5e, 0x6b5e], /* CJK Ideograph */ + [0x6b5f, 0x6b5f], /* CJK Ideograph */ + [0x6b60, 0x6b60], /* CJK Ideograph */ + [0x6b61, 0x6b61], /* CJK Ideograph */ + [0x6b62, 0x6b62], /* CJK Ideograph */ + [0x6b63, 0x6b63], /* CJK Ideograph */ + [0x6b64, 0x6b64], /* CJK Ideograph */ + [0x6b65, 0x6b65], /* CJK Ideograph */ + [0x6b66, 0x6b66], /* CJK Ideograph */ + [0x6b67, 0x6b67], /* CJK Ideograph */ + [0x6b68, 0x6b68], /* CJK Ideograph */ + [0x6b69, 0x6b69], /* CJK Ideograph */ + [0x6b6a, 0x6b6a], /* CJK Ideograph */ + [0x6b6b, 0x6b6b], /* CJK Ideograph */ + [0x6b6c, 0x6b6c], /* CJK Ideograph */ + [0x6b6d, 0x6b6d], /* CJK Ideograph */ + [0x6b6e, 0x6b6e], /* CJK Ideograph */ + [0x6b6f, 0x6b6f], /* CJK Ideograph */ + [0x6b70, 0x6b70], /* CJK Ideograph */ + [0x6b71, 0x6b71], /* CJK Ideograph */ + [0x6b72, 0x6b72], /* CJK Ideograph */ + [0x6b73, 0x6b73], /* CJK Ideograph */ + [0x6b74, 0x6b74], /* CJK Ideograph */ + [0x6b75, 0x6b75], /* CJK Ideograph */ + [0x6b76, 0x6b76], /* CJK Ideograph */ + [0x6b77, 0x6b77], /* CJK Ideograph */ + [0x6b78, 0x6b78], /* CJK Ideograph */ + [0x6b79, 0x6b79], /* CJK Ideograph */ + [0x6b7a, 0x6b7a], /* CJK Ideograph */ + [0x6b7b, 0x6b7b], /* CJK Ideograph */ + [0x6b7c, 0x6b7c], /* CJK Ideograph */ + [0x6b7d, 0x6b7d], /* CJK Ideograph */ + [0x6b7e, 0x6b7e], /* CJK Ideograph */ + [0x6b7f, 0x6b7f], /* CJK Ideograph */ + [0x6b80, 0x6b80], /* CJK Ideograph */ + [0x6b81, 0x6b81], /* CJK Ideograph */ + [0x6b82, 0x6b82], /* CJK Ideograph */ + [0x6b83, 0x6b83], /* CJK Ideograph */ + [0x6b84, 0x6b84], /* CJK Ideograph */ + [0x6b85, 0x6b85], /* CJK Ideograph */ + [0x6b86, 0x6b86], /* CJK Ideograph */ + [0x6b87, 0x6b87], /* CJK Ideograph */ + [0x6b88, 0x6b88], /* CJK Ideograph */ + [0x6b89, 0x6b89], /* CJK Ideograph */ + [0x6b8a, 0x6b8a], /* CJK Ideograph */ + [0x6b8b, 0x6b8b], /* CJK Ideograph */ + [0x6b8c, 0x6b8c], /* CJK Ideograph */ + [0x6b8d, 0x6b8d], /* CJK Ideograph */ + [0x6b8e, 0x6b8e], /* CJK Ideograph */ + [0x6b8f, 0x6b8f], /* CJK Ideograph */ + [0x6b90, 0x6b90], /* CJK Ideograph */ + [0x6b91, 0x6b91], /* CJK Ideograph */ + [0x6b92, 0x6b92], /* CJK Ideograph */ + [0x6b93, 0x6b93], /* CJK Ideograph */ + [0x6b94, 0x6b94], /* CJK Ideograph */ + [0x6b95, 0x6b95], /* CJK Ideograph */ + [0x6b96, 0x6b96], /* CJK Ideograph */ + [0x6b97, 0x6b97], /* CJK Ideograph */ + [0x6b98, 0x6b98], /* CJK Ideograph */ + [0x6b99, 0x6b99], /* CJK Ideograph */ + [0x6b9a, 0x6b9a], /* CJK Ideograph */ + [0x6b9b, 0x6b9b], /* CJK Ideograph */ + [0x6b9c, 0x6b9c], /* CJK Ideograph */ + [0x6b9d, 0x6b9d], /* CJK Ideograph */ + [0x6b9e, 0x6b9e], /* CJK Ideograph */ + [0x6b9f, 0x6b9f], /* CJK Ideograph */ + [0x6ba0, 0x6ba0], /* CJK Ideograph */ + [0x6ba1, 0x6ba1], /* CJK Ideograph */ + [0x6ba2, 0x6ba2], /* CJK Ideograph */ + [0x6ba3, 0x6ba3], /* CJK Ideograph */ + [0x6ba4, 0x6ba4], /* CJK Ideograph */ + [0x6ba5, 0x6ba5], /* CJK Ideograph */ + [0x6ba6, 0x6ba6], /* CJK Ideograph */ + [0x6ba7, 0x6ba7], /* CJK Ideograph */ + [0x6ba8, 0x6ba8], /* CJK Ideograph */ + [0x6ba9, 0x6ba9], /* CJK Ideograph */ + [0x6baa, 0x6baa], /* CJK Ideograph */ + [0x6bab, 0x6bab], /* CJK Ideograph */ + [0x6bac, 0x6bac], /* CJK Ideograph */ + [0x6bad, 0x6bad], /* CJK Ideograph */ + [0x6bae, 0x6bae], /* CJK Ideograph */ + [0x6baf, 0x6baf], /* CJK Ideograph */ + [0x6bb0, 0x6bb0], /* CJK Ideograph */ + [0x6bb1, 0x6bb1], /* CJK Ideograph */ + [0x6bb2, 0x6bb2], /* CJK Ideograph */ + [0x6bb3, 0x6bb3], /* CJK Ideograph */ + [0x6bb4, 0x6bb4], /* CJK Ideograph */ + [0x6bb5, 0x6bb5], /* CJK Ideograph */ + [0x6bb6, 0x6bb6], /* CJK Ideograph */ + [0x6bb7, 0x6bb7], /* CJK Ideograph */ + [0x6bb8, 0x6bb8], /* CJK Ideograph */ + [0x6bb9, 0x6bb9], /* CJK Ideograph */ + [0x6bba, 0x6bba], /* CJK Ideograph */ + [0x6bbb, 0x6bbb], /* CJK Ideograph */ + [0x6bbc, 0x6bbc], /* CJK Ideograph */ + [0x6bbd, 0x6bbd], /* CJK Ideograph */ + [0x6bbe, 0x6bbe], /* CJK Ideograph */ + [0x6bbf, 0x6bbf], /* CJK Ideograph */ + [0x6bc0, 0x6bc0], /* CJK Ideograph */ + [0x6bc1, 0x6bc1], /* CJK Ideograph */ + [0x6bc2, 0x6bc2], /* CJK Ideograph */ + [0x6bc3, 0x6bc3], /* CJK Ideograph */ + [0x6bc4, 0x6bc4], /* CJK Ideograph */ + [0x6bc5, 0x6bc5], /* CJK Ideograph */ + [0x6bc6, 0x6bc6], /* CJK Ideograph */ + [0x6bc7, 0x6bc7], /* CJK Ideograph */ + [0x6bc8, 0x6bc8], /* CJK Ideograph */ + [0x6bc9, 0x6bc9], /* CJK Ideograph */ + [0x6bca, 0x6bca], /* CJK Ideograph */ + [0x6bcb, 0x6bcb], /* CJK Ideograph */ + [0x6bcc, 0x6bcc], /* CJK Ideograph */ + [0x6bcd, 0x6bcd], /* CJK Ideograph */ + [0x6bce, 0x6bce], /* CJK Ideograph */ + [0x6bcf, 0x6bcf], /* CJK Ideograph */ + [0x6bd0, 0x6bd0], /* CJK Ideograph */ + [0x6bd1, 0x6bd1], /* CJK Ideograph */ + [0x6bd2, 0x6bd2], /* CJK Ideograph */ + [0x6bd3, 0x6bd3], /* CJK Ideograph */ + [0x6bd4, 0x6bd4], /* CJK Ideograph */ + [0x6bd5, 0x6bd5], /* CJK Ideograph */ + [0x6bd6, 0x6bd6], /* CJK Ideograph */ + [0x6bd7, 0x6bd7], /* CJK Ideograph */ + [0x6bd8, 0x6bd8], /* CJK Ideograph */ + [0x6bd9, 0x6bd9], /* CJK Ideograph */ + [0x6bda, 0x6bda], /* CJK Ideograph */ + [0x6bdb, 0x6bdb], /* CJK Ideograph */ + [0x6bdc, 0x6bdc], /* CJK Ideograph */ + [0x6bdd, 0x6bdd], /* CJK Ideograph */ + [0x6bde, 0x6bde], /* CJK Ideograph */ + [0x6bdf, 0x6bdf], /* CJK Ideograph */ + [0x6be0, 0x6be0], /* CJK Ideograph */ + [0x6be1, 0x6be1], /* CJK Ideograph */ + [0x6be2, 0x6be2], /* CJK Ideograph */ + [0x6be3, 0x6be3], /* CJK Ideograph */ + [0x6be4, 0x6be4], /* CJK Ideograph */ + [0x6be5, 0x6be5], /* CJK Ideograph */ + [0x6be6, 0x6be6], /* CJK Ideograph */ + [0x6be7, 0x6be7], /* CJK Ideograph */ + [0x6be8, 0x6be8], /* CJK Ideograph */ + [0x6be9, 0x6be9], /* CJK Ideograph */ + [0x6bea, 0x6bea], /* CJK Ideograph */ + [0x6beb, 0x6beb], /* CJK Ideograph */ + [0x6bec, 0x6bec], /* CJK Ideograph */ + [0x6bed, 0x6bed], /* CJK Ideograph */ + [0x6bee, 0x6bee], /* CJK Ideograph */ + [0x6bef, 0x6bef], /* CJK Ideograph */ + [0x6bf0, 0x6bf0], /* CJK Ideograph */ + [0x6bf1, 0x6bf1], /* CJK Ideograph */ + [0x6bf2, 0x6bf2], /* CJK Ideograph */ + [0x6bf3, 0x6bf3], /* CJK Ideograph */ + [0x6bf4, 0x6bf4], /* CJK Ideograph */ + [0x6bf5, 0x6bf5], /* CJK Ideograph */ + [0x6bf6, 0x6bf6], /* CJK Ideograph */ + [0x6bf7, 0x6bf7], /* CJK Ideograph */ + [0x6bf8, 0x6bf8], /* CJK Ideograph */ + [0x6bf9, 0x6bf9], /* CJK Ideograph */ + [0x6bfa, 0x6bfa], /* CJK Ideograph */ + [0x6bfb, 0x6bfb], /* CJK Ideograph */ + [0x6bfc, 0x6bfc], /* CJK Ideograph */ + [0x6bfd, 0x6bfd], /* CJK Ideograph */ + [0x6bfe, 0x6bfe], /* CJK Ideograph */ + [0x6bff, 0x6bff], /* CJK Ideograph */ + [0x6c00, 0x6c00], /* CJK Ideograph */ + [0x6c01, 0x6c01], /* CJK Ideograph */ + [0x6c02, 0x6c02], /* CJK Ideograph */ + [0x6c03, 0x6c03], /* CJK Ideograph */ + [0x6c04, 0x6c04], /* CJK Ideograph */ + [0x6c05, 0x6c05], /* CJK Ideograph */ + [0x6c06, 0x6c06], /* CJK Ideograph */ + [0x6c07, 0x6c07], /* CJK Ideograph */ + [0x6c08, 0x6c08], /* CJK Ideograph */ + [0x6c09, 0x6c09], /* CJK Ideograph */ + [0x6c0a, 0x6c0a], /* CJK Ideograph */ + [0x6c0b, 0x6c0b], /* CJK Ideograph */ + [0x6c0c, 0x6c0c], /* CJK Ideograph */ + [0x6c0d, 0x6c0d], /* CJK Ideograph */ + [0x6c0e, 0x6c0e], /* CJK Ideograph */ + [0x6c0f, 0x6c0f], /* CJK Ideograph */ + [0x6c10, 0x6c10], /* CJK Ideograph */ + [0x6c11, 0x6c11], /* CJK Ideograph */ + [0x6c12, 0x6c12], /* CJK Ideograph */ + [0x6c13, 0x6c13], /* CJK Ideograph */ + [0x6c14, 0x6c14], /* CJK Ideograph */ + [0x6c15, 0x6c15], /* CJK Ideograph */ + [0x6c16, 0x6c16], /* CJK Ideograph */ + [0x6c17, 0x6c17], /* CJK Ideograph */ + [0x6c18, 0x6c18], /* CJK Ideograph */ + [0x6c19, 0x6c19], /* CJK Ideograph */ + [0x6c1a, 0x6c1a], /* CJK Ideograph */ + [0x6c1b, 0x6c1b], /* CJK Ideograph */ + [0x6c1c, 0x6c1c], /* CJK Ideograph */ + [0x6c1d, 0x6c1d], /* CJK Ideograph */ + [0x6c1e, 0x6c1e], /* CJK Ideograph */ + [0x6c1f, 0x6c1f], /* CJK Ideograph */ + [0x6c20, 0x6c20], /* CJK Ideograph */ + [0x6c21, 0x6c21], /* CJK Ideograph */ + [0x6c22, 0x6c22], /* CJK Ideograph */ + [0x6c23, 0x6c23], /* CJK Ideograph */ + [0x6c24, 0x6c24], /* CJK Ideograph */ + [0x6c25, 0x6c25], /* CJK Ideograph */ + [0x6c26, 0x6c26], /* CJK Ideograph */ + [0x6c27, 0x6c27], /* CJK Ideograph */ + [0x6c28, 0x6c28], /* CJK Ideograph */ + [0x6c29, 0x6c29], /* CJK Ideograph */ + [0x6c2a, 0x6c2a], /* CJK Ideograph */ + [0x6c2b, 0x6c2b], /* CJK Ideograph */ + [0x6c2c, 0x6c2c], /* CJK Ideograph */ + [0x6c2d, 0x6c2d], /* CJK Ideograph */ + [0x6c2e, 0x6c2e], /* CJK Ideograph */ + [0x6c2f, 0x6c2f], /* CJK Ideograph */ + [0x6c30, 0x6c30], /* CJK Ideograph */ + [0x6c31, 0x6c31], /* CJK Ideograph */ + [0x6c32, 0x6c32], /* CJK Ideograph */ + [0x6c33, 0x6c33], /* CJK Ideograph */ + [0x6c34, 0x6c34], /* CJK Ideograph */ + [0x6c35, 0x6c35], /* CJK Ideograph */ + [0x6c36, 0x6c36], /* CJK Ideograph */ + [0x6c37, 0x6c37], /* CJK Ideograph */ + [0x6c38, 0x6c38], /* CJK Ideograph */ + [0x6c39, 0x6c39], /* CJK Ideograph */ + [0x6c3a, 0x6c3a], /* CJK Ideograph */ + [0x6c3b, 0x6c3b], /* CJK Ideograph */ + [0x6c3c, 0x6c3c], /* CJK Ideograph */ + [0x6c3d, 0x6c3d], /* CJK Ideograph */ + [0x6c3e, 0x6c3e], /* CJK Ideograph */ + [0x6c3f, 0x6c3f], /* CJK Ideograph */ + [0x6c40, 0x6c40], /* CJK Ideograph */ + [0x6c41, 0x6c41], /* CJK Ideograph */ + [0x6c42, 0x6c42], /* CJK Ideograph */ + [0x6c43, 0x6c43], /* CJK Ideograph */ + [0x6c44, 0x6c44], /* CJK Ideograph */ + [0x6c45, 0x6c45], /* CJK Ideograph */ + [0x6c46, 0x6c46], /* CJK Ideograph */ + [0x6c47, 0x6c47], /* CJK Ideograph */ + [0x6c48, 0x6c48], /* CJK Ideograph */ + [0x6c49, 0x6c49], /* CJK Ideograph */ + [0x6c4a, 0x6c4a], /* CJK Ideograph */ + [0x6c4b, 0x6c4b], /* CJK Ideograph */ + [0x6c4c, 0x6c4c], /* CJK Ideograph */ + [0x6c4d, 0x6c4d], /* CJK Ideograph */ + [0x6c4e, 0x6c4e], /* CJK Ideograph */ + [0x6c4f, 0x6c4f], /* CJK Ideograph */ + [0x6c50, 0x6c50], /* CJK Ideograph */ + [0x6c51, 0x6c51], /* CJK Ideograph */ + [0x6c52, 0x6c52], /* CJK Ideograph */ + [0x6c53, 0x6c53], /* CJK Ideograph */ + [0x6c54, 0x6c54], /* CJK Ideograph */ + [0x6c55, 0x6c55], /* CJK Ideograph */ + [0x6c56, 0x6c56], /* CJK Ideograph */ + [0x6c57, 0x6c57], /* CJK Ideograph */ + [0x6c58, 0x6c58], /* CJK Ideograph */ + [0x6c59, 0x6c59], /* CJK Ideograph */ + [0x6c5a, 0x6c5a], /* CJK Ideograph */ + [0x6c5b, 0x6c5b], /* CJK Ideograph */ + [0x6c5c, 0x6c5c], /* CJK Ideograph */ + [0x6c5d, 0x6c5d], /* CJK Ideograph */ + [0x6c5e, 0x6c5e], /* CJK Ideograph */ + [0x6c5f, 0x6c5f], /* CJK Ideograph */ + [0x6c60, 0x6c60], /* CJK Ideograph */ + [0x6c61, 0x6c61], /* CJK Ideograph */ + [0x6c62, 0x6c62], /* CJK Ideograph */ + [0x6c63, 0x6c63], /* CJK Ideograph */ + [0x6c64, 0x6c64], /* CJK Ideograph */ + [0x6c65, 0x6c65], /* CJK Ideograph */ + [0x6c66, 0x6c66], /* CJK Ideograph */ + [0x6c67, 0x6c67], /* CJK Ideograph */ + [0x6c68, 0x6c68], /* CJK Ideograph */ + [0x6c69, 0x6c69], /* CJK Ideograph */ + [0x6c6a, 0x6c6a], /* CJK Ideograph */ + [0x6c6b, 0x6c6b], /* CJK Ideograph */ + [0x6c6c, 0x6c6c], /* CJK Ideograph */ + [0x6c6d, 0x6c6d], /* CJK Ideograph */ + [0x6c6e, 0x6c6e], /* CJK Ideograph */ + [0x6c6f, 0x6c6f], /* CJK Ideograph */ + [0x6c70, 0x6c70], /* CJK Ideograph */ + [0x6c71, 0x6c71], /* CJK Ideograph */ + [0x6c72, 0x6c72], /* CJK Ideograph */ + [0x6c73, 0x6c73], /* CJK Ideograph */ + [0x6c74, 0x6c74], /* CJK Ideograph */ + [0x6c75, 0x6c75], /* CJK Ideograph */ + [0x6c76, 0x6c76], /* CJK Ideograph */ + [0x6c77, 0x6c77], /* CJK Ideograph */ + [0x6c78, 0x6c78], /* CJK Ideograph */ + [0x6c79, 0x6c79], /* CJK Ideograph */ + [0x6c7a, 0x6c7a], /* CJK Ideograph */ + [0x6c7b, 0x6c7b], /* CJK Ideograph */ + [0x6c7c, 0x6c7c], /* CJK Ideograph */ + [0x6c7d, 0x6c7d], /* CJK Ideograph */ + [0x6c7e, 0x6c7e], /* CJK Ideograph */ + [0x6c7f, 0x6c7f], /* CJK Ideograph */ + [0x6c80, 0x6c80], /* CJK Ideograph */ + [0x6c81, 0x6c81], /* CJK Ideograph */ + [0x6c82, 0x6c82], /* CJK Ideograph */ + [0x6c83, 0x6c83], /* CJK Ideograph */ + [0x6c84, 0x6c84], /* CJK Ideograph */ + [0x6c85, 0x6c85], /* CJK Ideograph */ + [0x6c86, 0x6c86], /* CJK Ideograph */ + [0x6c87, 0x6c87], /* CJK Ideograph */ + [0x6c88, 0x6c88], /* CJK Ideograph */ + [0x6c89, 0x6c89], /* CJK Ideograph */ + [0x6c8a, 0x6c8a], /* CJK Ideograph */ + [0x6c8b, 0x6c8b], /* CJK Ideograph */ + [0x6c8c, 0x6c8c], /* CJK Ideograph */ + [0x6c8d, 0x6c8d], /* CJK Ideograph */ + [0x6c8e, 0x6c8e], /* CJK Ideograph */ + [0x6c8f, 0x6c8f], /* CJK Ideograph */ + [0x6c90, 0x6c90], /* CJK Ideograph */ + [0x6c91, 0x6c91], /* CJK Ideograph */ + [0x6c92, 0x6c92], /* CJK Ideograph */ + [0x6c93, 0x6c93], /* CJK Ideograph */ + [0x6c94, 0x6c94], /* CJK Ideograph */ + [0x6c95, 0x6c95], /* CJK Ideograph */ + [0x6c96, 0x6c96], /* CJK Ideograph */ + [0x6c97, 0x6c97], /* CJK Ideograph */ + [0x6c98, 0x6c98], /* CJK Ideograph */ + [0x6c99, 0x6c99], /* CJK Ideograph */ + [0x6c9a, 0x6c9a], /* CJK Ideograph */ + [0x6c9b, 0x6c9b], /* CJK Ideograph */ + [0x6c9c, 0x6c9c], /* CJK Ideograph */ + [0x6c9d, 0x6c9d], /* CJK Ideograph */ + [0x6c9e, 0x6c9e], /* CJK Ideograph */ + [0x6c9f, 0x6c9f], /* CJK Ideograph */ + [0x6ca0, 0x6ca0], /* CJK Ideograph */ + [0x6ca1, 0x6ca1], /* CJK Ideograph */ + [0x6ca2, 0x6ca2], /* CJK Ideograph */ + [0x6ca3, 0x6ca3], /* CJK Ideograph */ + [0x6ca4, 0x6ca4], /* CJK Ideograph */ + [0x6ca5, 0x6ca5], /* CJK Ideograph */ + [0x6ca6, 0x6ca6], /* CJK Ideograph */ + [0x6ca7, 0x6ca7], /* CJK Ideograph */ + [0x6ca8, 0x6ca8], /* CJK Ideograph */ + [0x6ca9, 0x6ca9], /* CJK Ideograph */ + [0x6caa, 0x6caa], /* CJK Ideograph */ + [0x6cab, 0x6cab], /* CJK Ideograph */ + [0x6cac, 0x6cac], /* CJK Ideograph */ + [0x6cad, 0x6cad], /* CJK Ideograph */ + [0x6cae, 0x6cae], /* CJK Ideograph */ + [0x6caf, 0x6caf], /* CJK Ideograph */ + [0x6cb0, 0x6cb0], /* CJK Ideograph */ + [0x6cb1, 0x6cb1], /* CJK Ideograph */ + [0x6cb2, 0x6cb2], /* CJK Ideograph */ + [0x6cb3, 0x6cb3], /* CJK Ideograph */ + [0x6cb4, 0x6cb4], /* CJK Ideograph */ + [0x6cb5, 0x6cb5], /* CJK Ideograph */ + [0x6cb6, 0x6cb6], /* CJK Ideograph */ + [0x6cb7, 0x6cb7], /* CJK Ideograph */ + [0x6cb8, 0x6cb8], /* CJK Ideograph */ + [0x6cb9, 0x6cb9], /* CJK Ideograph */ + [0x6cba, 0x6cba], /* CJK Ideograph */ + [0x6cbb, 0x6cbb], /* CJK Ideograph */ + [0x6cbc, 0x6cbc], /* CJK Ideograph */ + [0x6cbd, 0x6cbd], /* CJK Ideograph */ + [0x6cbe, 0x6cbe], /* CJK Ideograph */ + [0x6cbf, 0x6cbf], /* CJK Ideograph */ + [0x6cc0, 0x6cc0], /* CJK Ideograph */ + [0x6cc1, 0x6cc1], /* CJK Ideograph */ + [0x6cc2, 0x6cc2], /* CJK Ideograph */ + [0x6cc3, 0x6cc3], /* CJK Ideograph */ + [0x6cc4, 0x6cc4], /* CJK Ideograph */ + [0x6cc5, 0x6cc5], /* CJK Ideograph */ + [0x6cc6, 0x6cc6], /* CJK Ideograph */ + [0x6cc7, 0x6cc7], /* CJK Ideograph */ + [0x6cc8, 0x6cc8], /* CJK Ideograph */ + [0x6cc9, 0x6cc9], /* CJK Ideograph */ + [0x6cca, 0x6cca], /* CJK Ideograph */ + [0x6ccb, 0x6ccb], /* CJK Ideograph */ + [0x6ccc, 0x6ccc], /* CJK Ideograph */ + [0x6ccd, 0x6ccd], /* CJK Ideograph */ + [0x6cce, 0x6cce], /* CJK Ideograph */ + [0x6ccf, 0x6ccf], /* CJK Ideograph */ + [0x6cd0, 0x6cd0], /* CJK Ideograph */ + [0x6cd1, 0x6cd1], /* CJK Ideograph */ + [0x6cd2, 0x6cd2], /* CJK Ideograph */ + [0x6cd3, 0x6cd3], /* CJK Ideograph */ + [0x6cd4, 0x6cd4], /* CJK Ideograph */ + [0x6cd5, 0x6cd5], /* CJK Ideograph */ + [0x6cd6, 0x6cd6], /* CJK Ideograph */ + [0x6cd7, 0x6cd7], /* CJK Ideograph */ + [0x6cd8, 0x6cd8], /* CJK Ideograph */ + [0x6cd9, 0x6cd9], /* CJK Ideograph */ + [0x6cda, 0x6cda], /* CJK Ideograph */ + [0x6cdb, 0x6cdb], /* CJK Ideograph */ + [0x6cdc, 0x6cdc], /* CJK Ideograph */ + [0x6cdd, 0x6cdd], /* CJK Ideograph */ + [0x6cde, 0x6cde], /* CJK Ideograph */ + [0x6cdf, 0x6cdf], /* CJK Ideograph */ + [0x6ce0, 0x6ce0], /* CJK Ideograph */ + [0x6ce1, 0x6ce1], /* CJK Ideograph */ + [0x6ce2, 0x6ce2], /* CJK Ideograph */ + [0x6ce3, 0x6ce3], /* CJK Ideograph */ + [0x6ce4, 0x6ce4], /* CJK Ideograph */ + [0x6ce5, 0x6ce5], /* CJK Ideograph */ + [0x6ce6, 0x6ce6], /* CJK Ideograph */ + [0x6ce7, 0x6ce7], /* CJK Ideograph */ + [0x6ce8, 0x6ce8], /* CJK Ideograph */ + [0x6ce9, 0x6ce9], /* CJK Ideograph */ + [0x6cea, 0x6cea], /* CJK Ideograph */ + [0x6ceb, 0x6ceb], /* CJK Ideograph */ + [0x6cec, 0x6cec], /* CJK Ideograph */ + [0x6ced, 0x6ced], /* CJK Ideograph */ + [0x6cee, 0x6cee], /* CJK Ideograph */ + [0x6cef, 0x6cef], /* CJK Ideograph */ + [0x6cf0, 0x6cf0], /* CJK Ideograph */ + [0x6cf1, 0x6cf1], /* CJK Ideograph */ + [0x6cf2, 0x6cf2], /* CJK Ideograph */ + [0x6cf3, 0x6cf3], /* CJK Ideograph */ + [0x6cf4, 0x6cf4], /* CJK Ideograph */ + [0x6cf5, 0x6cf5], /* CJK Ideograph */ + [0x6cf6, 0x6cf6], /* CJK Ideograph */ + [0x6cf7, 0x6cf7], /* CJK Ideograph */ + [0x6cf8, 0x6cf8], /* CJK Ideograph */ + [0x6cf9, 0x6cf9], /* CJK Ideograph */ + [0x6cfa, 0x6cfa], /* CJK Ideograph */ + [0x6cfb, 0x6cfb], /* CJK Ideograph */ + [0x6cfc, 0x6cfc], /* CJK Ideograph */ + [0x6cfd, 0x6cfd], /* CJK Ideograph */ + [0x6cfe, 0x6cfe], /* CJK Ideograph */ + [0x6cff, 0x6cff], /* CJK Ideograph */ + [0x6d00, 0x6d00], /* CJK Ideograph */ + [0x6d01, 0x6d01], /* CJK Ideograph */ + [0x6d02, 0x6d02], /* CJK Ideograph */ + [0x6d03, 0x6d03], /* CJK Ideograph */ + [0x6d04, 0x6d04], /* CJK Ideograph */ + [0x6d05, 0x6d05], /* CJK Ideograph */ + [0x6d06, 0x6d06], /* CJK Ideograph */ + [0x6d07, 0x6d07], /* CJK Ideograph */ + [0x6d08, 0x6d08], /* CJK Ideograph */ + [0x6d09, 0x6d09], /* CJK Ideograph */ + [0x6d0a, 0x6d0a], /* CJK Ideograph */ + [0x6d0b, 0x6d0b], /* CJK Ideograph */ + [0x6d0c, 0x6d0c], /* CJK Ideograph */ + [0x6d0d, 0x6d0d], /* CJK Ideograph */ + [0x6d0e, 0x6d0e], /* CJK Ideograph */ + [0x6d0f, 0x6d0f], /* CJK Ideograph */ + [0x6d10, 0x6d10], /* CJK Ideograph */ + [0x6d11, 0x6d11], /* CJK Ideograph */ + [0x6d12, 0x6d12], /* CJK Ideograph */ + [0x6d13, 0x6d13], /* CJK Ideograph */ + [0x6d14, 0x6d14], /* CJK Ideograph */ + [0x6d15, 0x6d15], /* CJK Ideograph */ + [0x6d16, 0x6d16], /* CJK Ideograph */ + [0x6d17, 0x6d17], /* CJK Ideograph */ + [0x6d18, 0x6d18], /* CJK Ideograph */ + [0x6d19, 0x6d19], /* CJK Ideograph */ + [0x6d1a, 0x6d1a], /* CJK Ideograph */ + [0x6d1b, 0x6d1b], /* CJK Ideograph */ + [0x6d1c, 0x6d1c], /* CJK Ideograph */ + [0x6d1d, 0x6d1d], /* CJK Ideograph */ + [0x6d1e, 0x6d1e], /* CJK Ideograph */ + [0x6d1f, 0x6d1f], /* CJK Ideograph */ + [0x6d20, 0x6d20], /* CJK Ideograph */ + [0x6d21, 0x6d21], /* CJK Ideograph */ + [0x6d22, 0x6d22], /* CJK Ideograph */ + [0x6d23, 0x6d23], /* CJK Ideograph */ + [0x6d24, 0x6d24], /* CJK Ideograph */ + [0x6d25, 0x6d25], /* CJK Ideograph */ + [0x6d26, 0x6d26], /* CJK Ideograph */ + [0x6d27, 0x6d27], /* CJK Ideograph */ + [0x6d28, 0x6d28], /* CJK Ideograph */ + [0x6d29, 0x6d29], /* CJK Ideograph */ + [0x6d2a, 0x6d2a], /* CJK Ideograph */ + [0x6d2b, 0x6d2b], /* CJK Ideograph */ + [0x6d2c, 0x6d2c], /* CJK Ideograph */ + [0x6d2d, 0x6d2d], /* CJK Ideograph */ + [0x6d2e, 0x6d2e], /* CJK Ideograph */ + [0x6d2f, 0x6d2f], /* CJK Ideograph */ + [0x6d30, 0x6d30], /* CJK Ideograph */ + [0x6d31, 0x6d31], /* CJK Ideograph */ + [0x6d32, 0x6d32], /* CJK Ideograph */ + [0x6d33, 0x6d33], /* CJK Ideograph */ + [0x6d34, 0x6d34], /* CJK Ideograph */ + [0x6d35, 0x6d35], /* CJK Ideograph */ + [0x6d36, 0x6d36], /* CJK Ideograph */ + [0x6d37, 0x6d37], /* CJK Ideograph */ + [0x6d38, 0x6d38], /* CJK Ideograph */ + [0x6d39, 0x6d39], /* CJK Ideograph */ + [0x6d3a, 0x6d3a], /* CJK Ideograph */ + [0x6d3b, 0x6d3b], /* CJK Ideograph */ + [0x6d3c, 0x6d3c], /* CJK Ideograph */ + [0x6d3d, 0x6d3d], /* CJK Ideograph */ + [0x6d3e, 0x6d3e], /* CJK Ideograph */ + [0x6d3f, 0x6d3f], /* CJK Ideograph */ + [0x6d40, 0x6d40], /* CJK Ideograph */ + [0x6d41, 0x6d41], /* CJK Ideograph */ + [0x6d42, 0x6d42], /* CJK Ideograph */ + [0x6d43, 0x6d43], /* CJK Ideograph */ + [0x6d44, 0x6d44], /* CJK Ideograph */ + [0x6d45, 0x6d45], /* CJK Ideograph */ + [0x6d46, 0x6d46], /* CJK Ideograph */ + [0x6d47, 0x6d47], /* CJK Ideograph */ + [0x6d48, 0x6d48], /* CJK Ideograph */ + [0x6d49, 0x6d49], /* CJK Ideograph */ + [0x6d4a, 0x6d4a], /* CJK Ideograph */ + [0x6d4b, 0x6d4b], /* CJK Ideograph */ + [0x6d4c, 0x6d4c], /* CJK Ideograph */ + [0x6d4d, 0x6d4d], /* CJK Ideograph */ + [0x6d4e, 0x6d4e], /* CJK Ideograph */ + [0x6d4f, 0x6d4f], /* CJK Ideograph */ + [0x6d50, 0x6d50], /* CJK Ideograph */ + [0x6d51, 0x6d51], /* CJK Ideograph */ + [0x6d52, 0x6d52], /* CJK Ideograph */ + [0x6d53, 0x6d53], /* CJK Ideograph */ + [0x6d54, 0x6d54], /* CJK Ideograph */ + [0x6d55, 0x6d55], /* CJK Ideograph */ + [0x6d56, 0x6d56], /* CJK Ideograph */ + [0x6d57, 0x6d57], /* CJK Ideograph */ + [0x6d58, 0x6d58], /* CJK Ideograph */ + [0x6d59, 0x6d59], /* CJK Ideograph */ + [0x6d5a, 0x6d5a], /* CJK Ideograph */ + [0x6d5b, 0x6d5b], /* CJK Ideograph */ + [0x6d5c, 0x6d5c], /* CJK Ideograph */ + [0x6d5d, 0x6d5d], /* CJK Ideograph */ + [0x6d5e, 0x6d5e], /* CJK Ideograph */ + [0x6d5f, 0x6d5f], /* CJK Ideograph */ + [0x6d60, 0x6d60], /* CJK Ideograph */ + [0x6d61, 0x6d61], /* CJK Ideograph */ + [0x6d62, 0x6d62], /* CJK Ideograph */ + [0x6d63, 0x6d63], /* CJK Ideograph */ + [0x6d64, 0x6d64], /* CJK Ideograph */ + [0x6d65, 0x6d65], /* CJK Ideograph */ + [0x6d66, 0x6d66], /* CJK Ideograph */ + [0x6d67, 0x6d67], /* CJK Ideograph */ + [0x6d68, 0x6d68], /* CJK Ideograph */ + [0x6d69, 0x6d69], /* CJK Ideograph */ + [0x6d6a, 0x6d6a], /* CJK Ideograph */ + [0x6d6b, 0x6d6b], /* CJK Ideograph */ + [0x6d6c, 0x6d6c], /* CJK Ideograph */ + [0x6d6d, 0x6d6d], /* CJK Ideograph */ + [0x6d6e, 0x6d6e], /* CJK Ideograph */ + [0x6d6f, 0x6d6f], /* CJK Ideograph */ + [0x6d70, 0x6d70], /* CJK Ideograph */ + [0x6d71, 0x6d71], /* CJK Ideograph */ + [0x6d72, 0x6d72], /* CJK Ideograph */ + [0x6d73, 0x6d73], /* CJK Ideograph */ + [0x6d74, 0x6d74], /* CJK Ideograph */ + [0x6d75, 0x6d75], /* CJK Ideograph */ + [0x6d76, 0x6d76], /* CJK Ideograph */ + [0x6d77, 0x6d77], /* CJK Ideograph */ + [0x6d78, 0x6d78], /* CJK Ideograph */ + [0x6d79, 0x6d79], /* CJK Ideograph */ + [0x6d7a, 0x6d7a], /* CJK Ideograph */ + [0x6d7b, 0x6d7b], /* CJK Ideograph */ + [0x6d7c, 0x6d7c], /* CJK Ideograph */ + [0x6d7d, 0x6d7d], /* CJK Ideograph */ + [0x6d7e, 0x6d7e], /* CJK Ideograph */ + [0x6d7f, 0x6d7f], /* CJK Ideograph */ + [0x6d80, 0x6d80], /* CJK Ideograph */ + [0x6d81, 0x6d81], /* CJK Ideograph */ + [0x6d82, 0x6d82], /* CJK Ideograph */ + [0x6d83, 0x6d83], /* CJK Ideograph */ + [0x6d84, 0x6d84], /* CJK Ideograph */ + [0x6d85, 0x6d85], /* CJK Ideograph */ + [0x6d86, 0x6d86], /* CJK Ideograph */ + [0x6d87, 0x6d87], /* CJK Ideograph */ + [0x6d88, 0x6d88], /* CJK Ideograph */ + [0x6d89, 0x6d89], /* CJK Ideograph */ + [0x6d8a, 0x6d8a], /* CJK Ideograph */ + [0x6d8b, 0x6d8b], /* CJK Ideograph */ + [0x6d8c, 0x6d8c], /* CJK Ideograph */ + [0x6d8d, 0x6d8d], /* CJK Ideograph */ + [0x6d8e, 0x6d8e], /* CJK Ideograph */ + [0x6d8f, 0x6d8f], /* CJK Ideograph */ + [0x6d90, 0x6d90], /* CJK Ideograph */ + [0x6d91, 0x6d91], /* CJK Ideograph */ + [0x6d92, 0x6d92], /* CJK Ideograph */ + [0x6d93, 0x6d93], /* CJK Ideograph */ + [0x6d94, 0x6d94], /* CJK Ideograph */ + [0x6d95, 0x6d95], /* CJK Ideograph */ + [0x6d96, 0x6d96], /* CJK Ideograph */ + [0x6d97, 0x6d97], /* CJK Ideograph */ + [0x6d98, 0x6d98], /* CJK Ideograph */ + [0x6d99, 0x6d99], /* CJK Ideograph */ + [0x6d9a, 0x6d9a], /* CJK Ideograph */ + [0x6d9b, 0x6d9b], /* CJK Ideograph */ + [0x6d9c, 0x6d9c], /* CJK Ideograph */ + [0x6d9d, 0x6d9d], /* CJK Ideograph */ + [0x6d9e, 0x6d9e], /* CJK Ideograph */ + [0x6d9f, 0x6d9f], /* CJK Ideograph */ + [0x6da0, 0x6da0], /* CJK Ideograph */ + [0x6da1, 0x6da1], /* CJK Ideograph */ + [0x6da2, 0x6da2], /* CJK Ideograph */ + [0x6da3, 0x6da3], /* CJK Ideograph */ + [0x6da4, 0x6da4], /* CJK Ideograph */ + [0x6da5, 0x6da5], /* CJK Ideograph */ + [0x6da6, 0x6da6], /* CJK Ideograph */ + [0x6da7, 0x6da7], /* CJK Ideograph */ + [0x6da8, 0x6da8], /* CJK Ideograph */ + [0x6da9, 0x6da9], /* CJK Ideograph */ + [0x6daa, 0x6daa], /* CJK Ideograph */ + [0x6dab, 0x6dab], /* CJK Ideograph */ + [0x6dac, 0x6dac], /* CJK Ideograph */ + [0x6dad, 0x6dad], /* CJK Ideograph */ + [0x6dae, 0x6dae], /* CJK Ideograph */ + [0x6daf, 0x6daf], /* CJK Ideograph */ + [0x6db0, 0x6db0], /* CJK Ideograph */ + [0x6db1, 0x6db1], /* CJK Ideograph */ + [0x6db2, 0x6db2], /* CJK Ideograph */ + [0x6db3, 0x6db3], /* CJK Ideograph */ + [0x6db4, 0x6db4], /* CJK Ideograph */ + [0x6db5, 0x6db5], /* CJK Ideograph */ + [0x6db6, 0x6db6], /* CJK Ideograph */ + [0x6db7, 0x6db7], /* CJK Ideograph */ + [0x6db8, 0x6db8], /* CJK Ideograph */ + [0x6db9, 0x6db9], /* CJK Ideograph */ + [0x6dba, 0x6dba], /* CJK Ideograph */ + [0x6dbb, 0x6dbb], /* CJK Ideograph */ + [0x6dbc, 0x6dbc], /* CJK Ideograph */ + [0x6dbd, 0x6dbd], /* CJK Ideograph */ + [0x6dbe, 0x6dbe], /* CJK Ideograph */ + [0x6dbf, 0x6dbf], /* CJK Ideograph */ + [0x6dc0, 0x6dc0], /* CJK Ideograph */ + [0x6dc1, 0x6dc1], /* CJK Ideograph */ + [0x6dc2, 0x6dc2], /* CJK Ideograph */ + [0x6dc3, 0x6dc3], /* CJK Ideograph */ + [0x6dc4, 0x6dc4], /* CJK Ideograph */ + [0x6dc5, 0x6dc5], /* CJK Ideograph */ + [0x6dc6, 0x6dc6], /* CJK Ideograph */ + [0x6dc7, 0x6dc7], /* CJK Ideograph */ + [0x6dc8, 0x6dc8], /* CJK Ideograph */ + [0x6dc9, 0x6dc9], /* CJK Ideograph */ + [0x6dca, 0x6dca], /* CJK Ideograph */ + [0x6dcb, 0x6dcb], /* CJK Ideograph */ + [0x6dcc, 0x6dcc], /* CJK Ideograph */ + [0x6dcd, 0x6dcd], /* CJK Ideograph */ + [0x6dce, 0x6dce], /* CJK Ideograph */ + [0x6dcf, 0x6dcf], /* CJK Ideograph */ + [0x6dd0, 0x6dd0], /* CJK Ideograph */ + [0x6dd1, 0x6dd1], /* CJK Ideograph */ + [0x6dd2, 0x6dd2], /* CJK Ideograph */ + [0x6dd3, 0x6dd3], /* CJK Ideograph */ + [0x6dd4, 0x6dd4], /* CJK Ideograph */ + [0x6dd5, 0x6dd5], /* CJK Ideograph */ + [0x6dd6, 0x6dd6], /* CJK Ideograph */ + [0x6dd7, 0x6dd7], /* CJK Ideograph */ + [0x6dd8, 0x6dd8], /* CJK Ideograph */ + [0x6dd9, 0x6dd9], /* CJK Ideograph */ + [0x6dda, 0x6dda], /* CJK Ideograph */ + [0x6ddb, 0x6ddb], /* CJK Ideograph */ + [0x6ddc, 0x6ddc], /* CJK Ideograph */ + [0x6ddd, 0x6ddd], /* CJK Ideograph */ + [0x6dde, 0x6dde], /* CJK Ideograph */ + [0x6ddf, 0x6ddf], /* CJK Ideograph */ + [0x6de0, 0x6de0], /* CJK Ideograph */ + [0x6de1, 0x6de1], /* CJK Ideograph */ + [0x6de2, 0x6de2], /* CJK Ideograph */ + [0x6de3, 0x6de3], /* CJK Ideograph */ + [0x6de4, 0x6de4], /* CJK Ideograph */ + [0x6de5, 0x6de5], /* CJK Ideograph */ + [0x6de6, 0x6de6], /* CJK Ideograph */ + [0x6de7, 0x6de7], /* CJK Ideograph */ + [0x6de8, 0x6de8], /* CJK Ideograph */ + [0x6de9, 0x6de9], /* CJK Ideograph */ + [0x6dea, 0x6dea], /* CJK Ideograph */ + [0x6deb, 0x6deb], /* CJK Ideograph */ + [0x6dec, 0x6dec], /* CJK Ideograph */ + [0x6ded, 0x6ded], /* CJK Ideograph */ + [0x6dee, 0x6dee], /* CJK Ideograph */ + [0x6def, 0x6def], /* CJK Ideograph */ + [0x6df0, 0x6df0], /* CJK Ideograph */ + [0x6df1, 0x6df1], /* CJK Ideograph */ + [0x6df2, 0x6df2], /* CJK Ideograph */ + [0x6df3, 0x6df3], /* CJK Ideograph */ + [0x6df4, 0x6df4], /* CJK Ideograph */ + [0x6df5, 0x6df5], /* CJK Ideograph */ + [0x6df6, 0x6df6], /* CJK Ideograph */ + [0x6df7, 0x6df7], /* CJK Ideograph */ + [0x6df8, 0x6df8], /* CJK Ideograph */ + [0x6df9, 0x6df9], /* CJK Ideograph */ + [0x6dfa, 0x6dfa], /* CJK Ideograph */ + [0x6dfb, 0x6dfb], /* CJK Ideograph */ + [0x6dfc, 0x6dfc], /* CJK Ideograph */ + [0x6dfd, 0x6dfd], /* CJK Ideograph */ + [0x6dfe, 0x6dfe], /* CJK Ideograph */ + [0x6dff, 0x6dff], /* CJK Ideograph */ + [0x6e00, 0x6e00], /* CJK Ideograph */ + [0x6e01, 0x6e01], /* CJK Ideograph */ + [0x6e02, 0x6e02], /* CJK Ideograph */ + [0x6e03, 0x6e03], /* CJK Ideograph */ + [0x6e04, 0x6e04], /* CJK Ideograph */ + [0x6e05, 0x6e05], /* CJK Ideograph */ + [0x6e06, 0x6e06], /* CJK Ideograph */ + [0x6e07, 0x6e07], /* CJK Ideograph */ + [0x6e08, 0x6e08], /* CJK Ideograph */ + [0x6e09, 0x6e09], /* CJK Ideograph */ + [0x6e0a, 0x6e0a], /* CJK Ideograph */ + [0x6e0b, 0x6e0b], /* CJK Ideograph */ + [0x6e0c, 0x6e0c], /* CJK Ideograph */ + [0x6e0d, 0x6e0d], /* CJK Ideograph */ + [0x6e0e, 0x6e0e], /* CJK Ideograph */ + [0x6e0f, 0x6e0f], /* CJK Ideograph */ + [0x6e10, 0x6e10], /* CJK Ideograph */ + [0x6e11, 0x6e11], /* CJK Ideograph */ + [0x6e12, 0x6e12], /* CJK Ideograph */ + [0x6e13, 0x6e13], /* CJK Ideograph */ + [0x6e14, 0x6e14], /* CJK Ideograph */ + [0x6e15, 0x6e15], /* CJK Ideograph */ + [0x6e16, 0x6e16], /* CJK Ideograph */ + [0x6e17, 0x6e17], /* CJK Ideograph */ + [0x6e18, 0x6e18], /* CJK Ideograph */ + [0x6e19, 0x6e19], /* CJK Ideograph */ + [0x6e1a, 0x6e1a], /* CJK Ideograph */ + [0x6e1b, 0x6e1b], /* CJK Ideograph */ + [0x6e1c, 0x6e1c], /* CJK Ideograph */ + [0x6e1d, 0x6e1d], /* CJK Ideograph */ + [0x6e1e, 0x6e1e], /* CJK Ideograph */ + [0x6e1f, 0x6e1f], /* CJK Ideograph */ + [0x6e20, 0x6e20], /* CJK Ideograph */ + [0x6e21, 0x6e21], /* CJK Ideograph */ + [0x6e22, 0x6e22], /* CJK Ideograph */ + [0x6e23, 0x6e23], /* CJK Ideograph */ + [0x6e24, 0x6e24], /* CJK Ideograph */ + [0x6e25, 0x6e25], /* CJK Ideograph */ + [0x6e26, 0x6e26], /* CJK Ideograph */ + [0x6e27, 0x6e27], /* CJK Ideograph */ + [0x6e28, 0x6e28], /* CJK Ideograph */ + [0x6e29, 0x6e29], /* CJK Ideograph */ + [0x6e2a, 0x6e2a], /* CJK Ideograph */ + [0x6e2b, 0x6e2b], /* CJK Ideograph */ + [0x6e2c, 0x6e2c], /* CJK Ideograph */ + [0x6e2d, 0x6e2d], /* CJK Ideograph */ + [0x6e2e, 0x6e2e], /* CJK Ideograph */ + [0x6e2f, 0x6e2f], /* CJK Ideograph */ + [0x6e30, 0x6e30], /* CJK Ideograph */ + [0x6e31, 0x6e31], /* CJK Ideograph */ + [0x6e32, 0x6e32], /* CJK Ideograph */ + [0x6e33, 0x6e33], /* CJK Ideograph */ + [0x6e34, 0x6e34], /* CJK Ideograph */ + [0x6e35, 0x6e35], /* CJK Ideograph */ + [0x6e36, 0x6e36], /* CJK Ideograph */ + [0x6e37, 0x6e37], /* CJK Ideograph */ + [0x6e38, 0x6e38], /* CJK Ideograph */ + [0x6e39, 0x6e39], /* CJK Ideograph */ + [0x6e3a, 0x6e3a], /* CJK Ideograph */ + [0x6e3b, 0x6e3b], /* CJK Ideograph */ + [0x6e3c, 0x6e3c], /* CJK Ideograph */ + [0x6e3d, 0x6e3d], /* CJK Ideograph */ + [0x6e3e, 0x6e3e], /* CJK Ideograph */ + [0x6e3f, 0x6e3f], /* CJK Ideograph */ + [0x6e40, 0x6e40], /* CJK Ideograph */ + [0x6e41, 0x6e41], /* CJK Ideograph */ + [0x6e42, 0x6e42], /* CJK Ideograph */ + [0x6e43, 0x6e43], /* CJK Ideograph */ + [0x6e44, 0x6e44], /* CJK Ideograph */ + [0x6e45, 0x6e45], /* CJK Ideograph */ + [0x6e46, 0x6e46], /* CJK Ideograph */ + [0x6e47, 0x6e47], /* CJK Ideograph */ + [0x6e48, 0x6e48], /* CJK Ideograph */ + [0x6e49, 0x6e49], /* CJK Ideograph */ + [0x6e4a, 0x6e4a], /* CJK Ideograph */ + [0x6e4b, 0x6e4b], /* CJK Ideograph */ + [0x6e4c, 0x6e4c], /* CJK Ideograph */ + [0x6e4d, 0x6e4d], /* CJK Ideograph */ + [0x6e4e, 0x6e4e], /* CJK Ideograph */ + [0x6e4f, 0x6e4f], /* CJK Ideograph */ + [0x6e50, 0x6e50], /* CJK Ideograph */ + [0x6e51, 0x6e51], /* CJK Ideograph */ + [0x6e52, 0x6e52], /* CJK Ideograph */ + [0x6e53, 0x6e53], /* CJK Ideograph */ + [0x6e54, 0x6e54], /* CJK Ideograph */ + [0x6e55, 0x6e55], /* CJK Ideograph */ + [0x6e56, 0x6e56], /* CJK Ideograph */ + [0x6e57, 0x6e57], /* CJK Ideograph */ + [0x6e58, 0x6e58], /* CJK Ideograph */ + [0x6e59, 0x6e59], /* CJK Ideograph */ + [0x6e5a, 0x6e5a], /* CJK Ideograph */ + [0x6e5b, 0x6e5b], /* CJK Ideograph */ + [0x6e5c, 0x6e5c], /* CJK Ideograph */ + [0x6e5d, 0x6e5d], /* CJK Ideograph */ + [0x6e5e, 0x6e5e], /* CJK Ideograph */ + [0x6e5f, 0x6e5f], /* CJK Ideograph */ + [0x6e60, 0x6e60], /* CJK Ideograph */ + [0x6e61, 0x6e61], /* CJK Ideograph */ + [0x6e62, 0x6e62], /* CJK Ideograph */ + [0x6e63, 0x6e63], /* CJK Ideograph */ + [0x6e64, 0x6e64], /* CJK Ideograph */ + [0x6e65, 0x6e65], /* CJK Ideograph */ + [0x6e66, 0x6e66], /* CJK Ideograph */ + [0x6e67, 0x6e67], /* CJK Ideograph */ + [0x6e68, 0x6e68], /* CJK Ideograph */ + [0x6e69, 0x6e69], /* CJK Ideograph */ + [0x6e6a, 0x6e6a], /* CJK Ideograph */ + [0x6e6b, 0x6e6b], /* CJK Ideograph */ + [0x6e6c, 0x6e6c], /* CJK Ideograph */ + [0x6e6d, 0x6e6d], /* CJK Ideograph */ + [0x6e6e, 0x6e6e], /* CJK Ideograph */ + [0x6e6f, 0x6e6f], /* CJK Ideograph */ + [0x6e70, 0x6e70], /* CJK Ideograph */ + [0x6e71, 0x6e71], /* CJK Ideograph */ + [0x6e72, 0x6e72], /* CJK Ideograph */ + [0x6e73, 0x6e73], /* CJK Ideograph */ + [0x6e74, 0x6e74], /* CJK Ideograph */ + [0x6e75, 0x6e75], /* CJK Ideograph */ + [0x6e76, 0x6e76], /* CJK Ideograph */ + [0x6e77, 0x6e77], /* CJK Ideograph */ + [0x6e78, 0x6e78], /* CJK Ideograph */ + [0x6e79, 0x6e79], /* CJK Ideograph */ + [0x6e7a, 0x6e7a], /* CJK Ideograph */ + [0x6e7b, 0x6e7b], /* CJK Ideograph */ + [0x6e7c, 0x6e7c], /* CJK Ideograph */ + [0x6e7d, 0x6e7d], /* CJK Ideograph */ + [0x6e7e, 0x6e7e], /* CJK Ideograph */ + [0x6e7f, 0x6e7f], /* CJK Ideograph */ + [0x6e80, 0x6e80], /* CJK Ideograph */ + [0x6e81, 0x6e81], /* CJK Ideograph */ + [0x6e82, 0x6e82], /* CJK Ideograph */ + [0x6e83, 0x6e83], /* CJK Ideograph */ + [0x6e84, 0x6e84], /* CJK Ideograph */ + [0x6e85, 0x6e85], /* CJK Ideograph */ + [0x6e86, 0x6e86], /* CJK Ideograph */ + [0x6e87, 0x6e87], /* CJK Ideograph */ + [0x6e88, 0x6e88], /* CJK Ideograph */ + [0x6e89, 0x6e89], /* CJK Ideograph */ + [0x6e8a, 0x6e8a], /* CJK Ideograph */ + [0x6e8b, 0x6e8b], /* CJK Ideograph */ + [0x6e8c, 0x6e8c], /* CJK Ideograph */ + [0x6e8d, 0x6e8d], /* CJK Ideograph */ + [0x6e8e, 0x6e8e], /* CJK Ideograph */ + [0x6e8f, 0x6e8f], /* CJK Ideograph */ + [0x6e90, 0x6e90], /* CJK Ideograph */ + [0x6e91, 0x6e91], /* CJK Ideograph */ + [0x6e92, 0x6e92], /* CJK Ideograph */ + [0x6e93, 0x6e93], /* CJK Ideograph */ + [0x6e94, 0x6e94], /* CJK Ideograph */ + [0x6e95, 0x6e95], /* CJK Ideograph */ + [0x6e96, 0x6e96], /* CJK Ideograph */ + [0x6e97, 0x6e97], /* CJK Ideograph */ + [0x6e98, 0x6e98], /* CJK Ideograph */ + [0x6e99, 0x6e99], /* CJK Ideograph */ + [0x6e9a, 0x6e9a], /* CJK Ideograph */ + [0x6e9b, 0x6e9b], /* CJK Ideograph */ + [0x6e9c, 0x6e9c], /* CJK Ideograph */ + [0x6e9d, 0x6e9d], /* CJK Ideograph */ + [0x6e9e, 0x6e9e], /* CJK Ideograph */ + [0x6e9f, 0x6e9f], /* CJK Ideograph */ + [0x6ea0, 0x6ea0], /* CJK Ideograph */ + [0x6ea1, 0x6ea1], /* CJK Ideograph */ + [0x6ea2, 0x6ea2], /* CJK Ideograph */ + [0x6ea3, 0x6ea3], /* CJK Ideograph */ + [0x6ea4, 0x6ea4], /* CJK Ideograph */ + [0x6ea5, 0x6ea5], /* CJK Ideograph */ + [0x6ea6, 0x6ea6], /* CJK Ideograph */ + [0x6ea7, 0x6ea7], /* CJK Ideograph */ + [0x6ea8, 0x6ea8], /* CJK Ideograph */ + [0x6ea9, 0x6ea9], /* CJK Ideograph */ + [0x6eaa, 0x6eaa], /* CJK Ideograph */ + [0x6eab, 0x6eab], /* CJK Ideograph */ + [0x6eac, 0x6eac], /* CJK Ideograph */ + [0x6ead, 0x6ead], /* CJK Ideograph */ + [0x6eae, 0x6eae], /* CJK Ideograph */ + [0x6eaf, 0x6eaf], /* CJK Ideograph */ + [0x6eb0, 0x6eb0], /* CJK Ideograph */ + [0x6eb1, 0x6eb1], /* CJK Ideograph */ + [0x6eb2, 0x6eb2], /* CJK Ideograph */ + [0x6eb3, 0x6eb3], /* CJK Ideograph */ + [0x6eb4, 0x6eb4], /* CJK Ideograph */ + [0x6eb5, 0x6eb5], /* CJK Ideograph */ + [0x6eb6, 0x6eb6], /* CJK Ideograph */ + [0x6eb7, 0x6eb7], /* CJK Ideograph */ + [0x6eb8, 0x6eb8], /* CJK Ideograph */ + [0x6eb9, 0x6eb9], /* CJK Ideograph */ + [0x6eba, 0x6eba], /* CJK Ideograph */ + [0x6ebb, 0x6ebb], /* CJK Ideograph */ + [0x6ebc, 0x6ebc], /* CJK Ideograph */ + [0x6ebd, 0x6ebd], /* CJK Ideograph */ + [0x6ebe, 0x6ebe], /* CJK Ideograph */ + [0x6ebf, 0x6ebf], /* CJK Ideograph */ + [0x6ec0, 0x6ec0], /* CJK Ideograph */ + [0x6ec1, 0x6ec1], /* CJK Ideograph */ + [0x6ec2, 0x6ec2], /* CJK Ideograph */ + [0x6ec3, 0x6ec3], /* CJK Ideograph */ + [0x6ec4, 0x6ec4], /* CJK Ideograph */ + [0x6ec5, 0x6ec5], /* CJK Ideograph */ + [0x6ec6, 0x6ec6], /* CJK Ideograph */ + [0x6ec7, 0x6ec7], /* CJK Ideograph */ + [0x6ec8, 0x6ec8], /* CJK Ideograph */ + [0x6ec9, 0x6ec9], /* CJK Ideograph */ + [0x6eca, 0x6eca], /* CJK Ideograph */ + [0x6ecb, 0x6ecb], /* CJK Ideograph */ + [0x6ecc, 0x6ecc], /* CJK Ideograph */ + [0x6ecd, 0x6ecd], /* CJK Ideograph */ + [0x6ece, 0x6ece], /* CJK Ideograph */ + [0x6ecf, 0x6ecf], /* CJK Ideograph */ + [0x6ed0, 0x6ed0], /* CJK Ideograph */ + [0x6ed1, 0x6ed1], /* CJK Ideograph */ + [0x6ed2, 0x6ed2], /* CJK Ideograph */ + [0x6ed3, 0x6ed3], /* CJK Ideograph */ + [0x6ed4, 0x6ed4], /* CJK Ideograph */ + [0x6ed5, 0x6ed5], /* CJK Ideograph */ + [0x6ed6, 0x6ed6], /* CJK Ideograph */ + [0x6ed7, 0x6ed7], /* CJK Ideograph */ + [0x6ed8, 0x6ed8], /* CJK Ideograph */ + [0x6ed9, 0x6ed9], /* CJK Ideograph */ + [0x6eda, 0x6eda], /* CJK Ideograph */ + [0x6edb, 0x6edb], /* CJK Ideograph */ + [0x6edc, 0x6edc], /* CJK Ideograph */ + [0x6edd, 0x6edd], /* CJK Ideograph */ + [0x6ede, 0x6ede], /* CJK Ideograph */ + [0x6edf, 0x6edf], /* CJK Ideograph */ + [0x6ee0, 0x6ee0], /* CJK Ideograph */ + [0x6ee1, 0x6ee1], /* CJK Ideograph */ + [0x6ee2, 0x6ee2], /* CJK Ideograph */ + [0x6ee3, 0x6ee3], /* CJK Ideograph */ + [0x6ee4, 0x6ee4], /* CJK Ideograph */ + [0x6ee5, 0x6ee5], /* CJK Ideograph */ + [0x6ee6, 0x6ee6], /* CJK Ideograph */ + [0x6ee7, 0x6ee7], /* CJK Ideograph */ + [0x6ee8, 0x6ee8], /* CJK Ideograph */ + [0x6ee9, 0x6ee9], /* CJK Ideograph */ + [0x6eea, 0x6eea], /* CJK Ideograph */ + [0x6eeb, 0x6eeb], /* CJK Ideograph */ + [0x6eec, 0x6eec], /* CJK Ideograph */ + [0x6eed, 0x6eed], /* CJK Ideograph */ + [0x6eee, 0x6eee], /* CJK Ideograph */ + [0x6eef, 0x6eef], /* CJK Ideograph */ + [0x6ef0, 0x6ef0], /* CJK Ideograph */ + [0x6ef1, 0x6ef1], /* CJK Ideograph */ + [0x6ef2, 0x6ef2], /* CJK Ideograph */ + [0x6ef3, 0x6ef3], /* CJK Ideograph */ + [0x6ef4, 0x6ef4], /* CJK Ideograph */ + [0x6ef5, 0x6ef5], /* CJK Ideograph */ + [0x6ef6, 0x6ef6], /* CJK Ideograph */ + [0x6ef7, 0x6ef7], /* CJK Ideograph */ + [0x6ef8, 0x6ef8], /* CJK Ideograph */ + [0x6ef9, 0x6ef9], /* CJK Ideograph */ + [0x6efa, 0x6efa], /* CJK Ideograph */ + [0x6efb, 0x6efb], /* CJK Ideograph */ + [0x6efc, 0x6efc], /* CJK Ideograph */ + [0x6efd, 0x6efd], /* CJK Ideograph */ + [0x6efe, 0x6efe], /* CJK Ideograph */ + [0x6eff, 0x6eff], /* CJK Ideograph */ + [0x6f00, 0x6f00], /* CJK Ideograph */ + [0x6f01, 0x6f01], /* CJK Ideograph */ + [0x6f02, 0x6f02], /* CJK Ideograph */ + [0x6f03, 0x6f03], /* CJK Ideograph */ + [0x6f04, 0x6f04], /* CJK Ideograph */ + [0x6f05, 0x6f05], /* CJK Ideograph */ + [0x6f06, 0x6f06], /* CJK Ideograph */ + [0x6f07, 0x6f07], /* CJK Ideograph */ + [0x6f08, 0x6f08], /* CJK Ideograph */ + [0x6f09, 0x6f09], /* CJK Ideograph */ + [0x6f0a, 0x6f0a], /* CJK Ideograph */ + [0x6f0b, 0x6f0b], /* CJK Ideograph */ + [0x6f0c, 0x6f0c], /* CJK Ideograph */ + [0x6f0d, 0x6f0d], /* CJK Ideograph */ + [0x6f0e, 0x6f0e], /* CJK Ideograph */ + [0x6f0f, 0x6f0f], /* CJK Ideograph */ + [0x6f10, 0x6f10], /* CJK Ideograph */ + [0x6f11, 0x6f11], /* CJK Ideograph */ + [0x6f12, 0x6f12], /* CJK Ideograph */ + [0x6f13, 0x6f13], /* CJK Ideograph */ + [0x6f14, 0x6f14], /* CJK Ideograph */ + [0x6f15, 0x6f15], /* CJK Ideograph */ + [0x6f16, 0x6f16], /* CJK Ideograph */ + [0x6f17, 0x6f17], /* CJK Ideograph */ + [0x6f18, 0x6f18], /* CJK Ideograph */ + [0x6f19, 0x6f19], /* CJK Ideograph */ + [0x6f1a, 0x6f1a], /* CJK Ideograph */ + [0x6f1b, 0x6f1b], /* CJK Ideograph */ + [0x6f1c, 0x6f1c], /* CJK Ideograph */ + [0x6f1d, 0x6f1d], /* CJK Ideograph */ + [0x6f1e, 0x6f1e], /* CJK Ideograph */ + [0x6f1f, 0x6f1f], /* CJK Ideograph */ + [0x6f20, 0x6f20], /* CJK Ideograph */ + [0x6f21, 0x6f21], /* CJK Ideograph */ + [0x6f22, 0x6f22], /* CJK Ideograph */ + [0x6f23, 0x6f23], /* CJK Ideograph */ + [0x6f24, 0x6f24], /* CJK Ideograph */ + [0x6f25, 0x6f25], /* CJK Ideograph */ + [0x6f26, 0x6f26], /* CJK Ideograph */ + [0x6f27, 0x6f27], /* CJK Ideograph */ + [0x6f28, 0x6f28], /* CJK Ideograph */ + [0x6f29, 0x6f29], /* CJK Ideograph */ + [0x6f2a, 0x6f2a], /* CJK Ideograph */ + [0x6f2b, 0x6f2b], /* CJK Ideograph */ + [0x6f2c, 0x6f2c], /* CJK Ideograph */ + [0x6f2d, 0x6f2d], /* CJK Ideograph */ + [0x6f2e, 0x6f2e], /* CJK Ideograph */ + [0x6f2f, 0x6f2f], /* CJK Ideograph */ + [0x6f30, 0x6f30], /* CJK Ideograph */ + [0x6f31, 0x6f31], /* CJK Ideograph */ + [0x6f32, 0x6f32], /* CJK Ideograph */ + [0x6f33, 0x6f33], /* CJK Ideograph */ + [0x6f34, 0x6f34], /* CJK Ideograph */ + [0x6f35, 0x6f35], /* CJK Ideograph */ + [0x6f36, 0x6f36], /* CJK Ideograph */ + [0x6f37, 0x6f37], /* CJK Ideograph */ + [0x6f38, 0x6f38], /* CJK Ideograph */ + [0x6f39, 0x6f39], /* CJK Ideograph */ + [0x6f3a, 0x6f3a], /* CJK Ideograph */ + [0x6f3b, 0x6f3b], /* CJK Ideograph */ + [0x6f3c, 0x6f3c], /* CJK Ideograph */ + [0x6f3d, 0x6f3d], /* CJK Ideograph */ + [0x6f3e, 0x6f3e], /* CJK Ideograph */ + [0x6f3f, 0x6f3f], /* CJK Ideograph */ + [0x6f40, 0x6f40], /* CJK Ideograph */ + [0x6f41, 0x6f41], /* CJK Ideograph */ + [0x6f42, 0x6f42], /* CJK Ideograph */ + [0x6f43, 0x6f43], /* CJK Ideograph */ + [0x6f44, 0x6f44], /* CJK Ideograph */ + [0x6f45, 0x6f45], /* CJK Ideograph */ + [0x6f46, 0x6f46], /* CJK Ideograph */ + [0x6f47, 0x6f47], /* CJK Ideograph */ + [0x6f48, 0x6f48], /* CJK Ideograph */ + [0x6f49, 0x6f49], /* CJK Ideograph */ + [0x6f4a, 0x6f4a], /* CJK Ideograph */ + [0x6f4b, 0x6f4b], /* CJK Ideograph */ + [0x6f4c, 0x6f4c], /* CJK Ideograph */ + [0x6f4d, 0x6f4d], /* CJK Ideograph */ + [0x6f4e, 0x6f4e], /* CJK Ideograph */ + [0x6f4f, 0x6f4f], /* CJK Ideograph */ + [0x6f50, 0x6f50], /* CJK Ideograph */ + [0x6f51, 0x6f51], /* CJK Ideograph */ + [0x6f52, 0x6f52], /* CJK Ideograph */ + [0x6f53, 0x6f53], /* CJK Ideograph */ + [0x6f54, 0x6f54], /* CJK Ideograph */ + [0x6f55, 0x6f55], /* CJK Ideograph */ + [0x6f56, 0x6f56], /* CJK Ideograph */ + [0x6f57, 0x6f57], /* CJK Ideograph */ + [0x6f58, 0x6f58], /* CJK Ideograph */ + [0x6f59, 0x6f59], /* CJK Ideograph */ + [0x6f5a, 0x6f5a], /* CJK Ideograph */ + [0x6f5b, 0x6f5b], /* CJK Ideograph */ + [0x6f5c, 0x6f5c], /* CJK Ideograph */ + [0x6f5d, 0x6f5d], /* CJK Ideograph */ + [0x6f5e, 0x6f5e], /* CJK Ideograph */ + [0x6f5f, 0x6f5f], /* CJK Ideograph */ + [0x6f60, 0x6f60], /* CJK Ideograph */ + [0x6f61, 0x6f61], /* CJK Ideograph */ + [0x6f62, 0x6f62], /* CJK Ideograph */ + [0x6f63, 0x6f63], /* CJK Ideograph */ + [0x6f64, 0x6f64], /* CJK Ideograph */ + [0x6f65, 0x6f65], /* CJK Ideograph */ + [0x6f66, 0x6f66], /* CJK Ideograph */ + [0x6f67, 0x6f67], /* CJK Ideograph */ + [0x6f68, 0x6f68], /* CJK Ideograph */ + [0x6f69, 0x6f69], /* CJK Ideograph */ + [0x6f6a, 0x6f6a], /* CJK Ideograph */ + [0x6f6b, 0x6f6b], /* CJK Ideograph */ + [0x6f6c, 0x6f6c], /* CJK Ideograph */ + [0x6f6d, 0x6f6d], /* CJK Ideograph */ + [0x6f6e, 0x6f6e], /* CJK Ideograph */ + [0x6f6f, 0x6f6f], /* CJK Ideograph */ + [0x6f70, 0x6f70], /* CJK Ideograph */ + [0x6f71, 0x6f71], /* CJK Ideograph */ + [0x6f72, 0x6f72], /* CJK Ideograph */ + [0x6f73, 0x6f73], /* CJK Ideograph */ + [0x6f74, 0x6f74], /* CJK Ideograph */ + [0x6f75, 0x6f75], /* CJK Ideograph */ + [0x6f76, 0x6f76], /* CJK Ideograph */ + [0x6f77, 0x6f77], /* CJK Ideograph */ + [0x6f78, 0x6f78], /* CJK Ideograph */ + [0x6f79, 0x6f79], /* CJK Ideograph */ + [0x6f7a, 0x6f7a], /* CJK Ideograph */ + [0x6f7b, 0x6f7b], /* CJK Ideograph */ + [0x6f7c, 0x6f7c], /* CJK Ideograph */ + [0x6f7d, 0x6f7d], /* CJK Ideograph */ + [0x6f7e, 0x6f7e], /* CJK Ideograph */ + [0x6f7f, 0x6f7f], /* CJK Ideograph */ + [0x6f80, 0x6f80], /* CJK Ideograph */ + [0x6f81, 0x6f81], /* CJK Ideograph */ + [0x6f82, 0x6f82], /* CJK Ideograph */ + [0x6f83, 0x6f83], /* CJK Ideograph */ + [0x6f84, 0x6f84], /* CJK Ideograph */ + [0x6f85, 0x6f85], /* CJK Ideograph */ + [0x6f86, 0x6f86], /* CJK Ideograph */ + [0x6f87, 0x6f87], /* CJK Ideograph */ + [0x6f88, 0x6f88], /* CJK Ideograph */ + [0x6f89, 0x6f89], /* CJK Ideograph */ + [0x6f8a, 0x6f8a], /* CJK Ideograph */ + [0x6f8b, 0x6f8b], /* CJK Ideograph */ + [0x6f8c, 0x6f8c], /* CJK Ideograph */ + [0x6f8d, 0x6f8d], /* CJK Ideograph */ + [0x6f8e, 0x6f8e], /* CJK Ideograph */ + [0x6f8f, 0x6f8f], /* CJK Ideograph */ + [0x6f90, 0x6f90], /* CJK Ideograph */ + [0x6f91, 0x6f91], /* CJK Ideograph */ + [0x6f92, 0x6f92], /* CJK Ideograph */ + [0x6f93, 0x6f93], /* CJK Ideograph */ + [0x6f94, 0x6f94], /* CJK Ideograph */ + [0x6f95, 0x6f95], /* CJK Ideograph */ + [0x6f96, 0x6f96], /* CJK Ideograph */ + [0x6f97, 0x6f97], /* CJK Ideograph */ + [0x6f98, 0x6f98], /* CJK Ideograph */ + [0x6f99, 0x6f99], /* CJK Ideograph */ + [0x6f9a, 0x6f9a], /* CJK Ideograph */ + [0x6f9b, 0x6f9b], /* CJK Ideograph */ + [0x6f9c, 0x6f9c], /* CJK Ideograph */ + [0x6f9d, 0x6f9d], /* CJK Ideograph */ + [0x6f9e, 0x6f9e], /* CJK Ideograph */ + [0x6f9f, 0x6f9f], /* CJK Ideograph */ + [0x6fa0, 0x6fa0], /* CJK Ideograph */ + [0x6fa1, 0x6fa1], /* CJK Ideograph */ + [0x6fa2, 0x6fa2], /* CJK Ideograph */ + [0x6fa3, 0x6fa3], /* CJK Ideograph */ + [0x6fa4, 0x6fa4], /* CJK Ideograph */ + [0x6fa5, 0x6fa5], /* CJK Ideograph */ + [0x6fa6, 0x6fa6], /* CJK Ideograph */ + [0x6fa7, 0x6fa7], /* CJK Ideograph */ + [0x6fa8, 0x6fa8], /* CJK Ideograph */ + [0x6fa9, 0x6fa9], /* CJK Ideograph */ + [0x6faa, 0x6faa], /* CJK Ideograph */ + [0x6fab, 0x6fab], /* CJK Ideograph */ + [0x6fac, 0x6fac], /* CJK Ideograph */ + [0x6fad, 0x6fad], /* CJK Ideograph */ + [0x6fae, 0x6fae], /* CJK Ideograph */ + [0x6faf, 0x6faf], /* CJK Ideograph */ + [0x6fb0, 0x6fb0], /* CJK Ideograph */ + [0x6fb1, 0x6fb1], /* CJK Ideograph */ + [0x6fb2, 0x6fb2], /* CJK Ideograph */ + [0x6fb3, 0x6fb3], /* CJK Ideograph */ + [0x6fb4, 0x6fb4], /* CJK Ideograph */ + [0x6fb5, 0x6fb5], /* CJK Ideograph */ + [0x6fb6, 0x6fb6], /* CJK Ideograph */ + [0x6fb7, 0x6fb7], /* CJK Ideograph */ + [0x6fb8, 0x6fb8], /* CJK Ideograph */ + [0x6fb9, 0x6fb9], /* CJK Ideograph */ + [0x6fba, 0x6fba], /* CJK Ideograph */ + [0x6fbb, 0x6fbb], /* CJK Ideograph */ + [0x6fbc, 0x6fbc], /* CJK Ideograph */ + [0x6fbd, 0x6fbd], /* CJK Ideograph */ + [0x6fbe, 0x6fbe], /* CJK Ideograph */ + [0x6fbf, 0x6fbf], /* CJK Ideograph */ + [0x6fc0, 0x6fc0], /* CJK Ideograph */ + [0x6fc1, 0x6fc1], /* CJK Ideograph */ + [0x6fc2, 0x6fc2], /* CJK Ideograph */ + [0x6fc3, 0x6fc3], /* CJK Ideograph */ + [0x6fc4, 0x6fc4], /* CJK Ideograph */ + [0x6fc5, 0x6fc5], /* CJK Ideograph */ + [0x6fc6, 0x6fc6], /* CJK Ideograph */ + [0x6fc7, 0x6fc7], /* CJK Ideograph */ + [0x6fc8, 0x6fc8], /* CJK Ideograph */ + [0x6fc9, 0x6fc9], /* CJK Ideograph */ + [0x6fca, 0x6fca], /* CJK Ideograph */ + [0x6fcb, 0x6fcb], /* CJK Ideograph */ + [0x6fcc, 0x6fcc], /* CJK Ideograph */ + [0x6fcd, 0x6fcd], /* CJK Ideograph */ + [0x6fce, 0x6fce], /* CJK Ideograph */ + [0x6fcf, 0x6fcf], /* CJK Ideograph */ + [0x6fd0, 0x6fd0], /* CJK Ideograph */ + [0x6fd1, 0x6fd1], /* CJK Ideograph */ + [0x6fd2, 0x6fd2], /* CJK Ideograph */ + [0x6fd3, 0x6fd3], /* CJK Ideograph */ + [0x6fd4, 0x6fd4], /* CJK Ideograph */ + [0x6fd5, 0x6fd5], /* CJK Ideograph */ + [0x6fd6, 0x6fd6], /* CJK Ideograph */ + [0x6fd7, 0x6fd7], /* CJK Ideograph */ + [0x6fd8, 0x6fd8], /* CJK Ideograph */ + [0x6fd9, 0x6fd9], /* CJK Ideograph */ + [0x6fda, 0x6fda], /* CJK Ideograph */ + [0x6fdb, 0x6fdb], /* CJK Ideograph */ + [0x6fdc, 0x6fdc], /* CJK Ideograph */ + [0x6fdd, 0x6fdd], /* CJK Ideograph */ + [0x6fde, 0x6fde], /* CJK Ideograph */ + [0x6fdf, 0x6fdf], /* CJK Ideograph */ + [0x6fe0, 0x6fe0], /* CJK Ideograph */ + [0x6fe1, 0x6fe1], /* CJK Ideograph */ + [0x6fe2, 0x6fe2], /* CJK Ideograph */ + [0x6fe3, 0x6fe3], /* CJK Ideograph */ + [0x6fe4, 0x6fe4], /* CJK Ideograph */ + [0x6fe5, 0x6fe5], /* CJK Ideograph */ + [0x6fe6, 0x6fe6], /* CJK Ideograph */ + [0x6fe7, 0x6fe7], /* CJK Ideograph */ + [0x6fe8, 0x6fe8], /* CJK Ideograph */ + [0x6fe9, 0x6fe9], /* CJK Ideograph */ + [0x6fea, 0x6fea], /* CJK Ideograph */ + [0x6feb, 0x6feb], /* CJK Ideograph */ + [0x6fec, 0x6fec], /* CJK Ideograph */ + [0x6fed, 0x6fed], /* CJK Ideograph */ + [0x6fee, 0x6fee], /* CJK Ideograph */ + [0x6fef, 0x6fef], /* CJK Ideograph */ + [0x6ff0, 0x6ff0], /* CJK Ideograph */ + [0x6ff1, 0x6ff1], /* CJK Ideograph */ + [0x6ff2, 0x6ff2], /* CJK Ideograph */ + [0x6ff3, 0x6ff3], /* CJK Ideograph */ + [0x6ff4, 0x6ff4], /* CJK Ideograph */ + [0x6ff5, 0x6ff5], /* CJK Ideograph */ + [0x6ff6, 0x6ff6], /* CJK Ideograph */ + [0x6ff7, 0x6ff7], /* CJK Ideograph */ + [0x6ff8, 0x6ff8], /* CJK Ideograph */ + [0x6ff9, 0x6ff9], /* CJK Ideograph */ + [0x6ffa, 0x6ffa], /* CJK Ideograph */ + [0x6ffb, 0x6ffb], /* CJK Ideograph */ + [0x6ffc, 0x6ffc], /* CJK Ideograph */ + [0x6ffd, 0x6ffd], /* CJK Ideograph */ + [0x6ffe, 0x6ffe], /* CJK Ideograph */ + [0x6fff, 0x6fff], /* CJK Ideograph */ + [0x7000, 0x7000], /* CJK Ideograph */ + [0x7001, 0x7001], /* CJK Ideograph */ + [0x7002, 0x7002], /* CJK Ideograph */ + [0x7003, 0x7003], /* CJK Ideograph */ + [0x7004, 0x7004], /* CJK Ideograph */ + [0x7005, 0x7005], /* CJK Ideograph */ + [0x7006, 0x7006], /* CJK Ideograph */ + [0x7007, 0x7007], /* CJK Ideograph */ + [0x7008, 0x7008], /* CJK Ideograph */ + [0x7009, 0x7009], /* CJK Ideograph */ + [0x700a, 0x700a], /* CJK Ideograph */ + [0x700b, 0x700b], /* CJK Ideograph */ + [0x700c, 0x700c], /* CJK Ideograph */ + [0x700d, 0x700d], /* CJK Ideograph */ + [0x700e, 0x700e], /* CJK Ideograph */ + [0x700f, 0x700f], /* CJK Ideograph */ + [0x7010, 0x7010], /* CJK Ideograph */ + [0x7011, 0x7011], /* CJK Ideograph */ + [0x7012, 0x7012], /* CJK Ideograph */ + [0x7013, 0x7013], /* CJK Ideograph */ + [0x7014, 0x7014], /* CJK Ideograph */ + [0x7015, 0x7015], /* CJK Ideograph */ + [0x7016, 0x7016], /* CJK Ideograph */ + [0x7017, 0x7017], /* CJK Ideograph */ + [0x7018, 0x7018], /* CJK Ideograph */ + [0x7019, 0x7019], /* CJK Ideograph */ + [0x701a, 0x701a], /* CJK Ideograph */ + [0x701b, 0x701b], /* CJK Ideograph */ + [0x701c, 0x701c], /* CJK Ideograph */ + [0x701d, 0x701d], /* CJK Ideograph */ + [0x701e, 0x701e], /* CJK Ideograph */ + [0x701f, 0x701f], /* CJK Ideograph */ + [0x7020, 0x7020], /* CJK Ideograph */ + [0x7021, 0x7021], /* CJK Ideograph */ + [0x7022, 0x7022], /* CJK Ideograph */ + [0x7023, 0x7023], /* CJK Ideograph */ + [0x7024, 0x7024], /* CJK Ideograph */ + [0x7025, 0x7025], /* CJK Ideograph */ + [0x7026, 0x7026], /* CJK Ideograph */ + [0x7027, 0x7027], /* CJK Ideograph */ + [0x7028, 0x7028], /* CJK Ideograph */ + [0x7029, 0x7029], /* CJK Ideograph */ + [0x702a, 0x702a], /* CJK Ideograph */ + [0x702b, 0x702b], /* CJK Ideograph */ + [0x702c, 0x702c], /* CJK Ideograph */ + [0x702d, 0x702d], /* CJK Ideograph */ + [0x702e, 0x702e], /* CJK Ideograph */ + [0x702f, 0x702f], /* CJK Ideograph */ + [0x7030, 0x7030], /* CJK Ideograph */ + [0x7031, 0x7031], /* CJK Ideograph */ + [0x7032, 0x7032], /* CJK Ideograph */ + [0x7033, 0x7033], /* CJK Ideograph */ + [0x7034, 0x7034], /* CJK Ideograph */ + [0x7035, 0x7035], /* CJK Ideograph */ + [0x7036, 0x7036], /* CJK Ideograph */ + [0x7037, 0x7037], /* CJK Ideograph */ + [0x7038, 0x7038], /* CJK Ideograph */ + [0x7039, 0x7039], /* CJK Ideograph */ + [0x703a, 0x703a], /* CJK Ideograph */ + [0x703b, 0x703b], /* CJK Ideograph */ + [0x703c, 0x703c], /* CJK Ideograph */ + [0x703d, 0x703d], /* CJK Ideograph */ + [0x703e, 0x703e], /* CJK Ideograph */ + [0x703f, 0x703f], /* CJK Ideograph */ + [0x7040, 0x7040], /* CJK Ideograph */ + [0x7041, 0x7041], /* CJK Ideograph */ + [0x7042, 0x7042], /* CJK Ideograph */ + [0x7043, 0x7043], /* CJK Ideograph */ + [0x7044, 0x7044], /* CJK Ideograph */ + [0x7045, 0x7045], /* CJK Ideograph */ + [0x7046, 0x7046], /* CJK Ideograph */ + [0x7047, 0x7047], /* CJK Ideograph */ + [0x7048, 0x7048], /* CJK Ideograph */ + [0x7049, 0x7049], /* CJK Ideograph */ + [0x704a, 0x704a], /* CJK Ideograph */ + [0x704b, 0x704b], /* CJK Ideograph */ + [0x704c, 0x704c], /* CJK Ideograph */ + [0x704d, 0x704d], /* CJK Ideograph */ + [0x704e, 0x704e], /* CJK Ideograph */ + [0x704f, 0x704f], /* CJK Ideograph */ + [0x7050, 0x7050], /* CJK Ideograph */ + [0x7051, 0x7051], /* CJK Ideograph */ + [0x7052, 0x7052], /* CJK Ideograph */ + [0x7053, 0x7053], /* CJK Ideograph */ + [0x7054, 0x7054], /* CJK Ideograph */ + [0x7055, 0x7055], /* CJK Ideograph */ + [0x7056, 0x7056], /* CJK Ideograph */ + [0x7057, 0x7057], /* CJK Ideograph */ + [0x7058, 0x7058], /* CJK Ideograph */ + [0x7059, 0x7059], /* CJK Ideograph */ + [0x705a, 0x705a], /* CJK Ideograph */ + [0x705b, 0x705b], /* CJK Ideograph */ + [0x705c, 0x705c], /* CJK Ideograph */ + [0x705d, 0x705d], /* CJK Ideograph */ + [0x705e, 0x705e], /* CJK Ideograph */ + [0x705f, 0x705f], /* CJK Ideograph */ + [0x7060, 0x7060], /* CJK Ideograph */ + [0x7061, 0x7061], /* CJK Ideograph */ + [0x7062, 0x7062], /* CJK Ideograph */ + [0x7063, 0x7063], /* CJK Ideograph */ + [0x7064, 0x7064], /* CJK Ideograph */ + [0x7065, 0x7065], /* CJK Ideograph */ + [0x7066, 0x7066], /* CJK Ideograph */ + [0x7067, 0x7067], /* CJK Ideograph */ + [0x7068, 0x7068], /* CJK Ideograph */ + [0x7069, 0x7069], /* CJK Ideograph */ + [0x706a, 0x706a], /* CJK Ideograph */ + [0x706b, 0x706b], /* CJK Ideograph */ + [0x706c, 0x706c], /* CJK Ideograph */ + [0x706d, 0x706d], /* CJK Ideograph */ + [0x706e, 0x706e], /* CJK Ideograph */ + [0x706f, 0x706f], /* CJK Ideograph */ + [0x7070, 0x7070], /* CJK Ideograph */ + [0x7071, 0x7071], /* CJK Ideograph */ + [0x7072, 0x7072], /* CJK Ideograph */ + [0x7073, 0x7073], /* CJK Ideograph */ + [0x7074, 0x7074], /* CJK Ideograph */ + [0x7075, 0x7075], /* CJK Ideograph */ + [0x7076, 0x7076], /* CJK Ideograph */ + [0x7077, 0x7077], /* CJK Ideograph */ + [0x7078, 0x7078], /* CJK Ideograph */ + [0x7079, 0x7079], /* CJK Ideograph */ + [0x707a, 0x707a], /* CJK Ideograph */ + [0x707b, 0x707b], /* CJK Ideograph */ + [0x707c, 0x707c], /* CJK Ideograph */ + [0x707d, 0x707d], /* CJK Ideograph */ + [0x707e, 0x707e], /* CJK Ideograph */ + [0x707f, 0x707f], /* CJK Ideograph */ + [0x7080, 0x7080], /* CJK Ideograph */ + [0x7081, 0x7081], /* CJK Ideograph */ + [0x7082, 0x7082], /* CJK Ideograph */ + [0x7083, 0x7083], /* CJK Ideograph */ + [0x7084, 0x7084], /* CJK Ideograph */ + [0x7085, 0x7085], /* CJK Ideograph */ + [0x7086, 0x7086], /* CJK Ideograph */ + [0x7087, 0x7087], /* CJK Ideograph */ + [0x7088, 0x7088], /* CJK Ideograph */ + [0x7089, 0x7089], /* CJK Ideograph */ + [0x708a, 0x708a], /* CJK Ideograph */ + [0x708b, 0x708b], /* CJK Ideograph */ + [0x708c, 0x708c], /* CJK Ideograph */ + [0x708d, 0x708d], /* CJK Ideograph */ + [0x708e, 0x708e], /* CJK Ideograph */ + [0x708f, 0x708f], /* CJK Ideograph */ + [0x7090, 0x7090], /* CJK Ideograph */ + [0x7091, 0x7091], /* CJK Ideograph */ + [0x7092, 0x7092], /* CJK Ideograph */ + [0x7093, 0x7093], /* CJK Ideograph */ + [0x7094, 0x7094], /* CJK Ideograph */ + [0x7095, 0x7095], /* CJK Ideograph */ + [0x7096, 0x7096], /* CJK Ideograph */ + [0x7097, 0x7097], /* CJK Ideograph */ + [0x7098, 0x7098], /* CJK Ideograph */ + [0x7099, 0x7099], /* CJK Ideograph */ + [0x709a, 0x709a], /* CJK Ideograph */ + [0x709b, 0x709b], /* CJK Ideograph */ + [0x709c, 0x709c], /* CJK Ideograph */ + [0x709d, 0x709d], /* CJK Ideograph */ + [0x709e, 0x709e], /* CJK Ideograph */ + [0x709f, 0x709f], /* CJK Ideograph */ + [0x70a0, 0x70a0], /* CJK Ideograph */ + [0x70a1, 0x70a1], /* CJK Ideograph */ + [0x70a2, 0x70a2], /* CJK Ideograph */ + [0x70a3, 0x70a3], /* CJK Ideograph */ + [0x70a4, 0x70a4], /* CJK Ideograph */ + [0x70a5, 0x70a5], /* CJK Ideograph */ + [0x70a6, 0x70a6], /* CJK Ideograph */ + [0x70a7, 0x70a7], /* CJK Ideograph */ + [0x70a8, 0x70a8], /* CJK Ideograph */ + [0x70a9, 0x70a9], /* CJK Ideograph */ + [0x70aa, 0x70aa], /* CJK Ideograph */ + [0x70ab, 0x70ab], /* CJK Ideograph */ + [0x70ac, 0x70ac], /* CJK Ideograph */ + [0x70ad, 0x70ad], /* CJK Ideograph */ + [0x70ae, 0x70ae], /* CJK Ideograph */ + [0x70af, 0x70af], /* CJK Ideograph */ + [0x70b0, 0x70b0], /* CJK Ideograph */ + [0x70b1, 0x70b1], /* CJK Ideograph */ + [0x70b2, 0x70b2], /* CJK Ideograph */ + [0x70b3, 0x70b3], /* CJK Ideograph */ + [0x70b4, 0x70b4], /* CJK Ideograph */ + [0x70b5, 0x70b5], /* CJK Ideograph */ + [0x70b6, 0x70b6], /* CJK Ideograph */ + [0x70b7, 0x70b7], /* CJK Ideograph */ + [0x70b8, 0x70b8], /* CJK Ideograph */ + [0x70b9, 0x70b9], /* CJK Ideograph */ + [0x70ba, 0x70ba], /* CJK Ideograph */ + [0x70bb, 0x70bb], /* CJK Ideograph */ + [0x70bc, 0x70bc], /* CJK Ideograph */ + [0x70bd, 0x70bd], /* CJK Ideograph */ + [0x70be, 0x70be], /* CJK Ideograph */ + [0x70bf, 0x70bf], /* CJK Ideograph */ + [0x70c0, 0x70c0], /* CJK Ideograph */ + [0x70c1, 0x70c1], /* CJK Ideograph */ + [0x70c2, 0x70c2], /* CJK Ideograph */ + [0x70c3, 0x70c3], /* CJK Ideograph */ + [0x70c4, 0x70c4], /* CJK Ideograph */ + [0x70c5, 0x70c5], /* CJK Ideograph */ + [0x70c6, 0x70c6], /* CJK Ideograph */ + [0x70c7, 0x70c7], /* CJK Ideograph */ + [0x70c8, 0x70c8], /* CJK Ideograph */ + [0x70c9, 0x70c9], /* CJK Ideograph */ + [0x70ca, 0x70ca], /* CJK Ideograph */ + [0x70cb, 0x70cb], /* CJK Ideograph */ + [0x70cc, 0x70cc], /* CJK Ideograph */ + [0x70cd, 0x70cd], /* CJK Ideograph */ + [0x70ce, 0x70ce], /* CJK Ideograph */ + [0x70cf, 0x70cf], /* CJK Ideograph */ + [0x70d0, 0x70d0], /* CJK Ideograph */ + [0x70d1, 0x70d1], /* CJK Ideograph */ + [0x70d2, 0x70d2], /* CJK Ideograph */ + [0x70d3, 0x70d3], /* CJK Ideograph */ + [0x70d4, 0x70d4], /* CJK Ideograph */ + [0x70d5, 0x70d5], /* CJK Ideograph */ + [0x70d6, 0x70d6], /* CJK Ideograph */ + [0x70d7, 0x70d7], /* CJK Ideograph */ + [0x70d8, 0x70d8], /* CJK Ideograph */ + [0x70d9, 0x70d9], /* CJK Ideograph */ + [0x70da, 0x70da], /* CJK Ideograph */ + [0x70db, 0x70db], /* CJK Ideograph */ + [0x70dc, 0x70dc], /* CJK Ideograph */ + [0x70dd, 0x70dd], /* CJK Ideograph */ + [0x70de, 0x70de], /* CJK Ideograph */ + [0x70df, 0x70df], /* CJK Ideograph */ + [0x70e0, 0x70e0], /* CJK Ideograph */ + [0x70e1, 0x70e1], /* CJK Ideograph */ + [0x70e2, 0x70e2], /* CJK Ideograph */ + [0x70e3, 0x70e3], /* CJK Ideograph */ + [0x70e4, 0x70e4], /* CJK Ideograph */ + [0x70e5, 0x70e5], /* CJK Ideograph */ + [0x70e6, 0x70e6], /* CJK Ideograph */ + [0x70e7, 0x70e7], /* CJK Ideograph */ + [0x70e8, 0x70e8], /* CJK Ideograph */ + [0x70e9, 0x70e9], /* CJK Ideograph */ + [0x70ea, 0x70ea], /* CJK Ideograph */ + [0x70eb, 0x70eb], /* CJK Ideograph */ + [0x70ec, 0x70ec], /* CJK Ideograph */ + [0x70ed, 0x70ed], /* CJK Ideograph */ + [0x70ee, 0x70ee], /* CJK Ideograph */ + [0x70ef, 0x70ef], /* CJK Ideograph */ + [0x70f0, 0x70f0], /* CJK Ideograph */ + [0x70f1, 0x70f1], /* CJK Ideograph */ + [0x70f2, 0x70f2], /* CJK Ideograph */ + [0x70f3, 0x70f3], /* CJK Ideograph */ + [0x70f4, 0x70f4], /* CJK Ideograph */ + [0x70f5, 0x70f5], /* CJK Ideograph */ + [0x70f6, 0x70f6], /* CJK Ideograph */ + [0x70f7, 0x70f7], /* CJK Ideograph */ + [0x70f8, 0x70f8], /* CJK Ideograph */ + [0x70f9, 0x70f9], /* CJK Ideograph */ + [0x70fa, 0x70fa], /* CJK Ideograph */ + [0x70fb, 0x70fb], /* CJK Ideograph */ + [0x70fc, 0x70fc], /* CJK Ideograph */ + [0x70fd, 0x70fd], /* CJK Ideograph */ + [0x70fe, 0x70fe], /* CJK Ideograph */ + [0x70ff, 0x70ff], /* CJK Ideograph */ + [0x7100, 0x7100], /* CJK Ideograph */ + [0x7101, 0x7101], /* CJK Ideograph */ + [0x7102, 0x7102], /* CJK Ideograph */ + [0x7103, 0x7103], /* CJK Ideograph */ + [0x7104, 0x7104], /* CJK Ideograph */ + [0x7105, 0x7105], /* CJK Ideograph */ + [0x7106, 0x7106], /* CJK Ideograph */ + [0x7107, 0x7107], /* CJK Ideograph */ + [0x7108, 0x7108], /* CJK Ideograph */ + [0x7109, 0x7109], /* CJK Ideograph */ + [0x710a, 0x710a], /* CJK Ideograph */ + [0x710b, 0x710b], /* CJK Ideograph */ + [0x710c, 0x710c], /* CJK Ideograph */ + [0x710d, 0x710d], /* CJK Ideograph */ + [0x710e, 0x710e], /* CJK Ideograph */ + [0x710f, 0x710f], /* CJK Ideograph */ + [0x7110, 0x7110], /* CJK Ideograph */ + [0x7111, 0x7111], /* CJK Ideograph */ + [0x7112, 0x7112], /* CJK Ideograph */ + [0x7113, 0x7113], /* CJK Ideograph */ + [0x7114, 0x7114], /* CJK Ideograph */ + [0x7115, 0x7115], /* CJK Ideograph */ + [0x7116, 0x7116], /* CJK Ideograph */ + [0x7117, 0x7117], /* CJK Ideograph */ + [0x7118, 0x7118], /* CJK Ideograph */ + [0x7119, 0x7119], /* CJK Ideograph */ + [0x711a, 0x711a], /* CJK Ideograph */ + [0x711b, 0x711b], /* CJK Ideograph */ + [0x711c, 0x711c], /* CJK Ideograph */ + [0x711d, 0x711d], /* CJK Ideograph */ + [0x711e, 0x711e], /* CJK Ideograph */ + [0x711f, 0x711f], /* CJK Ideograph */ + [0x7120, 0x7120], /* CJK Ideograph */ + [0x7121, 0x7121], /* CJK Ideograph */ + [0x7122, 0x7122], /* CJK Ideograph */ + [0x7123, 0x7123], /* CJK Ideograph */ + [0x7124, 0x7124], /* CJK Ideograph */ + [0x7125, 0x7125], /* CJK Ideograph */ + [0x7126, 0x7126], /* CJK Ideograph */ + [0x7127, 0x7127], /* CJK Ideograph */ + [0x7128, 0x7128], /* CJK Ideograph */ + [0x7129, 0x7129], /* CJK Ideograph */ + [0x712a, 0x712a], /* CJK Ideograph */ + [0x712b, 0x712b], /* CJK Ideograph */ + [0x712c, 0x712c], /* CJK Ideograph */ + [0x712d, 0x712d], /* CJK Ideograph */ + [0x712e, 0x712e], /* CJK Ideograph */ + [0x712f, 0x712f], /* CJK Ideograph */ + [0x7130, 0x7130], /* CJK Ideograph */ + [0x7131, 0x7131], /* CJK Ideograph */ + [0x7132, 0x7132], /* CJK Ideograph */ + [0x7133, 0x7133], /* CJK Ideograph */ + [0x7134, 0x7134], /* CJK Ideograph */ + [0x7135, 0x7135], /* CJK Ideograph */ + [0x7136, 0x7136], /* CJK Ideograph */ + [0x7137, 0x7137], /* CJK Ideograph */ + [0x7138, 0x7138], /* CJK Ideograph */ + [0x7139, 0x7139], /* CJK Ideograph */ + [0x713a, 0x713a], /* CJK Ideograph */ + [0x713b, 0x713b], /* CJK Ideograph */ + [0x713c, 0x713c], /* CJK Ideograph */ + [0x713d, 0x713d], /* CJK Ideograph */ + [0x713e, 0x713e], /* CJK Ideograph */ + [0x713f, 0x713f], /* CJK Ideograph */ + [0x7140, 0x7140], /* CJK Ideograph */ + [0x7141, 0x7141], /* CJK Ideograph */ + [0x7142, 0x7142], /* CJK Ideograph */ + [0x7143, 0x7143], /* CJK Ideograph */ + [0x7144, 0x7144], /* CJK Ideograph */ + [0x7145, 0x7145], /* CJK Ideograph */ + [0x7146, 0x7146], /* CJK Ideograph */ + [0x7147, 0x7147], /* CJK Ideograph */ + [0x7148, 0x7148], /* CJK Ideograph */ + [0x7149, 0x7149], /* CJK Ideograph */ + [0x714a, 0x714a], /* CJK Ideograph */ + [0x714b, 0x714b], /* CJK Ideograph */ + [0x714c, 0x714c], /* CJK Ideograph */ + [0x714d, 0x714d], /* CJK Ideograph */ + [0x714e, 0x714e], /* CJK Ideograph */ + [0x714f, 0x714f], /* CJK Ideograph */ + [0x7150, 0x7150], /* CJK Ideograph */ + [0x7151, 0x7151], /* CJK Ideograph */ + [0x7152, 0x7152], /* CJK Ideograph */ + [0x7153, 0x7153], /* CJK Ideograph */ + [0x7154, 0x7154], /* CJK Ideograph */ + [0x7155, 0x7155], /* CJK Ideograph */ + [0x7156, 0x7156], /* CJK Ideograph */ + [0x7157, 0x7157], /* CJK Ideograph */ + [0x7158, 0x7158], /* CJK Ideograph */ + [0x7159, 0x7159], /* CJK Ideograph */ + [0x715a, 0x715a], /* CJK Ideograph */ + [0x715b, 0x715b], /* CJK Ideograph */ + [0x715c, 0x715c], /* CJK Ideograph */ + [0x715d, 0x715d], /* CJK Ideograph */ + [0x715e, 0x715e], /* CJK Ideograph */ + [0x715f, 0x715f], /* CJK Ideograph */ + [0x7160, 0x7160], /* CJK Ideograph */ + [0x7161, 0x7161], /* CJK Ideograph */ + [0x7162, 0x7162], /* CJK Ideograph */ + [0x7163, 0x7163], /* CJK Ideograph */ + [0x7164, 0x7164], /* CJK Ideograph */ + [0x7165, 0x7165], /* CJK Ideograph */ + [0x7166, 0x7166], /* CJK Ideograph */ + [0x7167, 0x7167], /* CJK Ideograph */ + [0x7168, 0x7168], /* CJK Ideograph */ + [0x7169, 0x7169], /* CJK Ideograph */ + [0x716a, 0x716a], /* CJK Ideograph */ + [0x716b, 0x716b], /* CJK Ideograph */ + [0x716c, 0x716c], /* CJK Ideograph */ + [0x716d, 0x716d], /* CJK Ideograph */ + [0x716e, 0x716e], /* CJK Ideograph */ + [0x716f, 0x716f], /* CJK Ideograph */ + [0x7170, 0x7170], /* CJK Ideograph */ + [0x7171, 0x7171], /* CJK Ideograph */ + [0x7172, 0x7172], /* CJK Ideograph */ + [0x7173, 0x7173], /* CJK Ideograph */ + [0x7174, 0x7174], /* CJK Ideograph */ + [0x7175, 0x7175], /* CJK Ideograph */ + [0x7176, 0x7176], /* CJK Ideograph */ + [0x7177, 0x7177], /* CJK Ideograph */ + [0x7178, 0x7178], /* CJK Ideograph */ + [0x7179, 0x7179], /* CJK Ideograph */ + [0x717a, 0x717a], /* CJK Ideograph */ + [0x717b, 0x717b], /* CJK Ideograph */ + [0x717c, 0x717c], /* CJK Ideograph */ + [0x717d, 0x717d], /* CJK Ideograph */ + [0x717e, 0x717e], /* CJK Ideograph */ + [0x717f, 0x717f], /* CJK Ideograph */ + [0x7180, 0x7180], /* CJK Ideograph */ + [0x7181, 0x7181], /* CJK Ideograph */ + [0x7182, 0x7182], /* CJK Ideograph */ + [0x7183, 0x7183], /* CJK Ideograph */ + [0x7184, 0x7184], /* CJK Ideograph */ + [0x7185, 0x7185], /* CJK Ideograph */ + [0x7186, 0x7186], /* CJK Ideograph */ + [0x7187, 0x7187], /* CJK Ideograph */ + [0x7188, 0x7188], /* CJK Ideograph */ + [0x7189, 0x7189], /* CJK Ideograph */ + [0x718a, 0x718a], /* CJK Ideograph */ + [0x718b, 0x718b], /* CJK Ideograph */ + [0x718c, 0x718c], /* CJK Ideograph */ + [0x718d, 0x718d], /* CJK Ideograph */ + [0x718e, 0x718e], /* CJK Ideograph */ + [0x718f, 0x718f], /* CJK Ideograph */ + [0x7190, 0x7190], /* CJK Ideograph */ + [0x7191, 0x7191], /* CJK Ideograph */ + [0x7192, 0x7192], /* CJK Ideograph */ + [0x7193, 0x7193], /* CJK Ideograph */ + [0x7194, 0x7194], /* CJK Ideograph */ + [0x7195, 0x7195], /* CJK Ideograph */ + [0x7196, 0x7196], /* CJK Ideograph */ + [0x7197, 0x7197], /* CJK Ideograph */ + [0x7198, 0x7198], /* CJK Ideograph */ + [0x7199, 0x7199], /* CJK Ideograph */ + [0x719a, 0x719a], /* CJK Ideograph */ + [0x719b, 0x719b], /* CJK Ideograph */ + [0x719c, 0x719c], /* CJK Ideograph */ + [0x719d, 0x719d], /* CJK Ideograph */ + [0x719e, 0x719e], /* CJK Ideograph */ + [0x719f, 0x719f], /* CJK Ideograph */ + [0x71a0, 0x71a0], /* CJK Ideograph */ + [0x71a1, 0x71a1], /* CJK Ideograph */ + [0x71a2, 0x71a2], /* CJK Ideograph */ + [0x71a3, 0x71a3], /* CJK Ideograph */ + [0x71a4, 0x71a4], /* CJK Ideograph */ + [0x71a5, 0x71a5], /* CJK Ideograph */ + [0x71a6, 0x71a6], /* CJK Ideograph */ + [0x71a7, 0x71a7], /* CJK Ideograph */ + [0x71a8, 0x71a8], /* CJK Ideograph */ + [0x71a9, 0x71a9], /* CJK Ideograph */ + [0x71aa, 0x71aa], /* CJK Ideograph */ + [0x71ab, 0x71ab], /* CJK Ideograph */ + [0x71ac, 0x71ac], /* CJK Ideograph */ + [0x71ad, 0x71ad], /* CJK Ideograph */ + [0x71ae, 0x71ae], /* CJK Ideograph */ + [0x71af, 0x71af], /* CJK Ideograph */ + [0x71b0, 0x71b0], /* CJK Ideograph */ + [0x71b1, 0x71b1], /* CJK Ideograph */ + [0x71b2, 0x71b2], /* CJK Ideograph */ + [0x71b3, 0x71b3], /* CJK Ideograph */ + [0x71b4, 0x71b4], /* CJK Ideograph */ + [0x71b5, 0x71b5], /* CJK Ideograph */ + [0x71b6, 0x71b6], /* CJK Ideograph */ + [0x71b7, 0x71b7], /* CJK Ideograph */ + [0x71b8, 0x71b8], /* CJK Ideograph */ + [0x71b9, 0x71b9], /* CJK Ideograph */ + [0x71ba, 0x71ba], /* CJK Ideograph */ + [0x71bb, 0x71bb], /* CJK Ideograph */ + [0x71bc, 0x71bc], /* CJK Ideograph */ + [0x71bd, 0x71bd], /* CJK Ideograph */ + [0x71be, 0x71be], /* CJK Ideograph */ + [0x71bf, 0x71bf], /* CJK Ideograph */ + [0x71c0, 0x71c0], /* CJK Ideograph */ + [0x71c1, 0x71c1], /* CJK Ideograph */ + [0x71c2, 0x71c2], /* CJK Ideograph */ + [0x71c3, 0x71c3], /* CJK Ideograph */ + [0x71c4, 0x71c4], /* CJK Ideograph */ + [0x71c5, 0x71c5], /* CJK Ideograph */ + [0x71c6, 0x71c6], /* CJK Ideograph */ + [0x71c7, 0x71c7], /* CJK Ideograph */ + [0x71c8, 0x71c8], /* CJK Ideograph */ + [0x71c9, 0x71c9], /* CJK Ideograph */ + [0x71ca, 0x71ca], /* CJK Ideograph */ + [0x71cb, 0x71cb], /* CJK Ideograph */ + [0x71cc, 0x71cc], /* CJK Ideograph */ + [0x71cd, 0x71cd], /* CJK Ideograph */ + [0x71ce, 0x71ce], /* CJK Ideograph */ + [0x71cf, 0x71cf], /* CJK Ideograph */ + [0x71d0, 0x71d0], /* CJK Ideograph */ + [0x71d1, 0x71d1], /* CJK Ideograph */ + [0x71d2, 0x71d2], /* CJK Ideograph */ + [0x71d3, 0x71d3], /* CJK Ideograph */ + [0x71d4, 0x71d4], /* CJK Ideograph */ + [0x71d5, 0x71d5], /* CJK Ideograph */ + [0x71d6, 0x71d6], /* CJK Ideograph */ + [0x71d7, 0x71d7], /* CJK Ideograph */ + [0x71d8, 0x71d8], /* CJK Ideograph */ + [0x71d9, 0x71d9], /* CJK Ideograph */ + [0x71da, 0x71da], /* CJK Ideograph */ + [0x71db, 0x71db], /* CJK Ideograph */ + [0x71dc, 0x71dc], /* CJK Ideograph */ + [0x71dd, 0x71dd], /* CJK Ideograph */ + [0x71de, 0x71de], /* CJK Ideograph */ + [0x71df, 0x71df], /* CJK Ideograph */ + [0x71e0, 0x71e0], /* CJK Ideograph */ + [0x71e1, 0x71e1], /* CJK Ideograph */ + [0x71e2, 0x71e2], /* CJK Ideograph */ + [0x71e3, 0x71e3], /* CJK Ideograph */ + [0x71e4, 0x71e4], /* CJK Ideograph */ + [0x71e5, 0x71e5], /* CJK Ideograph */ + [0x71e6, 0x71e6], /* CJK Ideograph */ + [0x71e7, 0x71e7], /* CJK Ideograph */ + [0x71e8, 0x71e8], /* CJK Ideograph */ + [0x71e9, 0x71e9], /* CJK Ideograph */ + [0x71ea, 0x71ea], /* CJK Ideograph */ + [0x71eb, 0x71eb], /* CJK Ideograph */ + [0x71ec, 0x71ec], /* CJK Ideograph */ + [0x71ed, 0x71ed], /* CJK Ideograph */ + [0x71ee, 0x71ee], /* CJK Ideograph */ + [0x71ef, 0x71ef], /* CJK Ideograph */ + [0x71f0, 0x71f0], /* CJK Ideograph */ + [0x71f1, 0x71f1], /* CJK Ideograph */ + [0x71f2, 0x71f2], /* CJK Ideograph */ + [0x71f3, 0x71f3], /* CJK Ideograph */ + [0x71f4, 0x71f4], /* CJK Ideograph */ + [0x71f5, 0x71f5], /* CJK Ideograph */ + [0x71f6, 0x71f6], /* CJK Ideograph */ + [0x71f7, 0x71f7], /* CJK Ideograph */ + [0x71f8, 0x71f8], /* CJK Ideograph */ + [0x71f9, 0x71f9], /* CJK Ideograph */ + [0x71fa, 0x71fa], /* CJK Ideograph */ + [0x71fb, 0x71fb], /* CJK Ideograph */ + [0x71fc, 0x71fc], /* CJK Ideograph */ + [0x71fd, 0x71fd], /* CJK Ideograph */ + [0x71fe, 0x71fe], /* CJK Ideograph */ + [0x71ff, 0x71ff], /* CJK Ideograph */ + [0x7200, 0x7200], /* CJK Ideograph */ + [0x7201, 0x7201], /* CJK Ideograph */ + [0x7202, 0x7202], /* CJK Ideograph */ + [0x7203, 0x7203], /* CJK Ideograph */ + [0x7204, 0x7204], /* CJK Ideograph */ + [0x7205, 0x7205], /* CJK Ideograph */ + [0x7206, 0x7206], /* CJK Ideograph */ + [0x7207, 0x7207], /* CJK Ideograph */ + [0x7208, 0x7208], /* CJK Ideograph */ + [0x7209, 0x7209], /* CJK Ideograph */ + [0x720a, 0x720a], /* CJK Ideograph */ + [0x720b, 0x720b], /* CJK Ideograph */ + [0x720c, 0x720c], /* CJK Ideograph */ + [0x720d, 0x720d], /* CJK Ideograph */ + [0x720e, 0x720e], /* CJK Ideograph */ + [0x720f, 0x720f], /* CJK Ideograph */ + [0x7210, 0x7210], /* CJK Ideograph */ + [0x7211, 0x7211], /* CJK Ideograph */ + [0x7212, 0x7212], /* CJK Ideograph */ + [0x7213, 0x7213], /* CJK Ideograph */ + [0x7214, 0x7214], /* CJK Ideograph */ + [0x7215, 0x7215], /* CJK Ideograph */ + [0x7216, 0x7216], /* CJK Ideograph */ + [0x7217, 0x7217], /* CJK Ideograph */ + [0x7218, 0x7218], /* CJK Ideograph */ + [0x7219, 0x7219], /* CJK Ideograph */ + [0x721a, 0x721a], /* CJK Ideograph */ + [0x721b, 0x721b], /* CJK Ideograph */ + [0x721c, 0x721c], /* CJK Ideograph */ + [0x721d, 0x721d], /* CJK Ideograph */ + [0x721e, 0x721e], /* CJK Ideograph */ + [0x721f, 0x721f], /* CJK Ideograph */ + [0x7220, 0x7220], /* CJK Ideograph */ + [0x7221, 0x7221], /* CJK Ideograph */ + [0x7222, 0x7222], /* CJK Ideograph */ + [0x7223, 0x7223], /* CJK Ideograph */ + [0x7224, 0x7224], /* CJK Ideograph */ + [0x7225, 0x7225], /* CJK Ideograph */ + [0x7226, 0x7226], /* CJK Ideograph */ + [0x7227, 0x7227], /* CJK Ideograph */ + [0x7228, 0x7228], /* CJK Ideograph */ + [0x7229, 0x7229], /* CJK Ideograph */ + [0x722a, 0x722a], /* CJK Ideograph */ + [0x722b, 0x722b], /* CJK Ideograph */ + [0x722c, 0x722c], /* CJK Ideograph */ + [0x722d, 0x722d], /* CJK Ideograph */ + [0x722e, 0x722e], /* CJK Ideograph */ + [0x722f, 0x722f], /* CJK Ideograph */ + [0x7230, 0x7230], /* CJK Ideograph */ + [0x7231, 0x7231], /* CJK Ideograph */ + [0x7232, 0x7232], /* CJK Ideograph */ + [0x7233, 0x7233], /* CJK Ideograph */ + [0x7234, 0x7234], /* CJK Ideograph */ + [0x7235, 0x7235], /* CJK Ideograph */ + [0x7236, 0x7236], /* CJK Ideograph */ + [0x7237, 0x7237], /* CJK Ideograph */ + [0x7238, 0x7238], /* CJK Ideograph */ + [0x7239, 0x7239], /* CJK Ideograph */ + [0x723a, 0x723a], /* CJK Ideograph */ + [0x723b, 0x723b], /* CJK Ideograph */ + [0x723c, 0x723c], /* CJK Ideograph */ + [0x723d, 0x723d], /* CJK Ideograph */ + [0x723e, 0x723e], /* CJK Ideograph */ + [0x723f, 0x723f], /* CJK Ideograph */ + [0x7240, 0x7240], /* CJK Ideograph */ + [0x7241, 0x7241], /* CJK Ideograph */ + [0x7242, 0x7242], /* CJK Ideograph */ + [0x7243, 0x7243], /* CJK Ideograph */ + [0x7244, 0x7244], /* CJK Ideograph */ + [0x7245, 0x7245], /* CJK Ideograph */ + [0x7246, 0x7246], /* CJK Ideograph */ + [0x7247, 0x7247], /* CJK Ideograph */ + [0x7248, 0x7248], /* CJK Ideograph */ + [0x7249, 0x7249], /* CJK Ideograph */ + [0x724a, 0x724a], /* CJK Ideograph */ + [0x724b, 0x724b], /* CJK Ideograph */ + [0x724c, 0x724c], /* CJK Ideograph */ + [0x724d, 0x724d], /* CJK Ideograph */ + [0x724e, 0x724e], /* CJK Ideograph */ + [0x724f, 0x724f], /* CJK Ideograph */ + [0x7250, 0x7250], /* CJK Ideograph */ + [0x7251, 0x7251], /* CJK Ideograph */ + [0x7252, 0x7252], /* CJK Ideograph */ + [0x7253, 0x7253], /* CJK Ideograph */ + [0x7254, 0x7254], /* CJK Ideograph */ + [0x7255, 0x7255], /* CJK Ideograph */ + [0x7256, 0x7256], /* CJK Ideograph */ + [0x7257, 0x7257], /* CJK Ideograph */ + [0x7258, 0x7258], /* CJK Ideograph */ + [0x7259, 0x7259], /* CJK Ideograph */ + [0x725a, 0x725a], /* CJK Ideograph */ + [0x725b, 0x725b], /* CJK Ideograph */ + [0x725c, 0x725c], /* CJK Ideograph */ + [0x725d, 0x725d], /* CJK Ideograph */ + [0x725e, 0x725e], /* CJK Ideograph */ + [0x725f, 0x725f], /* CJK Ideograph */ + [0x7260, 0x7260], /* CJK Ideograph */ + [0x7261, 0x7261], /* CJK Ideograph */ + [0x7262, 0x7262], /* CJK Ideograph */ + [0x7263, 0x7263], /* CJK Ideograph */ + [0x7264, 0x7264], /* CJK Ideograph */ + [0x7265, 0x7265], /* CJK Ideograph */ + [0x7266, 0x7266], /* CJK Ideograph */ + [0x7267, 0x7267], /* CJK Ideograph */ + [0x7268, 0x7268], /* CJK Ideograph */ + [0x7269, 0x7269], /* CJK Ideograph */ + [0x726a, 0x726a], /* CJK Ideograph */ + [0x726b, 0x726b], /* CJK Ideograph */ + [0x726c, 0x726c], /* CJK Ideograph */ + [0x726d, 0x726d], /* CJK Ideograph */ + [0x726e, 0x726e], /* CJK Ideograph */ + [0x726f, 0x726f], /* CJK Ideograph */ + [0x7270, 0x7270], /* CJK Ideograph */ + [0x7271, 0x7271], /* CJK Ideograph */ + [0x7272, 0x7272], /* CJK Ideograph */ + [0x7273, 0x7273], /* CJK Ideograph */ + [0x7274, 0x7274], /* CJK Ideograph */ + [0x7275, 0x7275], /* CJK Ideograph */ + [0x7276, 0x7276], /* CJK Ideograph */ + [0x7277, 0x7277], /* CJK Ideograph */ + [0x7278, 0x7278], /* CJK Ideograph */ + [0x7279, 0x7279], /* CJK Ideograph */ + [0x727a, 0x727a], /* CJK Ideograph */ + [0x727b, 0x727b], /* CJK Ideograph */ + [0x727c, 0x727c], /* CJK Ideograph */ + [0x727d, 0x727d], /* CJK Ideograph */ + [0x727e, 0x727e], /* CJK Ideograph */ + [0x727f, 0x727f], /* CJK Ideograph */ + [0x7280, 0x7280], /* CJK Ideograph */ + [0x7281, 0x7281], /* CJK Ideograph */ + [0x7282, 0x7282], /* CJK Ideograph */ + [0x7283, 0x7283], /* CJK Ideograph */ + [0x7284, 0x7284], /* CJK Ideograph */ + [0x7285, 0x7285], /* CJK Ideograph */ + [0x7286, 0x7286], /* CJK Ideograph */ + [0x7287, 0x7287], /* CJK Ideograph */ + [0x7288, 0x7288], /* CJK Ideograph */ + [0x7289, 0x7289], /* CJK Ideograph */ + [0x728a, 0x728a], /* CJK Ideograph */ + [0x728b, 0x728b], /* CJK Ideograph */ + [0x728c, 0x728c], /* CJK Ideograph */ + [0x728d, 0x728d], /* CJK Ideograph */ + [0x728e, 0x728e], /* CJK Ideograph */ + [0x728f, 0x728f], /* CJK Ideograph */ + [0x7290, 0x7290], /* CJK Ideograph */ + [0x7291, 0x7291], /* CJK Ideograph */ + [0x7292, 0x7292], /* CJK Ideograph */ + [0x7293, 0x7293], /* CJK Ideograph */ + [0x7294, 0x7294], /* CJK Ideograph */ + [0x7295, 0x7295], /* CJK Ideograph */ + [0x7296, 0x7296], /* CJK Ideograph */ + [0x7297, 0x7297], /* CJK Ideograph */ + [0x7298, 0x7298], /* CJK Ideograph */ + [0x7299, 0x7299], /* CJK Ideograph */ + [0x729a, 0x729a], /* CJK Ideograph */ + [0x729b, 0x729b], /* CJK Ideograph */ + [0x729c, 0x729c], /* CJK Ideograph */ + [0x729d, 0x729d], /* CJK Ideograph */ + [0x729e, 0x729e], /* CJK Ideograph */ + [0x729f, 0x729f], /* CJK Ideograph */ + [0x72a0, 0x72a0], /* CJK Ideograph */ + [0x72a1, 0x72a1], /* CJK Ideograph */ + [0x72a2, 0x72a2], /* CJK Ideograph */ + [0x72a3, 0x72a3], /* CJK Ideograph */ + [0x72a4, 0x72a4], /* CJK Ideograph */ + [0x72a5, 0x72a5], /* CJK Ideograph */ + [0x72a6, 0x72a6], /* CJK Ideograph */ + [0x72a7, 0x72a7], /* CJK Ideograph */ + [0x72a8, 0x72a8], /* CJK Ideograph */ + [0x72a9, 0x72a9], /* CJK Ideograph */ + [0x72aa, 0x72aa], /* CJK Ideograph */ + [0x72ab, 0x72ab], /* CJK Ideograph */ + [0x72ac, 0x72ac], /* CJK Ideograph */ + [0x72ad, 0x72ad], /* CJK Ideograph */ + [0x72ae, 0x72ae], /* CJK Ideograph */ + [0x72af, 0x72af], /* CJK Ideograph */ + [0x72b0, 0x72b0], /* CJK Ideograph */ + [0x72b1, 0x72b1], /* CJK Ideograph */ + [0x72b2, 0x72b2], /* CJK Ideograph */ + [0x72b3, 0x72b3], /* CJK Ideograph */ + [0x72b4, 0x72b4], /* CJK Ideograph */ + [0x72b5, 0x72b5], /* CJK Ideograph */ + [0x72b6, 0x72b6], /* CJK Ideograph */ + [0x72b7, 0x72b7], /* CJK Ideograph */ + [0x72b8, 0x72b8], /* CJK Ideograph */ + [0x72b9, 0x72b9], /* CJK Ideograph */ + [0x72ba, 0x72ba], /* CJK Ideograph */ + [0x72bb, 0x72bb], /* CJK Ideograph */ + [0x72bc, 0x72bc], /* CJK Ideograph */ + [0x72bd, 0x72bd], /* CJK Ideograph */ + [0x72be, 0x72be], /* CJK Ideograph */ + [0x72bf, 0x72bf], /* CJK Ideograph */ + [0x72c0, 0x72c0], /* CJK Ideograph */ + [0x72c1, 0x72c1], /* CJK Ideograph */ + [0x72c2, 0x72c2], /* CJK Ideograph */ + [0x72c3, 0x72c3], /* CJK Ideograph */ + [0x72c4, 0x72c4], /* CJK Ideograph */ + [0x72c5, 0x72c5], /* CJK Ideograph */ + [0x72c6, 0x72c6], /* CJK Ideograph */ + [0x72c7, 0x72c7], /* CJK Ideograph */ + [0x72c8, 0x72c8], /* CJK Ideograph */ + [0x72c9, 0x72c9], /* CJK Ideograph */ + [0x72ca, 0x72ca], /* CJK Ideograph */ + [0x72cb, 0x72cb], /* CJK Ideograph */ + [0x72cc, 0x72cc], /* CJK Ideograph */ + [0x72cd, 0x72cd], /* CJK Ideograph */ + [0x72ce, 0x72ce], /* CJK Ideograph */ + [0x72cf, 0x72cf], /* CJK Ideograph */ + [0x72d0, 0x72d0], /* CJK Ideograph */ + [0x72d1, 0x72d1], /* CJK Ideograph */ + [0x72d2, 0x72d2], /* CJK Ideograph */ + [0x72d3, 0x72d3], /* CJK Ideograph */ + [0x72d4, 0x72d4], /* CJK Ideograph */ + [0x72d5, 0x72d5], /* CJK Ideograph */ + [0x72d6, 0x72d6], /* CJK Ideograph */ + [0x72d7, 0x72d7], /* CJK Ideograph */ + [0x72d8, 0x72d8], /* CJK Ideograph */ + [0x72d9, 0x72d9], /* CJK Ideograph */ + [0x72da, 0x72da], /* CJK Ideograph */ + [0x72db, 0x72db], /* CJK Ideograph */ + [0x72dc, 0x72dc], /* CJK Ideograph */ + [0x72dd, 0x72dd], /* CJK Ideograph */ + [0x72de, 0x72de], /* CJK Ideograph */ + [0x72df, 0x72df], /* CJK Ideograph */ + [0x72e0, 0x72e0], /* CJK Ideograph */ + [0x72e1, 0x72e1], /* CJK Ideograph */ + [0x72e2, 0x72e2], /* CJK Ideograph */ + [0x72e3, 0x72e3], /* CJK Ideograph */ + [0x72e4, 0x72e4], /* CJK Ideograph */ + [0x72e5, 0x72e5], /* CJK Ideograph */ + [0x72e6, 0x72e6], /* CJK Ideograph */ + [0x72e7, 0x72e7], /* CJK Ideograph */ + [0x72e8, 0x72e8], /* CJK Ideograph */ + [0x72e9, 0x72e9], /* CJK Ideograph */ + [0x72ea, 0x72ea], /* CJK Ideograph */ + [0x72eb, 0x72eb], /* CJK Ideograph */ + [0x72ec, 0x72ec], /* CJK Ideograph */ + [0x72ed, 0x72ed], /* CJK Ideograph */ + [0x72ee, 0x72ee], /* CJK Ideograph */ + [0x72ef, 0x72ef], /* CJK Ideograph */ + [0x72f0, 0x72f0], /* CJK Ideograph */ + [0x72f1, 0x72f1], /* CJK Ideograph */ + [0x72f2, 0x72f2], /* CJK Ideograph */ + [0x72f3, 0x72f3], /* CJK Ideograph */ + [0x72f4, 0x72f4], /* CJK Ideograph */ + [0x72f5, 0x72f5], /* CJK Ideograph */ + [0x72f6, 0x72f6], /* CJK Ideograph */ + [0x72f7, 0x72f7], /* CJK Ideograph */ + [0x72f8, 0x72f8], /* CJK Ideograph */ + [0x72f9, 0x72f9], /* CJK Ideograph */ + [0x72fa, 0x72fa], /* CJK Ideograph */ + [0x72fb, 0x72fb], /* CJK Ideograph */ + [0x72fc, 0x72fc], /* CJK Ideograph */ + [0x72fd, 0x72fd], /* CJK Ideograph */ + [0x72fe, 0x72fe], /* CJK Ideograph */ + [0x72ff, 0x72ff], /* CJK Ideograph */ + [0x7300, 0x7300], /* CJK Ideograph */ + [0x7301, 0x7301], /* CJK Ideograph */ + [0x7302, 0x7302], /* CJK Ideograph */ + [0x7303, 0x7303], /* CJK Ideograph */ + [0x7304, 0x7304], /* CJK Ideograph */ + [0x7305, 0x7305], /* CJK Ideograph */ + [0x7306, 0x7306], /* CJK Ideograph */ + [0x7307, 0x7307], /* CJK Ideograph */ + [0x7308, 0x7308], /* CJK Ideograph */ + [0x7309, 0x7309], /* CJK Ideograph */ + [0x730a, 0x730a], /* CJK Ideograph */ + [0x730b, 0x730b], /* CJK Ideograph */ + [0x730c, 0x730c], /* CJK Ideograph */ + [0x730d, 0x730d], /* CJK Ideograph */ + [0x730e, 0x730e], /* CJK Ideograph */ + [0x730f, 0x730f], /* CJK Ideograph */ + [0x7310, 0x7310], /* CJK Ideograph */ + [0x7311, 0x7311], /* CJK Ideograph */ + [0x7312, 0x7312], /* CJK Ideograph */ + [0x7313, 0x7313], /* CJK Ideograph */ + [0x7314, 0x7314], /* CJK Ideograph */ + [0x7315, 0x7315], /* CJK Ideograph */ + [0x7316, 0x7316], /* CJK Ideograph */ + [0x7317, 0x7317], /* CJK Ideograph */ + [0x7318, 0x7318], /* CJK Ideograph */ + [0x7319, 0x7319], /* CJK Ideograph */ + [0x731a, 0x731a], /* CJK Ideograph */ + [0x731b, 0x731b], /* CJK Ideograph */ + [0x731c, 0x731c], /* CJK Ideograph */ + [0x731d, 0x731d], /* CJK Ideograph */ + [0x731e, 0x731e], /* CJK Ideograph */ + [0x731f, 0x731f], /* CJK Ideograph */ + [0x7320, 0x7320], /* CJK Ideograph */ + [0x7321, 0x7321], /* CJK Ideograph */ + [0x7322, 0x7322], /* CJK Ideograph */ + [0x7323, 0x7323], /* CJK Ideograph */ + [0x7324, 0x7324], /* CJK Ideograph */ + [0x7325, 0x7325], /* CJK Ideograph */ + [0x7326, 0x7326], /* CJK Ideograph */ + [0x7327, 0x7327], /* CJK Ideograph */ + [0x7328, 0x7328], /* CJK Ideograph */ + [0x7329, 0x7329], /* CJK Ideograph */ + [0x732a, 0x732a], /* CJK Ideograph */ + [0x732b, 0x732b], /* CJK Ideograph */ + [0x732c, 0x732c], /* CJK Ideograph */ + [0x732d, 0x732d], /* CJK Ideograph */ + [0x732e, 0x732e], /* CJK Ideograph */ + [0x732f, 0x732f], /* CJK Ideograph */ + [0x7330, 0x7330], /* CJK Ideograph */ + [0x7331, 0x7331], /* CJK Ideograph */ + [0x7332, 0x7332], /* CJK Ideograph */ + [0x7333, 0x7333], /* CJK Ideograph */ + [0x7334, 0x7334], /* CJK Ideograph */ + [0x7335, 0x7335], /* CJK Ideograph */ + [0x7336, 0x7336], /* CJK Ideograph */ + [0x7337, 0x7337], /* CJK Ideograph */ + [0x7338, 0x7338], /* CJK Ideograph */ + [0x7339, 0x7339], /* CJK Ideograph */ + [0x733a, 0x733a], /* CJK Ideograph */ + [0x733b, 0x733b], /* CJK Ideograph */ + [0x733c, 0x733c], /* CJK Ideograph */ + [0x733d, 0x733d], /* CJK Ideograph */ + [0x733e, 0x733e], /* CJK Ideograph */ + [0x733f, 0x733f], /* CJK Ideograph */ + [0x7340, 0x7340], /* CJK Ideograph */ + [0x7341, 0x7341], /* CJK Ideograph */ + [0x7342, 0x7342], /* CJK Ideograph */ + [0x7343, 0x7343], /* CJK Ideograph */ + [0x7344, 0x7344], /* CJK Ideograph */ + [0x7345, 0x7345], /* CJK Ideograph */ + [0x7346, 0x7346], /* CJK Ideograph */ + [0x7347, 0x7347], /* CJK Ideograph */ + [0x7348, 0x7348], /* CJK Ideograph */ + [0x7349, 0x7349], /* CJK Ideograph */ + [0x734a, 0x734a], /* CJK Ideograph */ + [0x734b, 0x734b], /* CJK Ideograph */ + [0x734c, 0x734c], /* CJK Ideograph */ + [0x734d, 0x734d], /* CJK Ideograph */ + [0x734e, 0x734e], /* CJK Ideograph */ + [0x734f, 0x734f], /* CJK Ideograph */ + [0x7350, 0x7350], /* CJK Ideograph */ + [0x7351, 0x7351], /* CJK Ideograph */ + [0x7352, 0x7352], /* CJK Ideograph */ + [0x7353, 0x7353], /* CJK Ideograph */ + [0x7354, 0x7354], /* CJK Ideograph */ + [0x7355, 0x7355], /* CJK Ideograph */ + [0x7356, 0x7356], /* CJK Ideograph */ + [0x7357, 0x7357], /* CJK Ideograph */ + [0x7358, 0x7358], /* CJK Ideograph */ + [0x7359, 0x7359], /* CJK Ideograph */ + [0x735a, 0x735a], /* CJK Ideograph */ + [0x735b, 0x735b], /* CJK Ideograph */ + [0x735c, 0x735c], /* CJK Ideograph */ + [0x735d, 0x735d], /* CJK Ideograph */ + [0x735e, 0x735e], /* CJK Ideograph */ + [0x735f, 0x735f], /* CJK Ideograph */ + [0x7360, 0x7360], /* CJK Ideograph */ + [0x7361, 0x7361], /* CJK Ideograph */ + [0x7362, 0x7362], /* CJK Ideograph */ + [0x7363, 0x7363], /* CJK Ideograph */ + [0x7364, 0x7364], /* CJK Ideograph */ + [0x7365, 0x7365], /* CJK Ideograph */ + [0x7366, 0x7366], /* CJK Ideograph */ + [0x7367, 0x7367], /* CJK Ideograph */ + [0x7368, 0x7368], /* CJK Ideograph */ + [0x7369, 0x7369], /* CJK Ideograph */ + [0x736a, 0x736a], /* CJK Ideograph */ + [0x736b, 0x736b], /* CJK Ideograph */ + [0x736c, 0x736c], /* CJK Ideograph */ + [0x736d, 0x736d], /* CJK Ideograph */ + [0x736e, 0x736e], /* CJK Ideograph */ + [0x736f, 0x736f], /* CJK Ideograph */ + [0x7370, 0x7370], /* CJK Ideograph */ + [0x7371, 0x7371], /* CJK Ideograph */ + [0x7372, 0x7372], /* CJK Ideograph */ + [0x7373, 0x7373], /* CJK Ideograph */ + [0x7374, 0x7374], /* CJK Ideograph */ + [0x7375, 0x7375], /* CJK Ideograph */ + [0x7376, 0x7376], /* CJK Ideograph */ + [0x7377, 0x7377], /* CJK Ideograph */ + [0x7378, 0x7378], /* CJK Ideograph */ + [0x7379, 0x7379], /* CJK Ideograph */ + [0x737a, 0x737a], /* CJK Ideograph */ + [0x737b, 0x737b], /* CJK Ideograph */ + [0x737c, 0x737c], /* CJK Ideograph */ + [0x737d, 0x737d], /* CJK Ideograph */ + [0x737e, 0x737e], /* CJK Ideograph */ + [0x737f, 0x737f], /* CJK Ideograph */ + [0x7380, 0x7380], /* CJK Ideograph */ + [0x7381, 0x7381], /* CJK Ideograph */ + [0x7382, 0x7382], /* CJK Ideograph */ + [0x7383, 0x7383], /* CJK Ideograph */ + [0x7384, 0x7384], /* CJK Ideograph */ + [0x7385, 0x7385], /* CJK Ideograph */ + [0x7386, 0x7386], /* CJK Ideograph */ + [0x7387, 0x7387], /* CJK Ideograph */ + [0x7388, 0x7388], /* CJK Ideograph */ + [0x7389, 0x7389], /* CJK Ideograph */ + [0x738a, 0x738a], /* CJK Ideograph */ + [0x738b, 0x738b], /* CJK Ideograph */ + [0x738c, 0x738c], /* CJK Ideograph */ + [0x738d, 0x738d], /* CJK Ideograph */ + [0x738e, 0x738e], /* CJK Ideograph */ + [0x738f, 0x738f], /* CJK Ideograph */ + [0x7390, 0x7390], /* CJK Ideograph */ + [0x7391, 0x7391], /* CJK Ideograph */ + [0x7392, 0x7392], /* CJK Ideograph */ + [0x7393, 0x7393], /* CJK Ideograph */ + [0x7394, 0x7394], /* CJK Ideograph */ + [0x7395, 0x7395], /* CJK Ideograph */ + [0x7396, 0x7396], /* CJK Ideograph */ + [0x7397, 0x7397], /* CJK Ideograph */ + [0x7398, 0x7398], /* CJK Ideograph */ + [0x7399, 0x7399], /* CJK Ideograph */ + [0x739a, 0x739a], /* CJK Ideograph */ + [0x739b, 0x739b], /* CJK Ideograph */ + [0x739c, 0x739c], /* CJK Ideograph */ + [0x739d, 0x739d], /* CJK Ideograph */ + [0x739e, 0x739e], /* CJK Ideograph */ + [0x739f, 0x739f], /* CJK Ideograph */ + [0x73a0, 0x73a0], /* CJK Ideograph */ + [0x73a1, 0x73a1], /* CJK Ideograph */ + [0x73a2, 0x73a2], /* CJK Ideograph */ + [0x73a3, 0x73a3], /* CJK Ideograph */ + [0x73a4, 0x73a4], /* CJK Ideograph */ + [0x73a5, 0x73a5], /* CJK Ideograph */ + [0x73a6, 0x73a6], /* CJK Ideograph */ + [0x73a7, 0x73a7], /* CJK Ideograph */ + [0x73a8, 0x73a8], /* CJK Ideograph */ + [0x73a9, 0x73a9], /* CJK Ideograph */ + [0x73aa, 0x73aa], /* CJK Ideograph */ + [0x73ab, 0x73ab], /* CJK Ideograph */ + [0x73ac, 0x73ac], /* CJK Ideograph */ + [0x73ad, 0x73ad], /* CJK Ideograph */ + [0x73ae, 0x73ae], /* CJK Ideograph */ + [0x73af, 0x73af], /* CJK Ideograph */ + [0x73b0, 0x73b0], /* CJK Ideograph */ + [0x73b1, 0x73b1], /* CJK Ideograph */ + [0x73b2, 0x73b2], /* CJK Ideograph */ + [0x73b3, 0x73b3], /* CJK Ideograph */ + [0x73b4, 0x73b4], /* CJK Ideograph */ + [0x73b5, 0x73b5], /* CJK Ideograph */ + [0x73b6, 0x73b6], /* CJK Ideograph */ + [0x73b7, 0x73b7], /* CJK Ideograph */ + [0x73b8, 0x73b8], /* CJK Ideograph */ + [0x73b9, 0x73b9], /* CJK Ideograph */ + [0x73ba, 0x73ba], /* CJK Ideograph */ + [0x73bb, 0x73bb], /* CJK Ideograph */ + [0x73bc, 0x73bc], /* CJK Ideograph */ + [0x73bd, 0x73bd], /* CJK Ideograph */ + [0x73be, 0x73be], /* CJK Ideograph */ + [0x73bf, 0x73bf], /* CJK Ideograph */ + [0x73c0, 0x73c0], /* CJK Ideograph */ + [0x73c1, 0x73c1], /* CJK Ideograph */ + [0x73c2, 0x73c2], /* CJK Ideograph */ + [0x73c3, 0x73c3], /* CJK Ideograph */ + [0x73c4, 0x73c4], /* CJK Ideograph */ + [0x73c5, 0x73c5], /* CJK Ideograph */ + [0x73c6, 0x73c6], /* CJK Ideograph */ + [0x73c7, 0x73c7], /* CJK Ideograph */ + [0x73c8, 0x73c8], /* CJK Ideograph */ + [0x73c9, 0x73c9], /* CJK Ideograph */ + [0x73ca, 0x73ca], /* CJK Ideograph */ + [0x73cb, 0x73cb], /* CJK Ideograph */ + [0x73cc, 0x73cc], /* CJK Ideograph */ + [0x73cd, 0x73cd], /* CJK Ideograph */ + [0x73ce, 0x73ce], /* CJK Ideograph */ + [0x73cf, 0x73cf], /* CJK Ideograph */ + [0x73d0, 0x73d0], /* CJK Ideograph */ + [0x73d1, 0x73d1], /* CJK Ideograph */ + [0x73d2, 0x73d2], /* CJK Ideograph */ + [0x73d3, 0x73d3], /* CJK Ideograph */ + [0x73d4, 0x73d4], /* CJK Ideograph */ + [0x73d5, 0x73d5], /* CJK Ideograph */ + [0x73d6, 0x73d6], /* CJK Ideograph */ + [0x73d7, 0x73d7], /* CJK Ideograph */ + [0x73d8, 0x73d8], /* CJK Ideograph */ + [0x73d9, 0x73d9], /* CJK Ideograph */ + [0x73da, 0x73da], /* CJK Ideograph */ + [0x73db, 0x73db], /* CJK Ideograph */ + [0x73dc, 0x73dc], /* CJK Ideograph */ + [0x73dd, 0x73dd], /* CJK Ideograph */ + [0x73de, 0x73de], /* CJK Ideograph */ + [0x73df, 0x73df], /* CJK Ideograph */ + [0x73e0, 0x73e0], /* CJK Ideograph */ + [0x73e1, 0x73e1], /* CJK Ideograph */ + [0x73e2, 0x73e2], /* CJK Ideograph */ + [0x73e3, 0x73e3], /* CJK Ideograph */ + [0x73e4, 0x73e4], /* CJK Ideograph */ + [0x73e5, 0x73e5], /* CJK Ideograph */ + [0x73e6, 0x73e6], /* CJK Ideograph */ + [0x73e7, 0x73e7], /* CJK Ideograph */ + [0x73e8, 0x73e8], /* CJK Ideograph */ + [0x73e9, 0x73e9], /* CJK Ideograph */ + [0x73ea, 0x73ea], /* CJK Ideograph */ + [0x73eb, 0x73eb], /* CJK Ideograph */ + [0x73ec, 0x73ec], /* CJK Ideograph */ + [0x73ed, 0x73ed], /* CJK Ideograph */ + [0x73ee, 0x73ee], /* CJK Ideograph */ + [0x73ef, 0x73ef], /* CJK Ideograph */ + [0x73f0, 0x73f0], /* CJK Ideograph */ + [0x73f1, 0x73f1], /* CJK Ideograph */ + [0x73f2, 0x73f2], /* CJK Ideograph */ + [0x73f3, 0x73f3], /* CJK Ideograph */ + [0x73f4, 0x73f4], /* CJK Ideograph */ + [0x73f5, 0x73f5], /* CJK Ideograph */ + [0x73f6, 0x73f6], /* CJK Ideograph */ + [0x73f7, 0x73f7], /* CJK Ideograph */ + [0x73f8, 0x73f8], /* CJK Ideograph */ + [0x73f9, 0x73f9], /* CJK Ideograph */ + [0x73fa, 0x73fa], /* CJK Ideograph */ + [0x73fb, 0x73fb], /* CJK Ideograph */ + [0x73fc, 0x73fc], /* CJK Ideograph */ + [0x73fd, 0x73fd], /* CJK Ideograph */ + [0x73fe, 0x73fe], /* CJK Ideograph */ + [0x73ff, 0x73ff], /* CJK Ideograph */ + [0x7400, 0x7400], /* CJK Ideograph */ + [0x7401, 0x7401], /* CJK Ideograph */ + [0x7402, 0x7402], /* CJK Ideograph */ + [0x7403, 0x7403], /* CJK Ideograph */ + [0x7404, 0x7404], /* CJK Ideograph */ + [0x7405, 0x7405], /* CJK Ideograph */ + [0x7406, 0x7406], /* CJK Ideograph */ + [0x7407, 0x7407], /* CJK Ideograph */ + [0x7408, 0x7408], /* CJK Ideograph */ + [0x7409, 0x7409], /* CJK Ideograph */ + [0x740a, 0x740a], /* CJK Ideograph */ + [0x740b, 0x740b], /* CJK Ideograph */ + [0x740c, 0x740c], /* CJK Ideograph */ + [0x740d, 0x740d], /* CJK Ideograph */ + [0x740e, 0x740e], /* CJK Ideograph */ + [0x740f, 0x740f], /* CJK Ideograph */ + [0x7410, 0x7410], /* CJK Ideograph */ + [0x7411, 0x7411], /* CJK Ideograph */ + [0x7412, 0x7412], /* CJK Ideograph */ + [0x7413, 0x7413], /* CJK Ideograph */ + [0x7414, 0x7414], /* CJK Ideograph */ + [0x7415, 0x7415], /* CJK Ideograph */ + [0x7416, 0x7416], /* CJK Ideograph */ + [0x7417, 0x7417], /* CJK Ideograph */ + [0x7418, 0x7418], /* CJK Ideograph */ + [0x7419, 0x7419], /* CJK Ideograph */ + [0x741a, 0x741a], /* CJK Ideograph */ + [0x741b, 0x741b], /* CJK Ideograph */ + [0x741c, 0x741c], /* CJK Ideograph */ + [0x741d, 0x741d], /* CJK Ideograph */ + [0x741e, 0x741e], /* CJK Ideograph */ + [0x741f, 0x741f], /* CJK Ideograph */ + [0x7420, 0x7420], /* CJK Ideograph */ + [0x7421, 0x7421], /* CJK Ideograph */ + [0x7422, 0x7422], /* CJK Ideograph */ + [0x7423, 0x7423], /* CJK Ideograph */ + [0x7424, 0x7424], /* CJK Ideograph */ + [0x7425, 0x7425], /* CJK Ideograph */ + [0x7426, 0x7426], /* CJK Ideograph */ + [0x7427, 0x7427], /* CJK Ideograph */ + [0x7428, 0x7428], /* CJK Ideograph */ + [0x7429, 0x7429], /* CJK Ideograph */ + [0x742a, 0x742a], /* CJK Ideograph */ + [0x742b, 0x742b], /* CJK Ideograph */ + [0x742c, 0x742c], /* CJK Ideograph */ + [0x742d, 0x742d], /* CJK Ideograph */ + [0x742e, 0x742e], /* CJK Ideograph */ + [0x742f, 0x742f], /* CJK Ideograph */ + [0x7430, 0x7430], /* CJK Ideograph */ + [0x7431, 0x7431], /* CJK Ideograph */ + [0x7432, 0x7432], /* CJK Ideograph */ + [0x7433, 0x7433], /* CJK Ideograph */ + [0x7434, 0x7434], /* CJK Ideograph */ + [0x7435, 0x7435], /* CJK Ideograph */ + [0x7436, 0x7436], /* CJK Ideograph */ + [0x7437, 0x7437], /* CJK Ideograph */ + [0x7438, 0x7438], /* CJK Ideograph */ + [0x7439, 0x7439], /* CJK Ideograph */ + [0x743a, 0x743a], /* CJK Ideograph */ + [0x743b, 0x743b], /* CJK Ideograph */ + [0x743c, 0x743c], /* CJK Ideograph */ + [0x743d, 0x743d], /* CJK Ideograph */ + [0x743e, 0x743e], /* CJK Ideograph */ + [0x743f, 0x743f], /* CJK Ideograph */ + [0x7440, 0x7440], /* CJK Ideograph */ + [0x7441, 0x7441], /* CJK Ideograph */ + [0x7442, 0x7442], /* CJK Ideograph */ + [0x7443, 0x7443], /* CJK Ideograph */ + [0x7444, 0x7444], /* CJK Ideograph */ + [0x7445, 0x7445], /* CJK Ideograph */ + [0x7446, 0x7446], /* CJK Ideograph */ + [0x7447, 0x7447], /* CJK Ideograph */ + [0x7448, 0x7448], /* CJK Ideograph */ + [0x7449, 0x7449], /* CJK Ideograph */ + [0x744a, 0x744a], /* CJK Ideograph */ + [0x744b, 0x744b], /* CJK Ideograph */ + [0x744c, 0x744c], /* CJK Ideograph */ + [0x744d, 0x744d], /* CJK Ideograph */ + [0x744e, 0x744e], /* CJK Ideograph */ + [0x744f, 0x744f], /* CJK Ideograph */ + [0x7450, 0x7450], /* CJK Ideograph */ + [0x7451, 0x7451], /* CJK Ideograph */ + [0x7452, 0x7452], /* CJK Ideograph */ + [0x7453, 0x7453], /* CJK Ideograph */ + [0x7454, 0x7454], /* CJK Ideograph */ + [0x7455, 0x7455], /* CJK Ideograph */ + [0x7456, 0x7456], /* CJK Ideograph */ + [0x7457, 0x7457], /* CJK Ideograph */ + [0x7458, 0x7458], /* CJK Ideograph */ + [0x7459, 0x7459], /* CJK Ideograph */ + [0x745a, 0x745a], /* CJK Ideograph */ + [0x745b, 0x745b], /* CJK Ideograph */ + [0x745c, 0x745c], /* CJK Ideograph */ + [0x745d, 0x745d], /* CJK Ideograph */ + [0x745e, 0x745e], /* CJK Ideograph */ + [0x745f, 0x745f], /* CJK Ideograph */ + [0x7460, 0x7460], /* CJK Ideograph */ + [0x7461, 0x7461], /* CJK Ideograph */ + [0x7462, 0x7462], /* CJK Ideograph */ + [0x7463, 0x7463], /* CJK Ideograph */ + [0x7464, 0x7464], /* CJK Ideograph */ + [0x7465, 0x7465], /* CJK Ideograph */ + [0x7466, 0x7466], /* CJK Ideograph */ + [0x7467, 0x7467], /* CJK Ideograph */ + [0x7468, 0x7468], /* CJK Ideograph */ + [0x7469, 0x7469], /* CJK Ideograph */ + [0x746a, 0x746a], /* CJK Ideograph */ + [0x746b, 0x746b], /* CJK Ideograph */ + [0x746c, 0x746c], /* CJK Ideograph */ + [0x746d, 0x746d], /* CJK Ideograph */ + [0x746e, 0x746e], /* CJK Ideograph */ + [0x746f, 0x746f], /* CJK Ideograph */ + [0x7470, 0x7470], /* CJK Ideograph */ + [0x7471, 0x7471], /* CJK Ideograph */ + [0x7472, 0x7472], /* CJK Ideograph */ + [0x7473, 0x7473], /* CJK Ideograph */ + [0x7474, 0x7474], /* CJK Ideograph */ + [0x7475, 0x7475], /* CJK Ideograph */ + [0x7476, 0x7476], /* CJK Ideograph */ + [0x7477, 0x7477], /* CJK Ideograph */ + [0x7478, 0x7478], /* CJK Ideograph */ + [0x7479, 0x7479], /* CJK Ideograph */ + [0x747a, 0x747a], /* CJK Ideograph */ + [0x747b, 0x747b], /* CJK Ideograph */ + [0x747c, 0x747c], /* CJK Ideograph */ + [0x747d, 0x747d], /* CJK Ideograph */ + [0x747e, 0x747e], /* CJK Ideograph */ + [0x747f, 0x747f], /* CJK Ideograph */ + [0x7480, 0x7480], /* CJK Ideograph */ + [0x7481, 0x7481], /* CJK Ideograph */ + [0x7482, 0x7482], /* CJK Ideograph */ + [0x7483, 0x7483], /* CJK Ideograph */ + [0x7484, 0x7484], /* CJK Ideograph */ + [0x7485, 0x7485], /* CJK Ideograph */ + [0x7486, 0x7486], /* CJK Ideograph */ + [0x7487, 0x7487], /* CJK Ideograph */ + [0x7488, 0x7488], /* CJK Ideograph */ + [0x7489, 0x7489], /* CJK Ideograph */ + [0x748a, 0x748a], /* CJK Ideograph */ + [0x748b, 0x748b], /* CJK Ideograph */ + [0x748c, 0x748c], /* CJK Ideograph */ + [0x748d, 0x748d], /* CJK Ideograph */ + [0x748e, 0x748e], /* CJK Ideograph */ + [0x748f, 0x748f], /* CJK Ideograph */ + [0x7490, 0x7490], /* CJK Ideograph */ + [0x7491, 0x7491], /* CJK Ideograph */ + [0x7492, 0x7492], /* CJK Ideograph */ + [0x7493, 0x7493], /* CJK Ideograph */ + [0x7494, 0x7494], /* CJK Ideograph */ + [0x7495, 0x7495], /* CJK Ideograph */ + [0x7496, 0x7496], /* CJK Ideograph */ + [0x7497, 0x7497], /* CJK Ideograph */ + [0x7498, 0x7498], /* CJK Ideograph */ + [0x7499, 0x7499], /* CJK Ideograph */ + [0x749a, 0x749a], /* CJK Ideograph */ + [0x749b, 0x749b], /* CJK Ideograph */ + [0x749c, 0x749c], /* CJK Ideograph */ + [0x749d, 0x749d], /* CJK Ideograph */ + [0x749e, 0x749e], /* CJK Ideograph */ + [0x749f, 0x749f], /* CJK Ideograph */ + [0x74a0, 0x74a0], /* CJK Ideograph */ + [0x74a1, 0x74a1], /* CJK Ideograph */ + [0x74a2, 0x74a2], /* CJK Ideograph */ + [0x74a3, 0x74a3], /* CJK Ideograph */ + [0x74a4, 0x74a4], /* CJK Ideograph */ + [0x74a5, 0x74a5], /* CJK Ideograph */ + [0x74a6, 0x74a6], /* CJK Ideograph */ + [0x74a7, 0x74a7], /* CJK Ideograph */ + [0x74a8, 0x74a8], /* CJK Ideograph */ + [0x74a9, 0x74a9], /* CJK Ideograph */ + [0x74aa, 0x74aa], /* CJK Ideograph */ + [0x74ab, 0x74ab], /* CJK Ideograph */ + [0x74ac, 0x74ac], /* CJK Ideograph */ + [0x74ad, 0x74ad], /* CJK Ideograph */ + [0x74ae, 0x74ae], /* CJK Ideograph */ + [0x74af, 0x74af], /* CJK Ideograph */ + [0x74b0, 0x74b0], /* CJK Ideograph */ + [0x74b1, 0x74b1], /* CJK Ideograph */ + [0x74b2, 0x74b2], /* CJK Ideograph */ + [0x74b3, 0x74b3], /* CJK Ideograph */ + [0x74b4, 0x74b4], /* CJK Ideograph */ + [0x74b5, 0x74b5], /* CJK Ideograph */ + [0x74b6, 0x74b6], /* CJK Ideograph */ + [0x74b7, 0x74b7], /* CJK Ideograph */ + [0x74b8, 0x74b8], /* CJK Ideograph */ + [0x74b9, 0x74b9], /* CJK Ideograph */ + [0x74ba, 0x74ba], /* CJK Ideograph */ + [0x74bb, 0x74bb], /* CJK Ideograph */ + [0x74bc, 0x74bc], /* CJK Ideograph */ + [0x74bd, 0x74bd], /* CJK Ideograph */ + [0x74be, 0x74be], /* CJK Ideograph */ + [0x74bf, 0x74bf], /* CJK Ideograph */ + [0x74c0, 0x74c0], /* CJK Ideograph */ + [0x74c1, 0x74c1], /* CJK Ideograph */ + [0x74c2, 0x74c2], /* CJK Ideograph */ + [0x74c3, 0x74c3], /* CJK Ideograph */ + [0x74c4, 0x74c4], /* CJK Ideograph */ + [0x74c5, 0x74c5], /* CJK Ideograph */ + [0x74c6, 0x74c6], /* CJK Ideograph */ + [0x74c7, 0x74c7], /* CJK Ideograph */ + [0x74c8, 0x74c8], /* CJK Ideograph */ + [0x74c9, 0x74c9], /* CJK Ideograph */ + [0x74ca, 0x74ca], /* CJK Ideograph */ + [0x74cb, 0x74cb], /* CJK Ideograph */ + [0x74cc, 0x74cc], /* CJK Ideograph */ + [0x74cd, 0x74cd], /* CJK Ideograph */ + [0x74ce, 0x74ce], /* CJK Ideograph */ + [0x74cf, 0x74cf], /* CJK Ideograph */ + [0x74d0, 0x74d0], /* CJK Ideograph */ + [0x74d1, 0x74d1], /* CJK Ideograph */ + [0x74d2, 0x74d2], /* CJK Ideograph */ + [0x74d3, 0x74d3], /* CJK Ideograph */ + [0x74d4, 0x74d4], /* CJK Ideograph */ + [0x74d5, 0x74d5], /* CJK Ideograph */ + [0x74d6, 0x74d6], /* CJK Ideograph */ + [0x74d7, 0x74d7], /* CJK Ideograph */ + [0x74d8, 0x74d8], /* CJK Ideograph */ + [0x74d9, 0x74d9], /* CJK Ideograph */ + [0x74da, 0x74da], /* CJK Ideograph */ + [0x74db, 0x74db], /* CJK Ideograph */ + [0x74dc, 0x74dc], /* CJK Ideograph */ + [0x74dd, 0x74dd], /* CJK Ideograph */ + [0x74de, 0x74de], /* CJK Ideograph */ + [0x74df, 0x74df], /* CJK Ideograph */ + [0x74e0, 0x74e0], /* CJK Ideograph */ + [0x74e1, 0x74e1], /* CJK Ideograph */ + [0x74e2, 0x74e2], /* CJK Ideograph */ + [0x74e3, 0x74e3], /* CJK Ideograph */ + [0x74e4, 0x74e4], /* CJK Ideograph */ + [0x74e5, 0x74e5], /* CJK Ideograph */ + [0x74e6, 0x74e6], /* CJK Ideograph */ + [0x74e7, 0x74e7], /* CJK Ideograph */ + [0x74e8, 0x74e8], /* CJK Ideograph */ + [0x74e9, 0x74e9], /* CJK Ideograph */ + [0x74ea, 0x74ea], /* CJK Ideograph */ + [0x74eb, 0x74eb], /* CJK Ideograph */ + [0x74ec, 0x74ec], /* CJK Ideograph */ + [0x74ed, 0x74ed], /* CJK Ideograph */ + [0x74ee, 0x74ee], /* CJK Ideograph */ + [0x74ef, 0x74ef], /* CJK Ideograph */ + [0x74f0, 0x74f0], /* CJK Ideograph */ + [0x74f1, 0x74f1], /* CJK Ideograph */ + [0x74f2, 0x74f2], /* CJK Ideograph */ + [0x74f3, 0x74f3], /* CJK Ideograph */ + [0x74f4, 0x74f4], /* CJK Ideograph */ + [0x74f5, 0x74f5], /* CJK Ideograph */ + [0x74f6, 0x74f6], /* CJK Ideograph */ + [0x74f7, 0x74f7], /* CJK Ideograph */ + [0x74f8, 0x74f8], /* CJK Ideograph */ + [0x74f9, 0x74f9], /* CJK Ideograph */ + [0x74fa, 0x74fa], /* CJK Ideograph */ + [0x74fb, 0x74fb], /* CJK Ideograph */ + [0x74fc, 0x74fc], /* CJK Ideograph */ + [0x74fd, 0x74fd], /* CJK Ideograph */ + [0x74fe, 0x74fe], /* CJK Ideograph */ + [0x74ff, 0x74ff], /* CJK Ideograph */ + [0x7500, 0x7500], /* CJK Ideograph */ + [0x7501, 0x7501], /* CJK Ideograph */ + [0x7502, 0x7502], /* CJK Ideograph */ + [0x7503, 0x7503], /* CJK Ideograph */ + [0x7504, 0x7504], /* CJK Ideograph */ + [0x7505, 0x7505], /* CJK Ideograph */ + [0x7506, 0x7506], /* CJK Ideograph */ + [0x7507, 0x7507], /* CJK Ideograph */ + [0x7508, 0x7508], /* CJK Ideograph */ + [0x7509, 0x7509], /* CJK Ideograph */ + [0x750a, 0x750a], /* CJK Ideograph */ + [0x750b, 0x750b], /* CJK Ideograph */ + [0x750c, 0x750c], /* CJK Ideograph */ + [0x750d, 0x750d], /* CJK Ideograph */ + [0x750e, 0x750e], /* CJK Ideograph */ + [0x750f, 0x750f], /* CJK Ideograph */ + [0x7510, 0x7510], /* CJK Ideograph */ + [0x7511, 0x7511], /* CJK Ideograph */ + [0x7512, 0x7512], /* CJK Ideograph */ + [0x7513, 0x7513], /* CJK Ideograph */ + [0x7514, 0x7514], /* CJK Ideograph */ + [0x7515, 0x7515], /* CJK Ideograph */ + [0x7516, 0x7516], /* CJK Ideograph */ + [0x7517, 0x7517], /* CJK Ideograph */ + [0x7518, 0x7518], /* CJK Ideograph */ + [0x7519, 0x7519], /* CJK Ideograph */ + [0x751a, 0x751a], /* CJK Ideograph */ + [0x751b, 0x751b], /* CJK Ideograph */ + [0x751c, 0x751c], /* CJK Ideograph */ + [0x751d, 0x751d], /* CJK Ideograph */ + [0x751e, 0x751e], /* CJK Ideograph */ + [0x751f, 0x751f], /* CJK Ideograph */ + [0x7520, 0x7520], /* CJK Ideograph */ + [0x7521, 0x7521], /* CJK Ideograph */ + [0x7522, 0x7522], /* CJK Ideograph */ + [0x7523, 0x7523], /* CJK Ideograph */ + [0x7524, 0x7524], /* CJK Ideograph */ + [0x7525, 0x7525], /* CJK Ideograph */ + [0x7526, 0x7526], /* CJK Ideograph */ + [0x7527, 0x7527], /* CJK Ideograph */ + [0x7528, 0x7528], /* CJK Ideograph */ + [0x7529, 0x7529], /* CJK Ideograph */ + [0x752a, 0x752a], /* CJK Ideograph */ + [0x752b, 0x752b], /* CJK Ideograph */ + [0x752c, 0x752c], /* CJK Ideograph */ + [0x752d, 0x752d], /* CJK Ideograph */ + [0x752e, 0x752e], /* CJK Ideograph */ + [0x752f, 0x752f], /* CJK Ideograph */ + [0x7530, 0x7530], /* CJK Ideograph */ + [0x7531, 0x7531], /* CJK Ideograph */ + [0x7532, 0x7532], /* CJK Ideograph */ + [0x7533, 0x7533], /* CJK Ideograph */ + [0x7534, 0x7534], /* CJK Ideograph */ + [0x7535, 0x7535], /* CJK Ideograph */ + [0x7536, 0x7536], /* CJK Ideograph */ + [0x7537, 0x7537], /* CJK Ideograph */ + [0x7538, 0x7538], /* CJK Ideograph */ + [0x7539, 0x7539], /* CJK Ideograph */ + [0x753a, 0x753a], /* CJK Ideograph */ + [0x753b, 0x753b], /* CJK Ideograph */ + [0x753c, 0x753c], /* CJK Ideograph */ + [0x753d, 0x753d], /* CJK Ideograph */ + [0x753e, 0x753e], /* CJK Ideograph */ + [0x753f, 0x753f], /* CJK Ideograph */ + [0x7540, 0x7540], /* CJK Ideograph */ + [0x7541, 0x7541], /* CJK Ideograph */ + [0x7542, 0x7542], /* CJK Ideograph */ + [0x7543, 0x7543], /* CJK Ideograph */ + [0x7544, 0x7544], /* CJK Ideograph */ + [0x7545, 0x7545], /* CJK Ideograph */ + [0x7546, 0x7546], /* CJK Ideograph */ + [0x7547, 0x7547], /* CJK Ideograph */ + [0x7548, 0x7548], /* CJK Ideograph */ + [0x7549, 0x7549], /* CJK Ideograph */ + [0x754a, 0x754a], /* CJK Ideograph */ + [0x754b, 0x754b], /* CJK Ideograph */ + [0x754c, 0x754c], /* CJK Ideograph */ + [0x754d, 0x754d], /* CJK Ideograph */ + [0x754e, 0x754e], /* CJK Ideograph */ + [0x754f, 0x754f], /* CJK Ideograph */ + [0x7550, 0x7550], /* CJK Ideograph */ + [0x7551, 0x7551], /* CJK Ideograph */ + [0x7552, 0x7552], /* CJK Ideograph */ + [0x7553, 0x7553], /* CJK Ideograph */ + [0x7554, 0x7554], /* CJK Ideograph */ + [0x7555, 0x7555], /* CJK Ideograph */ + [0x7556, 0x7556], /* CJK Ideograph */ + [0x7557, 0x7557], /* CJK Ideograph */ + [0x7558, 0x7558], /* CJK Ideograph */ + [0x7559, 0x7559], /* CJK Ideograph */ + [0x755a, 0x755a], /* CJK Ideograph */ + [0x755b, 0x755b], /* CJK Ideograph */ + [0x755c, 0x755c], /* CJK Ideograph */ + [0x755d, 0x755d], /* CJK Ideograph */ + [0x755e, 0x755e], /* CJK Ideograph */ + [0x755f, 0x755f], /* CJK Ideograph */ + [0x7560, 0x7560], /* CJK Ideograph */ + [0x7561, 0x7561], /* CJK Ideograph */ + [0x7562, 0x7562], /* CJK Ideograph */ + [0x7563, 0x7563], /* CJK Ideograph */ + [0x7564, 0x7564], /* CJK Ideograph */ + [0x7565, 0x7565], /* CJK Ideograph */ + [0x7566, 0x7566], /* CJK Ideograph */ + [0x7567, 0x7567], /* CJK Ideograph */ + [0x7568, 0x7568], /* CJK Ideograph */ + [0x7569, 0x7569], /* CJK Ideograph */ + [0x756a, 0x756a], /* CJK Ideograph */ + [0x756b, 0x756b], /* CJK Ideograph */ + [0x756c, 0x756c], /* CJK Ideograph */ + [0x756d, 0x756d], /* CJK Ideograph */ + [0x756e, 0x756e], /* CJK Ideograph */ + [0x756f, 0x756f], /* CJK Ideograph */ + [0x7570, 0x7570], /* CJK Ideograph */ + [0x7571, 0x7571], /* CJK Ideograph */ + [0x7572, 0x7572], /* CJK Ideograph */ + [0x7573, 0x7573], /* CJK Ideograph */ + [0x7574, 0x7574], /* CJK Ideograph */ + [0x7575, 0x7575], /* CJK Ideograph */ + [0x7576, 0x7576], /* CJK Ideograph */ + [0x7577, 0x7577], /* CJK Ideograph */ + [0x7578, 0x7578], /* CJK Ideograph */ + [0x7579, 0x7579], /* CJK Ideograph */ + [0x757a, 0x757a], /* CJK Ideograph */ + [0x757b, 0x757b], /* CJK Ideograph */ + [0x757c, 0x757c], /* CJK Ideograph */ + [0x757d, 0x757d], /* CJK Ideograph */ + [0x757e, 0x757e], /* CJK Ideograph */ + [0x757f, 0x757f], /* CJK Ideograph */ + [0x7580, 0x7580], /* CJK Ideograph */ + [0x7581, 0x7581], /* CJK Ideograph */ + [0x7582, 0x7582], /* CJK Ideograph */ + [0x7583, 0x7583], /* CJK Ideograph */ + [0x7584, 0x7584], /* CJK Ideograph */ + [0x7585, 0x7585], /* CJK Ideograph */ + [0x7586, 0x7586], /* CJK Ideograph */ + [0x7587, 0x7587], /* CJK Ideograph */ + [0x7588, 0x7588], /* CJK Ideograph */ + [0x7589, 0x7589], /* CJK Ideograph */ + [0x758a, 0x758a], /* CJK Ideograph */ + [0x758b, 0x758b], /* CJK Ideograph */ + [0x758c, 0x758c], /* CJK Ideograph */ + [0x758d, 0x758d], /* CJK Ideograph */ + [0x758e, 0x758e], /* CJK Ideograph */ + [0x758f, 0x758f], /* CJK Ideograph */ + [0x7590, 0x7590], /* CJK Ideograph */ + [0x7591, 0x7591], /* CJK Ideograph */ + [0x7592, 0x7592], /* CJK Ideograph */ + [0x7593, 0x7593], /* CJK Ideograph */ + [0x7594, 0x7594], /* CJK Ideograph */ + [0x7595, 0x7595], /* CJK Ideograph */ + [0x7596, 0x7596], /* CJK Ideograph */ + [0x7597, 0x7597], /* CJK Ideograph */ + [0x7598, 0x7598], /* CJK Ideograph */ + [0x7599, 0x7599], /* CJK Ideograph */ + [0x759a, 0x759a], /* CJK Ideograph */ + [0x759b, 0x759b], /* CJK Ideograph */ + [0x759c, 0x759c], /* CJK Ideograph */ + [0x759d, 0x759d], /* CJK Ideograph */ + [0x759e, 0x759e], /* CJK Ideograph */ + [0x759f, 0x759f], /* CJK Ideograph */ + [0x75a0, 0x75a0], /* CJK Ideograph */ + [0x75a1, 0x75a1], /* CJK Ideograph */ + [0x75a2, 0x75a2], /* CJK Ideograph */ + [0x75a3, 0x75a3], /* CJK Ideograph */ + [0x75a4, 0x75a4], /* CJK Ideograph */ + [0x75a5, 0x75a5], /* CJK Ideograph */ + [0x75a6, 0x75a6], /* CJK Ideograph */ + [0x75a7, 0x75a7], /* CJK Ideograph */ + [0x75a8, 0x75a8], /* CJK Ideograph */ + [0x75a9, 0x75a9], /* CJK Ideograph */ + [0x75aa, 0x75aa], /* CJK Ideograph */ + [0x75ab, 0x75ab], /* CJK Ideograph */ + [0x75ac, 0x75ac], /* CJK Ideograph */ + [0x75ad, 0x75ad], /* CJK Ideograph */ + [0x75ae, 0x75ae], /* CJK Ideograph */ + [0x75af, 0x75af], /* CJK Ideograph */ + [0x75b0, 0x75b0], /* CJK Ideograph */ + [0x75b1, 0x75b1], /* CJK Ideograph */ + [0x75b2, 0x75b2], /* CJK Ideograph */ + [0x75b3, 0x75b3], /* CJK Ideograph */ + [0x75b4, 0x75b4], /* CJK Ideograph */ + [0x75b5, 0x75b5], /* CJK Ideograph */ + [0x75b6, 0x75b6], /* CJK Ideograph */ + [0x75b7, 0x75b7], /* CJK Ideograph */ + [0x75b8, 0x75b8], /* CJK Ideograph */ + [0x75b9, 0x75b9], /* CJK Ideograph */ + [0x75ba, 0x75ba], /* CJK Ideograph */ + [0x75bb, 0x75bb], /* CJK Ideograph */ + [0x75bc, 0x75bc], /* CJK Ideograph */ + [0x75bd, 0x75bd], /* CJK Ideograph */ + [0x75be, 0x75be], /* CJK Ideograph */ + [0x75bf, 0x75bf], /* CJK Ideograph */ + [0x75c0, 0x75c0], /* CJK Ideograph */ + [0x75c1, 0x75c1], /* CJK Ideograph */ + [0x75c2, 0x75c2], /* CJK Ideograph */ + [0x75c3, 0x75c3], /* CJK Ideograph */ + [0x75c4, 0x75c4], /* CJK Ideograph */ + [0x75c5, 0x75c5], /* CJK Ideograph */ + [0x75c6, 0x75c6], /* CJK Ideograph */ + [0x75c7, 0x75c7], /* CJK Ideograph */ + [0x75c8, 0x75c8], /* CJK Ideograph */ + [0x75c9, 0x75c9], /* CJK Ideograph */ + [0x75ca, 0x75ca], /* CJK Ideograph */ + [0x75cb, 0x75cb], /* CJK Ideograph */ + [0x75cc, 0x75cc], /* CJK Ideograph */ + [0x75cd, 0x75cd], /* CJK Ideograph */ + [0x75ce, 0x75ce], /* CJK Ideograph */ + [0x75cf, 0x75cf], /* CJK Ideograph */ + [0x75d0, 0x75d0], /* CJK Ideograph */ + [0x75d1, 0x75d1], /* CJK Ideograph */ + [0x75d2, 0x75d2], /* CJK Ideograph */ + [0x75d3, 0x75d3], /* CJK Ideograph */ + [0x75d4, 0x75d4], /* CJK Ideograph */ + [0x75d5, 0x75d5], /* CJK Ideograph */ + [0x75d6, 0x75d6], /* CJK Ideograph */ + [0x75d7, 0x75d7], /* CJK Ideograph */ + [0x75d8, 0x75d8], /* CJK Ideograph */ + [0x75d9, 0x75d9], /* CJK Ideograph */ + [0x75da, 0x75da], /* CJK Ideograph */ + [0x75db, 0x75db], /* CJK Ideograph */ + [0x75dc, 0x75dc], /* CJK Ideograph */ + [0x75dd, 0x75dd], /* CJK Ideograph */ + [0x75de, 0x75de], /* CJK Ideograph */ + [0x75df, 0x75df], /* CJK Ideograph */ + [0x75e0, 0x75e0], /* CJK Ideograph */ + [0x75e1, 0x75e1], /* CJK Ideograph */ + [0x75e2, 0x75e2], /* CJK Ideograph */ + [0x75e3, 0x75e3], /* CJK Ideograph */ + [0x75e4, 0x75e4], /* CJK Ideograph */ + [0x75e5, 0x75e5], /* CJK Ideograph */ + [0x75e6, 0x75e6], /* CJK Ideograph */ + [0x75e7, 0x75e7], /* CJK Ideograph */ + [0x75e8, 0x75e8], /* CJK Ideograph */ + [0x75e9, 0x75e9], /* CJK Ideograph */ + [0x75ea, 0x75ea], /* CJK Ideograph */ + [0x75eb, 0x75eb], /* CJK Ideograph */ + [0x75ec, 0x75ec], /* CJK Ideograph */ + [0x75ed, 0x75ed], /* CJK Ideograph */ + [0x75ee, 0x75ee], /* CJK Ideograph */ + [0x75ef, 0x75ef], /* CJK Ideograph */ + [0x75f0, 0x75f0], /* CJK Ideograph */ + [0x75f1, 0x75f1], /* CJK Ideograph */ + [0x75f2, 0x75f2], /* CJK Ideograph */ + [0x75f3, 0x75f3], /* CJK Ideograph */ + [0x75f4, 0x75f4], /* CJK Ideograph */ + [0x75f5, 0x75f5], /* CJK Ideograph */ + [0x75f6, 0x75f6], /* CJK Ideograph */ + [0x75f7, 0x75f7], /* CJK Ideograph */ + [0x75f8, 0x75f8], /* CJK Ideograph */ + [0x75f9, 0x75f9], /* CJK Ideograph */ + [0x75fa, 0x75fa], /* CJK Ideograph */ + [0x75fb, 0x75fb], /* CJK Ideograph */ + [0x75fc, 0x75fc], /* CJK Ideograph */ + [0x75fd, 0x75fd], /* CJK Ideograph */ + [0x75fe, 0x75fe], /* CJK Ideograph */ + [0x75ff, 0x75ff], /* CJK Ideograph */ + [0x7600, 0x7600], /* CJK Ideograph */ + [0x7601, 0x7601], /* CJK Ideograph */ + [0x7602, 0x7602], /* CJK Ideograph */ + [0x7603, 0x7603], /* CJK Ideograph */ + [0x7604, 0x7604], /* CJK Ideograph */ + [0x7605, 0x7605], /* CJK Ideograph */ + [0x7606, 0x7606], /* CJK Ideograph */ + [0x7607, 0x7607], /* CJK Ideograph */ + [0x7608, 0x7608], /* CJK Ideograph */ + [0x7609, 0x7609], /* CJK Ideograph */ + [0x760a, 0x760a], /* CJK Ideograph */ + [0x760b, 0x760b], /* CJK Ideograph */ + [0x760c, 0x760c], /* CJK Ideograph */ + [0x760d, 0x760d], /* CJK Ideograph */ + [0x760e, 0x760e], /* CJK Ideograph */ + [0x760f, 0x760f], /* CJK Ideograph */ + [0x7610, 0x7610], /* CJK Ideograph */ + [0x7611, 0x7611], /* CJK Ideograph */ + [0x7612, 0x7612], /* CJK Ideograph */ + [0x7613, 0x7613], /* CJK Ideograph */ + [0x7614, 0x7614], /* CJK Ideograph */ + [0x7615, 0x7615], /* CJK Ideograph */ + [0x7616, 0x7616], /* CJK Ideograph */ + [0x7617, 0x7617], /* CJK Ideograph */ + [0x7618, 0x7618], /* CJK Ideograph */ + [0x7619, 0x7619], /* CJK Ideograph */ + [0x761a, 0x761a], /* CJK Ideograph */ + [0x761b, 0x761b], /* CJK Ideograph */ + [0x761c, 0x761c], /* CJK Ideograph */ + [0x761d, 0x761d], /* CJK Ideograph */ + [0x761e, 0x761e], /* CJK Ideograph */ + [0x761f, 0x761f], /* CJK Ideograph */ + [0x7620, 0x7620], /* CJK Ideograph */ + [0x7621, 0x7621], /* CJK Ideograph */ + [0x7622, 0x7622], /* CJK Ideograph */ + [0x7623, 0x7623], /* CJK Ideograph */ + [0x7624, 0x7624], /* CJK Ideograph */ + [0x7625, 0x7625], /* CJK Ideograph */ + [0x7626, 0x7626], /* CJK Ideograph */ + [0x7627, 0x7627], /* CJK Ideograph */ + [0x7628, 0x7628], /* CJK Ideograph */ + [0x7629, 0x7629], /* CJK Ideograph */ + [0x762a, 0x762a], /* CJK Ideograph */ + [0x762b, 0x762b], /* CJK Ideograph */ + [0x762c, 0x762c], /* CJK Ideograph */ + [0x762d, 0x762d], /* CJK Ideograph */ + [0x762e, 0x762e], /* CJK Ideograph */ + [0x762f, 0x762f], /* CJK Ideograph */ + [0x7630, 0x7630], /* CJK Ideograph */ + [0x7631, 0x7631], /* CJK Ideograph */ + [0x7632, 0x7632], /* CJK Ideograph */ + [0x7633, 0x7633], /* CJK Ideograph */ + [0x7634, 0x7634], /* CJK Ideograph */ + [0x7635, 0x7635], /* CJK Ideograph */ + [0x7636, 0x7636], /* CJK Ideograph */ + [0x7637, 0x7637], /* CJK Ideograph */ + [0x7638, 0x7638], /* CJK Ideograph */ + [0x7639, 0x7639], /* CJK Ideograph */ + [0x763a, 0x763a], /* CJK Ideograph */ + [0x763b, 0x763b], /* CJK Ideograph */ + [0x763c, 0x763c], /* CJK Ideograph */ + [0x763d, 0x763d], /* CJK Ideograph */ + [0x763e, 0x763e], /* CJK Ideograph */ + [0x763f, 0x763f], /* CJK Ideograph */ + [0x7640, 0x7640], /* CJK Ideograph */ + [0x7641, 0x7641], /* CJK Ideograph */ + [0x7642, 0x7642], /* CJK Ideograph */ + [0x7643, 0x7643], /* CJK Ideograph */ + [0x7644, 0x7644], /* CJK Ideograph */ + [0x7645, 0x7645], /* CJK Ideograph */ + [0x7646, 0x7646], /* CJK Ideograph */ + [0x7647, 0x7647], /* CJK Ideograph */ + [0x7648, 0x7648], /* CJK Ideograph */ + [0x7649, 0x7649], /* CJK Ideograph */ + [0x764a, 0x764a], /* CJK Ideograph */ + [0x764b, 0x764b], /* CJK Ideograph */ + [0x764c, 0x764c], /* CJK Ideograph */ + [0x764d, 0x764d], /* CJK Ideograph */ + [0x764e, 0x764e], /* CJK Ideograph */ + [0x764f, 0x764f], /* CJK Ideograph */ + [0x7650, 0x7650], /* CJK Ideograph */ + [0x7651, 0x7651], /* CJK Ideograph */ + [0x7652, 0x7652], /* CJK Ideograph */ + [0x7653, 0x7653], /* CJK Ideograph */ + [0x7654, 0x7654], /* CJK Ideograph */ + [0x7655, 0x7655], /* CJK Ideograph */ + [0x7656, 0x7656], /* CJK Ideograph */ + [0x7657, 0x7657], /* CJK Ideograph */ + [0x7658, 0x7658], /* CJK Ideograph */ + [0x7659, 0x7659], /* CJK Ideograph */ + [0x765a, 0x765a], /* CJK Ideograph */ + [0x765b, 0x765b], /* CJK Ideograph */ + [0x765c, 0x765c], /* CJK Ideograph */ + [0x765d, 0x765d], /* CJK Ideograph */ + [0x765e, 0x765e], /* CJK Ideograph */ + [0x765f, 0x765f], /* CJK Ideograph */ + [0x7660, 0x7660], /* CJK Ideograph */ + [0x7661, 0x7661], /* CJK Ideograph */ + [0x7662, 0x7662], /* CJK Ideograph */ + [0x7663, 0x7663], /* CJK Ideograph */ + [0x7664, 0x7664], /* CJK Ideograph */ + [0x7665, 0x7665], /* CJK Ideograph */ + [0x7666, 0x7666], /* CJK Ideograph */ + [0x7667, 0x7667], /* CJK Ideograph */ + [0x7668, 0x7668], /* CJK Ideograph */ + [0x7669, 0x7669], /* CJK Ideograph */ + [0x766a, 0x766a], /* CJK Ideograph */ + [0x766b, 0x766b], /* CJK Ideograph */ + [0x766c, 0x766c], /* CJK Ideograph */ + [0x766d, 0x766d], /* CJK Ideograph */ + [0x766e, 0x766e], /* CJK Ideograph */ + [0x766f, 0x766f], /* CJK Ideograph */ + [0x7670, 0x7670], /* CJK Ideograph */ + [0x7671, 0x7671], /* CJK Ideograph */ + [0x7672, 0x7672], /* CJK Ideograph */ + [0x7673, 0x7673], /* CJK Ideograph */ + [0x7674, 0x7674], /* CJK Ideograph */ + [0x7675, 0x7675], /* CJK Ideograph */ + [0x7676, 0x7676], /* CJK Ideograph */ + [0x7677, 0x7677], /* CJK Ideograph */ + [0x7678, 0x7678], /* CJK Ideograph */ + [0x7679, 0x7679], /* CJK Ideograph */ + [0x767a, 0x767a], /* CJK Ideograph */ + [0x767b, 0x767b], /* CJK Ideograph */ + [0x767c, 0x767c], /* CJK Ideograph */ + [0x767d, 0x767d], /* CJK Ideograph */ + [0x767e, 0x767e], /* CJK Ideograph */ + [0x767f, 0x767f], /* CJK Ideograph */ + [0x7680, 0x7680], /* CJK Ideograph */ + [0x7681, 0x7681], /* CJK Ideograph */ + [0x7682, 0x7682], /* CJK Ideograph */ + [0x7683, 0x7683], /* CJK Ideograph */ + [0x7684, 0x7684], /* CJK Ideograph */ + [0x7685, 0x7685], /* CJK Ideograph */ + [0x7686, 0x7686], /* CJK Ideograph */ + [0x7687, 0x7687], /* CJK Ideograph */ + [0x7688, 0x7688], /* CJK Ideograph */ + [0x7689, 0x7689], /* CJK Ideograph */ + [0x768a, 0x768a], /* CJK Ideograph */ + [0x768b, 0x768b], /* CJK Ideograph */ + [0x768c, 0x768c], /* CJK Ideograph */ + [0x768d, 0x768d], /* CJK Ideograph */ + [0x768e, 0x768e], /* CJK Ideograph */ + [0x768f, 0x768f], /* CJK Ideograph */ + [0x7690, 0x7690], /* CJK Ideograph */ + [0x7691, 0x7691], /* CJK Ideograph */ + [0x7692, 0x7692], /* CJK Ideograph */ + [0x7693, 0x7693], /* CJK Ideograph */ + [0x7694, 0x7694], /* CJK Ideograph */ + [0x7695, 0x7695], /* CJK Ideograph */ + [0x7696, 0x7696], /* CJK Ideograph */ + [0x7697, 0x7697], /* CJK Ideograph */ + [0x7698, 0x7698], /* CJK Ideograph */ + [0x7699, 0x7699], /* CJK Ideograph */ + [0x769a, 0x769a], /* CJK Ideograph */ + [0x769b, 0x769b], /* CJK Ideograph */ + [0x769c, 0x769c], /* CJK Ideograph */ + [0x769d, 0x769d], /* CJK Ideograph */ + [0x769e, 0x769e], /* CJK Ideograph */ + [0x769f, 0x769f], /* CJK Ideograph */ + [0x76a0, 0x76a0], /* CJK Ideograph */ + [0x76a1, 0x76a1], /* CJK Ideograph */ + [0x76a2, 0x76a2], /* CJK Ideograph */ + [0x76a3, 0x76a3], /* CJK Ideograph */ + [0x76a4, 0x76a4], /* CJK Ideograph */ + [0x76a5, 0x76a5], /* CJK Ideograph */ + [0x76a6, 0x76a6], /* CJK Ideograph */ + [0x76a7, 0x76a7], /* CJK Ideograph */ + [0x76a8, 0x76a8], /* CJK Ideograph */ + [0x76a9, 0x76a9], /* CJK Ideograph */ + [0x76aa, 0x76aa], /* CJK Ideograph */ + [0x76ab, 0x76ab], /* CJK Ideograph */ + [0x76ac, 0x76ac], /* CJK Ideograph */ + [0x76ad, 0x76ad], /* CJK Ideograph */ + [0x76ae, 0x76ae], /* CJK Ideograph */ + [0x76af, 0x76af], /* CJK Ideograph */ + [0x76b0, 0x76b0], /* CJK Ideograph */ + [0x76b1, 0x76b1], /* CJK Ideograph */ + [0x76b2, 0x76b2], /* CJK Ideograph */ + [0x76b3, 0x76b3], /* CJK Ideograph */ + [0x76b4, 0x76b4], /* CJK Ideograph */ + [0x76b5, 0x76b5], /* CJK Ideograph */ + [0x76b6, 0x76b6], /* CJK Ideograph */ + [0x76b7, 0x76b7], /* CJK Ideograph */ + [0x76b8, 0x76b8], /* CJK Ideograph */ + [0x76b9, 0x76b9], /* CJK Ideograph */ + [0x76ba, 0x76ba], /* CJK Ideograph */ + [0x76bb, 0x76bb], /* CJK Ideograph */ + [0x76bc, 0x76bc], /* CJK Ideograph */ + [0x76bd, 0x76bd], /* CJK Ideograph */ + [0x76be, 0x76be], /* CJK Ideograph */ + [0x76bf, 0x76bf], /* CJK Ideograph */ + [0x76c0, 0x76c0], /* CJK Ideograph */ + [0x76c1, 0x76c1], /* CJK Ideograph */ + [0x76c2, 0x76c2], /* CJK Ideograph */ + [0x76c3, 0x76c3], /* CJK Ideograph */ + [0x76c4, 0x76c4], /* CJK Ideograph */ + [0x76c5, 0x76c5], /* CJK Ideograph */ + [0x76c6, 0x76c6], /* CJK Ideograph */ + [0x76c7, 0x76c7], /* CJK Ideograph */ + [0x76c8, 0x76c8], /* CJK Ideograph */ + [0x76c9, 0x76c9], /* CJK Ideograph */ + [0x76ca, 0x76ca], /* CJK Ideograph */ + [0x76cb, 0x76cb], /* CJK Ideograph */ + [0x76cc, 0x76cc], /* CJK Ideograph */ + [0x76cd, 0x76cd], /* CJK Ideograph */ + [0x76ce, 0x76ce], /* CJK Ideograph */ + [0x76cf, 0x76cf], /* CJK Ideograph */ + [0x76d0, 0x76d0], /* CJK Ideograph */ + [0x76d1, 0x76d1], /* CJK Ideograph */ + [0x76d2, 0x76d2], /* CJK Ideograph */ + [0x76d3, 0x76d3], /* CJK Ideograph */ + [0x76d4, 0x76d4], /* CJK Ideograph */ + [0x76d5, 0x76d5], /* CJK Ideograph */ + [0x76d6, 0x76d6], /* CJK Ideograph */ + [0x76d7, 0x76d7], /* CJK Ideograph */ + [0x76d8, 0x76d8], /* CJK Ideograph */ + [0x76d9, 0x76d9], /* CJK Ideograph */ + [0x76da, 0x76da], /* CJK Ideograph */ + [0x76db, 0x76db], /* CJK Ideograph */ + [0x76dc, 0x76dc], /* CJK Ideograph */ + [0x76dd, 0x76dd], /* CJK Ideograph */ + [0x76de, 0x76de], /* CJK Ideograph */ + [0x76df, 0x76df], /* CJK Ideograph */ + [0x76e0, 0x76e0], /* CJK Ideograph */ + [0x76e1, 0x76e1], /* CJK Ideograph */ + [0x76e2, 0x76e2], /* CJK Ideograph */ + [0x76e3, 0x76e3], /* CJK Ideograph */ + [0x76e4, 0x76e4], /* CJK Ideograph */ + [0x76e5, 0x76e5], /* CJK Ideograph */ + [0x76e6, 0x76e6], /* CJK Ideograph */ + [0x76e7, 0x76e7], /* CJK Ideograph */ + [0x76e8, 0x76e8], /* CJK Ideograph */ + [0x76e9, 0x76e9], /* CJK Ideograph */ + [0x76ea, 0x76ea], /* CJK Ideograph */ + [0x76eb, 0x76eb], /* CJK Ideograph */ + [0x76ec, 0x76ec], /* CJK Ideograph */ + [0x76ed, 0x76ed], /* CJK Ideograph */ + [0x76ee, 0x76ee], /* CJK Ideograph */ + [0x76ef, 0x76ef], /* CJK Ideograph */ + [0x76f0, 0x76f0], /* CJK Ideograph */ + [0x76f1, 0x76f1], /* CJK Ideograph */ + [0x76f2, 0x76f2], /* CJK Ideograph */ + [0x76f3, 0x76f3], /* CJK Ideograph */ + [0x76f4, 0x76f4], /* CJK Ideograph */ + [0x76f5, 0x76f5], /* CJK Ideograph */ + [0x76f6, 0x76f6], /* CJK Ideograph */ + [0x76f7, 0x76f7], /* CJK Ideograph */ + [0x76f8, 0x76f8], /* CJK Ideograph */ + [0x76f9, 0x76f9], /* CJK Ideograph */ + [0x76fa, 0x76fa], /* CJK Ideograph */ + [0x76fb, 0x76fb], /* CJK Ideograph */ + [0x76fc, 0x76fc], /* CJK Ideograph */ + [0x76fd, 0x76fd], /* CJK Ideograph */ + [0x76fe, 0x76fe], /* CJK Ideograph */ + [0x76ff, 0x76ff], /* CJK Ideograph */ + [0x7700, 0x7700], /* CJK Ideograph */ + [0x7701, 0x7701], /* CJK Ideograph */ + [0x7702, 0x7702], /* CJK Ideograph */ + [0x7703, 0x7703], /* CJK Ideograph */ + [0x7704, 0x7704], /* CJK Ideograph */ + [0x7705, 0x7705], /* CJK Ideograph */ + [0x7706, 0x7706], /* CJK Ideograph */ + [0x7707, 0x7707], /* CJK Ideograph */ + [0x7708, 0x7708], /* CJK Ideograph */ + [0x7709, 0x7709], /* CJK Ideograph */ + [0x770a, 0x770a], /* CJK Ideograph */ + [0x770b, 0x770b], /* CJK Ideograph */ + [0x770c, 0x770c], /* CJK Ideograph */ + [0x770d, 0x770d], /* CJK Ideograph */ + [0x770e, 0x770e], /* CJK Ideograph */ + [0x770f, 0x770f], /* CJK Ideograph */ + [0x7710, 0x7710], /* CJK Ideograph */ + [0x7711, 0x7711], /* CJK Ideograph */ + [0x7712, 0x7712], /* CJK Ideograph */ + [0x7713, 0x7713], /* CJK Ideograph */ + [0x7714, 0x7714], /* CJK Ideograph */ + [0x7715, 0x7715], /* CJK Ideograph */ + [0x7716, 0x7716], /* CJK Ideograph */ + [0x7717, 0x7717], /* CJK Ideograph */ + [0x7718, 0x7718], /* CJK Ideograph */ + [0x7719, 0x7719], /* CJK Ideograph */ + [0x771a, 0x771a], /* CJK Ideograph */ + [0x771b, 0x771b], /* CJK Ideograph */ + [0x771c, 0x771c], /* CJK Ideograph */ + [0x771d, 0x771d], /* CJK Ideograph */ + [0x771e, 0x771e], /* CJK Ideograph */ + [0x771f, 0x771f], /* CJK Ideograph */ + [0x7720, 0x7720], /* CJK Ideograph */ + [0x7721, 0x7721], /* CJK Ideograph */ + [0x7722, 0x7722], /* CJK Ideograph */ + [0x7723, 0x7723], /* CJK Ideograph */ + [0x7724, 0x7724], /* CJK Ideograph */ + [0x7725, 0x7725], /* CJK Ideograph */ + [0x7726, 0x7726], /* CJK Ideograph */ + [0x7727, 0x7727], /* CJK Ideograph */ + [0x7728, 0x7728], /* CJK Ideograph */ + [0x7729, 0x7729], /* CJK Ideograph */ + [0x772a, 0x772a], /* CJK Ideograph */ + [0x772b, 0x772b], /* CJK Ideograph */ + [0x772c, 0x772c], /* CJK Ideograph */ + [0x772d, 0x772d], /* CJK Ideograph */ + [0x772e, 0x772e], /* CJK Ideograph */ + [0x772f, 0x772f], /* CJK Ideograph */ + [0x7730, 0x7730], /* CJK Ideograph */ + [0x7731, 0x7731], /* CJK Ideograph */ + [0x7732, 0x7732], /* CJK Ideograph */ + [0x7733, 0x7733], /* CJK Ideograph */ + [0x7734, 0x7734], /* CJK Ideograph */ + [0x7735, 0x7735], /* CJK Ideograph */ + [0x7736, 0x7736], /* CJK Ideograph */ + [0x7737, 0x7737], /* CJK Ideograph */ + [0x7738, 0x7738], /* CJK Ideograph */ + [0x7739, 0x7739], /* CJK Ideograph */ + [0x773a, 0x773a], /* CJK Ideograph */ + [0x773b, 0x773b], /* CJK Ideograph */ + [0x773c, 0x773c], /* CJK Ideograph */ + [0x773d, 0x773d], /* CJK Ideograph */ + [0x773e, 0x773e], /* CJK Ideograph */ + [0x773f, 0x773f], /* CJK Ideograph */ + [0x7740, 0x7740], /* CJK Ideograph */ + [0x7741, 0x7741], /* CJK Ideograph */ + [0x7742, 0x7742], /* CJK Ideograph */ + [0x7743, 0x7743], /* CJK Ideograph */ + [0x7744, 0x7744], /* CJK Ideograph */ + [0x7745, 0x7745], /* CJK Ideograph */ + [0x7746, 0x7746], /* CJK Ideograph */ + [0x7747, 0x7747], /* CJK Ideograph */ + [0x7748, 0x7748], /* CJK Ideograph */ + [0x7749, 0x7749], /* CJK Ideograph */ + [0x774a, 0x774a], /* CJK Ideograph */ + [0x774b, 0x774b], /* CJK Ideograph */ + [0x774c, 0x774c], /* CJK Ideograph */ + [0x774d, 0x774d], /* CJK Ideograph */ + [0x774e, 0x774e], /* CJK Ideograph */ + [0x774f, 0x774f], /* CJK Ideograph */ + [0x7750, 0x7750], /* CJK Ideograph */ + [0x7751, 0x7751], /* CJK Ideograph */ + [0x7752, 0x7752], /* CJK Ideograph */ + [0x7753, 0x7753], /* CJK Ideograph */ + [0x7754, 0x7754], /* CJK Ideograph */ + [0x7755, 0x7755], /* CJK Ideograph */ + [0x7756, 0x7756], /* CJK Ideograph */ + [0x7757, 0x7757], /* CJK Ideograph */ + [0x7758, 0x7758], /* CJK Ideograph */ + [0x7759, 0x7759], /* CJK Ideograph */ + [0x775a, 0x775a], /* CJK Ideograph */ + [0x775b, 0x775b], /* CJK Ideograph */ + [0x775c, 0x775c], /* CJK Ideograph */ + [0x775d, 0x775d], /* CJK Ideograph */ + [0x775e, 0x775e], /* CJK Ideograph */ + [0x775f, 0x775f], /* CJK Ideograph */ + [0x7760, 0x7760], /* CJK Ideograph */ + [0x7761, 0x7761], /* CJK Ideograph */ + [0x7762, 0x7762], /* CJK Ideograph */ + [0x7763, 0x7763], /* CJK Ideograph */ + [0x7764, 0x7764], /* CJK Ideograph */ + [0x7765, 0x7765], /* CJK Ideograph */ + [0x7766, 0x7766], /* CJK Ideograph */ + [0x7767, 0x7767], /* CJK Ideograph */ + [0x7768, 0x7768], /* CJK Ideograph */ + [0x7769, 0x7769], /* CJK Ideograph */ + [0x776a, 0x776a], /* CJK Ideograph */ + [0x776b, 0x776b], /* CJK Ideograph */ + [0x776c, 0x776c], /* CJK Ideograph */ + [0x776d, 0x776d], /* CJK Ideograph */ + [0x776e, 0x776e], /* CJK Ideograph */ + [0x776f, 0x776f], /* CJK Ideograph */ + [0x7770, 0x7770], /* CJK Ideograph */ + [0x7771, 0x7771], /* CJK Ideograph */ + [0x7772, 0x7772], /* CJK Ideograph */ + [0x7773, 0x7773], /* CJK Ideograph */ + [0x7774, 0x7774], /* CJK Ideograph */ + [0x7775, 0x7775], /* CJK Ideograph */ + [0x7776, 0x7776], /* CJK Ideograph */ + [0x7777, 0x7777], /* CJK Ideograph */ + [0x7778, 0x7778], /* CJK Ideograph */ + [0x7779, 0x7779], /* CJK Ideograph */ + [0x777a, 0x777a], /* CJK Ideograph */ + [0x777b, 0x777b], /* CJK Ideograph */ + [0x777c, 0x777c], /* CJK Ideograph */ + [0x777d, 0x777d], /* CJK Ideograph */ + [0x777e, 0x777e], /* CJK Ideograph */ + [0x777f, 0x777f], /* CJK Ideograph */ + [0x7780, 0x7780], /* CJK Ideograph */ + [0x7781, 0x7781], /* CJK Ideograph */ + [0x7782, 0x7782], /* CJK Ideograph */ + [0x7783, 0x7783], /* CJK Ideograph */ + [0x7784, 0x7784], /* CJK Ideograph */ + [0x7785, 0x7785], /* CJK Ideograph */ + [0x7786, 0x7786], /* CJK Ideograph */ + [0x7787, 0x7787], /* CJK Ideograph */ + [0x7788, 0x7788], /* CJK Ideograph */ + [0x7789, 0x7789], /* CJK Ideograph */ + [0x778a, 0x778a], /* CJK Ideograph */ + [0x778b, 0x778b], /* CJK Ideograph */ + [0x778c, 0x778c], /* CJK Ideograph */ + [0x778d, 0x778d], /* CJK Ideograph */ + [0x778e, 0x778e], /* CJK Ideograph */ + [0x778f, 0x778f], /* CJK Ideograph */ + [0x7790, 0x7790], /* CJK Ideograph */ + [0x7791, 0x7791], /* CJK Ideograph */ + [0x7792, 0x7792], /* CJK Ideograph */ + [0x7793, 0x7793], /* CJK Ideograph */ + [0x7794, 0x7794], /* CJK Ideograph */ + [0x7795, 0x7795], /* CJK Ideograph */ + [0x7796, 0x7796], /* CJK Ideograph */ + [0x7797, 0x7797], /* CJK Ideograph */ + [0x7798, 0x7798], /* CJK Ideograph */ + [0x7799, 0x7799], /* CJK Ideograph */ + [0x779a, 0x779a], /* CJK Ideograph */ + [0x779b, 0x779b], /* CJK Ideograph */ + [0x779c, 0x779c], /* CJK Ideograph */ + [0x779d, 0x779d], /* CJK Ideograph */ + [0x779e, 0x779e], /* CJK Ideograph */ + [0x779f, 0x779f], /* CJK Ideograph */ + [0x77a0, 0x77a0], /* CJK Ideograph */ + [0x77a1, 0x77a1], /* CJK Ideograph */ + [0x77a2, 0x77a2], /* CJK Ideograph */ + [0x77a3, 0x77a3], /* CJK Ideograph */ + [0x77a4, 0x77a4], /* CJK Ideograph */ + [0x77a5, 0x77a5], /* CJK Ideograph */ + [0x77a6, 0x77a6], /* CJK Ideograph */ + [0x77a7, 0x77a7], /* CJK Ideograph */ + [0x77a8, 0x77a8], /* CJK Ideograph */ + [0x77a9, 0x77a9], /* CJK Ideograph */ + [0x77aa, 0x77aa], /* CJK Ideograph */ + [0x77ab, 0x77ab], /* CJK Ideograph */ + [0x77ac, 0x77ac], /* CJK Ideograph */ + [0x77ad, 0x77ad], /* CJK Ideograph */ + [0x77ae, 0x77ae], /* CJK Ideograph */ + [0x77af, 0x77af], /* CJK Ideograph */ + [0x77b0, 0x77b0], /* CJK Ideograph */ + [0x77b1, 0x77b1], /* CJK Ideograph */ + [0x77b2, 0x77b2], /* CJK Ideograph */ + [0x77b3, 0x77b3], /* CJK Ideograph */ + [0x77b4, 0x77b4], /* CJK Ideograph */ + [0x77b5, 0x77b5], /* CJK Ideograph */ + [0x77b6, 0x77b6], /* CJK Ideograph */ + [0x77b7, 0x77b7], /* CJK Ideograph */ + [0x77b8, 0x77b8], /* CJK Ideograph */ + [0x77b9, 0x77b9], /* CJK Ideograph */ + [0x77ba, 0x77ba], /* CJK Ideograph */ + [0x77bb, 0x77bb], /* CJK Ideograph */ + [0x77bc, 0x77bc], /* CJK Ideograph */ + [0x77bd, 0x77bd], /* CJK Ideograph */ + [0x77be, 0x77be], /* CJK Ideograph */ + [0x77bf, 0x77bf], /* CJK Ideograph */ + [0x77c0, 0x77c0], /* CJK Ideograph */ + [0x77c1, 0x77c1], /* CJK Ideograph */ + [0x77c2, 0x77c2], /* CJK Ideograph */ + [0x77c3, 0x77c3], /* CJK Ideograph */ + [0x77c4, 0x77c4], /* CJK Ideograph */ + [0x77c5, 0x77c5], /* CJK Ideograph */ + [0x77c6, 0x77c6], /* CJK Ideograph */ + [0x77c7, 0x77c7], /* CJK Ideograph */ + [0x77c8, 0x77c8], /* CJK Ideograph */ + [0x77c9, 0x77c9], /* CJK Ideograph */ + [0x77ca, 0x77ca], /* CJK Ideograph */ + [0x77cb, 0x77cb], /* CJK Ideograph */ + [0x77cc, 0x77cc], /* CJK Ideograph */ + [0x77cd, 0x77cd], /* CJK Ideograph */ + [0x77ce, 0x77ce], /* CJK Ideograph */ + [0x77cf, 0x77cf], /* CJK Ideograph */ + [0x77d0, 0x77d0], /* CJK Ideograph */ + [0x77d1, 0x77d1], /* CJK Ideograph */ + [0x77d2, 0x77d2], /* CJK Ideograph */ + [0x77d3, 0x77d3], /* CJK Ideograph */ + [0x77d4, 0x77d4], /* CJK Ideograph */ + [0x77d5, 0x77d5], /* CJK Ideograph */ + [0x77d6, 0x77d6], /* CJK Ideograph */ + [0x77d7, 0x77d7], /* CJK Ideograph */ + [0x77d8, 0x77d8], /* CJK Ideograph */ + [0x77d9, 0x77d9], /* CJK Ideograph */ + [0x77da, 0x77da], /* CJK Ideograph */ + [0x77db, 0x77db], /* CJK Ideograph */ + [0x77dc, 0x77dc], /* CJK Ideograph */ + [0x77dd, 0x77dd], /* CJK Ideograph */ + [0x77de, 0x77de], /* CJK Ideograph */ + [0x77df, 0x77df], /* CJK Ideograph */ + [0x77e0, 0x77e0], /* CJK Ideograph */ + [0x77e1, 0x77e1], /* CJK Ideograph */ + [0x77e2, 0x77e2], /* CJK Ideograph */ + [0x77e3, 0x77e3], /* CJK Ideograph */ + [0x77e4, 0x77e4], /* CJK Ideograph */ + [0x77e5, 0x77e5], /* CJK Ideograph */ + [0x77e6, 0x77e6], /* CJK Ideograph */ + [0x77e7, 0x77e7], /* CJK Ideograph */ + [0x77e8, 0x77e8], /* CJK Ideograph */ + [0x77e9, 0x77e9], /* CJK Ideograph */ + [0x77ea, 0x77ea], /* CJK Ideograph */ + [0x77eb, 0x77eb], /* CJK Ideograph */ + [0x77ec, 0x77ec], /* CJK Ideograph */ + [0x77ed, 0x77ed], /* CJK Ideograph */ + [0x77ee, 0x77ee], /* CJK Ideograph */ + [0x77ef, 0x77ef], /* CJK Ideograph */ + [0x77f0, 0x77f0], /* CJK Ideograph */ + [0x77f1, 0x77f1], /* CJK Ideograph */ + [0x77f2, 0x77f2], /* CJK Ideograph */ + [0x77f3, 0x77f3], /* CJK Ideograph */ + [0x77f4, 0x77f4], /* CJK Ideograph */ + [0x77f5, 0x77f5], /* CJK Ideograph */ + [0x77f6, 0x77f6], /* CJK Ideograph */ + [0x77f7, 0x77f7], /* CJK Ideograph */ + [0x77f8, 0x77f8], /* CJK Ideograph */ + [0x77f9, 0x77f9], /* CJK Ideograph */ + [0x77fa, 0x77fa], /* CJK Ideograph */ + [0x77fb, 0x77fb], /* CJK Ideograph */ + [0x77fc, 0x77fc], /* CJK Ideograph */ + [0x77fd, 0x77fd], /* CJK Ideograph */ + [0x77fe, 0x77fe], /* CJK Ideograph */ + [0x77ff, 0x77ff], /* CJK Ideograph */ + [0x7800, 0x7800], /* CJK Ideograph */ + [0x7801, 0x7801], /* CJK Ideograph */ + [0x7802, 0x7802], /* CJK Ideograph */ + [0x7803, 0x7803], /* CJK Ideograph */ + [0x7804, 0x7804], /* CJK Ideograph */ + [0x7805, 0x7805], /* CJK Ideograph */ + [0x7806, 0x7806], /* CJK Ideograph */ + [0x7807, 0x7807], /* CJK Ideograph */ + [0x7808, 0x7808], /* CJK Ideograph */ + [0x7809, 0x7809], /* CJK Ideograph */ + [0x780a, 0x780a], /* CJK Ideograph */ + [0x780b, 0x780b], /* CJK Ideograph */ + [0x780c, 0x780c], /* CJK Ideograph */ + [0x780d, 0x780d], /* CJK Ideograph */ + [0x780e, 0x780e], /* CJK Ideograph */ + [0x780f, 0x780f], /* CJK Ideograph */ + [0x7810, 0x7810], /* CJK Ideograph */ + [0x7811, 0x7811], /* CJK Ideograph */ + [0x7812, 0x7812], /* CJK Ideograph */ + [0x7813, 0x7813], /* CJK Ideograph */ + [0x7814, 0x7814], /* CJK Ideograph */ + [0x7815, 0x7815], /* CJK Ideograph */ + [0x7816, 0x7816], /* CJK Ideograph */ + [0x7817, 0x7817], /* CJK Ideograph */ + [0x7818, 0x7818], /* CJK Ideograph */ + [0x7819, 0x7819], /* CJK Ideograph */ + [0x781a, 0x781a], /* CJK Ideograph */ + [0x781b, 0x781b], /* CJK Ideograph */ + [0x781c, 0x781c], /* CJK Ideograph */ + [0x781d, 0x781d], /* CJK Ideograph */ + [0x781e, 0x781e], /* CJK Ideograph */ + [0x781f, 0x781f], /* CJK Ideograph */ + [0x7820, 0x7820], /* CJK Ideograph */ + [0x7821, 0x7821], /* CJK Ideograph */ + [0x7822, 0x7822], /* CJK Ideograph */ + [0x7823, 0x7823], /* CJK Ideograph */ + [0x7824, 0x7824], /* CJK Ideograph */ + [0x7825, 0x7825], /* CJK Ideograph */ + [0x7826, 0x7826], /* CJK Ideograph */ + [0x7827, 0x7827], /* CJK Ideograph */ + [0x7828, 0x7828], /* CJK Ideograph */ + [0x7829, 0x7829], /* CJK Ideograph */ + [0x782a, 0x782a], /* CJK Ideograph */ + [0x782b, 0x782b], /* CJK Ideograph */ + [0x782c, 0x782c], /* CJK Ideograph */ + [0x782d, 0x782d], /* CJK Ideograph */ + [0x782e, 0x782e], /* CJK Ideograph */ + [0x782f, 0x782f], /* CJK Ideograph */ + [0x7830, 0x7830], /* CJK Ideograph */ + [0x7831, 0x7831], /* CJK Ideograph */ + [0x7832, 0x7832], /* CJK Ideograph */ + [0x7833, 0x7833], /* CJK Ideograph */ + [0x7834, 0x7834], /* CJK Ideograph */ + [0x7835, 0x7835], /* CJK Ideograph */ + [0x7836, 0x7836], /* CJK Ideograph */ + [0x7837, 0x7837], /* CJK Ideograph */ + [0x7838, 0x7838], /* CJK Ideograph */ + [0x7839, 0x7839], /* CJK Ideograph */ + [0x783a, 0x783a], /* CJK Ideograph */ + [0x783b, 0x783b], /* CJK Ideograph */ + [0x783c, 0x783c], /* CJK Ideograph */ + [0x783d, 0x783d], /* CJK Ideograph */ + [0x783e, 0x783e], /* CJK Ideograph */ + [0x783f, 0x783f], /* CJK Ideograph */ + [0x7840, 0x7840], /* CJK Ideograph */ + [0x7841, 0x7841], /* CJK Ideograph */ + [0x7842, 0x7842], /* CJK Ideograph */ + [0x7843, 0x7843], /* CJK Ideograph */ + [0x7844, 0x7844], /* CJK Ideograph */ + [0x7845, 0x7845], /* CJK Ideograph */ + [0x7846, 0x7846], /* CJK Ideograph */ + [0x7847, 0x7847], /* CJK Ideograph */ + [0x7848, 0x7848], /* CJK Ideograph */ + [0x7849, 0x7849], /* CJK Ideograph */ + [0x784a, 0x784a], /* CJK Ideograph */ + [0x784b, 0x784b], /* CJK Ideograph */ + [0x784c, 0x784c], /* CJK Ideograph */ + [0x784d, 0x784d], /* CJK Ideograph */ + [0x784e, 0x784e], /* CJK Ideograph */ + [0x784f, 0x784f], /* CJK Ideograph */ + [0x7850, 0x7850], /* CJK Ideograph */ + [0x7851, 0x7851], /* CJK Ideograph */ + [0x7852, 0x7852], /* CJK Ideograph */ + [0x7853, 0x7853], /* CJK Ideograph */ + [0x7854, 0x7854], /* CJK Ideograph */ + [0x7855, 0x7855], /* CJK Ideograph */ + [0x7856, 0x7856], /* CJK Ideograph */ + [0x7857, 0x7857], /* CJK Ideograph */ + [0x7858, 0x7858], /* CJK Ideograph */ + [0x7859, 0x7859], /* CJK Ideograph */ + [0x785a, 0x785a], /* CJK Ideograph */ + [0x785b, 0x785b], /* CJK Ideograph */ + [0x785c, 0x785c], /* CJK Ideograph */ + [0x785d, 0x785d], /* CJK Ideograph */ + [0x785e, 0x785e], /* CJK Ideograph */ + [0x785f, 0x785f], /* CJK Ideograph */ + [0x7860, 0x7860], /* CJK Ideograph */ + [0x7861, 0x7861], /* CJK Ideograph */ + [0x7862, 0x7862], /* CJK Ideograph */ + [0x7863, 0x7863], /* CJK Ideograph */ + [0x7864, 0x7864], /* CJK Ideograph */ + [0x7865, 0x7865], /* CJK Ideograph */ + [0x7866, 0x7866], /* CJK Ideograph */ + [0x7867, 0x7867], /* CJK Ideograph */ + [0x7868, 0x7868], /* CJK Ideograph */ + [0x7869, 0x7869], /* CJK Ideograph */ + [0x786a, 0x786a], /* CJK Ideograph */ + [0x786b, 0x786b], /* CJK Ideograph */ + [0x786c, 0x786c], /* CJK Ideograph */ + [0x786d, 0x786d], /* CJK Ideograph */ + [0x786e, 0x786e], /* CJK Ideograph */ + [0x786f, 0x786f], /* CJK Ideograph */ + [0x7870, 0x7870], /* CJK Ideograph */ + [0x7871, 0x7871], /* CJK Ideograph */ + [0x7872, 0x7872], /* CJK Ideograph */ + [0x7873, 0x7873], /* CJK Ideograph */ + [0x7874, 0x7874], /* CJK Ideograph */ + [0x7875, 0x7875], /* CJK Ideograph */ + [0x7876, 0x7876], /* CJK Ideograph */ + [0x7877, 0x7877], /* CJK Ideograph */ + [0x7878, 0x7878], /* CJK Ideograph */ + [0x7879, 0x7879], /* CJK Ideograph */ + [0x787a, 0x787a], /* CJK Ideograph */ + [0x787b, 0x787b], /* CJK Ideograph */ + [0x787c, 0x787c], /* CJK Ideograph */ + [0x787d, 0x787d], /* CJK Ideograph */ + [0x787e, 0x787e], /* CJK Ideograph */ + [0x787f, 0x787f], /* CJK Ideograph */ + [0x7880, 0x7880], /* CJK Ideograph */ + [0x7881, 0x7881], /* CJK Ideograph */ + [0x7882, 0x7882], /* CJK Ideograph */ + [0x7883, 0x7883], /* CJK Ideograph */ + [0x7884, 0x7884], /* CJK Ideograph */ + [0x7885, 0x7885], /* CJK Ideograph */ + [0x7886, 0x7886], /* CJK Ideograph */ + [0x7887, 0x7887], /* CJK Ideograph */ + [0x7888, 0x7888], /* CJK Ideograph */ + [0x7889, 0x7889], /* CJK Ideograph */ + [0x788a, 0x788a], /* CJK Ideograph */ + [0x788b, 0x788b], /* CJK Ideograph */ + [0x788c, 0x788c], /* CJK Ideograph */ + [0x788d, 0x788d], /* CJK Ideograph */ + [0x788e, 0x788e], /* CJK Ideograph */ + [0x788f, 0x788f], /* CJK Ideograph */ + [0x7890, 0x7890], /* CJK Ideograph */ + [0x7891, 0x7891], /* CJK Ideograph */ + [0x7892, 0x7892], /* CJK Ideograph */ + [0x7893, 0x7893], /* CJK Ideograph */ + [0x7894, 0x7894], /* CJK Ideograph */ + [0x7895, 0x7895], /* CJK Ideograph */ + [0x7896, 0x7896], /* CJK Ideograph */ + [0x7897, 0x7897], /* CJK Ideograph */ + [0x7898, 0x7898], /* CJK Ideograph */ + [0x7899, 0x7899], /* CJK Ideograph */ + [0x789a, 0x789a], /* CJK Ideograph */ + [0x789b, 0x789b], /* CJK Ideograph */ + [0x789c, 0x789c], /* CJK Ideograph */ + [0x789d, 0x789d], /* CJK Ideograph */ + [0x789e, 0x789e], /* CJK Ideograph */ + [0x789f, 0x789f], /* CJK Ideograph */ + [0x78a0, 0x78a0], /* CJK Ideograph */ + [0x78a1, 0x78a1], /* CJK Ideograph */ + [0x78a2, 0x78a2], /* CJK Ideograph */ + [0x78a3, 0x78a3], /* CJK Ideograph */ + [0x78a4, 0x78a4], /* CJK Ideograph */ + [0x78a5, 0x78a5], /* CJK Ideograph */ + [0x78a6, 0x78a6], /* CJK Ideograph */ + [0x78a7, 0x78a7], /* CJK Ideograph */ + [0x78a8, 0x78a8], /* CJK Ideograph */ + [0x78a9, 0x78a9], /* CJK Ideograph */ + [0x78aa, 0x78aa], /* CJK Ideograph */ + [0x78ab, 0x78ab], /* CJK Ideograph */ + [0x78ac, 0x78ac], /* CJK Ideograph */ + [0x78ad, 0x78ad], /* CJK Ideograph */ + [0x78ae, 0x78ae], /* CJK Ideograph */ + [0x78af, 0x78af], /* CJK Ideograph */ + [0x78b0, 0x78b0], /* CJK Ideograph */ + [0x78b1, 0x78b1], /* CJK Ideograph */ + [0x78b2, 0x78b2], /* CJK Ideograph */ + [0x78b3, 0x78b3], /* CJK Ideograph */ + [0x78b4, 0x78b4], /* CJK Ideograph */ + [0x78b5, 0x78b5], /* CJK Ideograph */ + [0x78b6, 0x78b6], /* CJK Ideograph */ + [0x78b7, 0x78b7], /* CJK Ideograph */ + [0x78b8, 0x78b8], /* CJK Ideograph */ + [0x78b9, 0x78b9], /* CJK Ideograph */ + [0x78ba, 0x78ba], /* CJK Ideograph */ + [0x78bb, 0x78bb], /* CJK Ideograph */ + [0x78bc, 0x78bc], /* CJK Ideograph */ + [0x78bd, 0x78bd], /* CJK Ideograph */ + [0x78be, 0x78be], /* CJK Ideograph */ + [0x78bf, 0x78bf], /* CJK Ideograph */ + [0x78c0, 0x78c0], /* CJK Ideograph */ + [0x78c1, 0x78c1], /* CJK Ideograph */ + [0x78c2, 0x78c2], /* CJK Ideograph */ + [0x78c3, 0x78c3], /* CJK Ideograph */ + [0x78c4, 0x78c4], /* CJK Ideograph */ + [0x78c5, 0x78c5], /* CJK Ideograph */ + [0x78c6, 0x78c6], /* CJK Ideograph */ + [0x78c7, 0x78c7], /* CJK Ideograph */ + [0x78c8, 0x78c8], /* CJK Ideograph */ + [0x78c9, 0x78c9], /* CJK Ideograph */ + [0x78ca, 0x78ca], /* CJK Ideograph */ + [0x78cb, 0x78cb], /* CJK Ideograph */ + [0x78cc, 0x78cc], /* CJK Ideograph */ + [0x78cd, 0x78cd], /* CJK Ideograph */ + [0x78ce, 0x78ce], /* CJK Ideograph */ + [0x78cf, 0x78cf], /* CJK Ideograph */ + [0x78d0, 0x78d0], /* CJK Ideograph */ + [0x78d1, 0x78d1], /* CJK Ideograph */ + [0x78d2, 0x78d2], /* CJK Ideograph */ + [0x78d3, 0x78d3], /* CJK Ideograph */ + [0x78d4, 0x78d4], /* CJK Ideograph */ + [0x78d5, 0x78d5], /* CJK Ideograph */ + [0x78d6, 0x78d6], /* CJK Ideograph */ + [0x78d7, 0x78d7], /* CJK Ideograph */ + [0x78d8, 0x78d8], /* CJK Ideograph */ + [0x78d9, 0x78d9], /* CJK Ideograph */ + [0x78da, 0x78da], /* CJK Ideograph */ + [0x78db, 0x78db], /* CJK Ideograph */ + [0x78dc, 0x78dc], /* CJK Ideograph */ + [0x78dd, 0x78dd], /* CJK Ideograph */ + [0x78de, 0x78de], /* CJK Ideograph */ + [0x78df, 0x78df], /* CJK Ideograph */ + [0x78e0, 0x78e0], /* CJK Ideograph */ + [0x78e1, 0x78e1], /* CJK Ideograph */ + [0x78e2, 0x78e2], /* CJK Ideograph */ + [0x78e3, 0x78e3], /* CJK Ideograph */ + [0x78e4, 0x78e4], /* CJK Ideograph */ + [0x78e5, 0x78e5], /* CJK Ideograph */ + [0x78e6, 0x78e6], /* CJK Ideograph */ + [0x78e7, 0x78e7], /* CJK Ideograph */ + [0x78e8, 0x78e8], /* CJK Ideograph */ + [0x78e9, 0x78e9], /* CJK Ideograph */ + [0x78ea, 0x78ea], /* CJK Ideograph */ + [0x78eb, 0x78eb], /* CJK Ideograph */ + [0x78ec, 0x78ec], /* CJK Ideograph */ + [0x78ed, 0x78ed], /* CJK Ideograph */ + [0x78ee, 0x78ee], /* CJK Ideograph */ + [0x78ef, 0x78ef], /* CJK Ideograph */ + [0x78f0, 0x78f0], /* CJK Ideograph */ + [0x78f1, 0x78f1], /* CJK Ideograph */ + [0x78f2, 0x78f2], /* CJK Ideograph */ + [0x78f3, 0x78f3], /* CJK Ideograph */ + [0x78f4, 0x78f4], /* CJK Ideograph */ + [0x78f5, 0x78f5], /* CJK Ideograph */ + [0x78f6, 0x78f6], /* CJK Ideograph */ + [0x78f7, 0x78f7], /* CJK Ideograph */ + [0x78f8, 0x78f8], /* CJK Ideograph */ + [0x78f9, 0x78f9], /* CJK Ideograph */ + [0x78fa, 0x78fa], /* CJK Ideograph */ + [0x78fb, 0x78fb], /* CJK Ideograph */ + [0x78fc, 0x78fc], /* CJK Ideograph */ + [0x78fd, 0x78fd], /* CJK Ideograph */ + [0x78fe, 0x78fe], /* CJK Ideograph */ + [0x78ff, 0x78ff], /* CJK Ideograph */ + [0x7900, 0x7900], /* CJK Ideograph */ + [0x7901, 0x7901], /* CJK Ideograph */ + [0x7902, 0x7902], /* CJK Ideograph */ + [0x7903, 0x7903], /* CJK Ideograph */ + [0x7904, 0x7904], /* CJK Ideograph */ + [0x7905, 0x7905], /* CJK Ideograph */ + [0x7906, 0x7906], /* CJK Ideograph */ + [0x7907, 0x7907], /* CJK Ideograph */ + [0x7908, 0x7908], /* CJK Ideograph */ + [0x7909, 0x7909], /* CJK Ideograph */ + [0x790a, 0x790a], /* CJK Ideograph */ + [0x790b, 0x790b], /* CJK Ideograph */ + [0x790c, 0x790c], /* CJK Ideograph */ + [0x790d, 0x790d], /* CJK Ideograph */ + [0x790e, 0x790e], /* CJK Ideograph */ + [0x790f, 0x790f], /* CJK Ideograph */ + [0x7910, 0x7910], /* CJK Ideograph */ + [0x7911, 0x7911], /* CJK Ideograph */ + [0x7912, 0x7912], /* CJK Ideograph */ + [0x7913, 0x7913], /* CJK Ideograph */ + [0x7914, 0x7914], /* CJK Ideograph */ + [0x7915, 0x7915], /* CJK Ideograph */ + [0x7916, 0x7916], /* CJK Ideograph */ + [0x7917, 0x7917], /* CJK Ideograph */ + [0x7918, 0x7918], /* CJK Ideograph */ + [0x7919, 0x7919], /* CJK Ideograph */ + [0x791a, 0x791a], /* CJK Ideograph */ + [0x791b, 0x791b], /* CJK Ideograph */ + [0x791c, 0x791c], /* CJK Ideograph */ + [0x791d, 0x791d], /* CJK Ideograph */ + [0x791e, 0x791e], /* CJK Ideograph */ + [0x791f, 0x791f], /* CJK Ideograph */ + [0x7920, 0x7920], /* CJK Ideograph */ + [0x7921, 0x7921], /* CJK Ideograph */ + [0x7922, 0x7922], /* CJK Ideograph */ + [0x7923, 0x7923], /* CJK Ideograph */ + [0x7924, 0x7924], /* CJK Ideograph */ + [0x7925, 0x7925], /* CJK Ideograph */ + [0x7926, 0x7926], /* CJK Ideograph */ + [0x7927, 0x7927], /* CJK Ideograph */ + [0x7928, 0x7928], /* CJK Ideograph */ + [0x7929, 0x7929], /* CJK Ideograph */ + [0x792a, 0x792a], /* CJK Ideograph */ + [0x792b, 0x792b], /* CJK Ideograph */ + [0x792c, 0x792c], /* CJK Ideograph */ + [0x792d, 0x792d], /* CJK Ideograph */ + [0x792e, 0x792e], /* CJK Ideograph */ + [0x792f, 0x792f], /* CJK Ideograph */ + [0x7930, 0x7930], /* CJK Ideograph */ + [0x7931, 0x7931], /* CJK Ideograph */ + [0x7932, 0x7932], /* CJK Ideograph */ + [0x7933, 0x7933], /* CJK Ideograph */ + [0x7934, 0x7934], /* CJK Ideograph */ + [0x7935, 0x7935], /* CJK Ideograph */ + [0x7936, 0x7936], /* CJK Ideograph */ + [0x7937, 0x7937], /* CJK Ideograph */ + [0x7938, 0x7938], /* CJK Ideograph */ + [0x7939, 0x7939], /* CJK Ideograph */ + [0x793a, 0x793a], /* CJK Ideograph */ + [0x793b, 0x793b], /* CJK Ideograph */ + [0x793c, 0x793c], /* CJK Ideograph */ + [0x793d, 0x793d], /* CJK Ideograph */ + [0x793e, 0x793e], /* CJK Ideograph */ + [0x793f, 0x793f], /* CJK Ideograph */ + [0x7940, 0x7940], /* CJK Ideograph */ + [0x7941, 0x7941], /* CJK Ideograph */ + [0x7942, 0x7942], /* CJK Ideograph */ + [0x7943, 0x7943], /* CJK Ideograph */ + [0x7944, 0x7944], /* CJK Ideograph */ + [0x7945, 0x7945], /* CJK Ideograph */ + [0x7946, 0x7946], /* CJK Ideograph */ + [0x7947, 0x7947], /* CJK Ideograph */ + [0x7948, 0x7948], /* CJK Ideograph */ + [0x7949, 0x7949], /* CJK Ideograph */ + [0x794a, 0x794a], /* CJK Ideograph */ + [0x794b, 0x794b], /* CJK Ideograph */ + [0x794c, 0x794c], /* CJK Ideograph */ + [0x794d, 0x794d], /* CJK Ideograph */ + [0x794e, 0x794e], /* CJK Ideograph */ + [0x794f, 0x794f], /* CJK Ideograph */ + [0x7950, 0x7950], /* CJK Ideograph */ + [0x7951, 0x7951], /* CJK Ideograph */ + [0x7952, 0x7952], /* CJK Ideograph */ + [0x7953, 0x7953], /* CJK Ideograph */ + [0x7954, 0x7954], /* CJK Ideograph */ + [0x7955, 0x7955], /* CJK Ideograph */ + [0x7956, 0x7956], /* CJK Ideograph */ + [0x7957, 0x7957], /* CJK Ideograph */ + [0x7958, 0x7958], /* CJK Ideograph */ + [0x7959, 0x7959], /* CJK Ideograph */ + [0x795a, 0x795a], /* CJK Ideograph */ + [0x795b, 0x795b], /* CJK Ideograph */ + [0x795c, 0x795c], /* CJK Ideograph */ + [0x795d, 0x795d], /* CJK Ideograph */ + [0x795e, 0x795e], /* CJK Ideograph */ + [0x795f, 0x795f], /* CJK Ideograph */ + [0x7960, 0x7960], /* CJK Ideograph */ + [0x7961, 0x7961], /* CJK Ideograph */ + [0x7962, 0x7962], /* CJK Ideograph */ + [0x7963, 0x7963], /* CJK Ideograph */ + [0x7964, 0x7964], /* CJK Ideograph */ + [0x7965, 0x7965], /* CJK Ideograph */ + [0x7966, 0x7966], /* CJK Ideograph */ + [0x7967, 0x7967], /* CJK Ideograph */ + [0x7968, 0x7968], /* CJK Ideograph */ + [0x7969, 0x7969], /* CJK Ideograph */ + [0x796a, 0x796a], /* CJK Ideograph */ + [0x796b, 0x796b], /* CJK Ideograph */ + [0x796c, 0x796c], /* CJK Ideograph */ + [0x796d, 0x796d], /* CJK Ideograph */ + [0x796e, 0x796e], /* CJK Ideograph */ + [0x796f, 0x796f], /* CJK Ideograph */ + [0x7970, 0x7970], /* CJK Ideograph */ + [0x7971, 0x7971], /* CJK Ideograph */ + [0x7972, 0x7972], /* CJK Ideograph */ + [0x7973, 0x7973], /* CJK Ideograph */ + [0x7974, 0x7974], /* CJK Ideograph */ + [0x7975, 0x7975], /* CJK Ideograph */ + [0x7976, 0x7976], /* CJK Ideograph */ + [0x7977, 0x7977], /* CJK Ideograph */ + [0x7978, 0x7978], /* CJK Ideograph */ + [0x7979, 0x7979], /* CJK Ideograph */ + [0x797a, 0x797a], /* CJK Ideograph */ + [0x797b, 0x797b], /* CJK Ideograph */ + [0x797c, 0x797c], /* CJK Ideograph */ + [0x797d, 0x797d], /* CJK Ideograph */ + [0x797e, 0x797e], /* CJK Ideograph */ + [0x797f, 0x797f], /* CJK Ideograph */ + [0x7980, 0x7980], /* CJK Ideograph */ + [0x7981, 0x7981], /* CJK Ideograph */ + [0x7982, 0x7982], /* CJK Ideograph */ + [0x7983, 0x7983], /* CJK Ideograph */ + [0x7984, 0x7984], /* CJK Ideograph */ + [0x7985, 0x7985], /* CJK Ideograph */ + [0x7986, 0x7986], /* CJK Ideograph */ + [0x7987, 0x7987], /* CJK Ideograph */ + [0x7988, 0x7988], /* CJK Ideograph */ + [0x7989, 0x7989], /* CJK Ideograph */ + [0x798a, 0x798a], /* CJK Ideograph */ + [0x798b, 0x798b], /* CJK Ideograph */ + [0x798c, 0x798c], /* CJK Ideograph */ + [0x798d, 0x798d], /* CJK Ideograph */ + [0x798e, 0x798e], /* CJK Ideograph */ + [0x798f, 0x798f], /* CJK Ideograph */ + [0x7990, 0x7990], /* CJK Ideograph */ + [0x7991, 0x7991], /* CJK Ideograph */ + [0x7992, 0x7992], /* CJK Ideograph */ + [0x7993, 0x7993], /* CJK Ideograph */ + [0x7994, 0x7994], /* CJK Ideograph */ + [0x7995, 0x7995], /* CJK Ideograph */ + [0x7996, 0x7996], /* CJK Ideograph */ + [0x7997, 0x7997], /* CJK Ideograph */ + [0x7998, 0x7998], /* CJK Ideograph */ + [0x7999, 0x7999], /* CJK Ideograph */ + [0x799a, 0x799a], /* CJK Ideograph */ + [0x799b, 0x799b], /* CJK Ideograph */ + [0x799c, 0x799c], /* CJK Ideograph */ + [0x799d, 0x799d], /* CJK Ideograph */ + [0x799e, 0x799e], /* CJK Ideograph */ + [0x799f, 0x799f], /* CJK Ideograph */ + [0x79a0, 0x79a0], /* CJK Ideograph */ + [0x79a1, 0x79a1], /* CJK Ideograph */ + [0x79a2, 0x79a2], /* CJK Ideograph */ + [0x79a3, 0x79a3], /* CJK Ideograph */ + [0x79a4, 0x79a4], /* CJK Ideograph */ + [0x79a5, 0x79a5], /* CJK Ideograph */ + [0x79a6, 0x79a6], /* CJK Ideograph */ + [0x79a7, 0x79a7], /* CJK Ideograph */ + [0x79a8, 0x79a8], /* CJK Ideograph */ + [0x79a9, 0x79a9], /* CJK Ideograph */ + [0x79aa, 0x79aa], /* CJK Ideograph */ + [0x79ab, 0x79ab], /* CJK Ideograph */ + [0x79ac, 0x79ac], /* CJK Ideograph */ + [0x79ad, 0x79ad], /* CJK Ideograph */ + [0x79ae, 0x79ae], /* CJK Ideograph */ + [0x79af, 0x79af], /* CJK Ideograph */ + [0x79b0, 0x79b0], /* CJK Ideograph */ + [0x79b1, 0x79b1], /* CJK Ideograph */ + [0x79b2, 0x79b2], /* CJK Ideograph */ + [0x79b3, 0x79b3], /* CJK Ideograph */ + [0x79b4, 0x79b4], /* CJK Ideograph */ + [0x79b5, 0x79b5], /* CJK Ideograph */ + [0x79b6, 0x79b6], /* CJK Ideograph */ + [0x79b7, 0x79b7], /* CJK Ideograph */ + [0x79b8, 0x79b8], /* CJK Ideograph */ + [0x79b9, 0x79b9], /* CJK Ideograph */ + [0x79ba, 0x79ba], /* CJK Ideograph */ + [0x79bb, 0x79bb], /* CJK Ideograph */ + [0x79bc, 0x79bc], /* CJK Ideograph */ + [0x79bd, 0x79bd], /* CJK Ideograph */ + [0x79be, 0x79be], /* CJK Ideograph */ + [0x79bf, 0x79bf], /* CJK Ideograph */ + [0x79c0, 0x79c0], /* CJK Ideograph */ + [0x79c1, 0x79c1], /* CJK Ideograph */ + [0x79c2, 0x79c2], /* CJK Ideograph */ + [0x79c3, 0x79c3], /* CJK Ideograph */ + [0x79c4, 0x79c4], /* CJK Ideograph */ + [0x79c5, 0x79c5], /* CJK Ideograph */ + [0x79c6, 0x79c6], /* CJK Ideograph */ + [0x79c7, 0x79c7], /* CJK Ideograph */ + [0x79c8, 0x79c8], /* CJK Ideograph */ + [0x79c9, 0x79c9], /* CJK Ideograph */ + [0x79ca, 0x79ca], /* CJK Ideograph */ + [0x79cb, 0x79cb], /* CJK Ideograph */ + [0x79cc, 0x79cc], /* CJK Ideograph */ + [0x79cd, 0x79cd], /* CJK Ideograph */ + [0x79ce, 0x79ce], /* CJK Ideograph */ + [0x79cf, 0x79cf], /* CJK Ideograph */ + [0x79d0, 0x79d0], /* CJK Ideograph */ + [0x79d1, 0x79d1], /* CJK Ideograph */ + [0x79d2, 0x79d2], /* CJK Ideograph */ + [0x79d3, 0x79d3], /* CJK Ideograph */ + [0x79d4, 0x79d4], /* CJK Ideograph */ + [0x79d5, 0x79d5], /* CJK Ideograph */ + [0x79d6, 0x79d6], /* CJK Ideograph */ + [0x79d7, 0x79d7], /* CJK Ideograph */ + [0x79d8, 0x79d8], /* CJK Ideograph */ + [0x79d9, 0x79d9], /* CJK Ideograph */ + [0x79da, 0x79da], /* CJK Ideograph */ + [0x79db, 0x79db], /* CJK Ideograph */ + [0x79dc, 0x79dc], /* CJK Ideograph */ + [0x79dd, 0x79dd], /* CJK Ideograph */ + [0x79de, 0x79de], /* CJK Ideograph */ + [0x79df, 0x79df], /* CJK Ideograph */ + [0x79e0, 0x79e0], /* CJK Ideograph */ + [0x79e1, 0x79e1], /* CJK Ideograph */ + [0x79e2, 0x79e2], /* CJK Ideograph */ + [0x79e3, 0x79e3], /* CJK Ideograph */ + [0x79e4, 0x79e4], /* CJK Ideograph */ + [0x79e5, 0x79e5], /* CJK Ideograph */ + [0x79e6, 0x79e6], /* CJK Ideograph */ + [0x79e7, 0x79e7], /* CJK Ideograph */ + [0x79e8, 0x79e8], /* CJK Ideograph */ + [0x79e9, 0x79e9], /* CJK Ideograph */ + [0x79ea, 0x79ea], /* CJK Ideograph */ + [0x79eb, 0x79eb], /* CJK Ideograph */ + [0x79ec, 0x79ec], /* CJK Ideograph */ + [0x79ed, 0x79ed], /* CJK Ideograph */ + [0x79ee, 0x79ee], /* CJK Ideograph */ + [0x79ef, 0x79ef], /* CJK Ideograph */ + [0x79f0, 0x79f0], /* CJK Ideograph */ + [0x79f1, 0x79f1], /* CJK Ideograph */ + [0x79f2, 0x79f2], /* CJK Ideograph */ + [0x79f3, 0x79f3], /* CJK Ideograph */ + [0x79f4, 0x79f4], /* CJK Ideograph */ + [0x79f5, 0x79f5], /* CJK Ideograph */ + [0x79f6, 0x79f6], /* CJK Ideograph */ + [0x79f7, 0x79f7], /* CJK Ideograph */ + [0x79f8, 0x79f8], /* CJK Ideograph */ + [0x79f9, 0x79f9], /* CJK Ideograph */ + [0x79fa, 0x79fa], /* CJK Ideograph */ + [0x79fb, 0x79fb], /* CJK Ideograph */ + [0x79fc, 0x79fc], /* CJK Ideograph */ + [0x79fd, 0x79fd], /* CJK Ideograph */ + [0x79fe, 0x79fe], /* CJK Ideograph */ + [0x79ff, 0x79ff], /* CJK Ideograph */ + [0x7a00, 0x7a00], /* CJK Ideograph */ + [0x7a01, 0x7a01], /* CJK Ideograph */ + [0x7a02, 0x7a02], /* CJK Ideograph */ + [0x7a03, 0x7a03], /* CJK Ideograph */ + [0x7a04, 0x7a04], /* CJK Ideograph */ + [0x7a05, 0x7a05], /* CJK Ideograph */ + [0x7a06, 0x7a06], /* CJK Ideograph */ + [0x7a07, 0x7a07], /* CJK Ideograph */ + [0x7a08, 0x7a08], /* CJK Ideograph */ + [0x7a09, 0x7a09], /* CJK Ideograph */ + [0x7a0a, 0x7a0a], /* CJK Ideograph */ + [0x7a0b, 0x7a0b], /* CJK Ideograph */ + [0x7a0c, 0x7a0c], /* CJK Ideograph */ + [0x7a0d, 0x7a0d], /* CJK Ideograph */ + [0x7a0e, 0x7a0e], /* CJK Ideograph */ + [0x7a0f, 0x7a0f], /* CJK Ideograph */ + [0x7a10, 0x7a10], /* CJK Ideograph */ + [0x7a11, 0x7a11], /* CJK Ideograph */ + [0x7a12, 0x7a12], /* CJK Ideograph */ + [0x7a13, 0x7a13], /* CJK Ideograph */ + [0x7a14, 0x7a14], /* CJK Ideograph */ + [0x7a15, 0x7a15], /* CJK Ideograph */ + [0x7a16, 0x7a16], /* CJK Ideograph */ + [0x7a17, 0x7a17], /* CJK Ideograph */ + [0x7a18, 0x7a18], /* CJK Ideograph */ + [0x7a19, 0x7a19], /* CJK Ideograph */ + [0x7a1a, 0x7a1a], /* CJK Ideograph */ + [0x7a1b, 0x7a1b], /* CJK Ideograph */ + [0x7a1c, 0x7a1c], /* CJK Ideograph */ + [0x7a1d, 0x7a1d], /* CJK Ideograph */ + [0x7a1e, 0x7a1e], /* CJK Ideograph */ + [0x7a1f, 0x7a1f], /* CJK Ideograph */ + [0x7a20, 0x7a20], /* CJK Ideograph */ + [0x7a21, 0x7a21], /* CJK Ideograph */ + [0x7a22, 0x7a22], /* CJK Ideograph */ + [0x7a23, 0x7a23], /* CJK Ideograph */ + [0x7a24, 0x7a24], /* CJK Ideograph */ + [0x7a25, 0x7a25], /* CJK Ideograph */ + [0x7a26, 0x7a26], /* CJK Ideograph */ + [0x7a27, 0x7a27], /* CJK Ideograph */ + [0x7a28, 0x7a28], /* CJK Ideograph */ + [0x7a29, 0x7a29], /* CJK Ideograph */ + [0x7a2a, 0x7a2a], /* CJK Ideograph */ + [0x7a2b, 0x7a2b], /* CJK Ideograph */ + [0x7a2c, 0x7a2c], /* CJK Ideograph */ + [0x7a2d, 0x7a2d], /* CJK Ideograph */ + [0x7a2e, 0x7a2e], /* CJK Ideograph */ + [0x7a2f, 0x7a2f], /* CJK Ideograph */ + [0x7a30, 0x7a30], /* CJK Ideograph */ + [0x7a31, 0x7a31], /* CJK Ideograph */ + [0x7a32, 0x7a32], /* CJK Ideograph */ + [0x7a33, 0x7a33], /* CJK Ideograph */ + [0x7a34, 0x7a34], /* CJK Ideograph */ + [0x7a35, 0x7a35], /* CJK Ideograph */ + [0x7a36, 0x7a36], /* CJK Ideograph */ + [0x7a37, 0x7a37], /* CJK Ideograph */ + [0x7a38, 0x7a38], /* CJK Ideograph */ + [0x7a39, 0x7a39], /* CJK Ideograph */ + [0x7a3a, 0x7a3a], /* CJK Ideograph */ + [0x7a3b, 0x7a3b], /* CJK Ideograph */ + [0x7a3c, 0x7a3c], /* CJK Ideograph */ + [0x7a3d, 0x7a3d], /* CJK Ideograph */ + [0x7a3e, 0x7a3e], /* CJK Ideograph */ + [0x7a3f, 0x7a3f], /* CJK Ideograph */ + [0x7a40, 0x7a40], /* CJK Ideograph */ + [0x7a41, 0x7a41], /* CJK Ideograph */ + [0x7a42, 0x7a42], /* CJK Ideograph */ + [0x7a43, 0x7a43], /* CJK Ideograph */ + [0x7a44, 0x7a44], /* CJK Ideograph */ + [0x7a45, 0x7a45], /* CJK Ideograph */ + [0x7a46, 0x7a46], /* CJK Ideograph */ + [0x7a47, 0x7a47], /* CJK Ideograph */ + [0x7a48, 0x7a48], /* CJK Ideograph */ + [0x7a49, 0x7a49], /* CJK Ideograph */ + [0x7a4a, 0x7a4a], /* CJK Ideograph */ + [0x7a4b, 0x7a4b], /* CJK Ideograph */ + [0x7a4c, 0x7a4c], /* CJK Ideograph */ + [0x7a4d, 0x7a4d], /* CJK Ideograph */ + [0x7a4e, 0x7a4e], /* CJK Ideograph */ + [0x7a4f, 0x7a4f], /* CJK Ideograph */ + [0x7a50, 0x7a50], /* CJK Ideograph */ + [0x7a51, 0x7a51], /* CJK Ideograph */ + [0x7a52, 0x7a52], /* CJK Ideograph */ + [0x7a53, 0x7a53], /* CJK Ideograph */ + [0x7a54, 0x7a54], /* CJK Ideograph */ + [0x7a55, 0x7a55], /* CJK Ideograph */ + [0x7a56, 0x7a56], /* CJK Ideograph */ + [0x7a57, 0x7a57], /* CJK Ideograph */ + [0x7a58, 0x7a58], /* CJK Ideograph */ + [0x7a59, 0x7a59], /* CJK Ideograph */ + [0x7a5a, 0x7a5a], /* CJK Ideograph */ + [0x7a5b, 0x7a5b], /* CJK Ideograph */ + [0x7a5c, 0x7a5c], /* CJK Ideograph */ + [0x7a5d, 0x7a5d], /* CJK Ideograph */ + [0x7a5e, 0x7a5e], /* CJK Ideograph */ + [0x7a5f, 0x7a5f], /* CJK Ideograph */ + [0x7a60, 0x7a60], /* CJK Ideograph */ + [0x7a61, 0x7a61], /* CJK Ideograph */ + [0x7a62, 0x7a62], /* CJK Ideograph */ + [0x7a63, 0x7a63], /* CJK Ideograph */ + [0x7a64, 0x7a64], /* CJK Ideograph */ + [0x7a65, 0x7a65], /* CJK Ideograph */ + [0x7a66, 0x7a66], /* CJK Ideograph */ + [0x7a67, 0x7a67], /* CJK Ideograph */ + [0x7a68, 0x7a68], /* CJK Ideograph */ + [0x7a69, 0x7a69], /* CJK Ideograph */ + [0x7a6a, 0x7a6a], /* CJK Ideograph */ + [0x7a6b, 0x7a6b], /* CJK Ideograph */ + [0x7a6c, 0x7a6c], /* CJK Ideograph */ + [0x7a6d, 0x7a6d], /* CJK Ideograph */ + [0x7a6e, 0x7a6e], /* CJK Ideograph */ + [0x7a6f, 0x7a6f], /* CJK Ideograph */ + [0x7a70, 0x7a70], /* CJK Ideograph */ + [0x7a71, 0x7a71], /* CJK Ideograph */ + [0x7a72, 0x7a72], /* CJK Ideograph */ + [0x7a73, 0x7a73], /* CJK Ideograph */ + [0x7a74, 0x7a74], /* CJK Ideograph */ + [0x7a75, 0x7a75], /* CJK Ideograph */ + [0x7a76, 0x7a76], /* CJK Ideograph */ + [0x7a77, 0x7a77], /* CJK Ideograph */ + [0x7a78, 0x7a78], /* CJK Ideograph */ + [0x7a79, 0x7a79], /* CJK Ideograph */ + [0x7a7a, 0x7a7a], /* CJK Ideograph */ + [0x7a7b, 0x7a7b], /* CJK Ideograph */ + [0x7a7c, 0x7a7c], /* CJK Ideograph */ + [0x7a7d, 0x7a7d], /* CJK Ideograph */ + [0x7a7e, 0x7a7e], /* CJK Ideograph */ + [0x7a7f, 0x7a7f], /* CJK Ideograph */ + [0x7a80, 0x7a80], /* CJK Ideograph */ + [0x7a81, 0x7a81], /* CJK Ideograph */ + [0x7a82, 0x7a82], /* CJK Ideograph */ + [0x7a83, 0x7a83], /* CJK Ideograph */ + [0x7a84, 0x7a84], /* CJK Ideograph */ + [0x7a85, 0x7a85], /* CJK Ideograph */ + [0x7a86, 0x7a86], /* CJK Ideograph */ + [0x7a87, 0x7a87], /* CJK Ideograph */ + [0x7a88, 0x7a88], /* CJK Ideograph */ + [0x7a89, 0x7a89], /* CJK Ideograph */ + [0x7a8a, 0x7a8a], /* CJK Ideograph */ + [0x7a8b, 0x7a8b], /* CJK Ideograph */ + [0x7a8c, 0x7a8c], /* CJK Ideograph */ + [0x7a8d, 0x7a8d], /* CJK Ideograph */ + [0x7a8e, 0x7a8e], /* CJK Ideograph */ + [0x7a8f, 0x7a8f], /* CJK Ideograph */ + [0x7a90, 0x7a90], /* CJK Ideograph */ + [0x7a91, 0x7a91], /* CJK Ideograph */ + [0x7a92, 0x7a92], /* CJK Ideograph */ + [0x7a93, 0x7a93], /* CJK Ideograph */ + [0x7a94, 0x7a94], /* CJK Ideograph */ + [0x7a95, 0x7a95], /* CJK Ideograph */ + [0x7a96, 0x7a96], /* CJK Ideograph */ + [0x7a97, 0x7a97], /* CJK Ideograph */ + [0x7a98, 0x7a98], /* CJK Ideograph */ + [0x7a99, 0x7a99], /* CJK Ideograph */ + [0x7a9a, 0x7a9a], /* CJK Ideograph */ + [0x7a9b, 0x7a9b], /* CJK Ideograph */ + [0x7a9c, 0x7a9c], /* CJK Ideograph */ + [0x7a9d, 0x7a9d], /* CJK Ideograph */ + [0x7a9e, 0x7a9e], /* CJK Ideograph */ + [0x7a9f, 0x7a9f], /* CJK Ideograph */ + [0x7aa0, 0x7aa0], /* CJK Ideograph */ + [0x7aa1, 0x7aa1], /* CJK Ideograph */ + [0x7aa2, 0x7aa2], /* CJK Ideograph */ + [0x7aa3, 0x7aa3], /* CJK Ideograph */ + [0x7aa4, 0x7aa4], /* CJK Ideograph */ + [0x7aa5, 0x7aa5], /* CJK Ideograph */ + [0x7aa6, 0x7aa6], /* CJK Ideograph */ + [0x7aa7, 0x7aa7], /* CJK Ideograph */ + [0x7aa8, 0x7aa8], /* CJK Ideograph */ + [0x7aa9, 0x7aa9], /* CJK Ideograph */ + [0x7aaa, 0x7aaa], /* CJK Ideograph */ + [0x7aab, 0x7aab], /* CJK Ideograph */ + [0x7aac, 0x7aac], /* CJK Ideograph */ + [0x7aad, 0x7aad], /* CJK Ideograph */ + [0x7aae, 0x7aae], /* CJK Ideograph */ + [0x7aaf, 0x7aaf], /* CJK Ideograph */ + [0x7ab0, 0x7ab0], /* CJK Ideograph */ + [0x7ab1, 0x7ab1], /* CJK Ideograph */ + [0x7ab2, 0x7ab2], /* CJK Ideograph */ + [0x7ab3, 0x7ab3], /* CJK Ideograph */ + [0x7ab4, 0x7ab4], /* CJK Ideograph */ + [0x7ab5, 0x7ab5], /* CJK Ideograph */ + [0x7ab6, 0x7ab6], /* CJK Ideograph */ + [0x7ab7, 0x7ab7], /* CJK Ideograph */ + [0x7ab8, 0x7ab8], /* CJK Ideograph */ + [0x7ab9, 0x7ab9], /* CJK Ideograph */ + [0x7aba, 0x7aba], /* CJK Ideograph */ + [0x7abb, 0x7abb], /* CJK Ideograph */ + [0x7abc, 0x7abc], /* CJK Ideograph */ + [0x7abd, 0x7abd], /* CJK Ideograph */ + [0x7abe, 0x7abe], /* CJK Ideograph */ + [0x7abf, 0x7abf], /* CJK Ideograph */ + [0x7ac0, 0x7ac0], /* CJK Ideograph */ + [0x7ac1, 0x7ac1], /* CJK Ideograph */ + [0x7ac2, 0x7ac2], /* CJK Ideograph */ + [0x7ac3, 0x7ac3], /* CJK Ideograph */ + [0x7ac4, 0x7ac4], /* CJK Ideograph */ + [0x7ac5, 0x7ac5], /* CJK Ideograph */ + [0x7ac6, 0x7ac6], /* CJK Ideograph */ + [0x7ac7, 0x7ac7], /* CJK Ideograph */ + [0x7ac8, 0x7ac8], /* CJK Ideograph */ + [0x7ac9, 0x7ac9], /* CJK Ideograph */ + [0x7aca, 0x7aca], /* CJK Ideograph */ + [0x7acb, 0x7acb], /* CJK Ideograph */ + [0x7acc, 0x7acc], /* CJK Ideograph */ + [0x7acd, 0x7acd], /* CJK Ideograph */ + [0x7ace, 0x7ace], /* CJK Ideograph */ + [0x7acf, 0x7acf], /* CJK Ideograph */ + [0x7ad0, 0x7ad0], /* CJK Ideograph */ + [0x7ad1, 0x7ad1], /* CJK Ideograph */ + [0x7ad2, 0x7ad2], /* CJK Ideograph */ + [0x7ad3, 0x7ad3], /* CJK Ideograph */ + [0x7ad4, 0x7ad4], /* CJK Ideograph */ + [0x7ad5, 0x7ad5], /* CJK Ideograph */ + [0x7ad6, 0x7ad6], /* CJK Ideograph */ + [0x7ad7, 0x7ad7], /* CJK Ideograph */ + [0x7ad8, 0x7ad8], /* CJK Ideograph */ + [0x7ad9, 0x7ad9], /* CJK Ideograph */ + [0x7ada, 0x7ada], /* CJK Ideograph */ + [0x7adb, 0x7adb], /* CJK Ideograph */ + [0x7adc, 0x7adc], /* CJK Ideograph */ + [0x7add, 0x7add], /* CJK Ideograph */ + [0x7ade, 0x7ade], /* CJK Ideograph */ + [0x7adf, 0x7adf], /* CJK Ideograph */ + [0x7ae0, 0x7ae0], /* CJK Ideograph */ + [0x7ae1, 0x7ae1], /* CJK Ideograph */ + [0x7ae2, 0x7ae2], /* CJK Ideograph */ + [0x7ae3, 0x7ae3], /* CJK Ideograph */ + [0x7ae4, 0x7ae4], /* CJK Ideograph */ + [0x7ae5, 0x7ae5], /* CJK Ideograph */ + [0x7ae6, 0x7ae6], /* CJK Ideograph */ + [0x7ae7, 0x7ae7], /* CJK Ideograph */ + [0x7ae8, 0x7ae8], /* CJK Ideograph */ + [0x7ae9, 0x7ae9], /* CJK Ideograph */ + [0x7aea, 0x7aea], /* CJK Ideograph */ + [0x7aeb, 0x7aeb], /* CJK Ideograph */ + [0x7aec, 0x7aec], /* CJK Ideograph */ + [0x7aed, 0x7aed], /* CJK Ideograph */ + [0x7aee, 0x7aee], /* CJK Ideograph */ + [0x7aef, 0x7aef], /* CJK Ideograph */ + [0x7af0, 0x7af0], /* CJK Ideograph */ + [0x7af1, 0x7af1], /* CJK Ideograph */ + [0x7af2, 0x7af2], /* CJK Ideograph */ + [0x7af3, 0x7af3], /* CJK Ideograph */ + [0x7af4, 0x7af4], /* CJK Ideograph */ + [0x7af5, 0x7af5], /* CJK Ideograph */ + [0x7af6, 0x7af6], /* CJK Ideograph */ + [0x7af7, 0x7af7], /* CJK Ideograph */ + [0x7af8, 0x7af8], /* CJK Ideograph */ + [0x7af9, 0x7af9], /* CJK Ideograph */ + [0x7afa, 0x7afa], /* CJK Ideograph */ + [0x7afb, 0x7afb], /* CJK Ideograph */ + [0x7afc, 0x7afc], /* CJK Ideograph */ + [0x7afd, 0x7afd], /* CJK Ideograph */ + [0x7afe, 0x7afe], /* CJK Ideograph */ + [0x7aff, 0x7aff], /* CJK Ideograph */ + [0x7b00, 0x7b00], /* CJK Ideograph */ + [0x7b01, 0x7b01], /* CJK Ideograph */ + [0x7b02, 0x7b02], /* CJK Ideograph */ + [0x7b03, 0x7b03], /* CJK Ideograph */ + [0x7b04, 0x7b04], /* CJK Ideograph */ + [0x7b05, 0x7b05], /* CJK Ideograph */ + [0x7b06, 0x7b06], /* CJK Ideograph */ + [0x7b07, 0x7b07], /* CJK Ideograph */ + [0x7b08, 0x7b08], /* CJK Ideograph */ + [0x7b09, 0x7b09], /* CJK Ideograph */ + [0x7b0a, 0x7b0a], /* CJK Ideograph */ + [0x7b0b, 0x7b0b], /* CJK Ideograph */ + [0x7b0c, 0x7b0c], /* CJK Ideograph */ + [0x7b0d, 0x7b0d], /* CJK Ideograph */ + [0x7b0e, 0x7b0e], /* CJK Ideograph */ + [0x7b0f, 0x7b0f], /* CJK Ideograph */ + [0x7b10, 0x7b10], /* CJK Ideograph */ + [0x7b11, 0x7b11], /* CJK Ideograph */ + [0x7b12, 0x7b12], /* CJK Ideograph */ + [0x7b13, 0x7b13], /* CJK Ideograph */ + [0x7b14, 0x7b14], /* CJK Ideograph */ + [0x7b15, 0x7b15], /* CJK Ideograph */ + [0x7b16, 0x7b16], /* CJK Ideograph */ + [0x7b17, 0x7b17], /* CJK Ideograph */ + [0x7b18, 0x7b18], /* CJK Ideograph */ + [0x7b19, 0x7b19], /* CJK Ideograph */ + [0x7b1a, 0x7b1a], /* CJK Ideograph */ + [0x7b1b, 0x7b1b], /* CJK Ideograph */ + [0x7b1c, 0x7b1c], /* CJK Ideograph */ + [0x7b1d, 0x7b1d], /* CJK Ideograph */ + [0x7b1e, 0x7b1e], /* CJK Ideograph */ + [0x7b1f, 0x7b1f], /* CJK Ideograph */ + [0x7b20, 0x7b20], /* CJK Ideograph */ + [0x7b21, 0x7b21], /* CJK Ideograph */ + [0x7b22, 0x7b22], /* CJK Ideograph */ + [0x7b23, 0x7b23], /* CJK Ideograph */ + [0x7b24, 0x7b24], /* CJK Ideograph */ + [0x7b25, 0x7b25], /* CJK Ideograph */ + [0x7b26, 0x7b26], /* CJK Ideograph */ + [0x7b27, 0x7b27], /* CJK Ideograph */ + [0x7b28, 0x7b28], /* CJK Ideograph */ + [0x7b29, 0x7b29], /* CJK Ideograph */ + [0x7b2a, 0x7b2a], /* CJK Ideograph */ + [0x7b2b, 0x7b2b], /* CJK Ideograph */ + [0x7b2c, 0x7b2c], /* CJK Ideograph */ + [0x7b2d, 0x7b2d], /* CJK Ideograph */ + [0x7b2e, 0x7b2e], /* CJK Ideograph */ + [0x7b2f, 0x7b2f], /* CJK Ideograph */ + [0x7b30, 0x7b30], /* CJK Ideograph */ + [0x7b31, 0x7b31], /* CJK Ideograph */ + [0x7b32, 0x7b32], /* CJK Ideograph */ + [0x7b33, 0x7b33], /* CJK Ideograph */ + [0x7b34, 0x7b34], /* CJK Ideograph */ + [0x7b35, 0x7b35], /* CJK Ideograph */ + [0x7b36, 0x7b36], /* CJK Ideograph */ + [0x7b37, 0x7b37], /* CJK Ideograph */ + [0x7b38, 0x7b38], /* CJK Ideograph */ + [0x7b39, 0x7b39], /* CJK Ideograph */ + [0x7b3a, 0x7b3a], /* CJK Ideograph */ + [0x7b3b, 0x7b3b], /* CJK Ideograph */ + [0x7b3c, 0x7b3c], /* CJK Ideograph */ + [0x7b3d, 0x7b3d], /* CJK Ideograph */ + [0x7b3e, 0x7b3e], /* CJK Ideograph */ + [0x7b3f, 0x7b3f], /* CJK Ideograph */ + [0x7b40, 0x7b40], /* CJK Ideograph */ + [0x7b41, 0x7b41], /* CJK Ideograph */ + [0x7b42, 0x7b42], /* CJK Ideograph */ + [0x7b43, 0x7b43], /* CJK Ideograph */ + [0x7b44, 0x7b44], /* CJK Ideograph */ + [0x7b45, 0x7b45], /* CJK Ideograph */ + [0x7b46, 0x7b46], /* CJK Ideograph */ + [0x7b47, 0x7b47], /* CJK Ideograph */ + [0x7b48, 0x7b48], /* CJK Ideograph */ + [0x7b49, 0x7b49], /* CJK Ideograph */ + [0x7b4a, 0x7b4a], /* CJK Ideograph */ + [0x7b4b, 0x7b4b], /* CJK Ideograph */ + [0x7b4c, 0x7b4c], /* CJK Ideograph */ + [0x7b4d, 0x7b4d], /* CJK Ideograph */ + [0x7b4e, 0x7b4e], /* CJK Ideograph */ + [0x7b4f, 0x7b4f], /* CJK Ideograph */ + [0x7b50, 0x7b50], /* CJK Ideograph */ + [0x7b51, 0x7b51], /* CJK Ideograph */ + [0x7b52, 0x7b52], /* CJK Ideograph */ + [0x7b53, 0x7b53], /* CJK Ideograph */ + [0x7b54, 0x7b54], /* CJK Ideograph */ + [0x7b55, 0x7b55], /* CJK Ideograph */ + [0x7b56, 0x7b56], /* CJK Ideograph */ + [0x7b57, 0x7b57], /* CJK Ideograph */ + [0x7b58, 0x7b58], /* CJK Ideograph */ + [0x7b59, 0x7b59], /* CJK Ideograph */ + [0x7b5a, 0x7b5a], /* CJK Ideograph */ + [0x7b5b, 0x7b5b], /* CJK Ideograph */ + [0x7b5c, 0x7b5c], /* CJK Ideograph */ + [0x7b5d, 0x7b5d], /* CJK Ideograph */ + [0x7b5e, 0x7b5e], /* CJK Ideograph */ + [0x7b5f, 0x7b5f], /* CJK Ideograph */ + [0x7b60, 0x7b60], /* CJK Ideograph */ + [0x7b61, 0x7b61], /* CJK Ideograph */ + [0x7b62, 0x7b62], /* CJK Ideograph */ + [0x7b63, 0x7b63], /* CJK Ideograph */ + [0x7b64, 0x7b64], /* CJK Ideograph */ + [0x7b65, 0x7b65], /* CJK Ideograph */ + [0x7b66, 0x7b66], /* CJK Ideograph */ + [0x7b67, 0x7b67], /* CJK Ideograph */ + [0x7b68, 0x7b68], /* CJK Ideograph */ + [0x7b69, 0x7b69], /* CJK Ideograph */ + [0x7b6a, 0x7b6a], /* CJK Ideograph */ + [0x7b6b, 0x7b6b], /* CJK Ideograph */ + [0x7b6c, 0x7b6c], /* CJK Ideograph */ + [0x7b6d, 0x7b6d], /* CJK Ideograph */ + [0x7b6e, 0x7b6e], /* CJK Ideograph */ + [0x7b6f, 0x7b6f], /* CJK Ideograph */ + [0x7b70, 0x7b70], /* CJK Ideograph */ + [0x7b71, 0x7b71], /* CJK Ideograph */ + [0x7b72, 0x7b72], /* CJK Ideograph */ + [0x7b73, 0x7b73], /* CJK Ideograph */ + [0x7b74, 0x7b74], /* CJK Ideograph */ + [0x7b75, 0x7b75], /* CJK Ideograph */ + [0x7b76, 0x7b76], /* CJK Ideograph */ + [0x7b77, 0x7b77], /* CJK Ideograph */ + [0x7b78, 0x7b78], /* CJK Ideograph */ + [0x7b79, 0x7b79], /* CJK Ideograph */ + [0x7b7a, 0x7b7a], /* CJK Ideograph */ + [0x7b7b, 0x7b7b], /* CJK Ideograph */ + [0x7b7c, 0x7b7c], /* CJK Ideograph */ + [0x7b7d, 0x7b7d], /* CJK Ideograph */ + [0x7b7e, 0x7b7e], /* CJK Ideograph */ + [0x7b7f, 0x7b7f], /* CJK Ideograph */ + [0x7b80, 0x7b80], /* CJK Ideograph */ + [0x7b81, 0x7b81], /* CJK Ideograph */ + [0x7b82, 0x7b82], /* CJK Ideograph */ + [0x7b83, 0x7b83], /* CJK Ideograph */ + [0x7b84, 0x7b84], /* CJK Ideograph */ + [0x7b85, 0x7b85], /* CJK Ideograph */ + [0x7b86, 0x7b86], /* CJK Ideograph */ + [0x7b87, 0x7b87], /* CJK Ideograph */ + [0x7b88, 0x7b88], /* CJK Ideograph */ + [0x7b89, 0x7b89], /* CJK Ideograph */ + [0x7b8a, 0x7b8a], /* CJK Ideograph */ + [0x7b8b, 0x7b8b], /* CJK Ideograph */ + [0x7b8c, 0x7b8c], /* CJK Ideograph */ + [0x7b8d, 0x7b8d], /* CJK Ideograph */ + [0x7b8e, 0x7b8e], /* CJK Ideograph */ + [0x7b8f, 0x7b8f], /* CJK Ideograph */ + [0x7b90, 0x7b90], /* CJK Ideograph */ + [0x7b91, 0x7b91], /* CJK Ideograph */ + [0x7b92, 0x7b92], /* CJK Ideograph */ + [0x7b93, 0x7b93], /* CJK Ideograph */ + [0x7b94, 0x7b94], /* CJK Ideograph */ + [0x7b95, 0x7b95], /* CJK Ideograph */ + [0x7b96, 0x7b96], /* CJK Ideograph */ + [0x7b97, 0x7b97], /* CJK Ideograph */ + [0x7b98, 0x7b98], /* CJK Ideograph */ + [0x7b99, 0x7b99], /* CJK Ideograph */ + [0x7b9a, 0x7b9a], /* CJK Ideograph */ + [0x7b9b, 0x7b9b], /* CJK Ideograph */ + [0x7b9c, 0x7b9c], /* CJK Ideograph */ + [0x7b9d, 0x7b9d], /* CJK Ideograph */ + [0x7b9e, 0x7b9e], /* CJK Ideograph */ + [0x7b9f, 0x7b9f], /* CJK Ideograph */ + [0x7ba0, 0x7ba0], /* CJK Ideograph */ + [0x7ba1, 0x7ba1], /* CJK Ideograph */ + [0x7ba2, 0x7ba2], /* CJK Ideograph */ + [0x7ba3, 0x7ba3], /* CJK Ideograph */ + [0x7ba4, 0x7ba4], /* CJK Ideograph */ + [0x7ba5, 0x7ba5], /* CJK Ideograph */ + [0x7ba6, 0x7ba6], /* CJK Ideograph */ + [0x7ba7, 0x7ba7], /* CJK Ideograph */ + [0x7ba8, 0x7ba8], /* CJK Ideograph */ + [0x7ba9, 0x7ba9], /* CJK Ideograph */ + [0x7baa, 0x7baa], /* CJK Ideograph */ + [0x7bab, 0x7bab], /* CJK Ideograph */ + [0x7bac, 0x7bac], /* CJK Ideograph */ + [0x7bad, 0x7bad], /* CJK Ideograph */ + [0x7bae, 0x7bae], /* CJK Ideograph */ + [0x7baf, 0x7baf], /* CJK Ideograph */ + [0x7bb0, 0x7bb0], /* CJK Ideograph */ + [0x7bb1, 0x7bb1], /* CJK Ideograph */ + [0x7bb2, 0x7bb2], /* CJK Ideograph */ + [0x7bb3, 0x7bb3], /* CJK Ideograph */ + [0x7bb4, 0x7bb4], /* CJK Ideograph */ + [0x7bb5, 0x7bb5], /* CJK Ideograph */ + [0x7bb6, 0x7bb6], /* CJK Ideograph */ + [0x7bb7, 0x7bb7], /* CJK Ideograph */ + [0x7bb8, 0x7bb8], /* CJK Ideograph */ + [0x7bb9, 0x7bb9], /* CJK Ideograph */ + [0x7bba, 0x7bba], /* CJK Ideograph */ + [0x7bbb, 0x7bbb], /* CJK Ideograph */ + [0x7bbc, 0x7bbc], /* CJK Ideograph */ + [0x7bbd, 0x7bbd], /* CJK Ideograph */ + [0x7bbe, 0x7bbe], /* CJK Ideograph */ + [0x7bbf, 0x7bbf], /* CJK Ideograph */ + [0x7bc0, 0x7bc0], /* CJK Ideograph */ + [0x7bc1, 0x7bc1], /* CJK Ideograph */ + [0x7bc2, 0x7bc2], /* CJK Ideograph */ + [0x7bc3, 0x7bc3], /* CJK Ideograph */ + [0x7bc4, 0x7bc4], /* CJK Ideograph */ + [0x7bc5, 0x7bc5], /* CJK Ideograph */ + [0x7bc6, 0x7bc6], /* CJK Ideograph */ + [0x7bc7, 0x7bc7], /* CJK Ideograph */ + [0x7bc8, 0x7bc8], /* CJK Ideograph */ + [0x7bc9, 0x7bc9], /* CJK Ideograph */ + [0x7bca, 0x7bca], /* CJK Ideograph */ + [0x7bcb, 0x7bcb], /* CJK Ideograph */ + [0x7bcc, 0x7bcc], /* CJK Ideograph */ + [0x7bcd, 0x7bcd], /* CJK Ideograph */ + [0x7bce, 0x7bce], /* CJK Ideograph */ + [0x7bcf, 0x7bcf], /* CJK Ideograph */ + [0x7bd0, 0x7bd0], /* CJK Ideograph */ + [0x7bd1, 0x7bd1], /* CJK Ideograph */ + [0x7bd2, 0x7bd2], /* CJK Ideograph */ + [0x7bd3, 0x7bd3], /* CJK Ideograph */ + [0x7bd4, 0x7bd4], /* CJK Ideograph */ + [0x7bd5, 0x7bd5], /* CJK Ideograph */ + [0x7bd6, 0x7bd6], /* CJK Ideograph */ + [0x7bd7, 0x7bd7], /* CJK Ideograph */ + [0x7bd8, 0x7bd8], /* CJK Ideograph */ + [0x7bd9, 0x7bd9], /* CJK Ideograph */ + [0x7bda, 0x7bda], /* CJK Ideograph */ + [0x7bdb, 0x7bdb], /* CJK Ideograph */ + [0x7bdc, 0x7bdc], /* CJK Ideograph */ + [0x7bdd, 0x7bdd], /* CJK Ideograph */ + [0x7bde, 0x7bde], /* CJK Ideograph */ + [0x7bdf, 0x7bdf], /* CJK Ideograph */ + [0x7be0, 0x7be0], /* CJK Ideograph */ + [0x7be1, 0x7be1], /* CJK Ideograph */ + [0x7be2, 0x7be2], /* CJK Ideograph */ + [0x7be3, 0x7be3], /* CJK Ideograph */ + [0x7be4, 0x7be4], /* CJK Ideograph */ + [0x7be5, 0x7be5], /* CJK Ideograph */ + [0x7be6, 0x7be6], /* CJK Ideograph */ + [0x7be7, 0x7be7], /* CJK Ideograph */ + [0x7be8, 0x7be8], /* CJK Ideograph */ + [0x7be9, 0x7be9], /* CJK Ideograph */ + [0x7bea, 0x7bea], /* CJK Ideograph */ + [0x7beb, 0x7beb], /* CJK Ideograph */ + [0x7bec, 0x7bec], /* CJK Ideograph */ + [0x7bed, 0x7bed], /* CJK Ideograph */ + [0x7bee, 0x7bee], /* CJK Ideograph */ + [0x7bef, 0x7bef], /* CJK Ideograph */ + [0x7bf0, 0x7bf0], /* CJK Ideograph */ + [0x7bf1, 0x7bf1], /* CJK Ideograph */ + [0x7bf2, 0x7bf2], /* CJK Ideograph */ + [0x7bf3, 0x7bf3], /* CJK Ideograph */ + [0x7bf4, 0x7bf4], /* CJK Ideograph */ + [0x7bf5, 0x7bf5], /* CJK Ideograph */ + [0x7bf6, 0x7bf6], /* CJK Ideograph */ + [0x7bf7, 0x7bf7], /* CJK Ideograph */ + [0x7bf8, 0x7bf8], /* CJK Ideograph */ + [0x7bf9, 0x7bf9], /* CJK Ideograph */ + [0x7bfa, 0x7bfa], /* CJK Ideograph */ + [0x7bfb, 0x7bfb], /* CJK Ideograph */ + [0x7bfc, 0x7bfc], /* CJK Ideograph */ + [0x7bfd, 0x7bfd], /* CJK Ideograph */ + [0x7bfe, 0x7bfe], /* CJK Ideograph */ + [0x7bff, 0x7bff], /* CJK Ideograph */ + [0x7c00, 0x7c00], /* CJK Ideograph */ + [0x7c01, 0x7c01], /* CJK Ideograph */ + [0x7c02, 0x7c02], /* CJK Ideograph */ + [0x7c03, 0x7c03], /* CJK Ideograph */ + [0x7c04, 0x7c04], /* CJK Ideograph */ + [0x7c05, 0x7c05], /* CJK Ideograph */ + [0x7c06, 0x7c06], /* CJK Ideograph */ + [0x7c07, 0x7c07], /* CJK Ideograph */ + [0x7c08, 0x7c08], /* CJK Ideograph */ + [0x7c09, 0x7c09], /* CJK Ideograph */ + [0x7c0a, 0x7c0a], /* CJK Ideograph */ + [0x7c0b, 0x7c0b], /* CJK Ideograph */ + [0x7c0c, 0x7c0c], /* CJK Ideograph */ + [0x7c0d, 0x7c0d], /* CJK Ideograph */ + [0x7c0e, 0x7c0e], /* CJK Ideograph */ + [0x7c0f, 0x7c0f], /* CJK Ideograph */ + [0x7c10, 0x7c10], /* CJK Ideograph */ + [0x7c11, 0x7c11], /* CJK Ideograph */ + [0x7c12, 0x7c12], /* CJK Ideograph */ + [0x7c13, 0x7c13], /* CJK Ideograph */ + [0x7c14, 0x7c14], /* CJK Ideograph */ + [0x7c15, 0x7c15], /* CJK Ideograph */ + [0x7c16, 0x7c16], /* CJK Ideograph */ + [0x7c17, 0x7c17], /* CJK Ideograph */ + [0x7c18, 0x7c18], /* CJK Ideograph */ + [0x7c19, 0x7c19], /* CJK Ideograph */ + [0x7c1a, 0x7c1a], /* CJK Ideograph */ + [0x7c1b, 0x7c1b], /* CJK Ideograph */ + [0x7c1c, 0x7c1c], /* CJK Ideograph */ + [0x7c1d, 0x7c1d], /* CJK Ideograph */ + [0x7c1e, 0x7c1e], /* CJK Ideograph */ + [0x7c1f, 0x7c1f], /* CJK Ideograph */ + [0x7c20, 0x7c20], /* CJK Ideograph */ + [0x7c21, 0x7c21], /* CJK Ideograph */ + [0x7c22, 0x7c22], /* CJK Ideograph */ + [0x7c23, 0x7c23], /* CJK Ideograph */ + [0x7c24, 0x7c24], /* CJK Ideograph */ + [0x7c25, 0x7c25], /* CJK Ideograph */ + [0x7c26, 0x7c26], /* CJK Ideograph */ + [0x7c27, 0x7c27], /* CJK Ideograph */ + [0x7c28, 0x7c28], /* CJK Ideograph */ + [0x7c29, 0x7c29], /* CJK Ideograph */ + [0x7c2a, 0x7c2a], /* CJK Ideograph */ + [0x7c2b, 0x7c2b], /* CJK Ideograph */ + [0x7c2c, 0x7c2c], /* CJK Ideograph */ + [0x7c2d, 0x7c2d], /* CJK Ideograph */ + [0x7c2e, 0x7c2e], /* CJK Ideograph */ + [0x7c2f, 0x7c2f], /* CJK Ideograph */ + [0x7c30, 0x7c30], /* CJK Ideograph */ + [0x7c31, 0x7c31], /* CJK Ideograph */ + [0x7c32, 0x7c32], /* CJK Ideograph */ + [0x7c33, 0x7c33], /* CJK Ideograph */ + [0x7c34, 0x7c34], /* CJK Ideograph */ + [0x7c35, 0x7c35], /* CJK Ideograph */ + [0x7c36, 0x7c36], /* CJK Ideograph */ + [0x7c37, 0x7c37], /* CJK Ideograph */ + [0x7c38, 0x7c38], /* CJK Ideograph */ + [0x7c39, 0x7c39], /* CJK Ideograph */ + [0x7c3a, 0x7c3a], /* CJK Ideograph */ + [0x7c3b, 0x7c3b], /* CJK Ideograph */ + [0x7c3c, 0x7c3c], /* CJK Ideograph */ + [0x7c3d, 0x7c3d], /* CJK Ideograph */ + [0x7c3e, 0x7c3e], /* CJK Ideograph */ + [0x7c3f, 0x7c3f], /* CJK Ideograph */ + [0x7c40, 0x7c40], /* CJK Ideograph */ + [0x7c41, 0x7c41], /* CJK Ideograph */ + [0x7c42, 0x7c42], /* CJK Ideograph */ + [0x7c43, 0x7c43], /* CJK Ideograph */ + [0x7c44, 0x7c44], /* CJK Ideograph */ + [0x7c45, 0x7c45], /* CJK Ideograph */ + [0x7c46, 0x7c46], /* CJK Ideograph */ + [0x7c47, 0x7c47], /* CJK Ideograph */ + [0x7c48, 0x7c48], /* CJK Ideograph */ + [0x7c49, 0x7c49], /* CJK Ideograph */ + [0x7c4a, 0x7c4a], /* CJK Ideograph */ + [0x7c4b, 0x7c4b], /* CJK Ideograph */ + [0x7c4c, 0x7c4c], /* CJK Ideograph */ + [0x7c4d, 0x7c4d], /* CJK Ideograph */ + [0x7c4e, 0x7c4e], /* CJK Ideograph */ + [0x7c4f, 0x7c4f], /* CJK Ideograph */ + [0x7c50, 0x7c50], /* CJK Ideograph */ + [0x7c51, 0x7c51], /* CJK Ideograph */ + [0x7c52, 0x7c52], /* CJK Ideograph */ + [0x7c53, 0x7c53], /* CJK Ideograph */ + [0x7c54, 0x7c54], /* CJK Ideograph */ + [0x7c55, 0x7c55], /* CJK Ideograph */ + [0x7c56, 0x7c56], /* CJK Ideograph */ + [0x7c57, 0x7c57], /* CJK Ideograph */ + [0x7c58, 0x7c58], /* CJK Ideograph */ + [0x7c59, 0x7c59], /* CJK Ideograph */ + [0x7c5a, 0x7c5a], /* CJK Ideograph */ + [0x7c5b, 0x7c5b], /* CJK Ideograph */ + [0x7c5c, 0x7c5c], /* CJK Ideograph */ + [0x7c5d, 0x7c5d], /* CJK Ideograph */ + [0x7c5e, 0x7c5e], /* CJK Ideograph */ + [0x7c5f, 0x7c5f], /* CJK Ideograph */ + [0x7c60, 0x7c60], /* CJK Ideograph */ + [0x7c61, 0x7c61], /* CJK Ideograph */ + [0x7c62, 0x7c62], /* CJK Ideograph */ + [0x7c63, 0x7c63], /* CJK Ideograph */ + [0x7c64, 0x7c64], /* CJK Ideograph */ + [0x7c65, 0x7c65], /* CJK Ideograph */ + [0x7c66, 0x7c66], /* CJK Ideograph */ + [0x7c67, 0x7c67], /* CJK Ideograph */ + [0x7c68, 0x7c68], /* CJK Ideograph */ + [0x7c69, 0x7c69], /* CJK Ideograph */ + [0x7c6a, 0x7c6a], /* CJK Ideograph */ + [0x7c6b, 0x7c6b], /* CJK Ideograph */ + [0x7c6c, 0x7c6c], /* CJK Ideograph */ + [0x7c6d, 0x7c6d], /* CJK Ideograph */ + [0x7c6e, 0x7c6e], /* CJK Ideograph */ + [0x7c6f, 0x7c6f], /* CJK Ideograph */ + [0x7c70, 0x7c70], /* CJK Ideograph */ + [0x7c71, 0x7c71], /* CJK Ideograph */ + [0x7c72, 0x7c72], /* CJK Ideograph */ + [0x7c73, 0x7c73], /* CJK Ideograph */ + [0x7c74, 0x7c74], /* CJK Ideograph */ + [0x7c75, 0x7c75], /* CJK Ideograph */ + [0x7c76, 0x7c76], /* CJK Ideograph */ + [0x7c77, 0x7c77], /* CJK Ideograph */ + [0x7c78, 0x7c78], /* CJK Ideograph */ + [0x7c79, 0x7c79], /* CJK Ideograph */ + [0x7c7a, 0x7c7a], /* CJK Ideograph */ + [0x7c7b, 0x7c7b], /* CJK Ideograph */ + [0x7c7c, 0x7c7c], /* CJK Ideograph */ + [0x7c7d, 0x7c7d], /* CJK Ideograph */ + [0x7c7e, 0x7c7e], /* CJK Ideograph */ + [0x7c7f, 0x7c7f], /* CJK Ideograph */ + [0x7c80, 0x7c80], /* CJK Ideograph */ + [0x7c81, 0x7c81], /* CJK Ideograph */ + [0x7c82, 0x7c82], /* CJK Ideograph */ + [0x7c83, 0x7c83], /* CJK Ideograph */ + [0x7c84, 0x7c84], /* CJK Ideograph */ + [0x7c85, 0x7c85], /* CJK Ideograph */ + [0x7c86, 0x7c86], /* CJK Ideograph */ + [0x7c87, 0x7c87], /* CJK Ideograph */ + [0x7c88, 0x7c88], /* CJK Ideograph */ + [0x7c89, 0x7c89], /* CJK Ideograph */ + [0x7c8a, 0x7c8a], /* CJK Ideograph */ + [0x7c8b, 0x7c8b], /* CJK Ideograph */ + [0x7c8c, 0x7c8c], /* CJK Ideograph */ + [0x7c8d, 0x7c8d], /* CJK Ideograph */ + [0x7c8e, 0x7c8e], /* CJK Ideograph */ + [0x7c8f, 0x7c8f], /* CJK Ideograph */ + [0x7c90, 0x7c90], /* CJK Ideograph */ + [0x7c91, 0x7c91], /* CJK Ideograph */ + [0x7c92, 0x7c92], /* CJK Ideograph */ + [0x7c93, 0x7c93], /* CJK Ideograph */ + [0x7c94, 0x7c94], /* CJK Ideograph */ + [0x7c95, 0x7c95], /* CJK Ideograph */ + [0x7c96, 0x7c96], /* CJK Ideograph */ + [0x7c97, 0x7c97], /* CJK Ideograph */ + [0x7c98, 0x7c98], /* CJK Ideograph */ + [0x7c99, 0x7c99], /* CJK Ideograph */ + [0x7c9a, 0x7c9a], /* CJK Ideograph */ + [0x7c9b, 0x7c9b], /* CJK Ideograph */ + [0x7c9c, 0x7c9c], /* CJK Ideograph */ + [0x7c9d, 0x7c9d], /* CJK Ideograph */ + [0x7c9e, 0x7c9e], /* CJK Ideograph */ + [0x7c9f, 0x7c9f], /* CJK Ideograph */ + [0x7ca0, 0x7ca0], /* CJK Ideograph */ + [0x7ca1, 0x7ca1], /* CJK Ideograph */ + [0x7ca2, 0x7ca2], /* CJK Ideograph */ + [0x7ca3, 0x7ca3], /* CJK Ideograph */ + [0x7ca4, 0x7ca4], /* CJK Ideograph */ + [0x7ca5, 0x7ca5], /* CJK Ideograph */ + [0x7ca6, 0x7ca6], /* CJK Ideograph */ + [0x7ca7, 0x7ca7], /* CJK Ideograph */ + [0x7ca8, 0x7ca8], /* CJK Ideograph */ + [0x7ca9, 0x7ca9], /* CJK Ideograph */ + [0x7caa, 0x7caa], /* CJK Ideograph */ + [0x7cab, 0x7cab], /* CJK Ideograph */ + [0x7cac, 0x7cac], /* CJK Ideograph */ + [0x7cad, 0x7cad], /* CJK Ideograph */ + [0x7cae, 0x7cae], /* CJK Ideograph */ + [0x7caf, 0x7caf], /* CJK Ideograph */ + [0x7cb0, 0x7cb0], /* CJK Ideograph */ + [0x7cb1, 0x7cb1], /* CJK Ideograph */ + [0x7cb2, 0x7cb2], /* CJK Ideograph */ + [0x7cb3, 0x7cb3], /* CJK Ideograph */ + [0x7cb4, 0x7cb4], /* CJK Ideograph */ + [0x7cb5, 0x7cb5], /* CJK Ideograph */ + [0x7cb6, 0x7cb6], /* CJK Ideograph */ + [0x7cb7, 0x7cb7], /* CJK Ideograph */ + [0x7cb8, 0x7cb8], /* CJK Ideograph */ + [0x7cb9, 0x7cb9], /* CJK Ideograph */ + [0x7cba, 0x7cba], /* CJK Ideograph */ + [0x7cbb, 0x7cbb], /* CJK Ideograph */ + [0x7cbc, 0x7cbc], /* CJK Ideograph */ + [0x7cbd, 0x7cbd], /* CJK Ideograph */ + [0x7cbe, 0x7cbe], /* CJK Ideograph */ + [0x7cbf, 0x7cbf], /* CJK Ideograph */ + [0x7cc0, 0x7cc0], /* CJK Ideograph */ + [0x7cc1, 0x7cc1], /* CJK Ideograph */ + [0x7cc2, 0x7cc2], /* CJK Ideograph */ + [0x7cc3, 0x7cc3], /* CJK Ideograph */ + [0x7cc4, 0x7cc4], /* CJK Ideograph */ + [0x7cc5, 0x7cc5], /* CJK Ideograph */ + [0x7cc6, 0x7cc6], /* CJK Ideograph */ + [0x7cc7, 0x7cc7], /* CJK Ideograph */ + [0x7cc8, 0x7cc8], /* CJK Ideograph */ + [0x7cc9, 0x7cc9], /* CJK Ideograph */ + [0x7cca, 0x7cca], /* CJK Ideograph */ + [0x7ccb, 0x7ccb], /* CJK Ideograph */ + [0x7ccc, 0x7ccc], /* CJK Ideograph */ + [0x7ccd, 0x7ccd], /* CJK Ideograph */ + [0x7cce, 0x7cce], /* CJK Ideograph */ + [0x7ccf, 0x7ccf], /* CJK Ideograph */ + [0x7cd0, 0x7cd0], /* CJK Ideograph */ + [0x7cd1, 0x7cd1], /* CJK Ideograph */ + [0x7cd2, 0x7cd2], /* CJK Ideograph */ + [0x7cd3, 0x7cd3], /* CJK Ideograph */ + [0x7cd4, 0x7cd4], /* CJK Ideograph */ + [0x7cd5, 0x7cd5], /* CJK Ideograph */ + [0x7cd6, 0x7cd6], /* CJK Ideograph */ + [0x7cd7, 0x7cd7], /* CJK Ideograph */ + [0x7cd8, 0x7cd8], /* CJK Ideograph */ + [0x7cd9, 0x7cd9], /* CJK Ideograph */ + [0x7cda, 0x7cda], /* CJK Ideograph */ + [0x7cdb, 0x7cdb], /* CJK Ideograph */ + [0x7cdc, 0x7cdc], /* CJK Ideograph */ + [0x7cdd, 0x7cdd], /* CJK Ideograph */ + [0x7cde, 0x7cde], /* CJK Ideograph */ + [0x7cdf, 0x7cdf], /* CJK Ideograph */ + [0x7ce0, 0x7ce0], /* CJK Ideograph */ + [0x7ce1, 0x7ce1], /* CJK Ideograph */ + [0x7ce2, 0x7ce2], /* CJK Ideograph */ + [0x7ce3, 0x7ce3], /* CJK Ideograph */ + [0x7ce4, 0x7ce4], /* CJK Ideograph */ + [0x7ce5, 0x7ce5], /* CJK Ideograph */ + [0x7ce6, 0x7ce6], /* CJK Ideograph */ + [0x7ce7, 0x7ce7], /* CJK Ideograph */ + [0x7ce8, 0x7ce8], /* CJK Ideograph */ + [0x7ce9, 0x7ce9], /* CJK Ideograph */ + [0x7cea, 0x7cea], /* CJK Ideograph */ + [0x7ceb, 0x7ceb], /* CJK Ideograph */ + [0x7cec, 0x7cec], /* CJK Ideograph */ + [0x7ced, 0x7ced], /* CJK Ideograph */ + [0x7cee, 0x7cee], /* CJK Ideograph */ + [0x7cef, 0x7cef], /* CJK Ideograph */ + [0x7cf0, 0x7cf0], /* CJK Ideograph */ + [0x7cf1, 0x7cf1], /* CJK Ideograph */ + [0x7cf2, 0x7cf2], /* CJK Ideograph */ + [0x7cf3, 0x7cf3], /* CJK Ideograph */ + [0x7cf4, 0x7cf4], /* CJK Ideograph */ + [0x7cf5, 0x7cf5], /* CJK Ideograph */ + [0x7cf6, 0x7cf6], /* CJK Ideograph */ + [0x7cf7, 0x7cf7], /* CJK Ideograph */ + [0x7cf8, 0x7cf8], /* CJK Ideograph */ + [0x7cf9, 0x7cf9], /* CJK Ideograph */ + [0x7cfa, 0x7cfa], /* CJK Ideograph */ + [0x7cfb, 0x7cfb], /* CJK Ideograph */ + [0x7cfc, 0x7cfc], /* CJK Ideograph */ + [0x7cfd, 0x7cfd], /* CJK Ideograph */ + [0x7cfe, 0x7cfe], /* CJK Ideograph */ + [0x7cff, 0x7cff], /* CJK Ideograph */ + [0x7d00, 0x7d00], /* CJK Ideograph */ + [0x7d01, 0x7d01], /* CJK Ideograph */ + [0x7d02, 0x7d02], /* CJK Ideograph */ + [0x7d03, 0x7d03], /* CJK Ideograph */ + [0x7d04, 0x7d04], /* CJK Ideograph */ + [0x7d05, 0x7d05], /* CJK Ideograph */ + [0x7d06, 0x7d06], /* CJK Ideograph */ + [0x7d07, 0x7d07], /* CJK Ideograph */ + [0x7d08, 0x7d08], /* CJK Ideograph */ + [0x7d09, 0x7d09], /* CJK Ideograph */ + [0x7d0a, 0x7d0a], /* CJK Ideograph */ + [0x7d0b, 0x7d0b], /* CJK Ideograph */ + [0x7d0c, 0x7d0c], /* CJK Ideograph */ + [0x7d0d, 0x7d0d], /* CJK Ideograph */ + [0x7d0e, 0x7d0e], /* CJK Ideograph */ + [0x7d0f, 0x7d0f], /* CJK Ideograph */ + [0x7d10, 0x7d10], /* CJK Ideograph */ + [0x7d11, 0x7d11], /* CJK Ideograph */ + [0x7d12, 0x7d12], /* CJK Ideograph */ + [0x7d13, 0x7d13], /* CJK Ideograph */ + [0x7d14, 0x7d14], /* CJK Ideograph */ + [0x7d15, 0x7d15], /* CJK Ideograph */ + [0x7d16, 0x7d16], /* CJK Ideograph */ + [0x7d17, 0x7d17], /* CJK Ideograph */ + [0x7d18, 0x7d18], /* CJK Ideograph */ + [0x7d19, 0x7d19], /* CJK Ideograph */ + [0x7d1a, 0x7d1a], /* CJK Ideograph */ + [0x7d1b, 0x7d1b], /* CJK Ideograph */ + [0x7d1c, 0x7d1c], /* CJK Ideograph */ + [0x7d1d, 0x7d1d], /* CJK Ideograph */ + [0x7d1e, 0x7d1e], /* CJK Ideograph */ + [0x7d1f, 0x7d1f], /* CJK Ideograph */ + [0x7d20, 0x7d20], /* CJK Ideograph */ + [0x7d21, 0x7d21], /* CJK Ideograph */ + [0x7d22, 0x7d22], /* CJK Ideograph */ + [0x7d23, 0x7d23], /* CJK Ideograph */ + [0x7d24, 0x7d24], /* CJK Ideograph */ + [0x7d25, 0x7d25], /* CJK Ideograph */ + [0x7d26, 0x7d26], /* CJK Ideograph */ + [0x7d27, 0x7d27], /* CJK Ideograph */ + [0x7d28, 0x7d28], /* CJK Ideograph */ + [0x7d29, 0x7d29], /* CJK Ideograph */ + [0x7d2a, 0x7d2a], /* CJK Ideograph */ + [0x7d2b, 0x7d2b], /* CJK Ideograph */ + [0x7d2c, 0x7d2c], /* CJK Ideograph */ + [0x7d2d, 0x7d2d], /* CJK Ideograph */ + [0x7d2e, 0x7d2e], /* CJK Ideograph */ + [0x7d2f, 0x7d2f], /* CJK Ideograph */ + [0x7d30, 0x7d30], /* CJK Ideograph */ + [0x7d31, 0x7d31], /* CJK Ideograph */ + [0x7d32, 0x7d32], /* CJK Ideograph */ + [0x7d33, 0x7d33], /* CJK Ideograph */ + [0x7d34, 0x7d34], /* CJK Ideograph */ + [0x7d35, 0x7d35], /* CJK Ideograph */ + [0x7d36, 0x7d36], /* CJK Ideograph */ + [0x7d37, 0x7d37], /* CJK Ideograph */ + [0x7d38, 0x7d38], /* CJK Ideograph */ + [0x7d39, 0x7d39], /* CJK Ideograph */ + [0x7d3a, 0x7d3a], /* CJK Ideograph */ + [0x7d3b, 0x7d3b], /* CJK Ideograph */ + [0x7d3c, 0x7d3c], /* CJK Ideograph */ + [0x7d3d, 0x7d3d], /* CJK Ideograph */ + [0x7d3e, 0x7d3e], /* CJK Ideograph */ + [0x7d3f, 0x7d3f], /* CJK Ideograph */ + [0x7d40, 0x7d40], /* CJK Ideograph */ + [0x7d41, 0x7d41], /* CJK Ideograph */ + [0x7d42, 0x7d42], /* CJK Ideograph */ + [0x7d43, 0x7d43], /* CJK Ideograph */ + [0x7d44, 0x7d44], /* CJK Ideograph */ + [0x7d45, 0x7d45], /* CJK Ideograph */ + [0x7d46, 0x7d46], /* CJK Ideograph */ + [0x7d47, 0x7d47], /* CJK Ideograph */ + [0x7d48, 0x7d48], /* CJK Ideograph */ + [0x7d49, 0x7d49], /* CJK Ideograph */ + [0x7d4a, 0x7d4a], /* CJK Ideograph */ + [0x7d4b, 0x7d4b], /* CJK Ideograph */ + [0x7d4c, 0x7d4c], /* CJK Ideograph */ + [0x7d4d, 0x7d4d], /* CJK Ideograph */ + [0x7d4e, 0x7d4e], /* CJK Ideograph */ + [0x7d4f, 0x7d4f], /* CJK Ideograph */ + [0x7d50, 0x7d50], /* CJK Ideograph */ + [0x7d51, 0x7d51], /* CJK Ideograph */ + [0x7d52, 0x7d52], /* CJK Ideograph */ + [0x7d53, 0x7d53], /* CJK Ideograph */ + [0x7d54, 0x7d54], /* CJK Ideograph */ + [0x7d55, 0x7d55], /* CJK Ideograph */ + [0x7d56, 0x7d56], /* CJK Ideograph */ + [0x7d57, 0x7d57], /* CJK Ideograph */ + [0x7d58, 0x7d58], /* CJK Ideograph */ + [0x7d59, 0x7d59], /* CJK Ideograph */ + [0x7d5a, 0x7d5a], /* CJK Ideograph */ + [0x7d5b, 0x7d5b], /* CJK Ideograph */ + [0x7d5c, 0x7d5c], /* CJK Ideograph */ + [0x7d5d, 0x7d5d], /* CJK Ideograph */ + [0x7d5e, 0x7d5e], /* CJK Ideograph */ + [0x7d5f, 0x7d5f], /* CJK Ideograph */ + [0x7d60, 0x7d60], /* CJK Ideograph */ + [0x7d61, 0x7d61], /* CJK Ideograph */ + [0x7d62, 0x7d62], /* CJK Ideograph */ + [0x7d63, 0x7d63], /* CJK Ideograph */ + [0x7d64, 0x7d64], /* CJK Ideograph */ + [0x7d65, 0x7d65], /* CJK Ideograph */ + [0x7d66, 0x7d66], /* CJK Ideograph */ + [0x7d67, 0x7d67], /* CJK Ideograph */ + [0x7d68, 0x7d68], /* CJK Ideograph */ + [0x7d69, 0x7d69], /* CJK Ideograph */ + [0x7d6a, 0x7d6a], /* CJK Ideograph */ + [0x7d6b, 0x7d6b], /* CJK Ideograph */ + [0x7d6c, 0x7d6c], /* CJK Ideograph */ + [0x7d6d, 0x7d6d], /* CJK Ideograph */ + [0x7d6e, 0x7d6e], /* CJK Ideograph */ + [0x7d6f, 0x7d6f], /* CJK Ideograph */ + [0x7d70, 0x7d70], /* CJK Ideograph */ + [0x7d71, 0x7d71], /* CJK Ideograph */ + [0x7d72, 0x7d72], /* CJK Ideograph */ + [0x7d73, 0x7d73], /* CJK Ideograph */ + [0x7d74, 0x7d74], /* CJK Ideograph */ + [0x7d75, 0x7d75], /* CJK Ideograph */ + [0x7d76, 0x7d76], /* CJK Ideograph */ + [0x7d77, 0x7d77], /* CJK Ideograph */ + [0x7d78, 0x7d78], /* CJK Ideograph */ + [0x7d79, 0x7d79], /* CJK Ideograph */ + [0x7d7a, 0x7d7a], /* CJK Ideograph */ + [0x7d7b, 0x7d7b], /* CJK Ideograph */ + [0x7d7c, 0x7d7c], /* CJK Ideograph */ + [0x7d7d, 0x7d7d], /* CJK Ideograph */ + [0x7d7e, 0x7d7e], /* CJK Ideograph */ + [0x7d7f, 0x7d7f], /* CJK Ideograph */ + [0x7d80, 0x7d80], /* CJK Ideograph */ + [0x7d81, 0x7d81], /* CJK Ideograph */ + [0x7d82, 0x7d82], /* CJK Ideograph */ + [0x7d83, 0x7d83], /* CJK Ideograph */ + [0x7d84, 0x7d84], /* CJK Ideograph */ + [0x7d85, 0x7d85], /* CJK Ideograph */ + [0x7d86, 0x7d86], /* CJK Ideograph */ + [0x7d87, 0x7d87], /* CJK Ideograph */ + [0x7d88, 0x7d88], /* CJK Ideograph */ + [0x7d89, 0x7d89], /* CJK Ideograph */ + [0x7d8a, 0x7d8a], /* CJK Ideograph */ + [0x7d8b, 0x7d8b], /* CJK Ideograph */ + [0x7d8c, 0x7d8c], /* CJK Ideograph */ + [0x7d8d, 0x7d8d], /* CJK Ideograph */ + [0x7d8e, 0x7d8e], /* CJK Ideograph */ + [0x7d8f, 0x7d8f], /* CJK Ideograph */ + [0x7d90, 0x7d90], /* CJK Ideograph */ + [0x7d91, 0x7d91], /* CJK Ideograph */ + [0x7d92, 0x7d92], /* CJK Ideograph */ + [0x7d93, 0x7d93], /* CJK Ideograph */ + [0x7d94, 0x7d94], /* CJK Ideograph */ + [0x7d95, 0x7d95], /* CJK Ideograph */ + [0x7d96, 0x7d96], /* CJK Ideograph */ + [0x7d97, 0x7d97], /* CJK Ideograph */ + [0x7d98, 0x7d98], /* CJK Ideograph */ + [0x7d99, 0x7d99], /* CJK Ideograph */ + [0x7d9a, 0x7d9a], /* CJK Ideograph */ + [0x7d9b, 0x7d9b], /* CJK Ideograph */ + [0x7d9c, 0x7d9c], /* CJK Ideograph */ + [0x7d9d, 0x7d9d], /* CJK Ideograph */ + [0x7d9e, 0x7d9e], /* CJK Ideograph */ + [0x7d9f, 0x7d9f], /* CJK Ideograph */ + [0x7da0, 0x7da0], /* CJK Ideograph */ + [0x7da1, 0x7da1], /* CJK Ideograph */ + [0x7da2, 0x7da2], /* CJK Ideograph */ + [0x7da3, 0x7da3], /* CJK Ideograph */ + [0x7da4, 0x7da4], /* CJK Ideograph */ + [0x7da5, 0x7da5], /* CJK Ideograph */ + [0x7da6, 0x7da6], /* CJK Ideograph */ + [0x7da7, 0x7da7], /* CJK Ideograph */ + [0x7da8, 0x7da8], /* CJK Ideograph */ + [0x7da9, 0x7da9], /* CJK Ideograph */ + [0x7daa, 0x7daa], /* CJK Ideograph */ + [0x7dab, 0x7dab], /* CJK Ideograph */ + [0x7dac, 0x7dac], /* CJK Ideograph */ + [0x7dad, 0x7dad], /* CJK Ideograph */ + [0x7dae, 0x7dae], /* CJK Ideograph */ + [0x7daf, 0x7daf], /* CJK Ideograph */ + [0x7db0, 0x7db0], /* CJK Ideograph */ + [0x7db1, 0x7db1], /* CJK Ideograph */ + [0x7db2, 0x7db2], /* CJK Ideograph */ + [0x7db3, 0x7db3], /* CJK Ideograph */ + [0x7db4, 0x7db4], /* CJK Ideograph */ + [0x7db5, 0x7db5], /* CJK Ideograph */ + [0x7db6, 0x7db6], /* CJK Ideograph */ + [0x7db7, 0x7db7], /* CJK Ideograph */ + [0x7db8, 0x7db8], /* CJK Ideograph */ + [0x7db9, 0x7db9], /* CJK Ideograph */ + [0x7dba, 0x7dba], /* CJK Ideograph */ + [0x7dbb, 0x7dbb], /* CJK Ideograph */ + [0x7dbc, 0x7dbc], /* CJK Ideograph */ + [0x7dbd, 0x7dbd], /* CJK Ideograph */ + [0x7dbe, 0x7dbe], /* CJK Ideograph */ + [0x7dbf, 0x7dbf], /* CJK Ideograph */ + [0x7dc0, 0x7dc0], /* CJK Ideograph */ + [0x7dc1, 0x7dc1], /* CJK Ideograph */ + [0x7dc2, 0x7dc2], /* CJK Ideograph */ + [0x7dc3, 0x7dc3], /* CJK Ideograph */ + [0x7dc4, 0x7dc4], /* CJK Ideograph */ + [0x7dc5, 0x7dc5], /* CJK Ideograph */ + [0x7dc6, 0x7dc6], /* CJK Ideograph */ + [0x7dc7, 0x7dc7], /* CJK Ideograph */ + [0x7dc8, 0x7dc8], /* CJK Ideograph */ + [0x7dc9, 0x7dc9], /* CJK Ideograph */ + [0x7dca, 0x7dca], /* CJK Ideograph */ + [0x7dcb, 0x7dcb], /* CJK Ideograph */ + [0x7dcc, 0x7dcc], /* CJK Ideograph */ + [0x7dcd, 0x7dcd], /* CJK Ideograph */ + [0x7dce, 0x7dce], /* CJK Ideograph */ + [0x7dcf, 0x7dcf], /* CJK Ideograph */ + [0x7dd0, 0x7dd0], /* CJK Ideograph */ + [0x7dd1, 0x7dd1], /* CJK Ideograph */ + [0x7dd2, 0x7dd2], /* CJK Ideograph */ + [0x7dd3, 0x7dd3], /* CJK Ideograph */ + [0x7dd4, 0x7dd4], /* CJK Ideograph */ + [0x7dd5, 0x7dd5], /* CJK Ideograph */ + [0x7dd6, 0x7dd6], /* CJK Ideograph */ + [0x7dd7, 0x7dd7], /* CJK Ideograph */ + [0x7dd8, 0x7dd8], /* CJK Ideograph */ + [0x7dd9, 0x7dd9], /* CJK Ideograph */ + [0x7dda, 0x7dda], /* CJK Ideograph */ + [0x7ddb, 0x7ddb], /* CJK Ideograph */ + [0x7ddc, 0x7ddc], /* CJK Ideograph */ + [0x7ddd, 0x7ddd], /* CJK Ideograph */ + [0x7dde, 0x7dde], /* CJK Ideograph */ + [0x7ddf, 0x7ddf], /* CJK Ideograph */ + [0x7de0, 0x7de0], /* CJK Ideograph */ + [0x7de1, 0x7de1], /* CJK Ideograph */ + [0x7de2, 0x7de2], /* CJK Ideograph */ + [0x7de3, 0x7de3], /* CJK Ideograph */ + [0x7de4, 0x7de4], /* CJK Ideograph */ + [0x7de5, 0x7de5], /* CJK Ideograph */ + [0x7de6, 0x7de6], /* CJK Ideograph */ + [0x7de7, 0x7de7], /* CJK Ideograph */ + [0x7de8, 0x7de8], /* CJK Ideograph */ + [0x7de9, 0x7de9], /* CJK Ideograph */ + [0x7dea, 0x7dea], /* CJK Ideograph */ + [0x7deb, 0x7deb], /* CJK Ideograph */ + [0x7dec, 0x7dec], /* CJK Ideograph */ + [0x7ded, 0x7ded], /* CJK Ideograph */ + [0x7dee, 0x7dee], /* CJK Ideograph */ + [0x7def, 0x7def], /* CJK Ideograph */ + [0x7df0, 0x7df0], /* CJK Ideograph */ + [0x7df1, 0x7df1], /* CJK Ideograph */ + [0x7df2, 0x7df2], /* CJK Ideograph */ + [0x7df3, 0x7df3], /* CJK Ideograph */ + [0x7df4, 0x7df4], /* CJK Ideograph */ + [0x7df5, 0x7df5], /* CJK Ideograph */ + [0x7df6, 0x7df6], /* CJK Ideograph */ + [0x7df7, 0x7df7], /* CJK Ideograph */ + [0x7df8, 0x7df8], /* CJK Ideograph */ + [0x7df9, 0x7df9], /* CJK Ideograph */ + [0x7dfa, 0x7dfa], /* CJK Ideograph */ + [0x7dfb, 0x7dfb], /* CJK Ideograph */ + [0x7dfc, 0x7dfc], /* CJK Ideograph */ + [0x7dfd, 0x7dfd], /* CJK Ideograph */ + [0x7dfe, 0x7dfe], /* CJK Ideograph */ + [0x7dff, 0x7dff], /* CJK Ideograph */ + [0x7e00, 0x7e00], /* CJK Ideograph */ + [0x7e01, 0x7e01], /* CJK Ideograph */ + [0x7e02, 0x7e02], /* CJK Ideograph */ + [0x7e03, 0x7e03], /* CJK Ideograph */ + [0x7e04, 0x7e04], /* CJK Ideograph */ + [0x7e05, 0x7e05], /* CJK Ideograph */ + [0x7e06, 0x7e06], /* CJK Ideograph */ + [0x7e07, 0x7e07], /* CJK Ideograph */ + [0x7e08, 0x7e08], /* CJK Ideograph */ + [0x7e09, 0x7e09], /* CJK Ideograph */ + [0x7e0a, 0x7e0a], /* CJK Ideograph */ + [0x7e0b, 0x7e0b], /* CJK Ideograph */ + [0x7e0c, 0x7e0c], /* CJK Ideograph */ + [0x7e0d, 0x7e0d], /* CJK Ideograph */ + [0x7e0e, 0x7e0e], /* CJK Ideograph */ + [0x7e0f, 0x7e0f], /* CJK Ideograph */ + [0x7e10, 0x7e10], /* CJK Ideograph */ + [0x7e11, 0x7e11], /* CJK Ideograph */ + [0x7e12, 0x7e12], /* CJK Ideograph */ + [0x7e13, 0x7e13], /* CJK Ideograph */ + [0x7e14, 0x7e14], /* CJK Ideograph */ + [0x7e15, 0x7e15], /* CJK Ideograph */ + [0x7e16, 0x7e16], /* CJK Ideograph */ + [0x7e17, 0x7e17], /* CJK Ideograph */ + [0x7e18, 0x7e18], /* CJK Ideograph */ + [0x7e19, 0x7e19], /* CJK Ideograph */ + [0x7e1a, 0x7e1a], /* CJK Ideograph */ + [0x7e1b, 0x7e1b], /* CJK Ideograph */ + [0x7e1c, 0x7e1c], /* CJK Ideograph */ + [0x7e1d, 0x7e1d], /* CJK Ideograph */ + [0x7e1e, 0x7e1e], /* CJK Ideograph */ + [0x7e1f, 0x7e1f], /* CJK Ideograph */ + [0x7e20, 0x7e20], /* CJK Ideograph */ + [0x7e21, 0x7e21], /* CJK Ideograph */ + [0x7e22, 0x7e22], /* CJK Ideograph */ + [0x7e23, 0x7e23], /* CJK Ideograph */ + [0x7e24, 0x7e24], /* CJK Ideograph */ + [0x7e25, 0x7e25], /* CJK Ideograph */ + [0x7e26, 0x7e26], /* CJK Ideograph */ + [0x7e27, 0x7e27], /* CJK Ideograph */ + [0x7e28, 0x7e28], /* CJK Ideograph */ + [0x7e29, 0x7e29], /* CJK Ideograph */ + [0x7e2a, 0x7e2a], /* CJK Ideograph */ + [0x7e2b, 0x7e2b], /* CJK Ideograph */ + [0x7e2c, 0x7e2c], /* CJK Ideograph */ + [0x7e2d, 0x7e2d], /* CJK Ideograph */ + [0x7e2e, 0x7e2e], /* CJK Ideograph */ + [0x7e2f, 0x7e2f], /* CJK Ideograph */ + [0x7e30, 0x7e30], /* CJK Ideograph */ + [0x7e31, 0x7e31], /* CJK Ideograph */ + [0x7e32, 0x7e32], /* CJK Ideograph */ + [0x7e33, 0x7e33], /* CJK Ideograph */ + [0x7e34, 0x7e34], /* CJK Ideograph */ + [0x7e35, 0x7e35], /* CJK Ideograph */ + [0x7e36, 0x7e36], /* CJK Ideograph */ + [0x7e37, 0x7e37], /* CJK Ideograph */ + [0x7e38, 0x7e38], /* CJK Ideograph */ + [0x7e39, 0x7e39], /* CJK Ideograph */ + [0x7e3a, 0x7e3a], /* CJK Ideograph */ + [0x7e3b, 0x7e3b], /* CJK Ideograph */ + [0x7e3c, 0x7e3c], /* CJK Ideograph */ + [0x7e3d, 0x7e3d], /* CJK Ideograph */ + [0x7e3e, 0x7e3e], /* CJK Ideograph */ + [0x7e3f, 0x7e3f], /* CJK Ideograph */ + [0x7e40, 0x7e40], /* CJK Ideograph */ + [0x7e41, 0x7e41], /* CJK Ideograph */ + [0x7e42, 0x7e42], /* CJK Ideograph */ + [0x7e43, 0x7e43], /* CJK Ideograph */ + [0x7e44, 0x7e44], /* CJK Ideograph */ + [0x7e45, 0x7e45], /* CJK Ideograph */ + [0x7e46, 0x7e46], /* CJK Ideograph */ + [0x7e47, 0x7e47], /* CJK Ideograph */ + [0x7e48, 0x7e48], /* CJK Ideograph */ + [0x7e49, 0x7e49], /* CJK Ideograph */ + [0x7e4a, 0x7e4a], /* CJK Ideograph */ + [0x7e4b, 0x7e4b], /* CJK Ideograph */ + [0x7e4c, 0x7e4c], /* CJK Ideograph */ + [0x7e4d, 0x7e4d], /* CJK Ideograph */ + [0x7e4e, 0x7e4e], /* CJK Ideograph */ + [0x7e4f, 0x7e4f], /* CJK Ideograph */ + [0x7e50, 0x7e50], /* CJK Ideograph */ + [0x7e51, 0x7e51], /* CJK Ideograph */ + [0x7e52, 0x7e52], /* CJK Ideograph */ + [0x7e53, 0x7e53], /* CJK Ideograph */ + [0x7e54, 0x7e54], /* CJK Ideograph */ + [0x7e55, 0x7e55], /* CJK Ideograph */ + [0x7e56, 0x7e56], /* CJK Ideograph */ + [0x7e57, 0x7e57], /* CJK Ideograph */ + [0x7e58, 0x7e58], /* CJK Ideograph */ + [0x7e59, 0x7e59], /* CJK Ideograph */ + [0x7e5a, 0x7e5a], /* CJK Ideograph */ + [0x7e5b, 0x7e5b], /* CJK Ideograph */ + [0x7e5c, 0x7e5c], /* CJK Ideograph */ + [0x7e5d, 0x7e5d], /* CJK Ideograph */ + [0x7e5e, 0x7e5e], /* CJK Ideograph */ + [0x7e5f, 0x7e5f], /* CJK Ideograph */ + [0x7e60, 0x7e60], /* CJK Ideograph */ + [0x7e61, 0x7e61], /* CJK Ideograph */ + [0x7e62, 0x7e62], /* CJK Ideograph */ + [0x7e63, 0x7e63], /* CJK Ideograph */ + [0x7e64, 0x7e64], /* CJK Ideograph */ + [0x7e65, 0x7e65], /* CJK Ideograph */ + [0x7e66, 0x7e66], /* CJK Ideograph */ + [0x7e67, 0x7e67], /* CJK Ideograph */ + [0x7e68, 0x7e68], /* CJK Ideograph */ + [0x7e69, 0x7e69], /* CJK Ideograph */ + [0x7e6a, 0x7e6a], /* CJK Ideograph */ + [0x7e6b, 0x7e6b], /* CJK Ideograph */ + [0x7e6c, 0x7e6c], /* CJK Ideograph */ + [0x7e6d, 0x7e6d], /* CJK Ideograph */ + [0x7e6e, 0x7e6e], /* CJK Ideograph */ + [0x7e6f, 0x7e6f], /* CJK Ideograph */ + [0x7e70, 0x7e70], /* CJK Ideograph */ + [0x7e71, 0x7e71], /* CJK Ideograph */ + [0x7e72, 0x7e72], /* CJK Ideograph */ + [0x7e73, 0x7e73], /* CJK Ideograph */ + [0x7e74, 0x7e74], /* CJK Ideograph */ + [0x7e75, 0x7e75], /* CJK Ideograph */ + [0x7e76, 0x7e76], /* CJK Ideograph */ + [0x7e77, 0x7e77], /* CJK Ideograph */ + [0x7e78, 0x7e78], /* CJK Ideograph */ + [0x7e79, 0x7e79], /* CJK Ideograph */ + [0x7e7a, 0x7e7a], /* CJK Ideograph */ + [0x7e7b, 0x7e7b], /* CJK Ideograph */ + [0x7e7c, 0x7e7c], /* CJK Ideograph */ + [0x7e7d, 0x7e7d], /* CJK Ideograph */ + [0x7e7e, 0x7e7e], /* CJK Ideograph */ + [0x7e7f, 0x7e7f], /* CJK Ideograph */ + [0x7e80, 0x7e80], /* CJK Ideograph */ + [0x7e81, 0x7e81], /* CJK Ideograph */ + [0x7e82, 0x7e82], /* CJK Ideograph */ + [0x7e83, 0x7e83], /* CJK Ideograph */ + [0x7e84, 0x7e84], /* CJK Ideograph */ + [0x7e85, 0x7e85], /* CJK Ideograph */ + [0x7e86, 0x7e86], /* CJK Ideograph */ + [0x7e87, 0x7e87], /* CJK Ideograph */ + [0x7e88, 0x7e88], /* CJK Ideograph */ + [0x7e89, 0x7e89], /* CJK Ideograph */ + [0x7e8a, 0x7e8a], /* CJK Ideograph */ + [0x7e8b, 0x7e8b], /* CJK Ideograph */ + [0x7e8c, 0x7e8c], /* CJK Ideograph */ + [0x7e8d, 0x7e8d], /* CJK Ideograph */ + [0x7e8e, 0x7e8e], /* CJK Ideograph */ + [0x7e8f, 0x7e8f], /* CJK Ideograph */ + [0x7e90, 0x7e90], /* CJK Ideograph */ + [0x7e91, 0x7e91], /* CJK Ideograph */ + [0x7e92, 0x7e92], /* CJK Ideograph */ + [0x7e93, 0x7e93], /* CJK Ideograph */ + [0x7e94, 0x7e94], /* CJK Ideograph */ + [0x7e95, 0x7e95], /* CJK Ideograph */ + [0x7e96, 0x7e96], /* CJK Ideograph */ + [0x7e97, 0x7e97], /* CJK Ideograph */ + [0x7e98, 0x7e98], /* CJK Ideograph */ + [0x7e99, 0x7e99], /* CJK Ideograph */ + [0x7e9a, 0x7e9a], /* CJK Ideograph */ + [0x7e9b, 0x7e9b], /* CJK Ideograph */ + [0x7e9c, 0x7e9c], /* CJK Ideograph */ + [0x7e9d, 0x7e9d], /* CJK Ideograph */ + [0x7e9e, 0x7e9e], /* CJK Ideograph */ + [0x7e9f, 0x7e9f], /* CJK Ideograph */ + [0x7ea0, 0x7ea0], /* CJK Ideograph */ + [0x7ea1, 0x7ea1], /* CJK Ideograph */ + [0x7ea2, 0x7ea2], /* CJK Ideograph */ + [0x7ea3, 0x7ea3], /* CJK Ideograph */ + [0x7ea4, 0x7ea4], /* CJK Ideograph */ + [0x7ea5, 0x7ea5], /* CJK Ideograph */ + [0x7ea6, 0x7ea6], /* CJK Ideograph */ + [0x7ea7, 0x7ea7], /* CJK Ideograph */ + [0x7ea8, 0x7ea8], /* CJK Ideograph */ + [0x7ea9, 0x7ea9], /* CJK Ideograph */ + [0x7eaa, 0x7eaa], /* CJK Ideograph */ + [0x7eab, 0x7eab], /* CJK Ideograph */ + [0x7eac, 0x7eac], /* CJK Ideograph */ + [0x7ead, 0x7ead], /* CJK Ideograph */ + [0x7eae, 0x7eae], /* CJK Ideograph */ + [0x7eaf, 0x7eaf], /* CJK Ideograph */ + [0x7eb0, 0x7eb0], /* CJK Ideograph */ + [0x7eb1, 0x7eb1], /* CJK Ideograph */ + [0x7eb2, 0x7eb2], /* CJK Ideograph */ + [0x7eb3, 0x7eb3], /* CJK Ideograph */ + [0x7eb4, 0x7eb4], /* CJK Ideograph */ + [0x7eb5, 0x7eb5], /* CJK Ideograph */ + [0x7eb6, 0x7eb6], /* CJK Ideograph */ + [0x7eb7, 0x7eb7], /* CJK Ideograph */ + [0x7eb8, 0x7eb8], /* CJK Ideograph */ + [0x7eb9, 0x7eb9], /* CJK Ideograph */ + [0x7eba, 0x7eba], /* CJK Ideograph */ + [0x7ebb, 0x7ebb], /* CJK Ideograph */ + [0x7ebc, 0x7ebc], /* CJK Ideograph */ + [0x7ebd, 0x7ebd], /* CJK Ideograph */ + [0x7ebe, 0x7ebe], /* CJK Ideograph */ + [0x7ebf, 0x7ebf], /* CJK Ideograph */ + [0x7ec0, 0x7ec0], /* CJK Ideograph */ + [0x7ec1, 0x7ec1], /* CJK Ideograph */ + [0x7ec2, 0x7ec2], /* CJK Ideograph */ + [0x7ec3, 0x7ec3], /* CJK Ideograph */ + [0x7ec4, 0x7ec4], /* CJK Ideograph */ + [0x7ec5, 0x7ec5], /* CJK Ideograph */ + [0x7ec6, 0x7ec6], /* CJK Ideograph */ + [0x7ec7, 0x7ec7], /* CJK Ideograph */ + [0x7ec8, 0x7ec8], /* CJK Ideograph */ + [0x7ec9, 0x7ec9], /* CJK Ideograph */ + [0x7eca, 0x7eca], /* CJK Ideograph */ + [0x7ecb, 0x7ecb], /* CJK Ideograph */ + [0x7ecc, 0x7ecc], /* CJK Ideograph */ + [0x7ecd, 0x7ecd], /* CJK Ideograph */ + [0x7ece, 0x7ece], /* CJK Ideograph */ + [0x7ecf, 0x7ecf], /* CJK Ideograph */ + [0x7ed0, 0x7ed0], /* CJK Ideograph */ + [0x7ed1, 0x7ed1], /* CJK Ideograph */ + [0x7ed2, 0x7ed2], /* CJK Ideograph */ + [0x7ed3, 0x7ed3], /* CJK Ideograph */ + [0x7ed4, 0x7ed4], /* CJK Ideograph */ + [0x7ed5, 0x7ed5], /* CJK Ideograph */ + [0x7ed6, 0x7ed6], /* CJK Ideograph */ + [0x7ed7, 0x7ed7], /* CJK Ideograph */ + [0x7ed8, 0x7ed8], /* CJK Ideograph */ + [0x7ed9, 0x7ed9], /* CJK Ideograph */ + [0x7eda, 0x7eda], /* CJK Ideograph */ + [0x7edb, 0x7edb], /* CJK Ideograph */ + [0x7edc, 0x7edc], /* CJK Ideograph */ + [0x7edd, 0x7edd], /* CJK Ideograph */ + [0x7ede, 0x7ede], /* CJK Ideograph */ + [0x7edf, 0x7edf], /* CJK Ideograph */ + [0x7ee0, 0x7ee0], /* CJK Ideograph */ + [0x7ee1, 0x7ee1], /* CJK Ideograph */ + [0x7ee2, 0x7ee2], /* CJK Ideograph */ + [0x7ee3, 0x7ee3], /* CJK Ideograph */ + [0x7ee4, 0x7ee4], /* CJK Ideograph */ + [0x7ee5, 0x7ee5], /* CJK Ideograph */ + [0x7ee6, 0x7ee6], /* CJK Ideograph */ + [0x7ee7, 0x7ee7], /* CJK Ideograph */ + [0x7ee8, 0x7ee8], /* CJK Ideograph */ + [0x7ee9, 0x7ee9], /* CJK Ideograph */ + [0x7eea, 0x7eea], /* CJK Ideograph */ + [0x7eeb, 0x7eeb], /* CJK Ideograph */ + [0x7eec, 0x7eec], /* CJK Ideograph */ + [0x7eed, 0x7eed], /* CJK Ideograph */ + [0x7eee, 0x7eee], /* CJK Ideograph */ + [0x7eef, 0x7eef], /* CJK Ideograph */ + [0x7ef0, 0x7ef0], /* CJK Ideograph */ + [0x7ef1, 0x7ef1], /* CJK Ideograph */ + [0x7ef2, 0x7ef2], /* CJK Ideograph */ + [0x7ef3, 0x7ef3], /* CJK Ideograph */ + [0x7ef4, 0x7ef4], /* CJK Ideograph */ + [0x7ef5, 0x7ef5], /* CJK Ideograph */ + [0x7ef6, 0x7ef6], /* CJK Ideograph */ + [0x7ef7, 0x7ef7], /* CJK Ideograph */ + [0x7ef8, 0x7ef8], /* CJK Ideograph */ + [0x7ef9, 0x7ef9], /* CJK Ideograph */ + [0x7efa, 0x7efa], /* CJK Ideograph */ + [0x7efb, 0x7efb], /* CJK Ideograph */ + [0x7efc, 0x7efc], /* CJK Ideograph */ + [0x7efd, 0x7efd], /* CJK Ideograph */ + [0x7efe, 0x7efe], /* CJK Ideograph */ + [0x7eff, 0x7eff], /* CJK Ideograph */ + [0x7f00, 0x7f00], /* CJK Ideograph */ + [0x7f01, 0x7f01], /* CJK Ideograph */ + [0x7f02, 0x7f02], /* CJK Ideograph */ + [0x7f03, 0x7f03], /* CJK Ideograph */ + [0x7f04, 0x7f04], /* CJK Ideograph */ + [0x7f05, 0x7f05], /* CJK Ideograph */ + [0x7f06, 0x7f06], /* CJK Ideograph */ + [0x7f07, 0x7f07], /* CJK Ideograph */ + [0x7f08, 0x7f08], /* CJK Ideograph */ + [0x7f09, 0x7f09], /* CJK Ideograph */ + [0x7f0a, 0x7f0a], /* CJK Ideograph */ + [0x7f0b, 0x7f0b], /* CJK Ideograph */ + [0x7f0c, 0x7f0c], /* CJK Ideograph */ + [0x7f0d, 0x7f0d], /* CJK Ideograph */ + [0x7f0e, 0x7f0e], /* CJK Ideograph */ + [0x7f0f, 0x7f0f], /* CJK Ideograph */ + [0x7f10, 0x7f10], /* CJK Ideograph */ + [0x7f11, 0x7f11], /* CJK Ideograph */ + [0x7f12, 0x7f12], /* CJK Ideograph */ + [0x7f13, 0x7f13], /* CJK Ideograph */ + [0x7f14, 0x7f14], /* CJK Ideograph */ + [0x7f15, 0x7f15], /* CJK Ideograph */ + [0x7f16, 0x7f16], /* CJK Ideograph */ + [0x7f17, 0x7f17], /* CJK Ideograph */ + [0x7f18, 0x7f18], /* CJK Ideograph */ + [0x7f19, 0x7f19], /* CJK Ideograph */ + [0x7f1a, 0x7f1a], /* CJK Ideograph */ + [0x7f1b, 0x7f1b], /* CJK Ideograph */ + [0x7f1c, 0x7f1c], /* CJK Ideograph */ + [0x7f1d, 0x7f1d], /* CJK Ideograph */ + [0x7f1e, 0x7f1e], /* CJK Ideograph */ + [0x7f1f, 0x7f1f], /* CJK Ideograph */ + [0x7f20, 0x7f20], /* CJK Ideograph */ + [0x7f21, 0x7f21], /* CJK Ideograph */ + [0x7f22, 0x7f22], /* CJK Ideograph */ + [0x7f23, 0x7f23], /* CJK Ideograph */ + [0x7f24, 0x7f24], /* CJK Ideograph */ + [0x7f25, 0x7f25], /* CJK Ideograph */ + [0x7f26, 0x7f26], /* CJK Ideograph */ + [0x7f27, 0x7f27], /* CJK Ideograph */ + [0x7f28, 0x7f28], /* CJK Ideograph */ + [0x7f29, 0x7f29], /* CJK Ideograph */ + [0x7f2a, 0x7f2a], /* CJK Ideograph */ + [0x7f2b, 0x7f2b], /* CJK Ideograph */ + [0x7f2c, 0x7f2c], /* CJK Ideograph */ + [0x7f2d, 0x7f2d], /* CJK Ideograph */ + [0x7f2e, 0x7f2e], /* CJK Ideograph */ + [0x7f2f, 0x7f2f], /* CJK Ideograph */ + [0x7f30, 0x7f30], /* CJK Ideograph */ + [0x7f31, 0x7f31], /* CJK Ideograph */ + [0x7f32, 0x7f32], /* CJK Ideograph */ + [0x7f33, 0x7f33], /* CJK Ideograph */ + [0x7f34, 0x7f34], /* CJK Ideograph */ + [0x7f35, 0x7f35], /* CJK Ideograph */ + [0x7f36, 0x7f36], /* CJK Ideograph */ + [0x7f37, 0x7f37], /* CJK Ideograph */ + [0x7f38, 0x7f38], /* CJK Ideograph */ + [0x7f39, 0x7f39], /* CJK Ideograph */ + [0x7f3a, 0x7f3a], /* CJK Ideograph */ + [0x7f3b, 0x7f3b], /* CJK Ideograph */ + [0x7f3c, 0x7f3c], /* CJK Ideograph */ + [0x7f3d, 0x7f3d], /* CJK Ideograph */ + [0x7f3e, 0x7f3e], /* CJK Ideograph */ + [0x7f3f, 0x7f3f], /* CJK Ideograph */ + [0x7f40, 0x7f40], /* CJK Ideograph */ + [0x7f41, 0x7f41], /* CJK Ideograph */ + [0x7f42, 0x7f42], /* CJK Ideograph */ + [0x7f43, 0x7f43], /* CJK Ideograph */ + [0x7f44, 0x7f44], /* CJK Ideograph */ + [0x7f45, 0x7f45], /* CJK Ideograph */ + [0x7f46, 0x7f46], /* CJK Ideograph */ + [0x7f47, 0x7f47], /* CJK Ideograph */ + [0x7f48, 0x7f48], /* CJK Ideograph */ + [0x7f49, 0x7f49], /* CJK Ideograph */ + [0x7f4a, 0x7f4a], /* CJK Ideograph */ + [0x7f4b, 0x7f4b], /* CJK Ideograph */ + [0x7f4c, 0x7f4c], /* CJK Ideograph */ + [0x7f4d, 0x7f4d], /* CJK Ideograph */ + [0x7f4e, 0x7f4e], /* CJK Ideograph */ + [0x7f4f, 0x7f4f], /* CJK Ideograph */ + [0x7f50, 0x7f50], /* CJK Ideograph */ + [0x7f51, 0x7f51], /* CJK Ideograph */ + [0x7f52, 0x7f52], /* CJK Ideograph */ + [0x7f53, 0x7f53], /* CJK Ideograph */ + [0x7f54, 0x7f54], /* CJK Ideograph */ + [0x7f55, 0x7f55], /* CJK Ideograph */ + [0x7f56, 0x7f56], /* CJK Ideograph */ + [0x7f57, 0x7f57], /* CJK Ideograph */ + [0x7f58, 0x7f58], /* CJK Ideograph */ + [0x7f59, 0x7f59], /* CJK Ideograph */ + [0x7f5a, 0x7f5a], /* CJK Ideograph */ + [0x7f5b, 0x7f5b], /* CJK Ideograph */ + [0x7f5c, 0x7f5c], /* CJK Ideograph */ + [0x7f5d, 0x7f5d], /* CJK Ideograph */ + [0x7f5e, 0x7f5e], /* CJK Ideograph */ + [0x7f5f, 0x7f5f], /* CJK Ideograph */ + [0x7f60, 0x7f60], /* CJK Ideograph */ + [0x7f61, 0x7f61], /* CJK Ideograph */ + [0x7f62, 0x7f62], /* CJK Ideograph */ + [0x7f63, 0x7f63], /* CJK Ideograph */ + [0x7f64, 0x7f64], /* CJK Ideograph */ + [0x7f65, 0x7f65], /* CJK Ideograph */ + [0x7f66, 0x7f66], /* CJK Ideograph */ + [0x7f67, 0x7f67], /* CJK Ideograph */ + [0x7f68, 0x7f68], /* CJK Ideograph */ + [0x7f69, 0x7f69], /* CJK Ideograph */ + [0x7f6a, 0x7f6a], /* CJK Ideograph */ + [0x7f6b, 0x7f6b], /* CJK Ideograph */ + [0x7f6c, 0x7f6c], /* CJK Ideograph */ + [0x7f6d, 0x7f6d], /* CJK Ideograph */ + [0x7f6e, 0x7f6e], /* CJK Ideograph */ + [0x7f6f, 0x7f6f], /* CJK Ideograph */ + [0x7f70, 0x7f70], /* CJK Ideograph */ + [0x7f71, 0x7f71], /* CJK Ideograph */ + [0x7f72, 0x7f72], /* CJK Ideograph */ + [0x7f73, 0x7f73], /* CJK Ideograph */ + [0x7f74, 0x7f74], /* CJK Ideograph */ + [0x7f75, 0x7f75], /* CJK Ideograph */ + [0x7f76, 0x7f76], /* CJK Ideograph */ + [0x7f77, 0x7f77], /* CJK Ideograph */ + [0x7f78, 0x7f78], /* CJK Ideograph */ + [0x7f79, 0x7f79], /* CJK Ideograph */ + [0x7f7a, 0x7f7a], /* CJK Ideograph */ + [0x7f7b, 0x7f7b], /* CJK Ideograph */ + [0x7f7c, 0x7f7c], /* CJK Ideograph */ + [0x7f7d, 0x7f7d], /* CJK Ideograph */ + [0x7f7e, 0x7f7e], /* CJK Ideograph */ + [0x7f7f, 0x7f7f], /* CJK Ideograph */ + [0x7f80, 0x7f80], /* CJK Ideograph */ + [0x7f81, 0x7f81], /* CJK Ideograph */ + [0x7f82, 0x7f82], /* CJK Ideograph */ + [0x7f83, 0x7f83], /* CJK Ideograph */ + [0x7f84, 0x7f84], /* CJK Ideograph */ + [0x7f85, 0x7f85], /* CJK Ideograph */ + [0x7f86, 0x7f86], /* CJK Ideograph */ + [0x7f87, 0x7f87], /* CJK Ideograph */ + [0x7f88, 0x7f88], /* CJK Ideograph */ + [0x7f89, 0x7f89], /* CJK Ideograph */ + [0x7f8a, 0x7f8a], /* CJK Ideograph */ + [0x7f8b, 0x7f8b], /* CJK Ideograph */ + [0x7f8c, 0x7f8c], /* CJK Ideograph */ + [0x7f8d, 0x7f8d], /* CJK Ideograph */ + [0x7f8e, 0x7f8e], /* CJK Ideograph */ + [0x7f8f, 0x7f8f], /* CJK Ideograph */ + [0x7f90, 0x7f90], /* CJK Ideograph */ + [0x7f91, 0x7f91], /* CJK Ideograph */ + [0x7f92, 0x7f92], /* CJK Ideograph */ + [0x7f93, 0x7f93], /* CJK Ideograph */ + [0x7f94, 0x7f94], /* CJK Ideograph */ + [0x7f95, 0x7f95], /* CJK Ideograph */ + [0x7f96, 0x7f96], /* CJK Ideograph */ + [0x7f97, 0x7f97], /* CJK Ideograph */ + [0x7f98, 0x7f98], /* CJK Ideograph */ + [0x7f99, 0x7f99], /* CJK Ideograph */ + [0x7f9a, 0x7f9a], /* CJK Ideograph */ + [0x7f9b, 0x7f9b], /* CJK Ideograph */ + [0x7f9c, 0x7f9c], /* CJK Ideograph */ + [0x7f9d, 0x7f9d], /* CJK Ideograph */ + [0x7f9e, 0x7f9e], /* CJK Ideograph */ + [0x7f9f, 0x7f9f], /* CJK Ideograph */ + [0x7fa0, 0x7fa0], /* CJK Ideograph */ + [0x7fa1, 0x7fa1], /* CJK Ideograph */ + [0x7fa2, 0x7fa2], /* CJK Ideograph */ + [0x7fa3, 0x7fa3], /* CJK Ideograph */ + [0x7fa4, 0x7fa4], /* CJK Ideograph */ + [0x7fa5, 0x7fa5], /* CJK Ideograph */ + [0x7fa6, 0x7fa6], /* CJK Ideograph */ + [0x7fa7, 0x7fa7], /* CJK Ideograph */ + [0x7fa8, 0x7fa8], /* CJK Ideograph */ + [0x7fa9, 0x7fa9], /* CJK Ideograph */ + [0x7faa, 0x7faa], /* CJK Ideograph */ + [0x7fab, 0x7fab], /* CJK Ideograph */ + [0x7fac, 0x7fac], /* CJK Ideograph */ + [0x7fad, 0x7fad], /* CJK Ideograph */ + [0x7fae, 0x7fae], /* CJK Ideograph */ + [0x7faf, 0x7faf], /* CJK Ideograph */ + [0x7fb0, 0x7fb0], /* CJK Ideograph */ + [0x7fb1, 0x7fb1], /* CJK Ideograph */ + [0x7fb2, 0x7fb2], /* CJK Ideograph */ + [0x7fb3, 0x7fb3], /* CJK Ideograph */ + [0x7fb4, 0x7fb4], /* CJK Ideograph */ + [0x7fb5, 0x7fb5], /* CJK Ideograph */ + [0x7fb6, 0x7fb6], /* CJK Ideograph */ + [0x7fb7, 0x7fb7], /* CJK Ideograph */ + [0x7fb8, 0x7fb8], /* CJK Ideograph */ + [0x7fb9, 0x7fb9], /* CJK Ideograph */ + [0x7fba, 0x7fba], /* CJK Ideograph */ + [0x7fbb, 0x7fbb], /* CJK Ideograph */ + [0x7fbc, 0x7fbc], /* CJK Ideograph */ + [0x7fbd, 0x7fbd], /* CJK Ideograph */ + [0x7fbe, 0x7fbe], /* CJK Ideograph */ + [0x7fbf, 0x7fbf], /* CJK Ideograph */ + [0x7fc0, 0x7fc0], /* CJK Ideograph */ + [0x7fc1, 0x7fc1], /* CJK Ideograph */ + [0x7fc2, 0x7fc2], /* CJK Ideograph */ + [0x7fc3, 0x7fc3], /* CJK Ideograph */ + [0x7fc4, 0x7fc4], /* CJK Ideograph */ + [0x7fc5, 0x7fc5], /* CJK Ideograph */ + [0x7fc6, 0x7fc6], /* CJK Ideograph */ + [0x7fc7, 0x7fc7], /* CJK Ideograph */ + [0x7fc8, 0x7fc8], /* CJK Ideograph */ + [0x7fc9, 0x7fc9], /* CJK Ideograph */ + [0x7fca, 0x7fca], /* CJK Ideograph */ + [0x7fcb, 0x7fcb], /* CJK Ideograph */ + [0x7fcc, 0x7fcc], /* CJK Ideograph */ + [0x7fcd, 0x7fcd], /* CJK Ideograph */ + [0x7fce, 0x7fce], /* CJK Ideograph */ + [0x7fcf, 0x7fcf], /* CJK Ideograph */ + [0x7fd0, 0x7fd0], /* CJK Ideograph */ + [0x7fd1, 0x7fd1], /* CJK Ideograph */ + [0x7fd2, 0x7fd2], /* CJK Ideograph */ + [0x7fd3, 0x7fd3], /* CJK Ideograph */ + [0x7fd4, 0x7fd4], /* CJK Ideograph */ + [0x7fd5, 0x7fd5], /* CJK Ideograph */ + [0x7fd6, 0x7fd6], /* CJK Ideograph */ + [0x7fd7, 0x7fd7], /* CJK Ideograph */ + [0x7fd8, 0x7fd8], /* CJK Ideograph */ + [0x7fd9, 0x7fd9], /* CJK Ideograph */ + [0x7fda, 0x7fda], /* CJK Ideograph */ + [0x7fdb, 0x7fdb], /* CJK Ideograph */ + [0x7fdc, 0x7fdc], /* CJK Ideograph */ + [0x7fdd, 0x7fdd], /* CJK Ideograph */ + [0x7fde, 0x7fde], /* CJK Ideograph */ + [0x7fdf, 0x7fdf], /* CJK Ideograph */ + [0x7fe0, 0x7fe0], /* CJK Ideograph */ + [0x7fe1, 0x7fe1], /* CJK Ideograph */ + [0x7fe2, 0x7fe2], /* CJK Ideograph */ + [0x7fe3, 0x7fe3], /* CJK Ideograph */ + [0x7fe4, 0x7fe4], /* CJK Ideograph */ + [0x7fe5, 0x7fe5], /* CJK Ideograph */ + [0x7fe6, 0x7fe6], /* CJK Ideograph */ + [0x7fe7, 0x7fe7], /* CJK Ideograph */ + [0x7fe8, 0x7fe8], /* CJK Ideograph */ + [0x7fe9, 0x7fe9], /* CJK Ideograph */ + [0x7fea, 0x7fea], /* CJK Ideograph */ + [0x7feb, 0x7feb], /* CJK Ideograph */ + [0x7fec, 0x7fec], /* CJK Ideograph */ + [0x7fed, 0x7fed], /* CJK Ideograph */ + [0x7fee, 0x7fee], /* CJK Ideograph */ + [0x7fef, 0x7fef], /* CJK Ideograph */ + [0x7ff0, 0x7ff0], /* CJK Ideograph */ + [0x7ff1, 0x7ff1], /* CJK Ideograph */ + [0x7ff2, 0x7ff2], /* CJK Ideograph */ + [0x7ff3, 0x7ff3], /* CJK Ideograph */ + [0x7ff4, 0x7ff4], /* CJK Ideograph */ + [0x7ff5, 0x7ff5], /* CJK Ideograph */ + [0x7ff6, 0x7ff6], /* CJK Ideograph */ + [0x7ff7, 0x7ff7], /* CJK Ideograph */ + [0x7ff8, 0x7ff8], /* CJK Ideograph */ + [0x7ff9, 0x7ff9], /* CJK Ideograph */ + [0x7ffa, 0x7ffa], /* CJK Ideograph */ + [0x7ffb, 0x7ffb], /* CJK Ideograph */ + [0x7ffc, 0x7ffc], /* CJK Ideograph */ + [0x7ffd, 0x7ffd], /* CJK Ideograph */ + [0x7ffe, 0x7ffe], /* CJK Ideograph */ + [0x7fff, 0x7fff], /* CJK Ideograph */ + [0x8000, 0x8000], /* CJK Ideograph */ + [0x8001, 0x8001], /* CJK Ideograph */ + [0x8002, 0x8002], /* CJK Ideograph */ + [0x8003, 0x8003], /* CJK Ideograph */ + [0x8004, 0x8004], /* CJK Ideograph */ + [0x8005, 0x8005], /* CJK Ideograph */ + [0x8006, 0x8006], /* CJK Ideograph */ + [0x8007, 0x8007], /* CJK Ideograph */ + [0x8008, 0x8008], /* CJK Ideograph */ + [0x8009, 0x8009], /* CJK Ideograph */ + [0x800a, 0x800a], /* CJK Ideograph */ + [0x800b, 0x800b], /* CJK Ideograph */ + [0x800c, 0x800c], /* CJK Ideograph */ + [0x800d, 0x800d], /* CJK Ideograph */ + [0x800e, 0x800e], /* CJK Ideograph */ + [0x800f, 0x800f], /* CJK Ideograph */ + [0x8010, 0x8010], /* CJK Ideograph */ + [0x8011, 0x8011], /* CJK Ideograph */ + [0x8012, 0x8012], /* CJK Ideograph */ + [0x8013, 0x8013], /* CJK Ideograph */ + [0x8014, 0x8014], /* CJK Ideograph */ + [0x8015, 0x8015], /* CJK Ideograph */ + [0x8016, 0x8016], /* CJK Ideograph */ + [0x8017, 0x8017], /* CJK Ideograph */ + [0x8018, 0x8018], /* CJK Ideograph */ + [0x8019, 0x8019], /* CJK Ideograph */ + [0x801a, 0x801a], /* CJK Ideograph */ + [0x801b, 0x801b], /* CJK Ideograph */ + [0x801c, 0x801c], /* CJK Ideograph */ + [0x801d, 0x801d], /* CJK Ideograph */ + [0x801e, 0x801e], /* CJK Ideograph */ + [0x801f, 0x801f], /* CJK Ideograph */ + [0x8020, 0x8020], /* CJK Ideograph */ + [0x8021, 0x8021], /* CJK Ideograph */ + [0x8022, 0x8022], /* CJK Ideograph */ + [0x8023, 0x8023], /* CJK Ideograph */ + [0x8024, 0x8024], /* CJK Ideograph */ + [0x8025, 0x8025], /* CJK Ideograph */ + [0x8026, 0x8026], /* CJK Ideograph */ + [0x8027, 0x8027], /* CJK Ideograph */ + [0x8028, 0x8028], /* CJK Ideograph */ + [0x8029, 0x8029], /* CJK Ideograph */ + [0x802a, 0x802a], /* CJK Ideograph */ + [0x802b, 0x802b], /* CJK Ideograph */ + [0x802c, 0x802c], /* CJK Ideograph */ + [0x802d, 0x802d], /* CJK Ideograph */ + [0x802e, 0x802e], /* CJK Ideograph */ + [0x802f, 0x802f], /* CJK Ideograph */ + [0x8030, 0x8030], /* CJK Ideograph */ + [0x8031, 0x8031], /* CJK Ideograph */ + [0x8032, 0x8032], /* CJK Ideograph */ + [0x8033, 0x8033], /* CJK Ideograph */ + [0x8034, 0x8034], /* CJK Ideograph */ + [0x8035, 0x8035], /* CJK Ideograph */ + [0x8036, 0x8036], /* CJK Ideograph */ + [0x8037, 0x8037], /* CJK Ideograph */ + [0x8038, 0x8038], /* CJK Ideograph */ + [0x8039, 0x8039], /* CJK Ideograph */ + [0x803a, 0x803a], /* CJK Ideograph */ + [0x803b, 0x803b], /* CJK Ideograph */ + [0x803c, 0x803c], /* CJK Ideograph */ + [0x803d, 0x803d], /* CJK Ideograph */ + [0x803e, 0x803e], /* CJK Ideograph */ + [0x803f, 0x803f], /* CJK Ideograph */ + [0x8040, 0x8040], /* CJK Ideograph */ + [0x8041, 0x8041], /* CJK Ideograph */ + [0x8042, 0x8042], /* CJK Ideograph */ + [0x8043, 0x8043], /* CJK Ideograph */ + [0x8044, 0x8044], /* CJK Ideograph */ + [0x8045, 0x8045], /* CJK Ideograph */ + [0x8046, 0x8046], /* CJK Ideograph */ + [0x8047, 0x8047], /* CJK Ideograph */ + [0x8048, 0x8048], /* CJK Ideograph */ + [0x8049, 0x8049], /* CJK Ideograph */ + [0x804a, 0x804a], /* CJK Ideograph */ + [0x804b, 0x804b], /* CJK Ideograph */ + [0x804c, 0x804c], /* CJK Ideograph */ + [0x804d, 0x804d], /* CJK Ideograph */ + [0x804e, 0x804e], /* CJK Ideograph */ + [0x804f, 0x804f], /* CJK Ideograph */ + [0x8050, 0x8050], /* CJK Ideograph */ + [0x8051, 0x8051], /* CJK Ideograph */ + [0x8052, 0x8052], /* CJK Ideograph */ + [0x8053, 0x8053], /* CJK Ideograph */ + [0x8054, 0x8054], /* CJK Ideograph */ + [0x8055, 0x8055], /* CJK Ideograph */ + [0x8056, 0x8056], /* CJK Ideograph */ + [0x8057, 0x8057], /* CJK Ideograph */ + [0x8058, 0x8058], /* CJK Ideograph */ + [0x8059, 0x8059], /* CJK Ideograph */ + [0x805a, 0x805a], /* CJK Ideograph */ + [0x805b, 0x805b], /* CJK Ideograph */ + [0x805c, 0x805c], /* CJK Ideograph */ + [0x805d, 0x805d], /* CJK Ideograph */ + [0x805e, 0x805e], /* CJK Ideograph */ + [0x805f, 0x805f], /* CJK Ideograph */ + [0x8060, 0x8060], /* CJK Ideograph */ + [0x8061, 0x8061], /* CJK Ideograph */ + [0x8062, 0x8062], /* CJK Ideograph */ + [0x8063, 0x8063], /* CJK Ideograph */ + [0x8064, 0x8064], /* CJK Ideograph */ + [0x8065, 0x8065], /* CJK Ideograph */ + [0x8066, 0x8066], /* CJK Ideograph */ + [0x8067, 0x8067], /* CJK Ideograph */ + [0x8068, 0x8068], /* CJK Ideograph */ + [0x8069, 0x8069], /* CJK Ideograph */ + [0x806a, 0x806a], /* CJK Ideograph */ + [0x806b, 0x806b], /* CJK Ideograph */ + [0x806c, 0x806c], /* CJK Ideograph */ + [0x806d, 0x806d], /* CJK Ideograph */ + [0x806e, 0x806e], /* CJK Ideograph */ + [0x806f, 0x806f], /* CJK Ideograph */ + [0x8070, 0x8070], /* CJK Ideograph */ + [0x8071, 0x8071], /* CJK Ideograph */ + [0x8072, 0x8072], /* CJK Ideograph */ + [0x8073, 0x8073], /* CJK Ideograph */ + [0x8074, 0x8074], /* CJK Ideograph */ + [0x8075, 0x8075], /* CJK Ideograph */ + [0x8076, 0x8076], /* CJK Ideograph */ + [0x8077, 0x8077], /* CJK Ideograph */ + [0x8078, 0x8078], /* CJK Ideograph */ + [0x8079, 0x8079], /* CJK Ideograph */ + [0x807a, 0x807a], /* CJK Ideograph */ + [0x807b, 0x807b], /* CJK Ideograph */ + [0x807c, 0x807c], /* CJK Ideograph */ + [0x807d, 0x807d], /* CJK Ideograph */ + [0x807e, 0x807e], /* CJK Ideograph */ + [0x807f, 0x807f], /* CJK Ideograph */ + [0x8080, 0x8080], /* CJK Ideograph */ + [0x8081, 0x8081], /* CJK Ideograph */ + [0x8082, 0x8082], /* CJK Ideograph */ + [0x8083, 0x8083], /* CJK Ideograph */ + [0x8084, 0x8084], /* CJK Ideograph */ + [0x8085, 0x8085], /* CJK Ideograph */ + [0x8086, 0x8086], /* CJK Ideograph */ + [0x8087, 0x8087], /* CJK Ideograph */ + [0x8088, 0x8088], /* CJK Ideograph */ + [0x8089, 0x8089], /* CJK Ideograph */ + [0x808a, 0x808a], /* CJK Ideograph */ + [0x808b, 0x808b], /* CJK Ideograph */ + [0x808c, 0x808c], /* CJK Ideograph */ + [0x808d, 0x808d], /* CJK Ideograph */ + [0x808e, 0x808e], /* CJK Ideograph */ + [0x808f, 0x808f], /* CJK Ideograph */ + [0x8090, 0x8090], /* CJK Ideograph */ + [0x8091, 0x8091], /* CJK Ideograph */ + [0x8092, 0x8092], /* CJK Ideograph */ + [0x8093, 0x8093], /* CJK Ideograph */ + [0x8094, 0x8094], /* CJK Ideograph */ + [0x8095, 0x8095], /* CJK Ideograph */ + [0x8096, 0x8096], /* CJK Ideograph */ + [0x8097, 0x8097], /* CJK Ideograph */ + [0x8098, 0x8098], /* CJK Ideograph */ + [0x8099, 0x8099], /* CJK Ideograph */ + [0x809a, 0x809a], /* CJK Ideograph */ + [0x809b, 0x809b], /* CJK Ideograph */ + [0x809c, 0x809c], /* CJK Ideograph */ + [0x809d, 0x809d], /* CJK Ideograph */ + [0x809e, 0x809e], /* CJK Ideograph */ + [0x809f, 0x809f], /* CJK Ideograph */ + [0x80a0, 0x80a0], /* CJK Ideograph */ + [0x80a1, 0x80a1], /* CJK Ideograph */ + [0x80a2, 0x80a2], /* CJK Ideograph */ + [0x80a3, 0x80a3], /* CJK Ideograph */ + [0x80a4, 0x80a4], /* CJK Ideograph */ + [0x80a5, 0x80a5], /* CJK Ideograph */ + [0x80a6, 0x80a6], /* CJK Ideograph */ + [0x80a7, 0x80a7], /* CJK Ideograph */ + [0x80a8, 0x80a8], /* CJK Ideograph */ + [0x80a9, 0x80a9], /* CJK Ideograph */ + [0x80aa, 0x80aa], /* CJK Ideograph */ + [0x80ab, 0x80ab], /* CJK Ideograph */ + [0x80ac, 0x80ac], /* CJK Ideograph */ + [0x80ad, 0x80ad], /* CJK Ideograph */ + [0x80ae, 0x80ae], /* CJK Ideograph */ + [0x80af, 0x80af], /* CJK Ideograph */ + [0x80b0, 0x80b0], /* CJK Ideograph */ + [0x80b1, 0x80b1], /* CJK Ideograph */ + [0x80b2, 0x80b2], /* CJK Ideograph */ + [0x80b3, 0x80b3], /* CJK Ideograph */ + [0x80b4, 0x80b4], /* CJK Ideograph */ + [0x80b5, 0x80b5], /* CJK Ideograph */ + [0x80b6, 0x80b6], /* CJK Ideograph */ + [0x80b7, 0x80b7], /* CJK Ideograph */ + [0x80b8, 0x80b8], /* CJK Ideograph */ + [0x80b9, 0x80b9], /* CJK Ideograph */ + [0x80ba, 0x80ba], /* CJK Ideograph */ + [0x80bb, 0x80bb], /* CJK Ideograph */ + [0x80bc, 0x80bc], /* CJK Ideograph */ + [0x80bd, 0x80bd], /* CJK Ideograph */ + [0x80be, 0x80be], /* CJK Ideograph */ + [0x80bf, 0x80bf], /* CJK Ideograph */ + [0x80c0, 0x80c0], /* CJK Ideograph */ + [0x80c1, 0x80c1], /* CJK Ideograph */ + [0x80c2, 0x80c2], /* CJK Ideograph */ + [0x80c3, 0x80c3], /* CJK Ideograph */ + [0x80c4, 0x80c4], /* CJK Ideograph */ + [0x80c5, 0x80c5], /* CJK Ideograph */ + [0x80c6, 0x80c6], /* CJK Ideograph */ + [0x80c7, 0x80c7], /* CJK Ideograph */ + [0x80c8, 0x80c8], /* CJK Ideograph */ + [0x80c9, 0x80c9], /* CJK Ideograph */ + [0x80ca, 0x80ca], /* CJK Ideograph */ + [0x80cb, 0x80cb], /* CJK Ideograph */ + [0x80cc, 0x80cc], /* CJK Ideograph */ + [0x80cd, 0x80cd], /* CJK Ideograph */ + [0x80ce, 0x80ce], /* CJK Ideograph */ + [0x80cf, 0x80cf], /* CJK Ideograph */ + [0x80d0, 0x80d0], /* CJK Ideograph */ + [0x80d1, 0x80d1], /* CJK Ideograph */ + [0x80d2, 0x80d2], /* CJK Ideograph */ + [0x80d3, 0x80d3], /* CJK Ideograph */ + [0x80d4, 0x80d4], /* CJK Ideograph */ + [0x80d5, 0x80d5], /* CJK Ideograph */ + [0x80d6, 0x80d6], /* CJK Ideograph */ + [0x80d7, 0x80d7], /* CJK Ideograph */ + [0x80d8, 0x80d8], /* CJK Ideograph */ + [0x80d9, 0x80d9], /* CJK Ideograph */ + [0x80da, 0x80da], /* CJK Ideograph */ + [0x80db, 0x80db], /* CJK Ideograph */ + [0x80dc, 0x80dc], /* CJK Ideograph */ + [0x80dd, 0x80dd], /* CJK Ideograph */ + [0x80de, 0x80de], /* CJK Ideograph */ + [0x80df, 0x80df], /* CJK Ideograph */ + [0x80e0, 0x80e0], /* CJK Ideograph */ + [0x80e1, 0x80e1], /* CJK Ideograph */ + [0x80e2, 0x80e2], /* CJK Ideograph */ + [0x80e3, 0x80e3], /* CJK Ideograph */ + [0x80e4, 0x80e4], /* CJK Ideograph */ + [0x80e5, 0x80e5], /* CJK Ideograph */ + [0x80e6, 0x80e6], /* CJK Ideograph */ + [0x80e7, 0x80e7], /* CJK Ideograph */ + [0x80e8, 0x80e8], /* CJK Ideograph */ + [0x80e9, 0x80e9], /* CJK Ideograph */ + [0x80ea, 0x80ea], /* CJK Ideograph */ + [0x80eb, 0x80eb], /* CJK Ideograph */ + [0x80ec, 0x80ec], /* CJK Ideograph */ + [0x80ed, 0x80ed], /* CJK Ideograph */ + [0x80ee, 0x80ee], /* CJK Ideograph */ + [0x80ef, 0x80ef], /* CJK Ideograph */ + [0x80f0, 0x80f0], /* CJK Ideograph */ + [0x80f1, 0x80f1], /* CJK Ideograph */ + [0x80f2, 0x80f2], /* CJK Ideograph */ + [0x80f3, 0x80f3], /* CJK Ideograph */ + [0x80f4, 0x80f4], /* CJK Ideograph */ + [0x80f5, 0x80f5], /* CJK Ideograph */ + [0x80f6, 0x80f6], /* CJK Ideograph */ + [0x80f7, 0x80f7], /* CJK Ideograph */ + [0x80f8, 0x80f8], /* CJK Ideograph */ + [0x80f9, 0x80f9], /* CJK Ideograph */ + [0x80fa, 0x80fa], /* CJK Ideograph */ + [0x80fb, 0x80fb], /* CJK Ideograph */ + [0x80fc, 0x80fc], /* CJK Ideograph */ + [0x80fd, 0x80fd], /* CJK Ideograph */ + [0x80fe, 0x80fe], /* CJK Ideograph */ + [0x80ff, 0x80ff], /* CJK Ideograph */ + [0x8100, 0x8100], /* CJK Ideograph */ + [0x8101, 0x8101], /* CJK Ideograph */ + [0x8102, 0x8102], /* CJK Ideograph */ + [0x8103, 0x8103], /* CJK Ideograph */ + [0x8104, 0x8104], /* CJK Ideograph */ + [0x8105, 0x8105], /* CJK Ideograph */ + [0x8106, 0x8106], /* CJK Ideograph */ + [0x8107, 0x8107], /* CJK Ideograph */ + [0x8108, 0x8108], /* CJK Ideograph */ + [0x8109, 0x8109], /* CJK Ideograph */ + [0x810a, 0x810a], /* CJK Ideograph */ + [0x810b, 0x810b], /* CJK Ideograph */ + [0x810c, 0x810c], /* CJK Ideograph */ + [0x810d, 0x810d], /* CJK Ideograph */ + [0x810e, 0x810e], /* CJK Ideograph */ + [0x810f, 0x810f], /* CJK Ideograph */ + [0x8110, 0x8110], /* CJK Ideograph */ + [0x8111, 0x8111], /* CJK Ideograph */ + [0x8112, 0x8112], /* CJK Ideograph */ + [0x8113, 0x8113], /* CJK Ideograph */ + [0x8114, 0x8114], /* CJK Ideograph */ + [0x8115, 0x8115], /* CJK Ideograph */ + [0x8116, 0x8116], /* CJK Ideograph */ + [0x8117, 0x8117], /* CJK Ideograph */ + [0x8118, 0x8118], /* CJK Ideograph */ + [0x8119, 0x8119], /* CJK Ideograph */ + [0x811a, 0x811a], /* CJK Ideograph */ + [0x811b, 0x811b], /* CJK Ideograph */ + [0x811c, 0x811c], /* CJK Ideograph */ + [0x811d, 0x811d], /* CJK Ideograph */ + [0x811e, 0x811e], /* CJK Ideograph */ + [0x811f, 0x811f], /* CJK Ideograph */ + [0x8120, 0x8120], /* CJK Ideograph */ + [0x8121, 0x8121], /* CJK Ideograph */ + [0x8122, 0x8122], /* CJK Ideograph */ + [0x8123, 0x8123], /* CJK Ideograph */ + [0x8124, 0x8124], /* CJK Ideograph */ + [0x8125, 0x8125], /* CJK Ideograph */ + [0x8126, 0x8126], /* CJK Ideograph */ + [0x8127, 0x8127], /* CJK Ideograph */ + [0x8128, 0x8128], /* CJK Ideograph */ + [0x8129, 0x8129], /* CJK Ideograph */ + [0x812a, 0x812a], /* CJK Ideograph */ + [0x812b, 0x812b], /* CJK Ideograph */ + [0x812c, 0x812c], /* CJK Ideograph */ + [0x812d, 0x812d], /* CJK Ideograph */ + [0x812e, 0x812e], /* CJK Ideograph */ + [0x812f, 0x812f], /* CJK Ideograph */ + [0x8130, 0x8130], /* CJK Ideograph */ + [0x8131, 0x8131], /* CJK Ideograph */ + [0x8132, 0x8132], /* CJK Ideograph */ + [0x8133, 0x8133], /* CJK Ideograph */ + [0x8134, 0x8134], /* CJK Ideograph */ + [0x8135, 0x8135], /* CJK Ideograph */ + [0x8136, 0x8136], /* CJK Ideograph */ + [0x8137, 0x8137], /* CJK Ideograph */ + [0x8138, 0x8138], /* CJK Ideograph */ + [0x8139, 0x8139], /* CJK Ideograph */ + [0x813a, 0x813a], /* CJK Ideograph */ + [0x813b, 0x813b], /* CJK Ideograph */ + [0x813c, 0x813c], /* CJK Ideograph */ + [0x813d, 0x813d], /* CJK Ideograph */ + [0x813e, 0x813e], /* CJK Ideograph */ + [0x813f, 0x813f], /* CJK Ideograph */ + [0x8140, 0x8140], /* CJK Ideograph */ + [0x8141, 0x8141], /* CJK Ideograph */ + [0x8142, 0x8142], /* CJK Ideograph */ + [0x8143, 0x8143], /* CJK Ideograph */ + [0x8144, 0x8144], /* CJK Ideograph */ + [0x8145, 0x8145], /* CJK Ideograph */ + [0x8146, 0x8146], /* CJK Ideograph */ + [0x8147, 0x8147], /* CJK Ideograph */ + [0x8148, 0x8148], /* CJK Ideograph */ + [0x8149, 0x8149], /* CJK Ideograph */ + [0x814a, 0x814a], /* CJK Ideograph */ + [0x814b, 0x814b], /* CJK Ideograph */ + [0x814c, 0x814c], /* CJK Ideograph */ + [0x814d, 0x814d], /* CJK Ideograph */ + [0x814e, 0x814e], /* CJK Ideograph */ + [0x814f, 0x814f], /* CJK Ideograph */ + [0x8150, 0x8150], /* CJK Ideograph */ + [0x8151, 0x8151], /* CJK Ideograph */ + [0x8152, 0x8152], /* CJK Ideograph */ + [0x8153, 0x8153], /* CJK Ideograph */ + [0x8154, 0x8154], /* CJK Ideograph */ + [0x8155, 0x8155], /* CJK Ideograph */ + [0x8156, 0x8156], /* CJK Ideograph */ + [0x8157, 0x8157], /* CJK Ideograph */ + [0x8158, 0x8158], /* CJK Ideograph */ + [0x8159, 0x8159], /* CJK Ideograph */ + [0x815a, 0x815a], /* CJK Ideograph */ + [0x815b, 0x815b], /* CJK Ideograph */ + [0x815c, 0x815c], /* CJK Ideograph */ + [0x815d, 0x815d], /* CJK Ideograph */ + [0x815e, 0x815e], /* CJK Ideograph */ + [0x815f, 0x815f], /* CJK Ideograph */ + [0x8160, 0x8160], /* CJK Ideograph */ + [0x8161, 0x8161], /* CJK Ideograph */ + [0x8162, 0x8162], /* CJK Ideograph */ + [0x8163, 0x8163], /* CJK Ideograph */ + [0x8164, 0x8164], /* CJK Ideograph */ + [0x8165, 0x8165], /* CJK Ideograph */ + [0x8166, 0x8166], /* CJK Ideograph */ + [0x8167, 0x8167], /* CJK Ideograph */ + [0x8168, 0x8168], /* CJK Ideograph */ + [0x8169, 0x8169], /* CJK Ideograph */ + [0x816a, 0x816a], /* CJK Ideograph */ + [0x816b, 0x816b], /* CJK Ideograph */ + [0x816c, 0x816c], /* CJK Ideograph */ + [0x816d, 0x816d], /* CJK Ideograph */ + [0x816e, 0x816e], /* CJK Ideograph */ + [0x816f, 0x816f], /* CJK Ideograph */ + [0x8170, 0x8170], /* CJK Ideograph */ + [0x8171, 0x8171], /* CJK Ideograph */ + [0x8172, 0x8172], /* CJK Ideograph */ + [0x8173, 0x8173], /* CJK Ideograph */ + [0x8174, 0x8174], /* CJK Ideograph */ + [0x8175, 0x8175], /* CJK Ideograph */ + [0x8176, 0x8176], /* CJK Ideograph */ + [0x8177, 0x8177], /* CJK Ideograph */ + [0x8178, 0x8178], /* CJK Ideograph */ + [0x8179, 0x8179], /* CJK Ideograph */ + [0x817a, 0x817a], /* CJK Ideograph */ + [0x817b, 0x817b], /* CJK Ideograph */ + [0x817c, 0x817c], /* CJK Ideograph */ + [0x817d, 0x817d], /* CJK Ideograph */ + [0x817e, 0x817e], /* CJK Ideograph */ + [0x817f, 0x817f], /* CJK Ideograph */ + [0x8180, 0x8180], /* CJK Ideograph */ + [0x8181, 0x8181], /* CJK Ideograph */ + [0x8182, 0x8182], /* CJK Ideograph */ + [0x8183, 0x8183], /* CJK Ideograph */ + [0x8184, 0x8184], /* CJK Ideograph */ + [0x8185, 0x8185], /* CJK Ideograph */ + [0x8186, 0x8186], /* CJK Ideograph */ + [0x8187, 0x8187], /* CJK Ideograph */ + [0x8188, 0x8188], /* CJK Ideograph */ + [0x8189, 0x8189], /* CJK Ideograph */ + [0x818a, 0x818a], /* CJK Ideograph */ + [0x818b, 0x818b], /* CJK Ideograph */ + [0x818c, 0x818c], /* CJK Ideograph */ + [0x818d, 0x818d], /* CJK Ideograph */ + [0x818e, 0x818e], /* CJK Ideograph */ + [0x818f, 0x818f], /* CJK Ideograph */ + [0x8190, 0x8190], /* CJK Ideograph */ + [0x8191, 0x8191], /* CJK Ideograph */ + [0x8192, 0x8192], /* CJK Ideograph */ + [0x8193, 0x8193], /* CJK Ideograph */ + [0x8194, 0x8194], /* CJK Ideograph */ + [0x8195, 0x8195], /* CJK Ideograph */ + [0x8196, 0x8196], /* CJK Ideograph */ + [0x8197, 0x8197], /* CJK Ideograph */ + [0x8198, 0x8198], /* CJK Ideograph */ + [0x8199, 0x8199], /* CJK Ideograph */ + [0x819a, 0x819a], /* CJK Ideograph */ + [0x819b, 0x819b], /* CJK Ideograph */ + [0x819c, 0x819c], /* CJK Ideograph */ + [0x819d, 0x819d], /* CJK Ideograph */ + [0x819e, 0x819e], /* CJK Ideograph */ + [0x819f, 0x819f], /* CJK Ideograph */ + [0x81a0, 0x81a0], /* CJK Ideograph */ + [0x81a1, 0x81a1], /* CJK Ideograph */ + [0x81a2, 0x81a2], /* CJK Ideograph */ + [0x81a3, 0x81a3], /* CJK Ideograph */ + [0x81a4, 0x81a4], /* CJK Ideograph */ + [0x81a5, 0x81a5], /* CJK Ideograph */ + [0x81a6, 0x81a6], /* CJK Ideograph */ + [0x81a7, 0x81a7], /* CJK Ideograph */ + [0x81a8, 0x81a8], /* CJK Ideograph */ + [0x81a9, 0x81a9], /* CJK Ideograph */ + [0x81aa, 0x81aa], /* CJK Ideograph */ + [0x81ab, 0x81ab], /* CJK Ideograph */ + [0x81ac, 0x81ac], /* CJK Ideograph */ + [0x81ad, 0x81ad], /* CJK Ideograph */ + [0x81ae, 0x81ae], /* CJK Ideograph */ + [0x81af, 0x81af], /* CJK Ideograph */ + [0x81b0, 0x81b0], /* CJK Ideograph */ + [0x81b1, 0x81b1], /* CJK Ideograph */ + [0x81b2, 0x81b2], /* CJK Ideograph */ + [0x81b3, 0x81b3], /* CJK Ideograph */ + [0x81b4, 0x81b4], /* CJK Ideograph */ + [0x81b5, 0x81b5], /* CJK Ideograph */ + [0x81b6, 0x81b6], /* CJK Ideograph */ + [0x81b7, 0x81b7], /* CJK Ideograph */ + [0x81b8, 0x81b8], /* CJK Ideograph */ + [0x81b9, 0x81b9], /* CJK Ideograph */ + [0x81ba, 0x81ba], /* CJK Ideograph */ + [0x81bb, 0x81bb], /* CJK Ideograph */ + [0x81bc, 0x81bc], /* CJK Ideograph */ + [0x81bd, 0x81bd], /* CJK Ideograph */ + [0x81be, 0x81be], /* CJK Ideograph */ + [0x81bf, 0x81bf], /* CJK Ideograph */ + [0x81c0, 0x81c0], /* CJK Ideograph */ + [0x81c1, 0x81c1], /* CJK Ideograph */ + [0x81c2, 0x81c2], /* CJK Ideograph */ + [0x81c3, 0x81c3], /* CJK Ideograph */ + [0x81c4, 0x81c4], /* CJK Ideograph */ + [0x81c5, 0x81c5], /* CJK Ideograph */ + [0x81c6, 0x81c6], /* CJK Ideograph */ + [0x81c7, 0x81c7], /* CJK Ideograph */ + [0x81c8, 0x81c8], /* CJK Ideograph */ + [0x81c9, 0x81c9], /* CJK Ideograph */ + [0x81ca, 0x81ca], /* CJK Ideograph */ + [0x81cb, 0x81cb], /* CJK Ideograph */ + [0x81cc, 0x81cc], /* CJK Ideograph */ + [0x81cd, 0x81cd], /* CJK Ideograph */ + [0x81ce, 0x81ce], /* CJK Ideograph */ + [0x81cf, 0x81cf], /* CJK Ideograph */ + [0x81d0, 0x81d0], /* CJK Ideograph */ + [0x81d1, 0x81d1], /* CJK Ideograph */ + [0x81d2, 0x81d2], /* CJK Ideograph */ + [0x81d3, 0x81d3], /* CJK Ideograph */ + [0x81d4, 0x81d4], /* CJK Ideograph */ + [0x81d5, 0x81d5], /* CJK Ideograph */ + [0x81d6, 0x81d6], /* CJK Ideograph */ + [0x81d7, 0x81d7], /* CJK Ideograph */ + [0x81d8, 0x81d8], /* CJK Ideograph */ + [0x81d9, 0x81d9], /* CJK Ideograph */ + [0x81da, 0x81da], /* CJK Ideograph */ + [0x81db, 0x81db], /* CJK Ideograph */ + [0x81dc, 0x81dc], /* CJK Ideograph */ + [0x81dd, 0x81dd], /* CJK Ideograph */ + [0x81de, 0x81de], /* CJK Ideograph */ + [0x81df, 0x81df], /* CJK Ideograph */ + [0x81e0, 0x81e0], /* CJK Ideograph */ + [0x81e1, 0x81e1], /* CJK Ideograph */ + [0x81e2, 0x81e2], /* CJK Ideograph */ + [0x81e3, 0x81e3], /* CJK Ideograph */ + [0x81e4, 0x81e4], /* CJK Ideograph */ + [0x81e5, 0x81e5], /* CJK Ideograph */ + [0x81e6, 0x81e6], /* CJK Ideograph */ + [0x81e7, 0x81e7], /* CJK Ideograph */ + [0x81e8, 0x81e8], /* CJK Ideograph */ + [0x81e9, 0x81e9], /* CJK Ideograph */ + [0x81ea, 0x81ea], /* CJK Ideograph */ + [0x81eb, 0x81eb], /* CJK Ideograph */ + [0x81ec, 0x81ec], /* CJK Ideograph */ + [0x81ed, 0x81ed], /* CJK Ideograph */ + [0x81ee, 0x81ee], /* CJK Ideograph */ + [0x81ef, 0x81ef], /* CJK Ideograph */ + [0x81f0, 0x81f0], /* CJK Ideograph */ + [0x81f1, 0x81f1], /* CJK Ideograph */ + [0x81f2, 0x81f2], /* CJK Ideograph */ + [0x81f3, 0x81f3], /* CJK Ideograph */ + [0x81f4, 0x81f4], /* CJK Ideograph */ + [0x81f5, 0x81f5], /* CJK Ideograph */ + [0x81f6, 0x81f6], /* CJK Ideograph */ + [0x81f7, 0x81f7], /* CJK Ideograph */ + [0x81f8, 0x81f8], /* CJK Ideograph */ + [0x81f9, 0x81f9], /* CJK Ideograph */ + [0x81fa, 0x81fa], /* CJK Ideograph */ + [0x81fb, 0x81fb], /* CJK Ideograph */ + [0x81fc, 0x81fc], /* CJK Ideograph */ + [0x81fd, 0x81fd], /* CJK Ideograph */ + [0x81fe, 0x81fe], /* CJK Ideograph */ + [0x81ff, 0x81ff], /* CJK Ideograph */ + [0x8200, 0x8200], /* CJK Ideograph */ + [0x8201, 0x8201], /* CJK Ideograph */ + [0x8202, 0x8202], /* CJK Ideograph */ + [0x8203, 0x8203], /* CJK Ideograph */ + [0x8204, 0x8204], /* CJK Ideograph */ + [0x8205, 0x8205], /* CJK Ideograph */ + [0x8206, 0x8206], /* CJK Ideograph */ + [0x8207, 0x8207], /* CJK Ideograph */ + [0x8208, 0x8208], /* CJK Ideograph */ + [0x8209, 0x8209], /* CJK Ideograph */ + [0x820a, 0x820a], /* CJK Ideograph */ + [0x820b, 0x820b], /* CJK Ideograph */ + [0x820c, 0x820c], /* CJK Ideograph */ + [0x820d, 0x820d], /* CJK Ideograph */ + [0x820e, 0x820e], /* CJK Ideograph */ + [0x820f, 0x820f], /* CJK Ideograph */ + [0x8210, 0x8210], /* CJK Ideograph */ + [0x8211, 0x8211], /* CJK Ideograph */ + [0x8212, 0x8212], /* CJK Ideograph */ + [0x8213, 0x8213], /* CJK Ideograph */ + [0x8214, 0x8214], /* CJK Ideograph */ + [0x8215, 0x8215], /* CJK Ideograph */ + [0x8216, 0x8216], /* CJK Ideograph */ + [0x8217, 0x8217], /* CJK Ideograph */ + [0x8218, 0x8218], /* CJK Ideograph */ + [0x8219, 0x8219], /* CJK Ideograph */ + [0x821a, 0x821a], /* CJK Ideograph */ + [0x821b, 0x821b], /* CJK Ideograph */ + [0x821c, 0x821c], /* CJK Ideograph */ + [0x821d, 0x821d], /* CJK Ideograph */ + [0x821e, 0x821e], /* CJK Ideograph */ + [0x821f, 0x821f], /* CJK Ideograph */ + [0x8220, 0x8220], /* CJK Ideograph */ + [0x8221, 0x8221], /* CJK Ideograph */ + [0x8222, 0x8222], /* CJK Ideograph */ + [0x8223, 0x8223], /* CJK Ideograph */ + [0x8224, 0x8224], /* CJK Ideograph */ + [0x8225, 0x8225], /* CJK Ideograph */ + [0x8226, 0x8226], /* CJK Ideograph */ + [0x8227, 0x8227], /* CJK Ideograph */ + [0x8228, 0x8228], /* CJK Ideograph */ + [0x8229, 0x8229], /* CJK Ideograph */ + [0x822a, 0x822a], /* CJK Ideograph */ + [0x822b, 0x822b], /* CJK Ideograph */ + [0x822c, 0x822c], /* CJK Ideograph */ + [0x822d, 0x822d], /* CJK Ideograph */ + [0x822e, 0x822e], /* CJK Ideograph */ + [0x822f, 0x822f], /* CJK Ideograph */ + [0x8230, 0x8230], /* CJK Ideograph */ + [0x8231, 0x8231], /* CJK Ideograph */ + [0x8232, 0x8232], /* CJK Ideograph */ + [0x8233, 0x8233], /* CJK Ideograph */ + [0x8234, 0x8234], /* CJK Ideograph */ + [0x8235, 0x8235], /* CJK Ideograph */ + [0x8236, 0x8236], /* CJK Ideograph */ + [0x8237, 0x8237], /* CJK Ideograph */ + [0x8238, 0x8238], /* CJK Ideograph */ + [0x8239, 0x8239], /* CJK Ideograph */ + [0x823a, 0x823a], /* CJK Ideograph */ + [0x823b, 0x823b], /* CJK Ideograph */ + [0x823c, 0x823c], /* CJK Ideograph */ + [0x823d, 0x823d], /* CJK Ideograph */ + [0x823e, 0x823e], /* CJK Ideograph */ + [0x823f, 0x823f], /* CJK Ideograph */ + [0x8240, 0x8240], /* CJK Ideograph */ + [0x8241, 0x8241], /* CJK Ideograph */ + [0x8242, 0x8242], /* CJK Ideograph */ + [0x8243, 0x8243], /* CJK Ideograph */ + [0x8244, 0x8244], /* CJK Ideograph */ + [0x8245, 0x8245], /* CJK Ideograph */ + [0x8246, 0x8246], /* CJK Ideograph */ + [0x8247, 0x8247], /* CJK Ideograph */ + [0x8248, 0x8248], /* CJK Ideograph */ + [0x8249, 0x8249], /* CJK Ideograph */ + [0x824a, 0x824a], /* CJK Ideograph */ + [0x824b, 0x824b], /* CJK Ideograph */ + [0x824c, 0x824c], /* CJK Ideograph */ + [0x824d, 0x824d], /* CJK Ideograph */ + [0x824e, 0x824e], /* CJK Ideograph */ + [0x824f, 0x824f], /* CJK Ideograph */ + [0x8250, 0x8250], /* CJK Ideograph */ + [0x8251, 0x8251], /* CJK Ideograph */ + [0x8252, 0x8252], /* CJK Ideograph */ + [0x8253, 0x8253], /* CJK Ideograph */ + [0x8254, 0x8254], /* CJK Ideograph */ + [0x8255, 0x8255], /* CJK Ideograph */ + [0x8256, 0x8256], /* CJK Ideograph */ + [0x8257, 0x8257], /* CJK Ideograph */ + [0x8258, 0x8258], /* CJK Ideograph */ + [0x8259, 0x8259], /* CJK Ideograph */ + [0x825a, 0x825a], /* CJK Ideograph */ + [0x825b, 0x825b], /* CJK Ideograph */ + [0x825c, 0x825c], /* CJK Ideograph */ + [0x825d, 0x825d], /* CJK Ideograph */ + [0x825e, 0x825e], /* CJK Ideograph */ + [0x825f, 0x825f], /* CJK Ideograph */ + [0x8260, 0x8260], /* CJK Ideograph */ + [0x8261, 0x8261], /* CJK Ideograph */ + [0x8262, 0x8262], /* CJK Ideograph */ + [0x8263, 0x8263], /* CJK Ideograph */ + [0x8264, 0x8264], /* CJK Ideograph */ + [0x8265, 0x8265], /* CJK Ideograph */ + [0x8266, 0x8266], /* CJK Ideograph */ + [0x8267, 0x8267], /* CJK Ideograph */ + [0x8268, 0x8268], /* CJK Ideograph */ + [0x8269, 0x8269], /* CJK Ideograph */ + [0x826a, 0x826a], /* CJK Ideograph */ + [0x826b, 0x826b], /* CJK Ideograph */ + [0x826c, 0x826c], /* CJK Ideograph */ + [0x826d, 0x826d], /* CJK Ideograph */ + [0x826e, 0x826e], /* CJK Ideograph */ + [0x826f, 0x826f], /* CJK Ideograph */ + [0x8270, 0x8270], /* CJK Ideograph */ + [0x8271, 0x8271], /* CJK Ideograph */ + [0x8272, 0x8272], /* CJK Ideograph */ + [0x8273, 0x8273], /* CJK Ideograph */ + [0x8274, 0x8274], /* CJK Ideograph */ + [0x8275, 0x8275], /* CJK Ideograph */ + [0x8276, 0x8276], /* CJK Ideograph */ + [0x8277, 0x8277], /* CJK Ideograph */ + [0x8278, 0x8278], /* CJK Ideograph */ + [0x8279, 0x8279], /* CJK Ideograph */ + [0x827a, 0x827a], /* CJK Ideograph */ + [0x827b, 0x827b], /* CJK Ideograph */ + [0x827c, 0x827c], /* CJK Ideograph */ + [0x827d, 0x827d], /* CJK Ideograph */ + [0x827e, 0x827e], /* CJK Ideograph */ + [0x827f, 0x827f], /* CJK Ideograph */ + [0x8280, 0x8280], /* CJK Ideograph */ + [0x8281, 0x8281], /* CJK Ideograph */ + [0x8282, 0x8282], /* CJK Ideograph */ + [0x8283, 0x8283], /* CJK Ideograph */ + [0x8284, 0x8284], /* CJK Ideograph */ + [0x8285, 0x8285], /* CJK Ideograph */ + [0x8286, 0x8286], /* CJK Ideograph */ + [0x8287, 0x8287], /* CJK Ideograph */ + [0x8288, 0x8288], /* CJK Ideograph */ + [0x8289, 0x8289], /* CJK Ideograph */ + [0x828a, 0x828a], /* CJK Ideograph */ + [0x828b, 0x828b], /* CJK Ideograph */ + [0x828c, 0x828c], /* CJK Ideograph */ + [0x828d, 0x828d], /* CJK Ideograph */ + [0x828e, 0x828e], /* CJK Ideograph */ + [0x828f, 0x828f], /* CJK Ideograph */ + [0x8290, 0x8290], /* CJK Ideograph */ + [0x8291, 0x8291], /* CJK Ideograph */ + [0x8292, 0x8292], /* CJK Ideograph */ + [0x8293, 0x8293], /* CJK Ideograph */ + [0x8294, 0x8294], /* CJK Ideograph */ + [0x8295, 0x8295], /* CJK Ideograph */ + [0x8296, 0x8296], /* CJK Ideograph */ + [0x8297, 0x8297], /* CJK Ideograph */ + [0x8298, 0x8298], /* CJK Ideograph */ + [0x8299, 0x8299], /* CJK Ideograph */ + [0x829a, 0x829a], /* CJK Ideograph */ + [0x829b, 0x829b], /* CJK Ideograph */ + [0x829c, 0x829c], /* CJK Ideograph */ + [0x829d, 0x829d], /* CJK Ideograph */ + [0x829e, 0x829e], /* CJK Ideograph */ + [0x829f, 0x829f], /* CJK Ideograph */ + [0x82a0, 0x82a0], /* CJK Ideograph */ + [0x82a1, 0x82a1], /* CJK Ideograph */ + [0x82a2, 0x82a2], /* CJK Ideograph */ + [0x82a3, 0x82a3], /* CJK Ideograph */ + [0x82a4, 0x82a4], /* CJK Ideograph */ + [0x82a5, 0x82a5], /* CJK Ideograph */ + [0x82a6, 0x82a6], /* CJK Ideograph */ + [0x82a7, 0x82a7], /* CJK Ideograph */ + [0x82a8, 0x82a8], /* CJK Ideograph */ + [0x82a9, 0x82a9], /* CJK Ideograph */ + [0x82aa, 0x82aa], /* CJK Ideograph */ + [0x82ab, 0x82ab], /* CJK Ideograph */ + [0x82ac, 0x82ac], /* CJK Ideograph */ + [0x82ad, 0x82ad], /* CJK Ideograph */ + [0x82ae, 0x82ae], /* CJK Ideograph */ + [0x82af, 0x82af], /* CJK Ideograph */ + [0x82b0, 0x82b0], /* CJK Ideograph */ + [0x82b1, 0x82b1], /* CJK Ideograph */ + [0x82b2, 0x82b2], /* CJK Ideograph */ + [0x82b3, 0x82b3], /* CJK Ideograph */ + [0x82b4, 0x82b4], /* CJK Ideograph */ + [0x82b5, 0x82b5], /* CJK Ideograph */ + [0x82b6, 0x82b6], /* CJK Ideograph */ + [0x82b7, 0x82b7], /* CJK Ideograph */ + [0x82b8, 0x82b8], /* CJK Ideograph */ + [0x82b9, 0x82b9], /* CJK Ideograph */ + [0x82ba, 0x82ba], /* CJK Ideograph */ + [0x82bb, 0x82bb], /* CJK Ideograph */ + [0x82bc, 0x82bc], /* CJK Ideograph */ + [0x82bd, 0x82bd], /* CJK Ideograph */ + [0x82be, 0x82be], /* CJK Ideograph */ + [0x82bf, 0x82bf], /* CJK Ideograph */ + [0x82c0, 0x82c0], /* CJK Ideograph */ + [0x82c1, 0x82c1], /* CJK Ideograph */ + [0x82c2, 0x82c2], /* CJK Ideograph */ + [0x82c3, 0x82c3], /* CJK Ideograph */ + [0x82c4, 0x82c4], /* CJK Ideograph */ + [0x82c5, 0x82c5], /* CJK Ideograph */ + [0x82c6, 0x82c6], /* CJK Ideograph */ + [0x82c7, 0x82c7], /* CJK Ideograph */ + [0x82c8, 0x82c8], /* CJK Ideograph */ + [0x82c9, 0x82c9], /* CJK Ideograph */ + [0x82ca, 0x82ca], /* CJK Ideograph */ + [0x82cb, 0x82cb], /* CJK Ideograph */ + [0x82cc, 0x82cc], /* CJK Ideograph */ + [0x82cd, 0x82cd], /* CJK Ideograph */ + [0x82ce, 0x82ce], /* CJK Ideograph */ + [0x82cf, 0x82cf], /* CJK Ideograph */ + [0x82d0, 0x82d0], /* CJK Ideograph */ + [0x82d1, 0x82d1], /* CJK Ideograph */ + [0x82d2, 0x82d2], /* CJK Ideograph */ + [0x82d3, 0x82d3], /* CJK Ideograph */ + [0x82d4, 0x82d4], /* CJK Ideograph */ + [0x82d5, 0x82d5], /* CJK Ideograph */ + [0x82d6, 0x82d6], /* CJK Ideograph */ + [0x82d7, 0x82d7], /* CJK Ideograph */ + [0x82d8, 0x82d8], /* CJK Ideograph */ + [0x82d9, 0x82d9], /* CJK Ideograph */ + [0x82da, 0x82da], /* CJK Ideograph */ + [0x82db, 0x82db], /* CJK Ideograph */ + [0x82dc, 0x82dc], /* CJK Ideograph */ + [0x82dd, 0x82dd], /* CJK Ideograph */ + [0x82de, 0x82de], /* CJK Ideograph */ + [0x82df, 0x82df], /* CJK Ideograph */ + [0x82e0, 0x82e0], /* CJK Ideograph */ + [0x82e1, 0x82e1], /* CJK Ideograph */ + [0x82e2, 0x82e2], /* CJK Ideograph */ + [0x82e3, 0x82e3], /* CJK Ideograph */ + [0x82e4, 0x82e4], /* CJK Ideograph */ + [0x82e5, 0x82e5], /* CJK Ideograph */ + [0x82e6, 0x82e6], /* CJK Ideograph */ + [0x82e7, 0x82e7], /* CJK Ideograph */ + [0x82e8, 0x82e8], /* CJK Ideograph */ + [0x82e9, 0x82e9], /* CJK Ideograph */ + [0x82ea, 0x82ea], /* CJK Ideograph */ + [0x82eb, 0x82eb], /* CJK Ideograph */ + [0x82ec, 0x82ec], /* CJK Ideograph */ + [0x82ed, 0x82ed], /* CJK Ideograph */ + [0x82ee, 0x82ee], /* CJK Ideograph */ + [0x82ef, 0x82ef], /* CJK Ideograph */ + [0x82f0, 0x82f0], /* CJK Ideograph */ + [0x82f1, 0x82f1], /* CJK Ideograph */ + [0x82f2, 0x82f2], /* CJK Ideograph */ + [0x82f3, 0x82f3], /* CJK Ideograph */ + [0x82f4, 0x82f4], /* CJK Ideograph */ + [0x82f5, 0x82f5], /* CJK Ideograph */ + [0x82f6, 0x82f6], /* CJK Ideograph */ + [0x82f7, 0x82f7], /* CJK Ideograph */ + [0x82f8, 0x82f8], /* CJK Ideograph */ + [0x82f9, 0x82f9], /* CJK Ideograph */ + [0x82fa, 0x82fa], /* CJK Ideograph */ + [0x82fb, 0x82fb], /* CJK Ideograph */ + [0x82fc, 0x82fc], /* CJK Ideograph */ + [0x82fd, 0x82fd], /* CJK Ideograph */ + [0x82fe, 0x82fe], /* CJK Ideograph */ + [0x82ff, 0x82ff], /* CJK Ideograph */ + [0x8300, 0x8300], /* CJK Ideograph */ + [0x8301, 0x8301], /* CJK Ideograph */ + [0x8302, 0x8302], /* CJK Ideograph */ + [0x8303, 0x8303], /* CJK Ideograph */ + [0x8304, 0x8304], /* CJK Ideograph */ + [0x8305, 0x8305], /* CJK Ideograph */ + [0x8306, 0x8306], /* CJK Ideograph */ + [0x8307, 0x8307], /* CJK Ideograph */ + [0x8308, 0x8308], /* CJK Ideograph */ + [0x8309, 0x8309], /* CJK Ideograph */ + [0x830a, 0x830a], /* CJK Ideograph */ + [0x830b, 0x830b], /* CJK Ideograph */ + [0x830c, 0x830c], /* CJK Ideograph */ + [0x830d, 0x830d], /* CJK Ideograph */ + [0x830e, 0x830e], /* CJK Ideograph */ + [0x830f, 0x830f], /* CJK Ideograph */ + [0x8310, 0x8310], /* CJK Ideograph */ + [0x8311, 0x8311], /* CJK Ideograph */ + [0x8312, 0x8312], /* CJK Ideograph */ + [0x8313, 0x8313], /* CJK Ideograph */ + [0x8314, 0x8314], /* CJK Ideograph */ + [0x8315, 0x8315], /* CJK Ideograph */ + [0x8316, 0x8316], /* CJK Ideograph */ + [0x8317, 0x8317], /* CJK Ideograph */ + [0x8318, 0x8318], /* CJK Ideograph */ + [0x8319, 0x8319], /* CJK Ideograph */ + [0x831a, 0x831a], /* CJK Ideograph */ + [0x831b, 0x831b], /* CJK Ideograph */ + [0x831c, 0x831c], /* CJK Ideograph */ + [0x831d, 0x831d], /* CJK Ideograph */ + [0x831e, 0x831e], /* CJK Ideograph */ + [0x831f, 0x831f], /* CJK Ideograph */ + [0x8320, 0x8320], /* CJK Ideograph */ + [0x8321, 0x8321], /* CJK Ideograph */ + [0x8322, 0x8322], /* CJK Ideograph */ + [0x8323, 0x8323], /* CJK Ideograph */ + [0x8324, 0x8324], /* CJK Ideograph */ + [0x8325, 0x8325], /* CJK Ideograph */ + [0x8326, 0x8326], /* CJK Ideograph */ + [0x8327, 0x8327], /* CJK Ideograph */ + [0x8328, 0x8328], /* CJK Ideograph */ + [0x8329, 0x8329], /* CJK Ideograph */ + [0x832a, 0x832a], /* CJK Ideograph */ + [0x832b, 0x832b], /* CJK Ideograph */ + [0x832c, 0x832c], /* CJK Ideograph */ + [0x832d, 0x832d], /* CJK Ideograph */ + [0x832e, 0x832e], /* CJK Ideograph */ + [0x832f, 0x832f], /* CJK Ideograph */ + [0x8330, 0x8330], /* CJK Ideograph */ + [0x8331, 0x8331], /* CJK Ideograph */ + [0x8332, 0x8332], /* CJK Ideograph */ + [0x8333, 0x8333], /* CJK Ideograph */ + [0x8334, 0x8334], /* CJK Ideograph */ + [0x8335, 0x8335], /* CJK Ideograph */ + [0x8336, 0x8336], /* CJK Ideograph */ + [0x8337, 0x8337], /* CJK Ideograph */ + [0x8338, 0x8338], /* CJK Ideograph */ + [0x8339, 0x8339], /* CJK Ideograph */ + [0x833a, 0x833a], /* CJK Ideograph */ + [0x833b, 0x833b], /* CJK Ideograph */ + [0x833c, 0x833c], /* CJK Ideograph */ + [0x833d, 0x833d], /* CJK Ideograph */ + [0x833e, 0x833e], /* CJK Ideograph */ + [0x833f, 0x833f], /* CJK Ideograph */ + [0x8340, 0x8340], /* CJK Ideograph */ + [0x8341, 0x8341], /* CJK Ideograph */ + [0x8342, 0x8342], /* CJK Ideograph */ + [0x8343, 0x8343], /* CJK Ideograph */ + [0x8344, 0x8344], /* CJK Ideograph */ + [0x8345, 0x8345], /* CJK Ideograph */ + [0x8346, 0x8346], /* CJK Ideograph */ + [0x8347, 0x8347], /* CJK Ideograph */ + [0x8348, 0x8348], /* CJK Ideograph */ + [0x8349, 0x8349], /* CJK Ideograph */ + [0x834a, 0x834a], /* CJK Ideograph */ + [0x834b, 0x834b], /* CJK Ideograph */ + [0x834c, 0x834c], /* CJK Ideograph */ + [0x834d, 0x834d], /* CJK Ideograph */ + [0x834e, 0x834e], /* CJK Ideograph */ + [0x834f, 0x834f], /* CJK Ideograph */ + [0x8350, 0x8350], /* CJK Ideograph */ + [0x8351, 0x8351], /* CJK Ideograph */ + [0x8352, 0x8352], /* CJK Ideograph */ + [0x8353, 0x8353], /* CJK Ideograph */ + [0x8354, 0x8354], /* CJK Ideograph */ + [0x8355, 0x8355], /* CJK Ideograph */ + [0x8356, 0x8356], /* CJK Ideograph */ + [0x8357, 0x8357], /* CJK Ideograph */ + [0x8358, 0x8358], /* CJK Ideograph */ + [0x8359, 0x8359], /* CJK Ideograph */ + [0x835a, 0x835a], /* CJK Ideograph */ + [0x835b, 0x835b], /* CJK Ideograph */ + [0x835c, 0x835c], /* CJK Ideograph */ + [0x835d, 0x835d], /* CJK Ideograph */ + [0x835e, 0x835e], /* CJK Ideograph */ + [0x835f, 0x835f], /* CJK Ideograph */ + [0x8360, 0x8360], /* CJK Ideograph */ + [0x8361, 0x8361], /* CJK Ideograph */ + [0x8362, 0x8362], /* CJK Ideograph */ + [0x8363, 0x8363], /* CJK Ideograph */ + [0x8364, 0x8364], /* CJK Ideograph */ + [0x8365, 0x8365], /* CJK Ideograph */ + [0x8366, 0x8366], /* CJK Ideograph */ + [0x8367, 0x8367], /* CJK Ideograph */ + [0x8368, 0x8368], /* CJK Ideograph */ + [0x8369, 0x8369], /* CJK Ideograph */ + [0x836a, 0x836a], /* CJK Ideograph */ + [0x836b, 0x836b], /* CJK Ideograph */ + [0x836c, 0x836c], /* CJK Ideograph */ + [0x836d, 0x836d], /* CJK Ideograph */ + [0x836e, 0x836e], /* CJK Ideograph */ + [0x836f, 0x836f], /* CJK Ideograph */ + [0x8370, 0x8370], /* CJK Ideograph */ + [0x8371, 0x8371], /* CJK Ideograph */ + [0x8372, 0x8372], /* CJK Ideograph */ + [0x8373, 0x8373], /* CJK Ideograph */ + [0x8374, 0x8374], /* CJK Ideograph */ + [0x8375, 0x8375], /* CJK Ideograph */ + [0x8376, 0x8376], /* CJK Ideograph */ + [0x8377, 0x8377], /* CJK Ideograph */ + [0x8378, 0x8378], /* CJK Ideograph */ + [0x8379, 0x8379], /* CJK Ideograph */ + [0x837a, 0x837a], /* CJK Ideograph */ + [0x837b, 0x837b], /* CJK Ideograph */ + [0x837c, 0x837c], /* CJK Ideograph */ + [0x837d, 0x837d], /* CJK Ideograph */ + [0x837e, 0x837e], /* CJK Ideograph */ + [0x837f, 0x837f], /* CJK Ideograph */ + [0x8380, 0x8380], /* CJK Ideograph */ + [0x8381, 0x8381], /* CJK Ideograph */ + [0x8382, 0x8382], /* CJK Ideograph */ + [0x8383, 0x8383], /* CJK Ideograph */ + [0x8384, 0x8384], /* CJK Ideograph */ + [0x8385, 0x8385], /* CJK Ideograph */ + [0x8386, 0x8386], /* CJK Ideograph */ + [0x8387, 0x8387], /* CJK Ideograph */ + [0x8388, 0x8388], /* CJK Ideograph */ + [0x8389, 0x8389], /* CJK Ideograph */ + [0x838a, 0x838a], /* CJK Ideograph */ + [0x838b, 0x838b], /* CJK Ideograph */ + [0x838c, 0x838c], /* CJK Ideograph */ + [0x838d, 0x838d], /* CJK Ideograph */ + [0x838e, 0x838e], /* CJK Ideograph */ + [0x838f, 0x838f], /* CJK Ideograph */ + [0x8390, 0x8390], /* CJK Ideograph */ + [0x8391, 0x8391], /* CJK Ideograph */ + [0x8392, 0x8392], /* CJK Ideograph */ + [0x8393, 0x8393], /* CJK Ideograph */ + [0x8394, 0x8394], /* CJK Ideograph */ + [0x8395, 0x8395], /* CJK Ideograph */ + [0x8396, 0x8396], /* CJK Ideograph */ + [0x8397, 0x8397], /* CJK Ideograph */ + [0x8398, 0x8398], /* CJK Ideograph */ + [0x8399, 0x8399], /* CJK Ideograph */ + [0x839a, 0x839a], /* CJK Ideograph */ + [0x839b, 0x839b], /* CJK Ideograph */ + [0x839c, 0x839c], /* CJK Ideograph */ + [0x839d, 0x839d], /* CJK Ideograph */ + [0x839e, 0x839e], /* CJK Ideograph */ + [0x839f, 0x839f], /* CJK Ideograph */ + [0x83a0, 0x83a0], /* CJK Ideograph */ + [0x83a1, 0x83a1], /* CJK Ideograph */ + [0x83a2, 0x83a2], /* CJK Ideograph */ + [0x83a3, 0x83a3], /* CJK Ideograph */ + [0x83a4, 0x83a4], /* CJK Ideograph */ + [0x83a5, 0x83a5], /* CJK Ideograph */ + [0x83a6, 0x83a6], /* CJK Ideograph */ + [0x83a7, 0x83a7], /* CJK Ideograph */ + [0x83a8, 0x83a8], /* CJK Ideograph */ + [0x83a9, 0x83a9], /* CJK Ideograph */ + [0x83aa, 0x83aa], /* CJK Ideograph */ + [0x83ab, 0x83ab], /* CJK Ideograph */ + [0x83ac, 0x83ac], /* CJK Ideograph */ + [0x83ad, 0x83ad], /* CJK Ideograph */ + [0x83ae, 0x83ae], /* CJK Ideograph */ + [0x83af, 0x83af], /* CJK Ideograph */ + [0x83b0, 0x83b0], /* CJK Ideograph */ + [0x83b1, 0x83b1], /* CJK Ideograph */ + [0x83b2, 0x83b2], /* CJK Ideograph */ + [0x83b3, 0x83b3], /* CJK Ideograph */ + [0x83b4, 0x83b4], /* CJK Ideograph */ + [0x83b5, 0x83b5], /* CJK Ideograph */ + [0x83b6, 0x83b6], /* CJK Ideograph */ + [0x83b7, 0x83b7], /* CJK Ideograph */ + [0x83b8, 0x83b8], /* CJK Ideograph */ + [0x83b9, 0x83b9], /* CJK Ideograph */ + [0x83ba, 0x83ba], /* CJK Ideograph */ + [0x83bb, 0x83bb], /* CJK Ideograph */ + [0x83bc, 0x83bc], /* CJK Ideograph */ + [0x83bd, 0x83bd], /* CJK Ideograph */ + [0x83be, 0x83be], /* CJK Ideograph */ + [0x83bf, 0x83bf], /* CJK Ideograph */ + [0x83c0, 0x83c0], /* CJK Ideograph */ + [0x83c1, 0x83c1], /* CJK Ideograph */ + [0x83c2, 0x83c2], /* CJK Ideograph */ + [0x83c3, 0x83c3], /* CJK Ideograph */ + [0x83c4, 0x83c4], /* CJK Ideograph */ + [0x83c5, 0x83c5], /* CJK Ideograph */ + [0x83c6, 0x83c6], /* CJK Ideograph */ + [0x83c7, 0x83c7], /* CJK Ideograph */ + [0x83c8, 0x83c8], /* CJK Ideograph */ + [0x83c9, 0x83c9], /* CJK Ideograph */ + [0x83ca, 0x83ca], /* CJK Ideograph */ + [0x83cb, 0x83cb], /* CJK Ideograph */ + [0x83cc, 0x83cc], /* CJK Ideograph */ + [0x83cd, 0x83cd], /* CJK Ideograph */ + [0x83ce, 0x83ce], /* CJK Ideograph */ + [0x83cf, 0x83cf], /* CJK Ideograph */ + [0x83d0, 0x83d0], /* CJK Ideograph */ + [0x83d1, 0x83d1], /* CJK Ideograph */ + [0x83d2, 0x83d2], /* CJK Ideograph */ + [0x83d3, 0x83d3], /* CJK Ideograph */ + [0x83d4, 0x83d4], /* CJK Ideograph */ + [0x83d5, 0x83d5], /* CJK Ideograph */ + [0x83d6, 0x83d6], /* CJK Ideograph */ + [0x83d7, 0x83d7], /* CJK Ideograph */ + [0x83d8, 0x83d8], /* CJK Ideograph */ + [0x83d9, 0x83d9], /* CJK Ideograph */ + [0x83da, 0x83da], /* CJK Ideograph */ + [0x83db, 0x83db], /* CJK Ideograph */ + [0x83dc, 0x83dc], /* CJK Ideograph */ + [0x83dd, 0x83dd], /* CJK Ideograph */ + [0x83de, 0x83de], /* CJK Ideograph */ + [0x83df, 0x83df], /* CJK Ideograph */ + [0x83e0, 0x83e0], /* CJK Ideograph */ + [0x83e1, 0x83e1], /* CJK Ideograph */ + [0x83e2, 0x83e2], /* CJK Ideograph */ + [0x83e3, 0x83e3], /* CJK Ideograph */ + [0x83e4, 0x83e4], /* CJK Ideograph */ + [0x83e5, 0x83e5], /* CJK Ideograph */ + [0x83e6, 0x83e6], /* CJK Ideograph */ + [0x83e7, 0x83e7], /* CJK Ideograph */ + [0x83e8, 0x83e8], /* CJK Ideograph */ + [0x83e9, 0x83e9], /* CJK Ideograph */ + [0x83ea, 0x83ea], /* CJK Ideograph */ + [0x83eb, 0x83eb], /* CJK Ideograph */ + [0x83ec, 0x83ec], /* CJK Ideograph */ + [0x83ed, 0x83ed], /* CJK Ideograph */ + [0x83ee, 0x83ee], /* CJK Ideograph */ + [0x83ef, 0x83ef], /* CJK Ideograph */ + [0x83f0, 0x83f0], /* CJK Ideograph */ + [0x83f1, 0x83f1], /* CJK Ideograph */ + [0x83f2, 0x83f2], /* CJK Ideograph */ + [0x83f3, 0x83f3], /* CJK Ideograph */ + [0x83f4, 0x83f4], /* CJK Ideograph */ + [0x83f5, 0x83f5], /* CJK Ideograph */ + [0x83f6, 0x83f6], /* CJK Ideograph */ + [0x83f7, 0x83f7], /* CJK Ideograph */ + [0x83f8, 0x83f8], /* CJK Ideograph */ + [0x83f9, 0x83f9], /* CJK Ideograph */ + [0x83fa, 0x83fa], /* CJK Ideograph */ + [0x83fb, 0x83fb], /* CJK Ideograph */ + [0x83fc, 0x83fc], /* CJK Ideograph */ + [0x83fd, 0x83fd], /* CJK Ideograph */ + [0x83fe, 0x83fe], /* CJK Ideograph */ + [0x83ff, 0x83ff], /* CJK Ideograph */ + [0x8400, 0x8400], /* CJK Ideograph */ + [0x8401, 0x8401], /* CJK Ideograph */ + [0x8402, 0x8402], /* CJK Ideograph */ + [0x8403, 0x8403], /* CJK Ideograph */ + [0x8404, 0x8404], /* CJK Ideograph */ + [0x8405, 0x8405], /* CJK Ideograph */ + [0x8406, 0x8406], /* CJK Ideograph */ + [0x8407, 0x8407], /* CJK Ideograph */ + [0x8408, 0x8408], /* CJK Ideograph */ + [0x8409, 0x8409], /* CJK Ideograph */ + [0x840a, 0x840a], /* CJK Ideograph */ + [0x840b, 0x840b], /* CJK Ideograph */ + [0x840c, 0x840c], /* CJK Ideograph */ + [0x840d, 0x840d], /* CJK Ideograph */ + [0x840e, 0x840e], /* CJK Ideograph */ + [0x840f, 0x840f], /* CJK Ideograph */ + [0x8410, 0x8410], /* CJK Ideograph */ + [0x8411, 0x8411], /* CJK Ideograph */ + [0x8412, 0x8412], /* CJK Ideograph */ + [0x8413, 0x8413], /* CJK Ideograph */ + [0x8414, 0x8414], /* CJK Ideograph */ + [0x8415, 0x8415], /* CJK Ideograph */ + [0x8416, 0x8416], /* CJK Ideograph */ + [0x8417, 0x8417], /* CJK Ideograph */ + [0x8418, 0x8418], /* CJK Ideograph */ + [0x8419, 0x8419], /* CJK Ideograph */ + [0x841a, 0x841a], /* CJK Ideograph */ + [0x841b, 0x841b], /* CJK Ideograph */ + [0x841c, 0x841c], /* CJK Ideograph */ + [0x841d, 0x841d], /* CJK Ideograph */ + [0x841e, 0x841e], /* CJK Ideograph */ + [0x841f, 0x841f], /* CJK Ideograph */ + [0x8420, 0x8420], /* CJK Ideograph */ + [0x8421, 0x8421], /* CJK Ideograph */ + [0x8422, 0x8422], /* CJK Ideograph */ + [0x8423, 0x8423], /* CJK Ideograph */ + [0x8424, 0x8424], /* CJK Ideograph */ + [0x8425, 0x8425], /* CJK Ideograph */ + [0x8426, 0x8426], /* CJK Ideograph */ + [0x8427, 0x8427], /* CJK Ideograph */ + [0x8428, 0x8428], /* CJK Ideograph */ + [0x8429, 0x8429], /* CJK Ideograph */ + [0x842a, 0x842a], /* CJK Ideograph */ + [0x842b, 0x842b], /* CJK Ideograph */ + [0x842c, 0x842c], /* CJK Ideograph */ + [0x842d, 0x842d], /* CJK Ideograph */ + [0x842e, 0x842e], /* CJK Ideograph */ + [0x842f, 0x842f], /* CJK Ideograph */ + [0x8430, 0x8430], /* CJK Ideograph */ + [0x8431, 0x8431], /* CJK Ideograph */ + [0x8432, 0x8432], /* CJK Ideograph */ + [0x8433, 0x8433], /* CJK Ideograph */ + [0x8434, 0x8434], /* CJK Ideograph */ + [0x8435, 0x8435], /* CJK Ideograph */ + [0x8436, 0x8436], /* CJK Ideograph */ + [0x8437, 0x8437], /* CJK Ideograph */ + [0x8438, 0x8438], /* CJK Ideograph */ + [0x8439, 0x8439], /* CJK Ideograph */ + [0x843a, 0x843a], /* CJK Ideograph */ + [0x843b, 0x843b], /* CJK Ideograph */ + [0x843c, 0x843c], /* CJK Ideograph */ + [0x843d, 0x843d], /* CJK Ideograph */ + [0x843e, 0x843e], /* CJK Ideograph */ + [0x843f, 0x843f], /* CJK Ideograph */ + [0x8440, 0x8440], /* CJK Ideograph */ + [0x8441, 0x8441], /* CJK Ideograph */ + [0x8442, 0x8442], /* CJK Ideograph */ + [0x8443, 0x8443], /* CJK Ideograph */ + [0x8444, 0x8444], /* CJK Ideograph */ + [0x8445, 0x8445], /* CJK Ideograph */ + [0x8446, 0x8446], /* CJK Ideograph */ + [0x8447, 0x8447], /* CJK Ideograph */ + [0x8448, 0x8448], /* CJK Ideograph */ + [0x8449, 0x8449], /* CJK Ideograph */ + [0x844a, 0x844a], /* CJK Ideograph */ + [0x844b, 0x844b], /* CJK Ideograph */ + [0x844c, 0x844c], /* CJK Ideograph */ + [0x844d, 0x844d], /* CJK Ideograph */ + [0x844e, 0x844e], /* CJK Ideograph */ + [0x844f, 0x844f], /* CJK Ideograph */ + [0x8450, 0x8450], /* CJK Ideograph */ + [0x8451, 0x8451], /* CJK Ideograph */ + [0x8452, 0x8452], /* CJK Ideograph */ + [0x8453, 0x8453], /* CJK Ideograph */ + [0x8454, 0x8454], /* CJK Ideograph */ + [0x8455, 0x8455], /* CJK Ideograph */ + [0x8456, 0x8456], /* CJK Ideograph */ + [0x8457, 0x8457], /* CJK Ideograph */ + [0x8458, 0x8458], /* CJK Ideograph */ + [0x8459, 0x8459], /* CJK Ideograph */ + [0x845a, 0x845a], /* CJK Ideograph */ + [0x845b, 0x845b], /* CJK Ideograph */ + [0x845c, 0x845c], /* CJK Ideograph */ + [0x845d, 0x845d], /* CJK Ideograph */ + [0x845e, 0x845e], /* CJK Ideograph */ + [0x845f, 0x845f], /* CJK Ideograph */ + [0x8460, 0x8460], /* CJK Ideograph */ + [0x8461, 0x8461], /* CJK Ideograph */ + [0x8462, 0x8462], /* CJK Ideograph */ + [0x8463, 0x8463], /* CJK Ideograph */ + [0x8464, 0x8464], /* CJK Ideograph */ + [0x8465, 0x8465], /* CJK Ideograph */ + [0x8466, 0x8466], /* CJK Ideograph */ + [0x8467, 0x8467], /* CJK Ideograph */ + [0x8468, 0x8468], /* CJK Ideograph */ + [0x8469, 0x8469], /* CJK Ideograph */ + [0x846a, 0x846a], /* CJK Ideograph */ + [0x846b, 0x846b], /* CJK Ideograph */ + [0x846c, 0x846c], /* CJK Ideograph */ + [0x846d, 0x846d], /* CJK Ideograph */ + [0x846e, 0x846e], /* CJK Ideograph */ + [0x846f, 0x846f], /* CJK Ideograph */ + [0x8470, 0x8470], /* CJK Ideograph */ + [0x8471, 0x8471], /* CJK Ideograph */ + [0x8472, 0x8472], /* CJK Ideograph */ + [0x8473, 0x8473], /* CJK Ideograph */ + [0x8474, 0x8474], /* CJK Ideograph */ + [0x8475, 0x8475], /* CJK Ideograph */ + [0x8476, 0x8476], /* CJK Ideograph */ + [0x8477, 0x8477], /* CJK Ideograph */ + [0x8478, 0x8478], /* CJK Ideograph */ + [0x8479, 0x8479], /* CJK Ideograph */ + [0x847a, 0x847a], /* CJK Ideograph */ + [0x847b, 0x847b], /* CJK Ideograph */ + [0x847c, 0x847c], /* CJK Ideograph */ + [0x847d, 0x847d], /* CJK Ideograph */ + [0x847e, 0x847e], /* CJK Ideograph */ + [0x847f, 0x847f], /* CJK Ideograph */ + [0x8480, 0x8480], /* CJK Ideograph */ + [0x8481, 0x8481], /* CJK Ideograph */ + [0x8482, 0x8482], /* CJK Ideograph */ + [0x8483, 0x8483], /* CJK Ideograph */ + [0x8484, 0x8484], /* CJK Ideograph */ + [0x8485, 0x8485], /* CJK Ideograph */ + [0x8486, 0x8486], /* CJK Ideograph */ + [0x8487, 0x8487], /* CJK Ideograph */ + [0x8488, 0x8488], /* CJK Ideograph */ + [0x8489, 0x8489], /* CJK Ideograph */ + [0x848a, 0x848a], /* CJK Ideograph */ + [0x848b, 0x848b], /* CJK Ideograph */ + [0x848c, 0x848c], /* CJK Ideograph */ + [0x848d, 0x848d], /* CJK Ideograph */ + [0x848e, 0x848e], /* CJK Ideograph */ + [0x848f, 0x848f], /* CJK Ideograph */ + [0x8490, 0x8490], /* CJK Ideograph */ + [0x8491, 0x8491], /* CJK Ideograph */ + [0x8492, 0x8492], /* CJK Ideograph */ + [0x8493, 0x8493], /* CJK Ideograph */ + [0x8494, 0x8494], /* CJK Ideograph */ + [0x8495, 0x8495], /* CJK Ideograph */ + [0x8496, 0x8496], /* CJK Ideograph */ + [0x8497, 0x8497], /* CJK Ideograph */ + [0x8498, 0x8498], /* CJK Ideograph */ + [0x8499, 0x8499], /* CJK Ideograph */ + [0x849a, 0x849a], /* CJK Ideograph */ + [0x849b, 0x849b], /* CJK Ideograph */ + [0x849c, 0x849c], /* CJK Ideograph */ + [0x849d, 0x849d], /* CJK Ideograph */ + [0x849e, 0x849e], /* CJK Ideograph */ + [0x849f, 0x849f], /* CJK Ideograph */ + [0x84a0, 0x84a0], /* CJK Ideograph */ + [0x84a1, 0x84a1], /* CJK Ideograph */ + [0x84a2, 0x84a2], /* CJK Ideograph */ + [0x84a3, 0x84a3], /* CJK Ideograph */ + [0x84a4, 0x84a4], /* CJK Ideograph */ + [0x84a5, 0x84a5], /* CJK Ideograph */ + [0x84a6, 0x84a6], /* CJK Ideograph */ + [0x84a7, 0x84a7], /* CJK Ideograph */ + [0x84a8, 0x84a8], /* CJK Ideograph */ + [0x84a9, 0x84a9], /* CJK Ideograph */ + [0x84aa, 0x84aa], /* CJK Ideograph */ + [0x84ab, 0x84ab], /* CJK Ideograph */ + [0x84ac, 0x84ac], /* CJK Ideograph */ + [0x84ad, 0x84ad], /* CJK Ideograph */ + [0x84ae, 0x84ae], /* CJK Ideograph */ + [0x84af, 0x84af], /* CJK Ideograph */ + [0x84b0, 0x84b0], /* CJK Ideograph */ + [0x84b1, 0x84b1], /* CJK Ideograph */ + [0x84b2, 0x84b2], /* CJK Ideograph */ + [0x84b3, 0x84b3], /* CJK Ideograph */ + [0x84b4, 0x84b4], /* CJK Ideograph */ + [0x84b5, 0x84b5], /* CJK Ideograph */ + [0x84b6, 0x84b6], /* CJK Ideograph */ + [0x84b7, 0x84b7], /* CJK Ideograph */ + [0x84b8, 0x84b8], /* CJK Ideograph */ + [0x84b9, 0x84b9], /* CJK Ideograph */ + [0x84ba, 0x84ba], /* CJK Ideograph */ + [0x84bb, 0x84bb], /* CJK Ideograph */ + [0x84bc, 0x84bc], /* CJK Ideograph */ + [0x84bd, 0x84bd], /* CJK Ideograph */ + [0x84be, 0x84be], /* CJK Ideograph */ + [0x84bf, 0x84bf], /* CJK Ideograph */ + [0x84c0, 0x84c0], /* CJK Ideograph */ + [0x84c1, 0x84c1], /* CJK Ideograph */ + [0x84c2, 0x84c2], /* CJK Ideograph */ + [0x84c3, 0x84c3], /* CJK Ideograph */ + [0x84c4, 0x84c4], /* CJK Ideograph */ + [0x84c5, 0x84c5], /* CJK Ideograph */ + [0x84c6, 0x84c6], /* CJK Ideograph */ + [0x84c7, 0x84c7], /* CJK Ideograph */ + [0x84c8, 0x84c8], /* CJK Ideograph */ + [0x84c9, 0x84c9], /* CJK Ideograph */ + [0x84ca, 0x84ca], /* CJK Ideograph */ + [0x84cb, 0x84cb], /* CJK Ideograph */ + [0x84cc, 0x84cc], /* CJK Ideograph */ + [0x84cd, 0x84cd], /* CJK Ideograph */ + [0x84ce, 0x84ce], /* CJK Ideograph */ + [0x84cf, 0x84cf], /* CJK Ideograph */ + [0x84d0, 0x84d0], /* CJK Ideograph */ + [0x84d1, 0x84d1], /* CJK Ideograph */ + [0x84d2, 0x84d2], /* CJK Ideograph */ + [0x84d3, 0x84d3], /* CJK Ideograph */ + [0x84d4, 0x84d4], /* CJK Ideograph */ + [0x84d5, 0x84d5], /* CJK Ideograph */ + [0x84d6, 0x84d6], /* CJK Ideograph */ + [0x84d7, 0x84d7], /* CJK Ideograph */ + [0x84d8, 0x84d8], /* CJK Ideograph */ + [0x84d9, 0x84d9], /* CJK Ideograph */ + [0x84da, 0x84da], /* CJK Ideograph */ + [0x84db, 0x84db], /* CJK Ideograph */ + [0x84dc, 0x84dc], /* CJK Ideograph */ + [0x84dd, 0x84dd], /* CJK Ideograph */ + [0x84de, 0x84de], /* CJK Ideograph */ + [0x84df, 0x84df], /* CJK Ideograph */ + [0x84e0, 0x84e0], /* CJK Ideograph */ + [0x84e1, 0x84e1], /* CJK Ideograph */ + [0x84e2, 0x84e2], /* CJK Ideograph */ + [0x84e3, 0x84e3], /* CJK Ideograph */ + [0x84e4, 0x84e4], /* CJK Ideograph */ + [0x84e5, 0x84e5], /* CJK Ideograph */ + [0x84e6, 0x84e6], /* CJK Ideograph */ + [0x84e7, 0x84e7], /* CJK Ideograph */ + [0x84e8, 0x84e8], /* CJK Ideograph */ + [0x84e9, 0x84e9], /* CJK Ideograph */ + [0x84ea, 0x84ea], /* CJK Ideograph */ + [0x84eb, 0x84eb], /* CJK Ideograph */ + [0x84ec, 0x84ec], /* CJK Ideograph */ + [0x84ed, 0x84ed], /* CJK Ideograph */ + [0x84ee, 0x84ee], /* CJK Ideograph */ + [0x84ef, 0x84ef], /* CJK Ideograph */ + [0x84f0, 0x84f0], /* CJK Ideograph */ + [0x84f1, 0x84f1], /* CJK Ideograph */ + [0x84f2, 0x84f2], /* CJK Ideograph */ + [0x84f3, 0x84f3], /* CJK Ideograph */ + [0x84f4, 0x84f4], /* CJK Ideograph */ + [0x84f5, 0x84f5], /* CJK Ideograph */ + [0x84f6, 0x84f6], /* CJK Ideograph */ + [0x84f7, 0x84f7], /* CJK Ideograph */ + [0x84f8, 0x84f8], /* CJK Ideograph */ + [0x84f9, 0x84f9], /* CJK Ideograph */ + [0x84fa, 0x84fa], /* CJK Ideograph */ + [0x84fb, 0x84fb], /* CJK Ideograph */ + [0x84fc, 0x84fc], /* CJK Ideograph */ + [0x84fd, 0x84fd], /* CJK Ideograph */ + [0x84fe, 0x84fe], /* CJK Ideograph */ + [0x84ff, 0x84ff], /* CJK Ideograph */ + [0x8500, 0x8500], /* CJK Ideograph */ + [0x8501, 0x8501], /* CJK Ideograph */ + [0x8502, 0x8502], /* CJK Ideograph */ + [0x8503, 0x8503], /* CJK Ideograph */ + [0x8504, 0x8504], /* CJK Ideograph */ + [0x8505, 0x8505], /* CJK Ideograph */ + [0x8506, 0x8506], /* CJK Ideograph */ + [0x8507, 0x8507], /* CJK Ideograph */ + [0x8508, 0x8508], /* CJK Ideograph */ + [0x8509, 0x8509], /* CJK Ideograph */ + [0x850a, 0x850a], /* CJK Ideograph */ + [0x850b, 0x850b], /* CJK Ideograph */ + [0x850c, 0x850c], /* CJK Ideograph */ + [0x850d, 0x850d], /* CJK Ideograph */ + [0x850e, 0x850e], /* CJK Ideograph */ + [0x850f, 0x850f], /* CJK Ideograph */ + [0x8510, 0x8510], /* CJK Ideograph */ + [0x8511, 0x8511], /* CJK Ideograph */ + [0x8512, 0x8512], /* CJK Ideograph */ + [0x8513, 0x8513], /* CJK Ideograph */ + [0x8514, 0x8514], /* CJK Ideograph */ + [0x8515, 0x8515], /* CJK Ideograph */ + [0x8516, 0x8516], /* CJK Ideograph */ + [0x8517, 0x8517], /* CJK Ideograph */ + [0x8518, 0x8518], /* CJK Ideograph */ + [0x8519, 0x8519], /* CJK Ideograph */ + [0x851a, 0x851a], /* CJK Ideograph */ + [0x851b, 0x851b], /* CJK Ideograph */ + [0x851c, 0x851c], /* CJK Ideograph */ + [0x851d, 0x851d], /* CJK Ideograph */ + [0x851e, 0x851e], /* CJK Ideograph */ + [0x851f, 0x851f], /* CJK Ideograph */ + [0x8520, 0x8520], /* CJK Ideograph */ + [0x8521, 0x8521], /* CJK Ideograph */ + [0x8522, 0x8522], /* CJK Ideograph */ + [0x8523, 0x8523], /* CJK Ideograph */ + [0x8524, 0x8524], /* CJK Ideograph */ + [0x8525, 0x8525], /* CJK Ideograph */ + [0x8526, 0x8526], /* CJK Ideograph */ + [0x8527, 0x8527], /* CJK Ideograph */ + [0x8528, 0x8528], /* CJK Ideograph */ + [0x8529, 0x8529], /* CJK Ideograph */ + [0x852a, 0x852a], /* CJK Ideograph */ + [0x852b, 0x852b], /* CJK Ideograph */ + [0x852c, 0x852c], /* CJK Ideograph */ + [0x852d, 0x852d], /* CJK Ideograph */ + [0x852e, 0x852e], /* CJK Ideograph */ + [0x852f, 0x852f], /* CJK Ideograph */ + [0x8530, 0x8530], /* CJK Ideograph */ + [0x8531, 0x8531], /* CJK Ideograph */ + [0x8532, 0x8532], /* CJK Ideograph */ + [0x8533, 0x8533], /* CJK Ideograph */ + [0x8534, 0x8534], /* CJK Ideograph */ + [0x8535, 0x8535], /* CJK Ideograph */ + [0x8536, 0x8536], /* CJK Ideograph */ + [0x8537, 0x8537], /* CJK Ideograph */ + [0x8538, 0x8538], /* CJK Ideograph */ + [0x8539, 0x8539], /* CJK Ideograph */ + [0x853a, 0x853a], /* CJK Ideograph */ + [0x853b, 0x853b], /* CJK Ideograph */ + [0x853c, 0x853c], /* CJK Ideograph */ + [0x853d, 0x853d], /* CJK Ideograph */ + [0x853e, 0x853e], /* CJK Ideograph */ + [0x853f, 0x853f], /* CJK Ideograph */ + [0x8540, 0x8540], /* CJK Ideograph */ + [0x8541, 0x8541], /* CJK Ideograph */ + [0x8542, 0x8542], /* CJK Ideograph */ + [0x8543, 0x8543], /* CJK Ideograph */ + [0x8544, 0x8544], /* CJK Ideograph */ + [0x8545, 0x8545], /* CJK Ideograph */ + [0x8546, 0x8546], /* CJK Ideograph */ + [0x8547, 0x8547], /* CJK Ideograph */ + [0x8548, 0x8548], /* CJK Ideograph */ + [0x8549, 0x8549], /* CJK Ideograph */ + [0x854a, 0x854a], /* CJK Ideograph */ + [0x854b, 0x854b], /* CJK Ideograph */ + [0x854c, 0x854c], /* CJK Ideograph */ + [0x854d, 0x854d], /* CJK Ideograph */ + [0x854e, 0x854e], /* CJK Ideograph */ + [0x854f, 0x854f], /* CJK Ideograph */ + [0x8550, 0x8550], /* CJK Ideograph */ + [0x8551, 0x8551], /* CJK Ideograph */ + [0x8552, 0x8552], /* CJK Ideograph */ + [0x8553, 0x8553], /* CJK Ideograph */ + [0x8554, 0x8554], /* CJK Ideograph */ + [0x8555, 0x8555], /* CJK Ideograph */ + [0x8556, 0x8556], /* CJK Ideograph */ + [0x8557, 0x8557], /* CJK Ideograph */ + [0x8558, 0x8558], /* CJK Ideograph */ + [0x8559, 0x8559], /* CJK Ideograph */ + [0x855a, 0x855a], /* CJK Ideograph */ + [0x855b, 0x855b], /* CJK Ideograph */ + [0x855c, 0x855c], /* CJK Ideograph */ + [0x855d, 0x855d], /* CJK Ideograph */ + [0x855e, 0x855e], /* CJK Ideograph */ + [0x855f, 0x855f], /* CJK Ideograph */ + [0x8560, 0x8560], /* CJK Ideograph */ + [0x8561, 0x8561], /* CJK Ideograph */ + [0x8562, 0x8562], /* CJK Ideograph */ + [0x8563, 0x8563], /* CJK Ideograph */ + [0x8564, 0x8564], /* CJK Ideograph */ + [0x8565, 0x8565], /* CJK Ideograph */ + [0x8566, 0x8566], /* CJK Ideograph */ + [0x8567, 0x8567], /* CJK Ideograph */ + [0x8568, 0x8568], /* CJK Ideograph */ + [0x8569, 0x8569], /* CJK Ideograph */ + [0x856a, 0x856a], /* CJK Ideograph */ + [0x856b, 0x856b], /* CJK Ideograph */ + [0x856c, 0x856c], /* CJK Ideograph */ + [0x856d, 0x856d], /* CJK Ideograph */ + [0x856e, 0x856e], /* CJK Ideograph */ + [0x856f, 0x856f], /* CJK Ideograph */ + [0x8570, 0x8570], /* CJK Ideograph */ + [0x8571, 0x8571], /* CJK Ideograph */ + [0x8572, 0x8572], /* CJK Ideograph */ + [0x8573, 0x8573], /* CJK Ideograph */ + [0x8574, 0x8574], /* CJK Ideograph */ + [0x8575, 0x8575], /* CJK Ideograph */ + [0x8576, 0x8576], /* CJK Ideograph */ + [0x8577, 0x8577], /* CJK Ideograph */ + [0x8578, 0x8578], /* CJK Ideograph */ + [0x8579, 0x8579], /* CJK Ideograph */ + [0x857a, 0x857a], /* CJK Ideograph */ + [0x857b, 0x857b], /* CJK Ideograph */ + [0x857c, 0x857c], /* CJK Ideograph */ + [0x857d, 0x857d], /* CJK Ideograph */ + [0x857e, 0x857e], /* CJK Ideograph */ + [0x857f, 0x857f], /* CJK Ideograph */ + [0x8580, 0x8580], /* CJK Ideograph */ + [0x8581, 0x8581], /* CJK Ideograph */ + [0x8582, 0x8582], /* CJK Ideograph */ + [0x8583, 0x8583], /* CJK Ideograph */ + [0x8584, 0x8584], /* CJK Ideograph */ + [0x8585, 0x8585], /* CJK Ideograph */ + [0x8586, 0x8586], /* CJK Ideograph */ + [0x8587, 0x8587], /* CJK Ideograph */ + [0x8588, 0x8588], /* CJK Ideograph */ + [0x8589, 0x8589], /* CJK Ideograph */ + [0x858a, 0x858a], /* CJK Ideograph */ + [0x858b, 0x858b], /* CJK Ideograph */ + [0x858c, 0x858c], /* CJK Ideograph */ + [0x858d, 0x858d], /* CJK Ideograph */ + [0x858e, 0x858e], /* CJK Ideograph */ + [0x858f, 0x858f], /* CJK Ideograph */ + [0x8590, 0x8590], /* CJK Ideograph */ + [0x8591, 0x8591], /* CJK Ideograph */ + [0x8592, 0x8592], /* CJK Ideograph */ + [0x8593, 0x8593], /* CJK Ideograph */ + [0x8594, 0x8594], /* CJK Ideograph */ + [0x8595, 0x8595], /* CJK Ideograph */ + [0x8596, 0x8596], /* CJK Ideograph */ + [0x8597, 0x8597], /* CJK Ideograph */ + [0x8598, 0x8598], /* CJK Ideograph */ + [0x8599, 0x8599], /* CJK Ideograph */ + [0x859a, 0x859a], /* CJK Ideograph */ + [0x859b, 0x859b], /* CJK Ideograph */ + [0x859c, 0x859c], /* CJK Ideograph */ + [0x859d, 0x859d], /* CJK Ideograph */ + [0x859e, 0x859e], /* CJK Ideograph */ + [0x859f, 0x859f], /* CJK Ideograph */ + [0x85a0, 0x85a0], /* CJK Ideograph */ + [0x85a1, 0x85a1], /* CJK Ideograph */ + [0x85a2, 0x85a2], /* CJK Ideograph */ + [0x85a3, 0x85a3], /* CJK Ideograph */ + [0x85a4, 0x85a4], /* CJK Ideograph */ + [0x85a5, 0x85a5], /* CJK Ideograph */ + [0x85a6, 0x85a6], /* CJK Ideograph */ + [0x85a7, 0x85a7], /* CJK Ideograph */ + [0x85a8, 0x85a8], /* CJK Ideograph */ + [0x85a9, 0x85a9], /* CJK Ideograph */ + [0x85aa, 0x85aa], /* CJK Ideograph */ + [0x85ab, 0x85ab], /* CJK Ideograph */ + [0x85ac, 0x85ac], /* CJK Ideograph */ + [0x85ad, 0x85ad], /* CJK Ideograph */ + [0x85ae, 0x85ae], /* CJK Ideograph */ + [0x85af, 0x85af], /* CJK Ideograph */ + [0x85b0, 0x85b0], /* CJK Ideograph */ + [0x85b1, 0x85b1], /* CJK Ideograph */ + [0x85b2, 0x85b2], /* CJK Ideograph */ + [0x85b3, 0x85b3], /* CJK Ideograph */ + [0x85b4, 0x85b4], /* CJK Ideograph */ + [0x85b5, 0x85b5], /* CJK Ideograph */ + [0x85b6, 0x85b6], /* CJK Ideograph */ + [0x85b7, 0x85b7], /* CJK Ideograph */ + [0x85b8, 0x85b8], /* CJK Ideograph */ + [0x85b9, 0x85b9], /* CJK Ideograph */ + [0x85ba, 0x85ba], /* CJK Ideograph */ + [0x85bb, 0x85bb], /* CJK Ideograph */ + [0x85bc, 0x85bc], /* CJK Ideograph */ + [0x85bd, 0x85bd], /* CJK Ideograph */ + [0x85be, 0x85be], /* CJK Ideograph */ + [0x85bf, 0x85bf], /* CJK Ideograph */ + [0x85c0, 0x85c0], /* CJK Ideograph */ + [0x85c1, 0x85c1], /* CJK Ideograph */ + [0x85c2, 0x85c2], /* CJK Ideograph */ + [0x85c3, 0x85c3], /* CJK Ideograph */ + [0x85c4, 0x85c4], /* CJK Ideograph */ + [0x85c5, 0x85c5], /* CJK Ideograph */ + [0x85c6, 0x85c6], /* CJK Ideograph */ + [0x85c7, 0x85c7], /* CJK Ideograph */ + [0x85c8, 0x85c8], /* CJK Ideograph */ + [0x85c9, 0x85c9], /* CJK Ideograph */ + [0x85ca, 0x85ca], /* CJK Ideograph */ + [0x85cb, 0x85cb], /* CJK Ideograph */ + [0x85cc, 0x85cc], /* CJK Ideograph */ + [0x85cd, 0x85cd], /* CJK Ideograph */ + [0x85ce, 0x85ce], /* CJK Ideograph */ + [0x85cf, 0x85cf], /* CJK Ideograph */ + [0x85d0, 0x85d0], /* CJK Ideograph */ + [0x85d1, 0x85d1], /* CJK Ideograph */ + [0x85d2, 0x85d2], /* CJK Ideograph */ + [0x85d3, 0x85d3], /* CJK Ideograph */ + [0x85d4, 0x85d4], /* CJK Ideograph */ + [0x85d5, 0x85d5], /* CJK Ideograph */ + [0x85d6, 0x85d6], /* CJK Ideograph */ + [0x85d7, 0x85d7], /* CJK Ideograph */ + [0x85d8, 0x85d8], /* CJK Ideograph */ + [0x85d9, 0x85d9], /* CJK Ideograph */ + [0x85da, 0x85da], /* CJK Ideograph */ + [0x85db, 0x85db], /* CJK Ideograph */ + [0x85dc, 0x85dc], /* CJK Ideograph */ + [0x85dd, 0x85dd], /* CJK Ideograph */ + [0x85de, 0x85de], /* CJK Ideograph */ + [0x85df, 0x85df], /* CJK Ideograph */ + [0x85e0, 0x85e0], /* CJK Ideograph */ + [0x85e1, 0x85e1], /* CJK Ideograph */ + [0x85e2, 0x85e2], /* CJK Ideograph */ + [0x85e3, 0x85e3], /* CJK Ideograph */ + [0x85e4, 0x85e4], /* CJK Ideograph */ + [0x85e5, 0x85e5], /* CJK Ideograph */ + [0x85e6, 0x85e6], /* CJK Ideograph */ + [0x85e7, 0x85e7], /* CJK Ideograph */ + [0x85e8, 0x85e8], /* CJK Ideograph */ + [0x85e9, 0x85e9], /* CJK Ideograph */ + [0x85ea, 0x85ea], /* CJK Ideograph */ + [0x85eb, 0x85eb], /* CJK Ideograph */ + [0x85ec, 0x85ec], /* CJK Ideograph */ + [0x85ed, 0x85ed], /* CJK Ideograph */ + [0x85ee, 0x85ee], /* CJK Ideograph */ + [0x85ef, 0x85ef], /* CJK Ideograph */ + [0x85f0, 0x85f0], /* CJK Ideograph */ + [0x85f1, 0x85f1], /* CJK Ideograph */ + [0x85f2, 0x85f2], /* CJK Ideograph */ + [0x85f3, 0x85f3], /* CJK Ideograph */ + [0x85f4, 0x85f4], /* CJK Ideograph */ + [0x85f5, 0x85f5], /* CJK Ideograph */ + [0x85f6, 0x85f6], /* CJK Ideograph */ + [0x85f7, 0x85f7], /* CJK Ideograph */ + [0x85f8, 0x85f8], /* CJK Ideograph */ + [0x85f9, 0x85f9], /* CJK Ideograph */ + [0x85fa, 0x85fa], /* CJK Ideograph */ + [0x85fb, 0x85fb], /* CJK Ideograph */ + [0x85fc, 0x85fc], /* CJK Ideograph */ + [0x85fd, 0x85fd], /* CJK Ideograph */ + [0x85fe, 0x85fe], /* CJK Ideograph */ + [0x85ff, 0x85ff], /* CJK Ideograph */ + [0x8600, 0x8600], /* CJK Ideograph */ + [0x8601, 0x8601], /* CJK Ideograph */ + [0x8602, 0x8602], /* CJK Ideograph */ + [0x8603, 0x8603], /* CJK Ideograph */ + [0x8604, 0x8604], /* CJK Ideograph */ + [0x8605, 0x8605], /* CJK Ideograph */ + [0x8606, 0x8606], /* CJK Ideograph */ + [0x8607, 0x8607], /* CJK Ideograph */ + [0x8608, 0x8608], /* CJK Ideograph */ + [0x8609, 0x8609], /* CJK Ideograph */ + [0x860a, 0x860a], /* CJK Ideograph */ + [0x860b, 0x860b], /* CJK Ideograph */ + [0x860c, 0x860c], /* CJK Ideograph */ + [0x860d, 0x860d], /* CJK Ideograph */ + [0x860e, 0x860e], /* CJK Ideograph */ + [0x860f, 0x860f], /* CJK Ideograph */ + [0x8610, 0x8610], /* CJK Ideograph */ + [0x8611, 0x8611], /* CJK Ideograph */ + [0x8612, 0x8612], /* CJK Ideograph */ + [0x8613, 0x8613], /* CJK Ideograph */ + [0x8614, 0x8614], /* CJK Ideograph */ + [0x8615, 0x8615], /* CJK Ideograph */ + [0x8616, 0x8616], /* CJK Ideograph */ + [0x8617, 0x8617], /* CJK Ideograph */ + [0x8618, 0x8618], /* CJK Ideograph */ + [0x8619, 0x8619], /* CJK Ideograph */ + [0x861a, 0x861a], /* CJK Ideograph */ + [0x861b, 0x861b], /* CJK Ideograph */ + [0x861c, 0x861c], /* CJK Ideograph */ + [0x861d, 0x861d], /* CJK Ideograph */ + [0x861e, 0x861e], /* CJK Ideograph */ + [0x861f, 0x861f], /* CJK Ideograph */ + [0x8620, 0x8620], /* CJK Ideograph */ + [0x8621, 0x8621], /* CJK Ideograph */ + [0x8622, 0x8622], /* CJK Ideograph */ + [0x8623, 0x8623], /* CJK Ideograph */ + [0x8624, 0x8624], /* CJK Ideograph */ + [0x8625, 0x8625], /* CJK Ideograph */ + [0x8626, 0x8626], /* CJK Ideograph */ + [0x8627, 0x8627], /* CJK Ideograph */ + [0x8628, 0x8628], /* CJK Ideograph */ + [0x8629, 0x8629], /* CJK Ideograph */ + [0x862a, 0x862a], /* CJK Ideograph */ + [0x862b, 0x862b], /* CJK Ideograph */ + [0x862c, 0x862c], /* CJK Ideograph */ + [0x862d, 0x862d], /* CJK Ideograph */ + [0x862e, 0x862e], /* CJK Ideograph */ + [0x862f, 0x862f], /* CJK Ideograph */ + [0x8630, 0x8630], /* CJK Ideograph */ + [0x8631, 0x8631], /* CJK Ideograph */ + [0x8632, 0x8632], /* CJK Ideograph */ + [0x8633, 0x8633], /* CJK Ideograph */ + [0x8634, 0x8634], /* CJK Ideograph */ + [0x8635, 0x8635], /* CJK Ideograph */ + [0x8636, 0x8636], /* CJK Ideograph */ + [0x8637, 0x8637], /* CJK Ideograph */ + [0x8638, 0x8638], /* CJK Ideograph */ + [0x8639, 0x8639], /* CJK Ideograph */ + [0x863a, 0x863a], /* CJK Ideograph */ + [0x863b, 0x863b], /* CJK Ideograph */ + [0x863c, 0x863c], /* CJK Ideograph */ + [0x863d, 0x863d], /* CJK Ideograph */ + [0x863e, 0x863e], /* CJK Ideograph */ + [0x863f, 0x863f], /* CJK Ideograph */ + [0x8640, 0x8640], /* CJK Ideograph */ + [0x8641, 0x8641], /* CJK Ideograph */ + [0x8642, 0x8642], /* CJK Ideograph */ + [0x8643, 0x8643], /* CJK Ideograph */ + [0x8644, 0x8644], /* CJK Ideograph */ + [0x8645, 0x8645], /* CJK Ideograph */ + [0x8646, 0x8646], /* CJK Ideograph */ + [0x8647, 0x8647], /* CJK Ideograph */ + [0x8648, 0x8648], /* CJK Ideograph */ + [0x8649, 0x8649], /* CJK Ideograph */ + [0x864a, 0x864a], /* CJK Ideograph */ + [0x864b, 0x864b], /* CJK Ideograph */ + [0x864c, 0x864c], /* CJK Ideograph */ + [0x864d, 0x864d], /* CJK Ideograph */ + [0x864e, 0x864e], /* CJK Ideograph */ + [0x864f, 0x864f], /* CJK Ideograph */ + [0x8650, 0x8650], /* CJK Ideograph */ + [0x8651, 0x8651], /* CJK Ideograph */ + [0x8652, 0x8652], /* CJK Ideograph */ + [0x8653, 0x8653], /* CJK Ideograph */ + [0x8654, 0x8654], /* CJK Ideograph */ + [0x8655, 0x8655], /* CJK Ideograph */ + [0x8656, 0x8656], /* CJK Ideograph */ + [0x8657, 0x8657], /* CJK Ideograph */ + [0x8658, 0x8658], /* CJK Ideograph */ + [0x8659, 0x8659], /* CJK Ideograph */ + [0x865a, 0x865a], /* CJK Ideograph */ + [0x865b, 0x865b], /* CJK Ideograph */ + [0x865c, 0x865c], /* CJK Ideograph */ + [0x865d, 0x865d], /* CJK Ideograph */ + [0x865e, 0x865e], /* CJK Ideograph */ + [0x865f, 0x865f], /* CJK Ideograph */ + [0x8660, 0x8660], /* CJK Ideograph */ + [0x8661, 0x8661], /* CJK Ideograph */ + [0x8662, 0x8662], /* CJK Ideograph */ + [0x8663, 0x8663], /* CJK Ideograph */ + [0x8664, 0x8664], /* CJK Ideograph */ + [0x8665, 0x8665], /* CJK Ideograph */ + [0x8666, 0x8666], /* CJK Ideograph */ + [0x8667, 0x8667], /* CJK Ideograph */ + [0x8668, 0x8668], /* CJK Ideograph */ + [0x8669, 0x8669], /* CJK Ideograph */ + [0x866a, 0x866a], /* CJK Ideograph */ + [0x866b, 0x866b], /* CJK Ideograph */ + [0x866c, 0x866c], /* CJK Ideograph */ + [0x866d, 0x866d], /* CJK Ideograph */ + [0x866e, 0x866e], /* CJK Ideograph */ + [0x866f, 0x866f], /* CJK Ideograph */ + [0x8670, 0x8670], /* CJK Ideograph */ + [0x8671, 0x8671], /* CJK Ideograph */ + [0x8672, 0x8672], /* CJK Ideograph */ + [0x8673, 0x8673], /* CJK Ideograph */ + [0x8674, 0x8674], /* CJK Ideograph */ + [0x8675, 0x8675], /* CJK Ideograph */ + [0x8676, 0x8676], /* CJK Ideograph */ + [0x8677, 0x8677], /* CJK Ideograph */ + [0x8678, 0x8678], /* CJK Ideograph */ + [0x8679, 0x8679], /* CJK Ideograph */ + [0x867a, 0x867a], /* CJK Ideograph */ + [0x867b, 0x867b], /* CJK Ideograph */ + [0x867c, 0x867c], /* CJK Ideograph */ + [0x867d, 0x867d], /* CJK Ideograph */ + [0x867e, 0x867e], /* CJK Ideograph */ + [0x867f, 0x867f], /* CJK Ideograph */ + [0x8680, 0x8680], /* CJK Ideograph */ + [0x8681, 0x8681], /* CJK Ideograph */ + [0x8682, 0x8682], /* CJK Ideograph */ + [0x8683, 0x8683], /* CJK Ideograph */ + [0x8684, 0x8684], /* CJK Ideograph */ + [0x8685, 0x8685], /* CJK Ideograph */ + [0x8686, 0x8686], /* CJK Ideograph */ + [0x8687, 0x8687], /* CJK Ideograph */ + [0x8688, 0x8688], /* CJK Ideograph */ + [0x8689, 0x8689], /* CJK Ideograph */ + [0x868a, 0x868a], /* CJK Ideograph */ + [0x868b, 0x868b], /* CJK Ideograph */ + [0x868c, 0x868c], /* CJK Ideograph */ + [0x868d, 0x868d], /* CJK Ideograph */ + [0x868e, 0x868e], /* CJK Ideograph */ + [0x868f, 0x868f], /* CJK Ideograph */ + [0x8690, 0x8690], /* CJK Ideograph */ + [0x8691, 0x8691], /* CJK Ideograph */ + [0x8692, 0x8692], /* CJK Ideograph */ + [0x8693, 0x8693], /* CJK Ideograph */ + [0x8694, 0x8694], /* CJK Ideograph */ + [0x8695, 0x8695], /* CJK Ideograph */ + [0x8696, 0x8696], /* CJK Ideograph */ + [0x8697, 0x8697], /* CJK Ideograph */ + [0x8698, 0x8698], /* CJK Ideograph */ + [0x8699, 0x8699], /* CJK Ideograph */ + [0x869a, 0x869a], /* CJK Ideograph */ + [0x869b, 0x869b], /* CJK Ideograph */ + [0x869c, 0x869c], /* CJK Ideograph */ + [0x869d, 0x869d], /* CJK Ideograph */ + [0x869e, 0x869e], /* CJK Ideograph */ + [0x869f, 0x869f], /* CJK Ideograph */ + [0x86a0, 0x86a0], /* CJK Ideograph */ + [0x86a1, 0x86a1], /* CJK Ideograph */ + [0x86a2, 0x86a2], /* CJK Ideograph */ + [0x86a3, 0x86a3], /* CJK Ideograph */ + [0x86a4, 0x86a4], /* CJK Ideograph */ + [0x86a5, 0x86a5], /* CJK Ideograph */ + [0x86a6, 0x86a6], /* CJK Ideograph */ + [0x86a7, 0x86a7], /* CJK Ideograph */ + [0x86a8, 0x86a8], /* CJK Ideograph */ + [0x86a9, 0x86a9], /* CJK Ideograph */ + [0x86aa, 0x86aa], /* CJK Ideograph */ + [0x86ab, 0x86ab], /* CJK Ideograph */ + [0x86ac, 0x86ac], /* CJK Ideograph */ + [0x86ad, 0x86ad], /* CJK Ideograph */ + [0x86ae, 0x86ae], /* CJK Ideograph */ + [0x86af, 0x86af], /* CJK Ideograph */ + [0x86b0, 0x86b0], /* CJK Ideograph */ + [0x86b1, 0x86b1], /* CJK Ideograph */ + [0x86b2, 0x86b2], /* CJK Ideograph */ + [0x86b3, 0x86b3], /* CJK Ideograph */ + [0x86b4, 0x86b4], /* CJK Ideograph */ + [0x86b5, 0x86b5], /* CJK Ideograph */ + [0x86b6, 0x86b6], /* CJK Ideograph */ + [0x86b7, 0x86b7], /* CJK Ideograph */ + [0x86b8, 0x86b8], /* CJK Ideograph */ + [0x86b9, 0x86b9], /* CJK Ideograph */ + [0x86ba, 0x86ba], /* CJK Ideograph */ + [0x86bb, 0x86bb], /* CJK Ideograph */ + [0x86bc, 0x86bc], /* CJK Ideograph */ + [0x86bd, 0x86bd], /* CJK Ideograph */ + [0x86be, 0x86be], /* CJK Ideograph */ + [0x86bf, 0x86bf], /* CJK Ideograph */ + [0x86c0, 0x86c0], /* CJK Ideograph */ + [0x86c1, 0x86c1], /* CJK Ideograph */ + [0x86c2, 0x86c2], /* CJK Ideograph */ + [0x86c3, 0x86c3], /* CJK Ideograph */ + [0x86c4, 0x86c4], /* CJK Ideograph */ + [0x86c5, 0x86c5], /* CJK Ideograph */ + [0x86c6, 0x86c6], /* CJK Ideograph */ + [0x86c7, 0x86c7], /* CJK Ideograph */ + [0x86c8, 0x86c8], /* CJK Ideograph */ + [0x86c9, 0x86c9], /* CJK Ideograph */ + [0x86ca, 0x86ca], /* CJK Ideograph */ + [0x86cb, 0x86cb], /* CJK Ideograph */ + [0x86cc, 0x86cc], /* CJK Ideograph */ + [0x86cd, 0x86cd], /* CJK Ideograph */ + [0x86ce, 0x86ce], /* CJK Ideograph */ + [0x86cf, 0x86cf], /* CJK Ideograph */ + [0x86d0, 0x86d0], /* CJK Ideograph */ + [0x86d1, 0x86d1], /* CJK Ideograph */ + [0x86d2, 0x86d2], /* CJK Ideograph */ + [0x86d3, 0x86d3], /* CJK Ideograph */ + [0x86d4, 0x86d4], /* CJK Ideograph */ + [0x86d5, 0x86d5], /* CJK Ideograph */ + [0x86d6, 0x86d6], /* CJK Ideograph */ + [0x86d7, 0x86d7], /* CJK Ideograph */ + [0x86d8, 0x86d8], /* CJK Ideograph */ + [0x86d9, 0x86d9], /* CJK Ideograph */ + [0x86da, 0x86da], /* CJK Ideograph */ + [0x86db, 0x86db], /* CJK Ideograph */ + [0x86dc, 0x86dc], /* CJK Ideograph */ + [0x86dd, 0x86dd], /* CJK Ideograph */ + [0x86de, 0x86de], /* CJK Ideograph */ + [0x86df, 0x86df], /* CJK Ideograph */ + [0x86e0, 0x86e0], /* CJK Ideograph */ + [0x86e1, 0x86e1], /* CJK Ideograph */ + [0x86e2, 0x86e2], /* CJK Ideograph */ + [0x86e3, 0x86e3], /* CJK Ideograph */ + [0x86e4, 0x86e4], /* CJK Ideograph */ + [0x86e5, 0x86e5], /* CJK Ideograph */ + [0x86e6, 0x86e6], /* CJK Ideograph */ + [0x86e7, 0x86e7], /* CJK Ideograph */ + [0x86e8, 0x86e8], /* CJK Ideograph */ + [0x86e9, 0x86e9], /* CJK Ideograph */ + [0x86ea, 0x86ea], /* CJK Ideograph */ + [0x86eb, 0x86eb], /* CJK Ideograph */ + [0x86ec, 0x86ec], /* CJK Ideograph */ + [0x86ed, 0x86ed], /* CJK Ideograph */ + [0x86ee, 0x86ee], /* CJK Ideograph */ + [0x86ef, 0x86ef], /* CJK Ideograph */ + [0x86f0, 0x86f0], /* CJK Ideograph */ + [0x86f1, 0x86f1], /* CJK Ideograph */ + [0x86f2, 0x86f2], /* CJK Ideograph */ + [0x86f3, 0x86f3], /* CJK Ideograph */ + [0x86f4, 0x86f4], /* CJK Ideograph */ + [0x86f5, 0x86f5], /* CJK Ideograph */ + [0x86f6, 0x86f6], /* CJK Ideograph */ + [0x86f7, 0x86f7], /* CJK Ideograph */ + [0x86f8, 0x86f8], /* CJK Ideograph */ + [0x86f9, 0x86f9], /* CJK Ideograph */ + [0x86fa, 0x86fa], /* CJK Ideograph */ + [0x86fb, 0x86fb], /* CJK Ideograph */ + [0x86fc, 0x86fc], /* CJK Ideograph */ + [0x86fd, 0x86fd], /* CJK Ideograph */ + [0x86fe, 0x86fe], /* CJK Ideograph */ + [0x86ff, 0x86ff], /* CJK Ideograph */ + [0x8700, 0x8700], /* CJK Ideograph */ + [0x8701, 0x8701], /* CJK Ideograph */ + [0x8702, 0x8702], /* CJK Ideograph */ + [0x8703, 0x8703], /* CJK Ideograph */ + [0x8704, 0x8704], /* CJK Ideograph */ + [0x8705, 0x8705], /* CJK Ideograph */ + [0x8706, 0x8706], /* CJK Ideograph */ + [0x8707, 0x8707], /* CJK Ideograph */ + [0x8708, 0x8708], /* CJK Ideograph */ + [0x8709, 0x8709], /* CJK Ideograph */ + [0x870a, 0x870a], /* CJK Ideograph */ + [0x870b, 0x870b], /* CJK Ideograph */ + [0x870c, 0x870c], /* CJK Ideograph */ + [0x870d, 0x870d], /* CJK Ideograph */ + [0x870e, 0x870e], /* CJK Ideograph */ + [0x870f, 0x870f], /* CJK Ideograph */ + [0x8710, 0x8710], /* CJK Ideograph */ + [0x8711, 0x8711], /* CJK Ideograph */ + [0x8712, 0x8712], /* CJK Ideograph */ + [0x8713, 0x8713], /* CJK Ideograph */ + [0x8714, 0x8714], /* CJK Ideograph */ + [0x8715, 0x8715], /* CJK Ideograph */ + [0x8716, 0x8716], /* CJK Ideograph */ + [0x8717, 0x8717], /* CJK Ideograph */ + [0x8718, 0x8718], /* CJK Ideograph */ + [0x8719, 0x8719], /* CJK Ideograph */ + [0x871a, 0x871a], /* CJK Ideograph */ + [0x871b, 0x871b], /* CJK Ideograph */ + [0x871c, 0x871c], /* CJK Ideograph */ + [0x871d, 0x871d], /* CJK Ideograph */ + [0x871e, 0x871e], /* CJK Ideograph */ + [0x871f, 0x871f], /* CJK Ideograph */ + [0x8720, 0x8720], /* CJK Ideograph */ + [0x8721, 0x8721], /* CJK Ideograph */ + [0x8722, 0x8722], /* CJK Ideograph */ + [0x8723, 0x8723], /* CJK Ideograph */ + [0x8724, 0x8724], /* CJK Ideograph */ + [0x8725, 0x8725], /* CJK Ideograph */ + [0x8726, 0x8726], /* CJK Ideograph */ + [0x8727, 0x8727], /* CJK Ideograph */ + [0x8728, 0x8728], /* CJK Ideograph */ + [0x8729, 0x8729], /* CJK Ideograph */ + [0x872a, 0x872a], /* CJK Ideograph */ + [0x872b, 0x872b], /* CJK Ideograph */ + [0x872c, 0x872c], /* CJK Ideograph */ + [0x872d, 0x872d], /* CJK Ideograph */ + [0x872e, 0x872e], /* CJK Ideograph */ + [0x872f, 0x872f], /* CJK Ideograph */ + [0x8730, 0x8730], /* CJK Ideograph */ + [0x8731, 0x8731], /* CJK Ideograph */ + [0x8732, 0x8732], /* CJK Ideograph */ + [0x8733, 0x8733], /* CJK Ideograph */ + [0x8734, 0x8734], /* CJK Ideograph */ + [0x8735, 0x8735], /* CJK Ideograph */ + [0x8736, 0x8736], /* CJK Ideograph */ + [0x8737, 0x8737], /* CJK Ideograph */ + [0x8738, 0x8738], /* CJK Ideograph */ + [0x8739, 0x8739], /* CJK Ideograph */ + [0x873a, 0x873a], /* CJK Ideograph */ + [0x873b, 0x873b], /* CJK Ideograph */ + [0x873c, 0x873c], /* CJK Ideograph */ + [0x873d, 0x873d], /* CJK Ideograph */ + [0x873e, 0x873e], /* CJK Ideograph */ + [0x873f, 0x873f], /* CJK Ideograph */ + [0x8740, 0x8740], /* CJK Ideograph */ + [0x8741, 0x8741], /* CJK Ideograph */ + [0x8742, 0x8742], /* CJK Ideograph */ + [0x8743, 0x8743], /* CJK Ideograph */ + [0x8744, 0x8744], /* CJK Ideograph */ + [0x8745, 0x8745], /* CJK Ideograph */ + [0x8746, 0x8746], /* CJK Ideograph */ + [0x8747, 0x8747], /* CJK Ideograph */ + [0x8748, 0x8748], /* CJK Ideograph */ + [0x8749, 0x8749], /* CJK Ideograph */ + [0x874a, 0x874a], /* CJK Ideograph */ + [0x874b, 0x874b], /* CJK Ideograph */ + [0x874c, 0x874c], /* CJK Ideograph */ + [0x874d, 0x874d], /* CJK Ideograph */ + [0x874e, 0x874e], /* CJK Ideograph */ + [0x874f, 0x874f], /* CJK Ideograph */ + [0x8750, 0x8750], /* CJK Ideograph */ + [0x8751, 0x8751], /* CJK Ideograph */ + [0x8752, 0x8752], /* CJK Ideograph */ + [0x8753, 0x8753], /* CJK Ideograph */ + [0x8754, 0x8754], /* CJK Ideograph */ + [0x8755, 0x8755], /* CJK Ideograph */ + [0x8756, 0x8756], /* CJK Ideograph */ + [0x8757, 0x8757], /* CJK Ideograph */ + [0x8758, 0x8758], /* CJK Ideograph */ + [0x8759, 0x8759], /* CJK Ideograph */ + [0x875a, 0x875a], /* CJK Ideograph */ + [0x875b, 0x875b], /* CJK Ideograph */ + [0x875c, 0x875c], /* CJK Ideograph */ + [0x875d, 0x875d], /* CJK Ideograph */ + [0x875e, 0x875e], /* CJK Ideograph */ + [0x875f, 0x875f], /* CJK Ideograph */ + [0x8760, 0x8760], /* CJK Ideograph */ + [0x8761, 0x8761], /* CJK Ideograph */ + [0x8762, 0x8762], /* CJK Ideograph */ + [0x8763, 0x8763], /* CJK Ideograph */ + [0x8764, 0x8764], /* CJK Ideograph */ + [0x8765, 0x8765], /* CJK Ideograph */ + [0x8766, 0x8766], /* CJK Ideograph */ + [0x8767, 0x8767], /* CJK Ideograph */ + [0x8768, 0x8768], /* CJK Ideograph */ + [0x8769, 0x8769], /* CJK Ideograph */ + [0x876a, 0x876a], /* CJK Ideograph */ + [0x876b, 0x876b], /* CJK Ideograph */ + [0x876c, 0x876c], /* CJK Ideograph */ + [0x876d, 0x876d], /* CJK Ideograph */ + [0x876e, 0x876e], /* CJK Ideograph */ + [0x876f, 0x876f], /* CJK Ideograph */ + [0x8770, 0x8770], /* CJK Ideograph */ + [0x8771, 0x8771], /* CJK Ideograph */ + [0x8772, 0x8772], /* CJK Ideograph */ + [0x8773, 0x8773], /* CJK Ideograph */ + [0x8774, 0x8774], /* CJK Ideograph */ + [0x8775, 0x8775], /* CJK Ideograph */ + [0x8776, 0x8776], /* CJK Ideograph */ + [0x8777, 0x8777], /* CJK Ideograph */ + [0x8778, 0x8778], /* CJK Ideograph */ + [0x8779, 0x8779], /* CJK Ideograph */ + [0x877a, 0x877a], /* CJK Ideograph */ + [0x877b, 0x877b], /* CJK Ideograph */ + [0x877c, 0x877c], /* CJK Ideograph */ + [0x877d, 0x877d], /* CJK Ideograph */ + [0x877e, 0x877e], /* CJK Ideograph */ + [0x877f, 0x877f], /* CJK Ideograph */ + [0x8780, 0x8780], /* CJK Ideograph */ + [0x8781, 0x8781], /* CJK Ideograph */ + [0x8782, 0x8782], /* CJK Ideograph */ + [0x8783, 0x8783], /* CJK Ideograph */ + [0x8784, 0x8784], /* CJK Ideograph */ + [0x8785, 0x8785], /* CJK Ideograph */ + [0x8786, 0x8786], /* CJK Ideograph */ + [0x8787, 0x8787], /* CJK Ideograph */ + [0x8788, 0x8788], /* CJK Ideograph */ + [0x8789, 0x8789], /* CJK Ideograph */ + [0x878a, 0x878a], /* CJK Ideograph */ + [0x878b, 0x878b], /* CJK Ideograph */ + [0x878c, 0x878c], /* CJK Ideograph */ + [0x878d, 0x878d], /* CJK Ideograph */ + [0x878e, 0x878e], /* CJK Ideograph */ + [0x878f, 0x878f], /* CJK Ideograph */ + [0x8790, 0x8790], /* CJK Ideograph */ + [0x8791, 0x8791], /* CJK Ideograph */ + [0x8792, 0x8792], /* CJK Ideograph */ + [0x8793, 0x8793], /* CJK Ideograph */ + [0x8794, 0x8794], /* CJK Ideograph */ + [0x8795, 0x8795], /* CJK Ideograph */ + [0x8796, 0x8796], /* CJK Ideograph */ + [0x8797, 0x8797], /* CJK Ideograph */ + [0x8798, 0x8798], /* CJK Ideograph */ + [0x8799, 0x8799], /* CJK Ideograph */ + [0x879a, 0x879a], /* CJK Ideograph */ + [0x879b, 0x879b], /* CJK Ideograph */ + [0x879c, 0x879c], /* CJK Ideograph */ + [0x879d, 0x879d], /* CJK Ideograph */ + [0x879e, 0x879e], /* CJK Ideograph */ + [0x879f, 0x879f], /* CJK Ideograph */ + [0x87a0, 0x87a0], /* CJK Ideograph */ + [0x87a1, 0x87a1], /* CJK Ideograph */ + [0x87a2, 0x87a2], /* CJK Ideograph */ + [0x87a3, 0x87a3], /* CJK Ideograph */ + [0x87a4, 0x87a4], /* CJK Ideograph */ + [0x87a5, 0x87a5], /* CJK Ideograph */ + [0x87a6, 0x87a6], /* CJK Ideograph */ + [0x87a7, 0x87a7], /* CJK Ideograph */ + [0x87a8, 0x87a8], /* CJK Ideograph */ + [0x87a9, 0x87a9], /* CJK Ideograph */ + [0x87aa, 0x87aa], /* CJK Ideograph */ + [0x87ab, 0x87ab], /* CJK Ideograph */ + [0x87ac, 0x87ac], /* CJK Ideograph */ + [0x87ad, 0x87ad], /* CJK Ideograph */ + [0x87ae, 0x87ae], /* CJK Ideograph */ + [0x87af, 0x87af], /* CJK Ideograph */ + [0x87b0, 0x87b0], /* CJK Ideograph */ + [0x87b1, 0x87b1], /* CJK Ideograph */ + [0x87b2, 0x87b2], /* CJK Ideograph */ + [0x87b3, 0x87b3], /* CJK Ideograph */ + [0x87b4, 0x87b4], /* CJK Ideograph */ + [0x87b5, 0x87b5], /* CJK Ideograph */ + [0x87b6, 0x87b6], /* CJK Ideograph */ + [0x87b7, 0x87b7], /* CJK Ideograph */ + [0x87b8, 0x87b8], /* CJK Ideograph */ + [0x87b9, 0x87b9], /* CJK Ideograph */ + [0x87ba, 0x87ba], /* CJK Ideograph */ + [0x87bb, 0x87bb], /* CJK Ideograph */ + [0x87bc, 0x87bc], /* CJK Ideograph */ + [0x87bd, 0x87bd], /* CJK Ideograph */ + [0x87be, 0x87be], /* CJK Ideograph */ + [0x87bf, 0x87bf], /* CJK Ideograph */ + [0x87c0, 0x87c0], /* CJK Ideograph */ + [0x87c1, 0x87c1], /* CJK Ideograph */ + [0x87c2, 0x87c2], /* CJK Ideograph */ + [0x87c3, 0x87c3], /* CJK Ideograph */ + [0x87c4, 0x87c4], /* CJK Ideograph */ + [0x87c5, 0x87c5], /* CJK Ideograph */ + [0x87c6, 0x87c6], /* CJK Ideograph */ + [0x87c7, 0x87c7], /* CJK Ideograph */ + [0x87c8, 0x87c8], /* CJK Ideograph */ + [0x87c9, 0x87c9], /* CJK Ideograph */ + [0x87ca, 0x87ca], /* CJK Ideograph */ + [0x87cb, 0x87cb], /* CJK Ideograph */ + [0x87cc, 0x87cc], /* CJK Ideograph */ + [0x87cd, 0x87cd], /* CJK Ideograph */ + [0x87ce, 0x87ce], /* CJK Ideograph */ + [0x87cf, 0x87cf], /* CJK Ideograph */ + [0x87d0, 0x87d0], /* CJK Ideograph */ + [0x87d1, 0x87d1], /* CJK Ideograph */ + [0x87d2, 0x87d2], /* CJK Ideograph */ + [0x87d3, 0x87d3], /* CJK Ideograph */ + [0x87d4, 0x87d4], /* CJK Ideograph */ + [0x87d5, 0x87d5], /* CJK Ideograph */ + [0x87d6, 0x87d6], /* CJK Ideograph */ + [0x87d7, 0x87d7], /* CJK Ideograph */ + [0x87d8, 0x87d8], /* CJK Ideograph */ + [0x87d9, 0x87d9], /* CJK Ideograph */ + [0x87da, 0x87da], /* CJK Ideograph */ + [0x87db, 0x87db], /* CJK Ideograph */ + [0x87dc, 0x87dc], /* CJK Ideograph */ + [0x87dd, 0x87dd], /* CJK Ideograph */ + [0x87de, 0x87de], /* CJK Ideograph */ + [0x87df, 0x87df], /* CJK Ideograph */ + [0x87e0, 0x87e0], /* CJK Ideograph */ + [0x87e1, 0x87e1], /* CJK Ideograph */ + [0x87e2, 0x87e2], /* CJK Ideograph */ + [0x87e3, 0x87e3], /* CJK Ideograph */ + [0x87e4, 0x87e4], /* CJK Ideograph */ + [0x87e5, 0x87e5], /* CJK Ideograph */ + [0x87e6, 0x87e6], /* CJK Ideograph */ + [0x87e7, 0x87e7], /* CJK Ideograph */ + [0x87e8, 0x87e8], /* CJK Ideograph */ + [0x87e9, 0x87e9], /* CJK Ideograph */ + [0x87ea, 0x87ea], /* CJK Ideograph */ + [0x87eb, 0x87eb], /* CJK Ideograph */ + [0x87ec, 0x87ec], /* CJK Ideograph */ + [0x87ed, 0x87ed], /* CJK Ideograph */ + [0x87ee, 0x87ee], /* CJK Ideograph */ + [0x87ef, 0x87ef], /* CJK Ideograph */ + [0x87f0, 0x87f0], /* CJK Ideograph */ + [0x87f1, 0x87f1], /* CJK Ideograph */ + [0x87f2, 0x87f2], /* CJK Ideograph */ + [0x87f3, 0x87f3], /* CJK Ideograph */ + [0x87f4, 0x87f4], /* CJK Ideograph */ + [0x87f5, 0x87f5], /* CJK Ideograph */ + [0x87f6, 0x87f6], /* CJK Ideograph */ + [0x87f7, 0x87f7], /* CJK Ideograph */ + [0x87f8, 0x87f8], /* CJK Ideograph */ + [0x87f9, 0x87f9], /* CJK Ideograph */ + [0x87fa, 0x87fa], /* CJK Ideograph */ + [0x87fb, 0x87fb], /* CJK Ideograph */ + [0x87fc, 0x87fc], /* CJK Ideograph */ + [0x87fd, 0x87fd], /* CJK Ideograph */ + [0x87fe, 0x87fe], /* CJK Ideograph */ + [0x87ff, 0x87ff], /* CJK Ideograph */ + [0x8800, 0x8800], /* CJK Ideograph */ + [0x8801, 0x8801], /* CJK Ideograph */ + [0x8802, 0x8802], /* CJK Ideograph */ + [0x8803, 0x8803], /* CJK Ideograph */ + [0x8804, 0x8804], /* CJK Ideograph */ + [0x8805, 0x8805], /* CJK Ideograph */ + [0x8806, 0x8806], /* CJK Ideograph */ + [0x8807, 0x8807], /* CJK Ideograph */ + [0x8808, 0x8808], /* CJK Ideograph */ + [0x8809, 0x8809], /* CJK Ideograph */ + [0x880a, 0x880a], /* CJK Ideograph */ + [0x880b, 0x880b], /* CJK Ideograph */ + [0x880c, 0x880c], /* CJK Ideograph */ + [0x880d, 0x880d], /* CJK Ideograph */ + [0x880e, 0x880e], /* CJK Ideograph */ + [0x880f, 0x880f], /* CJK Ideograph */ + [0x8810, 0x8810], /* CJK Ideograph */ + [0x8811, 0x8811], /* CJK Ideograph */ + [0x8812, 0x8812], /* CJK Ideograph */ + [0x8813, 0x8813], /* CJK Ideograph */ + [0x8814, 0x8814], /* CJK Ideograph */ + [0x8815, 0x8815], /* CJK Ideograph */ + [0x8816, 0x8816], /* CJK Ideograph */ + [0x8817, 0x8817], /* CJK Ideograph */ + [0x8818, 0x8818], /* CJK Ideograph */ + [0x8819, 0x8819], /* CJK Ideograph */ + [0x881a, 0x881a], /* CJK Ideograph */ + [0x881b, 0x881b], /* CJK Ideograph */ + [0x881c, 0x881c], /* CJK Ideograph */ + [0x881d, 0x881d], /* CJK Ideograph */ + [0x881e, 0x881e], /* CJK Ideograph */ + [0x881f, 0x881f], /* CJK Ideograph */ + [0x8820, 0x8820], /* CJK Ideograph */ + [0x8821, 0x8821], /* CJK Ideograph */ + [0x8822, 0x8822], /* CJK Ideograph */ + [0x8823, 0x8823], /* CJK Ideograph */ + [0x8824, 0x8824], /* CJK Ideograph */ + [0x8825, 0x8825], /* CJK Ideograph */ + [0x8826, 0x8826], /* CJK Ideograph */ + [0x8827, 0x8827], /* CJK Ideograph */ + [0x8828, 0x8828], /* CJK Ideograph */ + [0x8829, 0x8829], /* CJK Ideograph */ + [0x882a, 0x882a], /* CJK Ideograph */ + [0x882b, 0x882b], /* CJK Ideograph */ + [0x882c, 0x882c], /* CJK Ideograph */ + [0x882d, 0x882d], /* CJK Ideograph */ + [0x882e, 0x882e], /* CJK Ideograph */ + [0x882f, 0x882f], /* CJK Ideograph */ + [0x8830, 0x8830], /* CJK Ideograph */ + [0x8831, 0x8831], /* CJK Ideograph */ + [0x8832, 0x8832], /* CJK Ideograph */ + [0x8833, 0x8833], /* CJK Ideograph */ + [0x8834, 0x8834], /* CJK Ideograph */ + [0x8835, 0x8835], /* CJK Ideograph */ + [0x8836, 0x8836], /* CJK Ideograph */ + [0x8837, 0x8837], /* CJK Ideograph */ + [0x8838, 0x8838], /* CJK Ideograph */ + [0x8839, 0x8839], /* CJK Ideograph */ + [0x883a, 0x883a], /* CJK Ideograph */ + [0x883b, 0x883b], /* CJK Ideograph */ + [0x883c, 0x883c], /* CJK Ideograph */ + [0x883d, 0x883d], /* CJK Ideograph */ + [0x883e, 0x883e], /* CJK Ideograph */ + [0x883f, 0x883f], /* CJK Ideograph */ + [0x8840, 0x8840], /* CJK Ideograph */ + [0x8841, 0x8841], /* CJK Ideograph */ + [0x8842, 0x8842], /* CJK Ideograph */ + [0x8843, 0x8843], /* CJK Ideograph */ + [0x8844, 0x8844], /* CJK Ideograph */ + [0x8845, 0x8845], /* CJK Ideograph */ + [0x8846, 0x8846], /* CJK Ideograph */ + [0x8847, 0x8847], /* CJK Ideograph */ + [0x8848, 0x8848], /* CJK Ideograph */ + [0x8849, 0x8849], /* CJK Ideograph */ + [0x884a, 0x884a], /* CJK Ideograph */ + [0x884b, 0x884b], /* CJK Ideograph */ + [0x884c, 0x884c], /* CJK Ideograph */ + [0x884d, 0x884d], /* CJK Ideograph */ + [0x884e, 0x884e], /* CJK Ideograph */ + [0x884f, 0x884f], /* CJK Ideograph */ + [0x8850, 0x8850], /* CJK Ideograph */ + [0x8851, 0x8851], /* CJK Ideograph */ + [0x8852, 0x8852], /* CJK Ideograph */ + [0x8853, 0x8853], /* CJK Ideograph */ + [0x8854, 0x8854], /* CJK Ideograph */ + [0x8855, 0x8855], /* CJK Ideograph */ + [0x8856, 0x8856], /* CJK Ideograph */ + [0x8857, 0x8857], /* CJK Ideograph */ + [0x8858, 0x8858], /* CJK Ideograph */ + [0x8859, 0x8859], /* CJK Ideograph */ + [0x885a, 0x885a], /* CJK Ideograph */ + [0x885b, 0x885b], /* CJK Ideograph */ + [0x885c, 0x885c], /* CJK Ideograph */ + [0x885d, 0x885d], /* CJK Ideograph */ + [0x885e, 0x885e], /* CJK Ideograph */ + [0x885f, 0x885f], /* CJK Ideograph */ + [0x8860, 0x8860], /* CJK Ideograph */ + [0x8861, 0x8861], /* CJK Ideograph */ + [0x8862, 0x8862], /* CJK Ideograph */ + [0x8863, 0x8863], /* CJK Ideograph */ + [0x8864, 0x8864], /* CJK Ideograph */ + [0x8865, 0x8865], /* CJK Ideograph */ + [0x8866, 0x8866], /* CJK Ideograph */ + [0x8867, 0x8867], /* CJK Ideograph */ + [0x8868, 0x8868], /* CJK Ideograph */ + [0x8869, 0x8869], /* CJK Ideograph */ + [0x886a, 0x886a], /* CJK Ideograph */ + [0x886b, 0x886b], /* CJK Ideograph */ + [0x886c, 0x886c], /* CJK Ideograph */ + [0x886d, 0x886d], /* CJK Ideograph */ + [0x886e, 0x886e], /* CJK Ideograph */ + [0x886f, 0x886f], /* CJK Ideograph */ + [0x8870, 0x8870], /* CJK Ideograph */ + [0x8871, 0x8871], /* CJK Ideograph */ + [0x8872, 0x8872], /* CJK Ideograph */ + [0x8873, 0x8873], /* CJK Ideograph */ + [0x8874, 0x8874], /* CJK Ideograph */ + [0x8875, 0x8875], /* CJK Ideograph */ + [0x8876, 0x8876], /* CJK Ideograph */ + [0x8877, 0x8877], /* CJK Ideograph */ + [0x8878, 0x8878], /* CJK Ideograph */ + [0x8879, 0x8879], /* CJK Ideograph */ + [0x887a, 0x887a], /* CJK Ideograph */ + [0x887b, 0x887b], /* CJK Ideograph */ + [0x887c, 0x887c], /* CJK Ideograph */ + [0x887d, 0x887d], /* CJK Ideograph */ + [0x887e, 0x887e], /* CJK Ideograph */ + [0x887f, 0x887f], /* CJK Ideograph */ + [0x8880, 0x8880], /* CJK Ideograph */ + [0x8881, 0x8881], /* CJK Ideograph */ + [0x8882, 0x8882], /* CJK Ideograph */ + [0x8883, 0x8883], /* CJK Ideograph */ + [0x8884, 0x8884], /* CJK Ideograph */ + [0x8885, 0x8885], /* CJK Ideograph */ + [0x8886, 0x8886], /* CJK Ideograph */ + [0x8887, 0x8887], /* CJK Ideograph */ + [0x8888, 0x8888], /* CJK Ideograph */ + [0x8889, 0x8889], /* CJK Ideograph */ + [0x888a, 0x888a], /* CJK Ideograph */ + [0x888b, 0x888b], /* CJK Ideograph */ + [0x888c, 0x888c], /* CJK Ideograph */ + [0x888d, 0x888d], /* CJK Ideograph */ + [0x888e, 0x888e], /* CJK Ideograph */ + [0x888f, 0x888f], /* CJK Ideograph */ + [0x8890, 0x8890], /* CJK Ideograph */ + [0x8891, 0x8891], /* CJK Ideograph */ + [0x8892, 0x8892], /* CJK Ideograph */ + [0x8893, 0x8893], /* CJK Ideograph */ + [0x8894, 0x8894], /* CJK Ideograph */ + [0x8895, 0x8895], /* CJK Ideograph */ + [0x8896, 0x8896], /* CJK Ideograph */ + [0x8897, 0x8897], /* CJK Ideograph */ + [0x8898, 0x8898], /* CJK Ideograph */ + [0x8899, 0x8899], /* CJK Ideograph */ + [0x889a, 0x889a], /* CJK Ideograph */ + [0x889b, 0x889b], /* CJK Ideograph */ + [0x889c, 0x889c], /* CJK Ideograph */ + [0x889d, 0x889d], /* CJK Ideograph */ + [0x889e, 0x889e], /* CJK Ideograph */ + [0x889f, 0x889f], /* CJK Ideograph */ + [0x88a0, 0x88a0], /* CJK Ideograph */ + [0x88a1, 0x88a1], /* CJK Ideograph */ + [0x88a2, 0x88a2], /* CJK Ideograph */ + [0x88a3, 0x88a3], /* CJK Ideograph */ + [0x88a4, 0x88a4], /* CJK Ideograph */ + [0x88a5, 0x88a5], /* CJK Ideograph */ + [0x88a6, 0x88a6], /* CJK Ideograph */ + [0x88a7, 0x88a7], /* CJK Ideograph */ + [0x88a8, 0x88a8], /* CJK Ideograph */ + [0x88a9, 0x88a9], /* CJK Ideograph */ + [0x88aa, 0x88aa], /* CJK Ideograph */ + [0x88ab, 0x88ab], /* CJK Ideograph */ + [0x88ac, 0x88ac], /* CJK Ideograph */ + [0x88ad, 0x88ad], /* CJK Ideograph */ + [0x88ae, 0x88ae], /* CJK Ideograph */ + [0x88af, 0x88af], /* CJK Ideograph */ + [0x88b0, 0x88b0], /* CJK Ideograph */ + [0x88b1, 0x88b1], /* CJK Ideograph */ + [0x88b2, 0x88b2], /* CJK Ideograph */ + [0x88b3, 0x88b3], /* CJK Ideograph */ + [0x88b4, 0x88b4], /* CJK Ideograph */ + [0x88b5, 0x88b5], /* CJK Ideograph */ + [0x88b6, 0x88b6], /* CJK Ideograph */ + [0x88b7, 0x88b7], /* CJK Ideograph */ + [0x88b8, 0x88b8], /* CJK Ideograph */ + [0x88b9, 0x88b9], /* CJK Ideograph */ + [0x88ba, 0x88ba], /* CJK Ideograph */ + [0x88bb, 0x88bb], /* CJK Ideograph */ + [0x88bc, 0x88bc], /* CJK Ideograph */ + [0x88bd, 0x88bd], /* CJK Ideograph */ + [0x88be, 0x88be], /* CJK Ideograph */ + [0x88bf, 0x88bf], /* CJK Ideograph */ + [0x88c0, 0x88c0], /* CJK Ideograph */ + [0x88c1, 0x88c1], /* CJK Ideograph */ + [0x88c2, 0x88c2], /* CJK Ideograph */ + [0x88c3, 0x88c3], /* CJK Ideograph */ + [0x88c4, 0x88c4], /* CJK Ideograph */ + [0x88c5, 0x88c5], /* CJK Ideograph */ + [0x88c6, 0x88c6], /* CJK Ideograph */ + [0x88c7, 0x88c7], /* CJK Ideograph */ + [0x88c8, 0x88c8], /* CJK Ideograph */ + [0x88c9, 0x88c9], /* CJK Ideograph */ + [0x88ca, 0x88ca], /* CJK Ideograph */ + [0x88cb, 0x88cb], /* CJK Ideograph */ + [0x88cc, 0x88cc], /* CJK Ideograph */ + [0x88cd, 0x88cd], /* CJK Ideograph */ + [0x88ce, 0x88ce], /* CJK Ideograph */ + [0x88cf, 0x88cf], /* CJK Ideograph */ + [0x88d0, 0x88d0], /* CJK Ideograph */ + [0x88d1, 0x88d1], /* CJK Ideograph */ + [0x88d2, 0x88d2], /* CJK Ideograph */ + [0x88d3, 0x88d3], /* CJK Ideograph */ + [0x88d4, 0x88d4], /* CJK Ideograph */ + [0x88d5, 0x88d5], /* CJK Ideograph */ + [0x88d6, 0x88d6], /* CJK Ideograph */ + [0x88d7, 0x88d7], /* CJK Ideograph */ + [0x88d8, 0x88d8], /* CJK Ideograph */ + [0x88d9, 0x88d9], /* CJK Ideograph */ + [0x88da, 0x88da], /* CJK Ideograph */ + [0x88db, 0x88db], /* CJK Ideograph */ + [0x88dc, 0x88dc], /* CJK Ideograph */ + [0x88dd, 0x88dd], /* CJK Ideograph */ + [0x88de, 0x88de], /* CJK Ideograph */ + [0x88df, 0x88df], /* CJK Ideograph */ + [0x88e0, 0x88e0], /* CJK Ideograph */ + [0x88e1, 0x88e1], /* CJK Ideograph */ + [0x88e2, 0x88e2], /* CJK Ideograph */ + [0x88e3, 0x88e3], /* CJK Ideograph */ + [0x88e4, 0x88e4], /* CJK Ideograph */ + [0x88e5, 0x88e5], /* CJK Ideograph */ + [0x88e6, 0x88e6], /* CJK Ideograph */ + [0x88e7, 0x88e7], /* CJK Ideograph */ + [0x88e8, 0x88e8], /* CJK Ideograph */ + [0x88e9, 0x88e9], /* CJK Ideograph */ + [0x88ea, 0x88ea], /* CJK Ideograph */ + [0x88eb, 0x88eb], /* CJK Ideograph */ + [0x88ec, 0x88ec], /* CJK Ideograph */ + [0x88ed, 0x88ed], /* CJK Ideograph */ + [0x88ee, 0x88ee], /* CJK Ideograph */ + [0x88ef, 0x88ef], /* CJK Ideograph */ + [0x88f0, 0x88f0], /* CJK Ideograph */ + [0x88f1, 0x88f1], /* CJK Ideograph */ + [0x88f2, 0x88f2], /* CJK Ideograph */ + [0x88f3, 0x88f3], /* CJK Ideograph */ + [0x88f4, 0x88f4], /* CJK Ideograph */ + [0x88f5, 0x88f5], /* CJK Ideograph */ + [0x88f6, 0x88f6], /* CJK Ideograph */ + [0x88f7, 0x88f7], /* CJK Ideograph */ + [0x88f8, 0x88f8], /* CJK Ideograph */ + [0x88f9, 0x88f9], /* CJK Ideograph */ + [0x88fa, 0x88fa], /* CJK Ideograph */ + [0x88fb, 0x88fb], /* CJK Ideograph */ + [0x88fc, 0x88fc], /* CJK Ideograph */ + [0x88fd, 0x88fd], /* CJK Ideograph */ + [0x88fe, 0x88fe], /* CJK Ideograph */ + [0x88ff, 0x88ff], /* CJK Ideograph */ + [0x8900, 0x8900], /* CJK Ideograph */ + [0x8901, 0x8901], /* CJK Ideograph */ + [0x8902, 0x8902], /* CJK Ideograph */ + [0x8903, 0x8903], /* CJK Ideograph */ + [0x8904, 0x8904], /* CJK Ideograph */ + [0x8905, 0x8905], /* CJK Ideograph */ + [0x8906, 0x8906], /* CJK Ideograph */ + [0x8907, 0x8907], /* CJK Ideograph */ + [0x8908, 0x8908], /* CJK Ideograph */ + [0x8909, 0x8909], /* CJK Ideograph */ + [0x890a, 0x890a], /* CJK Ideograph */ + [0x890b, 0x890b], /* CJK Ideograph */ + [0x890c, 0x890c], /* CJK Ideograph */ + [0x890d, 0x890d], /* CJK Ideograph */ + [0x890e, 0x890e], /* CJK Ideograph */ + [0x890f, 0x890f], /* CJK Ideograph */ + [0x8910, 0x8910], /* CJK Ideograph */ + [0x8911, 0x8911], /* CJK Ideograph */ + [0x8912, 0x8912], /* CJK Ideograph */ + [0x8913, 0x8913], /* CJK Ideograph */ + [0x8914, 0x8914], /* CJK Ideograph */ + [0x8915, 0x8915], /* CJK Ideograph */ + [0x8916, 0x8916], /* CJK Ideograph */ + [0x8917, 0x8917], /* CJK Ideograph */ + [0x8918, 0x8918], /* CJK Ideograph */ + [0x8919, 0x8919], /* CJK Ideograph */ + [0x891a, 0x891a], /* CJK Ideograph */ + [0x891b, 0x891b], /* CJK Ideograph */ + [0x891c, 0x891c], /* CJK Ideograph */ + [0x891d, 0x891d], /* CJK Ideograph */ + [0x891e, 0x891e], /* CJK Ideograph */ + [0x891f, 0x891f], /* CJK Ideograph */ + [0x8920, 0x8920], /* CJK Ideograph */ + [0x8921, 0x8921], /* CJK Ideograph */ + [0x8922, 0x8922], /* CJK Ideograph */ + [0x8923, 0x8923], /* CJK Ideograph */ + [0x8924, 0x8924], /* CJK Ideograph */ + [0x8925, 0x8925], /* CJK Ideograph */ + [0x8926, 0x8926], /* CJK Ideograph */ + [0x8927, 0x8927], /* CJK Ideograph */ + [0x8928, 0x8928], /* CJK Ideograph */ + [0x8929, 0x8929], /* CJK Ideograph */ + [0x892a, 0x892a], /* CJK Ideograph */ + [0x892b, 0x892b], /* CJK Ideograph */ + [0x892c, 0x892c], /* CJK Ideograph */ + [0x892d, 0x892d], /* CJK Ideograph */ + [0x892e, 0x892e], /* CJK Ideograph */ + [0x892f, 0x892f], /* CJK Ideograph */ + [0x8930, 0x8930], /* CJK Ideograph */ + [0x8931, 0x8931], /* CJK Ideograph */ + [0x8932, 0x8932], /* CJK Ideograph */ + [0x8933, 0x8933], /* CJK Ideograph */ + [0x8934, 0x8934], /* CJK Ideograph */ + [0x8935, 0x8935], /* CJK Ideograph */ + [0x8936, 0x8936], /* CJK Ideograph */ + [0x8937, 0x8937], /* CJK Ideograph */ + [0x8938, 0x8938], /* CJK Ideograph */ + [0x8939, 0x8939], /* CJK Ideograph */ + [0x893a, 0x893a], /* CJK Ideograph */ + [0x893b, 0x893b], /* CJK Ideograph */ + [0x893c, 0x893c], /* CJK Ideograph */ + [0x893d, 0x893d], /* CJK Ideograph */ + [0x893e, 0x893e], /* CJK Ideograph */ + [0x893f, 0x893f], /* CJK Ideograph */ + [0x8940, 0x8940], /* CJK Ideograph */ + [0x8941, 0x8941], /* CJK Ideograph */ + [0x8942, 0x8942], /* CJK Ideograph */ + [0x8943, 0x8943], /* CJK Ideograph */ + [0x8944, 0x8944], /* CJK Ideograph */ + [0x8945, 0x8945], /* CJK Ideograph */ + [0x8946, 0x8946], /* CJK Ideograph */ + [0x8947, 0x8947], /* CJK Ideograph */ + [0x8948, 0x8948], /* CJK Ideograph */ + [0x8949, 0x8949], /* CJK Ideograph */ + [0x894a, 0x894a], /* CJK Ideograph */ + [0x894b, 0x894b], /* CJK Ideograph */ + [0x894c, 0x894c], /* CJK Ideograph */ + [0x894d, 0x894d], /* CJK Ideograph */ + [0x894e, 0x894e], /* CJK Ideograph */ + [0x894f, 0x894f], /* CJK Ideograph */ + [0x8950, 0x8950], /* CJK Ideograph */ + [0x8951, 0x8951], /* CJK Ideograph */ + [0x8952, 0x8952], /* CJK Ideograph */ + [0x8953, 0x8953], /* CJK Ideograph */ + [0x8954, 0x8954], /* CJK Ideograph */ + [0x8955, 0x8955], /* CJK Ideograph */ + [0x8956, 0x8956], /* CJK Ideograph */ + [0x8957, 0x8957], /* CJK Ideograph */ + [0x8958, 0x8958], /* CJK Ideograph */ + [0x8959, 0x8959], /* CJK Ideograph */ + [0x895a, 0x895a], /* CJK Ideograph */ + [0x895b, 0x895b], /* CJK Ideograph */ + [0x895c, 0x895c], /* CJK Ideograph */ + [0x895d, 0x895d], /* CJK Ideograph */ + [0x895e, 0x895e], /* CJK Ideograph */ + [0x895f, 0x895f], /* CJK Ideograph */ + [0x8960, 0x8960], /* CJK Ideograph */ + [0x8961, 0x8961], /* CJK Ideograph */ + [0x8962, 0x8962], /* CJK Ideograph */ + [0x8963, 0x8963], /* CJK Ideograph */ + [0x8964, 0x8964], /* CJK Ideograph */ + [0x8965, 0x8965], /* CJK Ideograph */ + [0x8966, 0x8966], /* CJK Ideograph */ + [0x8967, 0x8967], /* CJK Ideograph */ + [0x8968, 0x8968], /* CJK Ideograph */ + [0x8969, 0x8969], /* CJK Ideograph */ + [0x896a, 0x896a], /* CJK Ideograph */ + [0x896b, 0x896b], /* CJK Ideograph */ + [0x896c, 0x896c], /* CJK Ideograph */ + [0x896d, 0x896d], /* CJK Ideograph */ + [0x896e, 0x896e], /* CJK Ideograph */ + [0x896f, 0x896f], /* CJK Ideograph */ + [0x8970, 0x8970], /* CJK Ideograph */ + [0x8971, 0x8971], /* CJK Ideograph */ + [0x8972, 0x8972], /* CJK Ideograph */ + [0x8973, 0x8973], /* CJK Ideograph */ + [0x8974, 0x8974], /* CJK Ideograph */ + [0x8975, 0x8975], /* CJK Ideograph */ + [0x8976, 0x8976], /* CJK Ideograph */ + [0x8977, 0x8977], /* CJK Ideograph */ + [0x8978, 0x8978], /* CJK Ideograph */ + [0x8979, 0x8979], /* CJK Ideograph */ + [0x897a, 0x897a], /* CJK Ideograph */ + [0x897b, 0x897b], /* CJK Ideograph */ + [0x897c, 0x897c], /* CJK Ideograph */ + [0x897d, 0x897d], /* CJK Ideograph */ + [0x897e, 0x897e], /* CJK Ideograph */ + [0x897f, 0x897f], /* CJK Ideograph */ + [0x8980, 0x8980], /* CJK Ideograph */ + [0x8981, 0x8981], /* CJK Ideograph */ + [0x8982, 0x8982], /* CJK Ideograph */ + [0x8983, 0x8983], /* CJK Ideograph */ + [0x8984, 0x8984], /* CJK Ideograph */ + [0x8985, 0x8985], /* CJK Ideograph */ + [0x8986, 0x8986], /* CJK Ideograph */ + [0x8987, 0x8987], /* CJK Ideograph */ + [0x8988, 0x8988], /* CJK Ideograph */ + [0x8989, 0x8989], /* CJK Ideograph */ + [0x898a, 0x898a], /* CJK Ideograph */ + [0x898b, 0x898b], /* CJK Ideograph */ + [0x898c, 0x898c], /* CJK Ideograph */ + [0x898d, 0x898d], /* CJK Ideograph */ + [0x898e, 0x898e], /* CJK Ideograph */ + [0x898f, 0x898f], /* CJK Ideograph */ + [0x8990, 0x8990], /* CJK Ideograph */ + [0x8991, 0x8991], /* CJK Ideograph */ + [0x8992, 0x8992], /* CJK Ideograph */ + [0x8993, 0x8993], /* CJK Ideograph */ + [0x8994, 0x8994], /* CJK Ideograph */ + [0x8995, 0x8995], /* CJK Ideograph */ + [0x8996, 0x8996], /* CJK Ideograph */ + [0x8997, 0x8997], /* CJK Ideograph */ + [0x8998, 0x8998], /* CJK Ideograph */ + [0x8999, 0x8999], /* CJK Ideograph */ + [0x899a, 0x899a], /* CJK Ideograph */ + [0x899b, 0x899b], /* CJK Ideograph */ + [0x899c, 0x899c], /* CJK Ideograph */ + [0x899d, 0x899d], /* CJK Ideograph */ + [0x899e, 0x899e], /* CJK Ideograph */ + [0x899f, 0x899f], /* CJK Ideograph */ + [0x89a0, 0x89a0], /* CJK Ideograph */ + [0x89a1, 0x89a1], /* CJK Ideograph */ + [0x89a2, 0x89a2], /* CJK Ideograph */ + [0x89a3, 0x89a3], /* CJK Ideograph */ + [0x89a4, 0x89a4], /* CJK Ideograph */ + [0x89a5, 0x89a5], /* CJK Ideograph */ + [0x89a6, 0x89a6], /* CJK Ideograph */ + [0x89a7, 0x89a7], /* CJK Ideograph */ + [0x89a8, 0x89a8], /* CJK Ideograph */ + [0x89a9, 0x89a9], /* CJK Ideograph */ + [0x89aa, 0x89aa], /* CJK Ideograph */ + [0x89ab, 0x89ab], /* CJK Ideograph */ + [0x89ac, 0x89ac], /* CJK Ideograph */ + [0x89ad, 0x89ad], /* CJK Ideograph */ + [0x89ae, 0x89ae], /* CJK Ideograph */ + [0x89af, 0x89af], /* CJK Ideograph */ + [0x89b0, 0x89b0], /* CJK Ideograph */ + [0x89b1, 0x89b1], /* CJK Ideograph */ + [0x89b2, 0x89b2], /* CJK Ideograph */ + [0x89b3, 0x89b3], /* CJK Ideograph */ + [0x89b4, 0x89b4], /* CJK Ideograph */ + [0x89b5, 0x89b5], /* CJK Ideograph */ + [0x89b6, 0x89b6], /* CJK Ideograph */ + [0x89b7, 0x89b7], /* CJK Ideograph */ + [0x89b8, 0x89b8], /* CJK Ideograph */ + [0x89b9, 0x89b9], /* CJK Ideograph */ + [0x89ba, 0x89ba], /* CJK Ideograph */ + [0x89bb, 0x89bb], /* CJK Ideograph */ + [0x89bc, 0x89bc], /* CJK Ideograph */ + [0x89bd, 0x89bd], /* CJK Ideograph */ + [0x89be, 0x89be], /* CJK Ideograph */ + [0x89bf, 0x89bf], /* CJK Ideograph */ + [0x89c0, 0x89c0], /* CJK Ideograph */ + [0x89c1, 0x89c1], /* CJK Ideograph */ + [0x89c2, 0x89c2], /* CJK Ideograph */ + [0x89c3, 0x89c3], /* CJK Ideograph */ + [0x89c4, 0x89c4], /* CJK Ideograph */ + [0x89c5, 0x89c5], /* CJK Ideograph */ + [0x89c6, 0x89c6], /* CJK Ideograph */ + [0x89c7, 0x89c7], /* CJK Ideograph */ + [0x89c8, 0x89c8], /* CJK Ideograph */ + [0x89c9, 0x89c9], /* CJK Ideograph */ + [0x89ca, 0x89ca], /* CJK Ideograph */ + [0x89cb, 0x89cb], /* CJK Ideograph */ + [0x89cc, 0x89cc], /* CJK Ideograph */ + [0x89cd, 0x89cd], /* CJK Ideograph */ + [0x89ce, 0x89ce], /* CJK Ideograph */ + [0x89cf, 0x89cf], /* CJK Ideograph */ + [0x89d0, 0x89d0], /* CJK Ideograph */ + [0x89d1, 0x89d1], /* CJK Ideograph */ + [0x89d2, 0x89d2], /* CJK Ideograph */ + [0x89d3, 0x89d3], /* CJK Ideograph */ + [0x89d4, 0x89d4], /* CJK Ideograph */ + [0x89d5, 0x89d5], /* CJK Ideograph */ + [0x89d6, 0x89d6], /* CJK Ideograph */ + [0x89d7, 0x89d7], /* CJK Ideograph */ + [0x89d8, 0x89d8], /* CJK Ideograph */ + [0x89d9, 0x89d9], /* CJK Ideograph */ + [0x89da, 0x89da], /* CJK Ideograph */ + [0x89db, 0x89db], /* CJK Ideograph */ + [0x89dc, 0x89dc], /* CJK Ideograph */ + [0x89dd, 0x89dd], /* CJK Ideograph */ + [0x89de, 0x89de], /* CJK Ideograph */ + [0x89df, 0x89df], /* CJK Ideograph */ + [0x89e0, 0x89e0], /* CJK Ideograph */ + [0x89e1, 0x89e1], /* CJK Ideograph */ + [0x89e2, 0x89e2], /* CJK Ideograph */ + [0x89e3, 0x89e3], /* CJK Ideograph */ + [0x89e4, 0x89e4], /* CJK Ideograph */ + [0x89e5, 0x89e5], /* CJK Ideograph */ + [0x89e6, 0x89e6], /* CJK Ideograph */ + [0x89e7, 0x89e7], /* CJK Ideograph */ + [0x89e8, 0x89e8], /* CJK Ideograph */ + [0x89e9, 0x89e9], /* CJK Ideograph */ + [0x89ea, 0x89ea], /* CJK Ideograph */ + [0x89eb, 0x89eb], /* CJK Ideograph */ + [0x89ec, 0x89ec], /* CJK Ideograph */ + [0x89ed, 0x89ed], /* CJK Ideograph */ + [0x89ee, 0x89ee], /* CJK Ideograph */ + [0x89ef, 0x89ef], /* CJK Ideograph */ + [0x89f0, 0x89f0], /* CJK Ideograph */ + [0x89f1, 0x89f1], /* CJK Ideograph */ + [0x89f2, 0x89f2], /* CJK Ideograph */ + [0x89f3, 0x89f3], /* CJK Ideograph */ + [0x89f4, 0x89f4], /* CJK Ideograph */ + [0x89f5, 0x89f5], /* CJK Ideograph */ + [0x89f6, 0x89f6], /* CJK Ideograph */ + [0x89f7, 0x89f7], /* CJK Ideograph */ + [0x89f8, 0x89f8], /* CJK Ideograph */ + [0x89f9, 0x89f9], /* CJK Ideograph */ + [0x89fa, 0x89fa], /* CJK Ideograph */ + [0x89fb, 0x89fb], /* CJK Ideograph */ + [0x89fc, 0x89fc], /* CJK Ideograph */ + [0x89fd, 0x89fd], /* CJK Ideograph */ + [0x89fe, 0x89fe], /* CJK Ideograph */ + [0x89ff, 0x89ff], /* CJK Ideograph */ + [0x8a00, 0x8a00], /* CJK Ideograph */ + [0x8a01, 0x8a01], /* CJK Ideograph */ + [0x8a02, 0x8a02], /* CJK Ideograph */ + [0x8a03, 0x8a03], /* CJK Ideograph */ + [0x8a04, 0x8a04], /* CJK Ideograph */ + [0x8a05, 0x8a05], /* CJK Ideograph */ + [0x8a06, 0x8a06], /* CJK Ideograph */ + [0x8a07, 0x8a07], /* CJK Ideograph */ + [0x8a08, 0x8a08], /* CJK Ideograph */ + [0x8a09, 0x8a09], /* CJK Ideograph */ + [0x8a0a, 0x8a0a], /* CJK Ideograph */ + [0x8a0b, 0x8a0b], /* CJK Ideograph */ + [0x8a0c, 0x8a0c], /* CJK Ideograph */ + [0x8a0d, 0x8a0d], /* CJK Ideograph */ + [0x8a0e, 0x8a0e], /* CJK Ideograph */ + [0x8a0f, 0x8a0f], /* CJK Ideograph */ + [0x8a10, 0x8a10], /* CJK Ideograph */ + [0x8a11, 0x8a11], /* CJK Ideograph */ + [0x8a12, 0x8a12], /* CJK Ideograph */ + [0x8a13, 0x8a13], /* CJK Ideograph */ + [0x8a14, 0x8a14], /* CJK Ideograph */ + [0x8a15, 0x8a15], /* CJK Ideograph */ + [0x8a16, 0x8a16], /* CJK Ideograph */ + [0x8a17, 0x8a17], /* CJK Ideograph */ + [0x8a18, 0x8a18], /* CJK Ideograph */ + [0x8a19, 0x8a19], /* CJK Ideograph */ + [0x8a1a, 0x8a1a], /* CJK Ideograph */ + [0x8a1b, 0x8a1b], /* CJK Ideograph */ + [0x8a1c, 0x8a1c], /* CJK Ideograph */ + [0x8a1d, 0x8a1d], /* CJK Ideograph */ + [0x8a1e, 0x8a1e], /* CJK Ideograph */ + [0x8a1f, 0x8a1f], /* CJK Ideograph */ + [0x8a20, 0x8a20], /* CJK Ideograph */ + [0x8a21, 0x8a21], /* CJK Ideograph */ + [0x8a22, 0x8a22], /* CJK Ideograph */ + [0x8a23, 0x8a23], /* CJK Ideograph */ + [0x8a24, 0x8a24], /* CJK Ideograph */ + [0x8a25, 0x8a25], /* CJK Ideograph */ + [0x8a26, 0x8a26], /* CJK Ideograph */ + [0x8a27, 0x8a27], /* CJK Ideograph */ + [0x8a28, 0x8a28], /* CJK Ideograph */ + [0x8a29, 0x8a29], /* CJK Ideograph */ + [0x8a2a, 0x8a2a], /* CJK Ideograph */ + [0x8a2b, 0x8a2b], /* CJK Ideograph */ + [0x8a2c, 0x8a2c], /* CJK Ideograph */ + [0x8a2d, 0x8a2d], /* CJK Ideograph */ + [0x8a2e, 0x8a2e], /* CJK Ideograph */ + [0x8a2f, 0x8a2f], /* CJK Ideograph */ + [0x8a30, 0x8a30], /* CJK Ideograph */ + [0x8a31, 0x8a31], /* CJK Ideograph */ + [0x8a32, 0x8a32], /* CJK Ideograph */ + [0x8a33, 0x8a33], /* CJK Ideograph */ + [0x8a34, 0x8a34], /* CJK Ideograph */ + [0x8a35, 0x8a35], /* CJK Ideograph */ + [0x8a36, 0x8a36], /* CJK Ideograph */ + [0x8a37, 0x8a37], /* CJK Ideograph */ + [0x8a38, 0x8a38], /* CJK Ideograph */ + [0x8a39, 0x8a39], /* CJK Ideograph */ + [0x8a3a, 0x8a3a], /* CJK Ideograph */ + [0x8a3b, 0x8a3b], /* CJK Ideograph */ + [0x8a3c, 0x8a3c], /* CJK Ideograph */ + [0x8a3d, 0x8a3d], /* CJK Ideograph */ + [0x8a3e, 0x8a3e], /* CJK Ideograph */ + [0x8a3f, 0x8a3f], /* CJK Ideograph */ + [0x8a40, 0x8a40], /* CJK Ideograph */ + [0x8a41, 0x8a41], /* CJK Ideograph */ + [0x8a42, 0x8a42], /* CJK Ideograph */ + [0x8a43, 0x8a43], /* CJK Ideograph */ + [0x8a44, 0x8a44], /* CJK Ideograph */ + [0x8a45, 0x8a45], /* CJK Ideograph */ + [0x8a46, 0x8a46], /* CJK Ideograph */ + [0x8a47, 0x8a47], /* CJK Ideograph */ + [0x8a48, 0x8a48], /* CJK Ideograph */ + [0x8a49, 0x8a49], /* CJK Ideograph */ + [0x8a4a, 0x8a4a], /* CJK Ideograph */ + [0x8a4b, 0x8a4b], /* CJK Ideograph */ + [0x8a4c, 0x8a4c], /* CJK Ideograph */ + [0x8a4d, 0x8a4d], /* CJK Ideograph */ + [0x8a4e, 0x8a4e], /* CJK Ideograph */ + [0x8a4f, 0x8a4f], /* CJK Ideograph */ + [0x8a50, 0x8a50], /* CJK Ideograph */ + [0x8a51, 0x8a51], /* CJK Ideograph */ + [0x8a52, 0x8a52], /* CJK Ideograph */ + [0x8a53, 0x8a53], /* CJK Ideograph */ + [0x8a54, 0x8a54], /* CJK Ideograph */ + [0x8a55, 0x8a55], /* CJK Ideograph */ + [0x8a56, 0x8a56], /* CJK Ideograph */ + [0x8a57, 0x8a57], /* CJK Ideograph */ + [0x8a58, 0x8a58], /* CJK Ideograph */ + [0x8a59, 0x8a59], /* CJK Ideograph */ + [0x8a5a, 0x8a5a], /* CJK Ideograph */ + [0x8a5b, 0x8a5b], /* CJK Ideograph */ + [0x8a5c, 0x8a5c], /* CJK Ideograph */ + [0x8a5d, 0x8a5d], /* CJK Ideograph */ + [0x8a5e, 0x8a5e], /* CJK Ideograph */ + [0x8a5f, 0x8a5f], /* CJK Ideograph */ + [0x8a60, 0x8a60], /* CJK Ideograph */ + [0x8a61, 0x8a61], /* CJK Ideograph */ + [0x8a62, 0x8a62], /* CJK Ideograph */ + [0x8a63, 0x8a63], /* CJK Ideograph */ + [0x8a64, 0x8a64], /* CJK Ideograph */ + [0x8a65, 0x8a65], /* CJK Ideograph */ + [0x8a66, 0x8a66], /* CJK Ideograph */ + [0x8a67, 0x8a67], /* CJK Ideograph */ + [0x8a68, 0x8a68], /* CJK Ideograph */ + [0x8a69, 0x8a69], /* CJK Ideograph */ + [0x8a6a, 0x8a6a], /* CJK Ideograph */ + [0x8a6b, 0x8a6b], /* CJK Ideograph */ + [0x8a6c, 0x8a6c], /* CJK Ideograph */ + [0x8a6d, 0x8a6d], /* CJK Ideograph */ + [0x8a6e, 0x8a6e], /* CJK Ideograph */ + [0x8a6f, 0x8a6f], /* CJK Ideograph */ + [0x8a70, 0x8a70], /* CJK Ideograph */ + [0x8a71, 0x8a71], /* CJK Ideograph */ + [0x8a72, 0x8a72], /* CJK Ideograph */ + [0x8a73, 0x8a73], /* CJK Ideograph */ + [0x8a74, 0x8a74], /* CJK Ideograph */ + [0x8a75, 0x8a75], /* CJK Ideograph */ + [0x8a76, 0x8a76], /* CJK Ideograph */ + [0x8a77, 0x8a77], /* CJK Ideograph */ + [0x8a78, 0x8a78], /* CJK Ideograph */ + [0x8a79, 0x8a79], /* CJK Ideograph */ + [0x8a7a, 0x8a7a], /* CJK Ideograph */ + [0x8a7b, 0x8a7b], /* CJK Ideograph */ + [0x8a7c, 0x8a7c], /* CJK Ideograph */ + [0x8a7d, 0x8a7d], /* CJK Ideograph */ + [0x8a7e, 0x8a7e], /* CJK Ideograph */ + [0x8a7f, 0x8a7f], /* CJK Ideograph */ + [0x8a80, 0x8a80], /* CJK Ideograph */ + [0x8a81, 0x8a81], /* CJK Ideograph */ + [0x8a82, 0x8a82], /* CJK Ideograph */ + [0x8a83, 0x8a83], /* CJK Ideograph */ + [0x8a84, 0x8a84], /* CJK Ideograph */ + [0x8a85, 0x8a85], /* CJK Ideograph */ + [0x8a86, 0x8a86], /* CJK Ideograph */ + [0x8a87, 0x8a87], /* CJK Ideograph */ + [0x8a88, 0x8a88], /* CJK Ideograph */ + [0x8a89, 0x8a89], /* CJK Ideograph */ + [0x8a8a, 0x8a8a], /* CJK Ideograph */ + [0x8a8b, 0x8a8b], /* CJK Ideograph */ + [0x8a8c, 0x8a8c], /* CJK Ideograph */ + [0x8a8d, 0x8a8d], /* CJK Ideograph */ + [0x8a8e, 0x8a8e], /* CJK Ideograph */ + [0x8a8f, 0x8a8f], /* CJK Ideograph */ + [0x8a90, 0x8a90], /* CJK Ideograph */ + [0x8a91, 0x8a91], /* CJK Ideograph */ + [0x8a92, 0x8a92], /* CJK Ideograph */ + [0x8a93, 0x8a93], /* CJK Ideograph */ + [0x8a94, 0x8a94], /* CJK Ideograph */ + [0x8a95, 0x8a95], /* CJK Ideograph */ + [0x8a96, 0x8a96], /* CJK Ideograph */ + [0x8a97, 0x8a97], /* CJK Ideograph */ + [0x8a98, 0x8a98], /* CJK Ideograph */ + [0x8a99, 0x8a99], /* CJK Ideograph */ + [0x8a9a, 0x8a9a], /* CJK Ideograph */ + [0x8a9b, 0x8a9b], /* CJK Ideograph */ + [0x8a9c, 0x8a9c], /* CJK Ideograph */ + [0x8a9d, 0x8a9d], /* CJK Ideograph */ + [0x8a9e, 0x8a9e], /* CJK Ideograph */ + [0x8a9f, 0x8a9f], /* CJK Ideograph */ + [0x8aa0, 0x8aa0], /* CJK Ideograph */ + [0x8aa1, 0x8aa1], /* CJK Ideograph */ + [0x8aa2, 0x8aa2], /* CJK Ideograph */ + [0x8aa3, 0x8aa3], /* CJK Ideograph */ + [0x8aa4, 0x8aa4], /* CJK Ideograph */ + [0x8aa5, 0x8aa5], /* CJK Ideograph */ + [0x8aa6, 0x8aa6], /* CJK Ideograph */ + [0x8aa7, 0x8aa7], /* CJK Ideograph */ + [0x8aa8, 0x8aa8], /* CJK Ideograph */ + [0x8aa9, 0x8aa9], /* CJK Ideograph */ + [0x8aaa, 0x8aaa], /* CJK Ideograph */ + [0x8aab, 0x8aab], /* CJK Ideograph */ + [0x8aac, 0x8aac], /* CJK Ideograph */ + [0x8aad, 0x8aad], /* CJK Ideograph */ + [0x8aae, 0x8aae], /* CJK Ideograph */ + [0x8aaf, 0x8aaf], /* CJK Ideograph */ + [0x8ab0, 0x8ab0], /* CJK Ideograph */ + [0x8ab1, 0x8ab1], /* CJK Ideograph */ + [0x8ab2, 0x8ab2], /* CJK Ideograph */ + [0x8ab3, 0x8ab3], /* CJK Ideograph */ + [0x8ab4, 0x8ab4], /* CJK Ideograph */ + [0x8ab5, 0x8ab5], /* CJK Ideograph */ + [0x8ab6, 0x8ab6], /* CJK Ideograph */ + [0x8ab7, 0x8ab7], /* CJK Ideograph */ + [0x8ab8, 0x8ab8], /* CJK Ideograph */ + [0x8ab9, 0x8ab9], /* CJK Ideograph */ + [0x8aba, 0x8aba], /* CJK Ideograph */ + [0x8abb, 0x8abb], /* CJK Ideograph */ + [0x8abc, 0x8abc], /* CJK Ideograph */ + [0x8abd, 0x8abd], /* CJK Ideograph */ + [0x8abe, 0x8abe], /* CJK Ideograph */ + [0x8abf, 0x8abf], /* CJK Ideograph */ + [0x8ac0, 0x8ac0], /* CJK Ideograph */ + [0x8ac1, 0x8ac1], /* CJK Ideograph */ + [0x8ac2, 0x8ac2], /* CJK Ideograph */ + [0x8ac3, 0x8ac3], /* CJK Ideograph */ + [0x8ac4, 0x8ac4], /* CJK Ideograph */ + [0x8ac5, 0x8ac5], /* CJK Ideograph */ + [0x8ac6, 0x8ac6], /* CJK Ideograph */ + [0x8ac7, 0x8ac7], /* CJK Ideograph */ + [0x8ac8, 0x8ac8], /* CJK Ideograph */ + [0x8ac9, 0x8ac9], /* CJK Ideograph */ + [0x8aca, 0x8aca], /* CJK Ideograph */ + [0x8acb, 0x8acb], /* CJK Ideograph */ + [0x8acc, 0x8acc], /* CJK Ideograph */ + [0x8acd, 0x8acd], /* CJK Ideograph */ + [0x8ace, 0x8ace], /* CJK Ideograph */ + [0x8acf, 0x8acf], /* CJK Ideograph */ + [0x8ad0, 0x8ad0], /* CJK Ideograph */ + [0x8ad1, 0x8ad1], /* CJK Ideograph */ + [0x8ad2, 0x8ad2], /* CJK Ideograph */ + [0x8ad3, 0x8ad3], /* CJK Ideograph */ + [0x8ad4, 0x8ad4], /* CJK Ideograph */ + [0x8ad5, 0x8ad5], /* CJK Ideograph */ + [0x8ad6, 0x8ad6], /* CJK Ideograph */ + [0x8ad7, 0x8ad7], /* CJK Ideograph */ + [0x8ad8, 0x8ad8], /* CJK Ideograph */ + [0x8ad9, 0x8ad9], /* CJK Ideograph */ + [0x8ada, 0x8ada], /* CJK Ideograph */ + [0x8adb, 0x8adb], /* CJK Ideograph */ + [0x8adc, 0x8adc], /* CJK Ideograph */ + [0x8add, 0x8add], /* CJK Ideograph */ + [0x8ade, 0x8ade], /* CJK Ideograph */ + [0x8adf, 0x8adf], /* CJK Ideograph */ + [0x8ae0, 0x8ae0], /* CJK Ideograph */ + [0x8ae1, 0x8ae1], /* CJK Ideograph */ + [0x8ae2, 0x8ae2], /* CJK Ideograph */ + [0x8ae3, 0x8ae3], /* CJK Ideograph */ + [0x8ae4, 0x8ae4], /* CJK Ideograph */ + [0x8ae5, 0x8ae5], /* CJK Ideograph */ + [0x8ae6, 0x8ae6], /* CJK Ideograph */ + [0x8ae7, 0x8ae7], /* CJK Ideograph */ + [0x8ae8, 0x8ae8], /* CJK Ideograph */ + [0x8ae9, 0x8ae9], /* CJK Ideograph */ + [0x8aea, 0x8aea], /* CJK Ideograph */ + [0x8aeb, 0x8aeb], /* CJK Ideograph */ + [0x8aec, 0x8aec], /* CJK Ideograph */ + [0x8aed, 0x8aed], /* CJK Ideograph */ + [0x8aee, 0x8aee], /* CJK Ideograph */ + [0x8aef, 0x8aef], /* CJK Ideograph */ + [0x8af0, 0x8af0], /* CJK Ideograph */ + [0x8af1, 0x8af1], /* CJK Ideograph */ + [0x8af2, 0x8af2], /* CJK Ideograph */ + [0x8af3, 0x8af3], /* CJK Ideograph */ + [0x8af4, 0x8af4], /* CJK Ideograph */ + [0x8af5, 0x8af5], /* CJK Ideograph */ + [0x8af6, 0x8af6], /* CJK Ideograph */ + [0x8af7, 0x8af7], /* CJK Ideograph */ + [0x8af8, 0x8af8], /* CJK Ideograph */ + [0x8af9, 0x8af9], /* CJK Ideograph */ + [0x8afa, 0x8afa], /* CJK Ideograph */ + [0x8afb, 0x8afb], /* CJK Ideograph */ + [0x8afc, 0x8afc], /* CJK Ideograph */ + [0x8afd, 0x8afd], /* CJK Ideograph */ + [0x8afe, 0x8afe], /* CJK Ideograph */ + [0x8aff, 0x8aff], /* CJK Ideograph */ + [0x8b00, 0x8b00], /* CJK Ideograph */ + [0x8b01, 0x8b01], /* CJK Ideograph */ + [0x8b02, 0x8b02], /* CJK Ideograph */ + [0x8b03, 0x8b03], /* CJK Ideograph */ + [0x8b04, 0x8b04], /* CJK Ideograph */ + [0x8b05, 0x8b05], /* CJK Ideograph */ + [0x8b06, 0x8b06], /* CJK Ideograph */ + [0x8b07, 0x8b07], /* CJK Ideograph */ + [0x8b08, 0x8b08], /* CJK Ideograph */ + [0x8b09, 0x8b09], /* CJK Ideograph */ + [0x8b0a, 0x8b0a], /* CJK Ideograph */ + [0x8b0b, 0x8b0b], /* CJK Ideograph */ + [0x8b0c, 0x8b0c], /* CJK Ideograph */ + [0x8b0d, 0x8b0d], /* CJK Ideograph */ + [0x8b0e, 0x8b0e], /* CJK Ideograph */ + [0x8b0f, 0x8b0f], /* CJK Ideograph */ + [0x8b10, 0x8b10], /* CJK Ideograph */ + [0x8b11, 0x8b11], /* CJK Ideograph */ + [0x8b12, 0x8b12], /* CJK Ideograph */ + [0x8b13, 0x8b13], /* CJK Ideograph */ + [0x8b14, 0x8b14], /* CJK Ideograph */ + [0x8b15, 0x8b15], /* CJK Ideograph */ + [0x8b16, 0x8b16], /* CJK Ideograph */ + [0x8b17, 0x8b17], /* CJK Ideograph */ + [0x8b18, 0x8b18], /* CJK Ideograph */ + [0x8b19, 0x8b19], /* CJK Ideograph */ + [0x8b1a, 0x8b1a], /* CJK Ideograph */ + [0x8b1b, 0x8b1b], /* CJK Ideograph */ + [0x8b1c, 0x8b1c], /* CJK Ideograph */ + [0x8b1d, 0x8b1d], /* CJK Ideograph */ + [0x8b1e, 0x8b1e], /* CJK Ideograph */ + [0x8b1f, 0x8b1f], /* CJK Ideograph */ + [0x8b20, 0x8b20], /* CJK Ideograph */ + [0x8b21, 0x8b21], /* CJK Ideograph */ + [0x8b22, 0x8b22], /* CJK Ideograph */ + [0x8b23, 0x8b23], /* CJK Ideograph */ + [0x8b24, 0x8b24], /* CJK Ideograph */ + [0x8b25, 0x8b25], /* CJK Ideograph */ + [0x8b26, 0x8b26], /* CJK Ideograph */ + [0x8b27, 0x8b27], /* CJK Ideograph */ + [0x8b28, 0x8b28], /* CJK Ideograph */ + [0x8b29, 0x8b29], /* CJK Ideograph */ + [0x8b2a, 0x8b2a], /* CJK Ideograph */ + [0x8b2b, 0x8b2b], /* CJK Ideograph */ + [0x8b2c, 0x8b2c], /* CJK Ideograph */ + [0x8b2d, 0x8b2d], /* CJK Ideograph */ + [0x8b2e, 0x8b2e], /* CJK Ideograph */ + [0x8b2f, 0x8b2f], /* CJK Ideograph */ + [0x8b30, 0x8b30], /* CJK Ideograph */ + [0x8b31, 0x8b31], /* CJK Ideograph */ + [0x8b32, 0x8b32], /* CJK Ideograph */ + [0x8b33, 0x8b33], /* CJK Ideograph */ + [0x8b34, 0x8b34], /* CJK Ideograph */ + [0x8b35, 0x8b35], /* CJK Ideograph */ + [0x8b36, 0x8b36], /* CJK Ideograph */ + [0x8b37, 0x8b37], /* CJK Ideograph */ + [0x8b38, 0x8b38], /* CJK Ideograph */ + [0x8b39, 0x8b39], /* CJK Ideograph */ + [0x8b3a, 0x8b3a], /* CJK Ideograph */ + [0x8b3b, 0x8b3b], /* CJK Ideograph */ + [0x8b3c, 0x8b3c], /* CJK Ideograph */ + [0x8b3d, 0x8b3d], /* CJK Ideograph */ + [0x8b3e, 0x8b3e], /* CJK Ideograph */ + [0x8b3f, 0x8b3f], /* CJK Ideograph */ + [0x8b40, 0x8b40], /* CJK Ideograph */ + [0x8b41, 0x8b41], /* CJK Ideograph */ + [0x8b42, 0x8b42], /* CJK Ideograph */ + [0x8b43, 0x8b43], /* CJK Ideograph */ + [0x8b44, 0x8b44], /* CJK Ideograph */ + [0x8b45, 0x8b45], /* CJK Ideograph */ + [0x8b46, 0x8b46], /* CJK Ideograph */ + [0x8b47, 0x8b47], /* CJK Ideograph */ + [0x8b48, 0x8b48], /* CJK Ideograph */ + [0x8b49, 0x8b49], /* CJK Ideograph */ + [0x8b4a, 0x8b4a], /* CJK Ideograph */ + [0x8b4b, 0x8b4b], /* CJK Ideograph */ + [0x8b4c, 0x8b4c], /* CJK Ideograph */ + [0x8b4d, 0x8b4d], /* CJK Ideograph */ + [0x8b4e, 0x8b4e], /* CJK Ideograph */ + [0x8b4f, 0x8b4f], /* CJK Ideograph */ + [0x8b50, 0x8b50], /* CJK Ideograph */ + [0x8b51, 0x8b51], /* CJK Ideograph */ + [0x8b52, 0x8b52], /* CJK Ideograph */ + [0x8b53, 0x8b53], /* CJK Ideograph */ + [0x8b54, 0x8b54], /* CJK Ideograph */ + [0x8b55, 0x8b55], /* CJK Ideograph */ + [0x8b56, 0x8b56], /* CJK Ideograph */ + [0x8b57, 0x8b57], /* CJK Ideograph */ + [0x8b58, 0x8b58], /* CJK Ideograph */ + [0x8b59, 0x8b59], /* CJK Ideograph */ + [0x8b5a, 0x8b5a], /* CJK Ideograph */ + [0x8b5b, 0x8b5b], /* CJK Ideograph */ + [0x8b5c, 0x8b5c], /* CJK Ideograph */ + [0x8b5d, 0x8b5d], /* CJK Ideograph */ + [0x8b5e, 0x8b5e], /* CJK Ideograph */ + [0x8b5f, 0x8b5f], /* CJK Ideograph */ + [0x8b60, 0x8b60], /* CJK Ideograph */ + [0x8b61, 0x8b61], /* CJK Ideograph */ + [0x8b62, 0x8b62], /* CJK Ideograph */ + [0x8b63, 0x8b63], /* CJK Ideograph */ + [0x8b64, 0x8b64], /* CJK Ideograph */ + [0x8b65, 0x8b65], /* CJK Ideograph */ + [0x8b66, 0x8b66], /* CJK Ideograph */ + [0x8b67, 0x8b67], /* CJK Ideograph */ + [0x8b68, 0x8b68], /* CJK Ideograph */ + [0x8b69, 0x8b69], /* CJK Ideograph */ + [0x8b6a, 0x8b6a], /* CJK Ideograph */ + [0x8b6b, 0x8b6b], /* CJK Ideograph */ + [0x8b6c, 0x8b6c], /* CJK Ideograph */ + [0x8b6d, 0x8b6d], /* CJK Ideograph */ + [0x8b6e, 0x8b6e], /* CJK Ideograph */ + [0x8b6f, 0x8b6f], /* CJK Ideograph */ + [0x8b70, 0x8b70], /* CJK Ideograph */ + [0x8b71, 0x8b71], /* CJK Ideograph */ + [0x8b72, 0x8b72], /* CJK Ideograph */ + [0x8b73, 0x8b73], /* CJK Ideograph */ + [0x8b74, 0x8b74], /* CJK Ideograph */ + [0x8b75, 0x8b75], /* CJK Ideograph */ + [0x8b76, 0x8b76], /* CJK Ideograph */ + [0x8b77, 0x8b77], /* CJK Ideograph */ + [0x8b78, 0x8b78], /* CJK Ideograph */ + [0x8b79, 0x8b79], /* CJK Ideograph */ + [0x8b7a, 0x8b7a], /* CJK Ideograph */ + [0x8b7b, 0x8b7b], /* CJK Ideograph */ + [0x8b7c, 0x8b7c], /* CJK Ideograph */ + [0x8b7d, 0x8b7d], /* CJK Ideograph */ + [0x8b7e, 0x8b7e], /* CJK Ideograph */ + [0x8b7f, 0x8b7f], /* CJK Ideograph */ + [0x8b80, 0x8b80], /* CJK Ideograph */ + [0x8b81, 0x8b81], /* CJK Ideograph */ + [0x8b82, 0x8b82], /* CJK Ideograph */ + [0x8b83, 0x8b83], /* CJK Ideograph */ + [0x8b84, 0x8b84], /* CJK Ideograph */ + [0x8b85, 0x8b85], /* CJK Ideograph */ + [0x8b86, 0x8b86], /* CJK Ideograph */ + [0x8b87, 0x8b87], /* CJK Ideograph */ + [0x8b88, 0x8b88], /* CJK Ideograph */ + [0x8b89, 0x8b89], /* CJK Ideograph */ + [0x8b8a, 0x8b8a], /* CJK Ideograph */ + [0x8b8b, 0x8b8b], /* CJK Ideograph */ + [0x8b8c, 0x8b8c], /* CJK Ideograph */ + [0x8b8d, 0x8b8d], /* CJK Ideograph */ + [0x8b8e, 0x8b8e], /* CJK Ideograph */ + [0x8b8f, 0x8b8f], /* CJK Ideograph */ + [0x8b90, 0x8b90], /* CJK Ideograph */ + [0x8b91, 0x8b91], /* CJK Ideograph */ + [0x8b92, 0x8b92], /* CJK Ideograph */ + [0x8b93, 0x8b93], /* CJK Ideograph */ + [0x8b94, 0x8b94], /* CJK Ideograph */ + [0x8b95, 0x8b95], /* CJK Ideograph */ + [0x8b96, 0x8b96], /* CJK Ideograph */ + [0x8b97, 0x8b97], /* CJK Ideograph */ + [0x8b98, 0x8b98], /* CJK Ideograph */ + [0x8b99, 0x8b99], /* CJK Ideograph */ + [0x8b9a, 0x8b9a], /* CJK Ideograph */ + [0x8b9b, 0x8b9b], /* CJK Ideograph */ + [0x8b9c, 0x8b9c], /* CJK Ideograph */ + [0x8b9d, 0x8b9d], /* CJK Ideograph */ + [0x8b9e, 0x8b9e], /* CJK Ideograph */ + [0x8b9f, 0x8b9f], /* CJK Ideograph */ + [0x8ba0, 0x8ba0], /* CJK Ideograph */ + [0x8ba1, 0x8ba1], /* CJK Ideograph */ + [0x8ba2, 0x8ba2], /* CJK Ideograph */ + [0x8ba3, 0x8ba3], /* CJK Ideograph */ + [0x8ba4, 0x8ba4], /* CJK Ideograph */ + [0x8ba5, 0x8ba5], /* CJK Ideograph */ + [0x8ba6, 0x8ba6], /* CJK Ideograph */ + [0x8ba7, 0x8ba7], /* CJK Ideograph */ + [0x8ba8, 0x8ba8], /* CJK Ideograph */ + [0x8ba9, 0x8ba9], /* CJK Ideograph */ + [0x8baa, 0x8baa], /* CJK Ideograph */ + [0x8bab, 0x8bab], /* CJK Ideograph */ + [0x8bac, 0x8bac], /* CJK Ideograph */ + [0x8bad, 0x8bad], /* CJK Ideograph */ + [0x8bae, 0x8bae], /* CJK Ideograph */ + [0x8baf, 0x8baf], /* CJK Ideograph */ + [0x8bb0, 0x8bb0], /* CJK Ideograph */ + [0x8bb1, 0x8bb1], /* CJK Ideograph */ + [0x8bb2, 0x8bb2], /* CJK Ideograph */ + [0x8bb3, 0x8bb3], /* CJK Ideograph */ + [0x8bb4, 0x8bb4], /* CJK Ideograph */ + [0x8bb5, 0x8bb5], /* CJK Ideograph */ + [0x8bb6, 0x8bb6], /* CJK Ideograph */ + [0x8bb7, 0x8bb7], /* CJK Ideograph */ + [0x8bb8, 0x8bb8], /* CJK Ideograph */ + [0x8bb9, 0x8bb9], /* CJK Ideograph */ + [0x8bba, 0x8bba], /* CJK Ideograph */ + [0x8bbb, 0x8bbb], /* CJK Ideograph */ + [0x8bbc, 0x8bbc], /* CJK Ideograph */ + [0x8bbd, 0x8bbd], /* CJK Ideograph */ + [0x8bbe, 0x8bbe], /* CJK Ideograph */ + [0x8bbf, 0x8bbf], /* CJK Ideograph */ + [0x8bc0, 0x8bc0], /* CJK Ideograph */ + [0x8bc1, 0x8bc1], /* CJK Ideograph */ + [0x8bc2, 0x8bc2], /* CJK Ideograph */ + [0x8bc3, 0x8bc3], /* CJK Ideograph */ + [0x8bc4, 0x8bc4], /* CJK Ideograph */ + [0x8bc5, 0x8bc5], /* CJK Ideograph */ + [0x8bc6, 0x8bc6], /* CJK Ideograph */ + [0x8bc7, 0x8bc7], /* CJK Ideograph */ + [0x8bc8, 0x8bc8], /* CJK Ideograph */ + [0x8bc9, 0x8bc9], /* CJK Ideograph */ + [0x8bca, 0x8bca], /* CJK Ideograph */ + [0x8bcb, 0x8bcb], /* CJK Ideograph */ + [0x8bcc, 0x8bcc], /* CJK Ideograph */ + [0x8bcd, 0x8bcd], /* CJK Ideograph */ + [0x8bce, 0x8bce], /* CJK Ideograph */ + [0x8bcf, 0x8bcf], /* CJK Ideograph */ + [0x8bd0, 0x8bd0], /* CJK Ideograph */ + [0x8bd1, 0x8bd1], /* CJK Ideograph */ + [0x8bd2, 0x8bd2], /* CJK Ideograph */ + [0x8bd3, 0x8bd3], /* CJK Ideograph */ + [0x8bd4, 0x8bd4], /* CJK Ideograph */ + [0x8bd5, 0x8bd5], /* CJK Ideograph */ + [0x8bd6, 0x8bd6], /* CJK Ideograph */ + [0x8bd7, 0x8bd7], /* CJK Ideograph */ + [0x8bd8, 0x8bd8], /* CJK Ideograph */ + [0x8bd9, 0x8bd9], /* CJK Ideograph */ + [0x8bda, 0x8bda], /* CJK Ideograph */ + [0x8bdb, 0x8bdb], /* CJK Ideograph */ + [0x8bdc, 0x8bdc], /* CJK Ideograph */ + [0x8bdd, 0x8bdd], /* CJK Ideograph */ + [0x8bde, 0x8bde], /* CJK Ideograph */ + [0x8bdf, 0x8bdf], /* CJK Ideograph */ + [0x8be0, 0x8be0], /* CJK Ideograph */ + [0x8be1, 0x8be1], /* CJK Ideograph */ + [0x8be2, 0x8be2], /* CJK Ideograph */ + [0x8be3, 0x8be3], /* CJK Ideograph */ + [0x8be4, 0x8be4], /* CJK Ideograph */ + [0x8be5, 0x8be5], /* CJK Ideograph */ + [0x8be6, 0x8be6], /* CJK Ideograph */ + [0x8be7, 0x8be7], /* CJK Ideograph */ + [0x8be8, 0x8be8], /* CJK Ideograph */ + [0x8be9, 0x8be9], /* CJK Ideograph */ + [0x8bea, 0x8bea], /* CJK Ideograph */ + [0x8beb, 0x8beb], /* CJK Ideograph */ + [0x8bec, 0x8bec], /* CJK Ideograph */ + [0x8bed, 0x8bed], /* CJK Ideograph */ + [0x8bee, 0x8bee], /* CJK Ideograph */ + [0x8bef, 0x8bef], /* CJK Ideograph */ + [0x8bf0, 0x8bf0], /* CJK Ideograph */ + [0x8bf1, 0x8bf1], /* CJK Ideograph */ + [0x8bf2, 0x8bf2], /* CJK Ideograph */ + [0x8bf3, 0x8bf3], /* CJK Ideograph */ + [0x8bf4, 0x8bf4], /* CJK Ideograph */ + [0x8bf5, 0x8bf5], /* CJK Ideograph */ + [0x8bf6, 0x8bf6], /* CJK Ideograph */ + [0x8bf7, 0x8bf7], /* CJK Ideograph */ + [0x8bf8, 0x8bf8], /* CJK Ideograph */ + [0x8bf9, 0x8bf9], /* CJK Ideograph */ + [0x8bfa, 0x8bfa], /* CJK Ideograph */ + [0x8bfb, 0x8bfb], /* CJK Ideograph */ + [0x8bfc, 0x8bfc], /* CJK Ideograph */ + [0x8bfd, 0x8bfd], /* CJK Ideograph */ + [0x8bfe, 0x8bfe], /* CJK Ideograph */ + [0x8bff, 0x8bff], /* CJK Ideograph */ + [0x8c00, 0x8c00], /* CJK Ideograph */ + [0x8c01, 0x8c01], /* CJK Ideograph */ + [0x8c02, 0x8c02], /* CJK Ideograph */ + [0x8c03, 0x8c03], /* CJK Ideograph */ + [0x8c04, 0x8c04], /* CJK Ideograph */ + [0x8c05, 0x8c05], /* CJK Ideograph */ + [0x8c06, 0x8c06], /* CJK Ideograph */ + [0x8c07, 0x8c07], /* CJK Ideograph */ + [0x8c08, 0x8c08], /* CJK Ideograph */ + [0x8c09, 0x8c09], /* CJK Ideograph */ + [0x8c0a, 0x8c0a], /* CJK Ideograph */ + [0x8c0b, 0x8c0b], /* CJK Ideograph */ + [0x8c0c, 0x8c0c], /* CJK Ideograph */ + [0x8c0d, 0x8c0d], /* CJK Ideograph */ + [0x8c0e, 0x8c0e], /* CJK Ideograph */ + [0x8c0f, 0x8c0f], /* CJK Ideograph */ + [0x8c10, 0x8c10], /* CJK Ideograph */ + [0x8c11, 0x8c11], /* CJK Ideograph */ + [0x8c12, 0x8c12], /* CJK Ideograph */ + [0x8c13, 0x8c13], /* CJK Ideograph */ + [0x8c14, 0x8c14], /* CJK Ideograph */ + [0x8c15, 0x8c15], /* CJK Ideograph */ + [0x8c16, 0x8c16], /* CJK Ideograph */ + [0x8c17, 0x8c17], /* CJK Ideograph */ + [0x8c18, 0x8c18], /* CJK Ideograph */ + [0x8c19, 0x8c19], /* CJK Ideograph */ + [0x8c1a, 0x8c1a], /* CJK Ideograph */ + [0x8c1b, 0x8c1b], /* CJK Ideograph */ + [0x8c1c, 0x8c1c], /* CJK Ideograph */ + [0x8c1d, 0x8c1d], /* CJK Ideograph */ + [0x8c1e, 0x8c1e], /* CJK Ideograph */ + [0x8c1f, 0x8c1f], /* CJK Ideograph */ + [0x8c20, 0x8c20], /* CJK Ideograph */ + [0x8c21, 0x8c21], /* CJK Ideograph */ + [0x8c22, 0x8c22], /* CJK Ideograph */ + [0x8c23, 0x8c23], /* CJK Ideograph */ + [0x8c24, 0x8c24], /* CJK Ideograph */ + [0x8c25, 0x8c25], /* CJK Ideograph */ + [0x8c26, 0x8c26], /* CJK Ideograph */ + [0x8c27, 0x8c27], /* CJK Ideograph */ + [0x8c28, 0x8c28], /* CJK Ideograph */ + [0x8c29, 0x8c29], /* CJK Ideograph */ + [0x8c2a, 0x8c2a], /* CJK Ideograph */ + [0x8c2b, 0x8c2b], /* CJK Ideograph */ + [0x8c2c, 0x8c2c], /* CJK Ideograph */ + [0x8c2d, 0x8c2d], /* CJK Ideograph */ + [0x8c2e, 0x8c2e], /* CJK Ideograph */ + [0x8c2f, 0x8c2f], /* CJK Ideograph */ + [0x8c30, 0x8c30], /* CJK Ideograph */ + [0x8c31, 0x8c31], /* CJK Ideograph */ + [0x8c32, 0x8c32], /* CJK Ideograph */ + [0x8c33, 0x8c33], /* CJK Ideograph */ + [0x8c34, 0x8c34], /* CJK Ideograph */ + [0x8c35, 0x8c35], /* CJK Ideograph */ + [0x8c36, 0x8c36], /* CJK Ideograph */ + [0x8c37, 0x8c37], /* CJK Ideograph */ + [0x8c38, 0x8c38], /* CJK Ideograph */ + [0x8c39, 0x8c39], /* CJK Ideograph */ + [0x8c3a, 0x8c3a], /* CJK Ideograph */ + [0x8c3b, 0x8c3b], /* CJK Ideograph */ + [0x8c3c, 0x8c3c], /* CJK Ideograph */ + [0x8c3d, 0x8c3d], /* CJK Ideograph */ + [0x8c3e, 0x8c3e], /* CJK Ideograph */ + [0x8c3f, 0x8c3f], /* CJK Ideograph */ + [0x8c40, 0x8c40], /* CJK Ideograph */ + [0x8c41, 0x8c41], /* CJK Ideograph */ + [0x8c42, 0x8c42], /* CJK Ideograph */ + [0x8c43, 0x8c43], /* CJK Ideograph */ + [0x8c44, 0x8c44], /* CJK Ideograph */ + [0x8c45, 0x8c45], /* CJK Ideograph */ + [0x8c46, 0x8c46], /* CJK Ideograph */ + [0x8c47, 0x8c47], /* CJK Ideograph */ + [0x8c48, 0x8c48], /* CJK Ideograph */ + [0x8c49, 0x8c49], /* CJK Ideograph */ + [0x8c4a, 0x8c4a], /* CJK Ideograph */ + [0x8c4b, 0x8c4b], /* CJK Ideograph */ + [0x8c4c, 0x8c4c], /* CJK Ideograph */ + [0x8c4d, 0x8c4d], /* CJK Ideograph */ + [0x8c4e, 0x8c4e], /* CJK Ideograph */ + [0x8c4f, 0x8c4f], /* CJK Ideograph */ + [0x8c50, 0x8c50], /* CJK Ideograph */ + [0x8c51, 0x8c51], /* CJK Ideograph */ + [0x8c52, 0x8c52], /* CJK Ideograph */ + [0x8c53, 0x8c53], /* CJK Ideograph */ + [0x8c54, 0x8c54], /* CJK Ideograph */ + [0x8c55, 0x8c55], /* CJK Ideograph */ + [0x8c56, 0x8c56], /* CJK Ideograph */ + [0x8c57, 0x8c57], /* CJK Ideograph */ + [0x8c58, 0x8c58], /* CJK Ideograph */ + [0x8c59, 0x8c59], /* CJK Ideograph */ + [0x8c5a, 0x8c5a], /* CJK Ideograph */ + [0x8c5b, 0x8c5b], /* CJK Ideograph */ + [0x8c5c, 0x8c5c], /* CJK Ideograph */ + [0x8c5d, 0x8c5d], /* CJK Ideograph */ + [0x8c5e, 0x8c5e], /* CJK Ideograph */ + [0x8c5f, 0x8c5f], /* CJK Ideograph */ + [0x8c60, 0x8c60], /* CJK Ideograph */ + [0x8c61, 0x8c61], /* CJK Ideograph */ + [0x8c62, 0x8c62], /* CJK Ideograph */ + [0x8c63, 0x8c63], /* CJK Ideograph */ + [0x8c64, 0x8c64], /* CJK Ideograph */ + [0x8c65, 0x8c65], /* CJK Ideograph */ + [0x8c66, 0x8c66], /* CJK Ideograph */ + [0x8c67, 0x8c67], /* CJK Ideograph */ + [0x8c68, 0x8c68], /* CJK Ideograph */ + [0x8c69, 0x8c69], /* CJK Ideograph */ + [0x8c6a, 0x8c6a], /* CJK Ideograph */ + [0x8c6b, 0x8c6b], /* CJK Ideograph */ + [0x8c6c, 0x8c6c], /* CJK Ideograph */ + [0x8c6d, 0x8c6d], /* CJK Ideograph */ + [0x8c6e, 0x8c6e], /* CJK Ideograph */ + [0x8c6f, 0x8c6f], /* CJK Ideograph */ + [0x8c70, 0x8c70], /* CJK Ideograph */ + [0x8c71, 0x8c71], /* CJK Ideograph */ + [0x8c72, 0x8c72], /* CJK Ideograph */ + [0x8c73, 0x8c73], /* CJK Ideograph */ + [0x8c74, 0x8c74], /* CJK Ideograph */ + [0x8c75, 0x8c75], /* CJK Ideograph */ + [0x8c76, 0x8c76], /* CJK Ideograph */ + [0x8c77, 0x8c77], /* CJK Ideograph */ + [0x8c78, 0x8c78], /* CJK Ideograph */ + [0x8c79, 0x8c79], /* CJK Ideograph */ + [0x8c7a, 0x8c7a], /* CJK Ideograph */ + [0x8c7b, 0x8c7b], /* CJK Ideograph */ + [0x8c7c, 0x8c7c], /* CJK Ideograph */ + [0x8c7d, 0x8c7d], /* CJK Ideograph */ + [0x8c7e, 0x8c7e], /* CJK Ideograph */ + [0x8c7f, 0x8c7f], /* CJK Ideograph */ + [0x8c80, 0x8c80], /* CJK Ideograph */ + [0x8c81, 0x8c81], /* CJK Ideograph */ + [0x8c82, 0x8c82], /* CJK Ideograph */ + [0x8c83, 0x8c83], /* CJK Ideograph */ + [0x8c84, 0x8c84], /* CJK Ideograph */ + [0x8c85, 0x8c85], /* CJK Ideograph */ + [0x8c86, 0x8c86], /* CJK Ideograph */ + [0x8c87, 0x8c87], /* CJK Ideograph */ + [0x8c88, 0x8c88], /* CJK Ideograph */ + [0x8c89, 0x8c89], /* CJK Ideograph */ + [0x8c8a, 0x8c8a], /* CJK Ideograph */ + [0x8c8b, 0x8c8b], /* CJK Ideograph */ + [0x8c8c, 0x8c8c], /* CJK Ideograph */ + [0x8c8d, 0x8c8d], /* CJK Ideograph */ + [0x8c8e, 0x8c8e], /* CJK Ideograph */ + [0x8c8f, 0x8c8f], /* CJK Ideograph */ + [0x8c90, 0x8c90], /* CJK Ideograph */ + [0x8c91, 0x8c91], /* CJK Ideograph */ + [0x8c92, 0x8c92], /* CJK Ideograph */ + [0x8c93, 0x8c93], /* CJK Ideograph */ + [0x8c94, 0x8c94], /* CJK Ideograph */ + [0x8c95, 0x8c95], /* CJK Ideograph */ + [0x8c96, 0x8c96], /* CJK Ideograph */ + [0x8c97, 0x8c97], /* CJK Ideograph */ + [0x8c98, 0x8c98], /* CJK Ideograph */ + [0x8c99, 0x8c99], /* CJK Ideograph */ + [0x8c9a, 0x8c9a], /* CJK Ideograph */ + [0x8c9b, 0x8c9b], /* CJK Ideograph */ + [0x8c9c, 0x8c9c], /* CJK Ideograph */ + [0x8c9d, 0x8c9d], /* CJK Ideograph */ + [0x8c9e, 0x8c9e], /* CJK Ideograph */ + [0x8c9f, 0x8c9f], /* CJK Ideograph */ + [0x8ca0, 0x8ca0], /* CJK Ideograph */ + [0x8ca1, 0x8ca1], /* CJK Ideograph */ + [0x8ca2, 0x8ca2], /* CJK Ideograph */ + [0x8ca3, 0x8ca3], /* CJK Ideograph */ + [0x8ca4, 0x8ca4], /* CJK Ideograph */ + [0x8ca5, 0x8ca5], /* CJK Ideograph */ + [0x8ca6, 0x8ca6], /* CJK Ideograph */ + [0x8ca7, 0x8ca7], /* CJK Ideograph */ + [0x8ca8, 0x8ca8], /* CJK Ideograph */ + [0x8ca9, 0x8ca9], /* CJK Ideograph */ + [0x8caa, 0x8caa], /* CJK Ideograph */ + [0x8cab, 0x8cab], /* CJK Ideograph */ + [0x8cac, 0x8cac], /* CJK Ideograph */ + [0x8cad, 0x8cad], /* CJK Ideograph */ + [0x8cae, 0x8cae], /* CJK Ideograph */ + [0x8caf, 0x8caf], /* CJK Ideograph */ + [0x8cb0, 0x8cb0], /* CJK Ideograph */ + [0x8cb1, 0x8cb1], /* CJK Ideograph */ + [0x8cb2, 0x8cb2], /* CJK Ideograph */ + [0x8cb3, 0x8cb3], /* CJK Ideograph */ + [0x8cb4, 0x8cb4], /* CJK Ideograph */ + [0x8cb5, 0x8cb5], /* CJK Ideograph */ + [0x8cb6, 0x8cb6], /* CJK Ideograph */ + [0x8cb7, 0x8cb7], /* CJK Ideograph */ + [0x8cb8, 0x8cb8], /* CJK Ideograph */ + [0x8cb9, 0x8cb9], /* CJK Ideograph */ + [0x8cba, 0x8cba], /* CJK Ideograph */ + [0x8cbb, 0x8cbb], /* CJK Ideograph */ + [0x8cbc, 0x8cbc], /* CJK Ideograph */ + [0x8cbd, 0x8cbd], /* CJK Ideograph */ + [0x8cbe, 0x8cbe], /* CJK Ideograph */ + [0x8cbf, 0x8cbf], /* CJK Ideograph */ + [0x8cc0, 0x8cc0], /* CJK Ideograph */ + [0x8cc1, 0x8cc1], /* CJK Ideograph */ + [0x8cc2, 0x8cc2], /* CJK Ideograph */ + [0x8cc3, 0x8cc3], /* CJK Ideograph */ + [0x8cc4, 0x8cc4], /* CJK Ideograph */ + [0x8cc5, 0x8cc5], /* CJK Ideograph */ + [0x8cc6, 0x8cc6], /* CJK Ideograph */ + [0x8cc7, 0x8cc7], /* CJK Ideograph */ + [0x8cc8, 0x8cc8], /* CJK Ideograph */ + [0x8cc9, 0x8cc9], /* CJK Ideograph */ + [0x8cca, 0x8cca], /* CJK Ideograph */ + [0x8ccb, 0x8ccb], /* CJK Ideograph */ + [0x8ccc, 0x8ccc], /* CJK Ideograph */ + [0x8ccd, 0x8ccd], /* CJK Ideograph */ + [0x8cce, 0x8cce], /* CJK Ideograph */ + [0x8ccf, 0x8ccf], /* CJK Ideograph */ + [0x8cd0, 0x8cd0], /* CJK Ideograph */ + [0x8cd1, 0x8cd1], /* CJK Ideograph */ + [0x8cd2, 0x8cd2], /* CJK Ideograph */ + [0x8cd3, 0x8cd3], /* CJK Ideograph */ + [0x8cd4, 0x8cd4], /* CJK Ideograph */ + [0x8cd5, 0x8cd5], /* CJK Ideograph */ + [0x8cd6, 0x8cd6], /* CJK Ideograph */ + [0x8cd7, 0x8cd7], /* CJK Ideograph */ + [0x8cd8, 0x8cd8], /* CJK Ideograph */ + [0x8cd9, 0x8cd9], /* CJK Ideograph */ + [0x8cda, 0x8cda], /* CJK Ideograph */ + [0x8cdb, 0x8cdb], /* CJK Ideograph */ + [0x8cdc, 0x8cdc], /* CJK Ideograph */ + [0x8cdd, 0x8cdd], /* CJK Ideograph */ + [0x8cde, 0x8cde], /* CJK Ideograph */ + [0x8cdf, 0x8cdf], /* CJK Ideograph */ + [0x8ce0, 0x8ce0], /* CJK Ideograph */ + [0x8ce1, 0x8ce1], /* CJK Ideograph */ + [0x8ce2, 0x8ce2], /* CJK Ideograph */ + [0x8ce3, 0x8ce3], /* CJK Ideograph */ + [0x8ce4, 0x8ce4], /* CJK Ideograph */ + [0x8ce5, 0x8ce5], /* CJK Ideograph */ + [0x8ce6, 0x8ce6], /* CJK Ideograph */ + [0x8ce7, 0x8ce7], /* CJK Ideograph */ + [0x8ce8, 0x8ce8], /* CJK Ideograph */ + [0x8ce9, 0x8ce9], /* CJK Ideograph */ + [0x8cea, 0x8cea], /* CJK Ideograph */ + [0x8ceb, 0x8ceb], /* CJK Ideograph */ + [0x8cec, 0x8cec], /* CJK Ideograph */ + [0x8ced, 0x8ced], /* CJK Ideograph */ + [0x8cee, 0x8cee], /* CJK Ideograph */ + [0x8cef, 0x8cef], /* CJK Ideograph */ + [0x8cf0, 0x8cf0], /* CJK Ideograph */ + [0x8cf1, 0x8cf1], /* CJK Ideograph */ + [0x8cf2, 0x8cf2], /* CJK Ideograph */ + [0x8cf3, 0x8cf3], /* CJK Ideograph */ + [0x8cf4, 0x8cf4], /* CJK Ideograph */ + [0x8cf5, 0x8cf5], /* CJK Ideograph */ + [0x8cf6, 0x8cf6], /* CJK Ideograph */ + [0x8cf7, 0x8cf7], /* CJK Ideograph */ + [0x8cf8, 0x8cf8], /* CJK Ideograph */ + [0x8cf9, 0x8cf9], /* CJK Ideograph */ + [0x8cfa, 0x8cfa], /* CJK Ideograph */ + [0x8cfb, 0x8cfb], /* CJK Ideograph */ + [0x8cfc, 0x8cfc], /* CJK Ideograph */ + [0x8cfd, 0x8cfd], /* CJK Ideograph */ + [0x8cfe, 0x8cfe], /* CJK Ideograph */ + [0x8cff, 0x8cff], /* CJK Ideograph */ + [0x8d00, 0x8d00], /* CJK Ideograph */ + [0x8d01, 0x8d01], /* CJK Ideograph */ + [0x8d02, 0x8d02], /* CJK Ideograph */ + [0x8d03, 0x8d03], /* CJK Ideograph */ + [0x8d04, 0x8d04], /* CJK Ideograph */ + [0x8d05, 0x8d05], /* CJK Ideograph */ + [0x8d06, 0x8d06], /* CJK Ideograph */ + [0x8d07, 0x8d07], /* CJK Ideograph */ + [0x8d08, 0x8d08], /* CJK Ideograph */ + [0x8d09, 0x8d09], /* CJK Ideograph */ + [0x8d0a, 0x8d0a], /* CJK Ideograph */ + [0x8d0b, 0x8d0b], /* CJK Ideograph */ + [0x8d0c, 0x8d0c], /* CJK Ideograph */ + [0x8d0d, 0x8d0d], /* CJK Ideograph */ + [0x8d0e, 0x8d0e], /* CJK Ideograph */ + [0x8d0f, 0x8d0f], /* CJK Ideograph */ + [0x8d10, 0x8d10], /* CJK Ideograph */ + [0x8d11, 0x8d11], /* CJK Ideograph */ + [0x8d12, 0x8d12], /* CJK Ideograph */ + [0x8d13, 0x8d13], /* CJK Ideograph */ + [0x8d14, 0x8d14], /* CJK Ideograph */ + [0x8d15, 0x8d15], /* CJK Ideograph */ + [0x8d16, 0x8d16], /* CJK Ideograph */ + [0x8d17, 0x8d17], /* CJK Ideograph */ + [0x8d18, 0x8d18], /* CJK Ideograph */ + [0x8d19, 0x8d19], /* CJK Ideograph */ + [0x8d1a, 0x8d1a], /* CJK Ideograph */ + [0x8d1b, 0x8d1b], /* CJK Ideograph */ + [0x8d1c, 0x8d1c], /* CJK Ideograph */ + [0x8d1d, 0x8d1d], /* CJK Ideograph */ + [0x8d1e, 0x8d1e], /* CJK Ideograph */ + [0x8d1f, 0x8d1f], /* CJK Ideograph */ + [0x8d20, 0x8d20], /* CJK Ideograph */ + [0x8d21, 0x8d21], /* CJK Ideograph */ + [0x8d22, 0x8d22], /* CJK Ideograph */ + [0x8d23, 0x8d23], /* CJK Ideograph */ + [0x8d24, 0x8d24], /* CJK Ideograph */ + [0x8d25, 0x8d25], /* CJK Ideograph */ + [0x8d26, 0x8d26], /* CJK Ideograph */ + [0x8d27, 0x8d27], /* CJK Ideograph */ + [0x8d28, 0x8d28], /* CJK Ideograph */ + [0x8d29, 0x8d29], /* CJK Ideograph */ + [0x8d2a, 0x8d2a], /* CJK Ideograph */ + [0x8d2b, 0x8d2b], /* CJK Ideograph */ + [0x8d2c, 0x8d2c], /* CJK Ideograph */ + [0x8d2d, 0x8d2d], /* CJK Ideograph */ + [0x8d2e, 0x8d2e], /* CJK Ideograph */ + [0x8d2f, 0x8d2f], /* CJK Ideograph */ + [0x8d30, 0x8d30], /* CJK Ideograph */ + [0x8d31, 0x8d31], /* CJK Ideograph */ + [0x8d32, 0x8d32], /* CJK Ideograph */ + [0x8d33, 0x8d33], /* CJK Ideograph */ + [0x8d34, 0x8d34], /* CJK Ideograph */ + [0x8d35, 0x8d35], /* CJK Ideograph */ + [0x8d36, 0x8d36], /* CJK Ideograph */ + [0x8d37, 0x8d37], /* CJK Ideograph */ + [0x8d38, 0x8d38], /* CJK Ideograph */ + [0x8d39, 0x8d39], /* CJK Ideograph */ + [0x8d3a, 0x8d3a], /* CJK Ideograph */ + [0x8d3b, 0x8d3b], /* CJK Ideograph */ + [0x8d3c, 0x8d3c], /* CJK Ideograph */ + [0x8d3d, 0x8d3d], /* CJK Ideograph */ + [0x8d3e, 0x8d3e], /* CJK Ideograph */ + [0x8d3f, 0x8d3f], /* CJK Ideograph */ + [0x8d40, 0x8d40], /* CJK Ideograph */ + [0x8d41, 0x8d41], /* CJK Ideograph */ + [0x8d42, 0x8d42], /* CJK Ideograph */ + [0x8d43, 0x8d43], /* CJK Ideograph */ + [0x8d44, 0x8d44], /* CJK Ideograph */ + [0x8d45, 0x8d45], /* CJK Ideograph */ + [0x8d46, 0x8d46], /* CJK Ideograph */ + [0x8d47, 0x8d47], /* CJK Ideograph */ + [0x8d48, 0x8d48], /* CJK Ideograph */ + [0x8d49, 0x8d49], /* CJK Ideograph */ + [0x8d4a, 0x8d4a], /* CJK Ideograph */ + [0x8d4b, 0x8d4b], /* CJK Ideograph */ + [0x8d4c, 0x8d4c], /* CJK Ideograph */ + [0x8d4d, 0x8d4d], /* CJK Ideograph */ + [0x8d4e, 0x8d4e], /* CJK Ideograph */ + [0x8d4f, 0x8d4f], /* CJK Ideograph */ + [0x8d50, 0x8d50], /* CJK Ideograph */ + [0x8d51, 0x8d51], /* CJK Ideograph */ + [0x8d52, 0x8d52], /* CJK Ideograph */ + [0x8d53, 0x8d53], /* CJK Ideograph */ + [0x8d54, 0x8d54], /* CJK Ideograph */ + [0x8d55, 0x8d55], /* CJK Ideograph */ + [0x8d56, 0x8d56], /* CJK Ideograph */ + [0x8d57, 0x8d57], /* CJK Ideograph */ + [0x8d58, 0x8d58], /* CJK Ideograph */ + [0x8d59, 0x8d59], /* CJK Ideograph */ + [0x8d5a, 0x8d5a], /* CJK Ideograph */ + [0x8d5b, 0x8d5b], /* CJK Ideograph */ + [0x8d5c, 0x8d5c], /* CJK Ideograph */ + [0x8d5d, 0x8d5d], /* CJK Ideograph */ + [0x8d5e, 0x8d5e], /* CJK Ideograph */ + [0x8d5f, 0x8d5f], /* CJK Ideograph */ + [0x8d60, 0x8d60], /* CJK Ideograph */ + [0x8d61, 0x8d61], /* CJK Ideograph */ + [0x8d62, 0x8d62], /* CJK Ideograph */ + [0x8d63, 0x8d63], /* CJK Ideograph */ + [0x8d64, 0x8d64], /* CJK Ideograph */ + [0x8d65, 0x8d65], /* CJK Ideograph */ + [0x8d66, 0x8d66], /* CJK Ideograph */ + [0x8d67, 0x8d67], /* CJK Ideograph */ + [0x8d68, 0x8d68], /* CJK Ideograph */ + [0x8d69, 0x8d69], /* CJK Ideograph */ + [0x8d6a, 0x8d6a], /* CJK Ideograph */ + [0x8d6b, 0x8d6b], /* CJK Ideograph */ + [0x8d6c, 0x8d6c], /* CJK Ideograph */ + [0x8d6d, 0x8d6d], /* CJK Ideograph */ + [0x8d6e, 0x8d6e], /* CJK Ideograph */ + [0x8d6f, 0x8d6f], /* CJK Ideograph */ + [0x8d70, 0x8d70], /* CJK Ideograph */ + [0x8d71, 0x8d71], /* CJK Ideograph */ + [0x8d72, 0x8d72], /* CJK Ideograph */ + [0x8d73, 0x8d73], /* CJK Ideograph */ + [0x8d74, 0x8d74], /* CJK Ideograph */ + [0x8d75, 0x8d75], /* CJK Ideograph */ + [0x8d76, 0x8d76], /* CJK Ideograph */ + [0x8d77, 0x8d77], /* CJK Ideograph */ + [0x8d78, 0x8d78], /* CJK Ideograph */ + [0x8d79, 0x8d79], /* CJK Ideograph */ + [0x8d7a, 0x8d7a], /* CJK Ideograph */ + [0x8d7b, 0x8d7b], /* CJK Ideograph */ + [0x8d7c, 0x8d7c], /* CJK Ideograph */ + [0x8d7d, 0x8d7d], /* CJK Ideograph */ + [0x8d7e, 0x8d7e], /* CJK Ideograph */ + [0x8d7f, 0x8d7f], /* CJK Ideograph */ + [0x8d80, 0x8d80], /* CJK Ideograph */ + [0x8d81, 0x8d81], /* CJK Ideograph */ + [0x8d82, 0x8d82], /* CJK Ideograph */ + [0x8d83, 0x8d83], /* CJK Ideograph */ + [0x8d84, 0x8d84], /* CJK Ideograph */ + [0x8d85, 0x8d85], /* CJK Ideograph */ + [0x8d86, 0x8d86], /* CJK Ideograph */ + [0x8d87, 0x8d87], /* CJK Ideograph */ + [0x8d88, 0x8d88], /* CJK Ideograph */ + [0x8d89, 0x8d89], /* CJK Ideograph */ + [0x8d8a, 0x8d8a], /* CJK Ideograph */ + [0x8d8b, 0x8d8b], /* CJK Ideograph */ + [0x8d8c, 0x8d8c], /* CJK Ideograph */ + [0x8d8d, 0x8d8d], /* CJK Ideograph */ + [0x8d8e, 0x8d8e], /* CJK Ideograph */ + [0x8d8f, 0x8d8f], /* CJK Ideograph */ + [0x8d90, 0x8d90], /* CJK Ideograph */ + [0x8d91, 0x8d91], /* CJK Ideograph */ + [0x8d92, 0x8d92], /* CJK Ideograph */ + [0x8d93, 0x8d93], /* CJK Ideograph */ + [0x8d94, 0x8d94], /* CJK Ideograph */ + [0x8d95, 0x8d95], /* CJK Ideograph */ + [0x8d96, 0x8d96], /* CJK Ideograph */ + [0x8d97, 0x8d97], /* CJK Ideograph */ + [0x8d98, 0x8d98], /* CJK Ideograph */ + [0x8d99, 0x8d99], /* CJK Ideograph */ + [0x8d9a, 0x8d9a], /* CJK Ideograph */ + [0x8d9b, 0x8d9b], /* CJK Ideograph */ + [0x8d9c, 0x8d9c], /* CJK Ideograph */ + [0x8d9d, 0x8d9d], /* CJK Ideograph */ + [0x8d9e, 0x8d9e], /* CJK Ideograph */ + [0x8d9f, 0x8d9f], /* CJK Ideograph */ + [0x8da0, 0x8da0], /* CJK Ideograph */ + [0x8da1, 0x8da1], /* CJK Ideograph */ + [0x8da2, 0x8da2], /* CJK Ideograph */ + [0x8da3, 0x8da3], /* CJK Ideograph */ + [0x8da4, 0x8da4], /* CJK Ideograph */ + [0x8da5, 0x8da5], /* CJK Ideograph */ + [0x8da6, 0x8da6], /* CJK Ideograph */ + [0x8da7, 0x8da7], /* CJK Ideograph */ + [0x8da8, 0x8da8], /* CJK Ideograph */ + [0x8da9, 0x8da9], /* CJK Ideograph */ + [0x8daa, 0x8daa], /* CJK Ideograph */ + [0x8dab, 0x8dab], /* CJK Ideograph */ + [0x8dac, 0x8dac], /* CJK Ideograph */ + [0x8dad, 0x8dad], /* CJK Ideograph */ + [0x8dae, 0x8dae], /* CJK Ideograph */ + [0x8daf, 0x8daf], /* CJK Ideograph */ + [0x8db0, 0x8db0], /* CJK Ideograph */ + [0x8db1, 0x8db1], /* CJK Ideograph */ + [0x8db2, 0x8db2], /* CJK Ideograph */ + [0x8db3, 0x8db3], /* CJK Ideograph */ + [0x8db4, 0x8db4], /* CJK Ideograph */ + [0x8db5, 0x8db5], /* CJK Ideograph */ + [0x8db6, 0x8db6], /* CJK Ideograph */ + [0x8db7, 0x8db7], /* CJK Ideograph */ + [0x8db8, 0x8db8], /* CJK Ideograph */ + [0x8db9, 0x8db9], /* CJK Ideograph */ + [0x8dba, 0x8dba], /* CJK Ideograph */ + [0x8dbb, 0x8dbb], /* CJK Ideograph */ + [0x8dbc, 0x8dbc], /* CJK Ideograph */ + [0x8dbd, 0x8dbd], /* CJK Ideograph */ + [0x8dbe, 0x8dbe], /* CJK Ideograph */ + [0x8dbf, 0x8dbf], /* CJK Ideograph */ + [0x8dc0, 0x8dc0], /* CJK Ideograph */ + [0x8dc1, 0x8dc1], /* CJK Ideograph */ + [0x8dc2, 0x8dc2], /* CJK Ideograph */ + [0x8dc3, 0x8dc3], /* CJK Ideograph */ + [0x8dc4, 0x8dc4], /* CJK Ideograph */ + [0x8dc5, 0x8dc5], /* CJK Ideograph */ + [0x8dc6, 0x8dc6], /* CJK Ideograph */ + [0x8dc7, 0x8dc7], /* CJK Ideograph */ + [0x8dc8, 0x8dc8], /* CJK Ideograph */ + [0x8dc9, 0x8dc9], /* CJK Ideograph */ + [0x8dca, 0x8dca], /* CJK Ideograph */ + [0x8dcb, 0x8dcb], /* CJK Ideograph */ + [0x8dcc, 0x8dcc], /* CJK Ideograph */ + [0x8dcd, 0x8dcd], /* CJK Ideograph */ + [0x8dce, 0x8dce], /* CJK Ideograph */ + [0x8dcf, 0x8dcf], /* CJK Ideograph */ + [0x8dd0, 0x8dd0], /* CJK Ideograph */ + [0x8dd1, 0x8dd1], /* CJK Ideograph */ + [0x8dd2, 0x8dd2], /* CJK Ideograph */ + [0x8dd3, 0x8dd3], /* CJK Ideograph */ + [0x8dd4, 0x8dd4], /* CJK Ideograph */ + [0x8dd5, 0x8dd5], /* CJK Ideograph */ + [0x8dd6, 0x8dd6], /* CJK Ideograph */ + [0x8dd7, 0x8dd7], /* CJK Ideograph */ + [0x8dd8, 0x8dd8], /* CJK Ideograph */ + [0x8dd9, 0x8dd9], /* CJK Ideograph */ + [0x8dda, 0x8dda], /* CJK Ideograph */ + [0x8ddb, 0x8ddb], /* CJK Ideograph */ + [0x8ddc, 0x8ddc], /* CJK Ideograph */ + [0x8ddd, 0x8ddd], /* CJK Ideograph */ + [0x8dde, 0x8dde], /* CJK Ideograph */ + [0x8ddf, 0x8ddf], /* CJK Ideograph */ + [0x8de0, 0x8de0], /* CJK Ideograph */ + [0x8de1, 0x8de1], /* CJK Ideograph */ + [0x8de2, 0x8de2], /* CJK Ideograph */ + [0x8de3, 0x8de3], /* CJK Ideograph */ + [0x8de4, 0x8de4], /* CJK Ideograph */ + [0x8de5, 0x8de5], /* CJK Ideograph */ + [0x8de6, 0x8de6], /* CJK Ideograph */ + [0x8de7, 0x8de7], /* CJK Ideograph */ + [0x8de8, 0x8de8], /* CJK Ideograph */ + [0x8de9, 0x8de9], /* CJK Ideograph */ + [0x8dea, 0x8dea], /* CJK Ideograph */ + [0x8deb, 0x8deb], /* CJK Ideograph */ + [0x8dec, 0x8dec], /* CJK Ideograph */ + [0x8ded, 0x8ded], /* CJK Ideograph */ + [0x8dee, 0x8dee], /* CJK Ideograph */ + [0x8def, 0x8def], /* CJK Ideograph */ + [0x8df0, 0x8df0], /* CJK Ideograph */ + [0x8df1, 0x8df1], /* CJK Ideograph */ + [0x8df2, 0x8df2], /* CJK Ideograph */ + [0x8df3, 0x8df3], /* CJK Ideograph */ + [0x8df4, 0x8df4], /* CJK Ideograph */ + [0x8df5, 0x8df5], /* CJK Ideograph */ + [0x8df6, 0x8df6], /* CJK Ideograph */ + [0x8df7, 0x8df7], /* CJK Ideograph */ + [0x8df8, 0x8df8], /* CJK Ideograph */ + [0x8df9, 0x8df9], /* CJK Ideograph */ + [0x8dfa, 0x8dfa], /* CJK Ideograph */ + [0x8dfb, 0x8dfb], /* CJK Ideograph */ + [0x8dfc, 0x8dfc], /* CJK Ideograph */ + [0x8dfd, 0x8dfd], /* CJK Ideograph */ + [0x8dfe, 0x8dfe], /* CJK Ideograph */ + [0x8dff, 0x8dff], /* CJK Ideograph */ + [0x8e00, 0x8e00], /* CJK Ideograph */ + [0x8e01, 0x8e01], /* CJK Ideograph */ + [0x8e02, 0x8e02], /* CJK Ideograph */ + [0x8e03, 0x8e03], /* CJK Ideograph */ + [0x8e04, 0x8e04], /* CJK Ideograph */ + [0x8e05, 0x8e05], /* CJK Ideograph */ + [0x8e06, 0x8e06], /* CJK Ideograph */ + [0x8e07, 0x8e07], /* CJK Ideograph */ + [0x8e08, 0x8e08], /* CJK Ideograph */ + [0x8e09, 0x8e09], /* CJK Ideograph */ + [0x8e0a, 0x8e0a], /* CJK Ideograph */ + [0x8e0b, 0x8e0b], /* CJK Ideograph */ + [0x8e0c, 0x8e0c], /* CJK Ideograph */ + [0x8e0d, 0x8e0d], /* CJK Ideograph */ + [0x8e0e, 0x8e0e], /* CJK Ideograph */ + [0x8e0f, 0x8e0f], /* CJK Ideograph */ + [0x8e10, 0x8e10], /* CJK Ideograph */ + [0x8e11, 0x8e11], /* CJK Ideograph */ + [0x8e12, 0x8e12], /* CJK Ideograph */ + [0x8e13, 0x8e13], /* CJK Ideograph */ + [0x8e14, 0x8e14], /* CJK Ideograph */ + [0x8e15, 0x8e15], /* CJK Ideograph */ + [0x8e16, 0x8e16], /* CJK Ideograph */ + [0x8e17, 0x8e17], /* CJK Ideograph */ + [0x8e18, 0x8e18], /* CJK Ideograph */ + [0x8e19, 0x8e19], /* CJK Ideograph */ + [0x8e1a, 0x8e1a], /* CJK Ideograph */ + [0x8e1b, 0x8e1b], /* CJK Ideograph */ + [0x8e1c, 0x8e1c], /* CJK Ideograph */ + [0x8e1d, 0x8e1d], /* CJK Ideograph */ + [0x8e1e, 0x8e1e], /* CJK Ideograph */ + [0x8e1f, 0x8e1f], /* CJK Ideograph */ + [0x8e20, 0x8e20], /* CJK Ideograph */ + [0x8e21, 0x8e21], /* CJK Ideograph */ + [0x8e22, 0x8e22], /* CJK Ideograph */ + [0x8e23, 0x8e23], /* CJK Ideograph */ + [0x8e24, 0x8e24], /* CJK Ideograph */ + [0x8e25, 0x8e25], /* CJK Ideograph */ + [0x8e26, 0x8e26], /* CJK Ideograph */ + [0x8e27, 0x8e27], /* CJK Ideograph */ + [0x8e28, 0x8e28], /* CJK Ideograph */ + [0x8e29, 0x8e29], /* CJK Ideograph */ + [0x8e2a, 0x8e2a], /* CJK Ideograph */ + [0x8e2b, 0x8e2b], /* CJK Ideograph */ + [0x8e2c, 0x8e2c], /* CJK Ideograph */ + [0x8e2d, 0x8e2d], /* CJK Ideograph */ + [0x8e2e, 0x8e2e], /* CJK Ideograph */ + [0x8e2f, 0x8e2f], /* CJK Ideograph */ + [0x8e30, 0x8e30], /* CJK Ideograph */ + [0x8e31, 0x8e31], /* CJK Ideograph */ + [0x8e32, 0x8e32], /* CJK Ideograph */ + [0x8e33, 0x8e33], /* CJK Ideograph */ + [0x8e34, 0x8e34], /* CJK Ideograph */ + [0x8e35, 0x8e35], /* CJK Ideograph */ + [0x8e36, 0x8e36], /* CJK Ideograph */ + [0x8e37, 0x8e37], /* CJK Ideograph */ + [0x8e38, 0x8e38], /* CJK Ideograph */ + [0x8e39, 0x8e39], /* CJK Ideograph */ + [0x8e3a, 0x8e3a], /* CJK Ideograph */ + [0x8e3b, 0x8e3b], /* CJK Ideograph */ + [0x8e3c, 0x8e3c], /* CJK Ideograph */ + [0x8e3d, 0x8e3d], /* CJK Ideograph */ + [0x8e3e, 0x8e3e], /* CJK Ideograph */ + [0x8e3f, 0x8e3f], /* CJK Ideograph */ + [0x8e40, 0x8e40], /* CJK Ideograph */ + [0x8e41, 0x8e41], /* CJK Ideograph */ + [0x8e42, 0x8e42], /* CJK Ideograph */ + [0x8e43, 0x8e43], /* CJK Ideograph */ + [0x8e44, 0x8e44], /* CJK Ideograph */ + [0x8e45, 0x8e45], /* CJK Ideograph */ + [0x8e46, 0x8e46], /* CJK Ideograph */ + [0x8e47, 0x8e47], /* CJK Ideograph */ + [0x8e48, 0x8e48], /* CJK Ideograph */ + [0x8e49, 0x8e49], /* CJK Ideograph */ + [0x8e4a, 0x8e4a], /* CJK Ideograph */ + [0x8e4b, 0x8e4b], /* CJK Ideograph */ + [0x8e4c, 0x8e4c], /* CJK Ideograph */ + [0x8e4d, 0x8e4d], /* CJK Ideograph */ + [0x8e4e, 0x8e4e], /* CJK Ideograph */ + [0x8e4f, 0x8e4f], /* CJK Ideograph */ + [0x8e50, 0x8e50], /* CJK Ideograph */ + [0x8e51, 0x8e51], /* CJK Ideograph */ + [0x8e52, 0x8e52], /* CJK Ideograph */ + [0x8e53, 0x8e53], /* CJK Ideograph */ + [0x8e54, 0x8e54], /* CJK Ideograph */ + [0x8e55, 0x8e55], /* CJK Ideograph */ + [0x8e56, 0x8e56], /* CJK Ideograph */ + [0x8e57, 0x8e57], /* CJK Ideograph */ + [0x8e58, 0x8e58], /* CJK Ideograph */ + [0x8e59, 0x8e59], /* CJK Ideograph */ + [0x8e5a, 0x8e5a], /* CJK Ideograph */ + [0x8e5b, 0x8e5b], /* CJK Ideograph */ + [0x8e5c, 0x8e5c], /* CJK Ideograph */ + [0x8e5d, 0x8e5d], /* CJK Ideograph */ + [0x8e5e, 0x8e5e], /* CJK Ideograph */ + [0x8e5f, 0x8e5f], /* CJK Ideograph */ + [0x8e60, 0x8e60], /* CJK Ideograph */ + [0x8e61, 0x8e61], /* CJK Ideograph */ + [0x8e62, 0x8e62], /* CJK Ideograph */ + [0x8e63, 0x8e63], /* CJK Ideograph */ + [0x8e64, 0x8e64], /* CJK Ideograph */ + [0x8e65, 0x8e65], /* CJK Ideograph */ + [0x8e66, 0x8e66], /* CJK Ideograph */ + [0x8e67, 0x8e67], /* CJK Ideograph */ + [0x8e68, 0x8e68], /* CJK Ideograph */ + [0x8e69, 0x8e69], /* CJK Ideograph */ + [0x8e6a, 0x8e6a], /* CJK Ideograph */ + [0x8e6b, 0x8e6b], /* CJK Ideograph */ + [0x8e6c, 0x8e6c], /* CJK Ideograph */ + [0x8e6d, 0x8e6d], /* CJK Ideograph */ + [0x8e6e, 0x8e6e], /* CJK Ideograph */ + [0x8e6f, 0x8e6f], /* CJK Ideograph */ + [0x8e70, 0x8e70], /* CJK Ideograph */ + [0x8e71, 0x8e71], /* CJK Ideograph */ + [0x8e72, 0x8e72], /* CJK Ideograph */ + [0x8e73, 0x8e73], /* CJK Ideograph */ + [0x8e74, 0x8e74], /* CJK Ideograph */ + [0x8e75, 0x8e75], /* CJK Ideograph */ + [0x8e76, 0x8e76], /* CJK Ideograph */ + [0x8e77, 0x8e77], /* CJK Ideograph */ + [0x8e78, 0x8e78], /* CJK Ideograph */ + [0x8e79, 0x8e79], /* CJK Ideograph */ + [0x8e7a, 0x8e7a], /* CJK Ideograph */ + [0x8e7b, 0x8e7b], /* CJK Ideograph */ + [0x8e7c, 0x8e7c], /* CJK Ideograph */ + [0x8e7d, 0x8e7d], /* CJK Ideograph */ + [0x8e7e, 0x8e7e], /* CJK Ideograph */ + [0x8e7f, 0x8e7f], /* CJK Ideograph */ + [0x8e80, 0x8e80], /* CJK Ideograph */ + [0x8e81, 0x8e81], /* CJK Ideograph */ + [0x8e82, 0x8e82], /* CJK Ideograph */ + [0x8e83, 0x8e83], /* CJK Ideograph */ + [0x8e84, 0x8e84], /* CJK Ideograph */ + [0x8e85, 0x8e85], /* CJK Ideograph */ + [0x8e86, 0x8e86], /* CJK Ideograph */ + [0x8e87, 0x8e87], /* CJK Ideograph */ + [0x8e88, 0x8e88], /* CJK Ideograph */ + [0x8e89, 0x8e89], /* CJK Ideograph */ + [0x8e8a, 0x8e8a], /* CJK Ideograph */ + [0x8e8b, 0x8e8b], /* CJK Ideograph */ + [0x8e8c, 0x8e8c], /* CJK Ideograph */ + [0x8e8d, 0x8e8d], /* CJK Ideograph */ + [0x8e8e, 0x8e8e], /* CJK Ideograph */ + [0x8e8f, 0x8e8f], /* CJK Ideograph */ + [0x8e90, 0x8e90], /* CJK Ideograph */ + [0x8e91, 0x8e91], /* CJK Ideograph */ + [0x8e92, 0x8e92], /* CJK Ideograph */ + [0x8e93, 0x8e93], /* CJK Ideograph */ + [0x8e94, 0x8e94], /* CJK Ideograph */ + [0x8e95, 0x8e95], /* CJK Ideograph */ + [0x8e96, 0x8e96], /* CJK Ideograph */ + [0x8e97, 0x8e97], /* CJK Ideograph */ + [0x8e98, 0x8e98], /* CJK Ideograph */ + [0x8e99, 0x8e99], /* CJK Ideograph */ + [0x8e9a, 0x8e9a], /* CJK Ideograph */ + [0x8e9b, 0x8e9b], /* CJK Ideograph */ + [0x8e9c, 0x8e9c], /* CJK Ideograph */ + [0x8e9d, 0x8e9d], /* CJK Ideograph */ + [0x8e9e, 0x8e9e], /* CJK Ideograph */ + [0x8e9f, 0x8e9f], /* CJK Ideograph */ + [0x8ea0, 0x8ea0], /* CJK Ideograph */ + [0x8ea1, 0x8ea1], /* CJK Ideograph */ + [0x8ea2, 0x8ea2], /* CJK Ideograph */ + [0x8ea3, 0x8ea3], /* CJK Ideograph */ + [0x8ea4, 0x8ea4], /* CJK Ideograph */ + [0x8ea5, 0x8ea5], /* CJK Ideograph */ + [0x8ea6, 0x8ea6], /* CJK Ideograph */ + [0x8ea7, 0x8ea7], /* CJK Ideograph */ + [0x8ea8, 0x8ea8], /* CJK Ideograph */ + [0x8ea9, 0x8ea9], /* CJK Ideograph */ + [0x8eaa, 0x8eaa], /* CJK Ideograph */ + [0x8eab, 0x8eab], /* CJK Ideograph */ + [0x8eac, 0x8eac], /* CJK Ideograph */ + [0x8ead, 0x8ead], /* CJK Ideograph */ + [0x8eae, 0x8eae], /* CJK Ideograph */ + [0x8eaf, 0x8eaf], /* CJK Ideograph */ + [0x8eb0, 0x8eb0], /* CJK Ideograph */ + [0x8eb1, 0x8eb1], /* CJK Ideograph */ + [0x8eb2, 0x8eb2], /* CJK Ideograph */ + [0x8eb3, 0x8eb3], /* CJK Ideograph */ + [0x8eb4, 0x8eb4], /* CJK Ideograph */ + [0x8eb5, 0x8eb5], /* CJK Ideograph */ + [0x8eb6, 0x8eb6], /* CJK Ideograph */ + [0x8eb7, 0x8eb7], /* CJK Ideograph */ + [0x8eb8, 0x8eb8], /* CJK Ideograph */ + [0x8eb9, 0x8eb9], /* CJK Ideograph */ + [0x8eba, 0x8eba], /* CJK Ideograph */ + [0x8ebb, 0x8ebb], /* CJK Ideograph */ + [0x8ebc, 0x8ebc], /* CJK Ideograph */ + [0x8ebd, 0x8ebd], /* CJK Ideograph */ + [0x8ebe, 0x8ebe], /* CJK Ideograph */ + [0x8ebf, 0x8ebf], /* CJK Ideograph */ + [0x8ec0, 0x8ec0], /* CJK Ideograph */ + [0x8ec1, 0x8ec1], /* CJK Ideograph */ + [0x8ec2, 0x8ec2], /* CJK Ideograph */ + [0x8ec3, 0x8ec3], /* CJK Ideograph */ + [0x8ec4, 0x8ec4], /* CJK Ideograph */ + [0x8ec5, 0x8ec5], /* CJK Ideograph */ + [0x8ec6, 0x8ec6], /* CJK Ideograph */ + [0x8ec7, 0x8ec7], /* CJK Ideograph */ + [0x8ec8, 0x8ec8], /* CJK Ideograph */ + [0x8ec9, 0x8ec9], /* CJK Ideograph */ + [0x8eca, 0x8eca], /* CJK Ideograph */ + [0x8ecb, 0x8ecb], /* CJK Ideograph */ + [0x8ecc, 0x8ecc], /* CJK Ideograph */ + [0x8ecd, 0x8ecd], /* CJK Ideograph */ + [0x8ece, 0x8ece], /* CJK Ideograph */ + [0x8ecf, 0x8ecf], /* CJK Ideograph */ + [0x8ed0, 0x8ed0], /* CJK Ideograph */ + [0x8ed1, 0x8ed1], /* CJK Ideograph */ + [0x8ed2, 0x8ed2], /* CJK Ideograph */ + [0x8ed3, 0x8ed3], /* CJK Ideograph */ + [0x8ed4, 0x8ed4], /* CJK Ideograph */ + [0x8ed5, 0x8ed5], /* CJK Ideograph */ + [0x8ed6, 0x8ed6], /* CJK Ideograph */ + [0x8ed7, 0x8ed7], /* CJK Ideograph */ + [0x8ed8, 0x8ed8], /* CJK Ideograph */ + [0x8ed9, 0x8ed9], /* CJK Ideograph */ + [0x8eda, 0x8eda], /* CJK Ideograph */ + [0x8edb, 0x8edb], /* CJK Ideograph */ + [0x8edc, 0x8edc], /* CJK Ideograph */ + [0x8edd, 0x8edd], /* CJK Ideograph */ + [0x8ede, 0x8ede], /* CJK Ideograph */ + [0x8edf, 0x8edf], /* CJK Ideograph */ + [0x8ee0, 0x8ee0], /* CJK Ideograph */ + [0x8ee1, 0x8ee1], /* CJK Ideograph */ + [0x8ee2, 0x8ee2], /* CJK Ideograph */ + [0x8ee3, 0x8ee3], /* CJK Ideograph */ + [0x8ee4, 0x8ee4], /* CJK Ideograph */ + [0x8ee5, 0x8ee5], /* CJK Ideograph */ + [0x8ee6, 0x8ee6], /* CJK Ideograph */ + [0x8ee7, 0x8ee7], /* CJK Ideograph */ + [0x8ee8, 0x8ee8], /* CJK Ideograph */ + [0x8ee9, 0x8ee9], /* CJK Ideograph */ + [0x8eea, 0x8eea], /* CJK Ideograph */ + [0x8eeb, 0x8eeb], /* CJK Ideograph */ + [0x8eec, 0x8eec], /* CJK Ideograph */ + [0x8eed, 0x8eed], /* CJK Ideograph */ + [0x8eee, 0x8eee], /* CJK Ideograph */ + [0x8eef, 0x8eef], /* CJK Ideograph */ + [0x8ef0, 0x8ef0], /* CJK Ideograph */ + [0x8ef1, 0x8ef1], /* CJK Ideograph */ + [0x8ef2, 0x8ef2], /* CJK Ideograph */ + [0x8ef3, 0x8ef3], /* CJK Ideograph */ + [0x8ef4, 0x8ef4], /* CJK Ideograph */ + [0x8ef5, 0x8ef5], /* CJK Ideograph */ + [0x8ef6, 0x8ef6], /* CJK Ideograph */ + [0x8ef7, 0x8ef7], /* CJK Ideograph */ + [0x8ef8, 0x8ef8], /* CJK Ideograph */ + [0x8ef9, 0x8ef9], /* CJK Ideograph */ + [0x8efa, 0x8efa], /* CJK Ideograph */ + [0x8efb, 0x8efb], /* CJK Ideograph */ + [0x8efc, 0x8efc], /* CJK Ideograph */ + [0x8efd, 0x8efd], /* CJK Ideograph */ + [0x8efe, 0x8efe], /* CJK Ideograph */ + [0x8eff, 0x8eff], /* CJK Ideograph */ + [0x8f00, 0x8f00], /* CJK Ideograph */ + [0x8f01, 0x8f01], /* CJK Ideograph */ + [0x8f02, 0x8f02], /* CJK Ideograph */ + [0x8f03, 0x8f03], /* CJK Ideograph */ + [0x8f04, 0x8f04], /* CJK Ideograph */ + [0x8f05, 0x8f05], /* CJK Ideograph */ + [0x8f06, 0x8f06], /* CJK Ideograph */ + [0x8f07, 0x8f07], /* CJK Ideograph */ + [0x8f08, 0x8f08], /* CJK Ideograph */ + [0x8f09, 0x8f09], /* CJK Ideograph */ + [0x8f0a, 0x8f0a], /* CJK Ideograph */ + [0x8f0b, 0x8f0b], /* CJK Ideograph */ + [0x8f0c, 0x8f0c], /* CJK Ideograph */ + [0x8f0d, 0x8f0d], /* CJK Ideograph */ + [0x8f0e, 0x8f0e], /* CJK Ideograph */ + [0x8f0f, 0x8f0f], /* CJK Ideograph */ + [0x8f10, 0x8f10], /* CJK Ideograph */ + [0x8f11, 0x8f11], /* CJK Ideograph */ + [0x8f12, 0x8f12], /* CJK Ideograph */ + [0x8f13, 0x8f13], /* CJK Ideograph */ + [0x8f14, 0x8f14], /* CJK Ideograph */ + [0x8f15, 0x8f15], /* CJK Ideograph */ + [0x8f16, 0x8f16], /* CJK Ideograph */ + [0x8f17, 0x8f17], /* CJK Ideograph */ + [0x8f18, 0x8f18], /* CJK Ideograph */ + [0x8f19, 0x8f19], /* CJK Ideograph */ + [0x8f1a, 0x8f1a], /* CJK Ideograph */ + [0x8f1b, 0x8f1b], /* CJK Ideograph */ + [0x8f1c, 0x8f1c], /* CJK Ideograph */ + [0x8f1d, 0x8f1d], /* CJK Ideograph */ + [0x8f1e, 0x8f1e], /* CJK Ideograph */ + [0x8f1f, 0x8f1f], /* CJK Ideograph */ + [0x8f20, 0x8f20], /* CJK Ideograph */ + [0x8f21, 0x8f21], /* CJK Ideograph */ + [0x8f22, 0x8f22], /* CJK Ideograph */ + [0x8f23, 0x8f23], /* CJK Ideograph */ + [0x8f24, 0x8f24], /* CJK Ideograph */ + [0x8f25, 0x8f25], /* CJK Ideograph */ + [0x8f26, 0x8f26], /* CJK Ideograph */ + [0x8f27, 0x8f27], /* CJK Ideograph */ + [0x8f28, 0x8f28], /* CJK Ideograph */ + [0x8f29, 0x8f29], /* CJK Ideograph */ + [0x8f2a, 0x8f2a], /* CJK Ideograph */ + [0x8f2b, 0x8f2b], /* CJK Ideograph */ + [0x8f2c, 0x8f2c], /* CJK Ideograph */ + [0x8f2d, 0x8f2d], /* CJK Ideograph */ + [0x8f2e, 0x8f2e], /* CJK Ideograph */ + [0x8f2f, 0x8f2f], /* CJK Ideograph */ + [0x8f30, 0x8f30], /* CJK Ideograph */ + [0x8f31, 0x8f31], /* CJK Ideograph */ + [0x8f32, 0x8f32], /* CJK Ideograph */ + [0x8f33, 0x8f33], /* CJK Ideograph */ + [0x8f34, 0x8f34], /* CJK Ideograph */ + [0x8f35, 0x8f35], /* CJK Ideograph */ + [0x8f36, 0x8f36], /* CJK Ideograph */ + [0x8f37, 0x8f37], /* CJK Ideograph */ + [0x8f38, 0x8f38], /* CJK Ideograph */ + [0x8f39, 0x8f39], /* CJK Ideograph */ + [0x8f3a, 0x8f3a], /* CJK Ideograph */ + [0x8f3b, 0x8f3b], /* CJK Ideograph */ + [0x8f3c, 0x8f3c], /* CJK Ideograph */ + [0x8f3d, 0x8f3d], /* CJK Ideograph */ + [0x8f3e, 0x8f3e], /* CJK Ideograph */ + [0x8f3f, 0x8f3f], /* CJK Ideograph */ + [0x8f40, 0x8f40], /* CJK Ideograph */ + [0x8f41, 0x8f41], /* CJK Ideograph */ + [0x8f42, 0x8f42], /* CJK Ideograph */ + [0x8f43, 0x8f43], /* CJK Ideograph */ + [0x8f44, 0x8f44], /* CJK Ideograph */ + [0x8f45, 0x8f45], /* CJK Ideograph */ + [0x8f46, 0x8f46], /* CJK Ideograph */ + [0x8f47, 0x8f47], /* CJK Ideograph */ + [0x8f48, 0x8f48], /* CJK Ideograph */ + [0x8f49, 0x8f49], /* CJK Ideograph */ + [0x8f4a, 0x8f4a], /* CJK Ideograph */ + [0x8f4b, 0x8f4b], /* CJK Ideograph */ + [0x8f4c, 0x8f4c], /* CJK Ideograph */ + [0x8f4d, 0x8f4d], /* CJK Ideograph */ + [0x8f4e, 0x8f4e], /* CJK Ideograph */ + [0x8f4f, 0x8f4f], /* CJK Ideograph */ + [0x8f50, 0x8f50], /* CJK Ideograph */ + [0x8f51, 0x8f51], /* CJK Ideograph */ + [0x8f52, 0x8f52], /* CJK Ideograph */ + [0x8f53, 0x8f53], /* CJK Ideograph */ + [0x8f54, 0x8f54], /* CJK Ideograph */ + [0x8f55, 0x8f55], /* CJK Ideograph */ + [0x8f56, 0x8f56], /* CJK Ideograph */ + [0x8f57, 0x8f57], /* CJK Ideograph */ + [0x8f58, 0x8f58], /* CJK Ideograph */ + [0x8f59, 0x8f59], /* CJK Ideograph */ + [0x8f5a, 0x8f5a], /* CJK Ideograph */ + [0x8f5b, 0x8f5b], /* CJK Ideograph */ + [0x8f5c, 0x8f5c], /* CJK Ideograph */ + [0x8f5d, 0x8f5d], /* CJK Ideograph */ + [0x8f5e, 0x8f5e], /* CJK Ideograph */ + [0x8f5f, 0x8f5f], /* CJK Ideograph */ + [0x8f60, 0x8f60], /* CJK Ideograph */ + [0x8f61, 0x8f61], /* CJK Ideograph */ + [0x8f62, 0x8f62], /* CJK Ideograph */ + [0x8f63, 0x8f63], /* CJK Ideograph */ + [0x8f64, 0x8f64], /* CJK Ideograph */ + [0x8f65, 0x8f65], /* CJK Ideograph */ + [0x8f66, 0x8f66], /* CJK Ideograph */ + [0x8f67, 0x8f67], /* CJK Ideograph */ + [0x8f68, 0x8f68], /* CJK Ideograph */ + [0x8f69, 0x8f69], /* CJK Ideograph */ + [0x8f6a, 0x8f6a], /* CJK Ideograph */ + [0x8f6b, 0x8f6b], /* CJK Ideograph */ + [0x8f6c, 0x8f6c], /* CJK Ideograph */ + [0x8f6d, 0x8f6d], /* CJK Ideograph */ + [0x8f6e, 0x8f6e], /* CJK Ideograph */ + [0x8f6f, 0x8f6f], /* CJK Ideograph */ + [0x8f70, 0x8f70], /* CJK Ideograph */ + [0x8f71, 0x8f71], /* CJK Ideograph */ + [0x8f72, 0x8f72], /* CJK Ideograph */ + [0x8f73, 0x8f73], /* CJK Ideograph */ + [0x8f74, 0x8f74], /* CJK Ideograph */ + [0x8f75, 0x8f75], /* CJK Ideograph */ + [0x8f76, 0x8f76], /* CJK Ideograph */ + [0x8f77, 0x8f77], /* CJK Ideograph */ + [0x8f78, 0x8f78], /* CJK Ideograph */ + [0x8f79, 0x8f79], /* CJK Ideograph */ + [0x8f7a, 0x8f7a], /* CJK Ideograph */ + [0x8f7b, 0x8f7b], /* CJK Ideograph */ + [0x8f7c, 0x8f7c], /* CJK Ideograph */ + [0x8f7d, 0x8f7d], /* CJK Ideograph */ + [0x8f7e, 0x8f7e], /* CJK Ideograph */ + [0x8f7f, 0x8f7f], /* CJK Ideograph */ + [0x8f80, 0x8f80], /* CJK Ideograph */ + [0x8f81, 0x8f81], /* CJK Ideograph */ + [0x8f82, 0x8f82], /* CJK Ideograph */ + [0x8f83, 0x8f83], /* CJK Ideograph */ + [0x8f84, 0x8f84], /* CJK Ideograph */ + [0x8f85, 0x8f85], /* CJK Ideograph */ + [0x8f86, 0x8f86], /* CJK Ideograph */ + [0x8f87, 0x8f87], /* CJK Ideograph */ + [0x8f88, 0x8f88], /* CJK Ideograph */ + [0x8f89, 0x8f89], /* CJK Ideograph */ + [0x8f8a, 0x8f8a], /* CJK Ideograph */ + [0x8f8b, 0x8f8b], /* CJK Ideograph */ + [0x8f8c, 0x8f8c], /* CJK Ideograph */ + [0x8f8d, 0x8f8d], /* CJK Ideograph */ + [0x8f8e, 0x8f8e], /* CJK Ideograph */ + [0x8f8f, 0x8f8f], /* CJK Ideograph */ + [0x8f90, 0x8f90], /* CJK Ideograph */ + [0x8f91, 0x8f91], /* CJK Ideograph */ + [0x8f92, 0x8f92], /* CJK Ideograph */ + [0x8f93, 0x8f93], /* CJK Ideograph */ + [0x8f94, 0x8f94], /* CJK Ideograph */ + [0x8f95, 0x8f95], /* CJK Ideograph */ + [0x8f96, 0x8f96], /* CJK Ideograph */ + [0x8f97, 0x8f97], /* CJK Ideograph */ + [0x8f98, 0x8f98], /* CJK Ideograph */ + [0x8f99, 0x8f99], /* CJK Ideograph */ + [0x8f9a, 0x8f9a], /* CJK Ideograph */ + [0x8f9b, 0x8f9b], /* CJK Ideograph */ + [0x8f9c, 0x8f9c], /* CJK Ideograph */ + [0x8f9d, 0x8f9d], /* CJK Ideograph */ + [0x8f9e, 0x8f9e], /* CJK Ideograph */ + [0x8f9f, 0x8f9f], /* CJK Ideograph */ + [0x8fa0, 0x8fa0], /* CJK Ideograph */ + [0x8fa1, 0x8fa1], /* CJK Ideograph */ + [0x8fa2, 0x8fa2], /* CJK Ideograph */ + [0x8fa3, 0x8fa3], /* CJK Ideograph */ + [0x8fa4, 0x8fa4], /* CJK Ideograph */ + [0x8fa5, 0x8fa5], /* CJK Ideograph */ + [0x8fa6, 0x8fa6], /* CJK Ideograph */ + [0x8fa7, 0x8fa7], /* CJK Ideograph */ + [0x8fa8, 0x8fa8], /* CJK Ideograph */ + [0x8fa9, 0x8fa9], /* CJK Ideograph */ + [0x8faa, 0x8faa], /* CJK Ideograph */ + [0x8fab, 0x8fab], /* CJK Ideograph */ + [0x8fac, 0x8fac], /* CJK Ideograph */ + [0x8fad, 0x8fad], /* CJK Ideograph */ + [0x8fae, 0x8fae], /* CJK Ideograph */ + [0x8faf, 0x8faf], /* CJK Ideograph */ + [0x8fb0, 0x8fb0], /* CJK Ideograph */ + [0x8fb1, 0x8fb1], /* CJK Ideograph */ + [0x8fb2, 0x8fb2], /* CJK Ideograph */ + [0x8fb3, 0x8fb3], /* CJK Ideograph */ + [0x8fb4, 0x8fb4], /* CJK Ideograph */ + [0x8fb5, 0x8fb5], /* CJK Ideograph */ + [0x8fb6, 0x8fb6], /* CJK Ideograph */ + [0x8fb7, 0x8fb7], /* CJK Ideograph */ + [0x8fb8, 0x8fb8], /* CJK Ideograph */ + [0x8fb9, 0x8fb9], /* CJK Ideograph */ + [0x8fba, 0x8fba], /* CJK Ideograph */ + [0x8fbb, 0x8fbb], /* CJK Ideograph */ + [0x8fbc, 0x8fbc], /* CJK Ideograph */ + [0x8fbd, 0x8fbd], /* CJK Ideograph */ + [0x8fbe, 0x8fbe], /* CJK Ideograph */ + [0x8fbf, 0x8fbf], /* CJK Ideograph */ + [0x8fc0, 0x8fc0], /* CJK Ideograph */ + [0x8fc1, 0x8fc1], /* CJK Ideograph */ + [0x8fc2, 0x8fc2], /* CJK Ideograph */ + [0x8fc3, 0x8fc3], /* CJK Ideograph */ + [0x8fc4, 0x8fc4], /* CJK Ideograph */ + [0x8fc5, 0x8fc5], /* CJK Ideograph */ + [0x8fc6, 0x8fc6], /* CJK Ideograph */ + [0x8fc7, 0x8fc7], /* CJK Ideograph */ + [0x8fc8, 0x8fc8], /* CJK Ideograph */ + [0x8fc9, 0x8fc9], /* CJK Ideograph */ + [0x8fca, 0x8fca], /* CJK Ideograph */ + [0x8fcb, 0x8fcb], /* CJK Ideograph */ + [0x8fcc, 0x8fcc], /* CJK Ideograph */ + [0x8fcd, 0x8fcd], /* CJK Ideograph */ + [0x8fce, 0x8fce], /* CJK Ideograph */ + [0x8fcf, 0x8fcf], /* CJK Ideograph */ + [0x8fd0, 0x8fd0], /* CJK Ideograph */ + [0x8fd1, 0x8fd1], /* CJK Ideograph */ + [0x8fd2, 0x8fd2], /* CJK Ideograph */ + [0x8fd3, 0x8fd3], /* CJK Ideograph */ + [0x8fd4, 0x8fd4], /* CJK Ideograph */ + [0x8fd5, 0x8fd5], /* CJK Ideograph */ + [0x8fd6, 0x8fd6], /* CJK Ideograph */ + [0x8fd7, 0x8fd7], /* CJK Ideograph */ + [0x8fd8, 0x8fd8], /* CJK Ideograph */ + [0x8fd9, 0x8fd9], /* CJK Ideograph */ + [0x8fda, 0x8fda], /* CJK Ideograph */ + [0x8fdb, 0x8fdb], /* CJK Ideograph */ + [0x8fdc, 0x8fdc], /* CJK Ideograph */ + [0x8fdd, 0x8fdd], /* CJK Ideograph */ + [0x8fde, 0x8fde], /* CJK Ideograph */ + [0x8fdf, 0x8fdf], /* CJK Ideograph */ + [0x8fe0, 0x8fe0], /* CJK Ideograph */ + [0x8fe1, 0x8fe1], /* CJK Ideograph */ + [0x8fe2, 0x8fe2], /* CJK Ideograph */ + [0x8fe3, 0x8fe3], /* CJK Ideograph */ + [0x8fe4, 0x8fe4], /* CJK Ideograph */ + [0x8fe5, 0x8fe5], /* CJK Ideograph */ + [0x8fe6, 0x8fe6], /* CJK Ideograph */ + [0x8fe7, 0x8fe7], /* CJK Ideograph */ + [0x8fe8, 0x8fe8], /* CJK Ideograph */ + [0x8fe9, 0x8fe9], /* CJK Ideograph */ + [0x8fea, 0x8fea], /* CJK Ideograph */ + [0x8feb, 0x8feb], /* CJK Ideograph */ + [0x8fec, 0x8fec], /* CJK Ideograph */ + [0x8fed, 0x8fed], /* CJK Ideograph */ + [0x8fee, 0x8fee], /* CJK Ideograph */ + [0x8fef, 0x8fef], /* CJK Ideograph */ + [0x8ff0, 0x8ff0], /* CJK Ideograph */ + [0x8ff1, 0x8ff1], /* CJK Ideograph */ + [0x8ff2, 0x8ff2], /* CJK Ideograph */ + [0x8ff3, 0x8ff3], /* CJK Ideograph */ + [0x8ff4, 0x8ff4], /* CJK Ideograph */ + [0x8ff5, 0x8ff5], /* CJK Ideograph */ + [0x8ff6, 0x8ff6], /* CJK Ideograph */ + [0x8ff7, 0x8ff7], /* CJK Ideograph */ + [0x8ff8, 0x8ff8], /* CJK Ideograph */ + [0x8ff9, 0x8ff9], /* CJK Ideograph */ + [0x8ffa, 0x8ffa], /* CJK Ideograph */ + [0x8ffb, 0x8ffb], /* CJK Ideograph */ + [0x8ffc, 0x8ffc], /* CJK Ideograph */ + [0x8ffd, 0x8ffd], /* CJK Ideograph */ + [0x8ffe, 0x8ffe], /* CJK Ideograph */ + [0x8fff, 0x8fff], /* CJK Ideograph */ + [0x9000, 0x9000], /* CJK Ideograph */ + [0x9001, 0x9001], /* CJK Ideograph */ + [0x9002, 0x9002], /* CJK Ideograph */ + [0x9003, 0x9003], /* CJK Ideograph */ + [0x9004, 0x9004], /* CJK Ideograph */ + [0x9005, 0x9005], /* CJK Ideograph */ + [0x9006, 0x9006], /* CJK Ideograph */ + [0x9007, 0x9007], /* CJK Ideograph */ + [0x9008, 0x9008], /* CJK Ideograph */ + [0x9009, 0x9009], /* CJK Ideograph */ + [0x900a, 0x900a], /* CJK Ideograph */ + [0x900b, 0x900b], /* CJK Ideograph */ + [0x900c, 0x900c], /* CJK Ideograph */ + [0x900d, 0x900d], /* CJK Ideograph */ + [0x900e, 0x900e], /* CJK Ideograph */ + [0x900f, 0x900f], /* CJK Ideograph */ + [0x9010, 0x9010], /* CJK Ideograph */ + [0x9011, 0x9011], /* CJK Ideograph */ + [0x9012, 0x9012], /* CJK Ideograph */ + [0x9013, 0x9013], /* CJK Ideograph */ + [0x9014, 0x9014], /* CJK Ideograph */ + [0x9015, 0x9015], /* CJK Ideograph */ + [0x9016, 0x9016], /* CJK Ideograph */ + [0x9017, 0x9017], /* CJK Ideograph */ + [0x9018, 0x9018], /* CJK Ideograph */ + [0x9019, 0x9019], /* CJK Ideograph */ + [0x901a, 0x901a], /* CJK Ideograph */ + [0x901b, 0x901b], /* CJK Ideograph */ + [0x901c, 0x901c], /* CJK Ideograph */ + [0x901d, 0x901d], /* CJK Ideograph */ + [0x901e, 0x901e], /* CJK Ideograph */ + [0x901f, 0x901f], /* CJK Ideograph */ + [0x9020, 0x9020], /* CJK Ideograph */ + [0x9021, 0x9021], /* CJK Ideograph */ + [0x9022, 0x9022], /* CJK Ideograph */ + [0x9023, 0x9023], /* CJK Ideograph */ + [0x9024, 0x9024], /* CJK Ideograph */ + [0x9025, 0x9025], /* CJK Ideograph */ + [0x9026, 0x9026], /* CJK Ideograph */ + [0x9027, 0x9027], /* CJK Ideograph */ + [0x9028, 0x9028], /* CJK Ideograph */ + [0x9029, 0x9029], /* CJK Ideograph */ + [0x902a, 0x902a], /* CJK Ideograph */ + [0x902b, 0x902b], /* CJK Ideograph */ + [0x902c, 0x902c], /* CJK Ideograph */ + [0x902d, 0x902d], /* CJK Ideograph */ + [0x902e, 0x902e], /* CJK Ideograph */ + [0x902f, 0x902f], /* CJK Ideograph */ + [0x9030, 0x9030], /* CJK Ideograph */ + [0x9031, 0x9031], /* CJK Ideograph */ + [0x9032, 0x9032], /* CJK Ideograph */ + [0x9033, 0x9033], /* CJK Ideograph */ + [0x9034, 0x9034], /* CJK Ideograph */ + [0x9035, 0x9035], /* CJK Ideograph */ + [0x9036, 0x9036], /* CJK Ideograph */ + [0x9037, 0x9037], /* CJK Ideograph */ + [0x9038, 0x9038], /* CJK Ideograph */ + [0x9039, 0x9039], /* CJK Ideograph */ + [0x903a, 0x903a], /* CJK Ideograph */ + [0x903b, 0x903b], /* CJK Ideograph */ + [0x903c, 0x903c], /* CJK Ideograph */ + [0x903d, 0x903d], /* CJK Ideograph */ + [0x903e, 0x903e], /* CJK Ideograph */ + [0x903f, 0x903f], /* CJK Ideograph */ + [0x9040, 0x9040], /* CJK Ideograph */ + [0x9041, 0x9041], /* CJK Ideograph */ + [0x9042, 0x9042], /* CJK Ideograph */ + [0x9043, 0x9043], /* CJK Ideograph */ + [0x9044, 0x9044], /* CJK Ideograph */ + [0x9045, 0x9045], /* CJK Ideograph */ + [0x9046, 0x9046], /* CJK Ideograph */ + [0x9047, 0x9047], /* CJK Ideograph */ + [0x9048, 0x9048], /* CJK Ideograph */ + [0x9049, 0x9049], /* CJK Ideograph */ + [0x904a, 0x904a], /* CJK Ideograph */ + [0x904b, 0x904b], /* CJK Ideograph */ + [0x904c, 0x904c], /* CJK Ideograph */ + [0x904d, 0x904d], /* CJK Ideograph */ + [0x904e, 0x904e], /* CJK Ideograph */ + [0x904f, 0x904f], /* CJK Ideograph */ + [0x9050, 0x9050], /* CJK Ideograph */ + [0x9051, 0x9051], /* CJK Ideograph */ + [0x9052, 0x9052], /* CJK Ideograph */ + [0x9053, 0x9053], /* CJK Ideograph */ + [0x9054, 0x9054], /* CJK Ideograph */ + [0x9055, 0x9055], /* CJK Ideograph */ + [0x9056, 0x9056], /* CJK Ideograph */ + [0x9057, 0x9057], /* CJK Ideograph */ + [0x9058, 0x9058], /* CJK Ideograph */ + [0x9059, 0x9059], /* CJK Ideograph */ + [0x905a, 0x905a], /* CJK Ideograph */ + [0x905b, 0x905b], /* CJK Ideograph */ + [0x905c, 0x905c], /* CJK Ideograph */ + [0x905d, 0x905d], /* CJK Ideograph */ + [0x905e, 0x905e], /* CJK Ideograph */ + [0x905f, 0x905f], /* CJK Ideograph */ + [0x9060, 0x9060], /* CJK Ideograph */ + [0x9061, 0x9061], /* CJK Ideograph */ + [0x9062, 0x9062], /* CJK Ideograph */ + [0x9063, 0x9063], /* CJK Ideograph */ + [0x9064, 0x9064], /* CJK Ideograph */ + [0x9065, 0x9065], /* CJK Ideograph */ + [0x9066, 0x9066], /* CJK Ideograph */ + [0x9067, 0x9067], /* CJK Ideograph */ + [0x9068, 0x9068], /* CJK Ideograph */ + [0x9069, 0x9069], /* CJK Ideograph */ + [0x906a, 0x906a], /* CJK Ideograph */ + [0x906b, 0x906b], /* CJK Ideograph */ + [0x906c, 0x906c], /* CJK Ideograph */ + [0x906d, 0x906d], /* CJK Ideograph */ + [0x906e, 0x906e], /* CJK Ideograph */ + [0x906f, 0x906f], /* CJK Ideograph */ + [0x9070, 0x9070], /* CJK Ideograph */ + [0x9071, 0x9071], /* CJK Ideograph */ + [0x9072, 0x9072], /* CJK Ideograph */ + [0x9073, 0x9073], /* CJK Ideograph */ + [0x9074, 0x9074], /* CJK Ideograph */ + [0x9075, 0x9075], /* CJK Ideograph */ + [0x9076, 0x9076], /* CJK Ideograph */ + [0x9077, 0x9077], /* CJK Ideograph */ + [0x9078, 0x9078], /* CJK Ideograph */ + [0x9079, 0x9079], /* CJK Ideograph */ + [0x907a, 0x907a], /* CJK Ideograph */ + [0x907b, 0x907b], /* CJK Ideograph */ + [0x907c, 0x907c], /* CJK Ideograph */ + [0x907d, 0x907d], /* CJK Ideograph */ + [0x907e, 0x907e], /* CJK Ideograph */ + [0x907f, 0x907f], /* CJK Ideograph */ + [0x9080, 0x9080], /* CJK Ideograph */ + [0x9081, 0x9081], /* CJK Ideograph */ + [0x9082, 0x9082], /* CJK Ideograph */ + [0x9083, 0x9083], /* CJK Ideograph */ + [0x9084, 0x9084], /* CJK Ideograph */ + [0x9085, 0x9085], /* CJK Ideograph */ + [0x9086, 0x9086], /* CJK Ideograph */ + [0x9087, 0x9087], /* CJK Ideograph */ + [0x9088, 0x9088], /* CJK Ideograph */ + [0x9089, 0x9089], /* CJK Ideograph */ + [0x908a, 0x908a], /* CJK Ideograph */ + [0x908b, 0x908b], /* CJK Ideograph */ + [0x908c, 0x908c], /* CJK Ideograph */ + [0x908d, 0x908d], /* CJK Ideograph */ + [0x908e, 0x908e], /* CJK Ideograph */ + [0x908f, 0x908f], /* CJK Ideograph */ + [0x9090, 0x9090], /* CJK Ideograph */ + [0x9091, 0x9091], /* CJK Ideograph */ + [0x9092, 0x9092], /* CJK Ideograph */ + [0x9093, 0x9093], /* CJK Ideograph */ + [0x9094, 0x9094], /* CJK Ideograph */ + [0x9095, 0x9095], /* CJK Ideograph */ + [0x9096, 0x9096], /* CJK Ideograph */ + [0x9097, 0x9097], /* CJK Ideograph */ + [0x9098, 0x9098], /* CJK Ideograph */ + [0x9099, 0x9099], /* CJK Ideograph */ + [0x909a, 0x909a], /* CJK Ideograph */ + [0x909b, 0x909b], /* CJK Ideograph */ + [0x909c, 0x909c], /* CJK Ideograph */ + [0x909d, 0x909d], /* CJK Ideograph */ + [0x909e, 0x909e], /* CJK Ideograph */ + [0x909f, 0x909f], /* CJK Ideograph */ + [0x90a0, 0x90a0], /* CJK Ideograph */ + [0x90a1, 0x90a1], /* CJK Ideograph */ + [0x90a2, 0x90a2], /* CJK Ideograph */ + [0x90a3, 0x90a3], /* CJK Ideograph */ + [0x90a4, 0x90a4], /* CJK Ideograph */ + [0x90a5, 0x90a5], /* CJK Ideograph */ + [0x90a6, 0x90a6], /* CJK Ideograph */ + [0x90a7, 0x90a7], /* CJK Ideograph */ + [0x90a8, 0x90a8], /* CJK Ideograph */ + [0x90a9, 0x90a9], /* CJK Ideograph */ + [0x90aa, 0x90aa], /* CJK Ideograph */ + [0x90ab, 0x90ab], /* CJK Ideograph */ + [0x90ac, 0x90ac], /* CJK Ideograph */ + [0x90ad, 0x90ad], /* CJK Ideograph */ + [0x90ae, 0x90ae], /* CJK Ideograph */ + [0x90af, 0x90af], /* CJK Ideograph */ + [0x90b0, 0x90b0], /* CJK Ideograph */ + [0x90b1, 0x90b1], /* CJK Ideograph */ + [0x90b2, 0x90b2], /* CJK Ideograph */ + [0x90b3, 0x90b3], /* CJK Ideograph */ + [0x90b4, 0x90b4], /* CJK Ideograph */ + [0x90b5, 0x90b5], /* CJK Ideograph */ + [0x90b6, 0x90b6], /* CJK Ideograph */ + [0x90b7, 0x90b7], /* CJK Ideograph */ + [0x90b8, 0x90b8], /* CJK Ideograph */ + [0x90b9, 0x90b9], /* CJK Ideograph */ + [0x90ba, 0x90ba], /* CJK Ideograph */ + [0x90bb, 0x90bb], /* CJK Ideograph */ + [0x90bc, 0x90bc], /* CJK Ideograph */ + [0x90bd, 0x90bd], /* CJK Ideograph */ + [0x90be, 0x90be], /* CJK Ideograph */ + [0x90bf, 0x90bf], /* CJK Ideograph */ + [0x90c0, 0x90c0], /* CJK Ideograph */ + [0x90c1, 0x90c1], /* CJK Ideograph */ + [0x90c2, 0x90c2], /* CJK Ideograph */ + [0x90c3, 0x90c3], /* CJK Ideograph */ + [0x90c4, 0x90c4], /* CJK Ideograph */ + [0x90c5, 0x90c5], /* CJK Ideograph */ + [0x90c6, 0x90c6], /* CJK Ideograph */ + [0x90c7, 0x90c7], /* CJK Ideograph */ + [0x90c8, 0x90c8], /* CJK Ideograph */ + [0x90c9, 0x90c9], /* CJK Ideograph */ + [0x90ca, 0x90ca], /* CJK Ideograph */ + [0x90cb, 0x90cb], /* CJK Ideograph */ + [0x90cc, 0x90cc], /* CJK Ideograph */ + [0x90cd, 0x90cd], /* CJK Ideograph */ + [0x90ce, 0x90ce], /* CJK Ideograph */ + [0x90cf, 0x90cf], /* CJK Ideograph */ + [0x90d0, 0x90d0], /* CJK Ideograph */ + [0x90d1, 0x90d1], /* CJK Ideograph */ + [0x90d2, 0x90d2], /* CJK Ideograph */ + [0x90d3, 0x90d3], /* CJK Ideograph */ + [0x90d4, 0x90d4], /* CJK Ideograph */ + [0x90d5, 0x90d5], /* CJK Ideograph */ + [0x90d6, 0x90d6], /* CJK Ideograph */ + [0x90d7, 0x90d7], /* CJK Ideograph */ + [0x90d8, 0x90d8], /* CJK Ideograph */ + [0x90d9, 0x90d9], /* CJK Ideograph */ + [0x90da, 0x90da], /* CJK Ideograph */ + [0x90db, 0x90db], /* CJK Ideograph */ + [0x90dc, 0x90dc], /* CJK Ideograph */ + [0x90dd, 0x90dd], /* CJK Ideograph */ + [0x90de, 0x90de], /* CJK Ideograph */ + [0x90df, 0x90df], /* CJK Ideograph */ + [0x90e0, 0x90e0], /* CJK Ideograph */ + [0x90e1, 0x90e1], /* CJK Ideograph */ + [0x90e2, 0x90e2], /* CJK Ideograph */ + [0x90e3, 0x90e3], /* CJK Ideograph */ + [0x90e4, 0x90e4], /* CJK Ideograph */ + [0x90e5, 0x90e5], /* CJK Ideograph */ + [0x90e6, 0x90e6], /* CJK Ideograph */ + [0x90e7, 0x90e7], /* CJK Ideograph */ + [0x90e8, 0x90e8], /* CJK Ideograph */ + [0x90e9, 0x90e9], /* CJK Ideograph */ + [0x90ea, 0x90ea], /* CJK Ideograph */ + [0x90eb, 0x90eb], /* CJK Ideograph */ + [0x90ec, 0x90ec], /* CJK Ideograph */ + [0x90ed, 0x90ed], /* CJK Ideograph */ + [0x90ee, 0x90ee], /* CJK Ideograph */ + [0x90ef, 0x90ef], /* CJK Ideograph */ + [0x90f0, 0x90f0], /* CJK Ideograph */ + [0x90f1, 0x90f1], /* CJK Ideograph */ + [0x90f2, 0x90f2], /* CJK Ideograph */ + [0x90f3, 0x90f3], /* CJK Ideograph */ + [0x90f4, 0x90f4], /* CJK Ideograph */ + [0x90f5, 0x90f5], /* CJK Ideograph */ + [0x90f6, 0x90f6], /* CJK Ideograph */ + [0x90f7, 0x90f7], /* CJK Ideograph */ + [0x90f8, 0x90f8], /* CJK Ideograph */ + [0x90f9, 0x90f9], /* CJK Ideograph */ + [0x90fa, 0x90fa], /* CJK Ideograph */ + [0x90fb, 0x90fb], /* CJK Ideograph */ + [0x90fc, 0x90fc], /* CJK Ideograph */ + [0x90fd, 0x90fd], /* CJK Ideograph */ + [0x90fe, 0x90fe], /* CJK Ideograph */ + [0x90ff, 0x90ff], /* CJK Ideograph */ + [0x9100, 0x9100], /* CJK Ideograph */ + [0x9101, 0x9101], /* CJK Ideograph */ + [0x9102, 0x9102], /* CJK Ideograph */ + [0x9103, 0x9103], /* CJK Ideograph */ + [0x9104, 0x9104], /* CJK Ideograph */ + [0x9105, 0x9105], /* CJK Ideograph */ + [0x9106, 0x9106], /* CJK Ideograph */ + [0x9107, 0x9107], /* CJK Ideograph */ + [0x9108, 0x9108], /* CJK Ideograph */ + [0x9109, 0x9109], /* CJK Ideograph */ + [0x910a, 0x910a], /* CJK Ideograph */ + [0x910b, 0x910b], /* CJK Ideograph */ + [0x910c, 0x910c], /* CJK Ideograph */ + [0x910d, 0x910d], /* CJK Ideograph */ + [0x910e, 0x910e], /* CJK Ideograph */ + [0x910f, 0x910f], /* CJK Ideograph */ + [0x9110, 0x9110], /* CJK Ideograph */ + [0x9111, 0x9111], /* CJK Ideograph */ + [0x9112, 0x9112], /* CJK Ideograph */ + [0x9113, 0x9113], /* CJK Ideograph */ + [0x9114, 0x9114], /* CJK Ideograph */ + [0x9115, 0x9115], /* CJK Ideograph */ + [0x9116, 0x9116], /* CJK Ideograph */ + [0x9117, 0x9117], /* CJK Ideograph */ + [0x9118, 0x9118], /* CJK Ideograph */ + [0x9119, 0x9119], /* CJK Ideograph */ + [0x911a, 0x911a], /* CJK Ideograph */ + [0x911b, 0x911b], /* CJK Ideograph */ + [0x911c, 0x911c], /* CJK Ideograph */ + [0x911d, 0x911d], /* CJK Ideograph */ + [0x911e, 0x911e], /* CJK Ideograph */ + [0x911f, 0x911f], /* CJK Ideograph */ + [0x9120, 0x9120], /* CJK Ideograph */ + [0x9121, 0x9121], /* CJK Ideograph */ + [0x9122, 0x9122], /* CJK Ideograph */ + [0x9123, 0x9123], /* CJK Ideograph */ + [0x9124, 0x9124], /* CJK Ideograph */ + [0x9125, 0x9125], /* CJK Ideograph */ + [0x9126, 0x9126], /* CJK Ideograph */ + [0x9127, 0x9127], /* CJK Ideograph */ + [0x9128, 0x9128], /* CJK Ideograph */ + [0x9129, 0x9129], /* CJK Ideograph */ + [0x912a, 0x912a], /* CJK Ideograph */ + [0x912b, 0x912b], /* CJK Ideograph */ + [0x912c, 0x912c], /* CJK Ideograph */ + [0x912d, 0x912d], /* CJK Ideograph */ + [0x912e, 0x912e], /* CJK Ideograph */ + [0x912f, 0x912f], /* CJK Ideograph */ + [0x9130, 0x9130], /* CJK Ideograph */ + [0x9131, 0x9131], /* CJK Ideograph */ + [0x9132, 0x9132], /* CJK Ideograph */ + [0x9133, 0x9133], /* CJK Ideograph */ + [0x9134, 0x9134], /* CJK Ideograph */ + [0x9135, 0x9135], /* CJK Ideograph */ + [0x9136, 0x9136], /* CJK Ideograph */ + [0x9137, 0x9137], /* CJK Ideograph */ + [0x9138, 0x9138], /* CJK Ideograph */ + [0x9139, 0x9139], /* CJK Ideograph */ + [0x913a, 0x913a], /* CJK Ideograph */ + [0x913b, 0x913b], /* CJK Ideograph */ + [0x913c, 0x913c], /* CJK Ideograph */ + [0x913d, 0x913d], /* CJK Ideograph */ + [0x913e, 0x913e], /* CJK Ideograph */ + [0x913f, 0x913f], /* CJK Ideograph */ + [0x9140, 0x9140], /* CJK Ideograph */ + [0x9141, 0x9141], /* CJK Ideograph */ + [0x9142, 0x9142], /* CJK Ideograph */ + [0x9143, 0x9143], /* CJK Ideograph */ + [0x9144, 0x9144], /* CJK Ideograph */ + [0x9145, 0x9145], /* CJK Ideograph */ + [0x9146, 0x9146], /* CJK Ideograph */ + [0x9147, 0x9147], /* CJK Ideograph */ + [0x9148, 0x9148], /* CJK Ideograph */ + [0x9149, 0x9149], /* CJK Ideograph */ + [0x914a, 0x914a], /* CJK Ideograph */ + [0x914b, 0x914b], /* CJK Ideograph */ + [0x914c, 0x914c], /* CJK Ideograph */ + [0x914d, 0x914d], /* CJK Ideograph */ + [0x914e, 0x914e], /* CJK Ideograph */ + [0x914f, 0x914f], /* CJK Ideograph */ + [0x9150, 0x9150], /* CJK Ideograph */ + [0x9151, 0x9151], /* CJK Ideograph */ + [0x9152, 0x9152], /* CJK Ideograph */ + [0x9153, 0x9153], /* CJK Ideograph */ + [0x9154, 0x9154], /* CJK Ideograph */ + [0x9155, 0x9155], /* CJK Ideograph */ + [0x9156, 0x9156], /* CJK Ideograph */ + [0x9157, 0x9157], /* CJK Ideograph */ + [0x9158, 0x9158], /* CJK Ideograph */ + [0x9159, 0x9159], /* CJK Ideograph */ + [0x915a, 0x915a], /* CJK Ideograph */ + [0x915b, 0x915b], /* CJK Ideograph */ + [0x915c, 0x915c], /* CJK Ideograph */ + [0x915d, 0x915d], /* CJK Ideograph */ + [0x915e, 0x915e], /* CJK Ideograph */ + [0x915f, 0x915f], /* CJK Ideograph */ + [0x9160, 0x9160], /* CJK Ideograph */ + [0x9161, 0x9161], /* CJK Ideograph */ + [0x9162, 0x9162], /* CJK Ideograph */ + [0x9163, 0x9163], /* CJK Ideograph */ + [0x9164, 0x9164], /* CJK Ideograph */ + [0x9165, 0x9165], /* CJK Ideograph */ + [0x9166, 0x9166], /* CJK Ideograph */ + [0x9167, 0x9167], /* CJK Ideograph */ + [0x9168, 0x9168], /* CJK Ideograph */ + [0x9169, 0x9169], /* CJK Ideograph */ + [0x916a, 0x916a], /* CJK Ideograph */ + [0x916b, 0x916b], /* CJK Ideograph */ + [0x916c, 0x916c], /* CJK Ideograph */ + [0x916d, 0x916d], /* CJK Ideograph */ + [0x916e, 0x916e], /* CJK Ideograph */ + [0x916f, 0x916f], /* CJK Ideograph */ + [0x9170, 0x9170], /* CJK Ideograph */ + [0x9171, 0x9171], /* CJK Ideograph */ + [0x9172, 0x9172], /* CJK Ideograph */ + [0x9173, 0x9173], /* CJK Ideograph */ + [0x9174, 0x9174], /* CJK Ideograph */ + [0x9175, 0x9175], /* CJK Ideograph */ + [0x9176, 0x9176], /* CJK Ideograph */ + [0x9177, 0x9177], /* CJK Ideograph */ + [0x9178, 0x9178], /* CJK Ideograph */ + [0x9179, 0x9179], /* CJK Ideograph */ + [0x917a, 0x917a], /* CJK Ideograph */ + [0x917b, 0x917b], /* CJK Ideograph */ + [0x917c, 0x917c], /* CJK Ideograph */ + [0x917d, 0x917d], /* CJK Ideograph */ + [0x917e, 0x917e], /* CJK Ideograph */ + [0x917f, 0x917f], /* CJK Ideograph */ + [0x9180, 0x9180], /* CJK Ideograph */ + [0x9181, 0x9181], /* CJK Ideograph */ + [0x9182, 0x9182], /* CJK Ideograph */ + [0x9183, 0x9183], /* CJK Ideograph */ + [0x9184, 0x9184], /* CJK Ideograph */ + [0x9185, 0x9185], /* CJK Ideograph */ + [0x9186, 0x9186], /* CJK Ideograph */ + [0x9187, 0x9187], /* CJK Ideograph */ + [0x9188, 0x9188], /* CJK Ideograph */ + [0x9189, 0x9189], /* CJK Ideograph */ + [0x918a, 0x918a], /* CJK Ideograph */ + [0x918b, 0x918b], /* CJK Ideograph */ + [0x918c, 0x918c], /* CJK Ideograph */ + [0x918d, 0x918d], /* CJK Ideograph */ + [0x918e, 0x918e], /* CJK Ideograph */ + [0x918f, 0x918f], /* CJK Ideograph */ + [0x9190, 0x9190], /* CJK Ideograph */ + [0x9191, 0x9191], /* CJK Ideograph */ + [0x9192, 0x9192], /* CJK Ideograph */ + [0x9193, 0x9193], /* CJK Ideograph */ + [0x9194, 0x9194], /* CJK Ideograph */ + [0x9195, 0x9195], /* CJK Ideograph */ + [0x9196, 0x9196], /* CJK Ideograph */ + [0x9197, 0x9197], /* CJK Ideograph */ + [0x9198, 0x9198], /* CJK Ideograph */ + [0x9199, 0x9199], /* CJK Ideograph */ + [0x919a, 0x919a], /* CJK Ideograph */ + [0x919b, 0x919b], /* CJK Ideograph */ + [0x919c, 0x919c], /* CJK Ideograph */ + [0x919d, 0x919d], /* CJK Ideograph */ + [0x919e, 0x919e], /* CJK Ideograph */ + [0x919f, 0x919f], /* CJK Ideograph */ + [0x91a0, 0x91a0], /* CJK Ideograph */ + [0x91a1, 0x91a1], /* CJK Ideograph */ + [0x91a2, 0x91a2], /* CJK Ideograph */ + [0x91a3, 0x91a3], /* CJK Ideograph */ + [0x91a4, 0x91a4], /* CJK Ideograph */ + [0x91a5, 0x91a5], /* CJK Ideograph */ + [0x91a6, 0x91a6], /* CJK Ideograph */ + [0x91a7, 0x91a7], /* CJK Ideograph */ + [0x91a8, 0x91a8], /* CJK Ideograph */ + [0x91a9, 0x91a9], /* CJK Ideograph */ + [0x91aa, 0x91aa], /* CJK Ideograph */ + [0x91ab, 0x91ab], /* CJK Ideograph */ + [0x91ac, 0x91ac], /* CJK Ideograph */ + [0x91ad, 0x91ad], /* CJK Ideograph */ + [0x91ae, 0x91ae], /* CJK Ideograph */ + [0x91af, 0x91af], /* CJK Ideograph */ + [0x91b0, 0x91b0], /* CJK Ideograph */ + [0x91b1, 0x91b1], /* CJK Ideograph */ + [0x91b2, 0x91b2], /* CJK Ideograph */ + [0x91b3, 0x91b3], /* CJK Ideograph */ + [0x91b4, 0x91b4], /* CJK Ideograph */ + [0x91b5, 0x91b5], /* CJK Ideograph */ + [0x91b6, 0x91b6], /* CJK Ideograph */ + [0x91b7, 0x91b7], /* CJK Ideograph */ + [0x91b8, 0x91b8], /* CJK Ideograph */ + [0x91b9, 0x91b9], /* CJK Ideograph */ + [0x91ba, 0x91ba], /* CJK Ideograph */ + [0x91bb, 0x91bb], /* CJK Ideograph */ + [0x91bc, 0x91bc], /* CJK Ideograph */ + [0x91bd, 0x91bd], /* CJK Ideograph */ + [0x91be, 0x91be], /* CJK Ideograph */ + [0x91bf, 0x91bf], /* CJK Ideograph */ + [0x91c0, 0x91c0], /* CJK Ideograph */ + [0x91c1, 0x91c1], /* CJK Ideograph */ + [0x91c2, 0x91c2], /* CJK Ideograph */ + [0x91c3, 0x91c3], /* CJK Ideograph */ + [0x91c4, 0x91c4], /* CJK Ideograph */ + [0x91c5, 0x91c5], /* CJK Ideograph */ + [0x91c6, 0x91c6], /* CJK Ideograph */ + [0x91c7, 0x91c7], /* CJK Ideograph */ + [0x91c8, 0x91c8], /* CJK Ideograph */ + [0x91c9, 0x91c9], /* CJK Ideograph */ + [0x91ca, 0x91ca], /* CJK Ideograph */ + [0x91cb, 0x91cb], /* CJK Ideograph */ + [0x91cc, 0x91cc], /* CJK Ideograph */ + [0x91cd, 0x91cd], /* CJK Ideograph */ + [0x91ce, 0x91ce], /* CJK Ideograph */ + [0x91cf, 0x91cf], /* CJK Ideograph */ + [0x91d0, 0x91d0], /* CJK Ideograph */ + [0x91d1, 0x91d1], /* CJK Ideograph */ + [0x91d2, 0x91d2], /* CJK Ideograph */ + [0x91d3, 0x91d3], /* CJK Ideograph */ + [0x91d4, 0x91d4], /* CJK Ideograph */ + [0x91d5, 0x91d5], /* CJK Ideograph */ + [0x91d6, 0x91d6], /* CJK Ideograph */ + [0x91d7, 0x91d7], /* CJK Ideograph */ + [0x91d8, 0x91d8], /* CJK Ideograph */ + [0x91d9, 0x91d9], /* CJK Ideograph */ + [0x91da, 0x91da], /* CJK Ideograph */ + [0x91db, 0x91db], /* CJK Ideograph */ + [0x91dc, 0x91dc], /* CJK Ideograph */ + [0x91dd, 0x91dd], /* CJK Ideograph */ + [0x91de, 0x91de], /* CJK Ideograph */ + [0x91df, 0x91df], /* CJK Ideograph */ + [0x91e0, 0x91e0], /* CJK Ideograph */ + [0x91e1, 0x91e1], /* CJK Ideograph */ + [0x91e2, 0x91e2], /* CJK Ideograph */ + [0x91e3, 0x91e3], /* CJK Ideograph */ + [0x91e4, 0x91e4], /* CJK Ideograph */ + [0x91e5, 0x91e5], /* CJK Ideograph */ + [0x91e6, 0x91e6], /* CJK Ideograph */ + [0x91e7, 0x91e7], /* CJK Ideograph */ + [0x91e8, 0x91e8], /* CJK Ideograph */ + [0x91e9, 0x91e9], /* CJK Ideograph */ + [0x91ea, 0x91ea], /* CJK Ideograph */ + [0x91eb, 0x91eb], /* CJK Ideograph */ + [0x91ec, 0x91ec], /* CJK Ideograph */ + [0x91ed, 0x91ed], /* CJK Ideograph */ + [0x91ee, 0x91ee], /* CJK Ideograph */ + [0x91ef, 0x91ef], /* CJK Ideograph */ + [0x91f0, 0x91f0], /* CJK Ideograph */ + [0x91f1, 0x91f1], /* CJK Ideograph */ + [0x91f2, 0x91f2], /* CJK Ideograph */ + [0x91f3, 0x91f3], /* CJK Ideograph */ + [0x91f4, 0x91f4], /* CJK Ideograph */ + [0x91f5, 0x91f5], /* CJK Ideograph */ + [0x91f6, 0x91f6], /* CJK Ideograph */ + [0x91f7, 0x91f7], /* CJK Ideograph */ + [0x91f8, 0x91f8], /* CJK Ideograph */ + [0x91f9, 0x91f9], /* CJK Ideograph */ + [0x91fa, 0x91fa], /* CJK Ideograph */ + [0x91fb, 0x91fb], /* CJK Ideograph */ + [0x91fc, 0x91fc], /* CJK Ideograph */ + [0x91fd, 0x91fd], /* CJK Ideograph */ + [0x91fe, 0x91fe], /* CJK Ideograph */ + [0x91ff, 0x91ff], /* CJK Ideograph */ + [0x9200, 0x9200], /* CJK Ideograph */ + [0x9201, 0x9201], /* CJK Ideograph */ + [0x9202, 0x9202], /* CJK Ideograph */ + [0x9203, 0x9203], /* CJK Ideograph */ + [0x9204, 0x9204], /* CJK Ideograph */ + [0x9205, 0x9205], /* CJK Ideograph */ + [0x9206, 0x9206], /* CJK Ideograph */ + [0x9207, 0x9207], /* CJK Ideograph */ + [0x9208, 0x9208], /* CJK Ideograph */ + [0x9209, 0x9209], /* CJK Ideograph */ + [0x920a, 0x920a], /* CJK Ideograph */ + [0x920b, 0x920b], /* CJK Ideograph */ + [0x920c, 0x920c], /* CJK Ideograph */ + [0x920d, 0x920d], /* CJK Ideograph */ + [0x920e, 0x920e], /* CJK Ideograph */ + [0x920f, 0x920f], /* CJK Ideograph */ + [0x9210, 0x9210], /* CJK Ideograph */ + [0x9211, 0x9211], /* CJK Ideograph */ + [0x9212, 0x9212], /* CJK Ideograph */ + [0x9213, 0x9213], /* CJK Ideograph */ + [0x9214, 0x9214], /* CJK Ideograph */ + [0x9215, 0x9215], /* CJK Ideograph */ + [0x9216, 0x9216], /* CJK Ideograph */ + [0x9217, 0x9217], /* CJK Ideograph */ + [0x9218, 0x9218], /* CJK Ideograph */ + [0x9219, 0x9219], /* CJK Ideograph */ + [0x921a, 0x921a], /* CJK Ideograph */ + [0x921b, 0x921b], /* CJK Ideograph */ + [0x921c, 0x921c], /* CJK Ideograph */ + [0x921d, 0x921d], /* CJK Ideograph */ + [0x921e, 0x921e], /* CJK Ideograph */ + [0x921f, 0x921f], /* CJK Ideograph */ + [0x9220, 0x9220], /* CJK Ideograph */ + [0x9221, 0x9221], /* CJK Ideograph */ + [0x9222, 0x9222], /* CJK Ideograph */ + [0x9223, 0x9223], /* CJK Ideograph */ + [0x9224, 0x9224], /* CJK Ideograph */ + [0x9225, 0x9225], /* CJK Ideograph */ + [0x9226, 0x9226], /* CJK Ideograph */ + [0x9227, 0x9227], /* CJK Ideograph */ + [0x9228, 0x9228], /* CJK Ideograph */ + [0x9229, 0x9229], /* CJK Ideograph */ + [0x922a, 0x922a], /* CJK Ideograph */ + [0x922b, 0x922b], /* CJK Ideograph */ + [0x922c, 0x922c], /* CJK Ideograph */ + [0x922d, 0x922d], /* CJK Ideograph */ + [0x922e, 0x922e], /* CJK Ideograph */ + [0x922f, 0x922f], /* CJK Ideograph */ + [0x9230, 0x9230], /* CJK Ideograph */ + [0x9231, 0x9231], /* CJK Ideograph */ + [0x9232, 0x9232], /* CJK Ideograph */ + [0x9233, 0x9233], /* CJK Ideograph */ + [0x9234, 0x9234], /* CJK Ideograph */ + [0x9235, 0x9235], /* CJK Ideograph */ + [0x9236, 0x9236], /* CJK Ideograph */ + [0x9237, 0x9237], /* CJK Ideograph */ + [0x9238, 0x9238], /* CJK Ideograph */ + [0x9239, 0x9239], /* CJK Ideograph */ + [0x923a, 0x923a], /* CJK Ideograph */ + [0x923b, 0x923b], /* CJK Ideograph */ + [0x923c, 0x923c], /* CJK Ideograph */ + [0x923d, 0x923d], /* CJK Ideograph */ + [0x923e, 0x923e], /* CJK Ideograph */ + [0x923f, 0x923f], /* CJK Ideograph */ + [0x9240, 0x9240], /* CJK Ideograph */ + [0x9241, 0x9241], /* CJK Ideograph */ + [0x9242, 0x9242], /* CJK Ideograph */ + [0x9243, 0x9243], /* CJK Ideograph */ + [0x9244, 0x9244], /* CJK Ideograph */ + [0x9245, 0x9245], /* CJK Ideograph */ + [0x9246, 0x9246], /* CJK Ideograph */ + [0x9247, 0x9247], /* CJK Ideograph */ + [0x9248, 0x9248], /* CJK Ideograph */ + [0x9249, 0x9249], /* CJK Ideograph */ + [0x924a, 0x924a], /* CJK Ideograph */ + [0x924b, 0x924b], /* CJK Ideograph */ + [0x924c, 0x924c], /* CJK Ideograph */ + [0x924d, 0x924d], /* CJK Ideograph */ + [0x924e, 0x924e], /* CJK Ideograph */ + [0x924f, 0x924f], /* CJK Ideograph */ + [0x9250, 0x9250], /* CJK Ideograph */ + [0x9251, 0x9251], /* CJK Ideograph */ + [0x9252, 0x9252], /* CJK Ideograph */ + [0x9253, 0x9253], /* CJK Ideograph */ + [0x9254, 0x9254], /* CJK Ideograph */ + [0x9255, 0x9255], /* CJK Ideograph */ + [0x9256, 0x9256], /* CJK Ideograph */ + [0x9257, 0x9257], /* CJK Ideograph */ + [0x9258, 0x9258], /* CJK Ideograph */ + [0x9259, 0x9259], /* CJK Ideograph */ + [0x925a, 0x925a], /* CJK Ideograph */ + [0x925b, 0x925b], /* CJK Ideograph */ + [0x925c, 0x925c], /* CJK Ideograph */ + [0x925d, 0x925d], /* CJK Ideograph */ + [0x925e, 0x925e], /* CJK Ideograph */ + [0x925f, 0x925f], /* CJK Ideograph */ + [0x9260, 0x9260], /* CJK Ideograph */ + [0x9261, 0x9261], /* CJK Ideograph */ + [0x9262, 0x9262], /* CJK Ideograph */ + [0x9263, 0x9263], /* CJK Ideograph */ + [0x9264, 0x9264], /* CJK Ideograph */ + [0x9265, 0x9265], /* CJK Ideograph */ + [0x9266, 0x9266], /* CJK Ideograph */ + [0x9267, 0x9267], /* CJK Ideograph */ + [0x9268, 0x9268], /* CJK Ideograph */ + [0x9269, 0x9269], /* CJK Ideograph */ + [0x926a, 0x926a], /* CJK Ideograph */ + [0x926b, 0x926b], /* CJK Ideograph */ + [0x926c, 0x926c], /* CJK Ideograph */ + [0x926d, 0x926d], /* CJK Ideograph */ + [0x926e, 0x926e], /* CJK Ideograph */ + [0x926f, 0x926f], /* CJK Ideograph */ + [0x9270, 0x9270], /* CJK Ideograph */ + [0x9271, 0x9271], /* CJK Ideograph */ + [0x9272, 0x9272], /* CJK Ideograph */ + [0x9273, 0x9273], /* CJK Ideograph */ + [0x9274, 0x9274], /* CJK Ideograph */ + [0x9275, 0x9275], /* CJK Ideograph */ + [0x9276, 0x9276], /* CJK Ideograph */ + [0x9277, 0x9277], /* CJK Ideograph */ + [0x9278, 0x9278], /* CJK Ideograph */ + [0x9279, 0x9279], /* CJK Ideograph */ + [0x927a, 0x927a], /* CJK Ideograph */ + [0x927b, 0x927b], /* CJK Ideograph */ + [0x927c, 0x927c], /* CJK Ideograph */ + [0x927d, 0x927d], /* CJK Ideograph */ + [0x927e, 0x927e], /* CJK Ideograph */ + [0x927f, 0x927f], /* CJK Ideograph */ + [0x9280, 0x9280], /* CJK Ideograph */ + [0x9281, 0x9281], /* CJK Ideograph */ + [0x9282, 0x9282], /* CJK Ideograph */ + [0x9283, 0x9283], /* CJK Ideograph */ + [0x9284, 0x9284], /* CJK Ideograph */ + [0x9285, 0x9285], /* CJK Ideograph */ + [0x9286, 0x9286], /* CJK Ideograph */ + [0x9287, 0x9287], /* CJK Ideograph */ + [0x9288, 0x9288], /* CJK Ideograph */ + [0x9289, 0x9289], /* CJK Ideograph */ + [0x928a, 0x928a], /* CJK Ideograph */ + [0x928b, 0x928b], /* CJK Ideograph */ + [0x928c, 0x928c], /* CJK Ideograph */ + [0x928d, 0x928d], /* CJK Ideograph */ + [0x928e, 0x928e], /* CJK Ideograph */ + [0x928f, 0x928f], /* CJK Ideograph */ + [0x9290, 0x9290], /* CJK Ideograph */ + [0x9291, 0x9291], /* CJK Ideograph */ + [0x9292, 0x9292], /* CJK Ideograph */ + [0x9293, 0x9293], /* CJK Ideograph */ + [0x9294, 0x9294], /* CJK Ideograph */ + [0x9295, 0x9295], /* CJK Ideograph */ + [0x9296, 0x9296], /* CJK Ideograph */ + [0x9297, 0x9297], /* CJK Ideograph */ + [0x9298, 0x9298], /* CJK Ideograph */ + [0x9299, 0x9299], /* CJK Ideograph */ + [0x929a, 0x929a], /* CJK Ideograph */ + [0x929b, 0x929b], /* CJK Ideograph */ + [0x929c, 0x929c], /* CJK Ideograph */ + [0x929d, 0x929d], /* CJK Ideograph */ + [0x929e, 0x929e], /* CJK Ideograph */ + [0x929f, 0x929f], /* CJK Ideograph */ + [0x92a0, 0x92a0], /* CJK Ideograph */ + [0x92a1, 0x92a1], /* CJK Ideograph */ + [0x92a2, 0x92a2], /* CJK Ideograph */ + [0x92a3, 0x92a3], /* CJK Ideograph */ + [0x92a4, 0x92a4], /* CJK Ideograph */ + [0x92a5, 0x92a5], /* CJK Ideograph */ + [0x92a6, 0x92a6], /* CJK Ideograph */ + [0x92a7, 0x92a7], /* CJK Ideograph */ + [0x92a8, 0x92a8], /* CJK Ideograph */ + [0x92a9, 0x92a9], /* CJK Ideograph */ + [0x92aa, 0x92aa], /* CJK Ideograph */ + [0x92ab, 0x92ab], /* CJK Ideograph */ + [0x92ac, 0x92ac], /* CJK Ideograph */ + [0x92ad, 0x92ad], /* CJK Ideograph */ + [0x92ae, 0x92ae], /* CJK Ideograph */ + [0x92af, 0x92af], /* CJK Ideograph */ + [0x92b0, 0x92b0], /* CJK Ideograph */ + [0x92b1, 0x92b1], /* CJK Ideograph */ + [0x92b2, 0x92b2], /* CJK Ideograph */ + [0x92b3, 0x92b3], /* CJK Ideograph */ + [0x92b4, 0x92b4], /* CJK Ideograph */ + [0x92b5, 0x92b5], /* CJK Ideograph */ + [0x92b6, 0x92b6], /* CJK Ideograph */ + [0x92b7, 0x92b7], /* CJK Ideograph */ + [0x92b8, 0x92b8], /* CJK Ideograph */ + [0x92b9, 0x92b9], /* CJK Ideograph */ + [0x92ba, 0x92ba], /* CJK Ideograph */ + [0x92bb, 0x92bb], /* CJK Ideograph */ + [0x92bc, 0x92bc], /* CJK Ideograph */ + [0x92bd, 0x92bd], /* CJK Ideograph */ + [0x92be, 0x92be], /* CJK Ideograph */ + [0x92bf, 0x92bf], /* CJK Ideograph */ + [0x92c0, 0x92c0], /* CJK Ideograph */ + [0x92c1, 0x92c1], /* CJK Ideograph */ + [0x92c2, 0x92c2], /* CJK Ideograph */ + [0x92c3, 0x92c3], /* CJK Ideograph */ + [0x92c4, 0x92c4], /* CJK Ideograph */ + [0x92c5, 0x92c5], /* CJK Ideograph */ + [0x92c6, 0x92c6], /* CJK Ideograph */ + [0x92c7, 0x92c7], /* CJK Ideograph */ + [0x92c8, 0x92c8], /* CJK Ideograph */ + [0x92c9, 0x92c9], /* CJK Ideograph */ + [0x92ca, 0x92ca], /* CJK Ideograph */ + [0x92cb, 0x92cb], /* CJK Ideograph */ + [0x92cc, 0x92cc], /* CJK Ideograph */ + [0x92cd, 0x92cd], /* CJK Ideograph */ + [0x92ce, 0x92ce], /* CJK Ideograph */ + [0x92cf, 0x92cf], /* CJK Ideograph */ + [0x92d0, 0x92d0], /* CJK Ideograph */ + [0x92d1, 0x92d1], /* CJK Ideograph */ + [0x92d2, 0x92d2], /* CJK Ideograph */ + [0x92d3, 0x92d3], /* CJK Ideograph */ + [0x92d4, 0x92d4], /* CJK Ideograph */ + [0x92d5, 0x92d5], /* CJK Ideograph */ + [0x92d6, 0x92d6], /* CJK Ideograph */ + [0x92d7, 0x92d7], /* CJK Ideograph */ + [0x92d8, 0x92d8], /* CJK Ideograph */ + [0x92d9, 0x92d9], /* CJK Ideograph */ + [0x92da, 0x92da], /* CJK Ideograph */ + [0x92db, 0x92db], /* CJK Ideograph */ + [0x92dc, 0x92dc], /* CJK Ideograph */ + [0x92dd, 0x92dd], /* CJK Ideograph */ + [0x92de, 0x92de], /* CJK Ideograph */ + [0x92df, 0x92df], /* CJK Ideograph */ + [0x92e0, 0x92e0], /* CJK Ideograph */ + [0x92e1, 0x92e1], /* CJK Ideograph */ + [0x92e2, 0x92e2], /* CJK Ideograph */ + [0x92e3, 0x92e3], /* CJK Ideograph */ + [0x92e4, 0x92e4], /* CJK Ideograph */ + [0x92e5, 0x92e5], /* CJK Ideograph */ + [0x92e6, 0x92e6], /* CJK Ideograph */ + [0x92e7, 0x92e7], /* CJK Ideograph */ + [0x92e8, 0x92e8], /* CJK Ideograph */ + [0x92e9, 0x92e9], /* CJK Ideograph */ + [0x92ea, 0x92ea], /* CJK Ideograph */ + [0x92eb, 0x92eb], /* CJK Ideograph */ + [0x92ec, 0x92ec], /* CJK Ideograph */ + [0x92ed, 0x92ed], /* CJK Ideograph */ + [0x92ee, 0x92ee], /* CJK Ideograph */ + [0x92ef, 0x92ef], /* CJK Ideograph */ + [0x92f0, 0x92f0], /* CJK Ideograph */ + [0x92f1, 0x92f1], /* CJK Ideograph */ + [0x92f2, 0x92f2], /* CJK Ideograph */ + [0x92f3, 0x92f3], /* CJK Ideograph */ + [0x92f4, 0x92f4], /* CJK Ideograph */ + [0x92f5, 0x92f5], /* CJK Ideograph */ + [0x92f6, 0x92f6], /* CJK Ideograph */ + [0x92f7, 0x92f7], /* CJK Ideograph */ + [0x92f8, 0x92f8], /* CJK Ideograph */ + [0x92f9, 0x92f9], /* CJK Ideograph */ + [0x92fa, 0x92fa], /* CJK Ideograph */ + [0x92fb, 0x92fb], /* CJK Ideograph */ + [0x92fc, 0x92fc], /* CJK Ideograph */ + [0x92fd, 0x92fd], /* CJK Ideograph */ + [0x92fe, 0x92fe], /* CJK Ideograph */ + [0x92ff, 0x92ff], /* CJK Ideograph */ + [0x9300, 0x9300], /* CJK Ideograph */ + [0x9301, 0x9301], /* CJK Ideograph */ + [0x9302, 0x9302], /* CJK Ideograph */ + [0x9303, 0x9303], /* CJK Ideograph */ + [0x9304, 0x9304], /* CJK Ideograph */ + [0x9305, 0x9305], /* CJK Ideograph */ + [0x9306, 0x9306], /* CJK Ideograph */ + [0x9307, 0x9307], /* CJK Ideograph */ + [0x9308, 0x9308], /* CJK Ideograph */ + [0x9309, 0x9309], /* CJK Ideograph */ + [0x930a, 0x930a], /* CJK Ideograph */ + [0x930b, 0x930b], /* CJK Ideograph */ + [0x930c, 0x930c], /* CJK Ideograph */ + [0x930d, 0x930d], /* CJK Ideograph */ + [0x930e, 0x930e], /* CJK Ideograph */ + [0x930f, 0x930f], /* CJK Ideograph */ + [0x9310, 0x9310], /* CJK Ideograph */ + [0x9311, 0x9311], /* CJK Ideograph */ + [0x9312, 0x9312], /* CJK Ideograph */ + [0x9313, 0x9313], /* CJK Ideograph */ + [0x9314, 0x9314], /* CJK Ideograph */ + [0x9315, 0x9315], /* CJK Ideograph */ + [0x9316, 0x9316], /* CJK Ideograph */ + [0x9317, 0x9317], /* CJK Ideograph */ + [0x9318, 0x9318], /* CJK Ideograph */ + [0x9319, 0x9319], /* CJK Ideograph */ + [0x931a, 0x931a], /* CJK Ideograph */ + [0x931b, 0x931b], /* CJK Ideograph */ + [0x931c, 0x931c], /* CJK Ideograph */ + [0x931d, 0x931d], /* CJK Ideograph */ + [0x931e, 0x931e], /* CJK Ideograph */ + [0x931f, 0x931f], /* CJK Ideograph */ + [0x9320, 0x9320], /* CJK Ideograph */ + [0x9321, 0x9321], /* CJK Ideograph */ + [0x9322, 0x9322], /* CJK Ideograph */ + [0x9323, 0x9323], /* CJK Ideograph */ + [0x9324, 0x9324], /* CJK Ideograph */ + [0x9325, 0x9325], /* CJK Ideograph */ + [0x9326, 0x9326], /* CJK Ideograph */ + [0x9327, 0x9327], /* CJK Ideograph */ + [0x9328, 0x9328], /* CJK Ideograph */ + [0x9329, 0x9329], /* CJK Ideograph */ + [0x932a, 0x932a], /* CJK Ideograph */ + [0x932b, 0x932b], /* CJK Ideograph */ + [0x932c, 0x932c], /* CJK Ideograph */ + [0x932d, 0x932d], /* CJK Ideograph */ + [0x932e, 0x932e], /* CJK Ideograph */ + [0x932f, 0x932f], /* CJK Ideograph */ + [0x9330, 0x9330], /* CJK Ideograph */ + [0x9331, 0x9331], /* CJK Ideograph */ + [0x9332, 0x9332], /* CJK Ideograph */ + [0x9333, 0x9333], /* CJK Ideograph */ + [0x9334, 0x9334], /* CJK Ideograph */ + [0x9335, 0x9335], /* CJK Ideograph */ + [0x9336, 0x9336], /* CJK Ideograph */ + [0x9337, 0x9337], /* CJK Ideograph */ + [0x9338, 0x9338], /* CJK Ideograph */ + [0x9339, 0x9339], /* CJK Ideograph */ + [0x933a, 0x933a], /* CJK Ideograph */ + [0x933b, 0x933b], /* CJK Ideograph */ + [0x933c, 0x933c], /* CJK Ideograph */ + [0x933d, 0x933d], /* CJK Ideograph */ + [0x933e, 0x933e], /* CJK Ideograph */ + [0x933f, 0x933f], /* CJK Ideograph */ + [0x9340, 0x9340], /* CJK Ideograph */ + [0x9341, 0x9341], /* CJK Ideograph */ + [0x9342, 0x9342], /* CJK Ideograph */ + [0x9343, 0x9343], /* CJK Ideograph */ + [0x9344, 0x9344], /* CJK Ideograph */ + [0x9345, 0x9345], /* CJK Ideograph */ + [0x9346, 0x9346], /* CJK Ideograph */ + [0x9347, 0x9347], /* CJK Ideograph */ + [0x9348, 0x9348], /* CJK Ideograph */ + [0x9349, 0x9349], /* CJK Ideograph */ + [0x934a, 0x934a], /* CJK Ideograph */ + [0x934b, 0x934b], /* CJK Ideograph */ + [0x934c, 0x934c], /* CJK Ideograph */ + [0x934d, 0x934d], /* CJK Ideograph */ + [0x934e, 0x934e], /* CJK Ideograph */ + [0x934f, 0x934f], /* CJK Ideograph */ + [0x9350, 0x9350], /* CJK Ideograph */ + [0x9351, 0x9351], /* CJK Ideograph */ + [0x9352, 0x9352], /* CJK Ideograph */ + [0x9353, 0x9353], /* CJK Ideograph */ + [0x9354, 0x9354], /* CJK Ideograph */ + [0x9355, 0x9355], /* CJK Ideograph */ + [0x9356, 0x9356], /* CJK Ideograph */ + [0x9357, 0x9357], /* CJK Ideograph */ + [0x9358, 0x9358], /* CJK Ideograph */ + [0x9359, 0x9359], /* CJK Ideograph */ + [0x935a, 0x935a], /* CJK Ideograph */ + [0x935b, 0x935b], /* CJK Ideograph */ + [0x935c, 0x935c], /* CJK Ideograph */ + [0x935d, 0x935d], /* CJK Ideograph */ + [0x935e, 0x935e], /* CJK Ideograph */ + [0x935f, 0x935f], /* CJK Ideograph */ + [0x9360, 0x9360], /* CJK Ideograph */ + [0x9361, 0x9361], /* CJK Ideograph */ + [0x9362, 0x9362], /* CJK Ideograph */ + [0x9363, 0x9363], /* CJK Ideograph */ + [0x9364, 0x9364], /* CJK Ideograph */ + [0x9365, 0x9365], /* CJK Ideograph */ + [0x9366, 0x9366], /* CJK Ideograph */ + [0x9367, 0x9367], /* CJK Ideograph */ + [0x9368, 0x9368], /* CJK Ideograph */ + [0x9369, 0x9369], /* CJK Ideograph */ + [0x936a, 0x936a], /* CJK Ideograph */ + [0x936b, 0x936b], /* CJK Ideograph */ + [0x936c, 0x936c], /* CJK Ideograph */ + [0x936d, 0x936d], /* CJK Ideograph */ + [0x936e, 0x936e], /* CJK Ideograph */ + [0x936f, 0x936f], /* CJK Ideograph */ + [0x9370, 0x9370], /* CJK Ideograph */ + [0x9371, 0x9371], /* CJK Ideograph */ + [0x9372, 0x9372], /* CJK Ideograph */ + [0x9373, 0x9373], /* CJK Ideograph */ + [0x9374, 0x9374], /* CJK Ideograph */ + [0x9375, 0x9375], /* CJK Ideograph */ + [0x9376, 0x9376], /* CJK Ideograph */ + [0x9377, 0x9377], /* CJK Ideograph */ + [0x9378, 0x9378], /* CJK Ideograph */ + [0x9379, 0x9379], /* CJK Ideograph */ + [0x937a, 0x937a], /* CJK Ideograph */ + [0x937b, 0x937b], /* CJK Ideograph */ + [0x937c, 0x937c], /* CJK Ideograph */ + [0x937d, 0x937d], /* CJK Ideograph */ + [0x937e, 0x937e], /* CJK Ideograph */ + [0x937f, 0x937f], /* CJK Ideograph */ + [0x9380, 0x9380], /* CJK Ideograph */ + [0x9381, 0x9381], /* CJK Ideograph */ + [0x9382, 0x9382], /* CJK Ideograph */ + [0x9383, 0x9383], /* CJK Ideograph */ + [0x9384, 0x9384], /* CJK Ideograph */ + [0x9385, 0x9385], /* CJK Ideograph */ + [0x9386, 0x9386], /* CJK Ideograph */ + [0x9387, 0x9387], /* CJK Ideograph */ + [0x9388, 0x9388], /* CJK Ideograph */ + [0x9389, 0x9389], /* CJK Ideograph */ + [0x938a, 0x938a], /* CJK Ideograph */ + [0x938b, 0x938b], /* CJK Ideograph */ + [0x938c, 0x938c], /* CJK Ideograph */ + [0x938d, 0x938d], /* CJK Ideograph */ + [0x938e, 0x938e], /* CJK Ideograph */ + [0x938f, 0x938f], /* CJK Ideograph */ + [0x9390, 0x9390], /* CJK Ideograph */ + [0x9391, 0x9391], /* CJK Ideograph */ + [0x9392, 0x9392], /* CJK Ideograph */ + [0x9393, 0x9393], /* CJK Ideograph */ + [0x9394, 0x9394], /* CJK Ideograph */ + [0x9395, 0x9395], /* CJK Ideograph */ + [0x9396, 0x9396], /* CJK Ideograph */ + [0x9397, 0x9397], /* CJK Ideograph */ + [0x9398, 0x9398], /* CJK Ideograph */ + [0x9399, 0x9399], /* CJK Ideograph */ + [0x939a, 0x939a], /* CJK Ideograph */ + [0x939b, 0x939b], /* CJK Ideograph */ + [0x939c, 0x939c], /* CJK Ideograph */ + [0x939d, 0x939d], /* CJK Ideograph */ + [0x939e, 0x939e], /* CJK Ideograph */ + [0x939f, 0x939f], /* CJK Ideograph */ + [0x93a0, 0x93a0], /* CJK Ideograph */ + [0x93a1, 0x93a1], /* CJK Ideograph */ + [0x93a2, 0x93a2], /* CJK Ideograph */ + [0x93a3, 0x93a3], /* CJK Ideograph */ + [0x93a4, 0x93a4], /* CJK Ideograph */ + [0x93a5, 0x93a5], /* CJK Ideograph */ + [0x93a6, 0x93a6], /* CJK Ideograph */ + [0x93a7, 0x93a7], /* CJK Ideograph */ + [0x93a8, 0x93a8], /* CJK Ideograph */ + [0x93a9, 0x93a9], /* CJK Ideograph */ + [0x93aa, 0x93aa], /* CJK Ideograph */ + [0x93ab, 0x93ab], /* CJK Ideograph */ + [0x93ac, 0x93ac], /* CJK Ideograph */ + [0x93ad, 0x93ad], /* CJK Ideograph */ + [0x93ae, 0x93ae], /* CJK Ideograph */ + [0x93af, 0x93af], /* CJK Ideograph */ + [0x93b0, 0x93b0], /* CJK Ideograph */ + [0x93b1, 0x93b1], /* CJK Ideograph */ + [0x93b2, 0x93b2], /* CJK Ideograph */ + [0x93b3, 0x93b3], /* CJK Ideograph */ + [0x93b4, 0x93b4], /* CJK Ideograph */ + [0x93b5, 0x93b5], /* CJK Ideograph */ + [0x93b6, 0x93b6], /* CJK Ideograph */ + [0x93b7, 0x93b7], /* CJK Ideograph */ + [0x93b8, 0x93b8], /* CJK Ideograph */ + [0x93b9, 0x93b9], /* CJK Ideograph */ + [0x93ba, 0x93ba], /* CJK Ideograph */ + [0x93bb, 0x93bb], /* CJK Ideograph */ + [0x93bc, 0x93bc], /* CJK Ideograph */ + [0x93bd, 0x93bd], /* CJK Ideograph */ + [0x93be, 0x93be], /* CJK Ideograph */ + [0x93bf, 0x93bf], /* CJK Ideograph */ + [0x93c0, 0x93c0], /* CJK Ideograph */ + [0x93c1, 0x93c1], /* CJK Ideograph */ + [0x93c2, 0x93c2], /* CJK Ideograph */ + [0x93c3, 0x93c3], /* CJK Ideograph */ + [0x93c4, 0x93c4], /* CJK Ideograph */ + [0x93c5, 0x93c5], /* CJK Ideograph */ + [0x93c6, 0x93c6], /* CJK Ideograph */ + [0x93c7, 0x93c7], /* CJK Ideograph */ + [0x93c8, 0x93c8], /* CJK Ideograph */ + [0x93c9, 0x93c9], /* CJK Ideograph */ + [0x93ca, 0x93ca], /* CJK Ideograph */ + [0x93cb, 0x93cb], /* CJK Ideograph */ + [0x93cc, 0x93cc], /* CJK Ideograph */ + [0x93cd, 0x93cd], /* CJK Ideograph */ + [0x93ce, 0x93ce], /* CJK Ideograph */ + [0x93cf, 0x93cf], /* CJK Ideograph */ + [0x93d0, 0x93d0], /* CJK Ideograph */ + [0x93d1, 0x93d1], /* CJK Ideograph */ + [0x93d2, 0x93d2], /* CJK Ideograph */ + [0x93d3, 0x93d3], /* CJK Ideograph */ + [0x93d4, 0x93d4], /* CJK Ideograph */ + [0x93d5, 0x93d5], /* CJK Ideograph */ + [0x93d6, 0x93d6], /* CJK Ideograph */ + [0x93d7, 0x93d7], /* CJK Ideograph */ + [0x93d8, 0x93d8], /* CJK Ideograph */ + [0x93d9, 0x93d9], /* CJK Ideograph */ + [0x93da, 0x93da], /* CJK Ideograph */ + [0x93db, 0x93db], /* CJK Ideograph */ + [0x93dc, 0x93dc], /* CJK Ideograph */ + [0x93dd, 0x93dd], /* CJK Ideograph */ + [0x93de, 0x93de], /* CJK Ideograph */ + [0x93df, 0x93df], /* CJK Ideograph */ + [0x93e0, 0x93e0], /* CJK Ideograph */ + [0x93e1, 0x93e1], /* CJK Ideograph */ + [0x93e2, 0x93e2], /* CJK Ideograph */ + [0x93e3, 0x93e3], /* CJK Ideograph */ + [0x93e4, 0x93e4], /* CJK Ideograph */ + [0x93e5, 0x93e5], /* CJK Ideograph */ + [0x93e6, 0x93e6], /* CJK Ideograph */ + [0x93e7, 0x93e7], /* CJK Ideograph */ + [0x93e8, 0x93e8], /* CJK Ideograph */ + [0x93e9, 0x93e9], /* CJK Ideograph */ + [0x93ea, 0x93ea], /* CJK Ideograph */ + [0x93eb, 0x93eb], /* CJK Ideograph */ + [0x93ec, 0x93ec], /* CJK Ideograph */ + [0x93ed, 0x93ed], /* CJK Ideograph */ + [0x93ee, 0x93ee], /* CJK Ideograph */ + [0x93ef, 0x93ef], /* CJK Ideograph */ + [0x93f0, 0x93f0], /* CJK Ideograph */ + [0x93f1, 0x93f1], /* CJK Ideograph */ + [0x93f2, 0x93f2], /* CJK Ideograph */ + [0x93f3, 0x93f3], /* CJK Ideograph */ + [0x93f4, 0x93f4], /* CJK Ideograph */ + [0x93f5, 0x93f5], /* CJK Ideograph */ + [0x93f6, 0x93f6], /* CJK Ideograph */ + [0x93f7, 0x93f7], /* CJK Ideograph */ + [0x93f8, 0x93f8], /* CJK Ideograph */ + [0x93f9, 0x93f9], /* CJK Ideograph */ + [0x93fa, 0x93fa], /* CJK Ideograph */ + [0x93fb, 0x93fb], /* CJK Ideograph */ + [0x93fc, 0x93fc], /* CJK Ideograph */ + [0x93fd, 0x93fd], /* CJK Ideograph */ + [0x93fe, 0x93fe], /* CJK Ideograph */ + [0x93ff, 0x93ff], /* CJK Ideograph */ + [0x9400, 0x9400], /* CJK Ideograph */ + [0x9401, 0x9401], /* CJK Ideograph */ + [0x9402, 0x9402], /* CJK Ideograph */ + [0x9403, 0x9403], /* CJK Ideograph */ + [0x9404, 0x9404], /* CJK Ideograph */ + [0x9405, 0x9405], /* CJK Ideograph */ + [0x9406, 0x9406], /* CJK Ideograph */ + [0x9407, 0x9407], /* CJK Ideograph */ + [0x9408, 0x9408], /* CJK Ideograph */ + [0x9409, 0x9409], /* CJK Ideograph */ + [0x940a, 0x940a], /* CJK Ideograph */ + [0x940b, 0x940b], /* CJK Ideograph */ + [0x940c, 0x940c], /* CJK Ideograph */ + [0x940d, 0x940d], /* CJK Ideograph */ + [0x940e, 0x940e], /* CJK Ideograph */ + [0x940f, 0x940f], /* CJK Ideograph */ + [0x9410, 0x9410], /* CJK Ideograph */ + [0x9411, 0x9411], /* CJK Ideograph */ + [0x9412, 0x9412], /* CJK Ideograph */ + [0x9413, 0x9413], /* CJK Ideograph */ + [0x9414, 0x9414], /* CJK Ideograph */ + [0x9415, 0x9415], /* CJK Ideograph */ + [0x9416, 0x9416], /* CJK Ideograph */ + [0x9417, 0x9417], /* CJK Ideograph */ + [0x9418, 0x9418], /* CJK Ideograph */ + [0x9419, 0x9419], /* CJK Ideograph */ + [0x941a, 0x941a], /* CJK Ideograph */ + [0x941b, 0x941b], /* CJK Ideograph */ + [0x941c, 0x941c], /* CJK Ideograph */ + [0x941d, 0x941d], /* CJK Ideograph */ + [0x941e, 0x941e], /* CJK Ideograph */ + [0x941f, 0x941f], /* CJK Ideograph */ + [0x9420, 0x9420], /* CJK Ideograph */ + [0x9421, 0x9421], /* CJK Ideograph */ + [0x9422, 0x9422], /* CJK Ideograph */ + [0x9423, 0x9423], /* CJK Ideograph */ + [0x9424, 0x9424], /* CJK Ideograph */ + [0x9425, 0x9425], /* CJK Ideograph */ + [0x9426, 0x9426], /* CJK Ideograph */ + [0x9427, 0x9427], /* CJK Ideograph */ + [0x9428, 0x9428], /* CJK Ideograph */ + [0x9429, 0x9429], /* CJK Ideograph */ + [0x942a, 0x942a], /* CJK Ideograph */ + [0x942b, 0x942b], /* CJK Ideograph */ + [0x942c, 0x942c], /* CJK Ideograph */ + [0x942d, 0x942d], /* CJK Ideograph */ + [0x942e, 0x942e], /* CJK Ideograph */ + [0x942f, 0x942f], /* CJK Ideograph */ + [0x9430, 0x9430], /* CJK Ideograph */ + [0x9431, 0x9431], /* CJK Ideograph */ + [0x9432, 0x9432], /* CJK Ideograph */ + [0x9433, 0x9433], /* CJK Ideograph */ + [0x9434, 0x9434], /* CJK Ideograph */ + [0x9435, 0x9435], /* CJK Ideograph */ + [0x9436, 0x9436], /* CJK Ideograph */ + [0x9437, 0x9437], /* CJK Ideograph */ + [0x9438, 0x9438], /* CJK Ideograph */ + [0x9439, 0x9439], /* CJK Ideograph */ + [0x943a, 0x943a], /* CJK Ideograph */ + [0x943b, 0x943b], /* CJK Ideograph */ + [0x943c, 0x943c], /* CJK Ideograph */ + [0x943d, 0x943d], /* CJK Ideograph */ + [0x943e, 0x943e], /* CJK Ideograph */ + [0x943f, 0x943f], /* CJK Ideograph */ + [0x9440, 0x9440], /* CJK Ideograph */ + [0x9441, 0x9441], /* CJK Ideograph */ + [0x9442, 0x9442], /* CJK Ideograph */ + [0x9443, 0x9443], /* CJK Ideograph */ + [0x9444, 0x9444], /* CJK Ideograph */ + [0x9445, 0x9445], /* CJK Ideograph */ + [0x9446, 0x9446], /* CJK Ideograph */ + [0x9447, 0x9447], /* CJK Ideograph */ + [0x9448, 0x9448], /* CJK Ideograph */ + [0x9449, 0x9449], /* CJK Ideograph */ + [0x944a, 0x944a], /* CJK Ideograph */ + [0x944b, 0x944b], /* CJK Ideograph */ + [0x944c, 0x944c], /* CJK Ideograph */ + [0x944d, 0x944d], /* CJK Ideograph */ + [0x944e, 0x944e], /* CJK Ideograph */ + [0x944f, 0x944f], /* CJK Ideograph */ + [0x9450, 0x9450], /* CJK Ideograph */ + [0x9451, 0x9451], /* CJK Ideograph */ + [0x9452, 0x9452], /* CJK Ideograph */ + [0x9453, 0x9453], /* CJK Ideograph */ + [0x9454, 0x9454], /* CJK Ideograph */ + [0x9455, 0x9455], /* CJK Ideograph */ + [0x9456, 0x9456], /* CJK Ideograph */ + [0x9457, 0x9457], /* CJK Ideograph */ + [0x9458, 0x9458], /* CJK Ideograph */ + [0x9459, 0x9459], /* CJK Ideograph */ + [0x945a, 0x945a], /* CJK Ideograph */ + [0x945b, 0x945b], /* CJK Ideograph */ + [0x945c, 0x945c], /* CJK Ideograph */ + [0x945d, 0x945d], /* CJK Ideograph */ + [0x945e, 0x945e], /* CJK Ideograph */ + [0x945f, 0x945f], /* CJK Ideograph */ + [0x9460, 0x9460], /* CJK Ideograph */ + [0x9461, 0x9461], /* CJK Ideograph */ + [0x9462, 0x9462], /* CJK Ideograph */ + [0x9463, 0x9463], /* CJK Ideograph */ + [0x9464, 0x9464], /* CJK Ideograph */ + [0x9465, 0x9465], /* CJK Ideograph */ + [0x9466, 0x9466], /* CJK Ideograph */ + [0x9467, 0x9467], /* CJK Ideograph */ + [0x9468, 0x9468], /* CJK Ideograph */ + [0x9469, 0x9469], /* CJK Ideograph */ + [0x946a, 0x946a], /* CJK Ideograph */ + [0x946b, 0x946b], /* CJK Ideograph */ + [0x946c, 0x946c], /* CJK Ideograph */ + [0x946d, 0x946d], /* CJK Ideograph */ + [0x946e, 0x946e], /* CJK Ideograph */ + [0x946f, 0x946f], /* CJK Ideograph */ + [0x9470, 0x9470], /* CJK Ideograph */ + [0x9471, 0x9471], /* CJK Ideograph */ + [0x9472, 0x9472], /* CJK Ideograph */ + [0x9473, 0x9473], /* CJK Ideograph */ + [0x9474, 0x9474], /* CJK Ideograph */ + [0x9475, 0x9475], /* CJK Ideograph */ + [0x9476, 0x9476], /* CJK Ideograph */ + [0x9477, 0x9477], /* CJK Ideograph */ + [0x9478, 0x9478], /* CJK Ideograph */ + [0x9479, 0x9479], /* CJK Ideograph */ + [0x947a, 0x947a], /* CJK Ideograph */ + [0x947b, 0x947b], /* CJK Ideograph */ + [0x947c, 0x947c], /* CJK Ideograph */ + [0x947d, 0x947d], /* CJK Ideograph */ + [0x947e, 0x947e], /* CJK Ideograph */ + [0x947f, 0x947f], /* CJK Ideograph */ + [0x9480, 0x9480], /* CJK Ideograph */ + [0x9481, 0x9481], /* CJK Ideograph */ + [0x9482, 0x9482], /* CJK Ideograph */ + [0x9483, 0x9483], /* CJK Ideograph */ + [0x9484, 0x9484], /* CJK Ideograph */ + [0x9485, 0x9485], /* CJK Ideograph */ + [0x9486, 0x9486], /* CJK Ideograph */ + [0x9487, 0x9487], /* CJK Ideograph */ + [0x9488, 0x9488], /* CJK Ideograph */ + [0x9489, 0x9489], /* CJK Ideograph */ + [0x948a, 0x948a], /* CJK Ideograph */ + [0x948b, 0x948b], /* CJK Ideograph */ + [0x948c, 0x948c], /* CJK Ideograph */ + [0x948d, 0x948d], /* CJK Ideograph */ + [0x948e, 0x948e], /* CJK Ideograph */ + [0x948f, 0x948f], /* CJK Ideograph */ + [0x9490, 0x9490], /* CJK Ideograph */ + [0x9491, 0x9491], /* CJK Ideograph */ + [0x9492, 0x9492], /* CJK Ideograph */ + [0x9493, 0x9493], /* CJK Ideograph */ + [0x9494, 0x9494], /* CJK Ideograph */ + [0x9495, 0x9495], /* CJK Ideograph */ + [0x9496, 0x9496], /* CJK Ideograph */ + [0x9497, 0x9497], /* CJK Ideograph */ + [0x9498, 0x9498], /* CJK Ideograph */ + [0x9499, 0x9499], /* CJK Ideograph */ + [0x949a, 0x949a], /* CJK Ideograph */ + [0x949b, 0x949b], /* CJK Ideograph */ + [0x949c, 0x949c], /* CJK Ideograph */ + [0x949d, 0x949d], /* CJK Ideograph */ + [0x949e, 0x949e], /* CJK Ideograph */ + [0x949f, 0x949f], /* CJK Ideograph */ + [0x94a0, 0x94a0], /* CJK Ideograph */ + [0x94a1, 0x94a1], /* CJK Ideograph */ + [0x94a2, 0x94a2], /* CJK Ideograph */ + [0x94a3, 0x94a3], /* CJK Ideograph */ + [0x94a4, 0x94a4], /* CJK Ideograph */ + [0x94a5, 0x94a5], /* CJK Ideograph */ + [0x94a6, 0x94a6], /* CJK Ideograph */ + [0x94a7, 0x94a7], /* CJK Ideograph */ + [0x94a8, 0x94a8], /* CJK Ideograph */ + [0x94a9, 0x94a9], /* CJK Ideograph */ + [0x94aa, 0x94aa], /* CJK Ideograph */ + [0x94ab, 0x94ab], /* CJK Ideograph */ + [0x94ac, 0x94ac], /* CJK Ideograph */ + [0x94ad, 0x94ad], /* CJK Ideograph */ + [0x94ae, 0x94ae], /* CJK Ideograph */ + [0x94af, 0x94af], /* CJK Ideograph */ + [0x94b0, 0x94b0], /* CJK Ideograph */ + [0x94b1, 0x94b1], /* CJK Ideograph */ + [0x94b2, 0x94b2], /* CJK Ideograph */ + [0x94b3, 0x94b3], /* CJK Ideograph */ + [0x94b4, 0x94b4], /* CJK Ideograph */ + [0x94b5, 0x94b5], /* CJK Ideograph */ + [0x94b6, 0x94b6], /* CJK Ideograph */ + [0x94b7, 0x94b7], /* CJK Ideograph */ + [0x94b8, 0x94b8], /* CJK Ideograph */ + [0x94b9, 0x94b9], /* CJK Ideograph */ + [0x94ba, 0x94ba], /* CJK Ideograph */ + [0x94bb, 0x94bb], /* CJK Ideograph */ + [0x94bc, 0x94bc], /* CJK Ideograph */ + [0x94bd, 0x94bd], /* CJK Ideograph */ + [0x94be, 0x94be], /* CJK Ideograph */ + [0x94bf, 0x94bf], /* CJK Ideograph */ + [0x94c0, 0x94c0], /* CJK Ideograph */ + [0x94c1, 0x94c1], /* CJK Ideograph */ + [0x94c2, 0x94c2], /* CJK Ideograph */ + [0x94c3, 0x94c3], /* CJK Ideograph */ + [0x94c4, 0x94c4], /* CJK Ideograph */ + [0x94c5, 0x94c5], /* CJK Ideograph */ + [0x94c6, 0x94c6], /* CJK Ideograph */ + [0x94c7, 0x94c7], /* CJK Ideograph */ + [0x94c8, 0x94c8], /* CJK Ideograph */ + [0x94c9, 0x94c9], /* CJK Ideograph */ + [0x94ca, 0x94ca], /* CJK Ideograph */ + [0x94cb, 0x94cb], /* CJK Ideograph */ + [0x94cc, 0x94cc], /* CJK Ideograph */ + [0x94cd, 0x94cd], /* CJK Ideograph */ + [0x94ce, 0x94ce], /* CJK Ideograph */ + [0x94cf, 0x94cf], /* CJK Ideograph */ + [0x94d0, 0x94d0], /* CJK Ideograph */ + [0x94d1, 0x94d1], /* CJK Ideograph */ + [0x94d2, 0x94d2], /* CJK Ideograph */ + [0x94d3, 0x94d3], /* CJK Ideograph */ + [0x94d4, 0x94d4], /* CJK Ideograph */ + [0x94d5, 0x94d5], /* CJK Ideograph */ + [0x94d6, 0x94d6], /* CJK Ideograph */ + [0x94d7, 0x94d7], /* CJK Ideograph */ + [0x94d8, 0x94d8], /* CJK Ideograph */ + [0x94d9, 0x94d9], /* CJK Ideograph */ + [0x94da, 0x94da], /* CJK Ideograph */ + [0x94db, 0x94db], /* CJK Ideograph */ + [0x94dc, 0x94dc], /* CJK Ideograph */ + [0x94dd, 0x94dd], /* CJK Ideograph */ + [0x94de, 0x94de], /* CJK Ideograph */ + [0x94df, 0x94df], /* CJK Ideograph */ + [0x94e0, 0x94e0], /* CJK Ideograph */ + [0x94e1, 0x94e1], /* CJK Ideograph */ + [0x94e2, 0x94e2], /* CJK Ideograph */ + [0x94e3, 0x94e3], /* CJK Ideograph */ + [0x94e4, 0x94e4], /* CJK Ideograph */ + [0x94e5, 0x94e5], /* CJK Ideograph */ + [0x94e6, 0x94e6], /* CJK Ideograph */ + [0x94e7, 0x94e7], /* CJK Ideograph */ + [0x94e8, 0x94e8], /* CJK Ideograph */ + [0x94e9, 0x94e9], /* CJK Ideograph */ + [0x94ea, 0x94ea], /* CJK Ideograph */ + [0x94eb, 0x94eb], /* CJK Ideograph */ + [0x94ec, 0x94ec], /* CJK Ideograph */ + [0x94ed, 0x94ed], /* CJK Ideograph */ + [0x94ee, 0x94ee], /* CJK Ideograph */ + [0x94ef, 0x94ef], /* CJK Ideograph */ + [0x94f0, 0x94f0], /* CJK Ideograph */ + [0x94f1, 0x94f1], /* CJK Ideograph */ + [0x94f2, 0x94f2], /* CJK Ideograph */ + [0x94f3, 0x94f3], /* CJK Ideograph */ + [0x94f4, 0x94f4], /* CJK Ideograph */ + [0x94f5, 0x94f5], /* CJK Ideograph */ + [0x94f6, 0x94f6], /* CJK Ideograph */ + [0x94f7, 0x94f7], /* CJK Ideograph */ + [0x94f8, 0x94f8], /* CJK Ideograph */ + [0x94f9, 0x94f9], /* CJK Ideograph */ + [0x94fa, 0x94fa], /* CJK Ideograph */ + [0x94fb, 0x94fb], /* CJK Ideograph */ + [0x94fc, 0x94fc], /* CJK Ideograph */ + [0x94fd, 0x94fd], /* CJK Ideograph */ + [0x94fe, 0x94fe], /* CJK Ideograph */ + [0x94ff, 0x94ff], /* CJK Ideograph */ + [0x9500, 0x9500], /* CJK Ideograph */ + [0x9501, 0x9501], /* CJK Ideograph */ + [0x9502, 0x9502], /* CJK Ideograph */ + [0x9503, 0x9503], /* CJK Ideograph */ + [0x9504, 0x9504], /* CJK Ideograph */ + [0x9505, 0x9505], /* CJK Ideograph */ + [0x9506, 0x9506], /* CJK Ideograph */ + [0x9507, 0x9507], /* CJK Ideograph */ + [0x9508, 0x9508], /* CJK Ideograph */ + [0x9509, 0x9509], /* CJK Ideograph */ + [0x950a, 0x950a], /* CJK Ideograph */ + [0x950b, 0x950b], /* CJK Ideograph */ + [0x950c, 0x950c], /* CJK Ideograph */ + [0x950d, 0x950d], /* CJK Ideograph */ + [0x950e, 0x950e], /* CJK Ideograph */ + [0x950f, 0x950f], /* CJK Ideograph */ + [0x9510, 0x9510], /* CJK Ideograph */ + [0x9511, 0x9511], /* CJK Ideograph */ + [0x9512, 0x9512], /* CJK Ideograph */ + [0x9513, 0x9513], /* CJK Ideograph */ + [0x9514, 0x9514], /* CJK Ideograph */ + [0x9515, 0x9515], /* CJK Ideograph */ + [0x9516, 0x9516], /* CJK Ideograph */ + [0x9517, 0x9517], /* CJK Ideograph */ + [0x9518, 0x9518], /* CJK Ideograph */ + [0x9519, 0x9519], /* CJK Ideograph */ + [0x951a, 0x951a], /* CJK Ideograph */ + [0x951b, 0x951b], /* CJK Ideograph */ + [0x951c, 0x951c], /* CJK Ideograph */ + [0x951d, 0x951d], /* CJK Ideograph */ + [0x951e, 0x951e], /* CJK Ideograph */ + [0x951f, 0x951f], /* CJK Ideograph */ + [0x9520, 0x9520], /* CJK Ideograph */ + [0x9521, 0x9521], /* CJK Ideograph */ + [0x9522, 0x9522], /* CJK Ideograph */ + [0x9523, 0x9523], /* CJK Ideograph */ + [0x9524, 0x9524], /* CJK Ideograph */ + [0x9525, 0x9525], /* CJK Ideograph */ + [0x9526, 0x9526], /* CJK Ideograph */ + [0x9527, 0x9527], /* CJK Ideograph */ + [0x9528, 0x9528], /* CJK Ideograph */ + [0x9529, 0x9529], /* CJK Ideograph */ + [0x952a, 0x952a], /* CJK Ideograph */ + [0x952b, 0x952b], /* CJK Ideograph */ + [0x952c, 0x952c], /* CJK Ideograph */ + [0x952d, 0x952d], /* CJK Ideograph */ + [0x952e, 0x952e], /* CJK Ideograph */ + [0x952f, 0x952f], /* CJK Ideograph */ + [0x9530, 0x9530], /* CJK Ideograph */ + [0x9531, 0x9531], /* CJK Ideograph */ + [0x9532, 0x9532], /* CJK Ideograph */ + [0x9533, 0x9533], /* CJK Ideograph */ + [0x9534, 0x9534], /* CJK Ideograph */ + [0x9535, 0x9535], /* CJK Ideograph */ + [0x9536, 0x9536], /* CJK Ideograph */ + [0x9537, 0x9537], /* CJK Ideograph */ + [0x9538, 0x9538], /* CJK Ideograph */ + [0x9539, 0x9539], /* CJK Ideograph */ + [0x953a, 0x953a], /* CJK Ideograph */ + [0x953b, 0x953b], /* CJK Ideograph */ + [0x953c, 0x953c], /* CJK Ideograph */ + [0x953d, 0x953d], /* CJK Ideograph */ + [0x953e, 0x953e], /* CJK Ideograph */ + [0x953f, 0x953f], /* CJK Ideograph */ + [0x9540, 0x9540], /* CJK Ideograph */ + [0x9541, 0x9541], /* CJK Ideograph */ + [0x9542, 0x9542], /* CJK Ideograph */ + [0x9543, 0x9543], /* CJK Ideograph */ + [0x9544, 0x9544], /* CJK Ideograph */ + [0x9545, 0x9545], /* CJK Ideograph */ + [0x9546, 0x9546], /* CJK Ideograph */ + [0x9547, 0x9547], /* CJK Ideograph */ + [0x9548, 0x9548], /* CJK Ideograph */ + [0x9549, 0x9549], /* CJK Ideograph */ + [0x954a, 0x954a], /* CJK Ideograph */ + [0x954b, 0x954b], /* CJK Ideograph */ + [0x954c, 0x954c], /* CJK Ideograph */ + [0x954d, 0x954d], /* CJK Ideograph */ + [0x954e, 0x954e], /* CJK Ideograph */ + [0x954f, 0x954f], /* CJK Ideograph */ + [0x9550, 0x9550], /* CJK Ideograph */ + [0x9551, 0x9551], /* CJK Ideograph */ + [0x9552, 0x9552], /* CJK Ideograph */ + [0x9553, 0x9553], /* CJK Ideograph */ + [0x9554, 0x9554], /* CJK Ideograph */ + [0x9555, 0x9555], /* CJK Ideograph */ + [0x9556, 0x9556], /* CJK Ideograph */ + [0x9557, 0x9557], /* CJK Ideograph */ + [0x9558, 0x9558], /* CJK Ideograph */ + [0x9559, 0x9559], /* CJK Ideograph */ + [0x955a, 0x955a], /* CJK Ideograph */ + [0x955b, 0x955b], /* CJK Ideograph */ + [0x955c, 0x955c], /* CJK Ideograph */ + [0x955d, 0x955d], /* CJK Ideograph */ + [0x955e, 0x955e], /* CJK Ideograph */ + [0x955f, 0x955f], /* CJK Ideograph */ + [0x9560, 0x9560], /* CJK Ideograph */ + [0x9561, 0x9561], /* CJK Ideograph */ + [0x9562, 0x9562], /* CJK Ideograph */ + [0x9563, 0x9563], /* CJK Ideograph */ + [0x9564, 0x9564], /* CJK Ideograph */ + [0x9565, 0x9565], /* CJK Ideograph */ + [0x9566, 0x9566], /* CJK Ideograph */ + [0x9567, 0x9567], /* CJK Ideograph */ + [0x9568, 0x9568], /* CJK Ideograph */ + [0x9569, 0x9569], /* CJK Ideograph */ + [0x956a, 0x956a], /* CJK Ideograph */ + [0x956b, 0x956b], /* CJK Ideograph */ + [0x956c, 0x956c], /* CJK Ideograph */ + [0x956d, 0x956d], /* CJK Ideograph */ + [0x956e, 0x956e], /* CJK Ideograph */ + [0x956f, 0x956f], /* CJK Ideograph */ + [0x9570, 0x9570], /* CJK Ideograph */ + [0x9571, 0x9571], /* CJK Ideograph */ + [0x9572, 0x9572], /* CJK Ideograph */ + [0x9573, 0x9573], /* CJK Ideograph */ + [0x9574, 0x9574], /* CJK Ideograph */ + [0x9575, 0x9575], /* CJK Ideograph */ + [0x9576, 0x9576], /* CJK Ideograph */ + [0x9577, 0x9577], /* CJK Ideograph */ + [0x9578, 0x9578], /* CJK Ideograph */ + [0x9579, 0x9579], /* CJK Ideograph */ + [0x957a, 0x957a], /* CJK Ideograph */ + [0x957b, 0x957b], /* CJK Ideograph */ + [0x957c, 0x957c], /* CJK Ideograph */ + [0x957d, 0x957d], /* CJK Ideograph */ + [0x957e, 0x957e], /* CJK Ideograph */ + [0x957f, 0x957f], /* CJK Ideograph */ + [0x9580, 0x9580], /* CJK Ideograph */ + [0x9581, 0x9581], /* CJK Ideograph */ + [0x9582, 0x9582], /* CJK Ideograph */ + [0x9583, 0x9583], /* CJK Ideograph */ + [0x9584, 0x9584], /* CJK Ideograph */ + [0x9585, 0x9585], /* CJK Ideograph */ + [0x9586, 0x9586], /* CJK Ideograph */ + [0x9587, 0x9587], /* CJK Ideograph */ + [0x9588, 0x9588], /* CJK Ideograph */ + [0x9589, 0x9589], /* CJK Ideograph */ + [0x958a, 0x958a], /* CJK Ideograph */ + [0x958b, 0x958b], /* CJK Ideograph */ + [0x958c, 0x958c], /* CJK Ideograph */ + [0x958d, 0x958d], /* CJK Ideograph */ + [0x958e, 0x958e], /* CJK Ideograph */ + [0x958f, 0x958f], /* CJK Ideograph */ + [0x9590, 0x9590], /* CJK Ideograph */ + [0x9591, 0x9591], /* CJK Ideograph */ + [0x9592, 0x9592], /* CJK Ideograph */ + [0x9593, 0x9593], /* CJK Ideograph */ + [0x9594, 0x9594], /* CJK Ideograph */ + [0x9595, 0x9595], /* CJK Ideograph */ + [0x9596, 0x9596], /* CJK Ideograph */ + [0x9597, 0x9597], /* CJK Ideograph */ + [0x9598, 0x9598], /* CJK Ideograph */ + [0x9599, 0x9599], /* CJK Ideograph */ + [0x959a, 0x959a], /* CJK Ideograph */ + [0x959b, 0x959b], /* CJK Ideograph */ + [0x959c, 0x959c], /* CJK Ideograph */ + [0x959d, 0x959d], /* CJK Ideograph */ + [0x959e, 0x959e], /* CJK Ideograph */ + [0x959f, 0x959f], /* CJK Ideograph */ + [0x95a0, 0x95a0], /* CJK Ideograph */ + [0x95a1, 0x95a1], /* CJK Ideograph */ + [0x95a2, 0x95a2], /* CJK Ideograph */ + [0x95a3, 0x95a3], /* CJK Ideograph */ + [0x95a4, 0x95a4], /* CJK Ideograph */ + [0x95a5, 0x95a5], /* CJK Ideograph */ + [0x95a6, 0x95a6], /* CJK Ideograph */ + [0x95a7, 0x95a7], /* CJK Ideograph */ + [0x95a8, 0x95a8], /* CJK Ideograph */ + [0x95a9, 0x95a9], /* CJK Ideograph */ + [0x95aa, 0x95aa], /* CJK Ideograph */ + [0x95ab, 0x95ab], /* CJK Ideograph */ + [0x95ac, 0x95ac], /* CJK Ideograph */ + [0x95ad, 0x95ad], /* CJK Ideograph */ + [0x95ae, 0x95ae], /* CJK Ideograph */ + [0x95af, 0x95af], /* CJK Ideograph */ + [0x95b0, 0x95b0], /* CJK Ideograph */ + [0x95b1, 0x95b1], /* CJK Ideograph */ + [0x95b2, 0x95b2], /* CJK Ideograph */ + [0x95b3, 0x95b3], /* CJK Ideograph */ + [0x95b4, 0x95b4], /* CJK Ideograph */ + [0x95b5, 0x95b5], /* CJK Ideograph */ + [0x95b6, 0x95b6], /* CJK Ideograph */ + [0x95b7, 0x95b7], /* CJK Ideograph */ + [0x95b8, 0x95b8], /* CJK Ideograph */ + [0x95b9, 0x95b9], /* CJK Ideograph */ + [0x95ba, 0x95ba], /* CJK Ideograph */ + [0x95bb, 0x95bb], /* CJK Ideograph */ + [0x95bc, 0x95bc], /* CJK Ideograph */ + [0x95bd, 0x95bd], /* CJK Ideograph */ + [0x95be, 0x95be], /* CJK Ideograph */ + [0x95bf, 0x95bf], /* CJK Ideograph */ + [0x95c0, 0x95c0], /* CJK Ideograph */ + [0x95c1, 0x95c1], /* CJK Ideograph */ + [0x95c2, 0x95c2], /* CJK Ideograph */ + [0x95c3, 0x95c3], /* CJK Ideograph */ + [0x95c4, 0x95c4], /* CJK Ideograph */ + [0x95c5, 0x95c5], /* CJK Ideograph */ + [0x95c6, 0x95c6], /* CJK Ideograph */ + [0x95c7, 0x95c7], /* CJK Ideograph */ + [0x95c8, 0x95c8], /* CJK Ideograph */ + [0x95c9, 0x95c9], /* CJK Ideograph */ + [0x95ca, 0x95ca], /* CJK Ideograph */ + [0x95cb, 0x95cb], /* CJK Ideograph */ + [0x95cc, 0x95cc], /* CJK Ideograph */ + [0x95cd, 0x95cd], /* CJK Ideograph */ + [0x95ce, 0x95ce], /* CJK Ideograph */ + [0x95cf, 0x95cf], /* CJK Ideograph */ + [0x95d0, 0x95d0], /* CJK Ideograph */ + [0x95d1, 0x95d1], /* CJK Ideograph */ + [0x95d2, 0x95d2], /* CJK Ideograph */ + [0x95d3, 0x95d3], /* CJK Ideograph */ + [0x95d4, 0x95d4], /* CJK Ideograph */ + [0x95d5, 0x95d5], /* CJK Ideograph */ + [0x95d6, 0x95d6], /* CJK Ideograph */ + [0x95d7, 0x95d7], /* CJK Ideograph */ + [0x95d8, 0x95d8], /* CJK Ideograph */ + [0x95d9, 0x95d9], /* CJK Ideograph */ + [0x95da, 0x95da], /* CJK Ideograph */ + [0x95db, 0x95db], /* CJK Ideograph */ + [0x95dc, 0x95dc], /* CJK Ideograph */ + [0x95dd, 0x95dd], /* CJK Ideograph */ + [0x95de, 0x95de], /* CJK Ideograph */ + [0x95df, 0x95df], /* CJK Ideograph */ + [0x95e0, 0x95e0], /* CJK Ideograph */ + [0x95e1, 0x95e1], /* CJK Ideograph */ + [0x95e2, 0x95e2], /* CJK Ideograph */ + [0x95e3, 0x95e3], /* CJK Ideograph */ + [0x95e4, 0x95e4], /* CJK Ideograph */ + [0x95e5, 0x95e5], /* CJK Ideograph */ + [0x95e6, 0x95e6], /* CJK Ideograph */ + [0x95e7, 0x95e7], /* CJK Ideograph */ + [0x95e8, 0x95e8], /* CJK Ideograph */ + [0x95e9, 0x95e9], /* CJK Ideograph */ + [0x95ea, 0x95ea], /* CJK Ideograph */ + [0x95eb, 0x95eb], /* CJK Ideograph */ + [0x95ec, 0x95ec], /* CJK Ideograph */ + [0x95ed, 0x95ed], /* CJK Ideograph */ + [0x95ee, 0x95ee], /* CJK Ideograph */ + [0x95ef, 0x95ef], /* CJK Ideograph */ + [0x95f0, 0x95f0], /* CJK Ideograph */ + [0x95f1, 0x95f1], /* CJK Ideograph */ + [0x95f2, 0x95f2], /* CJK Ideograph */ + [0x95f3, 0x95f3], /* CJK Ideograph */ + [0x95f4, 0x95f4], /* CJK Ideograph */ + [0x95f5, 0x95f5], /* CJK Ideograph */ + [0x95f6, 0x95f6], /* CJK Ideograph */ + [0x95f7, 0x95f7], /* CJK Ideograph */ + [0x95f8, 0x95f8], /* CJK Ideograph */ + [0x95f9, 0x95f9], /* CJK Ideograph */ + [0x95fa, 0x95fa], /* CJK Ideograph */ + [0x95fb, 0x95fb], /* CJK Ideograph */ + [0x95fc, 0x95fc], /* CJK Ideograph */ + [0x95fd, 0x95fd], /* CJK Ideograph */ + [0x95fe, 0x95fe], /* CJK Ideograph */ + [0x95ff, 0x95ff], /* CJK Ideograph */ + [0x9600, 0x9600], /* CJK Ideograph */ + [0x9601, 0x9601], /* CJK Ideograph */ + [0x9602, 0x9602], /* CJK Ideograph */ + [0x9603, 0x9603], /* CJK Ideograph */ + [0x9604, 0x9604], /* CJK Ideograph */ + [0x9605, 0x9605], /* CJK Ideograph */ + [0x9606, 0x9606], /* CJK Ideograph */ + [0x9607, 0x9607], /* CJK Ideograph */ + [0x9608, 0x9608], /* CJK Ideograph */ + [0x9609, 0x9609], /* CJK Ideograph */ + [0x960a, 0x960a], /* CJK Ideograph */ + [0x960b, 0x960b], /* CJK Ideograph */ + [0x960c, 0x960c], /* CJK Ideograph */ + [0x960d, 0x960d], /* CJK Ideograph */ + [0x960e, 0x960e], /* CJK Ideograph */ + [0x960f, 0x960f], /* CJK Ideograph */ + [0x9610, 0x9610], /* CJK Ideograph */ + [0x9611, 0x9611], /* CJK Ideograph */ + [0x9612, 0x9612], /* CJK Ideograph */ + [0x9613, 0x9613], /* CJK Ideograph */ + [0x9614, 0x9614], /* CJK Ideograph */ + [0x9615, 0x9615], /* CJK Ideograph */ + [0x9616, 0x9616], /* CJK Ideograph */ + [0x9617, 0x9617], /* CJK Ideograph */ + [0x9618, 0x9618], /* CJK Ideograph */ + [0x9619, 0x9619], /* CJK Ideograph */ + [0x961a, 0x961a], /* CJK Ideograph */ + [0x961b, 0x961b], /* CJK Ideograph */ + [0x961c, 0x961c], /* CJK Ideograph */ + [0x961d, 0x961d], /* CJK Ideograph */ + [0x961e, 0x961e], /* CJK Ideograph */ + [0x961f, 0x961f], /* CJK Ideograph */ + [0x9620, 0x9620], /* CJK Ideograph */ + [0x9621, 0x9621], /* CJK Ideograph */ + [0x9622, 0x9622], /* CJK Ideograph */ + [0x9623, 0x9623], /* CJK Ideograph */ + [0x9624, 0x9624], /* CJK Ideograph */ + [0x9625, 0x9625], /* CJK Ideograph */ + [0x9626, 0x9626], /* CJK Ideograph */ + [0x9627, 0x9627], /* CJK Ideograph */ + [0x9628, 0x9628], /* CJK Ideograph */ + [0x9629, 0x9629], /* CJK Ideograph */ + [0x962a, 0x962a], /* CJK Ideograph */ + [0x962b, 0x962b], /* CJK Ideograph */ + [0x962c, 0x962c], /* CJK Ideograph */ + [0x962d, 0x962d], /* CJK Ideograph */ + [0x962e, 0x962e], /* CJK Ideograph */ + [0x962f, 0x962f], /* CJK Ideograph */ + [0x9630, 0x9630], /* CJK Ideograph */ + [0x9631, 0x9631], /* CJK Ideograph */ + [0x9632, 0x9632], /* CJK Ideograph */ + [0x9633, 0x9633], /* CJK Ideograph */ + [0x9634, 0x9634], /* CJK Ideograph */ + [0x9635, 0x9635], /* CJK Ideograph */ + [0x9636, 0x9636], /* CJK Ideograph */ + [0x9637, 0x9637], /* CJK Ideograph */ + [0x9638, 0x9638], /* CJK Ideograph */ + [0x9639, 0x9639], /* CJK Ideograph */ + [0x963a, 0x963a], /* CJK Ideograph */ + [0x963b, 0x963b], /* CJK Ideograph */ + [0x963c, 0x963c], /* CJK Ideograph */ + [0x963d, 0x963d], /* CJK Ideograph */ + [0x963e, 0x963e], /* CJK Ideograph */ + [0x963f, 0x963f], /* CJK Ideograph */ + [0x9640, 0x9640], /* CJK Ideograph */ + [0x9641, 0x9641], /* CJK Ideograph */ + [0x9642, 0x9642], /* CJK Ideograph */ + [0x9643, 0x9643], /* CJK Ideograph */ + [0x9644, 0x9644], /* CJK Ideograph */ + [0x9645, 0x9645], /* CJK Ideograph */ + [0x9646, 0x9646], /* CJK Ideograph */ + [0x9647, 0x9647], /* CJK Ideograph */ + [0x9648, 0x9648], /* CJK Ideograph */ + [0x9649, 0x9649], /* CJK Ideograph */ + [0x964a, 0x964a], /* CJK Ideograph */ + [0x964b, 0x964b], /* CJK Ideograph */ + [0x964c, 0x964c], /* CJK Ideograph */ + [0x964d, 0x964d], /* CJK Ideograph */ + [0x964e, 0x964e], /* CJK Ideograph */ + [0x964f, 0x964f], /* CJK Ideograph */ + [0x9650, 0x9650], /* CJK Ideograph */ + [0x9651, 0x9651], /* CJK Ideograph */ + [0x9652, 0x9652], /* CJK Ideograph */ + [0x9653, 0x9653], /* CJK Ideograph */ + [0x9654, 0x9654], /* CJK Ideograph */ + [0x9655, 0x9655], /* CJK Ideograph */ + [0x9656, 0x9656], /* CJK Ideograph */ + [0x9657, 0x9657], /* CJK Ideograph */ + [0x9658, 0x9658], /* CJK Ideograph */ + [0x9659, 0x9659], /* CJK Ideograph */ + [0x965a, 0x965a], /* CJK Ideograph */ + [0x965b, 0x965b], /* CJK Ideograph */ + [0x965c, 0x965c], /* CJK Ideograph */ + [0x965d, 0x965d], /* CJK Ideograph */ + [0x965e, 0x965e], /* CJK Ideograph */ + [0x965f, 0x965f], /* CJK Ideograph */ + [0x9660, 0x9660], /* CJK Ideograph */ + [0x9661, 0x9661], /* CJK Ideograph */ + [0x9662, 0x9662], /* CJK Ideograph */ + [0x9663, 0x9663], /* CJK Ideograph */ + [0x9664, 0x9664], /* CJK Ideograph */ + [0x9665, 0x9665], /* CJK Ideograph */ + [0x9666, 0x9666], /* CJK Ideograph */ + [0x9667, 0x9667], /* CJK Ideograph */ + [0x9668, 0x9668], /* CJK Ideograph */ + [0x9669, 0x9669], /* CJK Ideograph */ + [0x966a, 0x966a], /* CJK Ideograph */ + [0x966b, 0x966b], /* CJK Ideograph */ + [0x966c, 0x966c], /* CJK Ideograph */ + [0x966d, 0x966d], /* CJK Ideograph */ + [0x966e, 0x966e], /* CJK Ideograph */ + [0x966f, 0x966f], /* CJK Ideograph */ + [0x9670, 0x9670], /* CJK Ideograph */ + [0x9671, 0x9671], /* CJK Ideograph */ + [0x9672, 0x9672], /* CJK Ideograph */ + [0x9673, 0x9673], /* CJK Ideograph */ + [0x9674, 0x9674], /* CJK Ideograph */ + [0x9675, 0x9675], /* CJK Ideograph */ + [0x9676, 0x9676], /* CJK Ideograph */ + [0x9677, 0x9677], /* CJK Ideograph */ + [0x9678, 0x9678], /* CJK Ideograph */ + [0x9679, 0x9679], /* CJK Ideograph */ + [0x967a, 0x967a], /* CJK Ideograph */ + [0x967b, 0x967b], /* CJK Ideograph */ + [0x967c, 0x967c], /* CJK Ideograph */ + [0x967d, 0x967d], /* CJK Ideograph */ + [0x967e, 0x967e], /* CJK Ideograph */ + [0x967f, 0x967f], /* CJK Ideograph */ + [0x9680, 0x9680], /* CJK Ideograph */ + [0x9681, 0x9681], /* CJK Ideograph */ + [0x9682, 0x9682], /* CJK Ideograph */ + [0x9683, 0x9683], /* CJK Ideograph */ + [0x9684, 0x9684], /* CJK Ideograph */ + [0x9685, 0x9685], /* CJK Ideograph */ + [0x9686, 0x9686], /* CJK Ideograph */ + [0x9687, 0x9687], /* CJK Ideograph */ + [0x9688, 0x9688], /* CJK Ideograph */ + [0x9689, 0x9689], /* CJK Ideograph */ + [0x968a, 0x968a], /* CJK Ideograph */ + [0x968b, 0x968b], /* CJK Ideograph */ + [0x968c, 0x968c], /* CJK Ideograph */ + [0x968d, 0x968d], /* CJK Ideograph */ + [0x968e, 0x968e], /* CJK Ideograph */ + [0x968f, 0x968f], /* CJK Ideograph */ + [0x9690, 0x9690], /* CJK Ideograph */ + [0x9691, 0x9691], /* CJK Ideograph */ + [0x9692, 0x9692], /* CJK Ideograph */ + [0x9693, 0x9693], /* CJK Ideograph */ + [0x9694, 0x9694], /* CJK Ideograph */ + [0x9695, 0x9695], /* CJK Ideograph */ + [0x9696, 0x9696], /* CJK Ideograph */ + [0x9697, 0x9697], /* CJK Ideograph */ + [0x9698, 0x9698], /* CJK Ideograph */ + [0x9699, 0x9699], /* CJK Ideograph */ + [0x969a, 0x969a], /* CJK Ideograph */ + [0x969b, 0x969b], /* CJK Ideograph */ + [0x969c, 0x969c], /* CJK Ideograph */ + [0x969d, 0x969d], /* CJK Ideograph */ + [0x969e, 0x969e], /* CJK Ideograph */ + [0x969f, 0x969f], /* CJK Ideograph */ + [0x96a0, 0x96a0], /* CJK Ideograph */ + [0x96a1, 0x96a1], /* CJK Ideograph */ + [0x96a2, 0x96a2], /* CJK Ideograph */ + [0x96a3, 0x96a3], /* CJK Ideograph */ + [0x96a4, 0x96a4], /* CJK Ideograph */ + [0x96a5, 0x96a5], /* CJK Ideograph */ + [0x96a6, 0x96a6], /* CJK Ideograph */ + [0x96a7, 0x96a7], /* CJK Ideograph */ + [0x96a8, 0x96a8], /* CJK Ideograph */ + [0x96a9, 0x96a9], /* CJK Ideograph */ + [0x96aa, 0x96aa], /* CJK Ideograph */ + [0x96ab, 0x96ab], /* CJK Ideograph */ + [0x96ac, 0x96ac], /* CJK Ideograph */ + [0x96ad, 0x96ad], /* CJK Ideograph */ + [0x96ae, 0x96ae], /* CJK Ideograph */ + [0x96af, 0x96af], /* CJK Ideograph */ + [0x96b0, 0x96b0], /* CJK Ideograph */ + [0x96b1, 0x96b1], /* CJK Ideograph */ + [0x96b2, 0x96b2], /* CJK Ideograph */ + [0x96b3, 0x96b3], /* CJK Ideograph */ + [0x96b4, 0x96b4], /* CJK Ideograph */ + [0x96b5, 0x96b5], /* CJK Ideograph */ + [0x96b6, 0x96b6], /* CJK Ideograph */ + [0x96b7, 0x96b7], /* CJK Ideograph */ + [0x96b8, 0x96b8], /* CJK Ideograph */ + [0x96b9, 0x96b9], /* CJK Ideograph */ + [0x96ba, 0x96ba], /* CJK Ideograph */ + [0x96bb, 0x96bb], /* CJK Ideograph */ + [0x96bc, 0x96bc], /* CJK Ideograph */ + [0x96bd, 0x96bd], /* CJK Ideograph */ + [0x96be, 0x96be], /* CJK Ideograph */ + [0x96bf, 0x96bf], /* CJK Ideograph */ + [0x96c0, 0x96c0], /* CJK Ideograph */ + [0x96c1, 0x96c1], /* CJK Ideograph */ + [0x96c2, 0x96c2], /* CJK Ideograph */ + [0x96c3, 0x96c3], /* CJK Ideograph */ + [0x96c4, 0x96c4], /* CJK Ideograph */ + [0x96c5, 0x96c5], /* CJK Ideograph */ + [0x96c6, 0x96c6], /* CJK Ideograph */ + [0x96c7, 0x96c7], /* CJK Ideograph */ + [0x96c8, 0x96c8], /* CJK Ideograph */ + [0x96c9, 0x96c9], /* CJK Ideograph */ + [0x96ca, 0x96ca], /* CJK Ideograph */ + [0x96cb, 0x96cb], /* CJK Ideograph */ + [0x96cc, 0x96cc], /* CJK Ideograph */ + [0x96cd, 0x96cd], /* CJK Ideograph */ + [0x96ce, 0x96ce], /* CJK Ideograph */ + [0x96cf, 0x96cf], /* CJK Ideograph */ + [0x96d0, 0x96d0], /* CJK Ideograph */ + [0x96d1, 0x96d1], /* CJK Ideograph */ + [0x96d2, 0x96d2], /* CJK Ideograph */ + [0x96d3, 0x96d3], /* CJK Ideograph */ + [0x96d4, 0x96d4], /* CJK Ideograph */ + [0x96d5, 0x96d5], /* CJK Ideograph */ + [0x96d6, 0x96d6], /* CJK Ideograph */ + [0x96d7, 0x96d7], /* CJK Ideograph */ + [0x96d8, 0x96d8], /* CJK Ideograph */ + [0x96d9, 0x96d9], /* CJK Ideograph */ + [0x96da, 0x96da], /* CJK Ideograph */ + [0x96db, 0x96db], /* CJK Ideograph */ + [0x96dc, 0x96dc], /* CJK Ideograph */ + [0x96dd, 0x96dd], /* CJK Ideograph */ + [0x96de, 0x96de], /* CJK Ideograph */ + [0x96df, 0x96df], /* CJK Ideograph */ + [0x96e0, 0x96e0], /* CJK Ideograph */ + [0x96e1, 0x96e1], /* CJK Ideograph */ + [0x96e2, 0x96e2], /* CJK Ideograph */ + [0x96e3, 0x96e3], /* CJK Ideograph */ + [0x96e4, 0x96e4], /* CJK Ideograph */ + [0x96e5, 0x96e5], /* CJK Ideograph */ + [0x96e6, 0x96e6], /* CJK Ideograph */ + [0x96e7, 0x96e7], /* CJK Ideograph */ + [0x96e8, 0x96e8], /* CJK Ideograph */ + [0x96e9, 0x96e9], /* CJK Ideograph */ + [0x96ea, 0x96ea], /* CJK Ideograph */ + [0x96eb, 0x96eb], /* CJK Ideograph */ + [0x96ec, 0x96ec], /* CJK Ideograph */ + [0x96ed, 0x96ed], /* CJK Ideograph */ + [0x96ee, 0x96ee], /* CJK Ideograph */ + [0x96ef, 0x96ef], /* CJK Ideograph */ + [0x96f0, 0x96f0], /* CJK Ideograph */ + [0x96f1, 0x96f1], /* CJK Ideograph */ + [0x96f2, 0x96f2], /* CJK Ideograph */ + [0x96f3, 0x96f3], /* CJK Ideograph */ + [0x96f4, 0x96f4], /* CJK Ideograph */ + [0x96f5, 0x96f5], /* CJK Ideograph */ + [0x96f6, 0x96f6], /* CJK Ideograph */ + [0x96f7, 0x96f7], /* CJK Ideograph */ + [0x96f8, 0x96f8], /* CJK Ideograph */ + [0x96f9, 0x96f9], /* CJK Ideograph */ + [0x96fa, 0x96fa], /* CJK Ideograph */ + [0x96fb, 0x96fb], /* CJK Ideograph */ + [0x96fc, 0x96fc], /* CJK Ideograph */ + [0x96fd, 0x96fd], /* CJK Ideograph */ + [0x96fe, 0x96fe], /* CJK Ideograph */ + [0x96ff, 0x96ff], /* CJK Ideograph */ + [0x9700, 0x9700], /* CJK Ideograph */ + [0x9701, 0x9701], /* CJK Ideograph */ + [0x9702, 0x9702], /* CJK Ideograph */ + [0x9703, 0x9703], /* CJK Ideograph */ + [0x9704, 0x9704], /* CJK Ideograph */ + [0x9705, 0x9705], /* CJK Ideograph */ + [0x9706, 0x9706], /* CJK Ideograph */ + [0x9707, 0x9707], /* CJK Ideograph */ + [0x9708, 0x9708], /* CJK Ideograph */ + [0x9709, 0x9709], /* CJK Ideograph */ + [0x970a, 0x970a], /* CJK Ideograph */ + [0x970b, 0x970b], /* CJK Ideograph */ + [0x970c, 0x970c], /* CJK Ideograph */ + [0x970d, 0x970d], /* CJK Ideograph */ + [0x970e, 0x970e], /* CJK Ideograph */ + [0x970f, 0x970f], /* CJK Ideograph */ + [0x9710, 0x9710], /* CJK Ideograph */ + [0x9711, 0x9711], /* CJK Ideograph */ + [0x9712, 0x9712], /* CJK Ideograph */ + [0x9713, 0x9713], /* CJK Ideograph */ + [0x9714, 0x9714], /* CJK Ideograph */ + [0x9715, 0x9715], /* CJK Ideograph */ + [0x9716, 0x9716], /* CJK Ideograph */ + [0x9717, 0x9717], /* CJK Ideograph */ + [0x9718, 0x9718], /* CJK Ideograph */ + [0x9719, 0x9719], /* CJK Ideograph */ + [0x971a, 0x971a], /* CJK Ideograph */ + [0x971b, 0x971b], /* CJK Ideograph */ + [0x971c, 0x971c], /* CJK Ideograph */ + [0x971d, 0x971d], /* CJK Ideograph */ + [0x971e, 0x971e], /* CJK Ideograph */ + [0x971f, 0x971f], /* CJK Ideograph */ + [0x9720, 0x9720], /* CJK Ideograph */ + [0x9721, 0x9721], /* CJK Ideograph */ + [0x9722, 0x9722], /* CJK Ideograph */ + [0x9723, 0x9723], /* CJK Ideograph */ + [0x9724, 0x9724], /* CJK Ideograph */ + [0x9725, 0x9725], /* CJK Ideograph */ + [0x9726, 0x9726], /* CJK Ideograph */ + [0x9727, 0x9727], /* CJK Ideograph */ + [0x9728, 0x9728], /* CJK Ideograph */ + [0x9729, 0x9729], /* CJK Ideograph */ + [0x972a, 0x972a], /* CJK Ideograph */ + [0x972b, 0x972b], /* CJK Ideograph */ + [0x972c, 0x972c], /* CJK Ideograph */ + [0x972d, 0x972d], /* CJK Ideograph */ + [0x972e, 0x972e], /* CJK Ideograph */ + [0x972f, 0x972f], /* CJK Ideograph */ + [0x9730, 0x9730], /* CJK Ideograph */ + [0x9731, 0x9731], /* CJK Ideograph */ + [0x9732, 0x9732], /* CJK Ideograph */ + [0x9733, 0x9733], /* CJK Ideograph */ + [0x9734, 0x9734], /* CJK Ideograph */ + [0x9735, 0x9735], /* CJK Ideograph */ + [0x9736, 0x9736], /* CJK Ideograph */ + [0x9737, 0x9737], /* CJK Ideograph */ + [0x9738, 0x9738], /* CJK Ideograph */ + [0x9739, 0x9739], /* CJK Ideograph */ + [0x973a, 0x973a], /* CJK Ideograph */ + [0x973b, 0x973b], /* CJK Ideograph */ + [0x973c, 0x973c], /* CJK Ideograph */ + [0x973d, 0x973d], /* CJK Ideograph */ + [0x973e, 0x973e], /* CJK Ideograph */ + [0x973f, 0x973f], /* CJK Ideograph */ + [0x9740, 0x9740], /* CJK Ideograph */ + [0x9741, 0x9741], /* CJK Ideograph */ + [0x9742, 0x9742], /* CJK Ideograph */ + [0x9743, 0x9743], /* CJK Ideograph */ + [0x9744, 0x9744], /* CJK Ideograph */ + [0x9745, 0x9745], /* CJK Ideograph */ + [0x9746, 0x9746], /* CJK Ideograph */ + [0x9747, 0x9747], /* CJK Ideograph */ + [0x9748, 0x9748], /* CJK Ideograph */ + [0x9749, 0x9749], /* CJK Ideograph */ + [0x974a, 0x974a], /* CJK Ideograph */ + [0x974b, 0x974b], /* CJK Ideograph */ + [0x974c, 0x974c], /* CJK Ideograph */ + [0x974d, 0x974d], /* CJK Ideograph */ + [0x974e, 0x974e], /* CJK Ideograph */ + [0x974f, 0x974f], /* CJK Ideograph */ + [0x9750, 0x9750], /* CJK Ideograph */ + [0x9751, 0x9751], /* CJK Ideograph */ + [0x9752, 0x9752], /* CJK Ideograph */ + [0x9753, 0x9753], /* CJK Ideograph */ + [0x9754, 0x9754], /* CJK Ideograph */ + [0x9755, 0x9755], /* CJK Ideograph */ + [0x9756, 0x9756], /* CJK Ideograph */ + [0x9757, 0x9757], /* CJK Ideograph */ + [0x9758, 0x9758], /* CJK Ideograph */ + [0x9759, 0x9759], /* CJK Ideograph */ + [0x975a, 0x975a], /* CJK Ideograph */ + [0x975b, 0x975b], /* CJK Ideograph */ + [0x975c, 0x975c], /* CJK Ideograph */ + [0x975d, 0x975d], /* CJK Ideograph */ + [0x975e, 0x975e], /* CJK Ideograph */ + [0x975f, 0x975f], /* CJK Ideograph */ + [0x9760, 0x9760], /* CJK Ideograph */ + [0x9761, 0x9761], /* CJK Ideograph */ + [0x9762, 0x9762], /* CJK Ideograph */ + [0x9763, 0x9763], /* CJK Ideograph */ + [0x9764, 0x9764], /* CJK Ideograph */ + [0x9765, 0x9765], /* CJK Ideograph */ + [0x9766, 0x9766], /* CJK Ideograph */ + [0x9767, 0x9767], /* CJK Ideograph */ + [0x9768, 0x9768], /* CJK Ideograph */ + [0x9769, 0x9769], /* CJK Ideograph */ + [0x976a, 0x976a], /* CJK Ideograph */ + [0x976b, 0x976b], /* CJK Ideograph */ + [0x976c, 0x976c], /* CJK Ideograph */ + [0x976d, 0x976d], /* CJK Ideograph */ + [0x976e, 0x976e], /* CJK Ideograph */ + [0x976f, 0x976f], /* CJK Ideograph */ + [0x9770, 0x9770], /* CJK Ideograph */ + [0x9771, 0x9771], /* CJK Ideograph */ + [0x9772, 0x9772], /* CJK Ideograph */ + [0x9773, 0x9773], /* CJK Ideograph */ + [0x9774, 0x9774], /* CJK Ideograph */ + [0x9775, 0x9775], /* CJK Ideograph */ + [0x9776, 0x9776], /* CJK Ideograph */ + [0x9777, 0x9777], /* CJK Ideograph */ + [0x9778, 0x9778], /* CJK Ideograph */ + [0x9779, 0x9779], /* CJK Ideograph */ + [0x977a, 0x977a], /* CJK Ideograph */ + [0x977b, 0x977b], /* CJK Ideograph */ + [0x977c, 0x977c], /* CJK Ideograph */ + [0x977d, 0x977d], /* CJK Ideograph */ + [0x977e, 0x977e], /* CJK Ideograph */ + [0x977f, 0x977f], /* CJK Ideograph */ + [0x9780, 0x9780], /* CJK Ideograph */ + [0x9781, 0x9781], /* CJK Ideograph */ + [0x9782, 0x9782], /* CJK Ideograph */ + [0x9783, 0x9783], /* CJK Ideograph */ + [0x9784, 0x9784], /* CJK Ideograph */ + [0x9785, 0x9785], /* CJK Ideograph */ + [0x9786, 0x9786], /* CJK Ideograph */ + [0x9787, 0x9787], /* CJK Ideograph */ + [0x9788, 0x9788], /* CJK Ideograph */ + [0x9789, 0x9789], /* CJK Ideograph */ + [0x978a, 0x978a], /* CJK Ideograph */ + [0x978b, 0x978b], /* CJK Ideograph */ + [0x978c, 0x978c], /* CJK Ideograph */ + [0x978d, 0x978d], /* CJK Ideograph */ + [0x978e, 0x978e], /* CJK Ideograph */ + [0x978f, 0x978f], /* CJK Ideograph */ + [0x9790, 0x9790], /* CJK Ideograph */ + [0x9791, 0x9791], /* CJK Ideograph */ + [0x9792, 0x9792], /* CJK Ideograph */ + [0x9793, 0x9793], /* CJK Ideograph */ + [0x9794, 0x9794], /* CJK Ideograph */ + [0x9795, 0x9795], /* CJK Ideograph */ + [0x9796, 0x9796], /* CJK Ideograph */ + [0x9797, 0x9797], /* CJK Ideograph */ + [0x9798, 0x9798], /* CJK Ideograph */ + [0x9799, 0x9799], /* CJK Ideograph */ + [0x979a, 0x979a], /* CJK Ideograph */ + [0x979b, 0x979b], /* CJK Ideograph */ + [0x979c, 0x979c], /* CJK Ideograph */ + [0x979d, 0x979d], /* CJK Ideograph */ + [0x979e, 0x979e], /* CJK Ideograph */ + [0x979f, 0x979f], /* CJK Ideograph */ + [0x97a0, 0x97a0], /* CJK Ideograph */ + [0x97a1, 0x97a1], /* CJK Ideograph */ + [0x97a2, 0x97a2], /* CJK Ideograph */ + [0x97a3, 0x97a3], /* CJK Ideograph */ + [0x97a4, 0x97a4], /* CJK Ideograph */ + [0x97a5, 0x97a5], /* CJK Ideograph */ + [0x97a6, 0x97a6], /* CJK Ideograph */ + [0x97a7, 0x97a7], /* CJK Ideograph */ + [0x97a8, 0x97a8], /* CJK Ideograph */ + [0x97a9, 0x97a9], /* CJK Ideograph */ + [0x97aa, 0x97aa], /* CJK Ideograph */ + [0x97ab, 0x97ab], /* CJK Ideograph */ + [0x97ac, 0x97ac], /* CJK Ideograph */ + [0x97ad, 0x97ad], /* CJK Ideograph */ + [0x97ae, 0x97ae], /* CJK Ideograph */ + [0x97af, 0x97af], /* CJK Ideograph */ + [0x97b0, 0x97b0], /* CJK Ideograph */ + [0x97b1, 0x97b1], /* CJK Ideograph */ + [0x97b2, 0x97b2], /* CJK Ideograph */ + [0x97b3, 0x97b3], /* CJK Ideograph */ + [0x97b4, 0x97b4], /* CJK Ideograph */ + [0x97b5, 0x97b5], /* CJK Ideograph */ + [0x97b6, 0x97b6], /* CJK Ideograph */ + [0x97b7, 0x97b7], /* CJK Ideograph */ + [0x97b8, 0x97b8], /* CJK Ideograph */ + [0x97b9, 0x97b9], /* CJK Ideograph */ + [0x97ba, 0x97ba], /* CJK Ideograph */ + [0x97bb, 0x97bb], /* CJK Ideograph */ + [0x97bc, 0x97bc], /* CJK Ideograph */ + [0x97bd, 0x97bd], /* CJK Ideograph */ + [0x97be, 0x97be], /* CJK Ideograph */ + [0x97bf, 0x97bf], /* CJK Ideograph */ + [0x97c0, 0x97c0], /* CJK Ideograph */ + [0x97c1, 0x97c1], /* CJK Ideograph */ + [0x97c2, 0x97c2], /* CJK Ideograph */ + [0x97c3, 0x97c3], /* CJK Ideograph */ + [0x97c4, 0x97c4], /* CJK Ideograph */ + [0x97c5, 0x97c5], /* CJK Ideograph */ + [0x97c6, 0x97c6], /* CJK Ideograph */ + [0x97c7, 0x97c7], /* CJK Ideograph */ + [0x97c8, 0x97c8], /* CJK Ideograph */ + [0x97c9, 0x97c9], /* CJK Ideograph */ + [0x97ca, 0x97ca], /* CJK Ideograph */ + [0x97cb, 0x97cb], /* CJK Ideograph */ + [0x97cc, 0x97cc], /* CJK Ideograph */ + [0x97cd, 0x97cd], /* CJK Ideograph */ + [0x97ce, 0x97ce], /* CJK Ideograph */ + [0x97cf, 0x97cf], /* CJK Ideograph */ + [0x97d0, 0x97d0], /* CJK Ideograph */ + [0x97d1, 0x97d1], /* CJK Ideograph */ + [0x97d2, 0x97d2], /* CJK Ideograph */ + [0x97d3, 0x97d3], /* CJK Ideograph */ + [0x97d4, 0x97d4], /* CJK Ideograph */ + [0x97d5, 0x97d5], /* CJK Ideograph */ + [0x97d6, 0x97d6], /* CJK Ideograph */ + [0x97d7, 0x97d7], /* CJK Ideograph */ + [0x97d8, 0x97d8], /* CJK Ideograph */ + [0x97d9, 0x97d9], /* CJK Ideograph */ + [0x97da, 0x97da], /* CJK Ideograph */ + [0x97db, 0x97db], /* CJK Ideograph */ + [0x97dc, 0x97dc], /* CJK Ideograph */ + [0x97dd, 0x97dd], /* CJK Ideograph */ + [0x97de, 0x97de], /* CJK Ideograph */ + [0x97df, 0x97df], /* CJK Ideograph */ + [0x97e0, 0x97e0], /* CJK Ideograph */ + [0x97e1, 0x97e1], /* CJK Ideograph */ + [0x97e2, 0x97e2], /* CJK Ideograph */ + [0x97e3, 0x97e3], /* CJK Ideograph */ + [0x97e4, 0x97e4], /* CJK Ideograph */ + [0x97e5, 0x97e5], /* CJK Ideograph */ + [0x97e6, 0x97e6], /* CJK Ideograph */ + [0x97e7, 0x97e7], /* CJK Ideograph */ + [0x97e8, 0x97e8], /* CJK Ideograph */ + [0x97e9, 0x97e9], /* CJK Ideograph */ + [0x97ea, 0x97ea], /* CJK Ideograph */ + [0x97eb, 0x97eb], /* CJK Ideograph */ + [0x97ec, 0x97ec], /* CJK Ideograph */ + [0x97ed, 0x97ed], /* CJK Ideograph */ + [0x97ee, 0x97ee], /* CJK Ideograph */ + [0x97ef, 0x97ef], /* CJK Ideograph */ + [0x97f0, 0x97f0], /* CJK Ideograph */ + [0x97f1, 0x97f1], /* CJK Ideograph */ + [0x97f2, 0x97f2], /* CJK Ideograph */ + [0x97f3, 0x97f3], /* CJK Ideograph */ + [0x97f4, 0x97f4], /* CJK Ideograph */ + [0x97f5, 0x97f5], /* CJK Ideograph */ + [0x97f6, 0x97f6], /* CJK Ideograph */ + [0x97f7, 0x97f7], /* CJK Ideograph */ + [0x97f8, 0x97f8], /* CJK Ideograph */ + [0x97f9, 0x97f9], /* CJK Ideograph */ + [0x97fa, 0x97fa], /* CJK Ideograph */ + [0x97fb, 0x97fb], /* CJK Ideograph */ + [0x97fc, 0x97fc], /* CJK Ideograph */ + [0x97fd, 0x97fd], /* CJK Ideograph */ + [0x97fe, 0x97fe], /* CJK Ideograph */ + [0x97ff, 0x97ff], /* CJK Ideograph */ + [0x9800, 0x9800], /* CJK Ideograph */ + [0x9801, 0x9801], /* CJK Ideograph */ + [0x9802, 0x9802], /* CJK Ideograph */ + [0x9803, 0x9803], /* CJK Ideograph */ + [0x9804, 0x9804], /* CJK Ideograph */ + [0x9805, 0x9805], /* CJK Ideograph */ + [0x9806, 0x9806], /* CJK Ideograph */ + [0x9807, 0x9807], /* CJK Ideograph */ + [0x9808, 0x9808], /* CJK Ideograph */ + [0x9809, 0x9809], /* CJK Ideograph */ + [0x980a, 0x980a], /* CJK Ideograph */ + [0x980b, 0x980b], /* CJK Ideograph */ + [0x980c, 0x980c], /* CJK Ideograph */ + [0x980d, 0x980d], /* CJK Ideograph */ + [0x980e, 0x980e], /* CJK Ideograph */ + [0x980f, 0x980f], /* CJK Ideograph */ + [0x9810, 0x9810], /* CJK Ideograph */ + [0x9811, 0x9811], /* CJK Ideograph */ + [0x9812, 0x9812], /* CJK Ideograph */ + [0x9813, 0x9813], /* CJK Ideograph */ + [0x9814, 0x9814], /* CJK Ideograph */ + [0x9815, 0x9815], /* CJK Ideograph */ + [0x9816, 0x9816], /* CJK Ideograph */ + [0x9817, 0x9817], /* CJK Ideograph */ + [0x9818, 0x9818], /* CJK Ideograph */ + [0x9819, 0x9819], /* CJK Ideograph */ + [0x981a, 0x981a], /* CJK Ideograph */ + [0x981b, 0x981b], /* CJK Ideograph */ + [0x981c, 0x981c], /* CJK Ideograph */ + [0x981d, 0x981d], /* CJK Ideograph */ + [0x981e, 0x981e], /* CJK Ideograph */ + [0x981f, 0x981f], /* CJK Ideograph */ + [0x9820, 0x9820], /* CJK Ideograph */ + [0x9821, 0x9821], /* CJK Ideograph */ + [0x9822, 0x9822], /* CJK Ideograph */ + [0x9823, 0x9823], /* CJK Ideograph */ + [0x9824, 0x9824], /* CJK Ideograph */ + [0x9825, 0x9825], /* CJK Ideograph */ + [0x9826, 0x9826], /* CJK Ideograph */ + [0x9827, 0x9827], /* CJK Ideograph */ + [0x9828, 0x9828], /* CJK Ideograph */ + [0x9829, 0x9829], /* CJK Ideograph */ + [0x982a, 0x982a], /* CJK Ideograph */ + [0x982b, 0x982b], /* CJK Ideograph */ + [0x982c, 0x982c], /* CJK Ideograph */ + [0x982d, 0x982d], /* CJK Ideograph */ + [0x982e, 0x982e], /* CJK Ideograph */ + [0x982f, 0x982f], /* CJK Ideograph */ + [0x9830, 0x9830], /* CJK Ideograph */ + [0x9831, 0x9831], /* CJK Ideograph */ + [0x9832, 0x9832], /* CJK Ideograph */ + [0x9833, 0x9833], /* CJK Ideograph */ + [0x9834, 0x9834], /* CJK Ideograph */ + [0x9835, 0x9835], /* CJK Ideograph */ + [0x9836, 0x9836], /* CJK Ideograph */ + [0x9837, 0x9837], /* CJK Ideograph */ + [0x9838, 0x9838], /* CJK Ideograph */ + [0x9839, 0x9839], /* CJK Ideograph */ + [0x983a, 0x983a], /* CJK Ideograph */ + [0x983b, 0x983b], /* CJK Ideograph */ + [0x983c, 0x983c], /* CJK Ideograph */ + [0x983d, 0x983d], /* CJK Ideograph */ + [0x983e, 0x983e], /* CJK Ideograph */ + [0x983f, 0x983f], /* CJK Ideograph */ + [0x9840, 0x9840], /* CJK Ideograph */ + [0x9841, 0x9841], /* CJK Ideograph */ + [0x9842, 0x9842], /* CJK Ideograph */ + [0x9843, 0x9843], /* CJK Ideograph */ + [0x9844, 0x9844], /* CJK Ideograph */ + [0x9845, 0x9845], /* CJK Ideograph */ + [0x9846, 0x9846], /* CJK Ideograph */ + [0x9847, 0x9847], /* CJK Ideograph */ + [0x9848, 0x9848], /* CJK Ideograph */ + [0x9849, 0x9849], /* CJK Ideograph */ + [0x984a, 0x984a], /* CJK Ideograph */ + [0x984b, 0x984b], /* CJK Ideograph */ + [0x984c, 0x984c], /* CJK Ideograph */ + [0x984d, 0x984d], /* CJK Ideograph */ + [0x984e, 0x984e], /* CJK Ideograph */ + [0x984f, 0x984f], /* CJK Ideograph */ + [0x9850, 0x9850], /* CJK Ideograph */ + [0x9851, 0x9851], /* CJK Ideograph */ + [0x9852, 0x9852], /* CJK Ideograph */ + [0x9853, 0x9853], /* CJK Ideograph */ + [0x9854, 0x9854], /* CJK Ideograph */ + [0x9855, 0x9855], /* CJK Ideograph */ + [0x9856, 0x9856], /* CJK Ideograph */ + [0x9857, 0x9857], /* CJK Ideograph */ + [0x9858, 0x9858], /* CJK Ideograph */ + [0x9859, 0x9859], /* CJK Ideograph */ + [0x985a, 0x985a], /* CJK Ideograph */ + [0x985b, 0x985b], /* CJK Ideograph */ + [0x985c, 0x985c], /* CJK Ideograph */ + [0x985d, 0x985d], /* CJK Ideograph */ + [0x985e, 0x985e], /* CJK Ideograph */ + [0x985f, 0x985f], /* CJK Ideograph */ + [0x9860, 0x9860], /* CJK Ideograph */ + [0x9861, 0x9861], /* CJK Ideograph */ + [0x9862, 0x9862], /* CJK Ideograph */ + [0x9863, 0x9863], /* CJK Ideograph */ + [0x9864, 0x9864], /* CJK Ideograph */ + [0x9865, 0x9865], /* CJK Ideograph */ + [0x9866, 0x9866], /* CJK Ideograph */ + [0x9867, 0x9867], /* CJK Ideograph */ + [0x9868, 0x9868], /* CJK Ideograph */ + [0x9869, 0x9869], /* CJK Ideograph */ + [0x986a, 0x986a], /* CJK Ideograph */ + [0x986b, 0x986b], /* CJK Ideograph */ + [0x986c, 0x986c], /* CJK Ideograph */ + [0x986d, 0x986d], /* CJK Ideograph */ + [0x986e, 0x986e], /* CJK Ideograph */ + [0x986f, 0x986f], /* CJK Ideograph */ + [0x9870, 0x9870], /* CJK Ideograph */ + [0x9871, 0x9871], /* CJK Ideograph */ + [0x9872, 0x9872], /* CJK Ideograph */ + [0x9873, 0x9873], /* CJK Ideograph */ + [0x9874, 0x9874], /* CJK Ideograph */ + [0x9875, 0x9875], /* CJK Ideograph */ + [0x9876, 0x9876], /* CJK Ideograph */ + [0x9877, 0x9877], /* CJK Ideograph */ + [0x9878, 0x9878], /* CJK Ideograph */ + [0x9879, 0x9879], /* CJK Ideograph */ + [0x987a, 0x987a], /* CJK Ideograph */ + [0x987b, 0x987b], /* CJK Ideograph */ + [0x987c, 0x987c], /* CJK Ideograph */ + [0x987d, 0x987d], /* CJK Ideograph */ + [0x987e, 0x987e], /* CJK Ideograph */ + [0x987f, 0x987f], /* CJK Ideograph */ + [0x9880, 0x9880], /* CJK Ideograph */ + [0x9881, 0x9881], /* CJK Ideograph */ + [0x9882, 0x9882], /* CJK Ideograph */ + [0x9883, 0x9883], /* CJK Ideograph */ + [0x9884, 0x9884], /* CJK Ideograph */ + [0x9885, 0x9885], /* CJK Ideograph */ + [0x9886, 0x9886], /* CJK Ideograph */ + [0x9887, 0x9887], /* CJK Ideograph */ + [0x9888, 0x9888], /* CJK Ideograph */ + [0x9889, 0x9889], /* CJK Ideograph */ + [0x988a, 0x988a], /* CJK Ideograph */ + [0x988b, 0x988b], /* CJK Ideograph */ + [0x988c, 0x988c], /* CJK Ideograph */ + [0x988d, 0x988d], /* CJK Ideograph */ + [0x988e, 0x988e], /* CJK Ideograph */ + [0x988f, 0x988f], /* CJK Ideograph */ + [0x9890, 0x9890], /* CJK Ideograph */ + [0x9891, 0x9891], /* CJK Ideograph */ + [0x9892, 0x9892], /* CJK Ideograph */ + [0x9893, 0x9893], /* CJK Ideograph */ + [0x9894, 0x9894], /* CJK Ideograph */ + [0x9895, 0x9895], /* CJK Ideograph */ + [0x9896, 0x9896], /* CJK Ideograph */ + [0x9897, 0x9897], /* CJK Ideograph */ + [0x9898, 0x9898], /* CJK Ideograph */ + [0x9899, 0x9899], /* CJK Ideograph */ + [0x989a, 0x989a], /* CJK Ideograph */ + [0x989b, 0x989b], /* CJK Ideograph */ + [0x989c, 0x989c], /* CJK Ideograph */ + [0x989d, 0x989d], /* CJK Ideograph */ + [0x989e, 0x989e], /* CJK Ideograph */ + [0x989f, 0x989f], /* CJK Ideograph */ + [0x98a0, 0x98a0], /* CJK Ideograph */ + [0x98a1, 0x98a1], /* CJK Ideograph */ + [0x98a2, 0x98a2], /* CJK Ideograph */ + [0x98a3, 0x98a3], /* CJK Ideograph */ + [0x98a4, 0x98a4], /* CJK Ideograph */ + [0x98a5, 0x98a5], /* CJK Ideograph */ + [0x98a6, 0x98a6], /* CJK Ideograph */ + [0x98a7, 0x98a7], /* CJK Ideograph */ + [0x98a8, 0x98a8], /* CJK Ideograph */ + [0x98a9, 0x98a9], /* CJK Ideograph */ + [0x98aa, 0x98aa], /* CJK Ideograph */ + [0x98ab, 0x98ab], /* CJK Ideograph */ + [0x98ac, 0x98ac], /* CJK Ideograph */ + [0x98ad, 0x98ad], /* CJK Ideograph */ + [0x98ae, 0x98ae], /* CJK Ideograph */ + [0x98af, 0x98af], /* CJK Ideograph */ + [0x98b0, 0x98b0], /* CJK Ideograph */ + [0x98b1, 0x98b1], /* CJK Ideograph */ + [0x98b2, 0x98b2], /* CJK Ideograph */ + [0x98b3, 0x98b3], /* CJK Ideograph */ + [0x98b4, 0x98b4], /* CJK Ideograph */ + [0x98b5, 0x98b5], /* CJK Ideograph */ + [0x98b6, 0x98b6], /* CJK Ideograph */ + [0x98b7, 0x98b7], /* CJK Ideograph */ + [0x98b8, 0x98b8], /* CJK Ideograph */ + [0x98b9, 0x98b9], /* CJK Ideograph */ + [0x98ba, 0x98ba], /* CJK Ideograph */ + [0x98bb, 0x98bb], /* CJK Ideograph */ + [0x98bc, 0x98bc], /* CJK Ideograph */ + [0x98bd, 0x98bd], /* CJK Ideograph */ + [0x98be, 0x98be], /* CJK Ideograph */ + [0x98bf, 0x98bf], /* CJK Ideograph */ + [0x98c0, 0x98c0], /* CJK Ideograph */ + [0x98c1, 0x98c1], /* CJK Ideograph */ + [0x98c2, 0x98c2], /* CJK Ideograph */ + [0x98c3, 0x98c3], /* CJK Ideograph */ + [0x98c4, 0x98c4], /* CJK Ideograph */ + [0x98c5, 0x98c5], /* CJK Ideograph */ + [0x98c6, 0x98c6], /* CJK Ideograph */ + [0x98c7, 0x98c7], /* CJK Ideograph */ + [0x98c8, 0x98c8], /* CJK Ideograph */ + [0x98c9, 0x98c9], /* CJK Ideograph */ + [0x98ca, 0x98ca], /* CJK Ideograph */ + [0x98cb, 0x98cb], /* CJK Ideograph */ + [0x98cc, 0x98cc], /* CJK Ideograph */ + [0x98cd, 0x98cd], /* CJK Ideograph */ + [0x98ce, 0x98ce], /* CJK Ideograph */ + [0x98cf, 0x98cf], /* CJK Ideograph */ + [0x98d0, 0x98d0], /* CJK Ideograph */ + [0x98d1, 0x98d1], /* CJK Ideograph */ + [0x98d2, 0x98d2], /* CJK Ideograph */ + [0x98d3, 0x98d3], /* CJK Ideograph */ + [0x98d4, 0x98d4], /* CJK Ideograph */ + [0x98d5, 0x98d5], /* CJK Ideograph */ + [0x98d6, 0x98d6], /* CJK Ideograph */ + [0x98d7, 0x98d7], /* CJK Ideograph */ + [0x98d8, 0x98d8], /* CJK Ideograph */ + [0x98d9, 0x98d9], /* CJK Ideograph */ + [0x98da, 0x98da], /* CJK Ideograph */ + [0x98db, 0x98db], /* CJK Ideograph */ + [0x98dc, 0x98dc], /* CJK Ideograph */ + [0x98dd, 0x98dd], /* CJK Ideograph */ + [0x98de, 0x98de], /* CJK Ideograph */ + [0x98df, 0x98df], /* CJK Ideograph */ + [0x98e0, 0x98e0], /* CJK Ideograph */ + [0x98e1, 0x98e1], /* CJK Ideograph */ + [0x98e2, 0x98e2], /* CJK Ideograph */ + [0x98e3, 0x98e3], /* CJK Ideograph */ + [0x98e4, 0x98e4], /* CJK Ideograph */ + [0x98e5, 0x98e5], /* CJK Ideograph */ + [0x98e6, 0x98e6], /* CJK Ideograph */ + [0x98e7, 0x98e7], /* CJK Ideograph */ + [0x98e8, 0x98e8], /* CJK Ideograph */ + [0x98e9, 0x98e9], /* CJK Ideograph */ + [0x98ea, 0x98ea], /* CJK Ideograph */ + [0x98eb, 0x98eb], /* CJK Ideograph */ + [0x98ec, 0x98ec], /* CJK Ideograph */ + [0x98ed, 0x98ed], /* CJK Ideograph */ + [0x98ee, 0x98ee], /* CJK Ideograph */ + [0x98ef, 0x98ef], /* CJK Ideograph */ + [0x98f0, 0x98f0], /* CJK Ideograph */ + [0x98f1, 0x98f1], /* CJK Ideograph */ + [0x98f2, 0x98f2], /* CJK Ideograph */ + [0x98f3, 0x98f3], /* CJK Ideograph */ + [0x98f4, 0x98f4], /* CJK Ideograph */ + [0x98f5, 0x98f5], /* CJK Ideograph */ + [0x98f6, 0x98f6], /* CJK Ideograph */ + [0x98f7, 0x98f7], /* CJK Ideograph */ + [0x98f8, 0x98f8], /* CJK Ideograph */ + [0x98f9, 0x98f9], /* CJK Ideograph */ + [0x98fa, 0x98fa], /* CJK Ideograph */ + [0x98fb, 0x98fb], /* CJK Ideograph */ + [0x98fc, 0x98fc], /* CJK Ideograph */ + [0x98fd, 0x98fd], /* CJK Ideograph */ + [0x98fe, 0x98fe], /* CJK Ideograph */ + [0x98ff, 0x98ff], /* CJK Ideograph */ + [0x9900, 0x9900], /* CJK Ideograph */ + [0x9901, 0x9901], /* CJK Ideograph */ + [0x9902, 0x9902], /* CJK Ideograph */ + [0x9903, 0x9903], /* CJK Ideograph */ + [0x9904, 0x9904], /* CJK Ideograph */ + [0x9905, 0x9905], /* CJK Ideograph */ + [0x9906, 0x9906], /* CJK Ideograph */ + [0x9907, 0x9907], /* CJK Ideograph */ + [0x9908, 0x9908], /* CJK Ideograph */ + [0x9909, 0x9909], /* CJK Ideograph */ + [0x990a, 0x990a], /* CJK Ideograph */ + [0x990b, 0x990b], /* CJK Ideograph */ + [0x990c, 0x990c], /* CJK Ideograph */ + [0x990d, 0x990d], /* CJK Ideograph */ + [0x990e, 0x990e], /* CJK Ideograph */ + [0x990f, 0x990f], /* CJK Ideograph */ + [0x9910, 0x9910], /* CJK Ideograph */ + [0x9911, 0x9911], /* CJK Ideograph */ + [0x9912, 0x9912], /* CJK Ideograph */ + [0x9913, 0x9913], /* CJK Ideograph */ + [0x9914, 0x9914], /* CJK Ideograph */ + [0x9915, 0x9915], /* CJK Ideograph */ + [0x9916, 0x9916], /* CJK Ideograph */ + [0x9917, 0x9917], /* CJK Ideograph */ + [0x9918, 0x9918], /* CJK Ideograph */ + [0x9919, 0x9919], /* CJK Ideograph */ + [0x991a, 0x991a], /* CJK Ideograph */ + [0x991b, 0x991b], /* CJK Ideograph */ + [0x991c, 0x991c], /* CJK Ideograph */ + [0x991d, 0x991d], /* CJK Ideograph */ + [0x991e, 0x991e], /* CJK Ideograph */ + [0x991f, 0x991f], /* CJK Ideograph */ + [0x9920, 0x9920], /* CJK Ideograph */ + [0x9921, 0x9921], /* CJK Ideograph */ + [0x9922, 0x9922], /* CJK Ideograph */ + [0x9923, 0x9923], /* CJK Ideograph */ + [0x9924, 0x9924], /* CJK Ideograph */ + [0x9925, 0x9925], /* CJK Ideograph */ + [0x9926, 0x9926], /* CJK Ideograph */ + [0x9927, 0x9927], /* CJK Ideograph */ + [0x9928, 0x9928], /* CJK Ideograph */ + [0x9929, 0x9929], /* CJK Ideograph */ + [0x992a, 0x992a], /* CJK Ideograph */ + [0x992b, 0x992b], /* CJK Ideograph */ + [0x992c, 0x992c], /* CJK Ideograph */ + [0x992d, 0x992d], /* CJK Ideograph */ + [0x992e, 0x992e], /* CJK Ideograph */ + [0x992f, 0x992f], /* CJK Ideograph */ + [0x9930, 0x9930], /* CJK Ideograph */ + [0x9931, 0x9931], /* CJK Ideograph */ + [0x9932, 0x9932], /* CJK Ideograph */ + [0x9933, 0x9933], /* CJK Ideograph */ + [0x9934, 0x9934], /* CJK Ideograph */ + [0x9935, 0x9935], /* CJK Ideograph */ + [0x9936, 0x9936], /* CJK Ideograph */ + [0x9937, 0x9937], /* CJK Ideograph */ + [0x9938, 0x9938], /* CJK Ideograph */ + [0x9939, 0x9939], /* CJK Ideograph */ + [0x993a, 0x993a], /* CJK Ideograph */ + [0x993b, 0x993b], /* CJK Ideograph */ + [0x993c, 0x993c], /* CJK Ideograph */ + [0x993d, 0x993d], /* CJK Ideograph */ + [0x993e, 0x993e], /* CJK Ideograph */ + [0x993f, 0x993f], /* CJK Ideograph */ + [0x9940, 0x9940], /* CJK Ideograph */ + [0x9941, 0x9941], /* CJK Ideograph */ + [0x9942, 0x9942], /* CJK Ideograph */ + [0x9943, 0x9943], /* CJK Ideograph */ + [0x9944, 0x9944], /* CJK Ideograph */ + [0x9945, 0x9945], /* CJK Ideograph */ + [0x9946, 0x9946], /* CJK Ideograph */ + [0x9947, 0x9947], /* CJK Ideograph */ + [0x9948, 0x9948], /* CJK Ideograph */ + [0x9949, 0x9949], /* CJK Ideograph */ + [0x994a, 0x994a], /* CJK Ideograph */ + [0x994b, 0x994b], /* CJK Ideograph */ + [0x994c, 0x994c], /* CJK Ideograph */ + [0x994d, 0x994d], /* CJK Ideograph */ + [0x994e, 0x994e], /* CJK Ideograph */ + [0x994f, 0x994f], /* CJK Ideograph */ + [0x9950, 0x9950], /* CJK Ideograph */ + [0x9951, 0x9951], /* CJK Ideograph */ + [0x9952, 0x9952], /* CJK Ideograph */ + [0x9953, 0x9953], /* CJK Ideograph */ + [0x9954, 0x9954], /* CJK Ideograph */ + [0x9955, 0x9955], /* CJK Ideograph */ + [0x9956, 0x9956], /* CJK Ideograph */ + [0x9957, 0x9957], /* CJK Ideograph */ + [0x9958, 0x9958], /* CJK Ideograph */ + [0x9959, 0x9959], /* CJK Ideograph */ + [0x995a, 0x995a], /* CJK Ideograph */ + [0x995b, 0x995b], /* CJK Ideograph */ + [0x995c, 0x995c], /* CJK Ideograph */ + [0x995d, 0x995d], /* CJK Ideograph */ + [0x995e, 0x995e], /* CJK Ideograph */ + [0x995f, 0x995f], /* CJK Ideograph */ + [0x9960, 0x9960], /* CJK Ideograph */ + [0x9961, 0x9961], /* CJK Ideograph */ + [0x9962, 0x9962], /* CJK Ideograph */ + [0x9963, 0x9963], /* CJK Ideograph */ + [0x9964, 0x9964], /* CJK Ideograph */ + [0x9965, 0x9965], /* CJK Ideograph */ + [0x9966, 0x9966], /* CJK Ideograph */ + [0x9967, 0x9967], /* CJK Ideograph */ + [0x9968, 0x9968], /* CJK Ideograph */ + [0x9969, 0x9969], /* CJK Ideograph */ + [0x996a, 0x996a], /* CJK Ideograph */ + [0x996b, 0x996b], /* CJK Ideograph */ + [0x996c, 0x996c], /* CJK Ideograph */ + [0x996d, 0x996d], /* CJK Ideograph */ + [0x996e, 0x996e], /* CJK Ideograph */ + [0x996f, 0x996f], /* CJK Ideograph */ + [0x9970, 0x9970], /* CJK Ideograph */ + [0x9971, 0x9971], /* CJK Ideograph */ + [0x9972, 0x9972], /* CJK Ideograph */ + [0x9973, 0x9973], /* CJK Ideograph */ + [0x9974, 0x9974], /* CJK Ideograph */ + [0x9975, 0x9975], /* CJK Ideograph */ + [0x9976, 0x9976], /* CJK Ideograph */ + [0x9977, 0x9977], /* CJK Ideograph */ + [0x9978, 0x9978], /* CJK Ideograph */ + [0x9979, 0x9979], /* CJK Ideograph */ + [0x997a, 0x997a], /* CJK Ideograph */ + [0x997b, 0x997b], /* CJK Ideograph */ + [0x997c, 0x997c], /* CJK Ideograph */ + [0x997d, 0x997d], /* CJK Ideograph */ + [0x997e, 0x997e], /* CJK Ideograph */ + [0x997f, 0x997f], /* CJK Ideograph */ + [0x9980, 0x9980], /* CJK Ideograph */ + [0x9981, 0x9981], /* CJK Ideograph */ + [0x9982, 0x9982], /* CJK Ideograph */ + [0x9983, 0x9983], /* CJK Ideograph */ + [0x9984, 0x9984], /* CJK Ideograph */ + [0x9985, 0x9985], /* CJK Ideograph */ + [0x9986, 0x9986], /* CJK Ideograph */ + [0x9987, 0x9987], /* CJK Ideograph */ + [0x9988, 0x9988], /* CJK Ideograph */ + [0x9989, 0x9989], /* CJK Ideograph */ + [0x998a, 0x998a], /* CJK Ideograph */ + [0x998b, 0x998b], /* CJK Ideograph */ + [0x998c, 0x998c], /* CJK Ideograph */ + [0x998d, 0x998d], /* CJK Ideograph */ + [0x998e, 0x998e], /* CJK Ideograph */ + [0x998f, 0x998f], /* CJK Ideograph */ + [0x9990, 0x9990], /* CJK Ideograph */ + [0x9991, 0x9991], /* CJK Ideograph */ + [0x9992, 0x9992], /* CJK Ideograph */ + [0x9993, 0x9993], /* CJK Ideograph */ + [0x9994, 0x9994], /* CJK Ideograph */ + [0x9995, 0x9995], /* CJK Ideograph */ + [0x9996, 0x9996], /* CJK Ideograph */ + [0x9997, 0x9997], /* CJK Ideograph */ + [0x9998, 0x9998], /* CJK Ideograph */ + [0x9999, 0x9999], /* CJK Ideograph */ + [0x999a, 0x999a], /* CJK Ideograph */ + [0x999b, 0x999b], /* CJK Ideograph */ + [0x999c, 0x999c], /* CJK Ideograph */ + [0x999d, 0x999d], /* CJK Ideograph */ + [0x999e, 0x999e], /* CJK Ideograph */ + [0x999f, 0x999f], /* CJK Ideograph */ + [0x99a0, 0x99a0], /* CJK Ideograph */ + [0x99a1, 0x99a1], /* CJK Ideograph */ + [0x99a2, 0x99a2], /* CJK Ideograph */ + [0x99a3, 0x99a3], /* CJK Ideograph */ + [0x99a4, 0x99a4], /* CJK Ideograph */ + [0x99a5, 0x99a5], /* CJK Ideograph */ + [0x99a6, 0x99a6], /* CJK Ideograph */ + [0x99a7, 0x99a7], /* CJK Ideograph */ + [0x99a8, 0x99a8], /* CJK Ideograph */ + [0x99a9, 0x99a9], /* CJK Ideograph */ + [0x99aa, 0x99aa], /* CJK Ideograph */ + [0x99ab, 0x99ab], /* CJK Ideograph */ + [0x99ac, 0x99ac], /* CJK Ideograph */ + [0x99ad, 0x99ad], /* CJK Ideograph */ + [0x99ae, 0x99ae], /* CJK Ideograph */ + [0x99af, 0x99af], /* CJK Ideograph */ + [0x99b0, 0x99b0], /* CJK Ideograph */ + [0x99b1, 0x99b1], /* CJK Ideograph */ + [0x99b2, 0x99b2], /* CJK Ideograph */ + [0x99b3, 0x99b3], /* CJK Ideograph */ + [0x99b4, 0x99b4], /* CJK Ideograph */ + [0x99b5, 0x99b5], /* CJK Ideograph */ + [0x99b6, 0x99b6], /* CJK Ideograph */ + [0x99b7, 0x99b7], /* CJK Ideograph */ + [0x99b8, 0x99b8], /* CJK Ideograph */ + [0x99b9, 0x99b9], /* CJK Ideograph */ + [0x99ba, 0x99ba], /* CJK Ideograph */ + [0x99bb, 0x99bb], /* CJK Ideograph */ + [0x99bc, 0x99bc], /* CJK Ideograph */ + [0x99bd, 0x99bd], /* CJK Ideograph */ + [0x99be, 0x99be], /* CJK Ideograph */ + [0x99bf, 0x99bf], /* CJK Ideograph */ + [0x99c0, 0x99c0], /* CJK Ideograph */ + [0x99c1, 0x99c1], /* CJK Ideograph */ + [0x99c2, 0x99c2], /* CJK Ideograph */ + [0x99c3, 0x99c3], /* CJK Ideograph */ + [0x99c4, 0x99c4], /* CJK Ideograph */ + [0x99c5, 0x99c5], /* CJK Ideograph */ + [0x99c6, 0x99c6], /* CJK Ideograph */ + [0x99c7, 0x99c7], /* CJK Ideograph */ + [0x99c8, 0x99c8], /* CJK Ideograph */ + [0x99c9, 0x99c9], /* CJK Ideograph */ + [0x99ca, 0x99ca], /* CJK Ideograph */ + [0x99cb, 0x99cb], /* CJK Ideograph */ + [0x99cc, 0x99cc], /* CJK Ideograph */ + [0x99cd, 0x99cd], /* CJK Ideograph */ + [0x99ce, 0x99ce], /* CJK Ideograph */ + [0x99cf, 0x99cf], /* CJK Ideograph */ + [0x99d0, 0x99d0], /* CJK Ideograph */ + [0x99d1, 0x99d1], /* CJK Ideograph */ + [0x99d2, 0x99d2], /* CJK Ideograph */ + [0x99d3, 0x99d3], /* CJK Ideograph */ + [0x99d4, 0x99d4], /* CJK Ideograph */ + [0x99d5, 0x99d5], /* CJK Ideograph */ + [0x99d6, 0x99d6], /* CJK Ideograph */ + [0x99d7, 0x99d7], /* CJK Ideograph */ + [0x99d8, 0x99d8], /* CJK Ideograph */ + [0x99d9, 0x99d9], /* CJK Ideograph */ + [0x99da, 0x99da], /* CJK Ideograph */ + [0x99db, 0x99db], /* CJK Ideograph */ + [0x99dc, 0x99dc], /* CJK Ideograph */ + [0x99dd, 0x99dd], /* CJK Ideograph */ + [0x99de, 0x99de], /* CJK Ideograph */ + [0x99df, 0x99df], /* CJK Ideograph */ + [0x99e0, 0x99e0], /* CJK Ideograph */ + [0x99e1, 0x99e1], /* CJK Ideograph */ + [0x99e2, 0x99e2], /* CJK Ideograph */ + [0x99e3, 0x99e3], /* CJK Ideograph */ + [0x99e4, 0x99e4], /* CJK Ideograph */ + [0x99e5, 0x99e5], /* CJK Ideograph */ + [0x99e6, 0x99e6], /* CJK Ideograph */ + [0x99e7, 0x99e7], /* CJK Ideograph */ + [0x99e8, 0x99e8], /* CJK Ideograph */ + [0x99e9, 0x99e9], /* CJK Ideograph */ + [0x99ea, 0x99ea], /* CJK Ideograph */ + [0x99eb, 0x99eb], /* CJK Ideograph */ + [0x99ec, 0x99ec], /* CJK Ideograph */ + [0x99ed, 0x99ed], /* CJK Ideograph */ + [0x99ee, 0x99ee], /* CJK Ideograph */ + [0x99ef, 0x99ef], /* CJK Ideograph */ + [0x99f0, 0x99f0], /* CJK Ideograph */ + [0x99f1, 0x99f1], /* CJK Ideograph */ + [0x99f2, 0x99f2], /* CJK Ideograph */ + [0x99f3, 0x99f3], /* CJK Ideograph */ + [0x99f4, 0x99f4], /* CJK Ideograph */ + [0x99f5, 0x99f5], /* CJK Ideograph */ + [0x99f6, 0x99f6], /* CJK Ideograph */ + [0x99f7, 0x99f7], /* CJK Ideograph */ + [0x99f8, 0x99f8], /* CJK Ideograph */ + [0x99f9, 0x99f9], /* CJK Ideograph */ + [0x99fa, 0x99fa], /* CJK Ideograph */ + [0x99fb, 0x99fb], /* CJK Ideograph */ + [0x99fc, 0x99fc], /* CJK Ideograph */ + [0x99fd, 0x99fd], /* CJK Ideograph */ + [0x99fe, 0x99fe], /* CJK Ideograph */ + [0x99ff, 0x99ff], /* CJK Ideograph */ + [0x9a00, 0x9a00], /* CJK Ideograph */ + [0x9a01, 0x9a01], /* CJK Ideograph */ + [0x9a02, 0x9a02], /* CJK Ideograph */ + [0x9a03, 0x9a03], /* CJK Ideograph */ + [0x9a04, 0x9a04], /* CJK Ideograph */ + [0x9a05, 0x9a05], /* CJK Ideograph */ + [0x9a06, 0x9a06], /* CJK Ideograph */ + [0x9a07, 0x9a07], /* CJK Ideograph */ + [0x9a08, 0x9a08], /* CJK Ideograph */ + [0x9a09, 0x9a09], /* CJK Ideograph */ + [0x9a0a, 0x9a0a], /* CJK Ideograph */ + [0x9a0b, 0x9a0b], /* CJK Ideograph */ + [0x9a0c, 0x9a0c], /* CJK Ideograph */ + [0x9a0d, 0x9a0d], /* CJK Ideograph */ + [0x9a0e, 0x9a0e], /* CJK Ideograph */ + [0x9a0f, 0x9a0f], /* CJK Ideograph */ + [0x9a10, 0x9a10], /* CJK Ideograph */ + [0x9a11, 0x9a11], /* CJK Ideograph */ + [0x9a12, 0x9a12], /* CJK Ideograph */ + [0x9a13, 0x9a13], /* CJK Ideograph */ + [0x9a14, 0x9a14], /* CJK Ideograph */ + [0x9a15, 0x9a15], /* CJK Ideograph */ + [0x9a16, 0x9a16], /* CJK Ideograph */ + [0x9a17, 0x9a17], /* CJK Ideograph */ + [0x9a18, 0x9a18], /* CJK Ideograph */ + [0x9a19, 0x9a19], /* CJK Ideograph */ + [0x9a1a, 0x9a1a], /* CJK Ideograph */ + [0x9a1b, 0x9a1b], /* CJK Ideograph */ + [0x9a1c, 0x9a1c], /* CJK Ideograph */ + [0x9a1d, 0x9a1d], /* CJK Ideograph */ + [0x9a1e, 0x9a1e], /* CJK Ideograph */ + [0x9a1f, 0x9a1f], /* CJK Ideograph */ + [0x9a20, 0x9a20], /* CJK Ideograph */ + [0x9a21, 0x9a21], /* CJK Ideograph */ + [0x9a22, 0x9a22], /* CJK Ideograph */ + [0x9a23, 0x9a23], /* CJK Ideograph */ + [0x9a24, 0x9a24], /* CJK Ideograph */ + [0x9a25, 0x9a25], /* CJK Ideograph */ + [0x9a26, 0x9a26], /* CJK Ideograph */ + [0x9a27, 0x9a27], /* CJK Ideograph */ + [0x9a28, 0x9a28], /* CJK Ideograph */ + [0x9a29, 0x9a29], /* CJK Ideograph */ + [0x9a2a, 0x9a2a], /* CJK Ideograph */ + [0x9a2b, 0x9a2b], /* CJK Ideograph */ + [0x9a2c, 0x9a2c], /* CJK Ideograph */ + [0x9a2d, 0x9a2d], /* CJK Ideograph */ + [0x9a2e, 0x9a2e], /* CJK Ideograph */ + [0x9a2f, 0x9a2f], /* CJK Ideograph */ + [0x9a30, 0x9a30], /* CJK Ideograph */ + [0x9a31, 0x9a31], /* CJK Ideograph */ + [0x9a32, 0x9a32], /* CJK Ideograph */ + [0x9a33, 0x9a33], /* CJK Ideograph */ + [0x9a34, 0x9a34], /* CJK Ideograph */ + [0x9a35, 0x9a35], /* CJK Ideograph */ + [0x9a36, 0x9a36], /* CJK Ideograph */ + [0x9a37, 0x9a37], /* CJK Ideograph */ + [0x9a38, 0x9a38], /* CJK Ideograph */ + [0x9a39, 0x9a39], /* CJK Ideograph */ + [0x9a3a, 0x9a3a], /* CJK Ideograph */ + [0x9a3b, 0x9a3b], /* CJK Ideograph */ + [0x9a3c, 0x9a3c], /* CJK Ideograph */ + [0x9a3d, 0x9a3d], /* CJK Ideograph */ + [0x9a3e, 0x9a3e], /* CJK Ideograph */ + [0x9a3f, 0x9a3f], /* CJK Ideograph */ + [0x9a40, 0x9a40], /* CJK Ideograph */ + [0x9a41, 0x9a41], /* CJK Ideograph */ + [0x9a42, 0x9a42], /* CJK Ideograph */ + [0x9a43, 0x9a43], /* CJK Ideograph */ + [0x9a44, 0x9a44], /* CJK Ideograph */ + [0x9a45, 0x9a45], /* CJK Ideograph */ + [0x9a46, 0x9a46], /* CJK Ideograph */ + [0x9a47, 0x9a47], /* CJK Ideograph */ + [0x9a48, 0x9a48], /* CJK Ideograph */ + [0x9a49, 0x9a49], /* CJK Ideograph */ + [0x9a4a, 0x9a4a], /* CJK Ideograph */ + [0x9a4b, 0x9a4b], /* CJK Ideograph */ + [0x9a4c, 0x9a4c], /* CJK Ideograph */ + [0x9a4d, 0x9a4d], /* CJK Ideograph */ + [0x9a4e, 0x9a4e], /* CJK Ideograph */ + [0x9a4f, 0x9a4f], /* CJK Ideograph */ + [0x9a50, 0x9a50], /* CJK Ideograph */ + [0x9a51, 0x9a51], /* CJK Ideograph */ + [0x9a52, 0x9a52], /* CJK Ideograph */ + [0x9a53, 0x9a53], /* CJK Ideograph */ + [0x9a54, 0x9a54], /* CJK Ideograph */ + [0x9a55, 0x9a55], /* CJK Ideograph */ + [0x9a56, 0x9a56], /* CJK Ideograph */ + [0x9a57, 0x9a57], /* CJK Ideograph */ + [0x9a58, 0x9a58], /* CJK Ideograph */ + [0x9a59, 0x9a59], /* CJK Ideograph */ + [0x9a5a, 0x9a5a], /* CJK Ideograph */ + [0x9a5b, 0x9a5b], /* CJK Ideograph */ + [0x9a5c, 0x9a5c], /* CJK Ideograph */ + [0x9a5d, 0x9a5d], /* CJK Ideograph */ + [0x9a5e, 0x9a5e], /* CJK Ideograph */ + [0x9a5f, 0x9a5f], /* CJK Ideograph */ + [0x9a60, 0x9a60], /* CJK Ideograph */ + [0x9a61, 0x9a61], /* CJK Ideograph */ + [0x9a62, 0x9a62], /* CJK Ideograph */ + [0x9a63, 0x9a63], /* CJK Ideograph */ + [0x9a64, 0x9a64], /* CJK Ideograph */ + [0x9a65, 0x9a65], /* CJK Ideograph */ + [0x9a66, 0x9a66], /* CJK Ideograph */ + [0x9a67, 0x9a67], /* CJK Ideograph */ + [0x9a68, 0x9a68], /* CJK Ideograph */ + [0x9a69, 0x9a69], /* CJK Ideograph */ + [0x9a6a, 0x9a6a], /* CJK Ideograph */ + [0x9a6b, 0x9a6b], /* CJK Ideograph */ + [0x9a6c, 0x9a6c], /* CJK Ideograph */ + [0x9a6d, 0x9a6d], /* CJK Ideograph */ + [0x9a6e, 0x9a6e], /* CJK Ideograph */ + [0x9a6f, 0x9a6f], /* CJK Ideograph */ + [0x9a70, 0x9a70], /* CJK Ideograph */ + [0x9a71, 0x9a71], /* CJK Ideograph */ + [0x9a72, 0x9a72], /* CJK Ideograph */ + [0x9a73, 0x9a73], /* CJK Ideograph */ + [0x9a74, 0x9a74], /* CJK Ideograph */ + [0x9a75, 0x9a75], /* CJK Ideograph */ + [0x9a76, 0x9a76], /* CJK Ideograph */ + [0x9a77, 0x9a77], /* CJK Ideograph */ + [0x9a78, 0x9a78], /* CJK Ideograph */ + [0x9a79, 0x9a79], /* CJK Ideograph */ + [0x9a7a, 0x9a7a], /* CJK Ideograph */ + [0x9a7b, 0x9a7b], /* CJK Ideograph */ + [0x9a7c, 0x9a7c], /* CJK Ideograph */ + [0x9a7d, 0x9a7d], /* CJK Ideograph */ + [0x9a7e, 0x9a7e], /* CJK Ideograph */ + [0x9a7f, 0x9a7f], /* CJK Ideograph */ + [0x9a80, 0x9a80], /* CJK Ideograph */ + [0x9a81, 0x9a81], /* CJK Ideograph */ + [0x9a82, 0x9a82], /* CJK Ideograph */ + [0x9a83, 0x9a83], /* CJK Ideograph */ + [0x9a84, 0x9a84], /* CJK Ideograph */ + [0x9a85, 0x9a85], /* CJK Ideograph */ + [0x9a86, 0x9a86], /* CJK Ideograph */ + [0x9a87, 0x9a87], /* CJK Ideograph */ + [0x9a88, 0x9a88], /* CJK Ideograph */ + [0x9a89, 0x9a89], /* CJK Ideograph */ + [0x9a8a, 0x9a8a], /* CJK Ideograph */ + [0x9a8b, 0x9a8b], /* CJK Ideograph */ + [0x9a8c, 0x9a8c], /* CJK Ideograph */ + [0x9a8d, 0x9a8d], /* CJK Ideograph */ + [0x9a8e, 0x9a8e], /* CJK Ideograph */ + [0x9a8f, 0x9a8f], /* CJK Ideograph */ + [0x9a90, 0x9a90], /* CJK Ideograph */ + [0x9a91, 0x9a91], /* CJK Ideograph */ + [0x9a92, 0x9a92], /* CJK Ideograph */ + [0x9a93, 0x9a93], /* CJK Ideograph */ + [0x9a94, 0x9a94], /* CJK Ideograph */ + [0x9a95, 0x9a95], /* CJK Ideograph */ + [0x9a96, 0x9a96], /* CJK Ideograph */ + [0x9a97, 0x9a97], /* CJK Ideograph */ + [0x9a98, 0x9a98], /* CJK Ideograph */ + [0x9a99, 0x9a99], /* CJK Ideograph */ + [0x9a9a, 0x9a9a], /* CJK Ideograph */ + [0x9a9b, 0x9a9b], /* CJK Ideograph */ + [0x9a9c, 0x9a9c], /* CJK Ideograph */ + [0x9a9d, 0x9a9d], /* CJK Ideograph */ + [0x9a9e, 0x9a9e], /* CJK Ideograph */ + [0x9a9f, 0x9a9f], /* CJK Ideograph */ + [0x9aa0, 0x9aa0], /* CJK Ideograph */ + [0x9aa1, 0x9aa1], /* CJK Ideograph */ + [0x9aa2, 0x9aa2], /* CJK Ideograph */ + [0x9aa3, 0x9aa3], /* CJK Ideograph */ + [0x9aa4, 0x9aa4], /* CJK Ideograph */ + [0x9aa5, 0x9aa5], /* CJK Ideograph */ + [0x9aa6, 0x9aa6], /* CJK Ideograph */ + [0x9aa7, 0x9aa7], /* CJK Ideograph */ + [0x9aa8, 0x9aa8], /* CJK Ideograph */ + [0x9aa9, 0x9aa9], /* CJK Ideograph */ + [0x9aaa, 0x9aaa], /* CJK Ideograph */ + [0x9aab, 0x9aab], /* CJK Ideograph */ + [0x9aac, 0x9aac], /* CJK Ideograph */ + [0x9aad, 0x9aad], /* CJK Ideograph */ + [0x9aae, 0x9aae], /* CJK Ideograph */ + [0x9aaf, 0x9aaf], /* CJK Ideograph */ + [0x9ab0, 0x9ab0], /* CJK Ideograph */ + [0x9ab1, 0x9ab1], /* CJK Ideograph */ + [0x9ab2, 0x9ab2], /* CJK Ideograph */ + [0x9ab3, 0x9ab3], /* CJK Ideograph */ + [0x9ab4, 0x9ab4], /* CJK Ideograph */ + [0x9ab5, 0x9ab5], /* CJK Ideograph */ + [0x9ab6, 0x9ab6], /* CJK Ideograph */ + [0x9ab7, 0x9ab7], /* CJK Ideograph */ + [0x9ab8, 0x9ab8], /* CJK Ideograph */ + [0x9ab9, 0x9ab9], /* CJK Ideograph */ + [0x9aba, 0x9aba], /* CJK Ideograph */ + [0x9abb, 0x9abb], /* CJK Ideograph */ + [0x9abc, 0x9abc], /* CJK Ideograph */ + [0x9abd, 0x9abd], /* CJK Ideograph */ + [0x9abe, 0x9abe], /* CJK Ideograph */ + [0x9abf, 0x9abf], /* CJK Ideograph */ + [0x9ac0, 0x9ac0], /* CJK Ideograph */ + [0x9ac1, 0x9ac1], /* CJK Ideograph */ + [0x9ac2, 0x9ac2], /* CJK Ideograph */ + [0x9ac3, 0x9ac3], /* CJK Ideograph */ + [0x9ac4, 0x9ac4], /* CJK Ideograph */ + [0x9ac5, 0x9ac5], /* CJK Ideograph */ + [0x9ac6, 0x9ac6], /* CJK Ideograph */ + [0x9ac7, 0x9ac7], /* CJK Ideograph */ + [0x9ac8, 0x9ac8], /* CJK Ideograph */ + [0x9ac9, 0x9ac9], /* CJK Ideograph */ + [0x9aca, 0x9aca], /* CJK Ideograph */ + [0x9acb, 0x9acb], /* CJK Ideograph */ + [0x9acc, 0x9acc], /* CJK Ideograph */ + [0x9acd, 0x9acd], /* CJK Ideograph */ + [0x9ace, 0x9ace], /* CJK Ideograph */ + [0x9acf, 0x9acf], /* CJK Ideograph */ + [0x9ad0, 0x9ad0], /* CJK Ideograph */ + [0x9ad1, 0x9ad1], /* CJK Ideograph */ + [0x9ad2, 0x9ad2], /* CJK Ideograph */ + [0x9ad3, 0x9ad3], /* CJK Ideograph */ + [0x9ad4, 0x9ad4], /* CJK Ideograph */ + [0x9ad5, 0x9ad5], /* CJK Ideograph */ + [0x9ad6, 0x9ad6], /* CJK Ideograph */ + [0x9ad7, 0x9ad7], /* CJK Ideograph */ + [0x9ad8, 0x9ad8], /* CJK Ideograph */ + [0x9ad9, 0x9ad9], /* CJK Ideograph */ + [0x9ada, 0x9ada], /* CJK Ideograph */ + [0x9adb, 0x9adb], /* CJK Ideograph */ + [0x9adc, 0x9adc], /* CJK Ideograph */ + [0x9add, 0x9add], /* CJK Ideograph */ + [0x9ade, 0x9ade], /* CJK Ideograph */ + [0x9adf, 0x9adf], /* CJK Ideograph */ + [0x9ae0, 0x9ae0], /* CJK Ideograph */ + [0x9ae1, 0x9ae1], /* CJK Ideograph */ + [0x9ae2, 0x9ae2], /* CJK Ideograph */ + [0x9ae3, 0x9ae3], /* CJK Ideograph */ + [0x9ae4, 0x9ae4], /* CJK Ideograph */ + [0x9ae5, 0x9ae5], /* CJK Ideograph */ + [0x9ae6, 0x9ae6], /* CJK Ideograph */ + [0x9ae7, 0x9ae7], /* CJK Ideograph */ + [0x9ae8, 0x9ae8], /* CJK Ideograph */ + [0x9ae9, 0x9ae9], /* CJK Ideograph */ + [0x9aea, 0x9aea], /* CJK Ideograph */ + [0x9aeb, 0x9aeb], /* CJK Ideograph */ + [0x9aec, 0x9aec], /* CJK Ideograph */ + [0x9aed, 0x9aed], /* CJK Ideograph */ + [0x9aee, 0x9aee], /* CJK Ideograph */ + [0x9aef, 0x9aef], /* CJK Ideograph */ + [0x9af0, 0x9af0], /* CJK Ideograph */ + [0x9af1, 0x9af1], /* CJK Ideograph */ + [0x9af2, 0x9af2], /* CJK Ideograph */ + [0x9af3, 0x9af3], /* CJK Ideograph */ + [0x9af4, 0x9af4], /* CJK Ideograph */ + [0x9af5, 0x9af5], /* CJK Ideograph */ + [0x9af6, 0x9af6], /* CJK Ideograph */ + [0x9af7, 0x9af7], /* CJK Ideograph */ + [0x9af8, 0x9af8], /* CJK Ideograph */ + [0x9af9, 0x9af9], /* CJK Ideograph */ + [0x9afa, 0x9afa], /* CJK Ideograph */ + [0x9afb, 0x9afb], /* CJK Ideograph */ + [0x9afc, 0x9afc], /* CJK Ideograph */ + [0x9afd, 0x9afd], /* CJK Ideograph */ + [0x9afe, 0x9afe], /* CJK Ideograph */ + [0x9aff, 0x9aff], /* CJK Ideograph */ + [0x9b00, 0x9b00], /* CJK Ideograph */ + [0x9b01, 0x9b01], /* CJK Ideograph */ + [0x9b02, 0x9b02], /* CJK Ideograph */ + [0x9b03, 0x9b03], /* CJK Ideograph */ + [0x9b04, 0x9b04], /* CJK Ideograph */ + [0x9b05, 0x9b05], /* CJK Ideograph */ + [0x9b06, 0x9b06], /* CJK Ideograph */ + [0x9b07, 0x9b07], /* CJK Ideograph */ + [0x9b08, 0x9b08], /* CJK Ideograph */ + [0x9b09, 0x9b09], /* CJK Ideograph */ + [0x9b0a, 0x9b0a], /* CJK Ideograph */ + [0x9b0b, 0x9b0b], /* CJK Ideograph */ + [0x9b0c, 0x9b0c], /* CJK Ideograph */ + [0x9b0d, 0x9b0d], /* CJK Ideograph */ + [0x9b0e, 0x9b0e], /* CJK Ideograph */ + [0x9b0f, 0x9b0f], /* CJK Ideograph */ + [0x9b10, 0x9b10], /* CJK Ideograph */ + [0x9b11, 0x9b11], /* CJK Ideograph */ + [0x9b12, 0x9b12], /* CJK Ideograph */ + [0x9b13, 0x9b13], /* CJK Ideograph */ + [0x9b14, 0x9b14], /* CJK Ideograph */ + [0x9b15, 0x9b15], /* CJK Ideograph */ + [0x9b16, 0x9b16], /* CJK Ideograph */ + [0x9b17, 0x9b17], /* CJK Ideograph */ + [0x9b18, 0x9b18], /* CJK Ideograph */ + [0x9b19, 0x9b19], /* CJK Ideograph */ + [0x9b1a, 0x9b1a], /* CJK Ideograph */ + [0x9b1b, 0x9b1b], /* CJK Ideograph */ + [0x9b1c, 0x9b1c], /* CJK Ideograph */ + [0x9b1d, 0x9b1d], /* CJK Ideograph */ + [0x9b1e, 0x9b1e], /* CJK Ideograph */ + [0x9b1f, 0x9b1f], /* CJK Ideograph */ + [0x9b20, 0x9b20], /* CJK Ideograph */ + [0x9b21, 0x9b21], /* CJK Ideograph */ + [0x9b22, 0x9b22], /* CJK Ideograph */ + [0x9b23, 0x9b23], /* CJK Ideograph */ + [0x9b24, 0x9b24], /* CJK Ideograph */ + [0x9b25, 0x9b25], /* CJK Ideograph */ + [0x9b26, 0x9b26], /* CJK Ideograph */ + [0x9b27, 0x9b27], /* CJK Ideograph */ + [0x9b28, 0x9b28], /* CJK Ideograph */ + [0x9b29, 0x9b29], /* CJK Ideograph */ + [0x9b2a, 0x9b2a], /* CJK Ideograph */ + [0x9b2b, 0x9b2b], /* CJK Ideograph */ + [0x9b2c, 0x9b2c], /* CJK Ideograph */ + [0x9b2d, 0x9b2d], /* CJK Ideograph */ + [0x9b2e, 0x9b2e], /* CJK Ideograph */ + [0x9b2f, 0x9b2f], /* CJK Ideograph */ + [0x9b30, 0x9b30], /* CJK Ideograph */ + [0x9b31, 0x9b31], /* CJK Ideograph */ + [0x9b32, 0x9b32], /* CJK Ideograph */ + [0x9b33, 0x9b33], /* CJK Ideograph */ + [0x9b34, 0x9b34], /* CJK Ideograph */ + [0x9b35, 0x9b35], /* CJK Ideograph */ + [0x9b36, 0x9b36], /* CJK Ideograph */ + [0x9b37, 0x9b37], /* CJK Ideograph */ + [0x9b38, 0x9b38], /* CJK Ideograph */ + [0x9b39, 0x9b39], /* CJK Ideograph */ + [0x9b3a, 0x9b3a], /* CJK Ideograph */ + [0x9b3b, 0x9b3b], /* CJK Ideograph */ + [0x9b3c, 0x9b3c], /* CJK Ideograph */ + [0x9b3d, 0x9b3d], /* CJK Ideograph */ + [0x9b3e, 0x9b3e], /* CJK Ideograph */ + [0x9b3f, 0x9b3f], /* CJK Ideograph */ + [0x9b40, 0x9b40], /* CJK Ideograph */ + [0x9b41, 0x9b41], /* CJK Ideograph */ + [0x9b42, 0x9b42], /* CJK Ideograph */ + [0x9b43, 0x9b43], /* CJK Ideograph */ + [0x9b44, 0x9b44], /* CJK Ideograph */ + [0x9b45, 0x9b45], /* CJK Ideograph */ + [0x9b46, 0x9b46], /* CJK Ideograph */ + [0x9b47, 0x9b47], /* CJK Ideograph */ + [0x9b48, 0x9b48], /* CJK Ideograph */ + [0x9b49, 0x9b49], /* CJK Ideograph */ + [0x9b4a, 0x9b4a], /* CJK Ideograph */ + [0x9b4b, 0x9b4b], /* CJK Ideograph */ + [0x9b4c, 0x9b4c], /* CJK Ideograph */ + [0x9b4d, 0x9b4d], /* CJK Ideograph */ + [0x9b4e, 0x9b4e], /* CJK Ideograph */ + [0x9b4f, 0x9b4f], /* CJK Ideograph */ + [0x9b50, 0x9b50], /* CJK Ideograph */ + [0x9b51, 0x9b51], /* CJK Ideograph */ + [0x9b52, 0x9b52], /* CJK Ideograph */ + [0x9b53, 0x9b53], /* CJK Ideograph */ + [0x9b54, 0x9b54], /* CJK Ideograph */ + [0x9b55, 0x9b55], /* CJK Ideograph */ + [0x9b56, 0x9b56], /* CJK Ideograph */ + [0x9b57, 0x9b57], /* CJK Ideograph */ + [0x9b58, 0x9b58], /* CJK Ideograph */ + [0x9b59, 0x9b59], /* CJK Ideograph */ + [0x9b5a, 0x9b5a], /* CJK Ideograph */ + [0x9b5b, 0x9b5b], /* CJK Ideograph */ + [0x9b5c, 0x9b5c], /* CJK Ideograph */ + [0x9b5d, 0x9b5d], /* CJK Ideograph */ + [0x9b5e, 0x9b5e], /* CJK Ideograph */ + [0x9b5f, 0x9b5f], /* CJK Ideograph */ + [0x9b60, 0x9b60], /* CJK Ideograph */ + [0x9b61, 0x9b61], /* CJK Ideograph */ + [0x9b62, 0x9b62], /* CJK Ideograph */ + [0x9b63, 0x9b63], /* CJK Ideograph */ + [0x9b64, 0x9b64], /* CJK Ideograph */ + [0x9b65, 0x9b65], /* CJK Ideograph */ + [0x9b66, 0x9b66], /* CJK Ideograph */ + [0x9b67, 0x9b67], /* CJK Ideograph */ + [0x9b68, 0x9b68], /* CJK Ideograph */ + [0x9b69, 0x9b69], /* CJK Ideograph */ + [0x9b6a, 0x9b6a], /* CJK Ideograph */ + [0x9b6b, 0x9b6b], /* CJK Ideograph */ + [0x9b6c, 0x9b6c], /* CJK Ideograph */ + [0x9b6d, 0x9b6d], /* CJK Ideograph */ + [0x9b6e, 0x9b6e], /* CJK Ideograph */ + [0x9b6f, 0x9b6f], /* CJK Ideograph */ + [0x9b70, 0x9b70], /* CJK Ideograph */ + [0x9b71, 0x9b71], /* CJK Ideograph */ + [0x9b72, 0x9b72], /* CJK Ideograph */ + [0x9b73, 0x9b73], /* CJK Ideograph */ + [0x9b74, 0x9b74], /* CJK Ideograph */ + [0x9b75, 0x9b75], /* CJK Ideograph */ + [0x9b76, 0x9b76], /* CJK Ideograph */ + [0x9b77, 0x9b77], /* CJK Ideograph */ + [0x9b78, 0x9b78], /* CJK Ideograph */ + [0x9b79, 0x9b79], /* CJK Ideograph */ + [0x9b7a, 0x9b7a], /* CJK Ideograph */ + [0x9b7b, 0x9b7b], /* CJK Ideograph */ + [0x9b7c, 0x9b7c], /* CJK Ideograph */ + [0x9b7d, 0x9b7d], /* CJK Ideograph */ + [0x9b7e, 0x9b7e], /* CJK Ideograph */ + [0x9b7f, 0x9b7f], /* CJK Ideograph */ + [0x9b80, 0x9b80], /* CJK Ideograph */ + [0x9b81, 0x9b81], /* CJK Ideograph */ + [0x9b82, 0x9b82], /* CJK Ideograph */ + [0x9b83, 0x9b83], /* CJK Ideograph */ + [0x9b84, 0x9b84], /* CJK Ideograph */ + [0x9b85, 0x9b85], /* CJK Ideograph */ + [0x9b86, 0x9b86], /* CJK Ideograph */ + [0x9b87, 0x9b87], /* CJK Ideograph */ + [0x9b88, 0x9b88], /* CJK Ideograph */ + [0x9b89, 0x9b89], /* CJK Ideograph */ + [0x9b8a, 0x9b8a], /* CJK Ideograph */ + [0x9b8b, 0x9b8b], /* CJK Ideograph */ + [0x9b8c, 0x9b8c], /* CJK Ideograph */ + [0x9b8d, 0x9b8d], /* CJK Ideograph */ + [0x9b8e, 0x9b8e], /* CJK Ideograph */ + [0x9b8f, 0x9b8f], /* CJK Ideograph */ + [0x9b90, 0x9b90], /* CJK Ideograph */ + [0x9b91, 0x9b91], /* CJK Ideograph */ + [0x9b92, 0x9b92], /* CJK Ideograph */ + [0x9b93, 0x9b93], /* CJK Ideograph */ + [0x9b94, 0x9b94], /* CJK Ideograph */ + [0x9b95, 0x9b95], /* CJK Ideograph */ + [0x9b96, 0x9b96], /* CJK Ideograph */ + [0x9b97, 0x9b97], /* CJK Ideograph */ + [0x9b98, 0x9b98], /* CJK Ideograph */ + [0x9b99, 0x9b99], /* CJK Ideograph */ + [0x9b9a, 0x9b9a], /* CJK Ideograph */ + [0x9b9b, 0x9b9b], /* CJK Ideograph */ + [0x9b9c, 0x9b9c], /* CJK Ideograph */ + [0x9b9d, 0x9b9d], /* CJK Ideograph */ + [0x9b9e, 0x9b9e], /* CJK Ideograph */ + [0x9b9f, 0x9b9f], /* CJK Ideograph */ + [0x9ba0, 0x9ba0], /* CJK Ideograph */ + [0x9ba1, 0x9ba1], /* CJK Ideograph */ + [0x9ba2, 0x9ba2], /* CJK Ideograph */ + [0x9ba3, 0x9ba3], /* CJK Ideograph */ + [0x9ba4, 0x9ba4], /* CJK Ideograph */ + [0x9ba5, 0x9ba5], /* CJK Ideograph */ + [0x9ba6, 0x9ba6], /* CJK Ideograph */ + [0x9ba7, 0x9ba7], /* CJK Ideograph */ + [0x9ba8, 0x9ba8], /* CJK Ideograph */ + [0x9ba9, 0x9ba9], /* CJK Ideograph */ + [0x9baa, 0x9baa], /* CJK Ideograph */ + [0x9bab, 0x9bab], /* CJK Ideograph */ + [0x9bac, 0x9bac], /* CJK Ideograph */ + [0x9bad, 0x9bad], /* CJK Ideograph */ + [0x9bae, 0x9bae], /* CJK Ideograph */ + [0x9baf, 0x9baf], /* CJK Ideograph */ + [0x9bb0, 0x9bb0], /* CJK Ideograph */ + [0x9bb1, 0x9bb1], /* CJK Ideograph */ + [0x9bb2, 0x9bb2], /* CJK Ideograph */ + [0x9bb3, 0x9bb3], /* CJK Ideograph */ + [0x9bb4, 0x9bb4], /* CJK Ideograph */ + [0x9bb5, 0x9bb5], /* CJK Ideograph */ + [0x9bb6, 0x9bb6], /* CJK Ideograph */ + [0x9bb7, 0x9bb7], /* CJK Ideograph */ + [0x9bb8, 0x9bb8], /* CJK Ideograph */ + [0x9bb9, 0x9bb9], /* CJK Ideograph */ + [0x9bba, 0x9bba], /* CJK Ideograph */ + [0x9bbb, 0x9bbb], /* CJK Ideograph */ + [0x9bbc, 0x9bbc], /* CJK Ideograph */ + [0x9bbd, 0x9bbd], /* CJK Ideograph */ + [0x9bbe, 0x9bbe], /* CJK Ideograph */ + [0x9bbf, 0x9bbf], /* CJK Ideograph */ + [0x9bc0, 0x9bc0], /* CJK Ideograph */ + [0x9bc1, 0x9bc1], /* CJK Ideograph */ + [0x9bc2, 0x9bc2], /* CJK Ideograph */ + [0x9bc3, 0x9bc3], /* CJK Ideograph */ + [0x9bc4, 0x9bc4], /* CJK Ideograph */ + [0x9bc5, 0x9bc5], /* CJK Ideograph */ + [0x9bc6, 0x9bc6], /* CJK Ideograph */ + [0x9bc7, 0x9bc7], /* CJK Ideograph */ + [0x9bc8, 0x9bc8], /* CJK Ideograph */ + [0x9bc9, 0x9bc9], /* CJK Ideograph */ + [0x9bca, 0x9bca], /* CJK Ideograph */ + [0x9bcb, 0x9bcb], /* CJK Ideograph */ + [0x9bcc, 0x9bcc], /* CJK Ideograph */ + [0x9bcd, 0x9bcd], /* CJK Ideograph */ + [0x9bce, 0x9bce], /* CJK Ideograph */ + [0x9bcf, 0x9bcf], /* CJK Ideograph */ + [0x9bd0, 0x9bd0], /* CJK Ideograph */ + [0x9bd1, 0x9bd1], /* CJK Ideograph */ + [0x9bd2, 0x9bd2], /* CJK Ideograph */ + [0x9bd3, 0x9bd3], /* CJK Ideograph */ + [0x9bd4, 0x9bd4], /* CJK Ideograph */ + [0x9bd5, 0x9bd5], /* CJK Ideograph */ + [0x9bd6, 0x9bd6], /* CJK Ideograph */ + [0x9bd7, 0x9bd7], /* CJK Ideograph */ + [0x9bd8, 0x9bd8], /* CJK Ideograph */ + [0x9bd9, 0x9bd9], /* CJK Ideograph */ + [0x9bda, 0x9bda], /* CJK Ideograph */ + [0x9bdb, 0x9bdb], /* CJK Ideograph */ + [0x9bdc, 0x9bdc], /* CJK Ideograph */ + [0x9bdd, 0x9bdd], /* CJK Ideograph */ + [0x9bde, 0x9bde], /* CJK Ideograph */ + [0x9bdf, 0x9bdf], /* CJK Ideograph */ + [0x9be0, 0x9be0], /* CJK Ideograph */ + [0x9be1, 0x9be1], /* CJK Ideograph */ + [0x9be2, 0x9be2], /* CJK Ideograph */ + [0x9be3, 0x9be3], /* CJK Ideograph */ + [0x9be4, 0x9be4], /* CJK Ideograph */ + [0x9be5, 0x9be5], /* CJK Ideograph */ + [0x9be6, 0x9be6], /* CJK Ideograph */ + [0x9be7, 0x9be7], /* CJK Ideograph */ + [0x9be8, 0x9be8], /* CJK Ideograph */ + [0x9be9, 0x9be9], /* CJK Ideograph */ + [0x9bea, 0x9bea], /* CJK Ideograph */ + [0x9beb, 0x9beb], /* CJK Ideograph */ + [0x9bec, 0x9bec], /* CJK Ideograph */ + [0x9bed, 0x9bed], /* CJK Ideograph */ + [0x9bee, 0x9bee], /* CJK Ideograph */ + [0x9bef, 0x9bef], /* CJK Ideograph */ + [0x9bf0, 0x9bf0], /* CJK Ideograph */ + [0x9bf1, 0x9bf1], /* CJK Ideograph */ + [0x9bf2, 0x9bf2], /* CJK Ideograph */ + [0x9bf3, 0x9bf3], /* CJK Ideograph */ + [0x9bf4, 0x9bf4], /* CJK Ideograph */ + [0x9bf5, 0x9bf5], /* CJK Ideograph */ + [0x9bf6, 0x9bf6], /* CJK Ideograph */ + [0x9bf7, 0x9bf7], /* CJK Ideograph */ + [0x9bf8, 0x9bf8], /* CJK Ideograph */ + [0x9bf9, 0x9bf9], /* CJK Ideograph */ + [0x9bfa, 0x9bfa], /* CJK Ideograph */ + [0x9bfb, 0x9bfb], /* CJK Ideograph */ + [0x9bfc, 0x9bfc], /* CJK Ideograph */ + [0x9bfd, 0x9bfd], /* CJK Ideograph */ + [0x9bfe, 0x9bfe], /* CJK Ideograph */ + [0x9bff, 0x9bff], /* CJK Ideograph */ + [0x9c00, 0x9c00], /* CJK Ideograph */ + [0x9c01, 0x9c01], /* CJK Ideograph */ + [0x9c02, 0x9c02], /* CJK Ideograph */ + [0x9c03, 0x9c03], /* CJK Ideograph */ + [0x9c04, 0x9c04], /* CJK Ideograph */ + [0x9c05, 0x9c05], /* CJK Ideograph */ + [0x9c06, 0x9c06], /* CJK Ideograph */ + [0x9c07, 0x9c07], /* CJK Ideograph */ + [0x9c08, 0x9c08], /* CJK Ideograph */ + [0x9c09, 0x9c09], /* CJK Ideograph */ + [0x9c0a, 0x9c0a], /* CJK Ideograph */ + [0x9c0b, 0x9c0b], /* CJK Ideograph */ + [0x9c0c, 0x9c0c], /* CJK Ideograph */ + [0x9c0d, 0x9c0d], /* CJK Ideograph */ + [0x9c0e, 0x9c0e], /* CJK Ideograph */ + [0x9c0f, 0x9c0f], /* CJK Ideograph */ + [0x9c10, 0x9c10], /* CJK Ideograph */ + [0x9c11, 0x9c11], /* CJK Ideograph */ + [0x9c12, 0x9c12], /* CJK Ideograph */ + [0x9c13, 0x9c13], /* CJK Ideograph */ + [0x9c14, 0x9c14], /* CJK Ideograph */ + [0x9c15, 0x9c15], /* CJK Ideograph */ + [0x9c16, 0x9c16], /* CJK Ideograph */ + [0x9c17, 0x9c17], /* CJK Ideograph */ + [0x9c18, 0x9c18], /* CJK Ideograph */ + [0x9c19, 0x9c19], /* CJK Ideograph */ + [0x9c1a, 0x9c1a], /* CJK Ideograph */ + [0x9c1b, 0x9c1b], /* CJK Ideograph */ + [0x9c1c, 0x9c1c], /* CJK Ideograph */ + [0x9c1d, 0x9c1d], /* CJK Ideograph */ + [0x9c1e, 0x9c1e], /* CJK Ideograph */ + [0x9c1f, 0x9c1f], /* CJK Ideograph */ + [0x9c20, 0x9c20], /* CJK Ideograph */ + [0x9c21, 0x9c21], /* CJK Ideograph */ + [0x9c22, 0x9c22], /* CJK Ideograph */ + [0x9c23, 0x9c23], /* CJK Ideograph */ + [0x9c24, 0x9c24], /* CJK Ideograph */ + [0x9c25, 0x9c25], /* CJK Ideograph */ + [0x9c26, 0x9c26], /* CJK Ideograph */ + [0x9c27, 0x9c27], /* CJK Ideograph */ + [0x9c28, 0x9c28], /* CJK Ideograph */ + [0x9c29, 0x9c29], /* CJK Ideograph */ + [0x9c2a, 0x9c2a], /* CJK Ideograph */ + [0x9c2b, 0x9c2b], /* CJK Ideograph */ + [0x9c2c, 0x9c2c], /* CJK Ideograph */ + [0x9c2d, 0x9c2d], /* CJK Ideograph */ + [0x9c2e, 0x9c2e], /* CJK Ideograph */ + [0x9c2f, 0x9c2f], /* CJK Ideograph */ + [0x9c30, 0x9c30], /* CJK Ideograph */ + [0x9c31, 0x9c31], /* CJK Ideograph */ + [0x9c32, 0x9c32], /* CJK Ideograph */ + [0x9c33, 0x9c33], /* CJK Ideograph */ + [0x9c34, 0x9c34], /* CJK Ideograph */ + [0x9c35, 0x9c35], /* CJK Ideograph */ + [0x9c36, 0x9c36], /* CJK Ideograph */ + [0x9c37, 0x9c37], /* CJK Ideograph */ + [0x9c38, 0x9c38], /* CJK Ideograph */ + [0x9c39, 0x9c39], /* CJK Ideograph */ + [0x9c3a, 0x9c3a], /* CJK Ideograph */ + [0x9c3b, 0x9c3b], /* CJK Ideograph */ + [0x9c3c, 0x9c3c], /* CJK Ideograph */ + [0x9c3d, 0x9c3d], /* CJK Ideograph */ + [0x9c3e, 0x9c3e], /* CJK Ideograph */ + [0x9c3f, 0x9c3f], /* CJK Ideograph */ + [0x9c40, 0x9c40], /* CJK Ideograph */ + [0x9c41, 0x9c41], /* CJK Ideograph */ + [0x9c42, 0x9c42], /* CJK Ideograph */ + [0x9c43, 0x9c43], /* CJK Ideograph */ + [0x9c44, 0x9c44], /* CJK Ideograph */ + [0x9c45, 0x9c45], /* CJK Ideograph */ + [0x9c46, 0x9c46], /* CJK Ideograph */ + [0x9c47, 0x9c47], /* CJK Ideograph */ + [0x9c48, 0x9c48], /* CJK Ideograph */ + [0x9c49, 0x9c49], /* CJK Ideograph */ + [0x9c4a, 0x9c4a], /* CJK Ideograph */ + [0x9c4b, 0x9c4b], /* CJK Ideograph */ + [0x9c4c, 0x9c4c], /* CJK Ideograph */ + [0x9c4d, 0x9c4d], /* CJK Ideograph */ + [0x9c4e, 0x9c4e], /* CJK Ideograph */ + [0x9c4f, 0x9c4f], /* CJK Ideograph */ + [0x9c50, 0x9c50], /* CJK Ideograph */ + [0x9c51, 0x9c51], /* CJK Ideograph */ + [0x9c52, 0x9c52], /* CJK Ideograph */ + [0x9c53, 0x9c53], /* CJK Ideograph */ + [0x9c54, 0x9c54], /* CJK Ideograph */ + [0x9c55, 0x9c55], /* CJK Ideograph */ + [0x9c56, 0x9c56], /* CJK Ideograph */ + [0x9c57, 0x9c57], /* CJK Ideograph */ + [0x9c58, 0x9c58], /* CJK Ideograph */ + [0x9c59, 0x9c59], /* CJK Ideograph */ + [0x9c5a, 0x9c5a], /* CJK Ideograph */ + [0x9c5b, 0x9c5b], /* CJK Ideograph */ + [0x9c5c, 0x9c5c], /* CJK Ideograph */ + [0x9c5d, 0x9c5d], /* CJK Ideograph */ + [0x9c5e, 0x9c5e], /* CJK Ideograph */ + [0x9c5f, 0x9c5f], /* CJK Ideograph */ + [0x9c60, 0x9c60], /* CJK Ideograph */ + [0x9c61, 0x9c61], /* CJK Ideograph */ + [0x9c62, 0x9c62], /* CJK Ideograph */ + [0x9c63, 0x9c63], /* CJK Ideograph */ + [0x9c64, 0x9c64], /* CJK Ideograph */ + [0x9c65, 0x9c65], /* CJK Ideograph */ + [0x9c66, 0x9c66], /* CJK Ideograph */ + [0x9c67, 0x9c67], /* CJK Ideograph */ + [0x9c68, 0x9c68], /* CJK Ideograph */ + [0x9c69, 0x9c69], /* CJK Ideograph */ + [0x9c6a, 0x9c6a], /* CJK Ideograph */ + [0x9c6b, 0x9c6b], /* CJK Ideograph */ + [0x9c6c, 0x9c6c], /* CJK Ideograph */ + [0x9c6d, 0x9c6d], /* CJK Ideograph */ + [0x9c6e, 0x9c6e], /* CJK Ideograph */ + [0x9c6f, 0x9c6f], /* CJK Ideograph */ + [0x9c70, 0x9c70], /* CJK Ideograph */ + [0x9c71, 0x9c71], /* CJK Ideograph */ + [0x9c72, 0x9c72], /* CJK Ideograph */ + [0x9c73, 0x9c73], /* CJK Ideograph */ + [0x9c74, 0x9c74], /* CJK Ideograph */ + [0x9c75, 0x9c75], /* CJK Ideograph */ + [0x9c76, 0x9c76], /* CJK Ideograph */ + [0x9c77, 0x9c77], /* CJK Ideograph */ + [0x9c78, 0x9c78], /* CJK Ideograph */ + [0x9c79, 0x9c79], /* CJK Ideograph */ + [0x9c7a, 0x9c7a], /* CJK Ideograph */ + [0x9c7b, 0x9c7b], /* CJK Ideograph */ + [0x9c7c, 0x9c7c], /* CJK Ideograph */ + [0x9c7d, 0x9c7d], /* CJK Ideograph */ + [0x9c7e, 0x9c7e], /* CJK Ideograph */ + [0x9c7f, 0x9c7f], /* CJK Ideograph */ + [0x9c80, 0x9c80], /* CJK Ideograph */ + [0x9c81, 0x9c81], /* CJK Ideograph */ + [0x9c82, 0x9c82], /* CJK Ideograph */ + [0x9c83, 0x9c83], /* CJK Ideograph */ + [0x9c84, 0x9c84], /* CJK Ideograph */ + [0x9c85, 0x9c85], /* CJK Ideograph */ + [0x9c86, 0x9c86], /* CJK Ideograph */ + [0x9c87, 0x9c87], /* CJK Ideograph */ + [0x9c88, 0x9c88], /* CJK Ideograph */ + [0x9c89, 0x9c89], /* CJK Ideograph */ + [0x9c8a, 0x9c8a], /* CJK Ideograph */ + [0x9c8b, 0x9c8b], /* CJK Ideograph */ + [0x9c8c, 0x9c8c], /* CJK Ideograph */ + [0x9c8d, 0x9c8d], /* CJK Ideograph */ + [0x9c8e, 0x9c8e], /* CJK Ideograph */ + [0x9c8f, 0x9c8f], /* CJK Ideograph */ + [0x9c90, 0x9c90], /* CJK Ideograph */ + [0x9c91, 0x9c91], /* CJK Ideograph */ + [0x9c92, 0x9c92], /* CJK Ideograph */ + [0x9c93, 0x9c93], /* CJK Ideograph */ + [0x9c94, 0x9c94], /* CJK Ideograph */ + [0x9c95, 0x9c95], /* CJK Ideograph */ + [0x9c96, 0x9c96], /* CJK Ideograph */ + [0x9c97, 0x9c97], /* CJK Ideograph */ + [0x9c98, 0x9c98], /* CJK Ideograph */ + [0x9c99, 0x9c99], /* CJK Ideograph */ + [0x9c9a, 0x9c9a], /* CJK Ideograph */ + [0x9c9b, 0x9c9b], /* CJK Ideograph */ + [0x9c9c, 0x9c9c], /* CJK Ideograph */ + [0x9c9d, 0x9c9d], /* CJK Ideograph */ + [0x9c9e, 0x9c9e], /* CJK Ideograph */ + [0x9c9f, 0x9c9f], /* CJK Ideograph */ + [0x9ca0, 0x9ca0], /* CJK Ideograph */ + [0x9ca1, 0x9ca1], /* CJK Ideograph */ + [0x9ca2, 0x9ca2], /* CJK Ideograph */ + [0x9ca3, 0x9ca3], /* CJK Ideograph */ + [0x9ca4, 0x9ca4], /* CJK Ideograph */ + [0x9ca5, 0x9ca5], /* CJK Ideograph */ + [0x9ca6, 0x9ca6], /* CJK Ideograph */ + [0x9ca7, 0x9ca7], /* CJK Ideograph */ + [0x9ca8, 0x9ca8], /* CJK Ideograph */ + [0x9ca9, 0x9ca9], /* CJK Ideograph */ + [0x9caa, 0x9caa], /* CJK Ideograph */ + [0x9cab, 0x9cab], /* CJK Ideograph */ + [0x9cac, 0x9cac], /* CJK Ideograph */ + [0x9cad, 0x9cad], /* CJK Ideograph */ + [0x9cae, 0x9cae], /* CJK Ideograph */ + [0x9caf, 0x9caf], /* CJK Ideograph */ + [0x9cb0, 0x9cb0], /* CJK Ideograph */ + [0x9cb1, 0x9cb1], /* CJK Ideograph */ + [0x9cb2, 0x9cb2], /* CJK Ideograph */ + [0x9cb3, 0x9cb3], /* CJK Ideograph */ + [0x9cb4, 0x9cb4], /* CJK Ideograph */ + [0x9cb5, 0x9cb5], /* CJK Ideograph */ + [0x9cb6, 0x9cb6], /* CJK Ideograph */ + [0x9cb7, 0x9cb7], /* CJK Ideograph */ + [0x9cb8, 0x9cb8], /* CJK Ideograph */ + [0x9cb9, 0x9cb9], /* CJK Ideograph */ + [0x9cba, 0x9cba], /* CJK Ideograph */ + [0x9cbb, 0x9cbb], /* CJK Ideograph */ + [0x9cbc, 0x9cbc], /* CJK Ideograph */ + [0x9cbd, 0x9cbd], /* CJK Ideograph */ + [0x9cbe, 0x9cbe], /* CJK Ideograph */ + [0x9cbf, 0x9cbf], /* CJK Ideograph */ + [0x9cc0, 0x9cc0], /* CJK Ideograph */ + [0x9cc1, 0x9cc1], /* CJK Ideograph */ + [0x9cc2, 0x9cc2], /* CJK Ideograph */ + [0x9cc3, 0x9cc3], /* CJK Ideograph */ + [0x9cc4, 0x9cc4], /* CJK Ideograph */ + [0x9cc5, 0x9cc5], /* CJK Ideograph */ + [0x9cc6, 0x9cc6], /* CJK Ideograph */ + [0x9cc7, 0x9cc7], /* CJK Ideograph */ + [0x9cc8, 0x9cc8], /* CJK Ideograph */ + [0x9cc9, 0x9cc9], /* CJK Ideograph */ + [0x9cca, 0x9cca], /* CJK Ideograph */ + [0x9ccb, 0x9ccb], /* CJK Ideograph */ + [0x9ccc, 0x9ccc], /* CJK Ideograph */ + [0x9ccd, 0x9ccd], /* CJK Ideograph */ + [0x9cce, 0x9cce], /* CJK Ideograph */ + [0x9ccf, 0x9ccf], /* CJK Ideograph */ + [0x9cd0, 0x9cd0], /* CJK Ideograph */ + [0x9cd1, 0x9cd1], /* CJK Ideograph */ + [0x9cd2, 0x9cd2], /* CJK Ideograph */ + [0x9cd3, 0x9cd3], /* CJK Ideograph */ + [0x9cd4, 0x9cd4], /* CJK Ideograph */ + [0x9cd5, 0x9cd5], /* CJK Ideograph */ + [0x9cd6, 0x9cd6], /* CJK Ideograph */ + [0x9cd7, 0x9cd7], /* CJK Ideograph */ + [0x9cd8, 0x9cd8], /* CJK Ideograph */ + [0x9cd9, 0x9cd9], /* CJK Ideograph */ + [0x9cda, 0x9cda], /* CJK Ideograph */ + [0x9cdb, 0x9cdb], /* CJK Ideograph */ + [0x9cdc, 0x9cdc], /* CJK Ideograph */ + [0x9cdd, 0x9cdd], /* CJK Ideograph */ + [0x9cde, 0x9cde], /* CJK Ideograph */ + [0x9cdf, 0x9cdf], /* CJK Ideograph */ + [0x9ce0, 0x9ce0], /* CJK Ideograph */ + [0x9ce1, 0x9ce1], /* CJK Ideograph */ + [0x9ce2, 0x9ce2], /* CJK Ideograph */ + [0x9ce3, 0x9ce3], /* CJK Ideograph */ + [0x9ce4, 0x9ce4], /* CJK Ideograph */ + [0x9ce5, 0x9ce5], /* CJK Ideograph */ + [0x9ce6, 0x9ce6], /* CJK Ideograph */ + [0x9ce7, 0x9ce7], /* CJK Ideograph */ + [0x9ce8, 0x9ce8], /* CJK Ideograph */ + [0x9ce9, 0x9ce9], /* CJK Ideograph */ + [0x9cea, 0x9cea], /* CJK Ideograph */ + [0x9ceb, 0x9ceb], /* CJK Ideograph */ + [0x9cec, 0x9cec], /* CJK Ideograph */ + [0x9ced, 0x9ced], /* CJK Ideograph */ + [0x9cee, 0x9cee], /* CJK Ideograph */ + [0x9cef, 0x9cef], /* CJK Ideograph */ + [0x9cf0, 0x9cf0], /* CJK Ideograph */ + [0x9cf1, 0x9cf1], /* CJK Ideograph */ + [0x9cf2, 0x9cf2], /* CJK Ideograph */ + [0x9cf3, 0x9cf3], /* CJK Ideograph */ + [0x9cf4, 0x9cf4], /* CJK Ideograph */ + [0x9cf5, 0x9cf5], /* CJK Ideograph */ + [0x9cf6, 0x9cf6], /* CJK Ideograph */ + [0x9cf7, 0x9cf7], /* CJK Ideograph */ + [0x9cf8, 0x9cf8], /* CJK Ideograph */ + [0x9cf9, 0x9cf9], /* CJK Ideograph */ + [0x9cfa, 0x9cfa], /* CJK Ideograph */ + [0x9cfb, 0x9cfb], /* CJK Ideograph */ + [0x9cfc, 0x9cfc], /* CJK Ideograph */ + [0x9cfd, 0x9cfd], /* CJK Ideograph */ + [0x9cfe, 0x9cfe], /* CJK Ideograph */ + [0x9cff, 0x9cff], /* CJK Ideograph */ + [0x9d00, 0x9d00], /* CJK Ideograph */ + [0x9d01, 0x9d01], /* CJK Ideograph */ + [0x9d02, 0x9d02], /* CJK Ideograph */ + [0x9d03, 0x9d03], /* CJK Ideograph */ + [0x9d04, 0x9d04], /* CJK Ideograph */ + [0x9d05, 0x9d05], /* CJK Ideograph */ + [0x9d06, 0x9d06], /* CJK Ideograph */ + [0x9d07, 0x9d07], /* CJK Ideograph */ + [0x9d08, 0x9d08], /* CJK Ideograph */ + [0x9d09, 0x9d09], /* CJK Ideograph */ + [0x9d0a, 0x9d0a], /* CJK Ideograph */ + [0x9d0b, 0x9d0b], /* CJK Ideograph */ + [0x9d0c, 0x9d0c], /* CJK Ideograph */ + [0x9d0d, 0x9d0d], /* CJK Ideograph */ + [0x9d0e, 0x9d0e], /* CJK Ideograph */ + [0x9d0f, 0x9d0f], /* CJK Ideograph */ + [0x9d10, 0x9d10], /* CJK Ideograph */ + [0x9d11, 0x9d11], /* CJK Ideograph */ + [0x9d12, 0x9d12], /* CJK Ideograph */ + [0x9d13, 0x9d13], /* CJK Ideograph */ + [0x9d14, 0x9d14], /* CJK Ideograph */ + [0x9d15, 0x9d15], /* CJK Ideograph */ + [0x9d16, 0x9d16], /* CJK Ideograph */ + [0x9d17, 0x9d17], /* CJK Ideograph */ + [0x9d18, 0x9d18], /* CJK Ideograph */ + [0x9d19, 0x9d19], /* CJK Ideograph */ + [0x9d1a, 0x9d1a], /* CJK Ideograph */ + [0x9d1b, 0x9d1b], /* CJK Ideograph */ + [0x9d1c, 0x9d1c], /* CJK Ideograph */ + [0x9d1d, 0x9d1d], /* CJK Ideograph */ + [0x9d1e, 0x9d1e], /* CJK Ideograph */ + [0x9d1f, 0x9d1f], /* CJK Ideograph */ + [0x9d20, 0x9d20], /* CJK Ideograph */ + [0x9d21, 0x9d21], /* CJK Ideograph */ + [0x9d22, 0x9d22], /* CJK Ideograph */ + [0x9d23, 0x9d23], /* CJK Ideograph */ + [0x9d24, 0x9d24], /* CJK Ideograph */ + [0x9d25, 0x9d25], /* CJK Ideograph */ + [0x9d26, 0x9d26], /* CJK Ideograph */ + [0x9d27, 0x9d27], /* CJK Ideograph */ + [0x9d28, 0x9d28], /* CJK Ideograph */ + [0x9d29, 0x9d29], /* CJK Ideograph */ + [0x9d2a, 0x9d2a], /* CJK Ideograph */ + [0x9d2b, 0x9d2b], /* CJK Ideograph */ + [0x9d2c, 0x9d2c], /* CJK Ideograph */ + [0x9d2d, 0x9d2d], /* CJK Ideograph */ + [0x9d2e, 0x9d2e], /* CJK Ideograph */ + [0x9d2f, 0x9d2f], /* CJK Ideograph */ + [0x9d30, 0x9d30], /* CJK Ideograph */ + [0x9d31, 0x9d31], /* CJK Ideograph */ + [0x9d32, 0x9d32], /* CJK Ideograph */ + [0x9d33, 0x9d33], /* CJK Ideograph */ + [0x9d34, 0x9d34], /* CJK Ideograph */ + [0x9d35, 0x9d35], /* CJK Ideograph */ + [0x9d36, 0x9d36], /* CJK Ideograph */ + [0x9d37, 0x9d37], /* CJK Ideograph */ + [0x9d38, 0x9d38], /* CJK Ideograph */ + [0x9d39, 0x9d39], /* CJK Ideograph */ + [0x9d3a, 0x9d3a], /* CJK Ideograph */ + [0x9d3b, 0x9d3b], /* CJK Ideograph */ + [0x9d3c, 0x9d3c], /* CJK Ideograph */ + [0x9d3d, 0x9d3d], /* CJK Ideograph */ + [0x9d3e, 0x9d3e], /* CJK Ideograph */ + [0x9d3f, 0x9d3f], /* CJK Ideograph */ + [0x9d40, 0x9d40], /* CJK Ideograph */ + [0x9d41, 0x9d41], /* CJK Ideograph */ + [0x9d42, 0x9d42], /* CJK Ideograph */ + [0x9d43, 0x9d43], /* CJK Ideograph */ + [0x9d44, 0x9d44], /* CJK Ideograph */ + [0x9d45, 0x9d45], /* CJK Ideograph */ + [0x9d46, 0x9d46], /* CJK Ideograph */ + [0x9d47, 0x9d47], /* CJK Ideograph */ + [0x9d48, 0x9d48], /* CJK Ideograph */ + [0x9d49, 0x9d49], /* CJK Ideograph */ + [0x9d4a, 0x9d4a], /* CJK Ideograph */ + [0x9d4b, 0x9d4b], /* CJK Ideograph */ + [0x9d4c, 0x9d4c], /* CJK Ideograph */ + [0x9d4d, 0x9d4d], /* CJK Ideograph */ + [0x9d4e, 0x9d4e], /* CJK Ideograph */ + [0x9d4f, 0x9d4f], /* CJK Ideograph */ + [0x9d50, 0x9d50], /* CJK Ideograph */ + [0x9d51, 0x9d51], /* CJK Ideograph */ + [0x9d52, 0x9d52], /* CJK Ideograph */ + [0x9d53, 0x9d53], /* CJK Ideograph */ + [0x9d54, 0x9d54], /* CJK Ideograph */ + [0x9d55, 0x9d55], /* CJK Ideograph */ + [0x9d56, 0x9d56], /* CJK Ideograph */ + [0x9d57, 0x9d57], /* CJK Ideograph */ + [0x9d58, 0x9d58], /* CJK Ideograph */ + [0x9d59, 0x9d59], /* CJK Ideograph */ + [0x9d5a, 0x9d5a], /* CJK Ideograph */ + [0x9d5b, 0x9d5b], /* CJK Ideograph */ + [0x9d5c, 0x9d5c], /* CJK Ideograph */ + [0x9d5d, 0x9d5d], /* CJK Ideograph */ + [0x9d5e, 0x9d5e], /* CJK Ideograph */ + [0x9d5f, 0x9d5f], /* CJK Ideograph */ + [0x9d60, 0x9d60], /* CJK Ideograph */ + [0x9d61, 0x9d61], /* CJK Ideograph */ + [0x9d62, 0x9d62], /* CJK Ideograph */ + [0x9d63, 0x9d63], /* CJK Ideograph */ + [0x9d64, 0x9d64], /* CJK Ideograph */ + [0x9d65, 0x9d65], /* CJK Ideograph */ + [0x9d66, 0x9d66], /* CJK Ideograph */ + [0x9d67, 0x9d67], /* CJK Ideograph */ + [0x9d68, 0x9d68], /* CJK Ideograph */ + [0x9d69, 0x9d69], /* CJK Ideograph */ + [0x9d6a, 0x9d6a], /* CJK Ideograph */ + [0x9d6b, 0x9d6b], /* CJK Ideograph */ + [0x9d6c, 0x9d6c], /* CJK Ideograph */ + [0x9d6d, 0x9d6d], /* CJK Ideograph */ + [0x9d6e, 0x9d6e], /* CJK Ideograph */ + [0x9d6f, 0x9d6f], /* CJK Ideograph */ + [0x9d70, 0x9d70], /* CJK Ideograph */ + [0x9d71, 0x9d71], /* CJK Ideograph */ + [0x9d72, 0x9d72], /* CJK Ideograph */ + [0x9d73, 0x9d73], /* CJK Ideograph */ + [0x9d74, 0x9d74], /* CJK Ideograph */ + [0x9d75, 0x9d75], /* CJK Ideograph */ + [0x9d76, 0x9d76], /* CJK Ideograph */ + [0x9d77, 0x9d77], /* CJK Ideograph */ + [0x9d78, 0x9d78], /* CJK Ideograph */ + [0x9d79, 0x9d79], /* CJK Ideograph */ + [0x9d7a, 0x9d7a], /* CJK Ideograph */ + [0x9d7b, 0x9d7b], /* CJK Ideograph */ + [0x9d7c, 0x9d7c], /* CJK Ideograph */ + [0x9d7d, 0x9d7d], /* CJK Ideograph */ + [0x9d7e, 0x9d7e], /* CJK Ideograph */ + [0x9d7f, 0x9d7f], /* CJK Ideograph */ + [0x9d80, 0x9d80], /* CJK Ideograph */ + [0x9d81, 0x9d81], /* CJK Ideograph */ + [0x9d82, 0x9d82], /* CJK Ideograph */ + [0x9d83, 0x9d83], /* CJK Ideograph */ + [0x9d84, 0x9d84], /* CJK Ideograph */ + [0x9d85, 0x9d85], /* CJK Ideograph */ + [0x9d86, 0x9d86], /* CJK Ideograph */ + [0x9d87, 0x9d87], /* CJK Ideograph */ + [0x9d88, 0x9d88], /* CJK Ideograph */ + [0x9d89, 0x9d89], /* CJK Ideograph */ + [0x9d8a, 0x9d8a], /* CJK Ideograph */ + [0x9d8b, 0x9d8b], /* CJK Ideograph */ + [0x9d8c, 0x9d8c], /* CJK Ideograph */ + [0x9d8d, 0x9d8d], /* CJK Ideograph */ + [0x9d8e, 0x9d8e], /* CJK Ideograph */ + [0x9d8f, 0x9d8f], /* CJK Ideograph */ + [0x9d90, 0x9d90], /* CJK Ideograph */ + [0x9d91, 0x9d91], /* CJK Ideograph */ + [0x9d92, 0x9d92], /* CJK Ideograph */ + [0x9d93, 0x9d93], /* CJK Ideograph */ + [0x9d94, 0x9d94], /* CJK Ideograph */ + [0x9d95, 0x9d95], /* CJK Ideograph */ + [0x9d96, 0x9d96], /* CJK Ideograph */ + [0x9d97, 0x9d97], /* CJK Ideograph */ + [0x9d98, 0x9d98], /* CJK Ideograph */ + [0x9d99, 0x9d99], /* CJK Ideograph */ + [0x9d9a, 0x9d9a], /* CJK Ideograph */ + [0x9d9b, 0x9d9b], /* CJK Ideograph */ + [0x9d9c, 0x9d9c], /* CJK Ideograph */ + [0x9d9d, 0x9d9d], /* CJK Ideograph */ + [0x9d9e, 0x9d9e], /* CJK Ideograph */ + [0x9d9f, 0x9d9f], /* CJK Ideograph */ + [0x9da0, 0x9da0], /* CJK Ideograph */ + [0x9da1, 0x9da1], /* CJK Ideograph */ + [0x9da2, 0x9da2], /* CJK Ideograph */ + [0x9da3, 0x9da3], /* CJK Ideograph */ + [0x9da4, 0x9da4], /* CJK Ideograph */ + [0x9da5, 0x9da5], /* CJK Ideograph */ + [0x9da6, 0x9da6], /* CJK Ideograph */ + [0x9da7, 0x9da7], /* CJK Ideograph */ + [0x9da8, 0x9da8], /* CJK Ideograph */ + [0x9da9, 0x9da9], /* CJK Ideograph */ + [0x9daa, 0x9daa], /* CJK Ideograph */ + [0x9dab, 0x9dab], /* CJK Ideograph */ + [0x9dac, 0x9dac], /* CJK Ideograph */ + [0x9dad, 0x9dad], /* CJK Ideograph */ + [0x9dae, 0x9dae], /* CJK Ideograph */ + [0x9daf, 0x9daf], /* CJK Ideograph */ + [0x9db0, 0x9db0], /* CJK Ideograph */ + [0x9db1, 0x9db1], /* CJK Ideograph */ + [0x9db2, 0x9db2], /* CJK Ideograph */ + [0x9db3, 0x9db3], /* CJK Ideograph */ + [0x9db4, 0x9db4], /* CJK Ideograph */ + [0x9db5, 0x9db5], /* CJK Ideograph */ + [0x9db6, 0x9db6], /* CJK Ideograph */ + [0x9db7, 0x9db7], /* CJK Ideograph */ + [0x9db8, 0x9db8], /* CJK Ideograph */ + [0x9db9, 0x9db9], /* CJK Ideograph */ + [0x9dba, 0x9dba], /* CJK Ideograph */ + [0x9dbb, 0x9dbb], /* CJK Ideograph */ + [0x9dbc, 0x9dbc], /* CJK Ideograph */ + [0x9dbd, 0x9dbd], /* CJK Ideograph */ + [0x9dbe, 0x9dbe], /* CJK Ideograph */ + [0x9dbf, 0x9dbf], /* CJK Ideograph */ + [0x9dc0, 0x9dc0], /* CJK Ideograph */ + [0x9dc1, 0x9dc1], /* CJK Ideograph */ + [0x9dc2, 0x9dc2], /* CJK Ideograph */ + [0x9dc3, 0x9dc3], /* CJK Ideograph */ + [0x9dc4, 0x9dc4], /* CJK Ideograph */ + [0x9dc5, 0x9dc5], /* CJK Ideograph */ + [0x9dc6, 0x9dc6], /* CJK Ideograph */ + [0x9dc7, 0x9dc7], /* CJK Ideograph */ + [0x9dc8, 0x9dc8], /* CJK Ideograph */ + [0x9dc9, 0x9dc9], /* CJK Ideograph */ + [0x9dca, 0x9dca], /* CJK Ideograph */ + [0x9dcb, 0x9dcb], /* CJK Ideograph */ + [0x9dcc, 0x9dcc], /* CJK Ideograph */ + [0x9dcd, 0x9dcd], /* CJK Ideograph */ + [0x9dce, 0x9dce], /* CJK Ideograph */ + [0x9dcf, 0x9dcf], /* CJK Ideograph */ + [0x9dd0, 0x9dd0], /* CJK Ideograph */ + [0x9dd1, 0x9dd1], /* CJK Ideograph */ + [0x9dd2, 0x9dd2], /* CJK Ideograph */ + [0x9dd3, 0x9dd3], /* CJK Ideograph */ + [0x9dd4, 0x9dd4], /* CJK Ideograph */ + [0x9dd5, 0x9dd5], /* CJK Ideograph */ + [0x9dd6, 0x9dd6], /* CJK Ideograph */ + [0x9dd7, 0x9dd7], /* CJK Ideograph */ + [0x9dd8, 0x9dd8], /* CJK Ideograph */ + [0x9dd9, 0x9dd9], /* CJK Ideograph */ + [0x9dda, 0x9dda], /* CJK Ideograph */ + [0x9ddb, 0x9ddb], /* CJK Ideograph */ + [0x9ddc, 0x9ddc], /* CJK Ideograph */ + [0x9ddd, 0x9ddd], /* CJK Ideograph */ + [0x9dde, 0x9dde], /* CJK Ideograph */ + [0x9ddf, 0x9ddf], /* CJK Ideograph */ + [0x9de0, 0x9de0], /* CJK Ideograph */ + [0x9de1, 0x9de1], /* CJK Ideograph */ + [0x9de2, 0x9de2], /* CJK Ideograph */ + [0x9de3, 0x9de3], /* CJK Ideograph */ + [0x9de4, 0x9de4], /* CJK Ideograph */ + [0x9de5, 0x9de5], /* CJK Ideograph */ + [0x9de6, 0x9de6], /* CJK Ideograph */ + [0x9de7, 0x9de7], /* CJK Ideograph */ + [0x9de8, 0x9de8], /* CJK Ideograph */ + [0x9de9, 0x9de9], /* CJK Ideograph */ + [0x9dea, 0x9dea], /* CJK Ideograph */ + [0x9deb, 0x9deb], /* CJK Ideograph */ + [0x9dec, 0x9dec], /* CJK Ideograph */ + [0x9ded, 0x9ded], /* CJK Ideograph */ + [0x9dee, 0x9dee], /* CJK Ideograph */ + [0x9def, 0x9def], /* CJK Ideograph */ + [0x9df0, 0x9df0], /* CJK Ideograph */ + [0x9df1, 0x9df1], /* CJK Ideograph */ + [0x9df2, 0x9df2], /* CJK Ideograph */ + [0x9df3, 0x9df3], /* CJK Ideograph */ + [0x9df4, 0x9df4], /* CJK Ideograph */ + [0x9df5, 0x9df5], /* CJK Ideograph */ + [0x9df6, 0x9df6], /* CJK Ideograph */ + [0x9df7, 0x9df7], /* CJK Ideograph */ + [0x9df8, 0x9df8], /* CJK Ideograph */ + [0x9df9, 0x9df9], /* CJK Ideograph */ + [0x9dfa, 0x9dfa], /* CJK Ideograph */ + [0x9dfb, 0x9dfb], /* CJK Ideograph */ + [0x9dfc, 0x9dfc], /* CJK Ideograph */ + [0x9dfd, 0x9dfd], /* CJK Ideograph */ + [0x9dfe, 0x9dfe], /* CJK Ideograph */ + [0x9dff, 0x9dff], /* CJK Ideograph */ + [0x9e00, 0x9e00], /* CJK Ideograph */ + [0x9e01, 0x9e01], /* CJK Ideograph */ + [0x9e02, 0x9e02], /* CJK Ideograph */ + [0x9e03, 0x9e03], /* CJK Ideograph */ + [0x9e04, 0x9e04], /* CJK Ideograph */ + [0x9e05, 0x9e05], /* CJK Ideograph */ + [0x9e06, 0x9e06], /* CJK Ideograph */ + [0x9e07, 0x9e07], /* CJK Ideograph */ + [0x9e08, 0x9e08], /* CJK Ideograph */ + [0x9e09, 0x9e09], /* CJK Ideograph */ + [0x9e0a, 0x9e0a], /* CJK Ideograph */ + [0x9e0b, 0x9e0b], /* CJK Ideograph */ + [0x9e0c, 0x9e0c], /* CJK Ideograph */ + [0x9e0d, 0x9e0d], /* CJK Ideograph */ + [0x9e0e, 0x9e0e], /* CJK Ideograph */ + [0x9e0f, 0x9e0f], /* CJK Ideograph */ + [0x9e10, 0x9e10], /* CJK Ideograph */ + [0x9e11, 0x9e11], /* CJK Ideograph */ + [0x9e12, 0x9e12], /* CJK Ideograph */ + [0x9e13, 0x9e13], /* CJK Ideograph */ + [0x9e14, 0x9e14], /* CJK Ideograph */ + [0x9e15, 0x9e15], /* CJK Ideograph */ + [0x9e16, 0x9e16], /* CJK Ideograph */ + [0x9e17, 0x9e17], /* CJK Ideograph */ + [0x9e18, 0x9e18], /* CJK Ideograph */ + [0x9e19, 0x9e19], /* CJK Ideograph */ + [0x9e1a, 0x9e1a], /* CJK Ideograph */ + [0x9e1b, 0x9e1b], /* CJK Ideograph */ + [0x9e1c, 0x9e1c], /* CJK Ideograph */ + [0x9e1d, 0x9e1d], /* CJK Ideograph */ + [0x9e1e, 0x9e1e], /* CJK Ideograph */ + [0x9e1f, 0x9e1f], /* CJK Ideograph */ + [0x9e20, 0x9e20], /* CJK Ideograph */ + [0x9e21, 0x9e21], /* CJK Ideograph */ + [0x9e22, 0x9e22], /* CJK Ideograph */ + [0x9e23, 0x9e23], /* CJK Ideograph */ + [0x9e24, 0x9e24], /* CJK Ideograph */ + [0x9e25, 0x9e25], /* CJK Ideograph */ + [0x9e26, 0x9e26], /* CJK Ideograph */ + [0x9e27, 0x9e27], /* CJK Ideograph */ + [0x9e28, 0x9e28], /* CJK Ideograph */ + [0x9e29, 0x9e29], /* CJK Ideograph */ + [0x9e2a, 0x9e2a], /* CJK Ideograph */ + [0x9e2b, 0x9e2b], /* CJK Ideograph */ + [0x9e2c, 0x9e2c], /* CJK Ideograph */ + [0x9e2d, 0x9e2d], /* CJK Ideograph */ + [0x9e2e, 0x9e2e], /* CJK Ideograph */ + [0x9e2f, 0x9e2f], /* CJK Ideograph */ + [0x9e30, 0x9e30], /* CJK Ideograph */ + [0x9e31, 0x9e31], /* CJK Ideograph */ + [0x9e32, 0x9e32], /* CJK Ideograph */ + [0x9e33, 0x9e33], /* CJK Ideograph */ + [0x9e34, 0x9e34], /* CJK Ideograph */ + [0x9e35, 0x9e35], /* CJK Ideograph */ + [0x9e36, 0x9e36], /* CJK Ideograph */ + [0x9e37, 0x9e37], /* CJK Ideograph */ + [0x9e38, 0x9e38], /* CJK Ideograph */ + [0x9e39, 0x9e39], /* CJK Ideograph */ + [0x9e3a, 0x9e3a], /* CJK Ideograph */ + [0x9e3b, 0x9e3b], /* CJK Ideograph */ + [0x9e3c, 0x9e3c], /* CJK Ideograph */ + [0x9e3d, 0x9e3d], /* CJK Ideograph */ + [0x9e3e, 0x9e3e], /* CJK Ideograph */ + [0x9e3f, 0x9e3f], /* CJK Ideograph */ + [0x9e40, 0x9e40], /* CJK Ideograph */ + [0x9e41, 0x9e41], /* CJK Ideograph */ + [0x9e42, 0x9e42], /* CJK Ideograph */ + [0x9e43, 0x9e43], /* CJK Ideograph */ + [0x9e44, 0x9e44], /* CJK Ideograph */ + [0x9e45, 0x9e45], /* CJK Ideograph */ + [0x9e46, 0x9e46], /* CJK Ideograph */ + [0x9e47, 0x9e47], /* CJK Ideograph */ + [0x9e48, 0x9e48], /* CJK Ideograph */ + [0x9e49, 0x9e49], /* CJK Ideograph */ + [0x9e4a, 0x9e4a], /* CJK Ideograph */ + [0x9e4b, 0x9e4b], /* CJK Ideograph */ + [0x9e4c, 0x9e4c], /* CJK Ideograph */ + [0x9e4d, 0x9e4d], /* CJK Ideograph */ + [0x9e4e, 0x9e4e], /* CJK Ideograph */ + [0x9e4f, 0x9e4f], /* CJK Ideograph */ + [0x9e50, 0x9e50], /* CJK Ideograph */ + [0x9e51, 0x9e51], /* CJK Ideograph */ + [0x9e52, 0x9e52], /* CJK Ideograph */ + [0x9e53, 0x9e53], /* CJK Ideograph */ + [0x9e54, 0x9e54], /* CJK Ideograph */ + [0x9e55, 0x9e55], /* CJK Ideograph */ + [0x9e56, 0x9e56], /* CJK Ideograph */ + [0x9e57, 0x9e57], /* CJK Ideograph */ + [0x9e58, 0x9e58], /* CJK Ideograph */ + [0x9e59, 0x9e59], /* CJK Ideograph */ + [0x9e5a, 0x9e5a], /* CJK Ideograph */ + [0x9e5b, 0x9e5b], /* CJK Ideograph */ + [0x9e5c, 0x9e5c], /* CJK Ideograph */ + [0x9e5d, 0x9e5d], /* CJK Ideograph */ + [0x9e5e, 0x9e5e], /* CJK Ideograph */ + [0x9e5f, 0x9e5f], /* CJK Ideograph */ + [0x9e60, 0x9e60], /* CJK Ideograph */ + [0x9e61, 0x9e61], /* CJK Ideograph */ + [0x9e62, 0x9e62], /* CJK Ideograph */ + [0x9e63, 0x9e63], /* CJK Ideograph */ + [0x9e64, 0x9e64], /* CJK Ideograph */ + [0x9e65, 0x9e65], /* CJK Ideograph */ + [0x9e66, 0x9e66], /* CJK Ideograph */ + [0x9e67, 0x9e67], /* CJK Ideograph */ + [0x9e68, 0x9e68], /* CJK Ideograph */ + [0x9e69, 0x9e69], /* CJK Ideograph */ + [0x9e6a, 0x9e6a], /* CJK Ideograph */ + [0x9e6b, 0x9e6b], /* CJK Ideograph */ + [0x9e6c, 0x9e6c], /* CJK Ideograph */ + [0x9e6d, 0x9e6d], /* CJK Ideograph */ + [0x9e6e, 0x9e6e], /* CJK Ideograph */ + [0x9e6f, 0x9e6f], /* CJK Ideograph */ + [0x9e70, 0x9e70], /* CJK Ideograph */ + [0x9e71, 0x9e71], /* CJK Ideograph */ + [0x9e72, 0x9e72], /* CJK Ideograph */ + [0x9e73, 0x9e73], /* CJK Ideograph */ + [0x9e74, 0x9e74], /* CJK Ideograph */ + [0x9e75, 0x9e75], /* CJK Ideograph */ + [0x9e76, 0x9e76], /* CJK Ideograph */ + [0x9e77, 0x9e77], /* CJK Ideograph */ + [0x9e78, 0x9e78], /* CJK Ideograph */ + [0x9e79, 0x9e79], /* CJK Ideograph */ + [0x9e7a, 0x9e7a], /* CJK Ideograph */ + [0x9e7b, 0x9e7b], /* CJK Ideograph */ + [0x9e7c, 0x9e7c], /* CJK Ideograph */ + [0x9e7d, 0x9e7d], /* CJK Ideograph */ + [0x9e7e, 0x9e7e], /* CJK Ideograph */ + [0x9e7f, 0x9e7f], /* CJK Ideograph */ + [0x9e80, 0x9e80], /* CJK Ideograph */ + [0x9e81, 0x9e81], /* CJK Ideograph */ + [0x9e82, 0x9e82], /* CJK Ideograph */ + [0x9e83, 0x9e83], /* CJK Ideograph */ + [0x9e84, 0x9e84], /* CJK Ideograph */ + [0x9e85, 0x9e85], /* CJK Ideograph */ + [0x9e86, 0x9e86], /* CJK Ideograph */ + [0x9e87, 0x9e87], /* CJK Ideograph */ + [0x9e88, 0x9e88], /* CJK Ideograph */ + [0x9e89, 0x9e89], /* CJK Ideograph */ + [0x9e8a, 0x9e8a], /* CJK Ideograph */ + [0x9e8b, 0x9e8b], /* CJK Ideograph */ + [0x9e8c, 0x9e8c], /* CJK Ideograph */ + [0x9e8d, 0x9e8d], /* CJK Ideograph */ + [0x9e8e, 0x9e8e], /* CJK Ideograph */ + [0x9e8f, 0x9e8f], /* CJK Ideograph */ + [0x9e90, 0x9e90], /* CJK Ideograph */ + [0x9e91, 0x9e91], /* CJK Ideograph */ + [0x9e92, 0x9e92], /* CJK Ideograph */ + [0x9e93, 0x9e93], /* CJK Ideograph */ + [0x9e94, 0x9e94], /* CJK Ideograph */ + [0x9e95, 0x9e95], /* CJK Ideograph */ + [0x9e96, 0x9e96], /* CJK Ideograph */ + [0x9e97, 0x9e97], /* CJK Ideograph */ + [0x9e98, 0x9e98], /* CJK Ideograph */ + [0x9e99, 0x9e99], /* CJK Ideograph */ + [0x9e9a, 0x9e9a], /* CJK Ideograph */ + [0x9e9b, 0x9e9b], /* CJK Ideograph */ + [0x9e9c, 0x9e9c], /* CJK Ideograph */ + [0x9e9d, 0x9e9d], /* CJK Ideograph */ + [0x9e9e, 0x9e9e], /* CJK Ideograph */ + [0x9e9f, 0x9e9f], /* CJK Ideograph */ + [0x9ea0, 0x9ea0], /* CJK Ideograph */ + [0x9ea1, 0x9ea1], /* CJK Ideograph */ + [0x9ea2, 0x9ea2], /* CJK Ideograph */ + [0x9ea3, 0x9ea3], /* CJK Ideograph */ + [0x9ea4, 0x9ea4], /* CJK Ideograph */ + [0x9ea5, 0x9ea5], /* CJK Ideograph */ + [0x9ea6, 0x9ea6], /* CJK Ideograph */ + [0x9ea7, 0x9ea7], /* CJK Ideograph */ + [0x9ea8, 0x9ea8], /* CJK Ideograph */ + [0x9ea9, 0x9ea9], /* CJK Ideograph */ + [0x9eaa, 0x9eaa], /* CJK Ideograph */ + [0x9eab, 0x9eab], /* CJK Ideograph */ + [0x9eac, 0x9eac], /* CJK Ideograph */ + [0x9ead, 0x9ead], /* CJK Ideograph */ + [0x9eae, 0x9eae], /* CJK Ideograph */ + [0x9eaf, 0x9eaf], /* CJK Ideograph */ + [0x9eb0, 0x9eb0], /* CJK Ideograph */ + [0x9eb1, 0x9eb1], /* CJK Ideograph */ + [0x9eb2, 0x9eb2], /* CJK Ideograph */ + [0x9eb3, 0x9eb3], /* CJK Ideograph */ + [0x9eb4, 0x9eb4], /* CJK Ideograph */ + [0x9eb5, 0x9eb5], /* CJK Ideograph */ + [0x9eb6, 0x9eb6], /* CJK Ideograph */ + [0x9eb7, 0x9eb7], /* CJK Ideograph */ + [0x9eb8, 0x9eb8], /* CJK Ideograph */ + [0x9eb9, 0x9eb9], /* CJK Ideograph */ + [0x9eba, 0x9eba], /* CJK Ideograph */ + [0x9ebb, 0x9ebb], /* CJK Ideograph */ + [0x9ebc, 0x9ebc], /* CJK Ideograph */ + [0x9ebd, 0x9ebd], /* CJK Ideograph */ + [0x9ebe, 0x9ebe], /* CJK Ideograph */ + [0x9ebf, 0x9ebf], /* CJK Ideograph */ + [0x9ec0, 0x9ec0], /* CJK Ideograph */ + [0x9ec1, 0x9ec1], /* CJK Ideograph */ + [0x9ec2, 0x9ec2], /* CJK Ideograph */ + [0x9ec3, 0x9ec3], /* CJK Ideograph */ + [0x9ec4, 0x9ec4], /* CJK Ideograph */ + [0x9ec5, 0x9ec5], /* CJK Ideograph */ + [0x9ec6, 0x9ec6], /* CJK Ideograph */ + [0x9ec7, 0x9ec7], /* CJK Ideograph */ + [0x9ec8, 0x9ec8], /* CJK Ideograph */ + [0x9ec9, 0x9ec9], /* CJK Ideograph */ + [0x9eca, 0x9eca], /* CJK Ideograph */ + [0x9ecb, 0x9ecb], /* CJK Ideograph */ + [0x9ecc, 0x9ecc], /* CJK Ideograph */ + [0x9ecd, 0x9ecd], /* CJK Ideograph */ + [0x9ece, 0x9ece], /* CJK Ideograph */ + [0x9ecf, 0x9ecf], /* CJK Ideograph */ + [0x9ed0, 0x9ed0], /* CJK Ideograph */ + [0x9ed1, 0x9ed1], /* CJK Ideograph */ + [0x9ed2, 0x9ed2], /* CJK Ideograph */ + [0x9ed3, 0x9ed3], /* CJK Ideograph */ + [0x9ed4, 0x9ed4], /* CJK Ideograph */ + [0x9ed5, 0x9ed5], /* CJK Ideograph */ + [0x9ed6, 0x9ed6], /* CJK Ideograph */ + [0x9ed7, 0x9ed7], /* CJK Ideograph */ + [0x9ed8, 0x9ed8], /* CJK Ideograph */ + [0x9ed9, 0x9ed9], /* CJK Ideograph */ + [0x9eda, 0x9eda], /* CJK Ideograph */ + [0x9edb, 0x9edb], /* CJK Ideograph */ + [0x9edc, 0x9edc], /* CJK Ideograph */ + [0x9edd, 0x9edd], /* CJK Ideograph */ + [0x9ede, 0x9ede], /* CJK Ideograph */ + [0x9edf, 0x9edf], /* CJK Ideograph */ + [0x9ee0, 0x9ee0], /* CJK Ideograph */ + [0x9ee1, 0x9ee1], /* CJK Ideograph */ + [0x9ee2, 0x9ee2], /* CJK Ideograph */ + [0x9ee3, 0x9ee3], /* CJK Ideograph */ + [0x9ee4, 0x9ee4], /* CJK Ideograph */ + [0x9ee5, 0x9ee5], /* CJK Ideograph */ + [0x9ee6, 0x9ee6], /* CJK Ideograph */ + [0x9ee7, 0x9ee7], /* CJK Ideograph */ + [0x9ee8, 0x9ee8], /* CJK Ideograph */ + [0x9ee9, 0x9ee9], /* CJK Ideograph */ + [0x9eea, 0x9eea], /* CJK Ideograph */ + [0x9eeb, 0x9eeb], /* CJK Ideograph */ + [0x9eec, 0x9eec], /* CJK Ideograph */ + [0x9eed, 0x9eed], /* CJK Ideograph */ + [0x9eee, 0x9eee], /* CJK Ideograph */ + [0x9eef, 0x9eef], /* CJK Ideograph */ + [0x9ef0, 0x9ef0], /* CJK Ideograph */ + [0x9ef1, 0x9ef1], /* CJK Ideograph */ + [0x9ef2, 0x9ef2], /* CJK Ideograph */ + [0x9ef3, 0x9ef3], /* CJK Ideograph */ + [0x9ef4, 0x9ef4], /* CJK Ideograph */ + [0x9ef5, 0x9ef5], /* CJK Ideograph */ + [0x9ef6, 0x9ef6], /* CJK Ideograph */ + [0x9ef7, 0x9ef7], /* CJK Ideograph */ + [0x9ef8, 0x9ef8], /* CJK Ideograph */ + [0x9ef9, 0x9ef9], /* CJK Ideograph */ + [0x9efa, 0x9efa], /* CJK Ideograph */ + [0x9efb, 0x9efb], /* CJK Ideograph */ + [0x9efc, 0x9efc], /* CJK Ideograph */ + [0x9efd, 0x9efd], /* CJK Ideograph */ + [0x9efe, 0x9efe], /* CJK Ideograph */ + [0x9eff, 0x9eff], /* CJK Ideograph */ + [0x9f00, 0x9f00], /* CJK Ideograph */ + [0x9f01, 0x9f01], /* CJK Ideograph */ + [0x9f02, 0x9f02], /* CJK Ideograph */ + [0x9f03, 0x9f03], /* CJK Ideograph */ + [0x9f04, 0x9f04], /* CJK Ideograph */ + [0x9f05, 0x9f05], /* CJK Ideograph */ + [0x9f06, 0x9f06], /* CJK Ideograph */ + [0x9f07, 0x9f07], /* CJK Ideograph */ + [0x9f08, 0x9f08], /* CJK Ideograph */ + [0x9f09, 0x9f09], /* CJK Ideograph */ + [0x9f0a, 0x9f0a], /* CJK Ideograph */ + [0x9f0b, 0x9f0b], /* CJK Ideograph */ + [0x9f0c, 0x9f0c], /* CJK Ideograph */ + [0x9f0d, 0x9f0d], /* CJK Ideograph */ + [0x9f0e, 0x9f0e], /* CJK Ideograph */ + [0x9f0f, 0x9f0f], /* CJK Ideograph */ + [0x9f10, 0x9f10], /* CJK Ideograph */ + [0x9f11, 0x9f11], /* CJK Ideograph */ + [0x9f12, 0x9f12], /* CJK Ideograph */ + [0x9f13, 0x9f13], /* CJK Ideograph */ + [0x9f14, 0x9f14], /* CJK Ideograph */ + [0x9f15, 0x9f15], /* CJK Ideograph */ + [0x9f16, 0x9f16], /* CJK Ideograph */ + [0x9f17, 0x9f17], /* CJK Ideograph */ + [0x9f18, 0x9f18], /* CJK Ideograph */ + [0x9f19, 0x9f19], /* CJK Ideograph */ + [0x9f1a, 0x9f1a], /* CJK Ideograph */ + [0x9f1b, 0x9f1b], /* CJK Ideograph */ + [0x9f1c, 0x9f1c], /* CJK Ideograph */ + [0x9f1d, 0x9f1d], /* CJK Ideograph */ + [0x9f1e, 0x9f1e], /* CJK Ideograph */ + [0x9f1f, 0x9f1f], /* CJK Ideograph */ + [0x9f20, 0x9f20], /* CJK Ideograph */ + [0x9f21, 0x9f21], /* CJK Ideograph */ + [0x9f22, 0x9f22], /* CJK Ideograph */ + [0x9f23, 0x9f23], /* CJK Ideograph */ + [0x9f24, 0x9f24], /* CJK Ideograph */ + [0x9f25, 0x9f25], /* CJK Ideograph */ + [0x9f26, 0x9f26], /* CJK Ideograph */ + [0x9f27, 0x9f27], /* CJK Ideograph */ + [0x9f28, 0x9f28], /* CJK Ideograph */ + [0x9f29, 0x9f29], /* CJK Ideograph */ + [0x9f2a, 0x9f2a], /* CJK Ideograph */ + [0x9f2b, 0x9f2b], /* CJK Ideograph */ + [0x9f2c, 0x9f2c], /* CJK Ideograph */ + [0x9f2d, 0x9f2d], /* CJK Ideograph */ + [0x9f2e, 0x9f2e], /* CJK Ideograph */ + [0x9f2f, 0x9f2f], /* CJK Ideograph */ + [0x9f30, 0x9f30], /* CJK Ideograph */ + [0x9f31, 0x9f31], /* CJK Ideograph */ + [0x9f32, 0x9f32], /* CJK Ideograph */ + [0x9f33, 0x9f33], /* CJK Ideograph */ + [0x9f34, 0x9f34], /* CJK Ideograph */ + [0x9f35, 0x9f35], /* CJK Ideograph */ + [0x9f36, 0x9f36], /* CJK Ideograph */ + [0x9f37, 0x9f37], /* CJK Ideograph */ + [0x9f38, 0x9f38], /* CJK Ideograph */ + [0x9f39, 0x9f39], /* CJK Ideograph */ + [0x9f3a, 0x9f3a], /* CJK Ideograph */ + [0x9f3b, 0x9f3b], /* CJK Ideograph */ + [0x9f3c, 0x9f3c], /* CJK Ideograph */ + [0x9f3d, 0x9f3d], /* CJK Ideograph */ + [0x9f3e, 0x9f3e], /* CJK Ideograph */ + [0x9f3f, 0x9f3f], /* CJK Ideograph */ + [0x9f40, 0x9f40], /* CJK Ideograph */ + [0x9f41, 0x9f41], /* CJK Ideograph */ + [0x9f42, 0x9f42], /* CJK Ideograph */ + [0x9f43, 0x9f43], /* CJK Ideograph */ + [0x9f44, 0x9f44], /* CJK Ideograph */ + [0x9f45, 0x9f45], /* CJK Ideograph */ + [0x9f46, 0x9f46], /* CJK Ideograph */ + [0x9f47, 0x9f47], /* CJK Ideograph */ + [0x9f48, 0x9f48], /* CJK Ideograph */ + [0x9f49, 0x9f49], /* CJK Ideograph */ + [0x9f4a, 0x9f4a], /* CJK Ideograph */ + [0x9f4b, 0x9f4b], /* CJK Ideograph */ + [0x9f4c, 0x9f4c], /* CJK Ideograph */ + [0x9f4d, 0x9f4d], /* CJK Ideograph */ + [0x9f4e, 0x9f4e], /* CJK Ideograph */ + [0x9f4f, 0x9f4f], /* CJK Ideograph */ + [0x9f50, 0x9f50], /* CJK Ideograph */ + [0x9f51, 0x9f51], /* CJK Ideograph */ + [0x9f52, 0x9f52], /* CJK Ideograph */ + [0x9f53, 0x9f53], /* CJK Ideograph */ + [0x9f54, 0x9f54], /* CJK Ideograph */ + [0x9f55, 0x9f55], /* CJK Ideograph */ + [0x9f56, 0x9f56], /* CJK Ideograph */ + [0x9f57, 0x9f57], /* CJK Ideograph */ + [0x9f58, 0x9f58], /* CJK Ideograph */ + [0x9f59, 0x9f59], /* CJK Ideograph */ + [0x9f5a, 0x9f5a], /* CJK Ideograph */ + [0x9f5b, 0x9f5b], /* CJK Ideograph */ + [0x9f5c, 0x9f5c], /* CJK Ideograph */ + [0x9f5d, 0x9f5d], /* CJK Ideograph */ + [0x9f5e, 0x9f5e], /* CJK Ideograph */ + [0x9f5f, 0x9f5f], /* CJK Ideograph */ + [0x9f60, 0x9f60], /* CJK Ideograph */ + [0x9f61, 0x9f61], /* CJK Ideograph */ + [0x9f62, 0x9f62], /* CJK Ideograph */ + [0x9f63, 0x9f63], /* CJK Ideograph */ + [0x9f64, 0x9f64], /* CJK Ideograph */ + [0x9f65, 0x9f65], /* CJK Ideograph */ + [0x9f66, 0x9f66], /* CJK Ideograph */ + [0x9f67, 0x9f67], /* CJK Ideograph */ + [0x9f68, 0x9f68], /* CJK Ideograph */ + [0x9f69, 0x9f69], /* CJK Ideograph */ + [0x9f6a, 0x9f6a], /* CJK Ideograph */ + [0x9f6b, 0x9f6b], /* CJK Ideograph */ + [0x9f6c, 0x9f6c], /* CJK Ideograph */ + [0x9f6d, 0x9f6d], /* CJK Ideograph */ + [0x9f6e, 0x9f6e], /* CJK Ideograph */ + [0x9f6f, 0x9f6f], /* CJK Ideograph */ + [0x9f70, 0x9f70], /* CJK Ideograph */ + [0x9f71, 0x9f71], /* CJK Ideograph */ + [0x9f72, 0x9f72], /* CJK Ideograph */ + [0x9f73, 0x9f73], /* CJK Ideograph */ + [0x9f74, 0x9f74], /* CJK Ideograph */ + [0x9f75, 0x9f75], /* CJK Ideograph */ + [0x9f76, 0x9f76], /* CJK Ideograph */ + [0x9f77, 0x9f77], /* CJK Ideograph */ + [0x9f78, 0x9f78], /* CJK Ideograph */ + [0x9f79, 0x9f79], /* CJK Ideograph */ + [0x9f7a, 0x9f7a], /* CJK Ideograph */ + [0x9f7b, 0x9f7b], /* CJK Ideograph */ + [0x9f7c, 0x9f7c], /* CJK Ideograph */ + [0x9f7d, 0x9f7d], /* CJK Ideograph */ + [0x9f7e, 0x9f7e], /* CJK Ideograph */ + [0x9f7f, 0x9f7f], /* CJK Ideograph */ + [0x9f80, 0x9f80], /* CJK Ideograph */ + [0x9f81, 0x9f81], /* CJK Ideograph */ + [0x9f82, 0x9f82], /* CJK Ideograph */ + [0x9f83, 0x9f83], /* CJK Ideograph */ + [0x9f84, 0x9f84], /* CJK Ideograph */ + [0x9f85, 0x9f85], /* CJK Ideograph */ + [0x9f86, 0x9f86], /* CJK Ideograph */ + [0x9f87, 0x9f87], /* CJK Ideograph */ + [0x9f88, 0x9f88], /* CJK Ideograph */ + [0x9f89, 0x9f89], /* CJK Ideograph */ + [0x9f8a, 0x9f8a], /* CJK Ideograph */ + [0x9f8b, 0x9f8b], /* CJK Ideograph */ + [0x9f8c, 0x9f8c], /* CJK Ideograph */ + [0x9f8d, 0x9f8d], /* CJK Ideograph */ + [0x9f8e, 0x9f8e], /* CJK Ideograph */ + [0x9f8f, 0x9f8f], /* CJK Ideograph */ + [0x9f90, 0x9f90], /* CJK Ideograph */ + [0x9f91, 0x9f91], /* CJK Ideograph */ + [0x9f92, 0x9f92], /* CJK Ideograph */ + [0x9f93, 0x9f93], /* CJK Ideograph */ + [0x9f94, 0x9f94], /* CJK Ideograph */ + [0x9f95, 0x9f95], /* CJK Ideograph */ + [0x9f96, 0x9f96], /* CJK Ideograph */ + [0x9f97, 0x9f97], /* CJK Ideograph */ + [0x9f98, 0x9f98], /* CJK Ideograph */ + [0x9f99, 0x9f99], /* CJK Ideograph */ + [0x9f9a, 0x9f9a], /* CJK Ideograph */ + [0x9f9b, 0x9f9b], /* CJK Ideograph */ + [0x9f9c, 0x9f9c], /* CJK Ideograph */ + [0x9f9d, 0x9f9d], /* CJK Ideograph */ + [0x9f9e, 0x9f9e], /* CJK Ideograph */ + [0x9f9f, 0x9f9f], /* CJK Ideograph */ + [0x9fa0, 0x9fa0], /* CJK Ideograph */ + [0x9fa1, 0x9fa1], /* CJK Ideograph */ + [0x9fa2, 0x9fa2], /* CJK Ideograph */ + [0x9fa3, 0x9fa3], /* CJK Ideograph */ + [0x9fa4, 0x9fa4], /* CJK Ideograph */ + [0x9fa5, 0x9fa5], /* CJK Ideograph */ + [0x9fa6, 0x9fa6], /* CJK Ideograph */ + [0x9fa7, 0x9fa7], /* CJK Ideograph */ + [0x9fa8, 0x9fa8], /* CJK Ideograph */ + [0x9fa9, 0x9fa9], /* CJK Ideograph */ + [0x9faa, 0x9faa], /* CJK Ideograph */ + [0x9fab, 0x9fab], /* CJK Ideograph */ + [0x9fac, 0x9fac], /* CJK Ideograph */ + [0x9fad, 0x9fad], /* CJK Ideograph */ + [0x9fae, 0x9fae], /* CJK Ideograph */ + [0x9faf, 0x9faf], /* CJK Ideograph */ + [0x9fb0, 0x9fb0], /* CJK Ideograph */ + [0x9fb1, 0x9fb1], /* CJK Ideograph */ + [0x9fb2, 0x9fb2], /* CJK Ideograph */ + [0x9fb3, 0x9fb3], /* CJK Ideograph */ + [0x9fb4, 0x9fb4], /* CJK Ideograph */ + [0x9fb5, 0x9fb5], /* CJK Ideograph */ + [0x9fb6, 0x9fb6], /* CJK Ideograph */ + [0x9fb7, 0x9fb7], /* CJK Ideograph */ + [0x9fb8, 0x9fb8], /* CJK Ideograph */ + [0x9fb9, 0x9fb9], /* CJK Ideograph */ + [0x9fba, 0x9fba], /* CJK Ideograph */ + [0x9fbb, 0x9fbb], /* CJK Ideograph */ + [0x9fbc, 0x9fbc], /* CJK Ideograph */ + [0x9fbd, 0x9fbd], /* CJK Ideograph */ + [0x9fbe, 0x9fbe], /* CJK Ideograph */ + [0x9fbf, 0x9fbf], /* CJK Ideograph */ + [0x9fc0, 0x9fc0], /* CJK Ideograph */ + [0x9fc1, 0x9fc1], /* CJK Ideograph */ + [0x9fc2, 0x9fc2], /* CJK Ideograph */ + [0x9fc3, 0x9fc3], /* CJK Ideograph */ + [0x9fc4, 0x9fc4], /* CJK Ideograph */ + [0x9fc5, 0x9fc5], /* CJK Ideograph */ + [0x9fc6, 0x9fc6], /* CJK Ideograph */ + [0x9fc7, 0x9fc7], /* CJK Ideograph */ + [0x9fc8, 0x9fc8], /* CJK Ideograph */ + [0x9fc9, 0x9fc9], /* CJK Ideograph */ + [0x9fca, 0x9fca], /* CJK Ideograph */ + [0x9fcb, 0x9fcb], /* CJK Ideograph */ + [0x9fcc, 0x9fcc], /* CJK Ideograph */ + [0x9fcd, 0x9fcd], /* CJK Ideograph */ + [0x9fce, 0x9fce], /* CJK Ideograph */ + [0x9fcf, 0x9fcf], /* CJK Ideograph */ + [0x9fd0, 0x9fd0], /* CJK Ideograph */ + [0x9fd1, 0x9fd1], /* CJK Ideograph */ + [0x9fd2, 0x9fd2], /* CJK Ideograph */ + [0x9fd3, 0x9fd3], /* CJK Ideograph */ + [0x9fd4, 0x9fd4], /* CJK Ideograph */ + [0x9fd5, 0x9fd5], /* CJK Ideograph */ + [0x9fd6, 0x9fd6], + [0x9fd7, 0x9fd7], + [0x9fd8, 0x9fd8], + [0x9fd9, 0x9fd9], + [0x9fda, 0x9fda], + [0x9fdb, 0x9fdb], + [0x9fdc, 0x9fdc], + [0x9fdd, 0x9fdd], + [0x9fde, 0x9fde], + [0x9fdf, 0x9fdf], + [0x9fe0, 0x9fe0], + [0x9fe1, 0x9fe1], + [0x9fe2, 0x9fe2], + [0x9fe3, 0x9fe3], + [0x9fe4, 0x9fe4], + [0x9fe5, 0x9fe5], + [0x9fe6, 0x9fe6], + [0x9fe7, 0x9fe7], + [0x9fe8, 0x9fe8], + [0x9fe9, 0x9fe9], + [0x9fea, 0x9fea], + [0x9feb, 0x9feb], + [0x9fec, 0x9fec], + [0x9fed, 0x9fed], + [0x9fee, 0x9fee], + [0x9fef, 0x9fef], + [0x9ff0, 0x9ff0], + [0x9ff1, 0x9ff1], + [0x9ff2, 0x9ff2], + [0x9ff3, 0x9ff3], + [0x9ff4, 0x9ff4], + [0x9ff5, 0x9ff5], + [0x9ff6, 0x9ff6], + [0x9ff7, 0x9ff7], + [0x9ff8, 0x9ff8], + [0x9ff9, 0x9ff9], + [0x9ffa, 0x9ffa], + [0x9ffb, 0x9ffb], + [0x9ffc, 0x9ffc], + [0x9ffd, 0x9ffd], + [0x9ffe, 0x9ffe], + [0x9fff, 0x9fff], + [0xa000, 0xa000], /* YI SYLLABLE IT */ + [0xa001, 0xa001], /* YI SYLLABLE IX */ + [0xa002, 0xa002], /* YI SYLLABLE I */ + [0xa003, 0xa003], /* YI SYLLABLE IP */ + [0xa004, 0xa004], /* YI SYLLABLE IET */ + [0xa005, 0xa005], /* YI SYLLABLE IEX */ + [0xa006, 0xa006], /* YI SYLLABLE IE */ + [0xa007, 0xa007], /* YI SYLLABLE IEP */ + [0xa008, 0xa008], /* YI SYLLABLE AT */ + [0xa009, 0xa009], /* YI SYLLABLE AX */ + [0xa00a, 0xa00a], /* YI SYLLABLE A */ + [0xa00b, 0xa00b], /* YI SYLLABLE AP */ + [0xa00c, 0xa00c], /* YI SYLLABLE UOX */ + [0xa00d, 0xa00d], /* YI SYLLABLE UO */ + [0xa00e, 0xa00e], /* YI SYLLABLE UOP */ + [0xa00f, 0xa00f], /* YI SYLLABLE OT */ + [0xa010, 0xa010], /* YI SYLLABLE OX */ + [0xa011, 0xa011], /* YI SYLLABLE O */ + [0xa012, 0xa012], /* YI SYLLABLE OP */ + [0xa013, 0xa013], /* YI SYLLABLE EX */ + [0xa014, 0xa014], /* YI SYLLABLE E */ + [0xa015, 0xa015], /* YI SYLLABLE WU */ + [0xa016, 0xa016], /* YI SYLLABLE BIT */ + [0xa017, 0xa017], /* YI SYLLABLE BIX */ + [0xa018, 0xa018], /* YI SYLLABLE BI */ + [0xa019, 0xa019], /* YI SYLLABLE BIP */ + [0xa01a, 0xa01a], /* YI SYLLABLE BIET */ + [0xa01b, 0xa01b], /* YI SYLLABLE BIEX */ + [0xa01c, 0xa01c], /* YI SYLLABLE BIE */ + [0xa01d, 0xa01d], /* YI SYLLABLE BIEP */ + [0xa01e, 0xa01e], /* YI SYLLABLE BAT */ + [0xa01f, 0xa01f], /* YI SYLLABLE BAX */ + [0xa020, 0xa020], /* YI SYLLABLE BA */ + [0xa021, 0xa021], /* YI SYLLABLE BAP */ + [0xa022, 0xa022], /* YI SYLLABLE BUOX */ + [0xa023, 0xa023], /* YI SYLLABLE BUO */ + [0xa024, 0xa024], /* YI SYLLABLE BUOP */ + [0xa025, 0xa025], /* YI SYLLABLE BOT */ + [0xa026, 0xa026], /* YI SYLLABLE BOX */ + [0xa027, 0xa027], /* YI SYLLABLE BO */ + [0xa028, 0xa028], /* YI SYLLABLE BOP */ + [0xa029, 0xa029], /* YI SYLLABLE BEX */ + [0xa02a, 0xa02a], /* YI SYLLABLE BE */ + [0xa02b, 0xa02b], /* YI SYLLABLE BEP */ + [0xa02c, 0xa02c], /* YI SYLLABLE BUT */ + [0xa02d, 0xa02d], /* YI SYLLABLE BUX */ + [0xa02e, 0xa02e], /* YI SYLLABLE BU */ + [0xa02f, 0xa02f], /* YI SYLLABLE BUP */ + [0xa030, 0xa030], /* YI SYLLABLE BURX */ + [0xa031, 0xa031], /* YI SYLLABLE BUR */ + [0xa032, 0xa032], /* YI SYLLABLE BYT */ + [0xa033, 0xa033], /* YI SYLLABLE BYX */ + [0xa034, 0xa034], /* YI SYLLABLE BY */ + [0xa035, 0xa035], /* YI SYLLABLE BYP */ + [0xa036, 0xa036], /* YI SYLLABLE BYRX */ + [0xa037, 0xa037], /* YI SYLLABLE BYR */ + [0xa038, 0xa038], /* YI SYLLABLE PIT */ + [0xa039, 0xa039], /* YI SYLLABLE PIX */ + [0xa03a, 0xa03a], /* YI SYLLABLE PI */ + [0xa03b, 0xa03b], /* YI SYLLABLE PIP */ + [0xa03c, 0xa03c], /* YI SYLLABLE PIEX */ + [0xa03d, 0xa03d], /* YI SYLLABLE PIE */ + [0xa03e, 0xa03e], /* YI SYLLABLE PIEP */ + [0xa03f, 0xa03f], /* YI SYLLABLE PAT */ + [0xa040, 0xa040], /* YI SYLLABLE PAX */ + [0xa041, 0xa041], /* YI SYLLABLE PA */ + [0xa042, 0xa042], /* YI SYLLABLE PAP */ + [0xa043, 0xa043], /* YI SYLLABLE PUOX */ + [0xa044, 0xa044], /* YI SYLLABLE PUO */ + [0xa045, 0xa045], /* YI SYLLABLE PUOP */ + [0xa046, 0xa046], /* YI SYLLABLE POT */ + [0xa047, 0xa047], /* YI SYLLABLE POX */ + [0xa048, 0xa048], /* YI SYLLABLE PO */ + [0xa049, 0xa049], /* YI SYLLABLE POP */ + [0xa04a, 0xa04a], /* YI SYLLABLE PUT */ + [0xa04b, 0xa04b], /* YI SYLLABLE PUX */ + [0xa04c, 0xa04c], /* YI SYLLABLE PU */ + [0xa04d, 0xa04d], /* YI SYLLABLE PUP */ + [0xa04e, 0xa04e], /* YI SYLLABLE PURX */ + [0xa04f, 0xa04f], /* YI SYLLABLE PUR */ + [0xa050, 0xa050], /* YI SYLLABLE PYT */ + [0xa051, 0xa051], /* YI SYLLABLE PYX */ + [0xa052, 0xa052], /* YI SYLLABLE PY */ + [0xa053, 0xa053], /* YI SYLLABLE PYP */ + [0xa054, 0xa054], /* YI SYLLABLE PYRX */ + [0xa055, 0xa055], /* YI SYLLABLE PYR */ + [0xa056, 0xa056], /* YI SYLLABLE BBIT */ + [0xa057, 0xa057], /* YI SYLLABLE BBIX */ + [0xa058, 0xa058], /* YI SYLLABLE BBI */ + [0xa059, 0xa059], /* YI SYLLABLE BBIP */ + [0xa05a, 0xa05a], /* YI SYLLABLE BBIET */ + [0xa05b, 0xa05b], /* YI SYLLABLE BBIEX */ + [0xa05c, 0xa05c], /* YI SYLLABLE BBIE */ + [0xa05d, 0xa05d], /* YI SYLLABLE BBIEP */ + [0xa05e, 0xa05e], /* YI SYLLABLE BBAT */ + [0xa05f, 0xa05f], /* YI SYLLABLE BBAX */ + [0xa060, 0xa060], /* YI SYLLABLE BBA */ + [0xa061, 0xa061], /* YI SYLLABLE BBAP */ + [0xa062, 0xa062], /* YI SYLLABLE BBUOX */ + [0xa063, 0xa063], /* YI SYLLABLE BBUO */ + [0xa064, 0xa064], /* YI SYLLABLE BBUOP */ + [0xa065, 0xa065], /* YI SYLLABLE BBOT */ + [0xa066, 0xa066], /* YI SYLLABLE BBOX */ + [0xa067, 0xa067], /* YI SYLLABLE BBO */ + [0xa068, 0xa068], /* YI SYLLABLE BBOP */ + [0xa069, 0xa069], /* YI SYLLABLE BBEX */ + [0xa06a, 0xa06a], /* YI SYLLABLE BBE */ + [0xa06b, 0xa06b], /* YI SYLLABLE BBEP */ + [0xa06c, 0xa06c], /* YI SYLLABLE BBUT */ + [0xa06d, 0xa06d], /* YI SYLLABLE BBUX */ + [0xa06e, 0xa06e], /* YI SYLLABLE BBU */ + [0xa06f, 0xa06f], /* YI SYLLABLE BBUP */ + [0xa070, 0xa070], /* YI SYLLABLE BBURX */ + [0xa071, 0xa071], /* YI SYLLABLE BBUR */ + [0xa072, 0xa072], /* YI SYLLABLE BBYT */ + [0xa073, 0xa073], /* YI SYLLABLE BBYX */ + [0xa074, 0xa074], /* YI SYLLABLE BBY */ + [0xa075, 0xa075], /* YI SYLLABLE BBYP */ + [0xa076, 0xa076], /* YI SYLLABLE NBIT */ + [0xa077, 0xa077], /* YI SYLLABLE NBIX */ + [0xa078, 0xa078], /* YI SYLLABLE NBI */ + [0xa079, 0xa079], /* YI SYLLABLE NBIP */ + [0xa07a, 0xa07a], /* YI SYLLABLE NBIEX */ + [0xa07b, 0xa07b], /* YI SYLLABLE NBIE */ + [0xa07c, 0xa07c], /* YI SYLLABLE NBIEP */ + [0xa07d, 0xa07d], /* YI SYLLABLE NBAT */ + [0xa07e, 0xa07e], /* YI SYLLABLE NBAX */ + [0xa07f, 0xa07f], /* YI SYLLABLE NBA */ + [0xa080, 0xa080], /* YI SYLLABLE NBAP */ + [0xa081, 0xa081], /* YI SYLLABLE NBOT */ + [0xa082, 0xa082], /* YI SYLLABLE NBOX */ + [0xa083, 0xa083], /* YI SYLLABLE NBO */ + [0xa084, 0xa084], /* YI SYLLABLE NBOP */ + [0xa085, 0xa085], /* YI SYLLABLE NBUT */ + [0xa086, 0xa086], /* YI SYLLABLE NBUX */ + [0xa087, 0xa087], /* YI SYLLABLE NBU */ + [0xa088, 0xa088], /* YI SYLLABLE NBUP */ + [0xa089, 0xa089], /* YI SYLLABLE NBURX */ + [0xa08a, 0xa08a], /* YI SYLLABLE NBUR */ + [0xa08b, 0xa08b], /* YI SYLLABLE NBYT */ + [0xa08c, 0xa08c], /* YI SYLLABLE NBYX */ + [0xa08d, 0xa08d], /* YI SYLLABLE NBY */ + [0xa08e, 0xa08e], /* YI SYLLABLE NBYP */ + [0xa08f, 0xa08f], /* YI SYLLABLE NBYRX */ + [0xa090, 0xa090], /* YI SYLLABLE NBYR */ + [0xa091, 0xa091], /* YI SYLLABLE HMIT */ + [0xa092, 0xa092], /* YI SYLLABLE HMIX */ + [0xa093, 0xa093], /* YI SYLLABLE HMI */ + [0xa094, 0xa094], /* YI SYLLABLE HMIP */ + [0xa095, 0xa095], /* YI SYLLABLE HMIEX */ + [0xa096, 0xa096], /* YI SYLLABLE HMIE */ + [0xa097, 0xa097], /* YI SYLLABLE HMIEP */ + [0xa098, 0xa098], /* YI SYLLABLE HMAT */ + [0xa099, 0xa099], /* YI SYLLABLE HMAX */ + [0xa09a, 0xa09a], /* YI SYLLABLE HMA */ + [0xa09b, 0xa09b], /* YI SYLLABLE HMAP */ + [0xa09c, 0xa09c], /* YI SYLLABLE HMUOX */ + [0xa09d, 0xa09d], /* YI SYLLABLE HMUO */ + [0xa09e, 0xa09e], /* YI SYLLABLE HMUOP */ + [0xa09f, 0xa09f], /* YI SYLLABLE HMOT */ + [0xa0a0, 0xa0a0], /* YI SYLLABLE HMOX */ + [0xa0a1, 0xa0a1], /* YI SYLLABLE HMO */ + [0xa0a2, 0xa0a2], /* YI SYLLABLE HMOP */ + [0xa0a3, 0xa0a3], /* YI SYLLABLE HMUT */ + [0xa0a4, 0xa0a4], /* YI SYLLABLE HMUX */ + [0xa0a5, 0xa0a5], /* YI SYLLABLE HMU */ + [0xa0a6, 0xa0a6], /* YI SYLLABLE HMUP */ + [0xa0a7, 0xa0a7], /* YI SYLLABLE HMURX */ + [0xa0a8, 0xa0a8], /* YI SYLLABLE HMUR */ + [0xa0a9, 0xa0a9], /* YI SYLLABLE HMYX */ + [0xa0aa, 0xa0aa], /* YI SYLLABLE HMY */ + [0xa0ab, 0xa0ab], /* YI SYLLABLE HMYP */ + [0xa0ac, 0xa0ac], /* YI SYLLABLE HMYRX */ + [0xa0ad, 0xa0ad], /* YI SYLLABLE HMYR */ + [0xa0ae, 0xa0ae], /* YI SYLLABLE MIT */ + [0xa0af, 0xa0af], /* YI SYLLABLE MIX */ + [0xa0b0, 0xa0b0], /* YI SYLLABLE MI */ + [0xa0b1, 0xa0b1], /* YI SYLLABLE MIP */ + [0xa0b2, 0xa0b2], /* YI SYLLABLE MIEX */ + [0xa0b3, 0xa0b3], /* YI SYLLABLE MIE */ + [0xa0b4, 0xa0b4], /* YI SYLLABLE MIEP */ + [0xa0b5, 0xa0b5], /* YI SYLLABLE MAT */ + [0xa0b6, 0xa0b6], /* YI SYLLABLE MAX */ + [0xa0b7, 0xa0b7], /* YI SYLLABLE MA */ + [0xa0b8, 0xa0b8], /* YI SYLLABLE MAP */ + [0xa0b9, 0xa0b9], /* YI SYLLABLE MUOT */ + [0xa0ba, 0xa0ba], /* YI SYLLABLE MUOX */ + [0xa0bb, 0xa0bb], /* YI SYLLABLE MUO */ + [0xa0bc, 0xa0bc], /* YI SYLLABLE MUOP */ + [0xa0bd, 0xa0bd], /* YI SYLLABLE MOT */ + [0xa0be, 0xa0be], /* YI SYLLABLE MOX */ + [0xa0bf, 0xa0bf], /* YI SYLLABLE MO */ + [0xa0c0, 0xa0c0], /* YI SYLLABLE MOP */ + [0xa0c1, 0xa0c1], /* YI SYLLABLE MEX */ + [0xa0c2, 0xa0c2], /* YI SYLLABLE ME */ + [0xa0c3, 0xa0c3], /* YI SYLLABLE MUT */ + [0xa0c4, 0xa0c4], /* YI SYLLABLE MUX */ + [0xa0c5, 0xa0c5], /* YI SYLLABLE MU */ + [0xa0c6, 0xa0c6], /* YI SYLLABLE MUP */ + [0xa0c7, 0xa0c7], /* YI SYLLABLE MURX */ + [0xa0c8, 0xa0c8], /* YI SYLLABLE MUR */ + [0xa0c9, 0xa0c9], /* YI SYLLABLE MYT */ + [0xa0ca, 0xa0ca], /* YI SYLLABLE MYX */ + [0xa0cb, 0xa0cb], /* YI SYLLABLE MY */ + [0xa0cc, 0xa0cc], /* YI SYLLABLE MYP */ + [0xa0cd, 0xa0cd], /* YI SYLLABLE FIT */ + [0xa0ce, 0xa0ce], /* YI SYLLABLE FIX */ + [0xa0cf, 0xa0cf], /* YI SYLLABLE FI */ + [0xa0d0, 0xa0d0], /* YI SYLLABLE FIP */ + [0xa0d1, 0xa0d1], /* YI SYLLABLE FAT */ + [0xa0d2, 0xa0d2], /* YI SYLLABLE FAX */ + [0xa0d3, 0xa0d3], /* YI SYLLABLE FA */ + [0xa0d4, 0xa0d4], /* YI SYLLABLE FAP */ + [0xa0d5, 0xa0d5], /* YI SYLLABLE FOX */ + [0xa0d6, 0xa0d6], /* YI SYLLABLE FO */ + [0xa0d7, 0xa0d7], /* YI SYLLABLE FOP */ + [0xa0d8, 0xa0d8], /* YI SYLLABLE FUT */ + [0xa0d9, 0xa0d9], /* YI SYLLABLE FUX */ + [0xa0da, 0xa0da], /* YI SYLLABLE FU */ + [0xa0db, 0xa0db], /* YI SYLLABLE FUP */ + [0xa0dc, 0xa0dc], /* YI SYLLABLE FURX */ + [0xa0dd, 0xa0dd], /* YI SYLLABLE FUR */ + [0xa0de, 0xa0de], /* YI SYLLABLE FYT */ + [0xa0df, 0xa0df], /* YI SYLLABLE FYX */ + [0xa0e0, 0xa0e0], /* YI SYLLABLE FY */ + [0xa0e1, 0xa0e1], /* YI SYLLABLE FYP */ + [0xa0e2, 0xa0e2], /* YI SYLLABLE VIT */ + [0xa0e3, 0xa0e3], /* YI SYLLABLE VIX */ + [0xa0e4, 0xa0e4], /* YI SYLLABLE VI */ + [0xa0e5, 0xa0e5], /* YI SYLLABLE VIP */ + [0xa0e6, 0xa0e6], /* YI SYLLABLE VIET */ + [0xa0e7, 0xa0e7], /* YI SYLLABLE VIEX */ + [0xa0e8, 0xa0e8], /* YI SYLLABLE VIE */ + [0xa0e9, 0xa0e9], /* YI SYLLABLE VIEP */ + [0xa0ea, 0xa0ea], /* YI SYLLABLE VAT */ + [0xa0eb, 0xa0eb], /* YI SYLLABLE VAX */ + [0xa0ec, 0xa0ec], /* YI SYLLABLE VA */ + [0xa0ed, 0xa0ed], /* YI SYLLABLE VAP */ + [0xa0ee, 0xa0ee], /* YI SYLLABLE VOT */ + [0xa0ef, 0xa0ef], /* YI SYLLABLE VOX */ + [0xa0f0, 0xa0f0], /* YI SYLLABLE VO */ + [0xa0f1, 0xa0f1], /* YI SYLLABLE VOP */ + [0xa0f2, 0xa0f2], /* YI SYLLABLE VEX */ + [0xa0f3, 0xa0f3], /* YI SYLLABLE VEP */ + [0xa0f4, 0xa0f4], /* YI SYLLABLE VUT */ + [0xa0f5, 0xa0f5], /* YI SYLLABLE VUX */ + [0xa0f6, 0xa0f6], /* YI SYLLABLE VU */ + [0xa0f7, 0xa0f7], /* YI SYLLABLE VUP */ + [0xa0f8, 0xa0f8], /* YI SYLLABLE VURX */ + [0xa0f9, 0xa0f9], /* YI SYLLABLE VUR */ + [0xa0fa, 0xa0fa], /* YI SYLLABLE VYT */ + [0xa0fb, 0xa0fb], /* YI SYLLABLE VYX */ + [0xa0fc, 0xa0fc], /* YI SYLLABLE VY */ + [0xa0fd, 0xa0fd], /* YI SYLLABLE VYP */ + [0xa0fe, 0xa0fe], /* YI SYLLABLE VYRX */ + [0xa0ff, 0xa0ff], /* YI SYLLABLE VYR */ + [0xa100, 0xa100], /* YI SYLLABLE DIT */ + [0xa101, 0xa101], /* YI SYLLABLE DIX */ + [0xa102, 0xa102], /* YI SYLLABLE DI */ + [0xa103, 0xa103], /* YI SYLLABLE DIP */ + [0xa104, 0xa104], /* YI SYLLABLE DIEX */ + [0xa105, 0xa105], /* YI SYLLABLE DIE */ + [0xa106, 0xa106], /* YI SYLLABLE DIEP */ + [0xa107, 0xa107], /* YI SYLLABLE DAT */ + [0xa108, 0xa108], /* YI SYLLABLE DAX */ + [0xa109, 0xa109], /* YI SYLLABLE DA */ + [0xa10a, 0xa10a], /* YI SYLLABLE DAP */ + [0xa10b, 0xa10b], /* YI SYLLABLE DUOX */ + [0xa10c, 0xa10c], /* YI SYLLABLE DUO */ + [0xa10d, 0xa10d], /* YI SYLLABLE DOT */ + [0xa10e, 0xa10e], /* YI SYLLABLE DOX */ + [0xa10f, 0xa10f], /* YI SYLLABLE DO */ + [0xa110, 0xa110], /* YI SYLLABLE DOP */ + [0xa111, 0xa111], /* YI SYLLABLE DEX */ + [0xa112, 0xa112], /* YI SYLLABLE DE */ + [0xa113, 0xa113], /* YI SYLLABLE DEP */ + [0xa114, 0xa114], /* YI SYLLABLE DUT */ + [0xa115, 0xa115], /* YI SYLLABLE DUX */ + [0xa116, 0xa116], /* YI SYLLABLE DU */ + [0xa117, 0xa117], /* YI SYLLABLE DUP */ + [0xa118, 0xa118], /* YI SYLLABLE DURX */ + [0xa119, 0xa119], /* YI SYLLABLE DUR */ + [0xa11a, 0xa11a], /* YI SYLLABLE TIT */ + [0xa11b, 0xa11b], /* YI SYLLABLE TIX */ + [0xa11c, 0xa11c], /* YI SYLLABLE TI */ + [0xa11d, 0xa11d], /* YI SYLLABLE TIP */ + [0xa11e, 0xa11e], /* YI SYLLABLE TIEX */ + [0xa11f, 0xa11f], /* YI SYLLABLE TIE */ + [0xa120, 0xa120], /* YI SYLLABLE TIEP */ + [0xa121, 0xa121], /* YI SYLLABLE TAT */ + [0xa122, 0xa122], /* YI SYLLABLE TAX */ + [0xa123, 0xa123], /* YI SYLLABLE TA */ + [0xa124, 0xa124], /* YI SYLLABLE TAP */ + [0xa125, 0xa125], /* YI SYLLABLE TUOT */ + [0xa126, 0xa126], /* YI SYLLABLE TUOX */ + [0xa127, 0xa127], /* YI SYLLABLE TUO */ + [0xa128, 0xa128], /* YI SYLLABLE TUOP */ + [0xa129, 0xa129], /* YI SYLLABLE TOT */ + [0xa12a, 0xa12a], /* YI SYLLABLE TOX */ + [0xa12b, 0xa12b], /* YI SYLLABLE TO */ + [0xa12c, 0xa12c], /* YI SYLLABLE TOP */ + [0xa12d, 0xa12d], /* YI SYLLABLE TEX */ + [0xa12e, 0xa12e], /* YI SYLLABLE TE */ + [0xa12f, 0xa12f], /* YI SYLLABLE TEP */ + [0xa130, 0xa130], /* YI SYLLABLE TUT */ + [0xa131, 0xa131], /* YI SYLLABLE TUX */ + [0xa132, 0xa132], /* YI SYLLABLE TU */ + [0xa133, 0xa133], /* YI SYLLABLE TUP */ + [0xa134, 0xa134], /* YI SYLLABLE TURX */ + [0xa135, 0xa135], /* YI SYLLABLE TUR */ + [0xa136, 0xa136], /* YI SYLLABLE DDIT */ + [0xa137, 0xa137], /* YI SYLLABLE DDIX */ + [0xa138, 0xa138], /* YI SYLLABLE DDI */ + [0xa139, 0xa139], /* YI SYLLABLE DDIP */ + [0xa13a, 0xa13a], /* YI SYLLABLE DDIEX */ + [0xa13b, 0xa13b], /* YI SYLLABLE DDIE */ + [0xa13c, 0xa13c], /* YI SYLLABLE DDIEP */ + [0xa13d, 0xa13d], /* YI SYLLABLE DDAT */ + [0xa13e, 0xa13e], /* YI SYLLABLE DDAX */ + [0xa13f, 0xa13f], /* YI SYLLABLE DDA */ + [0xa140, 0xa140], /* YI SYLLABLE DDAP */ + [0xa141, 0xa141], /* YI SYLLABLE DDUOX */ + [0xa142, 0xa142], /* YI SYLLABLE DDUO */ + [0xa143, 0xa143], /* YI SYLLABLE DDUOP */ + [0xa144, 0xa144], /* YI SYLLABLE DDOT */ + [0xa145, 0xa145], /* YI SYLLABLE DDOX */ + [0xa146, 0xa146], /* YI SYLLABLE DDO */ + [0xa147, 0xa147], /* YI SYLLABLE DDOP */ + [0xa148, 0xa148], /* YI SYLLABLE DDEX */ + [0xa149, 0xa149], /* YI SYLLABLE DDE */ + [0xa14a, 0xa14a], /* YI SYLLABLE DDEP */ + [0xa14b, 0xa14b], /* YI SYLLABLE DDUT */ + [0xa14c, 0xa14c], /* YI SYLLABLE DDUX */ + [0xa14d, 0xa14d], /* YI SYLLABLE DDU */ + [0xa14e, 0xa14e], /* YI SYLLABLE DDUP */ + [0xa14f, 0xa14f], /* YI SYLLABLE DDURX */ + [0xa150, 0xa150], /* YI SYLLABLE DDUR */ + [0xa151, 0xa151], /* YI SYLLABLE NDIT */ + [0xa152, 0xa152], /* YI SYLLABLE NDIX */ + [0xa153, 0xa153], /* YI SYLLABLE NDI */ + [0xa154, 0xa154], /* YI SYLLABLE NDIP */ + [0xa155, 0xa155], /* YI SYLLABLE NDIEX */ + [0xa156, 0xa156], /* YI SYLLABLE NDIE */ + [0xa157, 0xa157], /* YI SYLLABLE NDAT */ + [0xa158, 0xa158], /* YI SYLLABLE NDAX */ + [0xa159, 0xa159], /* YI SYLLABLE NDA */ + [0xa15a, 0xa15a], /* YI SYLLABLE NDAP */ + [0xa15b, 0xa15b], /* YI SYLLABLE NDOT */ + [0xa15c, 0xa15c], /* YI SYLLABLE NDOX */ + [0xa15d, 0xa15d], /* YI SYLLABLE NDO */ + [0xa15e, 0xa15e], /* YI SYLLABLE NDOP */ + [0xa15f, 0xa15f], /* YI SYLLABLE NDEX */ + [0xa160, 0xa160], /* YI SYLLABLE NDE */ + [0xa161, 0xa161], /* YI SYLLABLE NDEP */ + [0xa162, 0xa162], /* YI SYLLABLE NDUT */ + [0xa163, 0xa163], /* YI SYLLABLE NDUX */ + [0xa164, 0xa164], /* YI SYLLABLE NDU */ + [0xa165, 0xa165], /* YI SYLLABLE NDUP */ + [0xa166, 0xa166], /* YI SYLLABLE NDURX */ + [0xa167, 0xa167], /* YI SYLLABLE NDUR */ + [0xa168, 0xa168], /* YI SYLLABLE HNIT */ + [0xa169, 0xa169], /* YI SYLLABLE HNIX */ + [0xa16a, 0xa16a], /* YI SYLLABLE HNI */ + [0xa16b, 0xa16b], /* YI SYLLABLE HNIP */ + [0xa16c, 0xa16c], /* YI SYLLABLE HNIET */ + [0xa16d, 0xa16d], /* YI SYLLABLE HNIEX */ + [0xa16e, 0xa16e], /* YI SYLLABLE HNIE */ + [0xa16f, 0xa16f], /* YI SYLLABLE HNIEP */ + [0xa170, 0xa170], /* YI SYLLABLE HNAT */ + [0xa171, 0xa171], /* YI SYLLABLE HNAX */ + [0xa172, 0xa172], /* YI SYLLABLE HNA */ + [0xa173, 0xa173], /* YI SYLLABLE HNAP */ + [0xa174, 0xa174], /* YI SYLLABLE HNUOX */ + [0xa175, 0xa175], /* YI SYLLABLE HNUO */ + [0xa176, 0xa176], /* YI SYLLABLE HNOT */ + [0xa177, 0xa177], /* YI SYLLABLE HNOX */ + [0xa178, 0xa178], /* YI SYLLABLE HNOP */ + [0xa179, 0xa179], /* YI SYLLABLE HNEX */ + [0xa17a, 0xa17a], /* YI SYLLABLE HNE */ + [0xa17b, 0xa17b], /* YI SYLLABLE HNEP */ + [0xa17c, 0xa17c], /* YI SYLLABLE HNUT */ + [0xa17d, 0xa17d], /* YI SYLLABLE NIT */ + [0xa17e, 0xa17e], /* YI SYLLABLE NIX */ + [0xa17f, 0xa17f], /* YI SYLLABLE NI */ + [0xa180, 0xa180], /* YI SYLLABLE NIP */ + [0xa181, 0xa181], /* YI SYLLABLE NIEX */ + [0xa182, 0xa182], /* YI SYLLABLE NIE */ + [0xa183, 0xa183], /* YI SYLLABLE NIEP */ + [0xa184, 0xa184], /* YI SYLLABLE NAX */ + [0xa185, 0xa185], /* YI SYLLABLE NA */ + [0xa186, 0xa186], /* YI SYLLABLE NAP */ + [0xa187, 0xa187], /* YI SYLLABLE NUOX */ + [0xa188, 0xa188], /* YI SYLLABLE NUO */ + [0xa189, 0xa189], /* YI SYLLABLE NUOP */ + [0xa18a, 0xa18a], /* YI SYLLABLE NOT */ + [0xa18b, 0xa18b], /* YI SYLLABLE NOX */ + [0xa18c, 0xa18c], /* YI SYLLABLE NO */ + [0xa18d, 0xa18d], /* YI SYLLABLE NOP */ + [0xa18e, 0xa18e], /* YI SYLLABLE NEX */ + [0xa18f, 0xa18f], /* YI SYLLABLE NE */ + [0xa190, 0xa190], /* YI SYLLABLE NEP */ + [0xa191, 0xa191], /* YI SYLLABLE NUT */ + [0xa192, 0xa192], /* YI SYLLABLE NUX */ + [0xa193, 0xa193], /* YI SYLLABLE NU */ + [0xa194, 0xa194], /* YI SYLLABLE NUP */ + [0xa195, 0xa195], /* YI SYLLABLE NURX */ + [0xa196, 0xa196], /* YI SYLLABLE NUR */ + [0xa197, 0xa197], /* YI SYLLABLE HLIT */ + [0xa198, 0xa198], /* YI SYLLABLE HLIX */ + [0xa199, 0xa199], /* YI SYLLABLE HLI */ + [0xa19a, 0xa19a], /* YI SYLLABLE HLIP */ + [0xa19b, 0xa19b], /* YI SYLLABLE HLIEX */ + [0xa19c, 0xa19c], /* YI SYLLABLE HLIE */ + [0xa19d, 0xa19d], /* YI SYLLABLE HLIEP */ + [0xa19e, 0xa19e], /* YI SYLLABLE HLAT */ + [0xa19f, 0xa19f], /* YI SYLLABLE HLAX */ + [0xa1a0, 0xa1a0], /* YI SYLLABLE HLA */ + [0xa1a1, 0xa1a1], /* YI SYLLABLE HLAP */ + [0xa1a2, 0xa1a2], /* YI SYLLABLE HLUOX */ + [0xa1a3, 0xa1a3], /* YI SYLLABLE HLUO */ + [0xa1a4, 0xa1a4], /* YI SYLLABLE HLUOP */ + [0xa1a5, 0xa1a5], /* YI SYLLABLE HLOX */ + [0xa1a6, 0xa1a6], /* YI SYLLABLE HLO */ + [0xa1a7, 0xa1a7], /* YI SYLLABLE HLOP */ + [0xa1a8, 0xa1a8], /* YI SYLLABLE HLEX */ + [0xa1a9, 0xa1a9], /* YI SYLLABLE HLE */ + [0xa1aa, 0xa1aa], /* YI SYLLABLE HLEP */ + [0xa1ab, 0xa1ab], /* YI SYLLABLE HLUT */ + [0xa1ac, 0xa1ac], /* YI SYLLABLE HLUX */ + [0xa1ad, 0xa1ad], /* YI SYLLABLE HLU */ + [0xa1ae, 0xa1ae], /* YI SYLLABLE HLUP */ + [0xa1af, 0xa1af], /* YI SYLLABLE HLURX */ + [0xa1b0, 0xa1b0], /* YI SYLLABLE HLUR */ + [0xa1b1, 0xa1b1], /* YI SYLLABLE HLYT */ + [0xa1b2, 0xa1b2], /* YI SYLLABLE HLYX */ + [0xa1b3, 0xa1b3], /* YI SYLLABLE HLY */ + [0xa1b4, 0xa1b4], /* YI SYLLABLE HLYP */ + [0xa1b5, 0xa1b5], /* YI SYLLABLE HLYRX */ + [0xa1b6, 0xa1b6], /* YI SYLLABLE HLYR */ + [0xa1b7, 0xa1b7], /* YI SYLLABLE LIT */ + [0xa1b8, 0xa1b8], /* YI SYLLABLE LIX */ + [0xa1b9, 0xa1b9], /* YI SYLLABLE LI */ + [0xa1ba, 0xa1ba], /* YI SYLLABLE LIP */ + [0xa1bb, 0xa1bb], /* YI SYLLABLE LIET */ + [0xa1bc, 0xa1bc], /* YI SYLLABLE LIEX */ + [0xa1bd, 0xa1bd], /* YI SYLLABLE LIE */ + [0xa1be, 0xa1be], /* YI SYLLABLE LIEP */ + [0xa1bf, 0xa1bf], /* YI SYLLABLE LAT */ + [0xa1c0, 0xa1c0], /* YI SYLLABLE LAX */ + [0xa1c1, 0xa1c1], /* YI SYLLABLE LA */ + [0xa1c2, 0xa1c2], /* YI SYLLABLE LAP */ + [0xa1c3, 0xa1c3], /* YI SYLLABLE LUOT */ + [0xa1c4, 0xa1c4], /* YI SYLLABLE LUOX */ + [0xa1c5, 0xa1c5], /* YI SYLLABLE LUO */ + [0xa1c6, 0xa1c6], /* YI SYLLABLE LUOP */ + [0xa1c7, 0xa1c7], /* YI SYLLABLE LOT */ + [0xa1c8, 0xa1c8], /* YI SYLLABLE LOX */ + [0xa1c9, 0xa1c9], /* YI SYLLABLE LO */ + [0xa1ca, 0xa1ca], /* YI SYLLABLE LOP */ + [0xa1cb, 0xa1cb], /* YI SYLLABLE LEX */ + [0xa1cc, 0xa1cc], /* YI SYLLABLE LE */ + [0xa1cd, 0xa1cd], /* YI SYLLABLE LEP */ + [0xa1ce, 0xa1ce], /* YI SYLLABLE LUT */ + [0xa1cf, 0xa1cf], /* YI SYLLABLE LUX */ + [0xa1d0, 0xa1d0], /* YI SYLLABLE LU */ + [0xa1d1, 0xa1d1], /* YI SYLLABLE LUP */ + [0xa1d2, 0xa1d2], /* YI SYLLABLE LURX */ + [0xa1d3, 0xa1d3], /* YI SYLLABLE LUR */ + [0xa1d4, 0xa1d4], /* YI SYLLABLE LYT */ + [0xa1d5, 0xa1d5], /* YI SYLLABLE LYX */ + [0xa1d6, 0xa1d6], /* YI SYLLABLE LY */ + [0xa1d7, 0xa1d7], /* YI SYLLABLE LYP */ + [0xa1d8, 0xa1d8], /* YI SYLLABLE LYRX */ + [0xa1d9, 0xa1d9], /* YI SYLLABLE LYR */ + [0xa1da, 0xa1da], /* YI SYLLABLE GIT */ + [0xa1db, 0xa1db], /* YI SYLLABLE GIX */ + [0xa1dc, 0xa1dc], /* YI SYLLABLE GI */ + [0xa1dd, 0xa1dd], /* YI SYLLABLE GIP */ + [0xa1de, 0xa1de], /* YI SYLLABLE GIET */ + [0xa1df, 0xa1df], /* YI SYLLABLE GIEX */ + [0xa1e0, 0xa1e0], /* YI SYLLABLE GIE */ + [0xa1e1, 0xa1e1], /* YI SYLLABLE GIEP */ + [0xa1e2, 0xa1e2], /* YI SYLLABLE GAT */ + [0xa1e3, 0xa1e3], /* YI SYLLABLE GAX */ + [0xa1e4, 0xa1e4], /* YI SYLLABLE GA */ + [0xa1e5, 0xa1e5], /* YI SYLLABLE GAP */ + [0xa1e6, 0xa1e6], /* YI SYLLABLE GUOT */ + [0xa1e7, 0xa1e7], /* YI SYLLABLE GUOX */ + [0xa1e8, 0xa1e8], /* YI SYLLABLE GUO */ + [0xa1e9, 0xa1e9], /* YI SYLLABLE GUOP */ + [0xa1ea, 0xa1ea], /* YI SYLLABLE GOT */ + [0xa1eb, 0xa1eb], /* YI SYLLABLE GOX */ + [0xa1ec, 0xa1ec], /* YI SYLLABLE GO */ + [0xa1ed, 0xa1ed], /* YI SYLLABLE GOP */ + [0xa1ee, 0xa1ee], /* YI SYLLABLE GET */ + [0xa1ef, 0xa1ef], /* YI SYLLABLE GEX */ + [0xa1f0, 0xa1f0], /* YI SYLLABLE GE */ + [0xa1f1, 0xa1f1], /* YI SYLLABLE GEP */ + [0xa1f2, 0xa1f2], /* YI SYLLABLE GUT */ + [0xa1f3, 0xa1f3], /* YI SYLLABLE GUX */ + [0xa1f4, 0xa1f4], /* YI SYLLABLE GU */ + [0xa1f5, 0xa1f5], /* YI SYLLABLE GUP */ + [0xa1f6, 0xa1f6], /* YI SYLLABLE GURX */ + [0xa1f7, 0xa1f7], /* YI SYLLABLE GUR */ + [0xa1f8, 0xa1f8], /* YI SYLLABLE KIT */ + [0xa1f9, 0xa1f9], /* YI SYLLABLE KIX */ + [0xa1fa, 0xa1fa], /* YI SYLLABLE KI */ + [0xa1fb, 0xa1fb], /* YI SYLLABLE KIP */ + [0xa1fc, 0xa1fc], /* YI SYLLABLE KIEX */ + [0xa1fd, 0xa1fd], /* YI SYLLABLE KIE */ + [0xa1fe, 0xa1fe], /* YI SYLLABLE KIEP */ + [0xa1ff, 0xa1ff], /* YI SYLLABLE KAT */ + [0xa200, 0xa200], /* YI SYLLABLE KAX */ + [0xa201, 0xa201], /* YI SYLLABLE KA */ + [0xa202, 0xa202], /* YI SYLLABLE KAP */ + [0xa203, 0xa203], /* YI SYLLABLE KUOX */ + [0xa204, 0xa204], /* YI SYLLABLE KUO */ + [0xa205, 0xa205], /* YI SYLLABLE KUOP */ + [0xa206, 0xa206], /* YI SYLLABLE KOT */ + [0xa207, 0xa207], /* YI SYLLABLE KOX */ + [0xa208, 0xa208], /* YI SYLLABLE KO */ + [0xa209, 0xa209], /* YI SYLLABLE KOP */ + [0xa20a, 0xa20a], /* YI SYLLABLE KET */ + [0xa20b, 0xa20b], /* YI SYLLABLE KEX */ + [0xa20c, 0xa20c], /* YI SYLLABLE KE */ + [0xa20d, 0xa20d], /* YI SYLLABLE KEP */ + [0xa20e, 0xa20e], /* YI SYLLABLE KUT */ + [0xa20f, 0xa20f], /* YI SYLLABLE KUX */ + [0xa210, 0xa210], /* YI SYLLABLE KU */ + [0xa211, 0xa211], /* YI SYLLABLE KUP */ + [0xa212, 0xa212], /* YI SYLLABLE KURX */ + [0xa213, 0xa213], /* YI SYLLABLE KUR */ + [0xa214, 0xa214], /* YI SYLLABLE GGIT */ + [0xa215, 0xa215], /* YI SYLLABLE GGIX */ + [0xa216, 0xa216], /* YI SYLLABLE GGI */ + [0xa217, 0xa217], /* YI SYLLABLE GGIEX */ + [0xa218, 0xa218], /* YI SYLLABLE GGIE */ + [0xa219, 0xa219], /* YI SYLLABLE GGIEP */ + [0xa21a, 0xa21a], /* YI SYLLABLE GGAT */ + [0xa21b, 0xa21b], /* YI SYLLABLE GGAX */ + [0xa21c, 0xa21c], /* YI SYLLABLE GGA */ + [0xa21d, 0xa21d], /* YI SYLLABLE GGAP */ + [0xa21e, 0xa21e], /* YI SYLLABLE GGUOT */ + [0xa21f, 0xa21f], /* YI SYLLABLE GGUOX */ + [0xa220, 0xa220], /* YI SYLLABLE GGUO */ + [0xa221, 0xa221], /* YI SYLLABLE GGUOP */ + [0xa222, 0xa222], /* YI SYLLABLE GGOT */ + [0xa223, 0xa223], /* YI SYLLABLE GGOX */ + [0xa224, 0xa224], /* YI SYLLABLE GGO */ + [0xa225, 0xa225], /* YI SYLLABLE GGOP */ + [0xa226, 0xa226], /* YI SYLLABLE GGET */ + [0xa227, 0xa227], /* YI SYLLABLE GGEX */ + [0xa228, 0xa228], /* YI SYLLABLE GGE */ + [0xa229, 0xa229], /* YI SYLLABLE GGEP */ + [0xa22a, 0xa22a], /* YI SYLLABLE GGUT */ + [0xa22b, 0xa22b], /* YI SYLLABLE GGUX */ + [0xa22c, 0xa22c], /* YI SYLLABLE GGU */ + [0xa22d, 0xa22d], /* YI SYLLABLE GGUP */ + [0xa22e, 0xa22e], /* YI SYLLABLE GGURX */ + [0xa22f, 0xa22f], /* YI SYLLABLE GGUR */ + [0xa230, 0xa230], /* YI SYLLABLE MGIEX */ + [0xa231, 0xa231], /* YI SYLLABLE MGIE */ + [0xa232, 0xa232], /* YI SYLLABLE MGAT */ + [0xa233, 0xa233], /* YI SYLLABLE MGAX */ + [0xa234, 0xa234], /* YI SYLLABLE MGA */ + [0xa235, 0xa235], /* YI SYLLABLE MGAP */ + [0xa236, 0xa236], /* YI SYLLABLE MGUOX */ + [0xa237, 0xa237], /* YI SYLLABLE MGUO */ + [0xa238, 0xa238], /* YI SYLLABLE MGUOP */ + [0xa239, 0xa239], /* YI SYLLABLE MGOT */ + [0xa23a, 0xa23a], /* YI SYLLABLE MGOX */ + [0xa23b, 0xa23b], /* YI SYLLABLE MGO */ + [0xa23c, 0xa23c], /* YI SYLLABLE MGOP */ + [0xa23d, 0xa23d], /* YI SYLLABLE MGEX */ + [0xa23e, 0xa23e], /* YI SYLLABLE MGE */ + [0xa23f, 0xa23f], /* YI SYLLABLE MGEP */ + [0xa240, 0xa240], /* YI SYLLABLE MGUT */ + [0xa241, 0xa241], /* YI SYLLABLE MGUX */ + [0xa242, 0xa242], /* YI SYLLABLE MGU */ + [0xa243, 0xa243], /* YI SYLLABLE MGUP */ + [0xa244, 0xa244], /* YI SYLLABLE MGURX */ + [0xa245, 0xa245], /* YI SYLLABLE MGUR */ + [0xa246, 0xa246], /* YI SYLLABLE HXIT */ + [0xa247, 0xa247], /* YI SYLLABLE HXIX */ + [0xa248, 0xa248], /* YI SYLLABLE HXI */ + [0xa249, 0xa249], /* YI SYLLABLE HXIP */ + [0xa24a, 0xa24a], /* YI SYLLABLE HXIET */ + [0xa24b, 0xa24b], /* YI SYLLABLE HXIEX */ + [0xa24c, 0xa24c], /* YI SYLLABLE HXIE */ + [0xa24d, 0xa24d], /* YI SYLLABLE HXIEP */ + [0xa24e, 0xa24e], /* YI SYLLABLE HXAT */ + [0xa24f, 0xa24f], /* YI SYLLABLE HXAX */ + [0xa250, 0xa250], /* YI SYLLABLE HXA */ + [0xa251, 0xa251], /* YI SYLLABLE HXAP */ + [0xa252, 0xa252], /* YI SYLLABLE HXUOT */ + [0xa253, 0xa253], /* YI SYLLABLE HXUOX */ + [0xa254, 0xa254], /* YI SYLLABLE HXUO */ + [0xa255, 0xa255], /* YI SYLLABLE HXUOP */ + [0xa256, 0xa256], /* YI SYLLABLE HXOT */ + [0xa257, 0xa257], /* YI SYLLABLE HXOX */ + [0xa258, 0xa258], /* YI SYLLABLE HXO */ + [0xa259, 0xa259], /* YI SYLLABLE HXOP */ + [0xa25a, 0xa25a], /* YI SYLLABLE HXEX */ + [0xa25b, 0xa25b], /* YI SYLLABLE HXE */ + [0xa25c, 0xa25c], /* YI SYLLABLE HXEP */ + [0xa25d, 0xa25d], /* YI SYLLABLE NGIEX */ + [0xa25e, 0xa25e], /* YI SYLLABLE NGIE */ + [0xa25f, 0xa25f], /* YI SYLLABLE NGIEP */ + [0xa260, 0xa260], /* YI SYLLABLE NGAT */ + [0xa261, 0xa261], /* YI SYLLABLE NGAX */ + [0xa262, 0xa262], /* YI SYLLABLE NGA */ + [0xa263, 0xa263], /* YI SYLLABLE NGAP */ + [0xa264, 0xa264], /* YI SYLLABLE NGUOT */ + [0xa265, 0xa265], /* YI SYLLABLE NGUOX */ + [0xa266, 0xa266], /* YI SYLLABLE NGUO */ + [0xa267, 0xa267], /* YI SYLLABLE NGOT */ + [0xa268, 0xa268], /* YI SYLLABLE NGOX */ + [0xa269, 0xa269], /* YI SYLLABLE NGO */ + [0xa26a, 0xa26a], /* YI SYLLABLE NGOP */ + [0xa26b, 0xa26b], /* YI SYLLABLE NGEX */ + [0xa26c, 0xa26c], /* YI SYLLABLE NGE */ + [0xa26d, 0xa26d], /* YI SYLLABLE NGEP */ + [0xa26e, 0xa26e], /* YI SYLLABLE HIT */ + [0xa26f, 0xa26f], /* YI SYLLABLE HIEX */ + [0xa270, 0xa270], /* YI SYLLABLE HIE */ + [0xa271, 0xa271], /* YI SYLLABLE HAT */ + [0xa272, 0xa272], /* YI SYLLABLE HAX */ + [0xa273, 0xa273], /* YI SYLLABLE HA */ + [0xa274, 0xa274], /* YI SYLLABLE HAP */ + [0xa275, 0xa275], /* YI SYLLABLE HUOT */ + [0xa276, 0xa276], /* YI SYLLABLE HUOX */ + [0xa277, 0xa277], /* YI SYLLABLE HUO */ + [0xa278, 0xa278], /* YI SYLLABLE HUOP */ + [0xa279, 0xa279], /* YI SYLLABLE HOT */ + [0xa27a, 0xa27a], /* YI SYLLABLE HOX */ + [0xa27b, 0xa27b], /* YI SYLLABLE HO */ + [0xa27c, 0xa27c], /* YI SYLLABLE HOP */ + [0xa27d, 0xa27d], /* YI SYLLABLE HEX */ + [0xa27e, 0xa27e], /* YI SYLLABLE HE */ + [0xa27f, 0xa27f], /* YI SYLLABLE HEP */ + [0xa280, 0xa280], /* YI SYLLABLE WAT */ + [0xa281, 0xa281], /* YI SYLLABLE WAX */ + [0xa282, 0xa282], /* YI SYLLABLE WA */ + [0xa283, 0xa283], /* YI SYLLABLE WAP */ + [0xa284, 0xa284], /* YI SYLLABLE WUOX */ + [0xa285, 0xa285], /* YI SYLLABLE WUO */ + [0xa286, 0xa286], /* YI SYLLABLE WUOP */ + [0xa287, 0xa287], /* YI SYLLABLE WOX */ + [0xa288, 0xa288], /* YI SYLLABLE WO */ + [0xa289, 0xa289], /* YI SYLLABLE WOP */ + [0xa28a, 0xa28a], /* YI SYLLABLE WEX */ + [0xa28b, 0xa28b], /* YI SYLLABLE WE */ + [0xa28c, 0xa28c], /* YI SYLLABLE WEP */ + [0xa28d, 0xa28d], /* YI SYLLABLE ZIT */ + [0xa28e, 0xa28e], /* YI SYLLABLE ZIX */ + [0xa28f, 0xa28f], /* YI SYLLABLE ZI */ + [0xa290, 0xa290], /* YI SYLLABLE ZIP */ + [0xa291, 0xa291], /* YI SYLLABLE ZIEX */ + [0xa292, 0xa292], /* YI SYLLABLE ZIE */ + [0xa293, 0xa293], /* YI SYLLABLE ZIEP */ + [0xa294, 0xa294], /* YI SYLLABLE ZAT */ + [0xa295, 0xa295], /* YI SYLLABLE ZAX */ + [0xa296, 0xa296], /* YI SYLLABLE ZA */ + [0xa297, 0xa297], /* YI SYLLABLE ZAP */ + [0xa298, 0xa298], /* YI SYLLABLE ZUOX */ + [0xa299, 0xa299], /* YI SYLLABLE ZUO */ + [0xa29a, 0xa29a], /* YI SYLLABLE ZUOP */ + [0xa29b, 0xa29b], /* YI SYLLABLE ZOT */ + [0xa29c, 0xa29c], /* YI SYLLABLE ZOX */ + [0xa29d, 0xa29d], /* YI SYLLABLE ZO */ + [0xa29e, 0xa29e], /* YI SYLLABLE ZOP */ + [0xa29f, 0xa29f], /* YI SYLLABLE ZEX */ + [0xa2a0, 0xa2a0], /* YI SYLLABLE ZE */ + [0xa2a1, 0xa2a1], /* YI SYLLABLE ZEP */ + [0xa2a2, 0xa2a2], /* YI SYLLABLE ZUT */ + [0xa2a3, 0xa2a3], /* YI SYLLABLE ZUX */ + [0xa2a4, 0xa2a4], /* YI SYLLABLE ZU */ + [0xa2a5, 0xa2a5], /* YI SYLLABLE ZUP */ + [0xa2a6, 0xa2a6], /* YI SYLLABLE ZURX */ + [0xa2a7, 0xa2a7], /* YI SYLLABLE ZUR */ + [0xa2a8, 0xa2a8], /* YI SYLLABLE ZYT */ + [0xa2a9, 0xa2a9], /* YI SYLLABLE ZYX */ + [0xa2aa, 0xa2aa], /* YI SYLLABLE ZY */ + [0xa2ab, 0xa2ab], /* YI SYLLABLE ZYP */ + [0xa2ac, 0xa2ac], /* YI SYLLABLE ZYRX */ + [0xa2ad, 0xa2ad], /* YI SYLLABLE ZYR */ + [0xa2ae, 0xa2ae], /* YI SYLLABLE CIT */ + [0xa2af, 0xa2af], /* YI SYLLABLE CIX */ + [0xa2b0, 0xa2b0], /* YI SYLLABLE CI */ + [0xa2b1, 0xa2b1], /* YI SYLLABLE CIP */ + [0xa2b2, 0xa2b2], /* YI SYLLABLE CIET */ + [0xa2b3, 0xa2b3], /* YI SYLLABLE CIEX */ + [0xa2b4, 0xa2b4], /* YI SYLLABLE CIE */ + [0xa2b5, 0xa2b5], /* YI SYLLABLE CIEP */ + [0xa2b6, 0xa2b6], /* YI SYLLABLE CAT */ + [0xa2b7, 0xa2b7], /* YI SYLLABLE CAX */ + [0xa2b8, 0xa2b8], /* YI SYLLABLE CA */ + [0xa2b9, 0xa2b9], /* YI SYLLABLE CAP */ + [0xa2ba, 0xa2ba], /* YI SYLLABLE CUOX */ + [0xa2bb, 0xa2bb], /* YI SYLLABLE CUO */ + [0xa2bc, 0xa2bc], /* YI SYLLABLE CUOP */ + [0xa2bd, 0xa2bd], /* YI SYLLABLE COT */ + [0xa2be, 0xa2be], /* YI SYLLABLE COX */ + [0xa2bf, 0xa2bf], /* YI SYLLABLE CO */ + [0xa2c0, 0xa2c0], /* YI SYLLABLE COP */ + [0xa2c1, 0xa2c1], /* YI SYLLABLE CEX */ + [0xa2c2, 0xa2c2], /* YI SYLLABLE CE */ + [0xa2c3, 0xa2c3], /* YI SYLLABLE CEP */ + [0xa2c4, 0xa2c4], /* YI SYLLABLE CUT */ + [0xa2c5, 0xa2c5], /* YI SYLLABLE CUX */ + [0xa2c6, 0xa2c6], /* YI SYLLABLE CU */ + [0xa2c7, 0xa2c7], /* YI SYLLABLE CUP */ + [0xa2c8, 0xa2c8], /* YI SYLLABLE CURX */ + [0xa2c9, 0xa2c9], /* YI SYLLABLE CUR */ + [0xa2ca, 0xa2ca], /* YI SYLLABLE CYT */ + [0xa2cb, 0xa2cb], /* YI SYLLABLE CYX */ + [0xa2cc, 0xa2cc], /* YI SYLLABLE CY */ + [0xa2cd, 0xa2cd], /* YI SYLLABLE CYP */ + [0xa2ce, 0xa2ce], /* YI SYLLABLE CYRX */ + [0xa2cf, 0xa2cf], /* YI SYLLABLE CYR */ + [0xa2d0, 0xa2d0], /* YI SYLLABLE ZZIT */ + [0xa2d1, 0xa2d1], /* YI SYLLABLE ZZIX */ + [0xa2d2, 0xa2d2], /* YI SYLLABLE ZZI */ + [0xa2d3, 0xa2d3], /* YI SYLLABLE ZZIP */ + [0xa2d4, 0xa2d4], /* YI SYLLABLE ZZIET */ + [0xa2d5, 0xa2d5], /* YI SYLLABLE ZZIEX */ + [0xa2d6, 0xa2d6], /* YI SYLLABLE ZZIE */ + [0xa2d7, 0xa2d7], /* YI SYLLABLE ZZIEP */ + [0xa2d8, 0xa2d8], /* YI SYLLABLE ZZAT */ + [0xa2d9, 0xa2d9], /* YI SYLLABLE ZZAX */ + [0xa2da, 0xa2da], /* YI SYLLABLE ZZA */ + [0xa2db, 0xa2db], /* YI SYLLABLE ZZAP */ + [0xa2dc, 0xa2dc], /* YI SYLLABLE ZZOX */ + [0xa2dd, 0xa2dd], /* YI SYLLABLE ZZO */ + [0xa2de, 0xa2de], /* YI SYLLABLE ZZOP */ + [0xa2df, 0xa2df], /* YI SYLLABLE ZZEX */ + [0xa2e0, 0xa2e0], /* YI SYLLABLE ZZE */ + [0xa2e1, 0xa2e1], /* YI SYLLABLE ZZEP */ + [0xa2e2, 0xa2e2], /* YI SYLLABLE ZZUX */ + [0xa2e3, 0xa2e3], /* YI SYLLABLE ZZU */ + [0xa2e4, 0xa2e4], /* YI SYLLABLE ZZUP */ + [0xa2e5, 0xa2e5], /* YI SYLLABLE ZZURX */ + [0xa2e6, 0xa2e6], /* YI SYLLABLE ZZUR */ + [0xa2e7, 0xa2e7], /* YI SYLLABLE ZZYT */ + [0xa2e8, 0xa2e8], /* YI SYLLABLE ZZYX */ + [0xa2e9, 0xa2e9], /* YI SYLLABLE ZZY */ + [0xa2ea, 0xa2ea], /* YI SYLLABLE ZZYP */ + [0xa2eb, 0xa2eb], /* YI SYLLABLE ZZYRX */ + [0xa2ec, 0xa2ec], /* YI SYLLABLE ZZYR */ + [0xa2ed, 0xa2ed], /* YI SYLLABLE NZIT */ + [0xa2ee, 0xa2ee], /* YI SYLLABLE NZIX */ + [0xa2ef, 0xa2ef], /* YI SYLLABLE NZI */ + [0xa2f0, 0xa2f0], /* YI SYLLABLE NZIP */ + [0xa2f1, 0xa2f1], /* YI SYLLABLE NZIEX */ + [0xa2f2, 0xa2f2], /* YI SYLLABLE NZIE */ + [0xa2f3, 0xa2f3], /* YI SYLLABLE NZIEP */ + [0xa2f4, 0xa2f4], /* YI SYLLABLE NZAT */ + [0xa2f5, 0xa2f5], /* YI SYLLABLE NZAX */ + [0xa2f6, 0xa2f6], /* YI SYLLABLE NZA */ + [0xa2f7, 0xa2f7], /* YI SYLLABLE NZAP */ + [0xa2f8, 0xa2f8], /* YI SYLLABLE NZUOX */ + [0xa2f9, 0xa2f9], /* YI SYLLABLE NZUO */ + [0xa2fa, 0xa2fa], /* YI SYLLABLE NZOX */ + [0xa2fb, 0xa2fb], /* YI SYLLABLE NZOP */ + [0xa2fc, 0xa2fc], /* YI SYLLABLE NZEX */ + [0xa2fd, 0xa2fd], /* YI SYLLABLE NZE */ + [0xa2fe, 0xa2fe], /* YI SYLLABLE NZUX */ + [0xa2ff, 0xa2ff], /* YI SYLLABLE NZU */ + [0xa300, 0xa300], /* YI SYLLABLE NZUP */ + [0xa301, 0xa301], /* YI SYLLABLE NZURX */ + [0xa302, 0xa302], /* YI SYLLABLE NZUR */ + [0xa303, 0xa303], /* YI SYLLABLE NZYT */ + [0xa304, 0xa304], /* YI SYLLABLE NZYX */ + [0xa305, 0xa305], /* YI SYLLABLE NZY */ + [0xa306, 0xa306], /* YI SYLLABLE NZYP */ + [0xa307, 0xa307], /* YI SYLLABLE NZYRX */ + [0xa308, 0xa308], /* YI SYLLABLE NZYR */ + [0xa309, 0xa309], /* YI SYLLABLE SIT */ + [0xa30a, 0xa30a], /* YI SYLLABLE SIX */ + [0xa30b, 0xa30b], /* YI SYLLABLE SI */ + [0xa30c, 0xa30c], /* YI SYLLABLE SIP */ + [0xa30d, 0xa30d], /* YI SYLLABLE SIEX */ + [0xa30e, 0xa30e], /* YI SYLLABLE SIE */ + [0xa30f, 0xa30f], /* YI SYLLABLE SIEP */ + [0xa310, 0xa310], /* YI SYLLABLE SAT */ + [0xa311, 0xa311], /* YI SYLLABLE SAX */ + [0xa312, 0xa312], /* YI SYLLABLE SA */ + [0xa313, 0xa313], /* YI SYLLABLE SAP */ + [0xa314, 0xa314], /* YI SYLLABLE SUOX */ + [0xa315, 0xa315], /* YI SYLLABLE SUO */ + [0xa316, 0xa316], /* YI SYLLABLE SUOP */ + [0xa317, 0xa317], /* YI SYLLABLE SOT */ + [0xa318, 0xa318], /* YI SYLLABLE SOX */ + [0xa319, 0xa319], /* YI SYLLABLE SO */ + [0xa31a, 0xa31a], /* YI SYLLABLE SOP */ + [0xa31b, 0xa31b], /* YI SYLLABLE SEX */ + [0xa31c, 0xa31c], /* YI SYLLABLE SE */ + [0xa31d, 0xa31d], /* YI SYLLABLE SEP */ + [0xa31e, 0xa31e], /* YI SYLLABLE SUT */ + [0xa31f, 0xa31f], /* YI SYLLABLE SUX */ + [0xa320, 0xa320], /* YI SYLLABLE SU */ + [0xa321, 0xa321], /* YI SYLLABLE SUP */ + [0xa322, 0xa322], /* YI SYLLABLE SURX */ + [0xa323, 0xa323], /* YI SYLLABLE SUR */ + [0xa324, 0xa324], /* YI SYLLABLE SYT */ + [0xa325, 0xa325], /* YI SYLLABLE SYX */ + [0xa326, 0xa326], /* YI SYLLABLE SY */ + [0xa327, 0xa327], /* YI SYLLABLE SYP */ + [0xa328, 0xa328], /* YI SYLLABLE SYRX */ + [0xa329, 0xa329], /* YI SYLLABLE SYR */ + [0xa32a, 0xa32a], /* YI SYLLABLE SSIT */ + [0xa32b, 0xa32b], /* YI SYLLABLE SSIX */ + [0xa32c, 0xa32c], /* YI SYLLABLE SSI */ + [0xa32d, 0xa32d], /* YI SYLLABLE SSIP */ + [0xa32e, 0xa32e], /* YI SYLLABLE SSIEX */ + [0xa32f, 0xa32f], /* YI SYLLABLE SSIE */ + [0xa330, 0xa330], /* YI SYLLABLE SSIEP */ + [0xa331, 0xa331], /* YI SYLLABLE SSAT */ + [0xa332, 0xa332], /* YI SYLLABLE SSAX */ + [0xa333, 0xa333], /* YI SYLLABLE SSA */ + [0xa334, 0xa334], /* YI SYLLABLE SSAP */ + [0xa335, 0xa335], /* YI SYLLABLE SSOT */ + [0xa336, 0xa336], /* YI SYLLABLE SSOX */ + [0xa337, 0xa337], /* YI SYLLABLE SSO */ + [0xa338, 0xa338], /* YI SYLLABLE SSOP */ + [0xa339, 0xa339], /* YI SYLLABLE SSEX */ + [0xa33a, 0xa33a], /* YI SYLLABLE SSE */ + [0xa33b, 0xa33b], /* YI SYLLABLE SSEP */ + [0xa33c, 0xa33c], /* YI SYLLABLE SSUT */ + [0xa33d, 0xa33d], /* YI SYLLABLE SSUX */ + [0xa33e, 0xa33e], /* YI SYLLABLE SSU */ + [0xa33f, 0xa33f], /* YI SYLLABLE SSUP */ + [0xa340, 0xa340], /* YI SYLLABLE SSYT */ + [0xa341, 0xa341], /* YI SYLLABLE SSYX */ + [0xa342, 0xa342], /* YI SYLLABLE SSY */ + [0xa343, 0xa343], /* YI SYLLABLE SSYP */ + [0xa344, 0xa344], /* YI SYLLABLE SSYRX */ + [0xa345, 0xa345], /* YI SYLLABLE SSYR */ + [0xa346, 0xa346], /* YI SYLLABLE ZHAT */ + [0xa347, 0xa347], /* YI SYLLABLE ZHAX */ + [0xa348, 0xa348], /* YI SYLLABLE ZHA */ + [0xa349, 0xa349], /* YI SYLLABLE ZHAP */ + [0xa34a, 0xa34a], /* YI SYLLABLE ZHUOX */ + [0xa34b, 0xa34b], /* YI SYLLABLE ZHUO */ + [0xa34c, 0xa34c], /* YI SYLLABLE ZHUOP */ + [0xa34d, 0xa34d], /* YI SYLLABLE ZHOT */ + [0xa34e, 0xa34e], /* YI SYLLABLE ZHOX */ + [0xa34f, 0xa34f], /* YI SYLLABLE ZHO */ + [0xa350, 0xa350], /* YI SYLLABLE ZHOP */ + [0xa351, 0xa351], /* YI SYLLABLE ZHET */ + [0xa352, 0xa352], /* YI SYLLABLE ZHEX */ + [0xa353, 0xa353], /* YI SYLLABLE ZHE */ + [0xa354, 0xa354], /* YI SYLLABLE ZHEP */ + [0xa355, 0xa355], /* YI SYLLABLE ZHUT */ + [0xa356, 0xa356], /* YI SYLLABLE ZHUX */ + [0xa357, 0xa357], /* YI SYLLABLE ZHU */ + [0xa358, 0xa358], /* YI SYLLABLE ZHUP */ + [0xa359, 0xa359], /* YI SYLLABLE ZHURX */ + [0xa35a, 0xa35a], /* YI SYLLABLE ZHUR */ + [0xa35b, 0xa35b], /* YI SYLLABLE ZHYT */ + [0xa35c, 0xa35c], /* YI SYLLABLE ZHYX */ + [0xa35d, 0xa35d], /* YI SYLLABLE ZHY */ + [0xa35e, 0xa35e], /* YI SYLLABLE ZHYP */ + [0xa35f, 0xa35f], /* YI SYLLABLE ZHYRX */ + [0xa360, 0xa360], /* YI SYLLABLE ZHYR */ + [0xa361, 0xa361], /* YI SYLLABLE CHAT */ + [0xa362, 0xa362], /* YI SYLLABLE CHAX */ + [0xa363, 0xa363], /* YI SYLLABLE CHA */ + [0xa364, 0xa364], /* YI SYLLABLE CHAP */ + [0xa365, 0xa365], /* YI SYLLABLE CHUOT */ + [0xa366, 0xa366], /* YI SYLLABLE CHUOX */ + [0xa367, 0xa367], /* YI SYLLABLE CHUO */ + [0xa368, 0xa368], /* YI SYLLABLE CHUOP */ + [0xa369, 0xa369], /* YI SYLLABLE CHOT */ + [0xa36a, 0xa36a], /* YI SYLLABLE CHOX */ + [0xa36b, 0xa36b], /* YI SYLLABLE CHO */ + [0xa36c, 0xa36c], /* YI SYLLABLE CHOP */ + [0xa36d, 0xa36d], /* YI SYLLABLE CHET */ + [0xa36e, 0xa36e], /* YI SYLLABLE CHEX */ + [0xa36f, 0xa36f], /* YI SYLLABLE CHE */ + [0xa370, 0xa370], /* YI SYLLABLE CHEP */ + [0xa371, 0xa371], /* YI SYLLABLE CHUX */ + [0xa372, 0xa372], /* YI SYLLABLE CHU */ + [0xa373, 0xa373], /* YI SYLLABLE CHUP */ + [0xa374, 0xa374], /* YI SYLLABLE CHURX */ + [0xa375, 0xa375], /* YI SYLLABLE CHUR */ + [0xa376, 0xa376], /* YI SYLLABLE CHYT */ + [0xa377, 0xa377], /* YI SYLLABLE CHYX */ + [0xa378, 0xa378], /* YI SYLLABLE CHY */ + [0xa379, 0xa379], /* YI SYLLABLE CHYP */ + [0xa37a, 0xa37a], /* YI SYLLABLE CHYRX */ + [0xa37b, 0xa37b], /* YI SYLLABLE CHYR */ + [0xa37c, 0xa37c], /* YI SYLLABLE RRAX */ + [0xa37d, 0xa37d], /* YI SYLLABLE RRA */ + [0xa37e, 0xa37e], /* YI SYLLABLE RRUOX */ + [0xa37f, 0xa37f], /* YI SYLLABLE RRUO */ + [0xa380, 0xa380], /* YI SYLLABLE RROT */ + [0xa381, 0xa381], /* YI SYLLABLE RROX */ + [0xa382, 0xa382], /* YI SYLLABLE RRO */ + [0xa383, 0xa383], /* YI SYLLABLE RROP */ + [0xa384, 0xa384], /* YI SYLLABLE RRET */ + [0xa385, 0xa385], /* YI SYLLABLE RREX */ + [0xa386, 0xa386], /* YI SYLLABLE RRE */ + [0xa387, 0xa387], /* YI SYLLABLE RREP */ + [0xa388, 0xa388], /* YI SYLLABLE RRUT */ + [0xa389, 0xa389], /* YI SYLLABLE RRUX */ + [0xa38a, 0xa38a], /* YI SYLLABLE RRU */ + [0xa38b, 0xa38b], /* YI SYLLABLE RRUP */ + [0xa38c, 0xa38c], /* YI SYLLABLE RRURX */ + [0xa38d, 0xa38d], /* YI SYLLABLE RRUR */ + [0xa38e, 0xa38e], /* YI SYLLABLE RRYT */ + [0xa38f, 0xa38f], /* YI SYLLABLE RRYX */ + [0xa390, 0xa390], /* YI SYLLABLE RRY */ + [0xa391, 0xa391], /* YI SYLLABLE RRYP */ + [0xa392, 0xa392], /* YI SYLLABLE RRYRX */ + [0xa393, 0xa393], /* YI SYLLABLE RRYR */ + [0xa394, 0xa394], /* YI SYLLABLE NRAT */ + [0xa395, 0xa395], /* YI SYLLABLE NRAX */ + [0xa396, 0xa396], /* YI SYLLABLE NRA */ + [0xa397, 0xa397], /* YI SYLLABLE NRAP */ + [0xa398, 0xa398], /* YI SYLLABLE NROX */ + [0xa399, 0xa399], /* YI SYLLABLE NRO */ + [0xa39a, 0xa39a], /* YI SYLLABLE NROP */ + [0xa39b, 0xa39b], /* YI SYLLABLE NRET */ + [0xa39c, 0xa39c], /* YI SYLLABLE NREX */ + [0xa39d, 0xa39d], /* YI SYLLABLE NRE */ + [0xa39e, 0xa39e], /* YI SYLLABLE NREP */ + [0xa39f, 0xa39f], /* YI SYLLABLE NRUT */ + [0xa3a0, 0xa3a0], /* YI SYLLABLE NRUX */ + [0xa3a1, 0xa3a1], /* YI SYLLABLE NRU */ + [0xa3a2, 0xa3a2], /* YI SYLLABLE NRUP */ + [0xa3a3, 0xa3a3], /* YI SYLLABLE NRURX */ + [0xa3a4, 0xa3a4], /* YI SYLLABLE NRUR */ + [0xa3a5, 0xa3a5], /* YI SYLLABLE NRYT */ + [0xa3a6, 0xa3a6], /* YI SYLLABLE NRYX */ + [0xa3a7, 0xa3a7], /* YI SYLLABLE NRY */ + [0xa3a8, 0xa3a8], /* YI SYLLABLE NRYP */ + [0xa3a9, 0xa3a9], /* YI SYLLABLE NRYRX */ + [0xa3aa, 0xa3aa], /* YI SYLLABLE NRYR */ + [0xa3ab, 0xa3ab], /* YI SYLLABLE SHAT */ + [0xa3ac, 0xa3ac], /* YI SYLLABLE SHAX */ + [0xa3ad, 0xa3ad], /* YI SYLLABLE SHA */ + [0xa3ae, 0xa3ae], /* YI SYLLABLE SHAP */ + [0xa3af, 0xa3af], /* YI SYLLABLE SHUOX */ + [0xa3b0, 0xa3b0], /* YI SYLLABLE SHUO */ + [0xa3b1, 0xa3b1], /* YI SYLLABLE SHUOP */ + [0xa3b2, 0xa3b2], /* YI SYLLABLE SHOT */ + [0xa3b3, 0xa3b3], /* YI SYLLABLE SHOX */ + [0xa3b4, 0xa3b4], /* YI SYLLABLE SHO */ + [0xa3b5, 0xa3b5], /* YI SYLLABLE SHOP */ + [0xa3b6, 0xa3b6], /* YI SYLLABLE SHET */ + [0xa3b7, 0xa3b7], /* YI SYLLABLE SHEX */ + [0xa3b8, 0xa3b8], /* YI SYLLABLE SHE */ + [0xa3b9, 0xa3b9], /* YI SYLLABLE SHEP */ + [0xa3ba, 0xa3ba], /* YI SYLLABLE SHUT */ + [0xa3bb, 0xa3bb], /* YI SYLLABLE SHUX */ + [0xa3bc, 0xa3bc], /* YI SYLLABLE SHU */ + [0xa3bd, 0xa3bd], /* YI SYLLABLE SHUP */ + [0xa3be, 0xa3be], /* YI SYLLABLE SHURX */ + [0xa3bf, 0xa3bf], /* YI SYLLABLE SHUR */ + [0xa3c0, 0xa3c0], /* YI SYLLABLE SHYT */ + [0xa3c1, 0xa3c1], /* YI SYLLABLE SHYX */ + [0xa3c2, 0xa3c2], /* YI SYLLABLE SHY */ + [0xa3c3, 0xa3c3], /* YI SYLLABLE SHYP */ + [0xa3c4, 0xa3c4], /* YI SYLLABLE SHYRX */ + [0xa3c5, 0xa3c5], /* YI SYLLABLE SHYR */ + [0xa3c6, 0xa3c6], /* YI SYLLABLE RAT */ + [0xa3c7, 0xa3c7], /* YI SYLLABLE RAX */ + [0xa3c8, 0xa3c8], /* YI SYLLABLE RA */ + [0xa3c9, 0xa3c9], /* YI SYLLABLE RAP */ + [0xa3ca, 0xa3ca], /* YI SYLLABLE RUOX */ + [0xa3cb, 0xa3cb], /* YI SYLLABLE RUO */ + [0xa3cc, 0xa3cc], /* YI SYLLABLE RUOP */ + [0xa3cd, 0xa3cd], /* YI SYLLABLE ROT */ + [0xa3ce, 0xa3ce], /* YI SYLLABLE ROX */ + [0xa3cf, 0xa3cf], /* YI SYLLABLE RO */ + [0xa3d0, 0xa3d0], /* YI SYLLABLE ROP */ + [0xa3d1, 0xa3d1], /* YI SYLLABLE REX */ + [0xa3d2, 0xa3d2], /* YI SYLLABLE RE */ + [0xa3d3, 0xa3d3], /* YI SYLLABLE REP */ + [0xa3d4, 0xa3d4], /* YI SYLLABLE RUT */ + [0xa3d5, 0xa3d5], /* YI SYLLABLE RUX */ + [0xa3d6, 0xa3d6], /* YI SYLLABLE RU */ + [0xa3d7, 0xa3d7], /* YI SYLLABLE RUP */ + [0xa3d8, 0xa3d8], /* YI SYLLABLE RURX */ + [0xa3d9, 0xa3d9], /* YI SYLLABLE RUR */ + [0xa3da, 0xa3da], /* YI SYLLABLE RYT */ + [0xa3db, 0xa3db], /* YI SYLLABLE RYX */ + [0xa3dc, 0xa3dc], /* YI SYLLABLE RY */ + [0xa3dd, 0xa3dd], /* YI SYLLABLE RYP */ + [0xa3de, 0xa3de], /* YI SYLLABLE RYRX */ + [0xa3df, 0xa3df], /* YI SYLLABLE RYR */ + [0xa3e0, 0xa3e0], /* YI SYLLABLE JIT */ + [0xa3e1, 0xa3e1], /* YI SYLLABLE JIX */ + [0xa3e2, 0xa3e2], /* YI SYLLABLE JI */ + [0xa3e3, 0xa3e3], /* YI SYLLABLE JIP */ + [0xa3e4, 0xa3e4], /* YI SYLLABLE JIET */ + [0xa3e5, 0xa3e5], /* YI SYLLABLE JIEX */ + [0xa3e6, 0xa3e6], /* YI SYLLABLE JIE */ + [0xa3e7, 0xa3e7], /* YI SYLLABLE JIEP */ + [0xa3e8, 0xa3e8], /* YI SYLLABLE JUOT */ + [0xa3e9, 0xa3e9], /* YI SYLLABLE JUOX */ + [0xa3ea, 0xa3ea], /* YI SYLLABLE JUO */ + [0xa3eb, 0xa3eb], /* YI SYLLABLE JUOP */ + [0xa3ec, 0xa3ec], /* YI SYLLABLE JOT */ + [0xa3ed, 0xa3ed], /* YI SYLLABLE JOX */ + [0xa3ee, 0xa3ee], /* YI SYLLABLE JO */ + [0xa3ef, 0xa3ef], /* YI SYLLABLE JOP */ + [0xa3f0, 0xa3f0], /* YI SYLLABLE JUT */ + [0xa3f1, 0xa3f1], /* YI SYLLABLE JUX */ + [0xa3f2, 0xa3f2], /* YI SYLLABLE JU */ + [0xa3f3, 0xa3f3], /* YI SYLLABLE JUP */ + [0xa3f4, 0xa3f4], /* YI SYLLABLE JURX */ + [0xa3f5, 0xa3f5], /* YI SYLLABLE JUR */ + [0xa3f6, 0xa3f6], /* YI SYLLABLE JYT */ + [0xa3f7, 0xa3f7], /* YI SYLLABLE JYX */ + [0xa3f8, 0xa3f8], /* YI SYLLABLE JY */ + [0xa3f9, 0xa3f9], /* YI SYLLABLE JYP */ + [0xa3fa, 0xa3fa], /* YI SYLLABLE JYRX */ + [0xa3fb, 0xa3fb], /* YI SYLLABLE JYR */ + [0xa3fc, 0xa3fc], /* YI SYLLABLE QIT */ + [0xa3fd, 0xa3fd], /* YI SYLLABLE QIX */ + [0xa3fe, 0xa3fe], /* YI SYLLABLE QI */ + [0xa3ff, 0xa3ff], /* YI SYLLABLE QIP */ + [0xa400, 0xa400], /* YI SYLLABLE QIET */ + [0xa401, 0xa401], /* YI SYLLABLE QIEX */ + [0xa402, 0xa402], /* YI SYLLABLE QIE */ + [0xa403, 0xa403], /* YI SYLLABLE QIEP */ + [0xa404, 0xa404], /* YI SYLLABLE QUOT */ + [0xa405, 0xa405], /* YI SYLLABLE QUOX */ + [0xa406, 0xa406], /* YI SYLLABLE QUO */ + [0xa407, 0xa407], /* YI SYLLABLE QUOP */ + [0xa408, 0xa408], /* YI SYLLABLE QOT */ + [0xa409, 0xa409], /* YI SYLLABLE QOX */ + [0xa40a, 0xa40a], /* YI SYLLABLE QO */ + [0xa40b, 0xa40b], /* YI SYLLABLE QOP */ + [0xa40c, 0xa40c], /* YI SYLLABLE QUT */ + [0xa40d, 0xa40d], /* YI SYLLABLE QUX */ + [0xa40e, 0xa40e], /* YI SYLLABLE QU */ + [0xa40f, 0xa40f], /* YI SYLLABLE QUP */ + [0xa410, 0xa410], /* YI SYLLABLE QURX */ + [0xa411, 0xa411], /* YI SYLLABLE QUR */ + [0xa412, 0xa412], /* YI SYLLABLE QYT */ + [0xa413, 0xa413], /* YI SYLLABLE QYX */ + [0xa414, 0xa414], /* YI SYLLABLE QY */ + [0xa415, 0xa415], /* YI SYLLABLE QYP */ + [0xa416, 0xa416], /* YI SYLLABLE QYRX */ + [0xa417, 0xa417], /* YI SYLLABLE QYR */ + [0xa418, 0xa418], /* YI SYLLABLE JJIT */ + [0xa419, 0xa419], /* YI SYLLABLE JJIX */ + [0xa41a, 0xa41a], /* YI SYLLABLE JJI */ + [0xa41b, 0xa41b], /* YI SYLLABLE JJIP */ + [0xa41c, 0xa41c], /* YI SYLLABLE JJIET */ + [0xa41d, 0xa41d], /* YI SYLLABLE JJIEX */ + [0xa41e, 0xa41e], /* YI SYLLABLE JJIE */ + [0xa41f, 0xa41f], /* YI SYLLABLE JJIEP */ + [0xa420, 0xa420], /* YI SYLLABLE JJUOX */ + [0xa421, 0xa421], /* YI SYLLABLE JJUO */ + [0xa422, 0xa422], /* YI SYLLABLE JJUOP */ + [0xa423, 0xa423], /* YI SYLLABLE JJOT */ + [0xa424, 0xa424], /* YI SYLLABLE JJOX */ + [0xa425, 0xa425], /* YI SYLLABLE JJO */ + [0xa426, 0xa426], /* YI SYLLABLE JJOP */ + [0xa427, 0xa427], /* YI SYLLABLE JJUT */ + [0xa428, 0xa428], /* YI SYLLABLE JJUX */ + [0xa429, 0xa429], /* YI SYLLABLE JJU */ + [0xa42a, 0xa42a], /* YI SYLLABLE JJUP */ + [0xa42b, 0xa42b], /* YI SYLLABLE JJURX */ + [0xa42c, 0xa42c], /* YI SYLLABLE JJUR */ + [0xa42d, 0xa42d], /* YI SYLLABLE JJYT */ + [0xa42e, 0xa42e], /* YI SYLLABLE JJYX */ + [0xa42f, 0xa42f], /* YI SYLLABLE JJY */ + [0xa430, 0xa430], /* YI SYLLABLE JJYP */ + [0xa431, 0xa431], /* YI SYLLABLE NJIT */ + [0xa432, 0xa432], /* YI SYLLABLE NJIX */ + [0xa433, 0xa433], /* YI SYLLABLE NJI */ + [0xa434, 0xa434], /* YI SYLLABLE NJIP */ + [0xa435, 0xa435], /* YI SYLLABLE NJIET */ + [0xa436, 0xa436], /* YI SYLLABLE NJIEX */ + [0xa437, 0xa437], /* YI SYLLABLE NJIE */ + [0xa438, 0xa438], /* YI SYLLABLE NJIEP */ + [0xa439, 0xa439], /* YI SYLLABLE NJUOX */ + [0xa43a, 0xa43a], /* YI SYLLABLE NJUO */ + [0xa43b, 0xa43b], /* YI SYLLABLE NJOT */ + [0xa43c, 0xa43c], /* YI SYLLABLE NJOX */ + [0xa43d, 0xa43d], /* YI SYLLABLE NJO */ + [0xa43e, 0xa43e], /* YI SYLLABLE NJOP */ + [0xa43f, 0xa43f], /* YI SYLLABLE NJUX */ + [0xa440, 0xa440], /* YI SYLLABLE NJU */ + [0xa441, 0xa441], /* YI SYLLABLE NJUP */ + [0xa442, 0xa442], /* YI SYLLABLE NJURX */ + [0xa443, 0xa443], /* YI SYLLABLE NJUR */ + [0xa444, 0xa444], /* YI SYLLABLE NJYT */ + [0xa445, 0xa445], /* YI SYLLABLE NJYX */ + [0xa446, 0xa446], /* YI SYLLABLE NJY */ + [0xa447, 0xa447], /* YI SYLLABLE NJYP */ + [0xa448, 0xa448], /* YI SYLLABLE NJYRX */ + [0xa449, 0xa449], /* YI SYLLABLE NJYR */ + [0xa44a, 0xa44a], /* YI SYLLABLE NYIT */ + [0xa44b, 0xa44b], /* YI SYLLABLE NYIX */ + [0xa44c, 0xa44c], /* YI SYLLABLE NYI */ + [0xa44d, 0xa44d], /* YI SYLLABLE NYIP */ + [0xa44e, 0xa44e], /* YI SYLLABLE NYIET */ + [0xa44f, 0xa44f], /* YI SYLLABLE NYIEX */ + [0xa450, 0xa450], /* YI SYLLABLE NYIE */ + [0xa451, 0xa451], /* YI SYLLABLE NYIEP */ + [0xa452, 0xa452], /* YI SYLLABLE NYUOX */ + [0xa453, 0xa453], /* YI SYLLABLE NYUO */ + [0xa454, 0xa454], /* YI SYLLABLE NYUOP */ + [0xa455, 0xa455], /* YI SYLLABLE NYOT */ + [0xa456, 0xa456], /* YI SYLLABLE NYOX */ + [0xa457, 0xa457], /* YI SYLLABLE NYO */ + [0xa458, 0xa458], /* YI SYLLABLE NYOP */ + [0xa459, 0xa459], /* YI SYLLABLE NYUT */ + [0xa45a, 0xa45a], /* YI SYLLABLE NYUX */ + [0xa45b, 0xa45b], /* YI SYLLABLE NYU */ + [0xa45c, 0xa45c], /* YI SYLLABLE NYUP */ + [0xa45d, 0xa45d], /* YI SYLLABLE XIT */ + [0xa45e, 0xa45e], /* YI SYLLABLE XIX */ + [0xa45f, 0xa45f], /* YI SYLLABLE XI */ + [0xa460, 0xa460], /* YI SYLLABLE XIP */ + [0xa461, 0xa461], /* YI SYLLABLE XIET */ + [0xa462, 0xa462], /* YI SYLLABLE XIEX */ + [0xa463, 0xa463], /* YI SYLLABLE XIE */ + [0xa464, 0xa464], /* YI SYLLABLE XIEP */ + [0xa465, 0xa465], /* YI SYLLABLE XUOX */ + [0xa466, 0xa466], /* YI SYLLABLE XUO */ + [0xa467, 0xa467], /* YI SYLLABLE XOT */ + [0xa468, 0xa468], /* YI SYLLABLE XOX */ + [0xa469, 0xa469], /* YI SYLLABLE XO */ + [0xa46a, 0xa46a], /* YI SYLLABLE XOP */ + [0xa46b, 0xa46b], /* YI SYLLABLE XYT */ + [0xa46c, 0xa46c], /* YI SYLLABLE XYX */ + [0xa46d, 0xa46d], /* YI SYLLABLE XY */ + [0xa46e, 0xa46e], /* YI SYLLABLE XYP */ + [0xa46f, 0xa46f], /* YI SYLLABLE XYRX */ + [0xa470, 0xa470], /* YI SYLLABLE XYR */ + [0xa471, 0xa471], /* YI SYLLABLE YIT */ + [0xa472, 0xa472], /* YI SYLLABLE YIX */ + [0xa473, 0xa473], /* YI SYLLABLE YI */ + [0xa474, 0xa474], /* YI SYLLABLE YIP */ + [0xa475, 0xa475], /* YI SYLLABLE YIET */ + [0xa476, 0xa476], /* YI SYLLABLE YIEX */ + [0xa477, 0xa477], /* YI SYLLABLE YIE */ + [0xa478, 0xa478], /* YI SYLLABLE YIEP */ + [0xa479, 0xa479], /* YI SYLLABLE YUOT */ + [0xa47a, 0xa47a], /* YI SYLLABLE YUOX */ + [0xa47b, 0xa47b], /* YI SYLLABLE YUO */ + [0xa47c, 0xa47c], /* YI SYLLABLE YUOP */ + [0xa47d, 0xa47d], /* YI SYLLABLE YOT */ + [0xa47e, 0xa47e], /* YI SYLLABLE YOX */ + [0xa47f, 0xa47f], /* YI SYLLABLE YO */ + [0xa480, 0xa480], /* YI SYLLABLE YOP */ + [0xa481, 0xa481], /* YI SYLLABLE YUT */ + [0xa482, 0xa482], /* YI SYLLABLE YUX */ + [0xa483, 0xa483], /* YI SYLLABLE YU */ + [0xa484, 0xa484], /* YI SYLLABLE YUP */ + [0xa485, 0xa485], /* YI SYLLABLE YURX */ + [0xa486, 0xa486], /* YI SYLLABLE YUR */ + [0xa487, 0xa487], /* YI SYLLABLE YYT */ + [0xa488, 0xa488], /* YI SYLLABLE YYX */ + [0xa489, 0xa489], /* YI SYLLABLE YY */ + [0xa48a, 0xa48a], /* YI SYLLABLE YYP */ + [0xa48b, 0xa48b], /* YI SYLLABLE YYRX */ + [0xa48c, 0xa48c], /* YI SYLLABLE YYR */ + [0xa48d, 0xa48d], + [0xa48e, 0xa48e], + [0xa48f, 0xa48f], + [0xa490, 0xa490], /* YI RADICAL QOT */ + [0xa491, 0xa491], /* YI RADICAL LI */ + [0xa492, 0xa492], /* YI RADICAL KIT */ + [0xa493, 0xa493], /* YI RADICAL NYIP */ + [0xa494, 0xa494], /* YI RADICAL CYP */ + [0xa495, 0xa495], /* YI RADICAL SSI */ + [0xa496, 0xa496], /* YI RADICAL GGOP */ + [0xa497, 0xa497], /* YI RADICAL GEP */ + [0xa498, 0xa498], /* YI RADICAL MI */ + [0xa499, 0xa499], /* YI RADICAL HXIT */ + [0xa49a, 0xa49a], /* YI RADICAL LYR */ + [0xa49b, 0xa49b], /* YI RADICAL BBUT */ + [0xa49c, 0xa49c], /* YI RADICAL MOP */ + [0xa49d, 0xa49d], /* YI RADICAL YO */ + [0xa49e, 0xa49e], /* YI RADICAL PUT */ + [0xa49f, 0xa49f], /* YI RADICAL HXUO */ + [0xa4a0, 0xa4a0], /* YI RADICAL TAT */ + [0xa4a1, 0xa4a1], /* YI RADICAL GA */ + [0xa4a2, 0xa4a2], /* YI RADICAL ZUP */ + [0xa4a3, 0xa4a3], /* YI RADICAL CYT */ + [0xa4a4, 0xa4a4], /* YI RADICAL DDUR */ + [0xa4a5, 0xa4a5], /* YI RADICAL BUR */ + [0xa4a6, 0xa4a6], /* YI RADICAL GGUO */ + [0xa4a7, 0xa4a7], /* YI RADICAL NYOP */ + [0xa4a8, 0xa4a8], /* YI RADICAL TU */ + [0xa4a9, 0xa4a9], /* YI RADICAL OP */ + [0xa4aa, 0xa4aa], /* YI RADICAL JJUT */ + [0xa4ab, 0xa4ab], /* YI RADICAL ZOT */ + [0xa4ac, 0xa4ac], /* YI RADICAL PYT */ + [0xa4ad, 0xa4ad], /* YI RADICAL HMO */ + [0xa4ae, 0xa4ae], /* YI RADICAL YIT */ + [0xa4af, 0xa4af], /* YI RADICAL VUR */ + [0xa4b0, 0xa4b0], /* YI RADICAL SHY */ + [0xa4b1, 0xa4b1], /* YI RADICAL VEP */ + [0xa4b2, 0xa4b2], /* YI RADICAL ZA */ + [0xa4b3, 0xa4b3], /* YI RADICAL JO */ + [0xa4b4, 0xa4b4], /* YI RADICAL NZUP */ + [0xa4b5, 0xa4b5], /* YI RADICAL JJY */ + [0xa4b6, 0xa4b6], /* YI RADICAL GOT */ + [0xa4b7, 0xa4b7], /* YI RADICAL JJIE */ + [0xa4b8, 0xa4b8], /* YI RADICAL WO */ + [0xa4b9, 0xa4b9], /* YI RADICAL DU */ + [0xa4ba, 0xa4ba], /* YI RADICAL SHUR */ + [0xa4bb, 0xa4bb], /* YI RADICAL LIE */ + [0xa4bc, 0xa4bc], /* YI RADICAL CY */ + [0xa4bd, 0xa4bd], /* YI RADICAL CUOP */ + [0xa4be, 0xa4be], /* YI RADICAL CIP */ + [0xa4bf, 0xa4bf], /* YI RADICAL HXOP */ + [0xa4c0, 0xa4c0], /* YI RADICAL SHAT */ + [0xa4c1, 0xa4c1], /* YI RADICAL ZUR */ + [0xa4c2, 0xa4c2], /* YI RADICAL SHOP */ + [0xa4c3, 0xa4c3], /* YI RADICAL CHE */ + [0xa4c4, 0xa4c4], /* YI RADICAL ZZIET */ + [0xa4c5, 0xa4c5], /* YI RADICAL NBIE */ + [0xa4c6, 0xa4c6], /* YI RADICAL KE */ + [0xa4c7, 0xa4c7], + [0xa4c8, 0xa4c8], + [0xa4c9, 0xa4c9], + [0xa4ca, 0xa4ca], + [0xa4cb, 0xa4cb], + [0xa4cc, 0xa4cc], + [0xa4cd, 0xa4cd], + [0xa4ce, 0xa4ce], + [0xa4cf, 0xa4cf], + [0xa4d0, 0xa4d0], /* LISU LETTER BA */ + [0xa4d1, 0xa4d1], /* LISU LETTER PA */ + [0xa4d2, 0xa4d2], /* LISU LETTER PHA */ + [0xa4d3, 0xa4d3], /* LISU LETTER DA */ + [0xa4d4, 0xa4d4], /* LISU LETTER TA */ + [0xa4d5, 0xa4d5], /* LISU LETTER THA */ + [0xa4d6, 0xa4d6], /* LISU LETTER GA */ + [0xa4d7, 0xa4d7], /* LISU LETTER KA */ + [0xa4d8, 0xa4d8], /* LISU LETTER KHA */ + [0xa4d9, 0xa4d9], /* LISU LETTER JA */ + [0xa4da, 0xa4da], /* LISU LETTER CA */ + [0xa4db, 0xa4db], /* LISU LETTER CHA */ + [0xa4dc, 0xa4dc], /* LISU LETTER DZA */ + [0xa4dd, 0xa4dd], /* LISU LETTER TSA */ + [0xa4de, 0xa4de], /* LISU LETTER TSHA */ + [0xa4df, 0xa4df], /* LISU LETTER MA */ + [0xa4e0, 0xa4e0], /* LISU LETTER NA */ + [0xa4e1, 0xa4e1], /* LISU LETTER LA */ + [0xa4e2, 0xa4e2], /* LISU LETTER SA */ + [0xa4e3, 0xa4e3], /* LISU LETTER ZHA */ + [0xa4e4, 0xa4e4], /* LISU LETTER ZA */ + [0xa4e5, 0xa4e5], /* LISU LETTER NGA */ + [0xa4e6, 0xa4e6], /* LISU LETTER HA */ + [0xa4e7, 0xa4e7], /* LISU LETTER XA */ + [0xa4e8, 0xa4e8], /* LISU LETTER HHA */ + [0xa4e9, 0xa4e9], /* LISU LETTER FA */ + [0xa4ea, 0xa4ea], /* LISU LETTER WA */ + [0xa4eb, 0xa4eb], /* LISU LETTER SHA */ + [0xa4ec, 0xa4ec], /* LISU LETTER YA */ + [0xa4ed, 0xa4ed], /* LISU LETTER GHA */ + [0xa4ee, 0xa4ee], /* LISU LETTER A */ + [0xa4ef, 0xa4ef], /* LISU LETTER AE */ + [0xa4f0, 0xa4f0], /* LISU LETTER E */ + [0xa4f1, 0xa4f1], /* LISU LETTER EU */ + [0xa4f2, 0xa4f2], /* LISU LETTER I */ + [0xa4f3, 0xa4f3], /* LISU LETTER O */ + [0xa4f4, 0xa4f4], /* LISU LETTER U */ + [0xa4f5, 0xa4f5], /* LISU LETTER UE */ + [0xa4f6, 0xa4f6], /* LISU LETTER UH */ + [0xa4f7, 0xa4f7], /* LISU LETTER OE */ + [0xa4f8, 0xa4f8], /* LISU LETTER TONE MYA TI */ + [0xa4f9, 0xa4f9], /* LISU LETTER TONE NA PO */ + [0xa4fa, 0xa4fa], /* LISU LETTER TONE MYA CYA */ + [0xa4fb, 0xa4fb], /* LISU LETTER TONE MYA BO */ + [0xa4fc, 0xa4fc], /* LISU LETTER TONE MYA NA */ + [0xa4fd, 0xa4fd], /* LISU LETTER TONE MYA JEU */ + [0xa4fe, 0xa4fe], /* LISU PUNCTUATION COMMA */ + [0xa4ff, 0xa4ff], /* LISU PUNCTUATION FULL STOP */ + [0xa500, 0xa500], /* VAI SYLLABLE EE */ + [0xa501, 0xa501], /* VAI SYLLABLE EEN */ + [0xa502, 0xa502], /* VAI SYLLABLE HEE */ + [0xa503, 0xa503], /* VAI SYLLABLE WEE */ + [0xa504, 0xa504], /* VAI SYLLABLE WEEN */ + [0xa505, 0xa505], /* VAI SYLLABLE PEE */ + [0xa506, 0xa506], /* VAI SYLLABLE BHEE */ + [0xa507, 0xa507], /* VAI SYLLABLE BEE */ + [0xa508, 0xa508], /* VAI SYLLABLE MBEE */ + [0xa509, 0xa509], /* VAI SYLLABLE KPEE */ + [0xa50a, 0xa50a], /* VAI SYLLABLE MGBEE */ + [0xa50b, 0xa50b], /* VAI SYLLABLE GBEE */ + [0xa50c, 0xa50c], /* VAI SYLLABLE FEE */ + [0xa50d, 0xa50d], /* VAI SYLLABLE VEE */ + [0xa50e, 0xa50e], /* VAI SYLLABLE TEE */ + [0xa50f, 0xa50f], /* VAI SYLLABLE THEE */ + [0xa510, 0xa510], /* VAI SYLLABLE DHEE */ + [0xa511, 0xa511], /* VAI SYLLABLE DHHEE */ + [0xa512, 0xa512], /* VAI SYLLABLE LEE */ + [0xa513, 0xa513], /* VAI SYLLABLE REE */ + [0xa514, 0xa514], /* VAI SYLLABLE DEE */ + [0xa515, 0xa515], /* VAI SYLLABLE NDEE */ + [0xa516, 0xa516], /* VAI SYLLABLE SEE */ + [0xa517, 0xa517], /* VAI SYLLABLE SHEE */ + [0xa518, 0xa518], /* VAI SYLLABLE ZEE */ + [0xa519, 0xa519], /* VAI SYLLABLE ZHEE */ + [0xa51a, 0xa51a], /* VAI SYLLABLE CEE */ + [0xa51b, 0xa51b], /* VAI SYLLABLE JEE */ + [0xa51c, 0xa51c], /* VAI SYLLABLE NJEE */ + [0xa51d, 0xa51d], /* VAI SYLLABLE YEE */ + [0xa51e, 0xa51e], /* VAI SYLLABLE KEE */ + [0xa51f, 0xa51f], /* VAI SYLLABLE NGGEE */ + [0xa520, 0xa520], /* VAI SYLLABLE GEE */ + [0xa521, 0xa521], /* VAI SYLLABLE MEE */ + [0xa522, 0xa522], /* VAI SYLLABLE NEE */ + [0xa523, 0xa523], /* VAI SYLLABLE NYEE */ + [0xa524, 0xa524], /* VAI SYLLABLE I */ + [0xa525, 0xa525], /* VAI SYLLABLE IN */ + [0xa526, 0xa526], /* VAI SYLLABLE HI */ + [0xa527, 0xa527], /* VAI SYLLABLE HIN */ + [0xa528, 0xa528], /* VAI SYLLABLE WI */ + [0xa529, 0xa529], /* VAI SYLLABLE WIN */ + [0xa52a, 0xa52a], /* VAI SYLLABLE PI */ + [0xa52b, 0xa52b], /* VAI SYLLABLE BHI */ + [0xa52c, 0xa52c], /* VAI SYLLABLE BI */ + [0xa52d, 0xa52d], /* VAI SYLLABLE MBI */ + [0xa52e, 0xa52e], /* VAI SYLLABLE KPI */ + [0xa52f, 0xa52f], /* VAI SYLLABLE MGBI */ + [0xa530, 0xa530], /* VAI SYLLABLE GBI */ + [0xa531, 0xa531], /* VAI SYLLABLE FI */ + [0xa532, 0xa532], /* VAI SYLLABLE VI */ + [0xa533, 0xa533], /* VAI SYLLABLE TI */ + [0xa534, 0xa534], /* VAI SYLLABLE THI */ + [0xa535, 0xa535], /* VAI SYLLABLE DHI */ + [0xa536, 0xa536], /* VAI SYLLABLE DHHI */ + [0xa537, 0xa537], /* VAI SYLLABLE LI */ + [0xa538, 0xa538], /* VAI SYLLABLE RI */ + [0xa539, 0xa539], /* VAI SYLLABLE DI */ + [0xa53a, 0xa53a], /* VAI SYLLABLE NDI */ + [0xa53b, 0xa53b], /* VAI SYLLABLE SI */ + [0xa53c, 0xa53c], /* VAI SYLLABLE SHI */ + [0xa53d, 0xa53d], /* VAI SYLLABLE ZI */ + [0xa53e, 0xa53e], /* VAI SYLLABLE ZHI */ + [0xa53f, 0xa53f], /* VAI SYLLABLE CI */ + [0xa540, 0xa540], /* VAI SYLLABLE JI */ + [0xa541, 0xa541], /* VAI SYLLABLE NJI */ + [0xa542, 0xa542], /* VAI SYLLABLE YI */ + [0xa543, 0xa543], /* VAI SYLLABLE KI */ + [0xa544, 0xa544], /* VAI SYLLABLE NGGI */ + [0xa545, 0xa545], /* VAI SYLLABLE GI */ + [0xa546, 0xa546], /* VAI SYLLABLE MI */ + [0xa547, 0xa547], /* VAI SYLLABLE NI */ + [0xa548, 0xa548], /* VAI SYLLABLE NYI */ + [0xa549, 0xa549], /* VAI SYLLABLE A */ + [0xa54a, 0xa54a], /* VAI SYLLABLE AN */ + [0xa54b, 0xa54b], /* VAI SYLLABLE NGAN */ + [0xa54c, 0xa54c], /* VAI SYLLABLE HA */ + [0xa54d, 0xa54d], /* VAI SYLLABLE HAN */ + [0xa54e, 0xa54e], /* VAI SYLLABLE WA */ + [0xa54f, 0xa54f], /* VAI SYLLABLE WAN */ + [0xa550, 0xa550], /* VAI SYLLABLE PA */ + [0xa551, 0xa551], /* VAI SYLLABLE BHA */ + [0xa552, 0xa552], /* VAI SYLLABLE BA */ + [0xa553, 0xa553], /* VAI SYLLABLE MBA */ + [0xa554, 0xa554], /* VAI SYLLABLE KPA */ + [0xa555, 0xa555], /* VAI SYLLABLE KPAN */ + [0xa556, 0xa556], /* VAI SYLLABLE MGBA */ + [0xa557, 0xa557], /* VAI SYLLABLE GBA */ + [0xa558, 0xa558], /* VAI SYLLABLE FA */ + [0xa559, 0xa559], /* VAI SYLLABLE VA */ + [0xa55a, 0xa55a], /* VAI SYLLABLE TA */ + [0xa55b, 0xa55b], /* VAI SYLLABLE THA */ + [0xa55c, 0xa55c], /* VAI SYLLABLE DHA */ + [0xa55d, 0xa55d], /* VAI SYLLABLE DHHA */ + [0xa55e, 0xa55e], /* VAI SYLLABLE LA */ + [0xa55f, 0xa55f], /* VAI SYLLABLE RA */ + [0xa560, 0xa560], /* VAI SYLLABLE DA */ + [0xa561, 0xa561], /* VAI SYLLABLE NDA */ + [0xa562, 0xa562], /* VAI SYLLABLE SA */ + [0xa563, 0xa563], /* VAI SYLLABLE SHA */ + [0xa564, 0xa564], /* VAI SYLLABLE ZA */ + [0xa565, 0xa565], /* VAI SYLLABLE ZHA */ + [0xa566, 0xa566], /* VAI SYLLABLE CA */ + [0xa567, 0xa567], /* VAI SYLLABLE JA */ + [0xa568, 0xa568], /* VAI SYLLABLE NJA */ + [0xa569, 0xa569], /* VAI SYLLABLE YA */ + [0xa56a, 0xa56a], /* VAI SYLLABLE KA */ + [0xa56b, 0xa56b], /* VAI SYLLABLE KAN */ + [0xa56c, 0xa56c], /* VAI SYLLABLE NGGA */ + [0xa56d, 0xa56d], /* VAI SYLLABLE GA */ + [0xa56e, 0xa56e], /* VAI SYLLABLE MA */ + [0xa56f, 0xa56f], /* VAI SYLLABLE NA */ + [0xa570, 0xa570], /* VAI SYLLABLE NYA */ + [0xa571, 0xa571], /* VAI SYLLABLE OO */ + [0xa572, 0xa572], /* VAI SYLLABLE OON */ + [0xa573, 0xa573], /* VAI SYLLABLE HOO */ + [0xa574, 0xa574], /* VAI SYLLABLE WOO */ + [0xa575, 0xa575], /* VAI SYLLABLE WOON */ + [0xa576, 0xa576], /* VAI SYLLABLE POO */ + [0xa577, 0xa577], /* VAI SYLLABLE BHOO */ + [0xa578, 0xa578], /* VAI SYLLABLE BOO */ + [0xa579, 0xa579], /* VAI SYLLABLE MBOO */ + [0xa57a, 0xa57a], /* VAI SYLLABLE KPOO */ + [0xa57b, 0xa57b], /* VAI SYLLABLE MGBOO */ + [0xa57c, 0xa57c], /* VAI SYLLABLE GBOO */ + [0xa57d, 0xa57d], /* VAI SYLLABLE FOO */ + [0xa57e, 0xa57e], /* VAI SYLLABLE VOO */ + [0xa57f, 0xa57f], /* VAI SYLLABLE TOO */ + [0xa580, 0xa580], /* VAI SYLLABLE THOO */ + [0xa581, 0xa581], /* VAI SYLLABLE DHOO */ + [0xa582, 0xa582], /* VAI SYLLABLE DHHOO */ + [0xa583, 0xa583], /* VAI SYLLABLE LOO */ + [0xa584, 0xa584], /* VAI SYLLABLE ROO */ + [0xa585, 0xa585], /* VAI SYLLABLE DOO */ + [0xa586, 0xa586], /* VAI SYLLABLE NDOO */ + [0xa587, 0xa587], /* VAI SYLLABLE SOO */ + [0xa588, 0xa588], /* VAI SYLLABLE SHOO */ + [0xa589, 0xa589], /* VAI SYLLABLE ZOO */ + [0xa58a, 0xa58a], /* VAI SYLLABLE ZHOO */ + [0xa58b, 0xa58b], /* VAI SYLLABLE COO */ + [0xa58c, 0xa58c], /* VAI SYLLABLE JOO */ + [0xa58d, 0xa58d], /* VAI SYLLABLE NJOO */ + [0xa58e, 0xa58e], /* VAI SYLLABLE YOO */ + [0xa58f, 0xa58f], /* VAI SYLLABLE KOO */ + [0xa590, 0xa590], /* VAI SYLLABLE NGGOO */ + [0xa591, 0xa591], /* VAI SYLLABLE GOO */ + [0xa592, 0xa592], /* VAI SYLLABLE MOO */ + [0xa593, 0xa593], /* VAI SYLLABLE NOO */ + [0xa594, 0xa594], /* VAI SYLLABLE NYOO */ + [0xa595, 0xa595], /* VAI SYLLABLE U */ + [0xa596, 0xa596], /* VAI SYLLABLE UN */ + [0xa597, 0xa597], /* VAI SYLLABLE HU */ + [0xa598, 0xa598], /* VAI SYLLABLE HUN */ + [0xa599, 0xa599], /* VAI SYLLABLE WU */ + [0xa59a, 0xa59a], /* VAI SYLLABLE WUN */ + [0xa59b, 0xa59b], /* VAI SYLLABLE PU */ + [0xa59c, 0xa59c], /* VAI SYLLABLE BHU */ + [0xa59d, 0xa59d], /* VAI SYLLABLE BU */ + [0xa59e, 0xa59e], /* VAI SYLLABLE MBU */ + [0xa59f, 0xa59f], /* VAI SYLLABLE KPU */ + [0xa5a0, 0xa5a0], /* VAI SYLLABLE MGBU */ + [0xa5a1, 0xa5a1], /* VAI SYLLABLE GBU */ + [0xa5a2, 0xa5a2], /* VAI SYLLABLE FU */ + [0xa5a3, 0xa5a3], /* VAI SYLLABLE VU */ + [0xa5a4, 0xa5a4], /* VAI SYLLABLE TU */ + [0xa5a5, 0xa5a5], /* VAI SYLLABLE THU */ + [0xa5a6, 0xa5a6], /* VAI SYLLABLE DHU */ + [0xa5a7, 0xa5a7], /* VAI SYLLABLE DHHU */ + [0xa5a8, 0xa5a8], /* VAI SYLLABLE LU */ + [0xa5a9, 0xa5a9], /* VAI SYLLABLE RU */ + [0xa5aa, 0xa5aa], /* VAI SYLLABLE DU */ + [0xa5ab, 0xa5ab], /* VAI SYLLABLE NDU */ + [0xa5ac, 0xa5ac], /* VAI SYLLABLE SU */ + [0xa5ad, 0xa5ad], /* VAI SYLLABLE SHU */ + [0xa5ae, 0xa5ae], /* VAI SYLLABLE ZU */ + [0xa5af, 0xa5af], /* VAI SYLLABLE ZHU */ + [0xa5b0, 0xa5b0], /* VAI SYLLABLE CU */ + [0xa5b1, 0xa5b1], /* VAI SYLLABLE JU */ + [0xa5b2, 0xa5b2], /* VAI SYLLABLE NJU */ + [0xa5b3, 0xa5b3], /* VAI SYLLABLE YU */ + [0xa5b4, 0xa5b4], /* VAI SYLLABLE KU */ + [0xa5b5, 0xa5b5], /* VAI SYLLABLE NGGU */ + [0xa5b6, 0xa5b6], /* VAI SYLLABLE GU */ + [0xa5b7, 0xa5b7], /* VAI SYLLABLE MU */ + [0xa5b8, 0xa5b8], /* VAI SYLLABLE NU */ + [0xa5b9, 0xa5b9], /* VAI SYLLABLE NYU */ + [0xa5ba, 0xa5ba], /* VAI SYLLABLE O */ + [0xa5bb, 0xa5bb], /* VAI SYLLABLE ON */ + [0xa5bc, 0xa5bc], /* VAI SYLLABLE NGON */ + [0xa5bd, 0xa5bd], /* VAI SYLLABLE HO */ + [0xa5be, 0xa5be], /* VAI SYLLABLE HON */ + [0xa5bf, 0xa5bf], /* VAI SYLLABLE WO */ + [0xa5c0, 0xa5c0], /* VAI SYLLABLE WON */ + [0xa5c1, 0xa5c1], /* VAI SYLLABLE PO */ + [0xa5c2, 0xa5c2], /* VAI SYLLABLE BHO */ + [0xa5c3, 0xa5c3], /* VAI SYLLABLE BO */ + [0xa5c4, 0xa5c4], /* VAI SYLLABLE MBO */ + [0xa5c5, 0xa5c5], /* VAI SYLLABLE KPO */ + [0xa5c6, 0xa5c6], /* VAI SYLLABLE MGBO */ + [0xa5c7, 0xa5c7], /* VAI SYLLABLE GBO */ + [0xa5c8, 0xa5c8], /* VAI SYLLABLE GBON */ + [0xa5c9, 0xa5c9], /* VAI SYLLABLE FO */ + [0xa5ca, 0xa5ca], /* VAI SYLLABLE VO */ + [0xa5cb, 0xa5cb], /* VAI SYLLABLE TO */ + [0xa5cc, 0xa5cc], /* VAI SYLLABLE THO */ + [0xa5cd, 0xa5cd], /* VAI SYLLABLE DHO */ + [0xa5ce, 0xa5ce], /* VAI SYLLABLE DHHO */ + [0xa5cf, 0xa5cf], /* VAI SYLLABLE LO */ + [0xa5d0, 0xa5d0], /* VAI SYLLABLE RO */ + [0xa5d1, 0xa5d1], /* VAI SYLLABLE DO */ + [0xa5d2, 0xa5d2], /* VAI SYLLABLE NDO */ + [0xa5d3, 0xa5d3], /* VAI SYLLABLE SO */ + [0xa5d4, 0xa5d4], /* VAI SYLLABLE SHO */ + [0xa5d5, 0xa5d5], /* VAI SYLLABLE ZO */ + [0xa5d6, 0xa5d6], /* VAI SYLLABLE ZHO */ + [0xa5d7, 0xa5d7], /* VAI SYLLABLE CO */ + [0xa5d8, 0xa5d8], /* VAI SYLLABLE JO */ + [0xa5d9, 0xa5d9], /* VAI SYLLABLE NJO */ + [0xa5da, 0xa5da], /* VAI SYLLABLE YO */ + [0xa5db, 0xa5db], /* VAI SYLLABLE KO */ + [0xa5dc, 0xa5dc], /* VAI SYLLABLE NGGO */ + [0xa5dd, 0xa5dd], /* VAI SYLLABLE GO */ + [0xa5de, 0xa5de], /* VAI SYLLABLE MO */ + [0xa5df, 0xa5df], /* VAI SYLLABLE NO */ + [0xa5e0, 0xa5e0], /* VAI SYLLABLE NYO */ + [0xa5e1, 0xa5e1], /* VAI SYLLABLE E */ + [0xa5e2, 0xa5e2], /* VAI SYLLABLE EN */ + [0xa5e3, 0xa5e3], /* VAI SYLLABLE NGEN */ + [0xa5e4, 0xa5e4], /* VAI SYLLABLE HE */ + [0xa5e5, 0xa5e5], /* VAI SYLLABLE HEN */ + [0xa5e6, 0xa5e6], /* VAI SYLLABLE WE */ + [0xa5e7, 0xa5e7], /* VAI SYLLABLE WEN */ + [0xa5e8, 0xa5e8], /* VAI SYLLABLE PE */ + [0xa5e9, 0xa5e9], /* VAI SYLLABLE BHE */ + [0xa5ea, 0xa5ea], /* VAI SYLLABLE BE */ + [0xa5eb, 0xa5eb], /* VAI SYLLABLE MBE */ + [0xa5ec, 0xa5ec], /* VAI SYLLABLE KPE */ + [0xa5ed, 0xa5ed], /* VAI SYLLABLE KPEN */ + [0xa5ee, 0xa5ee], /* VAI SYLLABLE MGBE */ + [0xa5ef, 0xa5ef], /* VAI SYLLABLE GBE */ + [0xa5f0, 0xa5f0], /* VAI SYLLABLE GBEN */ + [0xa5f1, 0xa5f1], /* VAI SYLLABLE FE */ + [0xa5f2, 0xa5f2], /* VAI SYLLABLE VE */ + [0xa5f3, 0xa5f3], /* VAI SYLLABLE TE */ + [0xa5f4, 0xa5f4], /* VAI SYLLABLE THE */ + [0xa5f5, 0xa5f5], /* VAI SYLLABLE DHE */ + [0xa5f6, 0xa5f6], /* VAI SYLLABLE DHHE */ + [0xa5f7, 0xa5f7], /* VAI SYLLABLE LE */ + [0xa5f8, 0xa5f8], /* VAI SYLLABLE RE */ + [0xa5f9, 0xa5f9], /* VAI SYLLABLE DE */ + [0xa5fa, 0xa5fa], /* VAI SYLLABLE NDE */ + [0xa5fb, 0xa5fb], /* VAI SYLLABLE SE */ + [0xa5fc, 0xa5fc], /* VAI SYLLABLE SHE */ + [0xa5fd, 0xa5fd], /* VAI SYLLABLE ZE */ + [0xa5fe, 0xa5fe], /* VAI SYLLABLE ZHE */ + [0xa5ff, 0xa5ff], /* VAI SYLLABLE CE */ + [0xa600, 0xa600], /* VAI SYLLABLE JE */ + [0xa601, 0xa601], /* VAI SYLLABLE NJE */ + [0xa602, 0xa602], /* VAI SYLLABLE YE */ + [0xa603, 0xa603], /* VAI SYLLABLE KE */ + [0xa604, 0xa604], /* VAI SYLLABLE NGGE */ + [0xa605, 0xa605], /* VAI SYLLABLE NGGEN */ + [0xa606, 0xa606], /* VAI SYLLABLE GE */ + [0xa607, 0xa607], /* VAI SYLLABLE GEN */ + [0xa608, 0xa608], /* VAI SYLLABLE ME */ + [0xa609, 0xa609], /* VAI SYLLABLE NE */ + [0xa60a, 0xa60a], /* VAI SYLLABLE NYE */ + [0xa60b, 0xa60b], /* VAI SYLLABLE NG */ + [0xa60c, 0xa60c], /* VAI SYLLABLE LENGTHENER */ + [0xa60d, 0xa60d], /* VAI COMMA */ + [0xa60e, 0xa60e], /* VAI FULL STOP */ + [0xa60f, 0xa60f], /* VAI QUESTION MARK */ + [0xa610, 0xa610], /* VAI SYLLABLE NDOLE FA */ + [0xa611, 0xa611], /* VAI SYLLABLE NDOLE KA */ + [0xa612, 0xa612], /* VAI SYLLABLE NDOLE SOO */ + [0xa613, 0xa613], /* VAI SYMBOL FEENG */ + [0xa614, 0xa614], /* VAI SYMBOL KEENG */ + [0xa615, 0xa615], /* VAI SYMBOL TING */ + [0xa616, 0xa616], /* VAI SYMBOL NII */ + [0xa617, 0xa617], /* VAI SYMBOL BANG */ + [0xa618, 0xa618], /* VAI SYMBOL FAA */ + [0xa619, 0xa619], /* VAI SYMBOL TAA */ + [0xa61a, 0xa61a], /* VAI SYMBOL DANG */ + [0xa61b, 0xa61b], /* VAI SYMBOL DOONG */ + [0xa61c, 0xa61c], /* VAI SYMBOL KUNG */ + [0xa61d, 0xa61d], /* VAI SYMBOL TONG */ + [0xa61e, 0xa61e], /* VAI SYMBOL DO-O */ + [0xa61f, 0xa61f], /* VAI SYMBOL JONG */ + [0xa620, 0xa620], /* VAI DIGIT ZERO */ + [0xa621, 0xa621], /* VAI DIGIT ONE */ + [0xa622, 0xa622], /* VAI DIGIT TWO */ + [0xa623, 0xa623], /* VAI DIGIT THREE */ + [0xa624, 0xa624], /* VAI DIGIT FOUR */ + [0xa625, 0xa625], /* VAI DIGIT FIVE */ + [0xa626, 0xa626], /* VAI DIGIT SIX */ + [0xa627, 0xa627], /* VAI DIGIT SEVEN */ + [0xa628, 0xa628], /* VAI DIGIT EIGHT */ + [0xa629, 0xa629], /* VAI DIGIT NINE */ + [0xa62a, 0xa62a], /* VAI SYLLABLE NDOLE MA */ + [0xa62b, 0xa62b], /* VAI SYLLABLE NDOLE DO */ + [0xa62c, 0xa62c], + [0xa62d, 0xa62d], + [0xa62e, 0xa62e], + [0xa62f, 0xa62f], + [0xa630, 0xa630], + [0xa631, 0xa631], + [0xa632, 0xa632], + [0xa633, 0xa633], + [0xa634, 0xa634], + [0xa635, 0xa635], + [0xa636, 0xa636], + [0xa637, 0xa637], + [0xa638, 0xa638], + [0xa639, 0xa639], + [0xa63a, 0xa63a], + [0xa63b, 0xa63b], + [0xa63c, 0xa63c], + [0xa63d, 0xa63d], + [0xa63e, 0xa63e], + [0xa63f, 0xa63f], + [0xa640, 0xa641], /* CYRILLIC CAPITAL LETTER ZEMLYA */ + [0xa640, 0xa641], /* CYRILLIC SMALL LETTER ZEMLYA */ + [0xa642, 0xa643], /* CYRILLIC CAPITAL LETTER DZELO */ + [0xa642, 0xa643], /* CYRILLIC SMALL LETTER DZELO */ + [0xa644, 0xa645], /* CYRILLIC CAPITAL LETTER REVERSED DZE */ + [0xa644, 0xa645], /* CYRILLIC SMALL LETTER REVERSED DZE */ + [0xa646, 0xa647], /* CYRILLIC CAPITAL LETTER IOTA */ + [0xa646, 0xa647], /* CYRILLIC SMALL LETTER IOTA */ + [0xa648, 0xa649], /* CYRILLIC CAPITAL LETTER DJERV */ + [0xa648, 0xa649], /* CYRILLIC SMALL LETTER DJERV */ + [0xa64a, 0xa64b], /* CYRILLIC CAPITAL LETTER MONOGRAPH UK */ + [0xa64a, 0xa64b], /* CYRILLIC SMALL LETTER MONOGRAPH UK */ + [0xa64c, 0xa64d], /* CYRILLIC CAPITAL LETTER BROAD OMEGA */ + [0xa64c, 0xa64d], /* CYRILLIC SMALL LETTER BROAD OMEGA */ + [0xa64e, 0xa64f], /* CYRILLIC CAPITAL LETTER NEUTRAL YER */ + [0xa64e, 0xa64f], /* CYRILLIC SMALL LETTER NEUTRAL YER */ + [0xa650, 0xa651], /* CYRILLIC CAPITAL LETTER YERU WITH BACK YER */ + [0xa650, 0xa651], /* CYRILLIC SMALL LETTER YERU WITH BACK YER */ + [0xa652, 0xa653], /* CYRILLIC CAPITAL LETTER IOTIFIED YAT */ + [0xa652, 0xa653], /* CYRILLIC SMALL LETTER IOTIFIED YAT */ + [0xa654, 0xa655], /* CYRILLIC CAPITAL LETTER REVERSED YU */ + [0xa654, 0xa655], /* CYRILLIC SMALL LETTER REVERSED YU */ + [0xa656, 0xa657], /* CYRILLIC CAPITAL LETTER IOTIFIED A */ + [0xa656, 0xa657], /* CYRILLIC SMALL LETTER IOTIFIED A */ + [0xa658, 0xa659], /* CYRILLIC CAPITAL LETTER CLOSED LITTLE YUS */ + [0xa658, 0xa659], /* CYRILLIC SMALL LETTER CLOSED LITTLE YUS */ + [0xa65a, 0xa65b], /* CYRILLIC CAPITAL LETTER BLENDED YUS */ + [0xa65a, 0xa65b], /* CYRILLIC SMALL LETTER BLENDED YUS */ + [0xa65c, 0xa65d], /* CYRILLIC CAPITAL LETTER IOTIFIED CLOSED LITTLE YUS */ + [0xa65c, 0xa65d], /* CYRILLIC SMALL LETTER IOTIFIED CLOSED LITTLE YUS */ + [0xa65e, 0xa65f], /* CYRILLIC CAPITAL LETTER YN */ + [0xa65e, 0xa65f], /* CYRILLIC SMALL LETTER YN */ + [0xa660, 0xa661], /* CYRILLIC CAPITAL LETTER REVERSED TSE */ + [0xa660, 0xa661], /* CYRILLIC SMALL LETTER REVERSED TSE */ + [0xa662, 0xa663], /* CYRILLIC CAPITAL LETTER SOFT DE */ + [0xa662, 0xa663], /* CYRILLIC SMALL LETTER SOFT DE */ + [0xa664, 0xa665], /* CYRILLIC CAPITAL LETTER SOFT EL */ + [0xa664, 0xa665], /* CYRILLIC SMALL LETTER SOFT EL */ + [0xa666, 0xa667], /* CYRILLIC CAPITAL LETTER SOFT EM */ + [0xa666, 0xa667], /* CYRILLIC SMALL LETTER SOFT EM */ + [0xa668, 0xa669], /* CYRILLIC CAPITAL LETTER MONOCULAR O */ + [0xa668, 0xa669], /* CYRILLIC SMALL LETTER MONOCULAR O */ + [0xa66a, 0xa66b], /* CYRILLIC CAPITAL LETTER BINOCULAR O */ + [0xa66a, 0xa66b], /* CYRILLIC SMALL LETTER BINOCULAR O */ + [0xa66c, 0xa66d], /* CYRILLIC CAPITAL LETTER DOUBLE MONOCULAR O */ + [0xa66c, 0xa66d], /* CYRILLIC SMALL LETTER DOUBLE MONOCULAR O */ + [0xa66e, 0xa66e], /* CYRILLIC LETTER MULTIOCULAR O */ + [0xa66f, 0xa66f], /* COMBINING CYRILLIC VZMET */ + [0xa670, 0xa670], /* COMBINING CYRILLIC TEN MILLIONS SIGN */ + [0xa671, 0xa671], /* COMBINING CYRILLIC HUNDRED MILLIONS SIGN */ + [0xa672, 0xa672], /* COMBINING CYRILLIC THOUSAND MILLIONS SIGN */ + [0xa673, 0xa673], /* SLAVONIC ASTERISK */ + [0xa674, 0xa674], /* COMBINING CYRILLIC LETTER UKRAINIAN IE */ + [0xa675, 0xa675], /* COMBINING CYRILLIC LETTER I */ + [0xa676, 0xa676], /* COMBINING CYRILLIC LETTER YI */ + [0xa677, 0xa677], /* COMBINING CYRILLIC LETTER U */ + [0xa678, 0xa678], /* COMBINING CYRILLIC LETTER HARD SIGN */ + [0xa679, 0xa679], /* COMBINING CYRILLIC LETTER YERU */ + [0xa67a, 0xa67a], /* COMBINING CYRILLIC LETTER SOFT SIGN */ + [0xa67b, 0xa67b], /* COMBINING CYRILLIC LETTER OMEGA */ + [0xa67c, 0xa67c], /* COMBINING CYRILLIC KAVYKA */ + [0xa67d, 0xa67d], /* COMBINING CYRILLIC PAYEROK */ + [0xa67e, 0xa67e], /* CYRILLIC KAVYKA */ + [0xa67f, 0xa67f], /* CYRILLIC PAYEROK */ + [0xa680, 0xa681], /* CYRILLIC CAPITAL LETTER DWE */ + [0xa680, 0xa681], /* CYRILLIC SMALL LETTER DWE */ + [0xa682, 0xa683], /* CYRILLIC CAPITAL LETTER DZWE */ + [0xa682, 0xa683], /* CYRILLIC SMALL LETTER DZWE */ + [0xa684, 0xa685], /* CYRILLIC CAPITAL LETTER ZHWE */ + [0xa684, 0xa685], /* CYRILLIC SMALL LETTER ZHWE */ + [0xa686, 0xa687], /* CYRILLIC CAPITAL LETTER CCHE */ + [0xa686, 0xa687], /* CYRILLIC SMALL LETTER CCHE */ + [0xa688, 0xa689], /* CYRILLIC CAPITAL LETTER DZZE */ + [0xa688, 0xa689], /* CYRILLIC SMALL LETTER DZZE */ + [0xa68a, 0xa68b], /* CYRILLIC CAPITAL LETTER TE WITH MIDDLE HOOK */ + [0xa68a, 0xa68b], /* CYRILLIC SMALL LETTER TE WITH MIDDLE HOOK */ + [0xa68c, 0xa68d], /* CYRILLIC CAPITAL LETTER TWE */ + [0xa68c, 0xa68d], /* CYRILLIC SMALL LETTER TWE */ + [0xa68e, 0xa68f], /* CYRILLIC CAPITAL LETTER TSWE */ + [0xa68e, 0xa68f], /* CYRILLIC SMALL LETTER TSWE */ + [0xa690, 0xa691], /* CYRILLIC CAPITAL LETTER TSSE */ + [0xa690, 0xa691], /* CYRILLIC SMALL LETTER TSSE */ + [0xa692, 0xa693], /* CYRILLIC CAPITAL LETTER TCHE */ + [0xa692, 0xa693], /* CYRILLIC SMALL LETTER TCHE */ + [0xa694, 0xa695], /* CYRILLIC CAPITAL LETTER HWE */ + [0xa694, 0xa695], /* CYRILLIC SMALL LETTER HWE */ + [0xa696, 0xa697], /* CYRILLIC CAPITAL LETTER SHWE */ + [0xa696, 0xa697], /* CYRILLIC SMALL LETTER SHWE */ + [0xa698, 0xa699], /* CYRILLIC CAPITAL LETTER DOUBLE O */ + [0xa698, 0xa699], /* CYRILLIC SMALL LETTER DOUBLE O */ + [0xa69a, 0xa69b], /* CYRILLIC CAPITAL LETTER CROSSED O */ + [0xa69a, 0xa69b], /* CYRILLIC SMALL LETTER CROSSED O */ + [0xa69c, 0xa69c], /* MODIFIER LETTER CYRILLIC HARD SIGN */ + [0xa69d, 0xa69d], /* MODIFIER LETTER CYRILLIC SOFT SIGN */ + [0xa69e, 0xa69e], /* COMBINING CYRILLIC LETTER EF */ + [0xa69f, 0xa69f], /* COMBINING CYRILLIC LETTER IOTIFIED E */ + [0xa6a0, 0xa6a0], /* BAMUM LETTER A */ + [0xa6a1, 0xa6a1], /* BAMUM LETTER KA */ + [0xa6a2, 0xa6a2], /* BAMUM LETTER U */ + [0xa6a3, 0xa6a3], /* BAMUM LETTER KU */ + [0xa6a4, 0xa6a4], /* BAMUM LETTER EE */ + [0xa6a5, 0xa6a5], /* BAMUM LETTER REE */ + [0xa6a6, 0xa6a6], /* BAMUM LETTER TAE */ + [0xa6a7, 0xa6a7], /* BAMUM LETTER O */ + [0xa6a8, 0xa6a8], /* BAMUM LETTER NYI */ + [0xa6a9, 0xa6a9], /* BAMUM LETTER I */ + [0xa6aa, 0xa6aa], /* BAMUM LETTER LA */ + [0xa6ab, 0xa6ab], /* BAMUM LETTER PA */ + [0xa6ac, 0xa6ac], /* BAMUM LETTER RII */ + [0xa6ad, 0xa6ad], /* BAMUM LETTER RIEE */ + [0xa6ae, 0xa6ae], /* BAMUM LETTER LEEEE */ + [0xa6af, 0xa6af], /* BAMUM LETTER MEEEE */ + [0xa6b0, 0xa6b0], /* BAMUM LETTER TAA */ + [0xa6b1, 0xa6b1], /* BAMUM LETTER NDAA */ + [0xa6b2, 0xa6b2], /* BAMUM LETTER NJAEM */ + [0xa6b3, 0xa6b3], /* BAMUM LETTER M */ + [0xa6b4, 0xa6b4], /* BAMUM LETTER SUU */ + [0xa6b5, 0xa6b5], /* BAMUM LETTER MU */ + [0xa6b6, 0xa6b6], /* BAMUM LETTER SHII */ + [0xa6b7, 0xa6b7], /* BAMUM LETTER SI */ + [0xa6b8, 0xa6b8], /* BAMUM LETTER SHEUX */ + [0xa6b9, 0xa6b9], /* BAMUM LETTER SEUX */ + [0xa6ba, 0xa6ba], /* BAMUM LETTER KYEE */ + [0xa6bb, 0xa6bb], /* BAMUM LETTER KET */ + [0xa6bc, 0xa6bc], /* BAMUM LETTER NUAE */ + [0xa6bd, 0xa6bd], /* BAMUM LETTER NU */ + [0xa6be, 0xa6be], /* BAMUM LETTER NJUAE */ + [0xa6bf, 0xa6bf], /* BAMUM LETTER YOQ */ + [0xa6c0, 0xa6c0], /* BAMUM LETTER SHU */ + [0xa6c1, 0xa6c1], /* BAMUM LETTER YUQ */ + [0xa6c2, 0xa6c2], /* BAMUM LETTER YA */ + [0xa6c3, 0xa6c3], /* BAMUM LETTER NSHA */ + [0xa6c4, 0xa6c4], /* BAMUM LETTER KEUX */ + [0xa6c5, 0xa6c5], /* BAMUM LETTER PEUX */ + [0xa6c6, 0xa6c6], /* BAMUM LETTER NJEE */ + [0xa6c7, 0xa6c7], /* BAMUM LETTER NTEE */ + [0xa6c8, 0xa6c8], /* BAMUM LETTER PUE */ + [0xa6c9, 0xa6c9], /* BAMUM LETTER WUE */ + [0xa6ca, 0xa6ca], /* BAMUM LETTER PEE */ + [0xa6cb, 0xa6cb], /* BAMUM LETTER FEE */ + [0xa6cc, 0xa6cc], /* BAMUM LETTER RU */ + [0xa6cd, 0xa6cd], /* BAMUM LETTER LU */ + [0xa6ce, 0xa6ce], /* BAMUM LETTER MI */ + [0xa6cf, 0xa6cf], /* BAMUM LETTER NI */ + [0xa6d0, 0xa6d0], /* BAMUM LETTER REUX */ + [0xa6d1, 0xa6d1], /* BAMUM LETTER RAE */ + [0xa6d2, 0xa6d2], /* BAMUM LETTER KEN */ + [0xa6d3, 0xa6d3], /* BAMUM LETTER NGKWAEN */ + [0xa6d4, 0xa6d4], /* BAMUM LETTER NGGA */ + [0xa6d5, 0xa6d5], /* BAMUM LETTER NGA */ + [0xa6d6, 0xa6d6], /* BAMUM LETTER SHO */ + [0xa6d7, 0xa6d7], /* BAMUM LETTER PUAE */ + [0xa6d8, 0xa6d8], /* BAMUM LETTER FU */ + [0xa6d9, 0xa6d9], /* BAMUM LETTER FOM */ + [0xa6da, 0xa6da], /* BAMUM LETTER WA */ + [0xa6db, 0xa6db], /* BAMUM LETTER NA */ + [0xa6dc, 0xa6dc], /* BAMUM LETTER LI */ + [0xa6dd, 0xa6dd], /* BAMUM LETTER PI */ + [0xa6de, 0xa6de], /* BAMUM LETTER LOQ */ + [0xa6df, 0xa6df], /* BAMUM LETTER KO */ + [0xa6e0, 0xa6e0], /* BAMUM LETTER MBEN */ + [0xa6e1, 0xa6e1], /* BAMUM LETTER REN */ + [0xa6e2, 0xa6e2], /* BAMUM LETTER MEN */ + [0xa6e3, 0xa6e3], /* BAMUM LETTER MA */ + [0xa6e4, 0xa6e4], /* BAMUM LETTER TI */ + [0xa6e5, 0xa6e5], /* BAMUM LETTER KI */ + [0xa6e6, 0xa6e6], /* BAMUM LETTER MO */ + [0xa6e7, 0xa6e7], /* BAMUM LETTER MBAA */ + [0xa6e8, 0xa6e8], /* BAMUM LETTER TET */ + [0xa6e9, 0xa6e9], /* BAMUM LETTER KPA */ + [0xa6ea, 0xa6ea], /* BAMUM LETTER TEN */ + [0xa6eb, 0xa6eb], /* BAMUM LETTER NTUU */ + [0xa6ec, 0xa6ec], /* BAMUM LETTER SAMBA */ + [0xa6ed, 0xa6ed], /* BAMUM LETTER FAAMAE */ + [0xa6ee, 0xa6ee], /* BAMUM LETTER KOVUU */ + [0xa6ef, 0xa6ef], /* BAMUM LETTER KOGHOM */ + [0xa6f0, 0xa6f0], /* BAMUM COMBINING MARK KOQNDON */ + [0xa6f1, 0xa6f1], /* BAMUM COMBINING MARK TUKWENTIS */ + [0xa6f2, 0xa6f2], /* BAMUM NJAEMLI */ + [0xa6f3, 0xa6f3], /* BAMUM FULL STOP */ + [0xa6f4, 0xa6f4], /* BAMUM COLON */ + [0xa6f5, 0xa6f5], /* BAMUM COMMA */ + [0xa6f6, 0xa6f6], /* BAMUM SEMICOLON */ + [0xa6f7, 0xa6f7], /* BAMUM QUESTION MARK */ + [0xa6f8, 0xa6f8], + [0xa6f9, 0xa6f9], + [0xa6fa, 0xa6fa], + [0xa6fb, 0xa6fb], + [0xa6fc, 0xa6fc], + [0xa6fd, 0xa6fd], + [0xa6fe, 0xa6fe], + [0xa6ff, 0xa6ff], + [0xa700, 0xa700], /* MODIFIER LETTER CHINESE TONE YIN PING */ + [0xa701, 0xa701], /* MODIFIER LETTER CHINESE TONE YANG PING */ + [0xa702, 0xa702], /* MODIFIER LETTER CHINESE TONE YIN SHANG */ + [0xa703, 0xa703], /* MODIFIER LETTER CHINESE TONE YANG SHANG */ + [0xa704, 0xa704], /* MODIFIER LETTER CHINESE TONE YIN QU */ + [0xa705, 0xa705], /* MODIFIER LETTER CHINESE TONE YANG QU */ + [0xa706, 0xa706], /* MODIFIER LETTER CHINESE TONE YIN RU */ + [0xa707, 0xa707], /* MODIFIER LETTER CHINESE TONE YANG RU */ + [0xa708, 0xa708], /* MODIFIER LETTER EXTRA-HIGH DOTTED TONE BAR */ + [0xa709, 0xa709], /* MODIFIER LETTER HIGH DOTTED TONE BAR */ + [0xa70a, 0xa70a], /* MODIFIER LETTER MID DOTTED TONE BAR */ + [0xa70b, 0xa70b], /* MODIFIER LETTER LOW DOTTED TONE BAR */ + [0xa70c, 0xa70c], /* MODIFIER LETTER EXTRA-LOW DOTTED TONE BAR */ + [0xa70d, 0xa70d], /* MODIFIER LETTER EXTRA-HIGH DOTTED LEFT-STEM TONE BAR */ + [0xa70e, 0xa70e], /* MODIFIER LETTER HIGH DOTTED LEFT-STEM TONE BAR */ + [0xa70f, 0xa70f], /* MODIFIER LETTER MID DOTTED LEFT-STEM TONE BAR */ + [0xa710, 0xa710], /* MODIFIER LETTER LOW DOTTED LEFT-STEM TONE BAR */ + [0xa711, 0xa711], /* MODIFIER LETTER EXTRA-LOW DOTTED LEFT-STEM TONE BAR */ + [0xa712, 0xa712], /* MODIFIER LETTER EXTRA-HIGH LEFT-STEM TONE BAR */ + [0xa713, 0xa713], /* MODIFIER LETTER HIGH LEFT-STEM TONE BAR */ + [0xa714, 0xa714], /* MODIFIER LETTER MID LEFT-STEM TONE BAR */ + [0xa715, 0xa715], /* MODIFIER LETTER LOW LEFT-STEM TONE BAR */ + [0xa716, 0xa716], /* MODIFIER LETTER EXTRA-LOW LEFT-STEM TONE BAR */ + [0xa717, 0xa717], /* MODIFIER LETTER DOT VERTICAL BAR */ + [0xa718, 0xa718], /* MODIFIER LETTER DOT SLASH */ + [0xa719, 0xa719], /* MODIFIER LETTER DOT HORIZONTAL BAR */ + [0xa71a, 0xa71a], /* MODIFIER LETTER LOWER RIGHT CORNER ANGLE */ + [0xa71b, 0xa71b], /* MODIFIER LETTER RAISED UP ARROW */ + [0xa71c, 0xa71c], /* MODIFIER LETTER RAISED DOWN ARROW */ + [0xa71d, 0xa71d], /* MODIFIER LETTER RAISED EXCLAMATION MARK */ + [0xa71e, 0xa71e], /* MODIFIER LETTER RAISED INVERTED EXCLAMATION MARK */ + [0xa71f, 0xa71f], /* MODIFIER LETTER LOW INVERTED EXCLAMATION MARK */ + [0xa720, 0xa720], /* MODIFIER LETTER STRESS AND HIGH TONE */ + [0xa721, 0xa721], /* MODIFIER LETTER STRESS AND LOW TONE */ + [0xa722, 0xa723], /* LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF */ + [0xa722, 0xa723], /* LATIN SMALL LETTER EGYPTOLOGICAL ALEF */ + [0xa724, 0xa725], /* LATIN CAPITAL LETTER EGYPTOLOGICAL AIN */ + [0xa724, 0xa725], /* LATIN SMALL LETTER EGYPTOLOGICAL AIN */ + [0xa726, 0xa727], /* LATIN CAPITAL LETTER HENG */ + [0xa726, 0xa727], /* LATIN SMALL LETTER HENG */ + [0xa728, 0xa729], /* LATIN CAPITAL LETTER TZ */ + [0xa728, 0xa729], /* LATIN SMALL LETTER TZ */ + [0xa72a, 0xa72b], /* LATIN CAPITAL LETTER TRESILLO */ + [0xa72a, 0xa72b], /* LATIN SMALL LETTER TRESILLO */ + [0xa72c, 0xa72d], /* LATIN CAPITAL LETTER CUATRILLO */ + [0xa72c, 0xa72d], /* LATIN SMALL LETTER CUATRILLO */ + [0xa72e, 0xa72f], /* LATIN CAPITAL LETTER CUATRILLO WITH COMMA */ + [0xa72e, 0xa72f], /* LATIN SMALL LETTER CUATRILLO WITH COMMA */ + [0xa730, 0xa730], /* LATIN LETTER SMALL CAPITAL F */ + [0xa731, 0xa731], /* LATIN LETTER SMALL CAPITAL S */ + [0xa732, 0xa733], /* LATIN CAPITAL LETTER AA */ + [0xa732, 0xa733], /* LATIN SMALL LETTER AA */ + [0xa734, 0xa735], /* LATIN CAPITAL LETTER AO */ + [0xa734, 0xa735], /* LATIN SMALL LETTER AO */ + [0xa736, 0xa737], /* LATIN CAPITAL LETTER AU */ + [0xa736, 0xa737], /* LATIN SMALL LETTER AU */ + [0xa738, 0xa739], /* LATIN CAPITAL LETTER AV */ + [0xa738, 0xa739], /* LATIN SMALL LETTER AV */ + [0xa73a, 0xa73b], /* LATIN CAPITAL LETTER AV WITH HORIZONTAL BAR */ + [0xa73a, 0xa73b], /* LATIN SMALL LETTER AV WITH HORIZONTAL BAR */ + [0xa73c, 0xa73d], /* LATIN CAPITAL LETTER AY */ + [0xa73c, 0xa73d], /* LATIN SMALL LETTER AY */ + [0xa73e, 0xa73f], /* LATIN CAPITAL LETTER REVERSED C WITH DOT */ + [0xa73e, 0xa73f], /* LATIN SMALL LETTER REVERSED C WITH DOT */ + [0xa740, 0xa741], /* LATIN CAPITAL LETTER K WITH STROKE */ + [0xa740, 0xa741], /* LATIN SMALL LETTER K WITH STROKE */ + [0xa742, 0xa743], /* LATIN CAPITAL LETTER K WITH DIAGONAL STROKE */ + [0xa742, 0xa743], /* LATIN SMALL LETTER K WITH DIAGONAL STROKE */ + [0xa744, 0xa745], /* LATIN CAPITAL LETTER K WITH STROKE AND DIAGONAL STROKE */ + [0xa744, 0xa745], /* LATIN SMALL LETTER K WITH STROKE AND DIAGONAL STROKE */ + [0xa746, 0xa747], /* LATIN CAPITAL LETTER BROKEN L */ + [0xa746, 0xa747], /* LATIN SMALL LETTER BROKEN L */ + [0xa748, 0xa749], /* LATIN CAPITAL LETTER L WITH HIGH STROKE */ + [0xa748, 0xa749], /* LATIN SMALL LETTER L WITH HIGH STROKE */ + [0xa74a, 0xa74b], /* LATIN CAPITAL LETTER O WITH LONG STROKE OVERLAY */ + [0xa74a, 0xa74b], /* LATIN SMALL LETTER O WITH LONG STROKE OVERLAY */ + [0xa74c, 0xa74d], /* LATIN CAPITAL LETTER O WITH LOOP */ + [0xa74c, 0xa74d], /* LATIN SMALL LETTER O WITH LOOP */ + [0xa74e, 0xa74f], /* LATIN CAPITAL LETTER OO */ + [0xa74e, 0xa74f], /* LATIN SMALL LETTER OO */ + [0xa750, 0xa751], /* LATIN CAPITAL LETTER P WITH STROKE THROUGH DESCENDER */ + [0xa750, 0xa751], /* LATIN SMALL LETTER P WITH STROKE THROUGH DESCENDER */ + [0xa752, 0xa753], /* LATIN CAPITAL LETTER P WITH FLOURISH */ + [0xa752, 0xa753], /* LATIN SMALL LETTER P WITH FLOURISH */ + [0xa754, 0xa755], /* LATIN CAPITAL LETTER P WITH SQUIRREL TAIL */ + [0xa754, 0xa755], /* LATIN SMALL LETTER P WITH SQUIRREL TAIL */ + [0xa756, 0xa757], /* LATIN CAPITAL LETTER Q WITH STROKE THROUGH DESCENDER */ + [0xa756, 0xa757], /* LATIN SMALL LETTER Q WITH STROKE THROUGH DESCENDER */ + [0xa758, 0xa759], /* LATIN CAPITAL LETTER Q WITH DIAGONAL STROKE */ + [0xa758, 0xa759], /* LATIN SMALL LETTER Q WITH DIAGONAL STROKE */ + [0xa75a, 0xa75b], /* LATIN CAPITAL LETTER R ROTUNDA */ + [0xa75a, 0xa75b], /* LATIN SMALL LETTER R ROTUNDA */ + [0xa75c, 0xa75d], /* LATIN CAPITAL LETTER RUM ROTUNDA */ + [0xa75c, 0xa75d], /* LATIN SMALL LETTER RUM ROTUNDA */ + [0xa75e, 0xa75f], /* LATIN CAPITAL LETTER V WITH DIAGONAL STROKE */ + [0xa75e, 0xa75f], /* LATIN SMALL LETTER V WITH DIAGONAL STROKE */ + [0xa760, 0xa761], /* LATIN CAPITAL LETTER VY */ + [0xa760, 0xa761], /* LATIN SMALL LETTER VY */ + [0xa762, 0xa763], /* LATIN CAPITAL LETTER VISIGOTHIC Z */ + [0xa762, 0xa763], /* LATIN SMALL LETTER VISIGOTHIC Z */ + [0xa764, 0xa765], /* LATIN CAPITAL LETTER THORN WITH STROKE */ + [0xa764, 0xa765], /* LATIN SMALL LETTER THORN WITH STROKE */ + [0xa766, 0xa767], /* LATIN CAPITAL LETTER THORN WITH STROKE THROUGH DESCENDER */ + [0xa766, 0xa767], /* LATIN SMALL LETTER THORN WITH STROKE THROUGH DESCENDER */ + [0xa768, 0xa769], /* LATIN CAPITAL LETTER VEND */ + [0xa768, 0xa769], /* LATIN SMALL LETTER VEND */ + [0xa76a, 0xa76b], /* LATIN CAPITAL LETTER ET */ + [0xa76a, 0xa76b], /* LATIN SMALL LETTER ET */ + [0xa76c, 0xa76d], /* LATIN CAPITAL LETTER IS */ + [0xa76c, 0xa76d], /* LATIN SMALL LETTER IS */ + [0xa76e, 0xa76f], /* LATIN CAPITAL LETTER CON */ + [0xa76e, 0xa76f], /* LATIN SMALL LETTER CON */ + [0xa770, 0xa770], /* MODIFIER LETTER US */ + [0xa771, 0xa771], /* LATIN SMALL LETTER DUM */ + [0xa772, 0xa772], /* LATIN SMALL LETTER LUM */ + [0xa773, 0xa773], /* LATIN SMALL LETTER MUM */ + [0xa774, 0xa774], /* LATIN SMALL LETTER NUM */ + [0xa775, 0xa775], /* LATIN SMALL LETTER RUM */ + [0xa776, 0xa776], /* LATIN LETTER SMALL CAPITAL RUM */ + [0xa777, 0xa777], /* LATIN SMALL LETTER TUM */ + [0xa778, 0xa778], /* LATIN SMALL LETTER UM */ + [0xa779, 0xa77a], /* LATIN CAPITAL LETTER INSULAR D */ + [0xa779, 0xa77a], /* LATIN SMALL LETTER INSULAR D */ + [0xa77b, 0xa77c], /* LATIN CAPITAL LETTER INSULAR F */ + [0xa77b, 0xa77c], /* LATIN SMALL LETTER INSULAR F */ + [0xa77d, 0x1d79], /* LATIN CAPITAL LETTER INSULAR G */ + [0xa77e, 0xa77f], /* LATIN CAPITAL LETTER TURNED INSULAR G */ + [0xa77e, 0xa77f], /* LATIN SMALL LETTER TURNED INSULAR G */ + [0xa780, 0xa781], /* LATIN CAPITAL LETTER TURNED L */ + [0xa780, 0xa781], /* LATIN SMALL LETTER TURNED L */ + [0xa782, 0xa783], /* LATIN CAPITAL LETTER INSULAR R */ + [0xa782, 0xa783], /* LATIN SMALL LETTER INSULAR R */ + [0xa784, 0xa785], /* LATIN CAPITAL LETTER INSULAR S */ + [0xa784, 0xa785], /* LATIN SMALL LETTER INSULAR S */ + [0xa786, 0xa787], /* LATIN CAPITAL LETTER INSULAR T */ + [0xa786, 0xa787], /* LATIN SMALL LETTER INSULAR T */ + [0xa788, 0xa788], /* MODIFIER LETTER LOW CIRCUMFLEX ACCENT */ + [0xa789, 0xa789], /* MODIFIER LETTER COLON */ + [0xa78a, 0xa78a], /* MODIFIER LETTER SHORT EQUALS SIGN */ + [0xa78b, 0xa78c], /* LATIN CAPITAL LETTER SALTILLO */ + [0xa78b, 0xa78c], /* LATIN SMALL LETTER SALTILLO */ + [0xa78d, 0x265], /* LATIN CAPITAL LETTER TURNED H */ + [0xa78e, 0xa78e], /* LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT */ + [0xa78f, 0xa78f], /* LATIN LETTER SINOLOGICAL DOT */ + [0xa790, 0xa791], /* LATIN CAPITAL LETTER N WITH DESCENDER */ + [0xa790, 0xa791], /* LATIN SMALL LETTER N WITH DESCENDER */ + [0xa792, 0xa793], /* LATIN CAPITAL LETTER C WITH BAR */ + [0xa792, 0xa793], /* LATIN SMALL LETTER C WITH BAR */ + [0xa794, 0xa794], /* LATIN SMALL LETTER C WITH PALATAL HOOK */ + [0xa795, 0xa795], /* LATIN SMALL LETTER H WITH PALATAL HOOK */ + [0xa796, 0xa797], /* LATIN CAPITAL LETTER B WITH FLOURISH */ + [0xa796, 0xa797], /* LATIN SMALL LETTER B WITH FLOURISH */ + [0xa798, 0xa799], /* LATIN CAPITAL LETTER F WITH STROKE */ + [0xa798, 0xa799], /* LATIN SMALL LETTER F WITH STROKE */ + [0xa79a, 0xa79b], /* LATIN CAPITAL LETTER VOLAPUK AE */ + [0xa79a, 0xa79b], /* LATIN SMALL LETTER VOLAPUK AE */ + [0xa79c, 0xa79d], /* LATIN CAPITAL LETTER VOLAPUK OE */ + [0xa79c, 0xa79d], /* LATIN SMALL LETTER VOLAPUK OE */ + [0xa79e, 0xa79f], /* LATIN CAPITAL LETTER VOLAPUK UE */ + [0xa79e, 0xa79f], /* LATIN SMALL LETTER VOLAPUK UE */ + [0xa7a0, 0xa7a1], /* LATIN CAPITAL LETTER G WITH OBLIQUE STROKE */ + [0xa7a0, 0xa7a1], /* LATIN SMALL LETTER G WITH OBLIQUE STROKE */ + [0xa7a2, 0xa7a3], /* LATIN CAPITAL LETTER K WITH OBLIQUE STROKE */ + [0xa7a2, 0xa7a3], /* LATIN SMALL LETTER K WITH OBLIQUE STROKE */ + [0xa7a4, 0xa7a5], /* LATIN CAPITAL LETTER N WITH OBLIQUE STROKE */ + [0xa7a4, 0xa7a5], /* LATIN SMALL LETTER N WITH OBLIQUE STROKE */ + [0xa7a6, 0xa7a7], /* LATIN CAPITAL LETTER R WITH OBLIQUE STROKE */ + [0xa7a6, 0xa7a7], /* LATIN SMALL LETTER R WITH OBLIQUE STROKE */ + [0xa7a8, 0xa7a9], /* LATIN CAPITAL LETTER S WITH OBLIQUE STROKE */ + [0xa7a8, 0xa7a9], /* LATIN SMALL LETTER S WITH OBLIQUE STROKE */ + [0xa7aa, 0x266], /* LATIN CAPITAL LETTER H WITH HOOK */ + [0xa7ab, 0x25c], /* LATIN CAPITAL LETTER REVERSED OPEN E */ + [0xa7ac, 0x261], /* LATIN CAPITAL LETTER SCRIPT G */ + [0xa7ad, 0x26c], /* LATIN CAPITAL LETTER L WITH BELT */ + [0xa7ae, 0x26a], /* LATIN CAPITAL LETTER SMALL CAPITAL I */ + [0xa7af, 0xa7af], + [0xa7b0, 0x29e], /* LATIN CAPITAL LETTER TURNED K */ + [0xa7b1, 0x287], /* LATIN CAPITAL LETTER TURNED T */ + [0xa7b2, 0x29d], /* LATIN CAPITAL LETTER J WITH CROSSED-TAIL */ + [0xa7b3, 0xab53], /* LATIN CAPITAL LETTER CHI */ + [0xa7b4, 0xa7b5], /* LATIN CAPITAL LETTER BETA */ + [0xa7b4, 0xa7b5], /* LATIN SMALL LETTER BETA */ + [0xa7b6, 0xa7b7], /* LATIN CAPITAL LETTER OMEGA */ + [0xa7b6, 0xa7b7], /* LATIN SMALL LETTER OMEGA */ + [0xa7b8, 0xa7b8], + [0xa7b9, 0xa7b9], + [0xa7ba, 0xa7ba], + [0xa7bb, 0xa7bb], + [0xa7bc, 0xa7bc], + [0xa7bd, 0xa7bd], + [0xa7be, 0xa7be], + [0xa7bf, 0xa7bf], + [0xa7c0, 0xa7c0], + [0xa7c1, 0xa7c1], + [0xa7c2, 0xa7c2], + [0xa7c3, 0xa7c3], + [0xa7c4, 0xa7c4], + [0xa7c5, 0xa7c5], + [0xa7c6, 0xa7c6], + [0xa7c7, 0xa7c7], + [0xa7c8, 0xa7c8], + [0xa7c9, 0xa7c9], + [0xa7ca, 0xa7ca], + [0xa7cb, 0xa7cb], + [0xa7cc, 0xa7cc], + [0xa7cd, 0xa7cd], + [0xa7ce, 0xa7ce], + [0xa7cf, 0xa7cf], + [0xa7d0, 0xa7d0], + [0xa7d1, 0xa7d1], + [0xa7d2, 0xa7d2], + [0xa7d3, 0xa7d3], + [0xa7d4, 0xa7d4], + [0xa7d5, 0xa7d5], + [0xa7d6, 0xa7d6], + [0xa7d7, 0xa7d7], + [0xa7d8, 0xa7d8], + [0xa7d9, 0xa7d9], + [0xa7da, 0xa7da], + [0xa7db, 0xa7db], + [0xa7dc, 0xa7dc], + [0xa7dd, 0xa7dd], + [0xa7de, 0xa7de], + [0xa7df, 0xa7df], + [0xa7e0, 0xa7e0], + [0xa7e1, 0xa7e1], + [0xa7e2, 0xa7e2], + [0xa7e3, 0xa7e3], + [0xa7e4, 0xa7e4], + [0xa7e5, 0xa7e5], + [0xa7e6, 0xa7e6], + [0xa7e7, 0xa7e7], + [0xa7e8, 0xa7e8], + [0xa7e9, 0xa7e9], + [0xa7ea, 0xa7ea], + [0xa7eb, 0xa7eb], + [0xa7ec, 0xa7ec], + [0xa7ed, 0xa7ed], + [0xa7ee, 0xa7ee], + [0xa7ef, 0xa7ef], + [0xa7f0, 0xa7f0], + [0xa7f1, 0xa7f1], + [0xa7f2, 0xa7f2], + [0xa7f3, 0xa7f3], + [0xa7f4, 0xa7f4], + [0xa7f5, 0xa7f5], + [0xa7f6, 0xa7f6], + [0xa7f7, 0xa7f7], /* LATIN EPIGRAPHIC LETTER SIDEWAYS I */ + [0xa7f8, 0xa7f8], /* MODIFIER LETTER CAPITAL H WITH STROKE */ + [0xa7f9, 0xa7f9], /* MODIFIER LETTER SMALL LIGATURE OE */ + [0xa7fa, 0xa7fa], /* LATIN LETTER SMALL CAPITAL TURNED M */ + [0xa7fb, 0xa7fb], /* LATIN EPIGRAPHIC LETTER REVERSED F */ + [0xa7fc, 0xa7fc], /* LATIN EPIGRAPHIC LETTER REVERSED P */ + [0xa7fd, 0xa7fd], /* LATIN EPIGRAPHIC LETTER INVERTED M */ + [0xa7fe, 0xa7fe], /* LATIN EPIGRAPHIC LETTER I LONGA */ + [0xa7ff, 0xa7ff], /* LATIN EPIGRAPHIC LETTER ARCHAIC M */ + [0xa800, 0xa800], /* SYLOTI NAGRI LETTER A */ + [0xa801, 0xa801], /* SYLOTI NAGRI LETTER I */ + [0xa802, 0xa802], /* SYLOTI NAGRI SIGN DVISVARA */ + [0xa803, 0xa803], /* SYLOTI NAGRI LETTER U */ + [0xa804, 0xa804], /* SYLOTI NAGRI LETTER E */ + [0xa805, 0xa805], /* SYLOTI NAGRI LETTER O */ + [0xa806, 0xa806], /* SYLOTI NAGRI SIGN HASANTA */ + [0xa807, 0xa807], /* SYLOTI NAGRI LETTER KO */ + [0xa808, 0xa808], /* SYLOTI NAGRI LETTER KHO */ + [0xa809, 0xa809], /* SYLOTI NAGRI LETTER GO */ + [0xa80a, 0xa80a], /* SYLOTI NAGRI LETTER GHO */ + [0xa80b, 0xa80b], /* SYLOTI NAGRI SIGN ANUSVARA */ + [0xa80c, 0xa80c], /* SYLOTI NAGRI LETTER CO */ + [0xa80d, 0xa80d], /* SYLOTI NAGRI LETTER CHO */ + [0xa80e, 0xa80e], /* SYLOTI NAGRI LETTER JO */ + [0xa80f, 0xa80f], /* SYLOTI NAGRI LETTER JHO */ + [0xa810, 0xa810], /* SYLOTI NAGRI LETTER TTO */ + [0xa811, 0xa811], /* SYLOTI NAGRI LETTER TTHO */ + [0xa812, 0xa812], /* SYLOTI NAGRI LETTER DDO */ + [0xa813, 0xa813], /* SYLOTI NAGRI LETTER DDHO */ + [0xa814, 0xa814], /* SYLOTI NAGRI LETTER TO */ + [0xa815, 0xa815], /* SYLOTI NAGRI LETTER THO */ + [0xa816, 0xa816], /* SYLOTI NAGRI LETTER DO */ + [0xa817, 0xa817], /* SYLOTI NAGRI LETTER DHO */ + [0xa818, 0xa818], /* SYLOTI NAGRI LETTER NO */ + [0xa819, 0xa819], /* SYLOTI NAGRI LETTER PO */ + [0xa81a, 0xa81a], /* SYLOTI NAGRI LETTER PHO */ + [0xa81b, 0xa81b], /* SYLOTI NAGRI LETTER BO */ + [0xa81c, 0xa81c], /* SYLOTI NAGRI LETTER BHO */ + [0xa81d, 0xa81d], /* SYLOTI NAGRI LETTER MO */ + [0xa81e, 0xa81e], /* SYLOTI NAGRI LETTER RO */ + [0xa81f, 0xa81f], /* SYLOTI NAGRI LETTER LO */ + [0xa820, 0xa820], /* SYLOTI NAGRI LETTER RRO */ + [0xa821, 0xa821], /* SYLOTI NAGRI LETTER SO */ + [0xa822, 0xa822], /* SYLOTI NAGRI LETTER HO */ + [0xa823, 0xa823], /* SYLOTI NAGRI VOWEL SIGN A */ + [0xa824, 0xa824], /* SYLOTI NAGRI VOWEL SIGN I */ + [0xa825, 0xa825], /* SYLOTI NAGRI VOWEL SIGN U */ + [0xa826, 0xa826], /* SYLOTI NAGRI VOWEL SIGN E */ + [0xa827, 0xa827], /* SYLOTI NAGRI VOWEL SIGN OO */ + [0xa828, 0xa828], /* SYLOTI NAGRI POETRY MARK-1 */ + [0xa829, 0xa829], /* SYLOTI NAGRI POETRY MARK-2 */ + [0xa82a, 0xa82a], /* SYLOTI NAGRI POETRY MARK-3 */ + [0xa82b, 0xa82b], /* SYLOTI NAGRI POETRY MARK-4 */ + [0xa82c, 0xa82c], + [0xa82d, 0xa82d], + [0xa82e, 0xa82e], + [0xa82f, 0xa82f], + [0xa830, 0xa830], /* NORTH INDIC FRACTION ONE QUARTER */ + [0xa831, 0xa831], /* NORTH INDIC FRACTION ONE HALF */ + [0xa832, 0xa832], /* NORTH INDIC FRACTION THREE QUARTERS */ + [0xa833, 0xa833], /* NORTH INDIC FRACTION ONE SIXTEENTH */ + [0xa834, 0xa834], /* NORTH INDIC FRACTION ONE EIGHTH */ + [0xa835, 0xa835], /* NORTH INDIC FRACTION THREE SIXTEENTHS */ + [0xa836, 0xa836], /* NORTH INDIC QUARTER MARK */ + [0xa837, 0xa837], /* NORTH INDIC PLACEHOLDER MARK */ + [0xa838, 0xa838], /* NORTH INDIC RUPEE MARK */ + [0xa839, 0xa839], /* NORTH INDIC QUANTITY MARK */ + [0xa83a, 0xa83a], + [0xa83b, 0xa83b], + [0xa83c, 0xa83c], + [0xa83d, 0xa83d], + [0xa83e, 0xa83e], + [0xa83f, 0xa83f], + [0xa840, 0xa840], /* PHAGS-PA LETTER KA */ + [0xa841, 0xa841], /* PHAGS-PA LETTER KHA */ + [0xa842, 0xa842], /* PHAGS-PA LETTER GA */ + [0xa843, 0xa843], /* PHAGS-PA LETTER NGA */ + [0xa844, 0xa844], /* PHAGS-PA LETTER CA */ + [0xa845, 0xa845], /* PHAGS-PA LETTER CHA */ + [0xa846, 0xa846], /* PHAGS-PA LETTER JA */ + [0xa847, 0xa847], /* PHAGS-PA LETTER NYA */ + [0xa848, 0xa848], /* PHAGS-PA LETTER TA */ + [0xa849, 0xa849], /* PHAGS-PA LETTER THA */ + [0xa84a, 0xa84a], /* PHAGS-PA LETTER DA */ + [0xa84b, 0xa84b], /* PHAGS-PA LETTER NA */ + [0xa84c, 0xa84c], /* PHAGS-PA LETTER PA */ + [0xa84d, 0xa84d], /* PHAGS-PA LETTER PHA */ + [0xa84e, 0xa84e], /* PHAGS-PA LETTER BA */ + [0xa84f, 0xa84f], /* PHAGS-PA LETTER MA */ + [0xa850, 0xa850], /* PHAGS-PA LETTER TSA */ + [0xa851, 0xa851], /* PHAGS-PA LETTER TSHA */ + [0xa852, 0xa852], /* PHAGS-PA LETTER DZA */ + [0xa853, 0xa853], /* PHAGS-PA LETTER WA */ + [0xa854, 0xa854], /* PHAGS-PA LETTER ZHA */ + [0xa855, 0xa855], /* PHAGS-PA LETTER ZA */ + [0xa856, 0xa856], /* PHAGS-PA LETTER SMALL A */ + [0xa857, 0xa857], /* PHAGS-PA LETTER YA */ + [0xa858, 0xa858], /* PHAGS-PA LETTER RA */ + [0xa859, 0xa859], /* PHAGS-PA LETTER LA */ + [0xa85a, 0xa85a], /* PHAGS-PA LETTER SHA */ + [0xa85b, 0xa85b], /* PHAGS-PA LETTER SA */ + [0xa85c, 0xa85c], /* PHAGS-PA LETTER HA */ + [0xa85d, 0xa85d], /* PHAGS-PA LETTER A */ + [0xa85e, 0xa85e], /* PHAGS-PA LETTER I */ + [0xa85f, 0xa85f], /* PHAGS-PA LETTER U */ + [0xa860, 0xa860], /* PHAGS-PA LETTER E */ + [0xa861, 0xa861], /* PHAGS-PA LETTER O */ + [0xa862, 0xa862], /* PHAGS-PA LETTER QA */ + [0xa863, 0xa863], /* PHAGS-PA LETTER XA */ + [0xa864, 0xa864], /* PHAGS-PA LETTER FA */ + [0xa865, 0xa865], /* PHAGS-PA LETTER GGA */ + [0xa866, 0xa866], /* PHAGS-PA LETTER EE */ + [0xa867, 0xa867], /* PHAGS-PA SUBJOINED LETTER WA */ + [0xa868, 0xa868], /* PHAGS-PA SUBJOINED LETTER YA */ + [0xa869, 0xa869], /* PHAGS-PA LETTER TTA */ + [0xa86a, 0xa86a], /* PHAGS-PA LETTER TTHA */ + [0xa86b, 0xa86b], /* PHAGS-PA LETTER DDA */ + [0xa86c, 0xa86c], /* PHAGS-PA LETTER NNA */ + [0xa86d, 0xa86d], /* PHAGS-PA LETTER ALTERNATE YA */ + [0xa86e, 0xa86e], /* PHAGS-PA LETTER VOICELESS SHA */ + [0xa86f, 0xa86f], /* PHAGS-PA LETTER VOICED HA */ + [0xa870, 0xa870], /* PHAGS-PA LETTER ASPIRATED FA */ + [0xa871, 0xa871], /* PHAGS-PA SUBJOINED LETTER RA */ + [0xa872, 0xa872], /* PHAGS-PA SUPERFIXED LETTER RA */ + [0xa873, 0xa873], /* PHAGS-PA LETTER CANDRABINDU */ + [0xa874, 0xa874], /* PHAGS-PA SINGLE HEAD MARK */ + [0xa875, 0xa875], /* PHAGS-PA DOUBLE HEAD MARK */ + [0xa876, 0xa876], /* PHAGS-PA MARK SHAD */ + [0xa877, 0xa877], /* PHAGS-PA MARK DOUBLE SHAD */ + [0xa878, 0xa878], + [0xa879, 0xa879], + [0xa87a, 0xa87a], + [0xa87b, 0xa87b], + [0xa87c, 0xa87c], + [0xa87d, 0xa87d], + [0xa87e, 0xa87e], + [0xa87f, 0xa87f], + [0xa880, 0xa880], /* SAURASHTRA SIGN ANUSVARA */ + [0xa881, 0xa881], /* SAURASHTRA SIGN VISARGA */ + [0xa882, 0xa882], /* SAURASHTRA LETTER A */ + [0xa883, 0xa883], /* SAURASHTRA LETTER AA */ + [0xa884, 0xa884], /* SAURASHTRA LETTER I */ + [0xa885, 0xa885], /* SAURASHTRA LETTER II */ + [0xa886, 0xa886], /* SAURASHTRA LETTER U */ + [0xa887, 0xa887], /* SAURASHTRA LETTER UU */ + [0xa888, 0xa888], /* SAURASHTRA LETTER VOCALIC R */ + [0xa889, 0xa889], /* SAURASHTRA LETTER VOCALIC RR */ + [0xa88a, 0xa88a], /* SAURASHTRA LETTER VOCALIC L */ + [0xa88b, 0xa88b], /* SAURASHTRA LETTER VOCALIC LL */ + [0xa88c, 0xa88c], /* SAURASHTRA LETTER E */ + [0xa88d, 0xa88d], /* SAURASHTRA LETTER EE */ + [0xa88e, 0xa88e], /* SAURASHTRA LETTER AI */ + [0xa88f, 0xa88f], /* SAURASHTRA LETTER O */ + [0xa890, 0xa890], /* SAURASHTRA LETTER OO */ + [0xa891, 0xa891], /* SAURASHTRA LETTER AU */ + [0xa892, 0xa892], /* SAURASHTRA LETTER KA */ + [0xa893, 0xa893], /* SAURASHTRA LETTER KHA */ + [0xa894, 0xa894], /* SAURASHTRA LETTER GA */ + [0xa895, 0xa895], /* SAURASHTRA LETTER GHA */ + [0xa896, 0xa896], /* SAURASHTRA LETTER NGA */ + [0xa897, 0xa897], /* SAURASHTRA LETTER CA */ + [0xa898, 0xa898], /* SAURASHTRA LETTER CHA */ + [0xa899, 0xa899], /* SAURASHTRA LETTER JA */ + [0xa89a, 0xa89a], /* SAURASHTRA LETTER JHA */ + [0xa89b, 0xa89b], /* SAURASHTRA LETTER NYA */ + [0xa89c, 0xa89c], /* SAURASHTRA LETTER TTA */ + [0xa89d, 0xa89d], /* SAURASHTRA LETTER TTHA */ + [0xa89e, 0xa89e], /* SAURASHTRA LETTER DDA */ + [0xa89f, 0xa89f], /* SAURASHTRA LETTER DDHA */ + [0xa8a0, 0xa8a0], /* SAURASHTRA LETTER NNA */ + [0xa8a1, 0xa8a1], /* SAURASHTRA LETTER TA */ + [0xa8a2, 0xa8a2], /* SAURASHTRA LETTER THA */ + [0xa8a3, 0xa8a3], /* SAURASHTRA LETTER DA */ + [0xa8a4, 0xa8a4], /* SAURASHTRA LETTER DHA */ + [0xa8a5, 0xa8a5], /* SAURASHTRA LETTER NA */ + [0xa8a6, 0xa8a6], /* SAURASHTRA LETTER PA */ + [0xa8a7, 0xa8a7], /* SAURASHTRA LETTER PHA */ + [0xa8a8, 0xa8a8], /* SAURASHTRA LETTER BA */ + [0xa8a9, 0xa8a9], /* SAURASHTRA LETTER BHA */ + [0xa8aa, 0xa8aa], /* SAURASHTRA LETTER MA */ + [0xa8ab, 0xa8ab], /* SAURASHTRA LETTER YA */ + [0xa8ac, 0xa8ac], /* SAURASHTRA LETTER RA */ + [0xa8ad, 0xa8ad], /* SAURASHTRA LETTER LA */ + [0xa8ae, 0xa8ae], /* SAURASHTRA LETTER VA */ + [0xa8af, 0xa8af], /* SAURASHTRA LETTER SHA */ + [0xa8b0, 0xa8b0], /* SAURASHTRA LETTER SSA */ + [0xa8b1, 0xa8b1], /* SAURASHTRA LETTER SA */ + [0xa8b2, 0xa8b2], /* SAURASHTRA LETTER HA */ + [0xa8b3, 0xa8b3], /* SAURASHTRA LETTER LLA */ + [0xa8b4, 0xa8b4], /* SAURASHTRA CONSONANT SIGN HAARU */ + [0xa8b5, 0xa8b5], /* SAURASHTRA VOWEL SIGN AA */ + [0xa8b6, 0xa8b6], /* SAURASHTRA VOWEL SIGN I */ + [0xa8b7, 0xa8b7], /* SAURASHTRA VOWEL SIGN II */ + [0xa8b8, 0xa8b8], /* SAURASHTRA VOWEL SIGN U */ + [0xa8b9, 0xa8b9], /* SAURASHTRA VOWEL SIGN UU */ + [0xa8ba, 0xa8ba], /* SAURASHTRA VOWEL SIGN VOCALIC R */ + [0xa8bb, 0xa8bb], /* SAURASHTRA VOWEL SIGN VOCALIC RR */ + [0xa8bc, 0xa8bc], /* SAURASHTRA VOWEL SIGN VOCALIC L */ + [0xa8bd, 0xa8bd], /* SAURASHTRA VOWEL SIGN VOCALIC LL */ + [0xa8be, 0xa8be], /* SAURASHTRA VOWEL SIGN E */ + [0xa8bf, 0xa8bf], /* SAURASHTRA VOWEL SIGN EE */ + [0xa8c0, 0xa8c0], /* SAURASHTRA VOWEL SIGN AI */ + [0xa8c1, 0xa8c1], /* SAURASHTRA VOWEL SIGN O */ + [0xa8c2, 0xa8c2], /* SAURASHTRA VOWEL SIGN OO */ + [0xa8c3, 0xa8c3], /* SAURASHTRA VOWEL SIGN AU */ + [0xa8c4, 0xa8c4], /* SAURASHTRA SIGN VIRAMA */ + [0xa8c5, 0xa8c5], /* SAURASHTRA SIGN CANDRABINDU */ + [0xa8c6, 0xa8c6], + [0xa8c7, 0xa8c7], + [0xa8c8, 0xa8c8], + [0xa8c9, 0xa8c9], + [0xa8ca, 0xa8ca], + [0xa8cb, 0xa8cb], + [0xa8cc, 0xa8cc], + [0xa8cd, 0xa8cd], + [0xa8ce, 0xa8ce], /* SAURASHTRA DANDA */ + [0xa8cf, 0xa8cf], /* SAURASHTRA DOUBLE DANDA */ + [0xa8d0, 0xa8d0], /* SAURASHTRA DIGIT ZERO */ + [0xa8d1, 0xa8d1], /* SAURASHTRA DIGIT ONE */ + [0xa8d2, 0xa8d2], /* SAURASHTRA DIGIT TWO */ + [0xa8d3, 0xa8d3], /* SAURASHTRA DIGIT THREE */ + [0xa8d4, 0xa8d4], /* SAURASHTRA DIGIT FOUR */ + [0xa8d5, 0xa8d5], /* SAURASHTRA DIGIT FIVE */ + [0xa8d6, 0xa8d6], /* SAURASHTRA DIGIT SIX */ + [0xa8d7, 0xa8d7], /* SAURASHTRA DIGIT SEVEN */ + [0xa8d8, 0xa8d8], /* SAURASHTRA DIGIT EIGHT */ + [0xa8d9, 0xa8d9], /* SAURASHTRA DIGIT NINE */ + [0xa8da, 0xa8da], + [0xa8db, 0xa8db], + [0xa8dc, 0xa8dc], + [0xa8dd, 0xa8dd], + [0xa8de, 0xa8de], + [0xa8df, 0xa8df], + [0xa8e0, 0xa8e0], /* COMBINING DEVANAGARI DIGIT ZERO */ + [0xa8e1, 0xa8e1], /* COMBINING DEVANAGARI DIGIT ONE */ + [0xa8e2, 0xa8e2], /* COMBINING DEVANAGARI DIGIT TWO */ + [0xa8e3, 0xa8e3], /* COMBINING DEVANAGARI DIGIT THREE */ + [0xa8e4, 0xa8e4], /* COMBINING DEVANAGARI DIGIT FOUR */ + [0xa8e5, 0xa8e5], /* COMBINING DEVANAGARI DIGIT FIVE */ + [0xa8e6, 0xa8e6], /* COMBINING DEVANAGARI DIGIT SIX */ + [0xa8e7, 0xa8e7], /* COMBINING DEVANAGARI DIGIT SEVEN */ + [0xa8e8, 0xa8e8], /* COMBINING DEVANAGARI DIGIT EIGHT */ + [0xa8e9, 0xa8e9], /* COMBINING DEVANAGARI DIGIT NINE */ + [0xa8ea, 0xa8ea], /* COMBINING DEVANAGARI LETTER A */ + [0xa8eb, 0xa8eb], /* COMBINING DEVANAGARI LETTER U */ + [0xa8ec, 0xa8ec], /* COMBINING DEVANAGARI LETTER KA */ + [0xa8ed, 0xa8ed], /* COMBINING DEVANAGARI LETTER NA */ + [0xa8ee, 0xa8ee], /* COMBINING DEVANAGARI LETTER PA */ + [0xa8ef, 0xa8ef], /* COMBINING DEVANAGARI LETTER RA */ + [0xa8f0, 0xa8f0], /* COMBINING DEVANAGARI LETTER VI */ + [0xa8f1, 0xa8f1], /* COMBINING DEVANAGARI SIGN AVAGRAHA */ + [0xa8f2, 0xa8f2], /* DEVANAGARI SIGN SPACING CANDRABINDU */ + [0xa8f3, 0xa8f3], /* DEVANAGARI SIGN CANDRABINDU VIRAMA */ + [0xa8f4, 0xa8f4], /* DEVANAGARI SIGN DOUBLE CANDRABINDU VIRAMA */ + [0xa8f5, 0xa8f5], /* DEVANAGARI SIGN CANDRABINDU TWO */ + [0xa8f6, 0xa8f6], /* DEVANAGARI SIGN CANDRABINDU THREE */ + [0xa8f7, 0xa8f7], /* DEVANAGARI SIGN CANDRABINDU AVAGRAHA */ + [0xa8f8, 0xa8f8], /* DEVANAGARI SIGN PUSHPIKA */ + [0xa8f9, 0xa8f9], /* DEVANAGARI GAP FILLER */ + [0xa8fa, 0xa8fa], /* DEVANAGARI CARET */ + [0xa8fb, 0xa8fb], /* DEVANAGARI HEADSTROKE */ + [0xa8fc, 0xa8fc], /* DEVANAGARI SIGN SIDDHAM */ + [0xa8fd, 0xa8fd], /* DEVANAGARI JAIN OM */ + [0xa8fe, 0xa8fe], + [0xa8ff, 0xa8ff], + [0xa900, 0xa900], /* KAYAH LI DIGIT ZERO */ + [0xa901, 0xa901], /* KAYAH LI DIGIT ONE */ + [0xa902, 0xa902], /* KAYAH LI DIGIT TWO */ + [0xa903, 0xa903], /* KAYAH LI DIGIT THREE */ + [0xa904, 0xa904], /* KAYAH LI DIGIT FOUR */ + [0xa905, 0xa905], /* KAYAH LI DIGIT FIVE */ + [0xa906, 0xa906], /* KAYAH LI DIGIT SIX */ + [0xa907, 0xa907], /* KAYAH LI DIGIT SEVEN */ + [0xa908, 0xa908], /* KAYAH LI DIGIT EIGHT */ + [0xa909, 0xa909], /* KAYAH LI DIGIT NINE */ + [0xa90a, 0xa90a], /* KAYAH LI LETTER KA */ + [0xa90b, 0xa90b], /* KAYAH LI LETTER KHA */ + [0xa90c, 0xa90c], /* KAYAH LI LETTER GA */ + [0xa90d, 0xa90d], /* KAYAH LI LETTER NGA */ + [0xa90e, 0xa90e], /* KAYAH LI LETTER SA */ + [0xa90f, 0xa90f], /* KAYAH LI LETTER SHA */ + [0xa910, 0xa910], /* KAYAH LI LETTER ZA */ + [0xa911, 0xa911], /* KAYAH LI LETTER NYA */ + [0xa912, 0xa912], /* KAYAH LI LETTER TA */ + [0xa913, 0xa913], /* KAYAH LI LETTER HTA */ + [0xa914, 0xa914], /* KAYAH LI LETTER NA */ + [0xa915, 0xa915], /* KAYAH LI LETTER PA */ + [0xa916, 0xa916], /* KAYAH LI LETTER PHA */ + [0xa917, 0xa917], /* KAYAH LI LETTER MA */ + [0xa918, 0xa918], /* KAYAH LI LETTER DA */ + [0xa919, 0xa919], /* KAYAH LI LETTER BA */ + [0xa91a, 0xa91a], /* KAYAH LI LETTER RA */ + [0xa91b, 0xa91b], /* KAYAH LI LETTER YA */ + [0xa91c, 0xa91c], /* KAYAH LI LETTER LA */ + [0xa91d, 0xa91d], /* KAYAH LI LETTER WA */ + [0xa91e, 0xa91e], /* KAYAH LI LETTER THA */ + [0xa91f, 0xa91f], /* KAYAH LI LETTER HA */ + [0xa920, 0xa920], /* KAYAH LI LETTER VA */ + [0xa921, 0xa921], /* KAYAH LI LETTER CA */ + [0xa922, 0xa922], /* KAYAH LI LETTER A */ + [0xa923, 0xa923], /* KAYAH LI LETTER OE */ + [0xa924, 0xa924], /* KAYAH LI LETTER I */ + [0xa925, 0xa925], /* KAYAH LI LETTER OO */ + [0xa926, 0xa926], /* KAYAH LI VOWEL UE */ + [0xa927, 0xa927], /* KAYAH LI VOWEL E */ + [0xa928, 0xa928], /* KAYAH LI VOWEL U */ + [0xa929, 0xa929], /* KAYAH LI VOWEL EE */ + [0xa92a, 0xa92a], /* KAYAH LI VOWEL O */ + [0xa92b, 0xa92b], /* KAYAH LI TONE PLOPHU */ + [0xa92c, 0xa92c], /* KAYAH LI TONE CALYA */ + [0xa92d, 0xa92d], /* KAYAH LI TONE CALYA PLOPHU */ + [0xa92e, 0xa92e], /* KAYAH LI SIGN CWI */ + [0xa92f, 0xa92f], /* KAYAH LI SIGN SHYA */ + [0xa930, 0xa930], /* REJANG LETTER KA */ + [0xa931, 0xa931], /* REJANG LETTER GA */ + [0xa932, 0xa932], /* REJANG LETTER NGA */ + [0xa933, 0xa933], /* REJANG LETTER TA */ + [0xa934, 0xa934], /* REJANG LETTER DA */ + [0xa935, 0xa935], /* REJANG LETTER NA */ + [0xa936, 0xa936], /* REJANG LETTER PA */ + [0xa937, 0xa937], /* REJANG LETTER BA */ + [0xa938, 0xa938], /* REJANG LETTER MA */ + [0xa939, 0xa939], /* REJANG LETTER CA */ + [0xa93a, 0xa93a], /* REJANG LETTER JA */ + [0xa93b, 0xa93b], /* REJANG LETTER NYA */ + [0xa93c, 0xa93c], /* REJANG LETTER SA */ + [0xa93d, 0xa93d], /* REJANG LETTER RA */ + [0xa93e, 0xa93e], /* REJANG LETTER LA */ + [0xa93f, 0xa93f], /* REJANG LETTER YA */ + [0xa940, 0xa940], /* REJANG LETTER WA */ + [0xa941, 0xa941], /* REJANG LETTER HA */ + [0xa942, 0xa942], /* REJANG LETTER MBA */ + [0xa943, 0xa943], /* REJANG LETTER NGGA */ + [0xa944, 0xa944], /* REJANG LETTER NDA */ + [0xa945, 0xa945], /* REJANG LETTER NYJA */ + [0xa946, 0xa946], /* REJANG LETTER A */ + [0xa947, 0xa947], /* REJANG VOWEL SIGN I */ + [0xa948, 0xa948], /* REJANG VOWEL SIGN U */ + [0xa949, 0xa949], /* REJANG VOWEL SIGN E */ + [0xa94a, 0xa94a], /* REJANG VOWEL SIGN AI */ + [0xa94b, 0xa94b], /* REJANG VOWEL SIGN O */ + [0xa94c, 0xa94c], /* REJANG VOWEL SIGN AU */ + [0xa94d, 0xa94d], /* REJANG VOWEL SIGN EU */ + [0xa94e, 0xa94e], /* REJANG VOWEL SIGN EA */ + [0xa94f, 0xa94f], /* REJANG CONSONANT SIGN NG */ + [0xa950, 0xa950], /* REJANG CONSONANT SIGN N */ + [0xa951, 0xa951], /* REJANG CONSONANT SIGN R */ + [0xa952, 0xa952], /* REJANG CONSONANT SIGN H */ + [0xa953, 0xa953], /* REJANG VIRAMA */ + [0xa954, 0xa954], + [0xa955, 0xa955], + [0xa956, 0xa956], + [0xa957, 0xa957], + [0xa958, 0xa958], + [0xa959, 0xa959], + [0xa95a, 0xa95a], + [0xa95b, 0xa95b], + [0xa95c, 0xa95c], + [0xa95d, 0xa95d], + [0xa95e, 0xa95e], + [0xa95f, 0xa95f], /* REJANG SECTION MARK */ + [0xa960, 0xa960], /* HANGUL CHOSEONG TIKEUT-MIEUM */ + [0xa961, 0xa961], /* HANGUL CHOSEONG TIKEUT-PIEUP */ + [0xa962, 0xa962], /* HANGUL CHOSEONG TIKEUT-SIOS */ + [0xa963, 0xa963], /* HANGUL CHOSEONG TIKEUT-CIEUC */ + [0xa964, 0xa964], /* HANGUL CHOSEONG RIEUL-KIYEOK */ + [0xa965, 0xa965], /* HANGUL CHOSEONG RIEUL-SSANGKIYEOK */ + [0xa966, 0xa966], /* HANGUL CHOSEONG RIEUL-TIKEUT */ + [0xa967, 0xa967], /* HANGUL CHOSEONG RIEUL-SSANGTIKEUT */ + [0xa968, 0xa968], /* HANGUL CHOSEONG RIEUL-MIEUM */ + [0xa969, 0xa969], /* HANGUL CHOSEONG RIEUL-PIEUP */ + [0xa96a, 0xa96a], /* HANGUL CHOSEONG RIEUL-SSANGPIEUP */ + [0xa96b, 0xa96b], /* HANGUL CHOSEONG RIEUL-KAPYEOUNPIEUP */ + [0xa96c, 0xa96c], /* HANGUL CHOSEONG RIEUL-SIOS */ + [0xa96d, 0xa96d], /* HANGUL CHOSEONG RIEUL-CIEUC */ + [0xa96e, 0xa96e], /* HANGUL CHOSEONG RIEUL-KHIEUKH */ + [0xa96f, 0xa96f], /* HANGUL CHOSEONG MIEUM-KIYEOK */ + [0xa970, 0xa970], /* HANGUL CHOSEONG MIEUM-TIKEUT */ + [0xa971, 0xa971], /* HANGUL CHOSEONG MIEUM-SIOS */ + [0xa972, 0xa972], /* HANGUL CHOSEONG PIEUP-SIOS-THIEUTH */ + [0xa973, 0xa973], /* HANGUL CHOSEONG PIEUP-KHIEUKH */ + [0xa974, 0xa974], /* HANGUL CHOSEONG PIEUP-HIEUH */ + [0xa975, 0xa975], /* HANGUL CHOSEONG SSANGSIOS-PIEUP */ + [0xa976, 0xa976], /* HANGUL CHOSEONG IEUNG-RIEUL */ + [0xa977, 0xa977], /* HANGUL CHOSEONG IEUNG-HIEUH */ + [0xa978, 0xa978], /* HANGUL CHOSEONG SSANGCIEUC-HIEUH */ + [0xa979, 0xa979], /* HANGUL CHOSEONG SSANGTHIEUTH */ + [0xa97a, 0xa97a], /* HANGUL CHOSEONG PHIEUPH-HIEUH */ + [0xa97b, 0xa97b], /* HANGUL CHOSEONG HIEUH-SIOS */ + [0xa97c, 0xa97c], /* HANGUL CHOSEONG SSANGYEORINHIEUH */ + [0xa97d, 0xa97d], + [0xa97e, 0xa97e], + [0xa97f, 0xa97f], + [0xa980, 0xa980], /* JAVANESE SIGN PANYANGGA */ + [0xa981, 0xa981], /* JAVANESE SIGN CECAK */ + [0xa982, 0xa982], /* JAVANESE SIGN LAYAR */ + [0xa983, 0xa983], /* JAVANESE SIGN WIGNYAN */ + [0xa984, 0xa984], /* JAVANESE LETTER A */ + [0xa985, 0xa985], /* JAVANESE LETTER I KAWI */ + [0xa986, 0xa986], /* JAVANESE LETTER I */ + [0xa987, 0xa987], /* JAVANESE LETTER II */ + [0xa988, 0xa988], /* JAVANESE LETTER U */ + [0xa989, 0xa989], /* JAVANESE LETTER PA CEREK */ + [0xa98a, 0xa98a], /* JAVANESE LETTER NGA LELET */ + [0xa98b, 0xa98b], /* JAVANESE LETTER NGA LELET RASWADI */ + [0xa98c, 0xa98c], /* JAVANESE LETTER E */ + [0xa98d, 0xa98d], /* JAVANESE LETTER AI */ + [0xa98e, 0xa98e], /* JAVANESE LETTER O */ + [0xa98f, 0xa98f], /* JAVANESE LETTER KA */ + [0xa990, 0xa990], /* JAVANESE LETTER KA SASAK */ + [0xa991, 0xa991], /* JAVANESE LETTER KA MURDA */ + [0xa992, 0xa992], /* JAVANESE LETTER GA */ + [0xa993, 0xa993], /* JAVANESE LETTER GA MURDA */ + [0xa994, 0xa994], /* JAVANESE LETTER NGA */ + [0xa995, 0xa995], /* JAVANESE LETTER CA */ + [0xa996, 0xa996], /* JAVANESE LETTER CA MURDA */ + [0xa997, 0xa997], /* JAVANESE LETTER JA */ + [0xa998, 0xa998], /* JAVANESE LETTER NYA MURDA */ + [0xa999, 0xa999], /* JAVANESE LETTER JA MAHAPRANA */ + [0xa99a, 0xa99a], /* JAVANESE LETTER NYA */ + [0xa99b, 0xa99b], /* JAVANESE LETTER TTA */ + [0xa99c, 0xa99c], /* JAVANESE LETTER TTA MAHAPRANA */ + [0xa99d, 0xa99d], /* JAVANESE LETTER DDA */ + [0xa99e, 0xa99e], /* JAVANESE LETTER DDA MAHAPRANA */ + [0xa99f, 0xa99f], /* JAVANESE LETTER NA MURDA */ + [0xa9a0, 0xa9a0], /* JAVANESE LETTER TA */ + [0xa9a1, 0xa9a1], /* JAVANESE LETTER TA MURDA */ + [0xa9a2, 0xa9a2], /* JAVANESE LETTER DA */ + [0xa9a3, 0xa9a3], /* JAVANESE LETTER DA MAHAPRANA */ + [0xa9a4, 0xa9a4], /* JAVANESE LETTER NA */ + [0xa9a5, 0xa9a5], /* JAVANESE LETTER PA */ + [0xa9a6, 0xa9a6], /* JAVANESE LETTER PA MURDA */ + [0xa9a7, 0xa9a7], /* JAVANESE LETTER BA */ + [0xa9a8, 0xa9a8], /* JAVANESE LETTER BA MURDA */ + [0xa9a9, 0xa9a9], /* JAVANESE LETTER MA */ + [0xa9aa, 0xa9aa], /* JAVANESE LETTER YA */ + [0xa9ab, 0xa9ab], /* JAVANESE LETTER RA */ + [0xa9ac, 0xa9ac], /* JAVANESE LETTER RA AGUNG */ + [0xa9ad, 0xa9ad], /* JAVANESE LETTER LA */ + [0xa9ae, 0xa9ae], /* JAVANESE LETTER WA */ + [0xa9af, 0xa9af], /* JAVANESE LETTER SA MURDA */ + [0xa9b0, 0xa9b0], /* JAVANESE LETTER SA MAHAPRANA */ + [0xa9b1, 0xa9b1], /* JAVANESE LETTER SA */ + [0xa9b2, 0xa9b2], /* JAVANESE LETTER HA */ + [0xa9b3, 0xa9b3], /* JAVANESE SIGN CECAK TELU */ + [0xa9b4, 0xa9b4], /* JAVANESE VOWEL SIGN TARUNG */ + [0xa9b5, 0xa9b5], /* JAVANESE VOWEL SIGN TOLONG */ + [0xa9b6, 0xa9b6], /* JAVANESE VOWEL SIGN WULU */ + [0xa9b7, 0xa9b7], /* JAVANESE VOWEL SIGN WULU MELIK */ + [0xa9b8, 0xa9b8], /* JAVANESE VOWEL SIGN SUKU */ + [0xa9b9, 0xa9b9], /* JAVANESE VOWEL SIGN SUKU MENDUT */ + [0xa9ba, 0xa9ba], /* JAVANESE VOWEL SIGN TALING */ + [0xa9bb, 0xa9bb], /* JAVANESE VOWEL SIGN DIRGA MURE */ + [0xa9bc, 0xa9bc], /* JAVANESE VOWEL SIGN PEPET */ + [0xa9bd, 0xa9bd], /* JAVANESE CONSONANT SIGN KERET */ + [0xa9be, 0xa9be], /* JAVANESE CONSONANT SIGN PENGKAL */ + [0xa9bf, 0xa9bf], /* JAVANESE CONSONANT SIGN CAKRA */ + [0xa9c0, 0xa9c0], /* JAVANESE PANGKON */ + [0xa9c1, 0xa9c1], /* JAVANESE LEFT RERENGGAN */ + [0xa9c2, 0xa9c2], /* JAVANESE RIGHT RERENGGAN */ + [0xa9c3, 0xa9c3], /* JAVANESE PADA ANDAP */ + [0xa9c4, 0xa9c4], /* JAVANESE PADA MADYA */ + [0xa9c5, 0xa9c5], /* JAVANESE PADA LUHUR */ + [0xa9c6, 0xa9c6], /* JAVANESE PADA WINDU */ + [0xa9c7, 0xa9c7], /* JAVANESE PADA PANGKAT */ + [0xa9c8, 0xa9c8], /* JAVANESE PADA LINGSA */ + [0xa9c9, 0xa9c9], /* JAVANESE PADA LUNGSI */ + [0xa9ca, 0xa9ca], /* JAVANESE PADA ADEG */ + [0xa9cb, 0xa9cb], /* JAVANESE PADA ADEG ADEG */ + [0xa9cc, 0xa9cc], /* JAVANESE PADA PISELEH */ + [0xa9cd, 0xa9cd], /* JAVANESE TURNED PADA PISELEH */ + [0xa9ce, 0xa9ce], + [0xa9cf, 0xa9cf], /* JAVANESE PANGRANGKEP */ + [0xa9d0, 0xa9d0], /* JAVANESE DIGIT ZERO */ + [0xa9d1, 0xa9d1], /* JAVANESE DIGIT ONE */ + [0xa9d2, 0xa9d2], /* JAVANESE DIGIT TWO */ + [0xa9d3, 0xa9d3], /* JAVANESE DIGIT THREE */ + [0xa9d4, 0xa9d4], /* JAVANESE DIGIT FOUR */ + [0xa9d5, 0xa9d5], /* JAVANESE DIGIT FIVE */ + [0xa9d6, 0xa9d6], /* JAVANESE DIGIT SIX */ + [0xa9d7, 0xa9d7], /* JAVANESE DIGIT SEVEN */ + [0xa9d8, 0xa9d8], /* JAVANESE DIGIT EIGHT */ + [0xa9d9, 0xa9d9], /* JAVANESE DIGIT NINE */ + [0xa9da, 0xa9da], + [0xa9db, 0xa9db], + [0xa9dc, 0xa9dc], + [0xa9dd, 0xa9dd], + [0xa9de, 0xa9de], /* JAVANESE PADA TIRTA TUMETES */ + [0xa9df, 0xa9df], /* JAVANESE PADA ISEN-ISEN */ + [0xa9e0, 0xa9e0], /* MYANMAR LETTER SHAN GHA */ + [0xa9e1, 0xa9e1], /* MYANMAR LETTER SHAN CHA */ + [0xa9e2, 0xa9e2], /* MYANMAR LETTER SHAN JHA */ + [0xa9e3, 0xa9e3], /* MYANMAR LETTER SHAN NNA */ + [0xa9e4, 0xa9e4], /* MYANMAR LETTER SHAN BHA */ + [0xa9e5, 0xa9e5], /* MYANMAR SIGN SHAN SAW */ + [0xa9e6, 0xa9e6], /* MYANMAR MODIFIER LETTER SHAN REDUPLICATION */ + [0xa9e7, 0xa9e7], /* MYANMAR LETTER TAI LAING NYA */ + [0xa9e8, 0xa9e8], /* MYANMAR LETTER TAI LAING FA */ + [0xa9e9, 0xa9e9], /* MYANMAR LETTER TAI LAING GA */ + [0xa9ea, 0xa9ea], /* MYANMAR LETTER TAI LAING GHA */ + [0xa9eb, 0xa9eb], /* MYANMAR LETTER TAI LAING JA */ + [0xa9ec, 0xa9ec], /* MYANMAR LETTER TAI LAING JHA */ + [0xa9ed, 0xa9ed], /* MYANMAR LETTER TAI LAING DDA */ + [0xa9ee, 0xa9ee], /* MYANMAR LETTER TAI LAING DDHA */ + [0xa9ef, 0xa9ef], /* MYANMAR LETTER TAI LAING NNA */ + [0xa9f0, 0xa9f0], /* MYANMAR TAI LAING DIGIT ZERO */ + [0xa9f1, 0xa9f1], /* MYANMAR TAI LAING DIGIT ONE */ + [0xa9f2, 0xa9f2], /* MYANMAR TAI LAING DIGIT TWO */ + [0xa9f3, 0xa9f3], /* MYANMAR TAI LAING DIGIT THREE */ + [0xa9f4, 0xa9f4], /* MYANMAR TAI LAING DIGIT FOUR */ + [0xa9f5, 0xa9f5], /* MYANMAR TAI LAING DIGIT FIVE */ + [0xa9f6, 0xa9f6], /* MYANMAR TAI LAING DIGIT SIX */ + [0xa9f7, 0xa9f7], /* MYANMAR TAI LAING DIGIT SEVEN */ + [0xa9f8, 0xa9f8], /* MYANMAR TAI LAING DIGIT EIGHT */ + [0xa9f9, 0xa9f9], /* MYANMAR TAI LAING DIGIT NINE */ + [0xa9fa, 0xa9fa], /* MYANMAR LETTER TAI LAING LLA */ + [0xa9fb, 0xa9fb], /* MYANMAR LETTER TAI LAING DA */ + [0xa9fc, 0xa9fc], /* MYANMAR LETTER TAI LAING DHA */ + [0xa9fd, 0xa9fd], /* MYANMAR LETTER TAI LAING BA */ + [0xa9fe, 0xa9fe], /* MYANMAR LETTER TAI LAING BHA */ + [0xa9ff, 0xa9ff], + [0xaa00, 0xaa00], /* CHAM LETTER A */ + [0xaa01, 0xaa01], /* CHAM LETTER I */ + [0xaa02, 0xaa02], /* CHAM LETTER U */ + [0xaa03, 0xaa03], /* CHAM LETTER E */ + [0xaa04, 0xaa04], /* CHAM LETTER AI */ + [0xaa05, 0xaa05], /* CHAM LETTER O */ + [0xaa06, 0xaa06], /* CHAM LETTER KA */ + [0xaa07, 0xaa07], /* CHAM LETTER KHA */ + [0xaa08, 0xaa08], /* CHAM LETTER GA */ + [0xaa09, 0xaa09], /* CHAM LETTER GHA */ + [0xaa0a, 0xaa0a], /* CHAM LETTER NGUE */ + [0xaa0b, 0xaa0b], /* CHAM LETTER NGA */ + [0xaa0c, 0xaa0c], /* CHAM LETTER CHA */ + [0xaa0d, 0xaa0d], /* CHAM LETTER CHHA */ + [0xaa0e, 0xaa0e], /* CHAM LETTER JA */ + [0xaa0f, 0xaa0f], /* CHAM LETTER JHA */ + [0xaa10, 0xaa10], /* CHAM LETTER NHUE */ + [0xaa11, 0xaa11], /* CHAM LETTER NHA */ + [0xaa12, 0xaa12], /* CHAM LETTER NHJA */ + [0xaa13, 0xaa13], /* CHAM LETTER TA */ + [0xaa14, 0xaa14], /* CHAM LETTER THA */ + [0xaa15, 0xaa15], /* CHAM LETTER DA */ + [0xaa16, 0xaa16], /* CHAM LETTER DHA */ + [0xaa17, 0xaa17], /* CHAM LETTER NUE */ + [0xaa18, 0xaa18], /* CHAM LETTER NA */ + [0xaa19, 0xaa19], /* CHAM LETTER DDA */ + [0xaa1a, 0xaa1a], /* CHAM LETTER PA */ + [0xaa1b, 0xaa1b], /* CHAM LETTER PPA */ + [0xaa1c, 0xaa1c], /* CHAM LETTER PHA */ + [0xaa1d, 0xaa1d], /* CHAM LETTER BA */ + [0xaa1e, 0xaa1e], /* CHAM LETTER BHA */ + [0xaa1f, 0xaa1f], /* CHAM LETTER MUE */ + [0xaa20, 0xaa20], /* CHAM LETTER MA */ + [0xaa21, 0xaa21], /* CHAM LETTER BBA */ + [0xaa22, 0xaa22], /* CHAM LETTER YA */ + [0xaa23, 0xaa23], /* CHAM LETTER RA */ + [0xaa24, 0xaa24], /* CHAM LETTER LA */ + [0xaa25, 0xaa25], /* CHAM LETTER VA */ + [0xaa26, 0xaa26], /* CHAM LETTER SSA */ + [0xaa27, 0xaa27], /* CHAM LETTER SA */ + [0xaa28, 0xaa28], /* CHAM LETTER HA */ + [0xaa29, 0xaa29], /* CHAM VOWEL SIGN AA */ + [0xaa2a, 0xaa2a], /* CHAM VOWEL SIGN I */ + [0xaa2b, 0xaa2b], /* CHAM VOWEL SIGN II */ + [0xaa2c, 0xaa2c], /* CHAM VOWEL SIGN EI */ + [0xaa2d, 0xaa2d], /* CHAM VOWEL SIGN U */ + [0xaa2e, 0xaa2e], /* CHAM VOWEL SIGN OE */ + [0xaa2f, 0xaa2f], /* CHAM VOWEL SIGN O */ + [0xaa30, 0xaa30], /* CHAM VOWEL SIGN AI */ + [0xaa31, 0xaa31], /* CHAM VOWEL SIGN AU */ + [0xaa32, 0xaa32], /* CHAM VOWEL SIGN UE */ + [0xaa33, 0xaa33], /* CHAM CONSONANT SIGN YA */ + [0xaa34, 0xaa34], /* CHAM CONSONANT SIGN RA */ + [0xaa35, 0xaa35], /* CHAM CONSONANT SIGN LA */ + [0xaa36, 0xaa36], /* CHAM CONSONANT SIGN WA */ + [0xaa37, 0xaa37], + [0xaa38, 0xaa38], + [0xaa39, 0xaa39], + [0xaa3a, 0xaa3a], + [0xaa3b, 0xaa3b], + [0xaa3c, 0xaa3c], + [0xaa3d, 0xaa3d], + [0xaa3e, 0xaa3e], + [0xaa3f, 0xaa3f], + [0xaa40, 0xaa40], /* CHAM LETTER FINAL K */ + [0xaa41, 0xaa41], /* CHAM LETTER FINAL G */ + [0xaa42, 0xaa42], /* CHAM LETTER FINAL NG */ + [0xaa43, 0xaa43], /* CHAM CONSONANT SIGN FINAL NG */ + [0xaa44, 0xaa44], /* CHAM LETTER FINAL CH */ + [0xaa45, 0xaa45], /* CHAM LETTER FINAL T */ + [0xaa46, 0xaa46], /* CHAM LETTER FINAL N */ + [0xaa47, 0xaa47], /* CHAM LETTER FINAL P */ + [0xaa48, 0xaa48], /* CHAM LETTER FINAL Y */ + [0xaa49, 0xaa49], /* CHAM LETTER FINAL R */ + [0xaa4a, 0xaa4a], /* CHAM LETTER FINAL L */ + [0xaa4b, 0xaa4b], /* CHAM LETTER FINAL SS */ + [0xaa4c, 0xaa4c], /* CHAM CONSONANT SIGN FINAL M */ + [0xaa4d, 0xaa4d], /* CHAM CONSONANT SIGN FINAL H */ + [0xaa4e, 0xaa4e], + [0xaa4f, 0xaa4f], + [0xaa50, 0xaa50], /* CHAM DIGIT ZERO */ + [0xaa51, 0xaa51], /* CHAM DIGIT ONE */ + [0xaa52, 0xaa52], /* CHAM DIGIT TWO */ + [0xaa53, 0xaa53], /* CHAM DIGIT THREE */ + [0xaa54, 0xaa54], /* CHAM DIGIT FOUR */ + [0xaa55, 0xaa55], /* CHAM DIGIT FIVE */ + [0xaa56, 0xaa56], /* CHAM DIGIT SIX */ + [0xaa57, 0xaa57], /* CHAM DIGIT SEVEN */ + [0xaa58, 0xaa58], /* CHAM DIGIT EIGHT */ + [0xaa59, 0xaa59], /* CHAM DIGIT NINE */ + [0xaa5a, 0xaa5a], + [0xaa5b, 0xaa5b], + [0xaa5c, 0xaa5c], /* CHAM PUNCTUATION SPIRAL */ + [0xaa5d, 0xaa5d], /* CHAM PUNCTUATION DANDA */ + [0xaa5e, 0xaa5e], /* CHAM PUNCTUATION DOUBLE DANDA */ + [0xaa5f, 0xaa5f], /* CHAM PUNCTUATION TRIPLE DANDA */ + [0xaa60, 0xaa60], /* MYANMAR LETTER KHAMTI GA */ + [0xaa61, 0xaa61], /* MYANMAR LETTER KHAMTI CA */ + [0xaa62, 0xaa62], /* MYANMAR LETTER KHAMTI CHA */ + [0xaa63, 0xaa63], /* MYANMAR LETTER KHAMTI JA */ + [0xaa64, 0xaa64], /* MYANMAR LETTER KHAMTI JHA */ + [0xaa65, 0xaa65], /* MYANMAR LETTER KHAMTI NYA */ + [0xaa66, 0xaa66], /* MYANMAR LETTER KHAMTI TTA */ + [0xaa67, 0xaa67], /* MYANMAR LETTER KHAMTI TTHA */ + [0xaa68, 0xaa68], /* MYANMAR LETTER KHAMTI DDA */ + [0xaa69, 0xaa69], /* MYANMAR LETTER KHAMTI DDHA */ + [0xaa6a, 0xaa6a], /* MYANMAR LETTER KHAMTI DHA */ + [0xaa6b, 0xaa6b], /* MYANMAR LETTER KHAMTI NA */ + [0xaa6c, 0xaa6c], /* MYANMAR LETTER KHAMTI SA */ + [0xaa6d, 0xaa6d], /* MYANMAR LETTER KHAMTI HA */ + [0xaa6e, 0xaa6e], /* MYANMAR LETTER KHAMTI HHA */ + [0xaa6f, 0xaa6f], /* MYANMAR LETTER KHAMTI FA */ + [0xaa70, 0xaa70], /* MYANMAR MODIFIER LETTER KHAMTI REDUPLICATION */ + [0xaa71, 0xaa71], /* MYANMAR LETTER KHAMTI XA */ + [0xaa72, 0xaa72], /* MYANMAR LETTER KHAMTI ZA */ + [0xaa73, 0xaa73], /* MYANMAR LETTER KHAMTI RA */ + [0xaa74, 0xaa74], /* MYANMAR LOGOGRAM KHAMTI OAY */ + [0xaa75, 0xaa75], /* MYANMAR LOGOGRAM KHAMTI QN */ + [0xaa76, 0xaa76], /* MYANMAR LOGOGRAM KHAMTI HM */ + [0xaa77, 0xaa77], /* MYANMAR SYMBOL AITON EXCLAMATION */ + [0xaa78, 0xaa78], /* MYANMAR SYMBOL AITON ONE */ + [0xaa79, 0xaa79], /* MYANMAR SYMBOL AITON TWO */ + [0xaa7a, 0xaa7a], /* MYANMAR LETTER AITON RA */ + [0xaa7b, 0xaa7b], /* MYANMAR SIGN PAO KAREN TONE */ + [0xaa7c, 0xaa7c], /* MYANMAR SIGN TAI LAING TONE-2 */ + [0xaa7d, 0xaa7d], /* MYANMAR SIGN TAI LAING TONE-5 */ + [0xaa7e, 0xaa7e], /* MYANMAR LETTER SHWE PALAUNG CHA */ + [0xaa7f, 0xaa7f], /* MYANMAR LETTER SHWE PALAUNG SHA */ + [0xaa80, 0xaa80], /* TAI VIET LETTER LOW KO */ + [0xaa81, 0xaa81], /* TAI VIET LETTER HIGH KO */ + [0xaa82, 0xaa82], /* TAI VIET LETTER LOW KHO */ + [0xaa83, 0xaa83], /* TAI VIET LETTER HIGH KHO */ + [0xaa84, 0xaa84], /* TAI VIET LETTER LOW KHHO */ + [0xaa85, 0xaa85], /* TAI VIET LETTER HIGH KHHO */ + [0xaa86, 0xaa86], /* TAI VIET LETTER LOW GO */ + [0xaa87, 0xaa87], /* TAI VIET LETTER HIGH GO */ + [0xaa88, 0xaa88], /* TAI VIET LETTER LOW NGO */ + [0xaa89, 0xaa89], /* TAI VIET LETTER HIGH NGO */ + [0xaa8a, 0xaa8a], /* TAI VIET LETTER LOW CO */ + [0xaa8b, 0xaa8b], /* TAI VIET LETTER HIGH CO */ + [0xaa8c, 0xaa8c], /* TAI VIET LETTER LOW CHO */ + [0xaa8d, 0xaa8d], /* TAI VIET LETTER HIGH CHO */ + [0xaa8e, 0xaa8e], /* TAI VIET LETTER LOW SO */ + [0xaa8f, 0xaa8f], /* TAI VIET LETTER HIGH SO */ + [0xaa90, 0xaa90], /* TAI VIET LETTER LOW NYO */ + [0xaa91, 0xaa91], /* TAI VIET LETTER HIGH NYO */ + [0xaa92, 0xaa92], /* TAI VIET LETTER LOW DO */ + [0xaa93, 0xaa93], /* TAI VIET LETTER HIGH DO */ + [0xaa94, 0xaa94], /* TAI VIET LETTER LOW TO */ + [0xaa95, 0xaa95], /* TAI VIET LETTER HIGH TO */ + [0xaa96, 0xaa96], /* TAI VIET LETTER LOW THO */ + [0xaa97, 0xaa97], /* TAI VIET LETTER HIGH THO */ + [0xaa98, 0xaa98], /* TAI VIET LETTER LOW NO */ + [0xaa99, 0xaa99], /* TAI VIET LETTER HIGH NO */ + [0xaa9a, 0xaa9a], /* TAI VIET LETTER LOW BO */ + [0xaa9b, 0xaa9b], /* TAI VIET LETTER HIGH BO */ + [0xaa9c, 0xaa9c], /* TAI VIET LETTER LOW PO */ + [0xaa9d, 0xaa9d], /* TAI VIET LETTER HIGH PO */ + [0xaa9e, 0xaa9e], /* TAI VIET LETTER LOW PHO */ + [0xaa9f, 0xaa9f], /* TAI VIET LETTER HIGH PHO */ + [0xaaa0, 0xaaa0], /* TAI VIET LETTER LOW FO */ + [0xaaa1, 0xaaa1], /* TAI VIET LETTER HIGH FO */ + [0xaaa2, 0xaaa2], /* TAI VIET LETTER LOW MO */ + [0xaaa3, 0xaaa3], /* TAI VIET LETTER HIGH MO */ + [0xaaa4, 0xaaa4], /* TAI VIET LETTER LOW YO */ + [0xaaa5, 0xaaa5], /* TAI VIET LETTER HIGH YO */ + [0xaaa6, 0xaaa6], /* TAI VIET LETTER LOW RO */ + [0xaaa7, 0xaaa7], /* TAI VIET LETTER HIGH RO */ + [0xaaa8, 0xaaa8], /* TAI VIET LETTER LOW LO */ + [0xaaa9, 0xaaa9], /* TAI VIET LETTER HIGH LO */ + [0xaaaa, 0xaaaa], /* TAI VIET LETTER LOW VO */ + [0xaaab, 0xaaab], /* TAI VIET LETTER HIGH VO */ + [0xaaac, 0xaaac], /* TAI VIET LETTER LOW HO */ + [0xaaad, 0xaaad], /* TAI VIET LETTER HIGH HO */ + [0xaaae, 0xaaae], /* TAI VIET LETTER LOW O */ + [0xaaaf, 0xaaaf], /* TAI VIET LETTER HIGH O */ + [0xaab0, 0xaab0], /* TAI VIET MAI KANG */ + [0xaab1, 0xaab1], /* TAI VIET VOWEL AA */ + [0xaab2, 0xaab2], /* TAI VIET VOWEL I */ + [0xaab3, 0xaab3], /* TAI VIET VOWEL UE */ + [0xaab4, 0xaab4], /* TAI VIET VOWEL U */ + [0xaab5, 0xaab5], /* TAI VIET VOWEL E */ + [0xaab6, 0xaab6], /* TAI VIET VOWEL O */ + [0xaab7, 0xaab7], /* TAI VIET MAI KHIT */ + [0xaab8, 0xaab8], /* TAI VIET VOWEL IA */ + [0xaab9, 0xaab9], /* TAI VIET VOWEL UEA */ + [0xaaba, 0xaaba], /* TAI VIET VOWEL UA */ + [0xaabb, 0xaabb], /* TAI VIET VOWEL AUE */ + [0xaabc, 0xaabc], /* TAI VIET VOWEL AY */ + [0xaabd, 0xaabd], /* TAI VIET VOWEL AN */ + [0xaabe, 0xaabe], /* TAI VIET VOWEL AM */ + [0xaabf, 0xaabf], /* TAI VIET TONE MAI EK */ + [0xaac0, 0xaac0], /* TAI VIET TONE MAI NUENG */ + [0xaac1, 0xaac1], /* TAI VIET TONE MAI THO */ + [0xaac2, 0xaac2], /* TAI VIET TONE MAI SONG */ + [0xaac3, 0xaac3], + [0xaac4, 0xaac4], + [0xaac5, 0xaac5], + [0xaac6, 0xaac6], + [0xaac7, 0xaac7], + [0xaac8, 0xaac8], + [0xaac9, 0xaac9], + [0xaaca, 0xaaca], + [0xaacb, 0xaacb], + [0xaacc, 0xaacc], + [0xaacd, 0xaacd], + [0xaace, 0xaace], + [0xaacf, 0xaacf], + [0xaad0, 0xaad0], + [0xaad1, 0xaad1], + [0xaad2, 0xaad2], + [0xaad3, 0xaad3], + [0xaad4, 0xaad4], + [0xaad5, 0xaad5], + [0xaad6, 0xaad6], + [0xaad7, 0xaad7], + [0xaad8, 0xaad8], + [0xaad9, 0xaad9], + [0xaada, 0xaada], + [0xaadb, 0xaadb], /* TAI VIET SYMBOL KON */ + [0xaadc, 0xaadc], /* TAI VIET SYMBOL NUENG */ + [0xaadd, 0xaadd], /* TAI VIET SYMBOL SAM */ + [0xaade, 0xaade], /* TAI VIET SYMBOL HO HOI */ + [0xaadf, 0xaadf], /* TAI VIET SYMBOL KOI KOI */ + [0xaae0, 0xaae0], /* MEETEI MAYEK LETTER E */ + [0xaae1, 0xaae1], /* MEETEI MAYEK LETTER O */ + [0xaae2, 0xaae2], /* MEETEI MAYEK LETTER CHA */ + [0xaae3, 0xaae3], /* MEETEI MAYEK LETTER NYA */ + [0xaae4, 0xaae4], /* MEETEI MAYEK LETTER TTA */ + [0xaae5, 0xaae5], /* MEETEI MAYEK LETTER TTHA */ + [0xaae6, 0xaae6], /* MEETEI MAYEK LETTER DDA */ + [0xaae7, 0xaae7], /* MEETEI MAYEK LETTER DDHA */ + [0xaae8, 0xaae8], /* MEETEI MAYEK LETTER NNA */ + [0xaae9, 0xaae9], /* MEETEI MAYEK LETTER SHA */ + [0xaaea, 0xaaea], /* MEETEI MAYEK LETTER SSA */ + [0xaaeb, 0xaaeb], /* MEETEI MAYEK VOWEL SIGN II */ + [0xaaec, 0xaaec], /* MEETEI MAYEK VOWEL SIGN UU */ + [0xaaed, 0xaaed], /* MEETEI MAYEK VOWEL SIGN AAI */ + [0xaaee, 0xaaee], /* MEETEI MAYEK VOWEL SIGN AU */ + [0xaaef, 0xaaef], /* MEETEI MAYEK VOWEL SIGN AAU */ + [0xaaf0, 0xaaf0], /* MEETEI MAYEK CHEIKHAN */ + [0xaaf1, 0xaaf1], /* MEETEI MAYEK AHANG KHUDAM */ + [0xaaf2, 0xaaf2], /* MEETEI MAYEK ANJI */ + [0xaaf3, 0xaaf3], /* MEETEI MAYEK SYLLABLE REPETITION MARK */ + [0xaaf4, 0xaaf4], /* MEETEI MAYEK WORD REPETITION MARK */ + [0xaaf5, 0xaaf5], /* MEETEI MAYEK VOWEL SIGN VISARGA */ + [0xaaf6, 0xaaf6], /* MEETEI MAYEK VIRAMA */ + [0xaaf7, 0xaaf7], + [0xaaf8, 0xaaf8], + [0xaaf9, 0xaaf9], + [0xaafa, 0xaafa], + [0xaafb, 0xaafb], + [0xaafc, 0xaafc], + [0xaafd, 0xaafd], + [0xaafe, 0xaafe], + [0xaaff, 0xaaff], + [0xab00, 0xab00], + [0xab01, 0xab01], /* ETHIOPIC SYLLABLE TTHU */ + [0xab02, 0xab02], /* ETHIOPIC SYLLABLE TTHI */ + [0xab03, 0xab03], /* ETHIOPIC SYLLABLE TTHAA */ + [0xab04, 0xab04], /* ETHIOPIC SYLLABLE TTHEE */ + [0xab05, 0xab05], /* ETHIOPIC SYLLABLE TTHE */ + [0xab06, 0xab06], /* ETHIOPIC SYLLABLE TTHO */ + [0xab07, 0xab07], + [0xab08, 0xab08], + [0xab09, 0xab09], /* ETHIOPIC SYLLABLE DDHU */ + [0xab0a, 0xab0a], /* ETHIOPIC SYLLABLE DDHI */ + [0xab0b, 0xab0b], /* ETHIOPIC SYLLABLE DDHAA */ + [0xab0c, 0xab0c], /* ETHIOPIC SYLLABLE DDHEE */ + [0xab0d, 0xab0d], /* ETHIOPIC SYLLABLE DDHE */ + [0xab0e, 0xab0e], /* ETHIOPIC SYLLABLE DDHO */ + [0xab0f, 0xab0f], + [0xab10, 0xab10], + [0xab11, 0xab11], /* ETHIOPIC SYLLABLE DZU */ + [0xab12, 0xab12], /* ETHIOPIC SYLLABLE DZI */ + [0xab13, 0xab13], /* ETHIOPIC SYLLABLE DZAA */ + [0xab14, 0xab14], /* ETHIOPIC SYLLABLE DZEE */ + [0xab15, 0xab15], /* ETHIOPIC SYLLABLE DZE */ + [0xab16, 0xab16], /* ETHIOPIC SYLLABLE DZO */ + [0xab17, 0xab17], + [0xab18, 0xab18], + [0xab19, 0xab19], + [0xab1a, 0xab1a], + [0xab1b, 0xab1b], + [0xab1c, 0xab1c], + [0xab1d, 0xab1d], + [0xab1e, 0xab1e], + [0xab1f, 0xab1f], + [0xab20, 0xab20], /* ETHIOPIC SYLLABLE CCHHA */ + [0xab21, 0xab21], /* ETHIOPIC SYLLABLE CCHHU */ + [0xab22, 0xab22], /* ETHIOPIC SYLLABLE CCHHI */ + [0xab23, 0xab23], /* ETHIOPIC SYLLABLE CCHHAA */ + [0xab24, 0xab24], /* ETHIOPIC SYLLABLE CCHHEE */ + [0xab25, 0xab25], /* ETHIOPIC SYLLABLE CCHHE */ + [0xab26, 0xab26], /* ETHIOPIC SYLLABLE CCHHO */ + [0xab27, 0xab27], + [0xab28, 0xab28], /* ETHIOPIC SYLLABLE BBA */ + [0xab29, 0xab29], /* ETHIOPIC SYLLABLE BBU */ + [0xab2a, 0xab2a], /* ETHIOPIC SYLLABLE BBI */ + [0xab2b, 0xab2b], /* ETHIOPIC SYLLABLE BBAA */ + [0xab2c, 0xab2c], /* ETHIOPIC SYLLABLE BBEE */ + [0xab2d, 0xab2d], /* ETHIOPIC SYLLABLE BBE */ + [0xab2e, 0xab2e], /* ETHIOPIC SYLLABLE BBO */ + [0xab2f, 0xab2f], + [0xab30, 0xab30], /* LATIN SMALL LETTER BARRED ALPHA */ + [0xab31, 0xab31], /* LATIN SMALL LETTER A REVERSED-SCHWA */ + [0xab32, 0xab32], /* LATIN SMALL LETTER BLACKLETTER E */ + [0xab33, 0xab33], /* LATIN SMALL LETTER BARRED E */ + [0xab34, 0xab34], /* LATIN SMALL LETTER E WITH FLOURISH */ + [0xab35, 0xab35], /* LATIN SMALL LETTER LENIS F */ + [0xab36, 0xab36], /* LATIN SMALL LETTER SCRIPT G WITH CROSSED-TAIL */ + [0xab37, 0xab37], /* LATIN SMALL LETTER L WITH INVERTED LAZY S */ + [0xab38, 0xab38], /* LATIN SMALL LETTER L WITH DOUBLE MIDDLE TILDE */ + [0xab39, 0xab39], /* LATIN SMALL LETTER L WITH MIDDLE RING */ + [0xab3a, 0xab3a], /* LATIN SMALL LETTER M WITH CROSSED-TAIL */ + [0xab3b, 0xab3b], /* LATIN SMALL LETTER N WITH CROSSED-TAIL */ + [0xab3c, 0xab3c], /* LATIN SMALL LETTER ENG WITH CROSSED-TAIL */ + [0xab3d, 0xab3d], /* LATIN SMALL LETTER BLACKLETTER O */ + [0xab3e, 0xab3e], /* LATIN SMALL LETTER BLACKLETTER O WITH STROKE */ + [0xab3f, 0xab3f], /* LATIN SMALL LETTER OPEN O WITH STROKE */ + [0xab40, 0xab40], /* LATIN SMALL LETTER INVERTED OE */ + [0xab41, 0xab41], /* LATIN SMALL LETTER TURNED OE WITH STROKE */ + [0xab42, 0xab42], /* LATIN SMALL LETTER TURNED OE WITH HORIZONTAL STROKE */ + [0xab43, 0xab43], /* LATIN SMALL LETTER TURNED O OPEN-O */ + [0xab44, 0xab44], /* LATIN SMALL LETTER TURNED O OPEN-O WITH STROKE */ + [0xab45, 0xab45], /* LATIN SMALL LETTER STIRRUP R */ + [0xab46, 0xab46], /* LATIN LETTER SMALL CAPITAL R WITH RIGHT LEG */ + [0xab47, 0xab47], /* LATIN SMALL LETTER R WITHOUT HANDLE */ + [0xab48, 0xab48], /* LATIN SMALL LETTER DOUBLE R */ + [0xab49, 0xab49], /* LATIN SMALL LETTER R WITH CROSSED-TAIL */ + [0xab4a, 0xab4a], /* LATIN SMALL LETTER DOUBLE R WITH CROSSED-TAIL */ + [0xab4b, 0xab4b], /* LATIN SMALL LETTER SCRIPT R */ + [0xab4c, 0xab4c], /* LATIN SMALL LETTER SCRIPT R WITH RING */ + [0xab4d, 0xab4d], /* LATIN SMALL LETTER BASELINE ESH */ + [0xab4e, 0xab4e], /* LATIN SMALL LETTER U WITH SHORT RIGHT LEG */ + [0xab4f, 0xab4f], /* LATIN SMALL LETTER U BAR WITH SHORT RIGHT LEG */ + [0xab50, 0xab50], /* LATIN SMALL LETTER UI */ + [0xab51, 0xab51], /* LATIN SMALL LETTER TURNED UI */ + [0xab52, 0xab52], /* LATIN SMALL LETTER U WITH LEFT HOOK */ + [0xa7b3, 0xab53], /* LATIN SMALL LETTER CHI */ + [0xab54, 0xab54], /* LATIN SMALL LETTER CHI WITH LOW RIGHT RING */ + [0xab55, 0xab55], /* LATIN SMALL LETTER CHI WITH LOW LEFT SERIF */ + [0xab56, 0xab56], /* LATIN SMALL LETTER X WITH LOW RIGHT RING */ + [0xab57, 0xab57], /* LATIN SMALL LETTER X WITH LONG LEFT LEG */ + [0xab58, 0xab58], /* LATIN SMALL LETTER X WITH LONG LEFT LEG AND LOW RIGHT RING */ + [0xab59, 0xab59], /* LATIN SMALL LETTER X WITH LONG LEFT LEG WITH SERIF */ + [0xab5a, 0xab5a], /* LATIN SMALL LETTER Y WITH SHORT RIGHT LEG */ + [0xab5b, 0xab5b], /* MODIFIER BREVE WITH INVERTED BREVE */ + [0xab5c, 0xab5c], /* MODIFIER LETTER SMALL HENG */ + [0xab5d, 0xab5d], /* MODIFIER LETTER SMALL L WITH INVERTED LAZY S */ + [0xab5e, 0xab5e], /* MODIFIER LETTER SMALL L WITH MIDDLE TILDE */ + [0xab5f, 0xab5f], /* MODIFIER LETTER SMALL U WITH LEFT HOOK */ + [0xab60, 0xab60], /* LATIN SMALL LETTER SAKHA YAT */ + [0xab61, 0xab61], /* LATIN SMALL LETTER IOTIFIED E */ + [0xab62, 0xab62], /* LATIN SMALL LETTER OPEN OE */ + [0xab63, 0xab63], /* LATIN SMALL LETTER UO */ + [0xab64, 0xab64], /* LATIN SMALL LETTER INVERTED ALPHA */ + [0xab65, 0xab65], /* GREEK LETTER SMALL CAPITAL OMEGA */ + [0xab66, 0xab66], + [0xab67, 0xab67], + [0xab68, 0xab68], + [0xab69, 0xab69], + [0xab6a, 0xab6a], + [0xab6b, 0xab6b], + [0xab6c, 0xab6c], + [0xab6d, 0xab6d], + [0xab6e, 0xab6e], + [0xab6f, 0xab6f], + [0x13a0, 0xab70], /* CHEROKEE SMALL LETTER A */ + [0x13a1, 0xab71], /* CHEROKEE SMALL LETTER E */ + [0x13a2, 0xab72], /* CHEROKEE SMALL LETTER I */ + [0x13a3, 0xab73], /* CHEROKEE SMALL LETTER O */ + [0x13a4, 0xab74], /* CHEROKEE SMALL LETTER U */ + [0x13a5, 0xab75], /* CHEROKEE SMALL LETTER V */ + [0x13a6, 0xab76], /* CHEROKEE SMALL LETTER GA */ + [0x13a7, 0xab77], /* CHEROKEE SMALL LETTER KA */ + [0x13a8, 0xab78], /* CHEROKEE SMALL LETTER GE */ + [0x13a9, 0xab79], /* CHEROKEE SMALL LETTER GI */ + [0x13aa, 0xab7a], /* CHEROKEE SMALL LETTER GO */ + [0x13ab, 0xab7b], /* CHEROKEE SMALL LETTER GU */ + [0x13ac, 0xab7c], /* CHEROKEE SMALL LETTER GV */ + [0x13ad, 0xab7d], /* CHEROKEE SMALL LETTER HA */ + [0x13ae, 0xab7e], /* CHEROKEE SMALL LETTER HE */ + [0x13af, 0xab7f], /* CHEROKEE SMALL LETTER HI */ + [0x13b0, 0xab80], /* CHEROKEE SMALL LETTER HO */ + [0x13b1, 0xab81], /* CHEROKEE SMALL LETTER HU */ + [0x13b2, 0xab82], /* CHEROKEE SMALL LETTER HV */ + [0x13b3, 0xab83], /* CHEROKEE SMALL LETTER LA */ + [0x13b4, 0xab84], /* CHEROKEE SMALL LETTER LE */ + [0x13b5, 0xab85], /* CHEROKEE SMALL LETTER LI */ + [0x13b6, 0xab86], /* CHEROKEE SMALL LETTER LO */ + [0x13b7, 0xab87], /* CHEROKEE SMALL LETTER LU */ + [0x13b8, 0xab88], /* CHEROKEE SMALL LETTER LV */ + [0x13b9, 0xab89], /* CHEROKEE SMALL LETTER MA */ + [0x13ba, 0xab8a], /* CHEROKEE SMALL LETTER ME */ + [0x13bb, 0xab8b], /* CHEROKEE SMALL LETTER MI */ + [0x13bc, 0xab8c], /* CHEROKEE SMALL LETTER MO */ + [0x13bd, 0xab8d], /* CHEROKEE SMALL LETTER MU */ + [0x13be, 0xab8e], /* CHEROKEE SMALL LETTER NA */ + [0x13bf, 0xab8f], /* CHEROKEE SMALL LETTER HNA */ + [0x13c0, 0xab90], /* CHEROKEE SMALL LETTER NAH */ + [0x13c1, 0xab91], /* CHEROKEE SMALL LETTER NE */ + [0x13c2, 0xab92], /* CHEROKEE SMALL LETTER NI */ + [0x13c3, 0xab93], /* CHEROKEE SMALL LETTER NO */ + [0x13c4, 0xab94], /* CHEROKEE SMALL LETTER NU */ + [0x13c5, 0xab95], /* CHEROKEE SMALL LETTER NV */ + [0x13c6, 0xab96], /* CHEROKEE SMALL LETTER QUA */ + [0x13c7, 0xab97], /* CHEROKEE SMALL LETTER QUE */ + [0x13c8, 0xab98], /* CHEROKEE SMALL LETTER QUI */ + [0x13c9, 0xab99], /* CHEROKEE SMALL LETTER QUO */ + [0x13ca, 0xab9a], /* CHEROKEE SMALL LETTER QUU */ + [0x13cb, 0xab9b], /* CHEROKEE SMALL LETTER QUV */ + [0x13cc, 0xab9c], /* CHEROKEE SMALL LETTER SA */ + [0x13cd, 0xab9d], /* CHEROKEE SMALL LETTER S */ + [0x13ce, 0xab9e], /* CHEROKEE SMALL LETTER SE */ + [0x13cf, 0xab9f], /* CHEROKEE SMALL LETTER SI */ + [0x13d0, 0xaba0], /* CHEROKEE SMALL LETTER SO */ + [0x13d1, 0xaba1], /* CHEROKEE SMALL LETTER SU */ + [0x13d2, 0xaba2], /* CHEROKEE SMALL LETTER SV */ + [0x13d3, 0xaba3], /* CHEROKEE SMALL LETTER DA */ + [0x13d4, 0xaba4], /* CHEROKEE SMALL LETTER TA */ + [0x13d5, 0xaba5], /* CHEROKEE SMALL LETTER DE */ + [0x13d6, 0xaba6], /* CHEROKEE SMALL LETTER TE */ + [0x13d7, 0xaba7], /* CHEROKEE SMALL LETTER DI */ + [0x13d8, 0xaba8], /* CHEROKEE SMALL LETTER TI */ + [0x13d9, 0xaba9], /* CHEROKEE SMALL LETTER DO */ + [0x13da, 0xabaa], /* CHEROKEE SMALL LETTER DU */ + [0x13db, 0xabab], /* CHEROKEE SMALL LETTER DV */ + [0x13dc, 0xabac], /* CHEROKEE SMALL LETTER DLA */ + [0x13dd, 0xabad], /* CHEROKEE SMALL LETTER TLA */ + [0x13de, 0xabae], /* CHEROKEE SMALL LETTER TLE */ + [0x13df, 0xabaf], /* CHEROKEE SMALL LETTER TLI */ + [0x13e0, 0xabb0], /* CHEROKEE SMALL LETTER TLO */ + [0x13e1, 0xabb1], /* CHEROKEE SMALL LETTER TLU */ + [0x13e2, 0xabb2], /* CHEROKEE SMALL LETTER TLV */ + [0x13e3, 0xabb3], /* CHEROKEE SMALL LETTER TSA */ + [0x13e4, 0xabb4], /* CHEROKEE SMALL LETTER TSE */ + [0x13e5, 0xabb5], /* CHEROKEE SMALL LETTER TSI */ + [0x13e6, 0xabb6], /* CHEROKEE SMALL LETTER TSO */ + [0x13e7, 0xabb7], /* CHEROKEE SMALL LETTER TSU */ + [0x13e8, 0xabb8], /* CHEROKEE SMALL LETTER TSV */ + [0x13e9, 0xabb9], /* CHEROKEE SMALL LETTER WA */ + [0x13ea, 0xabba], /* CHEROKEE SMALL LETTER WE */ + [0x13eb, 0xabbb], /* CHEROKEE SMALL LETTER WI */ + [0x13ec, 0xabbc], /* CHEROKEE SMALL LETTER WO */ + [0x13ed, 0xabbd], /* CHEROKEE SMALL LETTER WU */ + [0x13ee, 0xabbe], /* CHEROKEE SMALL LETTER WV */ + [0x13ef, 0xabbf], /* CHEROKEE SMALL LETTER YA */ + [0xabc0, 0xabc0], /* MEETEI MAYEK LETTER KOK */ + [0xabc1, 0xabc1], /* MEETEI MAYEK LETTER SAM */ + [0xabc2, 0xabc2], /* MEETEI MAYEK LETTER LAI */ + [0xabc3, 0xabc3], /* MEETEI MAYEK LETTER MIT */ + [0xabc4, 0xabc4], /* MEETEI MAYEK LETTER PA */ + [0xabc5, 0xabc5], /* MEETEI MAYEK LETTER NA */ + [0xabc6, 0xabc6], /* MEETEI MAYEK LETTER CHIL */ + [0xabc7, 0xabc7], /* MEETEI MAYEK LETTER TIL */ + [0xabc8, 0xabc8], /* MEETEI MAYEK LETTER KHOU */ + [0xabc9, 0xabc9], /* MEETEI MAYEK LETTER NGOU */ + [0xabca, 0xabca], /* MEETEI MAYEK LETTER THOU */ + [0xabcb, 0xabcb], /* MEETEI MAYEK LETTER WAI */ + [0xabcc, 0xabcc], /* MEETEI MAYEK LETTER YANG */ + [0xabcd, 0xabcd], /* MEETEI MAYEK LETTER HUK */ + [0xabce, 0xabce], /* MEETEI MAYEK LETTER UN */ + [0xabcf, 0xabcf], /* MEETEI MAYEK LETTER I */ + [0xabd0, 0xabd0], /* MEETEI MAYEK LETTER PHAM */ + [0xabd1, 0xabd1], /* MEETEI MAYEK LETTER ATIYA */ + [0xabd2, 0xabd2], /* MEETEI MAYEK LETTER GOK */ + [0xabd3, 0xabd3], /* MEETEI MAYEK LETTER JHAM */ + [0xabd4, 0xabd4], /* MEETEI MAYEK LETTER RAI */ + [0xabd5, 0xabd5], /* MEETEI MAYEK LETTER BA */ + [0xabd6, 0xabd6], /* MEETEI MAYEK LETTER JIL */ + [0xabd7, 0xabd7], /* MEETEI MAYEK LETTER DIL */ + [0xabd8, 0xabd8], /* MEETEI MAYEK LETTER GHOU */ + [0xabd9, 0xabd9], /* MEETEI MAYEK LETTER DHOU */ + [0xabda, 0xabda], /* MEETEI MAYEK LETTER BHAM */ + [0xabdb, 0xabdb], /* MEETEI MAYEK LETTER KOK LONSUM */ + [0xabdc, 0xabdc], /* MEETEI MAYEK LETTER LAI LONSUM */ + [0xabdd, 0xabdd], /* MEETEI MAYEK LETTER MIT LONSUM */ + [0xabde, 0xabde], /* MEETEI MAYEK LETTER PA LONSUM */ + [0xabdf, 0xabdf], /* MEETEI MAYEK LETTER NA LONSUM */ + [0xabe0, 0xabe0], /* MEETEI MAYEK LETTER TIL LONSUM */ + [0xabe1, 0xabe1], /* MEETEI MAYEK LETTER NGOU LONSUM */ + [0xabe2, 0xabe2], /* MEETEI MAYEK LETTER I LONSUM */ + [0xabe3, 0xabe3], /* MEETEI MAYEK VOWEL SIGN ONAP */ + [0xabe4, 0xabe4], /* MEETEI MAYEK VOWEL SIGN INAP */ + [0xabe5, 0xabe5], /* MEETEI MAYEK VOWEL SIGN ANAP */ + [0xabe6, 0xabe6], /* MEETEI MAYEK VOWEL SIGN YENAP */ + [0xabe7, 0xabe7], /* MEETEI MAYEK VOWEL SIGN SOUNAP */ + [0xabe8, 0xabe8], /* MEETEI MAYEK VOWEL SIGN UNAP */ + [0xabe9, 0xabe9], /* MEETEI MAYEK VOWEL SIGN CHEINAP */ + [0xabea, 0xabea], /* MEETEI MAYEK VOWEL SIGN NUNG */ + [0xabeb, 0xabeb], /* MEETEI MAYEK CHEIKHEI */ + [0xabec, 0xabec], /* MEETEI MAYEK LUM IYEK */ + [0xabed, 0xabed], /* MEETEI MAYEK APUN IYEK */ + [0xabee, 0xabee], + [0xabef, 0xabef], + [0xabf0, 0xabf0], /* MEETEI MAYEK DIGIT ZERO */ + [0xabf1, 0xabf1], /* MEETEI MAYEK DIGIT ONE */ + [0xabf2, 0xabf2], /* MEETEI MAYEK DIGIT TWO */ + [0xabf3, 0xabf3], /* MEETEI MAYEK DIGIT THREE */ + [0xabf4, 0xabf4], /* MEETEI MAYEK DIGIT FOUR */ + [0xabf5, 0xabf5], /* MEETEI MAYEK DIGIT FIVE */ + [0xabf6, 0xabf6], /* MEETEI MAYEK DIGIT SIX */ + [0xabf7, 0xabf7], /* MEETEI MAYEK DIGIT SEVEN */ + [0xabf8, 0xabf8], /* MEETEI MAYEK DIGIT EIGHT */ + [0xabf9, 0xabf9], /* MEETEI MAYEK DIGIT NINE */ + [0xabfa, 0xabfa], + [0xabfb, 0xabfb], + [0xabfc, 0xabfc], + [0xabfd, 0xabfd], + [0xabfe, 0xabfe], + [0xabff, 0xabff], + [0xac00, 0xac00], /* Hangul Syllable */ + [0xac01, 0xac01], /* Hangul Syllable */ + [0xac02, 0xac02], /* Hangul Syllable */ + [0xac03, 0xac03], /* Hangul Syllable */ + [0xac04, 0xac04], /* Hangul Syllable */ + [0xac05, 0xac05], /* Hangul Syllable */ + [0xac06, 0xac06], /* Hangul Syllable */ + [0xac07, 0xac07], /* Hangul Syllable */ + [0xac08, 0xac08], /* Hangul Syllable */ + [0xac09, 0xac09], /* Hangul Syllable */ + [0xac0a, 0xac0a], /* Hangul Syllable */ + [0xac0b, 0xac0b], /* Hangul Syllable */ + [0xac0c, 0xac0c], /* Hangul Syllable */ + [0xac0d, 0xac0d], /* Hangul Syllable */ + [0xac0e, 0xac0e], /* Hangul Syllable */ + [0xac0f, 0xac0f], /* Hangul Syllable */ + [0xac10, 0xac10], /* Hangul Syllable */ + [0xac11, 0xac11], /* Hangul Syllable */ + [0xac12, 0xac12], /* Hangul Syllable */ + [0xac13, 0xac13], /* Hangul Syllable */ + [0xac14, 0xac14], /* Hangul Syllable */ + [0xac15, 0xac15], /* Hangul Syllable */ + [0xac16, 0xac16], /* Hangul Syllable */ + [0xac17, 0xac17], /* Hangul Syllable */ + [0xac18, 0xac18], /* Hangul Syllable */ + [0xac19, 0xac19], /* Hangul Syllable */ + [0xac1a, 0xac1a], /* Hangul Syllable */ + [0xac1b, 0xac1b], /* Hangul Syllable */ + [0xac1c, 0xac1c], /* Hangul Syllable */ + [0xac1d, 0xac1d], /* Hangul Syllable */ + [0xac1e, 0xac1e], /* Hangul Syllable */ + [0xac1f, 0xac1f], /* Hangul Syllable */ + [0xac20, 0xac20], /* Hangul Syllable */ + [0xac21, 0xac21], /* Hangul Syllable */ + [0xac22, 0xac22], /* Hangul Syllable */ + [0xac23, 0xac23], /* Hangul Syllable */ + [0xac24, 0xac24], /* Hangul Syllable */ + [0xac25, 0xac25], /* Hangul Syllable */ + [0xac26, 0xac26], /* Hangul Syllable */ + [0xac27, 0xac27], /* Hangul Syllable */ + [0xac28, 0xac28], /* Hangul Syllable */ + [0xac29, 0xac29], /* Hangul Syllable */ + [0xac2a, 0xac2a], /* Hangul Syllable */ + [0xac2b, 0xac2b], /* Hangul Syllable */ + [0xac2c, 0xac2c], /* Hangul Syllable */ + [0xac2d, 0xac2d], /* Hangul Syllable */ + [0xac2e, 0xac2e], /* Hangul Syllable */ + [0xac2f, 0xac2f], /* Hangul Syllable */ + [0xac30, 0xac30], /* Hangul Syllable */ + [0xac31, 0xac31], /* Hangul Syllable */ + [0xac32, 0xac32], /* Hangul Syllable */ + [0xac33, 0xac33], /* Hangul Syllable */ + [0xac34, 0xac34], /* Hangul Syllable */ + [0xac35, 0xac35], /* Hangul Syllable */ + [0xac36, 0xac36], /* Hangul Syllable */ + [0xac37, 0xac37], /* Hangul Syllable */ + [0xac38, 0xac38], /* Hangul Syllable */ + [0xac39, 0xac39], /* Hangul Syllable */ + [0xac3a, 0xac3a], /* Hangul Syllable */ + [0xac3b, 0xac3b], /* Hangul Syllable */ + [0xac3c, 0xac3c], /* Hangul Syllable */ + [0xac3d, 0xac3d], /* Hangul Syllable */ + [0xac3e, 0xac3e], /* Hangul Syllable */ + [0xac3f, 0xac3f], /* Hangul Syllable */ + [0xac40, 0xac40], /* Hangul Syllable */ + [0xac41, 0xac41], /* Hangul Syllable */ + [0xac42, 0xac42], /* Hangul Syllable */ + [0xac43, 0xac43], /* Hangul Syllable */ + [0xac44, 0xac44], /* Hangul Syllable */ + [0xac45, 0xac45], /* Hangul Syllable */ + [0xac46, 0xac46], /* Hangul Syllable */ + [0xac47, 0xac47], /* Hangul Syllable */ + [0xac48, 0xac48], /* Hangul Syllable */ + [0xac49, 0xac49], /* Hangul Syllable */ + [0xac4a, 0xac4a], /* Hangul Syllable */ + [0xac4b, 0xac4b], /* Hangul Syllable */ + [0xac4c, 0xac4c], /* Hangul Syllable */ + [0xac4d, 0xac4d], /* Hangul Syllable */ + [0xac4e, 0xac4e], /* Hangul Syllable */ + [0xac4f, 0xac4f], /* Hangul Syllable */ + [0xac50, 0xac50], /* Hangul Syllable */ + [0xac51, 0xac51], /* Hangul Syllable */ + [0xac52, 0xac52], /* Hangul Syllable */ + [0xac53, 0xac53], /* Hangul Syllable */ + [0xac54, 0xac54], /* Hangul Syllable */ + [0xac55, 0xac55], /* Hangul Syllable */ + [0xac56, 0xac56], /* Hangul Syllable */ + [0xac57, 0xac57], /* Hangul Syllable */ + [0xac58, 0xac58], /* Hangul Syllable */ + [0xac59, 0xac59], /* Hangul Syllable */ + [0xac5a, 0xac5a], /* Hangul Syllable */ + [0xac5b, 0xac5b], /* Hangul Syllable */ + [0xac5c, 0xac5c], /* Hangul Syllable */ + [0xac5d, 0xac5d], /* Hangul Syllable */ + [0xac5e, 0xac5e], /* Hangul Syllable */ + [0xac5f, 0xac5f], /* Hangul Syllable */ + [0xac60, 0xac60], /* Hangul Syllable */ + [0xac61, 0xac61], /* Hangul Syllable */ + [0xac62, 0xac62], /* Hangul Syllable */ + [0xac63, 0xac63], /* Hangul Syllable */ + [0xac64, 0xac64], /* Hangul Syllable */ + [0xac65, 0xac65], /* Hangul Syllable */ + [0xac66, 0xac66], /* Hangul Syllable */ + [0xac67, 0xac67], /* Hangul Syllable */ + [0xac68, 0xac68], /* Hangul Syllable */ + [0xac69, 0xac69], /* Hangul Syllable */ + [0xac6a, 0xac6a], /* Hangul Syllable */ + [0xac6b, 0xac6b], /* Hangul Syllable */ + [0xac6c, 0xac6c], /* Hangul Syllable */ + [0xac6d, 0xac6d], /* Hangul Syllable */ + [0xac6e, 0xac6e], /* Hangul Syllable */ + [0xac6f, 0xac6f], /* Hangul Syllable */ + [0xac70, 0xac70], /* Hangul Syllable */ + [0xac71, 0xac71], /* Hangul Syllable */ + [0xac72, 0xac72], /* Hangul Syllable */ + [0xac73, 0xac73], /* Hangul Syllable */ + [0xac74, 0xac74], /* Hangul Syllable */ + [0xac75, 0xac75], /* Hangul Syllable */ + [0xac76, 0xac76], /* Hangul Syllable */ + [0xac77, 0xac77], /* Hangul Syllable */ + [0xac78, 0xac78], /* Hangul Syllable */ + [0xac79, 0xac79], /* Hangul Syllable */ + [0xac7a, 0xac7a], /* Hangul Syllable */ + [0xac7b, 0xac7b], /* Hangul Syllable */ + [0xac7c, 0xac7c], /* Hangul Syllable */ + [0xac7d, 0xac7d], /* Hangul Syllable */ + [0xac7e, 0xac7e], /* Hangul Syllable */ + [0xac7f, 0xac7f], /* Hangul Syllable */ + [0xac80, 0xac80], /* Hangul Syllable */ + [0xac81, 0xac81], /* Hangul Syllable */ + [0xac82, 0xac82], /* Hangul Syllable */ + [0xac83, 0xac83], /* Hangul Syllable */ + [0xac84, 0xac84], /* Hangul Syllable */ + [0xac85, 0xac85], /* Hangul Syllable */ + [0xac86, 0xac86], /* Hangul Syllable */ + [0xac87, 0xac87], /* Hangul Syllable */ + [0xac88, 0xac88], /* Hangul Syllable */ + [0xac89, 0xac89], /* Hangul Syllable */ + [0xac8a, 0xac8a], /* Hangul Syllable */ + [0xac8b, 0xac8b], /* Hangul Syllable */ + [0xac8c, 0xac8c], /* Hangul Syllable */ + [0xac8d, 0xac8d], /* Hangul Syllable */ + [0xac8e, 0xac8e], /* Hangul Syllable */ + [0xac8f, 0xac8f], /* Hangul Syllable */ + [0xac90, 0xac90], /* Hangul Syllable */ + [0xac91, 0xac91], /* Hangul Syllable */ + [0xac92, 0xac92], /* Hangul Syllable */ + [0xac93, 0xac93], /* Hangul Syllable */ + [0xac94, 0xac94], /* Hangul Syllable */ + [0xac95, 0xac95], /* Hangul Syllable */ + [0xac96, 0xac96], /* Hangul Syllable */ + [0xac97, 0xac97], /* Hangul Syllable */ + [0xac98, 0xac98], /* Hangul Syllable */ + [0xac99, 0xac99], /* Hangul Syllable */ + [0xac9a, 0xac9a], /* Hangul Syllable */ + [0xac9b, 0xac9b], /* Hangul Syllable */ + [0xac9c, 0xac9c], /* Hangul Syllable */ + [0xac9d, 0xac9d], /* Hangul Syllable */ + [0xac9e, 0xac9e], /* Hangul Syllable */ + [0xac9f, 0xac9f], /* Hangul Syllable */ + [0xaca0, 0xaca0], /* Hangul Syllable */ + [0xaca1, 0xaca1], /* Hangul Syllable */ + [0xaca2, 0xaca2], /* Hangul Syllable */ + [0xaca3, 0xaca3], /* Hangul Syllable */ + [0xaca4, 0xaca4], /* Hangul Syllable */ + [0xaca5, 0xaca5], /* Hangul Syllable */ + [0xaca6, 0xaca6], /* Hangul Syllable */ + [0xaca7, 0xaca7], /* Hangul Syllable */ + [0xaca8, 0xaca8], /* Hangul Syllable */ + [0xaca9, 0xaca9], /* Hangul Syllable */ + [0xacaa, 0xacaa], /* Hangul Syllable */ + [0xacab, 0xacab], /* Hangul Syllable */ + [0xacac, 0xacac], /* Hangul Syllable */ + [0xacad, 0xacad], /* Hangul Syllable */ + [0xacae, 0xacae], /* Hangul Syllable */ + [0xacaf, 0xacaf], /* Hangul Syllable */ + [0xacb0, 0xacb0], /* Hangul Syllable */ + [0xacb1, 0xacb1], /* Hangul Syllable */ + [0xacb2, 0xacb2], /* Hangul Syllable */ + [0xacb3, 0xacb3], /* Hangul Syllable */ + [0xacb4, 0xacb4], /* Hangul Syllable */ + [0xacb5, 0xacb5], /* Hangul Syllable */ + [0xacb6, 0xacb6], /* Hangul Syllable */ + [0xacb7, 0xacb7], /* Hangul Syllable */ + [0xacb8, 0xacb8], /* Hangul Syllable */ + [0xacb9, 0xacb9], /* Hangul Syllable */ + [0xacba, 0xacba], /* Hangul Syllable */ + [0xacbb, 0xacbb], /* Hangul Syllable */ + [0xacbc, 0xacbc], /* Hangul Syllable */ + [0xacbd, 0xacbd], /* Hangul Syllable */ + [0xacbe, 0xacbe], /* Hangul Syllable */ + [0xacbf, 0xacbf], /* Hangul Syllable */ + [0xacc0, 0xacc0], /* Hangul Syllable */ + [0xacc1, 0xacc1], /* Hangul Syllable */ + [0xacc2, 0xacc2], /* Hangul Syllable */ + [0xacc3, 0xacc3], /* Hangul Syllable */ + [0xacc4, 0xacc4], /* Hangul Syllable */ + [0xacc5, 0xacc5], /* Hangul Syllable */ + [0xacc6, 0xacc6], /* Hangul Syllable */ + [0xacc7, 0xacc7], /* Hangul Syllable */ + [0xacc8, 0xacc8], /* Hangul Syllable */ + [0xacc9, 0xacc9], /* Hangul Syllable */ + [0xacca, 0xacca], /* Hangul Syllable */ + [0xaccb, 0xaccb], /* Hangul Syllable */ + [0xaccc, 0xaccc], /* Hangul Syllable */ + [0xaccd, 0xaccd], /* Hangul Syllable */ + [0xacce, 0xacce], /* Hangul Syllable */ + [0xaccf, 0xaccf], /* Hangul Syllable */ + [0xacd0, 0xacd0], /* Hangul Syllable */ + [0xacd1, 0xacd1], /* Hangul Syllable */ + [0xacd2, 0xacd2], /* Hangul Syllable */ + [0xacd3, 0xacd3], /* Hangul Syllable */ + [0xacd4, 0xacd4], /* Hangul Syllable */ + [0xacd5, 0xacd5], /* Hangul Syllable */ + [0xacd6, 0xacd6], /* Hangul Syllable */ + [0xacd7, 0xacd7], /* Hangul Syllable */ + [0xacd8, 0xacd8], /* Hangul Syllable */ + [0xacd9, 0xacd9], /* Hangul Syllable */ + [0xacda, 0xacda], /* Hangul Syllable */ + [0xacdb, 0xacdb], /* Hangul Syllable */ + [0xacdc, 0xacdc], /* Hangul Syllable */ + [0xacdd, 0xacdd], /* Hangul Syllable */ + [0xacde, 0xacde], /* Hangul Syllable */ + [0xacdf, 0xacdf], /* Hangul Syllable */ + [0xace0, 0xace0], /* Hangul Syllable */ + [0xace1, 0xace1], /* Hangul Syllable */ + [0xace2, 0xace2], /* Hangul Syllable */ + [0xace3, 0xace3], /* Hangul Syllable */ + [0xace4, 0xace4], /* Hangul Syllable */ + [0xace5, 0xace5], /* Hangul Syllable */ + [0xace6, 0xace6], /* Hangul Syllable */ + [0xace7, 0xace7], /* Hangul Syllable */ + [0xace8, 0xace8], /* Hangul Syllable */ + [0xace9, 0xace9], /* Hangul Syllable */ + [0xacea, 0xacea], /* Hangul Syllable */ + [0xaceb, 0xaceb], /* Hangul Syllable */ + [0xacec, 0xacec], /* Hangul Syllable */ + [0xaced, 0xaced], /* Hangul Syllable */ + [0xacee, 0xacee], /* Hangul Syllable */ + [0xacef, 0xacef], /* Hangul Syllable */ + [0xacf0, 0xacf0], /* Hangul Syllable */ + [0xacf1, 0xacf1], /* Hangul Syllable */ + [0xacf2, 0xacf2], /* Hangul Syllable */ + [0xacf3, 0xacf3], /* Hangul Syllable */ + [0xacf4, 0xacf4], /* Hangul Syllable */ + [0xacf5, 0xacf5], /* Hangul Syllable */ + [0xacf6, 0xacf6], /* Hangul Syllable */ + [0xacf7, 0xacf7], /* Hangul Syllable */ + [0xacf8, 0xacf8], /* Hangul Syllable */ + [0xacf9, 0xacf9], /* Hangul Syllable */ + [0xacfa, 0xacfa], /* Hangul Syllable */ + [0xacfb, 0xacfb], /* Hangul Syllable */ + [0xacfc, 0xacfc], /* Hangul Syllable */ + [0xacfd, 0xacfd], /* Hangul Syllable */ + [0xacfe, 0xacfe], /* Hangul Syllable */ + [0xacff, 0xacff], /* Hangul Syllable */ + [0xad00, 0xad00], /* Hangul Syllable */ + [0xad01, 0xad01], /* Hangul Syllable */ + [0xad02, 0xad02], /* Hangul Syllable */ + [0xad03, 0xad03], /* Hangul Syllable */ + [0xad04, 0xad04], /* Hangul Syllable */ + [0xad05, 0xad05], /* Hangul Syllable */ + [0xad06, 0xad06], /* Hangul Syllable */ + [0xad07, 0xad07], /* Hangul Syllable */ + [0xad08, 0xad08], /* Hangul Syllable */ + [0xad09, 0xad09], /* Hangul Syllable */ + [0xad0a, 0xad0a], /* Hangul Syllable */ + [0xad0b, 0xad0b], /* Hangul Syllable */ + [0xad0c, 0xad0c], /* Hangul Syllable */ + [0xad0d, 0xad0d], /* Hangul Syllable */ + [0xad0e, 0xad0e], /* Hangul Syllable */ + [0xad0f, 0xad0f], /* Hangul Syllable */ + [0xad10, 0xad10], /* Hangul Syllable */ + [0xad11, 0xad11], /* Hangul Syllable */ + [0xad12, 0xad12], /* Hangul Syllable */ + [0xad13, 0xad13], /* Hangul Syllable */ + [0xad14, 0xad14], /* Hangul Syllable */ + [0xad15, 0xad15], /* Hangul Syllable */ + [0xad16, 0xad16], /* Hangul Syllable */ + [0xad17, 0xad17], /* Hangul Syllable */ + [0xad18, 0xad18], /* Hangul Syllable */ + [0xad19, 0xad19], /* Hangul Syllable */ + [0xad1a, 0xad1a], /* Hangul Syllable */ + [0xad1b, 0xad1b], /* Hangul Syllable */ + [0xad1c, 0xad1c], /* Hangul Syllable */ + [0xad1d, 0xad1d], /* Hangul Syllable */ + [0xad1e, 0xad1e], /* Hangul Syllable */ + [0xad1f, 0xad1f], /* Hangul Syllable */ + [0xad20, 0xad20], /* Hangul Syllable */ + [0xad21, 0xad21], /* Hangul Syllable */ + [0xad22, 0xad22], /* Hangul Syllable */ + [0xad23, 0xad23], /* Hangul Syllable */ + [0xad24, 0xad24], /* Hangul Syllable */ + [0xad25, 0xad25], /* Hangul Syllable */ + [0xad26, 0xad26], /* Hangul Syllable */ + [0xad27, 0xad27], /* Hangul Syllable */ + [0xad28, 0xad28], /* Hangul Syllable */ + [0xad29, 0xad29], /* Hangul Syllable */ + [0xad2a, 0xad2a], /* Hangul Syllable */ + [0xad2b, 0xad2b], /* Hangul Syllable */ + [0xad2c, 0xad2c], /* Hangul Syllable */ + [0xad2d, 0xad2d], /* Hangul Syllable */ + [0xad2e, 0xad2e], /* Hangul Syllable */ + [0xad2f, 0xad2f], /* Hangul Syllable */ + [0xad30, 0xad30], /* Hangul Syllable */ + [0xad31, 0xad31], /* Hangul Syllable */ + [0xad32, 0xad32], /* Hangul Syllable */ + [0xad33, 0xad33], /* Hangul Syllable */ + [0xad34, 0xad34], /* Hangul Syllable */ + [0xad35, 0xad35], /* Hangul Syllable */ + [0xad36, 0xad36], /* Hangul Syllable */ + [0xad37, 0xad37], /* Hangul Syllable */ + [0xad38, 0xad38], /* Hangul Syllable */ + [0xad39, 0xad39], /* Hangul Syllable */ + [0xad3a, 0xad3a], /* Hangul Syllable */ + [0xad3b, 0xad3b], /* Hangul Syllable */ + [0xad3c, 0xad3c], /* Hangul Syllable */ + [0xad3d, 0xad3d], /* Hangul Syllable */ + [0xad3e, 0xad3e], /* Hangul Syllable */ + [0xad3f, 0xad3f], /* Hangul Syllable */ + [0xad40, 0xad40], /* Hangul Syllable */ + [0xad41, 0xad41], /* Hangul Syllable */ + [0xad42, 0xad42], /* Hangul Syllable */ + [0xad43, 0xad43], /* Hangul Syllable */ + [0xad44, 0xad44], /* Hangul Syllable */ + [0xad45, 0xad45], /* Hangul Syllable */ + [0xad46, 0xad46], /* Hangul Syllable */ + [0xad47, 0xad47], /* Hangul Syllable */ + [0xad48, 0xad48], /* Hangul Syllable */ + [0xad49, 0xad49], /* Hangul Syllable */ + [0xad4a, 0xad4a], /* Hangul Syllable */ + [0xad4b, 0xad4b], /* Hangul Syllable */ + [0xad4c, 0xad4c], /* Hangul Syllable */ + [0xad4d, 0xad4d], /* Hangul Syllable */ + [0xad4e, 0xad4e], /* Hangul Syllable */ + [0xad4f, 0xad4f], /* Hangul Syllable */ + [0xad50, 0xad50], /* Hangul Syllable */ + [0xad51, 0xad51], /* Hangul Syllable */ + [0xad52, 0xad52], /* Hangul Syllable */ + [0xad53, 0xad53], /* Hangul Syllable */ + [0xad54, 0xad54], /* Hangul Syllable */ + [0xad55, 0xad55], /* Hangul Syllable */ + [0xad56, 0xad56], /* Hangul Syllable */ + [0xad57, 0xad57], /* Hangul Syllable */ + [0xad58, 0xad58], /* Hangul Syllable */ + [0xad59, 0xad59], /* Hangul Syllable */ + [0xad5a, 0xad5a], /* Hangul Syllable */ + [0xad5b, 0xad5b], /* Hangul Syllable */ + [0xad5c, 0xad5c], /* Hangul Syllable */ + [0xad5d, 0xad5d], /* Hangul Syllable */ + [0xad5e, 0xad5e], /* Hangul Syllable */ + [0xad5f, 0xad5f], /* Hangul Syllable */ + [0xad60, 0xad60], /* Hangul Syllable */ + [0xad61, 0xad61], /* Hangul Syllable */ + [0xad62, 0xad62], /* Hangul Syllable */ + [0xad63, 0xad63], /* Hangul Syllable */ + [0xad64, 0xad64], /* Hangul Syllable */ + [0xad65, 0xad65], /* Hangul Syllable */ + [0xad66, 0xad66], /* Hangul Syllable */ + [0xad67, 0xad67], /* Hangul Syllable */ + [0xad68, 0xad68], /* Hangul Syllable */ + [0xad69, 0xad69], /* Hangul Syllable */ + [0xad6a, 0xad6a], /* Hangul Syllable */ + [0xad6b, 0xad6b], /* Hangul Syllable */ + [0xad6c, 0xad6c], /* Hangul Syllable */ + [0xad6d, 0xad6d], /* Hangul Syllable */ + [0xad6e, 0xad6e], /* Hangul Syllable */ + [0xad6f, 0xad6f], /* Hangul Syllable */ + [0xad70, 0xad70], /* Hangul Syllable */ + [0xad71, 0xad71], /* Hangul Syllable */ + [0xad72, 0xad72], /* Hangul Syllable */ + [0xad73, 0xad73], /* Hangul Syllable */ + [0xad74, 0xad74], /* Hangul Syllable */ + [0xad75, 0xad75], /* Hangul Syllable */ + [0xad76, 0xad76], /* Hangul Syllable */ + [0xad77, 0xad77], /* Hangul Syllable */ + [0xad78, 0xad78], /* Hangul Syllable */ + [0xad79, 0xad79], /* Hangul Syllable */ + [0xad7a, 0xad7a], /* Hangul Syllable */ + [0xad7b, 0xad7b], /* Hangul Syllable */ + [0xad7c, 0xad7c], /* Hangul Syllable */ + [0xad7d, 0xad7d], /* Hangul Syllable */ + [0xad7e, 0xad7e], /* Hangul Syllable */ + [0xad7f, 0xad7f], /* Hangul Syllable */ + [0xad80, 0xad80], /* Hangul Syllable */ + [0xad81, 0xad81], /* Hangul Syllable */ + [0xad82, 0xad82], /* Hangul Syllable */ + [0xad83, 0xad83], /* Hangul Syllable */ + [0xad84, 0xad84], /* Hangul Syllable */ + [0xad85, 0xad85], /* Hangul Syllable */ + [0xad86, 0xad86], /* Hangul Syllable */ + [0xad87, 0xad87], /* Hangul Syllable */ + [0xad88, 0xad88], /* Hangul Syllable */ + [0xad89, 0xad89], /* Hangul Syllable */ + [0xad8a, 0xad8a], /* Hangul Syllable */ + [0xad8b, 0xad8b], /* Hangul Syllable */ + [0xad8c, 0xad8c], /* Hangul Syllable */ + [0xad8d, 0xad8d], /* Hangul Syllable */ + [0xad8e, 0xad8e], /* Hangul Syllable */ + [0xad8f, 0xad8f], /* Hangul Syllable */ + [0xad90, 0xad90], /* Hangul Syllable */ + [0xad91, 0xad91], /* Hangul Syllable */ + [0xad92, 0xad92], /* Hangul Syllable */ + [0xad93, 0xad93], /* Hangul Syllable */ + [0xad94, 0xad94], /* Hangul Syllable */ + [0xad95, 0xad95], /* Hangul Syllable */ + [0xad96, 0xad96], /* Hangul Syllable */ + [0xad97, 0xad97], /* Hangul Syllable */ + [0xad98, 0xad98], /* Hangul Syllable */ + [0xad99, 0xad99], /* Hangul Syllable */ + [0xad9a, 0xad9a], /* Hangul Syllable */ + [0xad9b, 0xad9b], /* Hangul Syllable */ + [0xad9c, 0xad9c], /* Hangul Syllable */ + [0xad9d, 0xad9d], /* Hangul Syllable */ + [0xad9e, 0xad9e], /* Hangul Syllable */ + [0xad9f, 0xad9f], /* Hangul Syllable */ + [0xada0, 0xada0], /* Hangul Syllable */ + [0xada1, 0xada1], /* Hangul Syllable */ + [0xada2, 0xada2], /* Hangul Syllable */ + [0xada3, 0xada3], /* Hangul Syllable */ + [0xada4, 0xada4], /* Hangul Syllable */ + [0xada5, 0xada5], /* Hangul Syllable */ + [0xada6, 0xada6], /* Hangul Syllable */ + [0xada7, 0xada7], /* Hangul Syllable */ + [0xada8, 0xada8], /* Hangul Syllable */ + [0xada9, 0xada9], /* Hangul Syllable */ + [0xadaa, 0xadaa], /* Hangul Syllable */ + [0xadab, 0xadab], /* Hangul Syllable */ + [0xadac, 0xadac], /* Hangul Syllable */ + [0xadad, 0xadad], /* Hangul Syllable */ + [0xadae, 0xadae], /* Hangul Syllable */ + [0xadaf, 0xadaf], /* Hangul Syllable */ + [0xadb0, 0xadb0], /* Hangul Syllable */ + [0xadb1, 0xadb1], /* Hangul Syllable */ + [0xadb2, 0xadb2], /* Hangul Syllable */ + [0xadb3, 0xadb3], /* Hangul Syllable */ + [0xadb4, 0xadb4], /* Hangul Syllable */ + [0xadb5, 0xadb5], /* Hangul Syllable */ + [0xadb6, 0xadb6], /* Hangul Syllable */ + [0xadb7, 0xadb7], /* Hangul Syllable */ + [0xadb8, 0xadb8], /* Hangul Syllable */ + [0xadb9, 0xadb9], /* Hangul Syllable */ + [0xadba, 0xadba], /* Hangul Syllable */ + [0xadbb, 0xadbb], /* Hangul Syllable */ + [0xadbc, 0xadbc], /* Hangul Syllable */ + [0xadbd, 0xadbd], /* Hangul Syllable */ + [0xadbe, 0xadbe], /* Hangul Syllable */ + [0xadbf, 0xadbf], /* Hangul Syllable */ + [0xadc0, 0xadc0], /* Hangul Syllable */ + [0xadc1, 0xadc1], /* Hangul Syllable */ + [0xadc2, 0xadc2], /* Hangul Syllable */ + [0xadc3, 0xadc3], /* Hangul Syllable */ + [0xadc4, 0xadc4], /* Hangul Syllable */ + [0xadc5, 0xadc5], /* Hangul Syllable */ + [0xadc6, 0xadc6], /* Hangul Syllable */ + [0xadc7, 0xadc7], /* Hangul Syllable */ + [0xadc8, 0xadc8], /* Hangul Syllable */ + [0xadc9, 0xadc9], /* Hangul Syllable */ + [0xadca, 0xadca], /* Hangul Syllable */ + [0xadcb, 0xadcb], /* Hangul Syllable */ + [0xadcc, 0xadcc], /* Hangul Syllable */ + [0xadcd, 0xadcd], /* Hangul Syllable */ + [0xadce, 0xadce], /* Hangul Syllable */ + [0xadcf, 0xadcf], /* Hangul Syllable */ + [0xadd0, 0xadd0], /* Hangul Syllable */ + [0xadd1, 0xadd1], /* Hangul Syllable */ + [0xadd2, 0xadd2], /* Hangul Syllable */ + [0xadd3, 0xadd3], /* Hangul Syllable */ + [0xadd4, 0xadd4], /* Hangul Syllable */ + [0xadd5, 0xadd5], /* Hangul Syllable */ + [0xadd6, 0xadd6], /* Hangul Syllable */ + [0xadd7, 0xadd7], /* Hangul Syllable */ + [0xadd8, 0xadd8], /* Hangul Syllable */ + [0xadd9, 0xadd9], /* Hangul Syllable */ + [0xadda, 0xadda], /* Hangul Syllable */ + [0xaddb, 0xaddb], /* Hangul Syllable */ + [0xaddc, 0xaddc], /* Hangul Syllable */ + [0xaddd, 0xaddd], /* Hangul Syllable */ + [0xadde, 0xadde], /* Hangul Syllable */ + [0xaddf, 0xaddf], /* Hangul Syllable */ + [0xade0, 0xade0], /* Hangul Syllable */ + [0xade1, 0xade1], /* Hangul Syllable */ + [0xade2, 0xade2], /* Hangul Syllable */ + [0xade3, 0xade3], /* Hangul Syllable */ + [0xade4, 0xade4], /* Hangul Syllable */ + [0xade5, 0xade5], /* Hangul Syllable */ + [0xade6, 0xade6], /* Hangul Syllable */ + [0xade7, 0xade7], /* Hangul Syllable */ + [0xade8, 0xade8], /* Hangul Syllable */ + [0xade9, 0xade9], /* Hangul Syllable */ + [0xadea, 0xadea], /* Hangul Syllable */ + [0xadeb, 0xadeb], /* Hangul Syllable */ + [0xadec, 0xadec], /* Hangul Syllable */ + [0xaded, 0xaded], /* Hangul Syllable */ + [0xadee, 0xadee], /* Hangul Syllable */ + [0xadef, 0xadef], /* Hangul Syllable */ + [0xadf0, 0xadf0], /* Hangul Syllable */ + [0xadf1, 0xadf1], /* Hangul Syllable */ + [0xadf2, 0xadf2], /* Hangul Syllable */ + [0xadf3, 0xadf3], /* Hangul Syllable */ + [0xadf4, 0xadf4], /* Hangul Syllable */ + [0xadf5, 0xadf5], /* Hangul Syllable */ + [0xadf6, 0xadf6], /* Hangul Syllable */ + [0xadf7, 0xadf7], /* Hangul Syllable */ + [0xadf8, 0xadf8], /* Hangul Syllable */ + [0xadf9, 0xadf9], /* Hangul Syllable */ + [0xadfa, 0xadfa], /* Hangul Syllable */ + [0xadfb, 0xadfb], /* Hangul Syllable */ + [0xadfc, 0xadfc], /* Hangul Syllable */ + [0xadfd, 0xadfd], /* Hangul Syllable */ + [0xadfe, 0xadfe], /* Hangul Syllable */ + [0xadff, 0xadff], /* Hangul Syllable */ + [0xae00, 0xae00], /* Hangul Syllable */ + [0xae01, 0xae01], /* Hangul Syllable */ + [0xae02, 0xae02], /* Hangul Syllable */ + [0xae03, 0xae03], /* Hangul Syllable */ + [0xae04, 0xae04], /* Hangul Syllable */ + [0xae05, 0xae05], /* Hangul Syllable */ + [0xae06, 0xae06], /* Hangul Syllable */ + [0xae07, 0xae07], /* Hangul Syllable */ + [0xae08, 0xae08], /* Hangul Syllable */ + [0xae09, 0xae09], /* Hangul Syllable */ + [0xae0a, 0xae0a], /* Hangul Syllable */ + [0xae0b, 0xae0b], /* Hangul Syllable */ + [0xae0c, 0xae0c], /* Hangul Syllable */ + [0xae0d, 0xae0d], /* Hangul Syllable */ + [0xae0e, 0xae0e], /* Hangul Syllable */ + [0xae0f, 0xae0f], /* Hangul Syllable */ + [0xae10, 0xae10], /* Hangul Syllable */ + [0xae11, 0xae11], /* Hangul Syllable */ + [0xae12, 0xae12], /* Hangul Syllable */ + [0xae13, 0xae13], /* Hangul Syllable */ + [0xae14, 0xae14], /* Hangul Syllable */ + [0xae15, 0xae15], /* Hangul Syllable */ + [0xae16, 0xae16], /* Hangul Syllable */ + [0xae17, 0xae17], /* Hangul Syllable */ + [0xae18, 0xae18], /* Hangul Syllable */ + [0xae19, 0xae19], /* Hangul Syllable */ + [0xae1a, 0xae1a], /* Hangul Syllable */ + [0xae1b, 0xae1b], /* Hangul Syllable */ + [0xae1c, 0xae1c], /* Hangul Syllable */ + [0xae1d, 0xae1d], /* Hangul Syllable */ + [0xae1e, 0xae1e], /* Hangul Syllable */ + [0xae1f, 0xae1f], /* Hangul Syllable */ + [0xae20, 0xae20], /* Hangul Syllable */ + [0xae21, 0xae21], /* Hangul Syllable */ + [0xae22, 0xae22], /* Hangul Syllable */ + [0xae23, 0xae23], /* Hangul Syllable */ + [0xae24, 0xae24], /* Hangul Syllable */ + [0xae25, 0xae25], /* Hangul Syllable */ + [0xae26, 0xae26], /* Hangul Syllable */ + [0xae27, 0xae27], /* Hangul Syllable */ + [0xae28, 0xae28], /* Hangul Syllable */ + [0xae29, 0xae29], /* Hangul Syllable */ + [0xae2a, 0xae2a], /* Hangul Syllable */ + [0xae2b, 0xae2b], /* Hangul Syllable */ + [0xae2c, 0xae2c], /* Hangul Syllable */ + [0xae2d, 0xae2d], /* Hangul Syllable */ + [0xae2e, 0xae2e], /* Hangul Syllable */ + [0xae2f, 0xae2f], /* Hangul Syllable */ + [0xae30, 0xae30], /* Hangul Syllable */ + [0xae31, 0xae31], /* Hangul Syllable */ + [0xae32, 0xae32], /* Hangul Syllable */ + [0xae33, 0xae33], /* Hangul Syllable */ + [0xae34, 0xae34], /* Hangul Syllable */ + [0xae35, 0xae35], /* Hangul Syllable */ + [0xae36, 0xae36], /* Hangul Syllable */ + [0xae37, 0xae37], /* Hangul Syllable */ + [0xae38, 0xae38], /* Hangul Syllable */ + [0xae39, 0xae39], /* Hangul Syllable */ + [0xae3a, 0xae3a], /* Hangul Syllable */ + [0xae3b, 0xae3b], /* Hangul Syllable */ + [0xae3c, 0xae3c], /* Hangul Syllable */ + [0xae3d, 0xae3d], /* Hangul Syllable */ + [0xae3e, 0xae3e], /* Hangul Syllable */ + [0xae3f, 0xae3f], /* Hangul Syllable */ + [0xae40, 0xae40], /* Hangul Syllable */ + [0xae41, 0xae41], /* Hangul Syllable */ + [0xae42, 0xae42], /* Hangul Syllable */ + [0xae43, 0xae43], /* Hangul Syllable */ + [0xae44, 0xae44], /* Hangul Syllable */ + [0xae45, 0xae45], /* Hangul Syllable */ + [0xae46, 0xae46], /* Hangul Syllable */ + [0xae47, 0xae47], /* Hangul Syllable */ + [0xae48, 0xae48], /* Hangul Syllable */ + [0xae49, 0xae49], /* Hangul Syllable */ + [0xae4a, 0xae4a], /* Hangul Syllable */ + [0xae4b, 0xae4b], /* Hangul Syllable */ + [0xae4c, 0xae4c], /* Hangul Syllable */ + [0xae4d, 0xae4d], /* Hangul Syllable */ + [0xae4e, 0xae4e], /* Hangul Syllable */ + [0xae4f, 0xae4f], /* Hangul Syllable */ + [0xae50, 0xae50], /* Hangul Syllable */ + [0xae51, 0xae51], /* Hangul Syllable */ + [0xae52, 0xae52], /* Hangul Syllable */ + [0xae53, 0xae53], /* Hangul Syllable */ + [0xae54, 0xae54], /* Hangul Syllable */ + [0xae55, 0xae55], /* Hangul Syllable */ + [0xae56, 0xae56], /* Hangul Syllable */ + [0xae57, 0xae57], /* Hangul Syllable */ + [0xae58, 0xae58], /* Hangul Syllable */ + [0xae59, 0xae59], /* Hangul Syllable */ + [0xae5a, 0xae5a], /* Hangul Syllable */ + [0xae5b, 0xae5b], /* Hangul Syllable */ + [0xae5c, 0xae5c], /* Hangul Syllable */ + [0xae5d, 0xae5d], /* Hangul Syllable */ + [0xae5e, 0xae5e], /* Hangul Syllable */ + [0xae5f, 0xae5f], /* Hangul Syllable */ + [0xae60, 0xae60], /* Hangul Syllable */ + [0xae61, 0xae61], /* Hangul Syllable */ + [0xae62, 0xae62], /* Hangul Syllable */ + [0xae63, 0xae63], /* Hangul Syllable */ + [0xae64, 0xae64], /* Hangul Syllable */ + [0xae65, 0xae65], /* Hangul Syllable */ + [0xae66, 0xae66], /* Hangul Syllable */ + [0xae67, 0xae67], /* Hangul Syllable */ + [0xae68, 0xae68], /* Hangul Syllable */ + [0xae69, 0xae69], /* Hangul Syllable */ + [0xae6a, 0xae6a], /* Hangul Syllable */ + [0xae6b, 0xae6b], /* Hangul Syllable */ + [0xae6c, 0xae6c], /* Hangul Syllable */ + [0xae6d, 0xae6d], /* Hangul Syllable */ + [0xae6e, 0xae6e], /* Hangul Syllable */ + [0xae6f, 0xae6f], /* Hangul Syllable */ + [0xae70, 0xae70], /* Hangul Syllable */ + [0xae71, 0xae71], /* Hangul Syllable */ + [0xae72, 0xae72], /* Hangul Syllable */ + [0xae73, 0xae73], /* Hangul Syllable */ + [0xae74, 0xae74], /* Hangul Syllable */ + [0xae75, 0xae75], /* Hangul Syllable */ + [0xae76, 0xae76], /* Hangul Syllable */ + [0xae77, 0xae77], /* Hangul Syllable */ + [0xae78, 0xae78], /* Hangul Syllable */ + [0xae79, 0xae79], /* Hangul Syllable */ + [0xae7a, 0xae7a], /* Hangul Syllable */ + [0xae7b, 0xae7b], /* Hangul Syllable */ + [0xae7c, 0xae7c], /* Hangul Syllable */ + [0xae7d, 0xae7d], /* Hangul Syllable */ + [0xae7e, 0xae7e], /* Hangul Syllable */ + [0xae7f, 0xae7f], /* Hangul Syllable */ + [0xae80, 0xae80], /* Hangul Syllable */ + [0xae81, 0xae81], /* Hangul Syllable */ + [0xae82, 0xae82], /* Hangul Syllable */ + [0xae83, 0xae83], /* Hangul Syllable */ + [0xae84, 0xae84], /* Hangul Syllable */ + [0xae85, 0xae85], /* Hangul Syllable */ + [0xae86, 0xae86], /* Hangul Syllable */ + [0xae87, 0xae87], /* Hangul Syllable */ + [0xae88, 0xae88], /* Hangul Syllable */ + [0xae89, 0xae89], /* Hangul Syllable */ + [0xae8a, 0xae8a], /* Hangul Syllable */ + [0xae8b, 0xae8b], /* Hangul Syllable */ + [0xae8c, 0xae8c], /* Hangul Syllable */ + [0xae8d, 0xae8d], /* Hangul Syllable */ + [0xae8e, 0xae8e], /* Hangul Syllable */ + [0xae8f, 0xae8f], /* Hangul Syllable */ + [0xae90, 0xae90], /* Hangul Syllable */ + [0xae91, 0xae91], /* Hangul Syllable */ + [0xae92, 0xae92], /* Hangul Syllable */ + [0xae93, 0xae93], /* Hangul Syllable */ + [0xae94, 0xae94], /* Hangul Syllable */ + [0xae95, 0xae95], /* Hangul Syllable */ + [0xae96, 0xae96], /* Hangul Syllable */ + [0xae97, 0xae97], /* Hangul Syllable */ + [0xae98, 0xae98], /* Hangul Syllable */ + [0xae99, 0xae99], /* Hangul Syllable */ + [0xae9a, 0xae9a], /* Hangul Syllable */ + [0xae9b, 0xae9b], /* Hangul Syllable */ + [0xae9c, 0xae9c], /* Hangul Syllable */ + [0xae9d, 0xae9d], /* Hangul Syllable */ + [0xae9e, 0xae9e], /* Hangul Syllable */ + [0xae9f, 0xae9f], /* Hangul Syllable */ + [0xaea0, 0xaea0], /* Hangul Syllable */ + [0xaea1, 0xaea1], /* Hangul Syllable */ + [0xaea2, 0xaea2], /* Hangul Syllable */ + [0xaea3, 0xaea3], /* Hangul Syllable */ + [0xaea4, 0xaea4], /* Hangul Syllable */ + [0xaea5, 0xaea5], /* Hangul Syllable */ + [0xaea6, 0xaea6], /* Hangul Syllable */ + [0xaea7, 0xaea7], /* Hangul Syllable */ + [0xaea8, 0xaea8], /* Hangul Syllable */ + [0xaea9, 0xaea9], /* Hangul Syllable */ + [0xaeaa, 0xaeaa], /* Hangul Syllable */ + [0xaeab, 0xaeab], /* Hangul Syllable */ + [0xaeac, 0xaeac], /* Hangul Syllable */ + [0xaead, 0xaead], /* Hangul Syllable */ + [0xaeae, 0xaeae], /* Hangul Syllable */ + [0xaeaf, 0xaeaf], /* Hangul Syllable */ + [0xaeb0, 0xaeb0], /* Hangul Syllable */ + [0xaeb1, 0xaeb1], /* Hangul Syllable */ + [0xaeb2, 0xaeb2], /* Hangul Syllable */ + [0xaeb3, 0xaeb3], /* Hangul Syllable */ + [0xaeb4, 0xaeb4], /* Hangul Syllable */ + [0xaeb5, 0xaeb5], /* Hangul Syllable */ + [0xaeb6, 0xaeb6], /* Hangul Syllable */ + [0xaeb7, 0xaeb7], /* Hangul Syllable */ + [0xaeb8, 0xaeb8], /* Hangul Syllable */ + [0xaeb9, 0xaeb9], /* Hangul Syllable */ + [0xaeba, 0xaeba], /* Hangul Syllable */ + [0xaebb, 0xaebb], /* Hangul Syllable */ + [0xaebc, 0xaebc], /* Hangul Syllable */ + [0xaebd, 0xaebd], /* Hangul Syllable */ + [0xaebe, 0xaebe], /* Hangul Syllable */ + [0xaebf, 0xaebf], /* Hangul Syllable */ + [0xaec0, 0xaec0], /* Hangul Syllable */ + [0xaec1, 0xaec1], /* Hangul Syllable */ + [0xaec2, 0xaec2], /* Hangul Syllable */ + [0xaec3, 0xaec3], /* Hangul Syllable */ + [0xaec4, 0xaec4], /* Hangul Syllable */ + [0xaec5, 0xaec5], /* Hangul Syllable */ + [0xaec6, 0xaec6], /* Hangul Syllable */ + [0xaec7, 0xaec7], /* Hangul Syllable */ + [0xaec8, 0xaec8], /* Hangul Syllable */ + [0xaec9, 0xaec9], /* Hangul Syllable */ + [0xaeca, 0xaeca], /* Hangul Syllable */ + [0xaecb, 0xaecb], /* Hangul Syllable */ + [0xaecc, 0xaecc], /* Hangul Syllable */ + [0xaecd, 0xaecd], /* Hangul Syllable */ + [0xaece, 0xaece], /* Hangul Syllable */ + [0xaecf, 0xaecf], /* Hangul Syllable */ + [0xaed0, 0xaed0], /* Hangul Syllable */ + [0xaed1, 0xaed1], /* Hangul Syllable */ + [0xaed2, 0xaed2], /* Hangul Syllable */ + [0xaed3, 0xaed3], /* Hangul Syllable */ + [0xaed4, 0xaed4], /* Hangul Syllable */ + [0xaed5, 0xaed5], /* Hangul Syllable */ + [0xaed6, 0xaed6], /* Hangul Syllable */ + [0xaed7, 0xaed7], /* Hangul Syllable */ + [0xaed8, 0xaed8], /* Hangul Syllable */ + [0xaed9, 0xaed9], /* Hangul Syllable */ + [0xaeda, 0xaeda], /* Hangul Syllable */ + [0xaedb, 0xaedb], /* Hangul Syllable */ + [0xaedc, 0xaedc], /* Hangul Syllable */ + [0xaedd, 0xaedd], /* Hangul Syllable */ + [0xaede, 0xaede], /* Hangul Syllable */ + [0xaedf, 0xaedf], /* Hangul Syllable */ + [0xaee0, 0xaee0], /* Hangul Syllable */ + [0xaee1, 0xaee1], /* Hangul Syllable */ + [0xaee2, 0xaee2], /* Hangul Syllable */ + [0xaee3, 0xaee3], /* Hangul Syllable */ + [0xaee4, 0xaee4], /* Hangul Syllable */ + [0xaee5, 0xaee5], /* Hangul Syllable */ + [0xaee6, 0xaee6], /* Hangul Syllable */ + [0xaee7, 0xaee7], /* Hangul Syllable */ + [0xaee8, 0xaee8], /* Hangul Syllable */ + [0xaee9, 0xaee9], /* Hangul Syllable */ + [0xaeea, 0xaeea], /* Hangul Syllable */ + [0xaeeb, 0xaeeb], /* Hangul Syllable */ + [0xaeec, 0xaeec], /* Hangul Syllable */ + [0xaeed, 0xaeed], /* Hangul Syllable */ + [0xaeee, 0xaeee], /* Hangul Syllable */ + [0xaeef, 0xaeef], /* Hangul Syllable */ + [0xaef0, 0xaef0], /* Hangul Syllable */ + [0xaef1, 0xaef1], /* Hangul Syllable */ + [0xaef2, 0xaef2], /* Hangul Syllable */ + [0xaef3, 0xaef3], /* Hangul Syllable */ + [0xaef4, 0xaef4], /* Hangul Syllable */ + [0xaef5, 0xaef5], /* Hangul Syllable */ + [0xaef6, 0xaef6], /* Hangul Syllable */ + [0xaef7, 0xaef7], /* Hangul Syllable */ + [0xaef8, 0xaef8], /* Hangul Syllable */ + [0xaef9, 0xaef9], /* Hangul Syllable */ + [0xaefa, 0xaefa], /* Hangul Syllable */ + [0xaefb, 0xaefb], /* Hangul Syllable */ + [0xaefc, 0xaefc], /* Hangul Syllable */ + [0xaefd, 0xaefd], /* Hangul Syllable */ + [0xaefe, 0xaefe], /* Hangul Syllable */ + [0xaeff, 0xaeff], /* Hangul Syllable */ + [0xaf00, 0xaf00], /* Hangul Syllable */ + [0xaf01, 0xaf01], /* Hangul Syllable */ + [0xaf02, 0xaf02], /* Hangul Syllable */ + [0xaf03, 0xaf03], /* Hangul Syllable */ + [0xaf04, 0xaf04], /* Hangul Syllable */ + [0xaf05, 0xaf05], /* Hangul Syllable */ + [0xaf06, 0xaf06], /* Hangul Syllable */ + [0xaf07, 0xaf07], /* Hangul Syllable */ + [0xaf08, 0xaf08], /* Hangul Syllable */ + [0xaf09, 0xaf09], /* Hangul Syllable */ + [0xaf0a, 0xaf0a], /* Hangul Syllable */ + [0xaf0b, 0xaf0b], /* Hangul Syllable */ + [0xaf0c, 0xaf0c], /* Hangul Syllable */ + [0xaf0d, 0xaf0d], /* Hangul Syllable */ + [0xaf0e, 0xaf0e], /* Hangul Syllable */ + [0xaf0f, 0xaf0f], /* Hangul Syllable */ + [0xaf10, 0xaf10], /* Hangul Syllable */ + [0xaf11, 0xaf11], /* Hangul Syllable */ + [0xaf12, 0xaf12], /* Hangul Syllable */ + [0xaf13, 0xaf13], /* Hangul Syllable */ + [0xaf14, 0xaf14], /* Hangul Syllable */ + [0xaf15, 0xaf15], /* Hangul Syllable */ + [0xaf16, 0xaf16], /* Hangul Syllable */ + [0xaf17, 0xaf17], /* Hangul Syllable */ + [0xaf18, 0xaf18], /* Hangul Syllable */ + [0xaf19, 0xaf19], /* Hangul Syllable */ + [0xaf1a, 0xaf1a], /* Hangul Syllable */ + [0xaf1b, 0xaf1b], /* Hangul Syllable */ + [0xaf1c, 0xaf1c], /* Hangul Syllable */ + [0xaf1d, 0xaf1d], /* Hangul Syllable */ + [0xaf1e, 0xaf1e], /* Hangul Syllable */ + [0xaf1f, 0xaf1f], /* Hangul Syllable */ + [0xaf20, 0xaf20], /* Hangul Syllable */ + [0xaf21, 0xaf21], /* Hangul Syllable */ + [0xaf22, 0xaf22], /* Hangul Syllable */ + [0xaf23, 0xaf23], /* Hangul Syllable */ + [0xaf24, 0xaf24], /* Hangul Syllable */ + [0xaf25, 0xaf25], /* Hangul Syllable */ + [0xaf26, 0xaf26], /* Hangul Syllable */ + [0xaf27, 0xaf27], /* Hangul Syllable */ + [0xaf28, 0xaf28], /* Hangul Syllable */ + [0xaf29, 0xaf29], /* Hangul Syllable */ + [0xaf2a, 0xaf2a], /* Hangul Syllable */ + [0xaf2b, 0xaf2b], /* Hangul Syllable */ + [0xaf2c, 0xaf2c], /* Hangul Syllable */ + [0xaf2d, 0xaf2d], /* Hangul Syllable */ + [0xaf2e, 0xaf2e], /* Hangul Syllable */ + [0xaf2f, 0xaf2f], /* Hangul Syllable */ + [0xaf30, 0xaf30], /* Hangul Syllable */ + [0xaf31, 0xaf31], /* Hangul Syllable */ + [0xaf32, 0xaf32], /* Hangul Syllable */ + [0xaf33, 0xaf33], /* Hangul Syllable */ + [0xaf34, 0xaf34], /* Hangul Syllable */ + [0xaf35, 0xaf35], /* Hangul Syllable */ + [0xaf36, 0xaf36], /* Hangul Syllable */ + [0xaf37, 0xaf37], /* Hangul Syllable */ + [0xaf38, 0xaf38], /* Hangul Syllable */ + [0xaf39, 0xaf39], /* Hangul Syllable */ + [0xaf3a, 0xaf3a], /* Hangul Syllable */ + [0xaf3b, 0xaf3b], /* Hangul Syllable */ + [0xaf3c, 0xaf3c], /* Hangul Syllable */ + [0xaf3d, 0xaf3d], /* Hangul Syllable */ + [0xaf3e, 0xaf3e], /* Hangul Syllable */ + [0xaf3f, 0xaf3f], /* Hangul Syllable */ + [0xaf40, 0xaf40], /* Hangul Syllable */ + [0xaf41, 0xaf41], /* Hangul Syllable */ + [0xaf42, 0xaf42], /* Hangul Syllable */ + [0xaf43, 0xaf43], /* Hangul Syllable */ + [0xaf44, 0xaf44], /* Hangul Syllable */ + [0xaf45, 0xaf45], /* Hangul Syllable */ + [0xaf46, 0xaf46], /* Hangul Syllable */ + [0xaf47, 0xaf47], /* Hangul Syllable */ + [0xaf48, 0xaf48], /* Hangul Syllable */ + [0xaf49, 0xaf49], /* Hangul Syllable */ + [0xaf4a, 0xaf4a], /* Hangul Syllable */ + [0xaf4b, 0xaf4b], /* Hangul Syllable */ + [0xaf4c, 0xaf4c], /* Hangul Syllable */ + [0xaf4d, 0xaf4d], /* Hangul Syllable */ + [0xaf4e, 0xaf4e], /* Hangul Syllable */ + [0xaf4f, 0xaf4f], /* Hangul Syllable */ + [0xaf50, 0xaf50], /* Hangul Syllable */ + [0xaf51, 0xaf51], /* Hangul Syllable */ + [0xaf52, 0xaf52], /* Hangul Syllable */ + [0xaf53, 0xaf53], /* Hangul Syllable */ + [0xaf54, 0xaf54], /* Hangul Syllable */ + [0xaf55, 0xaf55], /* Hangul Syllable */ + [0xaf56, 0xaf56], /* Hangul Syllable */ + [0xaf57, 0xaf57], /* Hangul Syllable */ + [0xaf58, 0xaf58], /* Hangul Syllable */ + [0xaf59, 0xaf59], /* Hangul Syllable */ + [0xaf5a, 0xaf5a], /* Hangul Syllable */ + [0xaf5b, 0xaf5b], /* Hangul Syllable */ + [0xaf5c, 0xaf5c], /* Hangul Syllable */ + [0xaf5d, 0xaf5d], /* Hangul Syllable */ + [0xaf5e, 0xaf5e], /* Hangul Syllable */ + [0xaf5f, 0xaf5f], /* Hangul Syllable */ + [0xaf60, 0xaf60], /* Hangul Syllable */ + [0xaf61, 0xaf61], /* Hangul Syllable */ + [0xaf62, 0xaf62], /* Hangul Syllable */ + [0xaf63, 0xaf63], /* Hangul Syllable */ + [0xaf64, 0xaf64], /* Hangul Syllable */ + [0xaf65, 0xaf65], /* Hangul Syllable */ + [0xaf66, 0xaf66], /* Hangul Syllable */ + [0xaf67, 0xaf67], /* Hangul Syllable */ + [0xaf68, 0xaf68], /* Hangul Syllable */ + [0xaf69, 0xaf69], /* Hangul Syllable */ + [0xaf6a, 0xaf6a], /* Hangul Syllable */ + [0xaf6b, 0xaf6b], /* Hangul Syllable */ + [0xaf6c, 0xaf6c], /* Hangul Syllable */ + [0xaf6d, 0xaf6d], /* Hangul Syllable */ + [0xaf6e, 0xaf6e], /* Hangul Syllable */ + [0xaf6f, 0xaf6f], /* Hangul Syllable */ + [0xaf70, 0xaf70], /* Hangul Syllable */ + [0xaf71, 0xaf71], /* Hangul Syllable */ + [0xaf72, 0xaf72], /* Hangul Syllable */ + [0xaf73, 0xaf73], /* Hangul Syllable */ + [0xaf74, 0xaf74], /* Hangul Syllable */ + [0xaf75, 0xaf75], /* Hangul Syllable */ + [0xaf76, 0xaf76], /* Hangul Syllable */ + [0xaf77, 0xaf77], /* Hangul Syllable */ + [0xaf78, 0xaf78], /* Hangul Syllable */ + [0xaf79, 0xaf79], /* Hangul Syllable */ + [0xaf7a, 0xaf7a], /* Hangul Syllable */ + [0xaf7b, 0xaf7b], /* Hangul Syllable */ + [0xaf7c, 0xaf7c], /* Hangul Syllable */ + [0xaf7d, 0xaf7d], /* Hangul Syllable */ + [0xaf7e, 0xaf7e], /* Hangul Syllable */ + [0xaf7f, 0xaf7f], /* Hangul Syllable */ + [0xaf80, 0xaf80], /* Hangul Syllable */ + [0xaf81, 0xaf81], /* Hangul Syllable */ + [0xaf82, 0xaf82], /* Hangul Syllable */ + [0xaf83, 0xaf83], /* Hangul Syllable */ + [0xaf84, 0xaf84], /* Hangul Syllable */ + [0xaf85, 0xaf85], /* Hangul Syllable */ + [0xaf86, 0xaf86], /* Hangul Syllable */ + [0xaf87, 0xaf87], /* Hangul Syllable */ + [0xaf88, 0xaf88], /* Hangul Syllable */ + [0xaf89, 0xaf89], /* Hangul Syllable */ + [0xaf8a, 0xaf8a], /* Hangul Syllable */ + [0xaf8b, 0xaf8b], /* Hangul Syllable */ + [0xaf8c, 0xaf8c], /* Hangul Syllable */ + [0xaf8d, 0xaf8d], /* Hangul Syllable */ + [0xaf8e, 0xaf8e], /* Hangul Syllable */ + [0xaf8f, 0xaf8f], /* Hangul Syllable */ + [0xaf90, 0xaf90], /* Hangul Syllable */ + [0xaf91, 0xaf91], /* Hangul Syllable */ + [0xaf92, 0xaf92], /* Hangul Syllable */ + [0xaf93, 0xaf93], /* Hangul Syllable */ + [0xaf94, 0xaf94], /* Hangul Syllable */ + [0xaf95, 0xaf95], /* Hangul Syllable */ + [0xaf96, 0xaf96], /* Hangul Syllable */ + [0xaf97, 0xaf97], /* Hangul Syllable */ + [0xaf98, 0xaf98], /* Hangul Syllable */ + [0xaf99, 0xaf99], /* Hangul Syllable */ + [0xaf9a, 0xaf9a], /* Hangul Syllable */ + [0xaf9b, 0xaf9b], /* Hangul Syllable */ + [0xaf9c, 0xaf9c], /* Hangul Syllable */ + [0xaf9d, 0xaf9d], /* Hangul Syllable */ + [0xaf9e, 0xaf9e], /* Hangul Syllable */ + [0xaf9f, 0xaf9f], /* Hangul Syllable */ + [0xafa0, 0xafa0], /* Hangul Syllable */ + [0xafa1, 0xafa1], /* Hangul Syllable */ + [0xafa2, 0xafa2], /* Hangul Syllable */ + [0xafa3, 0xafa3], /* Hangul Syllable */ + [0xafa4, 0xafa4], /* Hangul Syllable */ + [0xafa5, 0xafa5], /* Hangul Syllable */ + [0xafa6, 0xafa6], /* Hangul Syllable */ + [0xafa7, 0xafa7], /* Hangul Syllable */ + [0xafa8, 0xafa8], /* Hangul Syllable */ + [0xafa9, 0xafa9], /* Hangul Syllable */ + [0xafaa, 0xafaa], /* Hangul Syllable */ + [0xafab, 0xafab], /* Hangul Syllable */ + [0xafac, 0xafac], /* Hangul Syllable */ + [0xafad, 0xafad], /* Hangul Syllable */ + [0xafae, 0xafae], /* Hangul Syllable */ + [0xafaf, 0xafaf], /* Hangul Syllable */ + [0xafb0, 0xafb0], /* Hangul Syllable */ + [0xafb1, 0xafb1], /* Hangul Syllable */ + [0xafb2, 0xafb2], /* Hangul Syllable */ + [0xafb3, 0xafb3], /* Hangul Syllable */ + [0xafb4, 0xafb4], /* Hangul Syllable */ + [0xafb5, 0xafb5], /* Hangul Syllable */ + [0xafb6, 0xafb6], /* Hangul Syllable */ + [0xafb7, 0xafb7], /* Hangul Syllable */ + [0xafb8, 0xafb8], /* Hangul Syllable */ + [0xafb9, 0xafb9], /* Hangul Syllable */ + [0xafba, 0xafba], /* Hangul Syllable */ + [0xafbb, 0xafbb], /* Hangul Syllable */ + [0xafbc, 0xafbc], /* Hangul Syllable */ + [0xafbd, 0xafbd], /* Hangul Syllable */ + [0xafbe, 0xafbe], /* Hangul Syllable */ + [0xafbf, 0xafbf], /* Hangul Syllable */ + [0xafc0, 0xafc0], /* Hangul Syllable */ + [0xafc1, 0xafc1], /* Hangul Syllable */ + [0xafc2, 0xafc2], /* Hangul Syllable */ + [0xafc3, 0xafc3], /* Hangul Syllable */ + [0xafc4, 0xafc4], /* Hangul Syllable */ + [0xafc5, 0xafc5], /* Hangul Syllable */ + [0xafc6, 0xafc6], /* Hangul Syllable */ + [0xafc7, 0xafc7], /* Hangul Syllable */ + [0xafc8, 0xafc8], /* Hangul Syllable */ + [0xafc9, 0xafc9], /* Hangul Syllable */ + [0xafca, 0xafca], /* Hangul Syllable */ + [0xafcb, 0xafcb], /* Hangul Syllable */ + [0xafcc, 0xafcc], /* Hangul Syllable */ + [0xafcd, 0xafcd], /* Hangul Syllable */ + [0xafce, 0xafce], /* Hangul Syllable */ + [0xafcf, 0xafcf], /* Hangul Syllable */ + [0xafd0, 0xafd0], /* Hangul Syllable */ + [0xafd1, 0xafd1], /* Hangul Syllable */ + [0xafd2, 0xafd2], /* Hangul Syllable */ + [0xafd3, 0xafd3], /* Hangul Syllable */ + [0xafd4, 0xafd4], /* Hangul Syllable */ + [0xafd5, 0xafd5], /* Hangul Syllable */ + [0xafd6, 0xafd6], /* Hangul Syllable */ + [0xafd7, 0xafd7], /* Hangul Syllable */ + [0xafd8, 0xafd8], /* Hangul Syllable */ + [0xafd9, 0xafd9], /* Hangul Syllable */ + [0xafda, 0xafda], /* Hangul Syllable */ + [0xafdb, 0xafdb], /* Hangul Syllable */ + [0xafdc, 0xafdc], /* Hangul Syllable */ + [0xafdd, 0xafdd], /* Hangul Syllable */ + [0xafde, 0xafde], /* Hangul Syllable */ + [0xafdf, 0xafdf], /* Hangul Syllable */ + [0xafe0, 0xafe0], /* Hangul Syllable */ + [0xafe1, 0xafe1], /* Hangul Syllable */ + [0xafe2, 0xafe2], /* Hangul Syllable */ + [0xafe3, 0xafe3], /* Hangul Syllable */ + [0xafe4, 0xafe4], /* Hangul Syllable */ + [0xafe5, 0xafe5], /* Hangul Syllable */ + [0xafe6, 0xafe6], /* Hangul Syllable */ + [0xafe7, 0xafe7], /* Hangul Syllable */ + [0xafe8, 0xafe8], /* Hangul Syllable */ + [0xafe9, 0xafe9], /* Hangul Syllable */ + [0xafea, 0xafea], /* Hangul Syllable */ + [0xafeb, 0xafeb], /* Hangul Syllable */ + [0xafec, 0xafec], /* Hangul Syllable */ + [0xafed, 0xafed], /* Hangul Syllable */ + [0xafee, 0xafee], /* Hangul Syllable */ + [0xafef, 0xafef], /* Hangul Syllable */ + [0xaff0, 0xaff0], /* Hangul Syllable */ + [0xaff1, 0xaff1], /* Hangul Syllable */ + [0xaff2, 0xaff2], /* Hangul Syllable */ + [0xaff3, 0xaff3], /* Hangul Syllable */ + [0xaff4, 0xaff4], /* Hangul Syllable */ + [0xaff5, 0xaff5], /* Hangul Syllable */ + [0xaff6, 0xaff6], /* Hangul Syllable */ + [0xaff7, 0xaff7], /* Hangul Syllable */ + [0xaff8, 0xaff8], /* Hangul Syllable */ + [0xaff9, 0xaff9], /* Hangul Syllable */ + [0xaffa, 0xaffa], /* Hangul Syllable */ + [0xaffb, 0xaffb], /* Hangul Syllable */ + [0xaffc, 0xaffc], /* Hangul Syllable */ + [0xaffd, 0xaffd], /* Hangul Syllable */ + [0xaffe, 0xaffe], /* Hangul Syllable */ + [0xafff, 0xafff], /* Hangul Syllable */ + [0xb000, 0xb000], /* Hangul Syllable */ + [0xb001, 0xb001], /* Hangul Syllable */ + [0xb002, 0xb002], /* Hangul Syllable */ + [0xb003, 0xb003], /* Hangul Syllable */ + [0xb004, 0xb004], /* Hangul Syllable */ + [0xb005, 0xb005], /* Hangul Syllable */ + [0xb006, 0xb006], /* Hangul Syllable */ + [0xb007, 0xb007], /* Hangul Syllable */ + [0xb008, 0xb008], /* Hangul Syllable */ + [0xb009, 0xb009], /* Hangul Syllable */ + [0xb00a, 0xb00a], /* Hangul Syllable */ + [0xb00b, 0xb00b], /* Hangul Syllable */ + [0xb00c, 0xb00c], /* Hangul Syllable */ + [0xb00d, 0xb00d], /* Hangul Syllable */ + [0xb00e, 0xb00e], /* Hangul Syllable */ + [0xb00f, 0xb00f], /* Hangul Syllable */ + [0xb010, 0xb010], /* Hangul Syllable */ + [0xb011, 0xb011], /* Hangul Syllable */ + [0xb012, 0xb012], /* Hangul Syllable */ + [0xb013, 0xb013], /* Hangul Syllable */ + [0xb014, 0xb014], /* Hangul Syllable */ + [0xb015, 0xb015], /* Hangul Syllable */ + [0xb016, 0xb016], /* Hangul Syllable */ + [0xb017, 0xb017], /* Hangul Syllable */ + [0xb018, 0xb018], /* Hangul Syllable */ + [0xb019, 0xb019], /* Hangul Syllable */ + [0xb01a, 0xb01a], /* Hangul Syllable */ + [0xb01b, 0xb01b], /* Hangul Syllable */ + [0xb01c, 0xb01c], /* Hangul Syllable */ + [0xb01d, 0xb01d], /* Hangul Syllable */ + [0xb01e, 0xb01e], /* Hangul Syllable */ + [0xb01f, 0xb01f], /* Hangul Syllable */ + [0xb020, 0xb020], /* Hangul Syllable */ + [0xb021, 0xb021], /* Hangul Syllable */ + [0xb022, 0xb022], /* Hangul Syllable */ + [0xb023, 0xb023], /* Hangul Syllable */ + [0xb024, 0xb024], /* Hangul Syllable */ + [0xb025, 0xb025], /* Hangul Syllable */ + [0xb026, 0xb026], /* Hangul Syllable */ + [0xb027, 0xb027], /* Hangul Syllable */ + [0xb028, 0xb028], /* Hangul Syllable */ + [0xb029, 0xb029], /* Hangul Syllable */ + [0xb02a, 0xb02a], /* Hangul Syllable */ + [0xb02b, 0xb02b], /* Hangul Syllable */ + [0xb02c, 0xb02c], /* Hangul Syllable */ + [0xb02d, 0xb02d], /* Hangul Syllable */ + [0xb02e, 0xb02e], /* Hangul Syllable */ + [0xb02f, 0xb02f], /* Hangul Syllable */ + [0xb030, 0xb030], /* Hangul Syllable */ + [0xb031, 0xb031], /* Hangul Syllable */ + [0xb032, 0xb032], /* Hangul Syllable */ + [0xb033, 0xb033], /* Hangul Syllable */ + [0xb034, 0xb034], /* Hangul Syllable */ + [0xb035, 0xb035], /* Hangul Syllable */ + [0xb036, 0xb036], /* Hangul Syllable */ + [0xb037, 0xb037], /* Hangul Syllable */ + [0xb038, 0xb038], /* Hangul Syllable */ + [0xb039, 0xb039], /* Hangul Syllable */ + [0xb03a, 0xb03a], /* Hangul Syllable */ + [0xb03b, 0xb03b], /* Hangul Syllable */ + [0xb03c, 0xb03c], /* Hangul Syllable */ + [0xb03d, 0xb03d], /* Hangul Syllable */ + [0xb03e, 0xb03e], /* Hangul Syllable */ + [0xb03f, 0xb03f], /* Hangul Syllable */ + [0xb040, 0xb040], /* Hangul Syllable */ + [0xb041, 0xb041], /* Hangul Syllable */ + [0xb042, 0xb042], /* Hangul Syllable */ + [0xb043, 0xb043], /* Hangul Syllable */ + [0xb044, 0xb044], /* Hangul Syllable */ + [0xb045, 0xb045], /* Hangul Syllable */ + [0xb046, 0xb046], /* Hangul Syllable */ + [0xb047, 0xb047], /* Hangul Syllable */ + [0xb048, 0xb048], /* Hangul Syllable */ + [0xb049, 0xb049], /* Hangul Syllable */ + [0xb04a, 0xb04a], /* Hangul Syllable */ + [0xb04b, 0xb04b], /* Hangul Syllable */ + [0xb04c, 0xb04c], /* Hangul Syllable */ + [0xb04d, 0xb04d], /* Hangul Syllable */ + [0xb04e, 0xb04e], /* Hangul Syllable */ + [0xb04f, 0xb04f], /* Hangul Syllable */ + [0xb050, 0xb050], /* Hangul Syllable */ + [0xb051, 0xb051], /* Hangul Syllable */ + [0xb052, 0xb052], /* Hangul Syllable */ + [0xb053, 0xb053], /* Hangul Syllable */ + [0xb054, 0xb054], /* Hangul Syllable */ + [0xb055, 0xb055], /* Hangul Syllable */ + [0xb056, 0xb056], /* Hangul Syllable */ + [0xb057, 0xb057], /* Hangul Syllable */ + [0xb058, 0xb058], /* Hangul Syllable */ + [0xb059, 0xb059], /* Hangul Syllable */ + [0xb05a, 0xb05a], /* Hangul Syllable */ + [0xb05b, 0xb05b], /* Hangul Syllable */ + [0xb05c, 0xb05c], /* Hangul Syllable */ + [0xb05d, 0xb05d], /* Hangul Syllable */ + [0xb05e, 0xb05e], /* Hangul Syllable */ + [0xb05f, 0xb05f], /* Hangul Syllable */ + [0xb060, 0xb060], /* Hangul Syllable */ + [0xb061, 0xb061], /* Hangul Syllable */ + [0xb062, 0xb062], /* Hangul Syllable */ + [0xb063, 0xb063], /* Hangul Syllable */ + [0xb064, 0xb064], /* Hangul Syllable */ + [0xb065, 0xb065], /* Hangul Syllable */ + [0xb066, 0xb066], /* Hangul Syllable */ + [0xb067, 0xb067], /* Hangul Syllable */ + [0xb068, 0xb068], /* Hangul Syllable */ + [0xb069, 0xb069], /* Hangul Syllable */ + [0xb06a, 0xb06a], /* Hangul Syllable */ + [0xb06b, 0xb06b], /* Hangul Syllable */ + [0xb06c, 0xb06c], /* Hangul Syllable */ + [0xb06d, 0xb06d], /* Hangul Syllable */ + [0xb06e, 0xb06e], /* Hangul Syllable */ + [0xb06f, 0xb06f], /* Hangul Syllable */ + [0xb070, 0xb070], /* Hangul Syllable */ + [0xb071, 0xb071], /* Hangul Syllable */ + [0xb072, 0xb072], /* Hangul Syllable */ + [0xb073, 0xb073], /* Hangul Syllable */ + [0xb074, 0xb074], /* Hangul Syllable */ + [0xb075, 0xb075], /* Hangul Syllable */ + [0xb076, 0xb076], /* Hangul Syllable */ + [0xb077, 0xb077], /* Hangul Syllable */ + [0xb078, 0xb078], /* Hangul Syllable */ + [0xb079, 0xb079], /* Hangul Syllable */ + [0xb07a, 0xb07a], /* Hangul Syllable */ + [0xb07b, 0xb07b], /* Hangul Syllable */ + [0xb07c, 0xb07c], /* Hangul Syllable */ + [0xb07d, 0xb07d], /* Hangul Syllable */ + [0xb07e, 0xb07e], /* Hangul Syllable */ + [0xb07f, 0xb07f], /* Hangul Syllable */ + [0xb080, 0xb080], /* Hangul Syllable */ + [0xb081, 0xb081], /* Hangul Syllable */ + [0xb082, 0xb082], /* Hangul Syllable */ + [0xb083, 0xb083], /* Hangul Syllable */ + [0xb084, 0xb084], /* Hangul Syllable */ + [0xb085, 0xb085], /* Hangul Syllable */ + [0xb086, 0xb086], /* Hangul Syllable */ + [0xb087, 0xb087], /* Hangul Syllable */ + [0xb088, 0xb088], /* Hangul Syllable */ + [0xb089, 0xb089], /* Hangul Syllable */ + [0xb08a, 0xb08a], /* Hangul Syllable */ + [0xb08b, 0xb08b], /* Hangul Syllable */ + [0xb08c, 0xb08c], /* Hangul Syllable */ + [0xb08d, 0xb08d], /* Hangul Syllable */ + [0xb08e, 0xb08e], /* Hangul Syllable */ + [0xb08f, 0xb08f], /* Hangul Syllable */ + [0xb090, 0xb090], /* Hangul Syllable */ + [0xb091, 0xb091], /* Hangul Syllable */ + [0xb092, 0xb092], /* Hangul Syllable */ + [0xb093, 0xb093], /* Hangul Syllable */ + [0xb094, 0xb094], /* Hangul Syllable */ + [0xb095, 0xb095], /* Hangul Syllable */ + [0xb096, 0xb096], /* Hangul Syllable */ + [0xb097, 0xb097], /* Hangul Syllable */ + [0xb098, 0xb098], /* Hangul Syllable */ + [0xb099, 0xb099], /* Hangul Syllable */ + [0xb09a, 0xb09a], /* Hangul Syllable */ + [0xb09b, 0xb09b], /* Hangul Syllable */ + [0xb09c, 0xb09c], /* Hangul Syllable */ + [0xb09d, 0xb09d], /* Hangul Syllable */ + [0xb09e, 0xb09e], /* Hangul Syllable */ + [0xb09f, 0xb09f], /* Hangul Syllable */ + [0xb0a0, 0xb0a0], /* Hangul Syllable */ + [0xb0a1, 0xb0a1], /* Hangul Syllable */ + [0xb0a2, 0xb0a2], /* Hangul Syllable */ + [0xb0a3, 0xb0a3], /* Hangul Syllable */ + [0xb0a4, 0xb0a4], /* Hangul Syllable */ + [0xb0a5, 0xb0a5], /* Hangul Syllable */ + [0xb0a6, 0xb0a6], /* Hangul Syllable */ + [0xb0a7, 0xb0a7], /* Hangul Syllable */ + [0xb0a8, 0xb0a8], /* Hangul Syllable */ + [0xb0a9, 0xb0a9], /* Hangul Syllable */ + [0xb0aa, 0xb0aa], /* Hangul Syllable */ + [0xb0ab, 0xb0ab], /* Hangul Syllable */ + [0xb0ac, 0xb0ac], /* Hangul Syllable */ + [0xb0ad, 0xb0ad], /* Hangul Syllable */ + [0xb0ae, 0xb0ae], /* Hangul Syllable */ + [0xb0af, 0xb0af], /* Hangul Syllable */ + [0xb0b0, 0xb0b0], /* Hangul Syllable */ + [0xb0b1, 0xb0b1], /* Hangul Syllable */ + [0xb0b2, 0xb0b2], /* Hangul Syllable */ + [0xb0b3, 0xb0b3], /* Hangul Syllable */ + [0xb0b4, 0xb0b4], /* Hangul Syllable */ + [0xb0b5, 0xb0b5], /* Hangul Syllable */ + [0xb0b6, 0xb0b6], /* Hangul Syllable */ + [0xb0b7, 0xb0b7], /* Hangul Syllable */ + [0xb0b8, 0xb0b8], /* Hangul Syllable */ + [0xb0b9, 0xb0b9], /* Hangul Syllable */ + [0xb0ba, 0xb0ba], /* Hangul Syllable */ + [0xb0bb, 0xb0bb], /* Hangul Syllable */ + [0xb0bc, 0xb0bc], /* Hangul Syllable */ + [0xb0bd, 0xb0bd], /* Hangul Syllable */ + [0xb0be, 0xb0be], /* Hangul Syllable */ + [0xb0bf, 0xb0bf], /* Hangul Syllable */ + [0xb0c0, 0xb0c0], /* Hangul Syllable */ + [0xb0c1, 0xb0c1], /* Hangul Syllable */ + [0xb0c2, 0xb0c2], /* Hangul Syllable */ + [0xb0c3, 0xb0c3], /* Hangul Syllable */ + [0xb0c4, 0xb0c4], /* Hangul Syllable */ + [0xb0c5, 0xb0c5], /* Hangul Syllable */ + [0xb0c6, 0xb0c6], /* Hangul Syllable */ + [0xb0c7, 0xb0c7], /* Hangul Syllable */ + [0xb0c8, 0xb0c8], /* Hangul Syllable */ + [0xb0c9, 0xb0c9], /* Hangul Syllable */ + [0xb0ca, 0xb0ca], /* Hangul Syllable */ + [0xb0cb, 0xb0cb], /* Hangul Syllable */ + [0xb0cc, 0xb0cc], /* Hangul Syllable */ + [0xb0cd, 0xb0cd], /* Hangul Syllable */ + [0xb0ce, 0xb0ce], /* Hangul Syllable */ + [0xb0cf, 0xb0cf], /* Hangul Syllable */ + [0xb0d0, 0xb0d0], /* Hangul Syllable */ + [0xb0d1, 0xb0d1], /* Hangul Syllable */ + [0xb0d2, 0xb0d2], /* Hangul Syllable */ + [0xb0d3, 0xb0d3], /* Hangul Syllable */ + [0xb0d4, 0xb0d4], /* Hangul Syllable */ + [0xb0d5, 0xb0d5], /* Hangul Syllable */ + [0xb0d6, 0xb0d6], /* Hangul Syllable */ + [0xb0d7, 0xb0d7], /* Hangul Syllable */ + [0xb0d8, 0xb0d8], /* Hangul Syllable */ + [0xb0d9, 0xb0d9], /* Hangul Syllable */ + [0xb0da, 0xb0da], /* Hangul Syllable */ + [0xb0db, 0xb0db], /* Hangul Syllable */ + [0xb0dc, 0xb0dc], /* Hangul Syllable */ + [0xb0dd, 0xb0dd], /* Hangul Syllable */ + [0xb0de, 0xb0de], /* Hangul Syllable */ + [0xb0df, 0xb0df], /* Hangul Syllable */ + [0xb0e0, 0xb0e0], /* Hangul Syllable */ + [0xb0e1, 0xb0e1], /* Hangul Syllable */ + [0xb0e2, 0xb0e2], /* Hangul Syllable */ + [0xb0e3, 0xb0e3], /* Hangul Syllable */ + [0xb0e4, 0xb0e4], /* Hangul Syllable */ + [0xb0e5, 0xb0e5], /* Hangul Syllable */ + [0xb0e6, 0xb0e6], /* Hangul Syllable */ + [0xb0e7, 0xb0e7], /* Hangul Syllable */ + [0xb0e8, 0xb0e8], /* Hangul Syllable */ + [0xb0e9, 0xb0e9], /* Hangul Syllable */ + [0xb0ea, 0xb0ea], /* Hangul Syllable */ + [0xb0eb, 0xb0eb], /* Hangul Syllable */ + [0xb0ec, 0xb0ec], /* Hangul Syllable */ + [0xb0ed, 0xb0ed], /* Hangul Syllable */ + [0xb0ee, 0xb0ee], /* Hangul Syllable */ + [0xb0ef, 0xb0ef], /* Hangul Syllable */ + [0xb0f0, 0xb0f0], /* Hangul Syllable */ + [0xb0f1, 0xb0f1], /* Hangul Syllable */ + [0xb0f2, 0xb0f2], /* Hangul Syllable */ + [0xb0f3, 0xb0f3], /* Hangul Syllable */ + [0xb0f4, 0xb0f4], /* Hangul Syllable */ + [0xb0f5, 0xb0f5], /* Hangul Syllable */ + [0xb0f6, 0xb0f6], /* Hangul Syllable */ + [0xb0f7, 0xb0f7], /* Hangul Syllable */ + [0xb0f8, 0xb0f8], /* Hangul Syllable */ + [0xb0f9, 0xb0f9], /* Hangul Syllable */ + [0xb0fa, 0xb0fa], /* Hangul Syllable */ + [0xb0fb, 0xb0fb], /* Hangul Syllable */ + [0xb0fc, 0xb0fc], /* Hangul Syllable */ + [0xb0fd, 0xb0fd], /* Hangul Syllable */ + [0xb0fe, 0xb0fe], /* Hangul Syllable */ + [0xb0ff, 0xb0ff], /* Hangul Syllable */ + [0xb100, 0xb100], /* Hangul Syllable */ + [0xb101, 0xb101], /* Hangul Syllable */ + [0xb102, 0xb102], /* Hangul Syllable */ + [0xb103, 0xb103], /* Hangul Syllable */ + [0xb104, 0xb104], /* Hangul Syllable */ + [0xb105, 0xb105], /* Hangul Syllable */ + [0xb106, 0xb106], /* Hangul Syllable */ + [0xb107, 0xb107], /* Hangul Syllable */ + [0xb108, 0xb108], /* Hangul Syllable */ + [0xb109, 0xb109], /* Hangul Syllable */ + [0xb10a, 0xb10a], /* Hangul Syllable */ + [0xb10b, 0xb10b], /* Hangul Syllable */ + [0xb10c, 0xb10c], /* Hangul Syllable */ + [0xb10d, 0xb10d], /* Hangul Syllable */ + [0xb10e, 0xb10e], /* Hangul Syllable */ + [0xb10f, 0xb10f], /* Hangul Syllable */ + [0xb110, 0xb110], /* Hangul Syllable */ + [0xb111, 0xb111], /* Hangul Syllable */ + [0xb112, 0xb112], /* Hangul Syllable */ + [0xb113, 0xb113], /* Hangul Syllable */ + [0xb114, 0xb114], /* Hangul Syllable */ + [0xb115, 0xb115], /* Hangul Syllable */ + [0xb116, 0xb116], /* Hangul Syllable */ + [0xb117, 0xb117], /* Hangul Syllable */ + [0xb118, 0xb118], /* Hangul Syllable */ + [0xb119, 0xb119], /* Hangul Syllable */ + [0xb11a, 0xb11a], /* Hangul Syllable */ + [0xb11b, 0xb11b], /* Hangul Syllable */ + [0xb11c, 0xb11c], /* Hangul Syllable */ + [0xb11d, 0xb11d], /* Hangul Syllable */ + [0xb11e, 0xb11e], /* Hangul Syllable */ + [0xb11f, 0xb11f], /* Hangul Syllable */ + [0xb120, 0xb120], /* Hangul Syllable */ + [0xb121, 0xb121], /* Hangul Syllable */ + [0xb122, 0xb122], /* Hangul Syllable */ + [0xb123, 0xb123], /* Hangul Syllable */ + [0xb124, 0xb124], /* Hangul Syllable */ + [0xb125, 0xb125], /* Hangul Syllable */ + [0xb126, 0xb126], /* Hangul Syllable */ + [0xb127, 0xb127], /* Hangul Syllable */ + [0xb128, 0xb128], /* Hangul Syllable */ + [0xb129, 0xb129], /* Hangul Syllable */ + [0xb12a, 0xb12a], /* Hangul Syllable */ + [0xb12b, 0xb12b], /* Hangul Syllable */ + [0xb12c, 0xb12c], /* Hangul Syllable */ + [0xb12d, 0xb12d], /* Hangul Syllable */ + [0xb12e, 0xb12e], /* Hangul Syllable */ + [0xb12f, 0xb12f], /* Hangul Syllable */ + [0xb130, 0xb130], /* Hangul Syllable */ + [0xb131, 0xb131], /* Hangul Syllable */ + [0xb132, 0xb132], /* Hangul Syllable */ + [0xb133, 0xb133], /* Hangul Syllable */ + [0xb134, 0xb134], /* Hangul Syllable */ + [0xb135, 0xb135], /* Hangul Syllable */ + [0xb136, 0xb136], /* Hangul Syllable */ + [0xb137, 0xb137], /* Hangul Syllable */ + [0xb138, 0xb138], /* Hangul Syllable */ + [0xb139, 0xb139], /* Hangul Syllable */ + [0xb13a, 0xb13a], /* Hangul Syllable */ + [0xb13b, 0xb13b], /* Hangul Syllable */ + [0xb13c, 0xb13c], /* Hangul Syllable */ + [0xb13d, 0xb13d], /* Hangul Syllable */ + [0xb13e, 0xb13e], /* Hangul Syllable */ + [0xb13f, 0xb13f], /* Hangul Syllable */ + [0xb140, 0xb140], /* Hangul Syllable */ + [0xb141, 0xb141], /* Hangul Syllable */ + [0xb142, 0xb142], /* Hangul Syllable */ + [0xb143, 0xb143], /* Hangul Syllable */ + [0xb144, 0xb144], /* Hangul Syllable */ + [0xb145, 0xb145], /* Hangul Syllable */ + [0xb146, 0xb146], /* Hangul Syllable */ + [0xb147, 0xb147], /* Hangul Syllable */ + [0xb148, 0xb148], /* Hangul Syllable */ + [0xb149, 0xb149], /* Hangul Syllable */ + [0xb14a, 0xb14a], /* Hangul Syllable */ + [0xb14b, 0xb14b], /* Hangul Syllable */ + [0xb14c, 0xb14c], /* Hangul Syllable */ + [0xb14d, 0xb14d], /* Hangul Syllable */ + [0xb14e, 0xb14e], /* Hangul Syllable */ + [0xb14f, 0xb14f], /* Hangul Syllable */ + [0xb150, 0xb150], /* Hangul Syllable */ + [0xb151, 0xb151], /* Hangul Syllable */ + [0xb152, 0xb152], /* Hangul Syllable */ + [0xb153, 0xb153], /* Hangul Syllable */ + [0xb154, 0xb154], /* Hangul Syllable */ + [0xb155, 0xb155], /* Hangul Syllable */ + [0xb156, 0xb156], /* Hangul Syllable */ + [0xb157, 0xb157], /* Hangul Syllable */ + [0xb158, 0xb158], /* Hangul Syllable */ + [0xb159, 0xb159], /* Hangul Syllable */ + [0xb15a, 0xb15a], /* Hangul Syllable */ + [0xb15b, 0xb15b], /* Hangul Syllable */ + [0xb15c, 0xb15c], /* Hangul Syllable */ + [0xb15d, 0xb15d], /* Hangul Syllable */ + [0xb15e, 0xb15e], /* Hangul Syllable */ + [0xb15f, 0xb15f], /* Hangul Syllable */ + [0xb160, 0xb160], /* Hangul Syllable */ + [0xb161, 0xb161], /* Hangul Syllable */ + [0xb162, 0xb162], /* Hangul Syllable */ + [0xb163, 0xb163], /* Hangul Syllable */ + [0xb164, 0xb164], /* Hangul Syllable */ + [0xb165, 0xb165], /* Hangul Syllable */ + [0xb166, 0xb166], /* Hangul Syllable */ + [0xb167, 0xb167], /* Hangul Syllable */ + [0xb168, 0xb168], /* Hangul Syllable */ + [0xb169, 0xb169], /* Hangul Syllable */ + [0xb16a, 0xb16a], /* Hangul Syllable */ + [0xb16b, 0xb16b], /* Hangul Syllable */ + [0xb16c, 0xb16c], /* Hangul Syllable */ + [0xb16d, 0xb16d], /* Hangul Syllable */ + [0xb16e, 0xb16e], /* Hangul Syllable */ + [0xb16f, 0xb16f], /* Hangul Syllable */ + [0xb170, 0xb170], /* Hangul Syllable */ + [0xb171, 0xb171], /* Hangul Syllable */ + [0xb172, 0xb172], /* Hangul Syllable */ + [0xb173, 0xb173], /* Hangul Syllable */ + [0xb174, 0xb174], /* Hangul Syllable */ + [0xb175, 0xb175], /* Hangul Syllable */ + [0xb176, 0xb176], /* Hangul Syllable */ + [0xb177, 0xb177], /* Hangul Syllable */ + [0xb178, 0xb178], /* Hangul Syllable */ + [0xb179, 0xb179], /* Hangul Syllable */ + [0xb17a, 0xb17a], /* Hangul Syllable */ + [0xb17b, 0xb17b], /* Hangul Syllable */ + [0xb17c, 0xb17c], /* Hangul Syllable */ + [0xb17d, 0xb17d], /* Hangul Syllable */ + [0xb17e, 0xb17e], /* Hangul Syllable */ + [0xb17f, 0xb17f], /* Hangul Syllable */ + [0xb180, 0xb180], /* Hangul Syllable */ + [0xb181, 0xb181], /* Hangul Syllable */ + [0xb182, 0xb182], /* Hangul Syllable */ + [0xb183, 0xb183], /* Hangul Syllable */ + [0xb184, 0xb184], /* Hangul Syllable */ + [0xb185, 0xb185], /* Hangul Syllable */ + [0xb186, 0xb186], /* Hangul Syllable */ + [0xb187, 0xb187], /* Hangul Syllable */ + [0xb188, 0xb188], /* Hangul Syllable */ + [0xb189, 0xb189], /* Hangul Syllable */ + [0xb18a, 0xb18a], /* Hangul Syllable */ + [0xb18b, 0xb18b], /* Hangul Syllable */ + [0xb18c, 0xb18c], /* Hangul Syllable */ + [0xb18d, 0xb18d], /* Hangul Syllable */ + [0xb18e, 0xb18e], /* Hangul Syllable */ + [0xb18f, 0xb18f], /* Hangul Syllable */ + [0xb190, 0xb190], /* Hangul Syllable */ + [0xb191, 0xb191], /* Hangul Syllable */ + [0xb192, 0xb192], /* Hangul Syllable */ + [0xb193, 0xb193], /* Hangul Syllable */ + [0xb194, 0xb194], /* Hangul Syllable */ + [0xb195, 0xb195], /* Hangul Syllable */ + [0xb196, 0xb196], /* Hangul Syllable */ + [0xb197, 0xb197], /* Hangul Syllable */ + [0xb198, 0xb198], /* Hangul Syllable */ + [0xb199, 0xb199], /* Hangul Syllable */ + [0xb19a, 0xb19a], /* Hangul Syllable */ + [0xb19b, 0xb19b], /* Hangul Syllable */ + [0xb19c, 0xb19c], /* Hangul Syllable */ + [0xb19d, 0xb19d], /* Hangul Syllable */ + [0xb19e, 0xb19e], /* Hangul Syllable */ + [0xb19f, 0xb19f], /* Hangul Syllable */ + [0xb1a0, 0xb1a0], /* Hangul Syllable */ + [0xb1a1, 0xb1a1], /* Hangul Syllable */ + [0xb1a2, 0xb1a2], /* Hangul Syllable */ + [0xb1a3, 0xb1a3], /* Hangul Syllable */ + [0xb1a4, 0xb1a4], /* Hangul Syllable */ + [0xb1a5, 0xb1a5], /* Hangul Syllable */ + [0xb1a6, 0xb1a6], /* Hangul Syllable */ + [0xb1a7, 0xb1a7], /* Hangul Syllable */ + [0xb1a8, 0xb1a8], /* Hangul Syllable */ + [0xb1a9, 0xb1a9], /* Hangul Syllable */ + [0xb1aa, 0xb1aa], /* Hangul Syllable */ + [0xb1ab, 0xb1ab], /* Hangul Syllable */ + [0xb1ac, 0xb1ac], /* Hangul Syllable */ + [0xb1ad, 0xb1ad], /* Hangul Syllable */ + [0xb1ae, 0xb1ae], /* Hangul Syllable */ + [0xb1af, 0xb1af], /* Hangul Syllable */ + [0xb1b0, 0xb1b0], /* Hangul Syllable */ + [0xb1b1, 0xb1b1], /* Hangul Syllable */ + [0xb1b2, 0xb1b2], /* Hangul Syllable */ + [0xb1b3, 0xb1b3], /* Hangul Syllable */ + [0xb1b4, 0xb1b4], /* Hangul Syllable */ + [0xb1b5, 0xb1b5], /* Hangul Syllable */ + [0xb1b6, 0xb1b6], /* Hangul Syllable */ + [0xb1b7, 0xb1b7], /* Hangul Syllable */ + [0xb1b8, 0xb1b8], /* Hangul Syllable */ + [0xb1b9, 0xb1b9], /* Hangul Syllable */ + [0xb1ba, 0xb1ba], /* Hangul Syllable */ + [0xb1bb, 0xb1bb], /* Hangul Syllable */ + [0xb1bc, 0xb1bc], /* Hangul Syllable */ + [0xb1bd, 0xb1bd], /* Hangul Syllable */ + [0xb1be, 0xb1be], /* Hangul Syllable */ + [0xb1bf, 0xb1bf], /* Hangul Syllable */ + [0xb1c0, 0xb1c0], /* Hangul Syllable */ + [0xb1c1, 0xb1c1], /* Hangul Syllable */ + [0xb1c2, 0xb1c2], /* Hangul Syllable */ + [0xb1c3, 0xb1c3], /* Hangul Syllable */ + [0xb1c4, 0xb1c4], /* Hangul Syllable */ + [0xb1c5, 0xb1c5], /* Hangul Syllable */ + [0xb1c6, 0xb1c6], /* Hangul Syllable */ + [0xb1c7, 0xb1c7], /* Hangul Syllable */ + [0xb1c8, 0xb1c8], /* Hangul Syllable */ + [0xb1c9, 0xb1c9], /* Hangul Syllable */ + [0xb1ca, 0xb1ca], /* Hangul Syllable */ + [0xb1cb, 0xb1cb], /* Hangul Syllable */ + [0xb1cc, 0xb1cc], /* Hangul Syllable */ + [0xb1cd, 0xb1cd], /* Hangul Syllable */ + [0xb1ce, 0xb1ce], /* Hangul Syllable */ + [0xb1cf, 0xb1cf], /* Hangul Syllable */ + [0xb1d0, 0xb1d0], /* Hangul Syllable */ + [0xb1d1, 0xb1d1], /* Hangul Syllable */ + [0xb1d2, 0xb1d2], /* Hangul Syllable */ + [0xb1d3, 0xb1d3], /* Hangul Syllable */ + [0xb1d4, 0xb1d4], /* Hangul Syllable */ + [0xb1d5, 0xb1d5], /* Hangul Syllable */ + [0xb1d6, 0xb1d6], /* Hangul Syllable */ + [0xb1d7, 0xb1d7], /* Hangul Syllable */ + [0xb1d8, 0xb1d8], /* Hangul Syllable */ + [0xb1d9, 0xb1d9], /* Hangul Syllable */ + [0xb1da, 0xb1da], /* Hangul Syllable */ + [0xb1db, 0xb1db], /* Hangul Syllable */ + [0xb1dc, 0xb1dc], /* Hangul Syllable */ + [0xb1dd, 0xb1dd], /* Hangul Syllable */ + [0xb1de, 0xb1de], /* Hangul Syllable */ + [0xb1df, 0xb1df], /* Hangul Syllable */ + [0xb1e0, 0xb1e0], /* Hangul Syllable */ + [0xb1e1, 0xb1e1], /* Hangul Syllable */ + [0xb1e2, 0xb1e2], /* Hangul Syllable */ + [0xb1e3, 0xb1e3], /* Hangul Syllable */ + [0xb1e4, 0xb1e4], /* Hangul Syllable */ + [0xb1e5, 0xb1e5], /* Hangul Syllable */ + [0xb1e6, 0xb1e6], /* Hangul Syllable */ + [0xb1e7, 0xb1e7], /* Hangul Syllable */ + [0xb1e8, 0xb1e8], /* Hangul Syllable */ + [0xb1e9, 0xb1e9], /* Hangul Syllable */ + [0xb1ea, 0xb1ea], /* Hangul Syllable */ + [0xb1eb, 0xb1eb], /* Hangul Syllable */ + [0xb1ec, 0xb1ec], /* Hangul Syllable */ + [0xb1ed, 0xb1ed], /* Hangul Syllable */ + [0xb1ee, 0xb1ee], /* Hangul Syllable */ + [0xb1ef, 0xb1ef], /* Hangul Syllable */ + [0xb1f0, 0xb1f0], /* Hangul Syllable */ + [0xb1f1, 0xb1f1], /* Hangul Syllable */ + [0xb1f2, 0xb1f2], /* Hangul Syllable */ + [0xb1f3, 0xb1f3], /* Hangul Syllable */ + [0xb1f4, 0xb1f4], /* Hangul Syllable */ + [0xb1f5, 0xb1f5], /* Hangul Syllable */ + [0xb1f6, 0xb1f6], /* Hangul Syllable */ + [0xb1f7, 0xb1f7], /* Hangul Syllable */ + [0xb1f8, 0xb1f8], /* Hangul Syllable */ + [0xb1f9, 0xb1f9], /* Hangul Syllable */ + [0xb1fa, 0xb1fa], /* Hangul Syllable */ + [0xb1fb, 0xb1fb], /* Hangul Syllable */ + [0xb1fc, 0xb1fc], /* Hangul Syllable */ + [0xb1fd, 0xb1fd], /* Hangul Syllable */ + [0xb1fe, 0xb1fe], /* Hangul Syllable */ + [0xb1ff, 0xb1ff], /* Hangul Syllable */ + [0xb200, 0xb200], /* Hangul Syllable */ + [0xb201, 0xb201], /* Hangul Syllable */ + [0xb202, 0xb202], /* Hangul Syllable */ + [0xb203, 0xb203], /* Hangul Syllable */ + [0xb204, 0xb204], /* Hangul Syllable */ + [0xb205, 0xb205], /* Hangul Syllable */ + [0xb206, 0xb206], /* Hangul Syllable */ + [0xb207, 0xb207], /* Hangul Syllable */ + [0xb208, 0xb208], /* Hangul Syllable */ + [0xb209, 0xb209], /* Hangul Syllable */ + [0xb20a, 0xb20a], /* Hangul Syllable */ + [0xb20b, 0xb20b], /* Hangul Syllable */ + [0xb20c, 0xb20c], /* Hangul Syllable */ + [0xb20d, 0xb20d], /* Hangul Syllable */ + [0xb20e, 0xb20e], /* Hangul Syllable */ + [0xb20f, 0xb20f], /* Hangul Syllable */ + [0xb210, 0xb210], /* Hangul Syllable */ + [0xb211, 0xb211], /* Hangul Syllable */ + [0xb212, 0xb212], /* Hangul Syllable */ + [0xb213, 0xb213], /* Hangul Syllable */ + [0xb214, 0xb214], /* Hangul Syllable */ + [0xb215, 0xb215], /* Hangul Syllable */ + [0xb216, 0xb216], /* Hangul Syllable */ + [0xb217, 0xb217], /* Hangul Syllable */ + [0xb218, 0xb218], /* Hangul Syllable */ + [0xb219, 0xb219], /* Hangul Syllable */ + [0xb21a, 0xb21a], /* Hangul Syllable */ + [0xb21b, 0xb21b], /* Hangul Syllable */ + [0xb21c, 0xb21c], /* Hangul Syllable */ + [0xb21d, 0xb21d], /* Hangul Syllable */ + [0xb21e, 0xb21e], /* Hangul Syllable */ + [0xb21f, 0xb21f], /* Hangul Syllable */ + [0xb220, 0xb220], /* Hangul Syllable */ + [0xb221, 0xb221], /* Hangul Syllable */ + [0xb222, 0xb222], /* Hangul Syllable */ + [0xb223, 0xb223], /* Hangul Syllable */ + [0xb224, 0xb224], /* Hangul Syllable */ + [0xb225, 0xb225], /* Hangul Syllable */ + [0xb226, 0xb226], /* Hangul Syllable */ + [0xb227, 0xb227], /* Hangul Syllable */ + [0xb228, 0xb228], /* Hangul Syllable */ + [0xb229, 0xb229], /* Hangul Syllable */ + [0xb22a, 0xb22a], /* Hangul Syllable */ + [0xb22b, 0xb22b], /* Hangul Syllable */ + [0xb22c, 0xb22c], /* Hangul Syllable */ + [0xb22d, 0xb22d], /* Hangul Syllable */ + [0xb22e, 0xb22e], /* Hangul Syllable */ + [0xb22f, 0xb22f], /* Hangul Syllable */ + [0xb230, 0xb230], /* Hangul Syllable */ + [0xb231, 0xb231], /* Hangul Syllable */ + [0xb232, 0xb232], /* Hangul Syllable */ + [0xb233, 0xb233], /* Hangul Syllable */ + [0xb234, 0xb234], /* Hangul Syllable */ + [0xb235, 0xb235], /* Hangul Syllable */ + [0xb236, 0xb236], /* Hangul Syllable */ + [0xb237, 0xb237], /* Hangul Syllable */ + [0xb238, 0xb238], /* Hangul Syllable */ + [0xb239, 0xb239], /* Hangul Syllable */ + [0xb23a, 0xb23a], /* Hangul Syllable */ + [0xb23b, 0xb23b], /* Hangul Syllable */ + [0xb23c, 0xb23c], /* Hangul Syllable */ + [0xb23d, 0xb23d], /* Hangul Syllable */ + [0xb23e, 0xb23e], /* Hangul Syllable */ + [0xb23f, 0xb23f], /* Hangul Syllable */ + [0xb240, 0xb240], /* Hangul Syllable */ + [0xb241, 0xb241], /* Hangul Syllable */ + [0xb242, 0xb242], /* Hangul Syllable */ + [0xb243, 0xb243], /* Hangul Syllable */ + [0xb244, 0xb244], /* Hangul Syllable */ + [0xb245, 0xb245], /* Hangul Syllable */ + [0xb246, 0xb246], /* Hangul Syllable */ + [0xb247, 0xb247], /* Hangul Syllable */ + [0xb248, 0xb248], /* Hangul Syllable */ + [0xb249, 0xb249], /* Hangul Syllable */ + [0xb24a, 0xb24a], /* Hangul Syllable */ + [0xb24b, 0xb24b], /* Hangul Syllable */ + [0xb24c, 0xb24c], /* Hangul Syllable */ + [0xb24d, 0xb24d], /* Hangul Syllable */ + [0xb24e, 0xb24e], /* Hangul Syllable */ + [0xb24f, 0xb24f], /* Hangul Syllable */ + [0xb250, 0xb250], /* Hangul Syllable */ + [0xb251, 0xb251], /* Hangul Syllable */ + [0xb252, 0xb252], /* Hangul Syllable */ + [0xb253, 0xb253], /* Hangul Syllable */ + [0xb254, 0xb254], /* Hangul Syllable */ + [0xb255, 0xb255], /* Hangul Syllable */ + [0xb256, 0xb256], /* Hangul Syllable */ + [0xb257, 0xb257], /* Hangul Syllable */ + [0xb258, 0xb258], /* Hangul Syllable */ + [0xb259, 0xb259], /* Hangul Syllable */ + [0xb25a, 0xb25a], /* Hangul Syllable */ + [0xb25b, 0xb25b], /* Hangul Syllable */ + [0xb25c, 0xb25c], /* Hangul Syllable */ + [0xb25d, 0xb25d], /* Hangul Syllable */ + [0xb25e, 0xb25e], /* Hangul Syllable */ + [0xb25f, 0xb25f], /* Hangul Syllable */ + [0xb260, 0xb260], /* Hangul Syllable */ + [0xb261, 0xb261], /* Hangul Syllable */ + [0xb262, 0xb262], /* Hangul Syllable */ + [0xb263, 0xb263], /* Hangul Syllable */ + [0xb264, 0xb264], /* Hangul Syllable */ + [0xb265, 0xb265], /* Hangul Syllable */ + [0xb266, 0xb266], /* Hangul Syllable */ + [0xb267, 0xb267], /* Hangul Syllable */ + [0xb268, 0xb268], /* Hangul Syllable */ + [0xb269, 0xb269], /* Hangul Syllable */ + [0xb26a, 0xb26a], /* Hangul Syllable */ + [0xb26b, 0xb26b], /* Hangul Syllable */ + [0xb26c, 0xb26c], /* Hangul Syllable */ + [0xb26d, 0xb26d], /* Hangul Syllable */ + [0xb26e, 0xb26e], /* Hangul Syllable */ + [0xb26f, 0xb26f], /* Hangul Syllable */ + [0xb270, 0xb270], /* Hangul Syllable */ + [0xb271, 0xb271], /* Hangul Syllable */ + [0xb272, 0xb272], /* Hangul Syllable */ + [0xb273, 0xb273], /* Hangul Syllable */ + [0xb274, 0xb274], /* Hangul Syllable */ + [0xb275, 0xb275], /* Hangul Syllable */ + [0xb276, 0xb276], /* Hangul Syllable */ + [0xb277, 0xb277], /* Hangul Syllable */ + [0xb278, 0xb278], /* Hangul Syllable */ + [0xb279, 0xb279], /* Hangul Syllable */ + [0xb27a, 0xb27a], /* Hangul Syllable */ + [0xb27b, 0xb27b], /* Hangul Syllable */ + [0xb27c, 0xb27c], /* Hangul Syllable */ + [0xb27d, 0xb27d], /* Hangul Syllable */ + [0xb27e, 0xb27e], /* Hangul Syllable */ + [0xb27f, 0xb27f], /* Hangul Syllable */ + [0xb280, 0xb280], /* Hangul Syllable */ + [0xb281, 0xb281], /* Hangul Syllable */ + [0xb282, 0xb282], /* Hangul Syllable */ + [0xb283, 0xb283], /* Hangul Syllable */ + [0xb284, 0xb284], /* Hangul Syllable */ + [0xb285, 0xb285], /* Hangul Syllable */ + [0xb286, 0xb286], /* Hangul Syllable */ + [0xb287, 0xb287], /* Hangul Syllable */ + [0xb288, 0xb288], /* Hangul Syllable */ + [0xb289, 0xb289], /* Hangul Syllable */ + [0xb28a, 0xb28a], /* Hangul Syllable */ + [0xb28b, 0xb28b], /* Hangul Syllable */ + [0xb28c, 0xb28c], /* Hangul Syllable */ + [0xb28d, 0xb28d], /* Hangul Syllable */ + [0xb28e, 0xb28e], /* Hangul Syllable */ + [0xb28f, 0xb28f], /* Hangul Syllable */ + [0xb290, 0xb290], /* Hangul Syllable */ + [0xb291, 0xb291], /* Hangul Syllable */ + [0xb292, 0xb292], /* Hangul Syllable */ + [0xb293, 0xb293], /* Hangul Syllable */ + [0xb294, 0xb294], /* Hangul Syllable */ + [0xb295, 0xb295], /* Hangul Syllable */ + [0xb296, 0xb296], /* Hangul Syllable */ + [0xb297, 0xb297], /* Hangul Syllable */ + [0xb298, 0xb298], /* Hangul Syllable */ + [0xb299, 0xb299], /* Hangul Syllable */ + [0xb29a, 0xb29a], /* Hangul Syllable */ + [0xb29b, 0xb29b], /* Hangul Syllable */ + [0xb29c, 0xb29c], /* Hangul Syllable */ + [0xb29d, 0xb29d], /* Hangul Syllable */ + [0xb29e, 0xb29e], /* Hangul Syllable */ + [0xb29f, 0xb29f], /* Hangul Syllable */ + [0xb2a0, 0xb2a0], /* Hangul Syllable */ + [0xb2a1, 0xb2a1], /* Hangul Syllable */ + [0xb2a2, 0xb2a2], /* Hangul Syllable */ + [0xb2a3, 0xb2a3], /* Hangul Syllable */ + [0xb2a4, 0xb2a4], /* Hangul Syllable */ + [0xb2a5, 0xb2a5], /* Hangul Syllable */ + [0xb2a6, 0xb2a6], /* Hangul Syllable */ + [0xb2a7, 0xb2a7], /* Hangul Syllable */ + [0xb2a8, 0xb2a8], /* Hangul Syllable */ + [0xb2a9, 0xb2a9], /* Hangul Syllable */ + [0xb2aa, 0xb2aa], /* Hangul Syllable */ + [0xb2ab, 0xb2ab], /* Hangul Syllable */ + [0xb2ac, 0xb2ac], /* Hangul Syllable */ + [0xb2ad, 0xb2ad], /* Hangul Syllable */ + [0xb2ae, 0xb2ae], /* Hangul Syllable */ + [0xb2af, 0xb2af], /* Hangul Syllable */ + [0xb2b0, 0xb2b0], /* Hangul Syllable */ + [0xb2b1, 0xb2b1], /* Hangul Syllable */ + [0xb2b2, 0xb2b2], /* Hangul Syllable */ + [0xb2b3, 0xb2b3], /* Hangul Syllable */ + [0xb2b4, 0xb2b4], /* Hangul Syllable */ + [0xb2b5, 0xb2b5], /* Hangul Syllable */ + [0xb2b6, 0xb2b6], /* Hangul Syllable */ + [0xb2b7, 0xb2b7], /* Hangul Syllable */ + [0xb2b8, 0xb2b8], /* Hangul Syllable */ + [0xb2b9, 0xb2b9], /* Hangul Syllable */ + [0xb2ba, 0xb2ba], /* Hangul Syllable */ + [0xb2bb, 0xb2bb], /* Hangul Syllable */ + [0xb2bc, 0xb2bc], /* Hangul Syllable */ + [0xb2bd, 0xb2bd], /* Hangul Syllable */ + [0xb2be, 0xb2be], /* Hangul Syllable */ + [0xb2bf, 0xb2bf], /* Hangul Syllable */ + [0xb2c0, 0xb2c0], /* Hangul Syllable */ + [0xb2c1, 0xb2c1], /* Hangul Syllable */ + [0xb2c2, 0xb2c2], /* Hangul Syllable */ + [0xb2c3, 0xb2c3], /* Hangul Syllable */ + [0xb2c4, 0xb2c4], /* Hangul Syllable */ + [0xb2c5, 0xb2c5], /* Hangul Syllable */ + [0xb2c6, 0xb2c6], /* Hangul Syllable */ + [0xb2c7, 0xb2c7], /* Hangul Syllable */ + [0xb2c8, 0xb2c8], /* Hangul Syllable */ + [0xb2c9, 0xb2c9], /* Hangul Syllable */ + [0xb2ca, 0xb2ca], /* Hangul Syllable */ + [0xb2cb, 0xb2cb], /* Hangul Syllable */ + [0xb2cc, 0xb2cc], /* Hangul Syllable */ + [0xb2cd, 0xb2cd], /* Hangul Syllable */ + [0xb2ce, 0xb2ce], /* Hangul Syllable */ + [0xb2cf, 0xb2cf], /* Hangul Syllable */ + [0xb2d0, 0xb2d0], /* Hangul Syllable */ + [0xb2d1, 0xb2d1], /* Hangul Syllable */ + [0xb2d2, 0xb2d2], /* Hangul Syllable */ + [0xb2d3, 0xb2d3], /* Hangul Syllable */ + [0xb2d4, 0xb2d4], /* Hangul Syllable */ + [0xb2d5, 0xb2d5], /* Hangul Syllable */ + [0xb2d6, 0xb2d6], /* Hangul Syllable */ + [0xb2d7, 0xb2d7], /* Hangul Syllable */ + [0xb2d8, 0xb2d8], /* Hangul Syllable */ + [0xb2d9, 0xb2d9], /* Hangul Syllable */ + [0xb2da, 0xb2da], /* Hangul Syllable */ + [0xb2db, 0xb2db], /* Hangul Syllable */ + [0xb2dc, 0xb2dc], /* Hangul Syllable */ + [0xb2dd, 0xb2dd], /* Hangul Syllable */ + [0xb2de, 0xb2de], /* Hangul Syllable */ + [0xb2df, 0xb2df], /* Hangul Syllable */ + [0xb2e0, 0xb2e0], /* Hangul Syllable */ + [0xb2e1, 0xb2e1], /* Hangul Syllable */ + [0xb2e2, 0xb2e2], /* Hangul Syllable */ + [0xb2e3, 0xb2e3], /* Hangul Syllable */ + [0xb2e4, 0xb2e4], /* Hangul Syllable */ + [0xb2e5, 0xb2e5], /* Hangul Syllable */ + [0xb2e6, 0xb2e6], /* Hangul Syllable */ + [0xb2e7, 0xb2e7], /* Hangul Syllable */ + [0xb2e8, 0xb2e8], /* Hangul Syllable */ + [0xb2e9, 0xb2e9], /* Hangul Syllable */ + [0xb2ea, 0xb2ea], /* Hangul Syllable */ + [0xb2eb, 0xb2eb], /* Hangul Syllable */ + [0xb2ec, 0xb2ec], /* Hangul Syllable */ + [0xb2ed, 0xb2ed], /* Hangul Syllable */ + [0xb2ee, 0xb2ee], /* Hangul Syllable */ + [0xb2ef, 0xb2ef], /* Hangul Syllable */ + [0xb2f0, 0xb2f0], /* Hangul Syllable */ + [0xb2f1, 0xb2f1], /* Hangul Syllable */ + [0xb2f2, 0xb2f2], /* Hangul Syllable */ + [0xb2f3, 0xb2f3], /* Hangul Syllable */ + [0xb2f4, 0xb2f4], /* Hangul Syllable */ + [0xb2f5, 0xb2f5], /* Hangul Syllable */ + [0xb2f6, 0xb2f6], /* Hangul Syllable */ + [0xb2f7, 0xb2f7], /* Hangul Syllable */ + [0xb2f8, 0xb2f8], /* Hangul Syllable */ + [0xb2f9, 0xb2f9], /* Hangul Syllable */ + [0xb2fa, 0xb2fa], /* Hangul Syllable */ + [0xb2fb, 0xb2fb], /* Hangul Syllable */ + [0xb2fc, 0xb2fc], /* Hangul Syllable */ + [0xb2fd, 0xb2fd], /* Hangul Syllable */ + [0xb2fe, 0xb2fe], /* Hangul Syllable */ + [0xb2ff, 0xb2ff], /* Hangul Syllable */ + [0xb300, 0xb300], /* Hangul Syllable */ + [0xb301, 0xb301], /* Hangul Syllable */ + [0xb302, 0xb302], /* Hangul Syllable */ + [0xb303, 0xb303], /* Hangul Syllable */ + [0xb304, 0xb304], /* Hangul Syllable */ + [0xb305, 0xb305], /* Hangul Syllable */ + [0xb306, 0xb306], /* Hangul Syllable */ + [0xb307, 0xb307], /* Hangul Syllable */ + [0xb308, 0xb308], /* Hangul Syllable */ + [0xb309, 0xb309], /* Hangul Syllable */ + [0xb30a, 0xb30a], /* Hangul Syllable */ + [0xb30b, 0xb30b], /* Hangul Syllable */ + [0xb30c, 0xb30c], /* Hangul Syllable */ + [0xb30d, 0xb30d], /* Hangul Syllable */ + [0xb30e, 0xb30e], /* Hangul Syllable */ + [0xb30f, 0xb30f], /* Hangul Syllable */ + [0xb310, 0xb310], /* Hangul Syllable */ + [0xb311, 0xb311], /* Hangul Syllable */ + [0xb312, 0xb312], /* Hangul Syllable */ + [0xb313, 0xb313], /* Hangul Syllable */ + [0xb314, 0xb314], /* Hangul Syllable */ + [0xb315, 0xb315], /* Hangul Syllable */ + [0xb316, 0xb316], /* Hangul Syllable */ + [0xb317, 0xb317], /* Hangul Syllable */ + [0xb318, 0xb318], /* Hangul Syllable */ + [0xb319, 0xb319], /* Hangul Syllable */ + [0xb31a, 0xb31a], /* Hangul Syllable */ + [0xb31b, 0xb31b], /* Hangul Syllable */ + [0xb31c, 0xb31c], /* Hangul Syllable */ + [0xb31d, 0xb31d], /* Hangul Syllable */ + [0xb31e, 0xb31e], /* Hangul Syllable */ + [0xb31f, 0xb31f], /* Hangul Syllable */ + [0xb320, 0xb320], /* Hangul Syllable */ + [0xb321, 0xb321], /* Hangul Syllable */ + [0xb322, 0xb322], /* Hangul Syllable */ + [0xb323, 0xb323], /* Hangul Syllable */ + [0xb324, 0xb324], /* Hangul Syllable */ + [0xb325, 0xb325], /* Hangul Syllable */ + [0xb326, 0xb326], /* Hangul Syllable */ + [0xb327, 0xb327], /* Hangul Syllable */ + [0xb328, 0xb328], /* Hangul Syllable */ + [0xb329, 0xb329], /* Hangul Syllable */ + [0xb32a, 0xb32a], /* Hangul Syllable */ + [0xb32b, 0xb32b], /* Hangul Syllable */ + [0xb32c, 0xb32c], /* Hangul Syllable */ + [0xb32d, 0xb32d], /* Hangul Syllable */ + [0xb32e, 0xb32e], /* Hangul Syllable */ + [0xb32f, 0xb32f], /* Hangul Syllable */ + [0xb330, 0xb330], /* Hangul Syllable */ + [0xb331, 0xb331], /* Hangul Syllable */ + [0xb332, 0xb332], /* Hangul Syllable */ + [0xb333, 0xb333], /* Hangul Syllable */ + [0xb334, 0xb334], /* Hangul Syllable */ + [0xb335, 0xb335], /* Hangul Syllable */ + [0xb336, 0xb336], /* Hangul Syllable */ + [0xb337, 0xb337], /* Hangul Syllable */ + [0xb338, 0xb338], /* Hangul Syllable */ + [0xb339, 0xb339], /* Hangul Syllable */ + [0xb33a, 0xb33a], /* Hangul Syllable */ + [0xb33b, 0xb33b], /* Hangul Syllable */ + [0xb33c, 0xb33c], /* Hangul Syllable */ + [0xb33d, 0xb33d], /* Hangul Syllable */ + [0xb33e, 0xb33e], /* Hangul Syllable */ + [0xb33f, 0xb33f], /* Hangul Syllable */ + [0xb340, 0xb340], /* Hangul Syllable */ + [0xb341, 0xb341], /* Hangul Syllable */ + [0xb342, 0xb342], /* Hangul Syllable */ + [0xb343, 0xb343], /* Hangul Syllable */ + [0xb344, 0xb344], /* Hangul Syllable */ + [0xb345, 0xb345], /* Hangul Syllable */ + [0xb346, 0xb346], /* Hangul Syllable */ + [0xb347, 0xb347], /* Hangul Syllable */ + [0xb348, 0xb348], /* Hangul Syllable */ + [0xb349, 0xb349], /* Hangul Syllable */ + [0xb34a, 0xb34a], /* Hangul Syllable */ + [0xb34b, 0xb34b], /* Hangul Syllable */ + [0xb34c, 0xb34c], /* Hangul Syllable */ + [0xb34d, 0xb34d], /* Hangul Syllable */ + [0xb34e, 0xb34e], /* Hangul Syllable */ + [0xb34f, 0xb34f], /* Hangul Syllable */ + [0xb350, 0xb350], /* Hangul Syllable */ + [0xb351, 0xb351], /* Hangul Syllable */ + [0xb352, 0xb352], /* Hangul Syllable */ + [0xb353, 0xb353], /* Hangul Syllable */ + [0xb354, 0xb354], /* Hangul Syllable */ + [0xb355, 0xb355], /* Hangul Syllable */ + [0xb356, 0xb356], /* Hangul Syllable */ + [0xb357, 0xb357], /* Hangul Syllable */ + [0xb358, 0xb358], /* Hangul Syllable */ + [0xb359, 0xb359], /* Hangul Syllable */ + [0xb35a, 0xb35a], /* Hangul Syllable */ + [0xb35b, 0xb35b], /* Hangul Syllable */ + [0xb35c, 0xb35c], /* Hangul Syllable */ + [0xb35d, 0xb35d], /* Hangul Syllable */ + [0xb35e, 0xb35e], /* Hangul Syllable */ + [0xb35f, 0xb35f], /* Hangul Syllable */ + [0xb360, 0xb360], /* Hangul Syllable */ + [0xb361, 0xb361], /* Hangul Syllable */ + [0xb362, 0xb362], /* Hangul Syllable */ + [0xb363, 0xb363], /* Hangul Syllable */ + [0xb364, 0xb364], /* Hangul Syllable */ + [0xb365, 0xb365], /* Hangul Syllable */ + [0xb366, 0xb366], /* Hangul Syllable */ + [0xb367, 0xb367], /* Hangul Syllable */ + [0xb368, 0xb368], /* Hangul Syllable */ + [0xb369, 0xb369], /* Hangul Syllable */ + [0xb36a, 0xb36a], /* Hangul Syllable */ + [0xb36b, 0xb36b], /* Hangul Syllable */ + [0xb36c, 0xb36c], /* Hangul Syllable */ + [0xb36d, 0xb36d], /* Hangul Syllable */ + [0xb36e, 0xb36e], /* Hangul Syllable */ + [0xb36f, 0xb36f], /* Hangul Syllable */ + [0xb370, 0xb370], /* Hangul Syllable */ + [0xb371, 0xb371], /* Hangul Syllable */ + [0xb372, 0xb372], /* Hangul Syllable */ + [0xb373, 0xb373], /* Hangul Syllable */ + [0xb374, 0xb374], /* Hangul Syllable */ + [0xb375, 0xb375], /* Hangul Syllable */ + [0xb376, 0xb376], /* Hangul Syllable */ + [0xb377, 0xb377], /* Hangul Syllable */ + [0xb378, 0xb378], /* Hangul Syllable */ + [0xb379, 0xb379], /* Hangul Syllable */ + [0xb37a, 0xb37a], /* Hangul Syllable */ + [0xb37b, 0xb37b], /* Hangul Syllable */ + [0xb37c, 0xb37c], /* Hangul Syllable */ + [0xb37d, 0xb37d], /* Hangul Syllable */ + [0xb37e, 0xb37e], /* Hangul Syllable */ + [0xb37f, 0xb37f], /* Hangul Syllable */ + [0xb380, 0xb380], /* Hangul Syllable */ + [0xb381, 0xb381], /* Hangul Syllable */ + [0xb382, 0xb382], /* Hangul Syllable */ + [0xb383, 0xb383], /* Hangul Syllable */ + [0xb384, 0xb384], /* Hangul Syllable */ + [0xb385, 0xb385], /* Hangul Syllable */ + [0xb386, 0xb386], /* Hangul Syllable */ + [0xb387, 0xb387], /* Hangul Syllable */ + [0xb388, 0xb388], /* Hangul Syllable */ + [0xb389, 0xb389], /* Hangul Syllable */ + [0xb38a, 0xb38a], /* Hangul Syllable */ + [0xb38b, 0xb38b], /* Hangul Syllable */ + [0xb38c, 0xb38c], /* Hangul Syllable */ + [0xb38d, 0xb38d], /* Hangul Syllable */ + [0xb38e, 0xb38e], /* Hangul Syllable */ + [0xb38f, 0xb38f], /* Hangul Syllable */ + [0xb390, 0xb390], /* Hangul Syllable */ + [0xb391, 0xb391], /* Hangul Syllable */ + [0xb392, 0xb392], /* Hangul Syllable */ + [0xb393, 0xb393], /* Hangul Syllable */ + [0xb394, 0xb394], /* Hangul Syllable */ + [0xb395, 0xb395], /* Hangul Syllable */ + [0xb396, 0xb396], /* Hangul Syllable */ + [0xb397, 0xb397], /* Hangul Syllable */ + [0xb398, 0xb398], /* Hangul Syllable */ + [0xb399, 0xb399], /* Hangul Syllable */ + [0xb39a, 0xb39a], /* Hangul Syllable */ + [0xb39b, 0xb39b], /* Hangul Syllable */ + [0xb39c, 0xb39c], /* Hangul Syllable */ + [0xb39d, 0xb39d], /* Hangul Syllable */ + [0xb39e, 0xb39e], /* Hangul Syllable */ + [0xb39f, 0xb39f], /* Hangul Syllable */ + [0xb3a0, 0xb3a0], /* Hangul Syllable */ + [0xb3a1, 0xb3a1], /* Hangul Syllable */ + [0xb3a2, 0xb3a2], /* Hangul Syllable */ + [0xb3a3, 0xb3a3], /* Hangul Syllable */ + [0xb3a4, 0xb3a4], /* Hangul Syllable */ + [0xb3a5, 0xb3a5], /* Hangul Syllable */ + [0xb3a6, 0xb3a6], /* Hangul Syllable */ + [0xb3a7, 0xb3a7], /* Hangul Syllable */ + [0xb3a8, 0xb3a8], /* Hangul Syllable */ + [0xb3a9, 0xb3a9], /* Hangul Syllable */ + [0xb3aa, 0xb3aa], /* Hangul Syllable */ + [0xb3ab, 0xb3ab], /* Hangul Syllable */ + [0xb3ac, 0xb3ac], /* Hangul Syllable */ + [0xb3ad, 0xb3ad], /* Hangul Syllable */ + [0xb3ae, 0xb3ae], /* Hangul Syllable */ + [0xb3af, 0xb3af], /* Hangul Syllable */ + [0xb3b0, 0xb3b0], /* Hangul Syllable */ + [0xb3b1, 0xb3b1], /* Hangul Syllable */ + [0xb3b2, 0xb3b2], /* Hangul Syllable */ + [0xb3b3, 0xb3b3], /* Hangul Syllable */ + [0xb3b4, 0xb3b4], /* Hangul Syllable */ + [0xb3b5, 0xb3b5], /* Hangul Syllable */ + [0xb3b6, 0xb3b6], /* Hangul Syllable */ + [0xb3b7, 0xb3b7], /* Hangul Syllable */ + [0xb3b8, 0xb3b8], /* Hangul Syllable */ + [0xb3b9, 0xb3b9], /* Hangul Syllable */ + [0xb3ba, 0xb3ba], /* Hangul Syllable */ + [0xb3bb, 0xb3bb], /* Hangul Syllable */ + [0xb3bc, 0xb3bc], /* Hangul Syllable */ + [0xb3bd, 0xb3bd], /* Hangul Syllable */ + [0xb3be, 0xb3be], /* Hangul Syllable */ + [0xb3bf, 0xb3bf], /* Hangul Syllable */ + [0xb3c0, 0xb3c0], /* Hangul Syllable */ + [0xb3c1, 0xb3c1], /* Hangul Syllable */ + [0xb3c2, 0xb3c2], /* Hangul Syllable */ + [0xb3c3, 0xb3c3], /* Hangul Syllable */ + [0xb3c4, 0xb3c4], /* Hangul Syllable */ + [0xb3c5, 0xb3c5], /* Hangul Syllable */ + [0xb3c6, 0xb3c6], /* Hangul Syllable */ + [0xb3c7, 0xb3c7], /* Hangul Syllable */ + [0xb3c8, 0xb3c8], /* Hangul Syllable */ + [0xb3c9, 0xb3c9], /* Hangul Syllable */ + [0xb3ca, 0xb3ca], /* Hangul Syllable */ + [0xb3cb, 0xb3cb], /* Hangul Syllable */ + [0xb3cc, 0xb3cc], /* Hangul Syllable */ + [0xb3cd, 0xb3cd], /* Hangul Syllable */ + [0xb3ce, 0xb3ce], /* Hangul Syllable */ + [0xb3cf, 0xb3cf], /* Hangul Syllable */ + [0xb3d0, 0xb3d0], /* Hangul Syllable */ + [0xb3d1, 0xb3d1], /* Hangul Syllable */ + [0xb3d2, 0xb3d2], /* Hangul Syllable */ + [0xb3d3, 0xb3d3], /* Hangul Syllable */ + [0xb3d4, 0xb3d4], /* Hangul Syllable */ + [0xb3d5, 0xb3d5], /* Hangul Syllable */ + [0xb3d6, 0xb3d6], /* Hangul Syllable */ + [0xb3d7, 0xb3d7], /* Hangul Syllable */ + [0xb3d8, 0xb3d8], /* Hangul Syllable */ + [0xb3d9, 0xb3d9], /* Hangul Syllable */ + [0xb3da, 0xb3da], /* Hangul Syllable */ + [0xb3db, 0xb3db], /* Hangul Syllable */ + [0xb3dc, 0xb3dc], /* Hangul Syllable */ + [0xb3dd, 0xb3dd], /* Hangul Syllable */ + [0xb3de, 0xb3de], /* Hangul Syllable */ + [0xb3df, 0xb3df], /* Hangul Syllable */ + [0xb3e0, 0xb3e0], /* Hangul Syllable */ + [0xb3e1, 0xb3e1], /* Hangul Syllable */ + [0xb3e2, 0xb3e2], /* Hangul Syllable */ + [0xb3e3, 0xb3e3], /* Hangul Syllable */ + [0xb3e4, 0xb3e4], /* Hangul Syllable */ + [0xb3e5, 0xb3e5], /* Hangul Syllable */ + [0xb3e6, 0xb3e6], /* Hangul Syllable */ + [0xb3e7, 0xb3e7], /* Hangul Syllable */ + [0xb3e8, 0xb3e8], /* Hangul Syllable */ + [0xb3e9, 0xb3e9], /* Hangul Syllable */ + [0xb3ea, 0xb3ea], /* Hangul Syllable */ + [0xb3eb, 0xb3eb], /* Hangul Syllable */ + [0xb3ec, 0xb3ec], /* Hangul Syllable */ + [0xb3ed, 0xb3ed], /* Hangul Syllable */ + [0xb3ee, 0xb3ee], /* Hangul Syllable */ + [0xb3ef, 0xb3ef], /* Hangul Syllable */ + [0xb3f0, 0xb3f0], /* Hangul Syllable */ + [0xb3f1, 0xb3f1], /* Hangul Syllable */ + [0xb3f2, 0xb3f2], /* Hangul Syllable */ + [0xb3f3, 0xb3f3], /* Hangul Syllable */ + [0xb3f4, 0xb3f4], /* Hangul Syllable */ + [0xb3f5, 0xb3f5], /* Hangul Syllable */ + [0xb3f6, 0xb3f6], /* Hangul Syllable */ + [0xb3f7, 0xb3f7], /* Hangul Syllable */ + [0xb3f8, 0xb3f8], /* Hangul Syllable */ + [0xb3f9, 0xb3f9], /* Hangul Syllable */ + [0xb3fa, 0xb3fa], /* Hangul Syllable */ + [0xb3fb, 0xb3fb], /* Hangul Syllable */ + [0xb3fc, 0xb3fc], /* Hangul Syllable */ + [0xb3fd, 0xb3fd], /* Hangul Syllable */ + [0xb3fe, 0xb3fe], /* Hangul Syllable */ + [0xb3ff, 0xb3ff], /* Hangul Syllable */ + [0xb400, 0xb400], /* Hangul Syllable */ + [0xb401, 0xb401], /* Hangul Syllable */ + [0xb402, 0xb402], /* Hangul Syllable */ + [0xb403, 0xb403], /* Hangul Syllable */ + [0xb404, 0xb404], /* Hangul Syllable */ + [0xb405, 0xb405], /* Hangul Syllable */ + [0xb406, 0xb406], /* Hangul Syllable */ + [0xb407, 0xb407], /* Hangul Syllable */ + [0xb408, 0xb408], /* Hangul Syllable */ + [0xb409, 0xb409], /* Hangul Syllable */ + [0xb40a, 0xb40a], /* Hangul Syllable */ + [0xb40b, 0xb40b], /* Hangul Syllable */ + [0xb40c, 0xb40c], /* Hangul Syllable */ + [0xb40d, 0xb40d], /* Hangul Syllable */ + [0xb40e, 0xb40e], /* Hangul Syllable */ + [0xb40f, 0xb40f], /* Hangul Syllable */ + [0xb410, 0xb410], /* Hangul Syllable */ + [0xb411, 0xb411], /* Hangul Syllable */ + [0xb412, 0xb412], /* Hangul Syllable */ + [0xb413, 0xb413], /* Hangul Syllable */ + [0xb414, 0xb414], /* Hangul Syllable */ + [0xb415, 0xb415], /* Hangul Syllable */ + [0xb416, 0xb416], /* Hangul Syllable */ + [0xb417, 0xb417], /* Hangul Syllable */ + [0xb418, 0xb418], /* Hangul Syllable */ + [0xb419, 0xb419], /* Hangul Syllable */ + [0xb41a, 0xb41a], /* Hangul Syllable */ + [0xb41b, 0xb41b], /* Hangul Syllable */ + [0xb41c, 0xb41c], /* Hangul Syllable */ + [0xb41d, 0xb41d], /* Hangul Syllable */ + [0xb41e, 0xb41e], /* Hangul Syllable */ + [0xb41f, 0xb41f], /* Hangul Syllable */ + [0xb420, 0xb420], /* Hangul Syllable */ + [0xb421, 0xb421], /* Hangul Syllable */ + [0xb422, 0xb422], /* Hangul Syllable */ + [0xb423, 0xb423], /* Hangul Syllable */ + [0xb424, 0xb424], /* Hangul Syllable */ + [0xb425, 0xb425], /* Hangul Syllable */ + [0xb426, 0xb426], /* Hangul Syllable */ + [0xb427, 0xb427], /* Hangul Syllable */ + [0xb428, 0xb428], /* Hangul Syllable */ + [0xb429, 0xb429], /* Hangul Syllable */ + [0xb42a, 0xb42a], /* Hangul Syllable */ + [0xb42b, 0xb42b], /* Hangul Syllable */ + [0xb42c, 0xb42c], /* Hangul Syllable */ + [0xb42d, 0xb42d], /* Hangul Syllable */ + [0xb42e, 0xb42e], /* Hangul Syllable */ + [0xb42f, 0xb42f], /* Hangul Syllable */ + [0xb430, 0xb430], /* Hangul Syllable */ + [0xb431, 0xb431], /* Hangul Syllable */ + [0xb432, 0xb432], /* Hangul Syllable */ + [0xb433, 0xb433], /* Hangul Syllable */ + [0xb434, 0xb434], /* Hangul Syllable */ + [0xb435, 0xb435], /* Hangul Syllable */ + [0xb436, 0xb436], /* Hangul Syllable */ + [0xb437, 0xb437], /* Hangul Syllable */ + [0xb438, 0xb438], /* Hangul Syllable */ + [0xb439, 0xb439], /* Hangul Syllable */ + [0xb43a, 0xb43a], /* Hangul Syllable */ + [0xb43b, 0xb43b], /* Hangul Syllable */ + [0xb43c, 0xb43c], /* Hangul Syllable */ + [0xb43d, 0xb43d], /* Hangul Syllable */ + [0xb43e, 0xb43e], /* Hangul Syllable */ + [0xb43f, 0xb43f], /* Hangul Syllable */ + [0xb440, 0xb440], /* Hangul Syllable */ + [0xb441, 0xb441], /* Hangul Syllable */ + [0xb442, 0xb442], /* Hangul Syllable */ + [0xb443, 0xb443], /* Hangul Syllable */ + [0xb444, 0xb444], /* Hangul Syllable */ + [0xb445, 0xb445], /* Hangul Syllable */ + [0xb446, 0xb446], /* Hangul Syllable */ + [0xb447, 0xb447], /* Hangul Syllable */ + [0xb448, 0xb448], /* Hangul Syllable */ + [0xb449, 0xb449], /* Hangul Syllable */ + [0xb44a, 0xb44a], /* Hangul Syllable */ + [0xb44b, 0xb44b], /* Hangul Syllable */ + [0xb44c, 0xb44c], /* Hangul Syllable */ + [0xb44d, 0xb44d], /* Hangul Syllable */ + [0xb44e, 0xb44e], /* Hangul Syllable */ + [0xb44f, 0xb44f], /* Hangul Syllable */ + [0xb450, 0xb450], /* Hangul Syllable */ + [0xb451, 0xb451], /* Hangul Syllable */ + [0xb452, 0xb452], /* Hangul Syllable */ + [0xb453, 0xb453], /* Hangul Syllable */ + [0xb454, 0xb454], /* Hangul Syllable */ + [0xb455, 0xb455], /* Hangul Syllable */ + [0xb456, 0xb456], /* Hangul Syllable */ + [0xb457, 0xb457], /* Hangul Syllable */ + [0xb458, 0xb458], /* Hangul Syllable */ + [0xb459, 0xb459], /* Hangul Syllable */ + [0xb45a, 0xb45a], /* Hangul Syllable */ + [0xb45b, 0xb45b], /* Hangul Syllable */ + [0xb45c, 0xb45c], /* Hangul Syllable */ + [0xb45d, 0xb45d], /* Hangul Syllable */ + [0xb45e, 0xb45e], /* Hangul Syllable */ + [0xb45f, 0xb45f], /* Hangul Syllable */ + [0xb460, 0xb460], /* Hangul Syllable */ + [0xb461, 0xb461], /* Hangul Syllable */ + [0xb462, 0xb462], /* Hangul Syllable */ + [0xb463, 0xb463], /* Hangul Syllable */ + [0xb464, 0xb464], /* Hangul Syllable */ + [0xb465, 0xb465], /* Hangul Syllable */ + [0xb466, 0xb466], /* Hangul Syllable */ + [0xb467, 0xb467], /* Hangul Syllable */ + [0xb468, 0xb468], /* Hangul Syllable */ + [0xb469, 0xb469], /* Hangul Syllable */ + [0xb46a, 0xb46a], /* Hangul Syllable */ + [0xb46b, 0xb46b], /* Hangul Syllable */ + [0xb46c, 0xb46c], /* Hangul Syllable */ + [0xb46d, 0xb46d], /* Hangul Syllable */ + [0xb46e, 0xb46e], /* Hangul Syllable */ + [0xb46f, 0xb46f], /* Hangul Syllable */ + [0xb470, 0xb470], /* Hangul Syllable */ + [0xb471, 0xb471], /* Hangul Syllable */ + [0xb472, 0xb472], /* Hangul Syllable */ + [0xb473, 0xb473], /* Hangul Syllable */ + [0xb474, 0xb474], /* Hangul Syllable */ + [0xb475, 0xb475], /* Hangul Syllable */ + [0xb476, 0xb476], /* Hangul Syllable */ + [0xb477, 0xb477], /* Hangul Syllable */ + [0xb478, 0xb478], /* Hangul Syllable */ + [0xb479, 0xb479], /* Hangul Syllable */ + [0xb47a, 0xb47a], /* Hangul Syllable */ + [0xb47b, 0xb47b], /* Hangul Syllable */ + [0xb47c, 0xb47c], /* Hangul Syllable */ + [0xb47d, 0xb47d], /* Hangul Syllable */ + [0xb47e, 0xb47e], /* Hangul Syllable */ + [0xb47f, 0xb47f], /* Hangul Syllable */ + [0xb480, 0xb480], /* Hangul Syllable */ + [0xb481, 0xb481], /* Hangul Syllable */ + [0xb482, 0xb482], /* Hangul Syllable */ + [0xb483, 0xb483], /* Hangul Syllable */ + [0xb484, 0xb484], /* Hangul Syllable */ + [0xb485, 0xb485], /* Hangul Syllable */ + [0xb486, 0xb486], /* Hangul Syllable */ + [0xb487, 0xb487], /* Hangul Syllable */ + [0xb488, 0xb488], /* Hangul Syllable */ + [0xb489, 0xb489], /* Hangul Syllable */ + [0xb48a, 0xb48a], /* Hangul Syllable */ + [0xb48b, 0xb48b], /* Hangul Syllable */ + [0xb48c, 0xb48c], /* Hangul Syllable */ + [0xb48d, 0xb48d], /* Hangul Syllable */ + [0xb48e, 0xb48e], /* Hangul Syllable */ + [0xb48f, 0xb48f], /* Hangul Syllable */ + [0xb490, 0xb490], /* Hangul Syllable */ + [0xb491, 0xb491], /* Hangul Syllable */ + [0xb492, 0xb492], /* Hangul Syllable */ + [0xb493, 0xb493], /* Hangul Syllable */ + [0xb494, 0xb494], /* Hangul Syllable */ + [0xb495, 0xb495], /* Hangul Syllable */ + [0xb496, 0xb496], /* Hangul Syllable */ + [0xb497, 0xb497], /* Hangul Syllable */ + [0xb498, 0xb498], /* Hangul Syllable */ + [0xb499, 0xb499], /* Hangul Syllable */ + [0xb49a, 0xb49a], /* Hangul Syllable */ + [0xb49b, 0xb49b], /* Hangul Syllable */ + [0xb49c, 0xb49c], /* Hangul Syllable */ + [0xb49d, 0xb49d], /* Hangul Syllable */ + [0xb49e, 0xb49e], /* Hangul Syllable */ + [0xb49f, 0xb49f], /* Hangul Syllable */ + [0xb4a0, 0xb4a0], /* Hangul Syllable */ + [0xb4a1, 0xb4a1], /* Hangul Syllable */ + [0xb4a2, 0xb4a2], /* Hangul Syllable */ + [0xb4a3, 0xb4a3], /* Hangul Syllable */ + [0xb4a4, 0xb4a4], /* Hangul Syllable */ + [0xb4a5, 0xb4a5], /* Hangul Syllable */ + [0xb4a6, 0xb4a6], /* Hangul Syllable */ + [0xb4a7, 0xb4a7], /* Hangul Syllable */ + [0xb4a8, 0xb4a8], /* Hangul Syllable */ + [0xb4a9, 0xb4a9], /* Hangul Syllable */ + [0xb4aa, 0xb4aa], /* Hangul Syllable */ + [0xb4ab, 0xb4ab], /* Hangul Syllable */ + [0xb4ac, 0xb4ac], /* Hangul Syllable */ + [0xb4ad, 0xb4ad], /* Hangul Syllable */ + [0xb4ae, 0xb4ae], /* Hangul Syllable */ + [0xb4af, 0xb4af], /* Hangul Syllable */ + [0xb4b0, 0xb4b0], /* Hangul Syllable */ + [0xb4b1, 0xb4b1], /* Hangul Syllable */ + [0xb4b2, 0xb4b2], /* Hangul Syllable */ + [0xb4b3, 0xb4b3], /* Hangul Syllable */ + [0xb4b4, 0xb4b4], /* Hangul Syllable */ + [0xb4b5, 0xb4b5], /* Hangul Syllable */ + [0xb4b6, 0xb4b6], /* Hangul Syllable */ + [0xb4b7, 0xb4b7], /* Hangul Syllable */ + [0xb4b8, 0xb4b8], /* Hangul Syllable */ + [0xb4b9, 0xb4b9], /* Hangul Syllable */ + [0xb4ba, 0xb4ba], /* Hangul Syllable */ + [0xb4bb, 0xb4bb], /* Hangul Syllable */ + [0xb4bc, 0xb4bc], /* Hangul Syllable */ + [0xb4bd, 0xb4bd], /* Hangul Syllable */ + [0xb4be, 0xb4be], /* Hangul Syllable */ + [0xb4bf, 0xb4bf], /* Hangul Syllable */ + [0xb4c0, 0xb4c0], /* Hangul Syllable */ + [0xb4c1, 0xb4c1], /* Hangul Syllable */ + [0xb4c2, 0xb4c2], /* Hangul Syllable */ + [0xb4c3, 0xb4c3], /* Hangul Syllable */ + [0xb4c4, 0xb4c4], /* Hangul Syllable */ + [0xb4c5, 0xb4c5], /* Hangul Syllable */ + [0xb4c6, 0xb4c6], /* Hangul Syllable */ + [0xb4c7, 0xb4c7], /* Hangul Syllable */ + [0xb4c8, 0xb4c8], /* Hangul Syllable */ + [0xb4c9, 0xb4c9], /* Hangul Syllable */ + [0xb4ca, 0xb4ca], /* Hangul Syllable */ + [0xb4cb, 0xb4cb], /* Hangul Syllable */ + [0xb4cc, 0xb4cc], /* Hangul Syllable */ + [0xb4cd, 0xb4cd], /* Hangul Syllable */ + [0xb4ce, 0xb4ce], /* Hangul Syllable */ + [0xb4cf, 0xb4cf], /* Hangul Syllable */ + [0xb4d0, 0xb4d0], /* Hangul Syllable */ + [0xb4d1, 0xb4d1], /* Hangul Syllable */ + [0xb4d2, 0xb4d2], /* Hangul Syllable */ + [0xb4d3, 0xb4d3], /* Hangul Syllable */ + [0xb4d4, 0xb4d4], /* Hangul Syllable */ + [0xb4d5, 0xb4d5], /* Hangul Syllable */ + [0xb4d6, 0xb4d6], /* Hangul Syllable */ + [0xb4d7, 0xb4d7], /* Hangul Syllable */ + [0xb4d8, 0xb4d8], /* Hangul Syllable */ + [0xb4d9, 0xb4d9], /* Hangul Syllable */ + [0xb4da, 0xb4da], /* Hangul Syllable */ + [0xb4db, 0xb4db], /* Hangul Syllable */ + [0xb4dc, 0xb4dc], /* Hangul Syllable */ + [0xb4dd, 0xb4dd], /* Hangul Syllable */ + [0xb4de, 0xb4de], /* Hangul Syllable */ + [0xb4df, 0xb4df], /* Hangul Syllable */ + [0xb4e0, 0xb4e0], /* Hangul Syllable */ + [0xb4e1, 0xb4e1], /* Hangul Syllable */ + [0xb4e2, 0xb4e2], /* Hangul Syllable */ + [0xb4e3, 0xb4e3], /* Hangul Syllable */ + [0xb4e4, 0xb4e4], /* Hangul Syllable */ + [0xb4e5, 0xb4e5], /* Hangul Syllable */ + [0xb4e6, 0xb4e6], /* Hangul Syllable */ + [0xb4e7, 0xb4e7], /* Hangul Syllable */ + [0xb4e8, 0xb4e8], /* Hangul Syllable */ + [0xb4e9, 0xb4e9], /* Hangul Syllable */ + [0xb4ea, 0xb4ea], /* Hangul Syllable */ + [0xb4eb, 0xb4eb], /* Hangul Syllable */ + [0xb4ec, 0xb4ec], /* Hangul Syllable */ + [0xb4ed, 0xb4ed], /* Hangul Syllable */ + [0xb4ee, 0xb4ee], /* Hangul Syllable */ + [0xb4ef, 0xb4ef], /* Hangul Syllable */ + [0xb4f0, 0xb4f0], /* Hangul Syllable */ + [0xb4f1, 0xb4f1], /* Hangul Syllable */ + [0xb4f2, 0xb4f2], /* Hangul Syllable */ + [0xb4f3, 0xb4f3], /* Hangul Syllable */ + [0xb4f4, 0xb4f4], /* Hangul Syllable */ + [0xb4f5, 0xb4f5], /* Hangul Syllable */ + [0xb4f6, 0xb4f6], /* Hangul Syllable */ + [0xb4f7, 0xb4f7], /* Hangul Syllable */ + [0xb4f8, 0xb4f8], /* Hangul Syllable */ + [0xb4f9, 0xb4f9], /* Hangul Syllable */ + [0xb4fa, 0xb4fa], /* Hangul Syllable */ + [0xb4fb, 0xb4fb], /* Hangul Syllable */ + [0xb4fc, 0xb4fc], /* Hangul Syllable */ + [0xb4fd, 0xb4fd], /* Hangul Syllable */ + [0xb4fe, 0xb4fe], /* Hangul Syllable */ + [0xb4ff, 0xb4ff], /* Hangul Syllable */ + [0xb500, 0xb500], /* Hangul Syllable */ + [0xb501, 0xb501], /* Hangul Syllable */ + [0xb502, 0xb502], /* Hangul Syllable */ + [0xb503, 0xb503], /* Hangul Syllable */ + [0xb504, 0xb504], /* Hangul Syllable */ + [0xb505, 0xb505], /* Hangul Syllable */ + [0xb506, 0xb506], /* Hangul Syllable */ + [0xb507, 0xb507], /* Hangul Syllable */ + [0xb508, 0xb508], /* Hangul Syllable */ + [0xb509, 0xb509], /* Hangul Syllable */ + [0xb50a, 0xb50a], /* Hangul Syllable */ + [0xb50b, 0xb50b], /* Hangul Syllable */ + [0xb50c, 0xb50c], /* Hangul Syllable */ + [0xb50d, 0xb50d], /* Hangul Syllable */ + [0xb50e, 0xb50e], /* Hangul Syllable */ + [0xb50f, 0xb50f], /* Hangul Syllable */ + [0xb510, 0xb510], /* Hangul Syllable */ + [0xb511, 0xb511], /* Hangul Syllable */ + [0xb512, 0xb512], /* Hangul Syllable */ + [0xb513, 0xb513], /* Hangul Syllable */ + [0xb514, 0xb514], /* Hangul Syllable */ + [0xb515, 0xb515], /* Hangul Syllable */ + [0xb516, 0xb516], /* Hangul Syllable */ + [0xb517, 0xb517], /* Hangul Syllable */ + [0xb518, 0xb518], /* Hangul Syllable */ + [0xb519, 0xb519], /* Hangul Syllable */ + [0xb51a, 0xb51a], /* Hangul Syllable */ + [0xb51b, 0xb51b], /* Hangul Syllable */ + [0xb51c, 0xb51c], /* Hangul Syllable */ + [0xb51d, 0xb51d], /* Hangul Syllable */ + [0xb51e, 0xb51e], /* Hangul Syllable */ + [0xb51f, 0xb51f], /* Hangul Syllable */ + [0xb520, 0xb520], /* Hangul Syllable */ + [0xb521, 0xb521], /* Hangul Syllable */ + [0xb522, 0xb522], /* Hangul Syllable */ + [0xb523, 0xb523], /* Hangul Syllable */ + [0xb524, 0xb524], /* Hangul Syllable */ + [0xb525, 0xb525], /* Hangul Syllable */ + [0xb526, 0xb526], /* Hangul Syllable */ + [0xb527, 0xb527], /* Hangul Syllable */ + [0xb528, 0xb528], /* Hangul Syllable */ + [0xb529, 0xb529], /* Hangul Syllable */ + [0xb52a, 0xb52a], /* Hangul Syllable */ + [0xb52b, 0xb52b], /* Hangul Syllable */ + [0xb52c, 0xb52c], /* Hangul Syllable */ + [0xb52d, 0xb52d], /* Hangul Syllable */ + [0xb52e, 0xb52e], /* Hangul Syllable */ + [0xb52f, 0xb52f], /* Hangul Syllable */ + [0xb530, 0xb530], /* Hangul Syllable */ + [0xb531, 0xb531], /* Hangul Syllable */ + [0xb532, 0xb532], /* Hangul Syllable */ + [0xb533, 0xb533], /* Hangul Syllable */ + [0xb534, 0xb534], /* Hangul Syllable */ + [0xb535, 0xb535], /* Hangul Syllable */ + [0xb536, 0xb536], /* Hangul Syllable */ + [0xb537, 0xb537], /* Hangul Syllable */ + [0xb538, 0xb538], /* Hangul Syllable */ + [0xb539, 0xb539], /* Hangul Syllable */ + [0xb53a, 0xb53a], /* Hangul Syllable */ + [0xb53b, 0xb53b], /* Hangul Syllable */ + [0xb53c, 0xb53c], /* Hangul Syllable */ + [0xb53d, 0xb53d], /* Hangul Syllable */ + [0xb53e, 0xb53e], /* Hangul Syllable */ + [0xb53f, 0xb53f], /* Hangul Syllable */ + [0xb540, 0xb540], /* Hangul Syllable */ + [0xb541, 0xb541], /* Hangul Syllable */ + [0xb542, 0xb542], /* Hangul Syllable */ + [0xb543, 0xb543], /* Hangul Syllable */ + [0xb544, 0xb544], /* Hangul Syllable */ + [0xb545, 0xb545], /* Hangul Syllable */ + [0xb546, 0xb546], /* Hangul Syllable */ + [0xb547, 0xb547], /* Hangul Syllable */ + [0xb548, 0xb548], /* Hangul Syllable */ + [0xb549, 0xb549], /* Hangul Syllable */ + [0xb54a, 0xb54a], /* Hangul Syllable */ + [0xb54b, 0xb54b], /* Hangul Syllable */ + [0xb54c, 0xb54c], /* Hangul Syllable */ + [0xb54d, 0xb54d], /* Hangul Syllable */ + [0xb54e, 0xb54e], /* Hangul Syllable */ + [0xb54f, 0xb54f], /* Hangul Syllable */ + [0xb550, 0xb550], /* Hangul Syllable */ + [0xb551, 0xb551], /* Hangul Syllable */ + [0xb552, 0xb552], /* Hangul Syllable */ + [0xb553, 0xb553], /* Hangul Syllable */ + [0xb554, 0xb554], /* Hangul Syllable */ + [0xb555, 0xb555], /* Hangul Syllable */ + [0xb556, 0xb556], /* Hangul Syllable */ + [0xb557, 0xb557], /* Hangul Syllable */ + [0xb558, 0xb558], /* Hangul Syllable */ + [0xb559, 0xb559], /* Hangul Syllable */ + [0xb55a, 0xb55a], /* Hangul Syllable */ + [0xb55b, 0xb55b], /* Hangul Syllable */ + [0xb55c, 0xb55c], /* Hangul Syllable */ + [0xb55d, 0xb55d], /* Hangul Syllable */ + [0xb55e, 0xb55e], /* Hangul Syllable */ + [0xb55f, 0xb55f], /* Hangul Syllable */ + [0xb560, 0xb560], /* Hangul Syllable */ + [0xb561, 0xb561], /* Hangul Syllable */ + [0xb562, 0xb562], /* Hangul Syllable */ + [0xb563, 0xb563], /* Hangul Syllable */ + [0xb564, 0xb564], /* Hangul Syllable */ + [0xb565, 0xb565], /* Hangul Syllable */ + [0xb566, 0xb566], /* Hangul Syllable */ + [0xb567, 0xb567], /* Hangul Syllable */ + [0xb568, 0xb568], /* Hangul Syllable */ + [0xb569, 0xb569], /* Hangul Syllable */ + [0xb56a, 0xb56a], /* Hangul Syllable */ + [0xb56b, 0xb56b], /* Hangul Syllable */ + [0xb56c, 0xb56c], /* Hangul Syllable */ + [0xb56d, 0xb56d], /* Hangul Syllable */ + [0xb56e, 0xb56e], /* Hangul Syllable */ + [0xb56f, 0xb56f], /* Hangul Syllable */ + [0xb570, 0xb570], /* Hangul Syllable */ + [0xb571, 0xb571], /* Hangul Syllable */ + [0xb572, 0xb572], /* Hangul Syllable */ + [0xb573, 0xb573], /* Hangul Syllable */ + [0xb574, 0xb574], /* Hangul Syllable */ + [0xb575, 0xb575], /* Hangul Syllable */ + [0xb576, 0xb576], /* Hangul Syllable */ + [0xb577, 0xb577], /* Hangul Syllable */ + [0xb578, 0xb578], /* Hangul Syllable */ + [0xb579, 0xb579], /* Hangul Syllable */ + [0xb57a, 0xb57a], /* Hangul Syllable */ + [0xb57b, 0xb57b], /* Hangul Syllable */ + [0xb57c, 0xb57c], /* Hangul Syllable */ + [0xb57d, 0xb57d], /* Hangul Syllable */ + [0xb57e, 0xb57e], /* Hangul Syllable */ + [0xb57f, 0xb57f], /* Hangul Syllable */ + [0xb580, 0xb580], /* Hangul Syllable */ + [0xb581, 0xb581], /* Hangul Syllable */ + [0xb582, 0xb582], /* Hangul Syllable */ + [0xb583, 0xb583], /* Hangul Syllable */ + [0xb584, 0xb584], /* Hangul Syllable */ + [0xb585, 0xb585], /* Hangul Syllable */ + [0xb586, 0xb586], /* Hangul Syllable */ + [0xb587, 0xb587], /* Hangul Syllable */ + [0xb588, 0xb588], /* Hangul Syllable */ + [0xb589, 0xb589], /* Hangul Syllable */ + [0xb58a, 0xb58a], /* Hangul Syllable */ + [0xb58b, 0xb58b], /* Hangul Syllable */ + [0xb58c, 0xb58c], /* Hangul Syllable */ + [0xb58d, 0xb58d], /* Hangul Syllable */ + [0xb58e, 0xb58e], /* Hangul Syllable */ + [0xb58f, 0xb58f], /* Hangul Syllable */ + [0xb590, 0xb590], /* Hangul Syllable */ + [0xb591, 0xb591], /* Hangul Syllable */ + [0xb592, 0xb592], /* Hangul Syllable */ + [0xb593, 0xb593], /* Hangul Syllable */ + [0xb594, 0xb594], /* Hangul Syllable */ + [0xb595, 0xb595], /* Hangul Syllable */ + [0xb596, 0xb596], /* Hangul Syllable */ + [0xb597, 0xb597], /* Hangul Syllable */ + [0xb598, 0xb598], /* Hangul Syllable */ + [0xb599, 0xb599], /* Hangul Syllable */ + [0xb59a, 0xb59a], /* Hangul Syllable */ + [0xb59b, 0xb59b], /* Hangul Syllable */ + [0xb59c, 0xb59c], /* Hangul Syllable */ + [0xb59d, 0xb59d], /* Hangul Syllable */ + [0xb59e, 0xb59e], /* Hangul Syllable */ + [0xb59f, 0xb59f], /* Hangul Syllable */ + [0xb5a0, 0xb5a0], /* Hangul Syllable */ + [0xb5a1, 0xb5a1], /* Hangul Syllable */ + [0xb5a2, 0xb5a2], /* Hangul Syllable */ + [0xb5a3, 0xb5a3], /* Hangul Syllable */ + [0xb5a4, 0xb5a4], /* Hangul Syllable */ + [0xb5a5, 0xb5a5], /* Hangul Syllable */ + [0xb5a6, 0xb5a6], /* Hangul Syllable */ + [0xb5a7, 0xb5a7], /* Hangul Syllable */ + [0xb5a8, 0xb5a8], /* Hangul Syllable */ + [0xb5a9, 0xb5a9], /* Hangul Syllable */ + [0xb5aa, 0xb5aa], /* Hangul Syllable */ + [0xb5ab, 0xb5ab], /* Hangul Syllable */ + [0xb5ac, 0xb5ac], /* Hangul Syllable */ + [0xb5ad, 0xb5ad], /* Hangul Syllable */ + [0xb5ae, 0xb5ae], /* Hangul Syllable */ + [0xb5af, 0xb5af], /* Hangul Syllable */ + [0xb5b0, 0xb5b0], /* Hangul Syllable */ + [0xb5b1, 0xb5b1], /* Hangul Syllable */ + [0xb5b2, 0xb5b2], /* Hangul Syllable */ + [0xb5b3, 0xb5b3], /* Hangul Syllable */ + [0xb5b4, 0xb5b4], /* Hangul Syllable */ + [0xb5b5, 0xb5b5], /* Hangul Syllable */ + [0xb5b6, 0xb5b6], /* Hangul Syllable */ + [0xb5b7, 0xb5b7], /* Hangul Syllable */ + [0xb5b8, 0xb5b8], /* Hangul Syllable */ + [0xb5b9, 0xb5b9], /* Hangul Syllable */ + [0xb5ba, 0xb5ba], /* Hangul Syllable */ + [0xb5bb, 0xb5bb], /* Hangul Syllable */ + [0xb5bc, 0xb5bc], /* Hangul Syllable */ + [0xb5bd, 0xb5bd], /* Hangul Syllable */ + [0xb5be, 0xb5be], /* Hangul Syllable */ + [0xb5bf, 0xb5bf], /* Hangul Syllable */ + [0xb5c0, 0xb5c0], /* Hangul Syllable */ + [0xb5c1, 0xb5c1], /* Hangul Syllable */ + [0xb5c2, 0xb5c2], /* Hangul Syllable */ + [0xb5c3, 0xb5c3], /* Hangul Syllable */ + [0xb5c4, 0xb5c4], /* Hangul Syllable */ + [0xb5c5, 0xb5c5], /* Hangul Syllable */ + [0xb5c6, 0xb5c6], /* Hangul Syllable */ + [0xb5c7, 0xb5c7], /* Hangul Syllable */ + [0xb5c8, 0xb5c8], /* Hangul Syllable */ + [0xb5c9, 0xb5c9], /* Hangul Syllable */ + [0xb5ca, 0xb5ca], /* Hangul Syllable */ + [0xb5cb, 0xb5cb], /* Hangul Syllable */ + [0xb5cc, 0xb5cc], /* Hangul Syllable */ + [0xb5cd, 0xb5cd], /* Hangul Syllable */ + [0xb5ce, 0xb5ce], /* Hangul Syllable */ + [0xb5cf, 0xb5cf], /* Hangul Syllable */ + [0xb5d0, 0xb5d0], /* Hangul Syllable */ + [0xb5d1, 0xb5d1], /* Hangul Syllable */ + [0xb5d2, 0xb5d2], /* Hangul Syllable */ + [0xb5d3, 0xb5d3], /* Hangul Syllable */ + [0xb5d4, 0xb5d4], /* Hangul Syllable */ + [0xb5d5, 0xb5d5], /* Hangul Syllable */ + [0xb5d6, 0xb5d6], /* Hangul Syllable */ + [0xb5d7, 0xb5d7], /* Hangul Syllable */ + [0xb5d8, 0xb5d8], /* Hangul Syllable */ + [0xb5d9, 0xb5d9], /* Hangul Syllable */ + [0xb5da, 0xb5da], /* Hangul Syllable */ + [0xb5db, 0xb5db], /* Hangul Syllable */ + [0xb5dc, 0xb5dc], /* Hangul Syllable */ + [0xb5dd, 0xb5dd], /* Hangul Syllable */ + [0xb5de, 0xb5de], /* Hangul Syllable */ + [0xb5df, 0xb5df], /* Hangul Syllable */ + [0xb5e0, 0xb5e0], /* Hangul Syllable */ + [0xb5e1, 0xb5e1], /* Hangul Syllable */ + [0xb5e2, 0xb5e2], /* Hangul Syllable */ + [0xb5e3, 0xb5e3], /* Hangul Syllable */ + [0xb5e4, 0xb5e4], /* Hangul Syllable */ + [0xb5e5, 0xb5e5], /* Hangul Syllable */ + [0xb5e6, 0xb5e6], /* Hangul Syllable */ + [0xb5e7, 0xb5e7], /* Hangul Syllable */ + [0xb5e8, 0xb5e8], /* Hangul Syllable */ + [0xb5e9, 0xb5e9], /* Hangul Syllable */ + [0xb5ea, 0xb5ea], /* Hangul Syllable */ + [0xb5eb, 0xb5eb], /* Hangul Syllable */ + [0xb5ec, 0xb5ec], /* Hangul Syllable */ + [0xb5ed, 0xb5ed], /* Hangul Syllable */ + [0xb5ee, 0xb5ee], /* Hangul Syllable */ + [0xb5ef, 0xb5ef], /* Hangul Syllable */ + [0xb5f0, 0xb5f0], /* Hangul Syllable */ + [0xb5f1, 0xb5f1], /* Hangul Syllable */ + [0xb5f2, 0xb5f2], /* Hangul Syllable */ + [0xb5f3, 0xb5f3], /* Hangul Syllable */ + [0xb5f4, 0xb5f4], /* Hangul Syllable */ + [0xb5f5, 0xb5f5], /* Hangul Syllable */ + [0xb5f6, 0xb5f6], /* Hangul Syllable */ + [0xb5f7, 0xb5f7], /* Hangul Syllable */ + [0xb5f8, 0xb5f8], /* Hangul Syllable */ + [0xb5f9, 0xb5f9], /* Hangul Syllable */ + [0xb5fa, 0xb5fa], /* Hangul Syllable */ + [0xb5fb, 0xb5fb], /* Hangul Syllable */ + [0xb5fc, 0xb5fc], /* Hangul Syllable */ + [0xb5fd, 0xb5fd], /* Hangul Syllable */ + [0xb5fe, 0xb5fe], /* Hangul Syllable */ + [0xb5ff, 0xb5ff], /* Hangul Syllable */ + [0xb600, 0xb600], /* Hangul Syllable */ + [0xb601, 0xb601], /* Hangul Syllable */ + [0xb602, 0xb602], /* Hangul Syllable */ + [0xb603, 0xb603], /* Hangul Syllable */ + [0xb604, 0xb604], /* Hangul Syllable */ + [0xb605, 0xb605], /* Hangul Syllable */ + [0xb606, 0xb606], /* Hangul Syllable */ + [0xb607, 0xb607], /* Hangul Syllable */ + [0xb608, 0xb608], /* Hangul Syllable */ + [0xb609, 0xb609], /* Hangul Syllable */ + [0xb60a, 0xb60a], /* Hangul Syllable */ + [0xb60b, 0xb60b], /* Hangul Syllable */ + [0xb60c, 0xb60c], /* Hangul Syllable */ + [0xb60d, 0xb60d], /* Hangul Syllable */ + [0xb60e, 0xb60e], /* Hangul Syllable */ + [0xb60f, 0xb60f], /* Hangul Syllable */ + [0xb610, 0xb610], /* Hangul Syllable */ + [0xb611, 0xb611], /* Hangul Syllable */ + [0xb612, 0xb612], /* Hangul Syllable */ + [0xb613, 0xb613], /* Hangul Syllable */ + [0xb614, 0xb614], /* Hangul Syllable */ + [0xb615, 0xb615], /* Hangul Syllable */ + [0xb616, 0xb616], /* Hangul Syllable */ + [0xb617, 0xb617], /* Hangul Syllable */ + [0xb618, 0xb618], /* Hangul Syllable */ + [0xb619, 0xb619], /* Hangul Syllable */ + [0xb61a, 0xb61a], /* Hangul Syllable */ + [0xb61b, 0xb61b], /* Hangul Syllable */ + [0xb61c, 0xb61c], /* Hangul Syllable */ + [0xb61d, 0xb61d], /* Hangul Syllable */ + [0xb61e, 0xb61e], /* Hangul Syllable */ + [0xb61f, 0xb61f], /* Hangul Syllable */ + [0xb620, 0xb620], /* Hangul Syllable */ + [0xb621, 0xb621], /* Hangul Syllable */ + [0xb622, 0xb622], /* Hangul Syllable */ + [0xb623, 0xb623], /* Hangul Syllable */ + [0xb624, 0xb624], /* Hangul Syllable */ + [0xb625, 0xb625], /* Hangul Syllable */ + [0xb626, 0xb626], /* Hangul Syllable */ + [0xb627, 0xb627], /* Hangul Syllable */ + [0xb628, 0xb628], /* Hangul Syllable */ + [0xb629, 0xb629], /* Hangul Syllable */ + [0xb62a, 0xb62a], /* Hangul Syllable */ + [0xb62b, 0xb62b], /* Hangul Syllable */ + [0xb62c, 0xb62c], /* Hangul Syllable */ + [0xb62d, 0xb62d], /* Hangul Syllable */ + [0xb62e, 0xb62e], /* Hangul Syllable */ + [0xb62f, 0xb62f], /* Hangul Syllable */ + [0xb630, 0xb630], /* Hangul Syllable */ + [0xb631, 0xb631], /* Hangul Syllable */ + [0xb632, 0xb632], /* Hangul Syllable */ + [0xb633, 0xb633], /* Hangul Syllable */ + [0xb634, 0xb634], /* Hangul Syllable */ + [0xb635, 0xb635], /* Hangul Syllable */ + [0xb636, 0xb636], /* Hangul Syllable */ + [0xb637, 0xb637], /* Hangul Syllable */ + [0xb638, 0xb638], /* Hangul Syllable */ + [0xb639, 0xb639], /* Hangul Syllable */ + [0xb63a, 0xb63a], /* Hangul Syllable */ + [0xb63b, 0xb63b], /* Hangul Syllable */ + [0xb63c, 0xb63c], /* Hangul Syllable */ + [0xb63d, 0xb63d], /* Hangul Syllable */ + [0xb63e, 0xb63e], /* Hangul Syllable */ + [0xb63f, 0xb63f], /* Hangul Syllable */ + [0xb640, 0xb640], /* Hangul Syllable */ + [0xb641, 0xb641], /* Hangul Syllable */ + [0xb642, 0xb642], /* Hangul Syllable */ + [0xb643, 0xb643], /* Hangul Syllable */ + [0xb644, 0xb644], /* Hangul Syllable */ + [0xb645, 0xb645], /* Hangul Syllable */ + [0xb646, 0xb646], /* Hangul Syllable */ + [0xb647, 0xb647], /* Hangul Syllable */ + [0xb648, 0xb648], /* Hangul Syllable */ + [0xb649, 0xb649], /* Hangul Syllable */ + [0xb64a, 0xb64a], /* Hangul Syllable */ + [0xb64b, 0xb64b], /* Hangul Syllable */ + [0xb64c, 0xb64c], /* Hangul Syllable */ + [0xb64d, 0xb64d], /* Hangul Syllable */ + [0xb64e, 0xb64e], /* Hangul Syllable */ + [0xb64f, 0xb64f], /* Hangul Syllable */ + [0xb650, 0xb650], /* Hangul Syllable */ + [0xb651, 0xb651], /* Hangul Syllable */ + [0xb652, 0xb652], /* Hangul Syllable */ + [0xb653, 0xb653], /* Hangul Syllable */ + [0xb654, 0xb654], /* Hangul Syllable */ + [0xb655, 0xb655], /* Hangul Syllable */ + [0xb656, 0xb656], /* Hangul Syllable */ + [0xb657, 0xb657], /* Hangul Syllable */ + [0xb658, 0xb658], /* Hangul Syllable */ + [0xb659, 0xb659], /* Hangul Syllable */ + [0xb65a, 0xb65a], /* Hangul Syllable */ + [0xb65b, 0xb65b], /* Hangul Syllable */ + [0xb65c, 0xb65c], /* Hangul Syllable */ + [0xb65d, 0xb65d], /* Hangul Syllable */ + [0xb65e, 0xb65e], /* Hangul Syllable */ + [0xb65f, 0xb65f], /* Hangul Syllable */ + [0xb660, 0xb660], /* Hangul Syllable */ + [0xb661, 0xb661], /* Hangul Syllable */ + [0xb662, 0xb662], /* Hangul Syllable */ + [0xb663, 0xb663], /* Hangul Syllable */ + [0xb664, 0xb664], /* Hangul Syllable */ + [0xb665, 0xb665], /* Hangul Syllable */ + [0xb666, 0xb666], /* Hangul Syllable */ + [0xb667, 0xb667], /* Hangul Syllable */ + [0xb668, 0xb668], /* Hangul Syllable */ + [0xb669, 0xb669], /* Hangul Syllable */ + [0xb66a, 0xb66a], /* Hangul Syllable */ + [0xb66b, 0xb66b], /* Hangul Syllable */ + [0xb66c, 0xb66c], /* Hangul Syllable */ + [0xb66d, 0xb66d], /* Hangul Syllable */ + [0xb66e, 0xb66e], /* Hangul Syllable */ + [0xb66f, 0xb66f], /* Hangul Syllable */ + [0xb670, 0xb670], /* Hangul Syllable */ + [0xb671, 0xb671], /* Hangul Syllable */ + [0xb672, 0xb672], /* Hangul Syllable */ + [0xb673, 0xb673], /* Hangul Syllable */ + [0xb674, 0xb674], /* Hangul Syllable */ + [0xb675, 0xb675], /* Hangul Syllable */ + [0xb676, 0xb676], /* Hangul Syllable */ + [0xb677, 0xb677], /* Hangul Syllable */ + [0xb678, 0xb678], /* Hangul Syllable */ + [0xb679, 0xb679], /* Hangul Syllable */ + [0xb67a, 0xb67a], /* Hangul Syllable */ + [0xb67b, 0xb67b], /* Hangul Syllable */ + [0xb67c, 0xb67c], /* Hangul Syllable */ + [0xb67d, 0xb67d], /* Hangul Syllable */ + [0xb67e, 0xb67e], /* Hangul Syllable */ + [0xb67f, 0xb67f], /* Hangul Syllable */ + [0xb680, 0xb680], /* Hangul Syllable */ + [0xb681, 0xb681], /* Hangul Syllable */ + [0xb682, 0xb682], /* Hangul Syllable */ + [0xb683, 0xb683], /* Hangul Syllable */ + [0xb684, 0xb684], /* Hangul Syllable */ + [0xb685, 0xb685], /* Hangul Syllable */ + [0xb686, 0xb686], /* Hangul Syllable */ + [0xb687, 0xb687], /* Hangul Syllable */ + [0xb688, 0xb688], /* Hangul Syllable */ + [0xb689, 0xb689], /* Hangul Syllable */ + [0xb68a, 0xb68a], /* Hangul Syllable */ + [0xb68b, 0xb68b], /* Hangul Syllable */ + [0xb68c, 0xb68c], /* Hangul Syllable */ + [0xb68d, 0xb68d], /* Hangul Syllable */ + [0xb68e, 0xb68e], /* Hangul Syllable */ + [0xb68f, 0xb68f], /* Hangul Syllable */ + [0xb690, 0xb690], /* Hangul Syllable */ + [0xb691, 0xb691], /* Hangul Syllable */ + [0xb692, 0xb692], /* Hangul Syllable */ + [0xb693, 0xb693], /* Hangul Syllable */ + [0xb694, 0xb694], /* Hangul Syllable */ + [0xb695, 0xb695], /* Hangul Syllable */ + [0xb696, 0xb696], /* Hangul Syllable */ + [0xb697, 0xb697], /* Hangul Syllable */ + [0xb698, 0xb698], /* Hangul Syllable */ + [0xb699, 0xb699], /* Hangul Syllable */ + [0xb69a, 0xb69a], /* Hangul Syllable */ + [0xb69b, 0xb69b], /* Hangul Syllable */ + [0xb69c, 0xb69c], /* Hangul Syllable */ + [0xb69d, 0xb69d], /* Hangul Syllable */ + [0xb69e, 0xb69e], /* Hangul Syllable */ + [0xb69f, 0xb69f], /* Hangul Syllable */ + [0xb6a0, 0xb6a0], /* Hangul Syllable */ + [0xb6a1, 0xb6a1], /* Hangul Syllable */ + [0xb6a2, 0xb6a2], /* Hangul Syllable */ + [0xb6a3, 0xb6a3], /* Hangul Syllable */ + [0xb6a4, 0xb6a4], /* Hangul Syllable */ + [0xb6a5, 0xb6a5], /* Hangul Syllable */ + [0xb6a6, 0xb6a6], /* Hangul Syllable */ + [0xb6a7, 0xb6a7], /* Hangul Syllable */ + [0xb6a8, 0xb6a8], /* Hangul Syllable */ + [0xb6a9, 0xb6a9], /* Hangul Syllable */ + [0xb6aa, 0xb6aa], /* Hangul Syllable */ + [0xb6ab, 0xb6ab], /* Hangul Syllable */ + [0xb6ac, 0xb6ac], /* Hangul Syllable */ + [0xb6ad, 0xb6ad], /* Hangul Syllable */ + [0xb6ae, 0xb6ae], /* Hangul Syllable */ + [0xb6af, 0xb6af], /* Hangul Syllable */ + [0xb6b0, 0xb6b0], /* Hangul Syllable */ + [0xb6b1, 0xb6b1], /* Hangul Syllable */ + [0xb6b2, 0xb6b2], /* Hangul Syllable */ + [0xb6b3, 0xb6b3], /* Hangul Syllable */ + [0xb6b4, 0xb6b4], /* Hangul Syllable */ + [0xb6b5, 0xb6b5], /* Hangul Syllable */ + [0xb6b6, 0xb6b6], /* Hangul Syllable */ + [0xb6b7, 0xb6b7], /* Hangul Syllable */ + [0xb6b8, 0xb6b8], /* Hangul Syllable */ + [0xb6b9, 0xb6b9], /* Hangul Syllable */ + [0xb6ba, 0xb6ba], /* Hangul Syllable */ + [0xb6bb, 0xb6bb], /* Hangul Syllable */ + [0xb6bc, 0xb6bc], /* Hangul Syllable */ + [0xb6bd, 0xb6bd], /* Hangul Syllable */ + [0xb6be, 0xb6be], /* Hangul Syllable */ + [0xb6bf, 0xb6bf], /* Hangul Syllable */ + [0xb6c0, 0xb6c0], /* Hangul Syllable */ + [0xb6c1, 0xb6c1], /* Hangul Syllable */ + [0xb6c2, 0xb6c2], /* Hangul Syllable */ + [0xb6c3, 0xb6c3], /* Hangul Syllable */ + [0xb6c4, 0xb6c4], /* Hangul Syllable */ + [0xb6c5, 0xb6c5], /* Hangul Syllable */ + [0xb6c6, 0xb6c6], /* Hangul Syllable */ + [0xb6c7, 0xb6c7], /* Hangul Syllable */ + [0xb6c8, 0xb6c8], /* Hangul Syllable */ + [0xb6c9, 0xb6c9], /* Hangul Syllable */ + [0xb6ca, 0xb6ca], /* Hangul Syllable */ + [0xb6cb, 0xb6cb], /* Hangul Syllable */ + [0xb6cc, 0xb6cc], /* Hangul Syllable */ + [0xb6cd, 0xb6cd], /* Hangul Syllable */ + [0xb6ce, 0xb6ce], /* Hangul Syllable */ + [0xb6cf, 0xb6cf], /* Hangul Syllable */ + [0xb6d0, 0xb6d0], /* Hangul Syllable */ + [0xb6d1, 0xb6d1], /* Hangul Syllable */ + [0xb6d2, 0xb6d2], /* Hangul Syllable */ + [0xb6d3, 0xb6d3], /* Hangul Syllable */ + [0xb6d4, 0xb6d4], /* Hangul Syllable */ + [0xb6d5, 0xb6d5], /* Hangul Syllable */ + [0xb6d6, 0xb6d6], /* Hangul Syllable */ + [0xb6d7, 0xb6d7], /* Hangul Syllable */ + [0xb6d8, 0xb6d8], /* Hangul Syllable */ + [0xb6d9, 0xb6d9], /* Hangul Syllable */ + [0xb6da, 0xb6da], /* Hangul Syllable */ + [0xb6db, 0xb6db], /* Hangul Syllable */ + [0xb6dc, 0xb6dc], /* Hangul Syllable */ + [0xb6dd, 0xb6dd], /* Hangul Syllable */ + [0xb6de, 0xb6de], /* Hangul Syllable */ + [0xb6df, 0xb6df], /* Hangul Syllable */ + [0xb6e0, 0xb6e0], /* Hangul Syllable */ + [0xb6e1, 0xb6e1], /* Hangul Syllable */ + [0xb6e2, 0xb6e2], /* Hangul Syllable */ + [0xb6e3, 0xb6e3], /* Hangul Syllable */ + [0xb6e4, 0xb6e4], /* Hangul Syllable */ + [0xb6e5, 0xb6e5], /* Hangul Syllable */ + [0xb6e6, 0xb6e6], /* Hangul Syllable */ + [0xb6e7, 0xb6e7], /* Hangul Syllable */ + [0xb6e8, 0xb6e8], /* Hangul Syllable */ + [0xb6e9, 0xb6e9], /* Hangul Syllable */ + [0xb6ea, 0xb6ea], /* Hangul Syllable */ + [0xb6eb, 0xb6eb], /* Hangul Syllable */ + [0xb6ec, 0xb6ec], /* Hangul Syllable */ + [0xb6ed, 0xb6ed], /* Hangul Syllable */ + [0xb6ee, 0xb6ee], /* Hangul Syllable */ + [0xb6ef, 0xb6ef], /* Hangul Syllable */ + [0xb6f0, 0xb6f0], /* Hangul Syllable */ + [0xb6f1, 0xb6f1], /* Hangul Syllable */ + [0xb6f2, 0xb6f2], /* Hangul Syllable */ + [0xb6f3, 0xb6f3], /* Hangul Syllable */ + [0xb6f4, 0xb6f4], /* Hangul Syllable */ + [0xb6f5, 0xb6f5], /* Hangul Syllable */ + [0xb6f6, 0xb6f6], /* Hangul Syllable */ + [0xb6f7, 0xb6f7], /* Hangul Syllable */ + [0xb6f8, 0xb6f8], /* Hangul Syllable */ + [0xb6f9, 0xb6f9], /* Hangul Syllable */ + [0xb6fa, 0xb6fa], /* Hangul Syllable */ + [0xb6fb, 0xb6fb], /* Hangul Syllable */ + [0xb6fc, 0xb6fc], /* Hangul Syllable */ + [0xb6fd, 0xb6fd], /* Hangul Syllable */ + [0xb6fe, 0xb6fe], /* Hangul Syllable */ + [0xb6ff, 0xb6ff], /* Hangul Syllable */ + [0xb700, 0xb700], /* Hangul Syllable */ + [0xb701, 0xb701], /* Hangul Syllable */ + [0xb702, 0xb702], /* Hangul Syllable */ + [0xb703, 0xb703], /* Hangul Syllable */ + [0xb704, 0xb704], /* Hangul Syllable */ + [0xb705, 0xb705], /* Hangul Syllable */ + [0xb706, 0xb706], /* Hangul Syllable */ + [0xb707, 0xb707], /* Hangul Syllable */ + [0xb708, 0xb708], /* Hangul Syllable */ + [0xb709, 0xb709], /* Hangul Syllable */ + [0xb70a, 0xb70a], /* Hangul Syllable */ + [0xb70b, 0xb70b], /* Hangul Syllable */ + [0xb70c, 0xb70c], /* Hangul Syllable */ + [0xb70d, 0xb70d], /* Hangul Syllable */ + [0xb70e, 0xb70e], /* Hangul Syllable */ + [0xb70f, 0xb70f], /* Hangul Syllable */ + [0xb710, 0xb710], /* Hangul Syllable */ + [0xb711, 0xb711], /* Hangul Syllable */ + [0xb712, 0xb712], /* Hangul Syllable */ + [0xb713, 0xb713], /* Hangul Syllable */ + [0xb714, 0xb714], /* Hangul Syllable */ + [0xb715, 0xb715], /* Hangul Syllable */ + [0xb716, 0xb716], /* Hangul Syllable */ + [0xb717, 0xb717], /* Hangul Syllable */ + [0xb718, 0xb718], /* Hangul Syllable */ + [0xb719, 0xb719], /* Hangul Syllable */ + [0xb71a, 0xb71a], /* Hangul Syllable */ + [0xb71b, 0xb71b], /* Hangul Syllable */ + [0xb71c, 0xb71c], /* Hangul Syllable */ + [0xb71d, 0xb71d], /* Hangul Syllable */ + [0xb71e, 0xb71e], /* Hangul Syllable */ + [0xb71f, 0xb71f], /* Hangul Syllable */ + [0xb720, 0xb720], /* Hangul Syllable */ + [0xb721, 0xb721], /* Hangul Syllable */ + [0xb722, 0xb722], /* Hangul Syllable */ + [0xb723, 0xb723], /* Hangul Syllable */ + [0xb724, 0xb724], /* Hangul Syllable */ + [0xb725, 0xb725], /* Hangul Syllable */ + [0xb726, 0xb726], /* Hangul Syllable */ + [0xb727, 0xb727], /* Hangul Syllable */ + [0xb728, 0xb728], /* Hangul Syllable */ + [0xb729, 0xb729], /* Hangul Syllable */ + [0xb72a, 0xb72a], /* Hangul Syllable */ + [0xb72b, 0xb72b], /* Hangul Syllable */ + [0xb72c, 0xb72c], /* Hangul Syllable */ + [0xb72d, 0xb72d], /* Hangul Syllable */ + [0xb72e, 0xb72e], /* Hangul Syllable */ + [0xb72f, 0xb72f], /* Hangul Syllable */ + [0xb730, 0xb730], /* Hangul Syllable */ + [0xb731, 0xb731], /* Hangul Syllable */ + [0xb732, 0xb732], /* Hangul Syllable */ + [0xb733, 0xb733], /* Hangul Syllable */ + [0xb734, 0xb734], /* Hangul Syllable */ + [0xb735, 0xb735], /* Hangul Syllable */ + [0xb736, 0xb736], /* Hangul Syllable */ + [0xb737, 0xb737], /* Hangul Syllable */ + [0xb738, 0xb738], /* Hangul Syllable */ + [0xb739, 0xb739], /* Hangul Syllable */ + [0xb73a, 0xb73a], /* Hangul Syllable */ + [0xb73b, 0xb73b], /* Hangul Syllable */ + [0xb73c, 0xb73c], /* Hangul Syllable */ + [0xb73d, 0xb73d], /* Hangul Syllable */ + [0xb73e, 0xb73e], /* Hangul Syllable */ + [0xb73f, 0xb73f], /* Hangul Syllable */ + [0xb740, 0xb740], /* Hangul Syllable */ + [0xb741, 0xb741], /* Hangul Syllable */ + [0xb742, 0xb742], /* Hangul Syllable */ + [0xb743, 0xb743], /* Hangul Syllable */ + [0xb744, 0xb744], /* Hangul Syllable */ + [0xb745, 0xb745], /* Hangul Syllable */ + [0xb746, 0xb746], /* Hangul Syllable */ + [0xb747, 0xb747], /* Hangul Syllable */ + [0xb748, 0xb748], /* Hangul Syllable */ + [0xb749, 0xb749], /* Hangul Syllable */ + [0xb74a, 0xb74a], /* Hangul Syllable */ + [0xb74b, 0xb74b], /* Hangul Syllable */ + [0xb74c, 0xb74c], /* Hangul Syllable */ + [0xb74d, 0xb74d], /* Hangul Syllable */ + [0xb74e, 0xb74e], /* Hangul Syllable */ + [0xb74f, 0xb74f], /* Hangul Syllable */ + [0xb750, 0xb750], /* Hangul Syllable */ + [0xb751, 0xb751], /* Hangul Syllable */ + [0xb752, 0xb752], /* Hangul Syllable */ + [0xb753, 0xb753], /* Hangul Syllable */ + [0xb754, 0xb754], /* Hangul Syllable */ + [0xb755, 0xb755], /* Hangul Syllable */ + [0xb756, 0xb756], /* Hangul Syllable */ + [0xb757, 0xb757], /* Hangul Syllable */ + [0xb758, 0xb758], /* Hangul Syllable */ + [0xb759, 0xb759], /* Hangul Syllable */ + [0xb75a, 0xb75a], /* Hangul Syllable */ + [0xb75b, 0xb75b], /* Hangul Syllable */ + [0xb75c, 0xb75c], /* Hangul Syllable */ + [0xb75d, 0xb75d], /* Hangul Syllable */ + [0xb75e, 0xb75e], /* Hangul Syllable */ + [0xb75f, 0xb75f], /* Hangul Syllable */ + [0xb760, 0xb760], /* Hangul Syllable */ + [0xb761, 0xb761], /* Hangul Syllable */ + [0xb762, 0xb762], /* Hangul Syllable */ + [0xb763, 0xb763], /* Hangul Syllable */ + [0xb764, 0xb764], /* Hangul Syllable */ + [0xb765, 0xb765], /* Hangul Syllable */ + [0xb766, 0xb766], /* Hangul Syllable */ + [0xb767, 0xb767], /* Hangul Syllable */ + [0xb768, 0xb768], /* Hangul Syllable */ + [0xb769, 0xb769], /* Hangul Syllable */ + [0xb76a, 0xb76a], /* Hangul Syllable */ + [0xb76b, 0xb76b], /* Hangul Syllable */ + [0xb76c, 0xb76c], /* Hangul Syllable */ + [0xb76d, 0xb76d], /* Hangul Syllable */ + [0xb76e, 0xb76e], /* Hangul Syllable */ + [0xb76f, 0xb76f], /* Hangul Syllable */ + [0xb770, 0xb770], /* Hangul Syllable */ + [0xb771, 0xb771], /* Hangul Syllable */ + [0xb772, 0xb772], /* Hangul Syllable */ + [0xb773, 0xb773], /* Hangul Syllable */ + [0xb774, 0xb774], /* Hangul Syllable */ + [0xb775, 0xb775], /* Hangul Syllable */ + [0xb776, 0xb776], /* Hangul Syllable */ + [0xb777, 0xb777], /* Hangul Syllable */ + [0xb778, 0xb778], /* Hangul Syllable */ + [0xb779, 0xb779], /* Hangul Syllable */ + [0xb77a, 0xb77a], /* Hangul Syllable */ + [0xb77b, 0xb77b], /* Hangul Syllable */ + [0xb77c, 0xb77c], /* Hangul Syllable */ + [0xb77d, 0xb77d], /* Hangul Syllable */ + [0xb77e, 0xb77e], /* Hangul Syllable */ + [0xb77f, 0xb77f], /* Hangul Syllable */ + [0xb780, 0xb780], /* Hangul Syllable */ + [0xb781, 0xb781], /* Hangul Syllable */ + [0xb782, 0xb782], /* Hangul Syllable */ + [0xb783, 0xb783], /* Hangul Syllable */ + [0xb784, 0xb784], /* Hangul Syllable */ + [0xb785, 0xb785], /* Hangul Syllable */ + [0xb786, 0xb786], /* Hangul Syllable */ + [0xb787, 0xb787], /* Hangul Syllable */ + [0xb788, 0xb788], /* Hangul Syllable */ + [0xb789, 0xb789], /* Hangul Syllable */ + [0xb78a, 0xb78a], /* Hangul Syllable */ + [0xb78b, 0xb78b], /* Hangul Syllable */ + [0xb78c, 0xb78c], /* Hangul Syllable */ + [0xb78d, 0xb78d], /* Hangul Syllable */ + [0xb78e, 0xb78e], /* Hangul Syllable */ + [0xb78f, 0xb78f], /* Hangul Syllable */ + [0xb790, 0xb790], /* Hangul Syllable */ + [0xb791, 0xb791], /* Hangul Syllable */ + [0xb792, 0xb792], /* Hangul Syllable */ + [0xb793, 0xb793], /* Hangul Syllable */ + [0xb794, 0xb794], /* Hangul Syllable */ + [0xb795, 0xb795], /* Hangul Syllable */ + [0xb796, 0xb796], /* Hangul Syllable */ + [0xb797, 0xb797], /* Hangul Syllable */ + [0xb798, 0xb798], /* Hangul Syllable */ + [0xb799, 0xb799], /* Hangul Syllable */ + [0xb79a, 0xb79a], /* Hangul Syllable */ + [0xb79b, 0xb79b], /* Hangul Syllable */ + [0xb79c, 0xb79c], /* Hangul Syllable */ + [0xb79d, 0xb79d], /* Hangul Syllable */ + [0xb79e, 0xb79e], /* Hangul Syllable */ + [0xb79f, 0xb79f], /* Hangul Syllable */ + [0xb7a0, 0xb7a0], /* Hangul Syllable */ + [0xb7a1, 0xb7a1], /* Hangul Syllable */ + [0xb7a2, 0xb7a2], /* Hangul Syllable */ + [0xb7a3, 0xb7a3], /* Hangul Syllable */ + [0xb7a4, 0xb7a4], /* Hangul Syllable */ + [0xb7a5, 0xb7a5], /* Hangul Syllable */ + [0xb7a6, 0xb7a6], /* Hangul Syllable */ + [0xb7a7, 0xb7a7], /* Hangul Syllable */ + [0xb7a8, 0xb7a8], /* Hangul Syllable */ + [0xb7a9, 0xb7a9], /* Hangul Syllable */ + [0xb7aa, 0xb7aa], /* Hangul Syllable */ + [0xb7ab, 0xb7ab], /* Hangul Syllable */ + [0xb7ac, 0xb7ac], /* Hangul Syllable */ + [0xb7ad, 0xb7ad], /* Hangul Syllable */ + [0xb7ae, 0xb7ae], /* Hangul Syllable */ + [0xb7af, 0xb7af], /* Hangul Syllable */ + [0xb7b0, 0xb7b0], /* Hangul Syllable */ + [0xb7b1, 0xb7b1], /* Hangul Syllable */ + [0xb7b2, 0xb7b2], /* Hangul Syllable */ + [0xb7b3, 0xb7b3], /* Hangul Syllable */ + [0xb7b4, 0xb7b4], /* Hangul Syllable */ + [0xb7b5, 0xb7b5], /* Hangul Syllable */ + [0xb7b6, 0xb7b6], /* Hangul Syllable */ + [0xb7b7, 0xb7b7], /* Hangul Syllable */ + [0xb7b8, 0xb7b8], /* Hangul Syllable */ + [0xb7b9, 0xb7b9], /* Hangul Syllable */ + [0xb7ba, 0xb7ba], /* Hangul Syllable */ + [0xb7bb, 0xb7bb], /* Hangul Syllable */ + [0xb7bc, 0xb7bc], /* Hangul Syllable */ + [0xb7bd, 0xb7bd], /* Hangul Syllable */ + [0xb7be, 0xb7be], /* Hangul Syllable */ + [0xb7bf, 0xb7bf], /* Hangul Syllable */ + [0xb7c0, 0xb7c0], /* Hangul Syllable */ + [0xb7c1, 0xb7c1], /* Hangul Syllable */ + [0xb7c2, 0xb7c2], /* Hangul Syllable */ + [0xb7c3, 0xb7c3], /* Hangul Syllable */ + [0xb7c4, 0xb7c4], /* Hangul Syllable */ + [0xb7c5, 0xb7c5], /* Hangul Syllable */ + [0xb7c6, 0xb7c6], /* Hangul Syllable */ + [0xb7c7, 0xb7c7], /* Hangul Syllable */ + [0xb7c8, 0xb7c8], /* Hangul Syllable */ + [0xb7c9, 0xb7c9], /* Hangul Syllable */ + [0xb7ca, 0xb7ca], /* Hangul Syllable */ + [0xb7cb, 0xb7cb], /* Hangul Syllable */ + [0xb7cc, 0xb7cc], /* Hangul Syllable */ + [0xb7cd, 0xb7cd], /* Hangul Syllable */ + [0xb7ce, 0xb7ce], /* Hangul Syllable */ + [0xb7cf, 0xb7cf], /* Hangul Syllable */ + [0xb7d0, 0xb7d0], /* Hangul Syllable */ + [0xb7d1, 0xb7d1], /* Hangul Syllable */ + [0xb7d2, 0xb7d2], /* Hangul Syllable */ + [0xb7d3, 0xb7d3], /* Hangul Syllable */ + [0xb7d4, 0xb7d4], /* Hangul Syllable */ + [0xb7d5, 0xb7d5], /* Hangul Syllable */ + [0xb7d6, 0xb7d6], /* Hangul Syllable */ + [0xb7d7, 0xb7d7], /* Hangul Syllable */ + [0xb7d8, 0xb7d8], /* Hangul Syllable */ + [0xb7d9, 0xb7d9], /* Hangul Syllable */ + [0xb7da, 0xb7da], /* Hangul Syllable */ + [0xb7db, 0xb7db], /* Hangul Syllable */ + [0xb7dc, 0xb7dc], /* Hangul Syllable */ + [0xb7dd, 0xb7dd], /* Hangul Syllable */ + [0xb7de, 0xb7de], /* Hangul Syllable */ + [0xb7df, 0xb7df], /* Hangul Syllable */ + [0xb7e0, 0xb7e0], /* Hangul Syllable */ + [0xb7e1, 0xb7e1], /* Hangul Syllable */ + [0xb7e2, 0xb7e2], /* Hangul Syllable */ + [0xb7e3, 0xb7e3], /* Hangul Syllable */ + [0xb7e4, 0xb7e4], /* Hangul Syllable */ + [0xb7e5, 0xb7e5], /* Hangul Syllable */ + [0xb7e6, 0xb7e6], /* Hangul Syllable */ + [0xb7e7, 0xb7e7], /* Hangul Syllable */ + [0xb7e8, 0xb7e8], /* Hangul Syllable */ + [0xb7e9, 0xb7e9], /* Hangul Syllable */ + [0xb7ea, 0xb7ea], /* Hangul Syllable */ + [0xb7eb, 0xb7eb], /* Hangul Syllable */ + [0xb7ec, 0xb7ec], /* Hangul Syllable */ + [0xb7ed, 0xb7ed], /* Hangul Syllable */ + [0xb7ee, 0xb7ee], /* Hangul Syllable */ + [0xb7ef, 0xb7ef], /* Hangul Syllable */ + [0xb7f0, 0xb7f0], /* Hangul Syllable */ + [0xb7f1, 0xb7f1], /* Hangul Syllable */ + [0xb7f2, 0xb7f2], /* Hangul Syllable */ + [0xb7f3, 0xb7f3], /* Hangul Syllable */ + [0xb7f4, 0xb7f4], /* Hangul Syllable */ + [0xb7f5, 0xb7f5], /* Hangul Syllable */ + [0xb7f6, 0xb7f6], /* Hangul Syllable */ + [0xb7f7, 0xb7f7], /* Hangul Syllable */ + [0xb7f8, 0xb7f8], /* Hangul Syllable */ + [0xb7f9, 0xb7f9], /* Hangul Syllable */ + [0xb7fa, 0xb7fa], /* Hangul Syllable */ + [0xb7fb, 0xb7fb], /* Hangul Syllable */ + [0xb7fc, 0xb7fc], /* Hangul Syllable */ + [0xb7fd, 0xb7fd], /* Hangul Syllable */ + [0xb7fe, 0xb7fe], /* Hangul Syllable */ + [0xb7ff, 0xb7ff], /* Hangul Syllable */ + [0xb800, 0xb800], /* Hangul Syllable */ + [0xb801, 0xb801], /* Hangul Syllable */ + [0xb802, 0xb802], /* Hangul Syllable */ + [0xb803, 0xb803], /* Hangul Syllable */ + [0xb804, 0xb804], /* Hangul Syllable */ + [0xb805, 0xb805], /* Hangul Syllable */ + [0xb806, 0xb806], /* Hangul Syllable */ + [0xb807, 0xb807], /* Hangul Syllable */ + [0xb808, 0xb808], /* Hangul Syllable */ + [0xb809, 0xb809], /* Hangul Syllable */ + [0xb80a, 0xb80a], /* Hangul Syllable */ + [0xb80b, 0xb80b], /* Hangul Syllable */ + [0xb80c, 0xb80c], /* Hangul Syllable */ + [0xb80d, 0xb80d], /* Hangul Syllable */ + [0xb80e, 0xb80e], /* Hangul Syllable */ + [0xb80f, 0xb80f], /* Hangul Syllable */ + [0xb810, 0xb810], /* Hangul Syllable */ + [0xb811, 0xb811], /* Hangul Syllable */ + [0xb812, 0xb812], /* Hangul Syllable */ + [0xb813, 0xb813], /* Hangul Syllable */ + [0xb814, 0xb814], /* Hangul Syllable */ + [0xb815, 0xb815], /* Hangul Syllable */ + [0xb816, 0xb816], /* Hangul Syllable */ + [0xb817, 0xb817], /* Hangul Syllable */ + [0xb818, 0xb818], /* Hangul Syllable */ + [0xb819, 0xb819], /* Hangul Syllable */ + [0xb81a, 0xb81a], /* Hangul Syllable */ + [0xb81b, 0xb81b], /* Hangul Syllable */ + [0xb81c, 0xb81c], /* Hangul Syllable */ + [0xb81d, 0xb81d], /* Hangul Syllable */ + [0xb81e, 0xb81e], /* Hangul Syllable */ + [0xb81f, 0xb81f], /* Hangul Syllable */ + [0xb820, 0xb820], /* Hangul Syllable */ + [0xb821, 0xb821], /* Hangul Syllable */ + [0xb822, 0xb822], /* Hangul Syllable */ + [0xb823, 0xb823], /* Hangul Syllable */ + [0xb824, 0xb824], /* Hangul Syllable */ + [0xb825, 0xb825], /* Hangul Syllable */ + [0xb826, 0xb826], /* Hangul Syllable */ + [0xb827, 0xb827], /* Hangul Syllable */ + [0xb828, 0xb828], /* Hangul Syllable */ + [0xb829, 0xb829], /* Hangul Syllable */ + [0xb82a, 0xb82a], /* Hangul Syllable */ + [0xb82b, 0xb82b], /* Hangul Syllable */ + [0xb82c, 0xb82c], /* Hangul Syllable */ + [0xb82d, 0xb82d], /* Hangul Syllable */ + [0xb82e, 0xb82e], /* Hangul Syllable */ + [0xb82f, 0xb82f], /* Hangul Syllable */ + [0xb830, 0xb830], /* Hangul Syllable */ + [0xb831, 0xb831], /* Hangul Syllable */ + [0xb832, 0xb832], /* Hangul Syllable */ + [0xb833, 0xb833], /* Hangul Syllable */ + [0xb834, 0xb834], /* Hangul Syllable */ + [0xb835, 0xb835], /* Hangul Syllable */ + [0xb836, 0xb836], /* Hangul Syllable */ + [0xb837, 0xb837], /* Hangul Syllable */ + [0xb838, 0xb838], /* Hangul Syllable */ + [0xb839, 0xb839], /* Hangul Syllable */ + [0xb83a, 0xb83a], /* Hangul Syllable */ + [0xb83b, 0xb83b], /* Hangul Syllable */ + [0xb83c, 0xb83c], /* Hangul Syllable */ + [0xb83d, 0xb83d], /* Hangul Syllable */ + [0xb83e, 0xb83e], /* Hangul Syllable */ + [0xb83f, 0xb83f], /* Hangul Syllable */ + [0xb840, 0xb840], /* Hangul Syllable */ + [0xb841, 0xb841], /* Hangul Syllable */ + [0xb842, 0xb842], /* Hangul Syllable */ + [0xb843, 0xb843], /* Hangul Syllable */ + [0xb844, 0xb844], /* Hangul Syllable */ + [0xb845, 0xb845], /* Hangul Syllable */ + [0xb846, 0xb846], /* Hangul Syllable */ + [0xb847, 0xb847], /* Hangul Syllable */ + [0xb848, 0xb848], /* Hangul Syllable */ + [0xb849, 0xb849], /* Hangul Syllable */ + [0xb84a, 0xb84a], /* Hangul Syllable */ + [0xb84b, 0xb84b], /* Hangul Syllable */ + [0xb84c, 0xb84c], /* Hangul Syllable */ + [0xb84d, 0xb84d], /* Hangul Syllable */ + [0xb84e, 0xb84e], /* Hangul Syllable */ + [0xb84f, 0xb84f], /* Hangul Syllable */ + [0xb850, 0xb850], /* Hangul Syllable */ + [0xb851, 0xb851], /* Hangul Syllable */ + [0xb852, 0xb852], /* Hangul Syllable */ + [0xb853, 0xb853], /* Hangul Syllable */ + [0xb854, 0xb854], /* Hangul Syllable */ + [0xb855, 0xb855], /* Hangul Syllable */ + [0xb856, 0xb856], /* Hangul Syllable */ + [0xb857, 0xb857], /* Hangul Syllable */ + [0xb858, 0xb858], /* Hangul Syllable */ + [0xb859, 0xb859], /* Hangul Syllable */ + [0xb85a, 0xb85a], /* Hangul Syllable */ + [0xb85b, 0xb85b], /* Hangul Syllable */ + [0xb85c, 0xb85c], /* Hangul Syllable */ + [0xb85d, 0xb85d], /* Hangul Syllable */ + [0xb85e, 0xb85e], /* Hangul Syllable */ + [0xb85f, 0xb85f], /* Hangul Syllable */ + [0xb860, 0xb860], /* Hangul Syllable */ + [0xb861, 0xb861], /* Hangul Syllable */ + [0xb862, 0xb862], /* Hangul Syllable */ + [0xb863, 0xb863], /* Hangul Syllable */ + [0xb864, 0xb864], /* Hangul Syllable */ + [0xb865, 0xb865], /* Hangul Syllable */ + [0xb866, 0xb866], /* Hangul Syllable */ + [0xb867, 0xb867], /* Hangul Syllable */ + [0xb868, 0xb868], /* Hangul Syllable */ + [0xb869, 0xb869], /* Hangul Syllable */ + [0xb86a, 0xb86a], /* Hangul Syllable */ + [0xb86b, 0xb86b], /* Hangul Syllable */ + [0xb86c, 0xb86c], /* Hangul Syllable */ + [0xb86d, 0xb86d], /* Hangul Syllable */ + [0xb86e, 0xb86e], /* Hangul Syllable */ + [0xb86f, 0xb86f], /* Hangul Syllable */ + [0xb870, 0xb870], /* Hangul Syllable */ + [0xb871, 0xb871], /* Hangul Syllable */ + [0xb872, 0xb872], /* Hangul Syllable */ + [0xb873, 0xb873], /* Hangul Syllable */ + [0xb874, 0xb874], /* Hangul Syllable */ + [0xb875, 0xb875], /* Hangul Syllable */ + [0xb876, 0xb876], /* Hangul Syllable */ + [0xb877, 0xb877], /* Hangul Syllable */ + [0xb878, 0xb878], /* Hangul Syllable */ + [0xb879, 0xb879], /* Hangul Syllable */ + [0xb87a, 0xb87a], /* Hangul Syllable */ + [0xb87b, 0xb87b], /* Hangul Syllable */ + [0xb87c, 0xb87c], /* Hangul Syllable */ + [0xb87d, 0xb87d], /* Hangul Syllable */ + [0xb87e, 0xb87e], /* Hangul Syllable */ + [0xb87f, 0xb87f], /* Hangul Syllable */ + [0xb880, 0xb880], /* Hangul Syllable */ + [0xb881, 0xb881], /* Hangul Syllable */ + [0xb882, 0xb882], /* Hangul Syllable */ + [0xb883, 0xb883], /* Hangul Syllable */ + [0xb884, 0xb884], /* Hangul Syllable */ + [0xb885, 0xb885], /* Hangul Syllable */ + [0xb886, 0xb886], /* Hangul Syllable */ + [0xb887, 0xb887], /* Hangul Syllable */ + [0xb888, 0xb888], /* Hangul Syllable */ + [0xb889, 0xb889], /* Hangul Syllable */ + [0xb88a, 0xb88a], /* Hangul Syllable */ + [0xb88b, 0xb88b], /* Hangul Syllable */ + [0xb88c, 0xb88c], /* Hangul Syllable */ + [0xb88d, 0xb88d], /* Hangul Syllable */ + [0xb88e, 0xb88e], /* Hangul Syllable */ + [0xb88f, 0xb88f], /* Hangul Syllable */ + [0xb890, 0xb890], /* Hangul Syllable */ + [0xb891, 0xb891], /* Hangul Syllable */ + [0xb892, 0xb892], /* Hangul Syllable */ + [0xb893, 0xb893], /* Hangul Syllable */ + [0xb894, 0xb894], /* Hangul Syllable */ + [0xb895, 0xb895], /* Hangul Syllable */ + [0xb896, 0xb896], /* Hangul Syllable */ + [0xb897, 0xb897], /* Hangul Syllable */ + [0xb898, 0xb898], /* Hangul Syllable */ + [0xb899, 0xb899], /* Hangul Syllable */ + [0xb89a, 0xb89a], /* Hangul Syllable */ + [0xb89b, 0xb89b], /* Hangul Syllable */ + [0xb89c, 0xb89c], /* Hangul Syllable */ + [0xb89d, 0xb89d], /* Hangul Syllable */ + [0xb89e, 0xb89e], /* Hangul Syllable */ + [0xb89f, 0xb89f], /* Hangul Syllable */ + [0xb8a0, 0xb8a0], /* Hangul Syllable */ + [0xb8a1, 0xb8a1], /* Hangul Syllable */ + [0xb8a2, 0xb8a2], /* Hangul Syllable */ + [0xb8a3, 0xb8a3], /* Hangul Syllable */ + [0xb8a4, 0xb8a4], /* Hangul Syllable */ + [0xb8a5, 0xb8a5], /* Hangul Syllable */ + [0xb8a6, 0xb8a6], /* Hangul Syllable */ + [0xb8a7, 0xb8a7], /* Hangul Syllable */ + [0xb8a8, 0xb8a8], /* Hangul Syllable */ + [0xb8a9, 0xb8a9], /* Hangul Syllable */ + [0xb8aa, 0xb8aa], /* Hangul Syllable */ + [0xb8ab, 0xb8ab], /* Hangul Syllable */ + [0xb8ac, 0xb8ac], /* Hangul Syllable */ + [0xb8ad, 0xb8ad], /* Hangul Syllable */ + [0xb8ae, 0xb8ae], /* Hangul Syllable */ + [0xb8af, 0xb8af], /* Hangul Syllable */ + [0xb8b0, 0xb8b0], /* Hangul Syllable */ + [0xb8b1, 0xb8b1], /* Hangul Syllable */ + [0xb8b2, 0xb8b2], /* Hangul Syllable */ + [0xb8b3, 0xb8b3], /* Hangul Syllable */ + [0xb8b4, 0xb8b4], /* Hangul Syllable */ + [0xb8b5, 0xb8b5], /* Hangul Syllable */ + [0xb8b6, 0xb8b6], /* Hangul Syllable */ + [0xb8b7, 0xb8b7], /* Hangul Syllable */ + [0xb8b8, 0xb8b8], /* Hangul Syllable */ + [0xb8b9, 0xb8b9], /* Hangul Syllable */ + [0xb8ba, 0xb8ba], /* Hangul Syllable */ + [0xb8bb, 0xb8bb], /* Hangul Syllable */ + [0xb8bc, 0xb8bc], /* Hangul Syllable */ + [0xb8bd, 0xb8bd], /* Hangul Syllable */ + [0xb8be, 0xb8be], /* Hangul Syllable */ + [0xb8bf, 0xb8bf], /* Hangul Syllable */ + [0xb8c0, 0xb8c0], /* Hangul Syllable */ + [0xb8c1, 0xb8c1], /* Hangul Syllable */ + [0xb8c2, 0xb8c2], /* Hangul Syllable */ + [0xb8c3, 0xb8c3], /* Hangul Syllable */ + [0xb8c4, 0xb8c4], /* Hangul Syllable */ + [0xb8c5, 0xb8c5], /* Hangul Syllable */ + [0xb8c6, 0xb8c6], /* Hangul Syllable */ + [0xb8c7, 0xb8c7], /* Hangul Syllable */ + [0xb8c8, 0xb8c8], /* Hangul Syllable */ + [0xb8c9, 0xb8c9], /* Hangul Syllable */ + [0xb8ca, 0xb8ca], /* Hangul Syllable */ + [0xb8cb, 0xb8cb], /* Hangul Syllable */ + [0xb8cc, 0xb8cc], /* Hangul Syllable */ + [0xb8cd, 0xb8cd], /* Hangul Syllable */ + [0xb8ce, 0xb8ce], /* Hangul Syllable */ + [0xb8cf, 0xb8cf], /* Hangul Syllable */ + [0xb8d0, 0xb8d0], /* Hangul Syllable */ + [0xb8d1, 0xb8d1], /* Hangul Syllable */ + [0xb8d2, 0xb8d2], /* Hangul Syllable */ + [0xb8d3, 0xb8d3], /* Hangul Syllable */ + [0xb8d4, 0xb8d4], /* Hangul Syllable */ + [0xb8d5, 0xb8d5], /* Hangul Syllable */ + [0xb8d6, 0xb8d6], /* Hangul Syllable */ + [0xb8d7, 0xb8d7], /* Hangul Syllable */ + [0xb8d8, 0xb8d8], /* Hangul Syllable */ + [0xb8d9, 0xb8d9], /* Hangul Syllable */ + [0xb8da, 0xb8da], /* Hangul Syllable */ + [0xb8db, 0xb8db], /* Hangul Syllable */ + [0xb8dc, 0xb8dc], /* Hangul Syllable */ + [0xb8dd, 0xb8dd], /* Hangul Syllable */ + [0xb8de, 0xb8de], /* Hangul Syllable */ + [0xb8df, 0xb8df], /* Hangul Syllable */ + [0xb8e0, 0xb8e0], /* Hangul Syllable */ + [0xb8e1, 0xb8e1], /* Hangul Syllable */ + [0xb8e2, 0xb8e2], /* Hangul Syllable */ + [0xb8e3, 0xb8e3], /* Hangul Syllable */ + [0xb8e4, 0xb8e4], /* Hangul Syllable */ + [0xb8e5, 0xb8e5], /* Hangul Syllable */ + [0xb8e6, 0xb8e6], /* Hangul Syllable */ + [0xb8e7, 0xb8e7], /* Hangul Syllable */ + [0xb8e8, 0xb8e8], /* Hangul Syllable */ + [0xb8e9, 0xb8e9], /* Hangul Syllable */ + [0xb8ea, 0xb8ea], /* Hangul Syllable */ + [0xb8eb, 0xb8eb], /* Hangul Syllable */ + [0xb8ec, 0xb8ec], /* Hangul Syllable */ + [0xb8ed, 0xb8ed], /* Hangul Syllable */ + [0xb8ee, 0xb8ee], /* Hangul Syllable */ + [0xb8ef, 0xb8ef], /* Hangul Syllable */ + [0xb8f0, 0xb8f0], /* Hangul Syllable */ + [0xb8f1, 0xb8f1], /* Hangul Syllable */ + [0xb8f2, 0xb8f2], /* Hangul Syllable */ + [0xb8f3, 0xb8f3], /* Hangul Syllable */ + [0xb8f4, 0xb8f4], /* Hangul Syllable */ + [0xb8f5, 0xb8f5], /* Hangul Syllable */ + [0xb8f6, 0xb8f6], /* Hangul Syllable */ + [0xb8f7, 0xb8f7], /* Hangul Syllable */ + [0xb8f8, 0xb8f8], /* Hangul Syllable */ + [0xb8f9, 0xb8f9], /* Hangul Syllable */ + [0xb8fa, 0xb8fa], /* Hangul Syllable */ + [0xb8fb, 0xb8fb], /* Hangul Syllable */ + [0xb8fc, 0xb8fc], /* Hangul Syllable */ + [0xb8fd, 0xb8fd], /* Hangul Syllable */ + [0xb8fe, 0xb8fe], /* Hangul Syllable */ + [0xb8ff, 0xb8ff], /* Hangul Syllable */ + [0xb900, 0xb900], /* Hangul Syllable */ + [0xb901, 0xb901], /* Hangul Syllable */ + [0xb902, 0xb902], /* Hangul Syllable */ + [0xb903, 0xb903], /* Hangul Syllable */ + [0xb904, 0xb904], /* Hangul Syllable */ + [0xb905, 0xb905], /* Hangul Syllable */ + [0xb906, 0xb906], /* Hangul Syllable */ + [0xb907, 0xb907], /* Hangul Syllable */ + [0xb908, 0xb908], /* Hangul Syllable */ + [0xb909, 0xb909], /* Hangul Syllable */ + [0xb90a, 0xb90a], /* Hangul Syllable */ + [0xb90b, 0xb90b], /* Hangul Syllable */ + [0xb90c, 0xb90c], /* Hangul Syllable */ + [0xb90d, 0xb90d], /* Hangul Syllable */ + [0xb90e, 0xb90e], /* Hangul Syllable */ + [0xb90f, 0xb90f], /* Hangul Syllable */ + [0xb910, 0xb910], /* Hangul Syllable */ + [0xb911, 0xb911], /* Hangul Syllable */ + [0xb912, 0xb912], /* Hangul Syllable */ + [0xb913, 0xb913], /* Hangul Syllable */ + [0xb914, 0xb914], /* Hangul Syllable */ + [0xb915, 0xb915], /* Hangul Syllable */ + [0xb916, 0xb916], /* Hangul Syllable */ + [0xb917, 0xb917], /* Hangul Syllable */ + [0xb918, 0xb918], /* Hangul Syllable */ + [0xb919, 0xb919], /* Hangul Syllable */ + [0xb91a, 0xb91a], /* Hangul Syllable */ + [0xb91b, 0xb91b], /* Hangul Syllable */ + [0xb91c, 0xb91c], /* Hangul Syllable */ + [0xb91d, 0xb91d], /* Hangul Syllable */ + [0xb91e, 0xb91e], /* Hangul Syllable */ + [0xb91f, 0xb91f], /* Hangul Syllable */ + [0xb920, 0xb920], /* Hangul Syllable */ + [0xb921, 0xb921], /* Hangul Syllable */ + [0xb922, 0xb922], /* Hangul Syllable */ + [0xb923, 0xb923], /* Hangul Syllable */ + [0xb924, 0xb924], /* Hangul Syllable */ + [0xb925, 0xb925], /* Hangul Syllable */ + [0xb926, 0xb926], /* Hangul Syllable */ + [0xb927, 0xb927], /* Hangul Syllable */ + [0xb928, 0xb928], /* Hangul Syllable */ + [0xb929, 0xb929], /* Hangul Syllable */ + [0xb92a, 0xb92a], /* Hangul Syllable */ + [0xb92b, 0xb92b], /* Hangul Syllable */ + [0xb92c, 0xb92c], /* Hangul Syllable */ + [0xb92d, 0xb92d], /* Hangul Syllable */ + [0xb92e, 0xb92e], /* Hangul Syllable */ + [0xb92f, 0xb92f], /* Hangul Syllable */ + [0xb930, 0xb930], /* Hangul Syllable */ + [0xb931, 0xb931], /* Hangul Syllable */ + [0xb932, 0xb932], /* Hangul Syllable */ + [0xb933, 0xb933], /* Hangul Syllable */ + [0xb934, 0xb934], /* Hangul Syllable */ + [0xb935, 0xb935], /* Hangul Syllable */ + [0xb936, 0xb936], /* Hangul Syllable */ + [0xb937, 0xb937], /* Hangul Syllable */ + [0xb938, 0xb938], /* Hangul Syllable */ + [0xb939, 0xb939], /* Hangul Syllable */ + [0xb93a, 0xb93a], /* Hangul Syllable */ + [0xb93b, 0xb93b], /* Hangul Syllable */ + [0xb93c, 0xb93c], /* Hangul Syllable */ + [0xb93d, 0xb93d], /* Hangul Syllable */ + [0xb93e, 0xb93e], /* Hangul Syllable */ + [0xb93f, 0xb93f], /* Hangul Syllable */ + [0xb940, 0xb940], /* Hangul Syllable */ + [0xb941, 0xb941], /* Hangul Syllable */ + [0xb942, 0xb942], /* Hangul Syllable */ + [0xb943, 0xb943], /* Hangul Syllable */ + [0xb944, 0xb944], /* Hangul Syllable */ + [0xb945, 0xb945], /* Hangul Syllable */ + [0xb946, 0xb946], /* Hangul Syllable */ + [0xb947, 0xb947], /* Hangul Syllable */ + [0xb948, 0xb948], /* Hangul Syllable */ + [0xb949, 0xb949], /* Hangul Syllable */ + [0xb94a, 0xb94a], /* Hangul Syllable */ + [0xb94b, 0xb94b], /* Hangul Syllable */ + [0xb94c, 0xb94c], /* Hangul Syllable */ + [0xb94d, 0xb94d], /* Hangul Syllable */ + [0xb94e, 0xb94e], /* Hangul Syllable */ + [0xb94f, 0xb94f], /* Hangul Syllable */ + [0xb950, 0xb950], /* Hangul Syllable */ + [0xb951, 0xb951], /* Hangul Syllable */ + [0xb952, 0xb952], /* Hangul Syllable */ + [0xb953, 0xb953], /* Hangul Syllable */ + [0xb954, 0xb954], /* Hangul Syllable */ + [0xb955, 0xb955], /* Hangul Syllable */ + [0xb956, 0xb956], /* Hangul Syllable */ + [0xb957, 0xb957], /* Hangul Syllable */ + [0xb958, 0xb958], /* Hangul Syllable */ + [0xb959, 0xb959], /* Hangul Syllable */ + [0xb95a, 0xb95a], /* Hangul Syllable */ + [0xb95b, 0xb95b], /* Hangul Syllable */ + [0xb95c, 0xb95c], /* Hangul Syllable */ + [0xb95d, 0xb95d], /* Hangul Syllable */ + [0xb95e, 0xb95e], /* Hangul Syllable */ + [0xb95f, 0xb95f], /* Hangul Syllable */ + [0xb960, 0xb960], /* Hangul Syllable */ + [0xb961, 0xb961], /* Hangul Syllable */ + [0xb962, 0xb962], /* Hangul Syllable */ + [0xb963, 0xb963], /* Hangul Syllable */ + [0xb964, 0xb964], /* Hangul Syllable */ + [0xb965, 0xb965], /* Hangul Syllable */ + [0xb966, 0xb966], /* Hangul Syllable */ + [0xb967, 0xb967], /* Hangul Syllable */ + [0xb968, 0xb968], /* Hangul Syllable */ + [0xb969, 0xb969], /* Hangul Syllable */ + [0xb96a, 0xb96a], /* Hangul Syllable */ + [0xb96b, 0xb96b], /* Hangul Syllable */ + [0xb96c, 0xb96c], /* Hangul Syllable */ + [0xb96d, 0xb96d], /* Hangul Syllable */ + [0xb96e, 0xb96e], /* Hangul Syllable */ + [0xb96f, 0xb96f], /* Hangul Syllable */ + [0xb970, 0xb970], /* Hangul Syllable */ + [0xb971, 0xb971], /* Hangul Syllable */ + [0xb972, 0xb972], /* Hangul Syllable */ + [0xb973, 0xb973], /* Hangul Syllable */ + [0xb974, 0xb974], /* Hangul Syllable */ + [0xb975, 0xb975], /* Hangul Syllable */ + [0xb976, 0xb976], /* Hangul Syllable */ + [0xb977, 0xb977], /* Hangul Syllable */ + [0xb978, 0xb978], /* Hangul Syllable */ + [0xb979, 0xb979], /* Hangul Syllable */ + [0xb97a, 0xb97a], /* Hangul Syllable */ + [0xb97b, 0xb97b], /* Hangul Syllable */ + [0xb97c, 0xb97c], /* Hangul Syllable */ + [0xb97d, 0xb97d], /* Hangul Syllable */ + [0xb97e, 0xb97e], /* Hangul Syllable */ + [0xb97f, 0xb97f], /* Hangul Syllable */ + [0xb980, 0xb980], /* Hangul Syllable */ + [0xb981, 0xb981], /* Hangul Syllable */ + [0xb982, 0xb982], /* Hangul Syllable */ + [0xb983, 0xb983], /* Hangul Syllable */ + [0xb984, 0xb984], /* Hangul Syllable */ + [0xb985, 0xb985], /* Hangul Syllable */ + [0xb986, 0xb986], /* Hangul Syllable */ + [0xb987, 0xb987], /* Hangul Syllable */ + [0xb988, 0xb988], /* Hangul Syllable */ + [0xb989, 0xb989], /* Hangul Syllable */ + [0xb98a, 0xb98a], /* Hangul Syllable */ + [0xb98b, 0xb98b], /* Hangul Syllable */ + [0xb98c, 0xb98c], /* Hangul Syllable */ + [0xb98d, 0xb98d], /* Hangul Syllable */ + [0xb98e, 0xb98e], /* Hangul Syllable */ + [0xb98f, 0xb98f], /* Hangul Syllable */ + [0xb990, 0xb990], /* Hangul Syllable */ + [0xb991, 0xb991], /* Hangul Syllable */ + [0xb992, 0xb992], /* Hangul Syllable */ + [0xb993, 0xb993], /* Hangul Syllable */ + [0xb994, 0xb994], /* Hangul Syllable */ + [0xb995, 0xb995], /* Hangul Syllable */ + [0xb996, 0xb996], /* Hangul Syllable */ + [0xb997, 0xb997], /* Hangul Syllable */ + [0xb998, 0xb998], /* Hangul Syllable */ + [0xb999, 0xb999], /* Hangul Syllable */ + [0xb99a, 0xb99a], /* Hangul Syllable */ + [0xb99b, 0xb99b], /* Hangul Syllable */ + [0xb99c, 0xb99c], /* Hangul Syllable */ + [0xb99d, 0xb99d], /* Hangul Syllable */ + [0xb99e, 0xb99e], /* Hangul Syllable */ + [0xb99f, 0xb99f], /* Hangul Syllable */ + [0xb9a0, 0xb9a0], /* Hangul Syllable */ + [0xb9a1, 0xb9a1], /* Hangul Syllable */ + [0xb9a2, 0xb9a2], /* Hangul Syllable */ + [0xb9a3, 0xb9a3], /* Hangul Syllable */ + [0xb9a4, 0xb9a4], /* Hangul Syllable */ + [0xb9a5, 0xb9a5], /* Hangul Syllable */ + [0xb9a6, 0xb9a6], /* Hangul Syllable */ + [0xb9a7, 0xb9a7], /* Hangul Syllable */ + [0xb9a8, 0xb9a8], /* Hangul Syllable */ + [0xb9a9, 0xb9a9], /* Hangul Syllable */ + [0xb9aa, 0xb9aa], /* Hangul Syllable */ + [0xb9ab, 0xb9ab], /* Hangul Syllable */ + [0xb9ac, 0xb9ac], /* Hangul Syllable */ + [0xb9ad, 0xb9ad], /* Hangul Syllable */ + [0xb9ae, 0xb9ae], /* Hangul Syllable */ + [0xb9af, 0xb9af], /* Hangul Syllable */ + [0xb9b0, 0xb9b0], /* Hangul Syllable */ + [0xb9b1, 0xb9b1], /* Hangul Syllable */ + [0xb9b2, 0xb9b2], /* Hangul Syllable */ + [0xb9b3, 0xb9b3], /* Hangul Syllable */ + [0xb9b4, 0xb9b4], /* Hangul Syllable */ + [0xb9b5, 0xb9b5], /* Hangul Syllable */ + [0xb9b6, 0xb9b6], /* Hangul Syllable */ + [0xb9b7, 0xb9b7], /* Hangul Syllable */ + [0xb9b8, 0xb9b8], /* Hangul Syllable */ + [0xb9b9, 0xb9b9], /* Hangul Syllable */ + [0xb9ba, 0xb9ba], /* Hangul Syllable */ + [0xb9bb, 0xb9bb], /* Hangul Syllable */ + [0xb9bc, 0xb9bc], /* Hangul Syllable */ + [0xb9bd, 0xb9bd], /* Hangul Syllable */ + [0xb9be, 0xb9be], /* Hangul Syllable */ + [0xb9bf, 0xb9bf], /* Hangul Syllable */ + [0xb9c0, 0xb9c0], /* Hangul Syllable */ + [0xb9c1, 0xb9c1], /* Hangul Syllable */ + [0xb9c2, 0xb9c2], /* Hangul Syllable */ + [0xb9c3, 0xb9c3], /* Hangul Syllable */ + [0xb9c4, 0xb9c4], /* Hangul Syllable */ + [0xb9c5, 0xb9c5], /* Hangul Syllable */ + [0xb9c6, 0xb9c6], /* Hangul Syllable */ + [0xb9c7, 0xb9c7], /* Hangul Syllable */ + [0xb9c8, 0xb9c8], /* Hangul Syllable */ + [0xb9c9, 0xb9c9], /* Hangul Syllable */ + [0xb9ca, 0xb9ca], /* Hangul Syllable */ + [0xb9cb, 0xb9cb], /* Hangul Syllable */ + [0xb9cc, 0xb9cc], /* Hangul Syllable */ + [0xb9cd, 0xb9cd], /* Hangul Syllable */ + [0xb9ce, 0xb9ce], /* Hangul Syllable */ + [0xb9cf, 0xb9cf], /* Hangul Syllable */ + [0xb9d0, 0xb9d0], /* Hangul Syllable */ + [0xb9d1, 0xb9d1], /* Hangul Syllable */ + [0xb9d2, 0xb9d2], /* Hangul Syllable */ + [0xb9d3, 0xb9d3], /* Hangul Syllable */ + [0xb9d4, 0xb9d4], /* Hangul Syllable */ + [0xb9d5, 0xb9d5], /* Hangul Syllable */ + [0xb9d6, 0xb9d6], /* Hangul Syllable */ + [0xb9d7, 0xb9d7], /* Hangul Syllable */ + [0xb9d8, 0xb9d8], /* Hangul Syllable */ + [0xb9d9, 0xb9d9], /* Hangul Syllable */ + [0xb9da, 0xb9da], /* Hangul Syllable */ + [0xb9db, 0xb9db], /* Hangul Syllable */ + [0xb9dc, 0xb9dc], /* Hangul Syllable */ + [0xb9dd, 0xb9dd], /* Hangul Syllable */ + [0xb9de, 0xb9de], /* Hangul Syllable */ + [0xb9df, 0xb9df], /* Hangul Syllable */ + [0xb9e0, 0xb9e0], /* Hangul Syllable */ + [0xb9e1, 0xb9e1], /* Hangul Syllable */ + [0xb9e2, 0xb9e2], /* Hangul Syllable */ + [0xb9e3, 0xb9e3], /* Hangul Syllable */ + [0xb9e4, 0xb9e4], /* Hangul Syllable */ + [0xb9e5, 0xb9e5], /* Hangul Syllable */ + [0xb9e6, 0xb9e6], /* Hangul Syllable */ + [0xb9e7, 0xb9e7], /* Hangul Syllable */ + [0xb9e8, 0xb9e8], /* Hangul Syllable */ + [0xb9e9, 0xb9e9], /* Hangul Syllable */ + [0xb9ea, 0xb9ea], /* Hangul Syllable */ + [0xb9eb, 0xb9eb], /* Hangul Syllable */ + [0xb9ec, 0xb9ec], /* Hangul Syllable */ + [0xb9ed, 0xb9ed], /* Hangul Syllable */ + [0xb9ee, 0xb9ee], /* Hangul Syllable */ + [0xb9ef, 0xb9ef], /* Hangul Syllable */ + [0xb9f0, 0xb9f0], /* Hangul Syllable */ + [0xb9f1, 0xb9f1], /* Hangul Syllable */ + [0xb9f2, 0xb9f2], /* Hangul Syllable */ + [0xb9f3, 0xb9f3], /* Hangul Syllable */ + [0xb9f4, 0xb9f4], /* Hangul Syllable */ + [0xb9f5, 0xb9f5], /* Hangul Syllable */ + [0xb9f6, 0xb9f6], /* Hangul Syllable */ + [0xb9f7, 0xb9f7], /* Hangul Syllable */ + [0xb9f8, 0xb9f8], /* Hangul Syllable */ + [0xb9f9, 0xb9f9], /* Hangul Syllable */ + [0xb9fa, 0xb9fa], /* Hangul Syllable */ + [0xb9fb, 0xb9fb], /* Hangul Syllable */ + [0xb9fc, 0xb9fc], /* Hangul Syllable */ + [0xb9fd, 0xb9fd], /* Hangul Syllable */ + [0xb9fe, 0xb9fe], /* Hangul Syllable */ + [0xb9ff, 0xb9ff], /* Hangul Syllable */ + [0xba00, 0xba00], /* Hangul Syllable */ + [0xba01, 0xba01], /* Hangul Syllable */ + [0xba02, 0xba02], /* Hangul Syllable */ + [0xba03, 0xba03], /* Hangul Syllable */ + [0xba04, 0xba04], /* Hangul Syllable */ + [0xba05, 0xba05], /* Hangul Syllable */ + [0xba06, 0xba06], /* Hangul Syllable */ + [0xba07, 0xba07], /* Hangul Syllable */ + [0xba08, 0xba08], /* Hangul Syllable */ + [0xba09, 0xba09], /* Hangul Syllable */ + [0xba0a, 0xba0a], /* Hangul Syllable */ + [0xba0b, 0xba0b], /* Hangul Syllable */ + [0xba0c, 0xba0c], /* Hangul Syllable */ + [0xba0d, 0xba0d], /* Hangul Syllable */ + [0xba0e, 0xba0e], /* Hangul Syllable */ + [0xba0f, 0xba0f], /* Hangul Syllable */ + [0xba10, 0xba10], /* Hangul Syllable */ + [0xba11, 0xba11], /* Hangul Syllable */ + [0xba12, 0xba12], /* Hangul Syllable */ + [0xba13, 0xba13], /* Hangul Syllable */ + [0xba14, 0xba14], /* Hangul Syllable */ + [0xba15, 0xba15], /* Hangul Syllable */ + [0xba16, 0xba16], /* Hangul Syllable */ + [0xba17, 0xba17], /* Hangul Syllable */ + [0xba18, 0xba18], /* Hangul Syllable */ + [0xba19, 0xba19], /* Hangul Syllable */ + [0xba1a, 0xba1a], /* Hangul Syllable */ + [0xba1b, 0xba1b], /* Hangul Syllable */ + [0xba1c, 0xba1c], /* Hangul Syllable */ + [0xba1d, 0xba1d], /* Hangul Syllable */ + [0xba1e, 0xba1e], /* Hangul Syllable */ + [0xba1f, 0xba1f], /* Hangul Syllable */ + [0xba20, 0xba20], /* Hangul Syllable */ + [0xba21, 0xba21], /* Hangul Syllable */ + [0xba22, 0xba22], /* Hangul Syllable */ + [0xba23, 0xba23], /* Hangul Syllable */ + [0xba24, 0xba24], /* Hangul Syllable */ + [0xba25, 0xba25], /* Hangul Syllable */ + [0xba26, 0xba26], /* Hangul Syllable */ + [0xba27, 0xba27], /* Hangul Syllable */ + [0xba28, 0xba28], /* Hangul Syllable */ + [0xba29, 0xba29], /* Hangul Syllable */ + [0xba2a, 0xba2a], /* Hangul Syllable */ + [0xba2b, 0xba2b], /* Hangul Syllable */ + [0xba2c, 0xba2c], /* Hangul Syllable */ + [0xba2d, 0xba2d], /* Hangul Syllable */ + [0xba2e, 0xba2e], /* Hangul Syllable */ + [0xba2f, 0xba2f], /* Hangul Syllable */ + [0xba30, 0xba30], /* Hangul Syllable */ + [0xba31, 0xba31], /* Hangul Syllable */ + [0xba32, 0xba32], /* Hangul Syllable */ + [0xba33, 0xba33], /* Hangul Syllable */ + [0xba34, 0xba34], /* Hangul Syllable */ + [0xba35, 0xba35], /* Hangul Syllable */ + [0xba36, 0xba36], /* Hangul Syllable */ + [0xba37, 0xba37], /* Hangul Syllable */ + [0xba38, 0xba38], /* Hangul Syllable */ + [0xba39, 0xba39], /* Hangul Syllable */ + [0xba3a, 0xba3a], /* Hangul Syllable */ + [0xba3b, 0xba3b], /* Hangul Syllable */ + [0xba3c, 0xba3c], /* Hangul Syllable */ + [0xba3d, 0xba3d], /* Hangul Syllable */ + [0xba3e, 0xba3e], /* Hangul Syllable */ + [0xba3f, 0xba3f], /* Hangul Syllable */ + [0xba40, 0xba40], /* Hangul Syllable */ + [0xba41, 0xba41], /* Hangul Syllable */ + [0xba42, 0xba42], /* Hangul Syllable */ + [0xba43, 0xba43], /* Hangul Syllable */ + [0xba44, 0xba44], /* Hangul Syllable */ + [0xba45, 0xba45], /* Hangul Syllable */ + [0xba46, 0xba46], /* Hangul Syllable */ + [0xba47, 0xba47], /* Hangul Syllable */ + [0xba48, 0xba48], /* Hangul Syllable */ + [0xba49, 0xba49], /* Hangul Syllable */ + [0xba4a, 0xba4a], /* Hangul Syllable */ + [0xba4b, 0xba4b], /* Hangul Syllable */ + [0xba4c, 0xba4c], /* Hangul Syllable */ + [0xba4d, 0xba4d], /* Hangul Syllable */ + [0xba4e, 0xba4e], /* Hangul Syllable */ + [0xba4f, 0xba4f], /* Hangul Syllable */ + [0xba50, 0xba50], /* Hangul Syllable */ + [0xba51, 0xba51], /* Hangul Syllable */ + [0xba52, 0xba52], /* Hangul Syllable */ + [0xba53, 0xba53], /* Hangul Syllable */ + [0xba54, 0xba54], /* Hangul Syllable */ + [0xba55, 0xba55], /* Hangul Syllable */ + [0xba56, 0xba56], /* Hangul Syllable */ + [0xba57, 0xba57], /* Hangul Syllable */ + [0xba58, 0xba58], /* Hangul Syllable */ + [0xba59, 0xba59], /* Hangul Syllable */ + [0xba5a, 0xba5a], /* Hangul Syllable */ + [0xba5b, 0xba5b], /* Hangul Syllable */ + [0xba5c, 0xba5c], /* Hangul Syllable */ + [0xba5d, 0xba5d], /* Hangul Syllable */ + [0xba5e, 0xba5e], /* Hangul Syllable */ + [0xba5f, 0xba5f], /* Hangul Syllable */ + [0xba60, 0xba60], /* Hangul Syllable */ + [0xba61, 0xba61], /* Hangul Syllable */ + [0xba62, 0xba62], /* Hangul Syllable */ + [0xba63, 0xba63], /* Hangul Syllable */ + [0xba64, 0xba64], /* Hangul Syllable */ + [0xba65, 0xba65], /* Hangul Syllable */ + [0xba66, 0xba66], /* Hangul Syllable */ + [0xba67, 0xba67], /* Hangul Syllable */ + [0xba68, 0xba68], /* Hangul Syllable */ + [0xba69, 0xba69], /* Hangul Syllable */ + [0xba6a, 0xba6a], /* Hangul Syllable */ + [0xba6b, 0xba6b], /* Hangul Syllable */ + [0xba6c, 0xba6c], /* Hangul Syllable */ + [0xba6d, 0xba6d], /* Hangul Syllable */ + [0xba6e, 0xba6e], /* Hangul Syllable */ + [0xba6f, 0xba6f], /* Hangul Syllable */ + [0xba70, 0xba70], /* Hangul Syllable */ + [0xba71, 0xba71], /* Hangul Syllable */ + [0xba72, 0xba72], /* Hangul Syllable */ + [0xba73, 0xba73], /* Hangul Syllable */ + [0xba74, 0xba74], /* Hangul Syllable */ + [0xba75, 0xba75], /* Hangul Syllable */ + [0xba76, 0xba76], /* Hangul Syllable */ + [0xba77, 0xba77], /* Hangul Syllable */ + [0xba78, 0xba78], /* Hangul Syllable */ + [0xba79, 0xba79], /* Hangul Syllable */ + [0xba7a, 0xba7a], /* Hangul Syllable */ + [0xba7b, 0xba7b], /* Hangul Syllable */ + [0xba7c, 0xba7c], /* Hangul Syllable */ + [0xba7d, 0xba7d], /* Hangul Syllable */ + [0xba7e, 0xba7e], /* Hangul Syllable */ + [0xba7f, 0xba7f], /* Hangul Syllable */ + [0xba80, 0xba80], /* Hangul Syllable */ + [0xba81, 0xba81], /* Hangul Syllable */ + [0xba82, 0xba82], /* Hangul Syllable */ + [0xba83, 0xba83], /* Hangul Syllable */ + [0xba84, 0xba84], /* Hangul Syllable */ + [0xba85, 0xba85], /* Hangul Syllable */ + [0xba86, 0xba86], /* Hangul Syllable */ + [0xba87, 0xba87], /* Hangul Syllable */ + [0xba88, 0xba88], /* Hangul Syllable */ + [0xba89, 0xba89], /* Hangul Syllable */ + [0xba8a, 0xba8a], /* Hangul Syllable */ + [0xba8b, 0xba8b], /* Hangul Syllable */ + [0xba8c, 0xba8c], /* Hangul Syllable */ + [0xba8d, 0xba8d], /* Hangul Syllable */ + [0xba8e, 0xba8e], /* Hangul Syllable */ + [0xba8f, 0xba8f], /* Hangul Syllable */ + [0xba90, 0xba90], /* Hangul Syllable */ + [0xba91, 0xba91], /* Hangul Syllable */ + [0xba92, 0xba92], /* Hangul Syllable */ + [0xba93, 0xba93], /* Hangul Syllable */ + [0xba94, 0xba94], /* Hangul Syllable */ + [0xba95, 0xba95], /* Hangul Syllable */ + [0xba96, 0xba96], /* Hangul Syllable */ + [0xba97, 0xba97], /* Hangul Syllable */ + [0xba98, 0xba98], /* Hangul Syllable */ + [0xba99, 0xba99], /* Hangul Syllable */ + [0xba9a, 0xba9a], /* Hangul Syllable */ + [0xba9b, 0xba9b], /* Hangul Syllable */ + [0xba9c, 0xba9c], /* Hangul Syllable */ + [0xba9d, 0xba9d], /* Hangul Syllable */ + [0xba9e, 0xba9e], /* Hangul Syllable */ + [0xba9f, 0xba9f], /* Hangul Syllable */ + [0xbaa0, 0xbaa0], /* Hangul Syllable */ + [0xbaa1, 0xbaa1], /* Hangul Syllable */ + [0xbaa2, 0xbaa2], /* Hangul Syllable */ + [0xbaa3, 0xbaa3], /* Hangul Syllable */ + [0xbaa4, 0xbaa4], /* Hangul Syllable */ + [0xbaa5, 0xbaa5], /* Hangul Syllable */ + [0xbaa6, 0xbaa6], /* Hangul Syllable */ + [0xbaa7, 0xbaa7], /* Hangul Syllable */ + [0xbaa8, 0xbaa8], /* Hangul Syllable */ + [0xbaa9, 0xbaa9], /* Hangul Syllable */ + [0xbaaa, 0xbaaa], /* Hangul Syllable */ + [0xbaab, 0xbaab], /* Hangul Syllable */ + [0xbaac, 0xbaac], /* Hangul Syllable */ + [0xbaad, 0xbaad], /* Hangul Syllable */ + [0xbaae, 0xbaae], /* Hangul Syllable */ + [0xbaaf, 0xbaaf], /* Hangul Syllable */ + [0xbab0, 0xbab0], /* Hangul Syllable */ + [0xbab1, 0xbab1], /* Hangul Syllable */ + [0xbab2, 0xbab2], /* Hangul Syllable */ + [0xbab3, 0xbab3], /* Hangul Syllable */ + [0xbab4, 0xbab4], /* Hangul Syllable */ + [0xbab5, 0xbab5], /* Hangul Syllable */ + [0xbab6, 0xbab6], /* Hangul Syllable */ + [0xbab7, 0xbab7], /* Hangul Syllable */ + [0xbab8, 0xbab8], /* Hangul Syllable */ + [0xbab9, 0xbab9], /* Hangul Syllable */ + [0xbaba, 0xbaba], /* Hangul Syllable */ + [0xbabb, 0xbabb], /* Hangul Syllable */ + [0xbabc, 0xbabc], /* Hangul Syllable */ + [0xbabd, 0xbabd], /* Hangul Syllable */ + [0xbabe, 0xbabe], /* Hangul Syllable */ + [0xbabf, 0xbabf], /* Hangul Syllable */ + [0xbac0, 0xbac0], /* Hangul Syllable */ + [0xbac1, 0xbac1], /* Hangul Syllable */ + [0xbac2, 0xbac2], /* Hangul Syllable */ + [0xbac3, 0xbac3], /* Hangul Syllable */ + [0xbac4, 0xbac4], /* Hangul Syllable */ + [0xbac5, 0xbac5], /* Hangul Syllable */ + [0xbac6, 0xbac6], /* Hangul Syllable */ + [0xbac7, 0xbac7], /* Hangul Syllable */ + [0xbac8, 0xbac8], /* Hangul Syllable */ + [0xbac9, 0xbac9], /* Hangul Syllable */ + [0xbaca, 0xbaca], /* Hangul Syllable */ + [0xbacb, 0xbacb], /* Hangul Syllable */ + [0xbacc, 0xbacc], /* Hangul Syllable */ + [0xbacd, 0xbacd], /* Hangul Syllable */ + [0xbace, 0xbace], /* Hangul Syllable */ + [0xbacf, 0xbacf], /* Hangul Syllable */ + [0xbad0, 0xbad0], /* Hangul Syllable */ + [0xbad1, 0xbad1], /* Hangul Syllable */ + [0xbad2, 0xbad2], /* Hangul Syllable */ + [0xbad3, 0xbad3], /* Hangul Syllable */ + [0xbad4, 0xbad4], /* Hangul Syllable */ + [0xbad5, 0xbad5], /* Hangul Syllable */ + [0xbad6, 0xbad6], /* Hangul Syllable */ + [0xbad7, 0xbad7], /* Hangul Syllable */ + [0xbad8, 0xbad8], /* Hangul Syllable */ + [0xbad9, 0xbad9], /* Hangul Syllable */ + [0xbada, 0xbada], /* Hangul Syllable */ + [0xbadb, 0xbadb], /* Hangul Syllable */ + [0xbadc, 0xbadc], /* Hangul Syllable */ + [0xbadd, 0xbadd], /* Hangul Syllable */ + [0xbade, 0xbade], /* Hangul Syllable */ + [0xbadf, 0xbadf], /* Hangul Syllable */ + [0xbae0, 0xbae0], /* Hangul Syllable */ + [0xbae1, 0xbae1], /* Hangul Syllable */ + [0xbae2, 0xbae2], /* Hangul Syllable */ + [0xbae3, 0xbae3], /* Hangul Syllable */ + [0xbae4, 0xbae4], /* Hangul Syllable */ + [0xbae5, 0xbae5], /* Hangul Syllable */ + [0xbae6, 0xbae6], /* Hangul Syllable */ + [0xbae7, 0xbae7], /* Hangul Syllable */ + [0xbae8, 0xbae8], /* Hangul Syllable */ + [0xbae9, 0xbae9], /* Hangul Syllable */ + [0xbaea, 0xbaea], /* Hangul Syllable */ + [0xbaeb, 0xbaeb], /* Hangul Syllable */ + [0xbaec, 0xbaec], /* Hangul Syllable */ + [0xbaed, 0xbaed], /* Hangul Syllable */ + [0xbaee, 0xbaee], /* Hangul Syllable */ + [0xbaef, 0xbaef], /* Hangul Syllable */ + [0xbaf0, 0xbaf0], /* Hangul Syllable */ + [0xbaf1, 0xbaf1], /* Hangul Syllable */ + [0xbaf2, 0xbaf2], /* Hangul Syllable */ + [0xbaf3, 0xbaf3], /* Hangul Syllable */ + [0xbaf4, 0xbaf4], /* Hangul Syllable */ + [0xbaf5, 0xbaf5], /* Hangul Syllable */ + [0xbaf6, 0xbaf6], /* Hangul Syllable */ + [0xbaf7, 0xbaf7], /* Hangul Syllable */ + [0xbaf8, 0xbaf8], /* Hangul Syllable */ + [0xbaf9, 0xbaf9], /* Hangul Syllable */ + [0xbafa, 0xbafa], /* Hangul Syllable */ + [0xbafb, 0xbafb], /* Hangul Syllable */ + [0xbafc, 0xbafc], /* Hangul Syllable */ + [0xbafd, 0xbafd], /* Hangul Syllable */ + [0xbafe, 0xbafe], /* Hangul Syllable */ + [0xbaff, 0xbaff], /* Hangul Syllable */ + [0xbb00, 0xbb00], /* Hangul Syllable */ + [0xbb01, 0xbb01], /* Hangul Syllable */ + [0xbb02, 0xbb02], /* Hangul Syllable */ + [0xbb03, 0xbb03], /* Hangul Syllable */ + [0xbb04, 0xbb04], /* Hangul Syllable */ + [0xbb05, 0xbb05], /* Hangul Syllable */ + [0xbb06, 0xbb06], /* Hangul Syllable */ + [0xbb07, 0xbb07], /* Hangul Syllable */ + [0xbb08, 0xbb08], /* Hangul Syllable */ + [0xbb09, 0xbb09], /* Hangul Syllable */ + [0xbb0a, 0xbb0a], /* Hangul Syllable */ + [0xbb0b, 0xbb0b], /* Hangul Syllable */ + [0xbb0c, 0xbb0c], /* Hangul Syllable */ + [0xbb0d, 0xbb0d], /* Hangul Syllable */ + [0xbb0e, 0xbb0e], /* Hangul Syllable */ + [0xbb0f, 0xbb0f], /* Hangul Syllable */ + [0xbb10, 0xbb10], /* Hangul Syllable */ + [0xbb11, 0xbb11], /* Hangul Syllable */ + [0xbb12, 0xbb12], /* Hangul Syllable */ + [0xbb13, 0xbb13], /* Hangul Syllable */ + [0xbb14, 0xbb14], /* Hangul Syllable */ + [0xbb15, 0xbb15], /* Hangul Syllable */ + [0xbb16, 0xbb16], /* Hangul Syllable */ + [0xbb17, 0xbb17], /* Hangul Syllable */ + [0xbb18, 0xbb18], /* Hangul Syllable */ + [0xbb19, 0xbb19], /* Hangul Syllable */ + [0xbb1a, 0xbb1a], /* Hangul Syllable */ + [0xbb1b, 0xbb1b], /* Hangul Syllable */ + [0xbb1c, 0xbb1c], /* Hangul Syllable */ + [0xbb1d, 0xbb1d], /* Hangul Syllable */ + [0xbb1e, 0xbb1e], /* Hangul Syllable */ + [0xbb1f, 0xbb1f], /* Hangul Syllable */ + [0xbb20, 0xbb20], /* Hangul Syllable */ + [0xbb21, 0xbb21], /* Hangul Syllable */ + [0xbb22, 0xbb22], /* Hangul Syllable */ + [0xbb23, 0xbb23], /* Hangul Syllable */ + [0xbb24, 0xbb24], /* Hangul Syllable */ + [0xbb25, 0xbb25], /* Hangul Syllable */ + [0xbb26, 0xbb26], /* Hangul Syllable */ + [0xbb27, 0xbb27], /* Hangul Syllable */ + [0xbb28, 0xbb28], /* Hangul Syllable */ + [0xbb29, 0xbb29], /* Hangul Syllable */ + [0xbb2a, 0xbb2a], /* Hangul Syllable */ + [0xbb2b, 0xbb2b], /* Hangul Syllable */ + [0xbb2c, 0xbb2c], /* Hangul Syllable */ + [0xbb2d, 0xbb2d], /* Hangul Syllable */ + [0xbb2e, 0xbb2e], /* Hangul Syllable */ + [0xbb2f, 0xbb2f], /* Hangul Syllable */ + [0xbb30, 0xbb30], /* Hangul Syllable */ + [0xbb31, 0xbb31], /* Hangul Syllable */ + [0xbb32, 0xbb32], /* Hangul Syllable */ + [0xbb33, 0xbb33], /* Hangul Syllable */ + [0xbb34, 0xbb34], /* Hangul Syllable */ + [0xbb35, 0xbb35], /* Hangul Syllable */ + [0xbb36, 0xbb36], /* Hangul Syllable */ + [0xbb37, 0xbb37], /* Hangul Syllable */ + [0xbb38, 0xbb38], /* Hangul Syllable */ + [0xbb39, 0xbb39], /* Hangul Syllable */ + [0xbb3a, 0xbb3a], /* Hangul Syllable */ + [0xbb3b, 0xbb3b], /* Hangul Syllable */ + [0xbb3c, 0xbb3c], /* Hangul Syllable */ + [0xbb3d, 0xbb3d], /* Hangul Syllable */ + [0xbb3e, 0xbb3e], /* Hangul Syllable */ + [0xbb3f, 0xbb3f], /* Hangul Syllable */ + [0xbb40, 0xbb40], /* Hangul Syllable */ + [0xbb41, 0xbb41], /* Hangul Syllable */ + [0xbb42, 0xbb42], /* Hangul Syllable */ + [0xbb43, 0xbb43], /* Hangul Syllable */ + [0xbb44, 0xbb44], /* Hangul Syllable */ + [0xbb45, 0xbb45], /* Hangul Syllable */ + [0xbb46, 0xbb46], /* Hangul Syllable */ + [0xbb47, 0xbb47], /* Hangul Syllable */ + [0xbb48, 0xbb48], /* Hangul Syllable */ + [0xbb49, 0xbb49], /* Hangul Syllable */ + [0xbb4a, 0xbb4a], /* Hangul Syllable */ + [0xbb4b, 0xbb4b], /* Hangul Syllable */ + [0xbb4c, 0xbb4c], /* Hangul Syllable */ + [0xbb4d, 0xbb4d], /* Hangul Syllable */ + [0xbb4e, 0xbb4e], /* Hangul Syllable */ + [0xbb4f, 0xbb4f], /* Hangul Syllable */ + [0xbb50, 0xbb50], /* Hangul Syllable */ + [0xbb51, 0xbb51], /* Hangul Syllable */ + [0xbb52, 0xbb52], /* Hangul Syllable */ + [0xbb53, 0xbb53], /* Hangul Syllable */ + [0xbb54, 0xbb54], /* Hangul Syllable */ + [0xbb55, 0xbb55], /* Hangul Syllable */ + [0xbb56, 0xbb56], /* Hangul Syllable */ + [0xbb57, 0xbb57], /* Hangul Syllable */ + [0xbb58, 0xbb58], /* Hangul Syllable */ + [0xbb59, 0xbb59], /* Hangul Syllable */ + [0xbb5a, 0xbb5a], /* Hangul Syllable */ + [0xbb5b, 0xbb5b], /* Hangul Syllable */ + [0xbb5c, 0xbb5c], /* Hangul Syllable */ + [0xbb5d, 0xbb5d], /* Hangul Syllable */ + [0xbb5e, 0xbb5e], /* Hangul Syllable */ + [0xbb5f, 0xbb5f], /* Hangul Syllable */ + [0xbb60, 0xbb60], /* Hangul Syllable */ + [0xbb61, 0xbb61], /* Hangul Syllable */ + [0xbb62, 0xbb62], /* Hangul Syllable */ + [0xbb63, 0xbb63], /* Hangul Syllable */ + [0xbb64, 0xbb64], /* Hangul Syllable */ + [0xbb65, 0xbb65], /* Hangul Syllable */ + [0xbb66, 0xbb66], /* Hangul Syllable */ + [0xbb67, 0xbb67], /* Hangul Syllable */ + [0xbb68, 0xbb68], /* Hangul Syllable */ + [0xbb69, 0xbb69], /* Hangul Syllable */ + [0xbb6a, 0xbb6a], /* Hangul Syllable */ + [0xbb6b, 0xbb6b], /* Hangul Syllable */ + [0xbb6c, 0xbb6c], /* Hangul Syllable */ + [0xbb6d, 0xbb6d], /* Hangul Syllable */ + [0xbb6e, 0xbb6e], /* Hangul Syllable */ + [0xbb6f, 0xbb6f], /* Hangul Syllable */ + [0xbb70, 0xbb70], /* Hangul Syllable */ + [0xbb71, 0xbb71], /* Hangul Syllable */ + [0xbb72, 0xbb72], /* Hangul Syllable */ + [0xbb73, 0xbb73], /* Hangul Syllable */ + [0xbb74, 0xbb74], /* Hangul Syllable */ + [0xbb75, 0xbb75], /* Hangul Syllable */ + [0xbb76, 0xbb76], /* Hangul Syllable */ + [0xbb77, 0xbb77], /* Hangul Syllable */ + [0xbb78, 0xbb78], /* Hangul Syllable */ + [0xbb79, 0xbb79], /* Hangul Syllable */ + [0xbb7a, 0xbb7a], /* Hangul Syllable */ + [0xbb7b, 0xbb7b], /* Hangul Syllable */ + [0xbb7c, 0xbb7c], /* Hangul Syllable */ + [0xbb7d, 0xbb7d], /* Hangul Syllable */ + [0xbb7e, 0xbb7e], /* Hangul Syllable */ + [0xbb7f, 0xbb7f], /* Hangul Syllable */ + [0xbb80, 0xbb80], /* Hangul Syllable */ + [0xbb81, 0xbb81], /* Hangul Syllable */ + [0xbb82, 0xbb82], /* Hangul Syllable */ + [0xbb83, 0xbb83], /* Hangul Syllable */ + [0xbb84, 0xbb84], /* Hangul Syllable */ + [0xbb85, 0xbb85], /* Hangul Syllable */ + [0xbb86, 0xbb86], /* Hangul Syllable */ + [0xbb87, 0xbb87], /* Hangul Syllable */ + [0xbb88, 0xbb88], /* Hangul Syllable */ + [0xbb89, 0xbb89], /* Hangul Syllable */ + [0xbb8a, 0xbb8a], /* Hangul Syllable */ + [0xbb8b, 0xbb8b], /* Hangul Syllable */ + [0xbb8c, 0xbb8c], /* Hangul Syllable */ + [0xbb8d, 0xbb8d], /* Hangul Syllable */ + [0xbb8e, 0xbb8e], /* Hangul Syllable */ + [0xbb8f, 0xbb8f], /* Hangul Syllable */ + [0xbb90, 0xbb90], /* Hangul Syllable */ + [0xbb91, 0xbb91], /* Hangul Syllable */ + [0xbb92, 0xbb92], /* Hangul Syllable */ + [0xbb93, 0xbb93], /* Hangul Syllable */ + [0xbb94, 0xbb94], /* Hangul Syllable */ + [0xbb95, 0xbb95], /* Hangul Syllable */ + [0xbb96, 0xbb96], /* Hangul Syllable */ + [0xbb97, 0xbb97], /* Hangul Syllable */ + [0xbb98, 0xbb98], /* Hangul Syllable */ + [0xbb99, 0xbb99], /* Hangul Syllable */ + [0xbb9a, 0xbb9a], /* Hangul Syllable */ + [0xbb9b, 0xbb9b], /* Hangul Syllable */ + [0xbb9c, 0xbb9c], /* Hangul Syllable */ + [0xbb9d, 0xbb9d], /* Hangul Syllable */ + [0xbb9e, 0xbb9e], /* Hangul Syllable */ + [0xbb9f, 0xbb9f], /* Hangul Syllable */ + [0xbba0, 0xbba0], /* Hangul Syllable */ + [0xbba1, 0xbba1], /* Hangul Syllable */ + [0xbba2, 0xbba2], /* Hangul Syllable */ + [0xbba3, 0xbba3], /* Hangul Syllable */ + [0xbba4, 0xbba4], /* Hangul Syllable */ + [0xbba5, 0xbba5], /* Hangul Syllable */ + [0xbba6, 0xbba6], /* Hangul Syllable */ + [0xbba7, 0xbba7], /* Hangul Syllable */ + [0xbba8, 0xbba8], /* Hangul Syllable */ + [0xbba9, 0xbba9], /* Hangul Syllable */ + [0xbbaa, 0xbbaa], /* Hangul Syllable */ + [0xbbab, 0xbbab], /* Hangul Syllable */ + [0xbbac, 0xbbac], /* Hangul Syllable */ + [0xbbad, 0xbbad], /* Hangul Syllable */ + [0xbbae, 0xbbae], /* Hangul Syllable */ + [0xbbaf, 0xbbaf], /* Hangul Syllable */ + [0xbbb0, 0xbbb0], /* Hangul Syllable */ + [0xbbb1, 0xbbb1], /* Hangul Syllable */ + [0xbbb2, 0xbbb2], /* Hangul Syllable */ + [0xbbb3, 0xbbb3], /* Hangul Syllable */ + [0xbbb4, 0xbbb4], /* Hangul Syllable */ + [0xbbb5, 0xbbb5], /* Hangul Syllable */ + [0xbbb6, 0xbbb6], /* Hangul Syllable */ + [0xbbb7, 0xbbb7], /* Hangul Syllable */ + [0xbbb8, 0xbbb8], /* Hangul Syllable */ + [0xbbb9, 0xbbb9], /* Hangul Syllable */ + [0xbbba, 0xbbba], /* Hangul Syllable */ + [0xbbbb, 0xbbbb], /* Hangul Syllable */ + [0xbbbc, 0xbbbc], /* Hangul Syllable */ + [0xbbbd, 0xbbbd], /* Hangul Syllable */ + [0xbbbe, 0xbbbe], /* Hangul Syllable */ + [0xbbbf, 0xbbbf], /* Hangul Syllable */ + [0xbbc0, 0xbbc0], /* Hangul Syllable */ + [0xbbc1, 0xbbc1], /* Hangul Syllable */ + [0xbbc2, 0xbbc2], /* Hangul Syllable */ + [0xbbc3, 0xbbc3], /* Hangul Syllable */ + [0xbbc4, 0xbbc4], /* Hangul Syllable */ + [0xbbc5, 0xbbc5], /* Hangul Syllable */ + [0xbbc6, 0xbbc6], /* Hangul Syllable */ + [0xbbc7, 0xbbc7], /* Hangul Syllable */ + [0xbbc8, 0xbbc8], /* Hangul Syllable */ + [0xbbc9, 0xbbc9], /* Hangul Syllable */ + [0xbbca, 0xbbca], /* Hangul Syllable */ + [0xbbcb, 0xbbcb], /* Hangul Syllable */ + [0xbbcc, 0xbbcc], /* Hangul Syllable */ + [0xbbcd, 0xbbcd], /* Hangul Syllable */ + [0xbbce, 0xbbce], /* Hangul Syllable */ + [0xbbcf, 0xbbcf], /* Hangul Syllable */ + [0xbbd0, 0xbbd0], /* Hangul Syllable */ + [0xbbd1, 0xbbd1], /* Hangul Syllable */ + [0xbbd2, 0xbbd2], /* Hangul Syllable */ + [0xbbd3, 0xbbd3], /* Hangul Syllable */ + [0xbbd4, 0xbbd4], /* Hangul Syllable */ + [0xbbd5, 0xbbd5], /* Hangul Syllable */ + [0xbbd6, 0xbbd6], /* Hangul Syllable */ + [0xbbd7, 0xbbd7], /* Hangul Syllable */ + [0xbbd8, 0xbbd8], /* Hangul Syllable */ + [0xbbd9, 0xbbd9], /* Hangul Syllable */ + [0xbbda, 0xbbda], /* Hangul Syllable */ + [0xbbdb, 0xbbdb], /* Hangul Syllable */ + [0xbbdc, 0xbbdc], /* Hangul Syllable */ + [0xbbdd, 0xbbdd], /* Hangul Syllable */ + [0xbbde, 0xbbde], /* Hangul Syllable */ + [0xbbdf, 0xbbdf], /* Hangul Syllable */ + [0xbbe0, 0xbbe0], /* Hangul Syllable */ + [0xbbe1, 0xbbe1], /* Hangul Syllable */ + [0xbbe2, 0xbbe2], /* Hangul Syllable */ + [0xbbe3, 0xbbe3], /* Hangul Syllable */ + [0xbbe4, 0xbbe4], /* Hangul Syllable */ + [0xbbe5, 0xbbe5], /* Hangul Syllable */ + [0xbbe6, 0xbbe6], /* Hangul Syllable */ + [0xbbe7, 0xbbe7], /* Hangul Syllable */ + [0xbbe8, 0xbbe8], /* Hangul Syllable */ + [0xbbe9, 0xbbe9], /* Hangul Syllable */ + [0xbbea, 0xbbea], /* Hangul Syllable */ + [0xbbeb, 0xbbeb], /* Hangul Syllable */ + [0xbbec, 0xbbec], /* Hangul Syllable */ + [0xbbed, 0xbbed], /* Hangul Syllable */ + [0xbbee, 0xbbee], /* Hangul Syllable */ + [0xbbef, 0xbbef], /* Hangul Syllable */ + [0xbbf0, 0xbbf0], /* Hangul Syllable */ + [0xbbf1, 0xbbf1], /* Hangul Syllable */ + [0xbbf2, 0xbbf2], /* Hangul Syllable */ + [0xbbf3, 0xbbf3], /* Hangul Syllable */ + [0xbbf4, 0xbbf4], /* Hangul Syllable */ + [0xbbf5, 0xbbf5], /* Hangul Syllable */ + [0xbbf6, 0xbbf6], /* Hangul Syllable */ + [0xbbf7, 0xbbf7], /* Hangul Syllable */ + [0xbbf8, 0xbbf8], /* Hangul Syllable */ + [0xbbf9, 0xbbf9], /* Hangul Syllable */ + [0xbbfa, 0xbbfa], /* Hangul Syllable */ + [0xbbfb, 0xbbfb], /* Hangul Syllable */ + [0xbbfc, 0xbbfc], /* Hangul Syllable */ + [0xbbfd, 0xbbfd], /* Hangul Syllable */ + [0xbbfe, 0xbbfe], /* Hangul Syllable */ + [0xbbff, 0xbbff], /* Hangul Syllable */ + [0xbc00, 0xbc00], /* Hangul Syllable */ + [0xbc01, 0xbc01], /* Hangul Syllable */ + [0xbc02, 0xbc02], /* Hangul Syllable */ + [0xbc03, 0xbc03], /* Hangul Syllable */ + [0xbc04, 0xbc04], /* Hangul Syllable */ + [0xbc05, 0xbc05], /* Hangul Syllable */ + [0xbc06, 0xbc06], /* Hangul Syllable */ + [0xbc07, 0xbc07], /* Hangul Syllable */ + [0xbc08, 0xbc08], /* Hangul Syllable */ + [0xbc09, 0xbc09], /* Hangul Syllable */ + [0xbc0a, 0xbc0a], /* Hangul Syllable */ + [0xbc0b, 0xbc0b], /* Hangul Syllable */ + [0xbc0c, 0xbc0c], /* Hangul Syllable */ + [0xbc0d, 0xbc0d], /* Hangul Syllable */ + [0xbc0e, 0xbc0e], /* Hangul Syllable */ + [0xbc0f, 0xbc0f], /* Hangul Syllable */ + [0xbc10, 0xbc10], /* Hangul Syllable */ + [0xbc11, 0xbc11], /* Hangul Syllable */ + [0xbc12, 0xbc12], /* Hangul Syllable */ + [0xbc13, 0xbc13], /* Hangul Syllable */ + [0xbc14, 0xbc14], /* Hangul Syllable */ + [0xbc15, 0xbc15], /* Hangul Syllable */ + [0xbc16, 0xbc16], /* Hangul Syllable */ + [0xbc17, 0xbc17], /* Hangul Syllable */ + [0xbc18, 0xbc18], /* Hangul Syllable */ + [0xbc19, 0xbc19], /* Hangul Syllable */ + [0xbc1a, 0xbc1a], /* Hangul Syllable */ + [0xbc1b, 0xbc1b], /* Hangul Syllable */ + [0xbc1c, 0xbc1c], /* Hangul Syllable */ + [0xbc1d, 0xbc1d], /* Hangul Syllable */ + [0xbc1e, 0xbc1e], /* Hangul Syllable */ + [0xbc1f, 0xbc1f], /* Hangul Syllable */ + [0xbc20, 0xbc20], /* Hangul Syllable */ + [0xbc21, 0xbc21], /* Hangul Syllable */ + [0xbc22, 0xbc22], /* Hangul Syllable */ + [0xbc23, 0xbc23], /* Hangul Syllable */ + [0xbc24, 0xbc24], /* Hangul Syllable */ + [0xbc25, 0xbc25], /* Hangul Syllable */ + [0xbc26, 0xbc26], /* Hangul Syllable */ + [0xbc27, 0xbc27], /* Hangul Syllable */ + [0xbc28, 0xbc28], /* Hangul Syllable */ + [0xbc29, 0xbc29], /* Hangul Syllable */ + [0xbc2a, 0xbc2a], /* Hangul Syllable */ + [0xbc2b, 0xbc2b], /* Hangul Syllable */ + [0xbc2c, 0xbc2c], /* Hangul Syllable */ + [0xbc2d, 0xbc2d], /* Hangul Syllable */ + [0xbc2e, 0xbc2e], /* Hangul Syllable */ + [0xbc2f, 0xbc2f], /* Hangul Syllable */ + [0xbc30, 0xbc30], /* Hangul Syllable */ + [0xbc31, 0xbc31], /* Hangul Syllable */ + [0xbc32, 0xbc32], /* Hangul Syllable */ + [0xbc33, 0xbc33], /* Hangul Syllable */ + [0xbc34, 0xbc34], /* Hangul Syllable */ + [0xbc35, 0xbc35], /* Hangul Syllable */ + [0xbc36, 0xbc36], /* Hangul Syllable */ + [0xbc37, 0xbc37], /* Hangul Syllable */ + [0xbc38, 0xbc38], /* Hangul Syllable */ + [0xbc39, 0xbc39], /* Hangul Syllable */ + [0xbc3a, 0xbc3a], /* Hangul Syllable */ + [0xbc3b, 0xbc3b], /* Hangul Syllable */ + [0xbc3c, 0xbc3c], /* Hangul Syllable */ + [0xbc3d, 0xbc3d], /* Hangul Syllable */ + [0xbc3e, 0xbc3e], /* Hangul Syllable */ + [0xbc3f, 0xbc3f], /* Hangul Syllable */ + [0xbc40, 0xbc40], /* Hangul Syllable */ + [0xbc41, 0xbc41], /* Hangul Syllable */ + [0xbc42, 0xbc42], /* Hangul Syllable */ + [0xbc43, 0xbc43], /* Hangul Syllable */ + [0xbc44, 0xbc44], /* Hangul Syllable */ + [0xbc45, 0xbc45], /* Hangul Syllable */ + [0xbc46, 0xbc46], /* Hangul Syllable */ + [0xbc47, 0xbc47], /* Hangul Syllable */ + [0xbc48, 0xbc48], /* Hangul Syllable */ + [0xbc49, 0xbc49], /* Hangul Syllable */ + [0xbc4a, 0xbc4a], /* Hangul Syllable */ + [0xbc4b, 0xbc4b], /* Hangul Syllable */ + [0xbc4c, 0xbc4c], /* Hangul Syllable */ + [0xbc4d, 0xbc4d], /* Hangul Syllable */ + [0xbc4e, 0xbc4e], /* Hangul Syllable */ + [0xbc4f, 0xbc4f], /* Hangul Syllable */ + [0xbc50, 0xbc50], /* Hangul Syllable */ + [0xbc51, 0xbc51], /* Hangul Syllable */ + [0xbc52, 0xbc52], /* Hangul Syllable */ + [0xbc53, 0xbc53], /* Hangul Syllable */ + [0xbc54, 0xbc54], /* Hangul Syllable */ + [0xbc55, 0xbc55], /* Hangul Syllable */ + [0xbc56, 0xbc56], /* Hangul Syllable */ + [0xbc57, 0xbc57], /* Hangul Syllable */ + [0xbc58, 0xbc58], /* Hangul Syllable */ + [0xbc59, 0xbc59], /* Hangul Syllable */ + [0xbc5a, 0xbc5a], /* Hangul Syllable */ + [0xbc5b, 0xbc5b], /* Hangul Syllable */ + [0xbc5c, 0xbc5c], /* Hangul Syllable */ + [0xbc5d, 0xbc5d], /* Hangul Syllable */ + [0xbc5e, 0xbc5e], /* Hangul Syllable */ + [0xbc5f, 0xbc5f], /* Hangul Syllable */ + [0xbc60, 0xbc60], /* Hangul Syllable */ + [0xbc61, 0xbc61], /* Hangul Syllable */ + [0xbc62, 0xbc62], /* Hangul Syllable */ + [0xbc63, 0xbc63], /* Hangul Syllable */ + [0xbc64, 0xbc64], /* Hangul Syllable */ + [0xbc65, 0xbc65], /* Hangul Syllable */ + [0xbc66, 0xbc66], /* Hangul Syllable */ + [0xbc67, 0xbc67], /* Hangul Syllable */ + [0xbc68, 0xbc68], /* Hangul Syllable */ + [0xbc69, 0xbc69], /* Hangul Syllable */ + [0xbc6a, 0xbc6a], /* Hangul Syllable */ + [0xbc6b, 0xbc6b], /* Hangul Syllable */ + [0xbc6c, 0xbc6c], /* Hangul Syllable */ + [0xbc6d, 0xbc6d], /* Hangul Syllable */ + [0xbc6e, 0xbc6e], /* Hangul Syllable */ + [0xbc6f, 0xbc6f], /* Hangul Syllable */ + [0xbc70, 0xbc70], /* Hangul Syllable */ + [0xbc71, 0xbc71], /* Hangul Syllable */ + [0xbc72, 0xbc72], /* Hangul Syllable */ + [0xbc73, 0xbc73], /* Hangul Syllable */ + [0xbc74, 0xbc74], /* Hangul Syllable */ + [0xbc75, 0xbc75], /* Hangul Syllable */ + [0xbc76, 0xbc76], /* Hangul Syllable */ + [0xbc77, 0xbc77], /* Hangul Syllable */ + [0xbc78, 0xbc78], /* Hangul Syllable */ + [0xbc79, 0xbc79], /* Hangul Syllable */ + [0xbc7a, 0xbc7a], /* Hangul Syllable */ + [0xbc7b, 0xbc7b], /* Hangul Syllable */ + [0xbc7c, 0xbc7c], /* Hangul Syllable */ + [0xbc7d, 0xbc7d], /* Hangul Syllable */ + [0xbc7e, 0xbc7e], /* Hangul Syllable */ + [0xbc7f, 0xbc7f], /* Hangul Syllable */ + [0xbc80, 0xbc80], /* Hangul Syllable */ + [0xbc81, 0xbc81], /* Hangul Syllable */ + [0xbc82, 0xbc82], /* Hangul Syllable */ + [0xbc83, 0xbc83], /* Hangul Syllable */ + [0xbc84, 0xbc84], /* Hangul Syllable */ + [0xbc85, 0xbc85], /* Hangul Syllable */ + [0xbc86, 0xbc86], /* Hangul Syllable */ + [0xbc87, 0xbc87], /* Hangul Syllable */ + [0xbc88, 0xbc88], /* Hangul Syllable */ + [0xbc89, 0xbc89], /* Hangul Syllable */ + [0xbc8a, 0xbc8a], /* Hangul Syllable */ + [0xbc8b, 0xbc8b], /* Hangul Syllable */ + [0xbc8c, 0xbc8c], /* Hangul Syllable */ + [0xbc8d, 0xbc8d], /* Hangul Syllable */ + [0xbc8e, 0xbc8e], /* Hangul Syllable */ + [0xbc8f, 0xbc8f], /* Hangul Syllable */ + [0xbc90, 0xbc90], /* Hangul Syllable */ + [0xbc91, 0xbc91], /* Hangul Syllable */ + [0xbc92, 0xbc92], /* Hangul Syllable */ + [0xbc93, 0xbc93], /* Hangul Syllable */ + [0xbc94, 0xbc94], /* Hangul Syllable */ + [0xbc95, 0xbc95], /* Hangul Syllable */ + [0xbc96, 0xbc96], /* Hangul Syllable */ + [0xbc97, 0xbc97], /* Hangul Syllable */ + [0xbc98, 0xbc98], /* Hangul Syllable */ + [0xbc99, 0xbc99], /* Hangul Syllable */ + [0xbc9a, 0xbc9a], /* Hangul Syllable */ + [0xbc9b, 0xbc9b], /* Hangul Syllable */ + [0xbc9c, 0xbc9c], /* Hangul Syllable */ + [0xbc9d, 0xbc9d], /* Hangul Syllable */ + [0xbc9e, 0xbc9e], /* Hangul Syllable */ + [0xbc9f, 0xbc9f], /* Hangul Syllable */ + [0xbca0, 0xbca0], /* Hangul Syllable */ + [0xbca1, 0xbca1], /* Hangul Syllable */ + [0xbca2, 0xbca2], /* Hangul Syllable */ + [0xbca3, 0xbca3], /* Hangul Syllable */ + [0xbca4, 0xbca4], /* Hangul Syllable */ + [0xbca5, 0xbca5], /* Hangul Syllable */ + [0xbca6, 0xbca6], /* Hangul Syllable */ + [0xbca7, 0xbca7], /* Hangul Syllable */ + [0xbca8, 0xbca8], /* Hangul Syllable */ + [0xbca9, 0xbca9], /* Hangul Syllable */ + [0xbcaa, 0xbcaa], /* Hangul Syllable */ + [0xbcab, 0xbcab], /* Hangul Syllable */ + [0xbcac, 0xbcac], /* Hangul Syllable */ + [0xbcad, 0xbcad], /* Hangul Syllable */ + [0xbcae, 0xbcae], /* Hangul Syllable */ + [0xbcaf, 0xbcaf], /* Hangul Syllable */ + [0xbcb0, 0xbcb0], /* Hangul Syllable */ + [0xbcb1, 0xbcb1], /* Hangul Syllable */ + [0xbcb2, 0xbcb2], /* Hangul Syllable */ + [0xbcb3, 0xbcb3], /* Hangul Syllable */ + [0xbcb4, 0xbcb4], /* Hangul Syllable */ + [0xbcb5, 0xbcb5], /* Hangul Syllable */ + [0xbcb6, 0xbcb6], /* Hangul Syllable */ + [0xbcb7, 0xbcb7], /* Hangul Syllable */ + [0xbcb8, 0xbcb8], /* Hangul Syllable */ + [0xbcb9, 0xbcb9], /* Hangul Syllable */ + [0xbcba, 0xbcba], /* Hangul Syllable */ + [0xbcbb, 0xbcbb], /* Hangul Syllable */ + [0xbcbc, 0xbcbc], /* Hangul Syllable */ + [0xbcbd, 0xbcbd], /* Hangul Syllable */ + [0xbcbe, 0xbcbe], /* Hangul Syllable */ + [0xbcbf, 0xbcbf], /* Hangul Syllable */ + [0xbcc0, 0xbcc0], /* Hangul Syllable */ + [0xbcc1, 0xbcc1], /* Hangul Syllable */ + [0xbcc2, 0xbcc2], /* Hangul Syllable */ + [0xbcc3, 0xbcc3], /* Hangul Syllable */ + [0xbcc4, 0xbcc4], /* Hangul Syllable */ + [0xbcc5, 0xbcc5], /* Hangul Syllable */ + [0xbcc6, 0xbcc6], /* Hangul Syllable */ + [0xbcc7, 0xbcc7], /* Hangul Syllable */ + [0xbcc8, 0xbcc8], /* Hangul Syllable */ + [0xbcc9, 0xbcc9], /* Hangul Syllable */ + [0xbcca, 0xbcca], /* Hangul Syllable */ + [0xbccb, 0xbccb], /* Hangul Syllable */ + [0xbccc, 0xbccc], /* Hangul Syllable */ + [0xbccd, 0xbccd], /* Hangul Syllable */ + [0xbcce, 0xbcce], /* Hangul Syllable */ + [0xbccf, 0xbccf], /* Hangul Syllable */ + [0xbcd0, 0xbcd0], /* Hangul Syllable */ + [0xbcd1, 0xbcd1], /* Hangul Syllable */ + [0xbcd2, 0xbcd2], /* Hangul Syllable */ + [0xbcd3, 0xbcd3], /* Hangul Syllable */ + [0xbcd4, 0xbcd4], /* Hangul Syllable */ + [0xbcd5, 0xbcd5], /* Hangul Syllable */ + [0xbcd6, 0xbcd6], /* Hangul Syllable */ + [0xbcd7, 0xbcd7], /* Hangul Syllable */ + [0xbcd8, 0xbcd8], /* Hangul Syllable */ + [0xbcd9, 0xbcd9], /* Hangul Syllable */ + [0xbcda, 0xbcda], /* Hangul Syllable */ + [0xbcdb, 0xbcdb], /* Hangul Syllable */ + [0xbcdc, 0xbcdc], /* Hangul Syllable */ + [0xbcdd, 0xbcdd], /* Hangul Syllable */ + [0xbcde, 0xbcde], /* Hangul Syllable */ + [0xbcdf, 0xbcdf], /* Hangul Syllable */ + [0xbce0, 0xbce0], /* Hangul Syllable */ + [0xbce1, 0xbce1], /* Hangul Syllable */ + [0xbce2, 0xbce2], /* Hangul Syllable */ + [0xbce3, 0xbce3], /* Hangul Syllable */ + [0xbce4, 0xbce4], /* Hangul Syllable */ + [0xbce5, 0xbce5], /* Hangul Syllable */ + [0xbce6, 0xbce6], /* Hangul Syllable */ + [0xbce7, 0xbce7], /* Hangul Syllable */ + [0xbce8, 0xbce8], /* Hangul Syllable */ + [0xbce9, 0xbce9], /* Hangul Syllable */ + [0xbcea, 0xbcea], /* Hangul Syllable */ + [0xbceb, 0xbceb], /* Hangul Syllable */ + [0xbcec, 0xbcec], /* Hangul Syllable */ + [0xbced, 0xbced], /* Hangul Syllable */ + [0xbcee, 0xbcee], /* Hangul Syllable */ + [0xbcef, 0xbcef], /* Hangul Syllable */ + [0xbcf0, 0xbcf0], /* Hangul Syllable */ + [0xbcf1, 0xbcf1], /* Hangul Syllable */ + [0xbcf2, 0xbcf2], /* Hangul Syllable */ + [0xbcf3, 0xbcf3], /* Hangul Syllable */ + [0xbcf4, 0xbcf4], /* Hangul Syllable */ + [0xbcf5, 0xbcf5], /* Hangul Syllable */ + [0xbcf6, 0xbcf6], /* Hangul Syllable */ + [0xbcf7, 0xbcf7], /* Hangul Syllable */ + [0xbcf8, 0xbcf8], /* Hangul Syllable */ + [0xbcf9, 0xbcf9], /* Hangul Syllable */ + [0xbcfa, 0xbcfa], /* Hangul Syllable */ + [0xbcfb, 0xbcfb], /* Hangul Syllable */ + [0xbcfc, 0xbcfc], /* Hangul Syllable */ + [0xbcfd, 0xbcfd], /* Hangul Syllable */ + [0xbcfe, 0xbcfe], /* Hangul Syllable */ + [0xbcff, 0xbcff], /* Hangul Syllable */ + [0xbd00, 0xbd00], /* Hangul Syllable */ + [0xbd01, 0xbd01], /* Hangul Syllable */ + [0xbd02, 0xbd02], /* Hangul Syllable */ + [0xbd03, 0xbd03], /* Hangul Syllable */ + [0xbd04, 0xbd04], /* Hangul Syllable */ + [0xbd05, 0xbd05], /* Hangul Syllable */ + [0xbd06, 0xbd06], /* Hangul Syllable */ + [0xbd07, 0xbd07], /* Hangul Syllable */ + [0xbd08, 0xbd08], /* Hangul Syllable */ + [0xbd09, 0xbd09], /* Hangul Syllable */ + [0xbd0a, 0xbd0a], /* Hangul Syllable */ + [0xbd0b, 0xbd0b], /* Hangul Syllable */ + [0xbd0c, 0xbd0c], /* Hangul Syllable */ + [0xbd0d, 0xbd0d], /* Hangul Syllable */ + [0xbd0e, 0xbd0e], /* Hangul Syllable */ + [0xbd0f, 0xbd0f], /* Hangul Syllable */ + [0xbd10, 0xbd10], /* Hangul Syllable */ + [0xbd11, 0xbd11], /* Hangul Syllable */ + [0xbd12, 0xbd12], /* Hangul Syllable */ + [0xbd13, 0xbd13], /* Hangul Syllable */ + [0xbd14, 0xbd14], /* Hangul Syllable */ + [0xbd15, 0xbd15], /* Hangul Syllable */ + [0xbd16, 0xbd16], /* Hangul Syllable */ + [0xbd17, 0xbd17], /* Hangul Syllable */ + [0xbd18, 0xbd18], /* Hangul Syllable */ + [0xbd19, 0xbd19], /* Hangul Syllable */ + [0xbd1a, 0xbd1a], /* Hangul Syllable */ + [0xbd1b, 0xbd1b], /* Hangul Syllable */ + [0xbd1c, 0xbd1c], /* Hangul Syllable */ + [0xbd1d, 0xbd1d], /* Hangul Syllable */ + [0xbd1e, 0xbd1e], /* Hangul Syllable */ + [0xbd1f, 0xbd1f], /* Hangul Syllable */ + [0xbd20, 0xbd20], /* Hangul Syllable */ + [0xbd21, 0xbd21], /* Hangul Syllable */ + [0xbd22, 0xbd22], /* Hangul Syllable */ + [0xbd23, 0xbd23], /* Hangul Syllable */ + [0xbd24, 0xbd24], /* Hangul Syllable */ + [0xbd25, 0xbd25], /* Hangul Syllable */ + [0xbd26, 0xbd26], /* Hangul Syllable */ + [0xbd27, 0xbd27], /* Hangul Syllable */ + [0xbd28, 0xbd28], /* Hangul Syllable */ + [0xbd29, 0xbd29], /* Hangul Syllable */ + [0xbd2a, 0xbd2a], /* Hangul Syllable */ + [0xbd2b, 0xbd2b], /* Hangul Syllable */ + [0xbd2c, 0xbd2c], /* Hangul Syllable */ + [0xbd2d, 0xbd2d], /* Hangul Syllable */ + [0xbd2e, 0xbd2e], /* Hangul Syllable */ + [0xbd2f, 0xbd2f], /* Hangul Syllable */ + [0xbd30, 0xbd30], /* Hangul Syllable */ + [0xbd31, 0xbd31], /* Hangul Syllable */ + [0xbd32, 0xbd32], /* Hangul Syllable */ + [0xbd33, 0xbd33], /* Hangul Syllable */ + [0xbd34, 0xbd34], /* Hangul Syllable */ + [0xbd35, 0xbd35], /* Hangul Syllable */ + [0xbd36, 0xbd36], /* Hangul Syllable */ + [0xbd37, 0xbd37], /* Hangul Syllable */ + [0xbd38, 0xbd38], /* Hangul Syllable */ + [0xbd39, 0xbd39], /* Hangul Syllable */ + [0xbd3a, 0xbd3a], /* Hangul Syllable */ + [0xbd3b, 0xbd3b], /* Hangul Syllable */ + [0xbd3c, 0xbd3c], /* Hangul Syllable */ + [0xbd3d, 0xbd3d], /* Hangul Syllable */ + [0xbd3e, 0xbd3e], /* Hangul Syllable */ + [0xbd3f, 0xbd3f], /* Hangul Syllable */ + [0xbd40, 0xbd40], /* Hangul Syllable */ + [0xbd41, 0xbd41], /* Hangul Syllable */ + [0xbd42, 0xbd42], /* Hangul Syllable */ + [0xbd43, 0xbd43], /* Hangul Syllable */ + [0xbd44, 0xbd44], /* Hangul Syllable */ + [0xbd45, 0xbd45], /* Hangul Syllable */ + [0xbd46, 0xbd46], /* Hangul Syllable */ + [0xbd47, 0xbd47], /* Hangul Syllable */ + [0xbd48, 0xbd48], /* Hangul Syllable */ + [0xbd49, 0xbd49], /* Hangul Syllable */ + [0xbd4a, 0xbd4a], /* Hangul Syllable */ + [0xbd4b, 0xbd4b], /* Hangul Syllable */ + [0xbd4c, 0xbd4c], /* Hangul Syllable */ + [0xbd4d, 0xbd4d], /* Hangul Syllable */ + [0xbd4e, 0xbd4e], /* Hangul Syllable */ + [0xbd4f, 0xbd4f], /* Hangul Syllable */ + [0xbd50, 0xbd50], /* Hangul Syllable */ + [0xbd51, 0xbd51], /* Hangul Syllable */ + [0xbd52, 0xbd52], /* Hangul Syllable */ + [0xbd53, 0xbd53], /* Hangul Syllable */ + [0xbd54, 0xbd54], /* Hangul Syllable */ + [0xbd55, 0xbd55], /* Hangul Syllable */ + [0xbd56, 0xbd56], /* Hangul Syllable */ + [0xbd57, 0xbd57], /* Hangul Syllable */ + [0xbd58, 0xbd58], /* Hangul Syllable */ + [0xbd59, 0xbd59], /* Hangul Syllable */ + [0xbd5a, 0xbd5a], /* Hangul Syllable */ + [0xbd5b, 0xbd5b], /* Hangul Syllable */ + [0xbd5c, 0xbd5c], /* Hangul Syllable */ + [0xbd5d, 0xbd5d], /* Hangul Syllable */ + [0xbd5e, 0xbd5e], /* Hangul Syllable */ + [0xbd5f, 0xbd5f], /* Hangul Syllable */ + [0xbd60, 0xbd60], /* Hangul Syllable */ + [0xbd61, 0xbd61], /* Hangul Syllable */ + [0xbd62, 0xbd62], /* Hangul Syllable */ + [0xbd63, 0xbd63], /* Hangul Syllable */ + [0xbd64, 0xbd64], /* Hangul Syllable */ + [0xbd65, 0xbd65], /* Hangul Syllable */ + [0xbd66, 0xbd66], /* Hangul Syllable */ + [0xbd67, 0xbd67], /* Hangul Syllable */ + [0xbd68, 0xbd68], /* Hangul Syllable */ + [0xbd69, 0xbd69], /* Hangul Syllable */ + [0xbd6a, 0xbd6a], /* Hangul Syllable */ + [0xbd6b, 0xbd6b], /* Hangul Syllable */ + [0xbd6c, 0xbd6c], /* Hangul Syllable */ + [0xbd6d, 0xbd6d], /* Hangul Syllable */ + [0xbd6e, 0xbd6e], /* Hangul Syllable */ + [0xbd6f, 0xbd6f], /* Hangul Syllable */ + [0xbd70, 0xbd70], /* Hangul Syllable */ + [0xbd71, 0xbd71], /* Hangul Syllable */ + [0xbd72, 0xbd72], /* Hangul Syllable */ + [0xbd73, 0xbd73], /* Hangul Syllable */ + [0xbd74, 0xbd74], /* Hangul Syllable */ + [0xbd75, 0xbd75], /* Hangul Syllable */ + [0xbd76, 0xbd76], /* Hangul Syllable */ + [0xbd77, 0xbd77], /* Hangul Syllable */ + [0xbd78, 0xbd78], /* Hangul Syllable */ + [0xbd79, 0xbd79], /* Hangul Syllable */ + [0xbd7a, 0xbd7a], /* Hangul Syllable */ + [0xbd7b, 0xbd7b], /* Hangul Syllable */ + [0xbd7c, 0xbd7c], /* Hangul Syllable */ + [0xbd7d, 0xbd7d], /* Hangul Syllable */ + [0xbd7e, 0xbd7e], /* Hangul Syllable */ + [0xbd7f, 0xbd7f], /* Hangul Syllable */ + [0xbd80, 0xbd80], /* Hangul Syllable */ + [0xbd81, 0xbd81], /* Hangul Syllable */ + [0xbd82, 0xbd82], /* Hangul Syllable */ + [0xbd83, 0xbd83], /* Hangul Syllable */ + [0xbd84, 0xbd84], /* Hangul Syllable */ + [0xbd85, 0xbd85], /* Hangul Syllable */ + [0xbd86, 0xbd86], /* Hangul Syllable */ + [0xbd87, 0xbd87], /* Hangul Syllable */ + [0xbd88, 0xbd88], /* Hangul Syllable */ + [0xbd89, 0xbd89], /* Hangul Syllable */ + [0xbd8a, 0xbd8a], /* Hangul Syllable */ + [0xbd8b, 0xbd8b], /* Hangul Syllable */ + [0xbd8c, 0xbd8c], /* Hangul Syllable */ + [0xbd8d, 0xbd8d], /* Hangul Syllable */ + [0xbd8e, 0xbd8e], /* Hangul Syllable */ + [0xbd8f, 0xbd8f], /* Hangul Syllable */ + [0xbd90, 0xbd90], /* Hangul Syllable */ + [0xbd91, 0xbd91], /* Hangul Syllable */ + [0xbd92, 0xbd92], /* Hangul Syllable */ + [0xbd93, 0xbd93], /* Hangul Syllable */ + [0xbd94, 0xbd94], /* Hangul Syllable */ + [0xbd95, 0xbd95], /* Hangul Syllable */ + [0xbd96, 0xbd96], /* Hangul Syllable */ + [0xbd97, 0xbd97], /* Hangul Syllable */ + [0xbd98, 0xbd98], /* Hangul Syllable */ + [0xbd99, 0xbd99], /* Hangul Syllable */ + [0xbd9a, 0xbd9a], /* Hangul Syllable */ + [0xbd9b, 0xbd9b], /* Hangul Syllable */ + [0xbd9c, 0xbd9c], /* Hangul Syllable */ + [0xbd9d, 0xbd9d], /* Hangul Syllable */ + [0xbd9e, 0xbd9e], /* Hangul Syllable */ + [0xbd9f, 0xbd9f], /* Hangul Syllable */ + [0xbda0, 0xbda0], /* Hangul Syllable */ + [0xbda1, 0xbda1], /* Hangul Syllable */ + [0xbda2, 0xbda2], /* Hangul Syllable */ + [0xbda3, 0xbda3], /* Hangul Syllable */ + [0xbda4, 0xbda4], /* Hangul Syllable */ + [0xbda5, 0xbda5], /* Hangul Syllable */ + [0xbda6, 0xbda6], /* Hangul Syllable */ + [0xbda7, 0xbda7], /* Hangul Syllable */ + [0xbda8, 0xbda8], /* Hangul Syllable */ + [0xbda9, 0xbda9], /* Hangul Syllable */ + [0xbdaa, 0xbdaa], /* Hangul Syllable */ + [0xbdab, 0xbdab], /* Hangul Syllable */ + [0xbdac, 0xbdac], /* Hangul Syllable */ + [0xbdad, 0xbdad], /* Hangul Syllable */ + [0xbdae, 0xbdae], /* Hangul Syllable */ + [0xbdaf, 0xbdaf], /* Hangul Syllable */ + [0xbdb0, 0xbdb0], /* Hangul Syllable */ + [0xbdb1, 0xbdb1], /* Hangul Syllable */ + [0xbdb2, 0xbdb2], /* Hangul Syllable */ + [0xbdb3, 0xbdb3], /* Hangul Syllable */ + [0xbdb4, 0xbdb4], /* Hangul Syllable */ + [0xbdb5, 0xbdb5], /* Hangul Syllable */ + [0xbdb6, 0xbdb6], /* Hangul Syllable */ + [0xbdb7, 0xbdb7], /* Hangul Syllable */ + [0xbdb8, 0xbdb8], /* Hangul Syllable */ + [0xbdb9, 0xbdb9], /* Hangul Syllable */ + [0xbdba, 0xbdba], /* Hangul Syllable */ + [0xbdbb, 0xbdbb], /* Hangul Syllable */ + [0xbdbc, 0xbdbc], /* Hangul Syllable */ + [0xbdbd, 0xbdbd], /* Hangul Syllable */ + [0xbdbe, 0xbdbe], /* Hangul Syllable */ + [0xbdbf, 0xbdbf], /* Hangul Syllable */ + [0xbdc0, 0xbdc0], /* Hangul Syllable */ + [0xbdc1, 0xbdc1], /* Hangul Syllable */ + [0xbdc2, 0xbdc2], /* Hangul Syllable */ + [0xbdc3, 0xbdc3], /* Hangul Syllable */ + [0xbdc4, 0xbdc4], /* Hangul Syllable */ + [0xbdc5, 0xbdc5], /* Hangul Syllable */ + [0xbdc6, 0xbdc6], /* Hangul Syllable */ + [0xbdc7, 0xbdc7], /* Hangul Syllable */ + [0xbdc8, 0xbdc8], /* Hangul Syllable */ + [0xbdc9, 0xbdc9], /* Hangul Syllable */ + [0xbdca, 0xbdca], /* Hangul Syllable */ + [0xbdcb, 0xbdcb], /* Hangul Syllable */ + [0xbdcc, 0xbdcc], /* Hangul Syllable */ + [0xbdcd, 0xbdcd], /* Hangul Syllable */ + [0xbdce, 0xbdce], /* Hangul Syllable */ + [0xbdcf, 0xbdcf], /* Hangul Syllable */ + [0xbdd0, 0xbdd0], /* Hangul Syllable */ + [0xbdd1, 0xbdd1], /* Hangul Syllable */ + [0xbdd2, 0xbdd2], /* Hangul Syllable */ + [0xbdd3, 0xbdd3], /* Hangul Syllable */ + [0xbdd4, 0xbdd4], /* Hangul Syllable */ + [0xbdd5, 0xbdd5], /* Hangul Syllable */ + [0xbdd6, 0xbdd6], /* Hangul Syllable */ + [0xbdd7, 0xbdd7], /* Hangul Syllable */ + [0xbdd8, 0xbdd8], /* Hangul Syllable */ + [0xbdd9, 0xbdd9], /* Hangul Syllable */ + [0xbdda, 0xbdda], /* Hangul Syllable */ + [0xbddb, 0xbddb], /* Hangul Syllable */ + [0xbddc, 0xbddc], /* Hangul Syllable */ + [0xbddd, 0xbddd], /* Hangul Syllable */ + [0xbdde, 0xbdde], /* Hangul Syllable */ + [0xbddf, 0xbddf], /* Hangul Syllable */ + [0xbde0, 0xbde0], /* Hangul Syllable */ + [0xbde1, 0xbde1], /* Hangul Syllable */ + [0xbde2, 0xbde2], /* Hangul Syllable */ + [0xbde3, 0xbde3], /* Hangul Syllable */ + [0xbde4, 0xbde4], /* Hangul Syllable */ + [0xbde5, 0xbde5], /* Hangul Syllable */ + [0xbde6, 0xbde6], /* Hangul Syllable */ + [0xbde7, 0xbde7], /* Hangul Syllable */ + [0xbde8, 0xbde8], /* Hangul Syllable */ + [0xbde9, 0xbde9], /* Hangul Syllable */ + [0xbdea, 0xbdea], /* Hangul Syllable */ + [0xbdeb, 0xbdeb], /* Hangul Syllable */ + [0xbdec, 0xbdec], /* Hangul Syllable */ + [0xbded, 0xbded], /* Hangul Syllable */ + [0xbdee, 0xbdee], /* Hangul Syllable */ + [0xbdef, 0xbdef], /* Hangul Syllable */ + [0xbdf0, 0xbdf0], /* Hangul Syllable */ + [0xbdf1, 0xbdf1], /* Hangul Syllable */ + [0xbdf2, 0xbdf2], /* Hangul Syllable */ + [0xbdf3, 0xbdf3], /* Hangul Syllable */ + [0xbdf4, 0xbdf4], /* Hangul Syllable */ + [0xbdf5, 0xbdf5], /* Hangul Syllable */ + [0xbdf6, 0xbdf6], /* Hangul Syllable */ + [0xbdf7, 0xbdf7], /* Hangul Syllable */ + [0xbdf8, 0xbdf8], /* Hangul Syllable */ + [0xbdf9, 0xbdf9], /* Hangul Syllable */ + [0xbdfa, 0xbdfa], /* Hangul Syllable */ + [0xbdfb, 0xbdfb], /* Hangul Syllable */ + [0xbdfc, 0xbdfc], /* Hangul Syllable */ + [0xbdfd, 0xbdfd], /* Hangul Syllable */ + [0xbdfe, 0xbdfe], /* Hangul Syllable */ + [0xbdff, 0xbdff], /* Hangul Syllable */ + [0xbe00, 0xbe00], /* Hangul Syllable */ + [0xbe01, 0xbe01], /* Hangul Syllable */ + [0xbe02, 0xbe02], /* Hangul Syllable */ + [0xbe03, 0xbe03], /* Hangul Syllable */ + [0xbe04, 0xbe04], /* Hangul Syllable */ + [0xbe05, 0xbe05], /* Hangul Syllable */ + [0xbe06, 0xbe06], /* Hangul Syllable */ + [0xbe07, 0xbe07], /* Hangul Syllable */ + [0xbe08, 0xbe08], /* Hangul Syllable */ + [0xbe09, 0xbe09], /* Hangul Syllable */ + [0xbe0a, 0xbe0a], /* Hangul Syllable */ + [0xbe0b, 0xbe0b], /* Hangul Syllable */ + [0xbe0c, 0xbe0c], /* Hangul Syllable */ + [0xbe0d, 0xbe0d], /* Hangul Syllable */ + [0xbe0e, 0xbe0e], /* Hangul Syllable */ + [0xbe0f, 0xbe0f], /* Hangul Syllable */ + [0xbe10, 0xbe10], /* Hangul Syllable */ + [0xbe11, 0xbe11], /* Hangul Syllable */ + [0xbe12, 0xbe12], /* Hangul Syllable */ + [0xbe13, 0xbe13], /* Hangul Syllable */ + [0xbe14, 0xbe14], /* Hangul Syllable */ + [0xbe15, 0xbe15], /* Hangul Syllable */ + [0xbe16, 0xbe16], /* Hangul Syllable */ + [0xbe17, 0xbe17], /* Hangul Syllable */ + [0xbe18, 0xbe18], /* Hangul Syllable */ + [0xbe19, 0xbe19], /* Hangul Syllable */ + [0xbe1a, 0xbe1a], /* Hangul Syllable */ + [0xbe1b, 0xbe1b], /* Hangul Syllable */ + [0xbe1c, 0xbe1c], /* Hangul Syllable */ + [0xbe1d, 0xbe1d], /* Hangul Syllable */ + [0xbe1e, 0xbe1e], /* Hangul Syllable */ + [0xbe1f, 0xbe1f], /* Hangul Syllable */ + [0xbe20, 0xbe20], /* Hangul Syllable */ + [0xbe21, 0xbe21], /* Hangul Syllable */ + [0xbe22, 0xbe22], /* Hangul Syllable */ + [0xbe23, 0xbe23], /* Hangul Syllable */ + [0xbe24, 0xbe24], /* Hangul Syllable */ + [0xbe25, 0xbe25], /* Hangul Syllable */ + [0xbe26, 0xbe26], /* Hangul Syllable */ + [0xbe27, 0xbe27], /* Hangul Syllable */ + [0xbe28, 0xbe28], /* Hangul Syllable */ + [0xbe29, 0xbe29], /* Hangul Syllable */ + [0xbe2a, 0xbe2a], /* Hangul Syllable */ + [0xbe2b, 0xbe2b], /* Hangul Syllable */ + [0xbe2c, 0xbe2c], /* Hangul Syllable */ + [0xbe2d, 0xbe2d], /* Hangul Syllable */ + [0xbe2e, 0xbe2e], /* Hangul Syllable */ + [0xbe2f, 0xbe2f], /* Hangul Syllable */ + [0xbe30, 0xbe30], /* Hangul Syllable */ + [0xbe31, 0xbe31], /* Hangul Syllable */ + [0xbe32, 0xbe32], /* Hangul Syllable */ + [0xbe33, 0xbe33], /* Hangul Syllable */ + [0xbe34, 0xbe34], /* Hangul Syllable */ + [0xbe35, 0xbe35], /* Hangul Syllable */ + [0xbe36, 0xbe36], /* Hangul Syllable */ + [0xbe37, 0xbe37], /* Hangul Syllable */ + [0xbe38, 0xbe38], /* Hangul Syllable */ + [0xbe39, 0xbe39], /* Hangul Syllable */ + [0xbe3a, 0xbe3a], /* Hangul Syllable */ + [0xbe3b, 0xbe3b], /* Hangul Syllable */ + [0xbe3c, 0xbe3c], /* Hangul Syllable */ + [0xbe3d, 0xbe3d], /* Hangul Syllable */ + [0xbe3e, 0xbe3e], /* Hangul Syllable */ + [0xbe3f, 0xbe3f], /* Hangul Syllable */ + [0xbe40, 0xbe40], /* Hangul Syllable */ + [0xbe41, 0xbe41], /* Hangul Syllable */ + [0xbe42, 0xbe42], /* Hangul Syllable */ + [0xbe43, 0xbe43], /* Hangul Syllable */ + [0xbe44, 0xbe44], /* Hangul Syllable */ + [0xbe45, 0xbe45], /* Hangul Syllable */ + [0xbe46, 0xbe46], /* Hangul Syllable */ + [0xbe47, 0xbe47], /* Hangul Syllable */ + [0xbe48, 0xbe48], /* Hangul Syllable */ + [0xbe49, 0xbe49], /* Hangul Syllable */ + [0xbe4a, 0xbe4a], /* Hangul Syllable */ + [0xbe4b, 0xbe4b], /* Hangul Syllable */ + [0xbe4c, 0xbe4c], /* Hangul Syllable */ + [0xbe4d, 0xbe4d], /* Hangul Syllable */ + [0xbe4e, 0xbe4e], /* Hangul Syllable */ + [0xbe4f, 0xbe4f], /* Hangul Syllable */ + [0xbe50, 0xbe50], /* Hangul Syllable */ + [0xbe51, 0xbe51], /* Hangul Syllable */ + [0xbe52, 0xbe52], /* Hangul Syllable */ + [0xbe53, 0xbe53], /* Hangul Syllable */ + [0xbe54, 0xbe54], /* Hangul Syllable */ + [0xbe55, 0xbe55], /* Hangul Syllable */ + [0xbe56, 0xbe56], /* Hangul Syllable */ + [0xbe57, 0xbe57], /* Hangul Syllable */ + [0xbe58, 0xbe58], /* Hangul Syllable */ + [0xbe59, 0xbe59], /* Hangul Syllable */ + [0xbe5a, 0xbe5a], /* Hangul Syllable */ + [0xbe5b, 0xbe5b], /* Hangul Syllable */ + [0xbe5c, 0xbe5c], /* Hangul Syllable */ + [0xbe5d, 0xbe5d], /* Hangul Syllable */ + [0xbe5e, 0xbe5e], /* Hangul Syllable */ + [0xbe5f, 0xbe5f], /* Hangul Syllable */ + [0xbe60, 0xbe60], /* Hangul Syllable */ + [0xbe61, 0xbe61], /* Hangul Syllable */ + [0xbe62, 0xbe62], /* Hangul Syllable */ + [0xbe63, 0xbe63], /* Hangul Syllable */ + [0xbe64, 0xbe64], /* Hangul Syllable */ + [0xbe65, 0xbe65], /* Hangul Syllable */ + [0xbe66, 0xbe66], /* Hangul Syllable */ + [0xbe67, 0xbe67], /* Hangul Syllable */ + [0xbe68, 0xbe68], /* Hangul Syllable */ + [0xbe69, 0xbe69], /* Hangul Syllable */ + [0xbe6a, 0xbe6a], /* Hangul Syllable */ + [0xbe6b, 0xbe6b], /* Hangul Syllable */ + [0xbe6c, 0xbe6c], /* Hangul Syllable */ + [0xbe6d, 0xbe6d], /* Hangul Syllable */ + [0xbe6e, 0xbe6e], /* Hangul Syllable */ + [0xbe6f, 0xbe6f], /* Hangul Syllable */ + [0xbe70, 0xbe70], /* Hangul Syllable */ + [0xbe71, 0xbe71], /* Hangul Syllable */ + [0xbe72, 0xbe72], /* Hangul Syllable */ + [0xbe73, 0xbe73], /* Hangul Syllable */ + [0xbe74, 0xbe74], /* Hangul Syllable */ + [0xbe75, 0xbe75], /* Hangul Syllable */ + [0xbe76, 0xbe76], /* Hangul Syllable */ + [0xbe77, 0xbe77], /* Hangul Syllable */ + [0xbe78, 0xbe78], /* Hangul Syllable */ + [0xbe79, 0xbe79], /* Hangul Syllable */ + [0xbe7a, 0xbe7a], /* Hangul Syllable */ + [0xbe7b, 0xbe7b], /* Hangul Syllable */ + [0xbe7c, 0xbe7c], /* Hangul Syllable */ + [0xbe7d, 0xbe7d], /* Hangul Syllable */ + [0xbe7e, 0xbe7e], /* Hangul Syllable */ + [0xbe7f, 0xbe7f], /* Hangul Syllable */ + [0xbe80, 0xbe80], /* Hangul Syllable */ + [0xbe81, 0xbe81], /* Hangul Syllable */ + [0xbe82, 0xbe82], /* Hangul Syllable */ + [0xbe83, 0xbe83], /* Hangul Syllable */ + [0xbe84, 0xbe84], /* Hangul Syllable */ + [0xbe85, 0xbe85], /* Hangul Syllable */ + [0xbe86, 0xbe86], /* Hangul Syllable */ + [0xbe87, 0xbe87], /* Hangul Syllable */ + [0xbe88, 0xbe88], /* Hangul Syllable */ + [0xbe89, 0xbe89], /* Hangul Syllable */ + [0xbe8a, 0xbe8a], /* Hangul Syllable */ + [0xbe8b, 0xbe8b], /* Hangul Syllable */ + [0xbe8c, 0xbe8c], /* Hangul Syllable */ + [0xbe8d, 0xbe8d], /* Hangul Syllable */ + [0xbe8e, 0xbe8e], /* Hangul Syllable */ + [0xbe8f, 0xbe8f], /* Hangul Syllable */ + [0xbe90, 0xbe90], /* Hangul Syllable */ + [0xbe91, 0xbe91], /* Hangul Syllable */ + [0xbe92, 0xbe92], /* Hangul Syllable */ + [0xbe93, 0xbe93], /* Hangul Syllable */ + [0xbe94, 0xbe94], /* Hangul Syllable */ + [0xbe95, 0xbe95], /* Hangul Syllable */ + [0xbe96, 0xbe96], /* Hangul Syllable */ + [0xbe97, 0xbe97], /* Hangul Syllable */ + [0xbe98, 0xbe98], /* Hangul Syllable */ + [0xbe99, 0xbe99], /* Hangul Syllable */ + [0xbe9a, 0xbe9a], /* Hangul Syllable */ + [0xbe9b, 0xbe9b], /* Hangul Syllable */ + [0xbe9c, 0xbe9c], /* Hangul Syllable */ + [0xbe9d, 0xbe9d], /* Hangul Syllable */ + [0xbe9e, 0xbe9e], /* Hangul Syllable */ + [0xbe9f, 0xbe9f], /* Hangul Syllable */ + [0xbea0, 0xbea0], /* Hangul Syllable */ + [0xbea1, 0xbea1], /* Hangul Syllable */ + [0xbea2, 0xbea2], /* Hangul Syllable */ + [0xbea3, 0xbea3], /* Hangul Syllable */ + [0xbea4, 0xbea4], /* Hangul Syllable */ + [0xbea5, 0xbea5], /* Hangul Syllable */ + [0xbea6, 0xbea6], /* Hangul Syllable */ + [0xbea7, 0xbea7], /* Hangul Syllable */ + [0xbea8, 0xbea8], /* Hangul Syllable */ + [0xbea9, 0xbea9], /* Hangul Syllable */ + [0xbeaa, 0xbeaa], /* Hangul Syllable */ + [0xbeab, 0xbeab], /* Hangul Syllable */ + [0xbeac, 0xbeac], /* Hangul Syllable */ + [0xbead, 0xbead], /* Hangul Syllable */ + [0xbeae, 0xbeae], /* Hangul Syllable */ + [0xbeaf, 0xbeaf], /* Hangul Syllable */ + [0xbeb0, 0xbeb0], /* Hangul Syllable */ + [0xbeb1, 0xbeb1], /* Hangul Syllable */ + [0xbeb2, 0xbeb2], /* Hangul Syllable */ + [0xbeb3, 0xbeb3], /* Hangul Syllable */ + [0xbeb4, 0xbeb4], /* Hangul Syllable */ + [0xbeb5, 0xbeb5], /* Hangul Syllable */ + [0xbeb6, 0xbeb6], /* Hangul Syllable */ + [0xbeb7, 0xbeb7], /* Hangul Syllable */ + [0xbeb8, 0xbeb8], /* Hangul Syllable */ + [0xbeb9, 0xbeb9], /* Hangul Syllable */ + [0xbeba, 0xbeba], /* Hangul Syllable */ + [0xbebb, 0xbebb], /* Hangul Syllable */ + [0xbebc, 0xbebc], /* Hangul Syllable */ + [0xbebd, 0xbebd], /* Hangul Syllable */ + [0xbebe, 0xbebe], /* Hangul Syllable */ + [0xbebf, 0xbebf], /* Hangul Syllable */ + [0xbec0, 0xbec0], /* Hangul Syllable */ + [0xbec1, 0xbec1], /* Hangul Syllable */ + [0xbec2, 0xbec2], /* Hangul Syllable */ + [0xbec3, 0xbec3], /* Hangul Syllable */ + [0xbec4, 0xbec4], /* Hangul Syllable */ + [0xbec5, 0xbec5], /* Hangul Syllable */ + [0xbec6, 0xbec6], /* Hangul Syllable */ + [0xbec7, 0xbec7], /* Hangul Syllable */ + [0xbec8, 0xbec8], /* Hangul Syllable */ + [0xbec9, 0xbec9], /* Hangul Syllable */ + [0xbeca, 0xbeca], /* Hangul Syllable */ + [0xbecb, 0xbecb], /* Hangul Syllable */ + [0xbecc, 0xbecc], /* Hangul Syllable */ + [0xbecd, 0xbecd], /* Hangul Syllable */ + [0xbece, 0xbece], /* Hangul Syllable */ + [0xbecf, 0xbecf], /* Hangul Syllable */ + [0xbed0, 0xbed0], /* Hangul Syllable */ + [0xbed1, 0xbed1], /* Hangul Syllable */ + [0xbed2, 0xbed2], /* Hangul Syllable */ + [0xbed3, 0xbed3], /* Hangul Syllable */ + [0xbed4, 0xbed4], /* Hangul Syllable */ + [0xbed5, 0xbed5], /* Hangul Syllable */ + [0xbed6, 0xbed6], /* Hangul Syllable */ + [0xbed7, 0xbed7], /* Hangul Syllable */ + [0xbed8, 0xbed8], /* Hangul Syllable */ + [0xbed9, 0xbed9], /* Hangul Syllable */ + [0xbeda, 0xbeda], /* Hangul Syllable */ + [0xbedb, 0xbedb], /* Hangul Syllable */ + [0xbedc, 0xbedc], /* Hangul Syllable */ + [0xbedd, 0xbedd], /* Hangul Syllable */ + [0xbede, 0xbede], /* Hangul Syllable */ + [0xbedf, 0xbedf], /* Hangul Syllable */ + [0xbee0, 0xbee0], /* Hangul Syllable */ + [0xbee1, 0xbee1], /* Hangul Syllable */ + [0xbee2, 0xbee2], /* Hangul Syllable */ + [0xbee3, 0xbee3], /* Hangul Syllable */ + [0xbee4, 0xbee4], /* Hangul Syllable */ + [0xbee5, 0xbee5], /* Hangul Syllable */ + [0xbee6, 0xbee6], /* Hangul Syllable */ + [0xbee7, 0xbee7], /* Hangul Syllable */ + [0xbee8, 0xbee8], /* Hangul Syllable */ + [0xbee9, 0xbee9], /* Hangul Syllable */ + [0xbeea, 0xbeea], /* Hangul Syllable */ + [0xbeeb, 0xbeeb], /* Hangul Syllable */ + [0xbeec, 0xbeec], /* Hangul Syllable */ + [0xbeed, 0xbeed], /* Hangul Syllable */ + [0xbeee, 0xbeee], /* Hangul Syllable */ + [0xbeef, 0xbeef], /* Hangul Syllable */ + [0xbef0, 0xbef0], /* Hangul Syllable */ + [0xbef1, 0xbef1], /* Hangul Syllable */ + [0xbef2, 0xbef2], /* Hangul Syllable */ + [0xbef3, 0xbef3], /* Hangul Syllable */ + [0xbef4, 0xbef4], /* Hangul Syllable */ + [0xbef5, 0xbef5], /* Hangul Syllable */ + [0xbef6, 0xbef6], /* Hangul Syllable */ + [0xbef7, 0xbef7], /* Hangul Syllable */ + [0xbef8, 0xbef8], /* Hangul Syllable */ + [0xbef9, 0xbef9], /* Hangul Syllable */ + [0xbefa, 0xbefa], /* Hangul Syllable */ + [0xbefb, 0xbefb], /* Hangul Syllable */ + [0xbefc, 0xbefc], /* Hangul Syllable */ + [0xbefd, 0xbefd], /* Hangul Syllable */ + [0xbefe, 0xbefe], /* Hangul Syllable */ + [0xbeff, 0xbeff], /* Hangul Syllable */ + [0xbf00, 0xbf00], /* Hangul Syllable */ + [0xbf01, 0xbf01], /* Hangul Syllable */ + [0xbf02, 0xbf02], /* Hangul Syllable */ + [0xbf03, 0xbf03], /* Hangul Syllable */ + [0xbf04, 0xbf04], /* Hangul Syllable */ + [0xbf05, 0xbf05], /* Hangul Syllable */ + [0xbf06, 0xbf06], /* Hangul Syllable */ + [0xbf07, 0xbf07], /* Hangul Syllable */ + [0xbf08, 0xbf08], /* Hangul Syllable */ + [0xbf09, 0xbf09], /* Hangul Syllable */ + [0xbf0a, 0xbf0a], /* Hangul Syllable */ + [0xbf0b, 0xbf0b], /* Hangul Syllable */ + [0xbf0c, 0xbf0c], /* Hangul Syllable */ + [0xbf0d, 0xbf0d], /* Hangul Syllable */ + [0xbf0e, 0xbf0e], /* Hangul Syllable */ + [0xbf0f, 0xbf0f], /* Hangul Syllable */ + [0xbf10, 0xbf10], /* Hangul Syllable */ + [0xbf11, 0xbf11], /* Hangul Syllable */ + [0xbf12, 0xbf12], /* Hangul Syllable */ + [0xbf13, 0xbf13], /* Hangul Syllable */ + [0xbf14, 0xbf14], /* Hangul Syllable */ + [0xbf15, 0xbf15], /* Hangul Syllable */ + [0xbf16, 0xbf16], /* Hangul Syllable */ + [0xbf17, 0xbf17], /* Hangul Syllable */ + [0xbf18, 0xbf18], /* Hangul Syllable */ + [0xbf19, 0xbf19], /* Hangul Syllable */ + [0xbf1a, 0xbf1a], /* Hangul Syllable */ + [0xbf1b, 0xbf1b], /* Hangul Syllable */ + [0xbf1c, 0xbf1c], /* Hangul Syllable */ + [0xbf1d, 0xbf1d], /* Hangul Syllable */ + [0xbf1e, 0xbf1e], /* Hangul Syllable */ + [0xbf1f, 0xbf1f], /* Hangul Syllable */ + [0xbf20, 0xbf20], /* Hangul Syllable */ + [0xbf21, 0xbf21], /* Hangul Syllable */ + [0xbf22, 0xbf22], /* Hangul Syllable */ + [0xbf23, 0xbf23], /* Hangul Syllable */ + [0xbf24, 0xbf24], /* Hangul Syllable */ + [0xbf25, 0xbf25], /* Hangul Syllable */ + [0xbf26, 0xbf26], /* Hangul Syllable */ + [0xbf27, 0xbf27], /* Hangul Syllable */ + [0xbf28, 0xbf28], /* Hangul Syllable */ + [0xbf29, 0xbf29], /* Hangul Syllable */ + [0xbf2a, 0xbf2a], /* Hangul Syllable */ + [0xbf2b, 0xbf2b], /* Hangul Syllable */ + [0xbf2c, 0xbf2c], /* Hangul Syllable */ + [0xbf2d, 0xbf2d], /* Hangul Syllable */ + [0xbf2e, 0xbf2e], /* Hangul Syllable */ + [0xbf2f, 0xbf2f], /* Hangul Syllable */ + [0xbf30, 0xbf30], /* Hangul Syllable */ + [0xbf31, 0xbf31], /* Hangul Syllable */ + [0xbf32, 0xbf32], /* Hangul Syllable */ + [0xbf33, 0xbf33], /* Hangul Syllable */ + [0xbf34, 0xbf34], /* Hangul Syllable */ + [0xbf35, 0xbf35], /* Hangul Syllable */ + [0xbf36, 0xbf36], /* Hangul Syllable */ + [0xbf37, 0xbf37], /* Hangul Syllable */ + [0xbf38, 0xbf38], /* Hangul Syllable */ + [0xbf39, 0xbf39], /* Hangul Syllable */ + [0xbf3a, 0xbf3a], /* Hangul Syllable */ + [0xbf3b, 0xbf3b], /* Hangul Syllable */ + [0xbf3c, 0xbf3c], /* Hangul Syllable */ + [0xbf3d, 0xbf3d], /* Hangul Syllable */ + [0xbf3e, 0xbf3e], /* Hangul Syllable */ + [0xbf3f, 0xbf3f], /* Hangul Syllable */ + [0xbf40, 0xbf40], /* Hangul Syllable */ + [0xbf41, 0xbf41], /* Hangul Syllable */ + [0xbf42, 0xbf42], /* Hangul Syllable */ + [0xbf43, 0xbf43], /* Hangul Syllable */ + [0xbf44, 0xbf44], /* Hangul Syllable */ + [0xbf45, 0xbf45], /* Hangul Syllable */ + [0xbf46, 0xbf46], /* Hangul Syllable */ + [0xbf47, 0xbf47], /* Hangul Syllable */ + [0xbf48, 0xbf48], /* Hangul Syllable */ + [0xbf49, 0xbf49], /* Hangul Syllable */ + [0xbf4a, 0xbf4a], /* Hangul Syllable */ + [0xbf4b, 0xbf4b], /* Hangul Syllable */ + [0xbf4c, 0xbf4c], /* Hangul Syllable */ + [0xbf4d, 0xbf4d], /* Hangul Syllable */ + [0xbf4e, 0xbf4e], /* Hangul Syllable */ + [0xbf4f, 0xbf4f], /* Hangul Syllable */ + [0xbf50, 0xbf50], /* Hangul Syllable */ + [0xbf51, 0xbf51], /* Hangul Syllable */ + [0xbf52, 0xbf52], /* Hangul Syllable */ + [0xbf53, 0xbf53], /* Hangul Syllable */ + [0xbf54, 0xbf54], /* Hangul Syllable */ + [0xbf55, 0xbf55], /* Hangul Syllable */ + [0xbf56, 0xbf56], /* Hangul Syllable */ + [0xbf57, 0xbf57], /* Hangul Syllable */ + [0xbf58, 0xbf58], /* Hangul Syllable */ + [0xbf59, 0xbf59], /* Hangul Syllable */ + [0xbf5a, 0xbf5a], /* Hangul Syllable */ + [0xbf5b, 0xbf5b], /* Hangul Syllable */ + [0xbf5c, 0xbf5c], /* Hangul Syllable */ + [0xbf5d, 0xbf5d], /* Hangul Syllable */ + [0xbf5e, 0xbf5e], /* Hangul Syllable */ + [0xbf5f, 0xbf5f], /* Hangul Syllable */ + [0xbf60, 0xbf60], /* Hangul Syllable */ + [0xbf61, 0xbf61], /* Hangul Syllable */ + [0xbf62, 0xbf62], /* Hangul Syllable */ + [0xbf63, 0xbf63], /* Hangul Syllable */ + [0xbf64, 0xbf64], /* Hangul Syllable */ + [0xbf65, 0xbf65], /* Hangul Syllable */ + [0xbf66, 0xbf66], /* Hangul Syllable */ + [0xbf67, 0xbf67], /* Hangul Syllable */ + [0xbf68, 0xbf68], /* Hangul Syllable */ + [0xbf69, 0xbf69], /* Hangul Syllable */ + [0xbf6a, 0xbf6a], /* Hangul Syllable */ + [0xbf6b, 0xbf6b], /* Hangul Syllable */ + [0xbf6c, 0xbf6c], /* Hangul Syllable */ + [0xbf6d, 0xbf6d], /* Hangul Syllable */ + [0xbf6e, 0xbf6e], /* Hangul Syllable */ + [0xbf6f, 0xbf6f], /* Hangul Syllable */ + [0xbf70, 0xbf70], /* Hangul Syllable */ + [0xbf71, 0xbf71], /* Hangul Syllable */ + [0xbf72, 0xbf72], /* Hangul Syllable */ + [0xbf73, 0xbf73], /* Hangul Syllable */ + [0xbf74, 0xbf74], /* Hangul Syllable */ + [0xbf75, 0xbf75], /* Hangul Syllable */ + [0xbf76, 0xbf76], /* Hangul Syllable */ + [0xbf77, 0xbf77], /* Hangul Syllable */ + [0xbf78, 0xbf78], /* Hangul Syllable */ + [0xbf79, 0xbf79], /* Hangul Syllable */ + [0xbf7a, 0xbf7a], /* Hangul Syllable */ + [0xbf7b, 0xbf7b], /* Hangul Syllable */ + [0xbf7c, 0xbf7c], /* Hangul Syllable */ + [0xbf7d, 0xbf7d], /* Hangul Syllable */ + [0xbf7e, 0xbf7e], /* Hangul Syllable */ + [0xbf7f, 0xbf7f], /* Hangul Syllable */ + [0xbf80, 0xbf80], /* Hangul Syllable */ + [0xbf81, 0xbf81], /* Hangul Syllable */ + [0xbf82, 0xbf82], /* Hangul Syllable */ + [0xbf83, 0xbf83], /* Hangul Syllable */ + [0xbf84, 0xbf84], /* Hangul Syllable */ + [0xbf85, 0xbf85], /* Hangul Syllable */ + [0xbf86, 0xbf86], /* Hangul Syllable */ + [0xbf87, 0xbf87], /* Hangul Syllable */ + [0xbf88, 0xbf88], /* Hangul Syllable */ + [0xbf89, 0xbf89], /* Hangul Syllable */ + [0xbf8a, 0xbf8a], /* Hangul Syllable */ + [0xbf8b, 0xbf8b], /* Hangul Syllable */ + [0xbf8c, 0xbf8c], /* Hangul Syllable */ + [0xbf8d, 0xbf8d], /* Hangul Syllable */ + [0xbf8e, 0xbf8e], /* Hangul Syllable */ + [0xbf8f, 0xbf8f], /* Hangul Syllable */ + [0xbf90, 0xbf90], /* Hangul Syllable */ + [0xbf91, 0xbf91], /* Hangul Syllable */ + [0xbf92, 0xbf92], /* Hangul Syllable */ + [0xbf93, 0xbf93], /* Hangul Syllable */ + [0xbf94, 0xbf94], /* Hangul Syllable */ + [0xbf95, 0xbf95], /* Hangul Syllable */ + [0xbf96, 0xbf96], /* Hangul Syllable */ + [0xbf97, 0xbf97], /* Hangul Syllable */ + [0xbf98, 0xbf98], /* Hangul Syllable */ + [0xbf99, 0xbf99], /* Hangul Syllable */ + [0xbf9a, 0xbf9a], /* Hangul Syllable */ + [0xbf9b, 0xbf9b], /* Hangul Syllable */ + [0xbf9c, 0xbf9c], /* Hangul Syllable */ + [0xbf9d, 0xbf9d], /* Hangul Syllable */ + [0xbf9e, 0xbf9e], /* Hangul Syllable */ + [0xbf9f, 0xbf9f], /* Hangul Syllable */ + [0xbfa0, 0xbfa0], /* Hangul Syllable */ + [0xbfa1, 0xbfa1], /* Hangul Syllable */ + [0xbfa2, 0xbfa2], /* Hangul Syllable */ + [0xbfa3, 0xbfa3], /* Hangul Syllable */ + [0xbfa4, 0xbfa4], /* Hangul Syllable */ + [0xbfa5, 0xbfa5], /* Hangul Syllable */ + [0xbfa6, 0xbfa6], /* Hangul Syllable */ + [0xbfa7, 0xbfa7], /* Hangul Syllable */ + [0xbfa8, 0xbfa8], /* Hangul Syllable */ + [0xbfa9, 0xbfa9], /* Hangul Syllable */ + [0xbfaa, 0xbfaa], /* Hangul Syllable */ + [0xbfab, 0xbfab], /* Hangul Syllable */ + [0xbfac, 0xbfac], /* Hangul Syllable */ + [0xbfad, 0xbfad], /* Hangul Syllable */ + [0xbfae, 0xbfae], /* Hangul Syllable */ + [0xbfaf, 0xbfaf], /* Hangul Syllable */ + [0xbfb0, 0xbfb0], /* Hangul Syllable */ + [0xbfb1, 0xbfb1], /* Hangul Syllable */ + [0xbfb2, 0xbfb2], /* Hangul Syllable */ + [0xbfb3, 0xbfb3], /* Hangul Syllable */ + [0xbfb4, 0xbfb4], /* Hangul Syllable */ + [0xbfb5, 0xbfb5], /* Hangul Syllable */ + [0xbfb6, 0xbfb6], /* Hangul Syllable */ + [0xbfb7, 0xbfb7], /* Hangul Syllable */ + [0xbfb8, 0xbfb8], /* Hangul Syllable */ + [0xbfb9, 0xbfb9], /* Hangul Syllable */ + [0xbfba, 0xbfba], /* Hangul Syllable */ + [0xbfbb, 0xbfbb], /* Hangul Syllable */ + [0xbfbc, 0xbfbc], /* Hangul Syllable */ + [0xbfbd, 0xbfbd], /* Hangul Syllable */ + [0xbfbe, 0xbfbe], /* Hangul Syllable */ + [0xbfbf, 0xbfbf], /* Hangul Syllable */ + [0xbfc0, 0xbfc0], /* Hangul Syllable */ + [0xbfc1, 0xbfc1], /* Hangul Syllable */ + [0xbfc2, 0xbfc2], /* Hangul Syllable */ + [0xbfc3, 0xbfc3], /* Hangul Syllable */ + [0xbfc4, 0xbfc4], /* Hangul Syllable */ + [0xbfc5, 0xbfc5], /* Hangul Syllable */ + [0xbfc6, 0xbfc6], /* Hangul Syllable */ + [0xbfc7, 0xbfc7], /* Hangul Syllable */ + [0xbfc8, 0xbfc8], /* Hangul Syllable */ + [0xbfc9, 0xbfc9], /* Hangul Syllable */ + [0xbfca, 0xbfca], /* Hangul Syllable */ + [0xbfcb, 0xbfcb], /* Hangul Syllable */ + [0xbfcc, 0xbfcc], /* Hangul Syllable */ + [0xbfcd, 0xbfcd], /* Hangul Syllable */ + [0xbfce, 0xbfce], /* Hangul Syllable */ + [0xbfcf, 0xbfcf], /* Hangul Syllable */ + [0xbfd0, 0xbfd0], /* Hangul Syllable */ + [0xbfd1, 0xbfd1], /* Hangul Syllable */ + [0xbfd2, 0xbfd2], /* Hangul Syllable */ + [0xbfd3, 0xbfd3], /* Hangul Syllable */ + [0xbfd4, 0xbfd4], /* Hangul Syllable */ + [0xbfd5, 0xbfd5], /* Hangul Syllable */ + [0xbfd6, 0xbfd6], /* Hangul Syllable */ + [0xbfd7, 0xbfd7], /* Hangul Syllable */ + [0xbfd8, 0xbfd8], /* Hangul Syllable */ + [0xbfd9, 0xbfd9], /* Hangul Syllable */ + [0xbfda, 0xbfda], /* Hangul Syllable */ + [0xbfdb, 0xbfdb], /* Hangul Syllable */ + [0xbfdc, 0xbfdc], /* Hangul Syllable */ + [0xbfdd, 0xbfdd], /* Hangul Syllable */ + [0xbfde, 0xbfde], /* Hangul Syllable */ + [0xbfdf, 0xbfdf], /* Hangul Syllable */ + [0xbfe0, 0xbfe0], /* Hangul Syllable */ + [0xbfe1, 0xbfe1], /* Hangul Syllable */ + [0xbfe2, 0xbfe2], /* Hangul Syllable */ + [0xbfe3, 0xbfe3], /* Hangul Syllable */ + [0xbfe4, 0xbfe4], /* Hangul Syllable */ + [0xbfe5, 0xbfe5], /* Hangul Syllable */ + [0xbfe6, 0xbfe6], /* Hangul Syllable */ + [0xbfe7, 0xbfe7], /* Hangul Syllable */ + [0xbfe8, 0xbfe8], /* Hangul Syllable */ + [0xbfe9, 0xbfe9], /* Hangul Syllable */ + [0xbfea, 0xbfea], /* Hangul Syllable */ + [0xbfeb, 0xbfeb], /* Hangul Syllable */ + [0xbfec, 0xbfec], /* Hangul Syllable */ + [0xbfed, 0xbfed], /* Hangul Syllable */ + [0xbfee, 0xbfee], /* Hangul Syllable */ + [0xbfef, 0xbfef], /* Hangul Syllable */ + [0xbff0, 0xbff0], /* Hangul Syllable */ + [0xbff1, 0xbff1], /* Hangul Syllable */ + [0xbff2, 0xbff2], /* Hangul Syllable */ + [0xbff3, 0xbff3], /* Hangul Syllable */ + [0xbff4, 0xbff4], /* Hangul Syllable */ + [0xbff5, 0xbff5], /* Hangul Syllable */ + [0xbff6, 0xbff6], /* Hangul Syllable */ + [0xbff7, 0xbff7], /* Hangul Syllable */ + [0xbff8, 0xbff8], /* Hangul Syllable */ + [0xbff9, 0xbff9], /* Hangul Syllable */ + [0xbffa, 0xbffa], /* Hangul Syllable */ + [0xbffb, 0xbffb], /* Hangul Syllable */ + [0xbffc, 0xbffc], /* Hangul Syllable */ + [0xbffd, 0xbffd], /* Hangul Syllable */ + [0xbffe, 0xbffe], /* Hangul Syllable */ + [0xbfff, 0xbfff], /* Hangul Syllable */ + [0xc000, 0xc000], /* Hangul Syllable */ + [0xc001, 0xc001], /* Hangul Syllable */ + [0xc002, 0xc002], /* Hangul Syllable */ + [0xc003, 0xc003], /* Hangul Syllable */ + [0xc004, 0xc004], /* Hangul Syllable */ + [0xc005, 0xc005], /* Hangul Syllable */ + [0xc006, 0xc006], /* Hangul Syllable */ + [0xc007, 0xc007], /* Hangul Syllable */ + [0xc008, 0xc008], /* Hangul Syllable */ + [0xc009, 0xc009], /* Hangul Syllable */ + [0xc00a, 0xc00a], /* Hangul Syllable */ + [0xc00b, 0xc00b], /* Hangul Syllable */ + [0xc00c, 0xc00c], /* Hangul Syllable */ + [0xc00d, 0xc00d], /* Hangul Syllable */ + [0xc00e, 0xc00e], /* Hangul Syllable */ + [0xc00f, 0xc00f], /* Hangul Syllable */ + [0xc010, 0xc010], /* Hangul Syllable */ + [0xc011, 0xc011], /* Hangul Syllable */ + [0xc012, 0xc012], /* Hangul Syllable */ + [0xc013, 0xc013], /* Hangul Syllable */ + [0xc014, 0xc014], /* Hangul Syllable */ + [0xc015, 0xc015], /* Hangul Syllable */ + [0xc016, 0xc016], /* Hangul Syllable */ + [0xc017, 0xc017], /* Hangul Syllable */ + [0xc018, 0xc018], /* Hangul Syllable */ + [0xc019, 0xc019], /* Hangul Syllable */ + [0xc01a, 0xc01a], /* Hangul Syllable */ + [0xc01b, 0xc01b], /* Hangul Syllable */ + [0xc01c, 0xc01c], /* Hangul Syllable */ + [0xc01d, 0xc01d], /* Hangul Syllable */ + [0xc01e, 0xc01e], /* Hangul Syllable */ + [0xc01f, 0xc01f], /* Hangul Syllable */ + [0xc020, 0xc020], /* Hangul Syllable */ + [0xc021, 0xc021], /* Hangul Syllable */ + [0xc022, 0xc022], /* Hangul Syllable */ + [0xc023, 0xc023], /* Hangul Syllable */ + [0xc024, 0xc024], /* Hangul Syllable */ + [0xc025, 0xc025], /* Hangul Syllable */ + [0xc026, 0xc026], /* Hangul Syllable */ + [0xc027, 0xc027], /* Hangul Syllable */ + [0xc028, 0xc028], /* Hangul Syllable */ + [0xc029, 0xc029], /* Hangul Syllable */ + [0xc02a, 0xc02a], /* Hangul Syllable */ + [0xc02b, 0xc02b], /* Hangul Syllable */ + [0xc02c, 0xc02c], /* Hangul Syllable */ + [0xc02d, 0xc02d], /* Hangul Syllable */ + [0xc02e, 0xc02e], /* Hangul Syllable */ + [0xc02f, 0xc02f], /* Hangul Syllable */ + [0xc030, 0xc030], /* Hangul Syllable */ + [0xc031, 0xc031], /* Hangul Syllable */ + [0xc032, 0xc032], /* Hangul Syllable */ + [0xc033, 0xc033], /* Hangul Syllable */ + [0xc034, 0xc034], /* Hangul Syllable */ + [0xc035, 0xc035], /* Hangul Syllable */ + [0xc036, 0xc036], /* Hangul Syllable */ + [0xc037, 0xc037], /* Hangul Syllable */ + [0xc038, 0xc038], /* Hangul Syllable */ + [0xc039, 0xc039], /* Hangul Syllable */ + [0xc03a, 0xc03a], /* Hangul Syllable */ + [0xc03b, 0xc03b], /* Hangul Syllable */ + [0xc03c, 0xc03c], /* Hangul Syllable */ + [0xc03d, 0xc03d], /* Hangul Syllable */ + [0xc03e, 0xc03e], /* Hangul Syllable */ + [0xc03f, 0xc03f], /* Hangul Syllable */ + [0xc040, 0xc040], /* Hangul Syllable */ + [0xc041, 0xc041], /* Hangul Syllable */ + [0xc042, 0xc042], /* Hangul Syllable */ + [0xc043, 0xc043], /* Hangul Syllable */ + [0xc044, 0xc044], /* Hangul Syllable */ + [0xc045, 0xc045], /* Hangul Syllable */ + [0xc046, 0xc046], /* Hangul Syllable */ + [0xc047, 0xc047], /* Hangul Syllable */ + [0xc048, 0xc048], /* Hangul Syllable */ + [0xc049, 0xc049], /* Hangul Syllable */ + [0xc04a, 0xc04a], /* Hangul Syllable */ + [0xc04b, 0xc04b], /* Hangul Syllable */ + [0xc04c, 0xc04c], /* Hangul Syllable */ + [0xc04d, 0xc04d], /* Hangul Syllable */ + [0xc04e, 0xc04e], /* Hangul Syllable */ + [0xc04f, 0xc04f], /* Hangul Syllable */ + [0xc050, 0xc050], /* Hangul Syllable */ + [0xc051, 0xc051], /* Hangul Syllable */ + [0xc052, 0xc052], /* Hangul Syllable */ + [0xc053, 0xc053], /* Hangul Syllable */ + [0xc054, 0xc054], /* Hangul Syllable */ + [0xc055, 0xc055], /* Hangul Syllable */ + [0xc056, 0xc056], /* Hangul Syllable */ + [0xc057, 0xc057], /* Hangul Syllable */ + [0xc058, 0xc058], /* Hangul Syllable */ + [0xc059, 0xc059], /* Hangul Syllable */ + [0xc05a, 0xc05a], /* Hangul Syllable */ + [0xc05b, 0xc05b], /* Hangul Syllable */ + [0xc05c, 0xc05c], /* Hangul Syllable */ + [0xc05d, 0xc05d], /* Hangul Syllable */ + [0xc05e, 0xc05e], /* Hangul Syllable */ + [0xc05f, 0xc05f], /* Hangul Syllable */ + [0xc060, 0xc060], /* Hangul Syllable */ + [0xc061, 0xc061], /* Hangul Syllable */ + [0xc062, 0xc062], /* Hangul Syllable */ + [0xc063, 0xc063], /* Hangul Syllable */ + [0xc064, 0xc064], /* Hangul Syllable */ + [0xc065, 0xc065], /* Hangul Syllable */ + [0xc066, 0xc066], /* Hangul Syllable */ + [0xc067, 0xc067], /* Hangul Syllable */ + [0xc068, 0xc068], /* Hangul Syllable */ + [0xc069, 0xc069], /* Hangul Syllable */ + [0xc06a, 0xc06a], /* Hangul Syllable */ + [0xc06b, 0xc06b], /* Hangul Syllable */ + [0xc06c, 0xc06c], /* Hangul Syllable */ + [0xc06d, 0xc06d], /* Hangul Syllable */ + [0xc06e, 0xc06e], /* Hangul Syllable */ + [0xc06f, 0xc06f], /* Hangul Syllable */ + [0xc070, 0xc070], /* Hangul Syllable */ + [0xc071, 0xc071], /* Hangul Syllable */ + [0xc072, 0xc072], /* Hangul Syllable */ + [0xc073, 0xc073], /* Hangul Syllable */ + [0xc074, 0xc074], /* Hangul Syllable */ + [0xc075, 0xc075], /* Hangul Syllable */ + [0xc076, 0xc076], /* Hangul Syllable */ + [0xc077, 0xc077], /* Hangul Syllable */ + [0xc078, 0xc078], /* Hangul Syllable */ + [0xc079, 0xc079], /* Hangul Syllable */ + [0xc07a, 0xc07a], /* Hangul Syllable */ + [0xc07b, 0xc07b], /* Hangul Syllable */ + [0xc07c, 0xc07c], /* Hangul Syllable */ + [0xc07d, 0xc07d], /* Hangul Syllable */ + [0xc07e, 0xc07e], /* Hangul Syllable */ + [0xc07f, 0xc07f], /* Hangul Syllable */ + [0xc080, 0xc080], /* Hangul Syllable */ + [0xc081, 0xc081], /* Hangul Syllable */ + [0xc082, 0xc082], /* Hangul Syllable */ + [0xc083, 0xc083], /* Hangul Syllable */ + [0xc084, 0xc084], /* Hangul Syllable */ + [0xc085, 0xc085], /* Hangul Syllable */ + [0xc086, 0xc086], /* Hangul Syllable */ + [0xc087, 0xc087], /* Hangul Syllable */ + [0xc088, 0xc088], /* Hangul Syllable */ + [0xc089, 0xc089], /* Hangul Syllable */ + [0xc08a, 0xc08a], /* Hangul Syllable */ + [0xc08b, 0xc08b], /* Hangul Syllable */ + [0xc08c, 0xc08c], /* Hangul Syllable */ + [0xc08d, 0xc08d], /* Hangul Syllable */ + [0xc08e, 0xc08e], /* Hangul Syllable */ + [0xc08f, 0xc08f], /* Hangul Syllable */ + [0xc090, 0xc090], /* Hangul Syllable */ + [0xc091, 0xc091], /* Hangul Syllable */ + [0xc092, 0xc092], /* Hangul Syllable */ + [0xc093, 0xc093], /* Hangul Syllable */ + [0xc094, 0xc094], /* Hangul Syllable */ + [0xc095, 0xc095], /* Hangul Syllable */ + [0xc096, 0xc096], /* Hangul Syllable */ + [0xc097, 0xc097], /* Hangul Syllable */ + [0xc098, 0xc098], /* Hangul Syllable */ + [0xc099, 0xc099], /* Hangul Syllable */ + [0xc09a, 0xc09a], /* Hangul Syllable */ + [0xc09b, 0xc09b], /* Hangul Syllable */ + [0xc09c, 0xc09c], /* Hangul Syllable */ + [0xc09d, 0xc09d], /* Hangul Syllable */ + [0xc09e, 0xc09e], /* Hangul Syllable */ + [0xc09f, 0xc09f], /* Hangul Syllable */ + [0xc0a0, 0xc0a0], /* Hangul Syllable */ + [0xc0a1, 0xc0a1], /* Hangul Syllable */ + [0xc0a2, 0xc0a2], /* Hangul Syllable */ + [0xc0a3, 0xc0a3], /* Hangul Syllable */ + [0xc0a4, 0xc0a4], /* Hangul Syllable */ + [0xc0a5, 0xc0a5], /* Hangul Syllable */ + [0xc0a6, 0xc0a6], /* Hangul Syllable */ + [0xc0a7, 0xc0a7], /* Hangul Syllable */ + [0xc0a8, 0xc0a8], /* Hangul Syllable */ + [0xc0a9, 0xc0a9], /* Hangul Syllable */ + [0xc0aa, 0xc0aa], /* Hangul Syllable */ + [0xc0ab, 0xc0ab], /* Hangul Syllable */ + [0xc0ac, 0xc0ac], /* Hangul Syllable */ + [0xc0ad, 0xc0ad], /* Hangul Syllable */ + [0xc0ae, 0xc0ae], /* Hangul Syllable */ + [0xc0af, 0xc0af], /* Hangul Syllable */ + [0xc0b0, 0xc0b0], /* Hangul Syllable */ + [0xc0b1, 0xc0b1], /* Hangul Syllable */ + [0xc0b2, 0xc0b2], /* Hangul Syllable */ + [0xc0b3, 0xc0b3], /* Hangul Syllable */ + [0xc0b4, 0xc0b4], /* Hangul Syllable */ + [0xc0b5, 0xc0b5], /* Hangul Syllable */ + [0xc0b6, 0xc0b6], /* Hangul Syllable */ + [0xc0b7, 0xc0b7], /* Hangul Syllable */ + [0xc0b8, 0xc0b8], /* Hangul Syllable */ + [0xc0b9, 0xc0b9], /* Hangul Syllable */ + [0xc0ba, 0xc0ba], /* Hangul Syllable */ + [0xc0bb, 0xc0bb], /* Hangul Syllable */ + [0xc0bc, 0xc0bc], /* Hangul Syllable */ + [0xc0bd, 0xc0bd], /* Hangul Syllable */ + [0xc0be, 0xc0be], /* Hangul Syllable */ + [0xc0bf, 0xc0bf], /* Hangul Syllable */ + [0xc0c0, 0xc0c0], /* Hangul Syllable */ + [0xc0c1, 0xc0c1], /* Hangul Syllable */ + [0xc0c2, 0xc0c2], /* Hangul Syllable */ + [0xc0c3, 0xc0c3], /* Hangul Syllable */ + [0xc0c4, 0xc0c4], /* Hangul Syllable */ + [0xc0c5, 0xc0c5], /* Hangul Syllable */ + [0xc0c6, 0xc0c6], /* Hangul Syllable */ + [0xc0c7, 0xc0c7], /* Hangul Syllable */ + [0xc0c8, 0xc0c8], /* Hangul Syllable */ + [0xc0c9, 0xc0c9], /* Hangul Syllable */ + [0xc0ca, 0xc0ca], /* Hangul Syllable */ + [0xc0cb, 0xc0cb], /* Hangul Syllable */ + [0xc0cc, 0xc0cc], /* Hangul Syllable */ + [0xc0cd, 0xc0cd], /* Hangul Syllable */ + [0xc0ce, 0xc0ce], /* Hangul Syllable */ + [0xc0cf, 0xc0cf], /* Hangul Syllable */ + [0xc0d0, 0xc0d0], /* Hangul Syllable */ + [0xc0d1, 0xc0d1], /* Hangul Syllable */ + [0xc0d2, 0xc0d2], /* Hangul Syllable */ + [0xc0d3, 0xc0d3], /* Hangul Syllable */ + [0xc0d4, 0xc0d4], /* Hangul Syllable */ + [0xc0d5, 0xc0d5], /* Hangul Syllable */ + [0xc0d6, 0xc0d6], /* Hangul Syllable */ + [0xc0d7, 0xc0d7], /* Hangul Syllable */ + [0xc0d8, 0xc0d8], /* Hangul Syllable */ + [0xc0d9, 0xc0d9], /* Hangul Syllable */ + [0xc0da, 0xc0da], /* Hangul Syllable */ + [0xc0db, 0xc0db], /* Hangul Syllable */ + [0xc0dc, 0xc0dc], /* Hangul Syllable */ + [0xc0dd, 0xc0dd], /* Hangul Syllable */ + [0xc0de, 0xc0de], /* Hangul Syllable */ + [0xc0df, 0xc0df], /* Hangul Syllable */ + [0xc0e0, 0xc0e0], /* Hangul Syllable */ + [0xc0e1, 0xc0e1], /* Hangul Syllable */ + [0xc0e2, 0xc0e2], /* Hangul Syllable */ + [0xc0e3, 0xc0e3], /* Hangul Syllable */ + [0xc0e4, 0xc0e4], /* Hangul Syllable */ + [0xc0e5, 0xc0e5], /* Hangul Syllable */ + [0xc0e6, 0xc0e6], /* Hangul Syllable */ + [0xc0e7, 0xc0e7], /* Hangul Syllable */ + [0xc0e8, 0xc0e8], /* Hangul Syllable */ + [0xc0e9, 0xc0e9], /* Hangul Syllable */ + [0xc0ea, 0xc0ea], /* Hangul Syllable */ + [0xc0eb, 0xc0eb], /* Hangul Syllable */ + [0xc0ec, 0xc0ec], /* Hangul Syllable */ + [0xc0ed, 0xc0ed], /* Hangul Syllable */ + [0xc0ee, 0xc0ee], /* Hangul Syllable */ + [0xc0ef, 0xc0ef], /* Hangul Syllable */ + [0xc0f0, 0xc0f0], /* Hangul Syllable */ + [0xc0f1, 0xc0f1], /* Hangul Syllable */ + [0xc0f2, 0xc0f2], /* Hangul Syllable */ + [0xc0f3, 0xc0f3], /* Hangul Syllable */ + [0xc0f4, 0xc0f4], /* Hangul Syllable */ + [0xc0f5, 0xc0f5], /* Hangul Syllable */ + [0xc0f6, 0xc0f6], /* Hangul Syllable */ + [0xc0f7, 0xc0f7], /* Hangul Syllable */ + [0xc0f8, 0xc0f8], /* Hangul Syllable */ + [0xc0f9, 0xc0f9], /* Hangul Syllable */ + [0xc0fa, 0xc0fa], /* Hangul Syllable */ + [0xc0fb, 0xc0fb], /* Hangul Syllable */ + [0xc0fc, 0xc0fc], /* Hangul Syllable */ + [0xc0fd, 0xc0fd], /* Hangul Syllable */ + [0xc0fe, 0xc0fe], /* Hangul Syllable */ + [0xc0ff, 0xc0ff], /* Hangul Syllable */ + [0xc100, 0xc100], /* Hangul Syllable */ + [0xc101, 0xc101], /* Hangul Syllable */ + [0xc102, 0xc102], /* Hangul Syllable */ + [0xc103, 0xc103], /* Hangul Syllable */ + [0xc104, 0xc104], /* Hangul Syllable */ + [0xc105, 0xc105], /* Hangul Syllable */ + [0xc106, 0xc106], /* Hangul Syllable */ + [0xc107, 0xc107], /* Hangul Syllable */ + [0xc108, 0xc108], /* Hangul Syllable */ + [0xc109, 0xc109], /* Hangul Syllable */ + [0xc10a, 0xc10a], /* Hangul Syllable */ + [0xc10b, 0xc10b], /* Hangul Syllable */ + [0xc10c, 0xc10c], /* Hangul Syllable */ + [0xc10d, 0xc10d], /* Hangul Syllable */ + [0xc10e, 0xc10e], /* Hangul Syllable */ + [0xc10f, 0xc10f], /* Hangul Syllable */ + [0xc110, 0xc110], /* Hangul Syllable */ + [0xc111, 0xc111], /* Hangul Syllable */ + [0xc112, 0xc112], /* Hangul Syllable */ + [0xc113, 0xc113], /* Hangul Syllable */ + [0xc114, 0xc114], /* Hangul Syllable */ + [0xc115, 0xc115], /* Hangul Syllable */ + [0xc116, 0xc116], /* Hangul Syllable */ + [0xc117, 0xc117], /* Hangul Syllable */ + [0xc118, 0xc118], /* Hangul Syllable */ + [0xc119, 0xc119], /* Hangul Syllable */ + [0xc11a, 0xc11a], /* Hangul Syllable */ + [0xc11b, 0xc11b], /* Hangul Syllable */ + [0xc11c, 0xc11c], /* Hangul Syllable */ + [0xc11d, 0xc11d], /* Hangul Syllable */ + [0xc11e, 0xc11e], /* Hangul Syllable */ + [0xc11f, 0xc11f], /* Hangul Syllable */ + [0xc120, 0xc120], /* Hangul Syllable */ + [0xc121, 0xc121], /* Hangul Syllable */ + [0xc122, 0xc122], /* Hangul Syllable */ + [0xc123, 0xc123], /* Hangul Syllable */ + [0xc124, 0xc124], /* Hangul Syllable */ + [0xc125, 0xc125], /* Hangul Syllable */ + [0xc126, 0xc126], /* Hangul Syllable */ + [0xc127, 0xc127], /* Hangul Syllable */ + [0xc128, 0xc128], /* Hangul Syllable */ + [0xc129, 0xc129], /* Hangul Syllable */ + [0xc12a, 0xc12a], /* Hangul Syllable */ + [0xc12b, 0xc12b], /* Hangul Syllable */ + [0xc12c, 0xc12c], /* Hangul Syllable */ + [0xc12d, 0xc12d], /* Hangul Syllable */ + [0xc12e, 0xc12e], /* Hangul Syllable */ + [0xc12f, 0xc12f], /* Hangul Syllable */ + [0xc130, 0xc130], /* Hangul Syllable */ + [0xc131, 0xc131], /* Hangul Syllable */ + [0xc132, 0xc132], /* Hangul Syllable */ + [0xc133, 0xc133], /* Hangul Syllable */ + [0xc134, 0xc134], /* Hangul Syllable */ + [0xc135, 0xc135], /* Hangul Syllable */ + [0xc136, 0xc136], /* Hangul Syllable */ + [0xc137, 0xc137], /* Hangul Syllable */ + [0xc138, 0xc138], /* Hangul Syllable */ + [0xc139, 0xc139], /* Hangul Syllable */ + [0xc13a, 0xc13a], /* Hangul Syllable */ + [0xc13b, 0xc13b], /* Hangul Syllable */ + [0xc13c, 0xc13c], /* Hangul Syllable */ + [0xc13d, 0xc13d], /* Hangul Syllable */ + [0xc13e, 0xc13e], /* Hangul Syllable */ + [0xc13f, 0xc13f], /* Hangul Syllable */ + [0xc140, 0xc140], /* Hangul Syllable */ + [0xc141, 0xc141], /* Hangul Syllable */ + [0xc142, 0xc142], /* Hangul Syllable */ + [0xc143, 0xc143], /* Hangul Syllable */ + [0xc144, 0xc144], /* Hangul Syllable */ + [0xc145, 0xc145], /* Hangul Syllable */ + [0xc146, 0xc146], /* Hangul Syllable */ + [0xc147, 0xc147], /* Hangul Syllable */ + [0xc148, 0xc148], /* Hangul Syllable */ + [0xc149, 0xc149], /* Hangul Syllable */ + [0xc14a, 0xc14a], /* Hangul Syllable */ + [0xc14b, 0xc14b], /* Hangul Syllable */ + [0xc14c, 0xc14c], /* Hangul Syllable */ + [0xc14d, 0xc14d], /* Hangul Syllable */ + [0xc14e, 0xc14e], /* Hangul Syllable */ + [0xc14f, 0xc14f], /* Hangul Syllable */ + [0xc150, 0xc150], /* Hangul Syllable */ + [0xc151, 0xc151], /* Hangul Syllable */ + [0xc152, 0xc152], /* Hangul Syllable */ + [0xc153, 0xc153], /* Hangul Syllable */ + [0xc154, 0xc154], /* Hangul Syllable */ + [0xc155, 0xc155], /* Hangul Syllable */ + [0xc156, 0xc156], /* Hangul Syllable */ + [0xc157, 0xc157], /* Hangul Syllable */ + [0xc158, 0xc158], /* Hangul Syllable */ + [0xc159, 0xc159], /* Hangul Syllable */ + [0xc15a, 0xc15a], /* Hangul Syllable */ + [0xc15b, 0xc15b], /* Hangul Syllable */ + [0xc15c, 0xc15c], /* Hangul Syllable */ + [0xc15d, 0xc15d], /* Hangul Syllable */ + [0xc15e, 0xc15e], /* Hangul Syllable */ + [0xc15f, 0xc15f], /* Hangul Syllable */ + [0xc160, 0xc160], /* Hangul Syllable */ + [0xc161, 0xc161], /* Hangul Syllable */ + [0xc162, 0xc162], /* Hangul Syllable */ + [0xc163, 0xc163], /* Hangul Syllable */ + [0xc164, 0xc164], /* Hangul Syllable */ + [0xc165, 0xc165], /* Hangul Syllable */ + [0xc166, 0xc166], /* Hangul Syllable */ + [0xc167, 0xc167], /* Hangul Syllable */ + [0xc168, 0xc168], /* Hangul Syllable */ + [0xc169, 0xc169], /* Hangul Syllable */ + [0xc16a, 0xc16a], /* Hangul Syllable */ + [0xc16b, 0xc16b], /* Hangul Syllable */ + [0xc16c, 0xc16c], /* Hangul Syllable */ + [0xc16d, 0xc16d], /* Hangul Syllable */ + [0xc16e, 0xc16e], /* Hangul Syllable */ + [0xc16f, 0xc16f], /* Hangul Syllable */ + [0xc170, 0xc170], /* Hangul Syllable */ + [0xc171, 0xc171], /* Hangul Syllable */ + [0xc172, 0xc172], /* Hangul Syllable */ + [0xc173, 0xc173], /* Hangul Syllable */ + [0xc174, 0xc174], /* Hangul Syllable */ + [0xc175, 0xc175], /* Hangul Syllable */ + [0xc176, 0xc176], /* Hangul Syllable */ + [0xc177, 0xc177], /* Hangul Syllable */ + [0xc178, 0xc178], /* Hangul Syllable */ + [0xc179, 0xc179], /* Hangul Syllable */ + [0xc17a, 0xc17a], /* Hangul Syllable */ + [0xc17b, 0xc17b], /* Hangul Syllable */ + [0xc17c, 0xc17c], /* Hangul Syllable */ + [0xc17d, 0xc17d], /* Hangul Syllable */ + [0xc17e, 0xc17e], /* Hangul Syllable */ + [0xc17f, 0xc17f], /* Hangul Syllable */ + [0xc180, 0xc180], /* Hangul Syllable */ + [0xc181, 0xc181], /* Hangul Syllable */ + [0xc182, 0xc182], /* Hangul Syllable */ + [0xc183, 0xc183], /* Hangul Syllable */ + [0xc184, 0xc184], /* Hangul Syllable */ + [0xc185, 0xc185], /* Hangul Syllable */ + [0xc186, 0xc186], /* Hangul Syllable */ + [0xc187, 0xc187], /* Hangul Syllable */ + [0xc188, 0xc188], /* Hangul Syllable */ + [0xc189, 0xc189], /* Hangul Syllable */ + [0xc18a, 0xc18a], /* Hangul Syllable */ + [0xc18b, 0xc18b], /* Hangul Syllable */ + [0xc18c, 0xc18c], /* Hangul Syllable */ + [0xc18d, 0xc18d], /* Hangul Syllable */ + [0xc18e, 0xc18e], /* Hangul Syllable */ + [0xc18f, 0xc18f], /* Hangul Syllable */ + [0xc190, 0xc190], /* Hangul Syllable */ + [0xc191, 0xc191], /* Hangul Syllable */ + [0xc192, 0xc192], /* Hangul Syllable */ + [0xc193, 0xc193], /* Hangul Syllable */ + [0xc194, 0xc194], /* Hangul Syllable */ + [0xc195, 0xc195], /* Hangul Syllable */ + [0xc196, 0xc196], /* Hangul Syllable */ + [0xc197, 0xc197], /* Hangul Syllable */ + [0xc198, 0xc198], /* Hangul Syllable */ + [0xc199, 0xc199], /* Hangul Syllable */ + [0xc19a, 0xc19a], /* Hangul Syllable */ + [0xc19b, 0xc19b], /* Hangul Syllable */ + [0xc19c, 0xc19c], /* Hangul Syllable */ + [0xc19d, 0xc19d], /* Hangul Syllable */ + [0xc19e, 0xc19e], /* Hangul Syllable */ + [0xc19f, 0xc19f], /* Hangul Syllable */ + [0xc1a0, 0xc1a0], /* Hangul Syllable */ + [0xc1a1, 0xc1a1], /* Hangul Syllable */ + [0xc1a2, 0xc1a2], /* Hangul Syllable */ + [0xc1a3, 0xc1a3], /* Hangul Syllable */ + [0xc1a4, 0xc1a4], /* Hangul Syllable */ + [0xc1a5, 0xc1a5], /* Hangul Syllable */ + [0xc1a6, 0xc1a6], /* Hangul Syllable */ + [0xc1a7, 0xc1a7], /* Hangul Syllable */ + [0xc1a8, 0xc1a8], /* Hangul Syllable */ + [0xc1a9, 0xc1a9], /* Hangul Syllable */ + [0xc1aa, 0xc1aa], /* Hangul Syllable */ + [0xc1ab, 0xc1ab], /* Hangul Syllable */ + [0xc1ac, 0xc1ac], /* Hangul Syllable */ + [0xc1ad, 0xc1ad], /* Hangul Syllable */ + [0xc1ae, 0xc1ae], /* Hangul Syllable */ + [0xc1af, 0xc1af], /* Hangul Syllable */ + [0xc1b0, 0xc1b0], /* Hangul Syllable */ + [0xc1b1, 0xc1b1], /* Hangul Syllable */ + [0xc1b2, 0xc1b2], /* Hangul Syllable */ + [0xc1b3, 0xc1b3], /* Hangul Syllable */ + [0xc1b4, 0xc1b4], /* Hangul Syllable */ + [0xc1b5, 0xc1b5], /* Hangul Syllable */ + [0xc1b6, 0xc1b6], /* Hangul Syllable */ + [0xc1b7, 0xc1b7], /* Hangul Syllable */ + [0xc1b8, 0xc1b8], /* Hangul Syllable */ + [0xc1b9, 0xc1b9], /* Hangul Syllable */ + [0xc1ba, 0xc1ba], /* Hangul Syllable */ + [0xc1bb, 0xc1bb], /* Hangul Syllable */ + [0xc1bc, 0xc1bc], /* Hangul Syllable */ + [0xc1bd, 0xc1bd], /* Hangul Syllable */ + [0xc1be, 0xc1be], /* Hangul Syllable */ + [0xc1bf, 0xc1bf], /* Hangul Syllable */ + [0xc1c0, 0xc1c0], /* Hangul Syllable */ + [0xc1c1, 0xc1c1], /* Hangul Syllable */ + [0xc1c2, 0xc1c2], /* Hangul Syllable */ + [0xc1c3, 0xc1c3], /* Hangul Syllable */ + [0xc1c4, 0xc1c4], /* Hangul Syllable */ + [0xc1c5, 0xc1c5], /* Hangul Syllable */ + [0xc1c6, 0xc1c6], /* Hangul Syllable */ + [0xc1c7, 0xc1c7], /* Hangul Syllable */ + [0xc1c8, 0xc1c8], /* Hangul Syllable */ + [0xc1c9, 0xc1c9], /* Hangul Syllable */ + [0xc1ca, 0xc1ca], /* Hangul Syllable */ + [0xc1cb, 0xc1cb], /* Hangul Syllable */ + [0xc1cc, 0xc1cc], /* Hangul Syllable */ + [0xc1cd, 0xc1cd], /* Hangul Syllable */ + [0xc1ce, 0xc1ce], /* Hangul Syllable */ + [0xc1cf, 0xc1cf], /* Hangul Syllable */ + [0xc1d0, 0xc1d0], /* Hangul Syllable */ + [0xc1d1, 0xc1d1], /* Hangul Syllable */ + [0xc1d2, 0xc1d2], /* Hangul Syllable */ + [0xc1d3, 0xc1d3], /* Hangul Syllable */ + [0xc1d4, 0xc1d4], /* Hangul Syllable */ + [0xc1d5, 0xc1d5], /* Hangul Syllable */ + [0xc1d6, 0xc1d6], /* Hangul Syllable */ + [0xc1d7, 0xc1d7], /* Hangul Syllable */ + [0xc1d8, 0xc1d8], /* Hangul Syllable */ + [0xc1d9, 0xc1d9], /* Hangul Syllable */ + [0xc1da, 0xc1da], /* Hangul Syllable */ + [0xc1db, 0xc1db], /* Hangul Syllable */ + [0xc1dc, 0xc1dc], /* Hangul Syllable */ + [0xc1dd, 0xc1dd], /* Hangul Syllable */ + [0xc1de, 0xc1de], /* Hangul Syllable */ + [0xc1df, 0xc1df], /* Hangul Syllable */ + [0xc1e0, 0xc1e0], /* Hangul Syllable */ + [0xc1e1, 0xc1e1], /* Hangul Syllable */ + [0xc1e2, 0xc1e2], /* Hangul Syllable */ + [0xc1e3, 0xc1e3], /* Hangul Syllable */ + [0xc1e4, 0xc1e4], /* Hangul Syllable */ + [0xc1e5, 0xc1e5], /* Hangul Syllable */ + [0xc1e6, 0xc1e6], /* Hangul Syllable */ + [0xc1e7, 0xc1e7], /* Hangul Syllable */ + [0xc1e8, 0xc1e8], /* Hangul Syllable */ + [0xc1e9, 0xc1e9], /* Hangul Syllable */ + [0xc1ea, 0xc1ea], /* Hangul Syllable */ + [0xc1eb, 0xc1eb], /* Hangul Syllable */ + [0xc1ec, 0xc1ec], /* Hangul Syllable */ + [0xc1ed, 0xc1ed], /* Hangul Syllable */ + [0xc1ee, 0xc1ee], /* Hangul Syllable */ + [0xc1ef, 0xc1ef], /* Hangul Syllable */ + [0xc1f0, 0xc1f0], /* Hangul Syllable */ + [0xc1f1, 0xc1f1], /* Hangul Syllable */ + [0xc1f2, 0xc1f2], /* Hangul Syllable */ + [0xc1f3, 0xc1f3], /* Hangul Syllable */ + [0xc1f4, 0xc1f4], /* Hangul Syllable */ + [0xc1f5, 0xc1f5], /* Hangul Syllable */ + [0xc1f6, 0xc1f6], /* Hangul Syllable */ + [0xc1f7, 0xc1f7], /* Hangul Syllable */ + [0xc1f8, 0xc1f8], /* Hangul Syllable */ + [0xc1f9, 0xc1f9], /* Hangul Syllable */ + [0xc1fa, 0xc1fa], /* Hangul Syllable */ + [0xc1fb, 0xc1fb], /* Hangul Syllable */ + [0xc1fc, 0xc1fc], /* Hangul Syllable */ + [0xc1fd, 0xc1fd], /* Hangul Syllable */ + [0xc1fe, 0xc1fe], /* Hangul Syllable */ + [0xc1ff, 0xc1ff], /* Hangul Syllable */ + [0xc200, 0xc200], /* Hangul Syllable */ + [0xc201, 0xc201], /* Hangul Syllable */ + [0xc202, 0xc202], /* Hangul Syllable */ + [0xc203, 0xc203], /* Hangul Syllable */ + [0xc204, 0xc204], /* Hangul Syllable */ + [0xc205, 0xc205], /* Hangul Syllable */ + [0xc206, 0xc206], /* Hangul Syllable */ + [0xc207, 0xc207], /* Hangul Syllable */ + [0xc208, 0xc208], /* Hangul Syllable */ + [0xc209, 0xc209], /* Hangul Syllable */ + [0xc20a, 0xc20a], /* Hangul Syllable */ + [0xc20b, 0xc20b], /* Hangul Syllable */ + [0xc20c, 0xc20c], /* Hangul Syllable */ + [0xc20d, 0xc20d], /* Hangul Syllable */ + [0xc20e, 0xc20e], /* Hangul Syllable */ + [0xc20f, 0xc20f], /* Hangul Syllable */ + [0xc210, 0xc210], /* Hangul Syllable */ + [0xc211, 0xc211], /* Hangul Syllable */ + [0xc212, 0xc212], /* Hangul Syllable */ + [0xc213, 0xc213], /* Hangul Syllable */ + [0xc214, 0xc214], /* Hangul Syllable */ + [0xc215, 0xc215], /* Hangul Syllable */ + [0xc216, 0xc216], /* Hangul Syllable */ + [0xc217, 0xc217], /* Hangul Syllable */ + [0xc218, 0xc218], /* Hangul Syllable */ + [0xc219, 0xc219], /* Hangul Syllable */ + [0xc21a, 0xc21a], /* Hangul Syllable */ + [0xc21b, 0xc21b], /* Hangul Syllable */ + [0xc21c, 0xc21c], /* Hangul Syllable */ + [0xc21d, 0xc21d], /* Hangul Syllable */ + [0xc21e, 0xc21e], /* Hangul Syllable */ + [0xc21f, 0xc21f], /* Hangul Syllable */ + [0xc220, 0xc220], /* Hangul Syllable */ + [0xc221, 0xc221], /* Hangul Syllable */ + [0xc222, 0xc222], /* Hangul Syllable */ + [0xc223, 0xc223], /* Hangul Syllable */ + [0xc224, 0xc224], /* Hangul Syllable */ + [0xc225, 0xc225], /* Hangul Syllable */ + [0xc226, 0xc226], /* Hangul Syllable */ + [0xc227, 0xc227], /* Hangul Syllable */ + [0xc228, 0xc228], /* Hangul Syllable */ + [0xc229, 0xc229], /* Hangul Syllable */ + [0xc22a, 0xc22a], /* Hangul Syllable */ + [0xc22b, 0xc22b], /* Hangul Syllable */ + [0xc22c, 0xc22c], /* Hangul Syllable */ + [0xc22d, 0xc22d], /* Hangul Syllable */ + [0xc22e, 0xc22e], /* Hangul Syllable */ + [0xc22f, 0xc22f], /* Hangul Syllable */ + [0xc230, 0xc230], /* Hangul Syllable */ + [0xc231, 0xc231], /* Hangul Syllable */ + [0xc232, 0xc232], /* Hangul Syllable */ + [0xc233, 0xc233], /* Hangul Syllable */ + [0xc234, 0xc234], /* Hangul Syllable */ + [0xc235, 0xc235], /* Hangul Syllable */ + [0xc236, 0xc236], /* Hangul Syllable */ + [0xc237, 0xc237], /* Hangul Syllable */ + [0xc238, 0xc238], /* Hangul Syllable */ + [0xc239, 0xc239], /* Hangul Syllable */ + [0xc23a, 0xc23a], /* Hangul Syllable */ + [0xc23b, 0xc23b], /* Hangul Syllable */ + [0xc23c, 0xc23c], /* Hangul Syllable */ + [0xc23d, 0xc23d], /* Hangul Syllable */ + [0xc23e, 0xc23e], /* Hangul Syllable */ + [0xc23f, 0xc23f], /* Hangul Syllable */ + [0xc240, 0xc240], /* Hangul Syllable */ + [0xc241, 0xc241], /* Hangul Syllable */ + [0xc242, 0xc242], /* Hangul Syllable */ + [0xc243, 0xc243], /* Hangul Syllable */ + [0xc244, 0xc244], /* Hangul Syllable */ + [0xc245, 0xc245], /* Hangul Syllable */ + [0xc246, 0xc246], /* Hangul Syllable */ + [0xc247, 0xc247], /* Hangul Syllable */ + [0xc248, 0xc248], /* Hangul Syllable */ + [0xc249, 0xc249], /* Hangul Syllable */ + [0xc24a, 0xc24a], /* Hangul Syllable */ + [0xc24b, 0xc24b], /* Hangul Syllable */ + [0xc24c, 0xc24c], /* Hangul Syllable */ + [0xc24d, 0xc24d], /* Hangul Syllable */ + [0xc24e, 0xc24e], /* Hangul Syllable */ + [0xc24f, 0xc24f], /* Hangul Syllable */ + [0xc250, 0xc250], /* Hangul Syllable */ + [0xc251, 0xc251], /* Hangul Syllable */ + [0xc252, 0xc252], /* Hangul Syllable */ + [0xc253, 0xc253], /* Hangul Syllable */ + [0xc254, 0xc254], /* Hangul Syllable */ + [0xc255, 0xc255], /* Hangul Syllable */ + [0xc256, 0xc256], /* Hangul Syllable */ + [0xc257, 0xc257], /* Hangul Syllable */ + [0xc258, 0xc258], /* Hangul Syllable */ + [0xc259, 0xc259], /* Hangul Syllable */ + [0xc25a, 0xc25a], /* Hangul Syllable */ + [0xc25b, 0xc25b], /* Hangul Syllable */ + [0xc25c, 0xc25c], /* Hangul Syllable */ + [0xc25d, 0xc25d], /* Hangul Syllable */ + [0xc25e, 0xc25e], /* Hangul Syllable */ + [0xc25f, 0xc25f], /* Hangul Syllable */ + [0xc260, 0xc260], /* Hangul Syllable */ + [0xc261, 0xc261], /* Hangul Syllable */ + [0xc262, 0xc262], /* Hangul Syllable */ + [0xc263, 0xc263], /* Hangul Syllable */ + [0xc264, 0xc264], /* Hangul Syllable */ + [0xc265, 0xc265], /* Hangul Syllable */ + [0xc266, 0xc266], /* Hangul Syllable */ + [0xc267, 0xc267], /* Hangul Syllable */ + [0xc268, 0xc268], /* Hangul Syllable */ + [0xc269, 0xc269], /* Hangul Syllable */ + [0xc26a, 0xc26a], /* Hangul Syllable */ + [0xc26b, 0xc26b], /* Hangul Syllable */ + [0xc26c, 0xc26c], /* Hangul Syllable */ + [0xc26d, 0xc26d], /* Hangul Syllable */ + [0xc26e, 0xc26e], /* Hangul Syllable */ + [0xc26f, 0xc26f], /* Hangul Syllable */ + [0xc270, 0xc270], /* Hangul Syllable */ + [0xc271, 0xc271], /* Hangul Syllable */ + [0xc272, 0xc272], /* Hangul Syllable */ + [0xc273, 0xc273], /* Hangul Syllable */ + [0xc274, 0xc274], /* Hangul Syllable */ + [0xc275, 0xc275], /* Hangul Syllable */ + [0xc276, 0xc276], /* Hangul Syllable */ + [0xc277, 0xc277], /* Hangul Syllable */ + [0xc278, 0xc278], /* Hangul Syllable */ + [0xc279, 0xc279], /* Hangul Syllable */ + [0xc27a, 0xc27a], /* Hangul Syllable */ + [0xc27b, 0xc27b], /* Hangul Syllable */ + [0xc27c, 0xc27c], /* Hangul Syllable */ + [0xc27d, 0xc27d], /* Hangul Syllable */ + [0xc27e, 0xc27e], /* Hangul Syllable */ + [0xc27f, 0xc27f], /* Hangul Syllable */ + [0xc280, 0xc280], /* Hangul Syllable */ + [0xc281, 0xc281], /* Hangul Syllable */ + [0xc282, 0xc282], /* Hangul Syllable */ + [0xc283, 0xc283], /* Hangul Syllable */ + [0xc284, 0xc284], /* Hangul Syllable */ + [0xc285, 0xc285], /* Hangul Syllable */ + [0xc286, 0xc286], /* Hangul Syllable */ + [0xc287, 0xc287], /* Hangul Syllable */ + [0xc288, 0xc288], /* Hangul Syllable */ + [0xc289, 0xc289], /* Hangul Syllable */ + [0xc28a, 0xc28a], /* Hangul Syllable */ + [0xc28b, 0xc28b], /* Hangul Syllable */ + [0xc28c, 0xc28c], /* Hangul Syllable */ + [0xc28d, 0xc28d], /* Hangul Syllable */ + [0xc28e, 0xc28e], /* Hangul Syllable */ + [0xc28f, 0xc28f], /* Hangul Syllable */ + [0xc290, 0xc290], /* Hangul Syllable */ + [0xc291, 0xc291], /* Hangul Syllable */ + [0xc292, 0xc292], /* Hangul Syllable */ + [0xc293, 0xc293], /* Hangul Syllable */ + [0xc294, 0xc294], /* Hangul Syllable */ + [0xc295, 0xc295], /* Hangul Syllable */ + [0xc296, 0xc296], /* Hangul Syllable */ + [0xc297, 0xc297], /* Hangul Syllable */ + [0xc298, 0xc298], /* Hangul Syllable */ + [0xc299, 0xc299], /* Hangul Syllable */ + [0xc29a, 0xc29a], /* Hangul Syllable */ + [0xc29b, 0xc29b], /* Hangul Syllable */ + [0xc29c, 0xc29c], /* Hangul Syllable */ + [0xc29d, 0xc29d], /* Hangul Syllable */ + [0xc29e, 0xc29e], /* Hangul Syllable */ + [0xc29f, 0xc29f], /* Hangul Syllable */ + [0xc2a0, 0xc2a0], /* Hangul Syllable */ + [0xc2a1, 0xc2a1], /* Hangul Syllable */ + [0xc2a2, 0xc2a2], /* Hangul Syllable */ + [0xc2a3, 0xc2a3], /* Hangul Syllable */ + [0xc2a4, 0xc2a4], /* Hangul Syllable */ + [0xc2a5, 0xc2a5], /* Hangul Syllable */ + [0xc2a6, 0xc2a6], /* Hangul Syllable */ + [0xc2a7, 0xc2a7], /* Hangul Syllable */ + [0xc2a8, 0xc2a8], /* Hangul Syllable */ + [0xc2a9, 0xc2a9], /* Hangul Syllable */ + [0xc2aa, 0xc2aa], /* Hangul Syllable */ + [0xc2ab, 0xc2ab], /* Hangul Syllable */ + [0xc2ac, 0xc2ac], /* Hangul Syllable */ + [0xc2ad, 0xc2ad], /* Hangul Syllable */ + [0xc2ae, 0xc2ae], /* Hangul Syllable */ + [0xc2af, 0xc2af], /* Hangul Syllable */ + [0xc2b0, 0xc2b0], /* Hangul Syllable */ + [0xc2b1, 0xc2b1], /* Hangul Syllable */ + [0xc2b2, 0xc2b2], /* Hangul Syllable */ + [0xc2b3, 0xc2b3], /* Hangul Syllable */ + [0xc2b4, 0xc2b4], /* Hangul Syllable */ + [0xc2b5, 0xc2b5], /* Hangul Syllable */ + [0xc2b6, 0xc2b6], /* Hangul Syllable */ + [0xc2b7, 0xc2b7], /* Hangul Syllable */ + [0xc2b8, 0xc2b8], /* Hangul Syllable */ + [0xc2b9, 0xc2b9], /* Hangul Syllable */ + [0xc2ba, 0xc2ba], /* Hangul Syllable */ + [0xc2bb, 0xc2bb], /* Hangul Syllable */ + [0xc2bc, 0xc2bc], /* Hangul Syllable */ + [0xc2bd, 0xc2bd], /* Hangul Syllable */ + [0xc2be, 0xc2be], /* Hangul Syllable */ + [0xc2bf, 0xc2bf], /* Hangul Syllable */ + [0xc2c0, 0xc2c0], /* Hangul Syllable */ + [0xc2c1, 0xc2c1], /* Hangul Syllable */ + [0xc2c2, 0xc2c2], /* Hangul Syllable */ + [0xc2c3, 0xc2c3], /* Hangul Syllable */ + [0xc2c4, 0xc2c4], /* Hangul Syllable */ + [0xc2c5, 0xc2c5], /* Hangul Syllable */ + [0xc2c6, 0xc2c6], /* Hangul Syllable */ + [0xc2c7, 0xc2c7], /* Hangul Syllable */ + [0xc2c8, 0xc2c8], /* Hangul Syllable */ + [0xc2c9, 0xc2c9], /* Hangul Syllable */ + [0xc2ca, 0xc2ca], /* Hangul Syllable */ + [0xc2cb, 0xc2cb], /* Hangul Syllable */ + [0xc2cc, 0xc2cc], /* Hangul Syllable */ + [0xc2cd, 0xc2cd], /* Hangul Syllable */ + [0xc2ce, 0xc2ce], /* Hangul Syllable */ + [0xc2cf, 0xc2cf], /* Hangul Syllable */ + [0xc2d0, 0xc2d0], /* Hangul Syllable */ + [0xc2d1, 0xc2d1], /* Hangul Syllable */ + [0xc2d2, 0xc2d2], /* Hangul Syllable */ + [0xc2d3, 0xc2d3], /* Hangul Syllable */ + [0xc2d4, 0xc2d4], /* Hangul Syllable */ + [0xc2d5, 0xc2d5], /* Hangul Syllable */ + [0xc2d6, 0xc2d6], /* Hangul Syllable */ + [0xc2d7, 0xc2d7], /* Hangul Syllable */ + [0xc2d8, 0xc2d8], /* Hangul Syllable */ + [0xc2d9, 0xc2d9], /* Hangul Syllable */ + [0xc2da, 0xc2da], /* Hangul Syllable */ + [0xc2db, 0xc2db], /* Hangul Syllable */ + [0xc2dc, 0xc2dc], /* Hangul Syllable */ + [0xc2dd, 0xc2dd], /* Hangul Syllable */ + [0xc2de, 0xc2de], /* Hangul Syllable */ + [0xc2df, 0xc2df], /* Hangul Syllable */ + [0xc2e0, 0xc2e0], /* Hangul Syllable */ + [0xc2e1, 0xc2e1], /* Hangul Syllable */ + [0xc2e2, 0xc2e2], /* Hangul Syllable */ + [0xc2e3, 0xc2e3], /* Hangul Syllable */ + [0xc2e4, 0xc2e4], /* Hangul Syllable */ + [0xc2e5, 0xc2e5], /* Hangul Syllable */ + [0xc2e6, 0xc2e6], /* Hangul Syllable */ + [0xc2e7, 0xc2e7], /* Hangul Syllable */ + [0xc2e8, 0xc2e8], /* Hangul Syllable */ + [0xc2e9, 0xc2e9], /* Hangul Syllable */ + [0xc2ea, 0xc2ea], /* Hangul Syllable */ + [0xc2eb, 0xc2eb], /* Hangul Syllable */ + [0xc2ec, 0xc2ec], /* Hangul Syllable */ + [0xc2ed, 0xc2ed], /* Hangul Syllable */ + [0xc2ee, 0xc2ee], /* Hangul Syllable */ + [0xc2ef, 0xc2ef], /* Hangul Syllable */ + [0xc2f0, 0xc2f0], /* Hangul Syllable */ + [0xc2f1, 0xc2f1], /* Hangul Syllable */ + [0xc2f2, 0xc2f2], /* Hangul Syllable */ + [0xc2f3, 0xc2f3], /* Hangul Syllable */ + [0xc2f4, 0xc2f4], /* Hangul Syllable */ + [0xc2f5, 0xc2f5], /* Hangul Syllable */ + [0xc2f6, 0xc2f6], /* Hangul Syllable */ + [0xc2f7, 0xc2f7], /* Hangul Syllable */ + [0xc2f8, 0xc2f8], /* Hangul Syllable */ + [0xc2f9, 0xc2f9], /* Hangul Syllable */ + [0xc2fa, 0xc2fa], /* Hangul Syllable */ + [0xc2fb, 0xc2fb], /* Hangul Syllable */ + [0xc2fc, 0xc2fc], /* Hangul Syllable */ + [0xc2fd, 0xc2fd], /* Hangul Syllable */ + [0xc2fe, 0xc2fe], /* Hangul Syllable */ + [0xc2ff, 0xc2ff], /* Hangul Syllable */ + [0xc300, 0xc300], /* Hangul Syllable */ + [0xc301, 0xc301], /* Hangul Syllable */ + [0xc302, 0xc302], /* Hangul Syllable */ + [0xc303, 0xc303], /* Hangul Syllable */ + [0xc304, 0xc304], /* Hangul Syllable */ + [0xc305, 0xc305], /* Hangul Syllable */ + [0xc306, 0xc306], /* Hangul Syllable */ + [0xc307, 0xc307], /* Hangul Syllable */ + [0xc308, 0xc308], /* Hangul Syllable */ + [0xc309, 0xc309], /* Hangul Syllable */ + [0xc30a, 0xc30a], /* Hangul Syllable */ + [0xc30b, 0xc30b], /* Hangul Syllable */ + [0xc30c, 0xc30c], /* Hangul Syllable */ + [0xc30d, 0xc30d], /* Hangul Syllable */ + [0xc30e, 0xc30e], /* Hangul Syllable */ + [0xc30f, 0xc30f], /* Hangul Syllable */ + [0xc310, 0xc310], /* Hangul Syllable */ + [0xc311, 0xc311], /* Hangul Syllable */ + [0xc312, 0xc312], /* Hangul Syllable */ + [0xc313, 0xc313], /* Hangul Syllable */ + [0xc314, 0xc314], /* Hangul Syllable */ + [0xc315, 0xc315], /* Hangul Syllable */ + [0xc316, 0xc316], /* Hangul Syllable */ + [0xc317, 0xc317], /* Hangul Syllable */ + [0xc318, 0xc318], /* Hangul Syllable */ + [0xc319, 0xc319], /* Hangul Syllable */ + [0xc31a, 0xc31a], /* Hangul Syllable */ + [0xc31b, 0xc31b], /* Hangul Syllable */ + [0xc31c, 0xc31c], /* Hangul Syllable */ + [0xc31d, 0xc31d], /* Hangul Syllable */ + [0xc31e, 0xc31e], /* Hangul Syllable */ + [0xc31f, 0xc31f], /* Hangul Syllable */ + [0xc320, 0xc320], /* Hangul Syllable */ + [0xc321, 0xc321], /* Hangul Syllable */ + [0xc322, 0xc322], /* Hangul Syllable */ + [0xc323, 0xc323], /* Hangul Syllable */ + [0xc324, 0xc324], /* Hangul Syllable */ + [0xc325, 0xc325], /* Hangul Syllable */ + [0xc326, 0xc326], /* Hangul Syllable */ + [0xc327, 0xc327], /* Hangul Syllable */ + [0xc328, 0xc328], /* Hangul Syllable */ + [0xc329, 0xc329], /* Hangul Syllable */ + [0xc32a, 0xc32a], /* Hangul Syllable */ + [0xc32b, 0xc32b], /* Hangul Syllable */ + [0xc32c, 0xc32c], /* Hangul Syllable */ + [0xc32d, 0xc32d], /* Hangul Syllable */ + [0xc32e, 0xc32e], /* Hangul Syllable */ + [0xc32f, 0xc32f], /* Hangul Syllable */ + [0xc330, 0xc330], /* Hangul Syllable */ + [0xc331, 0xc331], /* Hangul Syllable */ + [0xc332, 0xc332], /* Hangul Syllable */ + [0xc333, 0xc333], /* Hangul Syllable */ + [0xc334, 0xc334], /* Hangul Syllable */ + [0xc335, 0xc335], /* Hangul Syllable */ + [0xc336, 0xc336], /* Hangul Syllable */ + [0xc337, 0xc337], /* Hangul Syllable */ + [0xc338, 0xc338], /* Hangul Syllable */ + [0xc339, 0xc339], /* Hangul Syllable */ + [0xc33a, 0xc33a], /* Hangul Syllable */ + [0xc33b, 0xc33b], /* Hangul Syllable */ + [0xc33c, 0xc33c], /* Hangul Syllable */ + [0xc33d, 0xc33d], /* Hangul Syllable */ + [0xc33e, 0xc33e], /* Hangul Syllable */ + [0xc33f, 0xc33f], /* Hangul Syllable */ + [0xc340, 0xc340], /* Hangul Syllable */ + [0xc341, 0xc341], /* Hangul Syllable */ + [0xc342, 0xc342], /* Hangul Syllable */ + [0xc343, 0xc343], /* Hangul Syllable */ + [0xc344, 0xc344], /* Hangul Syllable */ + [0xc345, 0xc345], /* Hangul Syllable */ + [0xc346, 0xc346], /* Hangul Syllable */ + [0xc347, 0xc347], /* Hangul Syllable */ + [0xc348, 0xc348], /* Hangul Syllable */ + [0xc349, 0xc349], /* Hangul Syllable */ + [0xc34a, 0xc34a], /* Hangul Syllable */ + [0xc34b, 0xc34b], /* Hangul Syllable */ + [0xc34c, 0xc34c], /* Hangul Syllable */ + [0xc34d, 0xc34d], /* Hangul Syllable */ + [0xc34e, 0xc34e], /* Hangul Syllable */ + [0xc34f, 0xc34f], /* Hangul Syllable */ + [0xc350, 0xc350], /* Hangul Syllable */ + [0xc351, 0xc351], /* Hangul Syllable */ + [0xc352, 0xc352], /* Hangul Syllable */ + [0xc353, 0xc353], /* Hangul Syllable */ + [0xc354, 0xc354], /* Hangul Syllable */ + [0xc355, 0xc355], /* Hangul Syllable */ + [0xc356, 0xc356], /* Hangul Syllable */ + [0xc357, 0xc357], /* Hangul Syllable */ + [0xc358, 0xc358], /* Hangul Syllable */ + [0xc359, 0xc359], /* Hangul Syllable */ + [0xc35a, 0xc35a], /* Hangul Syllable */ + [0xc35b, 0xc35b], /* Hangul Syllable */ + [0xc35c, 0xc35c], /* Hangul Syllable */ + [0xc35d, 0xc35d], /* Hangul Syllable */ + [0xc35e, 0xc35e], /* Hangul Syllable */ + [0xc35f, 0xc35f], /* Hangul Syllable */ + [0xc360, 0xc360], /* Hangul Syllable */ + [0xc361, 0xc361], /* Hangul Syllable */ + [0xc362, 0xc362], /* Hangul Syllable */ + [0xc363, 0xc363], /* Hangul Syllable */ + [0xc364, 0xc364], /* Hangul Syllable */ + [0xc365, 0xc365], /* Hangul Syllable */ + [0xc366, 0xc366], /* Hangul Syllable */ + [0xc367, 0xc367], /* Hangul Syllable */ + [0xc368, 0xc368], /* Hangul Syllable */ + [0xc369, 0xc369], /* Hangul Syllable */ + [0xc36a, 0xc36a], /* Hangul Syllable */ + [0xc36b, 0xc36b], /* Hangul Syllable */ + [0xc36c, 0xc36c], /* Hangul Syllable */ + [0xc36d, 0xc36d], /* Hangul Syllable */ + [0xc36e, 0xc36e], /* Hangul Syllable */ + [0xc36f, 0xc36f], /* Hangul Syllable */ + [0xc370, 0xc370], /* Hangul Syllable */ + [0xc371, 0xc371], /* Hangul Syllable */ + [0xc372, 0xc372], /* Hangul Syllable */ + [0xc373, 0xc373], /* Hangul Syllable */ + [0xc374, 0xc374], /* Hangul Syllable */ + [0xc375, 0xc375], /* Hangul Syllable */ + [0xc376, 0xc376], /* Hangul Syllable */ + [0xc377, 0xc377], /* Hangul Syllable */ + [0xc378, 0xc378], /* Hangul Syllable */ + [0xc379, 0xc379], /* Hangul Syllable */ + [0xc37a, 0xc37a], /* Hangul Syllable */ + [0xc37b, 0xc37b], /* Hangul Syllable */ + [0xc37c, 0xc37c], /* Hangul Syllable */ + [0xc37d, 0xc37d], /* Hangul Syllable */ + [0xc37e, 0xc37e], /* Hangul Syllable */ + [0xc37f, 0xc37f], /* Hangul Syllable */ + [0xc380, 0xc380], /* Hangul Syllable */ + [0xc381, 0xc381], /* Hangul Syllable */ + [0xc382, 0xc382], /* Hangul Syllable */ + [0xc383, 0xc383], /* Hangul Syllable */ + [0xc384, 0xc384], /* Hangul Syllable */ + [0xc385, 0xc385], /* Hangul Syllable */ + [0xc386, 0xc386], /* Hangul Syllable */ + [0xc387, 0xc387], /* Hangul Syllable */ + [0xc388, 0xc388], /* Hangul Syllable */ + [0xc389, 0xc389], /* Hangul Syllable */ + [0xc38a, 0xc38a], /* Hangul Syllable */ + [0xc38b, 0xc38b], /* Hangul Syllable */ + [0xc38c, 0xc38c], /* Hangul Syllable */ + [0xc38d, 0xc38d], /* Hangul Syllable */ + [0xc38e, 0xc38e], /* Hangul Syllable */ + [0xc38f, 0xc38f], /* Hangul Syllable */ + [0xc390, 0xc390], /* Hangul Syllable */ + [0xc391, 0xc391], /* Hangul Syllable */ + [0xc392, 0xc392], /* Hangul Syllable */ + [0xc393, 0xc393], /* Hangul Syllable */ + [0xc394, 0xc394], /* Hangul Syllable */ + [0xc395, 0xc395], /* Hangul Syllable */ + [0xc396, 0xc396], /* Hangul Syllable */ + [0xc397, 0xc397], /* Hangul Syllable */ + [0xc398, 0xc398], /* Hangul Syllable */ + [0xc399, 0xc399], /* Hangul Syllable */ + [0xc39a, 0xc39a], /* Hangul Syllable */ + [0xc39b, 0xc39b], /* Hangul Syllable */ + [0xc39c, 0xc39c], /* Hangul Syllable */ + [0xc39d, 0xc39d], /* Hangul Syllable */ + [0xc39e, 0xc39e], /* Hangul Syllable */ + [0xc39f, 0xc39f], /* Hangul Syllable */ + [0xc3a0, 0xc3a0], /* Hangul Syllable */ + [0xc3a1, 0xc3a1], /* Hangul Syllable */ + [0xc3a2, 0xc3a2], /* Hangul Syllable */ + [0xc3a3, 0xc3a3], /* Hangul Syllable */ + [0xc3a4, 0xc3a4], /* Hangul Syllable */ + [0xc3a5, 0xc3a5], /* Hangul Syllable */ + [0xc3a6, 0xc3a6], /* Hangul Syllable */ + [0xc3a7, 0xc3a7], /* Hangul Syllable */ + [0xc3a8, 0xc3a8], /* Hangul Syllable */ + [0xc3a9, 0xc3a9], /* Hangul Syllable */ + [0xc3aa, 0xc3aa], /* Hangul Syllable */ + [0xc3ab, 0xc3ab], /* Hangul Syllable */ + [0xc3ac, 0xc3ac], /* Hangul Syllable */ + [0xc3ad, 0xc3ad], /* Hangul Syllable */ + [0xc3ae, 0xc3ae], /* Hangul Syllable */ + [0xc3af, 0xc3af], /* Hangul Syllable */ + [0xc3b0, 0xc3b0], /* Hangul Syllable */ + [0xc3b1, 0xc3b1], /* Hangul Syllable */ + [0xc3b2, 0xc3b2], /* Hangul Syllable */ + [0xc3b3, 0xc3b3], /* Hangul Syllable */ + [0xc3b4, 0xc3b4], /* Hangul Syllable */ + [0xc3b5, 0xc3b5], /* Hangul Syllable */ + [0xc3b6, 0xc3b6], /* Hangul Syllable */ + [0xc3b7, 0xc3b7], /* Hangul Syllable */ + [0xc3b8, 0xc3b8], /* Hangul Syllable */ + [0xc3b9, 0xc3b9], /* Hangul Syllable */ + [0xc3ba, 0xc3ba], /* Hangul Syllable */ + [0xc3bb, 0xc3bb], /* Hangul Syllable */ + [0xc3bc, 0xc3bc], /* Hangul Syllable */ + [0xc3bd, 0xc3bd], /* Hangul Syllable */ + [0xc3be, 0xc3be], /* Hangul Syllable */ + [0xc3bf, 0xc3bf], /* Hangul Syllable */ + [0xc3c0, 0xc3c0], /* Hangul Syllable */ + [0xc3c1, 0xc3c1], /* Hangul Syllable */ + [0xc3c2, 0xc3c2], /* Hangul Syllable */ + [0xc3c3, 0xc3c3], /* Hangul Syllable */ + [0xc3c4, 0xc3c4], /* Hangul Syllable */ + [0xc3c5, 0xc3c5], /* Hangul Syllable */ + [0xc3c6, 0xc3c6], /* Hangul Syllable */ + [0xc3c7, 0xc3c7], /* Hangul Syllable */ + [0xc3c8, 0xc3c8], /* Hangul Syllable */ + [0xc3c9, 0xc3c9], /* Hangul Syllable */ + [0xc3ca, 0xc3ca], /* Hangul Syllable */ + [0xc3cb, 0xc3cb], /* Hangul Syllable */ + [0xc3cc, 0xc3cc], /* Hangul Syllable */ + [0xc3cd, 0xc3cd], /* Hangul Syllable */ + [0xc3ce, 0xc3ce], /* Hangul Syllable */ + [0xc3cf, 0xc3cf], /* Hangul Syllable */ + [0xc3d0, 0xc3d0], /* Hangul Syllable */ + [0xc3d1, 0xc3d1], /* Hangul Syllable */ + [0xc3d2, 0xc3d2], /* Hangul Syllable */ + [0xc3d3, 0xc3d3], /* Hangul Syllable */ + [0xc3d4, 0xc3d4], /* Hangul Syllable */ + [0xc3d5, 0xc3d5], /* Hangul Syllable */ + [0xc3d6, 0xc3d6], /* Hangul Syllable */ + [0xc3d7, 0xc3d7], /* Hangul Syllable */ + [0xc3d8, 0xc3d8], /* Hangul Syllable */ + [0xc3d9, 0xc3d9], /* Hangul Syllable */ + [0xc3da, 0xc3da], /* Hangul Syllable */ + [0xc3db, 0xc3db], /* Hangul Syllable */ + [0xc3dc, 0xc3dc], /* Hangul Syllable */ + [0xc3dd, 0xc3dd], /* Hangul Syllable */ + [0xc3de, 0xc3de], /* Hangul Syllable */ + [0xc3df, 0xc3df], /* Hangul Syllable */ + [0xc3e0, 0xc3e0], /* Hangul Syllable */ + [0xc3e1, 0xc3e1], /* Hangul Syllable */ + [0xc3e2, 0xc3e2], /* Hangul Syllable */ + [0xc3e3, 0xc3e3], /* Hangul Syllable */ + [0xc3e4, 0xc3e4], /* Hangul Syllable */ + [0xc3e5, 0xc3e5], /* Hangul Syllable */ + [0xc3e6, 0xc3e6], /* Hangul Syllable */ + [0xc3e7, 0xc3e7], /* Hangul Syllable */ + [0xc3e8, 0xc3e8], /* Hangul Syllable */ + [0xc3e9, 0xc3e9], /* Hangul Syllable */ + [0xc3ea, 0xc3ea], /* Hangul Syllable */ + [0xc3eb, 0xc3eb], /* Hangul Syllable */ + [0xc3ec, 0xc3ec], /* Hangul Syllable */ + [0xc3ed, 0xc3ed], /* Hangul Syllable */ + [0xc3ee, 0xc3ee], /* Hangul Syllable */ + [0xc3ef, 0xc3ef], /* Hangul Syllable */ + [0xc3f0, 0xc3f0], /* Hangul Syllable */ + [0xc3f1, 0xc3f1], /* Hangul Syllable */ + [0xc3f2, 0xc3f2], /* Hangul Syllable */ + [0xc3f3, 0xc3f3], /* Hangul Syllable */ + [0xc3f4, 0xc3f4], /* Hangul Syllable */ + [0xc3f5, 0xc3f5], /* Hangul Syllable */ + [0xc3f6, 0xc3f6], /* Hangul Syllable */ + [0xc3f7, 0xc3f7], /* Hangul Syllable */ + [0xc3f8, 0xc3f8], /* Hangul Syllable */ + [0xc3f9, 0xc3f9], /* Hangul Syllable */ + [0xc3fa, 0xc3fa], /* Hangul Syllable */ + [0xc3fb, 0xc3fb], /* Hangul Syllable */ + [0xc3fc, 0xc3fc], /* Hangul Syllable */ + [0xc3fd, 0xc3fd], /* Hangul Syllable */ + [0xc3fe, 0xc3fe], /* Hangul Syllable */ + [0xc3ff, 0xc3ff], /* Hangul Syllable */ + [0xc400, 0xc400], /* Hangul Syllable */ + [0xc401, 0xc401], /* Hangul Syllable */ + [0xc402, 0xc402], /* Hangul Syllable */ + [0xc403, 0xc403], /* Hangul Syllable */ + [0xc404, 0xc404], /* Hangul Syllable */ + [0xc405, 0xc405], /* Hangul Syllable */ + [0xc406, 0xc406], /* Hangul Syllable */ + [0xc407, 0xc407], /* Hangul Syllable */ + [0xc408, 0xc408], /* Hangul Syllable */ + [0xc409, 0xc409], /* Hangul Syllable */ + [0xc40a, 0xc40a], /* Hangul Syllable */ + [0xc40b, 0xc40b], /* Hangul Syllable */ + [0xc40c, 0xc40c], /* Hangul Syllable */ + [0xc40d, 0xc40d], /* Hangul Syllable */ + [0xc40e, 0xc40e], /* Hangul Syllable */ + [0xc40f, 0xc40f], /* Hangul Syllable */ + [0xc410, 0xc410], /* Hangul Syllable */ + [0xc411, 0xc411], /* Hangul Syllable */ + [0xc412, 0xc412], /* Hangul Syllable */ + [0xc413, 0xc413], /* Hangul Syllable */ + [0xc414, 0xc414], /* Hangul Syllable */ + [0xc415, 0xc415], /* Hangul Syllable */ + [0xc416, 0xc416], /* Hangul Syllable */ + [0xc417, 0xc417], /* Hangul Syllable */ + [0xc418, 0xc418], /* Hangul Syllable */ + [0xc419, 0xc419], /* Hangul Syllable */ + [0xc41a, 0xc41a], /* Hangul Syllable */ + [0xc41b, 0xc41b], /* Hangul Syllable */ + [0xc41c, 0xc41c], /* Hangul Syllable */ + [0xc41d, 0xc41d], /* Hangul Syllable */ + [0xc41e, 0xc41e], /* Hangul Syllable */ + [0xc41f, 0xc41f], /* Hangul Syllable */ + [0xc420, 0xc420], /* Hangul Syllable */ + [0xc421, 0xc421], /* Hangul Syllable */ + [0xc422, 0xc422], /* Hangul Syllable */ + [0xc423, 0xc423], /* Hangul Syllable */ + [0xc424, 0xc424], /* Hangul Syllable */ + [0xc425, 0xc425], /* Hangul Syllable */ + [0xc426, 0xc426], /* Hangul Syllable */ + [0xc427, 0xc427], /* Hangul Syllable */ + [0xc428, 0xc428], /* Hangul Syllable */ + [0xc429, 0xc429], /* Hangul Syllable */ + [0xc42a, 0xc42a], /* Hangul Syllable */ + [0xc42b, 0xc42b], /* Hangul Syllable */ + [0xc42c, 0xc42c], /* Hangul Syllable */ + [0xc42d, 0xc42d], /* Hangul Syllable */ + [0xc42e, 0xc42e], /* Hangul Syllable */ + [0xc42f, 0xc42f], /* Hangul Syllable */ + [0xc430, 0xc430], /* Hangul Syllable */ + [0xc431, 0xc431], /* Hangul Syllable */ + [0xc432, 0xc432], /* Hangul Syllable */ + [0xc433, 0xc433], /* Hangul Syllable */ + [0xc434, 0xc434], /* Hangul Syllable */ + [0xc435, 0xc435], /* Hangul Syllable */ + [0xc436, 0xc436], /* Hangul Syllable */ + [0xc437, 0xc437], /* Hangul Syllable */ + [0xc438, 0xc438], /* Hangul Syllable */ + [0xc439, 0xc439], /* Hangul Syllable */ + [0xc43a, 0xc43a], /* Hangul Syllable */ + [0xc43b, 0xc43b], /* Hangul Syllable */ + [0xc43c, 0xc43c], /* Hangul Syllable */ + [0xc43d, 0xc43d], /* Hangul Syllable */ + [0xc43e, 0xc43e], /* Hangul Syllable */ + [0xc43f, 0xc43f], /* Hangul Syllable */ + [0xc440, 0xc440], /* Hangul Syllable */ + [0xc441, 0xc441], /* Hangul Syllable */ + [0xc442, 0xc442], /* Hangul Syllable */ + [0xc443, 0xc443], /* Hangul Syllable */ + [0xc444, 0xc444], /* Hangul Syllable */ + [0xc445, 0xc445], /* Hangul Syllable */ + [0xc446, 0xc446], /* Hangul Syllable */ + [0xc447, 0xc447], /* Hangul Syllable */ + [0xc448, 0xc448], /* Hangul Syllable */ + [0xc449, 0xc449], /* Hangul Syllable */ + [0xc44a, 0xc44a], /* Hangul Syllable */ + [0xc44b, 0xc44b], /* Hangul Syllable */ + [0xc44c, 0xc44c], /* Hangul Syllable */ + [0xc44d, 0xc44d], /* Hangul Syllable */ + [0xc44e, 0xc44e], /* Hangul Syllable */ + [0xc44f, 0xc44f], /* Hangul Syllable */ + [0xc450, 0xc450], /* Hangul Syllable */ + [0xc451, 0xc451], /* Hangul Syllable */ + [0xc452, 0xc452], /* Hangul Syllable */ + [0xc453, 0xc453], /* Hangul Syllable */ + [0xc454, 0xc454], /* Hangul Syllable */ + [0xc455, 0xc455], /* Hangul Syllable */ + [0xc456, 0xc456], /* Hangul Syllable */ + [0xc457, 0xc457], /* Hangul Syllable */ + [0xc458, 0xc458], /* Hangul Syllable */ + [0xc459, 0xc459], /* Hangul Syllable */ + [0xc45a, 0xc45a], /* Hangul Syllable */ + [0xc45b, 0xc45b], /* Hangul Syllable */ + [0xc45c, 0xc45c], /* Hangul Syllable */ + [0xc45d, 0xc45d], /* Hangul Syllable */ + [0xc45e, 0xc45e], /* Hangul Syllable */ + [0xc45f, 0xc45f], /* Hangul Syllable */ + [0xc460, 0xc460], /* Hangul Syllable */ + [0xc461, 0xc461], /* Hangul Syllable */ + [0xc462, 0xc462], /* Hangul Syllable */ + [0xc463, 0xc463], /* Hangul Syllable */ + [0xc464, 0xc464], /* Hangul Syllable */ + [0xc465, 0xc465], /* Hangul Syllable */ + [0xc466, 0xc466], /* Hangul Syllable */ + [0xc467, 0xc467], /* Hangul Syllable */ + [0xc468, 0xc468], /* Hangul Syllable */ + [0xc469, 0xc469], /* Hangul Syllable */ + [0xc46a, 0xc46a], /* Hangul Syllable */ + [0xc46b, 0xc46b], /* Hangul Syllable */ + [0xc46c, 0xc46c], /* Hangul Syllable */ + [0xc46d, 0xc46d], /* Hangul Syllable */ + [0xc46e, 0xc46e], /* Hangul Syllable */ + [0xc46f, 0xc46f], /* Hangul Syllable */ + [0xc470, 0xc470], /* Hangul Syllable */ + [0xc471, 0xc471], /* Hangul Syllable */ + [0xc472, 0xc472], /* Hangul Syllable */ + [0xc473, 0xc473], /* Hangul Syllable */ + [0xc474, 0xc474], /* Hangul Syllable */ + [0xc475, 0xc475], /* Hangul Syllable */ + [0xc476, 0xc476], /* Hangul Syllable */ + [0xc477, 0xc477], /* Hangul Syllable */ + [0xc478, 0xc478], /* Hangul Syllable */ + [0xc479, 0xc479], /* Hangul Syllable */ + [0xc47a, 0xc47a], /* Hangul Syllable */ + [0xc47b, 0xc47b], /* Hangul Syllable */ + [0xc47c, 0xc47c], /* Hangul Syllable */ + [0xc47d, 0xc47d], /* Hangul Syllable */ + [0xc47e, 0xc47e], /* Hangul Syllable */ + [0xc47f, 0xc47f], /* Hangul Syllable */ + [0xc480, 0xc480], /* Hangul Syllable */ + [0xc481, 0xc481], /* Hangul Syllable */ + [0xc482, 0xc482], /* Hangul Syllable */ + [0xc483, 0xc483], /* Hangul Syllable */ + [0xc484, 0xc484], /* Hangul Syllable */ + [0xc485, 0xc485], /* Hangul Syllable */ + [0xc486, 0xc486], /* Hangul Syllable */ + [0xc487, 0xc487], /* Hangul Syllable */ + [0xc488, 0xc488], /* Hangul Syllable */ + [0xc489, 0xc489], /* Hangul Syllable */ + [0xc48a, 0xc48a], /* Hangul Syllable */ + [0xc48b, 0xc48b], /* Hangul Syllable */ + [0xc48c, 0xc48c], /* Hangul Syllable */ + [0xc48d, 0xc48d], /* Hangul Syllable */ + [0xc48e, 0xc48e], /* Hangul Syllable */ + [0xc48f, 0xc48f], /* Hangul Syllable */ + [0xc490, 0xc490], /* Hangul Syllable */ + [0xc491, 0xc491], /* Hangul Syllable */ + [0xc492, 0xc492], /* Hangul Syllable */ + [0xc493, 0xc493], /* Hangul Syllable */ + [0xc494, 0xc494], /* Hangul Syllable */ + [0xc495, 0xc495], /* Hangul Syllable */ + [0xc496, 0xc496], /* Hangul Syllable */ + [0xc497, 0xc497], /* Hangul Syllable */ + [0xc498, 0xc498], /* Hangul Syllable */ + [0xc499, 0xc499], /* Hangul Syllable */ + [0xc49a, 0xc49a], /* Hangul Syllable */ + [0xc49b, 0xc49b], /* Hangul Syllable */ + [0xc49c, 0xc49c], /* Hangul Syllable */ + [0xc49d, 0xc49d], /* Hangul Syllable */ + [0xc49e, 0xc49e], /* Hangul Syllable */ + [0xc49f, 0xc49f], /* Hangul Syllable */ + [0xc4a0, 0xc4a0], /* Hangul Syllable */ + [0xc4a1, 0xc4a1], /* Hangul Syllable */ + [0xc4a2, 0xc4a2], /* Hangul Syllable */ + [0xc4a3, 0xc4a3], /* Hangul Syllable */ + [0xc4a4, 0xc4a4], /* Hangul Syllable */ + [0xc4a5, 0xc4a5], /* Hangul Syllable */ + [0xc4a6, 0xc4a6], /* Hangul Syllable */ + [0xc4a7, 0xc4a7], /* Hangul Syllable */ + [0xc4a8, 0xc4a8], /* Hangul Syllable */ + [0xc4a9, 0xc4a9], /* Hangul Syllable */ + [0xc4aa, 0xc4aa], /* Hangul Syllable */ + [0xc4ab, 0xc4ab], /* Hangul Syllable */ + [0xc4ac, 0xc4ac], /* Hangul Syllable */ + [0xc4ad, 0xc4ad], /* Hangul Syllable */ + [0xc4ae, 0xc4ae], /* Hangul Syllable */ + [0xc4af, 0xc4af], /* Hangul Syllable */ + [0xc4b0, 0xc4b0], /* Hangul Syllable */ + [0xc4b1, 0xc4b1], /* Hangul Syllable */ + [0xc4b2, 0xc4b2], /* Hangul Syllable */ + [0xc4b3, 0xc4b3], /* Hangul Syllable */ + [0xc4b4, 0xc4b4], /* Hangul Syllable */ + [0xc4b5, 0xc4b5], /* Hangul Syllable */ + [0xc4b6, 0xc4b6], /* Hangul Syllable */ + [0xc4b7, 0xc4b7], /* Hangul Syllable */ + [0xc4b8, 0xc4b8], /* Hangul Syllable */ + [0xc4b9, 0xc4b9], /* Hangul Syllable */ + [0xc4ba, 0xc4ba], /* Hangul Syllable */ + [0xc4bb, 0xc4bb], /* Hangul Syllable */ + [0xc4bc, 0xc4bc], /* Hangul Syllable */ + [0xc4bd, 0xc4bd], /* Hangul Syllable */ + [0xc4be, 0xc4be], /* Hangul Syllable */ + [0xc4bf, 0xc4bf], /* Hangul Syllable */ + [0xc4c0, 0xc4c0], /* Hangul Syllable */ + [0xc4c1, 0xc4c1], /* Hangul Syllable */ + [0xc4c2, 0xc4c2], /* Hangul Syllable */ + [0xc4c3, 0xc4c3], /* Hangul Syllable */ + [0xc4c4, 0xc4c4], /* Hangul Syllable */ + [0xc4c5, 0xc4c5], /* Hangul Syllable */ + [0xc4c6, 0xc4c6], /* Hangul Syllable */ + [0xc4c7, 0xc4c7], /* Hangul Syllable */ + [0xc4c8, 0xc4c8], /* Hangul Syllable */ + [0xc4c9, 0xc4c9], /* Hangul Syllable */ + [0xc4ca, 0xc4ca], /* Hangul Syllable */ + [0xc4cb, 0xc4cb], /* Hangul Syllable */ + [0xc4cc, 0xc4cc], /* Hangul Syllable */ + [0xc4cd, 0xc4cd], /* Hangul Syllable */ + [0xc4ce, 0xc4ce], /* Hangul Syllable */ + [0xc4cf, 0xc4cf], /* Hangul Syllable */ + [0xc4d0, 0xc4d0], /* Hangul Syllable */ + [0xc4d1, 0xc4d1], /* Hangul Syllable */ + [0xc4d2, 0xc4d2], /* Hangul Syllable */ + [0xc4d3, 0xc4d3], /* Hangul Syllable */ + [0xc4d4, 0xc4d4], /* Hangul Syllable */ + [0xc4d5, 0xc4d5], /* Hangul Syllable */ + [0xc4d6, 0xc4d6], /* Hangul Syllable */ + [0xc4d7, 0xc4d7], /* Hangul Syllable */ + [0xc4d8, 0xc4d8], /* Hangul Syllable */ + [0xc4d9, 0xc4d9], /* Hangul Syllable */ + [0xc4da, 0xc4da], /* Hangul Syllable */ + [0xc4db, 0xc4db], /* Hangul Syllable */ + [0xc4dc, 0xc4dc], /* Hangul Syllable */ + [0xc4dd, 0xc4dd], /* Hangul Syllable */ + [0xc4de, 0xc4de], /* Hangul Syllable */ + [0xc4df, 0xc4df], /* Hangul Syllable */ + [0xc4e0, 0xc4e0], /* Hangul Syllable */ + [0xc4e1, 0xc4e1], /* Hangul Syllable */ + [0xc4e2, 0xc4e2], /* Hangul Syllable */ + [0xc4e3, 0xc4e3], /* Hangul Syllable */ + [0xc4e4, 0xc4e4], /* Hangul Syllable */ + [0xc4e5, 0xc4e5], /* Hangul Syllable */ + [0xc4e6, 0xc4e6], /* Hangul Syllable */ + [0xc4e7, 0xc4e7], /* Hangul Syllable */ + [0xc4e8, 0xc4e8], /* Hangul Syllable */ + [0xc4e9, 0xc4e9], /* Hangul Syllable */ + [0xc4ea, 0xc4ea], /* Hangul Syllable */ + [0xc4eb, 0xc4eb], /* Hangul Syllable */ + [0xc4ec, 0xc4ec], /* Hangul Syllable */ + [0xc4ed, 0xc4ed], /* Hangul Syllable */ + [0xc4ee, 0xc4ee], /* Hangul Syllable */ + [0xc4ef, 0xc4ef], /* Hangul Syllable */ + [0xc4f0, 0xc4f0], /* Hangul Syllable */ + [0xc4f1, 0xc4f1], /* Hangul Syllable */ + [0xc4f2, 0xc4f2], /* Hangul Syllable */ + [0xc4f3, 0xc4f3], /* Hangul Syllable */ + [0xc4f4, 0xc4f4], /* Hangul Syllable */ + [0xc4f5, 0xc4f5], /* Hangul Syllable */ + [0xc4f6, 0xc4f6], /* Hangul Syllable */ + [0xc4f7, 0xc4f7], /* Hangul Syllable */ + [0xc4f8, 0xc4f8], /* Hangul Syllable */ + [0xc4f9, 0xc4f9], /* Hangul Syllable */ + [0xc4fa, 0xc4fa], /* Hangul Syllable */ + [0xc4fb, 0xc4fb], /* Hangul Syllable */ + [0xc4fc, 0xc4fc], /* Hangul Syllable */ + [0xc4fd, 0xc4fd], /* Hangul Syllable */ + [0xc4fe, 0xc4fe], /* Hangul Syllable */ + [0xc4ff, 0xc4ff], /* Hangul Syllable */ + [0xc500, 0xc500], /* Hangul Syllable */ + [0xc501, 0xc501], /* Hangul Syllable */ + [0xc502, 0xc502], /* Hangul Syllable */ + [0xc503, 0xc503], /* Hangul Syllable */ + [0xc504, 0xc504], /* Hangul Syllable */ + [0xc505, 0xc505], /* Hangul Syllable */ + [0xc506, 0xc506], /* Hangul Syllable */ + [0xc507, 0xc507], /* Hangul Syllable */ + [0xc508, 0xc508], /* Hangul Syllable */ + [0xc509, 0xc509], /* Hangul Syllable */ + [0xc50a, 0xc50a], /* Hangul Syllable */ + [0xc50b, 0xc50b], /* Hangul Syllable */ + [0xc50c, 0xc50c], /* Hangul Syllable */ + [0xc50d, 0xc50d], /* Hangul Syllable */ + [0xc50e, 0xc50e], /* Hangul Syllable */ + [0xc50f, 0xc50f], /* Hangul Syllable */ + [0xc510, 0xc510], /* Hangul Syllable */ + [0xc511, 0xc511], /* Hangul Syllable */ + [0xc512, 0xc512], /* Hangul Syllable */ + [0xc513, 0xc513], /* Hangul Syllable */ + [0xc514, 0xc514], /* Hangul Syllable */ + [0xc515, 0xc515], /* Hangul Syllable */ + [0xc516, 0xc516], /* Hangul Syllable */ + [0xc517, 0xc517], /* Hangul Syllable */ + [0xc518, 0xc518], /* Hangul Syllable */ + [0xc519, 0xc519], /* Hangul Syllable */ + [0xc51a, 0xc51a], /* Hangul Syllable */ + [0xc51b, 0xc51b], /* Hangul Syllable */ + [0xc51c, 0xc51c], /* Hangul Syllable */ + [0xc51d, 0xc51d], /* Hangul Syllable */ + [0xc51e, 0xc51e], /* Hangul Syllable */ + [0xc51f, 0xc51f], /* Hangul Syllable */ + [0xc520, 0xc520], /* Hangul Syllable */ + [0xc521, 0xc521], /* Hangul Syllable */ + [0xc522, 0xc522], /* Hangul Syllable */ + [0xc523, 0xc523], /* Hangul Syllable */ + [0xc524, 0xc524], /* Hangul Syllable */ + [0xc525, 0xc525], /* Hangul Syllable */ + [0xc526, 0xc526], /* Hangul Syllable */ + [0xc527, 0xc527], /* Hangul Syllable */ + [0xc528, 0xc528], /* Hangul Syllable */ + [0xc529, 0xc529], /* Hangul Syllable */ + [0xc52a, 0xc52a], /* Hangul Syllable */ + [0xc52b, 0xc52b], /* Hangul Syllable */ + [0xc52c, 0xc52c], /* Hangul Syllable */ + [0xc52d, 0xc52d], /* Hangul Syllable */ + [0xc52e, 0xc52e], /* Hangul Syllable */ + [0xc52f, 0xc52f], /* Hangul Syllable */ + [0xc530, 0xc530], /* Hangul Syllable */ + [0xc531, 0xc531], /* Hangul Syllable */ + [0xc532, 0xc532], /* Hangul Syllable */ + [0xc533, 0xc533], /* Hangul Syllable */ + [0xc534, 0xc534], /* Hangul Syllable */ + [0xc535, 0xc535], /* Hangul Syllable */ + [0xc536, 0xc536], /* Hangul Syllable */ + [0xc537, 0xc537], /* Hangul Syllable */ + [0xc538, 0xc538], /* Hangul Syllable */ + [0xc539, 0xc539], /* Hangul Syllable */ + [0xc53a, 0xc53a], /* Hangul Syllable */ + [0xc53b, 0xc53b], /* Hangul Syllable */ + [0xc53c, 0xc53c], /* Hangul Syllable */ + [0xc53d, 0xc53d], /* Hangul Syllable */ + [0xc53e, 0xc53e], /* Hangul Syllable */ + [0xc53f, 0xc53f], /* Hangul Syllable */ + [0xc540, 0xc540], /* Hangul Syllable */ + [0xc541, 0xc541], /* Hangul Syllable */ + [0xc542, 0xc542], /* Hangul Syllable */ + [0xc543, 0xc543], /* Hangul Syllable */ + [0xc544, 0xc544], /* Hangul Syllable */ + [0xc545, 0xc545], /* Hangul Syllable */ + [0xc546, 0xc546], /* Hangul Syllable */ + [0xc547, 0xc547], /* Hangul Syllable */ + [0xc548, 0xc548], /* Hangul Syllable */ + [0xc549, 0xc549], /* Hangul Syllable */ + [0xc54a, 0xc54a], /* Hangul Syllable */ + [0xc54b, 0xc54b], /* Hangul Syllable */ + [0xc54c, 0xc54c], /* Hangul Syllable */ + [0xc54d, 0xc54d], /* Hangul Syllable */ + [0xc54e, 0xc54e], /* Hangul Syllable */ + [0xc54f, 0xc54f], /* Hangul Syllable */ + [0xc550, 0xc550], /* Hangul Syllable */ + [0xc551, 0xc551], /* Hangul Syllable */ + [0xc552, 0xc552], /* Hangul Syllable */ + [0xc553, 0xc553], /* Hangul Syllable */ + [0xc554, 0xc554], /* Hangul Syllable */ + [0xc555, 0xc555], /* Hangul Syllable */ + [0xc556, 0xc556], /* Hangul Syllable */ + [0xc557, 0xc557], /* Hangul Syllable */ + [0xc558, 0xc558], /* Hangul Syllable */ + [0xc559, 0xc559], /* Hangul Syllable */ + [0xc55a, 0xc55a], /* Hangul Syllable */ + [0xc55b, 0xc55b], /* Hangul Syllable */ + [0xc55c, 0xc55c], /* Hangul Syllable */ + [0xc55d, 0xc55d], /* Hangul Syllable */ + [0xc55e, 0xc55e], /* Hangul Syllable */ + [0xc55f, 0xc55f], /* Hangul Syllable */ + [0xc560, 0xc560], /* Hangul Syllable */ + [0xc561, 0xc561], /* Hangul Syllable */ + [0xc562, 0xc562], /* Hangul Syllable */ + [0xc563, 0xc563], /* Hangul Syllable */ + [0xc564, 0xc564], /* Hangul Syllable */ + [0xc565, 0xc565], /* Hangul Syllable */ + [0xc566, 0xc566], /* Hangul Syllable */ + [0xc567, 0xc567], /* Hangul Syllable */ + [0xc568, 0xc568], /* Hangul Syllable */ + [0xc569, 0xc569], /* Hangul Syllable */ + [0xc56a, 0xc56a], /* Hangul Syllable */ + [0xc56b, 0xc56b], /* Hangul Syllable */ + [0xc56c, 0xc56c], /* Hangul Syllable */ + [0xc56d, 0xc56d], /* Hangul Syllable */ + [0xc56e, 0xc56e], /* Hangul Syllable */ + [0xc56f, 0xc56f], /* Hangul Syllable */ + [0xc570, 0xc570], /* Hangul Syllable */ + [0xc571, 0xc571], /* Hangul Syllable */ + [0xc572, 0xc572], /* Hangul Syllable */ + [0xc573, 0xc573], /* Hangul Syllable */ + [0xc574, 0xc574], /* Hangul Syllable */ + [0xc575, 0xc575], /* Hangul Syllable */ + [0xc576, 0xc576], /* Hangul Syllable */ + [0xc577, 0xc577], /* Hangul Syllable */ + [0xc578, 0xc578], /* Hangul Syllable */ + [0xc579, 0xc579], /* Hangul Syllable */ + [0xc57a, 0xc57a], /* Hangul Syllable */ + [0xc57b, 0xc57b], /* Hangul Syllable */ + [0xc57c, 0xc57c], /* Hangul Syllable */ + [0xc57d, 0xc57d], /* Hangul Syllable */ + [0xc57e, 0xc57e], /* Hangul Syllable */ + [0xc57f, 0xc57f], /* Hangul Syllable */ + [0xc580, 0xc580], /* Hangul Syllable */ + [0xc581, 0xc581], /* Hangul Syllable */ + [0xc582, 0xc582], /* Hangul Syllable */ + [0xc583, 0xc583], /* Hangul Syllable */ + [0xc584, 0xc584], /* Hangul Syllable */ + [0xc585, 0xc585], /* Hangul Syllable */ + [0xc586, 0xc586], /* Hangul Syllable */ + [0xc587, 0xc587], /* Hangul Syllable */ + [0xc588, 0xc588], /* Hangul Syllable */ + [0xc589, 0xc589], /* Hangul Syllable */ + [0xc58a, 0xc58a], /* Hangul Syllable */ + [0xc58b, 0xc58b], /* Hangul Syllable */ + [0xc58c, 0xc58c], /* Hangul Syllable */ + [0xc58d, 0xc58d], /* Hangul Syllable */ + [0xc58e, 0xc58e], /* Hangul Syllable */ + [0xc58f, 0xc58f], /* Hangul Syllable */ + [0xc590, 0xc590], /* Hangul Syllable */ + [0xc591, 0xc591], /* Hangul Syllable */ + [0xc592, 0xc592], /* Hangul Syllable */ + [0xc593, 0xc593], /* Hangul Syllable */ + [0xc594, 0xc594], /* Hangul Syllable */ + [0xc595, 0xc595], /* Hangul Syllable */ + [0xc596, 0xc596], /* Hangul Syllable */ + [0xc597, 0xc597], /* Hangul Syllable */ + [0xc598, 0xc598], /* Hangul Syllable */ + [0xc599, 0xc599], /* Hangul Syllable */ + [0xc59a, 0xc59a], /* Hangul Syllable */ + [0xc59b, 0xc59b], /* Hangul Syllable */ + [0xc59c, 0xc59c], /* Hangul Syllable */ + [0xc59d, 0xc59d], /* Hangul Syllable */ + [0xc59e, 0xc59e], /* Hangul Syllable */ + [0xc59f, 0xc59f], /* Hangul Syllable */ + [0xc5a0, 0xc5a0], /* Hangul Syllable */ + [0xc5a1, 0xc5a1], /* Hangul Syllable */ + [0xc5a2, 0xc5a2], /* Hangul Syllable */ + [0xc5a3, 0xc5a3], /* Hangul Syllable */ + [0xc5a4, 0xc5a4], /* Hangul Syllable */ + [0xc5a5, 0xc5a5], /* Hangul Syllable */ + [0xc5a6, 0xc5a6], /* Hangul Syllable */ + [0xc5a7, 0xc5a7], /* Hangul Syllable */ + [0xc5a8, 0xc5a8], /* Hangul Syllable */ + [0xc5a9, 0xc5a9], /* Hangul Syllable */ + [0xc5aa, 0xc5aa], /* Hangul Syllable */ + [0xc5ab, 0xc5ab], /* Hangul Syllable */ + [0xc5ac, 0xc5ac], /* Hangul Syllable */ + [0xc5ad, 0xc5ad], /* Hangul Syllable */ + [0xc5ae, 0xc5ae], /* Hangul Syllable */ + [0xc5af, 0xc5af], /* Hangul Syllable */ + [0xc5b0, 0xc5b0], /* Hangul Syllable */ + [0xc5b1, 0xc5b1], /* Hangul Syllable */ + [0xc5b2, 0xc5b2], /* Hangul Syllable */ + [0xc5b3, 0xc5b3], /* Hangul Syllable */ + [0xc5b4, 0xc5b4], /* Hangul Syllable */ + [0xc5b5, 0xc5b5], /* Hangul Syllable */ + [0xc5b6, 0xc5b6], /* Hangul Syllable */ + [0xc5b7, 0xc5b7], /* Hangul Syllable */ + [0xc5b8, 0xc5b8], /* Hangul Syllable */ + [0xc5b9, 0xc5b9], /* Hangul Syllable */ + [0xc5ba, 0xc5ba], /* Hangul Syllable */ + [0xc5bb, 0xc5bb], /* Hangul Syllable */ + [0xc5bc, 0xc5bc], /* Hangul Syllable */ + [0xc5bd, 0xc5bd], /* Hangul Syllable */ + [0xc5be, 0xc5be], /* Hangul Syllable */ + [0xc5bf, 0xc5bf], /* Hangul Syllable */ + [0xc5c0, 0xc5c0], /* Hangul Syllable */ + [0xc5c1, 0xc5c1], /* Hangul Syllable */ + [0xc5c2, 0xc5c2], /* Hangul Syllable */ + [0xc5c3, 0xc5c3], /* Hangul Syllable */ + [0xc5c4, 0xc5c4], /* Hangul Syllable */ + [0xc5c5, 0xc5c5], /* Hangul Syllable */ + [0xc5c6, 0xc5c6], /* Hangul Syllable */ + [0xc5c7, 0xc5c7], /* Hangul Syllable */ + [0xc5c8, 0xc5c8], /* Hangul Syllable */ + [0xc5c9, 0xc5c9], /* Hangul Syllable */ + [0xc5ca, 0xc5ca], /* Hangul Syllable */ + [0xc5cb, 0xc5cb], /* Hangul Syllable */ + [0xc5cc, 0xc5cc], /* Hangul Syllable */ + [0xc5cd, 0xc5cd], /* Hangul Syllable */ + [0xc5ce, 0xc5ce], /* Hangul Syllable */ + [0xc5cf, 0xc5cf], /* Hangul Syllable */ + [0xc5d0, 0xc5d0], /* Hangul Syllable */ + [0xc5d1, 0xc5d1], /* Hangul Syllable */ + [0xc5d2, 0xc5d2], /* Hangul Syllable */ + [0xc5d3, 0xc5d3], /* Hangul Syllable */ + [0xc5d4, 0xc5d4], /* Hangul Syllable */ + [0xc5d5, 0xc5d5], /* Hangul Syllable */ + [0xc5d6, 0xc5d6], /* Hangul Syllable */ + [0xc5d7, 0xc5d7], /* Hangul Syllable */ + [0xc5d8, 0xc5d8], /* Hangul Syllable */ + [0xc5d9, 0xc5d9], /* Hangul Syllable */ + [0xc5da, 0xc5da], /* Hangul Syllable */ + [0xc5db, 0xc5db], /* Hangul Syllable */ + [0xc5dc, 0xc5dc], /* Hangul Syllable */ + [0xc5dd, 0xc5dd], /* Hangul Syllable */ + [0xc5de, 0xc5de], /* Hangul Syllable */ + [0xc5df, 0xc5df], /* Hangul Syllable */ + [0xc5e0, 0xc5e0], /* Hangul Syllable */ + [0xc5e1, 0xc5e1], /* Hangul Syllable */ + [0xc5e2, 0xc5e2], /* Hangul Syllable */ + [0xc5e3, 0xc5e3], /* Hangul Syllable */ + [0xc5e4, 0xc5e4], /* Hangul Syllable */ + [0xc5e5, 0xc5e5], /* Hangul Syllable */ + [0xc5e6, 0xc5e6], /* Hangul Syllable */ + [0xc5e7, 0xc5e7], /* Hangul Syllable */ + [0xc5e8, 0xc5e8], /* Hangul Syllable */ + [0xc5e9, 0xc5e9], /* Hangul Syllable */ + [0xc5ea, 0xc5ea], /* Hangul Syllable */ + [0xc5eb, 0xc5eb], /* Hangul Syllable */ + [0xc5ec, 0xc5ec], /* Hangul Syllable */ + [0xc5ed, 0xc5ed], /* Hangul Syllable */ + [0xc5ee, 0xc5ee], /* Hangul Syllable */ + [0xc5ef, 0xc5ef], /* Hangul Syllable */ + [0xc5f0, 0xc5f0], /* Hangul Syllable */ + [0xc5f1, 0xc5f1], /* Hangul Syllable */ + [0xc5f2, 0xc5f2], /* Hangul Syllable */ + [0xc5f3, 0xc5f3], /* Hangul Syllable */ + [0xc5f4, 0xc5f4], /* Hangul Syllable */ + [0xc5f5, 0xc5f5], /* Hangul Syllable */ + [0xc5f6, 0xc5f6], /* Hangul Syllable */ + [0xc5f7, 0xc5f7], /* Hangul Syllable */ + [0xc5f8, 0xc5f8], /* Hangul Syllable */ + [0xc5f9, 0xc5f9], /* Hangul Syllable */ + [0xc5fa, 0xc5fa], /* Hangul Syllable */ + [0xc5fb, 0xc5fb], /* Hangul Syllable */ + [0xc5fc, 0xc5fc], /* Hangul Syllable */ + [0xc5fd, 0xc5fd], /* Hangul Syllable */ + [0xc5fe, 0xc5fe], /* Hangul Syllable */ + [0xc5ff, 0xc5ff], /* Hangul Syllable */ + [0xc600, 0xc600], /* Hangul Syllable */ + [0xc601, 0xc601], /* Hangul Syllable */ + [0xc602, 0xc602], /* Hangul Syllable */ + [0xc603, 0xc603], /* Hangul Syllable */ + [0xc604, 0xc604], /* Hangul Syllable */ + [0xc605, 0xc605], /* Hangul Syllable */ + [0xc606, 0xc606], /* Hangul Syllable */ + [0xc607, 0xc607], /* Hangul Syllable */ + [0xc608, 0xc608], /* Hangul Syllable */ + [0xc609, 0xc609], /* Hangul Syllable */ + [0xc60a, 0xc60a], /* Hangul Syllable */ + [0xc60b, 0xc60b], /* Hangul Syllable */ + [0xc60c, 0xc60c], /* Hangul Syllable */ + [0xc60d, 0xc60d], /* Hangul Syllable */ + [0xc60e, 0xc60e], /* Hangul Syllable */ + [0xc60f, 0xc60f], /* Hangul Syllable */ + [0xc610, 0xc610], /* Hangul Syllable */ + [0xc611, 0xc611], /* Hangul Syllable */ + [0xc612, 0xc612], /* Hangul Syllable */ + [0xc613, 0xc613], /* Hangul Syllable */ + [0xc614, 0xc614], /* Hangul Syllable */ + [0xc615, 0xc615], /* Hangul Syllable */ + [0xc616, 0xc616], /* Hangul Syllable */ + [0xc617, 0xc617], /* Hangul Syllable */ + [0xc618, 0xc618], /* Hangul Syllable */ + [0xc619, 0xc619], /* Hangul Syllable */ + [0xc61a, 0xc61a], /* Hangul Syllable */ + [0xc61b, 0xc61b], /* Hangul Syllable */ + [0xc61c, 0xc61c], /* Hangul Syllable */ + [0xc61d, 0xc61d], /* Hangul Syllable */ + [0xc61e, 0xc61e], /* Hangul Syllable */ + [0xc61f, 0xc61f], /* Hangul Syllable */ + [0xc620, 0xc620], /* Hangul Syllable */ + [0xc621, 0xc621], /* Hangul Syllable */ + [0xc622, 0xc622], /* Hangul Syllable */ + [0xc623, 0xc623], /* Hangul Syllable */ + [0xc624, 0xc624], /* Hangul Syllable */ + [0xc625, 0xc625], /* Hangul Syllable */ + [0xc626, 0xc626], /* Hangul Syllable */ + [0xc627, 0xc627], /* Hangul Syllable */ + [0xc628, 0xc628], /* Hangul Syllable */ + [0xc629, 0xc629], /* Hangul Syllable */ + [0xc62a, 0xc62a], /* Hangul Syllable */ + [0xc62b, 0xc62b], /* Hangul Syllable */ + [0xc62c, 0xc62c], /* Hangul Syllable */ + [0xc62d, 0xc62d], /* Hangul Syllable */ + [0xc62e, 0xc62e], /* Hangul Syllable */ + [0xc62f, 0xc62f], /* Hangul Syllable */ + [0xc630, 0xc630], /* Hangul Syllable */ + [0xc631, 0xc631], /* Hangul Syllable */ + [0xc632, 0xc632], /* Hangul Syllable */ + [0xc633, 0xc633], /* Hangul Syllable */ + [0xc634, 0xc634], /* Hangul Syllable */ + [0xc635, 0xc635], /* Hangul Syllable */ + [0xc636, 0xc636], /* Hangul Syllable */ + [0xc637, 0xc637], /* Hangul Syllable */ + [0xc638, 0xc638], /* Hangul Syllable */ + [0xc639, 0xc639], /* Hangul Syllable */ + [0xc63a, 0xc63a], /* Hangul Syllable */ + [0xc63b, 0xc63b], /* Hangul Syllable */ + [0xc63c, 0xc63c], /* Hangul Syllable */ + [0xc63d, 0xc63d], /* Hangul Syllable */ + [0xc63e, 0xc63e], /* Hangul Syllable */ + [0xc63f, 0xc63f], /* Hangul Syllable */ + [0xc640, 0xc640], /* Hangul Syllable */ + [0xc641, 0xc641], /* Hangul Syllable */ + [0xc642, 0xc642], /* Hangul Syllable */ + [0xc643, 0xc643], /* Hangul Syllable */ + [0xc644, 0xc644], /* Hangul Syllable */ + [0xc645, 0xc645], /* Hangul Syllable */ + [0xc646, 0xc646], /* Hangul Syllable */ + [0xc647, 0xc647], /* Hangul Syllable */ + [0xc648, 0xc648], /* Hangul Syllable */ + [0xc649, 0xc649], /* Hangul Syllable */ + [0xc64a, 0xc64a], /* Hangul Syllable */ + [0xc64b, 0xc64b], /* Hangul Syllable */ + [0xc64c, 0xc64c], /* Hangul Syllable */ + [0xc64d, 0xc64d], /* Hangul Syllable */ + [0xc64e, 0xc64e], /* Hangul Syllable */ + [0xc64f, 0xc64f], /* Hangul Syllable */ + [0xc650, 0xc650], /* Hangul Syllable */ + [0xc651, 0xc651], /* Hangul Syllable */ + [0xc652, 0xc652], /* Hangul Syllable */ + [0xc653, 0xc653], /* Hangul Syllable */ + [0xc654, 0xc654], /* Hangul Syllable */ + [0xc655, 0xc655], /* Hangul Syllable */ + [0xc656, 0xc656], /* Hangul Syllable */ + [0xc657, 0xc657], /* Hangul Syllable */ + [0xc658, 0xc658], /* Hangul Syllable */ + [0xc659, 0xc659], /* Hangul Syllable */ + [0xc65a, 0xc65a], /* Hangul Syllable */ + [0xc65b, 0xc65b], /* Hangul Syllable */ + [0xc65c, 0xc65c], /* Hangul Syllable */ + [0xc65d, 0xc65d], /* Hangul Syllable */ + [0xc65e, 0xc65e], /* Hangul Syllable */ + [0xc65f, 0xc65f], /* Hangul Syllable */ + [0xc660, 0xc660], /* Hangul Syllable */ + [0xc661, 0xc661], /* Hangul Syllable */ + [0xc662, 0xc662], /* Hangul Syllable */ + [0xc663, 0xc663], /* Hangul Syllable */ + [0xc664, 0xc664], /* Hangul Syllable */ + [0xc665, 0xc665], /* Hangul Syllable */ + [0xc666, 0xc666], /* Hangul Syllable */ + [0xc667, 0xc667], /* Hangul Syllable */ + [0xc668, 0xc668], /* Hangul Syllable */ + [0xc669, 0xc669], /* Hangul Syllable */ + [0xc66a, 0xc66a], /* Hangul Syllable */ + [0xc66b, 0xc66b], /* Hangul Syllable */ + [0xc66c, 0xc66c], /* Hangul Syllable */ + [0xc66d, 0xc66d], /* Hangul Syllable */ + [0xc66e, 0xc66e], /* Hangul Syllable */ + [0xc66f, 0xc66f], /* Hangul Syllable */ + [0xc670, 0xc670], /* Hangul Syllable */ + [0xc671, 0xc671], /* Hangul Syllable */ + [0xc672, 0xc672], /* Hangul Syllable */ + [0xc673, 0xc673], /* Hangul Syllable */ + [0xc674, 0xc674], /* Hangul Syllable */ + [0xc675, 0xc675], /* Hangul Syllable */ + [0xc676, 0xc676], /* Hangul Syllable */ + [0xc677, 0xc677], /* Hangul Syllable */ + [0xc678, 0xc678], /* Hangul Syllable */ + [0xc679, 0xc679], /* Hangul Syllable */ + [0xc67a, 0xc67a], /* Hangul Syllable */ + [0xc67b, 0xc67b], /* Hangul Syllable */ + [0xc67c, 0xc67c], /* Hangul Syllable */ + [0xc67d, 0xc67d], /* Hangul Syllable */ + [0xc67e, 0xc67e], /* Hangul Syllable */ + [0xc67f, 0xc67f], /* Hangul Syllable */ + [0xc680, 0xc680], /* Hangul Syllable */ + [0xc681, 0xc681], /* Hangul Syllable */ + [0xc682, 0xc682], /* Hangul Syllable */ + [0xc683, 0xc683], /* Hangul Syllable */ + [0xc684, 0xc684], /* Hangul Syllable */ + [0xc685, 0xc685], /* Hangul Syllable */ + [0xc686, 0xc686], /* Hangul Syllable */ + [0xc687, 0xc687], /* Hangul Syllable */ + [0xc688, 0xc688], /* Hangul Syllable */ + [0xc689, 0xc689], /* Hangul Syllable */ + [0xc68a, 0xc68a], /* Hangul Syllable */ + [0xc68b, 0xc68b], /* Hangul Syllable */ + [0xc68c, 0xc68c], /* Hangul Syllable */ + [0xc68d, 0xc68d], /* Hangul Syllable */ + [0xc68e, 0xc68e], /* Hangul Syllable */ + [0xc68f, 0xc68f], /* Hangul Syllable */ + [0xc690, 0xc690], /* Hangul Syllable */ + [0xc691, 0xc691], /* Hangul Syllable */ + [0xc692, 0xc692], /* Hangul Syllable */ + [0xc693, 0xc693], /* Hangul Syllable */ + [0xc694, 0xc694], /* Hangul Syllable */ + [0xc695, 0xc695], /* Hangul Syllable */ + [0xc696, 0xc696], /* Hangul Syllable */ + [0xc697, 0xc697], /* Hangul Syllable */ + [0xc698, 0xc698], /* Hangul Syllable */ + [0xc699, 0xc699], /* Hangul Syllable */ + [0xc69a, 0xc69a], /* Hangul Syllable */ + [0xc69b, 0xc69b], /* Hangul Syllable */ + [0xc69c, 0xc69c], /* Hangul Syllable */ + [0xc69d, 0xc69d], /* Hangul Syllable */ + [0xc69e, 0xc69e], /* Hangul Syllable */ + [0xc69f, 0xc69f], /* Hangul Syllable */ + [0xc6a0, 0xc6a0], /* Hangul Syllable */ + [0xc6a1, 0xc6a1], /* Hangul Syllable */ + [0xc6a2, 0xc6a2], /* Hangul Syllable */ + [0xc6a3, 0xc6a3], /* Hangul Syllable */ + [0xc6a4, 0xc6a4], /* Hangul Syllable */ + [0xc6a5, 0xc6a5], /* Hangul Syllable */ + [0xc6a6, 0xc6a6], /* Hangul Syllable */ + [0xc6a7, 0xc6a7], /* Hangul Syllable */ + [0xc6a8, 0xc6a8], /* Hangul Syllable */ + [0xc6a9, 0xc6a9], /* Hangul Syllable */ + [0xc6aa, 0xc6aa], /* Hangul Syllable */ + [0xc6ab, 0xc6ab], /* Hangul Syllable */ + [0xc6ac, 0xc6ac], /* Hangul Syllable */ + [0xc6ad, 0xc6ad], /* Hangul Syllable */ + [0xc6ae, 0xc6ae], /* Hangul Syllable */ + [0xc6af, 0xc6af], /* Hangul Syllable */ + [0xc6b0, 0xc6b0], /* Hangul Syllable */ + [0xc6b1, 0xc6b1], /* Hangul Syllable */ + [0xc6b2, 0xc6b2], /* Hangul Syllable */ + [0xc6b3, 0xc6b3], /* Hangul Syllable */ + [0xc6b4, 0xc6b4], /* Hangul Syllable */ + [0xc6b5, 0xc6b5], /* Hangul Syllable */ + [0xc6b6, 0xc6b6], /* Hangul Syllable */ + [0xc6b7, 0xc6b7], /* Hangul Syllable */ + [0xc6b8, 0xc6b8], /* Hangul Syllable */ + [0xc6b9, 0xc6b9], /* Hangul Syllable */ + [0xc6ba, 0xc6ba], /* Hangul Syllable */ + [0xc6bb, 0xc6bb], /* Hangul Syllable */ + [0xc6bc, 0xc6bc], /* Hangul Syllable */ + [0xc6bd, 0xc6bd], /* Hangul Syllable */ + [0xc6be, 0xc6be], /* Hangul Syllable */ + [0xc6bf, 0xc6bf], /* Hangul Syllable */ + [0xc6c0, 0xc6c0], /* Hangul Syllable */ + [0xc6c1, 0xc6c1], /* Hangul Syllable */ + [0xc6c2, 0xc6c2], /* Hangul Syllable */ + [0xc6c3, 0xc6c3], /* Hangul Syllable */ + [0xc6c4, 0xc6c4], /* Hangul Syllable */ + [0xc6c5, 0xc6c5], /* Hangul Syllable */ + [0xc6c6, 0xc6c6], /* Hangul Syllable */ + [0xc6c7, 0xc6c7], /* Hangul Syllable */ + [0xc6c8, 0xc6c8], /* Hangul Syllable */ + [0xc6c9, 0xc6c9], /* Hangul Syllable */ + [0xc6ca, 0xc6ca], /* Hangul Syllable */ + [0xc6cb, 0xc6cb], /* Hangul Syllable */ + [0xc6cc, 0xc6cc], /* Hangul Syllable */ + [0xc6cd, 0xc6cd], /* Hangul Syllable */ + [0xc6ce, 0xc6ce], /* Hangul Syllable */ + [0xc6cf, 0xc6cf], /* Hangul Syllable */ + [0xc6d0, 0xc6d0], /* Hangul Syllable */ + [0xc6d1, 0xc6d1], /* Hangul Syllable */ + [0xc6d2, 0xc6d2], /* Hangul Syllable */ + [0xc6d3, 0xc6d3], /* Hangul Syllable */ + [0xc6d4, 0xc6d4], /* Hangul Syllable */ + [0xc6d5, 0xc6d5], /* Hangul Syllable */ + [0xc6d6, 0xc6d6], /* Hangul Syllable */ + [0xc6d7, 0xc6d7], /* Hangul Syllable */ + [0xc6d8, 0xc6d8], /* Hangul Syllable */ + [0xc6d9, 0xc6d9], /* Hangul Syllable */ + [0xc6da, 0xc6da], /* Hangul Syllable */ + [0xc6db, 0xc6db], /* Hangul Syllable */ + [0xc6dc, 0xc6dc], /* Hangul Syllable */ + [0xc6dd, 0xc6dd], /* Hangul Syllable */ + [0xc6de, 0xc6de], /* Hangul Syllable */ + [0xc6df, 0xc6df], /* Hangul Syllable */ + [0xc6e0, 0xc6e0], /* Hangul Syllable */ + [0xc6e1, 0xc6e1], /* Hangul Syllable */ + [0xc6e2, 0xc6e2], /* Hangul Syllable */ + [0xc6e3, 0xc6e3], /* Hangul Syllable */ + [0xc6e4, 0xc6e4], /* Hangul Syllable */ + [0xc6e5, 0xc6e5], /* Hangul Syllable */ + [0xc6e6, 0xc6e6], /* Hangul Syllable */ + [0xc6e7, 0xc6e7], /* Hangul Syllable */ + [0xc6e8, 0xc6e8], /* Hangul Syllable */ + [0xc6e9, 0xc6e9], /* Hangul Syllable */ + [0xc6ea, 0xc6ea], /* Hangul Syllable */ + [0xc6eb, 0xc6eb], /* Hangul Syllable */ + [0xc6ec, 0xc6ec], /* Hangul Syllable */ + [0xc6ed, 0xc6ed], /* Hangul Syllable */ + [0xc6ee, 0xc6ee], /* Hangul Syllable */ + [0xc6ef, 0xc6ef], /* Hangul Syllable */ + [0xc6f0, 0xc6f0], /* Hangul Syllable */ + [0xc6f1, 0xc6f1], /* Hangul Syllable */ + [0xc6f2, 0xc6f2], /* Hangul Syllable */ + [0xc6f3, 0xc6f3], /* Hangul Syllable */ + [0xc6f4, 0xc6f4], /* Hangul Syllable */ + [0xc6f5, 0xc6f5], /* Hangul Syllable */ + [0xc6f6, 0xc6f6], /* Hangul Syllable */ + [0xc6f7, 0xc6f7], /* Hangul Syllable */ + [0xc6f8, 0xc6f8], /* Hangul Syllable */ + [0xc6f9, 0xc6f9], /* Hangul Syllable */ + [0xc6fa, 0xc6fa], /* Hangul Syllable */ + [0xc6fb, 0xc6fb], /* Hangul Syllable */ + [0xc6fc, 0xc6fc], /* Hangul Syllable */ + [0xc6fd, 0xc6fd], /* Hangul Syllable */ + [0xc6fe, 0xc6fe], /* Hangul Syllable */ + [0xc6ff, 0xc6ff], /* Hangul Syllable */ + [0xc700, 0xc700], /* Hangul Syllable */ + [0xc701, 0xc701], /* Hangul Syllable */ + [0xc702, 0xc702], /* Hangul Syllable */ + [0xc703, 0xc703], /* Hangul Syllable */ + [0xc704, 0xc704], /* Hangul Syllable */ + [0xc705, 0xc705], /* Hangul Syllable */ + [0xc706, 0xc706], /* Hangul Syllable */ + [0xc707, 0xc707], /* Hangul Syllable */ + [0xc708, 0xc708], /* Hangul Syllable */ + [0xc709, 0xc709], /* Hangul Syllable */ + [0xc70a, 0xc70a], /* Hangul Syllable */ + [0xc70b, 0xc70b], /* Hangul Syllable */ + [0xc70c, 0xc70c], /* Hangul Syllable */ + [0xc70d, 0xc70d], /* Hangul Syllable */ + [0xc70e, 0xc70e], /* Hangul Syllable */ + [0xc70f, 0xc70f], /* Hangul Syllable */ + [0xc710, 0xc710], /* Hangul Syllable */ + [0xc711, 0xc711], /* Hangul Syllable */ + [0xc712, 0xc712], /* Hangul Syllable */ + [0xc713, 0xc713], /* Hangul Syllable */ + [0xc714, 0xc714], /* Hangul Syllable */ + [0xc715, 0xc715], /* Hangul Syllable */ + [0xc716, 0xc716], /* Hangul Syllable */ + [0xc717, 0xc717], /* Hangul Syllable */ + [0xc718, 0xc718], /* Hangul Syllable */ + [0xc719, 0xc719], /* Hangul Syllable */ + [0xc71a, 0xc71a], /* Hangul Syllable */ + [0xc71b, 0xc71b], /* Hangul Syllable */ + [0xc71c, 0xc71c], /* Hangul Syllable */ + [0xc71d, 0xc71d], /* Hangul Syllable */ + [0xc71e, 0xc71e], /* Hangul Syllable */ + [0xc71f, 0xc71f], /* Hangul Syllable */ + [0xc720, 0xc720], /* Hangul Syllable */ + [0xc721, 0xc721], /* Hangul Syllable */ + [0xc722, 0xc722], /* Hangul Syllable */ + [0xc723, 0xc723], /* Hangul Syllable */ + [0xc724, 0xc724], /* Hangul Syllable */ + [0xc725, 0xc725], /* Hangul Syllable */ + [0xc726, 0xc726], /* Hangul Syllable */ + [0xc727, 0xc727], /* Hangul Syllable */ + [0xc728, 0xc728], /* Hangul Syllable */ + [0xc729, 0xc729], /* Hangul Syllable */ + [0xc72a, 0xc72a], /* Hangul Syllable */ + [0xc72b, 0xc72b], /* Hangul Syllable */ + [0xc72c, 0xc72c], /* Hangul Syllable */ + [0xc72d, 0xc72d], /* Hangul Syllable */ + [0xc72e, 0xc72e], /* Hangul Syllable */ + [0xc72f, 0xc72f], /* Hangul Syllable */ + [0xc730, 0xc730], /* Hangul Syllable */ + [0xc731, 0xc731], /* Hangul Syllable */ + [0xc732, 0xc732], /* Hangul Syllable */ + [0xc733, 0xc733], /* Hangul Syllable */ + [0xc734, 0xc734], /* Hangul Syllable */ + [0xc735, 0xc735], /* Hangul Syllable */ + [0xc736, 0xc736], /* Hangul Syllable */ + [0xc737, 0xc737], /* Hangul Syllable */ + [0xc738, 0xc738], /* Hangul Syllable */ + [0xc739, 0xc739], /* Hangul Syllable */ + [0xc73a, 0xc73a], /* Hangul Syllable */ + [0xc73b, 0xc73b], /* Hangul Syllable */ + [0xc73c, 0xc73c], /* Hangul Syllable */ + [0xc73d, 0xc73d], /* Hangul Syllable */ + [0xc73e, 0xc73e], /* Hangul Syllable */ + [0xc73f, 0xc73f], /* Hangul Syllable */ + [0xc740, 0xc740], /* Hangul Syllable */ + [0xc741, 0xc741], /* Hangul Syllable */ + [0xc742, 0xc742], /* Hangul Syllable */ + [0xc743, 0xc743], /* Hangul Syllable */ + [0xc744, 0xc744], /* Hangul Syllable */ + [0xc745, 0xc745], /* Hangul Syllable */ + [0xc746, 0xc746], /* Hangul Syllable */ + [0xc747, 0xc747], /* Hangul Syllable */ + [0xc748, 0xc748], /* Hangul Syllable */ + [0xc749, 0xc749], /* Hangul Syllable */ + [0xc74a, 0xc74a], /* Hangul Syllable */ + [0xc74b, 0xc74b], /* Hangul Syllable */ + [0xc74c, 0xc74c], /* Hangul Syllable */ + [0xc74d, 0xc74d], /* Hangul Syllable */ + [0xc74e, 0xc74e], /* Hangul Syllable */ + [0xc74f, 0xc74f], /* Hangul Syllable */ + [0xc750, 0xc750], /* Hangul Syllable */ + [0xc751, 0xc751], /* Hangul Syllable */ + [0xc752, 0xc752], /* Hangul Syllable */ + [0xc753, 0xc753], /* Hangul Syllable */ + [0xc754, 0xc754], /* Hangul Syllable */ + [0xc755, 0xc755], /* Hangul Syllable */ + [0xc756, 0xc756], /* Hangul Syllable */ + [0xc757, 0xc757], /* Hangul Syllable */ + [0xc758, 0xc758], /* Hangul Syllable */ + [0xc759, 0xc759], /* Hangul Syllable */ + [0xc75a, 0xc75a], /* Hangul Syllable */ + [0xc75b, 0xc75b], /* Hangul Syllable */ + [0xc75c, 0xc75c], /* Hangul Syllable */ + [0xc75d, 0xc75d], /* Hangul Syllable */ + [0xc75e, 0xc75e], /* Hangul Syllable */ + [0xc75f, 0xc75f], /* Hangul Syllable */ + [0xc760, 0xc760], /* Hangul Syllable */ + [0xc761, 0xc761], /* Hangul Syllable */ + [0xc762, 0xc762], /* Hangul Syllable */ + [0xc763, 0xc763], /* Hangul Syllable */ + [0xc764, 0xc764], /* Hangul Syllable */ + [0xc765, 0xc765], /* Hangul Syllable */ + [0xc766, 0xc766], /* Hangul Syllable */ + [0xc767, 0xc767], /* Hangul Syllable */ + [0xc768, 0xc768], /* Hangul Syllable */ + [0xc769, 0xc769], /* Hangul Syllable */ + [0xc76a, 0xc76a], /* Hangul Syllable */ + [0xc76b, 0xc76b], /* Hangul Syllable */ + [0xc76c, 0xc76c], /* Hangul Syllable */ + [0xc76d, 0xc76d], /* Hangul Syllable */ + [0xc76e, 0xc76e], /* Hangul Syllable */ + [0xc76f, 0xc76f], /* Hangul Syllable */ + [0xc770, 0xc770], /* Hangul Syllable */ + [0xc771, 0xc771], /* Hangul Syllable */ + [0xc772, 0xc772], /* Hangul Syllable */ + [0xc773, 0xc773], /* Hangul Syllable */ + [0xc774, 0xc774], /* Hangul Syllable */ + [0xc775, 0xc775], /* Hangul Syllable */ + [0xc776, 0xc776], /* Hangul Syllable */ + [0xc777, 0xc777], /* Hangul Syllable */ + [0xc778, 0xc778], /* Hangul Syllable */ + [0xc779, 0xc779], /* Hangul Syllable */ + [0xc77a, 0xc77a], /* Hangul Syllable */ + [0xc77b, 0xc77b], /* Hangul Syllable */ + [0xc77c, 0xc77c], /* Hangul Syllable */ + [0xc77d, 0xc77d], /* Hangul Syllable */ + [0xc77e, 0xc77e], /* Hangul Syllable */ + [0xc77f, 0xc77f], /* Hangul Syllable */ + [0xc780, 0xc780], /* Hangul Syllable */ + [0xc781, 0xc781], /* Hangul Syllable */ + [0xc782, 0xc782], /* Hangul Syllable */ + [0xc783, 0xc783], /* Hangul Syllable */ + [0xc784, 0xc784], /* Hangul Syllable */ + [0xc785, 0xc785], /* Hangul Syllable */ + [0xc786, 0xc786], /* Hangul Syllable */ + [0xc787, 0xc787], /* Hangul Syllable */ + [0xc788, 0xc788], /* Hangul Syllable */ + [0xc789, 0xc789], /* Hangul Syllable */ + [0xc78a, 0xc78a], /* Hangul Syllable */ + [0xc78b, 0xc78b], /* Hangul Syllable */ + [0xc78c, 0xc78c], /* Hangul Syllable */ + [0xc78d, 0xc78d], /* Hangul Syllable */ + [0xc78e, 0xc78e], /* Hangul Syllable */ + [0xc78f, 0xc78f], /* Hangul Syllable */ + [0xc790, 0xc790], /* Hangul Syllable */ + [0xc791, 0xc791], /* Hangul Syllable */ + [0xc792, 0xc792], /* Hangul Syllable */ + [0xc793, 0xc793], /* Hangul Syllable */ + [0xc794, 0xc794], /* Hangul Syllable */ + [0xc795, 0xc795], /* Hangul Syllable */ + [0xc796, 0xc796], /* Hangul Syllable */ + [0xc797, 0xc797], /* Hangul Syllable */ + [0xc798, 0xc798], /* Hangul Syllable */ + [0xc799, 0xc799], /* Hangul Syllable */ + [0xc79a, 0xc79a], /* Hangul Syllable */ + [0xc79b, 0xc79b], /* Hangul Syllable */ + [0xc79c, 0xc79c], /* Hangul Syllable */ + [0xc79d, 0xc79d], /* Hangul Syllable */ + [0xc79e, 0xc79e], /* Hangul Syllable */ + [0xc79f, 0xc79f], /* Hangul Syllable */ + [0xc7a0, 0xc7a0], /* Hangul Syllable */ + [0xc7a1, 0xc7a1], /* Hangul Syllable */ + [0xc7a2, 0xc7a2], /* Hangul Syllable */ + [0xc7a3, 0xc7a3], /* Hangul Syllable */ + [0xc7a4, 0xc7a4], /* Hangul Syllable */ + [0xc7a5, 0xc7a5], /* Hangul Syllable */ + [0xc7a6, 0xc7a6], /* Hangul Syllable */ + [0xc7a7, 0xc7a7], /* Hangul Syllable */ + [0xc7a8, 0xc7a8], /* Hangul Syllable */ + [0xc7a9, 0xc7a9], /* Hangul Syllable */ + [0xc7aa, 0xc7aa], /* Hangul Syllable */ + [0xc7ab, 0xc7ab], /* Hangul Syllable */ + [0xc7ac, 0xc7ac], /* Hangul Syllable */ + [0xc7ad, 0xc7ad], /* Hangul Syllable */ + [0xc7ae, 0xc7ae], /* Hangul Syllable */ + [0xc7af, 0xc7af], /* Hangul Syllable */ + [0xc7b0, 0xc7b0], /* Hangul Syllable */ + [0xc7b1, 0xc7b1], /* Hangul Syllable */ + [0xc7b2, 0xc7b2], /* Hangul Syllable */ + [0xc7b3, 0xc7b3], /* Hangul Syllable */ + [0xc7b4, 0xc7b4], /* Hangul Syllable */ + [0xc7b5, 0xc7b5], /* Hangul Syllable */ + [0xc7b6, 0xc7b6], /* Hangul Syllable */ + [0xc7b7, 0xc7b7], /* Hangul Syllable */ + [0xc7b8, 0xc7b8], /* Hangul Syllable */ + [0xc7b9, 0xc7b9], /* Hangul Syllable */ + [0xc7ba, 0xc7ba], /* Hangul Syllable */ + [0xc7bb, 0xc7bb], /* Hangul Syllable */ + [0xc7bc, 0xc7bc], /* Hangul Syllable */ + [0xc7bd, 0xc7bd], /* Hangul Syllable */ + [0xc7be, 0xc7be], /* Hangul Syllable */ + [0xc7bf, 0xc7bf], /* Hangul Syllable */ + [0xc7c0, 0xc7c0], /* Hangul Syllable */ + [0xc7c1, 0xc7c1], /* Hangul Syllable */ + [0xc7c2, 0xc7c2], /* Hangul Syllable */ + [0xc7c3, 0xc7c3], /* Hangul Syllable */ + [0xc7c4, 0xc7c4], /* Hangul Syllable */ + [0xc7c5, 0xc7c5], /* Hangul Syllable */ + [0xc7c6, 0xc7c6], /* Hangul Syllable */ + [0xc7c7, 0xc7c7], /* Hangul Syllable */ + [0xc7c8, 0xc7c8], /* Hangul Syllable */ + [0xc7c9, 0xc7c9], /* Hangul Syllable */ + [0xc7ca, 0xc7ca], /* Hangul Syllable */ + [0xc7cb, 0xc7cb], /* Hangul Syllable */ + [0xc7cc, 0xc7cc], /* Hangul Syllable */ + [0xc7cd, 0xc7cd], /* Hangul Syllable */ + [0xc7ce, 0xc7ce], /* Hangul Syllable */ + [0xc7cf, 0xc7cf], /* Hangul Syllable */ + [0xc7d0, 0xc7d0], /* Hangul Syllable */ + [0xc7d1, 0xc7d1], /* Hangul Syllable */ + [0xc7d2, 0xc7d2], /* Hangul Syllable */ + [0xc7d3, 0xc7d3], /* Hangul Syllable */ + [0xc7d4, 0xc7d4], /* Hangul Syllable */ + [0xc7d5, 0xc7d5], /* Hangul Syllable */ + [0xc7d6, 0xc7d6], /* Hangul Syllable */ + [0xc7d7, 0xc7d7], /* Hangul Syllable */ + [0xc7d8, 0xc7d8], /* Hangul Syllable */ + [0xc7d9, 0xc7d9], /* Hangul Syllable */ + [0xc7da, 0xc7da], /* Hangul Syllable */ + [0xc7db, 0xc7db], /* Hangul Syllable */ + [0xc7dc, 0xc7dc], /* Hangul Syllable */ + [0xc7dd, 0xc7dd], /* Hangul Syllable */ + [0xc7de, 0xc7de], /* Hangul Syllable */ + [0xc7df, 0xc7df], /* Hangul Syllable */ + [0xc7e0, 0xc7e0], /* Hangul Syllable */ + [0xc7e1, 0xc7e1], /* Hangul Syllable */ + [0xc7e2, 0xc7e2], /* Hangul Syllable */ + [0xc7e3, 0xc7e3], /* Hangul Syllable */ + [0xc7e4, 0xc7e4], /* Hangul Syllable */ + [0xc7e5, 0xc7e5], /* Hangul Syllable */ + [0xc7e6, 0xc7e6], /* Hangul Syllable */ + [0xc7e7, 0xc7e7], /* Hangul Syllable */ + [0xc7e8, 0xc7e8], /* Hangul Syllable */ + [0xc7e9, 0xc7e9], /* Hangul Syllable */ + [0xc7ea, 0xc7ea], /* Hangul Syllable */ + [0xc7eb, 0xc7eb], /* Hangul Syllable */ + [0xc7ec, 0xc7ec], /* Hangul Syllable */ + [0xc7ed, 0xc7ed], /* Hangul Syllable */ + [0xc7ee, 0xc7ee], /* Hangul Syllable */ + [0xc7ef, 0xc7ef], /* Hangul Syllable */ + [0xc7f0, 0xc7f0], /* Hangul Syllable */ + [0xc7f1, 0xc7f1], /* Hangul Syllable */ + [0xc7f2, 0xc7f2], /* Hangul Syllable */ + [0xc7f3, 0xc7f3], /* Hangul Syllable */ + [0xc7f4, 0xc7f4], /* Hangul Syllable */ + [0xc7f5, 0xc7f5], /* Hangul Syllable */ + [0xc7f6, 0xc7f6], /* Hangul Syllable */ + [0xc7f7, 0xc7f7], /* Hangul Syllable */ + [0xc7f8, 0xc7f8], /* Hangul Syllable */ + [0xc7f9, 0xc7f9], /* Hangul Syllable */ + [0xc7fa, 0xc7fa], /* Hangul Syllable */ + [0xc7fb, 0xc7fb], /* Hangul Syllable */ + [0xc7fc, 0xc7fc], /* Hangul Syllable */ + [0xc7fd, 0xc7fd], /* Hangul Syllable */ + [0xc7fe, 0xc7fe], /* Hangul Syllable */ + [0xc7ff, 0xc7ff], /* Hangul Syllable */ + [0xc800, 0xc800], /* Hangul Syllable */ + [0xc801, 0xc801], /* Hangul Syllable */ + [0xc802, 0xc802], /* Hangul Syllable */ + [0xc803, 0xc803], /* Hangul Syllable */ + [0xc804, 0xc804], /* Hangul Syllable */ + [0xc805, 0xc805], /* Hangul Syllable */ + [0xc806, 0xc806], /* Hangul Syllable */ + [0xc807, 0xc807], /* Hangul Syllable */ + [0xc808, 0xc808], /* Hangul Syllable */ + [0xc809, 0xc809], /* Hangul Syllable */ + [0xc80a, 0xc80a], /* Hangul Syllable */ + [0xc80b, 0xc80b], /* Hangul Syllable */ + [0xc80c, 0xc80c], /* Hangul Syllable */ + [0xc80d, 0xc80d], /* Hangul Syllable */ + [0xc80e, 0xc80e], /* Hangul Syllable */ + [0xc80f, 0xc80f], /* Hangul Syllable */ + [0xc810, 0xc810], /* Hangul Syllable */ + [0xc811, 0xc811], /* Hangul Syllable */ + [0xc812, 0xc812], /* Hangul Syllable */ + [0xc813, 0xc813], /* Hangul Syllable */ + [0xc814, 0xc814], /* Hangul Syllable */ + [0xc815, 0xc815], /* Hangul Syllable */ + [0xc816, 0xc816], /* Hangul Syllable */ + [0xc817, 0xc817], /* Hangul Syllable */ + [0xc818, 0xc818], /* Hangul Syllable */ + [0xc819, 0xc819], /* Hangul Syllable */ + [0xc81a, 0xc81a], /* Hangul Syllable */ + [0xc81b, 0xc81b], /* Hangul Syllable */ + [0xc81c, 0xc81c], /* Hangul Syllable */ + [0xc81d, 0xc81d], /* Hangul Syllable */ + [0xc81e, 0xc81e], /* Hangul Syllable */ + [0xc81f, 0xc81f], /* Hangul Syllable */ + [0xc820, 0xc820], /* Hangul Syllable */ + [0xc821, 0xc821], /* Hangul Syllable */ + [0xc822, 0xc822], /* Hangul Syllable */ + [0xc823, 0xc823], /* Hangul Syllable */ + [0xc824, 0xc824], /* Hangul Syllable */ + [0xc825, 0xc825], /* Hangul Syllable */ + [0xc826, 0xc826], /* Hangul Syllable */ + [0xc827, 0xc827], /* Hangul Syllable */ + [0xc828, 0xc828], /* Hangul Syllable */ + [0xc829, 0xc829], /* Hangul Syllable */ + [0xc82a, 0xc82a], /* Hangul Syllable */ + [0xc82b, 0xc82b], /* Hangul Syllable */ + [0xc82c, 0xc82c], /* Hangul Syllable */ + [0xc82d, 0xc82d], /* Hangul Syllable */ + [0xc82e, 0xc82e], /* Hangul Syllable */ + [0xc82f, 0xc82f], /* Hangul Syllable */ + [0xc830, 0xc830], /* Hangul Syllable */ + [0xc831, 0xc831], /* Hangul Syllable */ + [0xc832, 0xc832], /* Hangul Syllable */ + [0xc833, 0xc833], /* Hangul Syllable */ + [0xc834, 0xc834], /* Hangul Syllable */ + [0xc835, 0xc835], /* Hangul Syllable */ + [0xc836, 0xc836], /* Hangul Syllable */ + [0xc837, 0xc837], /* Hangul Syllable */ + [0xc838, 0xc838], /* Hangul Syllable */ + [0xc839, 0xc839], /* Hangul Syllable */ + [0xc83a, 0xc83a], /* Hangul Syllable */ + [0xc83b, 0xc83b], /* Hangul Syllable */ + [0xc83c, 0xc83c], /* Hangul Syllable */ + [0xc83d, 0xc83d], /* Hangul Syllable */ + [0xc83e, 0xc83e], /* Hangul Syllable */ + [0xc83f, 0xc83f], /* Hangul Syllable */ + [0xc840, 0xc840], /* Hangul Syllable */ + [0xc841, 0xc841], /* Hangul Syllable */ + [0xc842, 0xc842], /* Hangul Syllable */ + [0xc843, 0xc843], /* Hangul Syllable */ + [0xc844, 0xc844], /* Hangul Syllable */ + [0xc845, 0xc845], /* Hangul Syllable */ + [0xc846, 0xc846], /* Hangul Syllable */ + [0xc847, 0xc847], /* Hangul Syllable */ + [0xc848, 0xc848], /* Hangul Syllable */ + [0xc849, 0xc849], /* Hangul Syllable */ + [0xc84a, 0xc84a], /* Hangul Syllable */ + [0xc84b, 0xc84b], /* Hangul Syllable */ + [0xc84c, 0xc84c], /* Hangul Syllable */ + [0xc84d, 0xc84d], /* Hangul Syllable */ + [0xc84e, 0xc84e], /* Hangul Syllable */ + [0xc84f, 0xc84f], /* Hangul Syllable */ + [0xc850, 0xc850], /* Hangul Syllable */ + [0xc851, 0xc851], /* Hangul Syllable */ + [0xc852, 0xc852], /* Hangul Syllable */ + [0xc853, 0xc853], /* Hangul Syllable */ + [0xc854, 0xc854], /* Hangul Syllable */ + [0xc855, 0xc855], /* Hangul Syllable */ + [0xc856, 0xc856], /* Hangul Syllable */ + [0xc857, 0xc857], /* Hangul Syllable */ + [0xc858, 0xc858], /* Hangul Syllable */ + [0xc859, 0xc859], /* Hangul Syllable */ + [0xc85a, 0xc85a], /* Hangul Syllable */ + [0xc85b, 0xc85b], /* Hangul Syllable */ + [0xc85c, 0xc85c], /* Hangul Syllable */ + [0xc85d, 0xc85d], /* Hangul Syllable */ + [0xc85e, 0xc85e], /* Hangul Syllable */ + [0xc85f, 0xc85f], /* Hangul Syllable */ + [0xc860, 0xc860], /* Hangul Syllable */ + [0xc861, 0xc861], /* Hangul Syllable */ + [0xc862, 0xc862], /* Hangul Syllable */ + [0xc863, 0xc863], /* Hangul Syllable */ + [0xc864, 0xc864], /* Hangul Syllable */ + [0xc865, 0xc865], /* Hangul Syllable */ + [0xc866, 0xc866], /* Hangul Syllable */ + [0xc867, 0xc867], /* Hangul Syllable */ + [0xc868, 0xc868], /* Hangul Syllable */ + [0xc869, 0xc869], /* Hangul Syllable */ + [0xc86a, 0xc86a], /* Hangul Syllable */ + [0xc86b, 0xc86b], /* Hangul Syllable */ + [0xc86c, 0xc86c], /* Hangul Syllable */ + [0xc86d, 0xc86d], /* Hangul Syllable */ + [0xc86e, 0xc86e], /* Hangul Syllable */ + [0xc86f, 0xc86f], /* Hangul Syllable */ + [0xc870, 0xc870], /* Hangul Syllable */ + [0xc871, 0xc871], /* Hangul Syllable */ + [0xc872, 0xc872], /* Hangul Syllable */ + [0xc873, 0xc873], /* Hangul Syllable */ + [0xc874, 0xc874], /* Hangul Syllable */ + [0xc875, 0xc875], /* Hangul Syllable */ + [0xc876, 0xc876], /* Hangul Syllable */ + [0xc877, 0xc877], /* Hangul Syllable */ + [0xc878, 0xc878], /* Hangul Syllable */ + [0xc879, 0xc879], /* Hangul Syllable */ + [0xc87a, 0xc87a], /* Hangul Syllable */ + [0xc87b, 0xc87b], /* Hangul Syllable */ + [0xc87c, 0xc87c], /* Hangul Syllable */ + [0xc87d, 0xc87d], /* Hangul Syllable */ + [0xc87e, 0xc87e], /* Hangul Syllable */ + [0xc87f, 0xc87f], /* Hangul Syllable */ + [0xc880, 0xc880], /* Hangul Syllable */ + [0xc881, 0xc881], /* Hangul Syllable */ + [0xc882, 0xc882], /* Hangul Syllable */ + [0xc883, 0xc883], /* Hangul Syllable */ + [0xc884, 0xc884], /* Hangul Syllable */ + [0xc885, 0xc885], /* Hangul Syllable */ + [0xc886, 0xc886], /* Hangul Syllable */ + [0xc887, 0xc887], /* Hangul Syllable */ + [0xc888, 0xc888], /* Hangul Syllable */ + [0xc889, 0xc889], /* Hangul Syllable */ + [0xc88a, 0xc88a], /* Hangul Syllable */ + [0xc88b, 0xc88b], /* Hangul Syllable */ + [0xc88c, 0xc88c], /* Hangul Syllable */ + [0xc88d, 0xc88d], /* Hangul Syllable */ + [0xc88e, 0xc88e], /* Hangul Syllable */ + [0xc88f, 0xc88f], /* Hangul Syllable */ + [0xc890, 0xc890], /* Hangul Syllable */ + [0xc891, 0xc891], /* Hangul Syllable */ + [0xc892, 0xc892], /* Hangul Syllable */ + [0xc893, 0xc893], /* Hangul Syllable */ + [0xc894, 0xc894], /* Hangul Syllable */ + [0xc895, 0xc895], /* Hangul Syllable */ + [0xc896, 0xc896], /* Hangul Syllable */ + [0xc897, 0xc897], /* Hangul Syllable */ + [0xc898, 0xc898], /* Hangul Syllable */ + [0xc899, 0xc899], /* Hangul Syllable */ + [0xc89a, 0xc89a], /* Hangul Syllable */ + [0xc89b, 0xc89b], /* Hangul Syllable */ + [0xc89c, 0xc89c], /* Hangul Syllable */ + [0xc89d, 0xc89d], /* Hangul Syllable */ + [0xc89e, 0xc89e], /* Hangul Syllable */ + [0xc89f, 0xc89f], /* Hangul Syllable */ + [0xc8a0, 0xc8a0], /* Hangul Syllable */ + [0xc8a1, 0xc8a1], /* Hangul Syllable */ + [0xc8a2, 0xc8a2], /* Hangul Syllable */ + [0xc8a3, 0xc8a3], /* Hangul Syllable */ + [0xc8a4, 0xc8a4], /* Hangul Syllable */ + [0xc8a5, 0xc8a5], /* Hangul Syllable */ + [0xc8a6, 0xc8a6], /* Hangul Syllable */ + [0xc8a7, 0xc8a7], /* Hangul Syllable */ + [0xc8a8, 0xc8a8], /* Hangul Syllable */ + [0xc8a9, 0xc8a9], /* Hangul Syllable */ + [0xc8aa, 0xc8aa], /* Hangul Syllable */ + [0xc8ab, 0xc8ab], /* Hangul Syllable */ + [0xc8ac, 0xc8ac], /* Hangul Syllable */ + [0xc8ad, 0xc8ad], /* Hangul Syllable */ + [0xc8ae, 0xc8ae], /* Hangul Syllable */ + [0xc8af, 0xc8af], /* Hangul Syllable */ + [0xc8b0, 0xc8b0], /* Hangul Syllable */ + [0xc8b1, 0xc8b1], /* Hangul Syllable */ + [0xc8b2, 0xc8b2], /* Hangul Syllable */ + [0xc8b3, 0xc8b3], /* Hangul Syllable */ + [0xc8b4, 0xc8b4], /* Hangul Syllable */ + [0xc8b5, 0xc8b5], /* Hangul Syllable */ + [0xc8b6, 0xc8b6], /* Hangul Syllable */ + [0xc8b7, 0xc8b7], /* Hangul Syllable */ + [0xc8b8, 0xc8b8], /* Hangul Syllable */ + [0xc8b9, 0xc8b9], /* Hangul Syllable */ + [0xc8ba, 0xc8ba], /* Hangul Syllable */ + [0xc8bb, 0xc8bb], /* Hangul Syllable */ + [0xc8bc, 0xc8bc], /* Hangul Syllable */ + [0xc8bd, 0xc8bd], /* Hangul Syllable */ + [0xc8be, 0xc8be], /* Hangul Syllable */ + [0xc8bf, 0xc8bf], /* Hangul Syllable */ + [0xc8c0, 0xc8c0], /* Hangul Syllable */ + [0xc8c1, 0xc8c1], /* Hangul Syllable */ + [0xc8c2, 0xc8c2], /* Hangul Syllable */ + [0xc8c3, 0xc8c3], /* Hangul Syllable */ + [0xc8c4, 0xc8c4], /* Hangul Syllable */ + [0xc8c5, 0xc8c5], /* Hangul Syllable */ + [0xc8c6, 0xc8c6], /* Hangul Syllable */ + [0xc8c7, 0xc8c7], /* Hangul Syllable */ + [0xc8c8, 0xc8c8], /* Hangul Syllable */ + [0xc8c9, 0xc8c9], /* Hangul Syllable */ + [0xc8ca, 0xc8ca], /* Hangul Syllable */ + [0xc8cb, 0xc8cb], /* Hangul Syllable */ + [0xc8cc, 0xc8cc], /* Hangul Syllable */ + [0xc8cd, 0xc8cd], /* Hangul Syllable */ + [0xc8ce, 0xc8ce], /* Hangul Syllable */ + [0xc8cf, 0xc8cf], /* Hangul Syllable */ + [0xc8d0, 0xc8d0], /* Hangul Syllable */ + [0xc8d1, 0xc8d1], /* Hangul Syllable */ + [0xc8d2, 0xc8d2], /* Hangul Syllable */ + [0xc8d3, 0xc8d3], /* Hangul Syllable */ + [0xc8d4, 0xc8d4], /* Hangul Syllable */ + [0xc8d5, 0xc8d5], /* Hangul Syllable */ + [0xc8d6, 0xc8d6], /* Hangul Syllable */ + [0xc8d7, 0xc8d7], /* Hangul Syllable */ + [0xc8d8, 0xc8d8], /* Hangul Syllable */ + [0xc8d9, 0xc8d9], /* Hangul Syllable */ + [0xc8da, 0xc8da], /* Hangul Syllable */ + [0xc8db, 0xc8db], /* Hangul Syllable */ + [0xc8dc, 0xc8dc], /* Hangul Syllable */ + [0xc8dd, 0xc8dd], /* Hangul Syllable */ + [0xc8de, 0xc8de], /* Hangul Syllable */ + [0xc8df, 0xc8df], /* Hangul Syllable */ + [0xc8e0, 0xc8e0], /* Hangul Syllable */ + [0xc8e1, 0xc8e1], /* Hangul Syllable */ + [0xc8e2, 0xc8e2], /* Hangul Syllable */ + [0xc8e3, 0xc8e3], /* Hangul Syllable */ + [0xc8e4, 0xc8e4], /* Hangul Syllable */ + [0xc8e5, 0xc8e5], /* Hangul Syllable */ + [0xc8e6, 0xc8e6], /* Hangul Syllable */ + [0xc8e7, 0xc8e7], /* Hangul Syllable */ + [0xc8e8, 0xc8e8], /* Hangul Syllable */ + [0xc8e9, 0xc8e9], /* Hangul Syllable */ + [0xc8ea, 0xc8ea], /* Hangul Syllable */ + [0xc8eb, 0xc8eb], /* Hangul Syllable */ + [0xc8ec, 0xc8ec], /* Hangul Syllable */ + [0xc8ed, 0xc8ed], /* Hangul Syllable */ + [0xc8ee, 0xc8ee], /* Hangul Syllable */ + [0xc8ef, 0xc8ef], /* Hangul Syllable */ + [0xc8f0, 0xc8f0], /* Hangul Syllable */ + [0xc8f1, 0xc8f1], /* Hangul Syllable */ + [0xc8f2, 0xc8f2], /* Hangul Syllable */ + [0xc8f3, 0xc8f3], /* Hangul Syllable */ + [0xc8f4, 0xc8f4], /* Hangul Syllable */ + [0xc8f5, 0xc8f5], /* Hangul Syllable */ + [0xc8f6, 0xc8f6], /* Hangul Syllable */ + [0xc8f7, 0xc8f7], /* Hangul Syllable */ + [0xc8f8, 0xc8f8], /* Hangul Syllable */ + [0xc8f9, 0xc8f9], /* Hangul Syllable */ + [0xc8fa, 0xc8fa], /* Hangul Syllable */ + [0xc8fb, 0xc8fb], /* Hangul Syllable */ + [0xc8fc, 0xc8fc], /* Hangul Syllable */ + [0xc8fd, 0xc8fd], /* Hangul Syllable */ + [0xc8fe, 0xc8fe], /* Hangul Syllable */ + [0xc8ff, 0xc8ff], /* Hangul Syllable */ + [0xc900, 0xc900], /* Hangul Syllable */ + [0xc901, 0xc901], /* Hangul Syllable */ + [0xc902, 0xc902], /* Hangul Syllable */ + [0xc903, 0xc903], /* Hangul Syllable */ + [0xc904, 0xc904], /* Hangul Syllable */ + [0xc905, 0xc905], /* Hangul Syllable */ + [0xc906, 0xc906], /* Hangul Syllable */ + [0xc907, 0xc907], /* Hangul Syllable */ + [0xc908, 0xc908], /* Hangul Syllable */ + [0xc909, 0xc909], /* Hangul Syllable */ + [0xc90a, 0xc90a], /* Hangul Syllable */ + [0xc90b, 0xc90b], /* Hangul Syllable */ + [0xc90c, 0xc90c], /* Hangul Syllable */ + [0xc90d, 0xc90d], /* Hangul Syllable */ + [0xc90e, 0xc90e], /* Hangul Syllable */ + [0xc90f, 0xc90f], /* Hangul Syllable */ + [0xc910, 0xc910], /* Hangul Syllable */ + [0xc911, 0xc911], /* Hangul Syllable */ + [0xc912, 0xc912], /* Hangul Syllable */ + [0xc913, 0xc913], /* Hangul Syllable */ + [0xc914, 0xc914], /* Hangul Syllable */ + [0xc915, 0xc915], /* Hangul Syllable */ + [0xc916, 0xc916], /* Hangul Syllable */ + [0xc917, 0xc917], /* Hangul Syllable */ + [0xc918, 0xc918], /* Hangul Syllable */ + [0xc919, 0xc919], /* Hangul Syllable */ + [0xc91a, 0xc91a], /* Hangul Syllable */ + [0xc91b, 0xc91b], /* Hangul Syllable */ + [0xc91c, 0xc91c], /* Hangul Syllable */ + [0xc91d, 0xc91d], /* Hangul Syllable */ + [0xc91e, 0xc91e], /* Hangul Syllable */ + [0xc91f, 0xc91f], /* Hangul Syllable */ + [0xc920, 0xc920], /* Hangul Syllable */ + [0xc921, 0xc921], /* Hangul Syllable */ + [0xc922, 0xc922], /* Hangul Syllable */ + [0xc923, 0xc923], /* Hangul Syllable */ + [0xc924, 0xc924], /* Hangul Syllable */ + [0xc925, 0xc925], /* Hangul Syllable */ + [0xc926, 0xc926], /* Hangul Syllable */ + [0xc927, 0xc927], /* Hangul Syllable */ + [0xc928, 0xc928], /* Hangul Syllable */ + [0xc929, 0xc929], /* Hangul Syllable */ + [0xc92a, 0xc92a], /* Hangul Syllable */ + [0xc92b, 0xc92b], /* Hangul Syllable */ + [0xc92c, 0xc92c], /* Hangul Syllable */ + [0xc92d, 0xc92d], /* Hangul Syllable */ + [0xc92e, 0xc92e], /* Hangul Syllable */ + [0xc92f, 0xc92f], /* Hangul Syllable */ + [0xc930, 0xc930], /* Hangul Syllable */ + [0xc931, 0xc931], /* Hangul Syllable */ + [0xc932, 0xc932], /* Hangul Syllable */ + [0xc933, 0xc933], /* Hangul Syllable */ + [0xc934, 0xc934], /* Hangul Syllable */ + [0xc935, 0xc935], /* Hangul Syllable */ + [0xc936, 0xc936], /* Hangul Syllable */ + [0xc937, 0xc937], /* Hangul Syllable */ + [0xc938, 0xc938], /* Hangul Syllable */ + [0xc939, 0xc939], /* Hangul Syllable */ + [0xc93a, 0xc93a], /* Hangul Syllable */ + [0xc93b, 0xc93b], /* Hangul Syllable */ + [0xc93c, 0xc93c], /* Hangul Syllable */ + [0xc93d, 0xc93d], /* Hangul Syllable */ + [0xc93e, 0xc93e], /* Hangul Syllable */ + [0xc93f, 0xc93f], /* Hangul Syllable */ + [0xc940, 0xc940], /* Hangul Syllable */ + [0xc941, 0xc941], /* Hangul Syllable */ + [0xc942, 0xc942], /* Hangul Syllable */ + [0xc943, 0xc943], /* Hangul Syllable */ + [0xc944, 0xc944], /* Hangul Syllable */ + [0xc945, 0xc945], /* Hangul Syllable */ + [0xc946, 0xc946], /* Hangul Syllable */ + [0xc947, 0xc947], /* Hangul Syllable */ + [0xc948, 0xc948], /* Hangul Syllable */ + [0xc949, 0xc949], /* Hangul Syllable */ + [0xc94a, 0xc94a], /* Hangul Syllable */ + [0xc94b, 0xc94b], /* Hangul Syllable */ + [0xc94c, 0xc94c], /* Hangul Syllable */ + [0xc94d, 0xc94d], /* Hangul Syllable */ + [0xc94e, 0xc94e], /* Hangul Syllable */ + [0xc94f, 0xc94f], /* Hangul Syllable */ + [0xc950, 0xc950], /* Hangul Syllable */ + [0xc951, 0xc951], /* Hangul Syllable */ + [0xc952, 0xc952], /* Hangul Syllable */ + [0xc953, 0xc953], /* Hangul Syllable */ + [0xc954, 0xc954], /* Hangul Syllable */ + [0xc955, 0xc955], /* Hangul Syllable */ + [0xc956, 0xc956], /* Hangul Syllable */ + [0xc957, 0xc957], /* Hangul Syllable */ + [0xc958, 0xc958], /* Hangul Syllable */ + [0xc959, 0xc959], /* Hangul Syllable */ + [0xc95a, 0xc95a], /* Hangul Syllable */ + [0xc95b, 0xc95b], /* Hangul Syllable */ + [0xc95c, 0xc95c], /* Hangul Syllable */ + [0xc95d, 0xc95d], /* Hangul Syllable */ + [0xc95e, 0xc95e], /* Hangul Syllable */ + [0xc95f, 0xc95f], /* Hangul Syllable */ + [0xc960, 0xc960], /* Hangul Syllable */ + [0xc961, 0xc961], /* Hangul Syllable */ + [0xc962, 0xc962], /* Hangul Syllable */ + [0xc963, 0xc963], /* Hangul Syllable */ + [0xc964, 0xc964], /* Hangul Syllable */ + [0xc965, 0xc965], /* Hangul Syllable */ + [0xc966, 0xc966], /* Hangul Syllable */ + [0xc967, 0xc967], /* Hangul Syllable */ + [0xc968, 0xc968], /* Hangul Syllable */ + [0xc969, 0xc969], /* Hangul Syllable */ + [0xc96a, 0xc96a], /* Hangul Syllable */ + [0xc96b, 0xc96b], /* Hangul Syllable */ + [0xc96c, 0xc96c], /* Hangul Syllable */ + [0xc96d, 0xc96d], /* Hangul Syllable */ + [0xc96e, 0xc96e], /* Hangul Syllable */ + [0xc96f, 0xc96f], /* Hangul Syllable */ + [0xc970, 0xc970], /* Hangul Syllable */ + [0xc971, 0xc971], /* Hangul Syllable */ + [0xc972, 0xc972], /* Hangul Syllable */ + [0xc973, 0xc973], /* Hangul Syllable */ + [0xc974, 0xc974], /* Hangul Syllable */ + [0xc975, 0xc975], /* Hangul Syllable */ + [0xc976, 0xc976], /* Hangul Syllable */ + [0xc977, 0xc977], /* Hangul Syllable */ + [0xc978, 0xc978], /* Hangul Syllable */ + [0xc979, 0xc979], /* Hangul Syllable */ + [0xc97a, 0xc97a], /* Hangul Syllable */ + [0xc97b, 0xc97b], /* Hangul Syllable */ + [0xc97c, 0xc97c], /* Hangul Syllable */ + [0xc97d, 0xc97d], /* Hangul Syllable */ + [0xc97e, 0xc97e], /* Hangul Syllable */ + [0xc97f, 0xc97f], /* Hangul Syllable */ + [0xc980, 0xc980], /* Hangul Syllable */ + [0xc981, 0xc981], /* Hangul Syllable */ + [0xc982, 0xc982], /* Hangul Syllable */ + [0xc983, 0xc983], /* Hangul Syllable */ + [0xc984, 0xc984], /* Hangul Syllable */ + [0xc985, 0xc985], /* Hangul Syllable */ + [0xc986, 0xc986], /* Hangul Syllable */ + [0xc987, 0xc987], /* Hangul Syllable */ + [0xc988, 0xc988], /* Hangul Syllable */ + [0xc989, 0xc989], /* Hangul Syllable */ + [0xc98a, 0xc98a], /* Hangul Syllable */ + [0xc98b, 0xc98b], /* Hangul Syllable */ + [0xc98c, 0xc98c], /* Hangul Syllable */ + [0xc98d, 0xc98d], /* Hangul Syllable */ + [0xc98e, 0xc98e], /* Hangul Syllable */ + [0xc98f, 0xc98f], /* Hangul Syllable */ + [0xc990, 0xc990], /* Hangul Syllable */ + [0xc991, 0xc991], /* Hangul Syllable */ + [0xc992, 0xc992], /* Hangul Syllable */ + [0xc993, 0xc993], /* Hangul Syllable */ + [0xc994, 0xc994], /* Hangul Syllable */ + [0xc995, 0xc995], /* Hangul Syllable */ + [0xc996, 0xc996], /* Hangul Syllable */ + [0xc997, 0xc997], /* Hangul Syllable */ + [0xc998, 0xc998], /* Hangul Syllable */ + [0xc999, 0xc999], /* Hangul Syllable */ + [0xc99a, 0xc99a], /* Hangul Syllable */ + [0xc99b, 0xc99b], /* Hangul Syllable */ + [0xc99c, 0xc99c], /* Hangul Syllable */ + [0xc99d, 0xc99d], /* Hangul Syllable */ + [0xc99e, 0xc99e], /* Hangul Syllable */ + [0xc99f, 0xc99f], /* Hangul Syllable */ + [0xc9a0, 0xc9a0], /* Hangul Syllable */ + [0xc9a1, 0xc9a1], /* Hangul Syllable */ + [0xc9a2, 0xc9a2], /* Hangul Syllable */ + [0xc9a3, 0xc9a3], /* Hangul Syllable */ + [0xc9a4, 0xc9a4], /* Hangul Syllable */ + [0xc9a5, 0xc9a5], /* Hangul Syllable */ + [0xc9a6, 0xc9a6], /* Hangul Syllable */ + [0xc9a7, 0xc9a7], /* Hangul Syllable */ + [0xc9a8, 0xc9a8], /* Hangul Syllable */ + [0xc9a9, 0xc9a9], /* Hangul Syllable */ + [0xc9aa, 0xc9aa], /* Hangul Syllable */ + [0xc9ab, 0xc9ab], /* Hangul Syllable */ + [0xc9ac, 0xc9ac], /* Hangul Syllable */ + [0xc9ad, 0xc9ad], /* Hangul Syllable */ + [0xc9ae, 0xc9ae], /* Hangul Syllable */ + [0xc9af, 0xc9af], /* Hangul Syllable */ + [0xc9b0, 0xc9b0], /* Hangul Syllable */ + [0xc9b1, 0xc9b1], /* Hangul Syllable */ + [0xc9b2, 0xc9b2], /* Hangul Syllable */ + [0xc9b3, 0xc9b3], /* Hangul Syllable */ + [0xc9b4, 0xc9b4], /* Hangul Syllable */ + [0xc9b5, 0xc9b5], /* Hangul Syllable */ + [0xc9b6, 0xc9b6], /* Hangul Syllable */ + [0xc9b7, 0xc9b7], /* Hangul Syllable */ + [0xc9b8, 0xc9b8], /* Hangul Syllable */ + [0xc9b9, 0xc9b9], /* Hangul Syllable */ + [0xc9ba, 0xc9ba], /* Hangul Syllable */ + [0xc9bb, 0xc9bb], /* Hangul Syllable */ + [0xc9bc, 0xc9bc], /* Hangul Syllable */ + [0xc9bd, 0xc9bd], /* Hangul Syllable */ + [0xc9be, 0xc9be], /* Hangul Syllable */ + [0xc9bf, 0xc9bf], /* Hangul Syllable */ + [0xc9c0, 0xc9c0], /* Hangul Syllable */ + [0xc9c1, 0xc9c1], /* Hangul Syllable */ + [0xc9c2, 0xc9c2], /* Hangul Syllable */ + [0xc9c3, 0xc9c3], /* Hangul Syllable */ + [0xc9c4, 0xc9c4], /* Hangul Syllable */ + [0xc9c5, 0xc9c5], /* Hangul Syllable */ + [0xc9c6, 0xc9c6], /* Hangul Syllable */ + [0xc9c7, 0xc9c7], /* Hangul Syllable */ + [0xc9c8, 0xc9c8], /* Hangul Syllable */ + [0xc9c9, 0xc9c9], /* Hangul Syllable */ + [0xc9ca, 0xc9ca], /* Hangul Syllable */ + [0xc9cb, 0xc9cb], /* Hangul Syllable */ + [0xc9cc, 0xc9cc], /* Hangul Syllable */ + [0xc9cd, 0xc9cd], /* Hangul Syllable */ + [0xc9ce, 0xc9ce], /* Hangul Syllable */ + [0xc9cf, 0xc9cf], /* Hangul Syllable */ + [0xc9d0, 0xc9d0], /* Hangul Syllable */ + [0xc9d1, 0xc9d1], /* Hangul Syllable */ + [0xc9d2, 0xc9d2], /* Hangul Syllable */ + [0xc9d3, 0xc9d3], /* Hangul Syllable */ + [0xc9d4, 0xc9d4], /* Hangul Syllable */ + [0xc9d5, 0xc9d5], /* Hangul Syllable */ + [0xc9d6, 0xc9d6], /* Hangul Syllable */ + [0xc9d7, 0xc9d7], /* Hangul Syllable */ + [0xc9d8, 0xc9d8], /* Hangul Syllable */ + [0xc9d9, 0xc9d9], /* Hangul Syllable */ + [0xc9da, 0xc9da], /* Hangul Syllable */ + [0xc9db, 0xc9db], /* Hangul Syllable */ + [0xc9dc, 0xc9dc], /* Hangul Syllable */ + [0xc9dd, 0xc9dd], /* Hangul Syllable */ + [0xc9de, 0xc9de], /* Hangul Syllable */ + [0xc9df, 0xc9df], /* Hangul Syllable */ + [0xc9e0, 0xc9e0], /* Hangul Syllable */ + [0xc9e1, 0xc9e1], /* Hangul Syllable */ + [0xc9e2, 0xc9e2], /* Hangul Syllable */ + [0xc9e3, 0xc9e3], /* Hangul Syllable */ + [0xc9e4, 0xc9e4], /* Hangul Syllable */ + [0xc9e5, 0xc9e5], /* Hangul Syllable */ + [0xc9e6, 0xc9e6], /* Hangul Syllable */ + [0xc9e7, 0xc9e7], /* Hangul Syllable */ + [0xc9e8, 0xc9e8], /* Hangul Syllable */ + [0xc9e9, 0xc9e9], /* Hangul Syllable */ + [0xc9ea, 0xc9ea], /* Hangul Syllable */ + [0xc9eb, 0xc9eb], /* Hangul Syllable */ + [0xc9ec, 0xc9ec], /* Hangul Syllable */ + [0xc9ed, 0xc9ed], /* Hangul Syllable */ + [0xc9ee, 0xc9ee], /* Hangul Syllable */ + [0xc9ef, 0xc9ef], /* Hangul Syllable */ + [0xc9f0, 0xc9f0], /* Hangul Syllable */ + [0xc9f1, 0xc9f1], /* Hangul Syllable */ + [0xc9f2, 0xc9f2], /* Hangul Syllable */ + [0xc9f3, 0xc9f3], /* Hangul Syllable */ + [0xc9f4, 0xc9f4], /* Hangul Syllable */ + [0xc9f5, 0xc9f5], /* Hangul Syllable */ + [0xc9f6, 0xc9f6], /* Hangul Syllable */ + [0xc9f7, 0xc9f7], /* Hangul Syllable */ + [0xc9f8, 0xc9f8], /* Hangul Syllable */ + [0xc9f9, 0xc9f9], /* Hangul Syllable */ + [0xc9fa, 0xc9fa], /* Hangul Syllable */ + [0xc9fb, 0xc9fb], /* Hangul Syllable */ + [0xc9fc, 0xc9fc], /* Hangul Syllable */ + [0xc9fd, 0xc9fd], /* Hangul Syllable */ + [0xc9fe, 0xc9fe], /* Hangul Syllable */ + [0xc9ff, 0xc9ff], /* Hangul Syllable */ + [0xca00, 0xca00], /* Hangul Syllable */ + [0xca01, 0xca01], /* Hangul Syllable */ + [0xca02, 0xca02], /* Hangul Syllable */ + [0xca03, 0xca03], /* Hangul Syllable */ + [0xca04, 0xca04], /* Hangul Syllable */ + [0xca05, 0xca05], /* Hangul Syllable */ + [0xca06, 0xca06], /* Hangul Syllable */ + [0xca07, 0xca07], /* Hangul Syllable */ + [0xca08, 0xca08], /* Hangul Syllable */ + [0xca09, 0xca09], /* Hangul Syllable */ + [0xca0a, 0xca0a], /* Hangul Syllable */ + [0xca0b, 0xca0b], /* Hangul Syllable */ + [0xca0c, 0xca0c], /* Hangul Syllable */ + [0xca0d, 0xca0d], /* Hangul Syllable */ + [0xca0e, 0xca0e], /* Hangul Syllable */ + [0xca0f, 0xca0f], /* Hangul Syllable */ + [0xca10, 0xca10], /* Hangul Syllable */ + [0xca11, 0xca11], /* Hangul Syllable */ + [0xca12, 0xca12], /* Hangul Syllable */ + [0xca13, 0xca13], /* Hangul Syllable */ + [0xca14, 0xca14], /* Hangul Syllable */ + [0xca15, 0xca15], /* Hangul Syllable */ + [0xca16, 0xca16], /* Hangul Syllable */ + [0xca17, 0xca17], /* Hangul Syllable */ + [0xca18, 0xca18], /* Hangul Syllable */ + [0xca19, 0xca19], /* Hangul Syllable */ + [0xca1a, 0xca1a], /* Hangul Syllable */ + [0xca1b, 0xca1b], /* Hangul Syllable */ + [0xca1c, 0xca1c], /* Hangul Syllable */ + [0xca1d, 0xca1d], /* Hangul Syllable */ + [0xca1e, 0xca1e], /* Hangul Syllable */ + [0xca1f, 0xca1f], /* Hangul Syllable */ + [0xca20, 0xca20], /* Hangul Syllable */ + [0xca21, 0xca21], /* Hangul Syllable */ + [0xca22, 0xca22], /* Hangul Syllable */ + [0xca23, 0xca23], /* Hangul Syllable */ + [0xca24, 0xca24], /* Hangul Syllable */ + [0xca25, 0xca25], /* Hangul Syllable */ + [0xca26, 0xca26], /* Hangul Syllable */ + [0xca27, 0xca27], /* Hangul Syllable */ + [0xca28, 0xca28], /* Hangul Syllable */ + [0xca29, 0xca29], /* Hangul Syllable */ + [0xca2a, 0xca2a], /* Hangul Syllable */ + [0xca2b, 0xca2b], /* Hangul Syllable */ + [0xca2c, 0xca2c], /* Hangul Syllable */ + [0xca2d, 0xca2d], /* Hangul Syllable */ + [0xca2e, 0xca2e], /* Hangul Syllable */ + [0xca2f, 0xca2f], /* Hangul Syllable */ + [0xca30, 0xca30], /* Hangul Syllable */ + [0xca31, 0xca31], /* Hangul Syllable */ + [0xca32, 0xca32], /* Hangul Syllable */ + [0xca33, 0xca33], /* Hangul Syllable */ + [0xca34, 0xca34], /* Hangul Syllable */ + [0xca35, 0xca35], /* Hangul Syllable */ + [0xca36, 0xca36], /* Hangul Syllable */ + [0xca37, 0xca37], /* Hangul Syllable */ + [0xca38, 0xca38], /* Hangul Syllable */ + [0xca39, 0xca39], /* Hangul Syllable */ + [0xca3a, 0xca3a], /* Hangul Syllable */ + [0xca3b, 0xca3b], /* Hangul Syllable */ + [0xca3c, 0xca3c], /* Hangul Syllable */ + [0xca3d, 0xca3d], /* Hangul Syllable */ + [0xca3e, 0xca3e], /* Hangul Syllable */ + [0xca3f, 0xca3f], /* Hangul Syllable */ + [0xca40, 0xca40], /* Hangul Syllable */ + [0xca41, 0xca41], /* Hangul Syllable */ + [0xca42, 0xca42], /* Hangul Syllable */ + [0xca43, 0xca43], /* Hangul Syllable */ + [0xca44, 0xca44], /* Hangul Syllable */ + [0xca45, 0xca45], /* Hangul Syllable */ + [0xca46, 0xca46], /* Hangul Syllable */ + [0xca47, 0xca47], /* Hangul Syllable */ + [0xca48, 0xca48], /* Hangul Syllable */ + [0xca49, 0xca49], /* Hangul Syllable */ + [0xca4a, 0xca4a], /* Hangul Syllable */ + [0xca4b, 0xca4b], /* Hangul Syllable */ + [0xca4c, 0xca4c], /* Hangul Syllable */ + [0xca4d, 0xca4d], /* Hangul Syllable */ + [0xca4e, 0xca4e], /* Hangul Syllable */ + [0xca4f, 0xca4f], /* Hangul Syllable */ + [0xca50, 0xca50], /* Hangul Syllable */ + [0xca51, 0xca51], /* Hangul Syllable */ + [0xca52, 0xca52], /* Hangul Syllable */ + [0xca53, 0xca53], /* Hangul Syllable */ + [0xca54, 0xca54], /* Hangul Syllable */ + [0xca55, 0xca55], /* Hangul Syllable */ + [0xca56, 0xca56], /* Hangul Syllable */ + [0xca57, 0xca57], /* Hangul Syllable */ + [0xca58, 0xca58], /* Hangul Syllable */ + [0xca59, 0xca59], /* Hangul Syllable */ + [0xca5a, 0xca5a], /* Hangul Syllable */ + [0xca5b, 0xca5b], /* Hangul Syllable */ + [0xca5c, 0xca5c], /* Hangul Syllable */ + [0xca5d, 0xca5d], /* Hangul Syllable */ + [0xca5e, 0xca5e], /* Hangul Syllable */ + [0xca5f, 0xca5f], /* Hangul Syllable */ + [0xca60, 0xca60], /* Hangul Syllable */ + [0xca61, 0xca61], /* Hangul Syllable */ + [0xca62, 0xca62], /* Hangul Syllable */ + [0xca63, 0xca63], /* Hangul Syllable */ + [0xca64, 0xca64], /* Hangul Syllable */ + [0xca65, 0xca65], /* Hangul Syllable */ + [0xca66, 0xca66], /* Hangul Syllable */ + [0xca67, 0xca67], /* Hangul Syllable */ + [0xca68, 0xca68], /* Hangul Syllable */ + [0xca69, 0xca69], /* Hangul Syllable */ + [0xca6a, 0xca6a], /* Hangul Syllable */ + [0xca6b, 0xca6b], /* Hangul Syllable */ + [0xca6c, 0xca6c], /* Hangul Syllable */ + [0xca6d, 0xca6d], /* Hangul Syllable */ + [0xca6e, 0xca6e], /* Hangul Syllable */ + [0xca6f, 0xca6f], /* Hangul Syllable */ + [0xca70, 0xca70], /* Hangul Syllable */ + [0xca71, 0xca71], /* Hangul Syllable */ + [0xca72, 0xca72], /* Hangul Syllable */ + [0xca73, 0xca73], /* Hangul Syllable */ + [0xca74, 0xca74], /* Hangul Syllable */ + [0xca75, 0xca75], /* Hangul Syllable */ + [0xca76, 0xca76], /* Hangul Syllable */ + [0xca77, 0xca77], /* Hangul Syllable */ + [0xca78, 0xca78], /* Hangul Syllable */ + [0xca79, 0xca79], /* Hangul Syllable */ + [0xca7a, 0xca7a], /* Hangul Syllable */ + [0xca7b, 0xca7b], /* Hangul Syllable */ + [0xca7c, 0xca7c], /* Hangul Syllable */ + [0xca7d, 0xca7d], /* Hangul Syllable */ + [0xca7e, 0xca7e], /* Hangul Syllable */ + [0xca7f, 0xca7f], /* Hangul Syllable */ + [0xca80, 0xca80], /* Hangul Syllable */ + [0xca81, 0xca81], /* Hangul Syllable */ + [0xca82, 0xca82], /* Hangul Syllable */ + [0xca83, 0xca83], /* Hangul Syllable */ + [0xca84, 0xca84], /* Hangul Syllable */ + [0xca85, 0xca85], /* Hangul Syllable */ + [0xca86, 0xca86], /* Hangul Syllable */ + [0xca87, 0xca87], /* Hangul Syllable */ + [0xca88, 0xca88], /* Hangul Syllable */ + [0xca89, 0xca89], /* Hangul Syllable */ + [0xca8a, 0xca8a], /* Hangul Syllable */ + [0xca8b, 0xca8b], /* Hangul Syllable */ + [0xca8c, 0xca8c], /* Hangul Syllable */ + [0xca8d, 0xca8d], /* Hangul Syllable */ + [0xca8e, 0xca8e], /* Hangul Syllable */ + [0xca8f, 0xca8f], /* Hangul Syllable */ + [0xca90, 0xca90], /* Hangul Syllable */ + [0xca91, 0xca91], /* Hangul Syllable */ + [0xca92, 0xca92], /* Hangul Syllable */ + [0xca93, 0xca93], /* Hangul Syllable */ + [0xca94, 0xca94], /* Hangul Syllable */ + [0xca95, 0xca95], /* Hangul Syllable */ + [0xca96, 0xca96], /* Hangul Syllable */ + [0xca97, 0xca97], /* Hangul Syllable */ + [0xca98, 0xca98], /* Hangul Syllable */ + [0xca99, 0xca99], /* Hangul Syllable */ + [0xca9a, 0xca9a], /* Hangul Syllable */ + [0xca9b, 0xca9b], /* Hangul Syllable */ + [0xca9c, 0xca9c], /* Hangul Syllable */ + [0xca9d, 0xca9d], /* Hangul Syllable */ + [0xca9e, 0xca9e], /* Hangul Syllable */ + [0xca9f, 0xca9f], /* Hangul Syllable */ + [0xcaa0, 0xcaa0], /* Hangul Syllable */ + [0xcaa1, 0xcaa1], /* Hangul Syllable */ + [0xcaa2, 0xcaa2], /* Hangul Syllable */ + [0xcaa3, 0xcaa3], /* Hangul Syllable */ + [0xcaa4, 0xcaa4], /* Hangul Syllable */ + [0xcaa5, 0xcaa5], /* Hangul Syllable */ + [0xcaa6, 0xcaa6], /* Hangul Syllable */ + [0xcaa7, 0xcaa7], /* Hangul Syllable */ + [0xcaa8, 0xcaa8], /* Hangul Syllable */ + [0xcaa9, 0xcaa9], /* Hangul Syllable */ + [0xcaaa, 0xcaaa], /* Hangul Syllable */ + [0xcaab, 0xcaab], /* Hangul Syllable */ + [0xcaac, 0xcaac], /* Hangul Syllable */ + [0xcaad, 0xcaad], /* Hangul Syllable */ + [0xcaae, 0xcaae], /* Hangul Syllable */ + [0xcaaf, 0xcaaf], /* Hangul Syllable */ + [0xcab0, 0xcab0], /* Hangul Syllable */ + [0xcab1, 0xcab1], /* Hangul Syllable */ + [0xcab2, 0xcab2], /* Hangul Syllable */ + [0xcab3, 0xcab3], /* Hangul Syllable */ + [0xcab4, 0xcab4], /* Hangul Syllable */ + [0xcab5, 0xcab5], /* Hangul Syllable */ + [0xcab6, 0xcab6], /* Hangul Syllable */ + [0xcab7, 0xcab7], /* Hangul Syllable */ + [0xcab8, 0xcab8], /* Hangul Syllable */ + [0xcab9, 0xcab9], /* Hangul Syllable */ + [0xcaba, 0xcaba], /* Hangul Syllable */ + [0xcabb, 0xcabb], /* Hangul Syllable */ + [0xcabc, 0xcabc], /* Hangul Syllable */ + [0xcabd, 0xcabd], /* Hangul Syllable */ + [0xcabe, 0xcabe], /* Hangul Syllable */ + [0xcabf, 0xcabf], /* Hangul Syllable */ + [0xcac0, 0xcac0], /* Hangul Syllable */ + [0xcac1, 0xcac1], /* Hangul Syllable */ + [0xcac2, 0xcac2], /* Hangul Syllable */ + [0xcac3, 0xcac3], /* Hangul Syllable */ + [0xcac4, 0xcac4], /* Hangul Syllable */ + [0xcac5, 0xcac5], /* Hangul Syllable */ + [0xcac6, 0xcac6], /* Hangul Syllable */ + [0xcac7, 0xcac7], /* Hangul Syllable */ + [0xcac8, 0xcac8], /* Hangul Syllable */ + [0xcac9, 0xcac9], /* Hangul Syllable */ + [0xcaca, 0xcaca], /* Hangul Syllable */ + [0xcacb, 0xcacb], /* Hangul Syllable */ + [0xcacc, 0xcacc], /* Hangul Syllable */ + [0xcacd, 0xcacd], /* Hangul Syllable */ + [0xcace, 0xcace], /* Hangul Syllable */ + [0xcacf, 0xcacf], /* Hangul Syllable */ + [0xcad0, 0xcad0], /* Hangul Syllable */ + [0xcad1, 0xcad1], /* Hangul Syllable */ + [0xcad2, 0xcad2], /* Hangul Syllable */ + [0xcad3, 0xcad3], /* Hangul Syllable */ + [0xcad4, 0xcad4], /* Hangul Syllable */ + [0xcad5, 0xcad5], /* Hangul Syllable */ + [0xcad6, 0xcad6], /* Hangul Syllable */ + [0xcad7, 0xcad7], /* Hangul Syllable */ + [0xcad8, 0xcad8], /* Hangul Syllable */ + [0xcad9, 0xcad9], /* Hangul Syllable */ + [0xcada, 0xcada], /* Hangul Syllable */ + [0xcadb, 0xcadb], /* Hangul Syllable */ + [0xcadc, 0xcadc], /* Hangul Syllable */ + [0xcadd, 0xcadd], /* Hangul Syllable */ + [0xcade, 0xcade], /* Hangul Syllable */ + [0xcadf, 0xcadf], /* Hangul Syllable */ + [0xcae0, 0xcae0], /* Hangul Syllable */ + [0xcae1, 0xcae1], /* Hangul Syllable */ + [0xcae2, 0xcae2], /* Hangul Syllable */ + [0xcae3, 0xcae3], /* Hangul Syllable */ + [0xcae4, 0xcae4], /* Hangul Syllable */ + [0xcae5, 0xcae5], /* Hangul Syllable */ + [0xcae6, 0xcae6], /* Hangul Syllable */ + [0xcae7, 0xcae7], /* Hangul Syllable */ + [0xcae8, 0xcae8], /* Hangul Syllable */ + [0xcae9, 0xcae9], /* Hangul Syllable */ + [0xcaea, 0xcaea], /* Hangul Syllable */ + [0xcaeb, 0xcaeb], /* Hangul Syllable */ + [0xcaec, 0xcaec], /* Hangul Syllable */ + [0xcaed, 0xcaed], /* Hangul Syllable */ + [0xcaee, 0xcaee], /* Hangul Syllable */ + [0xcaef, 0xcaef], /* Hangul Syllable */ + [0xcaf0, 0xcaf0], /* Hangul Syllable */ + [0xcaf1, 0xcaf1], /* Hangul Syllable */ + [0xcaf2, 0xcaf2], /* Hangul Syllable */ + [0xcaf3, 0xcaf3], /* Hangul Syllable */ + [0xcaf4, 0xcaf4], /* Hangul Syllable */ + [0xcaf5, 0xcaf5], /* Hangul Syllable */ + [0xcaf6, 0xcaf6], /* Hangul Syllable */ + [0xcaf7, 0xcaf7], /* Hangul Syllable */ + [0xcaf8, 0xcaf8], /* Hangul Syllable */ + [0xcaf9, 0xcaf9], /* Hangul Syllable */ + [0xcafa, 0xcafa], /* Hangul Syllable */ + [0xcafb, 0xcafb], /* Hangul Syllable */ + [0xcafc, 0xcafc], /* Hangul Syllable */ + [0xcafd, 0xcafd], /* Hangul Syllable */ + [0xcafe, 0xcafe], /* Hangul Syllable */ + [0xcaff, 0xcaff], /* Hangul Syllable */ + [0xcb00, 0xcb00], /* Hangul Syllable */ + [0xcb01, 0xcb01], /* Hangul Syllable */ + [0xcb02, 0xcb02], /* Hangul Syllable */ + [0xcb03, 0xcb03], /* Hangul Syllable */ + [0xcb04, 0xcb04], /* Hangul Syllable */ + [0xcb05, 0xcb05], /* Hangul Syllable */ + [0xcb06, 0xcb06], /* Hangul Syllable */ + [0xcb07, 0xcb07], /* Hangul Syllable */ + [0xcb08, 0xcb08], /* Hangul Syllable */ + [0xcb09, 0xcb09], /* Hangul Syllable */ + [0xcb0a, 0xcb0a], /* Hangul Syllable */ + [0xcb0b, 0xcb0b], /* Hangul Syllable */ + [0xcb0c, 0xcb0c], /* Hangul Syllable */ + [0xcb0d, 0xcb0d], /* Hangul Syllable */ + [0xcb0e, 0xcb0e], /* Hangul Syllable */ + [0xcb0f, 0xcb0f], /* Hangul Syllable */ + [0xcb10, 0xcb10], /* Hangul Syllable */ + [0xcb11, 0xcb11], /* Hangul Syllable */ + [0xcb12, 0xcb12], /* Hangul Syllable */ + [0xcb13, 0xcb13], /* Hangul Syllable */ + [0xcb14, 0xcb14], /* Hangul Syllable */ + [0xcb15, 0xcb15], /* Hangul Syllable */ + [0xcb16, 0xcb16], /* Hangul Syllable */ + [0xcb17, 0xcb17], /* Hangul Syllable */ + [0xcb18, 0xcb18], /* Hangul Syllable */ + [0xcb19, 0xcb19], /* Hangul Syllable */ + [0xcb1a, 0xcb1a], /* Hangul Syllable */ + [0xcb1b, 0xcb1b], /* Hangul Syllable */ + [0xcb1c, 0xcb1c], /* Hangul Syllable */ + [0xcb1d, 0xcb1d], /* Hangul Syllable */ + [0xcb1e, 0xcb1e], /* Hangul Syllable */ + [0xcb1f, 0xcb1f], /* Hangul Syllable */ + [0xcb20, 0xcb20], /* Hangul Syllable */ + [0xcb21, 0xcb21], /* Hangul Syllable */ + [0xcb22, 0xcb22], /* Hangul Syllable */ + [0xcb23, 0xcb23], /* Hangul Syllable */ + [0xcb24, 0xcb24], /* Hangul Syllable */ + [0xcb25, 0xcb25], /* Hangul Syllable */ + [0xcb26, 0xcb26], /* Hangul Syllable */ + [0xcb27, 0xcb27], /* Hangul Syllable */ + [0xcb28, 0xcb28], /* Hangul Syllable */ + [0xcb29, 0xcb29], /* Hangul Syllable */ + [0xcb2a, 0xcb2a], /* Hangul Syllable */ + [0xcb2b, 0xcb2b], /* Hangul Syllable */ + [0xcb2c, 0xcb2c], /* Hangul Syllable */ + [0xcb2d, 0xcb2d], /* Hangul Syllable */ + [0xcb2e, 0xcb2e], /* Hangul Syllable */ + [0xcb2f, 0xcb2f], /* Hangul Syllable */ + [0xcb30, 0xcb30], /* Hangul Syllable */ + [0xcb31, 0xcb31], /* Hangul Syllable */ + [0xcb32, 0xcb32], /* Hangul Syllable */ + [0xcb33, 0xcb33], /* Hangul Syllable */ + [0xcb34, 0xcb34], /* Hangul Syllable */ + [0xcb35, 0xcb35], /* Hangul Syllable */ + [0xcb36, 0xcb36], /* Hangul Syllable */ + [0xcb37, 0xcb37], /* Hangul Syllable */ + [0xcb38, 0xcb38], /* Hangul Syllable */ + [0xcb39, 0xcb39], /* Hangul Syllable */ + [0xcb3a, 0xcb3a], /* Hangul Syllable */ + [0xcb3b, 0xcb3b], /* Hangul Syllable */ + [0xcb3c, 0xcb3c], /* Hangul Syllable */ + [0xcb3d, 0xcb3d], /* Hangul Syllable */ + [0xcb3e, 0xcb3e], /* Hangul Syllable */ + [0xcb3f, 0xcb3f], /* Hangul Syllable */ + [0xcb40, 0xcb40], /* Hangul Syllable */ + [0xcb41, 0xcb41], /* Hangul Syllable */ + [0xcb42, 0xcb42], /* Hangul Syllable */ + [0xcb43, 0xcb43], /* Hangul Syllable */ + [0xcb44, 0xcb44], /* Hangul Syllable */ + [0xcb45, 0xcb45], /* Hangul Syllable */ + [0xcb46, 0xcb46], /* Hangul Syllable */ + [0xcb47, 0xcb47], /* Hangul Syllable */ + [0xcb48, 0xcb48], /* Hangul Syllable */ + [0xcb49, 0xcb49], /* Hangul Syllable */ + [0xcb4a, 0xcb4a], /* Hangul Syllable */ + [0xcb4b, 0xcb4b], /* Hangul Syllable */ + [0xcb4c, 0xcb4c], /* Hangul Syllable */ + [0xcb4d, 0xcb4d], /* Hangul Syllable */ + [0xcb4e, 0xcb4e], /* Hangul Syllable */ + [0xcb4f, 0xcb4f], /* Hangul Syllable */ + [0xcb50, 0xcb50], /* Hangul Syllable */ + [0xcb51, 0xcb51], /* Hangul Syllable */ + [0xcb52, 0xcb52], /* Hangul Syllable */ + [0xcb53, 0xcb53], /* Hangul Syllable */ + [0xcb54, 0xcb54], /* Hangul Syllable */ + [0xcb55, 0xcb55], /* Hangul Syllable */ + [0xcb56, 0xcb56], /* Hangul Syllable */ + [0xcb57, 0xcb57], /* Hangul Syllable */ + [0xcb58, 0xcb58], /* Hangul Syllable */ + [0xcb59, 0xcb59], /* Hangul Syllable */ + [0xcb5a, 0xcb5a], /* Hangul Syllable */ + [0xcb5b, 0xcb5b], /* Hangul Syllable */ + [0xcb5c, 0xcb5c], /* Hangul Syllable */ + [0xcb5d, 0xcb5d], /* Hangul Syllable */ + [0xcb5e, 0xcb5e], /* Hangul Syllable */ + [0xcb5f, 0xcb5f], /* Hangul Syllable */ + [0xcb60, 0xcb60], /* Hangul Syllable */ + [0xcb61, 0xcb61], /* Hangul Syllable */ + [0xcb62, 0xcb62], /* Hangul Syllable */ + [0xcb63, 0xcb63], /* Hangul Syllable */ + [0xcb64, 0xcb64], /* Hangul Syllable */ + [0xcb65, 0xcb65], /* Hangul Syllable */ + [0xcb66, 0xcb66], /* Hangul Syllable */ + [0xcb67, 0xcb67], /* Hangul Syllable */ + [0xcb68, 0xcb68], /* Hangul Syllable */ + [0xcb69, 0xcb69], /* Hangul Syllable */ + [0xcb6a, 0xcb6a], /* Hangul Syllable */ + [0xcb6b, 0xcb6b], /* Hangul Syllable */ + [0xcb6c, 0xcb6c], /* Hangul Syllable */ + [0xcb6d, 0xcb6d], /* Hangul Syllable */ + [0xcb6e, 0xcb6e], /* Hangul Syllable */ + [0xcb6f, 0xcb6f], /* Hangul Syllable */ + [0xcb70, 0xcb70], /* Hangul Syllable */ + [0xcb71, 0xcb71], /* Hangul Syllable */ + [0xcb72, 0xcb72], /* Hangul Syllable */ + [0xcb73, 0xcb73], /* Hangul Syllable */ + [0xcb74, 0xcb74], /* Hangul Syllable */ + [0xcb75, 0xcb75], /* Hangul Syllable */ + [0xcb76, 0xcb76], /* Hangul Syllable */ + [0xcb77, 0xcb77], /* Hangul Syllable */ + [0xcb78, 0xcb78], /* Hangul Syllable */ + [0xcb79, 0xcb79], /* Hangul Syllable */ + [0xcb7a, 0xcb7a], /* Hangul Syllable */ + [0xcb7b, 0xcb7b], /* Hangul Syllable */ + [0xcb7c, 0xcb7c], /* Hangul Syllable */ + [0xcb7d, 0xcb7d], /* Hangul Syllable */ + [0xcb7e, 0xcb7e], /* Hangul Syllable */ + [0xcb7f, 0xcb7f], /* Hangul Syllable */ + [0xcb80, 0xcb80], /* Hangul Syllable */ + [0xcb81, 0xcb81], /* Hangul Syllable */ + [0xcb82, 0xcb82], /* Hangul Syllable */ + [0xcb83, 0xcb83], /* Hangul Syllable */ + [0xcb84, 0xcb84], /* Hangul Syllable */ + [0xcb85, 0xcb85], /* Hangul Syllable */ + [0xcb86, 0xcb86], /* Hangul Syllable */ + [0xcb87, 0xcb87], /* Hangul Syllable */ + [0xcb88, 0xcb88], /* Hangul Syllable */ + [0xcb89, 0xcb89], /* Hangul Syllable */ + [0xcb8a, 0xcb8a], /* Hangul Syllable */ + [0xcb8b, 0xcb8b], /* Hangul Syllable */ + [0xcb8c, 0xcb8c], /* Hangul Syllable */ + [0xcb8d, 0xcb8d], /* Hangul Syllable */ + [0xcb8e, 0xcb8e], /* Hangul Syllable */ + [0xcb8f, 0xcb8f], /* Hangul Syllable */ + [0xcb90, 0xcb90], /* Hangul Syllable */ + [0xcb91, 0xcb91], /* Hangul Syllable */ + [0xcb92, 0xcb92], /* Hangul Syllable */ + [0xcb93, 0xcb93], /* Hangul Syllable */ + [0xcb94, 0xcb94], /* Hangul Syllable */ + [0xcb95, 0xcb95], /* Hangul Syllable */ + [0xcb96, 0xcb96], /* Hangul Syllable */ + [0xcb97, 0xcb97], /* Hangul Syllable */ + [0xcb98, 0xcb98], /* Hangul Syllable */ + [0xcb99, 0xcb99], /* Hangul Syllable */ + [0xcb9a, 0xcb9a], /* Hangul Syllable */ + [0xcb9b, 0xcb9b], /* Hangul Syllable */ + [0xcb9c, 0xcb9c], /* Hangul Syllable */ + [0xcb9d, 0xcb9d], /* Hangul Syllable */ + [0xcb9e, 0xcb9e], /* Hangul Syllable */ + [0xcb9f, 0xcb9f], /* Hangul Syllable */ + [0xcba0, 0xcba0], /* Hangul Syllable */ + [0xcba1, 0xcba1], /* Hangul Syllable */ + [0xcba2, 0xcba2], /* Hangul Syllable */ + [0xcba3, 0xcba3], /* Hangul Syllable */ + [0xcba4, 0xcba4], /* Hangul Syllable */ + [0xcba5, 0xcba5], /* Hangul Syllable */ + [0xcba6, 0xcba6], /* Hangul Syllable */ + [0xcba7, 0xcba7], /* Hangul Syllable */ + [0xcba8, 0xcba8], /* Hangul Syllable */ + [0xcba9, 0xcba9], /* Hangul Syllable */ + [0xcbaa, 0xcbaa], /* Hangul Syllable */ + [0xcbab, 0xcbab], /* Hangul Syllable */ + [0xcbac, 0xcbac], /* Hangul Syllable */ + [0xcbad, 0xcbad], /* Hangul Syllable */ + [0xcbae, 0xcbae], /* Hangul Syllable */ + [0xcbaf, 0xcbaf], /* Hangul Syllable */ + [0xcbb0, 0xcbb0], /* Hangul Syllable */ + [0xcbb1, 0xcbb1], /* Hangul Syllable */ + [0xcbb2, 0xcbb2], /* Hangul Syllable */ + [0xcbb3, 0xcbb3], /* Hangul Syllable */ + [0xcbb4, 0xcbb4], /* Hangul Syllable */ + [0xcbb5, 0xcbb5], /* Hangul Syllable */ + [0xcbb6, 0xcbb6], /* Hangul Syllable */ + [0xcbb7, 0xcbb7], /* Hangul Syllable */ + [0xcbb8, 0xcbb8], /* Hangul Syllable */ + [0xcbb9, 0xcbb9], /* Hangul Syllable */ + [0xcbba, 0xcbba], /* Hangul Syllable */ + [0xcbbb, 0xcbbb], /* Hangul Syllable */ + [0xcbbc, 0xcbbc], /* Hangul Syllable */ + [0xcbbd, 0xcbbd], /* Hangul Syllable */ + [0xcbbe, 0xcbbe], /* Hangul Syllable */ + [0xcbbf, 0xcbbf], /* Hangul Syllable */ + [0xcbc0, 0xcbc0], /* Hangul Syllable */ + [0xcbc1, 0xcbc1], /* Hangul Syllable */ + [0xcbc2, 0xcbc2], /* Hangul Syllable */ + [0xcbc3, 0xcbc3], /* Hangul Syllable */ + [0xcbc4, 0xcbc4], /* Hangul Syllable */ + [0xcbc5, 0xcbc5], /* Hangul Syllable */ + [0xcbc6, 0xcbc6], /* Hangul Syllable */ + [0xcbc7, 0xcbc7], /* Hangul Syllable */ + [0xcbc8, 0xcbc8], /* Hangul Syllable */ + [0xcbc9, 0xcbc9], /* Hangul Syllable */ + [0xcbca, 0xcbca], /* Hangul Syllable */ + [0xcbcb, 0xcbcb], /* Hangul Syllable */ + [0xcbcc, 0xcbcc], /* Hangul Syllable */ + [0xcbcd, 0xcbcd], /* Hangul Syllable */ + [0xcbce, 0xcbce], /* Hangul Syllable */ + [0xcbcf, 0xcbcf], /* Hangul Syllable */ + [0xcbd0, 0xcbd0], /* Hangul Syllable */ + [0xcbd1, 0xcbd1], /* Hangul Syllable */ + [0xcbd2, 0xcbd2], /* Hangul Syllable */ + [0xcbd3, 0xcbd3], /* Hangul Syllable */ + [0xcbd4, 0xcbd4], /* Hangul Syllable */ + [0xcbd5, 0xcbd5], /* Hangul Syllable */ + [0xcbd6, 0xcbd6], /* Hangul Syllable */ + [0xcbd7, 0xcbd7], /* Hangul Syllable */ + [0xcbd8, 0xcbd8], /* Hangul Syllable */ + [0xcbd9, 0xcbd9], /* Hangul Syllable */ + [0xcbda, 0xcbda], /* Hangul Syllable */ + [0xcbdb, 0xcbdb], /* Hangul Syllable */ + [0xcbdc, 0xcbdc], /* Hangul Syllable */ + [0xcbdd, 0xcbdd], /* Hangul Syllable */ + [0xcbde, 0xcbde], /* Hangul Syllable */ + [0xcbdf, 0xcbdf], /* Hangul Syllable */ + [0xcbe0, 0xcbe0], /* Hangul Syllable */ + [0xcbe1, 0xcbe1], /* Hangul Syllable */ + [0xcbe2, 0xcbe2], /* Hangul Syllable */ + [0xcbe3, 0xcbe3], /* Hangul Syllable */ + [0xcbe4, 0xcbe4], /* Hangul Syllable */ + [0xcbe5, 0xcbe5], /* Hangul Syllable */ + [0xcbe6, 0xcbe6], /* Hangul Syllable */ + [0xcbe7, 0xcbe7], /* Hangul Syllable */ + [0xcbe8, 0xcbe8], /* Hangul Syllable */ + [0xcbe9, 0xcbe9], /* Hangul Syllable */ + [0xcbea, 0xcbea], /* Hangul Syllable */ + [0xcbeb, 0xcbeb], /* Hangul Syllable */ + [0xcbec, 0xcbec], /* Hangul Syllable */ + [0xcbed, 0xcbed], /* Hangul Syllable */ + [0xcbee, 0xcbee], /* Hangul Syllable */ + [0xcbef, 0xcbef], /* Hangul Syllable */ + [0xcbf0, 0xcbf0], /* Hangul Syllable */ + [0xcbf1, 0xcbf1], /* Hangul Syllable */ + [0xcbf2, 0xcbf2], /* Hangul Syllable */ + [0xcbf3, 0xcbf3], /* Hangul Syllable */ + [0xcbf4, 0xcbf4], /* Hangul Syllable */ + [0xcbf5, 0xcbf5], /* Hangul Syllable */ + [0xcbf6, 0xcbf6], /* Hangul Syllable */ + [0xcbf7, 0xcbf7], /* Hangul Syllable */ + [0xcbf8, 0xcbf8], /* Hangul Syllable */ + [0xcbf9, 0xcbf9], /* Hangul Syllable */ + [0xcbfa, 0xcbfa], /* Hangul Syllable */ + [0xcbfb, 0xcbfb], /* Hangul Syllable */ + [0xcbfc, 0xcbfc], /* Hangul Syllable */ + [0xcbfd, 0xcbfd], /* Hangul Syllable */ + [0xcbfe, 0xcbfe], /* Hangul Syllable */ + [0xcbff, 0xcbff], /* Hangul Syllable */ + [0xcc00, 0xcc00], /* Hangul Syllable */ + [0xcc01, 0xcc01], /* Hangul Syllable */ + [0xcc02, 0xcc02], /* Hangul Syllable */ + [0xcc03, 0xcc03], /* Hangul Syllable */ + [0xcc04, 0xcc04], /* Hangul Syllable */ + [0xcc05, 0xcc05], /* Hangul Syllable */ + [0xcc06, 0xcc06], /* Hangul Syllable */ + [0xcc07, 0xcc07], /* Hangul Syllable */ + [0xcc08, 0xcc08], /* Hangul Syllable */ + [0xcc09, 0xcc09], /* Hangul Syllable */ + [0xcc0a, 0xcc0a], /* Hangul Syllable */ + [0xcc0b, 0xcc0b], /* Hangul Syllable */ + [0xcc0c, 0xcc0c], /* Hangul Syllable */ + [0xcc0d, 0xcc0d], /* Hangul Syllable */ + [0xcc0e, 0xcc0e], /* Hangul Syllable */ + [0xcc0f, 0xcc0f], /* Hangul Syllable */ + [0xcc10, 0xcc10], /* Hangul Syllable */ + [0xcc11, 0xcc11], /* Hangul Syllable */ + [0xcc12, 0xcc12], /* Hangul Syllable */ + [0xcc13, 0xcc13], /* Hangul Syllable */ + [0xcc14, 0xcc14], /* Hangul Syllable */ + [0xcc15, 0xcc15], /* Hangul Syllable */ + [0xcc16, 0xcc16], /* Hangul Syllable */ + [0xcc17, 0xcc17], /* Hangul Syllable */ + [0xcc18, 0xcc18], /* Hangul Syllable */ + [0xcc19, 0xcc19], /* Hangul Syllable */ + [0xcc1a, 0xcc1a], /* Hangul Syllable */ + [0xcc1b, 0xcc1b], /* Hangul Syllable */ + [0xcc1c, 0xcc1c], /* Hangul Syllable */ + [0xcc1d, 0xcc1d], /* Hangul Syllable */ + [0xcc1e, 0xcc1e], /* Hangul Syllable */ + [0xcc1f, 0xcc1f], /* Hangul Syllable */ + [0xcc20, 0xcc20], /* Hangul Syllable */ + [0xcc21, 0xcc21], /* Hangul Syllable */ + [0xcc22, 0xcc22], /* Hangul Syllable */ + [0xcc23, 0xcc23], /* Hangul Syllable */ + [0xcc24, 0xcc24], /* Hangul Syllable */ + [0xcc25, 0xcc25], /* Hangul Syllable */ + [0xcc26, 0xcc26], /* Hangul Syllable */ + [0xcc27, 0xcc27], /* Hangul Syllable */ + [0xcc28, 0xcc28], /* Hangul Syllable */ + [0xcc29, 0xcc29], /* Hangul Syllable */ + [0xcc2a, 0xcc2a], /* Hangul Syllable */ + [0xcc2b, 0xcc2b], /* Hangul Syllable */ + [0xcc2c, 0xcc2c], /* Hangul Syllable */ + [0xcc2d, 0xcc2d], /* Hangul Syllable */ + [0xcc2e, 0xcc2e], /* Hangul Syllable */ + [0xcc2f, 0xcc2f], /* Hangul Syllable */ + [0xcc30, 0xcc30], /* Hangul Syllable */ + [0xcc31, 0xcc31], /* Hangul Syllable */ + [0xcc32, 0xcc32], /* Hangul Syllable */ + [0xcc33, 0xcc33], /* Hangul Syllable */ + [0xcc34, 0xcc34], /* Hangul Syllable */ + [0xcc35, 0xcc35], /* Hangul Syllable */ + [0xcc36, 0xcc36], /* Hangul Syllable */ + [0xcc37, 0xcc37], /* Hangul Syllable */ + [0xcc38, 0xcc38], /* Hangul Syllable */ + [0xcc39, 0xcc39], /* Hangul Syllable */ + [0xcc3a, 0xcc3a], /* Hangul Syllable */ + [0xcc3b, 0xcc3b], /* Hangul Syllable */ + [0xcc3c, 0xcc3c], /* Hangul Syllable */ + [0xcc3d, 0xcc3d], /* Hangul Syllable */ + [0xcc3e, 0xcc3e], /* Hangul Syllable */ + [0xcc3f, 0xcc3f], /* Hangul Syllable */ + [0xcc40, 0xcc40], /* Hangul Syllable */ + [0xcc41, 0xcc41], /* Hangul Syllable */ + [0xcc42, 0xcc42], /* Hangul Syllable */ + [0xcc43, 0xcc43], /* Hangul Syllable */ + [0xcc44, 0xcc44], /* Hangul Syllable */ + [0xcc45, 0xcc45], /* Hangul Syllable */ + [0xcc46, 0xcc46], /* Hangul Syllable */ + [0xcc47, 0xcc47], /* Hangul Syllable */ + [0xcc48, 0xcc48], /* Hangul Syllable */ + [0xcc49, 0xcc49], /* Hangul Syllable */ + [0xcc4a, 0xcc4a], /* Hangul Syllable */ + [0xcc4b, 0xcc4b], /* Hangul Syllable */ + [0xcc4c, 0xcc4c], /* Hangul Syllable */ + [0xcc4d, 0xcc4d], /* Hangul Syllable */ + [0xcc4e, 0xcc4e], /* Hangul Syllable */ + [0xcc4f, 0xcc4f], /* Hangul Syllable */ + [0xcc50, 0xcc50], /* Hangul Syllable */ + [0xcc51, 0xcc51], /* Hangul Syllable */ + [0xcc52, 0xcc52], /* Hangul Syllable */ + [0xcc53, 0xcc53], /* Hangul Syllable */ + [0xcc54, 0xcc54], /* Hangul Syllable */ + [0xcc55, 0xcc55], /* Hangul Syllable */ + [0xcc56, 0xcc56], /* Hangul Syllable */ + [0xcc57, 0xcc57], /* Hangul Syllable */ + [0xcc58, 0xcc58], /* Hangul Syllable */ + [0xcc59, 0xcc59], /* Hangul Syllable */ + [0xcc5a, 0xcc5a], /* Hangul Syllable */ + [0xcc5b, 0xcc5b], /* Hangul Syllable */ + [0xcc5c, 0xcc5c], /* Hangul Syllable */ + [0xcc5d, 0xcc5d], /* Hangul Syllable */ + [0xcc5e, 0xcc5e], /* Hangul Syllable */ + [0xcc5f, 0xcc5f], /* Hangul Syllable */ + [0xcc60, 0xcc60], /* Hangul Syllable */ + [0xcc61, 0xcc61], /* Hangul Syllable */ + [0xcc62, 0xcc62], /* Hangul Syllable */ + [0xcc63, 0xcc63], /* Hangul Syllable */ + [0xcc64, 0xcc64], /* Hangul Syllable */ + [0xcc65, 0xcc65], /* Hangul Syllable */ + [0xcc66, 0xcc66], /* Hangul Syllable */ + [0xcc67, 0xcc67], /* Hangul Syllable */ + [0xcc68, 0xcc68], /* Hangul Syllable */ + [0xcc69, 0xcc69], /* Hangul Syllable */ + [0xcc6a, 0xcc6a], /* Hangul Syllable */ + [0xcc6b, 0xcc6b], /* Hangul Syllable */ + [0xcc6c, 0xcc6c], /* Hangul Syllable */ + [0xcc6d, 0xcc6d], /* Hangul Syllable */ + [0xcc6e, 0xcc6e], /* Hangul Syllable */ + [0xcc6f, 0xcc6f], /* Hangul Syllable */ + [0xcc70, 0xcc70], /* Hangul Syllable */ + [0xcc71, 0xcc71], /* Hangul Syllable */ + [0xcc72, 0xcc72], /* Hangul Syllable */ + [0xcc73, 0xcc73], /* Hangul Syllable */ + [0xcc74, 0xcc74], /* Hangul Syllable */ + [0xcc75, 0xcc75], /* Hangul Syllable */ + [0xcc76, 0xcc76], /* Hangul Syllable */ + [0xcc77, 0xcc77], /* Hangul Syllable */ + [0xcc78, 0xcc78], /* Hangul Syllable */ + [0xcc79, 0xcc79], /* Hangul Syllable */ + [0xcc7a, 0xcc7a], /* Hangul Syllable */ + [0xcc7b, 0xcc7b], /* Hangul Syllable */ + [0xcc7c, 0xcc7c], /* Hangul Syllable */ + [0xcc7d, 0xcc7d], /* Hangul Syllable */ + [0xcc7e, 0xcc7e], /* Hangul Syllable */ + [0xcc7f, 0xcc7f], /* Hangul Syllable */ + [0xcc80, 0xcc80], /* Hangul Syllable */ + [0xcc81, 0xcc81], /* Hangul Syllable */ + [0xcc82, 0xcc82], /* Hangul Syllable */ + [0xcc83, 0xcc83], /* Hangul Syllable */ + [0xcc84, 0xcc84], /* Hangul Syllable */ + [0xcc85, 0xcc85], /* Hangul Syllable */ + [0xcc86, 0xcc86], /* Hangul Syllable */ + [0xcc87, 0xcc87], /* Hangul Syllable */ + [0xcc88, 0xcc88], /* Hangul Syllable */ + [0xcc89, 0xcc89], /* Hangul Syllable */ + [0xcc8a, 0xcc8a], /* Hangul Syllable */ + [0xcc8b, 0xcc8b], /* Hangul Syllable */ + [0xcc8c, 0xcc8c], /* Hangul Syllable */ + [0xcc8d, 0xcc8d], /* Hangul Syllable */ + [0xcc8e, 0xcc8e], /* Hangul Syllable */ + [0xcc8f, 0xcc8f], /* Hangul Syllable */ + [0xcc90, 0xcc90], /* Hangul Syllable */ + [0xcc91, 0xcc91], /* Hangul Syllable */ + [0xcc92, 0xcc92], /* Hangul Syllable */ + [0xcc93, 0xcc93], /* Hangul Syllable */ + [0xcc94, 0xcc94], /* Hangul Syllable */ + [0xcc95, 0xcc95], /* Hangul Syllable */ + [0xcc96, 0xcc96], /* Hangul Syllable */ + [0xcc97, 0xcc97], /* Hangul Syllable */ + [0xcc98, 0xcc98], /* Hangul Syllable */ + [0xcc99, 0xcc99], /* Hangul Syllable */ + [0xcc9a, 0xcc9a], /* Hangul Syllable */ + [0xcc9b, 0xcc9b], /* Hangul Syllable */ + [0xcc9c, 0xcc9c], /* Hangul Syllable */ + [0xcc9d, 0xcc9d], /* Hangul Syllable */ + [0xcc9e, 0xcc9e], /* Hangul Syllable */ + [0xcc9f, 0xcc9f], /* Hangul Syllable */ + [0xcca0, 0xcca0], /* Hangul Syllable */ + [0xcca1, 0xcca1], /* Hangul Syllable */ + [0xcca2, 0xcca2], /* Hangul Syllable */ + [0xcca3, 0xcca3], /* Hangul Syllable */ + [0xcca4, 0xcca4], /* Hangul Syllable */ + [0xcca5, 0xcca5], /* Hangul Syllable */ + [0xcca6, 0xcca6], /* Hangul Syllable */ + [0xcca7, 0xcca7], /* Hangul Syllable */ + [0xcca8, 0xcca8], /* Hangul Syllable */ + [0xcca9, 0xcca9], /* Hangul Syllable */ + [0xccaa, 0xccaa], /* Hangul Syllable */ + [0xccab, 0xccab], /* Hangul Syllable */ + [0xccac, 0xccac], /* Hangul Syllable */ + [0xccad, 0xccad], /* Hangul Syllable */ + [0xccae, 0xccae], /* Hangul Syllable */ + [0xccaf, 0xccaf], /* Hangul Syllable */ + [0xccb0, 0xccb0], /* Hangul Syllable */ + [0xccb1, 0xccb1], /* Hangul Syllable */ + [0xccb2, 0xccb2], /* Hangul Syllable */ + [0xccb3, 0xccb3], /* Hangul Syllable */ + [0xccb4, 0xccb4], /* Hangul Syllable */ + [0xccb5, 0xccb5], /* Hangul Syllable */ + [0xccb6, 0xccb6], /* Hangul Syllable */ + [0xccb7, 0xccb7], /* Hangul Syllable */ + [0xccb8, 0xccb8], /* Hangul Syllable */ + [0xccb9, 0xccb9], /* Hangul Syllable */ + [0xccba, 0xccba], /* Hangul Syllable */ + [0xccbb, 0xccbb], /* Hangul Syllable */ + [0xccbc, 0xccbc], /* Hangul Syllable */ + [0xccbd, 0xccbd], /* Hangul Syllable */ + [0xccbe, 0xccbe], /* Hangul Syllable */ + [0xccbf, 0xccbf], /* Hangul Syllable */ + [0xccc0, 0xccc0], /* Hangul Syllable */ + [0xccc1, 0xccc1], /* Hangul Syllable */ + [0xccc2, 0xccc2], /* Hangul Syllable */ + [0xccc3, 0xccc3], /* Hangul Syllable */ + [0xccc4, 0xccc4], /* Hangul Syllable */ + [0xccc5, 0xccc5], /* Hangul Syllable */ + [0xccc6, 0xccc6], /* Hangul Syllable */ + [0xccc7, 0xccc7], /* Hangul Syllable */ + [0xccc8, 0xccc8], /* Hangul Syllable */ + [0xccc9, 0xccc9], /* Hangul Syllable */ + [0xccca, 0xccca], /* Hangul Syllable */ + [0xcccb, 0xcccb], /* Hangul Syllable */ + [0xcccc, 0xcccc], /* Hangul Syllable */ + [0xcccd, 0xcccd], /* Hangul Syllable */ + [0xccce, 0xccce], /* Hangul Syllable */ + [0xcccf, 0xcccf], /* Hangul Syllable */ + [0xccd0, 0xccd0], /* Hangul Syllable */ + [0xccd1, 0xccd1], /* Hangul Syllable */ + [0xccd2, 0xccd2], /* Hangul Syllable */ + [0xccd3, 0xccd3], /* Hangul Syllable */ + [0xccd4, 0xccd4], /* Hangul Syllable */ + [0xccd5, 0xccd5], /* Hangul Syllable */ + [0xccd6, 0xccd6], /* Hangul Syllable */ + [0xccd7, 0xccd7], /* Hangul Syllable */ + [0xccd8, 0xccd8], /* Hangul Syllable */ + [0xccd9, 0xccd9], /* Hangul Syllable */ + [0xccda, 0xccda], /* Hangul Syllable */ + [0xccdb, 0xccdb], /* Hangul Syllable */ + [0xccdc, 0xccdc], /* Hangul Syllable */ + [0xccdd, 0xccdd], /* Hangul Syllable */ + [0xccde, 0xccde], /* Hangul Syllable */ + [0xccdf, 0xccdf], /* Hangul Syllable */ + [0xcce0, 0xcce0], /* Hangul Syllable */ + [0xcce1, 0xcce1], /* Hangul Syllable */ + [0xcce2, 0xcce2], /* Hangul Syllable */ + [0xcce3, 0xcce3], /* Hangul Syllable */ + [0xcce4, 0xcce4], /* Hangul Syllable */ + [0xcce5, 0xcce5], /* Hangul Syllable */ + [0xcce6, 0xcce6], /* Hangul Syllable */ + [0xcce7, 0xcce7], /* Hangul Syllable */ + [0xcce8, 0xcce8], /* Hangul Syllable */ + [0xcce9, 0xcce9], /* Hangul Syllable */ + [0xccea, 0xccea], /* Hangul Syllable */ + [0xcceb, 0xcceb], /* Hangul Syllable */ + [0xccec, 0xccec], /* Hangul Syllable */ + [0xcced, 0xcced], /* Hangul Syllable */ + [0xccee, 0xccee], /* Hangul Syllable */ + [0xccef, 0xccef], /* Hangul Syllable */ + [0xccf0, 0xccf0], /* Hangul Syllable */ + [0xccf1, 0xccf1], /* Hangul Syllable */ + [0xccf2, 0xccf2], /* Hangul Syllable */ + [0xccf3, 0xccf3], /* Hangul Syllable */ + [0xccf4, 0xccf4], /* Hangul Syllable */ + [0xccf5, 0xccf5], /* Hangul Syllable */ + [0xccf6, 0xccf6], /* Hangul Syllable */ + [0xccf7, 0xccf7], /* Hangul Syllable */ + [0xccf8, 0xccf8], /* Hangul Syllable */ + [0xccf9, 0xccf9], /* Hangul Syllable */ + [0xccfa, 0xccfa], /* Hangul Syllable */ + [0xccfb, 0xccfb], /* Hangul Syllable */ + [0xccfc, 0xccfc], /* Hangul Syllable */ + [0xccfd, 0xccfd], /* Hangul Syllable */ + [0xccfe, 0xccfe], /* Hangul Syllable */ + [0xccff, 0xccff], /* Hangul Syllable */ + [0xcd00, 0xcd00], /* Hangul Syllable */ + [0xcd01, 0xcd01], /* Hangul Syllable */ + [0xcd02, 0xcd02], /* Hangul Syllable */ + [0xcd03, 0xcd03], /* Hangul Syllable */ + [0xcd04, 0xcd04], /* Hangul Syllable */ + [0xcd05, 0xcd05], /* Hangul Syllable */ + [0xcd06, 0xcd06], /* Hangul Syllable */ + [0xcd07, 0xcd07], /* Hangul Syllable */ + [0xcd08, 0xcd08], /* Hangul Syllable */ + [0xcd09, 0xcd09], /* Hangul Syllable */ + [0xcd0a, 0xcd0a], /* Hangul Syllable */ + [0xcd0b, 0xcd0b], /* Hangul Syllable */ + [0xcd0c, 0xcd0c], /* Hangul Syllable */ + [0xcd0d, 0xcd0d], /* Hangul Syllable */ + [0xcd0e, 0xcd0e], /* Hangul Syllable */ + [0xcd0f, 0xcd0f], /* Hangul Syllable */ + [0xcd10, 0xcd10], /* Hangul Syllable */ + [0xcd11, 0xcd11], /* Hangul Syllable */ + [0xcd12, 0xcd12], /* Hangul Syllable */ + [0xcd13, 0xcd13], /* Hangul Syllable */ + [0xcd14, 0xcd14], /* Hangul Syllable */ + [0xcd15, 0xcd15], /* Hangul Syllable */ + [0xcd16, 0xcd16], /* Hangul Syllable */ + [0xcd17, 0xcd17], /* Hangul Syllable */ + [0xcd18, 0xcd18], /* Hangul Syllable */ + [0xcd19, 0xcd19], /* Hangul Syllable */ + [0xcd1a, 0xcd1a], /* Hangul Syllable */ + [0xcd1b, 0xcd1b], /* Hangul Syllable */ + [0xcd1c, 0xcd1c], /* Hangul Syllable */ + [0xcd1d, 0xcd1d], /* Hangul Syllable */ + [0xcd1e, 0xcd1e], /* Hangul Syllable */ + [0xcd1f, 0xcd1f], /* Hangul Syllable */ + [0xcd20, 0xcd20], /* Hangul Syllable */ + [0xcd21, 0xcd21], /* Hangul Syllable */ + [0xcd22, 0xcd22], /* Hangul Syllable */ + [0xcd23, 0xcd23], /* Hangul Syllable */ + [0xcd24, 0xcd24], /* Hangul Syllable */ + [0xcd25, 0xcd25], /* Hangul Syllable */ + [0xcd26, 0xcd26], /* Hangul Syllable */ + [0xcd27, 0xcd27], /* Hangul Syllable */ + [0xcd28, 0xcd28], /* Hangul Syllable */ + [0xcd29, 0xcd29], /* Hangul Syllable */ + [0xcd2a, 0xcd2a], /* Hangul Syllable */ + [0xcd2b, 0xcd2b], /* Hangul Syllable */ + [0xcd2c, 0xcd2c], /* Hangul Syllable */ + [0xcd2d, 0xcd2d], /* Hangul Syllable */ + [0xcd2e, 0xcd2e], /* Hangul Syllable */ + [0xcd2f, 0xcd2f], /* Hangul Syllable */ + [0xcd30, 0xcd30], /* Hangul Syllable */ + [0xcd31, 0xcd31], /* Hangul Syllable */ + [0xcd32, 0xcd32], /* Hangul Syllable */ + [0xcd33, 0xcd33], /* Hangul Syllable */ + [0xcd34, 0xcd34], /* Hangul Syllable */ + [0xcd35, 0xcd35], /* Hangul Syllable */ + [0xcd36, 0xcd36], /* Hangul Syllable */ + [0xcd37, 0xcd37], /* Hangul Syllable */ + [0xcd38, 0xcd38], /* Hangul Syllable */ + [0xcd39, 0xcd39], /* Hangul Syllable */ + [0xcd3a, 0xcd3a], /* Hangul Syllable */ + [0xcd3b, 0xcd3b], /* Hangul Syllable */ + [0xcd3c, 0xcd3c], /* Hangul Syllable */ + [0xcd3d, 0xcd3d], /* Hangul Syllable */ + [0xcd3e, 0xcd3e], /* Hangul Syllable */ + [0xcd3f, 0xcd3f], /* Hangul Syllable */ + [0xcd40, 0xcd40], /* Hangul Syllable */ + [0xcd41, 0xcd41], /* Hangul Syllable */ + [0xcd42, 0xcd42], /* Hangul Syllable */ + [0xcd43, 0xcd43], /* Hangul Syllable */ + [0xcd44, 0xcd44], /* Hangul Syllable */ + [0xcd45, 0xcd45], /* Hangul Syllable */ + [0xcd46, 0xcd46], /* Hangul Syllable */ + [0xcd47, 0xcd47], /* Hangul Syllable */ + [0xcd48, 0xcd48], /* Hangul Syllable */ + [0xcd49, 0xcd49], /* Hangul Syllable */ + [0xcd4a, 0xcd4a], /* Hangul Syllable */ + [0xcd4b, 0xcd4b], /* Hangul Syllable */ + [0xcd4c, 0xcd4c], /* Hangul Syllable */ + [0xcd4d, 0xcd4d], /* Hangul Syllable */ + [0xcd4e, 0xcd4e], /* Hangul Syllable */ + [0xcd4f, 0xcd4f], /* Hangul Syllable */ + [0xcd50, 0xcd50], /* Hangul Syllable */ + [0xcd51, 0xcd51], /* Hangul Syllable */ + [0xcd52, 0xcd52], /* Hangul Syllable */ + [0xcd53, 0xcd53], /* Hangul Syllable */ + [0xcd54, 0xcd54], /* Hangul Syllable */ + [0xcd55, 0xcd55], /* Hangul Syllable */ + [0xcd56, 0xcd56], /* Hangul Syllable */ + [0xcd57, 0xcd57], /* Hangul Syllable */ + [0xcd58, 0xcd58], /* Hangul Syllable */ + [0xcd59, 0xcd59], /* Hangul Syllable */ + [0xcd5a, 0xcd5a], /* Hangul Syllable */ + [0xcd5b, 0xcd5b], /* Hangul Syllable */ + [0xcd5c, 0xcd5c], /* Hangul Syllable */ + [0xcd5d, 0xcd5d], /* Hangul Syllable */ + [0xcd5e, 0xcd5e], /* Hangul Syllable */ + [0xcd5f, 0xcd5f], /* Hangul Syllable */ + [0xcd60, 0xcd60], /* Hangul Syllable */ + [0xcd61, 0xcd61], /* Hangul Syllable */ + [0xcd62, 0xcd62], /* Hangul Syllable */ + [0xcd63, 0xcd63], /* Hangul Syllable */ + [0xcd64, 0xcd64], /* Hangul Syllable */ + [0xcd65, 0xcd65], /* Hangul Syllable */ + [0xcd66, 0xcd66], /* Hangul Syllable */ + [0xcd67, 0xcd67], /* Hangul Syllable */ + [0xcd68, 0xcd68], /* Hangul Syllable */ + [0xcd69, 0xcd69], /* Hangul Syllable */ + [0xcd6a, 0xcd6a], /* Hangul Syllable */ + [0xcd6b, 0xcd6b], /* Hangul Syllable */ + [0xcd6c, 0xcd6c], /* Hangul Syllable */ + [0xcd6d, 0xcd6d], /* Hangul Syllable */ + [0xcd6e, 0xcd6e], /* Hangul Syllable */ + [0xcd6f, 0xcd6f], /* Hangul Syllable */ + [0xcd70, 0xcd70], /* Hangul Syllable */ + [0xcd71, 0xcd71], /* Hangul Syllable */ + [0xcd72, 0xcd72], /* Hangul Syllable */ + [0xcd73, 0xcd73], /* Hangul Syllable */ + [0xcd74, 0xcd74], /* Hangul Syllable */ + [0xcd75, 0xcd75], /* Hangul Syllable */ + [0xcd76, 0xcd76], /* Hangul Syllable */ + [0xcd77, 0xcd77], /* Hangul Syllable */ + [0xcd78, 0xcd78], /* Hangul Syllable */ + [0xcd79, 0xcd79], /* Hangul Syllable */ + [0xcd7a, 0xcd7a], /* Hangul Syllable */ + [0xcd7b, 0xcd7b], /* Hangul Syllable */ + [0xcd7c, 0xcd7c], /* Hangul Syllable */ + [0xcd7d, 0xcd7d], /* Hangul Syllable */ + [0xcd7e, 0xcd7e], /* Hangul Syllable */ + [0xcd7f, 0xcd7f], /* Hangul Syllable */ + [0xcd80, 0xcd80], /* Hangul Syllable */ + [0xcd81, 0xcd81], /* Hangul Syllable */ + [0xcd82, 0xcd82], /* Hangul Syllable */ + [0xcd83, 0xcd83], /* Hangul Syllable */ + [0xcd84, 0xcd84], /* Hangul Syllable */ + [0xcd85, 0xcd85], /* Hangul Syllable */ + [0xcd86, 0xcd86], /* Hangul Syllable */ + [0xcd87, 0xcd87], /* Hangul Syllable */ + [0xcd88, 0xcd88], /* Hangul Syllable */ + [0xcd89, 0xcd89], /* Hangul Syllable */ + [0xcd8a, 0xcd8a], /* Hangul Syllable */ + [0xcd8b, 0xcd8b], /* Hangul Syllable */ + [0xcd8c, 0xcd8c], /* Hangul Syllable */ + [0xcd8d, 0xcd8d], /* Hangul Syllable */ + [0xcd8e, 0xcd8e], /* Hangul Syllable */ + [0xcd8f, 0xcd8f], /* Hangul Syllable */ + [0xcd90, 0xcd90], /* Hangul Syllable */ + [0xcd91, 0xcd91], /* Hangul Syllable */ + [0xcd92, 0xcd92], /* Hangul Syllable */ + [0xcd93, 0xcd93], /* Hangul Syllable */ + [0xcd94, 0xcd94], /* Hangul Syllable */ + [0xcd95, 0xcd95], /* Hangul Syllable */ + [0xcd96, 0xcd96], /* Hangul Syllable */ + [0xcd97, 0xcd97], /* Hangul Syllable */ + [0xcd98, 0xcd98], /* Hangul Syllable */ + [0xcd99, 0xcd99], /* Hangul Syllable */ + [0xcd9a, 0xcd9a], /* Hangul Syllable */ + [0xcd9b, 0xcd9b], /* Hangul Syllable */ + [0xcd9c, 0xcd9c], /* Hangul Syllable */ + [0xcd9d, 0xcd9d], /* Hangul Syllable */ + [0xcd9e, 0xcd9e], /* Hangul Syllable */ + [0xcd9f, 0xcd9f], /* Hangul Syllable */ + [0xcda0, 0xcda0], /* Hangul Syllable */ + [0xcda1, 0xcda1], /* Hangul Syllable */ + [0xcda2, 0xcda2], /* Hangul Syllable */ + [0xcda3, 0xcda3], /* Hangul Syllable */ + [0xcda4, 0xcda4], /* Hangul Syllable */ + [0xcda5, 0xcda5], /* Hangul Syllable */ + [0xcda6, 0xcda6], /* Hangul Syllable */ + [0xcda7, 0xcda7], /* Hangul Syllable */ + [0xcda8, 0xcda8], /* Hangul Syllable */ + [0xcda9, 0xcda9], /* Hangul Syllable */ + [0xcdaa, 0xcdaa], /* Hangul Syllable */ + [0xcdab, 0xcdab], /* Hangul Syllable */ + [0xcdac, 0xcdac], /* Hangul Syllable */ + [0xcdad, 0xcdad], /* Hangul Syllable */ + [0xcdae, 0xcdae], /* Hangul Syllable */ + [0xcdaf, 0xcdaf], /* Hangul Syllable */ + [0xcdb0, 0xcdb0], /* Hangul Syllable */ + [0xcdb1, 0xcdb1], /* Hangul Syllable */ + [0xcdb2, 0xcdb2], /* Hangul Syllable */ + [0xcdb3, 0xcdb3], /* Hangul Syllable */ + [0xcdb4, 0xcdb4], /* Hangul Syllable */ + [0xcdb5, 0xcdb5], /* Hangul Syllable */ + [0xcdb6, 0xcdb6], /* Hangul Syllable */ + [0xcdb7, 0xcdb7], /* Hangul Syllable */ + [0xcdb8, 0xcdb8], /* Hangul Syllable */ + [0xcdb9, 0xcdb9], /* Hangul Syllable */ + [0xcdba, 0xcdba], /* Hangul Syllable */ + [0xcdbb, 0xcdbb], /* Hangul Syllable */ + [0xcdbc, 0xcdbc], /* Hangul Syllable */ + [0xcdbd, 0xcdbd], /* Hangul Syllable */ + [0xcdbe, 0xcdbe], /* Hangul Syllable */ + [0xcdbf, 0xcdbf], /* Hangul Syllable */ + [0xcdc0, 0xcdc0], /* Hangul Syllable */ + [0xcdc1, 0xcdc1], /* Hangul Syllable */ + [0xcdc2, 0xcdc2], /* Hangul Syllable */ + [0xcdc3, 0xcdc3], /* Hangul Syllable */ + [0xcdc4, 0xcdc4], /* Hangul Syllable */ + [0xcdc5, 0xcdc5], /* Hangul Syllable */ + [0xcdc6, 0xcdc6], /* Hangul Syllable */ + [0xcdc7, 0xcdc7], /* Hangul Syllable */ + [0xcdc8, 0xcdc8], /* Hangul Syllable */ + [0xcdc9, 0xcdc9], /* Hangul Syllable */ + [0xcdca, 0xcdca], /* Hangul Syllable */ + [0xcdcb, 0xcdcb], /* Hangul Syllable */ + [0xcdcc, 0xcdcc], /* Hangul Syllable */ + [0xcdcd, 0xcdcd], /* Hangul Syllable */ + [0xcdce, 0xcdce], /* Hangul Syllable */ + [0xcdcf, 0xcdcf], /* Hangul Syllable */ + [0xcdd0, 0xcdd0], /* Hangul Syllable */ + [0xcdd1, 0xcdd1], /* Hangul Syllable */ + [0xcdd2, 0xcdd2], /* Hangul Syllable */ + [0xcdd3, 0xcdd3], /* Hangul Syllable */ + [0xcdd4, 0xcdd4], /* Hangul Syllable */ + [0xcdd5, 0xcdd5], /* Hangul Syllable */ + [0xcdd6, 0xcdd6], /* Hangul Syllable */ + [0xcdd7, 0xcdd7], /* Hangul Syllable */ + [0xcdd8, 0xcdd8], /* Hangul Syllable */ + [0xcdd9, 0xcdd9], /* Hangul Syllable */ + [0xcdda, 0xcdda], /* Hangul Syllable */ + [0xcddb, 0xcddb], /* Hangul Syllable */ + [0xcddc, 0xcddc], /* Hangul Syllable */ + [0xcddd, 0xcddd], /* Hangul Syllable */ + [0xcdde, 0xcdde], /* Hangul Syllable */ + [0xcddf, 0xcddf], /* Hangul Syllable */ + [0xcde0, 0xcde0], /* Hangul Syllable */ + [0xcde1, 0xcde1], /* Hangul Syllable */ + [0xcde2, 0xcde2], /* Hangul Syllable */ + [0xcde3, 0xcde3], /* Hangul Syllable */ + [0xcde4, 0xcde4], /* Hangul Syllable */ + [0xcde5, 0xcde5], /* Hangul Syllable */ + [0xcde6, 0xcde6], /* Hangul Syllable */ + [0xcde7, 0xcde7], /* Hangul Syllable */ + [0xcde8, 0xcde8], /* Hangul Syllable */ + [0xcde9, 0xcde9], /* Hangul Syllable */ + [0xcdea, 0xcdea], /* Hangul Syllable */ + [0xcdeb, 0xcdeb], /* Hangul Syllable */ + [0xcdec, 0xcdec], /* Hangul Syllable */ + [0xcded, 0xcded], /* Hangul Syllable */ + [0xcdee, 0xcdee], /* Hangul Syllable */ + [0xcdef, 0xcdef], /* Hangul Syllable */ + [0xcdf0, 0xcdf0], /* Hangul Syllable */ + [0xcdf1, 0xcdf1], /* Hangul Syllable */ + [0xcdf2, 0xcdf2], /* Hangul Syllable */ + [0xcdf3, 0xcdf3], /* Hangul Syllable */ + [0xcdf4, 0xcdf4], /* Hangul Syllable */ + [0xcdf5, 0xcdf5], /* Hangul Syllable */ + [0xcdf6, 0xcdf6], /* Hangul Syllable */ + [0xcdf7, 0xcdf7], /* Hangul Syllable */ + [0xcdf8, 0xcdf8], /* Hangul Syllable */ + [0xcdf9, 0xcdf9], /* Hangul Syllable */ + [0xcdfa, 0xcdfa], /* Hangul Syllable */ + [0xcdfb, 0xcdfb], /* Hangul Syllable */ + [0xcdfc, 0xcdfc], /* Hangul Syllable */ + [0xcdfd, 0xcdfd], /* Hangul Syllable */ + [0xcdfe, 0xcdfe], /* Hangul Syllable */ + [0xcdff, 0xcdff], /* Hangul Syllable */ + [0xce00, 0xce00], /* Hangul Syllable */ + [0xce01, 0xce01], /* Hangul Syllable */ + [0xce02, 0xce02], /* Hangul Syllable */ + [0xce03, 0xce03], /* Hangul Syllable */ + [0xce04, 0xce04], /* Hangul Syllable */ + [0xce05, 0xce05], /* Hangul Syllable */ + [0xce06, 0xce06], /* Hangul Syllable */ + [0xce07, 0xce07], /* Hangul Syllable */ + [0xce08, 0xce08], /* Hangul Syllable */ + [0xce09, 0xce09], /* Hangul Syllable */ + [0xce0a, 0xce0a], /* Hangul Syllable */ + [0xce0b, 0xce0b], /* Hangul Syllable */ + [0xce0c, 0xce0c], /* Hangul Syllable */ + [0xce0d, 0xce0d], /* Hangul Syllable */ + [0xce0e, 0xce0e], /* Hangul Syllable */ + [0xce0f, 0xce0f], /* Hangul Syllable */ + [0xce10, 0xce10], /* Hangul Syllable */ + [0xce11, 0xce11], /* Hangul Syllable */ + [0xce12, 0xce12], /* Hangul Syllable */ + [0xce13, 0xce13], /* Hangul Syllable */ + [0xce14, 0xce14], /* Hangul Syllable */ + [0xce15, 0xce15], /* Hangul Syllable */ + [0xce16, 0xce16], /* Hangul Syllable */ + [0xce17, 0xce17], /* Hangul Syllable */ + [0xce18, 0xce18], /* Hangul Syllable */ + [0xce19, 0xce19], /* Hangul Syllable */ + [0xce1a, 0xce1a], /* Hangul Syllable */ + [0xce1b, 0xce1b], /* Hangul Syllable */ + [0xce1c, 0xce1c], /* Hangul Syllable */ + [0xce1d, 0xce1d], /* Hangul Syllable */ + [0xce1e, 0xce1e], /* Hangul Syllable */ + [0xce1f, 0xce1f], /* Hangul Syllable */ + [0xce20, 0xce20], /* Hangul Syllable */ + [0xce21, 0xce21], /* Hangul Syllable */ + [0xce22, 0xce22], /* Hangul Syllable */ + [0xce23, 0xce23], /* Hangul Syllable */ + [0xce24, 0xce24], /* Hangul Syllable */ + [0xce25, 0xce25], /* Hangul Syllable */ + [0xce26, 0xce26], /* Hangul Syllable */ + [0xce27, 0xce27], /* Hangul Syllable */ + [0xce28, 0xce28], /* Hangul Syllable */ + [0xce29, 0xce29], /* Hangul Syllable */ + [0xce2a, 0xce2a], /* Hangul Syllable */ + [0xce2b, 0xce2b], /* Hangul Syllable */ + [0xce2c, 0xce2c], /* Hangul Syllable */ + [0xce2d, 0xce2d], /* Hangul Syllable */ + [0xce2e, 0xce2e], /* Hangul Syllable */ + [0xce2f, 0xce2f], /* Hangul Syllable */ + [0xce30, 0xce30], /* Hangul Syllable */ + [0xce31, 0xce31], /* Hangul Syllable */ + [0xce32, 0xce32], /* Hangul Syllable */ + [0xce33, 0xce33], /* Hangul Syllable */ + [0xce34, 0xce34], /* Hangul Syllable */ + [0xce35, 0xce35], /* Hangul Syllable */ + [0xce36, 0xce36], /* Hangul Syllable */ + [0xce37, 0xce37], /* Hangul Syllable */ + [0xce38, 0xce38], /* Hangul Syllable */ + [0xce39, 0xce39], /* Hangul Syllable */ + [0xce3a, 0xce3a], /* Hangul Syllable */ + [0xce3b, 0xce3b], /* Hangul Syllable */ + [0xce3c, 0xce3c], /* Hangul Syllable */ + [0xce3d, 0xce3d], /* Hangul Syllable */ + [0xce3e, 0xce3e], /* Hangul Syllable */ + [0xce3f, 0xce3f], /* Hangul Syllable */ + [0xce40, 0xce40], /* Hangul Syllable */ + [0xce41, 0xce41], /* Hangul Syllable */ + [0xce42, 0xce42], /* Hangul Syllable */ + [0xce43, 0xce43], /* Hangul Syllable */ + [0xce44, 0xce44], /* Hangul Syllable */ + [0xce45, 0xce45], /* Hangul Syllable */ + [0xce46, 0xce46], /* Hangul Syllable */ + [0xce47, 0xce47], /* Hangul Syllable */ + [0xce48, 0xce48], /* Hangul Syllable */ + [0xce49, 0xce49], /* Hangul Syllable */ + [0xce4a, 0xce4a], /* Hangul Syllable */ + [0xce4b, 0xce4b], /* Hangul Syllable */ + [0xce4c, 0xce4c], /* Hangul Syllable */ + [0xce4d, 0xce4d], /* Hangul Syllable */ + [0xce4e, 0xce4e], /* Hangul Syllable */ + [0xce4f, 0xce4f], /* Hangul Syllable */ + [0xce50, 0xce50], /* Hangul Syllable */ + [0xce51, 0xce51], /* Hangul Syllable */ + [0xce52, 0xce52], /* Hangul Syllable */ + [0xce53, 0xce53], /* Hangul Syllable */ + [0xce54, 0xce54], /* Hangul Syllable */ + [0xce55, 0xce55], /* Hangul Syllable */ + [0xce56, 0xce56], /* Hangul Syllable */ + [0xce57, 0xce57], /* Hangul Syllable */ + [0xce58, 0xce58], /* Hangul Syllable */ + [0xce59, 0xce59], /* Hangul Syllable */ + [0xce5a, 0xce5a], /* Hangul Syllable */ + [0xce5b, 0xce5b], /* Hangul Syllable */ + [0xce5c, 0xce5c], /* Hangul Syllable */ + [0xce5d, 0xce5d], /* Hangul Syllable */ + [0xce5e, 0xce5e], /* Hangul Syllable */ + [0xce5f, 0xce5f], /* Hangul Syllable */ + [0xce60, 0xce60], /* Hangul Syllable */ + [0xce61, 0xce61], /* Hangul Syllable */ + [0xce62, 0xce62], /* Hangul Syllable */ + [0xce63, 0xce63], /* Hangul Syllable */ + [0xce64, 0xce64], /* Hangul Syllable */ + [0xce65, 0xce65], /* Hangul Syllable */ + [0xce66, 0xce66], /* Hangul Syllable */ + [0xce67, 0xce67], /* Hangul Syllable */ + [0xce68, 0xce68], /* Hangul Syllable */ + [0xce69, 0xce69], /* Hangul Syllable */ + [0xce6a, 0xce6a], /* Hangul Syllable */ + [0xce6b, 0xce6b], /* Hangul Syllable */ + [0xce6c, 0xce6c], /* Hangul Syllable */ + [0xce6d, 0xce6d], /* Hangul Syllable */ + [0xce6e, 0xce6e], /* Hangul Syllable */ + [0xce6f, 0xce6f], /* Hangul Syllable */ + [0xce70, 0xce70], /* Hangul Syllable */ + [0xce71, 0xce71], /* Hangul Syllable */ + [0xce72, 0xce72], /* Hangul Syllable */ + [0xce73, 0xce73], /* Hangul Syllable */ + [0xce74, 0xce74], /* Hangul Syllable */ + [0xce75, 0xce75], /* Hangul Syllable */ + [0xce76, 0xce76], /* Hangul Syllable */ + [0xce77, 0xce77], /* Hangul Syllable */ + [0xce78, 0xce78], /* Hangul Syllable */ + [0xce79, 0xce79], /* Hangul Syllable */ + [0xce7a, 0xce7a], /* Hangul Syllable */ + [0xce7b, 0xce7b], /* Hangul Syllable */ + [0xce7c, 0xce7c], /* Hangul Syllable */ + [0xce7d, 0xce7d], /* Hangul Syllable */ + [0xce7e, 0xce7e], /* Hangul Syllable */ + [0xce7f, 0xce7f], /* Hangul Syllable */ + [0xce80, 0xce80], /* Hangul Syllable */ + [0xce81, 0xce81], /* Hangul Syllable */ + [0xce82, 0xce82], /* Hangul Syllable */ + [0xce83, 0xce83], /* Hangul Syllable */ + [0xce84, 0xce84], /* Hangul Syllable */ + [0xce85, 0xce85], /* Hangul Syllable */ + [0xce86, 0xce86], /* Hangul Syllable */ + [0xce87, 0xce87], /* Hangul Syllable */ + [0xce88, 0xce88], /* Hangul Syllable */ + [0xce89, 0xce89], /* Hangul Syllable */ + [0xce8a, 0xce8a], /* Hangul Syllable */ + [0xce8b, 0xce8b], /* Hangul Syllable */ + [0xce8c, 0xce8c], /* Hangul Syllable */ + [0xce8d, 0xce8d], /* Hangul Syllable */ + [0xce8e, 0xce8e], /* Hangul Syllable */ + [0xce8f, 0xce8f], /* Hangul Syllable */ + [0xce90, 0xce90], /* Hangul Syllable */ + [0xce91, 0xce91], /* Hangul Syllable */ + [0xce92, 0xce92], /* Hangul Syllable */ + [0xce93, 0xce93], /* Hangul Syllable */ + [0xce94, 0xce94], /* Hangul Syllable */ + [0xce95, 0xce95], /* Hangul Syllable */ + [0xce96, 0xce96], /* Hangul Syllable */ + [0xce97, 0xce97], /* Hangul Syllable */ + [0xce98, 0xce98], /* Hangul Syllable */ + [0xce99, 0xce99], /* Hangul Syllable */ + [0xce9a, 0xce9a], /* Hangul Syllable */ + [0xce9b, 0xce9b], /* Hangul Syllable */ + [0xce9c, 0xce9c], /* Hangul Syllable */ + [0xce9d, 0xce9d], /* Hangul Syllable */ + [0xce9e, 0xce9e], /* Hangul Syllable */ + [0xce9f, 0xce9f], /* Hangul Syllable */ + [0xcea0, 0xcea0], /* Hangul Syllable */ + [0xcea1, 0xcea1], /* Hangul Syllable */ + [0xcea2, 0xcea2], /* Hangul Syllable */ + [0xcea3, 0xcea3], /* Hangul Syllable */ + [0xcea4, 0xcea4], /* Hangul Syllable */ + [0xcea5, 0xcea5], /* Hangul Syllable */ + [0xcea6, 0xcea6], /* Hangul Syllable */ + [0xcea7, 0xcea7], /* Hangul Syllable */ + [0xcea8, 0xcea8], /* Hangul Syllable */ + [0xcea9, 0xcea9], /* Hangul Syllable */ + [0xceaa, 0xceaa], /* Hangul Syllable */ + [0xceab, 0xceab], /* Hangul Syllable */ + [0xceac, 0xceac], /* Hangul Syllable */ + [0xcead, 0xcead], /* Hangul Syllable */ + [0xceae, 0xceae], /* Hangul Syllable */ + [0xceaf, 0xceaf], /* Hangul Syllable */ + [0xceb0, 0xceb0], /* Hangul Syllable */ + [0xceb1, 0xceb1], /* Hangul Syllable */ + [0xceb2, 0xceb2], /* Hangul Syllable */ + [0xceb3, 0xceb3], /* Hangul Syllable */ + [0xceb4, 0xceb4], /* Hangul Syllable */ + [0xceb5, 0xceb5], /* Hangul Syllable */ + [0xceb6, 0xceb6], /* Hangul Syllable */ + [0xceb7, 0xceb7], /* Hangul Syllable */ + [0xceb8, 0xceb8], /* Hangul Syllable */ + [0xceb9, 0xceb9], /* Hangul Syllable */ + [0xceba, 0xceba], /* Hangul Syllable */ + [0xcebb, 0xcebb], /* Hangul Syllable */ + [0xcebc, 0xcebc], /* Hangul Syllable */ + [0xcebd, 0xcebd], /* Hangul Syllable */ + [0xcebe, 0xcebe], /* Hangul Syllable */ + [0xcebf, 0xcebf], /* Hangul Syllable */ + [0xcec0, 0xcec0], /* Hangul Syllable */ + [0xcec1, 0xcec1], /* Hangul Syllable */ + [0xcec2, 0xcec2], /* Hangul Syllable */ + [0xcec3, 0xcec3], /* Hangul Syllable */ + [0xcec4, 0xcec4], /* Hangul Syllable */ + [0xcec5, 0xcec5], /* Hangul Syllable */ + [0xcec6, 0xcec6], /* Hangul Syllable */ + [0xcec7, 0xcec7], /* Hangul Syllable */ + [0xcec8, 0xcec8], /* Hangul Syllable */ + [0xcec9, 0xcec9], /* Hangul Syllable */ + [0xceca, 0xceca], /* Hangul Syllable */ + [0xcecb, 0xcecb], /* Hangul Syllable */ + [0xcecc, 0xcecc], /* Hangul Syllable */ + [0xcecd, 0xcecd], /* Hangul Syllable */ + [0xcece, 0xcece], /* Hangul Syllable */ + [0xcecf, 0xcecf], /* Hangul Syllable */ + [0xced0, 0xced0], /* Hangul Syllable */ + [0xced1, 0xced1], /* Hangul Syllable */ + [0xced2, 0xced2], /* Hangul Syllable */ + [0xced3, 0xced3], /* Hangul Syllable */ + [0xced4, 0xced4], /* Hangul Syllable */ + [0xced5, 0xced5], /* Hangul Syllable */ + [0xced6, 0xced6], /* Hangul Syllable */ + [0xced7, 0xced7], /* Hangul Syllable */ + [0xced8, 0xced8], /* Hangul Syllable */ + [0xced9, 0xced9], /* Hangul Syllable */ + [0xceda, 0xceda], /* Hangul Syllable */ + [0xcedb, 0xcedb], /* Hangul Syllable */ + [0xcedc, 0xcedc], /* Hangul Syllable */ + [0xcedd, 0xcedd], /* Hangul Syllable */ + [0xcede, 0xcede], /* Hangul Syllable */ + [0xcedf, 0xcedf], /* Hangul Syllable */ + [0xcee0, 0xcee0], /* Hangul Syllable */ + [0xcee1, 0xcee1], /* Hangul Syllable */ + [0xcee2, 0xcee2], /* Hangul Syllable */ + [0xcee3, 0xcee3], /* Hangul Syllable */ + [0xcee4, 0xcee4], /* Hangul Syllable */ + [0xcee5, 0xcee5], /* Hangul Syllable */ + [0xcee6, 0xcee6], /* Hangul Syllable */ + [0xcee7, 0xcee7], /* Hangul Syllable */ + [0xcee8, 0xcee8], /* Hangul Syllable */ + [0xcee9, 0xcee9], /* Hangul Syllable */ + [0xceea, 0xceea], /* Hangul Syllable */ + [0xceeb, 0xceeb], /* Hangul Syllable */ + [0xceec, 0xceec], /* Hangul Syllable */ + [0xceed, 0xceed], /* Hangul Syllable */ + [0xceee, 0xceee], /* Hangul Syllable */ + [0xceef, 0xceef], /* Hangul Syllable */ + [0xcef0, 0xcef0], /* Hangul Syllable */ + [0xcef1, 0xcef1], /* Hangul Syllable */ + [0xcef2, 0xcef2], /* Hangul Syllable */ + [0xcef3, 0xcef3], /* Hangul Syllable */ + [0xcef4, 0xcef4], /* Hangul Syllable */ + [0xcef5, 0xcef5], /* Hangul Syllable */ + [0xcef6, 0xcef6], /* Hangul Syllable */ + [0xcef7, 0xcef7], /* Hangul Syllable */ + [0xcef8, 0xcef8], /* Hangul Syllable */ + [0xcef9, 0xcef9], /* Hangul Syllable */ + [0xcefa, 0xcefa], /* Hangul Syllable */ + [0xcefb, 0xcefb], /* Hangul Syllable */ + [0xcefc, 0xcefc], /* Hangul Syllable */ + [0xcefd, 0xcefd], /* Hangul Syllable */ + [0xcefe, 0xcefe], /* Hangul Syllable */ + [0xceff, 0xceff], /* Hangul Syllable */ + [0xcf00, 0xcf00], /* Hangul Syllable */ + [0xcf01, 0xcf01], /* Hangul Syllable */ + [0xcf02, 0xcf02], /* Hangul Syllable */ + [0xcf03, 0xcf03], /* Hangul Syllable */ + [0xcf04, 0xcf04], /* Hangul Syllable */ + [0xcf05, 0xcf05], /* Hangul Syllable */ + [0xcf06, 0xcf06], /* Hangul Syllable */ + [0xcf07, 0xcf07], /* Hangul Syllable */ + [0xcf08, 0xcf08], /* Hangul Syllable */ + [0xcf09, 0xcf09], /* Hangul Syllable */ + [0xcf0a, 0xcf0a], /* Hangul Syllable */ + [0xcf0b, 0xcf0b], /* Hangul Syllable */ + [0xcf0c, 0xcf0c], /* Hangul Syllable */ + [0xcf0d, 0xcf0d], /* Hangul Syllable */ + [0xcf0e, 0xcf0e], /* Hangul Syllable */ + [0xcf0f, 0xcf0f], /* Hangul Syllable */ + [0xcf10, 0xcf10], /* Hangul Syllable */ + [0xcf11, 0xcf11], /* Hangul Syllable */ + [0xcf12, 0xcf12], /* Hangul Syllable */ + [0xcf13, 0xcf13], /* Hangul Syllable */ + [0xcf14, 0xcf14], /* Hangul Syllable */ + [0xcf15, 0xcf15], /* Hangul Syllable */ + [0xcf16, 0xcf16], /* Hangul Syllable */ + [0xcf17, 0xcf17], /* Hangul Syllable */ + [0xcf18, 0xcf18], /* Hangul Syllable */ + [0xcf19, 0xcf19], /* Hangul Syllable */ + [0xcf1a, 0xcf1a], /* Hangul Syllable */ + [0xcf1b, 0xcf1b], /* Hangul Syllable */ + [0xcf1c, 0xcf1c], /* Hangul Syllable */ + [0xcf1d, 0xcf1d], /* Hangul Syllable */ + [0xcf1e, 0xcf1e], /* Hangul Syllable */ + [0xcf1f, 0xcf1f], /* Hangul Syllable */ + [0xcf20, 0xcf20], /* Hangul Syllable */ + [0xcf21, 0xcf21], /* Hangul Syllable */ + [0xcf22, 0xcf22], /* Hangul Syllable */ + [0xcf23, 0xcf23], /* Hangul Syllable */ + [0xcf24, 0xcf24], /* Hangul Syllable */ + [0xcf25, 0xcf25], /* Hangul Syllable */ + [0xcf26, 0xcf26], /* Hangul Syllable */ + [0xcf27, 0xcf27], /* Hangul Syllable */ + [0xcf28, 0xcf28], /* Hangul Syllable */ + [0xcf29, 0xcf29], /* Hangul Syllable */ + [0xcf2a, 0xcf2a], /* Hangul Syllable */ + [0xcf2b, 0xcf2b], /* Hangul Syllable */ + [0xcf2c, 0xcf2c], /* Hangul Syllable */ + [0xcf2d, 0xcf2d], /* Hangul Syllable */ + [0xcf2e, 0xcf2e], /* Hangul Syllable */ + [0xcf2f, 0xcf2f], /* Hangul Syllable */ + [0xcf30, 0xcf30], /* Hangul Syllable */ + [0xcf31, 0xcf31], /* Hangul Syllable */ + [0xcf32, 0xcf32], /* Hangul Syllable */ + [0xcf33, 0xcf33], /* Hangul Syllable */ + [0xcf34, 0xcf34], /* Hangul Syllable */ + [0xcf35, 0xcf35], /* Hangul Syllable */ + [0xcf36, 0xcf36], /* Hangul Syllable */ + [0xcf37, 0xcf37], /* Hangul Syllable */ + [0xcf38, 0xcf38], /* Hangul Syllable */ + [0xcf39, 0xcf39], /* Hangul Syllable */ + [0xcf3a, 0xcf3a], /* Hangul Syllable */ + [0xcf3b, 0xcf3b], /* Hangul Syllable */ + [0xcf3c, 0xcf3c], /* Hangul Syllable */ + [0xcf3d, 0xcf3d], /* Hangul Syllable */ + [0xcf3e, 0xcf3e], /* Hangul Syllable */ + [0xcf3f, 0xcf3f], /* Hangul Syllable */ + [0xcf40, 0xcf40], /* Hangul Syllable */ + [0xcf41, 0xcf41], /* Hangul Syllable */ + [0xcf42, 0xcf42], /* Hangul Syllable */ + [0xcf43, 0xcf43], /* Hangul Syllable */ + [0xcf44, 0xcf44], /* Hangul Syllable */ + [0xcf45, 0xcf45], /* Hangul Syllable */ + [0xcf46, 0xcf46], /* Hangul Syllable */ + [0xcf47, 0xcf47], /* Hangul Syllable */ + [0xcf48, 0xcf48], /* Hangul Syllable */ + [0xcf49, 0xcf49], /* Hangul Syllable */ + [0xcf4a, 0xcf4a], /* Hangul Syllable */ + [0xcf4b, 0xcf4b], /* Hangul Syllable */ + [0xcf4c, 0xcf4c], /* Hangul Syllable */ + [0xcf4d, 0xcf4d], /* Hangul Syllable */ + [0xcf4e, 0xcf4e], /* Hangul Syllable */ + [0xcf4f, 0xcf4f], /* Hangul Syllable */ + [0xcf50, 0xcf50], /* Hangul Syllable */ + [0xcf51, 0xcf51], /* Hangul Syllable */ + [0xcf52, 0xcf52], /* Hangul Syllable */ + [0xcf53, 0xcf53], /* Hangul Syllable */ + [0xcf54, 0xcf54], /* Hangul Syllable */ + [0xcf55, 0xcf55], /* Hangul Syllable */ + [0xcf56, 0xcf56], /* Hangul Syllable */ + [0xcf57, 0xcf57], /* Hangul Syllable */ + [0xcf58, 0xcf58], /* Hangul Syllable */ + [0xcf59, 0xcf59], /* Hangul Syllable */ + [0xcf5a, 0xcf5a], /* Hangul Syllable */ + [0xcf5b, 0xcf5b], /* Hangul Syllable */ + [0xcf5c, 0xcf5c], /* Hangul Syllable */ + [0xcf5d, 0xcf5d], /* Hangul Syllable */ + [0xcf5e, 0xcf5e], /* Hangul Syllable */ + [0xcf5f, 0xcf5f], /* Hangul Syllable */ + [0xcf60, 0xcf60], /* Hangul Syllable */ + [0xcf61, 0xcf61], /* Hangul Syllable */ + [0xcf62, 0xcf62], /* Hangul Syllable */ + [0xcf63, 0xcf63], /* Hangul Syllable */ + [0xcf64, 0xcf64], /* Hangul Syllable */ + [0xcf65, 0xcf65], /* Hangul Syllable */ + [0xcf66, 0xcf66], /* Hangul Syllable */ + [0xcf67, 0xcf67], /* Hangul Syllable */ + [0xcf68, 0xcf68], /* Hangul Syllable */ + [0xcf69, 0xcf69], /* Hangul Syllable */ + [0xcf6a, 0xcf6a], /* Hangul Syllable */ + [0xcf6b, 0xcf6b], /* Hangul Syllable */ + [0xcf6c, 0xcf6c], /* Hangul Syllable */ + [0xcf6d, 0xcf6d], /* Hangul Syllable */ + [0xcf6e, 0xcf6e], /* Hangul Syllable */ + [0xcf6f, 0xcf6f], /* Hangul Syllable */ + [0xcf70, 0xcf70], /* Hangul Syllable */ + [0xcf71, 0xcf71], /* Hangul Syllable */ + [0xcf72, 0xcf72], /* Hangul Syllable */ + [0xcf73, 0xcf73], /* Hangul Syllable */ + [0xcf74, 0xcf74], /* Hangul Syllable */ + [0xcf75, 0xcf75], /* Hangul Syllable */ + [0xcf76, 0xcf76], /* Hangul Syllable */ + [0xcf77, 0xcf77], /* Hangul Syllable */ + [0xcf78, 0xcf78], /* Hangul Syllable */ + [0xcf79, 0xcf79], /* Hangul Syllable */ + [0xcf7a, 0xcf7a], /* Hangul Syllable */ + [0xcf7b, 0xcf7b], /* Hangul Syllable */ + [0xcf7c, 0xcf7c], /* Hangul Syllable */ + [0xcf7d, 0xcf7d], /* Hangul Syllable */ + [0xcf7e, 0xcf7e], /* Hangul Syllable */ + [0xcf7f, 0xcf7f], /* Hangul Syllable */ + [0xcf80, 0xcf80], /* Hangul Syllable */ + [0xcf81, 0xcf81], /* Hangul Syllable */ + [0xcf82, 0xcf82], /* Hangul Syllable */ + [0xcf83, 0xcf83], /* Hangul Syllable */ + [0xcf84, 0xcf84], /* Hangul Syllable */ + [0xcf85, 0xcf85], /* Hangul Syllable */ + [0xcf86, 0xcf86], /* Hangul Syllable */ + [0xcf87, 0xcf87], /* Hangul Syllable */ + [0xcf88, 0xcf88], /* Hangul Syllable */ + [0xcf89, 0xcf89], /* Hangul Syllable */ + [0xcf8a, 0xcf8a], /* Hangul Syllable */ + [0xcf8b, 0xcf8b], /* Hangul Syllable */ + [0xcf8c, 0xcf8c], /* Hangul Syllable */ + [0xcf8d, 0xcf8d], /* Hangul Syllable */ + [0xcf8e, 0xcf8e], /* Hangul Syllable */ + [0xcf8f, 0xcf8f], /* Hangul Syllable */ + [0xcf90, 0xcf90], /* Hangul Syllable */ + [0xcf91, 0xcf91], /* Hangul Syllable */ + [0xcf92, 0xcf92], /* Hangul Syllable */ + [0xcf93, 0xcf93], /* Hangul Syllable */ + [0xcf94, 0xcf94], /* Hangul Syllable */ + [0xcf95, 0xcf95], /* Hangul Syllable */ + [0xcf96, 0xcf96], /* Hangul Syllable */ + [0xcf97, 0xcf97], /* Hangul Syllable */ + [0xcf98, 0xcf98], /* Hangul Syllable */ + [0xcf99, 0xcf99], /* Hangul Syllable */ + [0xcf9a, 0xcf9a], /* Hangul Syllable */ + [0xcf9b, 0xcf9b], /* Hangul Syllable */ + [0xcf9c, 0xcf9c], /* Hangul Syllable */ + [0xcf9d, 0xcf9d], /* Hangul Syllable */ + [0xcf9e, 0xcf9e], /* Hangul Syllable */ + [0xcf9f, 0xcf9f], /* Hangul Syllable */ + [0xcfa0, 0xcfa0], /* Hangul Syllable */ + [0xcfa1, 0xcfa1], /* Hangul Syllable */ + [0xcfa2, 0xcfa2], /* Hangul Syllable */ + [0xcfa3, 0xcfa3], /* Hangul Syllable */ + [0xcfa4, 0xcfa4], /* Hangul Syllable */ + [0xcfa5, 0xcfa5], /* Hangul Syllable */ + [0xcfa6, 0xcfa6], /* Hangul Syllable */ + [0xcfa7, 0xcfa7], /* Hangul Syllable */ + [0xcfa8, 0xcfa8], /* Hangul Syllable */ + [0xcfa9, 0xcfa9], /* Hangul Syllable */ + [0xcfaa, 0xcfaa], /* Hangul Syllable */ + [0xcfab, 0xcfab], /* Hangul Syllable */ + [0xcfac, 0xcfac], /* Hangul Syllable */ + [0xcfad, 0xcfad], /* Hangul Syllable */ + [0xcfae, 0xcfae], /* Hangul Syllable */ + [0xcfaf, 0xcfaf], /* Hangul Syllable */ + [0xcfb0, 0xcfb0], /* Hangul Syllable */ + [0xcfb1, 0xcfb1], /* Hangul Syllable */ + [0xcfb2, 0xcfb2], /* Hangul Syllable */ + [0xcfb3, 0xcfb3], /* Hangul Syllable */ + [0xcfb4, 0xcfb4], /* Hangul Syllable */ + [0xcfb5, 0xcfb5], /* Hangul Syllable */ + [0xcfb6, 0xcfb6], /* Hangul Syllable */ + [0xcfb7, 0xcfb7], /* Hangul Syllable */ + [0xcfb8, 0xcfb8], /* Hangul Syllable */ + [0xcfb9, 0xcfb9], /* Hangul Syllable */ + [0xcfba, 0xcfba], /* Hangul Syllable */ + [0xcfbb, 0xcfbb], /* Hangul Syllable */ + [0xcfbc, 0xcfbc], /* Hangul Syllable */ + [0xcfbd, 0xcfbd], /* Hangul Syllable */ + [0xcfbe, 0xcfbe], /* Hangul Syllable */ + [0xcfbf, 0xcfbf], /* Hangul Syllable */ + [0xcfc0, 0xcfc0], /* Hangul Syllable */ + [0xcfc1, 0xcfc1], /* Hangul Syllable */ + [0xcfc2, 0xcfc2], /* Hangul Syllable */ + [0xcfc3, 0xcfc3], /* Hangul Syllable */ + [0xcfc4, 0xcfc4], /* Hangul Syllable */ + [0xcfc5, 0xcfc5], /* Hangul Syllable */ + [0xcfc6, 0xcfc6], /* Hangul Syllable */ + [0xcfc7, 0xcfc7], /* Hangul Syllable */ + [0xcfc8, 0xcfc8], /* Hangul Syllable */ + [0xcfc9, 0xcfc9], /* Hangul Syllable */ + [0xcfca, 0xcfca], /* Hangul Syllable */ + [0xcfcb, 0xcfcb], /* Hangul Syllable */ + [0xcfcc, 0xcfcc], /* Hangul Syllable */ + [0xcfcd, 0xcfcd], /* Hangul Syllable */ + [0xcfce, 0xcfce], /* Hangul Syllable */ + [0xcfcf, 0xcfcf], /* Hangul Syllable */ + [0xcfd0, 0xcfd0], /* Hangul Syllable */ + [0xcfd1, 0xcfd1], /* Hangul Syllable */ + [0xcfd2, 0xcfd2], /* Hangul Syllable */ + [0xcfd3, 0xcfd3], /* Hangul Syllable */ + [0xcfd4, 0xcfd4], /* Hangul Syllable */ + [0xcfd5, 0xcfd5], /* Hangul Syllable */ + [0xcfd6, 0xcfd6], /* Hangul Syllable */ + [0xcfd7, 0xcfd7], /* Hangul Syllable */ + [0xcfd8, 0xcfd8], /* Hangul Syllable */ + [0xcfd9, 0xcfd9], /* Hangul Syllable */ + [0xcfda, 0xcfda], /* Hangul Syllable */ + [0xcfdb, 0xcfdb], /* Hangul Syllable */ + [0xcfdc, 0xcfdc], /* Hangul Syllable */ + [0xcfdd, 0xcfdd], /* Hangul Syllable */ + [0xcfde, 0xcfde], /* Hangul Syllable */ + [0xcfdf, 0xcfdf], /* Hangul Syllable */ + [0xcfe0, 0xcfe0], /* Hangul Syllable */ + [0xcfe1, 0xcfe1], /* Hangul Syllable */ + [0xcfe2, 0xcfe2], /* Hangul Syllable */ + [0xcfe3, 0xcfe3], /* Hangul Syllable */ + [0xcfe4, 0xcfe4], /* Hangul Syllable */ + [0xcfe5, 0xcfe5], /* Hangul Syllable */ + [0xcfe6, 0xcfe6], /* Hangul Syllable */ + [0xcfe7, 0xcfe7], /* Hangul Syllable */ + [0xcfe8, 0xcfe8], /* Hangul Syllable */ + [0xcfe9, 0xcfe9], /* Hangul Syllable */ + [0xcfea, 0xcfea], /* Hangul Syllable */ + [0xcfeb, 0xcfeb], /* Hangul Syllable */ + [0xcfec, 0xcfec], /* Hangul Syllable */ + [0xcfed, 0xcfed], /* Hangul Syllable */ + [0xcfee, 0xcfee], /* Hangul Syllable */ + [0xcfef, 0xcfef], /* Hangul Syllable */ + [0xcff0, 0xcff0], /* Hangul Syllable */ + [0xcff1, 0xcff1], /* Hangul Syllable */ + [0xcff2, 0xcff2], /* Hangul Syllable */ + [0xcff3, 0xcff3], /* Hangul Syllable */ + [0xcff4, 0xcff4], /* Hangul Syllable */ + [0xcff5, 0xcff5], /* Hangul Syllable */ + [0xcff6, 0xcff6], /* Hangul Syllable */ + [0xcff7, 0xcff7], /* Hangul Syllable */ + [0xcff8, 0xcff8], /* Hangul Syllable */ + [0xcff9, 0xcff9], /* Hangul Syllable */ + [0xcffa, 0xcffa], /* Hangul Syllable */ + [0xcffb, 0xcffb], /* Hangul Syllable */ + [0xcffc, 0xcffc], /* Hangul Syllable */ + [0xcffd, 0xcffd], /* Hangul Syllable */ + [0xcffe, 0xcffe], /* Hangul Syllable */ + [0xcfff, 0xcfff], /* Hangul Syllable */ + [0xd000, 0xd000], /* Hangul Syllable */ + [0xd001, 0xd001], /* Hangul Syllable */ + [0xd002, 0xd002], /* Hangul Syllable */ + [0xd003, 0xd003], /* Hangul Syllable */ + [0xd004, 0xd004], /* Hangul Syllable */ + [0xd005, 0xd005], /* Hangul Syllable */ + [0xd006, 0xd006], /* Hangul Syllable */ + [0xd007, 0xd007], /* Hangul Syllable */ + [0xd008, 0xd008], /* Hangul Syllable */ + [0xd009, 0xd009], /* Hangul Syllable */ + [0xd00a, 0xd00a], /* Hangul Syllable */ + [0xd00b, 0xd00b], /* Hangul Syllable */ + [0xd00c, 0xd00c], /* Hangul Syllable */ + [0xd00d, 0xd00d], /* Hangul Syllable */ + [0xd00e, 0xd00e], /* Hangul Syllable */ + [0xd00f, 0xd00f], /* Hangul Syllable */ + [0xd010, 0xd010], /* Hangul Syllable */ + [0xd011, 0xd011], /* Hangul Syllable */ + [0xd012, 0xd012], /* Hangul Syllable */ + [0xd013, 0xd013], /* Hangul Syllable */ + [0xd014, 0xd014], /* Hangul Syllable */ + [0xd015, 0xd015], /* Hangul Syllable */ + [0xd016, 0xd016], /* Hangul Syllable */ + [0xd017, 0xd017], /* Hangul Syllable */ + [0xd018, 0xd018], /* Hangul Syllable */ + [0xd019, 0xd019], /* Hangul Syllable */ + [0xd01a, 0xd01a], /* Hangul Syllable */ + [0xd01b, 0xd01b], /* Hangul Syllable */ + [0xd01c, 0xd01c], /* Hangul Syllable */ + [0xd01d, 0xd01d], /* Hangul Syllable */ + [0xd01e, 0xd01e], /* Hangul Syllable */ + [0xd01f, 0xd01f], /* Hangul Syllable */ + [0xd020, 0xd020], /* Hangul Syllable */ + [0xd021, 0xd021], /* Hangul Syllable */ + [0xd022, 0xd022], /* Hangul Syllable */ + [0xd023, 0xd023], /* Hangul Syllable */ + [0xd024, 0xd024], /* Hangul Syllable */ + [0xd025, 0xd025], /* Hangul Syllable */ + [0xd026, 0xd026], /* Hangul Syllable */ + [0xd027, 0xd027], /* Hangul Syllable */ + [0xd028, 0xd028], /* Hangul Syllable */ + [0xd029, 0xd029], /* Hangul Syllable */ + [0xd02a, 0xd02a], /* Hangul Syllable */ + [0xd02b, 0xd02b], /* Hangul Syllable */ + [0xd02c, 0xd02c], /* Hangul Syllable */ + [0xd02d, 0xd02d], /* Hangul Syllable */ + [0xd02e, 0xd02e], /* Hangul Syllable */ + [0xd02f, 0xd02f], /* Hangul Syllable */ + [0xd030, 0xd030], /* Hangul Syllable */ + [0xd031, 0xd031], /* Hangul Syllable */ + [0xd032, 0xd032], /* Hangul Syllable */ + [0xd033, 0xd033], /* Hangul Syllable */ + [0xd034, 0xd034], /* Hangul Syllable */ + [0xd035, 0xd035], /* Hangul Syllable */ + [0xd036, 0xd036], /* Hangul Syllable */ + [0xd037, 0xd037], /* Hangul Syllable */ + [0xd038, 0xd038], /* Hangul Syllable */ + [0xd039, 0xd039], /* Hangul Syllable */ + [0xd03a, 0xd03a], /* Hangul Syllable */ + [0xd03b, 0xd03b], /* Hangul Syllable */ + [0xd03c, 0xd03c], /* Hangul Syllable */ + [0xd03d, 0xd03d], /* Hangul Syllable */ + [0xd03e, 0xd03e], /* Hangul Syllable */ + [0xd03f, 0xd03f], /* Hangul Syllable */ + [0xd040, 0xd040], /* Hangul Syllable */ + [0xd041, 0xd041], /* Hangul Syllable */ + [0xd042, 0xd042], /* Hangul Syllable */ + [0xd043, 0xd043], /* Hangul Syllable */ + [0xd044, 0xd044], /* Hangul Syllable */ + [0xd045, 0xd045], /* Hangul Syllable */ + [0xd046, 0xd046], /* Hangul Syllable */ + [0xd047, 0xd047], /* Hangul Syllable */ + [0xd048, 0xd048], /* Hangul Syllable */ + [0xd049, 0xd049], /* Hangul Syllable */ + [0xd04a, 0xd04a], /* Hangul Syllable */ + [0xd04b, 0xd04b], /* Hangul Syllable */ + [0xd04c, 0xd04c], /* Hangul Syllable */ + [0xd04d, 0xd04d], /* Hangul Syllable */ + [0xd04e, 0xd04e], /* Hangul Syllable */ + [0xd04f, 0xd04f], /* Hangul Syllable */ + [0xd050, 0xd050], /* Hangul Syllable */ + [0xd051, 0xd051], /* Hangul Syllable */ + [0xd052, 0xd052], /* Hangul Syllable */ + [0xd053, 0xd053], /* Hangul Syllable */ + [0xd054, 0xd054], /* Hangul Syllable */ + [0xd055, 0xd055], /* Hangul Syllable */ + [0xd056, 0xd056], /* Hangul Syllable */ + [0xd057, 0xd057], /* Hangul Syllable */ + [0xd058, 0xd058], /* Hangul Syllable */ + [0xd059, 0xd059], /* Hangul Syllable */ + [0xd05a, 0xd05a], /* Hangul Syllable */ + [0xd05b, 0xd05b], /* Hangul Syllable */ + [0xd05c, 0xd05c], /* Hangul Syllable */ + [0xd05d, 0xd05d], /* Hangul Syllable */ + [0xd05e, 0xd05e], /* Hangul Syllable */ + [0xd05f, 0xd05f], /* Hangul Syllable */ + [0xd060, 0xd060], /* Hangul Syllable */ + [0xd061, 0xd061], /* Hangul Syllable */ + [0xd062, 0xd062], /* Hangul Syllable */ + [0xd063, 0xd063], /* Hangul Syllable */ + [0xd064, 0xd064], /* Hangul Syllable */ + [0xd065, 0xd065], /* Hangul Syllable */ + [0xd066, 0xd066], /* Hangul Syllable */ + [0xd067, 0xd067], /* Hangul Syllable */ + [0xd068, 0xd068], /* Hangul Syllable */ + [0xd069, 0xd069], /* Hangul Syllable */ + [0xd06a, 0xd06a], /* Hangul Syllable */ + [0xd06b, 0xd06b], /* Hangul Syllable */ + [0xd06c, 0xd06c], /* Hangul Syllable */ + [0xd06d, 0xd06d], /* Hangul Syllable */ + [0xd06e, 0xd06e], /* Hangul Syllable */ + [0xd06f, 0xd06f], /* Hangul Syllable */ + [0xd070, 0xd070], /* Hangul Syllable */ + [0xd071, 0xd071], /* Hangul Syllable */ + [0xd072, 0xd072], /* Hangul Syllable */ + [0xd073, 0xd073], /* Hangul Syllable */ + [0xd074, 0xd074], /* Hangul Syllable */ + [0xd075, 0xd075], /* Hangul Syllable */ + [0xd076, 0xd076], /* Hangul Syllable */ + [0xd077, 0xd077], /* Hangul Syllable */ + [0xd078, 0xd078], /* Hangul Syllable */ + [0xd079, 0xd079], /* Hangul Syllable */ + [0xd07a, 0xd07a], /* Hangul Syllable */ + [0xd07b, 0xd07b], /* Hangul Syllable */ + [0xd07c, 0xd07c], /* Hangul Syllable */ + [0xd07d, 0xd07d], /* Hangul Syllable */ + [0xd07e, 0xd07e], /* Hangul Syllable */ + [0xd07f, 0xd07f], /* Hangul Syllable */ + [0xd080, 0xd080], /* Hangul Syllable */ + [0xd081, 0xd081], /* Hangul Syllable */ + [0xd082, 0xd082], /* Hangul Syllable */ + [0xd083, 0xd083], /* Hangul Syllable */ + [0xd084, 0xd084], /* Hangul Syllable */ + [0xd085, 0xd085], /* Hangul Syllable */ + [0xd086, 0xd086], /* Hangul Syllable */ + [0xd087, 0xd087], /* Hangul Syllable */ + [0xd088, 0xd088], /* Hangul Syllable */ + [0xd089, 0xd089], /* Hangul Syllable */ + [0xd08a, 0xd08a], /* Hangul Syllable */ + [0xd08b, 0xd08b], /* Hangul Syllable */ + [0xd08c, 0xd08c], /* Hangul Syllable */ + [0xd08d, 0xd08d], /* Hangul Syllable */ + [0xd08e, 0xd08e], /* Hangul Syllable */ + [0xd08f, 0xd08f], /* Hangul Syllable */ + [0xd090, 0xd090], /* Hangul Syllable */ + [0xd091, 0xd091], /* Hangul Syllable */ + [0xd092, 0xd092], /* Hangul Syllable */ + [0xd093, 0xd093], /* Hangul Syllable */ + [0xd094, 0xd094], /* Hangul Syllable */ + [0xd095, 0xd095], /* Hangul Syllable */ + [0xd096, 0xd096], /* Hangul Syllable */ + [0xd097, 0xd097], /* Hangul Syllable */ + [0xd098, 0xd098], /* Hangul Syllable */ + [0xd099, 0xd099], /* Hangul Syllable */ + [0xd09a, 0xd09a], /* Hangul Syllable */ + [0xd09b, 0xd09b], /* Hangul Syllable */ + [0xd09c, 0xd09c], /* Hangul Syllable */ + [0xd09d, 0xd09d], /* Hangul Syllable */ + [0xd09e, 0xd09e], /* Hangul Syllable */ + [0xd09f, 0xd09f], /* Hangul Syllable */ + [0xd0a0, 0xd0a0], /* Hangul Syllable */ + [0xd0a1, 0xd0a1], /* Hangul Syllable */ + [0xd0a2, 0xd0a2], /* Hangul Syllable */ + [0xd0a3, 0xd0a3], /* Hangul Syllable */ + [0xd0a4, 0xd0a4], /* Hangul Syllable */ + [0xd0a5, 0xd0a5], /* Hangul Syllable */ + [0xd0a6, 0xd0a6], /* Hangul Syllable */ + [0xd0a7, 0xd0a7], /* Hangul Syllable */ + [0xd0a8, 0xd0a8], /* Hangul Syllable */ + [0xd0a9, 0xd0a9], /* Hangul Syllable */ + [0xd0aa, 0xd0aa], /* Hangul Syllable */ + [0xd0ab, 0xd0ab], /* Hangul Syllable */ + [0xd0ac, 0xd0ac], /* Hangul Syllable */ + [0xd0ad, 0xd0ad], /* Hangul Syllable */ + [0xd0ae, 0xd0ae], /* Hangul Syllable */ + [0xd0af, 0xd0af], /* Hangul Syllable */ + [0xd0b0, 0xd0b0], /* Hangul Syllable */ + [0xd0b1, 0xd0b1], /* Hangul Syllable */ + [0xd0b2, 0xd0b2], /* Hangul Syllable */ + [0xd0b3, 0xd0b3], /* Hangul Syllable */ + [0xd0b4, 0xd0b4], /* Hangul Syllable */ + [0xd0b5, 0xd0b5], /* Hangul Syllable */ + [0xd0b6, 0xd0b6], /* Hangul Syllable */ + [0xd0b7, 0xd0b7], /* Hangul Syllable */ + [0xd0b8, 0xd0b8], /* Hangul Syllable */ + [0xd0b9, 0xd0b9], /* Hangul Syllable */ + [0xd0ba, 0xd0ba], /* Hangul Syllable */ + [0xd0bb, 0xd0bb], /* Hangul Syllable */ + [0xd0bc, 0xd0bc], /* Hangul Syllable */ + [0xd0bd, 0xd0bd], /* Hangul Syllable */ + [0xd0be, 0xd0be], /* Hangul Syllable */ + [0xd0bf, 0xd0bf], /* Hangul Syllable */ + [0xd0c0, 0xd0c0], /* Hangul Syllable */ + [0xd0c1, 0xd0c1], /* Hangul Syllable */ + [0xd0c2, 0xd0c2], /* Hangul Syllable */ + [0xd0c3, 0xd0c3], /* Hangul Syllable */ + [0xd0c4, 0xd0c4], /* Hangul Syllable */ + [0xd0c5, 0xd0c5], /* Hangul Syllable */ + [0xd0c6, 0xd0c6], /* Hangul Syllable */ + [0xd0c7, 0xd0c7], /* Hangul Syllable */ + [0xd0c8, 0xd0c8], /* Hangul Syllable */ + [0xd0c9, 0xd0c9], /* Hangul Syllable */ + [0xd0ca, 0xd0ca], /* Hangul Syllable */ + [0xd0cb, 0xd0cb], /* Hangul Syllable */ + [0xd0cc, 0xd0cc], /* Hangul Syllable */ + [0xd0cd, 0xd0cd], /* Hangul Syllable */ + [0xd0ce, 0xd0ce], /* Hangul Syllable */ + [0xd0cf, 0xd0cf], /* Hangul Syllable */ + [0xd0d0, 0xd0d0], /* Hangul Syllable */ + [0xd0d1, 0xd0d1], /* Hangul Syllable */ + [0xd0d2, 0xd0d2], /* Hangul Syllable */ + [0xd0d3, 0xd0d3], /* Hangul Syllable */ + [0xd0d4, 0xd0d4], /* Hangul Syllable */ + [0xd0d5, 0xd0d5], /* Hangul Syllable */ + [0xd0d6, 0xd0d6], /* Hangul Syllable */ + [0xd0d7, 0xd0d7], /* Hangul Syllable */ + [0xd0d8, 0xd0d8], /* Hangul Syllable */ + [0xd0d9, 0xd0d9], /* Hangul Syllable */ + [0xd0da, 0xd0da], /* Hangul Syllable */ + [0xd0db, 0xd0db], /* Hangul Syllable */ + [0xd0dc, 0xd0dc], /* Hangul Syllable */ + [0xd0dd, 0xd0dd], /* Hangul Syllable */ + [0xd0de, 0xd0de], /* Hangul Syllable */ + [0xd0df, 0xd0df], /* Hangul Syllable */ + [0xd0e0, 0xd0e0], /* Hangul Syllable */ + [0xd0e1, 0xd0e1], /* Hangul Syllable */ + [0xd0e2, 0xd0e2], /* Hangul Syllable */ + [0xd0e3, 0xd0e3], /* Hangul Syllable */ + [0xd0e4, 0xd0e4], /* Hangul Syllable */ + [0xd0e5, 0xd0e5], /* Hangul Syllable */ + [0xd0e6, 0xd0e6], /* Hangul Syllable */ + [0xd0e7, 0xd0e7], /* Hangul Syllable */ + [0xd0e8, 0xd0e8], /* Hangul Syllable */ + [0xd0e9, 0xd0e9], /* Hangul Syllable */ + [0xd0ea, 0xd0ea], /* Hangul Syllable */ + [0xd0eb, 0xd0eb], /* Hangul Syllable */ + [0xd0ec, 0xd0ec], /* Hangul Syllable */ + [0xd0ed, 0xd0ed], /* Hangul Syllable */ + [0xd0ee, 0xd0ee], /* Hangul Syllable */ + [0xd0ef, 0xd0ef], /* Hangul Syllable */ + [0xd0f0, 0xd0f0], /* Hangul Syllable */ + [0xd0f1, 0xd0f1], /* Hangul Syllable */ + [0xd0f2, 0xd0f2], /* Hangul Syllable */ + [0xd0f3, 0xd0f3], /* Hangul Syllable */ + [0xd0f4, 0xd0f4], /* Hangul Syllable */ + [0xd0f5, 0xd0f5], /* Hangul Syllable */ + [0xd0f6, 0xd0f6], /* Hangul Syllable */ + [0xd0f7, 0xd0f7], /* Hangul Syllable */ + [0xd0f8, 0xd0f8], /* Hangul Syllable */ + [0xd0f9, 0xd0f9], /* Hangul Syllable */ + [0xd0fa, 0xd0fa], /* Hangul Syllable */ + [0xd0fb, 0xd0fb], /* Hangul Syllable */ + [0xd0fc, 0xd0fc], /* Hangul Syllable */ + [0xd0fd, 0xd0fd], /* Hangul Syllable */ + [0xd0fe, 0xd0fe], /* Hangul Syllable */ + [0xd0ff, 0xd0ff], /* Hangul Syllable */ + [0xd100, 0xd100], /* Hangul Syllable */ + [0xd101, 0xd101], /* Hangul Syllable */ + [0xd102, 0xd102], /* Hangul Syllable */ + [0xd103, 0xd103], /* Hangul Syllable */ + [0xd104, 0xd104], /* Hangul Syllable */ + [0xd105, 0xd105], /* Hangul Syllable */ + [0xd106, 0xd106], /* Hangul Syllable */ + [0xd107, 0xd107], /* Hangul Syllable */ + [0xd108, 0xd108], /* Hangul Syllable */ + [0xd109, 0xd109], /* Hangul Syllable */ + [0xd10a, 0xd10a], /* Hangul Syllable */ + [0xd10b, 0xd10b], /* Hangul Syllable */ + [0xd10c, 0xd10c], /* Hangul Syllable */ + [0xd10d, 0xd10d], /* Hangul Syllable */ + [0xd10e, 0xd10e], /* Hangul Syllable */ + [0xd10f, 0xd10f], /* Hangul Syllable */ + [0xd110, 0xd110], /* Hangul Syllable */ + [0xd111, 0xd111], /* Hangul Syllable */ + [0xd112, 0xd112], /* Hangul Syllable */ + [0xd113, 0xd113], /* Hangul Syllable */ + [0xd114, 0xd114], /* Hangul Syllable */ + [0xd115, 0xd115], /* Hangul Syllable */ + [0xd116, 0xd116], /* Hangul Syllable */ + [0xd117, 0xd117], /* Hangul Syllable */ + [0xd118, 0xd118], /* Hangul Syllable */ + [0xd119, 0xd119], /* Hangul Syllable */ + [0xd11a, 0xd11a], /* Hangul Syllable */ + [0xd11b, 0xd11b], /* Hangul Syllable */ + [0xd11c, 0xd11c], /* Hangul Syllable */ + [0xd11d, 0xd11d], /* Hangul Syllable */ + [0xd11e, 0xd11e], /* Hangul Syllable */ + [0xd11f, 0xd11f], /* Hangul Syllable */ + [0xd120, 0xd120], /* Hangul Syllable */ + [0xd121, 0xd121], /* Hangul Syllable */ + [0xd122, 0xd122], /* Hangul Syllable */ + [0xd123, 0xd123], /* Hangul Syllable */ + [0xd124, 0xd124], /* Hangul Syllable */ + [0xd125, 0xd125], /* Hangul Syllable */ + [0xd126, 0xd126], /* Hangul Syllable */ + [0xd127, 0xd127], /* Hangul Syllable */ + [0xd128, 0xd128], /* Hangul Syllable */ + [0xd129, 0xd129], /* Hangul Syllable */ + [0xd12a, 0xd12a], /* Hangul Syllable */ + [0xd12b, 0xd12b], /* Hangul Syllable */ + [0xd12c, 0xd12c], /* Hangul Syllable */ + [0xd12d, 0xd12d], /* Hangul Syllable */ + [0xd12e, 0xd12e], /* Hangul Syllable */ + [0xd12f, 0xd12f], /* Hangul Syllable */ + [0xd130, 0xd130], /* Hangul Syllable */ + [0xd131, 0xd131], /* Hangul Syllable */ + [0xd132, 0xd132], /* Hangul Syllable */ + [0xd133, 0xd133], /* Hangul Syllable */ + [0xd134, 0xd134], /* Hangul Syllable */ + [0xd135, 0xd135], /* Hangul Syllable */ + [0xd136, 0xd136], /* Hangul Syllable */ + [0xd137, 0xd137], /* Hangul Syllable */ + [0xd138, 0xd138], /* Hangul Syllable */ + [0xd139, 0xd139], /* Hangul Syllable */ + [0xd13a, 0xd13a], /* Hangul Syllable */ + [0xd13b, 0xd13b], /* Hangul Syllable */ + [0xd13c, 0xd13c], /* Hangul Syllable */ + [0xd13d, 0xd13d], /* Hangul Syllable */ + [0xd13e, 0xd13e], /* Hangul Syllable */ + [0xd13f, 0xd13f], /* Hangul Syllable */ + [0xd140, 0xd140], /* Hangul Syllable */ + [0xd141, 0xd141], /* Hangul Syllable */ + [0xd142, 0xd142], /* Hangul Syllable */ + [0xd143, 0xd143], /* Hangul Syllable */ + [0xd144, 0xd144], /* Hangul Syllable */ + [0xd145, 0xd145], /* Hangul Syllable */ + [0xd146, 0xd146], /* Hangul Syllable */ + [0xd147, 0xd147], /* Hangul Syllable */ + [0xd148, 0xd148], /* Hangul Syllable */ + [0xd149, 0xd149], /* Hangul Syllable */ + [0xd14a, 0xd14a], /* Hangul Syllable */ + [0xd14b, 0xd14b], /* Hangul Syllable */ + [0xd14c, 0xd14c], /* Hangul Syllable */ + [0xd14d, 0xd14d], /* Hangul Syllable */ + [0xd14e, 0xd14e], /* Hangul Syllable */ + [0xd14f, 0xd14f], /* Hangul Syllable */ + [0xd150, 0xd150], /* Hangul Syllable */ + [0xd151, 0xd151], /* Hangul Syllable */ + [0xd152, 0xd152], /* Hangul Syllable */ + [0xd153, 0xd153], /* Hangul Syllable */ + [0xd154, 0xd154], /* Hangul Syllable */ + [0xd155, 0xd155], /* Hangul Syllable */ + [0xd156, 0xd156], /* Hangul Syllable */ + [0xd157, 0xd157], /* Hangul Syllable */ + [0xd158, 0xd158], /* Hangul Syllable */ + [0xd159, 0xd159], /* Hangul Syllable */ + [0xd15a, 0xd15a], /* Hangul Syllable */ + [0xd15b, 0xd15b], /* Hangul Syllable */ + [0xd15c, 0xd15c], /* Hangul Syllable */ + [0xd15d, 0xd15d], /* Hangul Syllable */ + [0xd15e, 0xd15e], /* Hangul Syllable */ + [0xd15f, 0xd15f], /* Hangul Syllable */ + [0xd160, 0xd160], /* Hangul Syllable */ + [0xd161, 0xd161], /* Hangul Syllable */ + [0xd162, 0xd162], /* Hangul Syllable */ + [0xd163, 0xd163], /* Hangul Syllable */ + [0xd164, 0xd164], /* Hangul Syllable */ + [0xd165, 0xd165], /* Hangul Syllable */ + [0xd166, 0xd166], /* Hangul Syllable */ + [0xd167, 0xd167], /* Hangul Syllable */ + [0xd168, 0xd168], /* Hangul Syllable */ + [0xd169, 0xd169], /* Hangul Syllable */ + [0xd16a, 0xd16a], /* Hangul Syllable */ + [0xd16b, 0xd16b], /* Hangul Syllable */ + [0xd16c, 0xd16c], /* Hangul Syllable */ + [0xd16d, 0xd16d], /* Hangul Syllable */ + [0xd16e, 0xd16e], /* Hangul Syllable */ + [0xd16f, 0xd16f], /* Hangul Syllable */ + [0xd170, 0xd170], /* Hangul Syllable */ + [0xd171, 0xd171], /* Hangul Syllable */ + [0xd172, 0xd172], /* Hangul Syllable */ + [0xd173, 0xd173], /* Hangul Syllable */ + [0xd174, 0xd174], /* Hangul Syllable */ + [0xd175, 0xd175], /* Hangul Syllable */ + [0xd176, 0xd176], /* Hangul Syllable */ + [0xd177, 0xd177], /* Hangul Syllable */ + [0xd178, 0xd178], /* Hangul Syllable */ + [0xd179, 0xd179], /* Hangul Syllable */ + [0xd17a, 0xd17a], /* Hangul Syllable */ + [0xd17b, 0xd17b], /* Hangul Syllable */ + [0xd17c, 0xd17c], /* Hangul Syllable */ + [0xd17d, 0xd17d], /* Hangul Syllable */ + [0xd17e, 0xd17e], /* Hangul Syllable */ + [0xd17f, 0xd17f], /* Hangul Syllable */ + [0xd180, 0xd180], /* Hangul Syllable */ + [0xd181, 0xd181], /* Hangul Syllable */ + [0xd182, 0xd182], /* Hangul Syllable */ + [0xd183, 0xd183], /* Hangul Syllable */ + [0xd184, 0xd184], /* Hangul Syllable */ + [0xd185, 0xd185], /* Hangul Syllable */ + [0xd186, 0xd186], /* Hangul Syllable */ + [0xd187, 0xd187], /* Hangul Syllable */ + [0xd188, 0xd188], /* Hangul Syllable */ + [0xd189, 0xd189], /* Hangul Syllable */ + [0xd18a, 0xd18a], /* Hangul Syllable */ + [0xd18b, 0xd18b], /* Hangul Syllable */ + [0xd18c, 0xd18c], /* Hangul Syllable */ + [0xd18d, 0xd18d], /* Hangul Syllable */ + [0xd18e, 0xd18e], /* Hangul Syllable */ + [0xd18f, 0xd18f], /* Hangul Syllable */ + [0xd190, 0xd190], /* Hangul Syllable */ + [0xd191, 0xd191], /* Hangul Syllable */ + [0xd192, 0xd192], /* Hangul Syllable */ + [0xd193, 0xd193], /* Hangul Syllable */ + [0xd194, 0xd194], /* Hangul Syllable */ + [0xd195, 0xd195], /* Hangul Syllable */ + [0xd196, 0xd196], /* Hangul Syllable */ + [0xd197, 0xd197], /* Hangul Syllable */ + [0xd198, 0xd198], /* Hangul Syllable */ + [0xd199, 0xd199], /* Hangul Syllable */ + [0xd19a, 0xd19a], /* Hangul Syllable */ + [0xd19b, 0xd19b], /* Hangul Syllable */ + [0xd19c, 0xd19c], /* Hangul Syllable */ + [0xd19d, 0xd19d], /* Hangul Syllable */ + [0xd19e, 0xd19e], /* Hangul Syllable */ + [0xd19f, 0xd19f], /* Hangul Syllable */ + [0xd1a0, 0xd1a0], /* Hangul Syllable */ + [0xd1a1, 0xd1a1], /* Hangul Syllable */ + [0xd1a2, 0xd1a2], /* Hangul Syllable */ + [0xd1a3, 0xd1a3], /* Hangul Syllable */ + [0xd1a4, 0xd1a4], /* Hangul Syllable */ + [0xd1a5, 0xd1a5], /* Hangul Syllable */ + [0xd1a6, 0xd1a6], /* Hangul Syllable */ + [0xd1a7, 0xd1a7], /* Hangul Syllable */ + [0xd1a8, 0xd1a8], /* Hangul Syllable */ + [0xd1a9, 0xd1a9], /* Hangul Syllable */ + [0xd1aa, 0xd1aa], /* Hangul Syllable */ + [0xd1ab, 0xd1ab], /* Hangul Syllable */ + [0xd1ac, 0xd1ac], /* Hangul Syllable */ + [0xd1ad, 0xd1ad], /* Hangul Syllable */ + [0xd1ae, 0xd1ae], /* Hangul Syllable */ + [0xd1af, 0xd1af], /* Hangul Syllable */ + [0xd1b0, 0xd1b0], /* Hangul Syllable */ + [0xd1b1, 0xd1b1], /* Hangul Syllable */ + [0xd1b2, 0xd1b2], /* Hangul Syllable */ + [0xd1b3, 0xd1b3], /* Hangul Syllable */ + [0xd1b4, 0xd1b4], /* Hangul Syllable */ + [0xd1b5, 0xd1b5], /* Hangul Syllable */ + [0xd1b6, 0xd1b6], /* Hangul Syllable */ + [0xd1b7, 0xd1b7], /* Hangul Syllable */ + [0xd1b8, 0xd1b8], /* Hangul Syllable */ + [0xd1b9, 0xd1b9], /* Hangul Syllable */ + [0xd1ba, 0xd1ba], /* Hangul Syllable */ + [0xd1bb, 0xd1bb], /* Hangul Syllable */ + [0xd1bc, 0xd1bc], /* Hangul Syllable */ + [0xd1bd, 0xd1bd], /* Hangul Syllable */ + [0xd1be, 0xd1be], /* Hangul Syllable */ + [0xd1bf, 0xd1bf], /* Hangul Syllable */ + [0xd1c0, 0xd1c0], /* Hangul Syllable */ + [0xd1c1, 0xd1c1], /* Hangul Syllable */ + [0xd1c2, 0xd1c2], /* Hangul Syllable */ + [0xd1c3, 0xd1c3], /* Hangul Syllable */ + [0xd1c4, 0xd1c4], /* Hangul Syllable */ + [0xd1c5, 0xd1c5], /* Hangul Syllable */ + [0xd1c6, 0xd1c6], /* Hangul Syllable */ + [0xd1c7, 0xd1c7], /* Hangul Syllable */ + [0xd1c8, 0xd1c8], /* Hangul Syllable */ + [0xd1c9, 0xd1c9], /* Hangul Syllable */ + [0xd1ca, 0xd1ca], /* Hangul Syllable */ + [0xd1cb, 0xd1cb], /* Hangul Syllable */ + [0xd1cc, 0xd1cc], /* Hangul Syllable */ + [0xd1cd, 0xd1cd], /* Hangul Syllable */ + [0xd1ce, 0xd1ce], /* Hangul Syllable */ + [0xd1cf, 0xd1cf], /* Hangul Syllable */ + [0xd1d0, 0xd1d0], /* Hangul Syllable */ + [0xd1d1, 0xd1d1], /* Hangul Syllable */ + [0xd1d2, 0xd1d2], /* Hangul Syllable */ + [0xd1d3, 0xd1d3], /* Hangul Syllable */ + [0xd1d4, 0xd1d4], /* Hangul Syllable */ + [0xd1d5, 0xd1d5], /* Hangul Syllable */ + [0xd1d6, 0xd1d6], /* Hangul Syllable */ + [0xd1d7, 0xd1d7], /* Hangul Syllable */ + [0xd1d8, 0xd1d8], /* Hangul Syllable */ + [0xd1d9, 0xd1d9], /* Hangul Syllable */ + [0xd1da, 0xd1da], /* Hangul Syllable */ + [0xd1db, 0xd1db], /* Hangul Syllable */ + [0xd1dc, 0xd1dc], /* Hangul Syllable */ + [0xd1dd, 0xd1dd], /* Hangul Syllable */ + [0xd1de, 0xd1de], /* Hangul Syllable */ + [0xd1df, 0xd1df], /* Hangul Syllable */ + [0xd1e0, 0xd1e0], /* Hangul Syllable */ + [0xd1e1, 0xd1e1], /* Hangul Syllable */ + [0xd1e2, 0xd1e2], /* Hangul Syllable */ + [0xd1e3, 0xd1e3], /* Hangul Syllable */ + [0xd1e4, 0xd1e4], /* Hangul Syllable */ + [0xd1e5, 0xd1e5], /* Hangul Syllable */ + [0xd1e6, 0xd1e6], /* Hangul Syllable */ + [0xd1e7, 0xd1e7], /* Hangul Syllable */ + [0xd1e8, 0xd1e8], /* Hangul Syllable */ + [0xd1e9, 0xd1e9], /* Hangul Syllable */ + [0xd1ea, 0xd1ea], /* Hangul Syllable */ + [0xd1eb, 0xd1eb], /* Hangul Syllable */ + [0xd1ec, 0xd1ec], /* Hangul Syllable */ + [0xd1ed, 0xd1ed], /* Hangul Syllable */ + [0xd1ee, 0xd1ee], /* Hangul Syllable */ + [0xd1ef, 0xd1ef], /* Hangul Syllable */ + [0xd1f0, 0xd1f0], /* Hangul Syllable */ + [0xd1f1, 0xd1f1], /* Hangul Syllable */ + [0xd1f2, 0xd1f2], /* Hangul Syllable */ + [0xd1f3, 0xd1f3], /* Hangul Syllable */ + [0xd1f4, 0xd1f4], /* Hangul Syllable */ + [0xd1f5, 0xd1f5], /* Hangul Syllable */ + [0xd1f6, 0xd1f6], /* Hangul Syllable */ + [0xd1f7, 0xd1f7], /* Hangul Syllable */ + [0xd1f8, 0xd1f8], /* Hangul Syllable */ + [0xd1f9, 0xd1f9], /* Hangul Syllable */ + [0xd1fa, 0xd1fa], /* Hangul Syllable */ + [0xd1fb, 0xd1fb], /* Hangul Syllable */ + [0xd1fc, 0xd1fc], /* Hangul Syllable */ + [0xd1fd, 0xd1fd], /* Hangul Syllable */ + [0xd1fe, 0xd1fe], /* Hangul Syllable */ + [0xd1ff, 0xd1ff], /* Hangul Syllable */ + [0xd200, 0xd200], /* Hangul Syllable */ + [0xd201, 0xd201], /* Hangul Syllable */ + [0xd202, 0xd202], /* Hangul Syllable */ + [0xd203, 0xd203], /* Hangul Syllable */ + [0xd204, 0xd204], /* Hangul Syllable */ + [0xd205, 0xd205], /* Hangul Syllable */ + [0xd206, 0xd206], /* Hangul Syllable */ + [0xd207, 0xd207], /* Hangul Syllable */ + [0xd208, 0xd208], /* Hangul Syllable */ + [0xd209, 0xd209], /* Hangul Syllable */ + [0xd20a, 0xd20a], /* Hangul Syllable */ + [0xd20b, 0xd20b], /* Hangul Syllable */ + [0xd20c, 0xd20c], /* Hangul Syllable */ + [0xd20d, 0xd20d], /* Hangul Syllable */ + [0xd20e, 0xd20e], /* Hangul Syllable */ + [0xd20f, 0xd20f], /* Hangul Syllable */ + [0xd210, 0xd210], /* Hangul Syllable */ + [0xd211, 0xd211], /* Hangul Syllable */ + [0xd212, 0xd212], /* Hangul Syllable */ + [0xd213, 0xd213], /* Hangul Syllable */ + [0xd214, 0xd214], /* Hangul Syllable */ + [0xd215, 0xd215], /* Hangul Syllable */ + [0xd216, 0xd216], /* Hangul Syllable */ + [0xd217, 0xd217], /* Hangul Syllable */ + [0xd218, 0xd218], /* Hangul Syllable */ + [0xd219, 0xd219], /* Hangul Syllable */ + [0xd21a, 0xd21a], /* Hangul Syllable */ + [0xd21b, 0xd21b], /* Hangul Syllable */ + [0xd21c, 0xd21c], /* Hangul Syllable */ + [0xd21d, 0xd21d], /* Hangul Syllable */ + [0xd21e, 0xd21e], /* Hangul Syllable */ + [0xd21f, 0xd21f], /* Hangul Syllable */ + [0xd220, 0xd220], /* Hangul Syllable */ + [0xd221, 0xd221], /* Hangul Syllable */ + [0xd222, 0xd222], /* Hangul Syllable */ + [0xd223, 0xd223], /* Hangul Syllable */ + [0xd224, 0xd224], /* Hangul Syllable */ + [0xd225, 0xd225], /* Hangul Syllable */ + [0xd226, 0xd226], /* Hangul Syllable */ + [0xd227, 0xd227], /* Hangul Syllable */ + [0xd228, 0xd228], /* Hangul Syllable */ + [0xd229, 0xd229], /* Hangul Syllable */ + [0xd22a, 0xd22a], /* Hangul Syllable */ + [0xd22b, 0xd22b], /* Hangul Syllable */ + [0xd22c, 0xd22c], /* Hangul Syllable */ + [0xd22d, 0xd22d], /* Hangul Syllable */ + [0xd22e, 0xd22e], /* Hangul Syllable */ + [0xd22f, 0xd22f], /* Hangul Syllable */ + [0xd230, 0xd230], /* Hangul Syllable */ + [0xd231, 0xd231], /* Hangul Syllable */ + [0xd232, 0xd232], /* Hangul Syllable */ + [0xd233, 0xd233], /* Hangul Syllable */ + [0xd234, 0xd234], /* Hangul Syllable */ + [0xd235, 0xd235], /* Hangul Syllable */ + [0xd236, 0xd236], /* Hangul Syllable */ + [0xd237, 0xd237], /* Hangul Syllable */ + [0xd238, 0xd238], /* Hangul Syllable */ + [0xd239, 0xd239], /* Hangul Syllable */ + [0xd23a, 0xd23a], /* Hangul Syllable */ + [0xd23b, 0xd23b], /* Hangul Syllable */ + [0xd23c, 0xd23c], /* Hangul Syllable */ + [0xd23d, 0xd23d], /* Hangul Syllable */ + [0xd23e, 0xd23e], /* Hangul Syllable */ + [0xd23f, 0xd23f], /* Hangul Syllable */ + [0xd240, 0xd240], /* Hangul Syllable */ + [0xd241, 0xd241], /* Hangul Syllable */ + [0xd242, 0xd242], /* Hangul Syllable */ + [0xd243, 0xd243], /* Hangul Syllable */ + [0xd244, 0xd244], /* Hangul Syllable */ + [0xd245, 0xd245], /* Hangul Syllable */ + [0xd246, 0xd246], /* Hangul Syllable */ + [0xd247, 0xd247], /* Hangul Syllable */ + [0xd248, 0xd248], /* Hangul Syllable */ + [0xd249, 0xd249], /* Hangul Syllable */ + [0xd24a, 0xd24a], /* Hangul Syllable */ + [0xd24b, 0xd24b], /* Hangul Syllable */ + [0xd24c, 0xd24c], /* Hangul Syllable */ + [0xd24d, 0xd24d], /* Hangul Syllable */ + [0xd24e, 0xd24e], /* Hangul Syllable */ + [0xd24f, 0xd24f], /* Hangul Syllable */ + [0xd250, 0xd250], /* Hangul Syllable */ + [0xd251, 0xd251], /* Hangul Syllable */ + [0xd252, 0xd252], /* Hangul Syllable */ + [0xd253, 0xd253], /* Hangul Syllable */ + [0xd254, 0xd254], /* Hangul Syllable */ + [0xd255, 0xd255], /* Hangul Syllable */ + [0xd256, 0xd256], /* Hangul Syllable */ + [0xd257, 0xd257], /* Hangul Syllable */ + [0xd258, 0xd258], /* Hangul Syllable */ + [0xd259, 0xd259], /* Hangul Syllable */ + [0xd25a, 0xd25a], /* Hangul Syllable */ + [0xd25b, 0xd25b], /* Hangul Syllable */ + [0xd25c, 0xd25c], /* Hangul Syllable */ + [0xd25d, 0xd25d], /* Hangul Syllable */ + [0xd25e, 0xd25e], /* Hangul Syllable */ + [0xd25f, 0xd25f], /* Hangul Syllable */ + [0xd260, 0xd260], /* Hangul Syllable */ + [0xd261, 0xd261], /* Hangul Syllable */ + [0xd262, 0xd262], /* Hangul Syllable */ + [0xd263, 0xd263], /* Hangul Syllable */ + [0xd264, 0xd264], /* Hangul Syllable */ + [0xd265, 0xd265], /* Hangul Syllable */ + [0xd266, 0xd266], /* Hangul Syllable */ + [0xd267, 0xd267], /* Hangul Syllable */ + [0xd268, 0xd268], /* Hangul Syllable */ + [0xd269, 0xd269], /* Hangul Syllable */ + [0xd26a, 0xd26a], /* Hangul Syllable */ + [0xd26b, 0xd26b], /* Hangul Syllable */ + [0xd26c, 0xd26c], /* Hangul Syllable */ + [0xd26d, 0xd26d], /* Hangul Syllable */ + [0xd26e, 0xd26e], /* Hangul Syllable */ + [0xd26f, 0xd26f], /* Hangul Syllable */ + [0xd270, 0xd270], /* Hangul Syllable */ + [0xd271, 0xd271], /* Hangul Syllable */ + [0xd272, 0xd272], /* Hangul Syllable */ + [0xd273, 0xd273], /* Hangul Syllable */ + [0xd274, 0xd274], /* Hangul Syllable */ + [0xd275, 0xd275], /* Hangul Syllable */ + [0xd276, 0xd276], /* Hangul Syllable */ + [0xd277, 0xd277], /* Hangul Syllable */ + [0xd278, 0xd278], /* Hangul Syllable */ + [0xd279, 0xd279], /* Hangul Syllable */ + [0xd27a, 0xd27a], /* Hangul Syllable */ + [0xd27b, 0xd27b], /* Hangul Syllable */ + [0xd27c, 0xd27c], /* Hangul Syllable */ + [0xd27d, 0xd27d], /* Hangul Syllable */ + [0xd27e, 0xd27e], /* Hangul Syllable */ + [0xd27f, 0xd27f], /* Hangul Syllable */ + [0xd280, 0xd280], /* Hangul Syllable */ + [0xd281, 0xd281], /* Hangul Syllable */ + [0xd282, 0xd282], /* Hangul Syllable */ + [0xd283, 0xd283], /* Hangul Syllable */ + [0xd284, 0xd284], /* Hangul Syllable */ + [0xd285, 0xd285], /* Hangul Syllable */ + [0xd286, 0xd286], /* Hangul Syllable */ + [0xd287, 0xd287], /* Hangul Syllable */ + [0xd288, 0xd288], /* Hangul Syllable */ + [0xd289, 0xd289], /* Hangul Syllable */ + [0xd28a, 0xd28a], /* Hangul Syllable */ + [0xd28b, 0xd28b], /* Hangul Syllable */ + [0xd28c, 0xd28c], /* Hangul Syllable */ + [0xd28d, 0xd28d], /* Hangul Syllable */ + [0xd28e, 0xd28e], /* Hangul Syllable */ + [0xd28f, 0xd28f], /* Hangul Syllable */ + [0xd290, 0xd290], /* Hangul Syllable */ + [0xd291, 0xd291], /* Hangul Syllable */ + [0xd292, 0xd292], /* Hangul Syllable */ + [0xd293, 0xd293], /* Hangul Syllable */ + [0xd294, 0xd294], /* Hangul Syllable */ + [0xd295, 0xd295], /* Hangul Syllable */ + [0xd296, 0xd296], /* Hangul Syllable */ + [0xd297, 0xd297], /* Hangul Syllable */ + [0xd298, 0xd298], /* Hangul Syllable */ + [0xd299, 0xd299], /* Hangul Syllable */ + [0xd29a, 0xd29a], /* Hangul Syllable */ + [0xd29b, 0xd29b], /* Hangul Syllable */ + [0xd29c, 0xd29c], /* Hangul Syllable */ + [0xd29d, 0xd29d], /* Hangul Syllable */ + [0xd29e, 0xd29e], /* Hangul Syllable */ + [0xd29f, 0xd29f], /* Hangul Syllable */ + [0xd2a0, 0xd2a0], /* Hangul Syllable */ + [0xd2a1, 0xd2a1], /* Hangul Syllable */ + [0xd2a2, 0xd2a2], /* Hangul Syllable */ + [0xd2a3, 0xd2a3], /* Hangul Syllable */ + [0xd2a4, 0xd2a4], /* Hangul Syllable */ + [0xd2a5, 0xd2a5], /* Hangul Syllable */ + [0xd2a6, 0xd2a6], /* Hangul Syllable */ + [0xd2a7, 0xd2a7], /* Hangul Syllable */ + [0xd2a8, 0xd2a8], /* Hangul Syllable */ + [0xd2a9, 0xd2a9], /* Hangul Syllable */ + [0xd2aa, 0xd2aa], /* Hangul Syllable */ + [0xd2ab, 0xd2ab], /* Hangul Syllable */ + [0xd2ac, 0xd2ac], /* Hangul Syllable */ + [0xd2ad, 0xd2ad], /* Hangul Syllable */ + [0xd2ae, 0xd2ae], /* Hangul Syllable */ + [0xd2af, 0xd2af], /* Hangul Syllable */ + [0xd2b0, 0xd2b0], /* Hangul Syllable */ + [0xd2b1, 0xd2b1], /* Hangul Syllable */ + [0xd2b2, 0xd2b2], /* Hangul Syllable */ + [0xd2b3, 0xd2b3], /* Hangul Syllable */ + [0xd2b4, 0xd2b4], /* Hangul Syllable */ + [0xd2b5, 0xd2b5], /* Hangul Syllable */ + [0xd2b6, 0xd2b6], /* Hangul Syllable */ + [0xd2b7, 0xd2b7], /* Hangul Syllable */ + [0xd2b8, 0xd2b8], /* Hangul Syllable */ + [0xd2b9, 0xd2b9], /* Hangul Syllable */ + [0xd2ba, 0xd2ba], /* Hangul Syllable */ + [0xd2bb, 0xd2bb], /* Hangul Syllable */ + [0xd2bc, 0xd2bc], /* Hangul Syllable */ + [0xd2bd, 0xd2bd], /* Hangul Syllable */ + [0xd2be, 0xd2be], /* Hangul Syllable */ + [0xd2bf, 0xd2bf], /* Hangul Syllable */ + [0xd2c0, 0xd2c0], /* Hangul Syllable */ + [0xd2c1, 0xd2c1], /* Hangul Syllable */ + [0xd2c2, 0xd2c2], /* Hangul Syllable */ + [0xd2c3, 0xd2c3], /* Hangul Syllable */ + [0xd2c4, 0xd2c4], /* Hangul Syllable */ + [0xd2c5, 0xd2c5], /* Hangul Syllable */ + [0xd2c6, 0xd2c6], /* Hangul Syllable */ + [0xd2c7, 0xd2c7], /* Hangul Syllable */ + [0xd2c8, 0xd2c8], /* Hangul Syllable */ + [0xd2c9, 0xd2c9], /* Hangul Syllable */ + [0xd2ca, 0xd2ca], /* Hangul Syllable */ + [0xd2cb, 0xd2cb], /* Hangul Syllable */ + [0xd2cc, 0xd2cc], /* Hangul Syllable */ + [0xd2cd, 0xd2cd], /* Hangul Syllable */ + [0xd2ce, 0xd2ce], /* Hangul Syllable */ + [0xd2cf, 0xd2cf], /* Hangul Syllable */ + [0xd2d0, 0xd2d0], /* Hangul Syllable */ + [0xd2d1, 0xd2d1], /* Hangul Syllable */ + [0xd2d2, 0xd2d2], /* Hangul Syllable */ + [0xd2d3, 0xd2d3], /* Hangul Syllable */ + [0xd2d4, 0xd2d4], /* Hangul Syllable */ + [0xd2d5, 0xd2d5], /* Hangul Syllable */ + [0xd2d6, 0xd2d6], /* Hangul Syllable */ + [0xd2d7, 0xd2d7], /* Hangul Syllable */ + [0xd2d8, 0xd2d8], /* Hangul Syllable */ + [0xd2d9, 0xd2d9], /* Hangul Syllable */ + [0xd2da, 0xd2da], /* Hangul Syllable */ + [0xd2db, 0xd2db], /* Hangul Syllable */ + [0xd2dc, 0xd2dc], /* Hangul Syllable */ + [0xd2dd, 0xd2dd], /* Hangul Syllable */ + [0xd2de, 0xd2de], /* Hangul Syllable */ + [0xd2df, 0xd2df], /* Hangul Syllable */ + [0xd2e0, 0xd2e0], /* Hangul Syllable */ + [0xd2e1, 0xd2e1], /* Hangul Syllable */ + [0xd2e2, 0xd2e2], /* Hangul Syllable */ + [0xd2e3, 0xd2e3], /* Hangul Syllable */ + [0xd2e4, 0xd2e4], /* Hangul Syllable */ + [0xd2e5, 0xd2e5], /* Hangul Syllable */ + [0xd2e6, 0xd2e6], /* Hangul Syllable */ + [0xd2e7, 0xd2e7], /* Hangul Syllable */ + [0xd2e8, 0xd2e8], /* Hangul Syllable */ + [0xd2e9, 0xd2e9], /* Hangul Syllable */ + [0xd2ea, 0xd2ea], /* Hangul Syllable */ + [0xd2eb, 0xd2eb], /* Hangul Syllable */ + [0xd2ec, 0xd2ec], /* Hangul Syllable */ + [0xd2ed, 0xd2ed], /* Hangul Syllable */ + [0xd2ee, 0xd2ee], /* Hangul Syllable */ + [0xd2ef, 0xd2ef], /* Hangul Syllable */ + [0xd2f0, 0xd2f0], /* Hangul Syllable */ + [0xd2f1, 0xd2f1], /* Hangul Syllable */ + [0xd2f2, 0xd2f2], /* Hangul Syllable */ + [0xd2f3, 0xd2f3], /* Hangul Syllable */ + [0xd2f4, 0xd2f4], /* Hangul Syllable */ + [0xd2f5, 0xd2f5], /* Hangul Syllable */ + [0xd2f6, 0xd2f6], /* Hangul Syllable */ + [0xd2f7, 0xd2f7], /* Hangul Syllable */ + [0xd2f8, 0xd2f8], /* Hangul Syllable */ + [0xd2f9, 0xd2f9], /* Hangul Syllable */ + [0xd2fa, 0xd2fa], /* Hangul Syllable */ + [0xd2fb, 0xd2fb], /* Hangul Syllable */ + [0xd2fc, 0xd2fc], /* Hangul Syllable */ + [0xd2fd, 0xd2fd], /* Hangul Syllable */ + [0xd2fe, 0xd2fe], /* Hangul Syllable */ + [0xd2ff, 0xd2ff], /* Hangul Syllable */ + [0xd300, 0xd300], /* Hangul Syllable */ + [0xd301, 0xd301], /* Hangul Syllable */ + [0xd302, 0xd302], /* Hangul Syllable */ + [0xd303, 0xd303], /* Hangul Syllable */ + [0xd304, 0xd304], /* Hangul Syllable */ + [0xd305, 0xd305], /* Hangul Syllable */ + [0xd306, 0xd306], /* Hangul Syllable */ + [0xd307, 0xd307], /* Hangul Syllable */ + [0xd308, 0xd308], /* Hangul Syllable */ + [0xd309, 0xd309], /* Hangul Syllable */ + [0xd30a, 0xd30a], /* Hangul Syllable */ + [0xd30b, 0xd30b], /* Hangul Syllable */ + [0xd30c, 0xd30c], /* Hangul Syllable */ + [0xd30d, 0xd30d], /* Hangul Syllable */ + [0xd30e, 0xd30e], /* Hangul Syllable */ + [0xd30f, 0xd30f], /* Hangul Syllable */ + [0xd310, 0xd310], /* Hangul Syllable */ + [0xd311, 0xd311], /* Hangul Syllable */ + [0xd312, 0xd312], /* Hangul Syllable */ + [0xd313, 0xd313], /* Hangul Syllable */ + [0xd314, 0xd314], /* Hangul Syllable */ + [0xd315, 0xd315], /* Hangul Syllable */ + [0xd316, 0xd316], /* Hangul Syllable */ + [0xd317, 0xd317], /* Hangul Syllable */ + [0xd318, 0xd318], /* Hangul Syllable */ + [0xd319, 0xd319], /* Hangul Syllable */ + [0xd31a, 0xd31a], /* Hangul Syllable */ + [0xd31b, 0xd31b], /* Hangul Syllable */ + [0xd31c, 0xd31c], /* Hangul Syllable */ + [0xd31d, 0xd31d], /* Hangul Syllable */ + [0xd31e, 0xd31e], /* Hangul Syllable */ + [0xd31f, 0xd31f], /* Hangul Syllable */ + [0xd320, 0xd320], /* Hangul Syllable */ + [0xd321, 0xd321], /* Hangul Syllable */ + [0xd322, 0xd322], /* Hangul Syllable */ + [0xd323, 0xd323], /* Hangul Syllable */ + [0xd324, 0xd324], /* Hangul Syllable */ + [0xd325, 0xd325], /* Hangul Syllable */ + [0xd326, 0xd326], /* Hangul Syllable */ + [0xd327, 0xd327], /* Hangul Syllable */ + [0xd328, 0xd328], /* Hangul Syllable */ + [0xd329, 0xd329], /* Hangul Syllable */ + [0xd32a, 0xd32a], /* Hangul Syllable */ + [0xd32b, 0xd32b], /* Hangul Syllable */ + [0xd32c, 0xd32c], /* Hangul Syllable */ + [0xd32d, 0xd32d], /* Hangul Syllable */ + [0xd32e, 0xd32e], /* Hangul Syllable */ + [0xd32f, 0xd32f], /* Hangul Syllable */ + [0xd330, 0xd330], /* Hangul Syllable */ + [0xd331, 0xd331], /* Hangul Syllable */ + [0xd332, 0xd332], /* Hangul Syllable */ + [0xd333, 0xd333], /* Hangul Syllable */ + [0xd334, 0xd334], /* Hangul Syllable */ + [0xd335, 0xd335], /* Hangul Syllable */ + [0xd336, 0xd336], /* Hangul Syllable */ + [0xd337, 0xd337], /* Hangul Syllable */ + [0xd338, 0xd338], /* Hangul Syllable */ + [0xd339, 0xd339], /* Hangul Syllable */ + [0xd33a, 0xd33a], /* Hangul Syllable */ + [0xd33b, 0xd33b], /* Hangul Syllable */ + [0xd33c, 0xd33c], /* Hangul Syllable */ + [0xd33d, 0xd33d], /* Hangul Syllable */ + [0xd33e, 0xd33e], /* Hangul Syllable */ + [0xd33f, 0xd33f], /* Hangul Syllable */ + [0xd340, 0xd340], /* Hangul Syllable */ + [0xd341, 0xd341], /* Hangul Syllable */ + [0xd342, 0xd342], /* Hangul Syllable */ + [0xd343, 0xd343], /* Hangul Syllable */ + [0xd344, 0xd344], /* Hangul Syllable */ + [0xd345, 0xd345], /* Hangul Syllable */ + [0xd346, 0xd346], /* Hangul Syllable */ + [0xd347, 0xd347], /* Hangul Syllable */ + [0xd348, 0xd348], /* Hangul Syllable */ + [0xd349, 0xd349], /* Hangul Syllable */ + [0xd34a, 0xd34a], /* Hangul Syllable */ + [0xd34b, 0xd34b], /* Hangul Syllable */ + [0xd34c, 0xd34c], /* Hangul Syllable */ + [0xd34d, 0xd34d], /* Hangul Syllable */ + [0xd34e, 0xd34e], /* Hangul Syllable */ + [0xd34f, 0xd34f], /* Hangul Syllable */ + [0xd350, 0xd350], /* Hangul Syllable */ + [0xd351, 0xd351], /* Hangul Syllable */ + [0xd352, 0xd352], /* Hangul Syllable */ + [0xd353, 0xd353], /* Hangul Syllable */ + [0xd354, 0xd354], /* Hangul Syllable */ + [0xd355, 0xd355], /* Hangul Syllable */ + [0xd356, 0xd356], /* Hangul Syllable */ + [0xd357, 0xd357], /* Hangul Syllable */ + [0xd358, 0xd358], /* Hangul Syllable */ + [0xd359, 0xd359], /* Hangul Syllable */ + [0xd35a, 0xd35a], /* Hangul Syllable */ + [0xd35b, 0xd35b], /* Hangul Syllable */ + [0xd35c, 0xd35c], /* Hangul Syllable */ + [0xd35d, 0xd35d], /* Hangul Syllable */ + [0xd35e, 0xd35e], /* Hangul Syllable */ + [0xd35f, 0xd35f], /* Hangul Syllable */ + [0xd360, 0xd360], /* Hangul Syllable */ + [0xd361, 0xd361], /* Hangul Syllable */ + [0xd362, 0xd362], /* Hangul Syllable */ + [0xd363, 0xd363], /* Hangul Syllable */ + [0xd364, 0xd364], /* Hangul Syllable */ + [0xd365, 0xd365], /* Hangul Syllable */ + [0xd366, 0xd366], /* Hangul Syllable */ + [0xd367, 0xd367], /* Hangul Syllable */ + [0xd368, 0xd368], /* Hangul Syllable */ + [0xd369, 0xd369], /* Hangul Syllable */ + [0xd36a, 0xd36a], /* Hangul Syllable */ + [0xd36b, 0xd36b], /* Hangul Syllable */ + [0xd36c, 0xd36c], /* Hangul Syllable */ + [0xd36d, 0xd36d], /* Hangul Syllable */ + [0xd36e, 0xd36e], /* Hangul Syllable */ + [0xd36f, 0xd36f], /* Hangul Syllable */ + [0xd370, 0xd370], /* Hangul Syllable */ + [0xd371, 0xd371], /* Hangul Syllable */ + [0xd372, 0xd372], /* Hangul Syllable */ + [0xd373, 0xd373], /* Hangul Syllable */ + [0xd374, 0xd374], /* Hangul Syllable */ + [0xd375, 0xd375], /* Hangul Syllable */ + [0xd376, 0xd376], /* Hangul Syllable */ + [0xd377, 0xd377], /* Hangul Syllable */ + [0xd378, 0xd378], /* Hangul Syllable */ + [0xd379, 0xd379], /* Hangul Syllable */ + [0xd37a, 0xd37a], /* Hangul Syllable */ + [0xd37b, 0xd37b], /* Hangul Syllable */ + [0xd37c, 0xd37c], /* Hangul Syllable */ + [0xd37d, 0xd37d], /* Hangul Syllable */ + [0xd37e, 0xd37e], /* Hangul Syllable */ + [0xd37f, 0xd37f], /* Hangul Syllable */ + [0xd380, 0xd380], /* Hangul Syllable */ + [0xd381, 0xd381], /* Hangul Syllable */ + [0xd382, 0xd382], /* Hangul Syllable */ + [0xd383, 0xd383], /* Hangul Syllable */ + [0xd384, 0xd384], /* Hangul Syllable */ + [0xd385, 0xd385], /* Hangul Syllable */ + [0xd386, 0xd386], /* Hangul Syllable */ + [0xd387, 0xd387], /* Hangul Syllable */ + [0xd388, 0xd388], /* Hangul Syllable */ + [0xd389, 0xd389], /* Hangul Syllable */ + [0xd38a, 0xd38a], /* Hangul Syllable */ + [0xd38b, 0xd38b], /* Hangul Syllable */ + [0xd38c, 0xd38c], /* Hangul Syllable */ + [0xd38d, 0xd38d], /* Hangul Syllable */ + [0xd38e, 0xd38e], /* Hangul Syllable */ + [0xd38f, 0xd38f], /* Hangul Syllable */ + [0xd390, 0xd390], /* Hangul Syllable */ + [0xd391, 0xd391], /* Hangul Syllable */ + [0xd392, 0xd392], /* Hangul Syllable */ + [0xd393, 0xd393], /* Hangul Syllable */ + [0xd394, 0xd394], /* Hangul Syllable */ + [0xd395, 0xd395], /* Hangul Syllable */ + [0xd396, 0xd396], /* Hangul Syllable */ + [0xd397, 0xd397], /* Hangul Syllable */ + [0xd398, 0xd398], /* Hangul Syllable */ + [0xd399, 0xd399], /* Hangul Syllable */ + [0xd39a, 0xd39a], /* Hangul Syllable */ + [0xd39b, 0xd39b], /* Hangul Syllable */ + [0xd39c, 0xd39c], /* Hangul Syllable */ + [0xd39d, 0xd39d], /* Hangul Syllable */ + [0xd39e, 0xd39e], /* Hangul Syllable */ + [0xd39f, 0xd39f], /* Hangul Syllable */ + [0xd3a0, 0xd3a0], /* Hangul Syllable */ + [0xd3a1, 0xd3a1], /* Hangul Syllable */ + [0xd3a2, 0xd3a2], /* Hangul Syllable */ + [0xd3a3, 0xd3a3], /* Hangul Syllable */ + [0xd3a4, 0xd3a4], /* Hangul Syllable */ + [0xd3a5, 0xd3a5], /* Hangul Syllable */ + [0xd3a6, 0xd3a6], /* Hangul Syllable */ + [0xd3a7, 0xd3a7], /* Hangul Syllable */ + [0xd3a8, 0xd3a8], /* Hangul Syllable */ + [0xd3a9, 0xd3a9], /* Hangul Syllable */ + [0xd3aa, 0xd3aa], /* Hangul Syllable */ + [0xd3ab, 0xd3ab], /* Hangul Syllable */ + [0xd3ac, 0xd3ac], /* Hangul Syllable */ + [0xd3ad, 0xd3ad], /* Hangul Syllable */ + [0xd3ae, 0xd3ae], /* Hangul Syllable */ + [0xd3af, 0xd3af], /* Hangul Syllable */ + [0xd3b0, 0xd3b0], /* Hangul Syllable */ + [0xd3b1, 0xd3b1], /* Hangul Syllable */ + [0xd3b2, 0xd3b2], /* Hangul Syllable */ + [0xd3b3, 0xd3b3], /* Hangul Syllable */ + [0xd3b4, 0xd3b4], /* Hangul Syllable */ + [0xd3b5, 0xd3b5], /* Hangul Syllable */ + [0xd3b6, 0xd3b6], /* Hangul Syllable */ + [0xd3b7, 0xd3b7], /* Hangul Syllable */ + [0xd3b8, 0xd3b8], /* Hangul Syllable */ + [0xd3b9, 0xd3b9], /* Hangul Syllable */ + [0xd3ba, 0xd3ba], /* Hangul Syllable */ + [0xd3bb, 0xd3bb], /* Hangul Syllable */ + [0xd3bc, 0xd3bc], /* Hangul Syllable */ + [0xd3bd, 0xd3bd], /* Hangul Syllable */ + [0xd3be, 0xd3be], /* Hangul Syllable */ + [0xd3bf, 0xd3bf], /* Hangul Syllable */ + [0xd3c0, 0xd3c0], /* Hangul Syllable */ + [0xd3c1, 0xd3c1], /* Hangul Syllable */ + [0xd3c2, 0xd3c2], /* Hangul Syllable */ + [0xd3c3, 0xd3c3], /* Hangul Syllable */ + [0xd3c4, 0xd3c4], /* Hangul Syllable */ + [0xd3c5, 0xd3c5], /* Hangul Syllable */ + [0xd3c6, 0xd3c6], /* Hangul Syllable */ + [0xd3c7, 0xd3c7], /* Hangul Syllable */ + [0xd3c8, 0xd3c8], /* Hangul Syllable */ + [0xd3c9, 0xd3c9], /* Hangul Syllable */ + [0xd3ca, 0xd3ca], /* Hangul Syllable */ + [0xd3cb, 0xd3cb], /* Hangul Syllable */ + [0xd3cc, 0xd3cc], /* Hangul Syllable */ + [0xd3cd, 0xd3cd], /* Hangul Syllable */ + [0xd3ce, 0xd3ce], /* Hangul Syllable */ + [0xd3cf, 0xd3cf], /* Hangul Syllable */ + [0xd3d0, 0xd3d0], /* Hangul Syllable */ + [0xd3d1, 0xd3d1], /* Hangul Syllable */ + [0xd3d2, 0xd3d2], /* Hangul Syllable */ + [0xd3d3, 0xd3d3], /* Hangul Syllable */ + [0xd3d4, 0xd3d4], /* Hangul Syllable */ + [0xd3d5, 0xd3d5], /* Hangul Syllable */ + [0xd3d6, 0xd3d6], /* Hangul Syllable */ + [0xd3d7, 0xd3d7], /* Hangul Syllable */ + [0xd3d8, 0xd3d8], /* Hangul Syllable */ + [0xd3d9, 0xd3d9], /* Hangul Syllable */ + [0xd3da, 0xd3da], /* Hangul Syllable */ + [0xd3db, 0xd3db], /* Hangul Syllable */ + [0xd3dc, 0xd3dc], /* Hangul Syllable */ + [0xd3dd, 0xd3dd], /* Hangul Syllable */ + [0xd3de, 0xd3de], /* Hangul Syllable */ + [0xd3df, 0xd3df], /* Hangul Syllable */ + [0xd3e0, 0xd3e0], /* Hangul Syllable */ + [0xd3e1, 0xd3e1], /* Hangul Syllable */ + [0xd3e2, 0xd3e2], /* Hangul Syllable */ + [0xd3e3, 0xd3e3], /* Hangul Syllable */ + [0xd3e4, 0xd3e4], /* Hangul Syllable */ + [0xd3e5, 0xd3e5], /* Hangul Syllable */ + [0xd3e6, 0xd3e6], /* Hangul Syllable */ + [0xd3e7, 0xd3e7], /* Hangul Syllable */ + [0xd3e8, 0xd3e8], /* Hangul Syllable */ + [0xd3e9, 0xd3e9], /* Hangul Syllable */ + [0xd3ea, 0xd3ea], /* Hangul Syllable */ + [0xd3eb, 0xd3eb], /* Hangul Syllable */ + [0xd3ec, 0xd3ec], /* Hangul Syllable */ + [0xd3ed, 0xd3ed], /* Hangul Syllable */ + [0xd3ee, 0xd3ee], /* Hangul Syllable */ + [0xd3ef, 0xd3ef], /* Hangul Syllable */ + [0xd3f0, 0xd3f0], /* Hangul Syllable */ + [0xd3f1, 0xd3f1], /* Hangul Syllable */ + [0xd3f2, 0xd3f2], /* Hangul Syllable */ + [0xd3f3, 0xd3f3], /* Hangul Syllable */ + [0xd3f4, 0xd3f4], /* Hangul Syllable */ + [0xd3f5, 0xd3f5], /* Hangul Syllable */ + [0xd3f6, 0xd3f6], /* Hangul Syllable */ + [0xd3f7, 0xd3f7], /* Hangul Syllable */ + [0xd3f8, 0xd3f8], /* Hangul Syllable */ + [0xd3f9, 0xd3f9], /* Hangul Syllable */ + [0xd3fa, 0xd3fa], /* Hangul Syllable */ + [0xd3fb, 0xd3fb], /* Hangul Syllable */ + [0xd3fc, 0xd3fc], /* Hangul Syllable */ + [0xd3fd, 0xd3fd], /* Hangul Syllable */ + [0xd3fe, 0xd3fe], /* Hangul Syllable */ + [0xd3ff, 0xd3ff], /* Hangul Syllable */ + [0xd400, 0xd400], /* Hangul Syllable */ + [0xd401, 0xd401], /* Hangul Syllable */ + [0xd402, 0xd402], /* Hangul Syllable */ + [0xd403, 0xd403], /* Hangul Syllable */ + [0xd404, 0xd404], /* Hangul Syllable */ + [0xd405, 0xd405], /* Hangul Syllable */ + [0xd406, 0xd406], /* Hangul Syllable */ + [0xd407, 0xd407], /* Hangul Syllable */ + [0xd408, 0xd408], /* Hangul Syllable */ + [0xd409, 0xd409], /* Hangul Syllable */ + [0xd40a, 0xd40a], /* Hangul Syllable */ + [0xd40b, 0xd40b], /* Hangul Syllable */ + [0xd40c, 0xd40c], /* Hangul Syllable */ + [0xd40d, 0xd40d], /* Hangul Syllable */ + [0xd40e, 0xd40e], /* Hangul Syllable */ + [0xd40f, 0xd40f], /* Hangul Syllable */ + [0xd410, 0xd410], /* Hangul Syllable */ + [0xd411, 0xd411], /* Hangul Syllable */ + [0xd412, 0xd412], /* Hangul Syllable */ + [0xd413, 0xd413], /* Hangul Syllable */ + [0xd414, 0xd414], /* Hangul Syllable */ + [0xd415, 0xd415], /* Hangul Syllable */ + [0xd416, 0xd416], /* Hangul Syllable */ + [0xd417, 0xd417], /* Hangul Syllable */ + [0xd418, 0xd418], /* Hangul Syllable */ + [0xd419, 0xd419], /* Hangul Syllable */ + [0xd41a, 0xd41a], /* Hangul Syllable */ + [0xd41b, 0xd41b], /* Hangul Syllable */ + [0xd41c, 0xd41c], /* Hangul Syllable */ + [0xd41d, 0xd41d], /* Hangul Syllable */ + [0xd41e, 0xd41e], /* Hangul Syllable */ + [0xd41f, 0xd41f], /* Hangul Syllable */ + [0xd420, 0xd420], /* Hangul Syllable */ + [0xd421, 0xd421], /* Hangul Syllable */ + [0xd422, 0xd422], /* Hangul Syllable */ + [0xd423, 0xd423], /* Hangul Syllable */ + [0xd424, 0xd424], /* Hangul Syllable */ + [0xd425, 0xd425], /* Hangul Syllable */ + [0xd426, 0xd426], /* Hangul Syllable */ + [0xd427, 0xd427], /* Hangul Syllable */ + [0xd428, 0xd428], /* Hangul Syllable */ + [0xd429, 0xd429], /* Hangul Syllable */ + [0xd42a, 0xd42a], /* Hangul Syllable */ + [0xd42b, 0xd42b], /* Hangul Syllable */ + [0xd42c, 0xd42c], /* Hangul Syllable */ + [0xd42d, 0xd42d], /* Hangul Syllable */ + [0xd42e, 0xd42e], /* Hangul Syllable */ + [0xd42f, 0xd42f], /* Hangul Syllable */ + [0xd430, 0xd430], /* Hangul Syllable */ + [0xd431, 0xd431], /* Hangul Syllable */ + [0xd432, 0xd432], /* Hangul Syllable */ + [0xd433, 0xd433], /* Hangul Syllable */ + [0xd434, 0xd434], /* Hangul Syllable */ + [0xd435, 0xd435], /* Hangul Syllable */ + [0xd436, 0xd436], /* Hangul Syllable */ + [0xd437, 0xd437], /* Hangul Syllable */ + [0xd438, 0xd438], /* Hangul Syllable */ + [0xd439, 0xd439], /* Hangul Syllable */ + [0xd43a, 0xd43a], /* Hangul Syllable */ + [0xd43b, 0xd43b], /* Hangul Syllable */ + [0xd43c, 0xd43c], /* Hangul Syllable */ + [0xd43d, 0xd43d], /* Hangul Syllable */ + [0xd43e, 0xd43e], /* Hangul Syllable */ + [0xd43f, 0xd43f], /* Hangul Syllable */ + [0xd440, 0xd440], /* Hangul Syllable */ + [0xd441, 0xd441], /* Hangul Syllable */ + [0xd442, 0xd442], /* Hangul Syllable */ + [0xd443, 0xd443], /* Hangul Syllable */ + [0xd444, 0xd444], /* Hangul Syllable */ + [0xd445, 0xd445], /* Hangul Syllable */ + [0xd446, 0xd446], /* Hangul Syllable */ + [0xd447, 0xd447], /* Hangul Syllable */ + [0xd448, 0xd448], /* Hangul Syllable */ + [0xd449, 0xd449], /* Hangul Syllable */ + [0xd44a, 0xd44a], /* Hangul Syllable */ + [0xd44b, 0xd44b], /* Hangul Syllable */ + [0xd44c, 0xd44c], /* Hangul Syllable */ + [0xd44d, 0xd44d], /* Hangul Syllable */ + [0xd44e, 0xd44e], /* Hangul Syllable */ + [0xd44f, 0xd44f], /* Hangul Syllable */ + [0xd450, 0xd450], /* Hangul Syllable */ + [0xd451, 0xd451], /* Hangul Syllable */ + [0xd452, 0xd452], /* Hangul Syllable */ + [0xd453, 0xd453], /* Hangul Syllable */ + [0xd454, 0xd454], /* Hangul Syllable */ + [0xd455, 0xd455], /* Hangul Syllable */ + [0xd456, 0xd456], /* Hangul Syllable */ + [0xd457, 0xd457], /* Hangul Syllable */ + [0xd458, 0xd458], /* Hangul Syllable */ + [0xd459, 0xd459], /* Hangul Syllable */ + [0xd45a, 0xd45a], /* Hangul Syllable */ + [0xd45b, 0xd45b], /* Hangul Syllable */ + [0xd45c, 0xd45c], /* Hangul Syllable */ + [0xd45d, 0xd45d], /* Hangul Syllable */ + [0xd45e, 0xd45e], /* Hangul Syllable */ + [0xd45f, 0xd45f], /* Hangul Syllable */ + [0xd460, 0xd460], /* Hangul Syllable */ + [0xd461, 0xd461], /* Hangul Syllable */ + [0xd462, 0xd462], /* Hangul Syllable */ + [0xd463, 0xd463], /* Hangul Syllable */ + [0xd464, 0xd464], /* Hangul Syllable */ + [0xd465, 0xd465], /* Hangul Syllable */ + [0xd466, 0xd466], /* Hangul Syllable */ + [0xd467, 0xd467], /* Hangul Syllable */ + [0xd468, 0xd468], /* Hangul Syllable */ + [0xd469, 0xd469], /* Hangul Syllable */ + [0xd46a, 0xd46a], /* Hangul Syllable */ + [0xd46b, 0xd46b], /* Hangul Syllable */ + [0xd46c, 0xd46c], /* Hangul Syllable */ + [0xd46d, 0xd46d], /* Hangul Syllable */ + [0xd46e, 0xd46e], /* Hangul Syllable */ + [0xd46f, 0xd46f], /* Hangul Syllable */ + [0xd470, 0xd470], /* Hangul Syllable */ + [0xd471, 0xd471], /* Hangul Syllable */ + [0xd472, 0xd472], /* Hangul Syllable */ + [0xd473, 0xd473], /* Hangul Syllable */ + [0xd474, 0xd474], /* Hangul Syllable */ + [0xd475, 0xd475], /* Hangul Syllable */ + [0xd476, 0xd476], /* Hangul Syllable */ + [0xd477, 0xd477], /* Hangul Syllable */ + [0xd478, 0xd478], /* Hangul Syllable */ + [0xd479, 0xd479], /* Hangul Syllable */ + [0xd47a, 0xd47a], /* Hangul Syllable */ + [0xd47b, 0xd47b], /* Hangul Syllable */ + [0xd47c, 0xd47c], /* Hangul Syllable */ + [0xd47d, 0xd47d], /* Hangul Syllable */ + [0xd47e, 0xd47e], /* Hangul Syllable */ + [0xd47f, 0xd47f], /* Hangul Syllable */ + [0xd480, 0xd480], /* Hangul Syllable */ + [0xd481, 0xd481], /* Hangul Syllable */ + [0xd482, 0xd482], /* Hangul Syllable */ + [0xd483, 0xd483], /* Hangul Syllable */ + [0xd484, 0xd484], /* Hangul Syllable */ + [0xd485, 0xd485], /* Hangul Syllable */ + [0xd486, 0xd486], /* Hangul Syllable */ + [0xd487, 0xd487], /* Hangul Syllable */ + [0xd488, 0xd488], /* Hangul Syllable */ + [0xd489, 0xd489], /* Hangul Syllable */ + [0xd48a, 0xd48a], /* Hangul Syllable */ + [0xd48b, 0xd48b], /* Hangul Syllable */ + [0xd48c, 0xd48c], /* Hangul Syllable */ + [0xd48d, 0xd48d], /* Hangul Syllable */ + [0xd48e, 0xd48e], /* Hangul Syllable */ + [0xd48f, 0xd48f], /* Hangul Syllable */ + [0xd490, 0xd490], /* Hangul Syllable */ + [0xd491, 0xd491], /* Hangul Syllable */ + [0xd492, 0xd492], /* Hangul Syllable */ + [0xd493, 0xd493], /* Hangul Syllable */ + [0xd494, 0xd494], /* Hangul Syllable */ + [0xd495, 0xd495], /* Hangul Syllable */ + [0xd496, 0xd496], /* Hangul Syllable */ + [0xd497, 0xd497], /* Hangul Syllable */ + [0xd498, 0xd498], /* Hangul Syllable */ + [0xd499, 0xd499], /* Hangul Syllable */ + [0xd49a, 0xd49a], /* Hangul Syllable */ + [0xd49b, 0xd49b], /* Hangul Syllable */ + [0xd49c, 0xd49c], /* Hangul Syllable */ + [0xd49d, 0xd49d], /* Hangul Syllable */ + [0xd49e, 0xd49e], /* Hangul Syllable */ + [0xd49f, 0xd49f], /* Hangul Syllable */ + [0xd4a0, 0xd4a0], /* Hangul Syllable */ + [0xd4a1, 0xd4a1], /* Hangul Syllable */ + [0xd4a2, 0xd4a2], /* Hangul Syllable */ + [0xd4a3, 0xd4a3], /* Hangul Syllable */ + [0xd4a4, 0xd4a4], /* Hangul Syllable */ + [0xd4a5, 0xd4a5], /* Hangul Syllable */ + [0xd4a6, 0xd4a6], /* Hangul Syllable */ + [0xd4a7, 0xd4a7], /* Hangul Syllable */ + [0xd4a8, 0xd4a8], /* Hangul Syllable */ + [0xd4a9, 0xd4a9], /* Hangul Syllable */ + [0xd4aa, 0xd4aa], /* Hangul Syllable */ + [0xd4ab, 0xd4ab], /* Hangul Syllable */ + [0xd4ac, 0xd4ac], /* Hangul Syllable */ + [0xd4ad, 0xd4ad], /* Hangul Syllable */ + [0xd4ae, 0xd4ae], /* Hangul Syllable */ + [0xd4af, 0xd4af], /* Hangul Syllable */ + [0xd4b0, 0xd4b0], /* Hangul Syllable */ + [0xd4b1, 0xd4b1], /* Hangul Syllable */ + [0xd4b2, 0xd4b2], /* Hangul Syllable */ + [0xd4b3, 0xd4b3], /* Hangul Syllable */ + [0xd4b4, 0xd4b4], /* Hangul Syllable */ + [0xd4b5, 0xd4b5], /* Hangul Syllable */ + [0xd4b6, 0xd4b6], /* Hangul Syllable */ + [0xd4b7, 0xd4b7], /* Hangul Syllable */ + [0xd4b8, 0xd4b8], /* Hangul Syllable */ + [0xd4b9, 0xd4b9], /* Hangul Syllable */ + [0xd4ba, 0xd4ba], /* Hangul Syllable */ + [0xd4bb, 0xd4bb], /* Hangul Syllable */ + [0xd4bc, 0xd4bc], /* Hangul Syllable */ + [0xd4bd, 0xd4bd], /* Hangul Syllable */ + [0xd4be, 0xd4be], /* Hangul Syllable */ + [0xd4bf, 0xd4bf], /* Hangul Syllable */ + [0xd4c0, 0xd4c0], /* Hangul Syllable */ + [0xd4c1, 0xd4c1], /* Hangul Syllable */ + [0xd4c2, 0xd4c2], /* Hangul Syllable */ + [0xd4c3, 0xd4c3], /* Hangul Syllable */ + [0xd4c4, 0xd4c4], /* Hangul Syllable */ + [0xd4c5, 0xd4c5], /* Hangul Syllable */ + [0xd4c6, 0xd4c6], /* Hangul Syllable */ + [0xd4c7, 0xd4c7], /* Hangul Syllable */ + [0xd4c8, 0xd4c8], /* Hangul Syllable */ + [0xd4c9, 0xd4c9], /* Hangul Syllable */ + [0xd4ca, 0xd4ca], /* Hangul Syllable */ + [0xd4cb, 0xd4cb], /* Hangul Syllable */ + [0xd4cc, 0xd4cc], /* Hangul Syllable */ + [0xd4cd, 0xd4cd], /* Hangul Syllable */ + [0xd4ce, 0xd4ce], /* Hangul Syllable */ + [0xd4cf, 0xd4cf], /* Hangul Syllable */ + [0xd4d0, 0xd4d0], /* Hangul Syllable */ + [0xd4d1, 0xd4d1], /* Hangul Syllable */ + [0xd4d2, 0xd4d2], /* Hangul Syllable */ + [0xd4d3, 0xd4d3], /* Hangul Syllable */ + [0xd4d4, 0xd4d4], /* Hangul Syllable */ + [0xd4d5, 0xd4d5], /* Hangul Syllable */ + [0xd4d6, 0xd4d6], /* Hangul Syllable */ + [0xd4d7, 0xd4d7], /* Hangul Syllable */ + [0xd4d8, 0xd4d8], /* Hangul Syllable */ + [0xd4d9, 0xd4d9], /* Hangul Syllable */ + [0xd4da, 0xd4da], /* Hangul Syllable */ + [0xd4db, 0xd4db], /* Hangul Syllable */ + [0xd4dc, 0xd4dc], /* Hangul Syllable */ + [0xd4dd, 0xd4dd], /* Hangul Syllable */ + [0xd4de, 0xd4de], /* Hangul Syllable */ + [0xd4df, 0xd4df], /* Hangul Syllable */ + [0xd4e0, 0xd4e0], /* Hangul Syllable */ + [0xd4e1, 0xd4e1], /* Hangul Syllable */ + [0xd4e2, 0xd4e2], /* Hangul Syllable */ + [0xd4e3, 0xd4e3], /* Hangul Syllable */ + [0xd4e4, 0xd4e4], /* Hangul Syllable */ + [0xd4e5, 0xd4e5], /* Hangul Syllable */ + [0xd4e6, 0xd4e6], /* Hangul Syllable */ + [0xd4e7, 0xd4e7], /* Hangul Syllable */ + [0xd4e8, 0xd4e8], /* Hangul Syllable */ + [0xd4e9, 0xd4e9], /* Hangul Syllable */ + [0xd4ea, 0xd4ea], /* Hangul Syllable */ + [0xd4eb, 0xd4eb], /* Hangul Syllable */ + [0xd4ec, 0xd4ec], /* Hangul Syllable */ + [0xd4ed, 0xd4ed], /* Hangul Syllable */ + [0xd4ee, 0xd4ee], /* Hangul Syllable */ + [0xd4ef, 0xd4ef], /* Hangul Syllable */ + [0xd4f0, 0xd4f0], /* Hangul Syllable */ + [0xd4f1, 0xd4f1], /* Hangul Syllable */ + [0xd4f2, 0xd4f2], /* Hangul Syllable */ + [0xd4f3, 0xd4f3], /* Hangul Syllable */ + [0xd4f4, 0xd4f4], /* Hangul Syllable */ + [0xd4f5, 0xd4f5], /* Hangul Syllable */ + [0xd4f6, 0xd4f6], /* Hangul Syllable */ + [0xd4f7, 0xd4f7], /* Hangul Syllable */ + [0xd4f8, 0xd4f8], /* Hangul Syllable */ + [0xd4f9, 0xd4f9], /* Hangul Syllable */ + [0xd4fa, 0xd4fa], /* Hangul Syllable */ + [0xd4fb, 0xd4fb], /* Hangul Syllable */ + [0xd4fc, 0xd4fc], /* Hangul Syllable */ + [0xd4fd, 0xd4fd], /* Hangul Syllable */ + [0xd4fe, 0xd4fe], /* Hangul Syllable */ + [0xd4ff, 0xd4ff], /* Hangul Syllable */ + [0xd500, 0xd500], /* Hangul Syllable */ + [0xd501, 0xd501], /* Hangul Syllable */ + [0xd502, 0xd502], /* Hangul Syllable */ + [0xd503, 0xd503], /* Hangul Syllable */ + [0xd504, 0xd504], /* Hangul Syllable */ + [0xd505, 0xd505], /* Hangul Syllable */ + [0xd506, 0xd506], /* Hangul Syllable */ + [0xd507, 0xd507], /* Hangul Syllable */ + [0xd508, 0xd508], /* Hangul Syllable */ + [0xd509, 0xd509], /* Hangul Syllable */ + [0xd50a, 0xd50a], /* Hangul Syllable */ + [0xd50b, 0xd50b], /* Hangul Syllable */ + [0xd50c, 0xd50c], /* Hangul Syllable */ + [0xd50d, 0xd50d], /* Hangul Syllable */ + [0xd50e, 0xd50e], /* Hangul Syllable */ + [0xd50f, 0xd50f], /* Hangul Syllable */ + [0xd510, 0xd510], /* Hangul Syllable */ + [0xd511, 0xd511], /* Hangul Syllable */ + [0xd512, 0xd512], /* Hangul Syllable */ + [0xd513, 0xd513], /* Hangul Syllable */ + [0xd514, 0xd514], /* Hangul Syllable */ + [0xd515, 0xd515], /* Hangul Syllable */ + [0xd516, 0xd516], /* Hangul Syllable */ + [0xd517, 0xd517], /* Hangul Syllable */ + [0xd518, 0xd518], /* Hangul Syllable */ + [0xd519, 0xd519], /* Hangul Syllable */ + [0xd51a, 0xd51a], /* Hangul Syllable */ + [0xd51b, 0xd51b], /* Hangul Syllable */ + [0xd51c, 0xd51c], /* Hangul Syllable */ + [0xd51d, 0xd51d], /* Hangul Syllable */ + [0xd51e, 0xd51e], /* Hangul Syllable */ + [0xd51f, 0xd51f], /* Hangul Syllable */ + [0xd520, 0xd520], /* Hangul Syllable */ + [0xd521, 0xd521], /* Hangul Syllable */ + [0xd522, 0xd522], /* Hangul Syllable */ + [0xd523, 0xd523], /* Hangul Syllable */ + [0xd524, 0xd524], /* Hangul Syllable */ + [0xd525, 0xd525], /* Hangul Syllable */ + [0xd526, 0xd526], /* Hangul Syllable */ + [0xd527, 0xd527], /* Hangul Syllable */ + [0xd528, 0xd528], /* Hangul Syllable */ + [0xd529, 0xd529], /* Hangul Syllable */ + [0xd52a, 0xd52a], /* Hangul Syllable */ + [0xd52b, 0xd52b], /* Hangul Syllable */ + [0xd52c, 0xd52c], /* Hangul Syllable */ + [0xd52d, 0xd52d], /* Hangul Syllable */ + [0xd52e, 0xd52e], /* Hangul Syllable */ + [0xd52f, 0xd52f], /* Hangul Syllable */ + [0xd530, 0xd530], /* Hangul Syllable */ + [0xd531, 0xd531], /* Hangul Syllable */ + [0xd532, 0xd532], /* Hangul Syllable */ + [0xd533, 0xd533], /* Hangul Syllable */ + [0xd534, 0xd534], /* Hangul Syllable */ + [0xd535, 0xd535], /* Hangul Syllable */ + [0xd536, 0xd536], /* Hangul Syllable */ + [0xd537, 0xd537], /* Hangul Syllable */ + [0xd538, 0xd538], /* Hangul Syllable */ + [0xd539, 0xd539], /* Hangul Syllable */ + [0xd53a, 0xd53a], /* Hangul Syllable */ + [0xd53b, 0xd53b], /* Hangul Syllable */ + [0xd53c, 0xd53c], /* Hangul Syllable */ + [0xd53d, 0xd53d], /* Hangul Syllable */ + [0xd53e, 0xd53e], /* Hangul Syllable */ + [0xd53f, 0xd53f], /* Hangul Syllable */ + [0xd540, 0xd540], /* Hangul Syllable */ + [0xd541, 0xd541], /* Hangul Syllable */ + [0xd542, 0xd542], /* Hangul Syllable */ + [0xd543, 0xd543], /* Hangul Syllable */ + [0xd544, 0xd544], /* Hangul Syllable */ + [0xd545, 0xd545], /* Hangul Syllable */ + [0xd546, 0xd546], /* Hangul Syllable */ + [0xd547, 0xd547], /* Hangul Syllable */ + [0xd548, 0xd548], /* Hangul Syllable */ + [0xd549, 0xd549], /* Hangul Syllable */ + [0xd54a, 0xd54a], /* Hangul Syllable */ + [0xd54b, 0xd54b], /* Hangul Syllable */ + [0xd54c, 0xd54c], /* Hangul Syllable */ + [0xd54d, 0xd54d], /* Hangul Syllable */ + [0xd54e, 0xd54e], /* Hangul Syllable */ + [0xd54f, 0xd54f], /* Hangul Syllable */ + [0xd550, 0xd550], /* Hangul Syllable */ + [0xd551, 0xd551], /* Hangul Syllable */ + [0xd552, 0xd552], /* Hangul Syllable */ + [0xd553, 0xd553], /* Hangul Syllable */ + [0xd554, 0xd554], /* Hangul Syllable */ + [0xd555, 0xd555], /* Hangul Syllable */ + [0xd556, 0xd556], /* Hangul Syllable */ + [0xd557, 0xd557], /* Hangul Syllable */ + [0xd558, 0xd558], /* Hangul Syllable */ + [0xd559, 0xd559], /* Hangul Syllable */ + [0xd55a, 0xd55a], /* Hangul Syllable */ + [0xd55b, 0xd55b], /* Hangul Syllable */ + [0xd55c, 0xd55c], /* Hangul Syllable */ + [0xd55d, 0xd55d], /* Hangul Syllable */ + [0xd55e, 0xd55e], /* Hangul Syllable */ + [0xd55f, 0xd55f], /* Hangul Syllable */ + [0xd560, 0xd560], /* Hangul Syllable */ + [0xd561, 0xd561], /* Hangul Syllable */ + [0xd562, 0xd562], /* Hangul Syllable */ + [0xd563, 0xd563], /* Hangul Syllable */ + [0xd564, 0xd564], /* Hangul Syllable */ + [0xd565, 0xd565], /* Hangul Syllable */ + [0xd566, 0xd566], /* Hangul Syllable */ + [0xd567, 0xd567], /* Hangul Syllable */ + [0xd568, 0xd568], /* Hangul Syllable */ + [0xd569, 0xd569], /* Hangul Syllable */ + [0xd56a, 0xd56a], /* Hangul Syllable */ + [0xd56b, 0xd56b], /* Hangul Syllable */ + [0xd56c, 0xd56c], /* Hangul Syllable */ + [0xd56d, 0xd56d], /* Hangul Syllable */ + [0xd56e, 0xd56e], /* Hangul Syllable */ + [0xd56f, 0xd56f], /* Hangul Syllable */ + [0xd570, 0xd570], /* Hangul Syllable */ + [0xd571, 0xd571], /* Hangul Syllable */ + [0xd572, 0xd572], /* Hangul Syllable */ + [0xd573, 0xd573], /* Hangul Syllable */ + [0xd574, 0xd574], /* Hangul Syllable */ + [0xd575, 0xd575], /* Hangul Syllable */ + [0xd576, 0xd576], /* Hangul Syllable */ + [0xd577, 0xd577], /* Hangul Syllable */ + [0xd578, 0xd578], /* Hangul Syllable */ + [0xd579, 0xd579], /* Hangul Syllable */ + [0xd57a, 0xd57a], /* Hangul Syllable */ + [0xd57b, 0xd57b], /* Hangul Syllable */ + [0xd57c, 0xd57c], /* Hangul Syllable */ + [0xd57d, 0xd57d], /* Hangul Syllable */ + [0xd57e, 0xd57e], /* Hangul Syllable */ + [0xd57f, 0xd57f], /* Hangul Syllable */ + [0xd580, 0xd580], /* Hangul Syllable */ + [0xd581, 0xd581], /* Hangul Syllable */ + [0xd582, 0xd582], /* Hangul Syllable */ + [0xd583, 0xd583], /* Hangul Syllable */ + [0xd584, 0xd584], /* Hangul Syllable */ + [0xd585, 0xd585], /* Hangul Syllable */ + [0xd586, 0xd586], /* Hangul Syllable */ + [0xd587, 0xd587], /* Hangul Syllable */ + [0xd588, 0xd588], /* Hangul Syllable */ + [0xd589, 0xd589], /* Hangul Syllable */ + [0xd58a, 0xd58a], /* Hangul Syllable */ + [0xd58b, 0xd58b], /* Hangul Syllable */ + [0xd58c, 0xd58c], /* Hangul Syllable */ + [0xd58d, 0xd58d], /* Hangul Syllable */ + [0xd58e, 0xd58e], /* Hangul Syllable */ + [0xd58f, 0xd58f], /* Hangul Syllable */ + [0xd590, 0xd590], /* Hangul Syllable */ + [0xd591, 0xd591], /* Hangul Syllable */ + [0xd592, 0xd592], /* Hangul Syllable */ + [0xd593, 0xd593], /* Hangul Syllable */ + [0xd594, 0xd594], /* Hangul Syllable */ + [0xd595, 0xd595], /* Hangul Syllable */ + [0xd596, 0xd596], /* Hangul Syllable */ + [0xd597, 0xd597], /* Hangul Syllable */ + [0xd598, 0xd598], /* Hangul Syllable */ + [0xd599, 0xd599], /* Hangul Syllable */ + [0xd59a, 0xd59a], /* Hangul Syllable */ + [0xd59b, 0xd59b], /* Hangul Syllable */ + [0xd59c, 0xd59c], /* Hangul Syllable */ + [0xd59d, 0xd59d], /* Hangul Syllable */ + [0xd59e, 0xd59e], /* Hangul Syllable */ + [0xd59f, 0xd59f], /* Hangul Syllable */ + [0xd5a0, 0xd5a0], /* Hangul Syllable */ + [0xd5a1, 0xd5a1], /* Hangul Syllable */ + [0xd5a2, 0xd5a2], /* Hangul Syllable */ + [0xd5a3, 0xd5a3], /* Hangul Syllable */ + [0xd5a4, 0xd5a4], /* Hangul Syllable */ + [0xd5a5, 0xd5a5], /* Hangul Syllable */ + [0xd5a6, 0xd5a6], /* Hangul Syllable */ + [0xd5a7, 0xd5a7], /* Hangul Syllable */ + [0xd5a8, 0xd5a8], /* Hangul Syllable */ + [0xd5a9, 0xd5a9], /* Hangul Syllable */ + [0xd5aa, 0xd5aa], /* Hangul Syllable */ + [0xd5ab, 0xd5ab], /* Hangul Syllable */ + [0xd5ac, 0xd5ac], /* Hangul Syllable */ + [0xd5ad, 0xd5ad], /* Hangul Syllable */ + [0xd5ae, 0xd5ae], /* Hangul Syllable */ + [0xd5af, 0xd5af], /* Hangul Syllable */ + [0xd5b0, 0xd5b0], /* Hangul Syllable */ + [0xd5b1, 0xd5b1], /* Hangul Syllable */ + [0xd5b2, 0xd5b2], /* Hangul Syllable */ + [0xd5b3, 0xd5b3], /* Hangul Syllable */ + [0xd5b4, 0xd5b4], /* Hangul Syllable */ + [0xd5b5, 0xd5b5], /* Hangul Syllable */ + [0xd5b6, 0xd5b6], /* Hangul Syllable */ + [0xd5b7, 0xd5b7], /* Hangul Syllable */ + [0xd5b8, 0xd5b8], /* Hangul Syllable */ + [0xd5b9, 0xd5b9], /* Hangul Syllable */ + [0xd5ba, 0xd5ba], /* Hangul Syllable */ + [0xd5bb, 0xd5bb], /* Hangul Syllable */ + [0xd5bc, 0xd5bc], /* Hangul Syllable */ + [0xd5bd, 0xd5bd], /* Hangul Syllable */ + [0xd5be, 0xd5be], /* Hangul Syllable */ + [0xd5bf, 0xd5bf], /* Hangul Syllable */ + [0xd5c0, 0xd5c0], /* Hangul Syllable */ + [0xd5c1, 0xd5c1], /* Hangul Syllable */ + [0xd5c2, 0xd5c2], /* Hangul Syllable */ + [0xd5c3, 0xd5c3], /* Hangul Syllable */ + [0xd5c4, 0xd5c4], /* Hangul Syllable */ + [0xd5c5, 0xd5c5], /* Hangul Syllable */ + [0xd5c6, 0xd5c6], /* Hangul Syllable */ + [0xd5c7, 0xd5c7], /* Hangul Syllable */ + [0xd5c8, 0xd5c8], /* Hangul Syllable */ + [0xd5c9, 0xd5c9], /* Hangul Syllable */ + [0xd5ca, 0xd5ca], /* Hangul Syllable */ + [0xd5cb, 0xd5cb], /* Hangul Syllable */ + [0xd5cc, 0xd5cc], /* Hangul Syllable */ + [0xd5cd, 0xd5cd], /* Hangul Syllable */ + [0xd5ce, 0xd5ce], /* Hangul Syllable */ + [0xd5cf, 0xd5cf], /* Hangul Syllable */ + [0xd5d0, 0xd5d0], /* Hangul Syllable */ + [0xd5d1, 0xd5d1], /* Hangul Syllable */ + [0xd5d2, 0xd5d2], /* Hangul Syllable */ + [0xd5d3, 0xd5d3], /* Hangul Syllable */ + [0xd5d4, 0xd5d4], /* Hangul Syllable */ + [0xd5d5, 0xd5d5], /* Hangul Syllable */ + [0xd5d6, 0xd5d6], /* Hangul Syllable */ + [0xd5d7, 0xd5d7], /* Hangul Syllable */ + [0xd5d8, 0xd5d8], /* Hangul Syllable */ + [0xd5d9, 0xd5d9], /* Hangul Syllable */ + [0xd5da, 0xd5da], /* Hangul Syllable */ + [0xd5db, 0xd5db], /* Hangul Syllable */ + [0xd5dc, 0xd5dc], /* Hangul Syllable */ + [0xd5dd, 0xd5dd], /* Hangul Syllable */ + [0xd5de, 0xd5de], /* Hangul Syllable */ + [0xd5df, 0xd5df], /* Hangul Syllable */ + [0xd5e0, 0xd5e0], /* Hangul Syllable */ + [0xd5e1, 0xd5e1], /* Hangul Syllable */ + [0xd5e2, 0xd5e2], /* Hangul Syllable */ + [0xd5e3, 0xd5e3], /* Hangul Syllable */ + [0xd5e4, 0xd5e4], /* Hangul Syllable */ + [0xd5e5, 0xd5e5], /* Hangul Syllable */ + [0xd5e6, 0xd5e6], /* Hangul Syllable */ + [0xd5e7, 0xd5e7], /* Hangul Syllable */ + [0xd5e8, 0xd5e8], /* Hangul Syllable */ + [0xd5e9, 0xd5e9], /* Hangul Syllable */ + [0xd5ea, 0xd5ea], /* Hangul Syllable */ + [0xd5eb, 0xd5eb], /* Hangul Syllable */ + [0xd5ec, 0xd5ec], /* Hangul Syllable */ + [0xd5ed, 0xd5ed], /* Hangul Syllable */ + [0xd5ee, 0xd5ee], /* Hangul Syllable */ + [0xd5ef, 0xd5ef], /* Hangul Syllable */ + [0xd5f0, 0xd5f0], /* Hangul Syllable */ + [0xd5f1, 0xd5f1], /* Hangul Syllable */ + [0xd5f2, 0xd5f2], /* Hangul Syllable */ + [0xd5f3, 0xd5f3], /* Hangul Syllable */ + [0xd5f4, 0xd5f4], /* Hangul Syllable */ + [0xd5f5, 0xd5f5], /* Hangul Syllable */ + [0xd5f6, 0xd5f6], /* Hangul Syllable */ + [0xd5f7, 0xd5f7], /* Hangul Syllable */ + [0xd5f8, 0xd5f8], /* Hangul Syllable */ + [0xd5f9, 0xd5f9], /* Hangul Syllable */ + [0xd5fa, 0xd5fa], /* Hangul Syllable */ + [0xd5fb, 0xd5fb], /* Hangul Syllable */ + [0xd5fc, 0xd5fc], /* Hangul Syllable */ + [0xd5fd, 0xd5fd], /* Hangul Syllable */ + [0xd5fe, 0xd5fe], /* Hangul Syllable */ + [0xd5ff, 0xd5ff], /* Hangul Syllable */ + [0xd600, 0xd600], /* Hangul Syllable */ + [0xd601, 0xd601], /* Hangul Syllable */ + [0xd602, 0xd602], /* Hangul Syllable */ + [0xd603, 0xd603], /* Hangul Syllable */ + [0xd604, 0xd604], /* Hangul Syllable */ + [0xd605, 0xd605], /* Hangul Syllable */ + [0xd606, 0xd606], /* Hangul Syllable */ + [0xd607, 0xd607], /* Hangul Syllable */ + [0xd608, 0xd608], /* Hangul Syllable */ + [0xd609, 0xd609], /* Hangul Syllable */ + [0xd60a, 0xd60a], /* Hangul Syllable */ + [0xd60b, 0xd60b], /* Hangul Syllable */ + [0xd60c, 0xd60c], /* Hangul Syllable */ + [0xd60d, 0xd60d], /* Hangul Syllable */ + [0xd60e, 0xd60e], /* Hangul Syllable */ + [0xd60f, 0xd60f], /* Hangul Syllable */ + [0xd610, 0xd610], /* Hangul Syllable */ + [0xd611, 0xd611], /* Hangul Syllable */ + [0xd612, 0xd612], /* Hangul Syllable */ + [0xd613, 0xd613], /* Hangul Syllable */ + [0xd614, 0xd614], /* Hangul Syllable */ + [0xd615, 0xd615], /* Hangul Syllable */ + [0xd616, 0xd616], /* Hangul Syllable */ + [0xd617, 0xd617], /* Hangul Syllable */ + [0xd618, 0xd618], /* Hangul Syllable */ + [0xd619, 0xd619], /* Hangul Syllable */ + [0xd61a, 0xd61a], /* Hangul Syllable */ + [0xd61b, 0xd61b], /* Hangul Syllable */ + [0xd61c, 0xd61c], /* Hangul Syllable */ + [0xd61d, 0xd61d], /* Hangul Syllable */ + [0xd61e, 0xd61e], /* Hangul Syllable */ + [0xd61f, 0xd61f], /* Hangul Syllable */ + [0xd620, 0xd620], /* Hangul Syllable */ + [0xd621, 0xd621], /* Hangul Syllable */ + [0xd622, 0xd622], /* Hangul Syllable */ + [0xd623, 0xd623], /* Hangul Syllable */ + [0xd624, 0xd624], /* Hangul Syllable */ + [0xd625, 0xd625], /* Hangul Syllable */ + [0xd626, 0xd626], /* Hangul Syllable */ + [0xd627, 0xd627], /* Hangul Syllable */ + [0xd628, 0xd628], /* Hangul Syllable */ + [0xd629, 0xd629], /* Hangul Syllable */ + [0xd62a, 0xd62a], /* Hangul Syllable */ + [0xd62b, 0xd62b], /* Hangul Syllable */ + [0xd62c, 0xd62c], /* Hangul Syllable */ + [0xd62d, 0xd62d], /* Hangul Syllable */ + [0xd62e, 0xd62e], /* Hangul Syllable */ + [0xd62f, 0xd62f], /* Hangul Syllable */ + [0xd630, 0xd630], /* Hangul Syllable */ + [0xd631, 0xd631], /* Hangul Syllable */ + [0xd632, 0xd632], /* Hangul Syllable */ + [0xd633, 0xd633], /* Hangul Syllable */ + [0xd634, 0xd634], /* Hangul Syllable */ + [0xd635, 0xd635], /* Hangul Syllable */ + [0xd636, 0xd636], /* Hangul Syllable */ + [0xd637, 0xd637], /* Hangul Syllable */ + [0xd638, 0xd638], /* Hangul Syllable */ + [0xd639, 0xd639], /* Hangul Syllable */ + [0xd63a, 0xd63a], /* Hangul Syllable */ + [0xd63b, 0xd63b], /* Hangul Syllable */ + [0xd63c, 0xd63c], /* Hangul Syllable */ + [0xd63d, 0xd63d], /* Hangul Syllable */ + [0xd63e, 0xd63e], /* Hangul Syllable */ + [0xd63f, 0xd63f], /* Hangul Syllable */ + [0xd640, 0xd640], /* Hangul Syllable */ + [0xd641, 0xd641], /* Hangul Syllable */ + [0xd642, 0xd642], /* Hangul Syllable */ + [0xd643, 0xd643], /* Hangul Syllable */ + [0xd644, 0xd644], /* Hangul Syllable */ + [0xd645, 0xd645], /* Hangul Syllable */ + [0xd646, 0xd646], /* Hangul Syllable */ + [0xd647, 0xd647], /* Hangul Syllable */ + [0xd648, 0xd648], /* Hangul Syllable */ + [0xd649, 0xd649], /* Hangul Syllable */ + [0xd64a, 0xd64a], /* Hangul Syllable */ + [0xd64b, 0xd64b], /* Hangul Syllable */ + [0xd64c, 0xd64c], /* Hangul Syllable */ + [0xd64d, 0xd64d], /* Hangul Syllable */ + [0xd64e, 0xd64e], /* Hangul Syllable */ + [0xd64f, 0xd64f], /* Hangul Syllable */ + [0xd650, 0xd650], /* Hangul Syllable */ + [0xd651, 0xd651], /* Hangul Syllable */ + [0xd652, 0xd652], /* Hangul Syllable */ + [0xd653, 0xd653], /* Hangul Syllable */ + [0xd654, 0xd654], /* Hangul Syllable */ + [0xd655, 0xd655], /* Hangul Syllable */ + [0xd656, 0xd656], /* Hangul Syllable */ + [0xd657, 0xd657], /* Hangul Syllable */ + [0xd658, 0xd658], /* Hangul Syllable */ + [0xd659, 0xd659], /* Hangul Syllable */ + [0xd65a, 0xd65a], /* Hangul Syllable */ + [0xd65b, 0xd65b], /* Hangul Syllable */ + [0xd65c, 0xd65c], /* Hangul Syllable */ + [0xd65d, 0xd65d], /* Hangul Syllable */ + [0xd65e, 0xd65e], /* Hangul Syllable */ + [0xd65f, 0xd65f], /* Hangul Syllable */ + [0xd660, 0xd660], /* Hangul Syllable */ + [0xd661, 0xd661], /* Hangul Syllable */ + [0xd662, 0xd662], /* Hangul Syllable */ + [0xd663, 0xd663], /* Hangul Syllable */ + [0xd664, 0xd664], /* Hangul Syllable */ + [0xd665, 0xd665], /* Hangul Syllable */ + [0xd666, 0xd666], /* Hangul Syllable */ + [0xd667, 0xd667], /* Hangul Syllable */ + [0xd668, 0xd668], /* Hangul Syllable */ + [0xd669, 0xd669], /* Hangul Syllable */ + [0xd66a, 0xd66a], /* Hangul Syllable */ + [0xd66b, 0xd66b], /* Hangul Syllable */ + [0xd66c, 0xd66c], /* Hangul Syllable */ + [0xd66d, 0xd66d], /* Hangul Syllable */ + [0xd66e, 0xd66e], /* Hangul Syllable */ + [0xd66f, 0xd66f], /* Hangul Syllable */ + [0xd670, 0xd670], /* Hangul Syllable */ + [0xd671, 0xd671], /* Hangul Syllable */ + [0xd672, 0xd672], /* Hangul Syllable */ + [0xd673, 0xd673], /* Hangul Syllable */ + [0xd674, 0xd674], /* Hangul Syllable */ + [0xd675, 0xd675], /* Hangul Syllable */ + [0xd676, 0xd676], /* Hangul Syllable */ + [0xd677, 0xd677], /* Hangul Syllable */ + [0xd678, 0xd678], /* Hangul Syllable */ + [0xd679, 0xd679], /* Hangul Syllable */ + [0xd67a, 0xd67a], /* Hangul Syllable */ + [0xd67b, 0xd67b], /* Hangul Syllable */ + [0xd67c, 0xd67c], /* Hangul Syllable */ + [0xd67d, 0xd67d], /* Hangul Syllable */ + [0xd67e, 0xd67e], /* Hangul Syllable */ + [0xd67f, 0xd67f], /* Hangul Syllable */ + [0xd680, 0xd680], /* Hangul Syllable */ + [0xd681, 0xd681], /* Hangul Syllable */ + [0xd682, 0xd682], /* Hangul Syllable */ + [0xd683, 0xd683], /* Hangul Syllable */ + [0xd684, 0xd684], /* Hangul Syllable */ + [0xd685, 0xd685], /* Hangul Syllable */ + [0xd686, 0xd686], /* Hangul Syllable */ + [0xd687, 0xd687], /* Hangul Syllable */ + [0xd688, 0xd688], /* Hangul Syllable */ + [0xd689, 0xd689], /* Hangul Syllable */ + [0xd68a, 0xd68a], /* Hangul Syllable */ + [0xd68b, 0xd68b], /* Hangul Syllable */ + [0xd68c, 0xd68c], /* Hangul Syllable */ + [0xd68d, 0xd68d], /* Hangul Syllable */ + [0xd68e, 0xd68e], /* Hangul Syllable */ + [0xd68f, 0xd68f], /* Hangul Syllable */ + [0xd690, 0xd690], /* Hangul Syllable */ + [0xd691, 0xd691], /* Hangul Syllable */ + [0xd692, 0xd692], /* Hangul Syllable */ + [0xd693, 0xd693], /* Hangul Syllable */ + [0xd694, 0xd694], /* Hangul Syllable */ + [0xd695, 0xd695], /* Hangul Syllable */ + [0xd696, 0xd696], /* Hangul Syllable */ + [0xd697, 0xd697], /* Hangul Syllable */ + [0xd698, 0xd698], /* Hangul Syllable */ + [0xd699, 0xd699], /* Hangul Syllable */ + [0xd69a, 0xd69a], /* Hangul Syllable */ + [0xd69b, 0xd69b], /* Hangul Syllable */ + [0xd69c, 0xd69c], /* Hangul Syllable */ + [0xd69d, 0xd69d], /* Hangul Syllable */ + [0xd69e, 0xd69e], /* Hangul Syllable */ + [0xd69f, 0xd69f], /* Hangul Syllable */ + [0xd6a0, 0xd6a0], /* Hangul Syllable */ + [0xd6a1, 0xd6a1], /* Hangul Syllable */ + [0xd6a2, 0xd6a2], /* Hangul Syllable */ + [0xd6a3, 0xd6a3], /* Hangul Syllable */ + [0xd6a4, 0xd6a4], /* Hangul Syllable */ + [0xd6a5, 0xd6a5], /* Hangul Syllable */ + [0xd6a6, 0xd6a6], /* Hangul Syllable */ + [0xd6a7, 0xd6a7], /* Hangul Syllable */ + [0xd6a8, 0xd6a8], /* Hangul Syllable */ + [0xd6a9, 0xd6a9], /* Hangul Syllable */ + [0xd6aa, 0xd6aa], /* Hangul Syllable */ + [0xd6ab, 0xd6ab], /* Hangul Syllable */ + [0xd6ac, 0xd6ac], /* Hangul Syllable */ + [0xd6ad, 0xd6ad], /* Hangul Syllable */ + [0xd6ae, 0xd6ae], /* Hangul Syllable */ + [0xd6af, 0xd6af], /* Hangul Syllable */ + [0xd6b0, 0xd6b0], /* Hangul Syllable */ + [0xd6b1, 0xd6b1], /* Hangul Syllable */ + [0xd6b2, 0xd6b2], /* Hangul Syllable */ + [0xd6b3, 0xd6b3], /* Hangul Syllable */ + [0xd6b4, 0xd6b4], /* Hangul Syllable */ + [0xd6b5, 0xd6b5], /* Hangul Syllable */ + [0xd6b6, 0xd6b6], /* Hangul Syllable */ + [0xd6b7, 0xd6b7], /* Hangul Syllable */ + [0xd6b8, 0xd6b8], /* Hangul Syllable */ + [0xd6b9, 0xd6b9], /* Hangul Syllable */ + [0xd6ba, 0xd6ba], /* Hangul Syllable */ + [0xd6bb, 0xd6bb], /* Hangul Syllable */ + [0xd6bc, 0xd6bc], /* Hangul Syllable */ + [0xd6bd, 0xd6bd], /* Hangul Syllable */ + [0xd6be, 0xd6be], /* Hangul Syllable */ + [0xd6bf, 0xd6bf], /* Hangul Syllable */ + [0xd6c0, 0xd6c0], /* Hangul Syllable */ + [0xd6c1, 0xd6c1], /* Hangul Syllable */ + [0xd6c2, 0xd6c2], /* Hangul Syllable */ + [0xd6c3, 0xd6c3], /* Hangul Syllable */ + [0xd6c4, 0xd6c4], /* Hangul Syllable */ + [0xd6c5, 0xd6c5], /* Hangul Syllable */ + [0xd6c6, 0xd6c6], /* Hangul Syllable */ + [0xd6c7, 0xd6c7], /* Hangul Syllable */ + [0xd6c8, 0xd6c8], /* Hangul Syllable */ + [0xd6c9, 0xd6c9], /* Hangul Syllable */ + [0xd6ca, 0xd6ca], /* Hangul Syllable */ + [0xd6cb, 0xd6cb], /* Hangul Syllable */ + [0xd6cc, 0xd6cc], /* Hangul Syllable */ + [0xd6cd, 0xd6cd], /* Hangul Syllable */ + [0xd6ce, 0xd6ce], /* Hangul Syllable */ + [0xd6cf, 0xd6cf], /* Hangul Syllable */ + [0xd6d0, 0xd6d0], /* Hangul Syllable */ + [0xd6d1, 0xd6d1], /* Hangul Syllable */ + [0xd6d2, 0xd6d2], /* Hangul Syllable */ + [0xd6d3, 0xd6d3], /* Hangul Syllable */ + [0xd6d4, 0xd6d4], /* Hangul Syllable */ + [0xd6d5, 0xd6d5], /* Hangul Syllable */ + [0xd6d6, 0xd6d6], /* Hangul Syllable */ + [0xd6d7, 0xd6d7], /* Hangul Syllable */ + [0xd6d8, 0xd6d8], /* Hangul Syllable */ + [0xd6d9, 0xd6d9], /* Hangul Syllable */ + [0xd6da, 0xd6da], /* Hangul Syllable */ + [0xd6db, 0xd6db], /* Hangul Syllable */ + [0xd6dc, 0xd6dc], /* Hangul Syllable */ + [0xd6dd, 0xd6dd], /* Hangul Syllable */ + [0xd6de, 0xd6de], /* Hangul Syllable */ + [0xd6df, 0xd6df], /* Hangul Syllable */ + [0xd6e0, 0xd6e0], /* Hangul Syllable */ + [0xd6e1, 0xd6e1], /* Hangul Syllable */ + [0xd6e2, 0xd6e2], /* Hangul Syllable */ + [0xd6e3, 0xd6e3], /* Hangul Syllable */ + [0xd6e4, 0xd6e4], /* Hangul Syllable */ + [0xd6e5, 0xd6e5], /* Hangul Syllable */ + [0xd6e6, 0xd6e6], /* Hangul Syllable */ + [0xd6e7, 0xd6e7], /* Hangul Syllable */ + [0xd6e8, 0xd6e8], /* Hangul Syllable */ + [0xd6e9, 0xd6e9], /* Hangul Syllable */ + [0xd6ea, 0xd6ea], /* Hangul Syllable */ + [0xd6eb, 0xd6eb], /* Hangul Syllable */ + [0xd6ec, 0xd6ec], /* Hangul Syllable */ + [0xd6ed, 0xd6ed], /* Hangul Syllable */ + [0xd6ee, 0xd6ee], /* Hangul Syllable */ + [0xd6ef, 0xd6ef], /* Hangul Syllable */ + [0xd6f0, 0xd6f0], /* Hangul Syllable */ + [0xd6f1, 0xd6f1], /* Hangul Syllable */ + [0xd6f2, 0xd6f2], /* Hangul Syllable */ + [0xd6f3, 0xd6f3], /* Hangul Syllable */ + [0xd6f4, 0xd6f4], /* Hangul Syllable */ + [0xd6f5, 0xd6f5], /* Hangul Syllable */ + [0xd6f6, 0xd6f6], /* Hangul Syllable */ + [0xd6f7, 0xd6f7], /* Hangul Syllable */ + [0xd6f8, 0xd6f8], /* Hangul Syllable */ + [0xd6f9, 0xd6f9], /* Hangul Syllable */ + [0xd6fa, 0xd6fa], /* Hangul Syllable */ + [0xd6fb, 0xd6fb], /* Hangul Syllable */ + [0xd6fc, 0xd6fc], /* Hangul Syllable */ + [0xd6fd, 0xd6fd], /* Hangul Syllable */ + [0xd6fe, 0xd6fe], /* Hangul Syllable */ + [0xd6ff, 0xd6ff], /* Hangul Syllable */ + [0xd700, 0xd700], /* Hangul Syllable */ + [0xd701, 0xd701], /* Hangul Syllable */ + [0xd702, 0xd702], /* Hangul Syllable */ + [0xd703, 0xd703], /* Hangul Syllable */ + [0xd704, 0xd704], /* Hangul Syllable */ + [0xd705, 0xd705], /* Hangul Syllable */ + [0xd706, 0xd706], /* Hangul Syllable */ + [0xd707, 0xd707], /* Hangul Syllable */ + [0xd708, 0xd708], /* Hangul Syllable */ + [0xd709, 0xd709], /* Hangul Syllable */ + [0xd70a, 0xd70a], /* Hangul Syllable */ + [0xd70b, 0xd70b], /* Hangul Syllable */ + [0xd70c, 0xd70c], /* Hangul Syllable */ + [0xd70d, 0xd70d], /* Hangul Syllable */ + [0xd70e, 0xd70e], /* Hangul Syllable */ + [0xd70f, 0xd70f], /* Hangul Syllable */ + [0xd710, 0xd710], /* Hangul Syllable */ + [0xd711, 0xd711], /* Hangul Syllable */ + [0xd712, 0xd712], /* Hangul Syllable */ + [0xd713, 0xd713], /* Hangul Syllable */ + [0xd714, 0xd714], /* Hangul Syllable */ + [0xd715, 0xd715], /* Hangul Syllable */ + [0xd716, 0xd716], /* Hangul Syllable */ + [0xd717, 0xd717], /* Hangul Syllable */ + [0xd718, 0xd718], /* Hangul Syllable */ + [0xd719, 0xd719], /* Hangul Syllable */ + [0xd71a, 0xd71a], /* Hangul Syllable */ + [0xd71b, 0xd71b], /* Hangul Syllable */ + [0xd71c, 0xd71c], /* Hangul Syllable */ + [0xd71d, 0xd71d], /* Hangul Syllable */ + [0xd71e, 0xd71e], /* Hangul Syllable */ + [0xd71f, 0xd71f], /* Hangul Syllable */ + [0xd720, 0xd720], /* Hangul Syllable */ + [0xd721, 0xd721], /* Hangul Syllable */ + [0xd722, 0xd722], /* Hangul Syllable */ + [0xd723, 0xd723], /* Hangul Syllable */ + [0xd724, 0xd724], /* Hangul Syllable */ + [0xd725, 0xd725], /* Hangul Syllable */ + [0xd726, 0xd726], /* Hangul Syllable */ + [0xd727, 0xd727], /* Hangul Syllable */ + [0xd728, 0xd728], /* Hangul Syllable */ + [0xd729, 0xd729], /* Hangul Syllable */ + [0xd72a, 0xd72a], /* Hangul Syllable */ + [0xd72b, 0xd72b], /* Hangul Syllable */ + [0xd72c, 0xd72c], /* Hangul Syllable */ + [0xd72d, 0xd72d], /* Hangul Syllable */ + [0xd72e, 0xd72e], /* Hangul Syllable */ + [0xd72f, 0xd72f], /* Hangul Syllable */ + [0xd730, 0xd730], /* Hangul Syllable */ + [0xd731, 0xd731], /* Hangul Syllable */ + [0xd732, 0xd732], /* Hangul Syllable */ + [0xd733, 0xd733], /* Hangul Syllable */ + [0xd734, 0xd734], /* Hangul Syllable */ + [0xd735, 0xd735], /* Hangul Syllable */ + [0xd736, 0xd736], /* Hangul Syllable */ + [0xd737, 0xd737], /* Hangul Syllable */ + [0xd738, 0xd738], /* Hangul Syllable */ + [0xd739, 0xd739], /* Hangul Syllable */ + [0xd73a, 0xd73a], /* Hangul Syllable */ + [0xd73b, 0xd73b], /* Hangul Syllable */ + [0xd73c, 0xd73c], /* Hangul Syllable */ + [0xd73d, 0xd73d], /* Hangul Syllable */ + [0xd73e, 0xd73e], /* Hangul Syllable */ + [0xd73f, 0xd73f], /* Hangul Syllable */ + [0xd740, 0xd740], /* Hangul Syllable */ + [0xd741, 0xd741], /* Hangul Syllable */ + [0xd742, 0xd742], /* Hangul Syllable */ + [0xd743, 0xd743], /* Hangul Syllable */ + [0xd744, 0xd744], /* Hangul Syllable */ + [0xd745, 0xd745], /* Hangul Syllable */ + [0xd746, 0xd746], /* Hangul Syllable */ + [0xd747, 0xd747], /* Hangul Syllable */ + [0xd748, 0xd748], /* Hangul Syllable */ + [0xd749, 0xd749], /* Hangul Syllable */ + [0xd74a, 0xd74a], /* Hangul Syllable */ + [0xd74b, 0xd74b], /* Hangul Syllable */ + [0xd74c, 0xd74c], /* Hangul Syllable */ + [0xd74d, 0xd74d], /* Hangul Syllable */ + [0xd74e, 0xd74e], /* Hangul Syllable */ + [0xd74f, 0xd74f], /* Hangul Syllable */ + [0xd750, 0xd750], /* Hangul Syllable */ + [0xd751, 0xd751], /* Hangul Syllable */ + [0xd752, 0xd752], /* Hangul Syllable */ + [0xd753, 0xd753], /* Hangul Syllable */ + [0xd754, 0xd754], /* Hangul Syllable */ + [0xd755, 0xd755], /* Hangul Syllable */ + [0xd756, 0xd756], /* Hangul Syllable */ + [0xd757, 0xd757], /* Hangul Syllable */ + [0xd758, 0xd758], /* Hangul Syllable */ + [0xd759, 0xd759], /* Hangul Syllable */ + [0xd75a, 0xd75a], /* Hangul Syllable */ + [0xd75b, 0xd75b], /* Hangul Syllable */ + [0xd75c, 0xd75c], /* Hangul Syllable */ + [0xd75d, 0xd75d], /* Hangul Syllable */ + [0xd75e, 0xd75e], /* Hangul Syllable */ + [0xd75f, 0xd75f], /* Hangul Syllable */ + [0xd760, 0xd760], /* Hangul Syllable */ + [0xd761, 0xd761], /* Hangul Syllable */ + [0xd762, 0xd762], /* Hangul Syllable */ + [0xd763, 0xd763], /* Hangul Syllable */ + [0xd764, 0xd764], /* Hangul Syllable */ + [0xd765, 0xd765], /* Hangul Syllable */ + [0xd766, 0xd766], /* Hangul Syllable */ + [0xd767, 0xd767], /* Hangul Syllable */ + [0xd768, 0xd768], /* Hangul Syllable */ + [0xd769, 0xd769], /* Hangul Syllable */ + [0xd76a, 0xd76a], /* Hangul Syllable */ + [0xd76b, 0xd76b], /* Hangul Syllable */ + [0xd76c, 0xd76c], /* Hangul Syllable */ + [0xd76d, 0xd76d], /* Hangul Syllable */ + [0xd76e, 0xd76e], /* Hangul Syllable */ + [0xd76f, 0xd76f], /* Hangul Syllable */ + [0xd770, 0xd770], /* Hangul Syllable */ + [0xd771, 0xd771], /* Hangul Syllable */ + [0xd772, 0xd772], /* Hangul Syllable */ + [0xd773, 0xd773], /* Hangul Syllable */ + [0xd774, 0xd774], /* Hangul Syllable */ + [0xd775, 0xd775], /* Hangul Syllable */ + [0xd776, 0xd776], /* Hangul Syllable */ + [0xd777, 0xd777], /* Hangul Syllable */ + [0xd778, 0xd778], /* Hangul Syllable */ + [0xd779, 0xd779], /* Hangul Syllable */ + [0xd77a, 0xd77a], /* Hangul Syllable */ + [0xd77b, 0xd77b], /* Hangul Syllable */ + [0xd77c, 0xd77c], /* Hangul Syllable */ + [0xd77d, 0xd77d], /* Hangul Syllable */ + [0xd77e, 0xd77e], /* Hangul Syllable */ + [0xd77f, 0xd77f], /* Hangul Syllable */ + [0xd780, 0xd780], /* Hangul Syllable */ + [0xd781, 0xd781], /* Hangul Syllable */ + [0xd782, 0xd782], /* Hangul Syllable */ + [0xd783, 0xd783], /* Hangul Syllable */ + [0xd784, 0xd784], /* Hangul Syllable */ + [0xd785, 0xd785], /* Hangul Syllable */ + [0xd786, 0xd786], /* Hangul Syllable */ + [0xd787, 0xd787], /* Hangul Syllable */ + [0xd788, 0xd788], /* Hangul Syllable */ + [0xd789, 0xd789], /* Hangul Syllable */ + [0xd78a, 0xd78a], /* Hangul Syllable */ + [0xd78b, 0xd78b], /* Hangul Syllable */ + [0xd78c, 0xd78c], /* Hangul Syllable */ + [0xd78d, 0xd78d], /* Hangul Syllable */ + [0xd78e, 0xd78e], /* Hangul Syllable */ + [0xd78f, 0xd78f], /* Hangul Syllable */ + [0xd790, 0xd790], /* Hangul Syllable */ + [0xd791, 0xd791], /* Hangul Syllable */ + [0xd792, 0xd792], /* Hangul Syllable */ + [0xd793, 0xd793], /* Hangul Syllable */ + [0xd794, 0xd794], /* Hangul Syllable */ + [0xd795, 0xd795], /* Hangul Syllable */ + [0xd796, 0xd796], /* Hangul Syllable */ + [0xd797, 0xd797], /* Hangul Syllable */ + [0xd798, 0xd798], /* Hangul Syllable */ + [0xd799, 0xd799], /* Hangul Syllable */ + [0xd79a, 0xd79a], /* Hangul Syllable */ + [0xd79b, 0xd79b], /* Hangul Syllable */ + [0xd79c, 0xd79c], /* Hangul Syllable */ + [0xd79d, 0xd79d], /* Hangul Syllable */ + [0xd79e, 0xd79e], /* Hangul Syllable */ + [0xd79f, 0xd79f], /* Hangul Syllable */ + [0xd7a0, 0xd7a0], /* Hangul Syllable */ + [0xd7a1, 0xd7a1], /* Hangul Syllable */ + [0xd7a2, 0xd7a2], /* Hangul Syllable */ + [0xd7a3, 0xd7a3], /* Hangul Syllable */ + [0xd7a4, 0xd7a4], + [0xd7a5, 0xd7a5], + [0xd7a6, 0xd7a6], + [0xd7a7, 0xd7a7], + [0xd7a8, 0xd7a8], + [0xd7a9, 0xd7a9], + [0xd7aa, 0xd7aa], + [0xd7ab, 0xd7ab], + [0xd7ac, 0xd7ac], + [0xd7ad, 0xd7ad], + [0xd7ae, 0xd7ae], + [0xd7af, 0xd7af], + [0xd7b0, 0xd7b0], /* HANGUL JUNGSEONG O-YEO */ + [0xd7b1, 0xd7b1], /* HANGUL JUNGSEONG O-O-I */ + [0xd7b2, 0xd7b2], /* HANGUL JUNGSEONG YO-A */ + [0xd7b3, 0xd7b3], /* HANGUL JUNGSEONG YO-AE */ + [0xd7b4, 0xd7b4], /* HANGUL JUNGSEONG YO-EO */ + [0xd7b5, 0xd7b5], /* HANGUL JUNGSEONG U-YEO */ + [0xd7b6, 0xd7b6], /* HANGUL JUNGSEONG U-I-I */ + [0xd7b7, 0xd7b7], /* HANGUL JUNGSEONG YU-AE */ + [0xd7b8, 0xd7b8], /* HANGUL JUNGSEONG YU-O */ + [0xd7b9, 0xd7b9], /* HANGUL JUNGSEONG EU-A */ + [0xd7ba, 0xd7ba], /* HANGUL JUNGSEONG EU-EO */ + [0xd7bb, 0xd7bb], /* HANGUL JUNGSEONG EU-E */ + [0xd7bc, 0xd7bc], /* HANGUL JUNGSEONG EU-O */ + [0xd7bd, 0xd7bd], /* HANGUL JUNGSEONG I-YA-O */ + [0xd7be, 0xd7be], /* HANGUL JUNGSEONG I-YAE */ + [0xd7bf, 0xd7bf], /* HANGUL JUNGSEONG I-YEO */ + [0xd7c0, 0xd7c0], /* HANGUL JUNGSEONG I-YE */ + [0xd7c1, 0xd7c1], /* HANGUL JUNGSEONG I-O-I */ + [0xd7c2, 0xd7c2], /* HANGUL JUNGSEONG I-YO */ + [0xd7c3, 0xd7c3], /* HANGUL JUNGSEONG I-YU */ + [0xd7c4, 0xd7c4], /* HANGUL JUNGSEONG I-I */ + [0xd7c5, 0xd7c5], /* HANGUL JUNGSEONG ARAEA-A */ + [0xd7c6, 0xd7c6], /* HANGUL JUNGSEONG ARAEA-E */ + [0xd7c7, 0xd7c7], + [0xd7c8, 0xd7c8], + [0xd7c9, 0xd7c9], + [0xd7ca, 0xd7ca], + [0xd7cb, 0xd7cb], /* HANGUL JONGSEONG NIEUN-RIEUL */ + [0xd7cc, 0xd7cc], /* HANGUL JONGSEONG NIEUN-CHIEUCH */ + [0xd7cd, 0xd7cd], /* HANGUL JONGSEONG SSANGTIKEUT */ + [0xd7ce, 0xd7ce], /* HANGUL JONGSEONG SSANGTIKEUT-PIEUP */ + [0xd7cf, 0xd7cf], /* HANGUL JONGSEONG TIKEUT-PIEUP */ + [0xd7d0, 0xd7d0], /* HANGUL JONGSEONG TIKEUT-SIOS */ + [0xd7d1, 0xd7d1], /* HANGUL JONGSEONG TIKEUT-SIOS-KIYEOK */ + [0xd7d2, 0xd7d2], /* HANGUL JONGSEONG TIKEUT-CIEUC */ + [0xd7d3, 0xd7d3], /* HANGUL JONGSEONG TIKEUT-CHIEUCH */ + [0xd7d4, 0xd7d4], /* HANGUL JONGSEONG TIKEUT-THIEUTH */ + [0xd7d5, 0xd7d5], /* HANGUL JONGSEONG RIEUL-SSANGKIYEOK */ + [0xd7d6, 0xd7d6], /* HANGUL JONGSEONG RIEUL-KIYEOK-HIEUH */ + [0xd7d7, 0xd7d7], /* HANGUL JONGSEONG SSANGRIEUL-KHIEUKH */ + [0xd7d8, 0xd7d8], /* HANGUL JONGSEONG RIEUL-MIEUM-HIEUH */ + [0xd7d9, 0xd7d9], /* HANGUL JONGSEONG RIEUL-PIEUP-TIKEUT */ + [0xd7da, 0xd7da], /* HANGUL JONGSEONG RIEUL-PIEUP-PHIEUPH */ + [0xd7db, 0xd7db], /* HANGUL JONGSEONG RIEUL-YESIEUNG */ + [0xd7dc, 0xd7dc], /* HANGUL JONGSEONG RIEUL-YEORINHIEUH-HIEUH */ + [0xd7dd, 0xd7dd], /* HANGUL JONGSEONG KAPYEOUNRIEUL */ + [0xd7de, 0xd7de], /* HANGUL JONGSEONG MIEUM-NIEUN */ + [0xd7df, 0xd7df], /* HANGUL JONGSEONG MIEUM-SSANGNIEUN */ + [0xd7e0, 0xd7e0], /* HANGUL JONGSEONG SSANGMIEUM */ + [0xd7e1, 0xd7e1], /* HANGUL JONGSEONG MIEUM-PIEUP-SIOS */ + [0xd7e2, 0xd7e2], /* HANGUL JONGSEONG MIEUM-CIEUC */ + [0xd7e3, 0xd7e3], /* HANGUL JONGSEONG PIEUP-TIKEUT */ + [0xd7e4, 0xd7e4], /* HANGUL JONGSEONG PIEUP-RIEUL-PHIEUPH */ + [0xd7e5, 0xd7e5], /* HANGUL JONGSEONG PIEUP-MIEUM */ + [0xd7e6, 0xd7e6], /* HANGUL JONGSEONG SSANGPIEUP */ + [0xd7e7, 0xd7e7], /* HANGUL JONGSEONG PIEUP-SIOS-TIKEUT */ + [0xd7e8, 0xd7e8], /* HANGUL JONGSEONG PIEUP-CIEUC */ + [0xd7e9, 0xd7e9], /* HANGUL JONGSEONG PIEUP-CHIEUCH */ + [0xd7ea, 0xd7ea], /* HANGUL JONGSEONG SIOS-MIEUM */ + [0xd7eb, 0xd7eb], /* HANGUL JONGSEONG SIOS-KAPYEOUNPIEUP */ + [0xd7ec, 0xd7ec], /* HANGUL JONGSEONG SSANGSIOS-KIYEOK */ + [0xd7ed, 0xd7ed], /* HANGUL JONGSEONG SSANGSIOS-TIKEUT */ + [0xd7ee, 0xd7ee], /* HANGUL JONGSEONG SIOS-PANSIOS */ + [0xd7ef, 0xd7ef], /* HANGUL JONGSEONG SIOS-CIEUC */ + [0xd7f0, 0xd7f0], /* HANGUL JONGSEONG SIOS-CHIEUCH */ + [0xd7f1, 0xd7f1], /* HANGUL JONGSEONG SIOS-THIEUTH */ + [0xd7f2, 0xd7f2], /* HANGUL JONGSEONG SIOS-HIEUH */ + [0xd7f3, 0xd7f3], /* HANGUL JONGSEONG PANSIOS-PIEUP */ + [0xd7f4, 0xd7f4], /* HANGUL JONGSEONG PANSIOS-KAPYEOUNPIEUP */ + [0xd7f5, 0xd7f5], /* HANGUL JONGSEONG YESIEUNG-MIEUM */ + [0xd7f6, 0xd7f6], /* HANGUL JONGSEONG YESIEUNG-HIEUH */ + [0xd7f7, 0xd7f7], /* HANGUL JONGSEONG CIEUC-PIEUP */ + [0xd7f8, 0xd7f8], /* HANGUL JONGSEONG CIEUC-SSANGPIEUP */ + [0xd7f9, 0xd7f9], /* HANGUL JONGSEONG SSANGCIEUC */ + [0xd7fa, 0xd7fa], /* HANGUL JONGSEONG PHIEUPH-SIOS */ + [0xd7fb, 0xd7fb], /* HANGUL JONGSEONG PHIEUPH-THIEUTH */ + [0xd7fc, 0xd7fc], + [0xd7fd, 0xd7fd], + [0xd7fe, 0xd7fe], + [0xd7ff, 0xd7ff], + [0xd800, 0xd800], /* Non Private Use High Surrogate */ + [0xd801, 0xd801], /* Non Private Use High Surrogate */ + [0xd802, 0xd802], /* Non Private Use High Surrogate */ + [0xd803, 0xd803], /* Non Private Use High Surrogate */ + [0xd804, 0xd804], /* Non Private Use High Surrogate */ + [0xd805, 0xd805], /* Non Private Use High Surrogate */ + [0xd806, 0xd806], /* Non Private Use High Surrogate */ + [0xd807, 0xd807], /* Non Private Use High Surrogate */ + [0xd808, 0xd808], /* Non Private Use High Surrogate */ + [0xd809, 0xd809], /* Non Private Use High Surrogate */ + [0xd80a, 0xd80a], /* Non Private Use High Surrogate */ + [0xd80b, 0xd80b], /* Non Private Use High Surrogate */ + [0xd80c, 0xd80c], /* Non Private Use High Surrogate */ + [0xd80d, 0xd80d], /* Non Private Use High Surrogate */ + [0xd80e, 0xd80e], /* Non Private Use High Surrogate */ + [0xd80f, 0xd80f], /* Non Private Use High Surrogate */ + [0xd810, 0xd810], /* Non Private Use High Surrogate */ + [0xd811, 0xd811], /* Non Private Use High Surrogate */ + [0xd812, 0xd812], /* Non Private Use High Surrogate */ + [0xd813, 0xd813], /* Non Private Use High Surrogate */ + [0xd814, 0xd814], /* Non Private Use High Surrogate */ + [0xd815, 0xd815], /* Non Private Use High Surrogate */ + [0xd816, 0xd816], /* Non Private Use High Surrogate */ + [0xd817, 0xd817], /* Non Private Use High Surrogate */ + [0xd818, 0xd818], /* Non Private Use High Surrogate */ + [0xd819, 0xd819], /* Non Private Use High Surrogate */ + [0xd81a, 0xd81a], /* Non Private Use High Surrogate */ + [0xd81b, 0xd81b], /* Non Private Use High Surrogate */ + [0xd81c, 0xd81c], /* Non Private Use High Surrogate */ + [0xd81d, 0xd81d], /* Non Private Use High Surrogate */ + [0xd81e, 0xd81e], /* Non Private Use High Surrogate */ + [0xd81f, 0xd81f], /* Non Private Use High Surrogate */ + [0xd820, 0xd820], /* Non Private Use High Surrogate */ + [0xd821, 0xd821], /* Non Private Use High Surrogate */ + [0xd822, 0xd822], /* Non Private Use High Surrogate */ + [0xd823, 0xd823], /* Non Private Use High Surrogate */ + [0xd824, 0xd824], /* Non Private Use High Surrogate */ + [0xd825, 0xd825], /* Non Private Use High Surrogate */ + [0xd826, 0xd826], /* Non Private Use High Surrogate */ + [0xd827, 0xd827], /* Non Private Use High Surrogate */ + [0xd828, 0xd828], /* Non Private Use High Surrogate */ + [0xd829, 0xd829], /* Non Private Use High Surrogate */ + [0xd82a, 0xd82a], /* Non Private Use High Surrogate */ + [0xd82b, 0xd82b], /* Non Private Use High Surrogate */ + [0xd82c, 0xd82c], /* Non Private Use High Surrogate */ + [0xd82d, 0xd82d], /* Non Private Use High Surrogate */ + [0xd82e, 0xd82e], /* Non Private Use High Surrogate */ + [0xd82f, 0xd82f], /* Non Private Use High Surrogate */ + [0xd830, 0xd830], /* Non Private Use High Surrogate */ + [0xd831, 0xd831], /* Non Private Use High Surrogate */ + [0xd832, 0xd832], /* Non Private Use High Surrogate */ + [0xd833, 0xd833], /* Non Private Use High Surrogate */ + [0xd834, 0xd834], /* Non Private Use High Surrogate */ + [0xd835, 0xd835], /* Non Private Use High Surrogate */ + [0xd836, 0xd836], /* Non Private Use High Surrogate */ + [0xd837, 0xd837], /* Non Private Use High Surrogate */ + [0xd838, 0xd838], /* Non Private Use High Surrogate */ + [0xd839, 0xd839], /* Non Private Use High Surrogate */ + [0xd83a, 0xd83a], /* Non Private Use High Surrogate */ + [0xd83b, 0xd83b], /* Non Private Use High Surrogate */ + [0xd83c, 0xd83c], /* Non Private Use High Surrogate */ + [0xd83d, 0xd83d], /* Non Private Use High Surrogate */ + [0xd83e, 0xd83e], /* Non Private Use High Surrogate */ + [0xd83f, 0xd83f], /* Non Private Use High Surrogate */ + [0xd840, 0xd840], /* Non Private Use High Surrogate */ + [0xd841, 0xd841], /* Non Private Use High Surrogate */ + [0xd842, 0xd842], /* Non Private Use High Surrogate */ + [0xd843, 0xd843], /* Non Private Use High Surrogate */ + [0xd844, 0xd844], /* Non Private Use High Surrogate */ + [0xd845, 0xd845], /* Non Private Use High Surrogate */ + [0xd846, 0xd846], /* Non Private Use High Surrogate */ + [0xd847, 0xd847], /* Non Private Use High Surrogate */ + [0xd848, 0xd848], /* Non Private Use High Surrogate */ + [0xd849, 0xd849], /* Non Private Use High Surrogate */ + [0xd84a, 0xd84a], /* Non Private Use High Surrogate */ + [0xd84b, 0xd84b], /* Non Private Use High Surrogate */ + [0xd84c, 0xd84c], /* Non Private Use High Surrogate */ + [0xd84d, 0xd84d], /* Non Private Use High Surrogate */ + [0xd84e, 0xd84e], /* Non Private Use High Surrogate */ + [0xd84f, 0xd84f], /* Non Private Use High Surrogate */ + [0xd850, 0xd850], /* Non Private Use High Surrogate */ + [0xd851, 0xd851], /* Non Private Use High Surrogate */ + [0xd852, 0xd852], /* Non Private Use High Surrogate */ + [0xd853, 0xd853], /* Non Private Use High Surrogate */ + [0xd854, 0xd854], /* Non Private Use High Surrogate */ + [0xd855, 0xd855], /* Non Private Use High Surrogate */ + [0xd856, 0xd856], /* Non Private Use High Surrogate */ + [0xd857, 0xd857], /* Non Private Use High Surrogate */ + [0xd858, 0xd858], /* Non Private Use High Surrogate */ + [0xd859, 0xd859], /* Non Private Use High Surrogate */ + [0xd85a, 0xd85a], /* Non Private Use High Surrogate */ + [0xd85b, 0xd85b], /* Non Private Use High Surrogate */ + [0xd85c, 0xd85c], /* Non Private Use High Surrogate */ + [0xd85d, 0xd85d], /* Non Private Use High Surrogate */ + [0xd85e, 0xd85e], /* Non Private Use High Surrogate */ + [0xd85f, 0xd85f], /* Non Private Use High Surrogate */ + [0xd860, 0xd860], /* Non Private Use High Surrogate */ + [0xd861, 0xd861], /* Non Private Use High Surrogate */ + [0xd862, 0xd862], /* Non Private Use High Surrogate */ + [0xd863, 0xd863], /* Non Private Use High Surrogate */ + [0xd864, 0xd864], /* Non Private Use High Surrogate */ + [0xd865, 0xd865], /* Non Private Use High Surrogate */ + [0xd866, 0xd866], /* Non Private Use High Surrogate */ + [0xd867, 0xd867], /* Non Private Use High Surrogate */ + [0xd868, 0xd868], /* Non Private Use High Surrogate */ + [0xd869, 0xd869], /* Non Private Use High Surrogate */ + [0xd86a, 0xd86a], /* Non Private Use High Surrogate */ + [0xd86b, 0xd86b], /* Non Private Use High Surrogate */ + [0xd86c, 0xd86c], /* Non Private Use High Surrogate */ + [0xd86d, 0xd86d], /* Non Private Use High Surrogate */ + [0xd86e, 0xd86e], /* Non Private Use High Surrogate */ + [0xd86f, 0xd86f], /* Non Private Use High Surrogate */ + [0xd870, 0xd870], /* Non Private Use High Surrogate */ + [0xd871, 0xd871], /* Non Private Use High Surrogate */ + [0xd872, 0xd872], /* Non Private Use High Surrogate */ + [0xd873, 0xd873], /* Non Private Use High Surrogate */ + [0xd874, 0xd874], /* Non Private Use High Surrogate */ + [0xd875, 0xd875], /* Non Private Use High Surrogate */ + [0xd876, 0xd876], /* Non Private Use High Surrogate */ + [0xd877, 0xd877], /* Non Private Use High Surrogate */ + [0xd878, 0xd878], /* Non Private Use High Surrogate */ + [0xd879, 0xd879], /* Non Private Use High Surrogate */ + [0xd87a, 0xd87a], /* Non Private Use High Surrogate */ + [0xd87b, 0xd87b], /* Non Private Use High Surrogate */ + [0xd87c, 0xd87c], /* Non Private Use High Surrogate */ + [0xd87d, 0xd87d], /* Non Private Use High Surrogate */ + [0xd87e, 0xd87e], /* Non Private Use High Surrogate */ + [0xd87f, 0xd87f], /* Non Private Use High Surrogate */ + [0xd880, 0xd880], /* Non Private Use High Surrogate */ + [0xd881, 0xd881], /* Non Private Use High Surrogate */ + [0xd882, 0xd882], /* Non Private Use High Surrogate */ + [0xd883, 0xd883], /* Non Private Use High Surrogate */ + [0xd884, 0xd884], /* Non Private Use High Surrogate */ + [0xd885, 0xd885], /* Non Private Use High Surrogate */ + [0xd886, 0xd886], /* Non Private Use High Surrogate */ + [0xd887, 0xd887], /* Non Private Use High Surrogate */ + [0xd888, 0xd888], /* Non Private Use High Surrogate */ + [0xd889, 0xd889], /* Non Private Use High Surrogate */ + [0xd88a, 0xd88a], /* Non Private Use High Surrogate */ + [0xd88b, 0xd88b], /* Non Private Use High Surrogate */ + [0xd88c, 0xd88c], /* Non Private Use High Surrogate */ + [0xd88d, 0xd88d], /* Non Private Use High Surrogate */ + [0xd88e, 0xd88e], /* Non Private Use High Surrogate */ + [0xd88f, 0xd88f], /* Non Private Use High Surrogate */ + [0xd890, 0xd890], /* Non Private Use High Surrogate */ + [0xd891, 0xd891], /* Non Private Use High Surrogate */ + [0xd892, 0xd892], /* Non Private Use High Surrogate */ + [0xd893, 0xd893], /* Non Private Use High Surrogate */ + [0xd894, 0xd894], /* Non Private Use High Surrogate */ + [0xd895, 0xd895], /* Non Private Use High Surrogate */ + [0xd896, 0xd896], /* Non Private Use High Surrogate */ + [0xd897, 0xd897], /* Non Private Use High Surrogate */ + [0xd898, 0xd898], /* Non Private Use High Surrogate */ + [0xd899, 0xd899], /* Non Private Use High Surrogate */ + [0xd89a, 0xd89a], /* Non Private Use High Surrogate */ + [0xd89b, 0xd89b], /* Non Private Use High Surrogate */ + [0xd89c, 0xd89c], /* Non Private Use High Surrogate */ + [0xd89d, 0xd89d], /* Non Private Use High Surrogate */ + [0xd89e, 0xd89e], /* Non Private Use High Surrogate */ + [0xd89f, 0xd89f], /* Non Private Use High Surrogate */ + [0xd8a0, 0xd8a0], /* Non Private Use High Surrogate */ + [0xd8a1, 0xd8a1], /* Non Private Use High Surrogate */ + [0xd8a2, 0xd8a2], /* Non Private Use High Surrogate */ + [0xd8a3, 0xd8a3], /* Non Private Use High Surrogate */ + [0xd8a4, 0xd8a4], /* Non Private Use High Surrogate */ + [0xd8a5, 0xd8a5], /* Non Private Use High Surrogate */ + [0xd8a6, 0xd8a6], /* Non Private Use High Surrogate */ + [0xd8a7, 0xd8a7], /* Non Private Use High Surrogate */ + [0xd8a8, 0xd8a8], /* Non Private Use High Surrogate */ + [0xd8a9, 0xd8a9], /* Non Private Use High Surrogate */ + [0xd8aa, 0xd8aa], /* Non Private Use High Surrogate */ + [0xd8ab, 0xd8ab], /* Non Private Use High Surrogate */ + [0xd8ac, 0xd8ac], /* Non Private Use High Surrogate */ + [0xd8ad, 0xd8ad], /* Non Private Use High Surrogate */ + [0xd8ae, 0xd8ae], /* Non Private Use High Surrogate */ + [0xd8af, 0xd8af], /* Non Private Use High Surrogate */ + [0xd8b0, 0xd8b0], /* Non Private Use High Surrogate */ + [0xd8b1, 0xd8b1], /* Non Private Use High Surrogate */ + [0xd8b2, 0xd8b2], /* Non Private Use High Surrogate */ + [0xd8b3, 0xd8b3], /* Non Private Use High Surrogate */ + [0xd8b4, 0xd8b4], /* Non Private Use High Surrogate */ + [0xd8b5, 0xd8b5], /* Non Private Use High Surrogate */ + [0xd8b6, 0xd8b6], /* Non Private Use High Surrogate */ + [0xd8b7, 0xd8b7], /* Non Private Use High Surrogate */ + [0xd8b8, 0xd8b8], /* Non Private Use High Surrogate */ + [0xd8b9, 0xd8b9], /* Non Private Use High Surrogate */ + [0xd8ba, 0xd8ba], /* Non Private Use High Surrogate */ + [0xd8bb, 0xd8bb], /* Non Private Use High Surrogate */ + [0xd8bc, 0xd8bc], /* Non Private Use High Surrogate */ + [0xd8bd, 0xd8bd], /* Non Private Use High Surrogate */ + [0xd8be, 0xd8be], /* Non Private Use High Surrogate */ + [0xd8bf, 0xd8bf], /* Non Private Use High Surrogate */ + [0xd8c0, 0xd8c0], /* Non Private Use High Surrogate */ + [0xd8c1, 0xd8c1], /* Non Private Use High Surrogate */ + [0xd8c2, 0xd8c2], /* Non Private Use High Surrogate */ + [0xd8c3, 0xd8c3], /* Non Private Use High Surrogate */ + [0xd8c4, 0xd8c4], /* Non Private Use High Surrogate */ + [0xd8c5, 0xd8c5], /* Non Private Use High Surrogate */ + [0xd8c6, 0xd8c6], /* Non Private Use High Surrogate */ + [0xd8c7, 0xd8c7], /* Non Private Use High Surrogate */ + [0xd8c8, 0xd8c8], /* Non Private Use High Surrogate */ + [0xd8c9, 0xd8c9], /* Non Private Use High Surrogate */ + [0xd8ca, 0xd8ca], /* Non Private Use High Surrogate */ + [0xd8cb, 0xd8cb], /* Non Private Use High Surrogate */ + [0xd8cc, 0xd8cc], /* Non Private Use High Surrogate */ + [0xd8cd, 0xd8cd], /* Non Private Use High Surrogate */ + [0xd8ce, 0xd8ce], /* Non Private Use High Surrogate */ + [0xd8cf, 0xd8cf], /* Non Private Use High Surrogate */ + [0xd8d0, 0xd8d0], /* Non Private Use High Surrogate */ + [0xd8d1, 0xd8d1], /* Non Private Use High Surrogate */ + [0xd8d2, 0xd8d2], /* Non Private Use High Surrogate */ + [0xd8d3, 0xd8d3], /* Non Private Use High Surrogate */ + [0xd8d4, 0xd8d4], /* Non Private Use High Surrogate */ + [0xd8d5, 0xd8d5], /* Non Private Use High Surrogate */ + [0xd8d6, 0xd8d6], /* Non Private Use High Surrogate */ + [0xd8d7, 0xd8d7], /* Non Private Use High Surrogate */ + [0xd8d8, 0xd8d8], /* Non Private Use High Surrogate */ + [0xd8d9, 0xd8d9], /* Non Private Use High Surrogate */ + [0xd8da, 0xd8da], /* Non Private Use High Surrogate */ + [0xd8db, 0xd8db], /* Non Private Use High Surrogate */ + [0xd8dc, 0xd8dc], /* Non Private Use High Surrogate */ + [0xd8dd, 0xd8dd], /* Non Private Use High Surrogate */ + [0xd8de, 0xd8de], /* Non Private Use High Surrogate */ + [0xd8df, 0xd8df], /* Non Private Use High Surrogate */ + [0xd8e0, 0xd8e0], /* Non Private Use High Surrogate */ + [0xd8e1, 0xd8e1], /* Non Private Use High Surrogate */ + [0xd8e2, 0xd8e2], /* Non Private Use High Surrogate */ + [0xd8e3, 0xd8e3], /* Non Private Use High Surrogate */ + [0xd8e4, 0xd8e4], /* Non Private Use High Surrogate */ + [0xd8e5, 0xd8e5], /* Non Private Use High Surrogate */ + [0xd8e6, 0xd8e6], /* Non Private Use High Surrogate */ + [0xd8e7, 0xd8e7], /* Non Private Use High Surrogate */ + [0xd8e8, 0xd8e8], /* Non Private Use High Surrogate */ + [0xd8e9, 0xd8e9], /* Non Private Use High Surrogate */ + [0xd8ea, 0xd8ea], /* Non Private Use High Surrogate */ + [0xd8eb, 0xd8eb], /* Non Private Use High Surrogate */ + [0xd8ec, 0xd8ec], /* Non Private Use High Surrogate */ + [0xd8ed, 0xd8ed], /* Non Private Use High Surrogate */ + [0xd8ee, 0xd8ee], /* Non Private Use High Surrogate */ + [0xd8ef, 0xd8ef], /* Non Private Use High Surrogate */ + [0xd8f0, 0xd8f0], /* Non Private Use High Surrogate */ + [0xd8f1, 0xd8f1], /* Non Private Use High Surrogate */ + [0xd8f2, 0xd8f2], /* Non Private Use High Surrogate */ + [0xd8f3, 0xd8f3], /* Non Private Use High Surrogate */ + [0xd8f4, 0xd8f4], /* Non Private Use High Surrogate */ + [0xd8f5, 0xd8f5], /* Non Private Use High Surrogate */ + [0xd8f6, 0xd8f6], /* Non Private Use High Surrogate */ + [0xd8f7, 0xd8f7], /* Non Private Use High Surrogate */ + [0xd8f8, 0xd8f8], /* Non Private Use High Surrogate */ + [0xd8f9, 0xd8f9], /* Non Private Use High Surrogate */ + [0xd8fa, 0xd8fa], /* Non Private Use High Surrogate */ + [0xd8fb, 0xd8fb], /* Non Private Use High Surrogate */ + [0xd8fc, 0xd8fc], /* Non Private Use High Surrogate */ + [0xd8fd, 0xd8fd], /* Non Private Use High Surrogate */ + [0xd8fe, 0xd8fe], /* Non Private Use High Surrogate */ + [0xd8ff, 0xd8ff], /* Non Private Use High Surrogate */ + [0xd900, 0xd900], /* Non Private Use High Surrogate */ + [0xd901, 0xd901], /* Non Private Use High Surrogate */ + [0xd902, 0xd902], /* Non Private Use High Surrogate */ + [0xd903, 0xd903], /* Non Private Use High Surrogate */ + [0xd904, 0xd904], /* Non Private Use High Surrogate */ + [0xd905, 0xd905], /* Non Private Use High Surrogate */ + [0xd906, 0xd906], /* Non Private Use High Surrogate */ + [0xd907, 0xd907], /* Non Private Use High Surrogate */ + [0xd908, 0xd908], /* Non Private Use High Surrogate */ + [0xd909, 0xd909], /* Non Private Use High Surrogate */ + [0xd90a, 0xd90a], /* Non Private Use High Surrogate */ + [0xd90b, 0xd90b], /* Non Private Use High Surrogate */ + [0xd90c, 0xd90c], /* Non Private Use High Surrogate */ + [0xd90d, 0xd90d], /* Non Private Use High Surrogate */ + [0xd90e, 0xd90e], /* Non Private Use High Surrogate */ + [0xd90f, 0xd90f], /* Non Private Use High Surrogate */ + [0xd910, 0xd910], /* Non Private Use High Surrogate */ + [0xd911, 0xd911], /* Non Private Use High Surrogate */ + [0xd912, 0xd912], /* Non Private Use High Surrogate */ + [0xd913, 0xd913], /* Non Private Use High Surrogate */ + [0xd914, 0xd914], /* Non Private Use High Surrogate */ + [0xd915, 0xd915], /* Non Private Use High Surrogate */ + [0xd916, 0xd916], /* Non Private Use High Surrogate */ + [0xd917, 0xd917], /* Non Private Use High Surrogate */ + [0xd918, 0xd918], /* Non Private Use High Surrogate */ + [0xd919, 0xd919], /* Non Private Use High Surrogate */ + [0xd91a, 0xd91a], /* Non Private Use High Surrogate */ + [0xd91b, 0xd91b], /* Non Private Use High Surrogate */ + [0xd91c, 0xd91c], /* Non Private Use High Surrogate */ + [0xd91d, 0xd91d], /* Non Private Use High Surrogate */ + [0xd91e, 0xd91e], /* Non Private Use High Surrogate */ + [0xd91f, 0xd91f], /* Non Private Use High Surrogate */ + [0xd920, 0xd920], /* Non Private Use High Surrogate */ + [0xd921, 0xd921], /* Non Private Use High Surrogate */ + [0xd922, 0xd922], /* Non Private Use High Surrogate */ + [0xd923, 0xd923], /* Non Private Use High Surrogate */ + [0xd924, 0xd924], /* Non Private Use High Surrogate */ + [0xd925, 0xd925], /* Non Private Use High Surrogate */ + [0xd926, 0xd926], /* Non Private Use High Surrogate */ + [0xd927, 0xd927], /* Non Private Use High Surrogate */ + [0xd928, 0xd928], /* Non Private Use High Surrogate */ + [0xd929, 0xd929], /* Non Private Use High Surrogate */ + [0xd92a, 0xd92a], /* Non Private Use High Surrogate */ + [0xd92b, 0xd92b], /* Non Private Use High Surrogate */ + [0xd92c, 0xd92c], /* Non Private Use High Surrogate */ + [0xd92d, 0xd92d], /* Non Private Use High Surrogate */ + [0xd92e, 0xd92e], /* Non Private Use High Surrogate */ + [0xd92f, 0xd92f], /* Non Private Use High Surrogate */ + [0xd930, 0xd930], /* Non Private Use High Surrogate */ + [0xd931, 0xd931], /* Non Private Use High Surrogate */ + [0xd932, 0xd932], /* Non Private Use High Surrogate */ + [0xd933, 0xd933], /* Non Private Use High Surrogate */ + [0xd934, 0xd934], /* Non Private Use High Surrogate */ + [0xd935, 0xd935], /* Non Private Use High Surrogate */ + [0xd936, 0xd936], /* Non Private Use High Surrogate */ + [0xd937, 0xd937], /* Non Private Use High Surrogate */ + [0xd938, 0xd938], /* Non Private Use High Surrogate */ + [0xd939, 0xd939], /* Non Private Use High Surrogate */ + [0xd93a, 0xd93a], /* Non Private Use High Surrogate */ + [0xd93b, 0xd93b], /* Non Private Use High Surrogate */ + [0xd93c, 0xd93c], /* Non Private Use High Surrogate */ + [0xd93d, 0xd93d], /* Non Private Use High Surrogate */ + [0xd93e, 0xd93e], /* Non Private Use High Surrogate */ + [0xd93f, 0xd93f], /* Non Private Use High Surrogate */ + [0xd940, 0xd940], /* Non Private Use High Surrogate */ + [0xd941, 0xd941], /* Non Private Use High Surrogate */ + [0xd942, 0xd942], /* Non Private Use High Surrogate */ + [0xd943, 0xd943], /* Non Private Use High Surrogate */ + [0xd944, 0xd944], /* Non Private Use High Surrogate */ + [0xd945, 0xd945], /* Non Private Use High Surrogate */ + [0xd946, 0xd946], /* Non Private Use High Surrogate */ + [0xd947, 0xd947], /* Non Private Use High Surrogate */ + [0xd948, 0xd948], /* Non Private Use High Surrogate */ + [0xd949, 0xd949], /* Non Private Use High Surrogate */ + [0xd94a, 0xd94a], /* Non Private Use High Surrogate */ + [0xd94b, 0xd94b], /* Non Private Use High Surrogate */ + [0xd94c, 0xd94c], /* Non Private Use High Surrogate */ + [0xd94d, 0xd94d], /* Non Private Use High Surrogate */ + [0xd94e, 0xd94e], /* Non Private Use High Surrogate */ + [0xd94f, 0xd94f], /* Non Private Use High Surrogate */ + [0xd950, 0xd950], /* Non Private Use High Surrogate */ + [0xd951, 0xd951], /* Non Private Use High Surrogate */ + [0xd952, 0xd952], /* Non Private Use High Surrogate */ + [0xd953, 0xd953], /* Non Private Use High Surrogate */ + [0xd954, 0xd954], /* Non Private Use High Surrogate */ + [0xd955, 0xd955], /* Non Private Use High Surrogate */ + [0xd956, 0xd956], /* Non Private Use High Surrogate */ + [0xd957, 0xd957], /* Non Private Use High Surrogate */ + [0xd958, 0xd958], /* Non Private Use High Surrogate */ + [0xd959, 0xd959], /* Non Private Use High Surrogate */ + [0xd95a, 0xd95a], /* Non Private Use High Surrogate */ + [0xd95b, 0xd95b], /* Non Private Use High Surrogate */ + [0xd95c, 0xd95c], /* Non Private Use High Surrogate */ + [0xd95d, 0xd95d], /* Non Private Use High Surrogate */ + [0xd95e, 0xd95e], /* Non Private Use High Surrogate */ + [0xd95f, 0xd95f], /* Non Private Use High Surrogate */ + [0xd960, 0xd960], /* Non Private Use High Surrogate */ + [0xd961, 0xd961], /* Non Private Use High Surrogate */ + [0xd962, 0xd962], /* Non Private Use High Surrogate */ + [0xd963, 0xd963], /* Non Private Use High Surrogate */ + [0xd964, 0xd964], /* Non Private Use High Surrogate */ + [0xd965, 0xd965], /* Non Private Use High Surrogate */ + [0xd966, 0xd966], /* Non Private Use High Surrogate */ + [0xd967, 0xd967], /* Non Private Use High Surrogate */ + [0xd968, 0xd968], /* Non Private Use High Surrogate */ + [0xd969, 0xd969], /* Non Private Use High Surrogate */ + [0xd96a, 0xd96a], /* Non Private Use High Surrogate */ + [0xd96b, 0xd96b], /* Non Private Use High Surrogate */ + [0xd96c, 0xd96c], /* Non Private Use High Surrogate */ + [0xd96d, 0xd96d], /* Non Private Use High Surrogate */ + [0xd96e, 0xd96e], /* Non Private Use High Surrogate */ + [0xd96f, 0xd96f], /* Non Private Use High Surrogate */ + [0xd970, 0xd970], /* Non Private Use High Surrogate */ + [0xd971, 0xd971], /* Non Private Use High Surrogate */ + [0xd972, 0xd972], /* Non Private Use High Surrogate */ + [0xd973, 0xd973], /* Non Private Use High Surrogate */ + [0xd974, 0xd974], /* Non Private Use High Surrogate */ + [0xd975, 0xd975], /* Non Private Use High Surrogate */ + [0xd976, 0xd976], /* Non Private Use High Surrogate */ + [0xd977, 0xd977], /* Non Private Use High Surrogate */ + [0xd978, 0xd978], /* Non Private Use High Surrogate */ + [0xd979, 0xd979], /* Non Private Use High Surrogate */ + [0xd97a, 0xd97a], /* Non Private Use High Surrogate */ + [0xd97b, 0xd97b], /* Non Private Use High Surrogate */ + [0xd97c, 0xd97c], /* Non Private Use High Surrogate */ + [0xd97d, 0xd97d], /* Non Private Use High Surrogate */ + [0xd97e, 0xd97e], /* Non Private Use High Surrogate */ + [0xd97f, 0xd97f], /* Non Private Use High Surrogate */ + [0xd980, 0xd980], /* Non Private Use High Surrogate */ + [0xd981, 0xd981], /* Non Private Use High Surrogate */ + [0xd982, 0xd982], /* Non Private Use High Surrogate */ + [0xd983, 0xd983], /* Non Private Use High Surrogate */ + [0xd984, 0xd984], /* Non Private Use High Surrogate */ + [0xd985, 0xd985], /* Non Private Use High Surrogate */ + [0xd986, 0xd986], /* Non Private Use High Surrogate */ + [0xd987, 0xd987], /* Non Private Use High Surrogate */ + [0xd988, 0xd988], /* Non Private Use High Surrogate */ + [0xd989, 0xd989], /* Non Private Use High Surrogate */ + [0xd98a, 0xd98a], /* Non Private Use High Surrogate */ + [0xd98b, 0xd98b], /* Non Private Use High Surrogate */ + [0xd98c, 0xd98c], /* Non Private Use High Surrogate */ + [0xd98d, 0xd98d], /* Non Private Use High Surrogate */ + [0xd98e, 0xd98e], /* Non Private Use High Surrogate */ + [0xd98f, 0xd98f], /* Non Private Use High Surrogate */ + [0xd990, 0xd990], /* Non Private Use High Surrogate */ + [0xd991, 0xd991], /* Non Private Use High Surrogate */ + [0xd992, 0xd992], /* Non Private Use High Surrogate */ + [0xd993, 0xd993], /* Non Private Use High Surrogate */ + [0xd994, 0xd994], /* Non Private Use High Surrogate */ + [0xd995, 0xd995], /* Non Private Use High Surrogate */ + [0xd996, 0xd996], /* Non Private Use High Surrogate */ + [0xd997, 0xd997], /* Non Private Use High Surrogate */ + [0xd998, 0xd998], /* Non Private Use High Surrogate */ + [0xd999, 0xd999], /* Non Private Use High Surrogate */ + [0xd99a, 0xd99a], /* Non Private Use High Surrogate */ + [0xd99b, 0xd99b], /* Non Private Use High Surrogate */ + [0xd99c, 0xd99c], /* Non Private Use High Surrogate */ + [0xd99d, 0xd99d], /* Non Private Use High Surrogate */ + [0xd99e, 0xd99e], /* Non Private Use High Surrogate */ + [0xd99f, 0xd99f], /* Non Private Use High Surrogate */ + [0xd9a0, 0xd9a0], /* Non Private Use High Surrogate */ + [0xd9a1, 0xd9a1], /* Non Private Use High Surrogate */ + [0xd9a2, 0xd9a2], /* Non Private Use High Surrogate */ + [0xd9a3, 0xd9a3], /* Non Private Use High Surrogate */ + [0xd9a4, 0xd9a4], /* Non Private Use High Surrogate */ + [0xd9a5, 0xd9a5], /* Non Private Use High Surrogate */ + [0xd9a6, 0xd9a6], /* Non Private Use High Surrogate */ + [0xd9a7, 0xd9a7], /* Non Private Use High Surrogate */ + [0xd9a8, 0xd9a8], /* Non Private Use High Surrogate */ + [0xd9a9, 0xd9a9], /* Non Private Use High Surrogate */ + [0xd9aa, 0xd9aa], /* Non Private Use High Surrogate */ + [0xd9ab, 0xd9ab], /* Non Private Use High Surrogate */ + [0xd9ac, 0xd9ac], /* Non Private Use High Surrogate */ + [0xd9ad, 0xd9ad], /* Non Private Use High Surrogate */ + [0xd9ae, 0xd9ae], /* Non Private Use High Surrogate */ + [0xd9af, 0xd9af], /* Non Private Use High Surrogate */ + [0xd9b0, 0xd9b0], /* Non Private Use High Surrogate */ + [0xd9b1, 0xd9b1], /* Non Private Use High Surrogate */ + [0xd9b2, 0xd9b2], /* Non Private Use High Surrogate */ + [0xd9b3, 0xd9b3], /* Non Private Use High Surrogate */ + [0xd9b4, 0xd9b4], /* Non Private Use High Surrogate */ + [0xd9b5, 0xd9b5], /* Non Private Use High Surrogate */ + [0xd9b6, 0xd9b6], /* Non Private Use High Surrogate */ + [0xd9b7, 0xd9b7], /* Non Private Use High Surrogate */ + [0xd9b8, 0xd9b8], /* Non Private Use High Surrogate */ + [0xd9b9, 0xd9b9], /* Non Private Use High Surrogate */ + [0xd9ba, 0xd9ba], /* Non Private Use High Surrogate */ + [0xd9bb, 0xd9bb], /* Non Private Use High Surrogate */ + [0xd9bc, 0xd9bc], /* Non Private Use High Surrogate */ + [0xd9bd, 0xd9bd], /* Non Private Use High Surrogate */ + [0xd9be, 0xd9be], /* Non Private Use High Surrogate */ + [0xd9bf, 0xd9bf], /* Non Private Use High Surrogate */ + [0xd9c0, 0xd9c0], /* Non Private Use High Surrogate */ + [0xd9c1, 0xd9c1], /* Non Private Use High Surrogate */ + [0xd9c2, 0xd9c2], /* Non Private Use High Surrogate */ + [0xd9c3, 0xd9c3], /* Non Private Use High Surrogate */ + [0xd9c4, 0xd9c4], /* Non Private Use High Surrogate */ + [0xd9c5, 0xd9c5], /* Non Private Use High Surrogate */ + [0xd9c6, 0xd9c6], /* Non Private Use High Surrogate */ + [0xd9c7, 0xd9c7], /* Non Private Use High Surrogate */ + [0xd9c8, 0xd9c8], /* Non Private Use High Surrogate */ + [0xd9c9, 0xd9c9], /* Non Private Use High Surrogate */ + [0xd9ca, 0xd9ca], /* Non Private Use High Surrogate */ + [0xd9cb, 0xd9cb], /* Non Private Use High Surrogate */ + [0xd9cc, 0xd9cc], /* Non Private Use High Surrogate */ + [0xd9cd, 0xd9cd], /* Non Private Use High Surrogate */ + [0xd9ce, 0xd9ce], /* Non Private Use High Surrogate */ + [0xd9cf, 0xd9cf], /* Non Private Use High Surrogate */ + [0xd9d0, 0xd9d0], /* Non Private Use High Surrogate */ + [0xd9d1, 0xd9d1], /* Non Private Use High Surrogate */ + [0xd9d2, 0xd9d2], /* Non Private Use High Surrogate */ + [0xd9d3, 0xd9d3], /* Non Private Use High Surrogate */ + [0xd9d4, 0xd9d4], /* Non Private Use High Surrogate */ + [0xd9d5, 0xd9d5], /* Non Private Use High Surrogate */ + [0xd9d6, 0xd9d6], /* Non Private Use High Surrogate */ + [0xd9d7, 0xd9d7], /* Non Private Use High Surrogate */ + [0xd9d8, 0xd9d8], /* Non Private Use High Surrogate */ + [0xd9d9, 0xd9d9], /* Non Private Use High Surrogate */ + [0xd9da, 0xd9da], /* Non Private Use High Surrogate */ + [0xd9db, 0xd9db], /* Non Private Use High Surrogate */ + [0xd9dc, 0xd9dc], /* Non Private Use High Surrogate */ + [0xd9dd, 0xd9dd], /* Non Private Use High Surrogate */ + [0xd9de, 0xd9de], /* Non Private Use High Surrogate */ + [0xd9df, 0xd9df], /* Non Private Use High Surrogate */ + [0xd9e0, 0xd9e0], /* Non Private Use High Surrogate */ + [0xd9e1, 0xd9e1], /* Non Private Use High Surrogate */ + [0xd9e2, 0xd9e2], /* Non Private Use High Surrogate */ + [0xd9e3, 0xd9e3], /* Non Private Use High Surrogate */ + [0xd9e4, 0xd9e4], /* Non Private Use High Surrogate */ + [0xd9e5, 0xd9e5], /* Non Private Use High Surrogate */ + [0xd9e6, 0xd9e6], /* Non Private Use High Surrogate */ + [0xd9e7, 0xd9e7], /* Non Private Use High Surrogate */ + [0xd9e8, 0xd9e8], /* Non Private Use High Surrogate */ + [0xd9e9, 0xd9e9], /* Non Private Use High Surrogate */ + [0xd9ea, 0xd9ea], /* Non Private Use High Surrogate */ + [0xd9eb, 0xd9eb], /* Non Private Use High Surrogate */ + [0xd9ec, 0xd9ec], /* Non Private Use High Surrogate */ + [0xd9ed, 0xd9ed], /* Non Private Use High Surrogate */ + [0xd9ee, 0xd9ee], /* Non Private Use High Surrogate */ + [0xd9ef, 0xd9ef], /* Non Private Use High Surrogate */ + [0xd9f0, 0xd9f0], /* Non Private Use High Surrogate */ + [0xd9f1, 0xd9f1], /* Non Private Use High Surrogate */ + [0xd9f2, 0xd9f2], /* Non Private Use High Surrogate */ + [0xd9f3, 0xd9f3], /* Non Private Use High Surrogate */ + [0xd9f4, 0xd9f4], /* Non Private Use High Surrogate */ + [0xd9f5, 0xd9f5], /* Non Private Use High Surrogate */ + [0xd9f6, 0xd9f6], /* Non Private Use High Surrogate */ + [0xd9f7, 0xd9f7], /* Non Private Use High Surrogate */ + [0xd9f8, 0xd9f8], /* Non Private Use High Surrogate */ + [0xd9f9, 0xd9f9], /* Non Private Use High Surrogate */ + [0xd9fa, 0xd9fa], /* Non Private Use High Surrogate */ + [0xd9fb, 0xd9fb], /* Non Private Use High Surrogate */ + [0xd9fc, 0xd9fc], /* Non Private Use High Surrogate */ + [0xd9fd, 0xd9fd], /* Non Private Use High Surrogate */ + [0xd9fe, 0xd9fe], /* Non Private Use High Surrogate */ + [0xd9ff, 0xd9ff], /* Non Private Use High Surrogate */ + [0xda00, 0xda00], /* Non Private Use High Surrogate */ + [0xda01, 0xda01], /* Non Private Use High Surrogate */ + [0xda02, 0xda02], /* Non Private Use High Surrogate */ + [0xda03, 0xda03], /* Non Private Use High Surrogate */ + [0xda04, 0xda04], /* Non Private Use High Surrogate */ + [0xda05, 0xda05], /* Non Private Use High Surrogate */ + [0xda06, 0xda06], /* Non Private Use High Surrogate */ + [0xda07, 0xda07], /* Non Private Use High Surrogate */ + [0xda08, 0xda08], /* Non Private Use High Surrogate */ + [0xda09, 0xda09], /* Non Private Use High Surrogate */ + [0xda0a, 0xda0a], /* Non Private Use High Surrogate */ + [0xda0b, 0xda0b], /* Non Private Use High Surrogate */ + [0xda0c, 0xda0c], /* Non Private Use High Surrogate */ + [0xda0d, 0xda0d], /* Non Private Use High Surrogate */ + [0xda0e, 0xda0e], /* Non Private Use High Surrogate */ + [0xda0f, 0xda0f], /* Non Private Use High Surrogate */ + [0xda10, 0xda10], /* Non Private Use High Surrogate */ + [0xda11, 0xda11], /* Non Private Use High Surrogate */ + [0xda12, 0xda12], /* Non Private Use High Surrogate */ + [0xda13, 0xda13], /* Non Private Use High Surrogate */ + [0xda14, 0xda14], /* Non Private Use High Surrogate */ + [0xda15, 0xda15], /* Non Private Use High Surrogate */ + [0xda16, 0xda16], /* Non Private Use High Surrogate */ + [0xda17, 0xda17], /* Non Private Use High Surrogate */ + [0xda18, 0xda18], /* Non Private Use High Surrogate */ + [0xda19, 0xda19], /* Non Private Use High Surrogate */ + [0xda1a, 0xda1a], /* Non Private Use High Surrogate */ + [0xda1b, 0xda1b], /* Non Private Use High Surrogate */ + [0xda1c, 0xda1c], /* Non Private Use High Surrogate */ + [0xda1d, 0xda1d], /* Non Private Use High Surrogate */ + [0xda1e, 0xda1e], /* Non Private Use High Surrogate */ + [0xda1f, 0xda1f], /* Non Private Use High Surrogate */ + [0xda20, 0xda20], /* Non Private Use High Surrogate */ + [0xda21, 0xda21], /* Non Private Use High Surrogate */ + [0xda22, 0xda22], /* Non Private Use High Surrogate */ + [0xda23, 0xda23], /* Non Private Use High Surrogate */ + [0xda24, 0xda24], /* Non Private Use High Surrogate */ + [0xda25, 0xda25], /* Non Private Use High Surrogate */ + [0xda26, 0xda26], /* Non Private Use High Surrogate */ + [0xda27, 0xda27], /* Non Private Use High Surrogate */ + [0xda28, 0xda28], /* Non Private Use High Surrogate */ + [0xda29, 0xda29], /* Non Private Use High Surrogate */ + [0xda2a, 0xda2a], /* Non Private Use High Surrogate */ + [0xda2b, 0xda2b], /* Non Private Use High Surrogate */ + [0xda2c, 0xda2c], /* Non Private Use High Surrogate */ + [0xda2d, 0xda2d], /* Non Private Use High Surrogate */ + [0xda2e, 0xda2e], /* Non Private Use High Surrogate */ + [0xda2f, 0xda2f], /* Non Private Use High Surrogate */ + [0xda30, 0xda30], /* Non Private Use High Surrogate */ + [0xda31, 0xda31], /* Non Private Use High Surrogate */ + [0xda32, 0xda32], /* Non Private Use High Surrogate */ + [0xda33, 0xda33], /* Non Private Use High Surrogate */ + [0xda34, 0xda34], /* Non Private Use High Surrogate */ + [0xda35, 0xda35], /* Non Private Use High Surrogate */ + [0xda36, 0xda36], /* Non Private Use High Surrogate */ + [0xda37, 0xda37], /* Non Private Use High Surrogate */ + [0xda38, 0xda38], /* Non Private Use High Surrogate */ + [0xda39, 0xda39], /* Non Private Use High Surrogate */ + [0xda3a, 0xda3a], /* Non Private Use High Surrogate */ + [0xda3b, 0xda3b], /* Non Private Use High Surrogate */ + [0xda3c, 0xda3c], /* Non Private Use High Surrogate */ + [0xda3d, 0xda3d], /* Non Private Use High Surrogate */ + [0xda3e, 0xda3e], /* Non Private Use High Surrogate */ + [0xda3f, 0xda3f], /* Non Private Use High Surrogate */ + [0xda40, 0xda40], /* Non Private Use High Surrogate */ + [0xda41, 0xda41], /* Non Private Use High Surrogate */ + [0xda42, 0xda42], /* Non Private Use High Surrogate */ + [0xda43, 0xda43], /* Non Private Use High Surrogate */ + [0xda44, 0xda44], /* Non Private Use High Surrogate */ + [0xda45, 0xda45], /* Non Private Use High Surrogate */ + [0xda46, 0xda46], /* Non Private Use High Surrogate */ + [0xda47, 0xda47], /* Non Private Use High Surrogate */ + [0xda48, 0xda48], /* Non Private Use High Surrogate */ + [0xda49, 0xda49], /* Non Private Use High Surrogate */ + [0xda4a, 0xda4a], /* Non Private Use High Surrogate */ + [0xda4b, 0xda4b], /* Non Private Use High Surrogate */ + [0xda4c, 0xda4c], /* Non Private Use High Surrogate */ + [0xda4d, 0xda4d], /* Non Private Use High Surrogate */ + [0xda4e, 0xda4e], /* Non Private Use High Surrogate */ + [0xda4f, 0xda4f], /* Non Private Use High Surrogate */ + [0xda50, 0xda50], /* Non Private Use High Surrogate */ + [0xda51, 0xda51], /* Non Private Use High Surrogate */ + [0xda52, 0xda52], /* Non Private Use High Surrogate */ + [0xda53, 0xda53], /* Non Private Use High Surrogate */ + [0xda54, 0xda54], /* Non Private Use High Surrogate */ + [0xda55, 0xda55], /* Non Private Use High Surrogate */ + [0xda56, 0xda56], /* Non Private Use High Surrogate */ + [0xda57, 0xda57], /* Non Private Use High Surrogate */ + [0xda58, 0xda58], /* Non Private Use High Surrogate */ + [0xda59, 0xda59], /* Non Private Use High Surrogate */ + [0xda5a, 0xda5a], /* Non Private Use High Surrogate */ + [0xda5b, 0xda5b], /* Non Private Use High Surrogate */ + [0xda5c, 0xda5c], /* Non Private Use High Surrogate */ + [0xda5d, 0xda5d], /* Non Private Use High Surrogate */ + [0xda5e, 0xda5e], /* Non Private Use High Surrogate */ + [0xda5f, 0xda5f], /* Non Private Use High Surrogate */ + [0xda60, 0xda60], /* Non Private Use High Surrogate */ + [0xda61, 0xda61], /* Non Private Use High Surrogate */ + [0xda62, 0xda62], /* Non Private Use High Surrogate */ + [0xda63, 0xda63], /* Non Private Use High Surrogate */ + [0xda64, 0xda64], /* Non Private Use High Surrogate */ + [0xda65, 0xda65], /* Non Private Use High Surrogate */ + [0xda66, 0xda66], /* Non Private Use High Surrogate */ + [0xda67, 0xda67], /* Non Private Use High Surrogate */ + [0xda68, 0xda68], /* Non Private Use High Surrogate */ + [0xda69, 0xda69], /* Non Private Use High Surrogate */ + [0xda6a, 0xda6a], /* Non Private Use High Surrogate */ + [0xda6b, 0xda6b], /* Non Private Use High Surrogate */ + [0xda6c, 0xda6c], /* Non Private Use High Surrogate */ + [0xda6d, 0xda6d], /* Non Private Use High Surrogate */ + [0xda6e, 0xda6e], /* Non Private Use High Surrogate */ + [0xda6f, 0xda6f], /* Non Private Use High Surrogate */ + [0xda70, 0xda70], /* Non Private Use High Surrogate */ + [0xda71, 0xda71], /* Non Private Use High Surrogate */ + [0xda72, 0xda72], /* Non Private Use High Surrogate */ + [0xda73, 0xda73], /* Non Private Use High Surrogate */ + [0xda74, 0xda74], /* Non Private Use High Surrogate */ + [0xda75, 0xda75], /* Non Private Use High Surrogate */ + [0xda76, 0xda76], /* Non Private Use High Surrogate */ + [0xda77, 0xda77], /* Non Private Use High Surrogate */ + [0xda78, 0xda78], /* Non Private Use High Surrogate */ + [0xda79, 0xda79], /* Non Private Use High Surrogate */ + [0xda7a, 0xda7a], /* Non Private Use High Surrogate */ + [0xda7b, 0xda7b], /* Non Private Use High Surrogate */ + [0xda7c, 0xda7c], /* Non Private Use High Surrogate */ + [0xda7d, 0xda7d], /* Non Private Use High Surrogate */ + [0xda7e, 0xda7e], /* Non Private Use High Surrogate */ + [0xda7f, 0xda7f], /* Non Private Use High Surrogate */ + [0xda80, 0xda80], /* Non Private Use High Surrogate */ + [0xda81, 0xda81], /* Non Private Use High Surrogate */ + [0xda82, 0xda82], /* Non Private Use High Surrogate */ + [0xda83, 0xda83], /* Non Private Use High Surrogate */ + [0xda84, 0xda84], /* Non Private Use High Surrogate */ + [0xda85, 0xda85], /* Non Private Use High Surrogate */ + [0xda86, 0xda86], /* Non Private Use High Surrogate */ + [0xda87, 0xda87], /* Non Private Use High Surrogate */ + [0xda88, 0xda88], /* Non Private Use High Surrogate */ + [0xda89, 0xda89], /* Non Private Use High Surrogate */ + [0xda8a, 0xda8a], /* Non Private Use High Surrogate */ + [0xda8b, 0xda8b], /* Non Private Use High Surrogate */ + [0xda8c, 0xda8c], /* Non Private Use High Surrogate */ + [0xda8d, 0xda8d], /* Non Private Use High Surrogate */ + [0xda8e, 0xda8e], /* Non Private Use High Surrogate */ + [0xda8f, 0xda8f], /* Non Private Use High Surrogate */ + [0xda90, 0xda90], /* Non Private Use High Surrogate */ + [0xda91, 0xda91], /* Non Private Use High Surrogate */ + [0xda92, 0xda92], /* Non Private Use High Surrogate */ + [0xda93, 0xda93], /* Non Private Use High Surrogate */ + [0xda94, 0xda94], /* Non Private Use High Surrogate */ + [0xda95, 0xda95], /* Non Private Use High Surrogate */ + [0xda96, 0xda96], /* Non Private Use High Surrogate */ + [0xda97, 0xda97], /* Non Private Use High Surrogate */ + [0xda98, 0xda98], /* Non Private Use High Surrogate */ + [0xda99, 0xda99], /* Non Private Use High Surrogate */ + [0xda9a, 0xda9a], /* Non Private Use High Surrogate */ + [0xda9b, 0xda9b], /* Non Private Use High Surrogate */ + [0xda9c, 0xda9c], /* Non Private Use High Surrogate */ + [0xda9d, 0xda9d], /* Non Private Use High Surrogate */ + [0xda9e, 0xda9e], /* Non Private Use High Surrogate */ + [0xda9f, 0xda9f], /* Non Private Use High Surrogate */ + [0xdaa0, 0xdaa0], /* Non Private Use High Surrogate */ + [0xdaa1, 0xdaa1], /* Non Private Use High Surrogate */ + [0xdaa2, 0xdaa2], /* Non Private Use High Surrogate */ + [0xdaa3, 0xdaa3], /* Non Private Use High Surrogate */ + [0xdaa4, 0xdaa4], /* Non Private Use High Surrogate */ + [0xdaa5, 0xdaa5], /* Non Private Use High Surrogate */ + [0xdaa6, 0xdaa6], /* Non Private Use High Surrogate */ + [0xdaa7, 0xdaa7], /* Non Private Use High Surrogate */ + [0xdaa8, 0xdaa8], /* Non Private Use High Surrogate */ + [0xdaa9, 0xdaa9], /* Non Private Use High Surrogate */ + [0xdaaa, 0xdaaa], /* Non Private Use High Surrogate */ + [0xdaab, 0xdaab], /* Non Private Use High Surrogate */ + [0xdaac, 0xdaac], /* Non Private Use High Surrogate */ + [0xdaad, 0xdaad], /* Non Private Use High Surrogate */ + [0xdaae, 0xdaae], /* Non Private Use High Surrogate */ + [0xdaaf, 0xdaaf], /* Non Private Use High Surrogate */ + [0xdab0, 0xdab0], /* Non Private Use High Surrogate */ + [0xdab1, 0xdab1], /* Non Private Use High Surrogate */ + [0xdab2, 0xdab2], /* Non Private Use High Surrogate */ + [0xdab3, 0xdab3], /* Non Private Use High Surrogate */ + [0xdab4, 0xdab4], /* Non Private Use High Surrogate */ + [0xdab5, 0xdab5], /* Non Private Use High Surrogate */ + [0xdab6, 0xdab6], /* Non Private Use High Surrogate */ + [0xdab7, 0xdab7], /* Non Private Use High Surrogate */ + [0xdab8, 0xdab8], /* Non Private Use High Surrogate */ + [0xdab9, 0xdab9], /* Non Private Use High Surrogate */ + [0xdaba, 0xdaba], /* Non Private Use High Surrogate */ + [0xdabb, 0xdabb], /* Non Private Use High Surrogate */ + [0xdabc, 0xdabc], /* Non Private Use High Surrogate */ + [0xdabd, 0xdabd], /* Non Private Use High Surrogate */ + [0xdabe, 0xdabe], /* Non Private Use High Surrogate */ + [0xdabf, 0xdabf], /* Non Private Use High Surrogate */ + [0xdac0, 0xdac0], /* Non Private Use High Surrogate */ + [0xdac1, 0xdac1], /* Non Private Use High Surrogate */ + [0xdac2, 0xdac2], /* Non Private Use High Surrogate */ + [0xdac3, 0xdac3], /* Non Private Use High Surrogate */ + [0xdac4, 0xdac4], /* Non Private Use High Surrogate */ + [0xdac5, 0xdac5], /* Non Private Use High Surrogate */ + [0xdac6, 0xdac6], /* Non Private Use High Surrogate */ + [0xdac7, 0xdac7], /* Non Private Use High Surrogate */ + [0xdac8, 0xdac8], /* Non Private Use High Surrogate */ + [0xdac9, 0xdac9], /* Non Private Use High Surrogate */ + [0xdaca, 0xdaca], /* Non Private Use High Surrogate */ + [0xdacb, 0xdacb], /* Non Private Use High Surrogate */ + [0xdacc, 0xdacc], /* Non Private Use High Surrogate */ + [0xdacd, 0xdacd], /* Non Private Use High Surrogate */ + [0xdace, 0xdace], /* Non Private Use High Surrogate */ + [0xdacf, 0xdacf], /* Non Private Use High Surrogate */ + [0xdad0, 0xdad0], /* Non Private Use High Surrogate */ + [0xdad1, 0xdad1], /* Non Private Use High Surrogate */ + [0xdad2, 0xdad2], /* Non Private Use High Surrogate */ + [0xdad3, 0xdad3], /* Non Private Use High Surrogate */ + [0xdad4, 0xdad4], /* Non Private Use High Surrogate */ + [0xdad5, 0xdad5], /* Non Private Use High Surrogate */ + [0xdad6, 0xdad6], /* Non Private Use High Surrogate */ + [0xdad7, 0xdad7], /* Non Private Use High Surrogate */ + [0xdad8, 0xdad8], /* Non Private Use High Surrogate */ + [0xdad9, 0xdad9], /* Non Private Use High Surrogate */ + [0xdada, 0xdada], /* Non Private Use High Surrogate */ + [0xdadb, 0xdadb], /* Non Private Use High Surrogate */ + [0xdadc, 0xdadc], /* Non Private Use High Surrogate */ + [0xdadd, 0xdadd], /* Non Private Use High Surrogate */ + [0xdade, 0xdade], /* Non Private Use High Surrogate */ + [0xdadf, 0xdadf], /* Non Private Use High Surrogate */ + [0xdae0, 0xdae0], /* Non Private Use High Surrogate */ + [0xdae1, 0xdae1], /* Non Private Use High Surrogate */ + [0xdae2, 0xdae2], /* Non Private Use High Surrogate */ + [0xdae3, 0xdae3], /* Non Private Use High Surrogate */ + [0xdae4, 0xdae4], /* Non Private Use High Surrogate */ + [0xdae5, 0xdae5], /* Non Private Use High Surrogate */ + [0xdae6, 0xdae6], /* Non Private Use High Surrogate */ + [0xdae7, 0xdae7], /* Non Private Use High Surrogate */ + [0xdae8, 0xdae8], /* Non Private Use High Surrogate */ + [0xdae9, 0xdae9], /* Non Private Use High Surrogate */ + [0xdaea, 0xdaea], /* Non Private Use High Surrogate */ + [0xdaeb, 0xdaeb], /* Non Private Use High Surrogate */ + [0xdaec, 0xdaec], /* Non Private Use High Surrogate */ + [0xdaed, 0xdaed], /* Non Private Use High Surrogate */ + [0xdaee, 0xdaee], /* Non Private Use High Surrogate */ + [0xdaef, 0xdaef], /* Non Private Use High Surrogate */ + [0xdaf0, 0xdaf0], /* Non Private Use High Surrogate */ + [0xdaf1, 0xdaf1], /* Non Private Use High Surrogate */ + [0xdaf2, 0xdaf2], /* Non Private Use High Surrogate */ + [0xdaf3, 0xdaf3], /* Non Private Use High Surrogate */ + [0xdaf4, 0xdaf4], /* Non Private Use High Surrogate */ + [0xdaf5, 0xdaf5], /* Non Private Use High Surrogate */ + [0xdaf6, 0xdaf6], /* Non Private Use High Surrogate */ + [0xdaf7, 0xdaf7], /* Non Private Use High Surrogate */ + [0xdaf8, 0xdaf8], /* Non Private Use High Surrogate */ + [0xdaf9, 0xdaf9], /* Non Private Use High Surrogate */ + [0xdafa, 0xdafa], /* Non Private Use High Surrogate */ + [0xdafb, 0xdafb], /* Non Private Use High Surrogate */ + [0xdafc, 0xdafc], /* Non Private Use High Surrogate */ + [0xdafd, 0xdafd], /* Non Private Use High Surrogate */ + [0xdafe, 0xdafe], /* Non Private Use High Surrogate */ + [0xdaff, 0xdaff], /* Non Private Use High Surrogate */ + [0xdb00, 0xdb00], /* Non Private Use High Surrogate */ + [0xdb01, 0xdb01], /* Non Private Use High Surrogate */ + [0xdb02, 0xdb02], /* Non Private Use High Surrogate */ + [0xdb03, 0xdb03], /* Non Private Use High Surrogate */ + [0xdb04, 0xdb04], /* Non Private Use High Surrogate */ + [0xdb05, 0xdb05], /* Non Private Use High Surrogate */ + [0xdb06, 0xdb06], /* Non Private Use High Surrogate */ + [0xdb07, 0xdb07], /* Non Private Use High Surrogate */ + [0xdb08, 0xdb08], /* Non Private Use High Surrogate */ + [0xdb09, 0xdb09], /* Non Private Use High Surrogate */ + [0xdb0a, 0xdb0a], /* Non Private Use High Surrogate */ + [0xdb0b, 0xdb0b], /* Non Private Use High Surrogate */ + [0xdb0c, 0xdb0c], /* Non Private Use High Surrogate */ + [0xdb0d, 0xdb0d], /* Non Private Use High Surrogate */ + [0xdb0e, 0xdb0e], /* Non Private Use High Surrogate */ + [0xdb0f, 0xdb0f], /* Non Private Use High Surrogate */ + [0xdb10, 0xdb10], /* Non Private Use High Surrogate */ + [0xdb11, 0xdb11], /* Non Private Use High Surrogate */ + [0xdb12, 0xdb12], /* Non Private Use High Surrogate */ + [0xdb13, 0xdb13], /* Non Private Use High Surrogate */ + [0xdb14, 0xdb14], /* Non Private Use High Surrogate */ + [0xdb15, 0xdb15], /* Non Private Use High Surrogate */ + [0xdb16, 0xdb16], /* Non Private Use High Surrogate */ + [0xdb17, 0xdb17], /* Non Private Use High Surrogate */ + [0xdb18, 0xdb18], /* Non Private Use High Surrogate */ + [0xdb19, 0xdb19], /* Non Private Use High Surrogate */ + [0xdb1a, 0xdb1a], /* Non Private Use High Surrogate */ + [0xdb1b, 0xdb1b], /* Non Private Use High Surrogate */ + [0xdb1c, 0xdb1c], /* Non Private Use High Surrogate */ + [0xdb1d, 0xdb1d], /* Non Private Use High Surrogate */ + [0xdb1e, 0xdb1e], /* Non Private Use High Surrogate */ + [0xdb1f, 0xdb1f], /* Non Private Use High Surrogate */ + [0xdb20, 0xdb20], /* Non Private Use High Surrogate */ + [0xdb21, 0xdb21], /* Non Private Use High Surrogate */ + [0xdb22, 0xdb22], /* Non Private Use High Surrogate */ + [0xdb23, 0xdb23], /* Non Private Use High Surrogate */ + [0xdb24, 0xdb24], /* Non Private Use High Surrogate */ + [0xdb25, 0xdb25], /* Non Private Use High Surrogate */ + [0xdb26, 0xdb26], /* Non Private Use High Surrogate */ + [0xdb27, 0xdb27], /* Non Private Use High Surrogate */ + [0xdb28, 0xdb28], /* Non Private Use High Surrogate */ + [0xdb29, 0xdb29], /* Non Private Use High Surrogate */ + [0xdb2a, 0xdb2a], /* Non Private Use High Surrogate */ + [0xdb2b, 0xdb2b], /* Non Private Use High Surrogate */ + [0xdb2c, 0xdb2c], /* Non Private Use High Surrogate */ + [0xdb2d, 0xdb2d], /* Non Private Use High Surrogate */ + [0xdb2e, 0xdb2e], /* Non Private Use High Surrogate */ + [0xdb2f, 0xdb2f], /* Non Private Use High Surrogate */ + [0xdb30, 0xdb30], /* Non Private Use High Surrogate */ + [0xdb31, 0xdb31], /* Non Private Use High Surrogate */ + [0xdb32, 0xdb32], /* Non Private Use High Surrogate */ + [0xdb33, 0xdb33], /* Non Private Use High Surrogate */ + [0xdb34, 0xdb34], /* Non Private Use High Surrogate */ + [0xdb35, 0xdb35], /* Non Private Use High Surrogate */ + [0xdb36, 0xdb36], /* Non Private Use High Surrogate */ + [0xdb37, 0xdb37], /* Non Private Use High Surrogate */ + [0xdb38, 0xdb38], /* Non Private Use High Surrogate */ + [0xdb39, 0xdb39], /* Non Private Use High Surrogate */ + [0xdb3a, 0xdb3a], /* Non Private Use High Surrogate */ + [0xdb3b, 0xdb3b], /* Non Private Use High Surrogate */ + [0xdb3c, 0xdb3c], /* Non Private Use High Surrogate */ + [0xdb3d, 0xdb3d], /* Non Private Use High Surrogate */ + [0xdb3e, 0xdb3e], /* Non Private Use High Surrogate */ + [0xdb3f, 0xdb3f], /* Non Private Use High Surrogate */ + [0xdb40, 0xdb40], /* Non Private Use High Surrogate */ + [0xdb41, 0xdb41], /* Non Private Use High Surrogate */ + [0xdb42, 0xdb42], /* Non Private Use High Surrogate */ + [0xdb43, 0xdb43], /* Non Private Use High Surrogate */ + [0xdb44, 0xdb44], /* Non Private Use High Surrogate */ + [0xdb45, 0xdb45], /* Non Private Use High Surrogate */ + [0xdb46, 0xdb46], /* Non Private Use High Surrogate */ + [0xdb47, 0xdb47], /* Non Private Use High Surrogate */ + [0xdb48, 0xdb48], /* Non Private Use High Surrogate */ + [0xdb49, 0xdb49], /* Non Private Use High Surrogate */ + [0xdb4a, 0xdb4a], /* Non Private Use High Surrogate */ + [0xdb4b, 0xdb4b], /* Non Private Use High Surrogate */ + [0xdb4c, 0xdb4c], /* Non Private Use High Surrogate */ + [0xdb4d, 0xdb4d], /* Non Private Use High Surrogate */ + [0xdb4e, 0xdb4e], /* Non Private Use High Surrogate */ + [0xdb4f, 0xdb4f], /* Non Private Use High Surrogate */ + [0xdb50, 0xdb50], /* Non Private Use High Surrogate */ + [0xdb51, 0xdb51], /* Non Private Use High Surrogate */ + [0xdb52, 0xdb52], /* Non Private Use High Surrogate */ + [0xdb53, 0xdb53], /* Non Private Use High Surrogate */ + [0xdb54, 0xdb54], /* Non Private Use High Surrogate */ + [0xdb55, 0xdb55], /* Non Private Use High Surrogate */ + [0xdb56, 0xdb56], /* Non Private Use High Surrogate */ + [0xdb57, 0xdb57], /* Non Private Use High Surrogate */ + [0xdb58, 0xdb58], /* Non Private Use High Surrogate */ + [0xdb59, 0xdb59], /* Non Private Use High Surrogate */ + [0xdb5a, 0xdb5a], /* Non Private Use High Surrogate */ + [0xdb5b, 0xdb5b], /* Non Private Use High Surrogate */ + [0xdb5c, 0xdb5c], /* Non Private Use High Surrogate */ + [0xdb5d, 0xdb5d], /* Non Private Use High Surrogate */ + [0xdb5e, 0xdb5e], /* Non Private Use High Surrogate */ + [0xdb5f, 0xdb5f], /* Non Private Use High Surrogate */ + [0xdb60, 0xdb60], /* Non Private Use High Surrogate */ + [0xdb61, 0xdb61], /* Non Private Use High Surrogate */ + [0xdb62, 0xdb62], /* Non Private Use High Surrogate */ + [0xdb63, 0xdb63], /* Non Private Use High Surrogate */ + [0xdb64, 0xdb64], /* Non Private Use High Surrogate */ + [0xdb65, 0xdb65], /* Non Private Use High Surrogate */ + [0xdb66, 0xdb66], /* Non Private Use High Surrogate */ + [0xdb67, 0xdb67], /* Non Private Use High Surrogate */ + [0xdb68, 0xdb68], /* Non Private Use High Surrogate */ + [0xdb69, 0xdb69], /* Non Private Use High Surrogate */ + [0xdb6a, 0xdb6a], /* Non Private Use High Surrogate */ + [0xdb6b, 0xdb6b], /* Non Private Use High Surrogate */ + [0xdb6c, 0xdb6c], /* Non Private Use High Surrogate */ + [0xdb6d, 0xdb6d], /* Non Private Use High Surrogate */ + [0xdb6e, 0xdb6e], /* Non Private Use High Surrogate */ + [0xdb6f, 0xdb6f], /* Non Private Use High Surrogate */ + [0xdb70, 0xdb70], /* Non Private Use High Surrogate */ + [0xdb71, 0xdb71], /* Non Private Use High Surrogate */ + [0xdb72, 0xdb72], /* Non Private Use High Surrogate */ + [0xdb73, 0xdb73], /* Non Private Use High Surrogate */ + [0xdb74, 0xdb74], /* Non Private Use High Surrogate */ + [0xdb75, 0xdb75], /* Non Private Use High Surrogate */ + [0xdb76, 0xdb76], /* Non Private Use High Surrogate */ + [0xdb77, 0xdb77], /* Non Private Use High Surrogate */ + [0xdb78, 0xdb78], /* Non Private Use High Surrogate */ + [0xdb79, 0xdb79], /* Non Private Use High Surrogate */ + [0xdb7a, 0xdb7a], /* Non Private Use High Surrogate */ + [0xdb7b, 0xdb7b], /* Non Private Use High Surrogate */ + [0xdb7c, 0xdb7c], /* Non Private Use High Surrogate */ + [0xdb7d, 0xdb7d], /* Non Private Use High Surrogate */ + [0xdb7e, 0xdb7e], /* Non Private Use High Surrogate */ + [0xdb7f, 0xdb7f], /* Non Private Use High Surrogate */ + [0xdb80, 0xdb80], /* Private Use High Surrogate */ + [0xdb81, 0xdb81], /* Private Use High Surrogate */ + [0xdb82, 0xdb82], /* Private Use High Surrogate */ + [0xdb83, 0xdb83], /* Private Use High Surrogate */ + [0xdb84, 0xdb84], /* Private Use High Surrogate */ + [0xdb85, 0xdb85], /* Private Use High Surrogate */ + [0xdb86, 0xdb86], /* Private Use High Surrogate */ + [0xdb87, 0xdb87], /* Private Use High Surrogate */ + [0xdb88, 0xdb88], /* Private Use High Surrogate */ + [0xdb89, 0xdb89], /* Private Use High Surrogate */ + [0xdb8a, 0xdb8a], /* Private Use High Surrogate */ + [0xdb8b, 0xdb8b], /* Private Use High Surrogate */ + [0xdb8c, 0xdb8c], /* Private Use High Surrogate */ + [0xdb8d, 0xdb8d], /* Private Use High Surrogate */ + [0xdb8e, 0xdb8e], /* Private Use High Surrogate */ + [0xdb8f, 0xdb8f], /* Private Use High Surrogate */ + [0xdb90, 0xdb90], /* Private Use High Surrogate */ + [0xdb91, 0xdb91], /* Private Use High Surrogate */ + [0xdb92, 0xdb92], /* Private Use High Surrogate */ + [0xdb93, 0xdb93], /* Private Use High Surrogate */ + [0xdb94, 0xdb94], /* Private Use High Surrogate */ + [0xdb95, 0xdb95], /* Private Use High Surrogate */ + [0xdb96, 0xdb96], /* Private Use High Surrogate */ + [0xdb97, 0xdb97], /* Private Use High Surrogate */ + [0xdb98, 0xdb98], /* Private Use High Surrogate */ + [0xdb99, 0xdb99], /* Private Use High Surrogate */ + [0xdb9a, 0xdb9a], /* Private Use High Surrogate */ + [0xdb9b, 0xdb9b], /* Private Use High Surrogate */ + [0xdb9c, 0xdb9c], /* Private Use High Surrogate */ + [0xdb9d, 0xdb9d], /* Private Use High Surrogate */ + [0xdb9e, 0xdb9e], /* Private Use High Surrogate */ + [0xdb9f, 0xdb9f], /* Private Use High Surrogate */ + [0xdba0, 0xdba0], /* Private Use High Surrogate */ + [0xdba1, 0xdba1], /* Private Use High Surrogate */ + [0xdba2, 0xdba2], /* Private Use High Surrogate */ + [0xdba3, 0xdba3], /* Private Use High Surrogate */ + [0xdba4, 0xdba4], /* Private Use High Surrogate */ + [0xdba5, 0xdba5], /* Private Use High Surrogate */ + [0xdba6, 0xdba6], /* Private Use High Surrogate */ + [0xdba7, 0xdba7], /* Private Use High Surrogate */ + [0xdba8, 0xdba8], /* Private Use High Surrogate */ + [0xdba9, 0xdba9], /* Private Use High Surrogate */ + [0xdbaa, 0xdbaa], /* Private Use High Surrogate */ + [0xdbab, 0xdbab], /* Private Use High Surrogate */ + [0xdbac, 0xdbac], /* Private Use High Surrogate */ + [0xdbad, 0xdbad], /* Private Use High Surrogate */ + [0xdbae, 0xdbae], /* Private Use High Surrogate */ + [0xdbaf, 0xdbaf], /* Private Use High Surrogate */ + [0xdbb0, 0xdbb0], /* Private Use High Surrogate */ + [0xdbb1, 0xdbb1], /* Private Use High Surrogate */ + [0xdbb2, 0xdbb2], /* Private Use High Surrogate */ + [0xdbb3, 0xdbb3], /* Private Use High Surrogate */ + [0xdbb4, 0xdbb4], /* Private Use High Surrogate */ + [0xdbb5, 0xdbb5], /* Private Use High Surrogate */ + [0xdbb6, 0xdbb6], /* Private Use High Surrogate */ + [0xdbb7, 0xdbb7], /* Private Use High Surrogate */ + [0xdbb8, 0xdbb8], /* Private Use High Surrogate */ + [0xdbb9, 0xdbb9], /* Private Use High Surrogate */ + [0xdbba, 0xdbba], /* Private Use High Surrogate */ + [0xdbbb, 0xdbbb], /* Private Use High Surrogate */ + [0xdbbc, 0xdbbc], /* Private Use High Surrogate */ + [0xdbbd, 0xdbbd], /* Private Use High Surrogate */ + [0xdbbe, 0xdbbe], /* Private Use High Surrogate */ + [0xdbbf, 0xdbbf], /* Private Use High Surrogate */ + [0xdbc0, 0xdbc0], /* Private Use High Surrogate */ + [0xdbc1, 0xdbc1], /* Private Use High Surrogate */ + [0xdbc2, 0xdbc2], /* Private Use High Surrogate */ + [0xdbc3, 0xdbc3], /* Private Use High Surrogate */ + [0xdbc4, 0xdbc4], /* Private Use High Surrogate */ + [0xdbc5, 0xdbc5], /* Private Use High Surrogate */ + [0xdbc6, 0xdbc6], /* Private Use High Surrogate */ + [0xdbc7, 0xdbc7], /* Private Use High Surrogate */ + [0xdbc8, 0xdbc8], /* Private Use High Surrogate */ + [0xdbc9, 0xdbc9], /* Private Use High Surrogate */ + [0xdbca, 0xdbca], /* Private Use High Surrogate */ + [0xdbcb, 0xdbcb], /* Private Use High Surrogate */ + [0xdbcc, 0xdbcc], /* Private Use High Surrogate */ + [0xdbcd, 0xdbcd], /* Private Use High Surrogate */ + [0xdbce, 0xdbce], /* Private Use High Surrogate */ + [0xdbcf, 0xdbcf], /* Private Use High Surrogate */ + [0xdbd0, 0xdbd0], /* Private Use High Surrogate */ + [0xdbd1, 0xdbd1], /* Private Use High Surrogate */ + [0xdbd2, 0xdbd2], /* Private Use High Surrogate */ + [0xdbd3, 0xdbd3], /* Private Use High Surrogate */ + [0xdbd4, 0xdbd4], /* Private Use High Surrogate */ + [0xdbd5, 0xdbd5], /* Private Use High Surrogate */ + [0xdbd6, 0xdbd6], /* Private Use High Surrogate */ + [0xdbd7, 0xdbd7], /* Private Use High Surrogate */ + [0xdbd8, 0xdbd8], /* Private Use High Surrogate */ + [0xdbd9, 0xdbd9], /* Private Use High Surrogate */ + [0xdbda, 0xdbda], /* Private Use High Surrogate */ + [0xdbdb, 0xdbdb], /* Private Use High Surrogate */ + [0xdbdc, 0xdbdc], /* Private Use High Surrogate */ + [0xdbdd, 0xdbdd], /* Private Use High Surrogate */ + [0xdbde, 0xdbde], /* Private Use High Surrogate */ + [0xdbdf, 0xdbdf], /* Private Use High Surrogate */ + [0xdbe0, 0xdbe0], /* Private Use High Surrogate */ + [0xdbe1, 0xdbe1], /* Private Use High Surrogate */ + [0xdbe2, 0xdbe2], /* Private Use High Surrogate */ + [0xdbe3, 0xdbe3], /* Private Use High Surrogate */ + [0xdbe4, 0xdbe4], /* Private Use High Surrogate */ + [0xdbe5, 0xdbe5], /* Private Use High Surrogate */ + [0xdbe6, 0xdbe6], /* Private Use High Surrogate */ + [0xdbe7, 0xdbe7], /* Private Use High Surrogate */ + [0xdbe8, 0xdbe8], /* Private Use High Surrogate */ + [0xdbe9, 0xdbe9], /* Private Use High Surrogate */ + [0xdbea, 0xdbea], /* Private Use High Surrogate */ + [0xdbeb, 0xdbeb], /* Private Use High Surrogate */ + [0xdbec, 0xdbec], /* Private Use High Surrogate */ + [0xdbed, 0xdbed], /* Private Use High Surrogate */ + [0xdbee, 0xdbee], /* Private Use High Surrogate */ + [0xdbef, 0xdbef], /* Private Use High Surrogate */ + [0xdbf0, 0xdbf0], /* Private Use High Surrogate */ + [0xdbf1, 0xdbf1], /* Private Use High Surrogate */ + [0xdbf2, 0xdbf2], /* Private Use High Surrogate */ + [0xdbf3, 0xdbf3], /* Private Use High Surrogate */ + [0xdbf4, 0xdbf4], /* Private Use High Surrogate */ + [0xdbf5, 0xdbf5], /* Private Use High Surrogate */ + [0xdbf6, 0xdbf6], /* Private Use High Surrogate */ + [0xdbf7, 0xdbf7], /* Private Use High Surrogate */ + [0xdbf8, 0xdbf8], /* Private Use High Surrogate */ + [0xdbf9, 0xdbf9], /* Private Use High Surrogate */ + [0xdbfa, 0xdbfa], /* Private Use High Surrogate */ + [0xdbfb, 0xdbfb], /* Private Use High Surrogate */ + [0xdbfc, 0xdbfc], /* Private Use High Surrogate */ + [0xdbfd, 0xdbfd], /* Private Use High Surrogate */ + [0xdbfe, 0xdbfe], /* Private Use High Surrogate */ + [0xdbff, 0xdbff], /* Private Use High Surrogate */ + [0xdc00, 0xdc00], /* Low Surrogate */ + [0xdc01, 0xdc01], /* Low Surrogate */ + [0xdc02, 0xdc02], /* Low Surrogate */ + [0xdc03, 0xdc03], /* Low Surrogate */ + [0xdc04, 0xdc04], /* Low Surrogate */ + [0xdc05, 0xdc05], /* Low Surrogate */ + [0xdc06, 0xdc06], /* Low Surrogate */ + [0xdc07, 0xdc07], /* Low Surrogate */ + [0xdc08, 0xdc08], /* Low Surrogate */ + [0xdc09, 0xdc09], /* Low Surrogate */ + [0xdc0a, 0xdc0a], /* Low Surrogate */ + [0xdc0b, 0xdc0b], /* Low Surrogate */ + [0xdc0c, 0xdc0c], /* Low Surrogate */ + [0xdc0d, 0xdc0d], /* Low Surrogate */ + [0xdc0e, 0xdc0e], /* Low Surrogate */ + [0xdc0f, 0xdc0f], /* Low Surrogate */ + [0xdc10, 0xdc10], /* Low Surrogate */ + [0xdc11, 0xdc11], /* Low Surrogate */ + [0xdc12, 0xdc12], /* Low Surrogate */ + [0xdc13, 0xdc13], /* Low Surrogate */ + [0xdc14, 0xdc14], /* Low Surrogate */ + [0xdc15, 0xdc15], /* Low Surrogate */ + [0xdc16, 0xdc16], /* Low Surrogate */ + [0xdc17, 0xdc17], /* Low Surrogate */ + [0xdc18, 0xdc18], /* Low Surrogate */ + [0xdc19, 0xdc19], /* Low Surrogate */ + [0xdc1a, 0xdc1a], /* Low Surrogate */ + [0xdc1b, 0xdc1b], /* Low Surrogate */ + [0xdc1c, 0xdc1c], /* Low Surrogate */ + [0xdc1d, 0xdc1d], /* Low Surrogate */ + [0xdc1e, 0xdc1e], /* Low Surrogate */ + [0xdc1f, 0xdc1f], /* Low Surrogate */ + [0xdc20, 0xdc20], /* Low Surrogate */ + [0xdc21, 0xdc21], /* Low Surrogate */ + [0xdc22, 0xdc22], /* Low Surrogate */ + [0xdc23, 0xdc23], /* Low Surrogate */ + [0xdc24, 0xdc24], /* Low Surrogate */ + [0xdc25, 0xdc25], /* Low Surrogate */ + [0xdc26, 0xdc26], /* Low Surrogate */ + [0xdc27, 0xdc27], /* Low Surrogate */ + [0xdc28, 0xdc28], /* Low Surrogate */ + [0xdc29, 0xdc29], /* Low Surrogate */ + [0xdc2a, 0xdc2a], /* Low Surrogate */ + [0xdc2b, 0xdc2b], /* Low Surrogate */ + [0xdc2c, 0xdc2c], /* Low Surrogate */ + [0xdc2d, 0xdc2d], /* Low Surrogate */ + [0xdc2e, 0xdc2e], /* Low Surrogate */ + [0xdc2f, 0xdc2f], /* Low Surrogate */ + [0xdc30, 0xdc30], /* Low Surrogate */ + [0xdc31, 0xdc31], /* Low Surrogate */ + [0xdc32, 0xdc32], /* Low Surrogate */ + [0xdc33, 0xdc33], /* Low Surrogate */ + [0xdc34, 0xdc34], /* Low Surrogate */ + [0xdc35, 0xdc35], /* Low Surrogate */ + [0xdc36, 0xdc36], /* Low Surrogate */ + [0xdc37, 0xdc37], /* Low Surrogate */ + [0xdc38, 0xdc38], /* Low Surrogate */ + [0xdc39, 0xdc39], /* Low Surrogate */ + [0xdc3a, 0xdc3a], /* Low Surrogate */ + [0xdc3b, 0xdc3b], /* Low Surrogate */ + [0xdc3c, 0xdc3c], /* Low Surrogate */ + [0xdc3d, 0xdc3d], /* Low Surrogate */ + [0xdc3e, 0xdc3e], /* Low Surrogate */ + [0xdc3f, 0xdc3f], /* Low Surrogate */ + [0xdc40, 0xdc40], /* Low Surrogate */ + [0xdc41, 0xdc41], /* Low Surrogate */ + [0xdc42, 0xdc42], /* Low Surrogate */ + [0xdc43, 0xdc43], /* Low Surrogate */ + [0xdc44, 0xdc44], /* Low Surrogate */ + [0xdc45, 0xdc45], /* Low Surrogate */ + [0xdc46, 0xdc46], /* Low Surrogate */ + [0xdc47, 0xdc47], /* Low Surrogate */ + [0xdc48, 0xdc48], /* Low Surrogate */ + [0xdc49, 0xdc49], /* Low Surrogate */ + [0xdc4a, 0xdc4a], /* Low Surrogate */ + [0xdc4b, 0xdc4b], /* Low Surrogate */ + [0xdc4c, 0xdc4c], /* Low Surrogate */ + [0xdc4d, 0xdc4d], /* Low Surrogate */ + [0xdc4e, 0xdc4e], /* Low Surrogate */ + [0xdc4f, 0xdc4f], /* Low Surrogate */ + [0xdc50, 0xdc50], /* Low Surrogate */ + [0xdc51, 0xdc51], /* Low Surrogate */ + [0xdc52, 0xdc52], /* Low Surrogate */ + [0xdc53, 0xdc53], /* Low Surrogate */ + [0xdc54, 0xdc54], /* Low Surrogate */ + [0xdc55, 0xdc55], /* Low Surrogate */ + [0xdc56, 0xdc56], /* Low Surrogate */ + [0xdc57, 0xdc57], /* Low Surrogate */ + [0xdc58, 0xdc58], /* Low Surrogate */ + [0xdc59, 0xdc59], /* Low Surrogate */ + [0xdc5a, 0xdc5a], /* Low Surrogate */ + [0xdc5b, 0xdc5b], /* Low Surrogate */ + [0xdc5c, 0xdc5c], /* Low Surrogate */ + [0xdc5d, 0xdc5d], /* Low Surrogate */ + [0xdc5e, 0xdc5e], /* Low Surrogate */ + [0xdc5f, 0xdc5f], /* Low Surrogate */ + [0xdc60, 0xdc60], /* Low Surrogate */ + [0xdc61, 0xdc61], /* Low Surrogate */ + [0xdc62, 0xdc62], /* Low Surrogate */ + [0xdc63, 0xdc63], /* Low Surrogate */ + [0xdc64, 0xdc64], /* Low Surrogate */ + [0xdc65, 0xdc65], /* Low Surrogate */ + [0xdc66, 0xdc66], /* Low Surrogate */ + [0xdc67, 0xdc67], /* Low Surrogate */ + [0xdc68, 0xdc68], /* Low Surrogate */ + [0xdc69, 0xdc69], /* Low Surrogate */ + [0xdc6a, 0xdc6a], /* Low Surrogate */ + [0xdc6b, 0xdc6b], /* Low Surrogate */ + [0xdc6c, 0xdc6c], /* Low Surrogate */ + [0xdc6d, 0xdc6d], /* Low Surrogate */ + [0xdc6e, 0xdc6e], /* Low Surrogate */ + [0xdc6f, 0xdc6f], /* Low Surrogate */ + [0xdc70, 0xdc70], /* Low Surrogate */ + [0xdc71, 0xdc71], /* Low Surrogate */ + [0xdc72, 0xdc72], /* Low Surrogate */ + [0xdc73, 0xdc73], /* Low Surrogate */ + [0xdc74, 0xdc74], /* Low Surrogate */ + [0xdc75, 0xdc75], /* Low Surrogate */ + [0xdc76, 0xdc76], /* Low Surrogate */ + [0xdc77, 0xdc77], /* Low Surrogate */ + [0xdc78, 0xdc78], /* Low Surrogate */ + [0xdc79, 0xdc79], /* Low Surrogate */ + [0xdc7a, 0xdc7a], /* Low Surrogate */ + [0xdc7b, 0xdc7b], /* Low Surrogate */ + [0xdc7c, 0xdc7c], /* Low Surrogate */ + [0xdc7d, 0xdc7d], /* Low Surrogate */ + [0xdc7e, 0xdc7e], /* Low Surrogate */ + [0xdc7f, 0xdc7f], /* Low Surrogate */ + [0xdc80, 0xdc80], /* Low Surrogate */ + [0xdc81, 0xdc81], /* Low Surrogate */ + [0xdc82, 0xdc82], /* Low Surrogate */ + [0xdc83, 0xdc83], /* Low Surrogate */ + [0xdc84, 0xdc84], /* Low Surrogate */ + [0xdc85, 0xdc85], /* Low Surrogate */ + [0xdc86, 0xdc86], /* Low Surrogate */ + [0xdc87, 0xdc87], /* Low Surrogate */ + [0xdc88, 0xdc88], /* Low Surrogate */ + [0xdc89, 0xdc89], /* Low Surrogate */ + [0xdc8a, 0xdc8a], /* Low Surrogate */ + [0xdc8b, 0xdc8b], /* Low Surrogate */ + [0xdc8c, 0xdc8c], /* Low Surrogate */ + [0xdc8d, 0xdc8d], /* Low Surrogate */ + [0xdc8e, 0xdc8e], /* Low Surrogate */ + [0xdc8f, 0xdc8f], /* Low Surrogate */ + [0xdc90, 0xdc90], /* Low Surrogate */ + [0xdc91, 0xdc91], /* Low Surrogate */ + [0xdc92, 0xdc92], /* Low Surrogate */ + [0xdc93, 0xdc93], /* Low Surrogate */ + [0xdc94, 0xdc94], /* Low Surrogate */ + [0xdc95, 0xdc95], /* Low Surrogate */ + [0xdc96, 0xdc96], /* Low Surrogate */ + [0xdc97, 0xdc97], /* Low Surrogate */ + [0xdc98, 0xdc98], /* Low Surrogate */ + [0xdc99, 0xdc99], /* Low Surrogate */ + [0xdc9a, 0xdc9a], /* Low Surrogate */ + [0xdc9b, 0xdc9b], /* Low Surrogate */ + [0xdc9c, 0xdc9c], /* Low Surrogate */ + [0xdc9d, 0xdc9d], /* Low Surrogate */ + [0xdc9e, 0xdc9e], /* Low Surrogate */ + [0xdc9f, 0xdc9f], /* Low Surrogate */ + [0xdca0, 0xdca0], /* Low Surrogate */ + [0xdca1, 0xdca1], /* Low Surrogate */ + [0xdca2, 0xdca2], /* Low Surrogate */ + [0xdca3, 0xdca3], /* Low Surrogate */ + [0xdca4, 0xdca4], /* Low Surrogate */ + [0xdca5, 0xdca5], /* Low Surrogate */ + [0xdca6, 0xdca6], /* Low Surrogate */ + [0xdca7, 0xdca7], /* Low Surrogate */ + [0xdca8, 0xdca8], /* Low Surrogate */ + [0xdca9, 0xdca9], /* Low Surrogate */ + [0xdcaa, 0xdcaa], /* Low Surrogate */ + [0xdcab, 0xdcab], /* Low Surrogate */ + [0xdcac, 0xdcac], /* Low Surrogate */ + [0xdcad, 0xdcad], /* Low Surrogate */ + [0xdcae, 0xdcae], /* Low Surrogate */ + [0xdcaf, 0xdcaf], /* Low Surrogate */ + [0xdcb0, 0xdcb0], /* Low Surrogate */ + [0xdcb1, 0xdcb1], /* Low Surrogate */ + [0xdcb2, 0xdcb2], /* Low Surrogate */ + [0xdcb3, 0xdcb3], /* Low Surrogate */ + [0xdcb4, 0xdcb4], /* Low Surrogate */ + [0xdcb5, 0xdcb5], /* Low Surrogate */ + [0xdcb6, 0xdcb6], /* Low Surrogate */ + [0xdcb7, 0xdcb7], /* Low Surrogate */ + [0xdcb8, 0xdcb8], /* Low Surrogate */ + [0xdcb9, 0xdcb9], /* Low Surrogate */ + [0xdcba, 0xdcba], /* Low Surrogate */ + [0xdcbb, 0xdcbb], /* Low Surrogate */ + [0xdcbc, 0xdcbc], /* Low Surrogate */ + [0xdcbd, 0xdcbd], /* Low Surrogate */ + [0xdcbe, 0xdcbe], /* Low Surrogate */ + [0xdcbf, 0xdcbf], /* Low Surrogate */ + [0xdcc0, 0xdcc0], /* Low Surrogate */ + [0xdcc1, 0xdcc1], /* Low Surrogate */ + [0xdcc2, 0xdcc2], /* Low Surrogate */ + [0xdcc3, 0xdcc3], /* Low Surrogate */ + [0xdcc4, 0xdcc4], /* Low Surrogate */ + [0xdcc5, 0xdcc5], /* Low Surrogate */ + [0xdcc6, 0xdcc6], /* Low Surrogate */ + [0xdcc7, 0xdcc7], /* Low Surrogate */ + [0xdcc8, 0xdcc8], /* Low Surrogate */ + [0xdcc9, 0xdcc9], /* Low Surrogate */ + [0xdcca, 0xdcca], /* Low Surrogate */ + [0xdccb, 0xdccb], /* Low Surrogate */ + [0xdccc, 0xdccc], /* Low Surrogate */ + [0xdccd, 0xdccd], /* Low Surrogate */ + [0xdcce, 0xdcce], /* Low Surrogate */ + [0xdccf, 0xdccf], /* Low Surrogate */ + [0xdcd0, 0xdcd0], /* Low Surrogate */ + [0xdcd1, 0xdcd1], /* Low Surrogate */ + [0xdcd2, 0xdcd2], /* Low Surrogate */ + [0xdcd3, 0xdcd3], /* Low Surrogate */ + [0xdcd4, 0xdcd4], /* Low Surrogate */ + [0xdcd5, 0xdcd5], /* Low Surrogate */ + [0xdcd6, 0xdcd6], /* Low Surrogate */ + [0xdcd7, 0xdcd7], /* Low Surrogate */ + [0xdcd8, 0xdcd8], /* Low Surrogate */ + [0xdcd9, 0xdcd9], /* Low Surrogate */ + [0xdcda, 0xdcda], /* Low Surrogate */ + [0xdcdb, 0xdcdb], /* Low Surrogate */ + [0xdcdc, 0xdcdc], /* Low Surrogate */ + [0xdcdd, 0xdcdd], /* Low Surrogate */ + [0xdcde, 0xdcde], /* Low Surrogate */ + [0xdcdf, 0xdcdf], /* Low Surrogate */ + [0xdce0, 0xdce0], /* Low Surrogate */ + [0xdce1, 0xdce1], /* Low Surrogate */ + [0xdce2, 0xdce2], /* Low Surrogate */ + [0xdce3, 0xdce3], /* Low Surrogate */ + [0xdce4, 0xdce4], /* Low Surrogate */ + [0xdce5, 0xdce5], /* Low Surrogate */ + [0xdce6, 0xdce6], /* Low Surrogate */ + [0xdce7, 0xdce7], /* Low Surrogate */ + [0xdce8, 0xdce8], /* Low Surrogate */ + [0xdce9, 0xdce9], /* Low Surrogate */ + [0xdcea, 0xdcea], /* Low Surrogate */ + [0xdceb, 0xdceb], /* Low Surrogate */ + [0xdcec, 0xdcec], /* Low Surrogate */ + [0xdced, 0xdced], /* Low Surrogate */ + [0xdcee, 0xdcee], /* Low Surrogate */ + [0xdcef, 0xdcef], /* Low Surrogate */ + [0xdcf0, 0xdcf0], /* Low Surrogate */ + [0xdcf1, 0xdcf1], /* Low Surrogate */ + [0xdcf2, 0xdcf2], /* Low Surrogate */ + [0xdcf3, 0xdcf3], /* Low Surrogate */ + [0xdcf4, 0xdcf4], /* Low Surrogate */ + [0xdcf5, 0xdcf5], /* Low Surrogate */ + [0xdcf6, 0xdcf6], /* Low Surrogate */ + [0xdcf7, 0xdcf7], /* Low Surrogate */ + [0xdcf8, 0xdcf8], /* Low Surrogate */ + [0xdcf9, 0xdcf9], /* Low Surrogate */ + [0xdcfa, 0xdcfa], /* Low Surrogate */ + [0xdcfb, 0xdcfb], /* Low Surrogate */ + [0xdcfc, 0xdcfc], /* Low Surrogate */ + [0xdcfd, 0xdcfd], /* Low Surrogate */ + [0xdcfe, 0xdcfe], /* Low Surrogate */ + [0xdcff, 0xdcff], /* Low Surrogate */ + [0xdd00, 0xdd00], /* Low Surrogate */ + [0xdd01, 0xdd01], /* Low Surrogate */ + [0xdd02, 0xdd02], /* Low Surrogate */ + [0xdd03, 0xdd03], /* Low Surrogate */ + [0xdd04, 0xdd04], /* Low Surrogate */ + [0xdd05, 0xdd05], /* Low Surrogate */ + [0xdd06, 0xdd06], /* Low Surrogate */ + [0xdd07, 0xdd07], /* Low Surrogate */ + [0xdd08, 0xdd08], /* Low Surrogate */ + [0xdd09, 0xdd09], /* Low Surrogate */ + [0xdd0a, 0xdd0a], /* Low Surrogate */ + [0xdd0b, 0xdd0b], /* Low Surrogate */ + [0xdd0c, 0xdd0c], /* Low Surrogate */ + [0xdd0d, 0xdd0d], /* Low Surrogate */ + [0xdd0e, 0xdd0e], /* Low Surrogate */ + [0xdd0f, 0xdd0f], /* Low Surrogate */ + [0xdd10, 0xdd10], /* Low Surrogate */ + [0xdd11, 0xdd11], /* Low Surrogate */ + [0xdd12, 0xdd12], /* Low Surrogate */ + [0xdd13, 0xdd13], /* Low Surrogate */ + [0xdd14, 0xdd14], /* Low Surrogate */ + [0xdd15, 0xdd15], /* Low Surrogate */ + [0xdd16, 0xdd16], /* Low Surrogate */ + [0xdd17, 0xdd17], /* Low Surrogate */ + [0xdd18, 0xdd18], /* Low Surrogate */ + [0xdd19, 0xdd19], /* Low Surrogate */ + [0xdd1a, 0xdd1a], /* Low Surrogate */ + [0xdd1b, 0xdd1b], /* Low Surrogate */ + [0xdd1c, 0xdd1c], /* Low Surrogate */ + [0xdd1d, 0xdd1d], /* Low Surrogate */ + [0xdd1e, 0xdd1e], /* Low Surrogate */ + [0xdd1f, 0xdd1f], /* Low Surrogate */ + [0xdd20, 0xdd20], /* Low Surrogate */ + [0xdd21, 0xdd21], /* Low Surrogate */ + [0xdd22, 0xdd22], /* Low Surrogate */ + [0xdd23, 0xdd23], /* Low Surrogate */ + [0xdd24, 0xdd24], /* Low Surrogate */ + [0xdd25, 0xdd25], /* Low Surrogate */ + [0xdd26, 0xdd26], /* Low Surrogate */ + [0xdd27, 0xdd27], /* Low Surrogate */ + [0xdd28, 0xdd28], /* Low Surrogate */ + [0xdd29, 0xdd29], /* Low Surrogate */ + [0xdd2a, 0xdd2a], /* Low Surrogate */ + [0xdd2b, 0xdd2b], /* Low Surrogate */ + [0xdd2c, 0xdd2c], /* Low Surrogate */ + [0xdd2d, 0xdd2d], /* Low Surrogate */ + [0xdd2e, 0xdd2e], /* Low Surrogate */ + [0xdd2f, 0xdd2f], /* Low Surrogate */ + [0xdd30, 0xdd30], /* Low Surrogate */ + [0xdd31, 0xdd31], /* Low Surrogate */ + [0xdd32, 0xdd32], /* Low Surrogate */ + [0xdd33, 0xdd33], /* Low Surrogate */ + [0xdd34, 0xdd34], /* Low Surrogate */ + [0xdd35, 0xdd35], /* Low Surrogate */ + [0xdd36, 0xdd36], /* Low Surrogate */ + [0xdd37, 0xdd37], /* Low Surrogate */ + [0xdd38, 0xdd38], /* Low Surrogate */ + [0xdd39, 0xdd39], /* Low Surrogate */ + [0xdd3a, 0xdd3a], /* Low Surrogate */ + [0xdd3b, 0xdd3b], /* Low Surrogate */ + [0xdd3c, 0xdd3c], /* Low Surrogate */ + [0xdd3d, 0xdd3d], /* Low Surrogate */ + [0xdd3e, 0xdd3e], /* Low Surrogate */ + [0xdd3f, 0xdd3f], /* Low Surrogate */ + [0xdd40, 0xdd40], /* Low Surrogate */ + [0xdd41, 0xdd41], /* Low Surrogate */ + [0xdd42, 0xdd42], /* Low Surrogate */ + [0xdd43, 0xdd43], /* Low Surrogate */ + [0xdd44, 0xdd44], /* Low Surrogate */ + [0xdd45, 0xdd45], /* Low Surrogate */ + [0xdd46, 0xdd46], /* Low Surrogate */ + [0xdd47, 0xdd47], /* Low Surrogate */ + [0xdd48, 0xdd48], /* Low Surrogate */ + [0xdd49, 0xdd49], /* Low Surrogate */ + [0xdd4a, 0xdd4a], /* Low Surrogate */ + [0xdd4b, 0xdd4b], /* Low Surrogate */ + [0xdd4c, 0xdd4c], /* Low Surrogate */ + [0xdd4d, 0xdd4d], /* Low Surrogate */ + [0xdd4e, 0xdd4e], /* Low Surrogate */ + [0xdd4f, 0xdd4f], /* Low Surrogate */ + [0xdd50, 0xdd50], /* Low Surrogate */ + [0xdd51, 0xdd51], /* Low Surrogate */ + [0xdd52, 0xdd52], /* Low Surrogate */ + [0xdd53, 0xdd53], /* Low Surrogate */ + [0xdd54, 0xdd54], /* Low Surrogate */ + [0xdd55, 0xdd55], /* Low Surrogate */ + [0xdd56, 0xdd56], /* Low Surrogate */ + [0xdd57, 0xdd57], /* Low Surrogate */ + [0xdd58, 0xdd58], /* Low Surrogate */ + [0xdd59, 0xdd59], /* Low Surrogate */ + [0xdd5a, 0xdd5a], /* Low Surrogate */ + [0xdd5b, 0xdd5b], /* Low Surrogate */ + [0xdd5c, 0xdd5c], /* Low Surrogate */ + [0xdd5d, 0xdd5d], /* Low Surrogate */ + [0xdd5e, 0xdd5e], /* Low Surrogate */ + [0xdd5f, 0xdd5f], /* Low Surrogate */ + [0xdd60, 0xdd60], /* Low Surrogate */ + [0xdd61, 0xdd61], /* Low Surrogate */ + [0xdd62, 0xdd62], /* Low Surrogate */ + [0xdd63, 0xdd63], /* Low Surrogate */ + [0xdd64, 0xdd64], /* Low Surrogate */ + [0xdd65, 0xdd65], /* Low Surrogate */ + [0xdd66, 0xdd66], /* Low Surrogate */ + [0xdd67, 0xdd67], /* Low Surrogate */ + [0xdd68, 0xdd68], /* Low Surrogate */ + [0xdd69, 0xdd69], /* Low Surrogate */ + [0xdd6a, 0xdd6a], /* Low Surrogate */ + [0xdd6b, 0xdd6b], /* Low Surrogate */ + [0xdd6c, 0xdd6c], /* Low Surrogate */ + [0xdd6d, 0xdd6d], /* Low Surrogate */ + [0xdd6e, 0xdd6e], /* Low Surrogate */ + [0xdd6f, 0xdd6f], /* Low Surrogate */ + [0xdd70, 0xdd70], /* Low Surrogate */ + [0xdd71, 0xdd71], /* Low Surrogate */ + [0xdd72, 0xdd72], /* Low Surrogate */ + [0xdd73, 0xdd73], /* Low Surrogate */ + [0xdd74, 0xdd74], /* Low Surrogate */ + [0xdd75, 0xdd75], /* Low Surrogate */ + [0xdd76, 0xdd76], /* Low Surrogate */ + [0xdd77, 0xdd77], /* Low Surrogate */ + [0xdd78, 0xdd78], /* Low Surrogate */ + [0xdd79, 0xdd79], /* Low Surrogate */ + [0xdd7a, 0xdd7a], /* Low Surrogate */ + [0xdd7b, 0xdd7b], /* Low Surrogate */ + [0xdd7c, 0xdd7c], /* Low Surrogate */ + [0xdd7d, 0xdd7d], /* Low Surrogate */ + [0xdd7e, 0xdd7e], /* Low Surrogate */ + [0xdd7f, 0xdd7f], /* Low Surrogate */ + [0xdd80, 0xdd80], /* Low Surrogate */ + [0xdd81, 0xdd81], /* Low Surrogate */ + [0xdd82, 0xdd82], /* Low Surrogate */ + [0xdd83, 0xdd83], /* Low Surrogate */ + [0xdd84, 0xdd84], /* Low Surrogate */ + [0xdd85, 0xdd85], /* Low Surrogate */ + [0xdd86, 0xdd86], /* Low Surrogate */ + [0xdd87, 0xdd87], /* Low Surrogate */ + [0xdd88, 0xdd88], /* Low Surrogate */ + [0xdd89, 0xdd89], /* Low Surrogate */ + [0xdd8a, 0xdd8a], /* Low Surrogate */ + [0xdd8b, 0xdd8b], /* Low Surrogate */ + [0xdd8c, 0xdd8c], /* Low Surrogate */ + [0xdd8d, 0xdd8d], /* Low Surrogate */ + [0xdd8e, 0xdd8e], /* Low Surrogate */ + [0xdd8f, 0xdd8f], /* Low Surrogate */ + [0xdd90, 0xdd90], /* Low Surrogate */ + [0xdd91, 0xdd91], /* Low Surrogate */ + [0xdd92, 0xdd92], /* Low Surrogate */ + [0xdd93, 0xdd93], /* Low Surrogate */ + [0xdd94, 0xdd94], /* Low Surrogate */ + [0xdd95, 0xdd95], /* Low Surrogate */ + [0xdd96, 0xdd96], /* Low Surrogate */ + [0xdd97, 0xdd97], /* Low Surrogate */ + [0xdd98, 0xdd98], /* Low Surrogate */ + [0xdd99, 0xdd99], /* Low Surrogate */ + [0xdd9a, 0xdd9a], /* Low Surrogate */ + [0xdd9b, 0xdd9b], /* Low Surrogate */ + [0xdd9c, 0xdd9c], /* Low Surrogate */ + [0xdd9d, 0xdd9d], /* Low Surrogate */ + [0xdd9e, 0xdd9e], /* Low Surrogate */ + [0xdd9f, 0xdd9f], /* Low Surrogate */ + [0xdda0, 0xdda0], /* Low Surrogate */ + [0xdda1, 0xdda1], /* Low Surrogate */ + [0xdda2, 0xdda2], /* Low Surrogate */ + [0xdda3, 0xdda3], /* Low Surrogate */ + [0xdda4, 0xdda4], /* Low Surrogate */ + [0xdda5, 0xdda5], /* Low Surrogate */ + [0xdda6, 0xdda6], /* Low Surrogate */ + [0xdda7, 0xdda7], /* Low Surrogate */ + [0xdda8, 0xdda8], /* Low Surrogate */ + [0xdda9, 0xdda9], /* Low Surrogate */ + [0xddaa, 0xddaa], /* Low Surrogate */ + [0xddab, 0xddab], /* Low Surrogate */ + [0xddac, 0xddac], /* Low Surrogate */ + [0xddad, 0xddad], /* Low Surrogate */ + [0xddae, 0xddae], /* Low Surrogate */ + [0xddaf, 0xddaf], /* Low Surrogate */ + [0xddb0, 0xddb0], /* Low Surrogate */ + [0xddb1, 0xddb1], /* Low Surrogate */ + [0xddb2, 0xddb2], /* Low Surrogate */ + [0xddb3, 0xddb3], /* Low Surrogate */ + [0xddb4, 0xddb4], /* Low Surrogate */ + [0xddb5, 0xddb5], /* Low Surrogate */ + [0xddb6, 0xddb6], /* Low Surrogate */ + [0xddb7, 0xddb7], /* Low Surrogate */ + [0xddb8, 0xddb8], /* Low Surrogate */ + [0xddb9, 0xddb9], /* Low Surrogate */ + [0xddba, 0xddba], /* Low Surrogate */ + [0xddbb, 0xddbb], /* Low Surrogate */ + [0xddbc, 0xddbc], /* Low Surrogate */ + [0xddbd, 0xddbd], /* Low Surrogate */ + [0xddbe, 0xddbe], /* Low Surrogate */ + [0xddbf, 0xddbf], /* Low Surrogate */ + [0xddc0, 0xddc0], /* Low Surrogate */ + [0xddc1, 0xddc1], /* Low Surrogate */ + [0xddc2, 0xddc2], /* Low Surrogate */ + [0xddc3, 0xddc3], /* Low Surrogate */ + [0xddc4, 0xddc4], /* Low Surrogate */ + [0xddc5, 0xddc5], /* Low Surrogate */ + [0xddc6, 0xddc6], /* Low Surrogate */ + [0xddc7, 0xddc7], /* Low Surrogate */ + [0xddc8, 0xddc8], /* Low Surrogate */ + [0xddc9, 0xddc9], /* Low Surrogate */ + [0xddca, 0xddca], /* Low Surrogate */ + [0xddcb, 0xddcb], /* Low Surrogate */ + [0xddcc, 0xddcc], /* Low Surrogate */ + [0xddcd, 0xddcd], /* Low Surrogate */ + [0xddce, 0xddce], /* Low Surrogate */ + [0xddcf, 0xddcf], /* Low Surrogate */ + [0xddd0, 0xddd0], /* Low Surrogate */ + [0xddd1, 0xddd1], /* Low Surrogate */ + [0xddd2, 0xddd2], /* Low Surrogate */ + [0xddd3, 0xddd3], /* Low Surrogate */ + [0xddd4, 0xddd4], /* Low Surrogate */ + [0xddd5, 0xddd5], /* Low Surrogate */ + [0xddd6, 0xddd6], /* Low Surrogate */ + [0xddd7, 0xddd7], /* Low Surrogate */ + [0xddd8, 0xddd8], /* Low Surrogate */ + [0xddd9, 0xddd9], /* Low Surrogate */ + [0xddda, 0xddda], /* Low Surrogate */ + [0xdddb, 0xdddb], /* Low Surrogate */ + [0xdddc, 0xdddc], /* Low Surrogate */ + [0xdddd, 0xdddd], /* Low Surrogate */ + [0xddde, 0xddde], /* Low Surrogate */ + [0xdddf, 0xdddf], /* Low Surrogate */ + [0xdde0, 0xdde0], /* Low Surrogate */ + [0xdde1, 0xdde1], /* Low Surrogate */ + [0xdde2, 0xdde2], /* Low Surrogate */ + [0xdde3, 0xdde3], /* Low Surrogate */ + [0xdde4, 0xdde4], /* Low Surrogate */ + [0xdde5, 0xdde5], /* Low Surrogate */ + [0xdde6, 0xdde6], /* Low Surrogate */ + [0xdde7, 0xdde7], /* Low Surrogate */ + [0xdde8, 0xdde8], /* Low Surrogate */ + [0xdde9, 0xdde9], /* Low Surrogate */ + [0xddea, 0xddea], /* Low Surrogate */ + [0xddeb, 0xddeb], /* Low Surrogate */ + [0xddec, 0xddec], /* Low Surrogate */ + [0xdded, 0xdded], /* Low Surrogate */ + [0xddee, 0xddee], /* Low Surrogate */ + [0xddef, 0xddef], /* Low Surrogate */ + [0xddf0, 0xddf0], /* Low Surrogate */ + [0xddf1, 0xddf1], /* Low Surrogate */ + [0xddf2, 0xddf2], /* Low Surrogate */ + [0xddf3, 0xddf3], /* Low Surrogate */ + [0xddf4, 0xddf4], /* Low Surrogate */ + [0xddf5, 0xddf5], /* Low Surrogate */ + [0xddf6, 0xddf6], /* Low Surrogate */ + [0xddf7, 0xddf7], /* Low Surrogate */ + [0xddf8, 0xddf8], /* Low Surrogate */ + [0xddf9, 0xddf9], /* Low Surrogate */ + [0xddfa, 0xddfa], /* Low Surrogate */ + [0xddfb, 0xddfb], /* Low Surrogate */ + [0xddfc, 0xddfc], /* Low Surrogate */ + [0xddfd, 0xddfd], /* Low Surrogate */ + [0xddfe, 0xddfe], /* Low Surrogate */ + [0xddff, 0xddff], /* Low Surrogate */ + [0xde00, 0xde00], /* Low Surrogate */ + [0xde01, 0xde01], /* Low Surrogate */ + [0xde02, 0xde02], /* Low Surrogate */ + [0xde03, 0xde03], /* Low Surrogate */ + [0xde04, 0xde04], /* Low Surrogate */ + [0xde05, 0xde05], /* Low Surrogate */ + [0xde06, 0xde06], /* Low Surrogate */ + [0xde07, 0xde07], /* Low Surrogate */ + [0xde08, 0xde08], /* Low Surrogate */ + [0xde09, 0xde09], /* Low Surrogate */ + [0xde0a, 0xde0a], /* Low Surrogate */ + [0xde0b, 0xde0b], /* Low Surrogate */ + [0xde0c, 0xde0c], /* Low Surrogate */ + [0xde0d, 0xde0d], /* Low Surrogate */ + [0xde0e, 0xde0e], /* Low Surrogate */ + [0xde0f, 0xde0f], /* Low Surrogate */ + [0xde10, 0xde10], /* Low Surrogate */ + [0xde11, 0xde11], /* Low Surrogate */ + [0xde12, 0xde12], /* Low Surrogate */ + [0xde13, 0xde13], /* Low Surrogate */ + [0xde14, 0xde14], /* Low Surrogate */ + [0xde15, 0xde15], /* Low Surrogate */ + [0xde16, 0xde16], /* Low Surrogate */ + [0xde17, 0xde17], /* Low Surrogate */ + [0xde18, 0xde18], /* Low Surrogate */ + [0xde19, 0xde19], /* Low Surrogate */ + [0xde1a, 0xde1a], /* Low Surrogate */ + [0xde1b, 0xde1b], /* Low Surrogate */ + [0xde1c, 0xde1c], /* Low Surrogate */ + [0xde1d, 0xde1d], /* Low Surrogate */ + [0xde1e, 0xde1e], /* Low Surrogate */ + [0xde1f, 0xde1f], /* Low Surrogate */ + [0xde20, 0xde20], /* Low Surrogate */ + [0xde21, 0xde21], /* Low Surrogate */ + [0xde22, 0xde22], /* Low Surrogate */ + [0xde23, 0xde23], /* Low Surrogate */ + [0xde24, 0xde24], /* Low Surrogate */ + [0xde25, 0xde25], /* Low Surrogate */ + [0xde26, 0xde26], /* Low Surrogate */ + [0xde27, 0xde27], /* Low Surrogate */ + [0xde28, 0xde28], /* Low Surrogate */ + [0xde29, 0xde29], /* Low Surrogate */ + [0xde2a, 0xde2a], /* Low Surrogate */ + [0xde2b, 0xde2b], /* Low Surrogate */ + [0xde2c, 0xde2c], /* Low Surrogate */ + [0xde2d, 0xde2d], /* Low Surrogate */ + [0xde2e, 0xde2e], /* Low Surrogate */ + [0xde2f, 0xde2f], /* Low Surrogate */ + [0xde30, 0xde30], /* Low Surrogate */ + [0xde31, 0xde31], /* Low Surrogate */ + [0xde32, 0xde32], /* Low Surrogate */ + [0xde33, 0xde33], /* Low Surrogate */ + [0xde34, 0xde34], /* Low Surrogate */ + [0xde35, 0xde35], /* Low Surrogate */ + [0xde36, 0xde36], /* Low Surrogate */ + [0xde37, 0xde37], /* Low Surrogate */ + [0xde38, 0xde38], /* Low Surrogate */ + [0xde39, 0xde39], /* Low Surrogate */ + [0xde3a, 0xde3a], /* Low Surrogate */ + [0xde3b, 0xde3b], /* Low Surrogate */ + [0xde3c, 0xde3c], /* Low Surrogate */ + [0xde3d, 0xde3d], /* Low Surrogate */ + [0xde3e, 0xde3e], /* Low Surrogate */ + [0xde3f, 0xde3f], /* Low Surrogate */ + [0xde40, 0xde40], /* Low Surrogate */ + [0xde41, 0xde41], /* Low Surrogate */ + [0xde42, 0xde42], /* Low Surrogate */ + [0xde43, 0xde43], /* Low Surrogate */ + [0xde44, 0xde44], /* Low Surrogate */ + [0xde45, 0xde45], /* Low Surrogate */ + [0xde46, 0xde46], /* Low Surrogate */ + [0xde47, 0xde47], /* Low Surrogate */ + [0xde48, 0xde48], /* Low Surrogate */ + [0xde49, 0xde49], /* Low Surrogate */ + [0xde4a, 0xde4a], /* Low Surrogate */ + [0xde4b, 0xde4b], /* Low Surrogate */ + [0xde4c, 0xde4c], /* Low Surrogate */ + [0xde4d, 0xde4d], /* Low Surrogate */ + [0xde4e, 0xde4e], /* Low Surrogate */ + [0xde4f, 0xde4f], /* Low Surrogate */ + [0xde50, 0xde50], /* Low Surrogate */ + [0xde51, 0xde51], /* Low Surrogate */ + [0xde52, 0xde52], /* Low Surrogate */ + [0xde53, 0xde53], /* Low Surrogate */ + [0xde54, 0xde54], /* Low Surrogate */ + [0xde55, 0xde55], /* Low Surrogate */ + [0xde56, 0xde56], /* Low Surrogate */ + [0xde57, 0xde57], /* Low Surrogate */ + [0xde58, 0xde58], /* Low Surrogate */ + [0xde59, 0xde59], /* Low Surrogate */ + [0xde5a, 0xde5a], /* Low Surrogate */ + [0xde5b, 0xde5b], /* Low Surrogate */ + [0xde5c, 0xde5c], /* Low Surrogate */ + [0xde5d, 0xde5d], /* Low Surrogate */ + [0xde5e, 0xde5e], /* Low Surrogate */ + [0xde5f, 0xde5f], /* Low Surrogate */ + [0xde60, 0xde60], /* Low Surrogate */ + [0xde61, 0xde61], /* Low Surrogate */ + [0xde62, 0xde62], /* Low Surrogate */ + [0xde63, 0xde63], /* Low Surrogate */ + [0xde64, 0xde64], /* Low Surrogate */ + [0xde65, 0xde65], /* Low Surrogate */ + [0xde66, 0xde66], /* Low Surrogate */ + [0xde67, 0xde67], /* Low Surrogate */ + [0xde68, 0xde68], /* Low Surrogate */ + [0xde69, 0xde69], /* Low Surrogate */ + [0xde6a, 0xde6a], /* Low Surrogate */ + [0xde6b, 0xde6b], /* Low Surrogate */ + [0xde6c, 0xde6c], /* Low Surrogate */ + [0xde6d, 0xde6d], /* Low Surrogate */ + [0xde6e, 0xde6e], /* Low Surrogate */ + [0xde6f, 0xde6f], /* Low Surrogate */ + [0xde70, 0xde70], /* Low Surrogate */ + [0xde71, 0xde71], /* Low Surrogate */ + [0xde72, 0xde72], /* Low Surrogate */ + [0xde73, 0xde73], /* Low Surrogate */ + [0xde74, 0xde74], /* Low Surrogate */ + [0xde75, 0xde75], /* Low Surrogate */ + [0xde76, 0xde76], /* Low Surrogate */ + [0xde77, 0xde77], /* Low Surrogate */ + [0xde78, 0xde78], /* Low Surrogate */ + [0xde79, 0xde79], /* Low Surrogate */ + [0xde7a, 0xde7a], /* Low Surrogate */ + [0xde7b, 0xde7b], /* Low Surrogate */ + [0xde7c, 0xde7c], /* Low Surrogate */ + [0xde7d, 0xde7d], /* Low Surrogate */ + [0xde7e, 0xde7e], /* Low Surrogate */ + [0xde7f, 0xde7f], /* Low Surrogate */ + [0xde80, 0xde80], /* Low Surrogate */ + [0xde81, 0xde81], /* Low Surrogate */ + [0xde82, 0xde82], /* Low Surrogate */ + [0xde83, 0xde83], /* Low Surrogate */ + [0xde84, 0xde84], /* Low Surrogate */ + [0xde85, 0xde85], /* Low Surrogate */ + [0xde86, 0xde86], /* Low Surrogate */ + [0xde87, 0xde87], /* Low Surrogate */ + [0xde88, 0xde88], /* Low Surrogate */ + [0xde89, 0xde89], /* Low Surrogate */ + [0xde8a, 0xde8a], /* Low Surrogate */ + [0xde8b, 0xde8b], /* Low Surrogate */ + [0xde8c, 0xde8c], /* Low Surrogate */ + [0xde8d, 0xde8d], /* Low Surrogate */ + [0xde8e, 0xde8e], /* Low Surrogate */ + [0xde8f, 0xde8f], /* Low Surrogate */ + [0xde90, 0xde90], /* Low Surrogate */ + [0xde91, 0xde91], /* Low Surrogate */ + [0xde92, 0xde92], /* Low Surrogate */ + [0xde93, 0xde93], /* Low Surrogate */ + [0xde94, 0xde94], /* Low Surrogate */ + [0xde95, 0xde95], /* Low Surrogate */ + [0xde96, 0xde96], /* Low Surrogate */ + [0xde97, 0xde97], /* Low Surrogate */ + [0xde98, 0xde98], /* Low Surrogate */ + [0xde99, 0xde99], /* Low Surrogate */ + [0xde9a, 0xde9a], /* Low Surrogate */ + [0xde9b, 0xde9b], /* Low Surrogate */ + [0xde9c, 0xde9c], /* Low Surrogate */ + [0xde9d, 0xde9d], /* Low Surrogate */ + [0xde9e, 0xde9e], /* Low Surrogate */ + [0xde9f, 0xde9f], /* Low Surrogate */ + [0xdea0, 0xdea0], /* Low Surrogate */ + [0xdea1, 0xdea1], /* Low Surrogate */ + [0xdea2, 0xdea2], /* Low Surrogate */ + [0xdea3, 0xdea3], /* Low Surrogate */ + [0xdea4, 0xdea4], /* Low Surrogate */ + [0xdea5, 0xdea5], /* Low Surrogate */ + [0xdea6, 0xdea6], /* Low Surrogate */ + [0xdea7, 0xdea7], /* Low Surrogate */ + [0xdea8, 0xdea8], /* Low Surrogate */ + [0xdea9, 0xdea9], /* Low Surrogate */ + [0xdeaa, 0xdeaa], /* Low Surrogate */ + [0xdeab, 0xdeab], /* Low Surrogate */ + [0xdeac, 0xdeac], /* Low Surrogate */ + [0xdead, 0xdead], /* Low Surrogate */ + [0xdeae, 0xdeae], /* Low Surrogate */ + [0xdeaf, 0xdeaf], /* Low Surrogate */ + [0xdeb0, 0xdeb0], /* Low Surrogate */ + [0xdeb1, 0xdeb1], /* Low Surrogate */ + [0xdeb2, 0xdeb2], /* Low Surrogate */ + [0xdeb3, 0xdeb3], /* Low Surrogate */ + [0xdeb4, 0xdeb4], /* Low Surrogate */ + [0xdeb5, 0xdeb5], /* Low Surrogate */ + [0xdeb6, 0xdeb6], /* Low Surrogate */ + [0xdeb7, 0xdeb7], /* Low Surrogate */ + [0xdeb8, 0xdeb8], /* Low Surrogate */ + [0xdeb9, 0xdeb9], /* Low Surrogate */ + [0xdeba, 0xdeba], /* Low Surrogate */ + [0xdebb, 0xdebb], /* Low Surrogate */ + [0xdebc, 0xdebc], /* Low Surrogate */ + [0xdebd, 0xdebd], /* Low Surrogate */ + [0xdebe, 0xdebe], /* Low Surrogate */ + [0xdebf, 0xdebf], /* Low Surrogate */ + [0xdec0, 0xdec0], /* Low Surrogate */ + [0xdec1, 0xdec1], /* Low Surrogate */ + [0xdec2, 0xdec2], /* Low Surrogate */ + [0xdec3, 0xdec3], /* Low Surrogate */ + [0xdec4, 0xdec4], /* Low Surrogate */ + [0xdec5, 0xdec5], /* Low Surrogate */ + [0xdec6, 0xdec6], /* Low Surrogate */ + [0xdec7, 0xdec7], /* Low Surrogate */ + [0xdec8, 0xdec8], /* Low Surrogate */ + [0xdec9, 0xdec9], /* Low Surrogate */ + [0xdeca, 0xdeca], /* Low Surrogate */ + [0xdecb, 0xdecb], /* Low Surrogate */ + [0xdecc, 0xdecc], /* Low Surrogate */ + [0xdecd, 0xdecd], /* Low Surrogate */ + [0xdece, 0xdece], /* Low Surrogate */ + [0xdecf, 0xdecf], /* Low Surrogate */ + [0xded0, 0xded0], /* Low Surrogate */ + [0xded1, 0xded1], /* Low Surrogate */ + [0xded2, 0xded2], /* Low Surrogate */ + [0xded3, 0xded3], /* Low Surrogate */ + [0xded4, 0xded4], /* Low Surrogate */ + [0xded5, 0xded5], /* Low Surrogate */ + [0xded6, 0xded6], /* Low Surrogate */ + [0xded7, 0xded7], /* Low Surrogate */ + [0xded8, 0xded8], /* Low Surrogate */ + [0xded9, 0xded9], /* Low Surrogate */ + [0xdeda, 0xdeda], /* Low Surrogate */ + [0xdedb, 0xdedb], /* Low Surrogate */ + [0xdedc, 0xdedc], /* Low Surrogate */ + [0xdedd, 0xdedd], /* Low Surrogate */ + [0xdede, 0xdede], /* Low Surrogate */ + [0xdedf, 0xdedf], /* Low Surrogate */ + [0xdee0, 0xdee0], /* Low Surrogate */ + [0xdee1, 0xdee1], /* Low Surrogate */ + [0xdee2, 0xdee2], /* Low Surrogate */ + [0xdee3, 0xdee3], /* Low Surrogate */ + [0xdee4, 0xdee4], /* Low Surrogate */ + [0xdee5, 0xdee5], /* Low Surrogate */ + [0xdee6, 0xdee6], /* Low Surrogate */ + [0xdee7, 0xdee7], /* Low Surrogate */ + [0xdee8, 0xdee8], /* Low Surrogate */ + [0xdee9, 0xdee9], /* Low Surrogate */ + [0xdeea, 0xdeea], /* Low Surrogate */ + [0xdeeb, 0xdeeb], /* Low Surrogate */ + [0xdeec, 0xdeec], /* Low Surrogate */ + [0xdeed, 0xdeed], /* Low Surrogate */ + [0xdeee, 0xdeee], /* Low Surrogate */ + [0xdeef, 0xdeef], /* Low Surrogate */ + [0xdef0, 0xdef0], /* Low Surrogate */ + [0xdef1, 0xdef1], /* Low Surrogate */ + [0xdef2, 0xdef2], /* Low Surrogate */ + [0xdef3, 0xdef3], /* Low Surrogate */ + [0xdef4, 0xdef4], /* Low Surrogate */ + [0xdef5, 0xdef5], /* Low Surrogate */ + [0xdef6, 0xdef6], /* Low Surrogate */ + [0xdef7, 0xdef7], /* Low Surrogate */ + [0xdef8, 0xdef8], /* Low Surrogate */ + [0xdef9, 0xdef9], /* Low Surrogate */ + [0xdefa, 0xdefa], /* Low Surrogate */ + [0xdefb, 0xdefb], /* Low Surrogate */ + [0xdefc, 0xdefc], /* Low Surrogate */ + [0xdefd, 0xdefd], /* Low Surrogate */ + [0xdefe, 0xdefe], /* Low Surrogate */ + [0xdeff, 0xdeff], /* Low Surrogate */ + [0xdf00, 0xdf00], /* Low Surrogate */ + [0xdf01, 0xdf01], /* Low Surrogate */ + [0xdf02, 0xdf02], /* Low Surrogate */ + [0xdf03, 0xdf03], /* Low Surrogate */ + [0xdf04, 0xdf04], /* Low Surrogate */ + [0xdf05, 0xdf05], /* Low Surrogate */ + [0xdf06, 0xdf06], /* Low Surrogate */ + [0xdf07, 0xdf07], /* Low Surrogate */ + [0xdf08, 0xdf08], /* Low Surrogate */ + [0xdf09, 0xdf09], /* Low Surrogate */ + [0xdf0a, 0xdf0a], /* Low Surrogate */ + [0xdf0b, 0xdf0b], /* Low Surrogate */ + [0xdf0c, 0xdf0c], /* Low Surrogate */ + [0xdf0d, 0xdf0d], /* Low Surrogate */ + [0xdf0e, 0xdf0e], /* Low Surrogate */ + [0xdf0f, 0xdf0f], /* Low Surrogate */ + [0xdf10, 0xdf10], /* Low Surrogate */ + [0xdf11, 0xdf11], /* Low Surrogate */ + [0xdf12, 0xdf12], /* Low Surrogate */ + [0xdf13, 0xdf13], /* Low Surrogate */ + [0xdf14, 0xdf14], /* Low Surrogate */ + [0xdf15, 0xdf15], /* Low Surrogate */ + [0xdf16, 0xdf16], /* Low Surrogate */ + [0xdf17, 0xdf17], /* Low Surrogate */ + [0xdf18, 0xdf18], /* Low Surrogate */ + [0xdf19, 0xdf19], /* Low Surrogate */ + [0xdf1a, 0xdf1a], /* Low Surrogate */ + [0xdf1b, 0xdf1b], /* Low Surrogate */ + [0xdf1c, 0xdf1c], /* Low Surrogate */ + [0xdf1d, 0xdf1d], /* Low Surrogate */ + [0xdf1e, 0xdf1e], /* Low Surrogate */ + [0xdf1f, 0xdf1f], /* Low Surrogate */ + [0xdf20, 0xdf20], /* Low Surrogate */ + [0xdf21, 0xdf21], /* Low Surrogate */ + [0xdf22, 0xdf22], /* Low Surrogate */ + [0xdf23, 0xdf23], /* Low Surrogate */ + [0xdf24, 0xdf24], /* Low Surrogate */ + [0xdf25, 0xdf25], /* Low Surrogate */ + [0xdf26, 0xdf26], /* Low Surrogate */ + [0xdf27, 0xdf27], /* Low Surrogate */ + [0xdf28, 0xdf28], /* Low Surrogate */ + [0xdf29, 0xdf29], /* Low Surrogate */ + [0xdf2a, 0xdf2a], /* Low Surrogate */ + [0xdf2b, 0xdf2b], /* Low Surrogate */ + [0xdf2c, 0xdf2c], /* Low Surrogate */ + [0xdf2d, 0xdf2d], /* Low Surrogate */ + [0xdf2e, 0xdf2e], /* Low Surrogate */ + [0xdf2f, 0xdf2f], /* Low Surrogate */ + [0xdf30, 0xdf30], /* Low Surrogate */ + [0xdf31, 0xdf31], /* Low Surrogate */ + [0xdf32, 0xdf32], /* Low Surrogate */ + [0xdf33, 0xdf33], /* Low Surrogate */ + [0xdf34, 0xdf34], /* Low Surrogate */ + [0xdf35, 0xdf35], /* Low Surrogate */ + [0xdf36, 0xdf36], /* Low Surrogate */ + [0xdf37, 0xdf37], /* Low Surrogate */ + [0xdf38, 0xdf38], /* Low Surrogate */ + [0xdf39, 0xdf39], /* Low Surrogate */ + [0xdf3a, 0xdf3a], /* Low Surrogate */ + [0xdf3b, 0xdf3b], /* Low Surrogate */ + [0xdf3c, 0xdf3c], /* Low Surrogate */ + [0xdf3d, 0xdf3d], /* Low Surrogate */ + [0xdf3e, 0xdf3e], /* Low Surrogate */ + [0xdf3f, 0xdf3f], /* Low Surrogate */ + [0xdf40, 0xdf40], /* Low Surrogate */ + [0xdf41, 0xdf41], /* Low Surrogate */ + [0xdf42, 0xdf42], /* Low Surrogate */ + [0xdf43, 0xdf43], /* Low Surrogate */ + [0xdf44, 0xdf44], /* Low Surrogate */ + [0xdf45, 0xdf45], /* Low Surrogate */ + [0xdf46, 0xdf46], /* Low Surrogate */ + [0xdf47, 0xdf47], /* Low Surrogate */ + [0xdf48, 0xdf48], /* Low Surrogate */ + [0xdf49, 0xdf49], /* Low Surrogate */ + [0xdf4a, 0xdf4a], /* Low Surrogate */ + [0xdf4b, 0xdf4b], /* Low Surrogate */ + [0xdf4c, 0xdf4c], /* Low Surrogate */ + [0xdf4d, 0xdf4d], /* Low Surrogate */ + [0xdf4e, 0xdf4e], /* Low Surrogate */ + [0xdf4f, 0xdf4f], /* Low Surrogate */ + [0xdf50, 0xdf50], /* Low Surrogate */ + [0xdf51, 0xdf51], /* Low Surrogate */ + [0xdf52, 0xdf52], /* Low Surrogate */ + [0xdf53, 0xdf53], /* Low Surrogate */ + [0xdf54, 0xdf54], /* Low Surrogate */ + [0xdf55, 0xdf55], /* Low Surrogate */ + [0xdf56, 0xdf56], /* Low Surrogate */ + [0xdf57, 0xdf57], /* Low Surrogate */ + [0xdf58, 0xdf58], /* Low Surrogate */ + [0xdf59, 0xdf59], /* Low Surrogate */ + [0xdf5a, 0xdf5a], /* Low Surrogate */ + [0xdf5b, 0xdf5b], /* Low Surrogate */ + [0xdf5c, 0xdf5c], /* Low Surrogate */ + [0xdf5d, 0xdf5d], /* Low Surrogate */ + [0xdf5e, 0xdf5e], /* Low Surrogate */ + [0xdf5f, 0xdf5f], /* Low Surrogate */ + [0xdf60, 0xdf60], /* Low Surrogate */ + [0xdf61, 0xdf61], /* Low Surrogate */ + [0xdf62, 0xdf62], /* Low Surrogate */ + [0xdf63, 0xdf63], /* Low Surrogate */ + [0xdf64, 0xdf64], /* Low Surrogate */ + [0xdf65, 0xdf65], /* Low Surrogate */ + [0xdf66, 0xdf66], /* Low Surrogate */ + [0xdf67, 0xdf67], /* Low Surrogate */ + [0xdf68, 0xdf68], /* Low Surrogate */ + [0xdf69, 0xdf69], /* Low Surrogate */ + [0xdf6a, 0xdf6a], /* Low Surrogate */ + [0xdf6b, 0xdf6b], /* Low Surrogate */ + [0xdf6c, 0xdf6c], /* Low Surrogate */ + [0xdf6d, 0xdf6d], /* Low Surrogate */ + [0xdf6e, 0xdf6e], /* Low Surrogate */ + [0xdf6f, 0xdf6f], /* Low Surrogate */ + [0xdf70, 0xdf70], /* Low Surrogate */ + [0xdf71, 0xdf71], /* Low Surrogate */ + [0xdf72, 0xdf72], /* Low Surrogate */ + [0xdf73, 0xdf73], /* Low Surrogate */ + [0xdf74, 0xdf74], /* Low Surrogate */ + [0xdf75, 0xdf75], /* Low Surrogate */ + [0xdf76, 0xdf76], /* Low Surrogate */ + [0xdf77, 0xdf77], /* Low Surrogate */ + [0xdf78, 0xdf78], /* Low Surrogate */ + [0xdf79, 0xdf79], /* Low Surrogate */ + [0xdf7a, 0xdf7a], /* Low Surrogate */ + [0xdf7b, 0xdf7b], /* Low Surrogate */ + [0xdf7c, 0xdf7c], /* Low Surrogate */ + [0xdf7d, 0xdf7d], /* Low Surrogate */ + [0xdf7e, 0xdf7e], /* Low Surrogate */ + [0xdf7f, 0xdf7f], /* Low Surrogate */ + [0xdf80, 0xdf80], /* Low Surrogate */ + [0xdf81, 0xdf81], /* Low Surrogate */ + [0xdf82, 0xdf82], /* Low Surrogate */ + [0xdf83, 0xdf83], /* Low Surrogate */ + [0xdf84, 0xdf84], /* Low Surrogate */ + [0xdf85, 0xdf85], /* Low Surrogate */ + [0xdf86, 0xdf86], /* Low Surrogate */ + [0xdf87, 0xdf87], /* Low Surrogate */ + [0xdf88, 0xdf88], /* Low Surrogate */ + [0xdf89, 0xdf89], /* Low Surrogate */ + [0xdf8a, 0xdf8a], /* Low Surrogate */ + [0xdf8b, 0xdf8b], /* Low Surrogate */ + [0xdf8c, 0xdf8c], /* Low Surrogate */ + [0xdf8d, 0xdf8d], /* Low Surrogate */ + [0xdf8e, 0xdf8e], /* Low Surrogate */ + [0xdf8f, 0xdf8f], /* Low Surrogate */ + [0xdf90, 0xdf90], /* Low Surrogate */ + [0xdf91, 0xdf91], /* Low Surrogate */ + [0xdf92, 0xdf92], /* Low Surrogate */ + [0xdf93, 0xdf93], /* Low Surrogate */ + [0xdf94, 0xdf94], /* Low Surrogate */ + [0xdf95, 0xdf95], /* Low Surrogate */ + [0xdf96, 0xdf96], /* Low Surrogate */ + [0xdf97, 0xdf97], /* Low Surrogate */ + [0xdf98, 0xdf98], /* Low Surrogate */ + [0xdf99, 0xdf99], /* Low Surrogate */ + [0xdf9a, 0xdf9a], /* Low Surrogate */ + [0xdf9b, 0xdf9b], /* Low Surrogate */ + [0xdf9c, 0xdf9c], /* Low Surrogate */ + [0xdf9d, 0xdf9d], /* Low Surrogate */ + [0xdf9e, 0xdf9e], /* Low Surrogate */ + [0xdf9f, 0xdf9f], /* Low Surrogate */ + [0xdfa0, 0xdfa0], /* Low Surrogate */ + [0xdfa1, 0xdfa1], /* Low Surrogate */ + [0xdfa2, 0xdfa2], /* Low Surrogate */ + [0xdfa3, 0xdfa3], /* Low Surrogate */ + [0xdfa4, 0xdfa4], /* Low Surrogate */ + [0xdfa5, 0xdfa5], /* Low Surrogate */ + [0xdfa6, 0xdfa6], /* Low Surrogate */ + [0xdfa7, 0xdfa7], /* Low Surrogate */ + [0xdfa8, 0xdfa8], /* Low Surrogate */ + [0xdfa9, 0xdfa9], /* Low Surrogate */ + [0xdfaa, 0xdfaa], /* Low Surrogate */ + [0xdfab, 0xdfab], /* Low Surrogate */ + [0xdfac, 0xdfac], /* Low Surrogate */ + [0xdfad, 0xdfad], /* Low Surrogate */ + [0xdfae, 0xdfae], /* Low Surrogate */ + [0xdfaf, 0xdfaf], /* Low Surrogate */ + [0xdfb0, 0xdfb0], /* Low Surrogate */ + [0xdfb1, 0xdfb1], /* Low Surrogate */ + [0xdfb2, 0xdfb2], /* Low Surrogate */ + [0xdfb3, 0xdfb3], /* Low Surrogate */ + [0xdfb4, 0xdfb4], /* Low Surrogate */ + [0xdfb5, 0xdfb5], /* Low Surrogate */ + [0xdfb6, 0xdfb6], /* Low Surrogate */ + [0xdfb7, 0xdfb7], /* Low Surrogate */ + [0xdfb8, 0xdfb8], /* Low Surrogate */ + [0xdfb9, 0xdfb9], /* Low Surrogate */ + [0xdfba, 0xdfba], /* Low Surrogate */ + [0xdfbb, 0xdfbb], /* Low Surrogate */ + [0xdfbc, 0xdfbc], /* Low Surrogate */ + [0xdfbd, 0xdfbd], /* Low Surrogate */ + [0xdfbe, 0xdfbe], /* Low Surrogate */ + [0xdfbf, 0xdfbf], /* Low Surrogate */ + [0xdfc0, 0xdfc0], /* Low Surrogate */ + [0xdfc1, 0xdfc1], /* Low Surrogate */ + [0xdfc2, 0xdfc2], /* Low Surrogate */ + [0xdfc3, 0xdfc3], /* Low Surrogate */ + [0xdfc4, 0xdfc4], /* Low Surrogate */ + [0xdfc5, 0xdfc5], /* Low Surrogate */ + [0xdfc6, 0xdfc6], /* Low Surrogate */ + [0xdfc7, 0xdfc7], /* Low Surrogate */ + [0xdfc8, 0xdfc8], /* Low Surrogate */ + [0xdfc9, 0xdfc9], /* Low Surrogate */ + [0xdfca, 0xdfca], /* Low Surrogate */ + [0xdfcb, 0xdfcb], /* Low Surrogate */ + [0xdfcc, 0xdfcc], /* Low Surrogate */ + [0xdfcd, 0xdfcd], /* Low Surrogate */ + [0xdfce, 0xdfce], /* Low Surrogate */ + [0xdfcf, 0xdfcf], /* Low Surrogate */ + [0xdfd0, 0xdfd0], /* Low Surrogate */ + [0xdfd1, 0xdfd1], /* Low Surrogate */ + [0xdfd2, 0xdfd2], /* Low Surrogate */ + [0xdfd3, 0xdfd3], /* Low Surrogate */ + [0xdfd4, 0xdfd4], /* Low Surrogate */ + [0xdfd5, 0xdfd5], /* Low Surrogate */ + [0xdfd6, 0xdfd6], /* Low Surrogate */ + [0xdfd7, 0xdfd7], /* Low Surrogate */ + [0xdfd8, 0xdfd8], /* Low Surrogate */ + [0xdfd9, 0xdfd9], /* Low Surrogate */ + [0xdfda, 0xdfda], /* Low Surrogate */ + [0xdfdb, 0xdfdb], /* Low Surrogate */ + [0xdfdc, 0xdfdc], /* Low Surrogate */ + [0xdfdd, 0xdfdd], /* Low Surrogate */ + [0xdfde, 0xdfde], /* Low Surrogate */ + [0xdfdf, 0xdfdf], /* Low Surrogate */ + [0xdfe0, 0xdfe0], /* Low Surrogate */ + [0xdfe1, 0xdfe1], /* Low Surrogate */ + [0xdfe2, 0xdfe2], /* Low Surrogate */ + [0xdfe3, 0xdfe3], /* Low Surrogate */ + [0xdfe4, 0xdfe4], /* Low Surrogate */ + [0xdfe5, 0xdfe5], /* Low Surrogate */ + [0xdfe6, 0xdfe6], /* Low Surrogate */ + [0xdfe7, 0xdfe7], /* Low Surrogate */ + [0xdfe8, 0xdfe8], /* Low Surrogate */ + [0xdfe9, 0xdfe9], /* Low Surrogate */ + [0xdfea, 0xdfea], /* Low Surrogate */ + [0xdfeb, 0xdfeb], /* Low Surrogate */ + [0xdfec, 0xdfec], /* Low Surrogate */ + [0xdfed, 0xdfed], /* Low Surrogate */ + [0xdfee, 0xdfee], /* Low Surrogate */ + [0xdfef, 0xdfef], /* Low Surrogate */ + [0xdff0, 0xdff0], /* Low Surrogate */ + [0xdff1, 0xdff1], /* Low Surrogate */ + [0xdff2, 0xdff2], /* Low Surrogate */ + [0xdff3, 0xdff3], /* Low Surrogate */ + [0xdff4, 0xdff4], /* Low Surrogate */ + [0xdff5, 0xdff5], /* Low Surrogate */ + [0xdff6, 0xdff6], /* Low Surrogate */ + [0xdff7, 0xdff7], /* Low Surrogate */ + [0xdff8, 0xdff8], /* Low Surrogate */ + [0xdff9, 0xdff9], /* Low Surrogate */ + [0xdffa, 0xdffa], /* Low Surrogate */ + [0xdffb, 0xdffb], /* Low Surrogate */ + [0xdffc, 0xdffc], /* Low Surrogate */ + [0xdffd, 0xdffd], /* Low Surrogate */ + [0xdffe, 0xdffe], /* Low Surrogate */ + [0xdfff, 0xdfff], /* Low Surrogate */ + [0xe000, 0xe000], /* Private Use */ + [0xe001, 0xe001], /* Private Use */ + [0xe002, 0xe002], /* Private Use */ + [0xe003, 0xe003], /* Private Use */ + [0xe004, 0xe004], /* Private Use */ + [0xe005, 0xe005], /* Private Use */ + [0xe006, 0xe006], /* Private Use */ + [0xe007, 0xe007], /* Private Use */ + [0xe008, 0xe008], /* Private Use */ + [0xe009, 0xe009], /* Private Use */ + [0xe00a, 0xe00a], /* Private Use */ + [0xe00b, 0xe00b], /* Private Use */ + [0xe00c, 0xe00c], /* Private Use */ + [0xe00d, 0xe00d], /* Private Use */ + [0xe00e, 0xe00e], /* Private Use */ + [0xe00f, 0xe00f], /* Private Use */ + [0xe010, 0xe010], /* Private Use */ + [0xe011, 0xe011], /* Private Use */ + [0xe012, 0xe012], /* Private Use */ + [0xe013, 0xe013], /* Private Use */ + [0xe014, 0xe014], /* Private Use */ + [0xe015, 0xe015], /* Private Use */ + [0xe016, 0xe016], /* Private Use */ + [0xe017, 0xe017], /* Private Use */ + [0xe018, 0xe018], /* Private Use */ + [0xe019, 0xe019], /* Private Use */ + [0xe01a, 0xe01a], /* Private Use */ + [0xe01b, 0xe01b], /* Private Use */ + [0xe01c, 0xe01c], /* Private Use */ + [0xe01d, 0xe01d], /* Private Use */ + [0xe01e, 0xe01e], /* Private Use */ + [0xe01f, 0xe01f], /* Private Use */ + [0xe020, 0xe020], /* Private Use */ + [0xe021, 0xe021], /* Private Use */ + [0xe022, 0xe022], /* Private Use */ + [0xe023, 0xe023], /* Private Use */ + [0xe024, 0xe024], /* Private Use */ + [0xe025, 0xe025], /* Private Use */ + [0xe026, 0xe026], /* Private Use */ + [0xe027, 0xe027], /* Private Use */ + [0xe028, 0xe028], /* Private Use */ + [0xe029, 0xe029], /* Private Use */ + [0xe02a, 0xe02a], /* Private Use */ + [0xe02b, 0xe02b], /* Private Use */ + [0xe02c, 0xe02c], /* Private Use */ + [0xe02d, 0xe02d], /* Private Use */ + [0xe02e, 0xe02e], /* Private Use */ + [0xe02f, 0xe02f], /* Private Use */ + [0xe030, 0xe030], /* Private Use */ + [0xe031, 0xe031], /* Private Use */ + [0xe032, 0xe032], /* Private Use */ + [0xe033, 0xe033], /* Private Use */ + [0xe034, 0xe034], /* Private Use */ + [0xe035, 0xe035], /* Private Use */ + [0xe036, 0xe036], /* Private Use */ + [0xe037, 0xe037], /* Private Use */ + [0xe038, 0xe038], /* Private Use */ + [0xe039, 0xe039], /* Private Use */ + [0xe03a, 0xe03a], /* Private Use */ + [0xe03b, 0xe03b], /* Private Use */ + [0xe03c, 0xe03c], /* Private Use */ + [0xe03d, 0xe03d], /* Private Use */ + [0xe03e, 0xe03e], /* Private Use */ + [0xe03f, 0xe03f], /* Private Use */ + [0xe040, 0xe040], /* Private Use */ + [0xe041, 0xe041], /* Private Use */ + [0xe042, 0xe042], /* Private Use */ + [0xe043, 0xe043], /* Private Use */ + [0xe044, 0xe044], /* Private Use */ + [0xe045, 0xe045], /* Private Use */ + [0xe046, 0xe046], /* Private Use */ + [0xe047, 0xe047], /* Private Use */ + [0xe048, 0xe048], /* Private Use */ + [0xe049, 0xe049], /* Private Use */ + [0xe04a, 0xe04a], /* Private Use */ + [0xe04b, 0xe04b], /* Private Use */ + [0xe04c, 0xe04c], /* Private Use */ + [0xe04d, 0xe04d], /* Private Use */ + [0xe04e, 0xe04e], /* Private Use */ + [0xe04f, 0xe04f], /* Private Use */ + [0xe050, 0xe050], /* Private Use */ + [0xe051, 0xe051], /* Private Use */ + [0xe052, 0xe052], /* Private Use */ + [0xe053, 0xe053], /* Private Use */ + [0xe054, 0xe054], /* Private Use */ + [0xe055, 0xe055], /* Private Use */ + [0xe056, 0xe056], /* Private Use */ + [0xe057, 0xe057], /* Private Use */ + [0xe058, 0xe058], /* Private Use */ + [0xe059, 0xe059], /* Private Use */ + [0xe05a, 0xe05a], /* Private Use */ + [0xe05b, 0xe05b], /* Private Use */ + [0xe05c, 0xe05c], /* Private Use */ + [0xe05d, 0xe05d], /* Private Use */ + [0xe05e, 0xe05e], /* Private Use */ + [0xe05f, 0xe05f], /* Private Use */ + [0xe060, 0xe060], /* Private Use */ + [0xe061, 0xe061], /* Private Use */ + [0xe062, 0xe062], /* Private Use */ + [0xe063, 0xe063], /* Private Use */ + [0xe064, 0xe064], /* Private Use */ + [0xe065, 0xe065], /* Private Use */ + [0xe066, 0xe066], /* Private Use */ + [0xe067, 0xe067], /* Private Use */ + [0xe068, 0xe068], /* Private Use */ + [0xe069, 0xe069], /* Private Use */ + [0xe06a, 0xe06a], /* Private Use */ + [0xe06b, 0xe06b], /* Private Use */ + [0xe06c, 0xe06c], /* Private Use */ + [0xe06d, 0xe06d], /* Private Use */ + [0xe06e, 0xe06e], /* Private Use */ + [0xe06f, 0xe06f], /* Private Use */ + [0xe070, 0xe070], /* Private Use */ + [0xe071, 0xe071], /* Private Use */ + [0xe072, 0xe072], /* Private Use */ + [0xe073, 0xe073], /* Private Use */ + [0xe074, 0xe074], /* Private Use */ + [0xe075, 0xe075], /* Private Use */ + [0xe076, 0xe076], /* Private Use */ + [0xe077, 0xe077], /* Private Use */ + [0xe078, 0xe078], /* Private Use */ + [0xe079, 0xe079], /* Private Use */ + [0xe07a, 0xe07a], /* Private Use */ + [0xe07b, 0xe07b], /* Private Use */ + [0xe07c, 0xe07c], /* Private Use */ + [0xe07d, 0xe07d], /* Private Use */ + [0xe07e, 0xe07e], /* Private Use */ + [0xe07f, 0xe07f], /* Private Use */ + [0xe080, 0xe080], /* Private Use */ + [0xe081, 0xe081], /* Private Use */ + [0xe082, 0xe082], /* Private Use */ + [0xe083, 0xe083], /* Private Use */ + [0xe084, 0xe084], /* Private Use */ + [0xe085, 0xe085], /* Private Use */ + [0xe086, 0xe086], /* Private Use */ + [0xe087, 0xe087], /* Private Use */ + [0xe088, 0xe088], /* Private Use */ + [0xe089, 0xe089], /* Private Use */ + [0xe08a, 0xe08a], /* Private Use */ + [0xe08b, 0xe08b], /* Private Use */ + [0xe08c, 0xe08c], /* Private Use */ + [0xe08d, 0xe08d], /* Private Use */ + [0xe08e, 0xe08e], /* Private Use */ + [0xe08f, 0xe08f], /* Private Use */ + [0xe090, 0xe090], /* Private Use */ + [0xe091, 0xe091], /* Private Use */ + [0xe092, 0xe092], /* Private Use */ + [0xe093, 0xe093], /* Private Use */ + [0xe094, 0xe094], /* Private Use */ + [0xe095, 0xe095], /* Private Use */ + [0xe096, 0xe096], /* Private Use */ + [0xe097, 0xe097], /* Private Use */ + [0xe098, 0xe098], /* Private Use */ + [0xe099, 0xe099], /* Private Use */ + [0xe09a, 0xe09a], /* Private Use */ + [0xe09b, 0xe09b], /* Private Use */ + [0xe09c, 0xe09c], /* Private Use */ + [0xe09d, 0xe09d], /* Private Use */ + [0xe09e, 0xe09e], /* Private Use */ + [0xe09f, 0xe09f], /* Private Use */ + [0xe0a0, 0xe0a0], /* Private Use */ + [0xe0a1, 0xe0a1], /* Private Use */ + [0xe0a2, 0xe0a2], /* Private Use */ + [0xe0a3, 0xe0a3], /* Private Use */ + [0xe0a4, 0xe0a4], /* Private Use */ + [0xe0a5, 0xe0a5], /* Private Use */ + [0xe0a6, 0xe0a6], /* Private Use */ + [0xe0a7, 0xe0a7], /* Private Use */ + [0xe0a8, 0xe0a8], /* Private Use */ + [0xe0a9, 0xe0a9], /* Private Use */ + [0xe0aa, 0xe0aa], /* Private Use */ + [0xe0ab, 0xe0ab], /* Private Use */ + [0xe0ac, 0xe0ac], /* Private Use */ + [0xe0ad, 0xe0ad], /* Private Use */ + [0xe0ae, 0xe0ae], /* Private Use */ + [0xe0af, 0xe0af], /* Private Use */ + [0xe0b0, 0xe0b0], /* Private Use */ + [0xe0b1, 0xe0b1], /* Private Use */ + [0xe0b2, 0xe0b2], /* Private Use */ + [0xe0b3, 0xe0b3], /* Private Use */ + [0xe0b4, 0xe0b4], /* Private Use */ + [0xe0b5, 0xe0b5], /* Private Use */ + [0xe0b6, 0xe0b6], /* Private Use */ + [0xe0b7, 0xe0b7], /* Private Use */ + [0xe0b8, 0xe0b8], /* Private Use */ + [0xe0b9, 0xe0b9], /* Private Use */ + [0xe0ba, 0xe0ba], /* Private Use */ + [0xe0bb, 0xe0bb], /* Private Use */ + [0xe0bc, 0xe0bc], /* Private Use */ + [0xe0bd, 0xe0bd], /* Private Use */ + [0xe0be, 0xe0be], /* Private Use */ + [0xe0bf, 0xe0bf], /* Private Use */ + [0xe0c0, 0xe0c0], /* Private Use */ + [0xe0c1, 0xe0c1], /* Private Use */ + [0xe0c2, 0xe0c2], /* Private Use */ + [0xe0c3, 0xe0c3], /* Private Use */ + [0xe0c4, 0xe0c4], /* Private Use */ + [0xe0c5, 0xe0c5], /* Private Use */ + [0xe0c6, 0xe0c6], /* Private Use */ + [0xe0c7, 0xe0c7], /* Private Use */ + [0xe0c8, 0xe0c8], /* Private Use */ + [0xe0c9, 0xe0c9], /* Private Use */ + [0xe0ca, 0xe0ca], /* Private Use */ + [0xe0cb, 0xe0cb], /* Private Use */ + [0xe0cc, 0xe0cc], /* Private Use */ + [0xe0cd, 0xe0cd], /* Private Use */ + [0xe0ce, 0xe0ce], /* Private Use */ + [0xe0cf, 0xe0cf], /* Private Use */ + [0xe0d0, 0xe0d0], /* Private Use */ + [0xe0d1, 0xe0d1], /* Private Use */ + [0xe0d2, 0xe0d2], /* Private Use */ + [0xe0d3, 0xe0d3], /* Private Use */ + [0xe0d4, 0xe0d4], /* Private Use */ + [0xe0d5, 0xe0d5], /* Private Use */ + [0xe0d6, 0xe0d6], /* Private Use */ + [0xe0d7, 0xe0d7], /* Private Use */ + [0xe0d8, 0xe0d8], /* Private Use */ + [0xe0d9, 0xe0d9], /* Private Use */ + [0xe0da, 0xe0da], /* Private Use */ + [0xe0db, 0xe0db], /* Private Use */ + [0xe0dc, 0xe0dc], /* Private Use */ + [0xe0dd, 0xe0dd], /* Private Use */ + [0xe0de, 0xe0de], /* Private Use */ + [0xe0df, 0xe0df], /* Private Use */ + [0xe0e0, 0xe0e0], /* Private Use */ + [0xe0e1, 0xe0e1], /* Private Use */ + [0xe0e2, 0xe0e2], /* Private Use */ + [0xe0e3, 0xe0e3], /* Private Use */ + [0xe0e4, 0xe0e4], /* Private Use */ + [0xe0e5, 0xe0e5], /* Private Use */ + [0xe0e6, 0xe0e6], /* Private Use */ + [0xe0e7, 0xe0e7], /* Private Use */ + [0xe0e8, 0xe0e8], /* Private Use */ + [0xe0e9, 0xe0e9], /* Private Use */ + [0xe0ea, 0xe0ea], /* Private Use */ + [0xe0eb, 0xe0eb], /* Private Use */ + [0xe0ec, 0xe0ec], /* Private Use */ + [0xe0ed, 0xe0ed], /* Private Use */ + [0xe0ee, 0xe0ee], /* Private Use */ + [0xe0ef, 0xe0ef], /* Private Use */ + [0xe0f0, 0xe0f0], /* Private Use */ + [0xe0f1, 0xe0f1], /* Private Use */ + [0xe0f2, 0xe0f2], /* Private Use */ + [0xe0f3, 0xe0f3], /* Private Use */ + [0xe0f4, 0xe0f4], /* Private Use */ + [0xe0f5, 0xe0f5], /* Private Use */ + [0xe0f6, 0xe0f6], /* Private Use */ + [0xe0f7, 0xe0f7], /* Private Use */ + [0xe0f8, 0xe0f8], /* Private Use */ + [0xe0f9, 0xe0f9], /* Private Use */ + [0xe0fa, 0xe0fa], /* Private Use */ + [0xe0fb, 0xe0fb], /* Private Use */ + [0xe0fc, 0xe0fc], /* Private Use */ + [0xe0fd, 0xe0fd], /* Private Use */ + [0xe0fe, 0xe0fe], /* Private Use */ + [0xe0ff, 0xe0ff], /* Private Use */ + [0xe100, 0xe100], /* Private Use */ + [0xe101, 0xe101], /* Private Use */ + [0xe102, 0xe102], /* Private Use */ + [0xe103, 0xe103], /* Private Use */ + [0xe104, 0xe104], /* Private Use */ + [0xe105, 0xe105], /* Private Use */ + [0xe106, 0xe106], /* Private Use */ + [0xe107, 0xe107], /* Private Use */ + [0xe108, 0xe108], /* Private Use */ + [0xe109, 0xe109], /* Private Use */ + [0xe10a, 0xe10a], /* Private Use */ + [0xe10b, 0xe10b], /* Private Use */ + [0xe10c, 0xe10c], /* Private Use */ + [0xe10d, 0xe10d], /* Private Use */ + [0xe10e, 0xe10e], /* Private Use */ + [0xe10f, 0xe10f], /* Private Use */ + [0xe110, 0xe110], /* Private Use */ + [0xe111, 0xe111], /* Private Use */ + [0xe112, 0xe112], /* Private Use */ + [0xe113, 0xe113], /* Private Use */ + [0xe114, 0xe114], /* Private Use */ + [0xe115, 0xe115], /* Private Use */ + [0xe116, 0xe116], /* Private Use */ + [0xe117, 0xe117], /* Private Use */ + [0xe118, 0xe118], /* Private Use */ + [0xe119, 0xe119], /* Private Use */ + [0xe11a, 0xe11a], /* Private Use */ + [0xe11b, 0xe11b], /* Private Use */ + [0xe11c, 0xe11c], /* Private Use */ + [0xe11d, 0xe11d], /* Private Use */ + [0xe11e, 0xe11e], /* Private Use */ + [0xe11f, 0xe11f], /* Private Use */ + [0xe120, 0xe120], /* Private Use */ + [0xe121, 0xe121], /* Private Use */ + [0xe122, 0xe122], /* Private Use */ + [0xe123, 0xe123], /* Private Use */ + [0xe124, 0xe124], /* Private Use */ + [0xe125, 0xe125], /* Private Use */ + [0xe126, 0xe126], /* Private Use */ + [0xe127, 0xe127], /* Private Use */ + [0xe128, 0xe128], /* Private Use */ + [0xe129, 0xe129], /* Private Use */ + [0xe12a, 0xe12a], /* Private Use */ + [0xe12b, 0xe12b], /* Private Use */ + [0xe12c, 0xe12c], /* Private Use */ + [0xe12d, 0xe12d], /* Private Use */ + [0xe12e, 0xe12e], /* Private Use */ + [0xe12f, 0xe12f], /* Private Use */ + [0xe130, 0xe130], /* Private Use */ + [0xe131, 0xe131], /* Private Use */ + [0xe132, 0xe132], /* Private Use */ + [0xe133, 0xe133], /* Private Use */ + [0xe134, 0xe134], /* Private Use */ + [0xe135, 0xe135], /* Private Use */ + [0xe136, 0xe136], /* Private Use */ + [0xe137, 0xe137], /* Private Use */ + [0xe138, 0xe138], /* Private Use */ + [0xe139, 0xe139], /* Private Use */ + [0xe13a, 0xe13a], /* Private Use */ + [0xe13b, 0xe13b], /* Private Use */ + [0xe13c, 0xe13c], /* Private Use */ + [0xe13d, 0xe13d], /* Private Use */ + [0xe13e, 0xe13e], /* Private Use */ + [0xe13f, 0xe13f], /* Private Use */ + [0xe140, 0xe140], /* Private Use */ + [0xe141, 0xe141], /* Private Use */ + [0xe142, 0xe142], /* Private Use */ + [0xe143, 0xe143], /* Private Use */ + [0xe144, 0xe144], /* Private Use */ + [0xe145, 0xe145], /* Private Use */ + [0xe146, 0xe146], /* Private Use */ + [0xe147, 0xe147], /* Private Use */ + [0xe148, 0xe148], /* Private Use */ + [0xe149, 0xe149], /* Private Use */ + [0xe14a, 0xe14a], /* Private Use */ + [0xe14b, 0xe14b], /* Private Use */ + [0xe14c, 0xe14c], /* Private Use */ + [0xe14d, 0xe14d], /* Private Use */ + [0xe14e, 0xe14e], /* Private Use */ + [0xe14f, 0xe14f], /* Private Use */ + [0xe150, 0xe150], /* Private Use */ + [0xe151, 0xe151], /* Private Use */ + [0xe152, 0xe152], /* Private Use */ + [0xe153, 0xe153], /* Private Use */ + [0xe154, 0xe154], /* Private Use */ + [0xe155, 0xe155], /* Private Use */ + [0xe156, 0xe156], /* Private Use */ + [0xe157, 0xe157], /* Private Use */ + [0xe158, 0xe158], /* Private Use */ + [0xe159, 0xe159], /* Private Use */ + [0xe15a, 0xe15a], /* Private Use */ + [0xe15b, 0xe15b], /* Private Use */ + [0xe15c, 0xe15c], /* Private Use */ + [0xe15d, 0xe15d], /* Private Use */ + [0xe15e, 0xe15e], /* Private Use */ + [0xe15f, 0xe15f], /* Private Use */ + [0xe160, 0xe160], /* Private Use */ + [0xe161, 0xe161], /* Private Use */ + [0xe162, 0xe162], /* Private Use */ + [0xe163, 0xe163], /* Private Use */ + [0xe164, 0xe164], /* Private Use */ + [0xe165, 0xe165], /* Private Use */ + [0xe166, 0xe166], /* Private Use */ + [0xe167, 0xe167], /* Private Use */ + [0xe168, 0xe168], /* Private Use */ + [0xe169, 0xe169], /* Private Use */ + [0xe16a, 0xe16a], /* Private Use */ + [0xe16b, 0xe16b], /* Private Use */ + [0xe16c, 0xe16c], /* Private Use */ + [0xe16d, 0xe16d], /* Private Use */ + [0xe16e, 0xe16e], /* Private Use */ + [0xe16f, 0xe16f], /* Private Use */ + [0xe170, 0xe170], /* Private Use */ + [0xe171, 0xe171], /* Private Use */ + [0xe172, 0xe172], /* Private Use */ + [0xe173, 0xe173], /* Private Use */ + [0xe174, 0xe174], /* Private Use */ + [0xe175, 0xe175], /* Private Use */ + [0xe176, 0xe176], /* Private Use */ + [0xe177, 0xe177], /* Private Use */ + [0xe178, 0xe178], /* Private Use */ + [0xe179, 0xe179], /* Private Use */ + [0xe17a, 0xe17a], /* Private Use */ + [0xe17b, 0xe17b], /* Private Use */ + [0xe17c, 0xe17c], /* Private Use */ + [0xe17d, 0xe17d], /* Private Use */ + [0xe17e, 0xe17e], /* Private Use */ + [0xe17f, 0xe17f], /* Private Use */ + [0xe180, 0xe180], /* Private Use */ + [0xe181, 0xe181], /* Private Use */ + [0xe182, 0xe182], /* Private Use */ + [0xe183, 0xe183], /* Private Use */ + [0xe184, 0xe184], /* Private Use */ + [0xe185, 0xe185], /* Private Use */ + [0xe186, 0xe186], /* Private Use */ + [0xe187, 0xe187], /* Private Use */ + [0xe188, 0xe188], /* Private Use */ + [0xe189, 0xe189], /* Private Use */ + [0xe18a, 0xe18a], /* Private Use */ + [0xe18b, 0xe18b], /* Private Use */ + [0xe18c, 0xe18c], /* Private Use */ + [0xe18d, 0xe18d], /* Private Use */ + [0xe18e, 0xe18e], /* Private Use */ + [0xe18f, 0xe18f], /* Private Use */ + [0xe190, 0xe190], /* Private Use */ + [0xe191, 0xe191], /* Private Use */ + [0xe192, 0xe192], /* Private Use */ + [0xe193, 0xe193], /* Private Use */ + [0xe194, 0xe194], /* Private Use */ + [0xe195, 0xe195], /* Private Use */ + [0xe196, 0xe196], /* Private Use */ + [0xe197, 0xe197], /* Private Use */ + [0xe198, 0xe198], /* Private Use */ + [0xe199, 0xe199], /* Private Use */ + [0xe19a, 0xe19a], /* Private Use */ + [0xe19b, 0xe19b], /* Private Use */ + [0xe19c, 0xe19c], /* Private Use */ + [0xe19d, 0xe19d], /* Private Use */ + [0xe19e, 0xe19e], /* Private Use */ + [0xe19f, 0xe19f], /* Private Use */ + [0xe1a0, 0xe1a0], /* Private Use */ + [0xe1a1, 0xe1a1], /* Private Use */ + [0xe1a2, 0xe1a2], /* Private Use */ + [0xe1a3, 0xe1a3], /* Private Use */ + [0xe1a4, 0xe1a4], /* Private Use */ + [0xe1a5, 0xe1a5], /* Private Use */ + [0xe1a6, 0xe1a6], /* Private Use */ + [0xe1a7, 0xe1a7], /* Private Use */ + [0xe1a8, 0xe1a8], /* Private Use */ + [0xe1a9, 0xe1a9], /* Private Use */ + [0xe1aa, 0xe1aa], /* Private Use */ + [0xe1ab, 0xe1ab], /* Private Use */ + [0xe1ac, 0xe1ac], /* Private Use */ + [0xe1ad, 0xe1ad], /* Private Use */ + [0xe1ae, 0xe1ae], /* Private Use */ + [0xe1af, 0xe1af], /* Private Use */ + [0xe1b0, 0xe1b0], /* Private Use */ + [0xe1b1, 0xe1b1], /* Private Use */ + [0xe1b2, 0xe1b2], /* Private Use */ + [0xe1b3, 0xe1b3], /* Private Use */ + [0xe1b4, 0xe1b4], /* Private Use */ + [0xe1b5, 0xe1b5], /* Private Use */ + [0xe1b6, 0xe1b6], /* Private Use */ + [0xe1b7, 0xe1b7], /* Private Use */ + [0xe1b8, 0xe1b8], /* Private Use */ + [0xe1b9, 0xe1b9], /* Private Use */ + [0xe1ba, 0xe1ba], /* Private Use */ + [0xe1bb, 0xe1bb], /* Private Use */ + [0xe1bc, 0xe1bc], /* Private Use */ + [0xe1bd, 0xe1bd], /* Private Use */ + [0xe1be, 0xe1be], /* Private Use */ + [0xe1bf, 0xe1bf], /* Private Use */ + [0xe1c0, 0xe1c0], /* Private Use */ + [0xe1c1, 0xe1c1], /* Private Use */ + [0xe1c2, 0xe1c2], /* Private Use */ + [0xe1c3, 0xe1c3], /* Private Use */ + [0xe1c4, 0xe1c4], /* Private Use */ + [0xe1c5, 0xe1c5], /* Private Use */ + [0xe1c6, 0xe1c6], /* Private Use */ + [0xe1c7, 0xe1c7], /* Private Use */ + [0xe1c8, 0xe1c8], /* Private Use */ + [0xe1c9, 0xe1c9], /* Private Use */ + [0xe1ca, 0xe1ca], /* Private Use */ + [0xe1cb, 0xe1cb], /* Private Use */ + [0xe1cc, 0xe1cc], /* Private Use */ + [0xe1cd, 0xe1cd], /* Private Use */ + [0xe1ce, 0xe1ce], /* Private Use */ + [0xe1cf, 0xe1cf], /* Private Use */ + [0xe1d0, 0xe1d0], /* Private Use */ + [0xe1d1, 0xe1d1], /* Private Use */ + [0xe1d2, 0xe1d2], /* Private Use */ + [0xe1d3, 0xe1d3], /* Private Use */ + [0xe1d4, 0xe1d4], /* Private Use */ + [0xe1d5, 0xe1d5], /* Private Use */ + [0xe1d6, 0xe1d6], /* Private Use */ + [0xe1d7, 0xe1d7], /* Private Use */ + [0xe1d8, 0xe1d8], /* Private Use */ + [0xe1d9, 0xe1d9], /* Private Use */ + [0xe1da, 0xe1da], /* Private Use */ + [0xe1db, 0xe1db], /* Private Use */ + [0xe1dc, 0xe1dc], /* Private Use */ + [0xe1dd, 0xe1dd], /* Private Use */ + [0xe1de, 0xe1de], /* Private Use */ + [0xe1df, 0xe1df], /* Private Use */ + [0xe1e0, 0xe1e0], /* Private Use */ + [0xe1e1, 0xe1e1], /* Private Use */ + [0xe1e2, 0xe1e2], /* Private Use */ + [0xe1e3, 0xe1e3], /* Private Use */ + [0xe1e4, 0xe1e4], /* Private Use */ + [0xe1e5, 0xe1e5], /* Private Use */ + [0xe1e6, 0xe1e6], /* Private Use */ + [0xe1e7, 0xe1e7], /* Private Use */ + [0xe1e8, 0xe1e8], /* Private Use */ + [0xe1e9, 0xe1e9], /* Private Use */ + [0xe1ea, 0xe1ea], /* Private Use */ + [0xe1eb, 0xe1eb], /* Private Use */ + [0xe1ec, 0xe1ec], /* Private Use */ + [0xe1ed, 0xe1ed], /* Private Use */ + [0xe1ee, 0xe1ee], /* Private Use */ + [0xe1ef, 0xe1ef], /* Private Use */ + [0xe1f0, 0xe1f0], /* Private Use */ + [0xe1f1, 0xe1f1], /* Private Use */ + [0xe1f2, 0xe1f2], /* Private Use */ + [0xe1f3, 0xe1f3], /* Private Use */ + [0xe1f4, 0xe1f4], /* Private Use */ + [0xe1f5, 0xe1f5], /* Private Use */ + [0xe1f6, 0xe1f6], /* Private Use */ + [0xe1f7, 0xe1f7], /* Private Use */ + [0xe1f8, 0xe1f8], /* Private Use */ + [0xe1f9, 0xe1f9], /* Private Use */ + [0xe1fa, 0xe1fa], /* Private Use */ + [0xe1fb, 0xe1fb], /* Private Use */ + [0xe1fc, 0xe1fc], /* Private Use */ + [0xe1fd, 0xe1fd], /* Private Use */ + [0xe1fe, 0xe1fe], /* Private Use */ + [0xe1ff, 0xe1ff], /* Private Use */ + [0xe200, 0xe200], /* Private Use */ + [0xe201, 0xe201], /* Private Use */ + [0xe202, 0xe202], /* Private Use */ + [0xe203, 0xe203], /* Private Use */ + [0xe204, 0xe204], /* Private Use */ + [0xe205, 0xe205], /* Private Use */ + [0xe206, 0xe206], /* Private Use */ + [0xe207, 0xe207], /* Private Use */ + [0xe208, 0xe208], /* Private Use */ + [0xe209, 0xe209], /* Private Use */ + [0xe20a, 0xe20a], /* Private Use */ + [0xe20b, 0xe20b], /* Private Use */ + [0xe20c, 0xe20c], /* Private Use */ + [0xe20d, 0xe20d], /* Private Use */ + [0xe20e, 0xe20e], /* Private Use */ + [0xe20f, 0xe20f], /* Private Use */ + [0xe210, 0xe210], /* Private Use */ + [0xe211, 0xe211], /* Private Use */ + [0xe212, 0xe212], /* Private Use */ + [0xe213, 0xe213], /* Private Use */ + [0xe214, 0xe214], /* Private Use */ + [0xe215, 0xe215], /* Private Use */ + [0xe216, 0xe216], /* Private Use */ + [0xe217, 0xe217], /* Private Use */ + [0xe218, 0xe218], /* Private Use */ + [0xe219, 0xe219], /* Private Use */ + [0xe21a, 0xe21a], /* Private Use */ + [0xe21b, 0xe21b], /* Private Use */ + [0xe21c, 0xe21c], /* Private Use */ + [0xe21d, 0xe21d], /* Private Use */ + [0xe21e, 0xe21e], /* Private Use */ + [0xe21f, 0xe21f], /* Private Use */ + [0xe220, 0xe220], /* Private Use */ + [0xe221, 0xe221], /* Private Use */ + [0xe222, 0xe222], /* Private Use */ + [0xe223, 0xe223], /* Private Use */ + [0xe224, 0xe224], /* Private Use */ + [0xe225, 0xe225], /* Private Use */ + [0xe226, 0xe226], /* Private Use */ + [0xe227, 0xe227], /* Private Use */ + [0xe228, 0xe228], /* Private Use */ + [0xe229, 0xe229], /* Private Use */ + [0xe22a, 0xe22a], /* Private Use */ + [0xe22b, 0xe22b], /* Private Use */ + [0xe22c, 0xe22c], /* Private Use */ + [0xe22d, 0xe22d], /* Private Use */ + [0xe22e, 0xe22e], /* Private Use */ + [0xe22f, 0xe22f], /* Private Use */ + [0xe230, 0xe230], /* Private Use */ + [0xe231, 0xe231], /* Private Use */ + [0xe232, 0xe232], /* Private Use */ + [0xe233, 0xe233], /* Private Use */ + [0xe234, 0xe234], /* Private Use */ + [0xe235, 0xe235], /* Private Use */ + [0xe236, 0xe236], /* Private Use */ + [0xe237, 0xe237], /* Private Use */ + [0xe238, 0xe238], /* Private Use */ + [0xe239, 0xe239], /* Private Use */ + [0xe23a, 0xe23a], /* Private Use */ + [0xe23b, 0xe23b], /* Private Use */ + [0xe23c, 0xe23c], /* Private Use */ + [0xe23d, 0xe23d], /* Private Use */ + [0xe23e, 0xe23e], /* Private Use */ + [0xe23f, 0xe23f], /* Private Use */ + [0xe240, 0xe240], /* Private Use */ + [0xe241, 0xe241], /* Private Use */ + [0xe242, 0xe242], /* Private Use */ + [0xe243, 0xe243], /* Private Use */ + [0xe244, 0xe244], /* Private Use */ + [0xe245, 0xe245], /* Private Use */ + [0xe246, 0xe246], /* Private Use */ + [0xe247, 0xe247], /* Private Use */ + [0xe248, 0xe248], /* Private Use */ + [0xe249, 0xe249], /* Private Use */ + [0xe24a, 0xe24a], /* Private Use */ + [0xe24b, 0xe24b], /* Private Use */ + [0xe24c, 0xe24c], /* Private Use */ + [0xe24d, 0xe24d], /* Private Use */ + [0xe24e, 0xe24e], /* Private Use */ + [0xe24f, 0xe24f], /* Private Use */ + [0xe250, 0xe250], /* Private Use */ + [0xe251, 0xe251], /* Private Use */ + [0xe252, 0xe252], /* Private Use */ + [0xe253, 0xe253], /* Private Use */ + [0xe254, 0xe254], /* Private Use */ + [0xe255, 0xe255], /* Private Use */ + [0xe256, 0xe256], /* Private Use */ + [0xe257, 0xe257], /* Private Use */ + [0xe258, 0xe258], /* Private Use */ + [0xe259, 0xe259], /* Private Use */ + [0xe25a, 0xe25a], /* Private Use */ + [0xe25b, 0xe25b], /* Private Use */ + [0xe25c, 0xe25c], /* Private Use */ + [0xe25d, 0xe25d], /* Private Use */ + [0xe25e, 0xe25e], /* Private Use */ + [0xe25f, 0xe25f], /* Private Use */ + [0xe260, 0xe260], /* Private Use */ + [0xe261, 0xe261], /* Private Use */ + [0xe262, 0xe262], /* Private Use */ + [0xe263, 0xe263], /* Private Use */ + [0xe264, 0xe264], /* Private Use */ + [0xe265, 0xe265], /* Private Use */ + [0xe266, 0xe266], /* Private Use */ + [0xe267, 0xe267], /* Private Use */ + [0xe268, 0xe268], /* Private Use */ + [0xe269, 0xe269], /* Private Use */ + [0xe26a, 0xe26a], /* Private Use */ + [0xe26b, 0xe26b], /* Private Use */ + [0xe26c, 0xe26c], /* Private Use */ + [0xe26d, 0xe26d], /* Private Use */ + [0xe26e, 0xe26e], /* Private Use */ + [0xe26f, 0xe26f], /* Private Use */ + [0xe270, 0xe270], /* Private Use */ + [0xe271, 0xe271], /* Private Use */ + [0xe272, 0xe272], /* Private Use */ + [0xe273, 0xe273], /* Private Use */ + [0xe274, 0xe274], /* Private Use */ + [0xe275, 0xe275], /* Private Use */ + [0xe276, 0xe276], /* Private Use */ + [0xe277, 0xe277], /* Private Use */ + [0xe278, 0xe278], /* Private Use */ + [0xe279, 0xe279], /* Private Use */ + [0xe27a, 0xe27a], /* Private Use */ + [0xe27b, 0xe27b], /* Private Use */ + [0xe27c, 0xe27c], /* Private Use */ + [0xe27d, 0xe27d], /* Private Use */ + [0xe27e, 0xe27e], /* Private Use */ + [0xe27f, 0xe27f], /* Private Use */ + [0xe280, 0xe280], /* Private Use */ + [0xe281, 0xe281], /* Private Use */ + [0xe282, 0xe282], /* Private Use */ + [0xe283, 0xe283], /* Private Use */ + [0xe284, 0xe284], /* Private Use */ + [0xe285, 0xe285], /* Private Use */ + [0xe286, 0xe286], /* Private Use */ + [0xe287, 0xe287], /* Private Use */ + [0xe288, 0xe288], /* Private Use */ + [0xe289, 0xe289], /* Private Use */ + [0xe28a, 0xe28a], /* Private Use */ + [0xe28b, 0xe28b], /* Private Use */ + [0xe28c, 0xe28c], /* Private Use */ + [0xe28d, 0xe28d], /* Private Use */ + [0xe28e, 0xe28e], /* Private Use */ + [0xe28f, 0xe28f], /* Private Use */ + [0xe290, 0xe290], /* Private Use */ + [0xe291, 0xe291], /* Private Use */ + [0xe292, 0xe292], /* Private Use */ + [0xe293, 0xe293], /* Private Use */ + [0xe294, 0xe294], /* Private Use */ + [0xe295, 0xe295], /* Private Use */ + [0xe296, 0xe296], /* Private Use */ + [0xe297, 0xe297], /* Private Use */ + [0xe298, 0xe298], /* Private Use */ + [0xe299, 0xe299], /* Private Use */ + [0xe29a, 0xe29a], /* Private Use */ + [0xe29b, 0xe29b], /* Private Use */ + [0xe29c, 0xe29c], /* Private Use */ + [0xe29d, 0xe29d], /* Private Use */ + [0xe29e, 0xe29e], /* Private Use */ + [0xe29f, 0xe29f], /* Private Use */ + [0xe2a0, 0xe2a0], /* Private Use */ + [0xe2a1, 0xe2a1], /* Private Use */ + [0xe2a2, 0xe2a2], /* Private Use */ + [0xe2a3, 0xe2a3], /* Private Use */ + [0xe2a4, 0xe2a4], /* Private Use */ + [0xe2a5, 0xe2a5], /* Private Use */ + [0xe2a6, 0xe2a6], /* Private Use */ + [0xe2a7, 0xe2a7], /* Private Use */ + [0xe2a8, 0xe2a8], /* Private Use */ + [0xe2a9, 0xe2a9], /* Private Use */ + [0xe2aa, 0xe2aa], /* Private Use */ + [0xe2ab, 0xe2ab], /* Private Use */ + [0xe2ac, 0xe2ac], /* Private Use */ + [0xe2ad, 0xe2ad], /* Private Use */ + [0xe2ae, 0xe2ae], /* Private Use */ + [0xe2af, 0xe2af], /* Private Use */ + [0xe2b0, 0xe2b0], /* Private Use */ + [0xe2b1, 0xe2b1], /* Private Use */ + [0xe2b2, 0xe2b2], /* Private Use */ + [0xe2b3, 0xe2b3], /* Private Use */ + [0xe2b4, 0xe2b4], /* Private Use */ + [0xe2b5, 0xe2b5], /* Private Use */ + [0xe2b6, 0xe2b6], /* Private Use */ + [0xe2b7, 0xe2b7], /* Private Use */ + [0xe2b8, 0xe2b8], /* Private Use */ + [0xe2b9, 0xe2b9], /* Private Use */ + [0xe2ba, 0xe2ba], /* Private Use */ + [0xe2bb, 0xe2bb], /* Private Use */ + [0xe2bc, 0xe2bc], /* Private Use */ + [0xe2bd, 0xe2bd], /* Private Use */ + [0xe2be, 0xe2be], /* Private Use */ + [0xe2bf, 0xe2bf], /* Private Use */ + [0xe2c0, 0xe2c0], /* Private Use */ + [0xe2c1, 0xe2c1], /* Private Use */ + [0xe2c2, 0xe2c2], /* Private Use */ + [0xe2c3, 0xe2c3], /* Private Use */ + [0xe2c4, 0xe2c4], /* Private Use */ + [0xe2c5, 0xe2c5], /* Private Use */ + [0xe2c6, 0xe2c6], /* Private Use */ + [0xe2c7, 0xe2c7], /* Private Use */ + [0xe2c8, 0xe2c8], /* Private Use */ + [0xe2c9, 0xe2c9], /* Private Use */ + [0xe2ca, 0xe2ca], /* Private Use */ + [0xe2cb, 0xe2cb], /* Private Use */ + [0xe2cc, 0xe2cc], /* Private Use */ + [0xe2cd, 0xe2cd], /* Private Use */ + [0xe2ce, 0xe2ce], /* Private Use */ + [0xe2cf, 0xe2cf], /* Private Use */ + [0xe2d0, 0xe2d0], /* Private Use */ + [0xe2d1, 0xe2d1], /* Private Use */ + [0xe2d2, 0xe2d2], /* Private Use */ + [0xe2d3, 0xe2d3], /* Private Use */ + [0xe2d4, 0xe2d4], /* Private Use */ + [0xe2d5, 0xe2d5], /* Private Use */ + [0xe2d6, 0xe2d6], /* Private Use */ + [0xe2d7, 0xe2d7], /* Private Use */ + [0xe2d8, 0xe2d8], /* Private Use */ + [0xe2d9, 0xe2d9], /* Private Use */ + [0xe2da, 0xe2da], /* Private Use */ + [0xe2db, 0xe2db], /* Private Use */ + [0xe2dc, 0xe2dc], /* Private Use */ + [0xe2dd, 0xe2dd], /* Private Use */ + [0xe2de, 0xe2de], /* Private Use */ + [0xe2df, 0xe2df], /* Private Use */ + [0xe2e0, 0xe2e0], /* Private Use */ + [0xe2e1, 0xe2e1], /* Private Use */ + [0xe2e2, 0xe2e2], /* Private Use */ + [0xe2e3, 0xe2e3], /* Private Use */ + [0xe2e4, 0xe2e4], /* Private Use */ + [0xe2e5, 0xe2e5], /* Private Use */ + [0xe2e6, 0xe2e6], /* Private Use */ + [0xe2e7, 0xe2e7], /* Private Use */ + [0xe2e8, 0xe2e8], /* Private Use */ + [0xe2e9, 0xe2e9], /* Private Use */ + [0xe2ea, 0xe2ea], /* Private Use */ + [0xe2eb, 0xe2eb], /* Private Use */ + [0xe2ec, 0xe2ec], /* Private Use */ + [0xe2ed, 0xe2ed], /* Private Use */ + [0xe2ee, 0xe2ee], /* Private Use */ + [0xe2ef, 0xe2ef], /* Private Use */ + [0xe2f0, 0xe2f0], /* Private Use */ + [0xe2f1, 0xe2f1], /* Private Use */ + [0xe2f2, 0xe2f2], /* Private Use */ + [0xe2f3, 0xe2f3], /* Private Use */ + [0xe2f4, 0xe2f4], /* Private Use */ + [0xe2f5, 0xe2f5], /* Private Use */ + [0xe2f6, 0xe2f6], /* Private Use */ + [0xe2f7, 0xe2f7], /* Private Use */ + [0xe2f8, 0xe2f8], /* Private Use */ + [0xe2f9, 0xe2f9], /* Private Use */ + [0xe2fa, 0xe2fa], /* Private Use */ + [0xe2fb, 0xe2fb], /* Private Use */ + [0xe2fc, 0xe2fc], /* Private Use */ + [0xe2fd, 0xe2fd], /* Private Use */ + [0xe2fe, 0xe2fe], /* Private Use */ + [0xe2ff, 0xe2ff], /* Private Use */ + [0xe300, 0xe300], /* Private Use */ + [0xe301, 0xe301], /* Private Use */ + [0xe302, 0xe302], /* Private Use */ + [0xe303, 0xe303], /* Private Use */ + [0xe304, 0xe304], /* Private Use */ + [0xe305, 0xe305], /* Private Use */ + [0xe306, 0xe306], /* Private Use */ + [0xe307, 0xe307], /* Private Use */ + [0xe308, 0xe308], /* Private Use */ + [0xe309, 0xe309], /* Private Use */ + [0xe30a, 0xe30a], /* Private Use */ + [0xe30b, 0xe30b], /* Private Use */ + [0xe30c, 0xe30c], /* Private Use */ + [0xe30d, 0xe30d], /* Private Use */ + [0xe30e, 0xe30e], /* Private Use */ + [0xe30f, 0xe30f], /* Private Use */ + [0xe310, 0xe310], /* Private Use */ + [0xe311, 0xe311], /* Private Use */ + [0xe312, 0xe312], /* Private Use */ + [0xe313, 0xe313], /* Private Use */ + [0xe314, 0xe314], /* Private Use */ + [0xe315, 0xe315], /* Private Use */ + [0xe316, 0xe316], /* Private Use */ + [0xe317, 0xe317], /* Private Use */ + [0xe318, 0xe318], /* Private Use */ + [0xe319, 0xe319], /* Private Use */ + [0xe31a, 0xe31a], /* Private Use */ + [0xe31b, 0xe31b], /* Private Use */ + [0xe31c, 0xe31c], /* Private Use */ + [0xe31d, 0xe31d], /* Private Use */ + [0xe31e, 0xe31e], /* Private Use */ + [0xe31f, 0xe31f], /* Private Use */ + [0xe320, 0xe320], /* Private Use */ + [0xe321, 0xe321], /* Private Use */ + [0xe322, 0xe322], /* Private Use */ + [0xe323, 0xe323], /* Private Use */ + [0xe324, 0xe324], /* Private Use */ + [0xe325, 0xe325], /* Private Use */ + [0xe326, 0xe326], /* Private Use */ + [0xe327, 0xe327], /* Private Use */ + [0xe328, 0xe328], /* Private Use */ + [0xe329, 0xe329], /* Private Use */ + [0xe32a, 0xe32a], /* Private Use */ + [0xe32b, 0xe32b], /* Private Use */ + [0xe32c, 0xe32c], /* Private Use */ + [0xe32d, 0xe32d], /* Private Use */ + [0xe32e, 0xe32e], /* Private Use */ + [0xe32f, 0xe32f], /* Private Use */ + [0xe330, 0xe330], /* Private Use */ + [0xe331, 0xe331], /* Private Use */ + [0xe332, 0xe332], /* Private Use */ + [0xe333, 0xe333], /* Private Use */ + [0xe334, 0xe334], /* Private Use */ + [0xe335, 0xe335], /* Private Use */ + [0xe336, 0xe336], /* Private Use */ + [0xe337, 0xe337], /* Private Use */ + [0xe338, 0xe338], /* Private Use */ + [0xe339, 0xe339], /* Private Use */ + [0xe33a, 0xe33a], /* Private Use */ + [0xe33b, 0xe33b], /* Private Use */ + [0xe33c, 0xe33c], /* Private Use */ + [0xe33d, 0xe33d], /* Private Use */ + [0xe33e, 0xe33e], /* Private Use */ + [0xe33f, 0xe33f], /* Private Use */ + [0xe340, 0xe340], /* Private Use */ + [0xe341, 0xe341], /* Private Use */ + [0xe342, 0xe342], /* Private Use */ + [0xe343, 0xe343], /* Private Use */ + [0xe344, 0xe344], /* Private Use */ + [0xe345, 0xe345], /* Private Use */ + [0xe346, 0xe346], /* Private Use */ + [0xe347, 0xe347], /* Private Use */ + [0xe348, 0xe348], /* Private Use */ + [0xe349, 0xe349], /* Private Use */ + [0xe34a, 0xe34a], /* Private Use */ + [0xe34b, 0xe34b], /* Private Use */ + [0xe34c, 0xe34c], /* Private Use */ + [0xe34d, 0xe34d], /* Private Use */ + [0xe34e, 0xe34e], /* Private Use */ + [0xe34f, 0xe34f], /* Private Use */ + [0xe350, 0xe350], /* Private Use */ + [0xe351, 0xe351], /* Private Use */ + [0xe352, 0xe352], /* Private Use */ + [0xe353, 0xe353], /* Private Use */ + [0xe354, 0xe354], /* Private Use */ + [0xe355, 0xe355], /* Private Use */ + [0xe356, 0xe356], /* Private Use */ + [0xe357, 0xe357], /* Private Use */ + [0xe358, 0xe358], /* Private Use */ + [0xe359, 0xe359], /* Private Use */ + [0xe35a, 0xe35a], /* Private Use */ + [0xe35b, 0xe35b], /* Private Use */ + [0xe35c, 0xe35c], /* Private Use */ + [0xe35d, 0xe35d], /* Private Use */ + [0xe35e, 0xe35e], /* Private Use */ + [0xe35f, 0xe35f], /* Private Use */ + [0xe360, 0xe360], /* Private Use */ + [0xe361, 0xe361], /* Private Use */ + [0xe362, 0xe362], /* Private Use */ + [0xe363, 0xe363], /* Private Use */ + [0xe364, 0xe364], /* Private Use */ + [0xe365, 0xe365], /* Private Use */ + [0xe366, 0xe366], /* Private Use */ + [0xe367, 0xe367], /* Private Use */ + [0xe368, 0xe368], /* Private Use */ + [0xe369, 0xe369], /* Private Use */ + [0xe36a, 0xe36a], /* Private Use */ + [0xe36b, 0xe36b], /* Private Use */ + [0xe36c, 0xe36c], /* Private Use */ + [0xe36d, 0xe36d], /* Private Use */ + [0xe36e, 0xe36e], /* Private Use */ + [0xe36f, 0xe36f], /* Private Use */ + [0xe370, 0xe370], /* Private Use */ + [0xe371, 0xe371], /* Private Use */ + [0xe372, 0xe372], /* Private Use */ + [0xe373, 0xe373], /* Private Use */ + [0xe374, 0xe374], /* Private Use */ + [0xe375, 0xe375], /* Private Use */ + [0xe376, 0xe376], /* Private Use */ + [0xe377, 0xe377], /* Private Use */ + [0xe378, 0xe378], /* Private Use */ + [0xe379, 0xe379], /* Private Use */ + [0xe37a, 0xe37a], /* Private Use */ + [0xe37b, 0xe37b], /* Private Use */ + [0xe37c, 0xe37c], /* Private Use */ + [0xe37d, 0xe37d], /* Private Use */ + [0xe37e, 0xe37e], /* Private Use */ + [0xe37f, 0xe37f], /* Private Use */ + [0xe380, 0xe380], /* Private Use */ + [0xe381, 0xe381], /* Private Use */ + [0xe382, 0xe382], /* Private Use */ + [0xe383, 0xe383], /* Private Use */ + [0xe384, 0xe384], /* Private Use */ + [0xe385, 0xe385], /* Private Use */ + [0xe386, 0xe386], /* Private Use */ + [0xe387, 0xe387], /* Private Use */ + [0xe388, 0xe388], /* Private Use */ + [0xe389, 0xe389], /* Private Use */ + [0xe38a, 0xe38a], /* Private Use */ + [0xe38b, 0xe38b], /* Private Use */ + [0xe38c, 0xe38c], /* Private Use */ + [0xe38d, 0xe38d], /* Private Use */ + [0xe38e, 0xe38e], /* Private Use */ + [0xe38f, 0xe38f], /* Private Use */ + [0xe390, 0xe390], /* Private Use */ + [0xe391, 0xe391], /* Private Use */ + [0xe392, 0xe392], /* Private Use */ + [0xe393, 0xe393], /* Private Use */ + [0xe394, 0xe394], /* Private Use */ + [0xe395, 0xe395], /* Private Use */ + [0xe396, 0xe396], /* Private Use */ + [0xe397, 0xe397], /* Private Use */ + [0xe398, 0xe398], /* Private Use */ + [0xe399, 0xe399], /* Private Use */ + [0xe39a, 0xe39a], /* Private Use */ + [0xe39b, 0xe39b], /* Private Use */ + [0xe39c, 0xe39c], /* Private Use */ + [0xe39d, 0xe39d], /* Private Use */ + [0xe39e, 0xe39e], /* Private Use */ + [0xe39f, 0xe39f], /* Private Use */ + [0xe3a0, 0xe3a0], /* Private Use */ + [0xe3a1, 0xe3a1], /* Private Use */ + [0xe3a2, 0xe3a2], /* Private Use */ + [0xe3a3, 0xe3a3], /* Private Use */ + [0xe3a4, 0xe3a4], /* Private Use */ + [0xe3a5, 0xe3a5], /* Private Use */ + [0xe3a6, 0xe3a6], /* Private Use */ + [0xe3a7, 0xe3a7], /* Private Use */ + [0xe3a8, 0xe3a8], /* Private Use */ + [0xe3a9, 0xe3a9], /* Private Use */ + [0xe3aa, 0xe3aa], /* Private Use */ + [0xe3ab, 0xe3ab], /* Private Use */ + [0xe3ac, 0xe3ac], /* Private Use */ + [0xe3ad, 0xe3ad], /* Private Use */ + [0xe3ae, 0xe3ae], /* Private Use */ + [0xe3af, 0xe3af], /* Private Use */ + [0xe3b0, 0xe3b0], /* Private Use */ + [0xe3b1, 0xe3b1], /* Private Use */ + [0xe3b2, 0xe3b2], /* Private Use */ + [0xe3b3, 0xe3b3], /* Private Use */ + [0xe3b4, 0xe3b4], /* Private Use */ + [0xe3b5, 0xe3b5], /* Private Use */ + [0xe3b6, 0xe3b6], /* Private Use */ + [0xe3b7, 0xe3b7], /* Private Use */ + [0xe3b8, 0xe3b8], /* Private Use */ + [0xe3b9, 0xe3b9], /* Private Use */ + [0xe3ba, 0xe3ba], /* Private Use */ + [0xe3bb, 0xe3bb], /* Private Use */ + [0xe3bc, 0xe3bc], /* Private Use */ + [0xe3bd, 0xe3bd], /* Private Use */ + [0xe3be, 0xe3be], /* Private Use */ + [0xe3bf, 0xe3bf], /* Private Use */ + [0xe3c0, 0xe3c0], /* Private Use */ + [0xe3c1, 0xe3c1], /* Private Use */ + [0xe3c2, 0xe3c2], /* Private Use */ + [0xe3c3, 0xe3c3], /* Private Use */ + [0xe3c4, 0xe3c4], /* Private Use */ + [0xe3c5, 0xe3c5], /* Private Use */ + [0xe3c6, 0xe3c6], /* Private Use */ + [0xe3c7, 0xe3c7], /* Private Use */ + [0xe3c8, 0xe3c8], /* Private Use */ + [0xe3c9, 0xe3c9], /* Private Use */ + [0xe3ca, 0xe3ca], /* Private Use */ + [0xe3cb, 0xe3cb], /* Private Use */ + [0xe3cc, 0xe3cc], /* Private Use */ + [0xe3cd, 0xe3cd], /* Private Use */ + [0xe3ce, 0xe3ce], /* Private Use */ + [0xe3cf, 0xe3cf], /* Private Use */ + [0xe3d0, 0xe3d0], /* Private Use */ + [0xe3d1, 0xe3d1], /* Private Use */ + [0xe3d2, 0xe3d2], /* Private Use */ + [0xe3d3, 0xe3d3], /* Private Use */ + [0xe3d4, 0xe3d4], /* Private Use */ + [0xe3d5, 0xe3d5], /* Private Use */ + [0xe3d6, 0xe3d6], /* Private Use */ + [0xe3d7, 0xe3d7], /* Private Use */ + [0xe3d8, 0xe3d8], /* Private Use */ + [0xe3d9, 0xe3d9], /* Private Use */ + [0xe3da, 0xe3da], /* Private Use */ + [0xe3db, 0xe3db], /* Private Use */ + [0xe3dc, 0xe3dc], /* Private Use */ + [0xe3dd, 0xe3dd], /* Private Use */ + [0xe3de, 0xe3de], /* Private Use */ + [0xe3df, 0xe3df], /* Private Use */ + [0xe3e0, 0xe3e0], /* Private Use */ + [0xe3e1, 0xe3e1], /* Private Use */ + [0xe3e2, 0xe3e2], /* Private Use */ + [0xe3e3, 0xe3e3], /* Private Use */ + [0xe3e4, 0xe3e4], /* Private Use */ + [0xe3e5, 0xe3e5], /* Private Use */ + [0xe3e6, 0xe3e6], /* Private Use */ + [0xe3e7, 0xe3e7], /* Private Use */ + [0xe3e8, 0xe3e8], /* Private Use */ + [0xe3e9, 0xe3e9], /* Private Use */ + [0xe3ea, 0xe3ea], /* Private Use */ + [0xe3eb, 0xe3eb], /* Private Use */ + [0xe3ec, 0xe3ec], /* Private Use */ + [0xe3ed, 0xe3ed], /* Private Use */ + [0xe3ee, 0xe3ee], /* Private Use */ + [0xe3ef, 0xe3ef], /* Private Use */ + [0xe3f0, 0xe3f0], /* Private Use */ + [0xe3f1, 0xe3f1], /* Private Use */ + [0xe3f2, 0xe3f2], /* Private Use */ + [0xe3f3, 0xe3f3], /* Private Use */ + [0xe3f4, 0xe3f4], /* Private Use */ + [0xe3f5, 0xe3f5], /* Private Use */ + [0xe3f6, 0xe3f6], /* Private Use */ + [0xe3f7, 0xe3f7], /* Private Use */ + [0xe3f8, 0xe3f8], /* Private Use */ + [0xe3f9, 0xe3f9], /* Private Use */ + [0xe3fa, 0xe3fa], /* Private Use */ + [0xe3fb, 0xe3fb], /* Private Use */ + [0xe3fc, 0xe3fc], /* Private Use */ + [0xe3fd, 0xe3fd], /* Private Use */ + [0xe3fe, 0xe3fe], /* Private Use */ + [0xe3ff, 0xe3ff], /* Private Use */ + [0xe400, 0xe400], /* Private Use */ + [0xe401, 0xe401], /* Private Use */ + [0xe402, 0xe402], /* Private Use */ + [0xe403, 0xe403], /* Private Use */ + [0xe404, 0xe404], /* Private Use */ + [0xe405, 0xe405], /* Private Use */ + [0xe406, 0xe406], /* Private Use */ + [0xe407, 0xe407], /* Private Use */ + [0xe408, 0xe408], /* Private Use */ + [0xe409, 0xe409], /* Private Use */ + [0xe40a, 0xe40a], /* Private Use */ + [0xe40b, 0xe40b], /* Private Use */ + [0xe40c, 0xe40c], /* Private Use */ + [0xe40d, 0xe40d], /* Private Use */ + [0xe40e, 0xe40e], /* Private Use */ + [0xe40f, 0xe40f], /* Private Use */ + [0xe410, 0xe410], /* Private Use */ + [0xe411, 0xe411], /* Private Use */ + [0xe412, 0xe412], /* Private Use */ + [0xe413, 0xe413], /* Private Use */ + [0xe414, 0xe414], /* Private Use */ + [0xe415, 0xe415], /* Private Use */ + [0xe416, 0xe416], /* Private Use */ + [0xe417, 0xe417], /* Private Use */ + [0xe418, 0xe418], /* Private Use */ + [0xe419, 0xe419], /* Private Use */ + [0xe41a, 0xe41a], /* Private Use */ + [0xe41b, 0xe41b], /* Private Use */ + [0xe41c, 0xe41c], /* Private Use */ + [0xe41d, 0xe41d], /* Private Use */ + [0xe41e, 0xe41e], /* Private Use */ + [0xe41f, 0xe41f], /* Private Use */ + [0xe420, 0xe420], /* Private Use */ + [0xe421, 0xe421], /* Private Use */ + [0xe422, 0xe422], /* Private Use */ + [0xe423, 0xe423], /* Private Use */ + [0xe424, 0xe424], /* Private Use */ + [0xe425, 0xe425], /* Private Use */ + [0xe426, 0xe426], /* Private Use */ + [0xe427, 0xe427], /* Private Use */ + [0xe428, 0xe428], /* Private Use */ + [0xe429, 0xe429], /* Private Use */ + [0xe42a, 0xe42a], /* Private Use */ + [0xe42b, 0xe42b], /* Private Use */ + [0xe42c, 0xe42c], /* Private Use */ + [0xe42d, 0xe42d], /* Private Use */ + [0xe42e, 0xe42e], /* Private Use */ + [0xe42f, 0xe42f], /* Private Use */ + [0xe430, 0xe430], /* Private Use */ + [0xe431, 0xe431], /* Private Use */ + [0xe432, 0xe432], /* Private Use */ + [0xe433, 0xe433], /* Private Use */ + [0xe434, 0xe434], /* Private Use */ + [0xe435, 0xe435], /* Private Use */ + [0xe436, 0xe436], /* Private Use */ + [0xe437, 0xe437], /* Private Use */ + [0xe438, 0xe438], /* Private Use */ + [0xe439, 0xe439], /* Private Use */ + [0xe43a, 0xe43a], /* Private Use */ + [0xe43b, 0xe43b], /* Private Use */ + [0xe43c, 0xe43c], /* Private Use */ + [0xe43d, 0xe43d], /* Private Use */ + [0xe43e, 0xe43e], /* Private Use */ + [0xe43f, 0xe43f], /* Private Use */ + [0xe440, 0xe440], /* Private Use */ + [0xe441, 0xe441], /* Private Use */ + [0xe442, 0xe442], /* Private Use */ + [0xe443, 0xe443], /* Private Use */ + [0xe444, 0xe444], /* Private Use */ + [0xe445, 0xe445], /* Private Use */ + [0xe446, 0xe446], /* Private Use */ + [0xe447, 0xe447], /* Private Use */ + [0xe448, 0xe448], /* Private Use */ + [0xe449, 0xe449], /* Private Use */ + [0xe44a, 0xe44a], /* Private Use */ + [0xe44b, 0xe44b], /* Private Use */ + [0xe44c, 0xe44c], /* Private Use */ + [0xe44d, 0xe44d], /* Private Use */ + [0xe44e, 0xe44e], /* Private Use */ + [0xe44f, 0xe44f], /* Private Use */ + [0xe450, 0xe450], /* Private Use */ + [0xe451, 0xe451], /* Private Use */ + [0xe452, 0xe452], /* Private Use */ + [0xe453, 0xe453], /* Private Use */ + [0xe454, 0xe454], /* Private Use */ + [0xe455, 0xe455], /* Private Use */ + [0xe456, 0xe456], /* Private Use */ + [0xe457, 0xe457], /* Private Use */ + [0xe458, 0xe458], /* Private Use */ + [0xe459, 0xe459], /* Private Use */ + [0xe45a, 0xe45a], /* Private Use */ + [0xe45b, 0xe45b], /* Private Use */ + [0xe45c, 0xe45c], /* Private Use */ + [0xe45d, 0xe45d], /* Private Use */ + [0xe45e, 0xe45e], /* Private Use */ + [0xe45f, 0xe45f], /* Private Use */ + [0xe460, 0xe460], /* Private Use */ + [0xe461, 0xe461], /* Private Use */ + [0xe462, 0xe462], /* Private Use */ + [0xe463, 0xe463], /* Private Use */ + [0xe464, 0xe464], /* Private Use */ + [0xe465, 0xe465], /* Private Use */ + [0xe466, 0xe466], /* Private Use */ + [0xe467, 0xe467], /* Private Use */ + [0xe468, 0xe468], /* Private Use */ + [0xe469, 0xe469], /* Private Use */ + [0xe46a, 0xe46a], /* Private Use */ + [0xe46b, 0xe46b], /* Private Use */ + [0xe46c, 0xe46c], /* Private Use */ + [0xe46d, 0xe46d], /* Private Use */ + [0xe46e, 0xe46e], /* Private Use */ + [0xe46f, 0xe46f], /* Private Use */ + [0xe470, 0xe470], /* Private Use */ + [0xe471, 0xe471], /* Private Use */ + [0xe472, 0xe472], /* Private Use */ + [0xe473, 0xe473], /* Private Use */ + [0xe474, 0xe474], /* Private Use */ + [0xe475, 0xe475], /* Private Use */ + [0xe476, 0xe476], /* Private Use */ + [0xe477, 0xe477], /* Private Use */ + [0xe478, 0xe478], /* Private Use */ + [0xe479, 0xe479], /* Private Use */ + [0xe47a, 0xe47a], /* Private Use */ + [0xe47b, 0xe47b], /* Private Use */ + [0xe47c, 0xe47c], /* Private Use */ + [0xe47d, 0xe47d], /* Private Use */ + [0xe47e, 0xe47e], /* Private Use */ + [0xe47f, 0xe47f], /* Private Use */ + [0xe480, 0xe480], /* Private Use */ + [0xe481, 0xe481], /* Private Use */ + [0xe482, 0xe482], /* Private Use */ + [0xe483, 0xe483], /* Private Use */ + [0xe484, 0xe484], /* Private Use */ + [0xe485, 0xe485], /* Private Use */ + [0xe486, 0xe486], /* Private Use */ + [0xe487, 0xe487], /* Private Use */ + [0xe488, 0xe488], /* Private Use */ + [0xe489, 0xe489], /* Private Use */ + [0xe48a, 0xe48a], /* Private Use */ + [0xe48b, 0xe48b], /* Private Use */ + [0xe48c, 0xe48c], /* Private Use */ + [0xe48d, 0xe48d], /* Private Use */ + [0xe48e, 0xe48e], /* Private Use */ + [0xe48f, 0xe48f], /* Private Use */ + [0xe490, 0xe490], /* Private Use */ + [0xe491, 0xe491], /* Private Use */ + [0xe492, 0xe492], /* Private Use */ + [0xe493, 0xe493], /* Private Use */ + [0xe494, 0xe494], /* Private Use */ + [0xe495, 0xe495], /* Private Use */ + [0xe496, 0xe496], /* Private Use */ + [0xe497, 0xe497], /* Private Use */ + [0xe498, 0xe498], /* Private Use */ + [0xe499, 0xe499], /* Private Use */ + [0xe49a, 0xe49a], /* Private Use */ + [0xe49b, 0xe49b], /* Private Use */ + [0xe49c, 0xe49c], /* Private Use */ + [0xe49d, 0xe49d], /* Private Use */ + [0xe49e, 0xe49e], /* Private Use */ + [0xe49f, 0xe49f], /* Private Use */ + [0xe4a0, 0xe4a0], /* Private Use */ + [0xe4a1, 0xe4a1], /* Private Use */ + [0xe4a2, 0xe4a2], /* Private Use */ + [0xe4a3, 0xe4a3], /* Private Use */ + [0xe4a4, 0xe4a4], /* Private Use */ + [0xe4a5, 0xe4a5], /* Private Use */ + [0xe4a6, 0xe4a6], /* Private Use */ + [0xe4a7, 0xe4a7], /* Private Use */ + [0xe4a8, 0xe4a8], /* Private Use */ + [0xe4a9, 0xe4a9], /* Private Use */ + [0xe4aa, 0xe4aa], /* Private Use */ + [0xe4ab, 0xe4ab], /* Private Use */ + [0xe4ac, 0xe4ac], /* Private Use */ + [0xe4ad, 0xe4ad], /* Private Use */ + [0xe4ae, 0xe4ae], /* Private Use */ + [0xe4af, 0xe4af], /* Private Use */ + [0xe4b0, 0xe4b0], /* Private Use */ + [0xe4b1, 0xe4b1], /* Private Use */ + [0xe4b2, 0xe4b2], /* Private Use */ + [0xe4b3, 0xe4b3], /* Private Use */ + [0xe4b4, 0xe4b4], /* Private Use */ + [0xe4b5, 0xe4b5], /* Private Use */ + [0xe4b6, 0xe4b6], /* Private Use */ + [0xe4b7, 0xe4b7], /* Private Use */ + [0xe4b8, 0xe4b8], /* Private Use */ + [0xe4b9, 0xe4b9], /* Private Use */ + [0xe4ba, 0xe4ba], /* Private Use */ + [0xe4bb, 0xe4bb], /* Private Use */ + [0xe4bc, 0xe4bc], /* Private Use */ + [0xe4bd, 0xe4bd], /* Private Use */ + [0xe4be, 0xe4be], /* Private Use */ + [0xe4bf, 0xe4bf], /* Private Use */ + [0xe4c0, 0xe4c0], /* Private Use */ + [0xe4c1, 0xe4c1], /* Private Use */ + [0xe4c2, 0xe4c2], /* Private Use */ + [0xe4c3, 0xe4c3], /* Private Use */ + [0xe4c4, 0xe4c4], /* Private Use */ + [0xe4c5, 0xe4c5], /* Private Use */ + [0xe4c6, 0xe4c6], /* Private Use */ + [0xe4c7, 0xe4c7], /* Private Use */ + [0xe4c8, 0xe4c8], /* Private Use */ + [0xe4c9, 0xe4c9], /* Private Use */ + [0xe4ca, 0xe4ca], /* Private Use */ + [0xe4cb, 0xe4cb], /* Private Use */ + [0xe4cc, 0xe4cc], /* Private Use */ + [0xe4cd, 0xe4cd], /* Private Use */ + [0xe4ce, 0xe4ce], /* Private Use */ + [0xe4cf, 0xe4cf], /* Private Use */ + [0xe4d0, 0xe4d0], /* Private Use */ + [0xe4d1, 0xe4d1], /* Private Use */ + [0xe4d2, 0xe4d2], /* Private Use */ + [0xe4d3, 0xe4d3], /* Private Use */ + [0xe4d4, 0xe4d4], /* Private Use */ + [0xe4d5, 0xe4d5], /* Private Use */ + [0xe4d6, 0xe4d6], /* Private Use */ + [0xe4d7, 0xe4d7], /* Private Use */ + [0xe4d8, 0xe4d8], /* Private Use */ + [0xe4d9, 0xe4d9], /* Private Use */ + [0xe4da, 0xe4da], /* Private Use */ + [0xe4db, 0xe4db], /* Private Use */ + [0xe4dc, 0xe4dc], /* Private Use */ + [0xe4dd, 0xe4dd], /* Private Use */ + [0xe4de, 0xe4de], /* Private Use */ + [0xe4df, 0xe4df], /* Private Use */ + [0xe4e0, 0xe4e0], /* Private Use */ + [0xe4e1, 0xe4e1], /* Private Use */ + [0xe4e2, 0xe4e2], /* Private Use */ + [0xe4e3, 0xe4e3], /* Private Use */ + [0xe4e4, 0xe4e4], /* Private Use */ + [0xe4e5, 0xe4e5], /* Private Use */ + [0xe4e6, 0xe4e6], /* Private Use */ + [0xe4e7, 0xe4e7], /* Private Use */ + [0xe4e8, 0xe4e8], /* Private Use */ + [0xe4e9, 0xe4e9], /* Private Use */ + [0xe4ea, 0xe4ea], /* Private Use */ + [0xe4eb, 0xe4eb], /* Private Use */ + [0xe4ec, 0xe4ec], /* Private Use */ + [0xe4ed, 0xe4ed], /* Private Use */ + [0xe4ee, 0xe4ee], /* Private Use */ + [0xe4ef, 0xe4ef], /* Private Use */ + [0xe4f0, 0xe4f0], /* Private Use */ + [0xe4f1, 0xe4f1], /* Private Use */ + [0xe4f2, 0xe4f2], /* Private Use */ + [0xe4f3, 0xe4f3], /* Private Use */ + [0xe4f4, 0xe4f4], /* Private Use */ + [0xe4f5, 0xe4f5], /* Private Use */ + [0xe4f6, 0xe4f6], /* Private Use */ + [0xe4f7, 0xe4f7], /* Private Use */ + [0xe4f8, 0xe4f8], /* Private Use */ + [0xe4f9, 0xe4f9], /* Private Use */ + [0xe4fa, 0xe4fa], /* Private Use */ + [0xe4fb, 0xe4fb], /* Private Use */ + [0xe4fc, 0xe4fc], /* Private Use */ + [0xe4fd, 0xe4fd], /* Private Use */ + [0xe4fe, 0xe4fe], /* Private Use */ + [0xe4ff, 0xe4ff], /* Private Use */ + [0xe500, 0xe500], /* Private Use */ + [0xe501, 0xe501], /* Private Use */ + [0xe502, 0xe502], /* Private Use */ + [0xe503, 0xe503], /* Private Use */ + [0xe504, 0xe504], /* Private Use */ + [0xe505, 0xe505], /* Private Use */ + [0xe506, 0xe506], /* Private Use */ + [0xe507, 0xe507], /* Private Use */ + [0xe508, 0xe508], /* Private Use */ + [0xe509, 0xe509], /* Private Use */ + [0xe50a, 0xe50a], /* Private Use */ + [0xe50b, 0xe50b], /* Private Use */ + [0xe50c, 0xe50c], /* Private Use */ + [0xe50d, 0xe50d], /* Private Use */ + [0xe50e, 0xe50e], /* Private Use */ + [0xe50f, 0xe50f], /* Private Use */ + [0xe510, 0xe510], /* Private Use */ + [0xe511, 0xe511], /* Private Use */ + [0xe512, 0xe512], /* Private Use */ + [0xe513, 0xe513], /* Private Use */ + [0xe514, 0xe514], /* Private Use */ + [0xe515, 0xe515], /* Private Use */ + [0xe516, 0xe516], /* Private Use */ + [0xe517, 0xe517], /* Private Use */ + [0xe518, 0xe518], /* Private Use */ + [0xe519, 0xe519], /* Private Use */ + [0xe51a, 0xe51a], /* Private Use */ + [0xe51b, 0xe51b], /* Private Use */ + [0xe51c, 0xe51c], /* Private Use */ + [0xe51d, 0xe51d], /* Private Use */ + [0xe51e, 0xe51e], /* Private Use */ + [0xe51f, 0xe51f], /* Private Use */ + [0xe520, 0xe520], /* Private Use */ + [0xe521, 0xe521], /* Private Use */ + [0xe522, 0xe522], /* Private Use */ + [0xe523, 0xe523], /* Private Use */ + [0xe524, 0xe524], /* Private Use */ + [0xe525, 0xe525], /* Private Use */ + [0xe526, 0xe526], /* Private Use */ + [0xe527, 0xe527], /* Private Use */ + [0xe528, 0xe528], /* Private Use */ + [0xe529, 0xe529], /* Private Use */ + [0xe52a, 0xe52a], /* Private Use */ + [0xe52b, 0xe52b], /* Private Use */ + [0xe52c, 0xe52c], /* Private Use */ + [0xe52d, 0xe52d], /* Private Use */ + [0xe52e, 0xe52e], /* Private Use */ + [0xe52f, 0xe52f], /* Private Use */ + [0xe530, 0xe530], /* Private Use */ + [0xe531, 0xe531], /* Private Use */ + [0xe532, 0xe532], /* Private Use */ + [0xe533, 0xe533], /* Private Use */ + [0xe534, 0xe534], /* Private Use */ + [0xe535, 0xe535], /* Private Use */ + [0xe536, 0xe536], /* Private Use */ + [0xe537, 0xe537], /* Private Use */ + [0xe538, 0xe538], /* Private Use */ + [0xe539, 0xe539], /* Private Use */ + [0xe53a, 0xe53a], /* Private Use */ + [0xe53b, 0xe53b], /* Private Use */ + [0xe53c, 0xe53c], /* Private Use */ + [0xe53d, 0xe53d], /* Private Use */ + [0xe53e, 0xe53e], /* Private Use */ + [0xe53f, 0xe53f], /* Private Use */ + [0xe540, 0xe540], /* Private Use */ + [0xe541, 0xe541], /* Private Use */ + [0xe542, 0xe542], /* Private Use */ + [0xe543, 0xe543], /* Private Use */ + [0xe544, 0xe544], /* Private Use */ + [0xe545, 0xe545], /* Private Use */ + [0xe546, 0xe546], /* Private Use */ + [0xe547, 0xe547], /* Private Use */ + [0xe548, 0xe548], /* Private Use */ + [0xe549, 0xe549], /* Private Use */ + [0xe54a, 0xe54a], /* Private Use */ + [0xe54b, 0xe54b], /* Private Use */ + [0xe54c, 0xe54c], /* Private Use */ + [0xe54d, 0xe54d], /* Private Use */ + [0xe54e, 0xe54e], /* Private Use */ + [0xe54f, 0xe54f], /* Private Use */ + [0xe550, 0xe550], /* Private Use */ + [0xe551, 0xe551], /* Private Use */ + [0xe552, 0xe552], /* Private Use */ + [0xe553, 0xe553], /* Private Use */ + [0xe554, 0xe554], /* Private Use */ + [0xe555, 0xe555], /* Private Use */ + [0xe556, 0xe556], /* Private Use */ + [0xe557, 0xe557], /* Private Use */ + [0xe558, 0xe558], /* Private Use */ + [0xe559, 0xe559], /* Private Use */ + [0xe55a, 0xe55a], /* Private Use */ + [0xe55b, 0xe55b], /* Private Use */ + [0xe55c, 0xe55c], /* Private Use */ + [0xe55d, 0xe55d], /* Private Use */ + [0xe55e, 0xe55e], /* Private Use */ + [0xe55f, 0xe55f], /* Private Use */ + [0xe560, 0xe560], /* Private Use */ + [0xe561, 0xe561], /* Private Use */ + [0xe562, 0xe562], /* Private Use */ + [0xe563, 0xe563], /* Private Use */ + [0xe564, 0xe564], /* Private Use */ + [0xe565, 0xe565], /* Private Use */ + [0xe566, 0xe566], /* Private Use */ + [0xe567, 0xe567], /* Private Use */ + [0xe568, 0xe568], /* Private Use */ + [0xe569, 0xe569], /* Private Use */ + [0xe56a, 0xe56a], /* Private Use */ + [0xe56b, 0xe56b], /* Private Use */ + [0xe56c, 0xe56c], /* Private Use */ + [0xe56d, 0xe56d], /* Private Use */ + [0xe56e, 0xe56e], /* Private Use */ + [0xe56f, 0xe56f], /* Private Use */ + [0xe570, 0xe570], /* Private Use */ + [0xe571, 0xe571], /* Private Use */ + [0xe572, 0xe572], /* Private Use */ + [0xe573, 0xe573], /* Private Use */ + [0xe574, 0xe574], /* Private Use */ + [0xe575, 0xe575], /* Private Use */ + [0xe576, 0xe576], /* Private Use */ + [0xe577, 0xe577], /* Private Use */ + [0xe578, 0xe578], /* Private Use */ + [0xe579, 0xe579], /* Private Use */ + [0xe57a, 0xe57a], /* Private Use */ + [0xe57b, 0xe57b], /* Private Use */ + [0xe57c, 0xe57c], /* Private Use */ + [0xe57d, 0xe57d], /* Private Use */ + [0xe57e, 0xe57e], /* Private Use */ + [0xe57f, 0xe57f], /* Private Use */ + [0xe580, 0xe580], /* Private Use */ + [0xe581, 0xe581], /* Private Use */ + [0xe582, 0xe582], /* Private Use */ + [0xe583, 0xe583], /* Private Use */ + [0xe584, 0xe584], /* Private Use */ + [0xe585, 0xe585], /* Private Use */ + [0xe586, 0xe586], /* Private Use */ + [0xe587, 0xe587], /* Private Use */ + [0xe588, 0xe588], /* Private Use */ + [0xe589, 0xe589], /* Private Use */ + [0xe58a, 0xe58a], /* Private Use */ + [0xe58b, 0xe58b], /* Private Use */ + [0xe58c, 0xe58c], /* Private Use */ + [0xe58d, 0xe58d], /* Private Use */ + [0xe58e, 0xe58e], /* Private Use */ + [0xe58f, 0xe58f], /* Private Use */ + [0xe590, 0xe590], /* Private Use */ + [0xe591, 0xe591], /* Private Use */ + [0xe592, 0xe592], /* Private Use */ + [0xe593, 0xe593], /* Private Use */ + [0xe594, 0xe594], /* Private Use */ + [0xe595, 0xe595], /* Private Use */ + [0xe596, 0xe596], /* Private Use */ + [0xe597, 0xe597], /* Private Use */ + [0xe598, 0xe598], /* Private Use */ + [0xe599, 0xe599], /* Private Use */ + [0xe59a, 0xe59a], /* Private Use */ + [0xe59b, 0xe59b], /* Private Use */ + [0xe59c, 0xe59c], /* Private Use */ + [0xe59d, 0xe59d], /* Private Use */ + [0xe59e, 0xe59e], /* Private Use */ + [0xe59f, 0xe59f], /* Private Use */ + [0xe5a0, 0xe5a0], /* Private Use */ + [0xe5a1, 0xe5a1], /* Private Use */ + [0xe5a2, 0xe5a2], /* Private Use */ + [0xe5a3, 0xe5a3], /* Private Use */ + [0xe5a4, 0xe5a4], /* Private Use */ + [0xe5a5, 0xe5a5], /* Private Use */ + [0xe5a6, 0xe5a6], /* Private Use */ + [0xe5a7, 0xe5a7], /* Private Use */ + [0xe5a8, 0xe5a8], /* Private Use */ + [0xe5a9, 0xe5a9], /* Private Use */ + [0xe5aa, 0xe5aa], /* Private Use */ + [0xe5ab, 0xe5ab], /* Private Use */ + [0xe5ac, 0xe5ac], /* Private Use */ + [0xe5ad, 0xe5ad], /* Private Use */ + [0xe5ae, 0xe5ae], /* Private Use */ + [0xe5af, 0xe5af], /* Private Use */ + [0xe5b0, 0xe5b0], /* Private Use */ + [0xe5b1, 0xe5b1], /* Private Use */ + [0xe5b2, 0xe5b2], /* Private Use */ + [0xe5b3, 0xe5b3], /* Private Use */ + [0xe5b4, 0xe5b4], /* Private Use */ + [0xe5b5, 0xe5b5], /* Private Use */ + [0xe5b6, 0xe5b6], /* Private Use */ + [0xe5b7, 0xe5b7], /* Private Use */ + [0xe5b8, 0xe5b8], /* Private Use */ + [0xe5b9, 0xe5b9], /* Private Use */ + [0xe5ba, 0xe5ba], /* Private Use */ + [0xe5bb, 0xe5bb], /* Private Use */ + [0xe5bc, 0xe5bc], /* Private Use */ + [0xe5bd, 0xe5bd], /* Private Use */ + [0xe5be, 0xe5be], /* Private Use */ + [0xe5bf, 0xe5bf], /* Private Use */ + [0xe5c0, 0xe5c0], /* Private Use */ + [0xe5c1, 0xe5c1], /* Private Use */ + [0xe5c2, 0xe5c2], /* Private Use */ + [0xe5c3, 0xe5c3], /* Private Use */ + [0xe5c4, 0xe5c4], /* Private Use */ + [0xe5c5, 0xe5c5], /* Private Use */ + [0xe5c6, 0xe5c6], /* Private Use */ + [0xe5c7, 0xe5c7], /* Private Use */ + [0xe5c8, 0xe5c8], /* Private Use */ + [0xe5c9, 0xe5c9], /* Private Use */ + [0xe5ca, 0xe5ca], /* Private Use */ + [0xe5cb, 0xe5cb], /* Private Use */ + [0xe5cc, 0xe5cc], /* Private Use */ + [0xe5cd, 0xe5cd], /* Private Use */ + [0xe5ce, 0xe5ce], /* Private Use */ + [0xe5cf, 0xe5cf], /* Private Use */ + [0xe5d0, 0xe5d0], /* Private Use */ + [0xe5d1, 0xe5d1], /* Private Use */ + [0xe5d2, 0xe5d2], /* Private Use */ + [0xe5d3, 0xe5d3], /* Private Use */ + [0xe5d4, 0xe5d4], /* Private Use */ + [0xe5d5, 0xe5d5], /* Private Use */ + [0xe5d6, 0xe5d6], /* Private Use */ + [0xe5d7, 0xe5d7], /* Private Use */ + [0xe5d8, 0xe5d8], /* Private Use */ + [0xe5d9, 0xe5d9], /* Private Use */ + [0xe5da, 0xe5da], /* Private Use */ + [0xe5db, 0xe5db], /* Private Use */ + [0xe5dc, 0xe5dc], /* Private Use */ + [0xe5dd, 0xe5dd], /* Private Use */ + [0xe5de, 0xe5de], /* Private Use */ + [0xe5df, 0xe5df], /* Private Use */ + [0xe5e0, 0xe5e0], /* Private Use */ + [0xe5e1, 0xe5e1], /* Private Use */ + [0xe5e2, 0xe5e2], /* Private Use */ + [0xe5e3, 0xe5e3], /* Private Use */ + [0xe5e4, 0xe5e4], /* Private Use */ + [0xe5e5, 0xe5e5], /* Private Use */ + [0xe5e6, 0xe5e6], /* Private Use */ + [0xe5e7, 0xe5e7], /* Private Use */ + [0xe5e8, 0xe5e8], /* Private Use */ + [0xe5e9, 0xe5e9], /* Private Use */ + [0xe5ea, 0xe5ea], /* Private Use */ + [0xe5eb, 0xe5eb], /* Private Use */ + [0xe5ec, 0xe5ec], /* Private Use */ + [0xe5ed, 0xe5ed], /* Private Use */ + [0xe5ee, 0xe5ee], /* Private Use */ + [0xe5ef, 0xe5ef], /* Private Use */ + [0xe5f0, 0xe5f0], /* Private Use */ + [0xe5f1, 0xe5f1], /* Private Use */ + [0xe5f2, 0xe5f2], /* Private Use */ + [0xe5f3, 0xe5f3], /* Private Use */ + [0xe5f4, 0xe5f4], /* Private Use */ + [0xe5f5, 0xe5f5], /* Private Use */ + [0xe5f6, 0xe5f6], /* Private Use */ + [0xe5f7, 0xe5f7], /* Private Use */ + [0xe5f8, 0xe5f8], /* Private Use */ + [0xe5f9, 0xe5f9], /* Private Use */ + [0xe5fa, 0xe5fa], /* Private Use */ + [0xe5fb, 0xe5fb], /* Private Use */ + [0xe5fc, 0xe5fc], /* Private Use */ + [0xe5fd, 0xe5fd], /* Private Use */ + [0xe5fe, 0xe5fe], /* Private Use */ + [0xe5ff, 0xe5ff], /* Private Use */ + [0xe600, 0xe600], /* Private Use */ + [0xe601, 0xe601], /* Private Use */ + [0xe602, 0xe602], /* Private Use */ + [0xe603, 0xe603], /* Private Use */ + [0xe604, 0xe604], /* Private Use */ + [0xe605, 0xe605], /* Private Use */ + [0xe606, 0xe606], /* Private Use */ + [0xe607, 0xe607], /* Private Use */ + [0xe608, 0xe608], /* Private Use */ + [0xe609, 0xe609], /* Private Use */ + [0xe60a, 0xe60a], /* Private Use */ + [0xe60b, 0xe60b], /* Private Use */ + [0xe60c, 0xe60c], /* Private Use */ + [0xe60d, 0xe60d], /* Private Use */ + [0xe60e, 0xe60e], /* Private Use */ + [0xe60f, 0xe60f], /* Private Use */ + [0xe610, 0xe610], /* Private Use */ + [0xe611, 0xe611], /* Private Use */ + [0xe612, 0xe612], /* Private Use */ + [0xe613, 0xe613], /* Private Use */ + [0xe614, 0xe614], /* Private Use */ + [0xe615, 0xe615], /* Private Use */ + [0xe616, 0xe616], /* Private Use */ + [0xe617, 0xe617], /* Private Use */ + [0xe618, 0xe618], /* Private Use */ + [0xe619, 0xe619], /* Private Use */ + [0xe61a, 0xe61a], /* Private Use */ + [0xe61b, 0xe61b], /* Private Use */ + [0xe61c, 0xe61c], /* Private Use */ + [0xe61d, 0xe61d], /* Private Use */ + [0xe61e, 0xe61e], /* Private Use */ + [0xe61f, 0xe61f], /* Private Use */ + [0xe620, 0xe620], /* Private Use */ + [0xe621, 0xe621], /* Private Use */ + [0xe622, 0xe622], /* Private Use */ + [0xe623, 0xe623], /* Private Use */ + [0xe624, 0xe624], /* Private Use */ + [0xe625, 0xe625], /* Private Use */ + [0xe626, 0xe626], /* Private Use */ + [0xe627, 0xe627], /* Private Use */ + [0xe628, 0xe628], /* Private Use */ + [0xe629, 0xe629], /* Private Use */ + [0xe62a, 0xe62a], /* Private Use */ + [0xe62b, 0xe62b], /* Private Use */ + [0xe62c, 0xe62c], /* Private Use */ + [0xe62d, 0xe62d], /* Private Use */ + [0xe62e, 0xe62e], /* Private Use */ + [0xe62f, 0xe62f], /* Private Use */ + [0xe630, 0xe630], /* Private Use */ + [0xe631, 0xe631], /* Private Use */ + [0xe632, 0xe632], /* Private Use */ + [0xe633, 0xe633], /* Private Use */ + [0xe634, 0xe634], /* Private Use */ + [0xe635, 0xe635], /* Private Use */ + [0xe636, 0xe636], /* Private Use */ + [0xe637, 0xe637], /* Private Use */ + [0xe638, 0xe638], /* Private Use */ + [0xe639, 0xe639], /* Private Use */ + [0xe63a, 0xe63a], /* Private Use */ + [0xe63b, 0xe63b], /* Private Use */ + [0xe63c, 0xe63c], /* Private Use */ + [0xe63d, 0xe63d], /* Private Use */ + [0xe63e, 0xe63e], /* Private Use */ + [0xe63f, 0xe63f], /* Private Use */ + [0xe640, 0xe640], /* Private Use */ + [0xe641, 0xe641], /* Private Use */ + [0xe642, 0xe642], /* Private Use */ + [0xe643, 0xe643], /* Private Use */ + [0xe644, 0xe644], /* Private Use */ + [0xe645, 0xe645], /* Private Use */ + [0xe646, 0xe646], /* Private Use */ + [0xe647, 0xe647], /* Private Use */ + [0xe648, 0xe648], /* Private Use */ + [0xe649, 0xe649], /* Private Use */ + [0xe64a, 0xe64a], /* Private Use */ + [0xe64b, 0xe64b], /* Private Use */ + [0xe64c, 0xe64c], /* Private Use */ + [0xe64d, 0xe64d], /* Private Use */ + [0xe64e, 0xe64e], /* Private Use */ + [0xe64f, 0xe64f], /* Private Use */ + [0xe650, 0xe650], /* Private Use */ + [0xe651, 0xe651], /* Private Use */ + [0xe652, 0xe652], /* Private Use */ + [0xe653, 0xe653], /* Private Use */ + [0xe654, 0xe654], /* Private Use */ + [0xe655, 0xe655], /* Private Use */ + [0xe656, 0xe656], /* Private Use */ + [0xe657, 0xe657], /* Private Use */ + [0xe658, 0xe658], /* Private Use */ + [0xe659, 0xe659], /* Private Use */ + [0xe65a, 0xe65a], /* Private Use */ + [0xe65b, 0xe65b], /* Private Use */ + [0xe65c, 0xe65c], /* Private Use */ + [0xe65d, 0xe65d], /* Private Use */ + [0xe65e, 0xe65e], /* Private Use */ + [0xe65f, 0xe65f], /* Private Use */ + [0xe660, 0xe660], /* Private Use */ + [0xe661, 0xe661], /* Private Use */ + [0xe662, 0xe662], /* Private Use */ + [0xe663, 0xe663], /* Private Use */ + [0xe664, 0xe664], /* Private Use */ + [0xe665, 0xe665], /* Private Use */ + [0xe666, 0xe666], /* Private Use */ + [0xe667, 0xe667], /* Private Use */ + [0xe668, 0xe668], /* Private Use */ + [0xe669, 0xe669], /* Private Use */ + [0xe66a, 0xe66a], /* Private Use */ + [0xe66b, 0xe66b], /* Private Use */ + [0xe66c, 0xe66c], /* Private Use */ + [0xe66d, 0xe66d], /* Private Use */ + [0xe66e, 0xe66e], /* Private Use */ + [0xe66f, 0xe66f], /* Private Use */ + [0xe670, 0xe670], /* Private Use */ + [0xe671, 0xe671], /* Private Use */ + [0xe672, 0xe672], /* Private Use */ + [0xe673, 0xe673], /* Private Use */ + [0xe674, 0xe674], /* Private Use */ + [0xe675, 0xe675], /* Private Use */ + [0xe676, 0xe676], /* Private Use */ + [0xe677, 0xe677], /* Private Use */ + [0xe678, 0xe678], /* Private Use */ + [0xe679, 0xe679], /* Private Use */ + [0xe67a, 0xe67a], /* Private Use */ + [0xe67b, 0xe67b], /* Private Use */ + [0xe67c, 0xe67c], /* Private Use */ + [0xe67d, 0xe67d], /* Private Use */ + [0xe67e, 0xe67e], /* Private Use */ + [0xe67f, 0xe67f], /* Private Use */ + [0xe680, 0xe680], /* Private Use */ + [0xe681, 0xe681], /* Private Use */ + [0xe682, 0xe682], /* Private Use */ + [0xe683, 0xe683], /* Private Use */ + [0xe684, 0xe684], /* Private Use */ + [0xe685, 0xe685], /* Private Use */ + [0xe686, 0xe686], /* Private Use */ + [0xe687, 0xe687], /* Private Use */ + [0xe688, 0xe688], /* Private Use */ + [0xe689, 0xe689], /* Private Use */ + [0xe68a, 0xe68a], /* Private Use */ + [0xe68b, 0xe68b], /* Private Use */ + [0xe68c, 0xe68c], /* Private Use */ + [0xe68d, 0xe68d], /* Private Use */ + [0xe68e, 0xe68e], /* Private Use */ + [0xe68f, 0xe68f], /* Private Use */ + [0xe690, 0xe690], /* Private Use */ + [0xe691, 0xe691], /* Private Use */ + [0xe692, 0xe692], /* Private Use */ + [0xe693, 0xe693], /* Private Use */ + [0xe694, 0xe694], /* Private Use */ + [0xe695, 0xe695], /* Private Use */ + [0xe696, 0xe696], /* Private Use */ + [0xe697, 0xe697], /* Private Use */ + [0xe698, 0xe698], /* Private Use */ + [0xe699, 0xe699], /* Private Use */ + [0xe69a, 0xe69a], /* Private Use */ + [0xe69b, 0xe69b], /* Private Use */ + [0xe69c, 0xe69c], /* Private Use */ + [0xe69d, 0xe69d], /* Private Use */ + [0xe69e, 0xe69e], /* Private Use */ + [0xe69f, 0xe69f], /* Private Use */ + [0xe6a0, 0xe6a0], /* Private Use */ + [0xe6a1, 0xe6a1], /* Private Use */ + [0xe6a2, 0xe6a2], /* Private Use */ + [0xe6a3, 0xe6a3], /* Private Use */ + [0xe6a4, 0xe6a4], /* Private Use */ + [0xe6a5, 0xe6a5], /* Private Use */ + [0xe6a6, 0xe6a6], /* Private Use */ + [0xe6a7, 0xe6a7], /* Private Use */ + [0xe6a8, 0xe6a8], /* Private Use */ + [0xe6a9, 0xe6a9], /* Private Use */ + [0xe6aa, 0xe6aa], /* Private Use */ + [0xe6ab, 0xe6ab], /* Private Use */ + [0xe6ac, 0xe6ac], /* Private Use */ + [0xe6ad, 0xe6ad], /* Private Use */ + [0xe6ae, 0xe6ae], /* Private Use */ + [0xe6af, 0xe6af], /* Private Use */ + [0xe6b0, 0xe6b0], /* Private Use */ + [0xe6b1, 0xe6b1], /* Private Use */ + [0xe6b2, 0xe6b2], /* Private Use */ + [0xe6b3, 0xe6b3], /* Private Use */ + [0xe6b4, 0xe6b4], /* Private Use */ + [0xe6b5, 0xe6b5], /* Private Use */ + [0xe6b6, 0xe6b6], /* Private Use */ + [0xe6b7, 0xe6b7], /* Private Use */ + [0xe6b8, 0xe6b8], /* Private Use */ + [0xe6b9, 0xe6b9], /* Private Use */ + [0xe6ba, 0xe6ba], /* Private Use */ + [0xe6bb, 0xe6bb], /* Private Use */ + [0xe6bc, 0xe6bc], /* Private Use */ + [0xe6bd, 0xe6bd], /* Private Use */ + [0xe6be, 0xe6be], /* Private Use */ + [0xe6bf, 0xe6bf], /* Private Use */ + [0xe6c0, 0xe6c0], /* Private Use */ + [0xe6c1, 0xe6c1], /* Private Use */ + [0xe6c2, 0xe6c2], /* Private Use */ + [0xe6c3, 0xe6c3], /* Private Use */ + [0xe6c4, 0xe6c4], /* Private Use */ + [0xe6c5, 0xe6c5], /* Private Use */ + [0xe6c6, 0xe6c6], /* Private Use */ + [0xe6c7, 0xe6c7], /* Private Use */ + [0xe6c8, 0xe6c8], /* Private Use */ + [0xe6c9, 0xe6c9], /* Private Use */ + [0xe6ca, 0xe6ca], /* Private Use */ + [0xe6cb, 0xe6cb], /* Private Use */ + [0xe6cc, 0xe6cc], /* Private Use */ + [0xe6cd, 0xe6cd], /* Private Use */ + [0xe6ce, 0xe6ce], /* Private Use */ + [0xe6cf, 0xe6cf], /* Private Use */ + [0xe6d0, 0xe6d0], /* Private Use */ + [0xe6d1, 0xe6d1], /* Private Use */ + [0xe6d2, 0xe6d2], /* Private Use */ + [0xe6d3, 0xe6d3], /* Private Use */ + [0xe6d4, 0xe6d4], /* Private Use */ + [0xe6d5, 0xe6d5], /* Private Use */ + [0xe6d6, 0xe6d6], /* Private Use */ + [0xe6d7, 0xe6d7], /* Private Use */ + [0xe6d8, 0xe6d8], /* Private Use */ + [0xe6d9, 0xe6d9], /* Private Use */ + [0xe6da, 0xe6da], /* Private Use */ + [0xe6db, 0xe6db], /* Private Use */ + [0xe6dc, 0xe6dc], /* Private Use */ + [0xe6dd, 0xe6dd], /* Private Use */ + [0xe6de, 0xe6de], /* Private Use */ + [0xe6df, 0xe6df], /* Private Use */ + [0xe6e0, 0xe6e0], /* Private Use */ + [0xe6e1, 0xe6e1], /* Private Use */ + [0xe6e2, 0xe6e2], /* Private Use */ + [0xe6e3, 0xe6e3], /* Private Use */ + [0xe6e4, 0xe6e4], /* Private Use */ + [0xe6e5, 0xe6e5], /* Private Use */ + [0xe6e6, 0xe6e6], /* Private Use */ + [0xe6e7, 0xe6e7], /* Private Use */ + [0xe6e8, 0xe6e8], /* Private Use */ + [0xe6e9, 0xe6e9], /* Private Use */ + [0xe6ea, 0xe6ea], /* Private Use */ + [0xe6eb, 0xe6eb], /* Private Use */ + [0xe6ec, 0xe6ec], /* Private Use */ + [0xe6ed, 0xe6ed], /* Private Use */ + [0xe6ee, 0xe6ee], /* Private Use */ + [0xe6ef, 0xe6ef], /* Private Use */ + [0xe6f0, 0xe6f0], /* Private Use */ + [0xe6f1, 0xe6f1], /* Private Use */ + [0xe6f2, 0xe6f2], /* Private Use */ + [0xe6f3, 0xe6f3], /* Private Use */ + [0xe6f4, 0xe6f4], /* Private Use */ + [0xe6f5, 0xe6f5], /* Private Use */ + [0xe6f6, 0xe6f6], /* Private Use */ + [0xe6f7, 0xe6f7], /* Private Use */ + [0xe6f8, 0xe6f8], /* Private Use */ + [0xe6f9, 0xe6f9], /* Private Use */ + [0xe6fa, 0xe6fa], /* Private Use */ + [0xe6fb, 0xe6fb], /* Private Use */ + [0xe6fc, 0xe6fc], /* Private Use */ + [0xe6fd, 0xe6fd], /* Private Use */ + [0xe6fe, 0xe6fe], /* Private Use */ + [0xe6ff, 0xe6ff], /* Private Use */ + [0xe700, 0xe700], /* Private Use */ + [0xe701, 0xe701], /* Private Use */ + [0xe702, 0xe702], /* Private Use */ + [0xe703, 0xe703], /* Private Use */ + [0xe704, 0xe704], /* Private Use */ + [0xe705, 0xe705], /* Private Use */ + [0xe706, 0xe706], /* Private Use */ + [0xe707, 0xe707], /* Private Use */ + [0xe708, 0xe708], /* Private Use */ + [0xe709, 0xe709], /* Private Use */ + [0xe70a, 0xe70a], /* Private Use */ + [0xe70b, 0xe70b], /* Private Use */ + [0xe70c, 0xe70c], /* Private Use */ + [0xe70d, 0xe70d], /* Private Use */ + [0xe70e, 0xe70e], /* Private Use */ + [0xe70f, 0xe70f], /* Private Use */ + [0xe710, 0xe710], /* Private Use */ + [0xe711, 0xe711], /* Private Use */ + [0xe712, 0xe712], /* Private Use */ + [0xe713, 0xe713], /* Private Use */ + [0xe714, 0xe714], /* Private Use */ + [0xe715, 0xe715], /* Private Use */ + [0xe716, 0xe716], /* Private Use */ + [0xe717, 0xe717], /* Private Use */ + [0xe718, 0xe718], /* Private Use */ + [0xe719, 0xe719], /* Private Use */ + [0xe71a, 0xe71a], /* Private Use */ + [0xe71b, 0xe71b], /* Private Use */ + [0xe71c, 0xe71c], /* Private Use */ + [0xe71d, 0xe71d], /* Private Use */ + [0xe71e, 0xe71e], /* Private Use */ + [0xe71f, 0xe71f], /* Private Use */ + [0xe720, 0xe720], /* Private Use */ + [0xe721, 0xe721], /* Private Use */ + [0xe722, 0xe722], /* Private Use */ + [0xe723, 0xe723], /* Private Use */ + [0xe724, 0xe724], /* Private Use */ + [0xe725, 0xe725], /* Private Use */ + [0xe726, 0xe726], /* Private Use */ + [0xe727, 0xe727], /* Private Use */ + [0xe728, 0xe728], /* Private Use */ + [0xe729, 0xe729], /* Private Use */ + [0xe72a, 0xe72a], /* Private Use */ + [0xe72b, 0xe72b], /* Private Use */ + [0xe72c, 0xe72c], /* Private Use */ + [0xe72d, 0xe72d], /* Private Use */ + [0xe72e, 0xe72e], /* Private Use */ + [0xe72f, 0xe72f], /* Private Use */ + [0xe730, 0xe730], /* Private Use */ + [0xe731, 0xe731], /* Private Use */ + [0xe732, 0xe732], /* Private Use */ + [0xe733, 0xe733], /* Private Use */ + [0xe734, 0xe734], /* Private Use */ + [0xe735, 0xe735], /* Private Use */ + [0xe736, 0xe736], /* Private Use */ + [0xe737, 0xe737], /* Private Use */ + [0xe738, 0xe738], /* Private Use */ + [0xe739, 0xe739], /* Private Use */ + [0xe73a, 0xe73a], /* Private Use */ + [0xe73b, 0xe73b], /* Private Use */ + [0xe73c, 0xe73c], /* Private Use */ + [0xe73d, 0xe73d], /* Private Use */ + [0xe73e, 0xe73e], /* Private Use */ + [0xe73f, 0xe73f], /* Private Use */ + [0xe740, 0xe740], /* Private Use */ + [0xe741, 0xe741], /* Private Use */ + [0xe742, 0xe742], /* Private Use */ + [0xe743, 0xe743], /* Private Use */ + [0xe744, 0xe744], /* Private Use */ + [0xe745, 0xe745], /* Private Use */ + [0xe746, 0xe746], /* Private Use */ + [0xe747, 0xe747], /* Private Use */ + [0xe748, 0xe748], /* Private Use */ + [0xe749, 0xe749], /* Private Use */ + [0xe74a, 0xe74a], /* Private Use */ + [0xe74b, 0xe74b], /* Private Use */ + [0xe74c, 0xe74c], /* Private Use */ + [0xe74d, 0xe74d], /* Private Use */ + [0xe74e, 0xe74e], /* Private Use */ + [0xe74f, 0xe74f], /* Private Use */ + [0xe750, 0xe750], /* Private Use */ + [0xe751, 0xe751], /* Private Use */ + [0xe752, 0xe752], /* Private Use */ + [0xe753, 0xe753], /* Private Use */ + [0xe754, 0xe754], /* Private Use */ + [0xe755, 0xe755], /* Private Use */ + [0xe756, 0xe756], /* Private Use */ + [0xe757, 0xe757], /* Private Use */ + [0xe758, 0xe758], /* Private Use */ + [0xe759, 0xe759], /* Private Use */ + [0xe75a, 0xe75a], /* Private Use */ + [0xe75b, 0xe75b], /* Private Use */ + [0xe75c, 0xe75c], /* Private Use */ + [0xe75d, 0xe75d], /* Private Use */ + [0xe75e, 0xe75e], /* Private Use */ + [0xe75f, 0xe75f], /* Private Use */ + [0xe760, 0xe760], /* Private Use */ + [0xe761, 0xe761], /* Private Use */ + [0xe762, 0xe762], /* Private Use */ + [0xe763, 0xe763], /* Private Use */ + [0xe764, 0xe764], /* Private Use */ + [0xe765, 0xe765], /* Private Use */ + [0xe766, 0xe766], /* Private Use */ + [0xe767, 0xe767], /* Private Use */ + [0xe768, 0xe768], /* Private Use */ + [0xe769, 0xe769], /* Private Use */ + [0xe76a, 0xe76a], /* Private Use */ + [0xe76b, 0xe76b], /* Private Use */ + [0xe76c, 0xe76c], /* Private Use */ + [0xe76d, 0xe76d], /* Private Use */ + [0xe76e, 0xe76e], /* Private Use */ + [0xe76f, 0xe76f], /* Private Use */ + [0xe770, 0xe770], /* Private Use */ + [0xe771, 0xe771], /* Private Use */ + [0xe772, 0xe772], /* Private Use */ + [0xe773, 0xe773], /* Private Use */ + [0xe774, 0xe774], /* Private Use */ + [0xe775, 0xe775], /* Private Use */ + [0xe776, 0xe776], /* Private Use */ + [0xe777, 0xe777], /* Private Use */ + [0xe778, 0xe778], /* Private Use */ + [0xe779, 0xe779], /* Private Use */ + [0xe77a, 0xe77a], /* Private Use */ + [0xe77b, 0xe77b], /* Private Use */ + [0xe77c, 0xe77c], /* Private Use */ + [0xe77d, 0xe77d], /* Private Use */ + [0xe77e, 0xe77e], /* Private Use */ + [0xe77f, 0xe77f], /* Private Use */ + [0xe780, 0xe780], /* Private Use */ + [0xe781, 0xe781], /* Private Use */ + [0xe782, 0xe782], /* Private Use */ + [0xe783, 0xe783], /* Private Use */ + [0xe784, 0xe784], /* Private Use */ + [0xe785, 0xe785], /* Private Use */ + [0xe786, 0xe786], /* Private Use */ + [0xe787, 0xe787], /* Private Use */ + [0xe788, 0xe788], /* Private Use */ + [0xe789, 0xe789], /* Private Use */ + [0xe78a, 0xe78a], /* Private Use */ + [0xe78b, 0xe78b], /* Private Use */ + [0xe78c, 0xe78c], /* Private Use */ + [0xe78d, 0xe78d], /* Private Use */ + [0xe78e, 0xe78e], /* Private Use */ + [0xe78f, 0xe78f], /* Private Use */ + [0xe790, 0xe790], /* Private Use */ + [0xe791, 0xe791], /* Private Use */ + [0xe792, 0xe792], /* Private Use */ + [0xe793, 0xe793], /* Private Use */ + [0xe794, 0xe794], /* Private Use */ + [0xe795, 0xe795], /* Private Use */ + [0xe796, 0xe796], /* Private Use */ + [0xe797, 0xe797], /* Private Use */ + [0xe798, 0xe798], /* Private Use */ + [0xe799, 0xe799], /* Private Use */ + [0xe79a, 0xe79a], /* Private Use */ + [0xe79b, 0xe79b], /* Private Use */ + [0xe79c, 0xe79c], /* Private Use */ + [0xe79d, 0xe79d], /* Private Use */ + [0xe79e, 0xe79e], /* Private Use */ + [0xe79f, 0xe79f], /* Private Use */ + [0xe7a0, 0xe7a0], /* Private Use */ + [0xe7a1, 0xe7a1], /* Private Use */ + [0xe7a2, 0xe7a2], /* Private Use */ + [0xe7a3, 0xe7a3], /* Private Use */ + [0xe7a4, 0xe7a4], /* Private Use */ + [0xe7a5, 0xe7a5], /* Private Use */ + [0xe7a6, 0xe7a6], /* Private Use */ + [0xe7a7, 0xe7a7], /* Private Use */ + [0xe7a8, 0xe7a8], /* Private Use */ + [0xe7a9, 0xe7a9], /* Private Use */ + [0xe7aa, 0xe7aa], /* Private Use */ + [0xe7ab, 0xe7ab], /* Private Use */ + [0xe7ac, 0xe7ac], /* Private Use */ + [0xe7ad, 0xe7ad], /* Private Use */ + [0xe7ae, 0xe7ae], /* Private Use */ + [0xe7af, 0xe7af], /* Private Use */ + [0xe7b0, 0xe7b0], /* Private Use */ + [0xe7b1, 0xe7b1], /* Private Use */ + [0xe7b2, 0xe7b2], /* Private Use */ + [0xe7b3, 0xe7b3], /* Private Use */ + [0xe7b4, 0xe7b4], /* Private Use */ + [0xe7b5, 0xe7b5], /* Private Use */ + [0xe7b6, 0xe7b6], /* Private Use */ + [0xe7b7, 0xe7b7], /* Private Use */ + [0xe7b8, 0xe7b8], /* Private Use */ + [0xe7b9, 0xe7b9], /* Private Use */ + [0xe7ba, 0xe7ba], /* Private Use */ + [0xe7bb, 0xe7bb], /* Private Use */ + [0xe7bc, 0xe7bc], /* Private Use */ + [0xe7bd, 0xe7bd], /* Private Use */ + [0xe7be, 0xe7be], /* Private Use */ + [0xe7bf, 0xe7bf], /* Private Use */ + [0xe7c0, 0xe7c0], /* Private Use */ + [0xe7c1, 0xe7c1], /* Private Use */ + [0xe7c2, 0xe7c2], /* Private Use */ + [0xe7c3, 0xe7c3], /* Private Use */ + [0xe7c4, 0xe7c4], /* Private Use */ + [0xe7c5, 0xe7c5], /* Private Use */ + [0xe7c6, 0xe7c6], /* Private Use */ + [0xe7c7, 0xe7c7], /* Private Use */ + [0xe7c8, 0xe7c8], /* Private Use */ + [0xe7c9, 0xe7c9], /* Private Use */ + [0xe7ca, 0xe7ca], /* Private Use */ + [0xe7cb, 0xe7cb], /* Private Use */ + [0xe7cc, 0xe7cc], /* Private Use */ + [0xe7cd, 0xe7cd], /* Private Use */ + [0xe7ce, 0xe7ce], /* Private Use */ + [0xe7cf, 0xe7cf], /* Private Use */ + [0xe7d0, 0xe7d0], /* Private Use */ + [0xe7d1, 0xe7d1], /* Private Use */ + [0xe7d2, 0xe7d2], /* Private Use */ + [0xe7d3, 0xe7d3], /* Private Use */ + [0xe7d4, 0xe7d4], /* Private Use */ + [0xe7d5, 0xe7d5], /* Private Use */ + [0xe7d6, 0xe7d6], /* Private Use */ + [0xe7d7, 0xe7d7], /* Private Use */ + [0xe7d8, 0xe7d8], /* Private Use */ + [0xe7d9, 0xe7d9], /* Private Use */ + [0xe7da, 0xe7da], /* Private Use */ + [0xe7db, 0xe7db], /* Private Use */ + [0xe7dc, 0xe7dc], /* Private Use */ + [0xe7dd, 0xe7dd], /* Private Use */ + [0xe7de, 0xe7de], /* Private Use */ + [0xe7df, 0xe7df], /* Private Use */ + [0xe7e0, 0xe7e0], /* Private Use */ + [0xe7e1, 0xe7e1], /* Private Use */ + [0xe7e2, 0xe7e2], /* Private Use */ + [0xe7e3, 0xe7e3], /* Private Use */ + [0xe7e4, 0xe7e4], /* Private Use */ + [0xe7e5, 0xe7e5], /* Private Use */ + [0xe7e6, 0xe7e6], /* Private Use */ + [0xe7e7, 0xe7e7], /* Private Use */ + [0xe7e8, 0xe7e8], /* Private Use */ + [0xe7e9, 0xe7e9], /* Private Use */ + [0xe7ea, 0xe7ea], /* Private Use */ + [0xe7eb, 0xe7eb], /* Private Use */ + [0xe7ec, 0xe7ec], /* Private Use */ + [0xe7ed, 0xe7ed], /* Private Use */ + [0xe7ee, 0xe7ee], /* Private Use */ + [0xe7ef, 0xe7ef], /* Private Use */ + [0xe7f0, 0xe7f0], /* Private Use */ + [0xe7f1, 0xe7f1], /* Private Use */ + [0xe7f2, 0xe7f2], /* Private Use */ + [0xe7f3, 0xe7f3], /* Private Use */ + [0xe7f4, 0xe7f4], /* Private Use */ + [0xe7f5, 0xe7f5], /* Private Use */ + [0xe7f6, 0xe7f6], /* Private Use */ + [0xe7f7, 0xe7f7], /* Private Use */ + [0xe7f8, 0xe7f8], /* Private Use */ + [0xe7f9, 0xe7f9], /* Private Use */ + [0xe7fa, 0xe7fa], /* Private Use */ + [0xe7fb, 0xe7fb], /* Private Use */ + [0xe7fc, 0xe7fc], /* Private Use */ + [0xe7fd, 0xe7fd], /* Private Use */ + [0xe7fe, 0xe7fe], /* Private Use */ + [0xe7ff, 0xe7ff], /* Private Use */ + [0xe800, 0xe800], /* Private Use */ + [0xe801, 0xe801], /* Private Use */ + [0xe802, 0xe802], /* Private Use */ + [0xe803, 0xe803], /* Private Use */ + [0xe804, 0xe804], /* Private Use */ + [0xe805, 0xe805], /* Private Use */ + [0xe806, 0xe806], /* Private Use */ + [0xe807, 0xe807], /* Private Use */ + [0xe808, 0xe808], /* Private Use */ + [0xe809, 0xe809], /* Private Use */ + [0xe80a, 0xe80a], /* Private Use */ + [0xe80b, 0xe80b], /* Private Use */ + [0xe80c, 0xe80c], /* Private Use */ + [0xe80d, 0xe80d], /* Private Use */ + [0xe80e, 0xe80e], /* Private Use */ + [0xe80f, 0xe80f], /* Private Use */ + [0xe810, 0xe810], /* Private Use */ + [0xe811, 0xe811], /* Private Use */ + [0xe812, 0xe812], /* Private Use */ + [0xe813, 0xe813], /* Private Use */ + [0xe814, 0xe814], /* Private Use */ + [0xe815, 0xe815], /* Private Use */ + [0xe816, 0xe816], /* Private Use */ + [0xe817, 0xe817], /* Private Use */ + [0xe818, 0xe818], /* Private Use */ + [0xe819, 0xe819], /* Private Use */ + [0xe81a, 0xe81a], /* Private Use */ + [0xe81b, 0xe81b], /* Private Use */ + [0xe81c, 0xe81c], /* Private Use */ + [0xe81d, 0xe81d], /* Private Use */ + [0xe81e, 0xe81e], /* Private Use */ + [0xe81f, 0xe81f], /* Private Use */ + [0xe820, 0xe820], /* Private Use */ + [0xe821, 0xe821], /* Private Use */ + [0xe822, 0xe822], /* Private Use */ + [0xe823, 0xe823], /* Private Use */ + [0xe824, 0xe824], /* Private Use */ + [0xe825, 0xe825], /* Private Use */ + [0xe826, 0xe826], /* Private Use */ + [0xe827, 0xe827], /* Private Use */ + [0xe828, 0xe828], /* Private Use */ + [0xe829, 0xe829], /* Private Use */ + [0xe82a, 0xe82a], /* Private Use */ + [0xe82b, 0xe82b], /* Private Use */ + [0xe82c, 0xe82c], /* Private Use */ + [0xe82d, 0xe82d], /* Private Use */ + [0xe82e, 0xe82e], /* Private Use */ + [0xe82f, 0xe82f], /* Private Use */ + [0xe830, 0xe830], /* Private Use */ + [0xe831, 0xe831], /* Private Use */ + [0xe832, 0xe832], /* Private Use */ + [0xe833, 0xe833], /* Private Use */ + [0xe834, 0xe834], /* Private Use */ + [0xe835, 0xe835], /* Private Use */ + [0xe836, 0xe836], /* Private Use */ + [0xe837, 0xe837], /* Private Use */ + [0xe838, 0xe838], /* Private Use */ + [0xe839, 0xe839], /* Private Use */ + [0xe83a, 0xe83a], /* Private Use */ + [0xe83b, 0xe83b], /* Private Use */ + [0xe83c, 0xe83c], /* Private Use */ + [0xe83d, 0xe83d], /* Private Use */ + [0xe83e, 0xe83e], /* Private Use */ + [0xe83f, 0xe83f], /* Private Use */ + [0xe840, 0xe840], /* Private Use */ + [0xe841, 0xe841], /* Private Use */ + [0xe842, 0xe842], /* Private Use */ + [0xe843, 0xe843], /* Private Use */ + [0xe844, 0xe844], /* Private Use */ + [0xe845, 0xe845], /* Private Use */ + [0xe846, 0xe846], /* Private Use */ + [0xe847, 0xe847], /* Private Use */ + [0xe848, 0xe848], /* Private Use */ + [0xe849, 0xe849], /* Private Use */ + [0xe84a, 0xe84a], /* Private Use */ + [0xe84b, 0xe84b], /* Private Use */ + [0xe84c, 0xe84c], /* Private Use */ + [0xe84d, 0xe84d], /* Private Use */ + [0xe84e, 0xe84e], /* Private Use */ + [0xe84f, 0xe84f], /* Private Use */ + [0xe850, 0xe850], /* Private Use */ + [0xe851, 0xe851], /* Private Use */ + [0xe852, 0xe852], /* Private Use */ + [0xe853, 0xe853], /* Private Use */ + [0xe854, 0xe854], /* Private Use */ + [0xe855, 0xe855], /* Private Use */ + [0xe856, 0xe856], /* Private Use */ + [0xe857, 0xe857], /* Private Use */ + [0xe858, 0xe858], /* Private Use */ + [0xe859, 0xe859], /* Private Use */ + [0xe85a, 0xe85a], /* Private Use */ + [0xe85b, 0xe85b], /* Private Use */ + [0xe85c, 0xe85c], /* Private Use */ + [0xe85d, 0xe85d], /* Private Use */ + [0xe85e, 0xe85e], /* Private Use */ + [0xe85f, 0xe85f], /* Private Use */ + [0xe860, 0xe860], /* Private Use */ + [0xe861, 0xe861], /* Private Use */ + [0xe862, 0xe862], /* Private Use */ + [0xe863, 0xe863], /* Private Use */ + [0xe864, 0xe864], /* Private Use */ + [0xe865, 0xe865], /* Private Use */ + [0xe866, 0xe866], /* Private Use */ + [0xe867, 0xe867], /* Private Use */ + [0xe868, 0xe868], /* Private Use */ + [0xe869, 0xe869], /* Private Use */ + [0xe86a, 0xe86a], /* Private Use */ + [0xe86b, 0xe86b], /* Private Use */ + [0xe86c, 0xe86c], /* Private Use */ + [0xe86d, 0xe86d], /* Private Use */ + [0xe86e, 0xe86e], /* Private Use */ + [0xe86f, 0xe86f], /* Private Use */ + [0xe870, 0xe870], /* Private Use */ + [0xe871, 0xe871], /* Private Use */ + [0xe872, 0xe872], /* Private Use */ + [0xe873, 0xe873], /* Private Use */ + [0xe874, 0xe874], /* Private Use */ + [0xe875, 0xe875], /* Private Use */ + [0xe876, 0xe876], /* Private Use */ + [0xe877, 0xe877], /* Private Use */ + [0xe878, 0xe878], /* Private Use */ + [0xe879, 0xe879], /* Private Use */ + [0xe87a, 0xe87a], /* Private Use */ + [0xe87b, 0xe87b], /* Private Use */ + [0xe87c, 0xe87c], /* Private Use */ + [0xe87d, 0xe87d], /* Private Use */ + [0xe87e, 0xe87e], /* Private Use */ + [0xe87f, 0xe87f], /* Private Use */ + [0xe880, 0xe880], /* Private Use */ + [0xe881, 0xe881], /* Private Use */ + [0xe882, 0xe882], /* Private Use */ + [0xe883, 0xe883], /* Private Use */ + [0xe884, 0xe884], /* Private Use */ + [0xe885, 0xe885], /* Private Use */ + [0xe886, 0xe886], /* Private Use */ + [0xe887, 0xe887], /* Private Use */ + [0xe888, 0xe888], /* Private Use */ + [0xe889, 0xe889], /* Private Use */ + [0xe88a, 0xe88a], /* Private Use */ + [0xe88b, 0xe88b], /* Private Use */ + [0xe88c, 0xe88c], /* Private Use */ + [0xe88d, 0xe88d], /* Private Use */ + [0xe88e, 0xe88e], /* Private Use */ + [0xe88f, 0xe88f], /* Private Use */ + [0xe890, 0xe890], /* Private Use */ + [0xe891, 0xe891], /* Private Use */ + [0xe892, 0xe892], /* Private Use */ + [0xe893, 0xe893], /* Private Use */ + [0xe894, 0xe894], /* Private Use */ + [0xe895, 0xe895], /* Private Use */ + [0xe896, 0xe896], /* Private Use */ + [0xe897, 0xe897], /* Private Use */ + [0xe898, 0xe898], /* Private Use */ + [0xe899, 0xe899], /* Private Use */ + [0xe89a, 0xe89a], /* Private Use */ + [0xe89b, 0xe89b], /* Private Use */ + [0xe89c, 0xe89c], /* Private Use */ + [0xe89d, 0xe89d], /* Private Use */ + [0xe89e, 0xe89e], /* Private Use */ + [0xe89f, 0xe89f], /* Private Use */ + [0xe8a0, 0xe8a0], /* Private Use */ + [0xe8a1, 0xe8a1], /* Private Use */ + [0xe8a2, 0xe8a2], /* Private Use */ + [0xe8a3, 0xe8a3], /* Private Use */ + [0xe8a4, 0xe8a4], /* Private Use */ + [0xe8a5, 0xe8a5], /* Private Use */ + [0xe8a6, 0xe8a6], /* Private Use */ + [0xe8a7, 0xe8a7], /* Private Use */ + [0xe8a8, 0xe8a8], /* Private Use */ + [0xe8a9, 0xe8a9], /* Private Use */ + [0xe8aa, 0xe8aa], /* Private Use */ + [0xe8ab, 0xe8ab], /* Private Use */ + [0xe8ac, 0xe8ac], /* Private Use */ + [0xe8ad, 0xe8ad], /* Private Use */ + [0xe8ae, 0xe8ae], /* Private Use */ + [0xe8af, 0xe8af], /* Private Use */ + [0xe8b0, 0xe8b0], /* Private Use */ + [0xe8b1, 0xe8b1], /* Private Use */ + [0xe8b2, 0xe8b2], /* Private Use */ + [0xe8b3, 0xe8b3], /* Private Use */ + [0xe8b4, 0xe8b4], /* Private Use */ + [0xe8b5, 0xe8b5], /* Private Use */ + [0xe8b6, 0xe8b6], /* Private Use */ + [0xe8b7, 0xe8b7], /* Private Use */ + [0xe8b8, 0xe8b8], /* Private Use */ + [0xe8b9, 0xe8b9], /* Private Use */ + [0xe8ba, 0xe8ba], /* Private Use */ + [0xe8bb, 0xe8bb], /* Private Use */ + [0xe8bc, 0xe8bc], /* Private Use */ + [0xe8bd, 0xe8bd], /* Private Use */ + [0xe8be, 0xe8be], /* Private Use */ + [0xe8bf, 0xe8bf], /* Private Use */ + [0xe8c0, 0xe8c0], /* Private Use */ + [0xe8c1, 0xe8c1], /* Private Use */ + [0xe8c2, 0xe8c2], /* Private Use */ + [0xe8c3, 0xe8c3], /* Private Use */ + [0xe8c4, 0xe8c4], /* Private Use */ + [0xe8c5, 0xe8c5], /* Private Use */ + [0xe8c6, 0xe8c6], /* Private Use */ + [0xe8c7, 0xe8c7], /* Private Use */ + [0xe8c8, 0xe8c8], /* Private Use */ + [0xe8c9, 0xe8c9], /* Private Use */ + [0xe8ca, 0xe8ca], /* Private Use */ + [0xe8cb, 0xe8cb], /* Private Use */ + [0xe8cc, 0xe8cc], /* Private Use */ + [0xe8cd, 0xe8cd], /* Private Use */ + [0xe8ce, 0xe8ce], /* Private Use */ + [0xe8cf, 0xe8cf], /* Private Use */ + [0xe8d0, 0xe8d0], /* Private Use */ + [0xe8d1, 0xe8d1], /* Private Use */ + [0xe8d2, 0xe8d2], /* Private Use */ + [0xe8d3, 0xe8d3], /* Private Use */ + [0xe8d4, 0xe8d4], /* Private Use */ + [0xe8d5, 0xe8d5], /* Private Use */ + [0xe8d6, 0xe8d6], /* Private Use */ + [0xe8d7, 0xe8d7], /* Private Use */ + [0xe8d8, 0xe8d8], /* Private Use */ + [0xe8d9, 0xe8d9], /* Private Use */ + [0xe8da, 0xe8da], /* Private Use */ + [0xe8db, 0xe8db], /* Private Use */ + [0xe8dc, 0xe8dc], /* Private Use */ + [0xe8dd, 0xe8dd], /* Private Use */ + [0xe8de, 0xe8de], /* Private Use */ + [0xe8df, 0xe8df], /* Private Use */ + [0xe8e0, 0xe8e0], /* Private Use */ + [0xe8e1, 0xe8e1], /* Private Use */ + [0xe8e2, 0xe8e2], /* Private Use */ + [0xe8e3, 0xe8e3], /* Private Use */ + [0xe8e4, 0xe8e4], /* Private Use */ + [0xe8e5, 0xe8e5], /* Private Use */ + [0xe8e6, 0xe8e6], /* Private Use */ + [0xe8e7, 0xe8e7], /* Private Use */ + [0xe8e8, 0xe8e8], /* Private Use */ + [0xe8e9, 0xe8e9], /* Private Use */ + [0xe8ea, 0xe8ea], /* Private Use */ + [0xe8eb, 0xe8eb], /* Private Use */ + [0xe8ec, 0xe8ec], /* Private Use */ + [0xe8ed, 0xe8ed], /* Private Use */ + [0xe8ee, 0xe8ee], /* Private Use */ + [0xe8ef, 0xe8ef], /* Private Use */ + [0xe8f0, 0xe8f0], /* Private Use */ + [0xe8f1, 0xe8f1], /* Private Use */ + [0xe8f2, 0xe8f2], /* Private Use */ + [0xe8f3, 0xe8f3], /* Private Use */ + [0xe8f4, 0xe8f4], /* Private Use */ + [0xe8f5, 0xe8f5], /* Private Use */ + [0xe8f6, 0xe8f6], /* Private Use */ + [0xe8f7, 0xe8f7], /* Private Use */ + [0xe8f8, 0xe8f8], /* Private Use */ + [0xe8f9, 0xe8f9], /* Private Use */ + [0xe8fa, 0xe8fa], /* Private Use */ + [0xe8fb, 0xe8fb], /* Private Use */ + [0xe8fc, 0xe8fc], /* Private Use */ + [0xe8fd, 0xe8fd], /* Private Use */ + [0xe8fe, 0xe8fe], /* Private Use */ + [0xe8ff, 0xe8ff], /* Private Use */ + [0xe900, 0xe900], /* Private Use */ + [0xe901, 0xe901], /* Private Use */ + [0xe902, 0xe902], /* Private Use */ + [0xe903, 0xe903], /* Private Use */ + [0xe904, 0xe904], /* Private Use */ + [0xe905, 0xe905], /* Private Use */ + [0xe906, 0xe906], /* Private Use */ + [0xe907, 0xe907], /* Private Use */ + [0xe908, 0xe908], /* Private Use */ + [0xe909, 0xe909], /* Private Use */ + [0xe90a, 0xe90a], /* Private Use */ + [0xe90b, 0xe90b], /* Private Use */ + [0xe90c, 0xe90c], /* Private Use */ + [0xe90d, 0xe90d], /* Private Use */ + [0xe90e, 0xe90e], /* Private Use */ + [0xe90f, 0xe90f], /* Private Use */ + [0xe910, 0xe910], /* Private Use */ + [0xe911, 0xe911], /* Private Use */ + [0xe912, 0xe912], /* Private Use */ + [0xe913, 0xe913], /* Private Use */ + [0xe914, 0xe914], /* Private Use */ + [0xe915, 0xe915], /* Private Use */ + [0xe916, 0xe916], /* Private Use */ + [0xe917, 0xe917], /* Private Use */ + [0xe918, 0xe918], /* Private Use */ + [0xe919, 0xe919], /* Private Use */ + [0xe91a, 0xe91a], /* Private Use */ + [0xe91b, 0xe91b], /* Private Use */ + [0xe91c, 0xe91c], /* Private Use */ + [0xe91d, 0xe91d], /* Private Use */ + [0xe91e, 0xe91e], /* Private Use */ + [0xe91f, 0xe91f], /* Private Use */ + [0xe920, 0xe920], /* Private Use */ + [0xe921, 0xe921], /* Private Use */ + [0xe922, 0xe922], /* Private Use */ + [0xe923, 0xe923], /* Private Use */ + [0xe924, 0xe924], /* Private Use */ + [0xe925, 0xe925], /* Private Use */ + [0xe926, 0xe926], /* Private Use */ + [0xe927, 0xe927], /* Private Use */ + [0xe928, 0xe928], /* Private Use */ + [0xe929, 0xe929], /* Private Use */ + [0xe92a, 0xe92a], /* Private Use */ + [0xe92b, 0xe92b], /* Private Use */ + [0xe92c, 0xe92c], /* Private Use */ + [0xe92d, 0xe92d], /* Private Use */ + [0xe92e, 0xe92e], /* Private Use */ + [0xe92f, 0xe92f], /* Private Use */ + [0xe930, 0xe930], /* Private Use */ + [0xe931, 0xe931], /* Private Use */ + [0xe932, 0xe932], /* Private Use */ + [0xe933, 0xe933], /* Private Use */ + [0xe934, 0xe934], /* Private Use */ + [0xe935, 0xe935], /* Private Use */ + [0xe936, 0xe936], /* Private Use */ + [0xe937, 0xe937], /* Private Use */ + [0xe938, 0xe938], /* Private Use */ + [0xe939, 0xe939], /* Private Use */ + [0xe93a, 0xe93a], /* Private Use */ + [0xe93b, 0xe93b], /* Private Use */ + [0xe93c, 0xe93c], /* Private Use */ + [0xe93d, 0xe93d], /* Private Use */ + [0xe93e, 0xe93e], /* Private Use */ + [0xe93f, 0xe93f], /* Private Use */ + [0xe940, 0xe940], /* Private Use */ + [0xe941, 0xe941], /* Private Use */ + [0xe942, 0xe942], /* Private Use */ + [0xe943, 0xe943], /* Private Use */ + [0xe944, 0xe944], /* Private Use */ + [0xe945, 0xe945], /* Private Use */ + [0xe946, 0xe946], /* Private Use */ + [0xe947, 0xe947], /* Private Use */ + [0xe948, 0xe948], /* Private Use */ + [0xe949, 0xe949], /* Private Use */ + [0xe94a, 0xe94a], /* Private Use */ + [0xe94b, 0xe94b], /* Private Use */ + [0xe94c, 0xe94c], /* Private Use */ + [0xe94d, 0xe94d], /* Private Use */ + [0xe94e, 0xe94e], /* Private Use */ + [0xe94f, 0xe94f], /* Private Use */ + [0xe950, 0xe950], /* Private Use */ + [0xe951, 0xe951], /* Private Use */ + [0xe952, 0xe952], /* Private Use */ + [0xe953, 0xe953], /* Private Use */ + [0xe954, 0xe954], /* Private Use */ + [0xe955, 0xe955], /* Private Use */ + [0xe956, 0xe956], /* Private Use */ + [0xe957, 0xe957], /* Private Use */ + [0xe958, 0xe958], /* Private Use */ + [0xe959, 0xe959], /* Private Use */ + [0xe95a, 0xe95a], /* Private Use */ + [0xe95b, 0xe95b], /* Private Use */ + [0xe95c, 0xe95c], /* Private Use */ + [0xe95d, 0xe95d], /* Private Use */ + [0xe95e, 0xe95e], /* Private Use */ + [0xe95f, 0xe95f], /* Private Use */ + [0xe960, 0xe960], /* Private Use */ + [0xe961, 0xe961], /* Private Use */ + [0xe962, 0xe962], /* Private Use */ + [0xe963, 0xe963], /* Private Use */ + [0xe964, 0xe964], /* Private Use */ + [0xe965, 0xe965], /* Private Use */ + [0xe966, 0xe966], /* Private Use */ + [0xe967, 0xe967], /* Private Use */ + [0xe968, 0xe968], /* Private Use */ + [0xe969, 0xe969], /* Private Use */ + [0xe96a, 0xe96a], /* Private Use */ + [0xe96b, 0xe96b], /* Private Use */ + [0xe96c, 0xe96c], /* Private Use */ + [0xe96d, 0xe96d], /* Private Use */ + [0xe96e, 0xe96e], /* Private Use */ + [0xe96f, 0xe96f], /* Private Use */ + [0xe970, 0xe970], /* Private Use */ + [0xe971, 0xe971], /* Private Use */ + [0xe972, 0xe972], /* Private Use */ + [0xe973, 0xe973], /* Private Use */ + [0xe974, 0xe974], /* Private Use */ + [0xe975, 0xe975], /* Private Use */ + [0xe976, 0xe976], /* Private Use */ + [0xe977, 0xe977], /* Private Use */ + [0xe978, 0xe978], /* Private Use */ + [0xe979, 0xe979], /* Private Use */ + [0xe97a, 0xe97a], /* Private Use */ + [0xe97b, 0xe97b], /* Private Use */ + [0xe97c, 0xe97c], /* Private Use */ + [0xe97d, 0xe97d], /* Private Use */ + [0xe97e, 0xe97e], /* Private Use */ + [0xe97f, 0xe97f], /* Private Use */ + [0xe980, 0xe980], /* Private Use */ + [0xe981, 0xe981], /* Private Use */ + [0xe982, 0xe982], /* Private Use */ + [0xe983, 0xe983], /* Private Use */ + [0xe984, 0xe984], /* Private Use */ + [0xe985, 0xe985], /* Private Use */ + [0xe986, 0xe986], /* Private Use */ + [0xe987, 0xe987], /* Private Use */ + [0xe988, 0xe988], /* Private Use */ + [0xe989, 0xe989], /* Private Use */ + [0xe98a, 0xe98a], /* Private Use */ + [0xe98b, 0xe98b], /* Private Use */ + [0xe98c, 0xe98c], /* Private Use */ + [0xe98d, 0xe98d], /* Private Use */ + [0xe98e, 0xe98e], /* Private Use */ + [0xe98f, 0xe98f], /* Private Use */ + [0xe990, 0xe990], /* Private Use */ + [0xe991, 0xe991], /* Private Use */ + [0xe992, 0xe992], /* Private Use */ + [0xe993, 0xe993], /* Private Use */ + [0xe994, 0xe994], /* Private Use */ + [0xe995, 0xe995], /* Private Use */ + [0xe996, 0xe996], /* Private Use */ + [0xe997, 0xe997], /* Private Use */ + [0xe998, 0xe998], /* Private Use */ + [0xe999, 0xe999], /* Private Use */ + [0xe99a, 0xe99a], /* Private Use */ + [0xe99b, 0xe99b], /* Private Use */ + [0xe99c, 0xe99c], /* Private Use */ + [0xe99d, 0xe99d], /* Private Use */ + [0xe99e, 0xe99e], /* Private Use */ + [0xe99f, 0xe99f], /* Private Use */ + [0xe9a0, 0xe9a0], /* Private Use */ + [0xe9a1, 0xe9a1], /* Private Use */ + [0xe9a2, 0xe9a2], /* Private Use */ + [0xe9a3, 0xe9a3], /* Private Use */ + [0xe9a4, 0xe9a4], /* Private Use */ + [0xe9a5, 0xe9a5], /* Private Use */ + [0xe9a6, 0xe9a6], /* Private Use */ + [0xe9a7, 0xe9a7], /* Private Use */ + [0xe9a8, 0xe9a8], /* Private Use */ + [0xe9a9, 0xe9a9], /* Private Use */ + [0xe9aa, 0xe9aa], /* Private Use */ + [0xe9ab, 0xe9ab], /* Private Use */ + [0xe9ac, 0xe9ac], /* Private Use */ + [0xe9ad, 0xe9ad], /* Private Use */ + [0xe9ae, 0xe9ae], /* Private Use */ + [0xe9af, 0xe9af], /* Private Use */ + [0xe9b0, 0xe9b0], /* Private Use */ + [0xe9b1, 0xe9b1], /* Private Use */ + [0xe9b2, 0xe9b2], /* Private Use */ + [0xe9b3, 0xe9b3], /* Private Use */ + [0xe9b4, 0xe9b4], /* Private Use */ + [0xe9b5, 0xe9b5], /* Private Use */ + [0xe9b6, 0xe9b6], /* Private Use */ + [0xe9b7, 0xe9b7], /* Private Use */ + [0xe9b8, 0xe9b8], /* Private Use */ + [0xe9b9, 0xe9b9], /* Private Use */ + [0xe9ba, 0xe9ba], /* Private Use */ + [0xe9bb, 0xe9bb], /* Private Use */ + [0xe9bc, 0xe9bc], /* Private Use */ + [0xe9bd, 0xe9bd], /* Private Use */ + [0xe9be, 0xe9be], /* Private Use */ + [0xe9bf, 0xe9bf], /* Private Use */ + [0xe9c0, 0xe9c0], /* Private Use */ + [0xe9c1, 0xe9c1], /* Private Use */ + [0xe9c2, 0xe9c2], /* Private Use */ + [0xe9c3, 0xe9c3], /* Private Use */ + [0xe9c4, 0xe9c4], /* Private Use */ + [0xe9c5, 0xe9c5], /* Private Use */ + [0xe9c6, 0xe9c6], /* Private Use */ + [0xe9c7, 0xe9c7], /* Private Use */ + [0xe9c8, 0xe9c8], /* Private Use */ + [0xe9c9, 0xe9c9], /* Private Use */ + [0xe9ca, 0xe9ca], /* Private Use */ + [0xe9cb, 0xe9cb], /* Private Use */ + [0xe9cc, 0xe9cc], /* Private Use */ + [0xe9cd, 0xe9cd], /* Private Use */ + [0xe9ce, 0xe9ce], /* Private Use */ + [0xe9cf, 0xe9cf], /* Private Use */ + [0xe9d0, 0xe9d0], /* Private Use */ + [0xe9d1, 0xe9d1], /* Private Use */ + [0xe9d2, 0xe9d2], /* Private Use */ + [0xe9d3, 0xe9d3], /* Private Use */ + [0xe9d4, 0xe9d4], /* Private Use */ + [0xe9d5, 0xe9d5], /* Private Use */ + [0xe9d6, 0xe9d6], /* Private Use */ + [0xe9d7, 0xe9d7], /* Private Use */ + [0xe9d8, 0xe9d8], /* Private Use */ + [0xe9d9, 0xe9d9], /* Private Use */ + [0xe9da, 0xe9da], /* Private Use */ + [0xe9db, 0xe9db], /* Private Use */ + [0xe9dc, 0xe9dc], /* Private Use */ + [0xe9dd, 0xe9dd], /* Private Use */ + [0xe9de, 0xe9de], /* Private Use */ + [0xe9df, 0xe9df], /* Private Use */ + [0xe9e0, 0xe9e0], /* Private Use */ + [0xe9e1, 0xe9e1], /* Private Use */ + [0xe9e2, 0xe9e2], /* Private Use */ + [0xe9e3, 0xe9e3], /* Private Use */ + [0xe9e4, 0xe9e4], /* Private Use */ + [0xe9e5, 0xe9e5], /* Private Use */ + [0xe9e6, 0xe9e6], /* Private Use */ + [0xe9e7, 0xe9e7], /* Private Use */ + [0xe9e8, 0xe9e8], /* Private Use */ + [0xe9e9, 0xe9e9], /* Private Use */ + [0xe9ea, 0xe9ea], /* Private Use */ + [0xe9eb, 0xe9eb], /* Private Use */ + [0xe9ec, 0xe9ec], /* Private Use */ + [0xe9ed, 0xe9ed], /* Private Use */ + [0xe9ee, 0xe9ee], /* Private Use */ + [0xe9ef, 0xe9ef], /* Private Use */ + [0xe9f0, 0xe9f0], /* Private Use */ + [0xe9f1, 0xe9f1], /* Private Use */ + [0xe9f2, 0xe9f2], /* Private Use */ + [0xe9f3, 0xe9f3], /* Private Use */ + [0xe9f4, 0xe9f4], /* Private Use */ + [0xe9f5, 0xe9f5], /* Private Use */ + [0xe9f6, 0xe9f6], /* Private Use */ + [0xe9f7, 0xe9f7], /* Private Use */ + [0xe9f8, 0xe9f8], /* Private Use */ + [0xe9f9, 0xe9f9], /* Private Use */ + [0xe9fa, 0xe9fa], /* Private Use */ + [0xe9fb, 0xe9fb], /* Private Use */ + [0xe9fc, 0xe9fc], /* Private Use */ + [0xe9fd, 0xe9fd], /* Private Use */ + [0xe9fe, 0xe9fe], /* Private Use */ + [0xe9ff, 0xe9ff], /* Private Use */ + [0xea00, 0xea00], /* Private Use */ + [0xea01, 0xea01], /* Private Use */ + [0xea02, 0xea02], /* Private Use */ + [0xea03, 0xea03], /* Private Use */ + [0xea04, 0xea04], /* Private Use */ + [0xea05, 0xea05], /* Private Use */ + [0xea06, 0xea06], /* Private Use */ + [0xea07, 0xea07], /* Private Use */ + [0xea08, 0xea08], /* Private Use */ + [0xea09, 0xea09], /* Private Use */ + [0xea0a, 0xea0a], /* Private Use */ + [0xea0b, 0xea0b], /* Private Use */ + [0xea0c, 0xea0c], /* Private Use */ + [0xea0d, 0xea0d], /* Private Use */ + [0xea0e, 0xea0e], /* Private Use */ + [0xea0f, 0xea0f], /* Private Use */ + [0xea10, 0xea10], /* Private Use */ + [0xea11, 0xea11], /* Private Use */ + [0xea12, 0xea12], /* Private Use */ + [0xea13, 0xea13], /* Private Use */ + [0xea14, 0xea14], /* Private Use */ + [0xea15, 0xea15], /* Private Use */ + [0xea16, 0xea16], /* Private Use */ + [0xea17, 0xea17], /* Private Use */ + [0xea18, 0xea18], /* Private Use */ + [0xea19, 0xea19], /* Private Use */ + [0xea1a, 0xea1a], /* Private Use */ + [0xea1b, 0xea1b], /* Private Use */ + [0xea1c, 0xea1c], /* Private Use */ + [0xea1d, 0xea1d], /* Private Use */ + [0xea1e, 0xea1e], /* Private Use */ + [0xea1f, 0xea1f], /* Private Use */ + [0xea20, 0xea20], /* Private Use */ + [0xea21, 0xea21], /* Private Use */ + [0xea22, 0xea22], /* Private Use */ + [0xea23, 0xea23], /* Private Use */ + [0xea24, 0xea24], /* Private Use */ + [0xea25, 0xea25], /* Private Use */ + [0xea26, 0xea26], /* Private Use */ + [0xea27, 0xea27], /* Private Use */ + [0xea28, 0xea28], /* Private Use */ + [0xea29, 0xea29], /* Private Use */ + [0xea2a, 0xea2a], /* Private Use */ + [0xea2b, 0xea2b], /* Private Use */ + [0xea2c, 0xea2c], /* Private Use */ + [0xea2d, 0xea2d], /* Private Use */ + [0xea2e, 0xea2e], /* Private Use */ + [0xea2f, 0xea2f], /* Private Use */ + [0xea30, 0xea30], /* Private Use */ + [0xea31, 0xea31], /* Private Use */ + [0xea32, 0xea32], /* Private Use */ + [0xea33, 0xea33], /* Private Use */ + [0xea34, 0xea34], /* Private Use */ + [0xea35, 0xea35], /* Private Use */ + [0xea36, 0xea36], /* Private Use */ + [0xea37, 0xea37], /* Private Use */ + [0xea38, 0xea38], /* Private Use */ + [0xea39, 0xea39], /* Private Use */ + [0xea3a, 0xea3a], /* Private Use */ + [0xea3b, 0xea3b], /* Private Use */ + [0xea3c, 0xea3c], /* Private Use */ + [0xea3d, 0xea3d], /* Private Use */ + [0xea3e, 0xea3e], /* Private Use */ + [0xea3f, 0xea3f], /* Private Use */ + [0xea40, 0xea40], /* Private Use */ + [0xea41, 0xea41], /* Private Use */ + [0xea42, 0xea42], /* Private Use */ + [0xea43, 0xea43], /* Private Use */ + [0xea44, 0xea44], /* Private Use */ + [0xea45, 0xea45], /* Private Use */ + [0xea46, 0xea46], /* Private Use */ + [0xea47, 0xea47], /* Private Use */ + [0xea48, 0xea48], /* Private Use */ + [0xea49, 0xea49], /* Private Use */ + [0xea4a, 0xea4a], /* Private Use */ + [0xea4b, 0xea4b], /* Private Use */ + [0xea4c, 0xea4c], /* Private Use */ + [0xea4d, 0xea4d], /* Private Use */ + [0xea4e, 0xea4e], /* Private Use */ + [0xea4f, 0xea4f], /* Private Use */ + [0xea50, 0xea50], /* Private Use */ + [0xea51, 0xea51], /* Private Use */ + [0xea52, 0xea52], /* Private Use */ + [0xea53, 0xea53], /* Private Use */ + [0xea54, 0xea54], /* Private Use */ + [0xea55, 0xea55], /* Private Use */ + [0xea56, 0xea56], /* Private Use */ + [0xea57, 0xea57], /* Private Use */ + [0xea58, 0xea58], /* Private Use */ + [0xea59, 0xea59], /* Private Use */ + [0xea5a, 0xea5a], /* Private Use */ + [0xea5b, 0xea5b], /* Private Use */ + [0xea5c, 0xea5c], /* Private Use */ + [0xea5d, 0xea5d], /* Private Use */ + [0xea5e, 0xea5e], /* Private Use */ + [0xea5f, 0xea5f], /* Private Use */ + [0xea60, 0xea60], /* Private Use */ + [0xea61, 0xea61], /* Private Use */ + [0xea62, 0xea62], /* Private Use */ + [0xea63, 0xea63], /* Private Use */ + [0xea64, 0xea64], /* Private Use */ + [0xea65, 0xea65], /* Private Use */ + [0xea66, 0xea66], /* Private Use */ + [0xea67, 0xea67], /* Private Use */ + [0xea68, 0xea68], /* Private Use */ + [0xea69, 0xea69], /* Private Use */ + [0xea6a, 0xea6a], /* Private Use */ + [0xea6b, 0xea6b], /* Private Use */ + [0xea6c, 0xea6c], /* Private Use */ + [0xea6d, 0xea6d], /* Private Use */ + [0xea6e, 0xea6e], /* Private Use */ + [0xea6f, 0xea6f], /* Private Use */ + [0xea70, 0xea70], /* Private Use */ + [0xea71, 0xea71], /* Private Use */ + [0xea72, 0xea72], /* Private Use */ + [0xea73, 0xea73], /* Private Use */ + [0xea74, 0xea74], /* Private Use */ + [0xea75, 0xea75], /* Private Use */ + [0xea76, 0xea76], /* Private Use */ + [0xea77, 0xea77], /* Private Use */ + [0xea78, 0xea78], /* Private Use */ + [0xea79, 0xea79], /* Private Use */ + [0xea7a, 0xea7a], /* Private Use */ + [0xea7b, 0xea7b], /* Private Use */ + [0xea7c, 0xea7c], /* Private Use */ + [0xea7d, 0xea7d], /* Private Use */ + [0xea7e, 0xea7e], /* Private Use */ + [0xea7f, 0xea7f], /* Private Use */ + [0xea80, 0xea80], /* Private Use */ + [0xea81, 0xea81], /* Private Use */ + [0xea82, 0xea82], /* Private Use */ + [0xea83, 0xea83], /* Private Use */ + [0xea84, 0xea84], /* Private Use */ + [0xea85, 0xea85], /* Private Use */ + [0xea86, 0xea86], /* Private Use */ + [0xea87, 0xea87], /* Private Use */ + [0xea88, 0xea88], /* Private Use */ + [0xea89, 0xea89], /* Private Use */ + [0xea8a, 0xea8a], /* Private Use */ + [0xea8b, 0xea8b], /* Private Use */ + [0xea8c, 0xea8c], /* Private Use */ + [0xea8d, 0xea8d], /* Private Use */ + [0xea8e, 0xea8e], /* Private Use */ + [0xea8f, 0xea8f], /* Private Use */ + [0xea90, 0xea90], /* Private Use */ + [0xea91, 0xea91], /* Private Use */ + [0xea92, 0xea92], /* Private Use */ + [0xea93, 0xea93], /* Private Use */ + [0xea94, 0xea94], /* Private Use */ + [0xea95, 0xea95], /* Private Use */ + [0xea96, 0xea96], /* Private Use */ + [0xea97, 0xea97], /* Private Use */ + [0xea98, 0xea98], /* Private Use */ + [0xea99, 0xea99], /* Private Use */ + [0xea9a, 0xea9a], /* Private Use */ + [0xea9b, 0xea9b], /* Private Use */ + [0xea9c, 0xea9c], /* Private Use */ + [0xea9d, 0xea9d], /* Private Use */ + [0xea9e, 0xea9e], /* Private Use */ + [0xea9f, 0xea9f], /* Private Use */ + [0xeaa0, 0xeaa0], /* Private Use */ + [0xeaa1, 0xeaa1], /* Private Use */ + [0xeaa2, 0xeaa2], /* Private Use */ + [0xeaa3, 0xeaa3], /* Private Use */ + [0xeaa4, 0xeaa4], /* Private Use */ + [0xeaa5, 0xeaa5], /* Private Use */ + [0xeaa6, 0xeaa6], /* Private Use */ + [0xeaa7, 0xeaa7], /* Private Use */ + [0xeaa8, 0xeaa8], /* Private Use */ + [0xeaa9, 0xeaa9], /* Private Use */ + [0xeaaa, 0xeaaa], /* Private Use */ + [0xeaab, 0xeaab], /* Private Use */ + [0xeaac, 0xeaac], /* Private Use */ + [0xeaad, 0xeaad], /* Private Use */ + [0xeaae, 0xeaae], /* Private Use */ + [0xeaaf, 0xeaaf], /* Private Use */ + [0xeab0, 0xeab0], /* Private Use */ + [0xeab1, 0xeab1], /* Private Use */ + [0xeab2, 0xeab2], /* Private Use */ + [0xeab3, 0xeab3], /* Private Use */ + [0xeab4, 0xeab4], /* Private Use */ + [0xeab5, 0xeab5], /* Private Use */ + [0xeab6, 0xeab6], /* Private Use */ + [0xeab7, 0xeab7], /* Private Use */ + [0xeab8, 0xeab8], /* Private Use */ + [0xeab9, 0xeab9], /* Private Use */ + [0xeaba, 0xeaba], /* Private Use */ + [0xeabb, 0xeabb], /* Private Use */ + [0xeabc, 0xeabc], /* Private Use */ + [0xeabd, 0xeabd], /* Private Use */ + [0xeabe, 0xeabe], /* Private Use */ + [0xeabf, 0xeabf], /* Private Use */ + [0xeac0, 0xeac0], /* Private Use */ + [0xeac1, 0xeac1], /* Private Use */ + [0xeac2, 0xeac2], /* Private Use */ + [0xeac3, 0xeac3], /* Private Use */ + [0xeac4, 0xeac4], /* Private Use */ + [0xeac5, 0xeac5], /* Private Use */ + [0xeac6, 0xeac6], /* Private Use */ + [0xeac7, 0xeac7], /* Private Use */ + [0xeac8, 0xeac8], /* Private Use */ + [0xeac9, 0xeac9], /* Private Use */ + [0xeaca, 0xeaca], /* Private Use */ + [0xeacb, 0xeacb], /* Private Use */ + [0xeacc, 0xeacc], /* Private Use */ + [0xeacd, 0xeacd], /* Private Use */ + [0xeace, 0xeace], /* Private Use */ + [0xeacf, 0xeacf], /* Private Use */ + [0xead0, 0xead0], /* Private Use */ + [0xead1, 0xead1], /* Private Use */ + [0xead2, 0xead2], /* Private Use */ + [0xead3, 0xead3], /* Private Use */ + [0xead4, 0xead4], /* Private Use */ + [0xead5, 0xead5], /* Private Use */ + [0xead6, 0xead6], /* Private Use */ + [0xead7, 0xead7], /* Private Use */ + [0xead8, 0xead8], /* Private Use */ + [0xead9, 0xead9], /* Private Use */ + [0xeada, 0xeada], /* Private Use */ + [0xeadb, 0xeadb], /* Private Use */ + [0xeadc, 0xeadc], /* Private Use */ + [0xeadd, 0xeadd], /* Private Use */ + [0xeade, 0xeade], /* Private Use */ + [0xeadf, 0xeadf], /* Private Use */ + [0xeae0, 0xeae0], /* Private Use */ + [0xeae1, 0xeae1], /* Private Use */ + [0xeae2, 0xeae2], /* Private Use */ + [0xeae3, 0xeae3], /* Private Use */ + [0xeae4, 0xeae4], /* Private Use */ + [0xeae5, 0xeae5], /* Private Use */ + [0xeae6, 0xeae6], /* Private Use */ + [0xeae7, 0xeae7], /* Private Use */ + [0xeae8, 0xeae8], /* Private Use */ + [0xeae9, 0xeae9], /* Private Use */ + [0xeaea, 0xeaea], /* Private Use */ + [0xeaeb, 0xeaeb], /* Private Use */ + [0xeaec, 0xeaec], /* Private Use */ + [0xeaed, 0xeaed], /* Private Use */ + [0xeaee, 0xeaee], /* Private Use */ + [0xeaef, 0xeaef], /* Private Use */ + [0xeaf0, 0xeaf0], /* Private Use */ + [0xeaf1, 0xeaf1], /* Private Use */ + [0xeaf2, 0xeaf2], /* Private Use */ + [0xeaf3, 0xeaf3], /* Private Use */ + [0xeaf4, 0xeaf4], /* Private Use */ + [0xeaf5, 0xeaf5], /* Private Use */ + [0xeaf6, 0xeaf6], /* Private Use */ + [0xeaf7, 0xeaf7], /* Private Use */ + [0xeaf8, 0xeaf8], /* Private Use */ + [0xeaf9, 0xeaf9], /* Private Use */ + [0xeafa, 0xeafa], /* Private Use */ + [0xeafb, 0xeafb], /* Private Use */ + [0xeafc, 0xeafc], /* Private Use */ + [0xeafd, 0xeafd], /* Private Use */ + [0xeafe, 0xeafe], /* Private Use */ + [0xeaff, 0xeaff], /* Private Use */ + [0xeb00, 0xeb00], /* Private Use */ + [0xeb01, 0xeb01], /* Private Use */ + [0xeb02, 0xeb02], /* Private Use */ + [0xeb03, 0xeb03], /* Private Use */ + [0xeb04, 0xeb04], /* Private Use */ + [0xeb05, 0xeb05], /* Private Use */ + [0xeb06, 0xeb06], /* Private Use */ + [0xeb07, 0xeb07], /* Private Use */ + [0xeb08, 0xeb08], /* Private Use */ + [0xeb09, 0xeb09], /* Private Use */ + [0xeb0a, 0xeb0a], /* Private Use */ + [0xeb0b, 0xeb0b], /* Private Use */ + [0xeb0c, 0xeb0c], /* Private Use */ + [0xeb0d, 0xeb0d], /* Private Use */ + [0xeb0e, 0xeb0e], /* Private Use */ + [0xeb0f, 0xeb0f], /* Private Use */ + [0xeb10, 0xeb10], /* Private Use */ + [0xeb11, 0xeb11], /* Private Use */ + [0xeb12, 0xeb12], /* Private Use */ + [0xeb13, 0xeb13], /* Private Use */ + [0xeb14, 0xeb14], /* Private Use */ + [0xeb15, 0xeb15], /* Private Use */ + [0xeb16, 0xeb16], /* Private Use */ + [0xeb17, 0xeb17], /* Private Use */ + [0xeb18, 0xeb18], /* Private Use */ + [0xeb19, 0xeb19], /* Private Use */ + [0xeb1a, 0xeb1a], /* Private Use */ + [0xeb1b, 0xeb1b], /* Private Use */ + [0xeb1c, 0xeb1c], /* Private Use */ + [0xeb1d, 0xeb1d], /* Private Use */ + [0xeb1e, 0xeb1e], /* Private Use */ + [0xeb1f, 0xeb1f], /* Private Use */ + [0xeb20, 0xeb20], /* Private Use */ + [0xeb21, 0xeb21], /* Private Use */ + [0xeb22, 0xeb22], /* Private Use */ + [0xeb23, 0xeb23], /* Private Use */ + [0xeb24, 0xeb24], /* Private Use */ + [0xeb25, 0xeb25], /* Private Use */ + [0xeb26, 0xeb26], /* Private Use */ + [0xeb27, 0xeb27], /* Private Use */ + [0xeb28, 0xeb28], /* Private Use */ + [0xeb29, 0xeb29], /* Private Use */ + [0xeb2a, 0xeb2a], /* Private Use */ + [0xeb2b, 0xeb2b], /* Private Use */ + [0xeb2c, 0xeb2c], /* Private Use */ + [0xeb2d, 0xeb2d], /* Private Use */ + [0xeb2e, 0xeb2e], /* Private Use */ + [0xeb2f, 0xeb2f], /* Private Use */ + [0xeb30, 0xeb30], /* Private Use */ + [0xeb31, 0xeb31], /* Private Use */ + [0xeb32, 0xeb32], /* Private Use */ + [0xeb33, 0xeb33], /* Private Use */ + [0xeb34, 0xeb34], /* Private Use */ + [0xeb35, 0xeb35], /* Private Use */ + [0xeb36, 0xeb36], /* Private Use */ + [0xeb37, 0xeb37], /* Private Use */ + [0xeb38, 0xeb38], /* Private Use */ + [0xeb39, 0xeb39], /* Private Use */ + [0xeb3a, 0xeb3a], /* Private Use */ + [0xeb3b, 0xeb3b], /* Private Use */ + [0xeb3c, 0xeb3c], /* Private Use */ + [0xeb3d, 0xeb3d], /* Private Use */ + [0xeb3e, 0xeb3e], /* Private Use */ + [0xeb3f, 0xeb3f], /* Private Use */ + [0xeb40, 0xeb40], /* Private Use */ + [0xeb41, 0xeb41], /* Private Use */ + [0xeb42, 0xeb42], /* Private Use */ + [0xeb43, 0xeb43], /* Private Use */ + [0xeb44, 0xeb44], /* Private Use */ + [0xeb45, 0xeb45], /* Private Use */ + [0xeb46, 0xeb46], /* Private Use */ + [0xeb47, 0xeb47], /* Private Use */ + [0xeb48, 0xeb48], /* Private Use */ + [0xeb49, 0xeb49], /* Private Use */ + [0xeb4a, 0xeb4a], /* Private Use */ + [0xeb4b, 0xeb4b], /* Private Use */ + [0xeb4c, 0xeb4c], /* Private Use */ + [0xeb4d, 0xeb4d], /* Private Use */ + [0xeb4e, 0xeb4e], /* Private Use */ + [0xeb4f, 0xeb4f], /* Private Use */ + [0xeb50, 0xeb50], /* Private Use */ + [0xeb51, 0xeb51], /* Private Use */ + [0xeb52, 0xeb52], /* Private Use */ + [0xeb53, 0xeb53], /* Private Use */ + [0xeb54, 0xeb54], /* Private Use */ + [0xeb55, 0xeb55], /* Private Use */ + [0xeb56, 0xeb56], /* Private Use */ + [0xeb57, 0xeb57], /* Private Use */ + [0xeb58, 0xeb58], /* Private Use */ + [0xeb59, 0xeb59], /* Private Use */ + [0xeb5a, 0xeb5a], /* Private Use */ + [0xeb5b, 0xeb5b], /* Private Use */ + [0xeb5c, 0xeb5c], /* Private Use */ + [0xeb5d, 0xeb5d], /* Private Use */ + [0xeb5e, 0xeb5e], /* Private Use */ + [0xeb5f, 0xeb5f], /* Private Use */ + [0xeb60, 0xeb60], /* Private Use */ + [0xeb61, 0xeb61], /* Private Use */ + [0xeb62, 0xeb62], /* Private Use */ + [0xeb63, 0xeb63], /* Private Use */ + [0xeb64, 0xeb64], /* Private Use */ + [0xeb65, 0xeb65], /* Private Use */ + [0xeb66, 0xeb66], /* Private Use */ + [0xeb67, 0xeb67], /* Private Use */ + [0xeb68, 0xeb68], /* Private Use */ + [0xeb69, 0xeb69], /* Private Use */ + [0xeb6a, 0xeb6a], /* Private Use */ + [0xeb6b, 0xeb6b], /* Private Use */ + [0xeb6c, 0xeb6c], /* Private Use */ + [0xeb6d, 0xeb6d], /* Private Use */ + [0xeb6e, 0xeb6e], /* Private Use */ + [0xeb6f, 0xeb6f], /* Private Use */ + [0xeb70, 0xeb70], /* Private Use */ + [0xeb71, 0xeb71], /* Private Use */ + [0xeb72, 0xeb72], /* Private Use */ + [0xeb73, 0xeb73], /* Private Use */ + [0xeb74, 0xeb74], /* Private Use */ + [0xeb75, 0xeb75], /* Private Use */ + [0xeb76, 0xeb76], /* Private Use */ + [0xeb77, 0xeb77], /* Private Use */ + [0xeb78, 0xeb78], /* Private Use */ + [0xeb79, 0xeb79], /* Private Use */ + [0xeb7a, 0xeb7a], /* Private Use */ + [0xeb7b, 0xeb7b], /* Private Use */ + [0xeb7c, 0xeb7c], /* Private Use */ + [0xeb7d, 0xeb7d], /* Private Use */ + [0xeb7e, 0xeb7e], /* Private Use */ + [0xeb7f, 0xeb7f], /* Private Use */ + [0xeb80, 0xeb80], /* Private Use */ + [0xeb81, 0xeb81], /* Private Use */ + [0xeb82, 0xeb82], /* Private Use */ + [0xeb83, 0xeb83], /* Private Use */ + [0xeb84, 0xeb84], /* Private Use */ + [0xeb85, 0xeb85], /* Private Use */ + [0xeb86, 0xeb86], /* Private Use */ + [0xeb87, 0xeb87], /* Private Use */ + [0xeb88, 0xeb88], /* Private Use */ + [0xeb89, 0xeb89], /* Private Use */ + [0xeb8a, 0xeb8a], /* Private Use */ + [0xeb8b, 0xeb8b], /* Private Use */ + [0xeb8c, 0xeb8c], /* Private Use */ + [0xeb8d, 0xeb8d], /* Private Use */ + [0xeb8e, 0xeb8e], /* Private Use */ + [0xeb8f, 0xeb8f], /* Private Use */ + [0xeb90, 0xeb90], /* Private Use */ + [0xeb91, 0xeb91], /* Private Use */ + [0xeb92, 0xeb92], /* Private Use */ + [0xeb93, 0xeb93], /* Private Use */ + [0xeb94, 0xeb94], /* Private Use */ + [0xeb95, 0xeb95], /* Private Use */ + [0xeb96, 0xeb96], /* Private Use */ + [0xeb97, 0xeb97], /* Private Use */ + [0xeb98, 0xeb98], /* Private Use */ + [0xeb99, 0xeb99], /* Private Use */ + [0xeb9a, 0xeb9a], /* Private Use */ + [0xeb9b, 0xeb9b], /* Private Use */ + [0xeb9c, 0xeb9c], /* Private Use */ + [0xeb9d, 0xeb9d], /* Private Use */ + [0xeb9e, 0xeb9e], /* Private Use */ + [0xeb9f, 0xeb9f], /* Private Use */ + [0xeba0, 0xeba0], /* Private Use */ + [0xeba1, 0xeba1], /* Private Use */ + [0xeba2, 0xeba2], /* Private Use */ + [0xeba3, 0xeba3], /* Private Use */ + [0xeba4, 0xeba4], /* Private Use */ + [0xeba5, 0xeba5], /* Private Use */ + [0xeba6, 0xeba6], /* Private Use */ + [0xeba7, 0xeba7], /* Private Use */ + [0xeba8, 0xeba8], /* Private Use */ + [0xeba9, 0xeba9], /* Private Use */ + [0xebaa, 0xebaa], /* Private Use */ + [0xebab, 0xebab], /* Private Use */ + [0xebac, 0xebac], /* Private Use */ + [0xebad, 0xebad], /* Private Use */ + [0xebae, 0xebae], /* Private Use */ + [0xebaf, 0xebaf], /* Private Use */ + [0xebb0, 0xebb0], /* Private Use */ + [0xebb1, 0xebb1], /* Private Use */ + [0xebb2, 0xebb2], /* Private Use */ + [0xebb3, 0xebb3], /* Private Use */ + [0xebb4, 0xebb4], /* Private Use */ + [0xebb5, 0xebb5], /* Private Use */ + [0xebb6, 0xebb6], /* Private Use */ + [0xebb7, 0xebb7], /* Private Use */ + [0xebb8, 0xebb8], /* Private Use */ + [0xebb9, 0xebb9], /* Private Use */ + [0xebba, 0xebba], /* Private Use */ + [0xebbb, 0xebbb], /* Private Use */ + [0xebbc, 0xebbc], /* Private Use */ + [0xebbd, 0xebbd], /* Private Use */ + [0xebbe, 0xebbe], /* Private Use */ + [0xebbf, 0xebbf], /* Private Use */ + [0xebc0, 0xebc0], /* Private Use */ + [0xebc1, 0xebc1], /* Private Use */ + [0xebc2, 0xebc2], /* Private Use */ + [0xebc3, 0xebc3], /* Private Use */ + [0xebc4, 0xebc4], /* Private Use */ + [0xebc5, 0xebc5], /* Private Use */ + [0xebc6, 0xebc6], /* Private Use */ + [0xebc7, 0xebc7], /* Private Use */ + [0xebc8, 0xebc8], /* Private Use */ + [0xebc9, 0xebc9], /* Private Use */ + [0xebca, 0xebca], /* Private Use */ + [0xebcb, 0xebcb], /* Private Use */ + [0xebcc, 0xebcc], /* Private Use */ + [0xebcd, 0xebcd], /* Private Use */ + [0xebce, 0xebce], /* Private Use */ + [0xebcf, 0xebcf], /* Private Use */ + [0xebd0, 0xebd0], /* Private Use */ + [0xebd1, 0xebd1], /* Private Use */ + [0xebd2, 0xebd2], /* Private Use */ + [0xebd3, 0xebd3], /* Private Use */ + [0xebd4, 0xebd4], /* Private Use */ + [0xebd5, 0xebd5], /* Private Use */ + [0xebd6, 0xebd6], /* Private Use */ + [0xebd7, 0xebd7], /* Private Use */ + [0xebd8, 0xebd8], /* Private Use */ + [0xebd9, 0xebd9], /* Private Use */ + [0xebda, 0xebda], /* Private Use */ + [0xebdb, 0xebdb], /* Private Use */ + [0xebdc, 0xebdc], /* Private Use */ + [0xebdd, 0xebdd], /* Private Use */ + [0xebde, 0xebde], /* Private Use */ + [0xebdf, 0xebdf], /* Private Use */ + [0xebe0, 0xebe0], /* Private Use */ + [0xebe1, 0xebe1], /* Private Use */ + [0xebe2, 0xebe2], /* Private Use */ + [0xebe3, 0xebe3], /* Private Use */ + [0xebe4, 0xebe4], /* Private Use */ + [0xebe5, 0xebe5], /* Private Use */ + [0xebe6, 0xebe6], /* Private Use */ + [0xebe7, 0xebe7], /* Private Use */ + [0xebe8, 0xebe8], /* Private Use */ + [0xebe9, 0xebe9], /* Private Use */ + [0xebea, 0xebea], /* Private Use */ + [0xebeb, 0xebeb], /* Private Use */ + [0xebec, 0xebec], /* Private Use */ + [0xebed, 0xebed], /* Private Use */ + [0xebee, 0xebee], /* Private Use */ + [0xebef, 0xebef], /* Private Use */ + [0xebf0, 0xebf0], /* Private Use */ + [0xebf1, 0xebf1], /* Private Use */ + [0xebf2, 0xebf2], /* Private Use */ + [0xebf3, 0xebf3], /* Private Use */ + [0xebf4, 0xebf4], /* Private Use */ + [0xebf5, 0xebf5], /* Private Use */ + [0xebf6, 0xebf6], /* Private Use */ + [0xebf7, 0xebf7], /* Private Use */ + [0xebf8, 0xebf8], /* Private Use */ + [0xebf9, 0xebf9], /* Private Use */ + [0xebfa, 0xebfa], /* Private Use */ + [0xebfb, 0xebfb], /* Private Use */ + [0xebfc, 0xebfc], /* Private Use */ + [0xebfd, 0xebfd], /* Private Use */ + [0xebfe, 0xebfe], /* Private Use */ + [0xebff, 0xebff], /* Private Use */ + [0xec00, 0xec00], /* Private Use */ + [0xec01, 0xec01], /* Private Use */ + [0xec02, 0xec02], /* Private Use */ + [0xec03, 0xec03], /* Private Use */ + [0xec04, 0xec04], /* Private Use */ + [0xec05, 0xec05], /* Private Use */ + [0xec06, 0xec06], /* Private Use */ + [0xec07, 0xec07], /* Private Use */ + [0xec08, 0xec08], /* Private Use */ + [0xec09, 0xec09], /* Private Use */ + [0xec0a, 0xec0a], /* Private Use */ + [0xec0b, 0xec0b], /* Private Use */ + [0xec0c, 0xec0c], /* Private Use */ + [0xec0d, 0xec0d], /* Private Use */ + [0xec0e, 0xec0e], /* Private Use */ + [0xec0f, 0xec0f], /* Private Use */ + [0xec10, 0xec10], /* Private Use */ + [0xec11, 0xec11], /* Private Use */ + [0xec12, 0xec12], /* Private Use */ + [0xec13, 0xec13], /* Private Use */ + [0xec14, 0xec14], /* Private Use */ + [0xec15, 0xec15], /* Private Use */ + [0xec16, 0xec16], /* Private Use */ + [0xec17, 0xec17], /* Private Use */ + [0xec18, 0xec18], /* Private Use */ + [0xec19, 0xec19], /* Private Use */ + [0xec1a, 0xec1a], /* Private Use */ + [0xec1b, 0xec1b], /* Private Use */ + [0xec1c, 0xec1c], /* Private Use */ + [0xec1d, 0xec1d], /* Private Use */ + [0xec1e, 0xec1e], /* Private Use */ + [0xec1f, 0xec1f], /* Private Use */ + [0xec20, 0xec20], /* Private Use */ + [0xec21, 0xec21], /* Private Use */ + [0xec22, 0xec22], /* Private Use */ + [0xec23, 0xec23], /* Private Use */ + [0xec24, 0xec24], /* Private Use */ + [0xec25, 0xec25], /* Private Use */ + [0xec26, 0xec26], /* Private Use */ + [0xec27, 0xec27], /* Private Use */ + [0xec28, 0xec28], /* Private Use */ + [0xec29, 0xec29], /* Private Use */ + [0xec2a, 0xec2a], /* Private Use */ + [0xec2b, 0xec2b], /* Private Use */ + [0xec2c, 0xec2c], /* Private Use */ + [0xec2d, 0xec2d], /* Private Use */ + [0xec2e, 0xec2e], /* Private Use */ + [0xec2f, 0xec2f], /* Private Use */ + [0xec30, 0xec30], /* Private Use */ + [0xec31, 0xec31], /* Private Use */ + [0xec32, 0xec32], /* Private Use */ + [0xec33, 0xec33], /* Private Use */ + [0xec34, 0xec34], /* Private Use */ + [0xec35, 0xec35], /* Private Use */ + [0xec36, 0xec36], /* Private Use */ + [0xec37, 0xec37], /* Private Use */ + [0xec38, 0xec38], /* Private Use */ + [0xec39, 0xec39], /* Private Use */ + [0xec3a, 0xec3a], /* Private Use */ + [0xec3b, 0xec3b], /* Private Use */ + [0xec3c, 0xec3c], /* Private Use */ + [0xec3d, 0xec3d], /* Private Use */ + [0xec3e, 0xec3e], /* Private Use */ + [0xec3f, 0xec3f], /* Private Use */ + [0xec40, 0xec40], /* Private Use */ + [0xec41, 0xec41], /* Private Use */ + [0xec42, 0xec42], /* Private Use */ + [0xec43, 0xec43], /* Private Use */ + [0xec44, 0xec44], /* Private Use */ + [0xec45, 0xec45], /* Private Use */ + [0xec46, 0xec46], /* Private Use */ + [0xec47, 0xec47], /* Private Use */ + [0xec48, 0xec48], /* Private Use */ + [0xec49, 0xec49], /* Private Use */ + [0xec4a, 0xec4a], /* Private Use */ + [0xec4b, 0xec4b], /* Private Use */ + [0xec4c, 0xec4c], /* Private Use */ + [0xec4d, 0xec4d], /* Private Use */ + [0xec4e, 0xec4e], /* Private Use */ + [0xec4f, 0xec4f], /* Private Use */ + [0xec50, 0xec50], /* Private Use */ + [0xec51, 0xec51], /* Private Use */ + [0xec52, 0xec52], /* Private Use */ + [0xec53, 0xec53], /* Private Use */ + [0xec54, 0xec54], /* Private Use */ + [0xec55, 0xec55], /* Private Use */ + [0xec56, 0xec56], /* Private Use */ + [0xec57, 0xec57], /* Private Use */ + [0xec58, 0xec58], /* Private Use */ + [0xec59, 0xec59], /* Private Use */ + [0xec5a, 0xec5a], /* Private Use */ + [0xec5b, 0xec5b], /* Private Use */ + [0xec5c, 0xec5c], /* Private Use */ + [0xec5d, 0xec5d], /* Private Use */ + [0xec5e, 0xec5e], /* Private Use */ + [0xec5f, 0xec5f], /* Private Use */ + [0xec60, 0xec60], /* Private Use */ + [0xec61, 0xec61], /* Private Use */ + [0xec62, 0xec62], /* Private Use */ + [0xec63, 0xec63], /* Private Use */ + [0xec64, 0xec64], /* Private Use */ + [0xec65, 0xec65], /* Private Use */ + [0xec66, 0xec66], /* Private Use */ + [0xec67, 0xec67], /* Private Use */ + [0xec68, 0xec68], /* Private Use */ + [0xec69, 0xec69], /* Private Use */ + [0xec6a, 0xec6a], /* Private Use */ + [0xec6b, 0xec6b], /* Private Use */ + [0xec6c, 0xec6c], /* Private Use */ + [0xec6d, 0xec6d], /* Private Use */ + [0xec6e, 0xec6e], /* Private Use */ + [0xec6f, 0xec6f], /* Private Use */ + [0xec70, 0xec70], /* Private Use */ + [0xec71, 0xec71], /* Private Use */ + [0xec72, 0xec72], /* Private Use */ + [0xec73, 0xec73], /* Private Use */ + [0xec74, 0xec74], /* Private Use */ + [0xec75, 0xec75], /* Private Use */ + [0xec76, 0xec76], /* Private Use */ + [0xec77, 0xec77], /* Private Use */ + [0xec78, 0xec78], /* Private Use */ + [0xec79, 0xec79], /* Private Use */ + [0xec7a, 0xec7a], /* Private Use */ + [0xec7b, 0xec7b], /* Private Use */ + [0xec7c, 0xec7c], /* Private Use */ + [0xec7d, 0xec7d], /* Private Use */ + [0xec7e, 0xec7e], /* Private Use */ + [0xec7f, 0xec7f], /* Private Use */ + [0xec80, 0xec80], /* Private Use */ + [0xec81, 0xec81], /* Private Use */ + [0xec82, 0xec82], /* Private Use */ + [0xec83, 0xec83], /* Private Use */ + [0xec84, 0xec84], /* Private Use */ + [0xec85, 0xec85], /* Private Use */ + [0xec86, 0xec86], /* Private Use */ + [0xec87, 0xec87], /* Private Use */ + [0xec88, 0xec88], /* Private Use */ + [0xec89, 0xec89], /* Private Use */ + [0xec8a, 0xec8a], /* Private Use */ + [0xec8b, 0xec8b], /* Private Use */ + [0xec8c, 0xec8c], /* Private Use */ + [0xec8d, 0xec8d], /* Private Use */ + [0xec8e, 0xec8e], /* Private Use */ + [0xec8f, 0xec8f], /* Private Use */ + [0xec90, 0xec90], /* Private Use */ + [0xec91, 0xec91], /* Private Use */ + [0xec92, 0xec92], /* Private Use */ + [0xec93, 0xec93], /* Private Use */ + [0xec94, 0xec94], /* Private Use */ + [0xec95, 0xec95], /* Private Use */ + [0xec96, 0xec96], /* Private Use */ + [0xec97, 0xec97], /* Private Use */ + [0xec98, 0xec98], /* Private Use */ + [0xec99, 0xec99], /* Private Use */ + [0xec9a, 0xec9a], /* Private Use */ + [0xec9b, 0xec9b], /* Private Use */ + [0xec9c, 0xec9c], /* Private Use */ + [0xec9d, 0xec9d], /* Private Use */ + [0xec9e, 0xec9e], /* Private Use */ + [0xec9f, 0xec9f], /* Private Use */ + [0xeca0, 0xeca0], /* Private Use */ + [0xeca1, 0xeca1], /* Private Use */ + [0xeca2, 0xeca2], /* Private Use */ + [0xeca3, 0xeca3], /* Private Use */ + [0xeca4, 0xeca4], /* Private Use */ + [0xeca5, 0xeca5], /* Private Use */ + [0xeca6, 0xeca6], /* Private Use */ + [0xeca7, 0xeca7], /* Private Use */ + [0xeca8, 0xeca8], /* Private Use */ + [0xeca9, 0xeca9], /* Private Use */ + [0xecaa, 0xecaa], /* Private Use */ + [0xecab, 0xecab], /* Private Use */ + [0xecac, 0xecac], /* Private Use */ + [0xecad, 0xecad], /* Private Use */ + [0xecae, 0xecae], /* Private Use */ + [0xecaf, 0xecaf], /* Private Use */ + [0xecb0, 0xecb0], /* Private Use */ + [0xecb1, 0xecb1], /* Private Use */ + [0xecb2, 0xecb2], /* Private Use */ + [0xecb3, 0xecb3], /* Private Use */ + [0xecb4, 0xecb4], /* Private Use */ + [0xecb5, 0xecb5], /* Private Use */ + [0xecb6, 0xecb6], /* Private Use */ + [0xecb7, 0xecb7], /* Private Use */ + [0xecb8, 0xecb8], /* Private Use */ + [0xecb9, 0xecb9], /* Private Use */ + [0xecba, 0xecba], /* Private Use */ + [0xecbb, 0xecbb], /* Private Use */ + [0xecbc, 0xecbc], /* Private Use */ + [0xecbd, 0xecbd], /* Private Use */ + [0xecbe, 0xecbe], /* Private Use */ + [0xecbf, 0xecbf], /* Private Use */ + [0xecc0, 0xecc0], /* Private Use */ + [0xecc1, 0xecc1], /* Private Use */ + [0xecc2, 0xecc2], /* Private Use */ + [0xecc3, 0xecc3], /* Private Use */ + [0xecc4, 0xecc4], /* Private Use */ + [0xecc5, 0xecc5], /* Private Use */ + [0xecc6, 0xecc6], /* Private Use */ + [0xecc7, 0xecc7], /* Private Use */ + [0xecc8, 0xecc8], /* Private Use */ + [0xecc9, 0xecc9], /* Private Use */ + [0xecca, 0xecca], /* Private Use */ + [0xeccb, 0xeccb], /* Private Use */ + [0xeccc, 0xeccc], /* Private Use */ + [0xeccd, 0xeccd], /* Private Use */ + [0xecce, 0xecce], /* Private Use */ + [0xeccf, 0xeccf], /* Private Use */ + [0xecd0, 0xecd0], /* Private Use */ + [0xecd1, 0xecd1], /* Private Use */ + [0xecd2, 0xecd2], /* Private Use */ + [0xecd3, 0xecd3], /* Private Use */ + [0xecd4, 0xecd4], /* Private Use */ + [0xecd5, 0xecd5], /* Private Use */ + [0xecd6, 0xecd6], /* Private Use */ + [0xecd7, 0xecd7], /* Private Use */ + [0xecd8, 0xecd8], /* Private Use */ + [0xecd9, 0xecd9], /* Private Use */ + [0xecda, 0xecda], /* Private Use */ + [0xecdb, 0xecdb], /* Private Use */ + [0xecdc, 0xecdc], /* Private Use */ + [0xecdd, 0xecdd], /* Private Use */ + [0xecde, 0xecde], /* Private Use */ + [0xecdf, 0xecdf], /* Private Use */ + [0xece0, 0xece0], /* Private Use */ + [0xece1, 0xece1], /* Private Use */ + [0xece2, 0xece2], /* Private Use */ + [0xece3, 0xece3], /* Private Use */ + [0xece4, 0xece4], /* Private Use */ + [0xece5, 0xece5], /* Private Use */ + [0xece6, 0xece6], /* Private Use */ + [0xece7, 0xece7], /* Private Use */ + [0xece8, 0xece8], /* Private Use */ + [0xece9, 0xece9], /* Private Use */ + [0xecea, 0xecea], /* Private Use */ + [0xeceb, 0xeceb], /* Private Use */ + [0xecec, 0xecec], /* Private Use */ + [0xeced, 0xeced], /* Private Use */ + [0xecee, 0xecee], /* Private Use */ + [0xecef, 0xecef], /* Private Use */ + [0xecf0, 0xecf0], /* Private Use */ + [0xecf1, 0xecf1], /* Private Use */ + [0xecf2, 0xecf2], /* Private Use */ + [0xecf3, 0xecf3], /* Private Use */ + [0xecf4, 0xecf4], /* Private Use */ + [0xecf5, 0xecf5], /* Private Use */ + [0xecf6, 0xecf6], /* Private Use */ + [0xecf7, 0xecf7], /* Private Use */ + [0xecf8, 0xecf8], /* Private Use */ + [0xecf9, 0xecf9], /* Private Use */ + [0xecfa, 0xecfa], /* Private Use */ + [0xecfb, 0xecfb], /* Private Use */ + [0xecfc, 0xecfc], /* Private Use */ + [0xecfd, 0xecfd], /* Private Use */ + [0xecfe, 0xecfe], /* Private Use */ + [0xecff, 0xecff], /* Private Use */ + [0xed00, 0xed00], /* Private Use */ + [0xed01, 0xed01], /* Private Use */ + [0xed02, 0xed02], /* Private Use */ + [0xed03, 0xed03], /* Private Use */ + [0xed04, 0xed04], /* Private Use */ + [0xed05, 0xed05], /* Private Use */ + [0xed06, 0xed06], /* Private Use */ + [0xed07, 0xed07], /* Private Use */ + [0xed08, 0xed08], /* Private Use */ + [0xed09, 0xed09], /* Private Use */ + [0xed0a, 0xed0a], /* Private Use */ + [0xed0b, 0xed0b], /* Private Use */ + [0xed0c, 0xed0c], /* Private Use */ + [0xed0d, 0xed0d], /* Private Use */ + [0xed0e, 0xed0e], /* Private Use */ + [0xed0f, 0xed0f], /* Private Use */ + [0xed10, 0xed10], /* Private Use */ + [0xed11, 0xed11], /* Private Use */ + [0xed12, 0xed12], /* Private Use */ + [0xed13, 0xed13], /* Private Use */ + [0xed14, 0xed14], /* Private Use */ + [0xed15, 0xed15], /* Private Use */ + [0xed16, 0xed16], /* Private Use */ + [0xed17, 0xed17], /* Private Use */ + [0xed18, 0xed18], /* Private Use */ + [0xed19, 0xed19], /* Private Use */ + [0xed1a, 0xed1a], /* Private Use */ + [0xed1b, 0xed1b], /* Private Use */ + [0xed1c, 0xed1c], /* Private Use */ + [0xed1d, 0xed1d], /* Private Use */ + [0xed1e, 0xed1e], /* Private Use */ + [0xed1f, 0xed1f], /* Private Use */ + [0xed20, 0xed20], /* Private Use */ + [0xed21, 0xed21], /* Private Use */ + [0xed22, 0xed22], /* Private Use */ + [0xed23, 0xed23], /* Private Use */ + [0xed24, 0xed24], /* Private Use */ + [0xed25, 0xed25], /* Private Use */ + [0xed26, 0xed26], /* Private Use */ + [0xed27, 0xed27], /* Private Use */ + [0xed28, 0xed28], /* Private Use */ + [0xed29, 0xed29], /* Private Use */ + [0xed2a, 0xed2a], /* Private Use */ + [0xed2b, 0xed2b], /* Private Use */ + [0xed2c, 0xed2c], /* Private Use */ + [0xed2d, 0xed2d], /* Private Use */ + [0xed2e, 0xed2e], /* Private Use */ + [0xed2f, 0xed2f], /* Private Use */ + [0xed30, 0xed30], /* Private Use */ + [0xed31, 0xed31], /* Private Use */ + [0xed32, 0xed32], /* Private Use */ + [0xed33, 0xed33], /* Private Use */ + [0xed34, 0xed34], /* Private Use */ + [0xed35, 0xed35], /* Private Use */ + [0xed36, 0xed36], /* Private Use */ + [0xed37, 0xed37], /* Private Use */ + [0xed38, 0xed38], /* Private Use */ + [0xed39, 0xed39], /* Private Use */ + [0xed3a, 0xed3a], /* Private Use */ + [0xed3b, 0xed3b], /* Private Use */ + [0xed3c, 0xed3c], /* Private Use */ + [0xed3d, 0xed3d], /* Private Use */ + [0xed3e, 0xed3e], /* Private Use */ + [0xed3f, 0xed3f], /* Private Use */ + [0xed40, 0xed40], /* Private Use */ + [0xed41, 0xed41], /* Private Use */ + [0xed42, 0xed42], /* Private Use */ + [0xed43, 0xed43], /* Private Use */ + [0xed44, 0xed44], /* Private Use */ + [0xed45, 0xed45], /* Private Use */ + [0xed46, 0xed46], /* Private Use */ + [0xed47, 0xed47], /* Private Use */ + [0xed48, 0xed48], /* Private Use */ + [0xed49, 0xed49], /* Private Use */ + [0xed4a, 0xed4a], /* Private Use */ + [0xed4b, 0xed4b], /* Private Use */ + [0xed4c, 0xed4c], /* Private Use */ + [0xed4d, 0xed4d], /* Private Use */ + [0xed4e, 0xed4e], /* Private Use */ + [0xed4f, 0xed4f], /* Private Use */ + [0xed50, 0xed50], /* Private Use */ + [0xed51, 0xed51], /* Private Use */ + [0xed52, 0xed52], /* Private Use */ + [0xed53, 0xed53], /* Private Use */ + [0xed54, 0xed54], /* Private Use */ + [0xed55, 0xed55], /* Private Use */ + [0xed56, 0xed56], /* Private Use */ + [0xed57, 0xed57], /* Private Use */ + [0xed58, 0xed58], /* Private Use */ + [0xed59, 0xed59], /* Private Use */ + [0xed5a, 0xed5a], /* Private Use */ + [0xed5b, 0xed5b], /* Private Use */ + [0xed5c, 0xed5c], /* Private Use */ + [0xed5d, 0xed5d], /* Private Use */ + [0xed5e, 0xed5e], /* Private Use */ + [0xed5f, 0xed5f], /* Private Use */ + [0xed60, 0xed60], /* Private Use */ + [0xed61, 0xed61], /* Private Use */ + [0xed62, 0xed62], /* Private Use */ + [0xed63, 0xed63], /* Private Use */ + [0xed64, 0xed64], /* Private Use */ + [0xed65, 0xed65], /* Private Use */ + [0xed66, 0xed66], /* Private Use */ + [0xed67, 0xed67], /* Private Use */ + [0xed68, 0xed68], /* Private Use */ + [0xed69, 0xed69], /* Private Use */ + [0xed6a, 0xed6a], /* Private Use */ + [0xed6b, 0xed6b], /* Private Use */ + [0xed6c, 0xed6c], /* Private Use */ + [0xed6d, 0xed6d], /* Private Use */ + [0xed6e, 0xed6e], /* Private Use */ + [0xed6f, 0xed6f], /* Private Use */ + [0xed70, 0xed70], /* Private Use */ + [0xed71, 0xed71], /* Private Use */ + [0xed72, 0xed72], /* Private Use */ + [0xed73, 0xed73], /* Private Use */ + [0xed74, 0xed74], /* Private Use */ + [0xed75, 0xed75], /* Private Use */ + [0xed76, 0xed76], /* Private Use */ + [0xed77, 0xed77], /* Private Use */ + [0xed78, 0xed78], /* Private Use */ + [0xed79, 0xed79], /* Private Use */ + [0xed7a, 0xed7a], /* Private Use */ + [0xed7b, 0xed7b], /* Private Use */ + [0xed7c, 0xed7c], /* Private Use */ + [0xed7d, 0xed7d], /* Private Use */ + [0xed7e, 0xed7e], /* Private Use */ + [0xed7f, 0xed7f], /* Private Use */ + [0xed80, 0xed80], /* Private Use */ + [0xed81, 0xed81], /* Private Use */ + [0xed82, 0xed82], /* Private Use */ + [0xed83, 0xed83], /* Private Use */ + [0xed84, 0xed84], /* Private Use */ + [0xed85, 0xed85], /* Private Use */ + [0xed86, 0xed86], /* Private Use */ + [0xed87, 0xed87], /* Private Use */ + [0xed88, 0xed88], /* Private Use */ + [0xed89, 0xed89], /* Private Use */ + [0xed8a, 0xed8a], /* Private Use */ + [0xed8b, 0xed8b], /* Private Use */ + [0xed8c, 0xed8c], /* Private Use */ + [0xed8d, 0xed8d], /* Private Use */ + [0xed8e, 0xed8e], /* Private Use */ + [0xed8f, 0xed8f], /* Private Use */ + [0xed90, 0xed90], /* Private Use */ + [0xed91, 0xed91], /* Private Use */ + [0xed92, 0xed92], /* Private Use */ + [0xed93, 0xed93], /* Private Use */ + [0xed94, 0xed94], /* Private Use */ + [0xed95, 0xed95], /* Private Use */ + [0xed96, 0xed96], /* Private Use */ + [0xed97, 0xed97], /* Private Use */ + [0xed98, 0xed98], /* Private Use */ + [0xed99, 0xed99], /* Private Use */ + [0xed9a, 0xed9a], /* Private Use */ + [0xed9b, 0xed9b], /* Private Use */ + [0xed9c, 0xed9c], /* Private Use */ + [0xed9d, 0xed9d], /* Private Use */ + [0xed9e, 0xed9e], /* Private Use */ + [0xed9f, 0xed9f], /* Private Use */ + [0xeda0, 0xeda0], /* Private Use */ + [0xeda1, 0xeda1], /* Private Use */ + [0xeda2, 0xeda2], /* Private Use */ + [0xeda3, 0xeda3], /* Private Use */ + [0xeda4, 0xeda4], /* Private Use */ + [0xeda5, 0xeda5], /* Private Use */ + [0xeda6, 0xeda6], /* Private Use */ + [0xeda7, 0xeda7], /* Private Use */ + [0xeda8, 0xeda8], /* Private Use */ + [0xeda9, 0xeda9], /* Private Use */ + [0xedaa, 0xedaa], /* Private Use */ + [0xedab, 0xedab], /* Private Use */ + [0xedac, 0xedac], /* Private Use */ + [0xedad, 0xedad], /* Private Use */ + [0xedae, 0xedae], /* Private Use */ + [0xedaf, 0xedaf], /* Private Use */ + [0xedb0, 0xedb0], /* Private Use */ + [0xedb1, 0xedb1], /* Private Use */ + [0xedb2, 0xedb2], /* Private Use */ + [0xedb3, 0xedb3], /* Private Use */ + [0xedb4, 0xedb4], /* Private Use */ + [0xedb5, 0xedb5], /* Private Use */ + [0xedb6, 0xedb6], /* Private Use */ + [0xedb7, 0xedb7], /* Private Use */ + [0xedb8, 0xedb8], /* Private Use */ + [0xedb9, 0xedb9], /* Private Use */ + [0xedba, 0xedba], /* Private Use */ + [0xedbb, 0xedbb], /* Private Use */ + [0xedbc, 0xedbc], /* Private Use */ + [0xedbd, 0xedbd], /* Private Use */ + [0xedbe, 0xedbe], /* Private Use */ + [0xedbf, 0xedbf], /* Private Use */ + [0xedc0, 0xedc0], /* Private Use */ + [0xedc1, 0xedc1], /* Private Use */ + [0xedc2, 0xedc2], /* Private Use */ + [0xedc3, 0xedc3], /* Private Use */ + [0xedc4, 0xedc4], /* Private Use */ + [0xedc5, 0xedc5], /* Private Use */ + [0xedc6, 0xedc6], /* Private Use */ + [0xedc7, 0xedc7], /* Private Use */ + [0xedc8, 0xedc8], /* Private Use */ + [0xedc9, 0xedc9], /* Private Use */ + [0xedca, 0xedca], /* Private Use */ + [0xedcb, 0xedcb], /* Private Use */ + [0xedcc, 0xedcc], /* Private Use */ + [0xedcd, 0xedcd], /* Private Use */ + [0xedce, 0xedce], /* Private Use */ + [0xedcf, 0xedcf], /* Private Use */ + [0xedd0, 0xedd0], /* Private Use */ + [0xedd1, 0xedd1], /* Private Use */ + [0xedd2, 0xedd2], /* Private Use */ + [0xedd3, 0xedd3], /* Private Use */ + [0xedd4, 0xedd4], /* Private Use */ + [0xedd5, 0xedd5], /* Private Use */ + [0xedd6, 0xedd6], /* Private Use */ + [0xedd7, 0xedd7], /* Private Use */ + [0xedd8, 0xedd8], /* Private Use */ + [0xedd9, 0xedd9], /* Private Use */ + [0xedda, 0xedda], /* Private Use */ + [0xeddb, 0xeddb], /* Private Use */ + [0xeddc, 0xeddc], /* Private Use */ + [0xeddd, 0xeddd], /* Private Use */ + [0xedde, 0xedde], /* Private Use */ + [0xeddf, 0xeddf], /* Private Use */ + [0xede0, 0xede0], /* Private Use */ + [0xede1, 0xede1], /* Private Use */ + [0xede2, 0xede2], /* Private Use */ + [0xede3, 0xede3], /* Private Use */ + [0xede4, 0xede4], /* Private Use */ + [0xede5, 0xede5], /* Private Use */ + [0xede6, 0xede6], /* Private Use */ + [0xede7, 0xede7], /* Private Use */ + [0xede8, 0xede8], /* Private Use */ + [0xede9, 0xede9], /* Private Use */ + [0xedea, 0xedea], /* Private Use */ + [0xedeb, 0xedeb], /* Private Use */ + [0xedec, 0xedec], /* Private Use */ + [0xeded, 0xeded], /* Private Use */ + [0xedee, 0xedee], /* Private Use */ + [0xedef, 0xedef], /* Private Use */ + [0xedf0, 0xedf0], /* Private Use */ + [0xedf1, 0xedf1], /* Private Use */ + [0xedf2, 0xedf2], /* Private Use */ + [0xedf3, 0xedf3], /* Private Use */ + [0xedf4, 0xedf4], /* Private Use */ + [0xedf5, 0xedf5], /* Private Use */ + [0xedf6, 0xedf6], /* Private Use */ + [0xedf7, 0xedf7], /* Private Use */ + [0xedf8, 0xedf8], /* Private Use */ + [0xedf9, 0xedf9], /* Private Use */ + [0xedfa, 0xedfa], /* Private Use */ + [0xedfb, 0xedfb], /* Private Use */ + [0xedfc, 0xedfc], /* Private Use */ + [0xedfd, 0xedfd], /* Private Use */ + [0xedfe, 0xedfe], /* Private Use */ + [0xedff, 0xedff], /* Private Use */ + [0xee00, 0xee00], /* Private Use */ + [0xee01, 0xee01], /* Private Use */ + [0xee02, 0xee02], /* Private Use */ + [0xee03, 0xee03], /* Private Use */ + [0xee04, 0xee04], /* Private Use */ + [0xee05, 0xee05], /* Private Use */ + [0xee06, 0xee06], /* Private Use */ + [0xee07, 0xee07], /* Private Use */ + [0xee08, 0xee08], /* Private Use */ + [0xee09, 0xee09], /* Private Use */ + [0xee0a, 0xee0a], /* Private Use */ + [0xee0b, 0xee0b], /* Private Use */ + [0xee0c, 0xee0c], /* Private Use */ + [0xee0d, 0xee0d], /* Private Use */ + [0xee0e, 0xee0e], /* Private Use */ + [0xee0f, 0xee0f], /* Private Use */ + [0xee10, 0xee10], /* Private Use */ + [0xee11, 0xee11], /* Private Use */ + [0xee12, 0xee12], /* Private Use */ + [0xee13, 0xee13], /* Private Use */ + [0xee14, 0xee14], /* Private Use */ + [0xee15, 0xee15], /* Private Use */ + [0xee16, 0xee16], /* Private Use */ + [0xee17, 0xee17], /* Private Use */ + [0xee18, 0xee18], /* Private Use */ + [0xee19, 0xee19], /* Private Use */ + [0xee1a, 0xee1a], /* Private Use */ + [0xee1b, 0xee1b], /* Private Use */ + [0xee1c, 0xee1c], /* Private Use */ + [0xee1d, 0xee1d], /* Private Use */ + [0xee1e, 0xee1e], /* Private Use */ + [0xee1f, 0xee1f], /* Private Use */ + [0xee20, 0xee20], /* Private Use */ + [0xee21, 0xee21], /* Private Use */ + [0xee22, 0xee22], /* Private Use */ + [0xee23, 0xee23], /* Private Use */ + [0xee24, 0xee24], /* Private Use */ + [0xee25, 0xee25], /* Private Use */ + [0xee26, 0xee26], /* Private Use */ + [0xee27, 0xee27], /* Private Use */ + [0xee28, 0xee28], /* Private Use */ + [0xee29, 0xee29], /* Private Use */ + [0xee2a, 0xee2a], /* Private Use */ + [0xee2b, 0xee2b], /* Private Use */ + [0xee2c, 0xee2c], /* Private Use */ + [0xee2d, 0xee2d], /* Private Use */ + [0xee2e, 0xee2e], /* Private Use */ + [0xee2f, 0xee2f], /* Private Use */ + [0xee30, 0xee30], /* Private Use */ + [0xee31, 0xee31], /* Private Use */ + [0xee32, 0xee32], /* Private Use */ + [0xee33, 0xee33], /* Private Use */ + [0xee34, 0xee34], /* Private Use */ + [0xee35, 0xee35], /* Private Use */ + [0xee36, 0xee36], /* Private Use */ + [0xee37, 0xee37], /* Private Use */ + [0xee38, 0xee38], /* Private Use */ + [0xee39, 0xee39], /* Private Use */ + [0xee3a, 0xee3a], /* Private Use */ + [0xee3b, 0xee3b], /* Private Use */ + [0xee3c, 0xee3c], /* Private Use */ + [0xee3d, 0xee3d], /* Private Use */ + [0xee3e, 0xee3e], /* Private Use */ + [0xee3f, 0xee3f], /* Private Use */ + [0xee40, 0xee40], /* Private Use */ + [0xee41, 0xee41], /* Private Use */ + [0xee42, 0xee42], /* Private Use */ + [0xee43, 0xee43], /* Private Use */ + [0xee44, 0xee44], /* Private Use */ + [0xee45, 0xee45], /* Private Use */ + [0xee46, 0xee46], /* Private Use */ + [0xee47, 0xee47], /* Private Use */ + [0xee48, 0xee48], /* Private Use */ + [0xee49, 0xee49], /* Private Use */ + [0xee4a, 0xee4a], /* Private Use */ + [0xee4b, 0xee4b], /* Private Use */ + [0xee4c, 0xee4c], /* Private Use */ + [0xee4d, 0xee4d], /* Private Use */ + [0xee4e, 0xee4e], /* Private Use */ + [0xee4f, 0xee4f], /* Private Use */ + [0xee50, 0xee50], /* Private Use */ + [0xee51, 0xee51], /* Private Use */ + [0xee52, 0xee52], /* Private Use */ + [0xee53, 0xee53], /* Private Use */ + [0xee54, 0xee54], /* Private Use */ + [0xee55, 0xee55], /* Private Use */ + [0xee56, 0xee56], /* Private Use */ + [0xee57, 0xee57], /* Private Use */ + [0xee58, 0xee58], /* Private Use */ + [0xee59, 0xee59], /* Private Use */ + [0xee5a, 0xee5a], /* Private Use */ + [0xee5b, 0xee5b], /* Private Use */ + [0xee5c, 0xee5c], /* Private Use */ + [0xee5d, 0xee5d], /* Private Use */ + [0xee5e, 0xee5e], /* Private Use */ + [0xee5f, 0xee5f], /* Private Use */ + [0xee60, 0xee60], /* Private Use */ + [0xee61, 0xee61], /* Private Use */ + [0xee62, 0xee62], /* Private Use */ + [0xee63, 0xee63], /* Private Use */ + [0xee64, 0xee64], /* Private Use */ + [0xee65, 0xee65], /* Private Use */ + [0xee66, 0xee66], /* Private Use */ + [0xee67, 0xee67], /* Private Use */ + [0xee68, 0xee68], /* Private Use */ + [0xee69, 0xee69], /* Private Use */ + [0xee6a, 0xee6a], /* Private Use */ + [0xee6b, 0xee6b], /* Private Use */ + [0xee6c, 0xee6c], /* Private Use */ + [0xee6d, 0xee6d], /* Private Use */ + [0xee6e, 0xee6e], /* Private Use */ + [0xee6f, 0xee6f], /* Private Use */ + [0xee70, 0xee70], /* Private Use */ + [0xee71, 0xee71], /* Private Use */ + [0xee72, 0xee72], /* Private Use */ + [0xee73, 0xee73], /* Private Use */ + [0xee74, 0xee74], /* Private Use */ + [0xee75, 0xee75], /* Private Use */ + [0xee76, 0xee76], /* Private Use */ + [0xee77, 0xee77], /* Private Use */ + [0xee78, 0xee78], /* Private Use */ + [0xee79, 0xee79], /* Private Use */ + [0xee7a, 0xee7a], /* Private Use */ + [0xee7b, 0xee7b], /* Private Use */ + [0xee7c, 0xee7c], /* Private Use */ + [0xee7d, 0xee7d], /* Private Use */ + [0xee7e, 0xee7e], /* Private Use */ + [0xee7f, 0xee7f], /* Private Use */ + [0xee80, 0xee80], /* Private Use */ + [0xee81, 0xee81], /* Private Use */ + [0xee82, 0xee82], /* Private Use */ + [0xee83, 0xee83], /* Private Use */ + [0xee84, 0xee84], /* Private Use */ + [0xee85, 0xee85], /* Private Use */ + [0xee86, 0xee86], /* Private Use */ + [0xee87, 0xee87], /* Private Use */ + [0xee88, 0xee88], /* Private Use */ + [0xee89, 0xee89], /* Private Use */ + [0xee8a, 0xee8a], /* Private Use */ + [0xee8b, 0xee8b], /* Private Use */ + [0xee8c, 0xee8c], /* Private Use */ + [0xee8d, 0xee8d], /* Private Use */ + [0xee8e, 0xee8e], /* Private Use */ + [0xee8f, 0xee8f], /* Private Use */ + [0xee90, 0xee90], /* Private Use */ + [0xee91, 0xee91], /* Private Use */ + [0xee92, 0xee92], /* Private Use */ + [0xee93, 0xee93], /* Private Use */ + [0xee94, 0xee94], /* Private Use */ + [0xee95, 0xee95], /* Private Use */ + [0xee96, 0xee96], /* Private Use */ + [0xee97, 0xee97], /* Private Use */ + [0xee98, 0xee98], /* Private Use */ + [0xee99, 0xee99], /* Private Use */ + [0xee9a, 0xee9a], /* Private Use */ + [0xee9b, 0xee9b], /* Private Use */ + [0xee9c, 0xee9c], /* Private Use */ + [0xee9d, 0xee9d], /* Private Use */ + [0xee9e, 0xee9e], /* Private Use */ + [0xee9f, 0xee9f], /* Private Use */ + [0xeea0, 0xeea0], /* Private Use */ + [0xeea1, 0xeea1], /* Private Use */ + [0xeea2, 0xeea2], /* Private Use */ + [0xeea3, 0xeea3], /* Private Use */ + [0xeea4, 0xeea4], /* Private Use */ + [0xeea5, 0xeea5], /* Private Use */ + [0xeea6, 0xeea6], /* Private Use */ + [0xeea7, 0xeea7], /* Private Use */ + [0xeea8, 0xeea8], /* Private Use */ + [0xeea9, 0xeea9], /* Private Use */ + [0xeeaa, 0xeeaa], /* Private Use */ + [0xeeab, 0xeeab], /* Private Use */ + [0xeeac, 0xeeac], /* Private Use */ + [0xeead, 0xeead], /* Private Use */ + [0xeeae, 0xeeae], /* Private Use */ + [0xeeaf, 0xeeaf], /* Private Use */ + [0xeeb0, 0xeeb0], /* Private Use */ + [0xeeb1, 0xeeb1], /* Private Use */ + [0xeeb2, 0xeeb2], /* Private Use */ + [0xeeb3, 0xeeb3], /* Private Use */ + [0xeeb4, 0xeeb4], /* Private Use */ + [0xeeb5, 0xeeb5], /* Private Use */ + [0xeeb6, 0xeeb6], /* Private Use */ + [0xeeb7, 0xeeb7], /* Private Use */ + [0xeeb8, 0xeeb8], /* Private Use */ + [0xeeb9, 0xeeb9], /* Private Use */ + [0xeeba, 0xeeba], /* Private Use */ + [0xeebb, 0xeebb], /* Private Use */ + [0xeebc, 0xeebc], /* Private Use */ + [0xeebd, 0xeebd], /* Private Use */ + [0xeebe, 0xeebe], /* Private Use */ + [0xeebf, 0xeebf], /* Private Use */ + [0xeec0, 0xeec0], /* Private Use */ + [0xeec1, 0xeec1], /* Private Use */ + [0xeec2, 0xeec2], /* Private Use */ + [0xeec3, 0xeec3], /* Private Use */ + [0xeec4, 0xeec4], /* Private Use */ + [0xeec5, 0xeec5], /* Private Use */ + [0xeec6, 0xeec6], /* Private Use */ + [0xeec7, 0xeec7], /* Private Use */ + [0xeec8, 0xeec8], /* Private Use */ + [0xeec9, 0xeec9], /* Private Use */ + [0xeeca, 0xeeca], /* Private Use */ + [0xeecb, 0xeecb], /* Private Use */ + [0xeecc, 0xeecc], /* Private Use */ + [0xeecd, 0xeecd], /* Private Use */ + [0xeece, 0xeece], /* Private Use */ + [0xeecf, 0xeecf], /* Private Use */ + [0xeed0, 0xeed0], /* Private Use */ + [0xeed1, 0xeed1], /* Private Use */ + [0xeed2, 0xeed2], /* Private Use */ + [0xeed3, 0xeed3], /* Private Use */ + [0xeed4, 0xeed4], /* Private Use */ + [0xeed5, 0xeed5], /* Private Use */ + [0xeed6, 0xeed6], /* Private Use */ + [0xeed7, 0xeed7], /* Private Use */ + [0xeed8, 0xeed8], /* Private Use */ + [0xeed9, 0xeed9], /* Private Use */ + [0xeeda, 0xeeda], /* Private Use */ + [0xeedb, 0xeedb], /* Private Use */ + [0xeedc, 0xeedc], /* Private Use */ + [0xeedd, 0xeedd], /* Private Use */ + [0xeede, 0xeede], /* Private Use */ + [0xeedf, 0xeedf], /* Private Use */ + [0xeee0, 0xeee0], /* Private Use */ + [0xeee1, 0xeee1], /* Private Use */ + [0xeee2, 0xeee2], /* Private Use */ + [0xeee3, 0xeee3], /* Private Use */ + [0xeee4, 0xeee4], /* Private Use */ + [0xeee5, 0xeee5], /* Private Use */ + [0xeee6, 0xeee6], /* Private Use */ + [0xeee7, 0xeee7], /* Private Use */ + [0xeee8, 0xeee8], /* Private Use */ + [0xeee9, 0xeee9], /* Private Use */ + [0xeeea, 0xeeea], /* Private Use */ + [0xeeeb, 0xeeeb], /* Private Use */ + [0xeeec, 0xeeec], /* Private Use */ + [0xeeed, 0xeeed], /* Private Use */ + [0xeeee, 0xeeee], /* Private Use */ + [0xeeef, 0xeeef], /* Private Use */ + [0xeef0, 0xeef0], /* Private Use */ + [0xeef1, 0xeef1], /* Private Use */ + [0xeef2, 0xeef2], /* Private Use */ + [0xeef3, 0xeef3], /* Private Use */ + [0xeef4, 0xeef4], /* Private Use */ + [0xeef5, 0xeef5], /* Private Use */ + [0xeef6, 0xeef6], /* Private Use */ + [0xeef7, 0xeef7], /* Private Use */ + [0xeef8, 0xeef8], /* Private Use */ + [0xeef9, 0xeef9], /* Private Use */ + [0xeefa, 0xeefa], /* Private Use */ + [0xeefb, 0xeefb], /* Private Use */ + [0xeefc, 0xeefc], /* Private Use */ + [0xeefd, 0xeefd], /* Private Use */ + [0xeefe, 0xeefe], /* Private Use */ + [0xeeff, 0xeeff], /* Private Use */ + [0xef00, 0xef00], /* Private Use */ + [0xef01, 0xef01], /* Private Use */ + [0xef02, 0xef02], /* Private Use */ + [0xef03, 0xef03], /* Private Use */ + [0xef04, 0xef04], /* Private Use */ + [0xef05, 0xef05], /* Private Use */ + [0xef06, 0xef06], /* Private Use */ + [0xef07, 0xef07], /* Private Use */ + [0xef08, 0xef08], /* Private Use */ + [0xef09, 0xef09], /* Private Use */ + [0xef0a, 0xef0a], /* Private Use */ + [0xef0b, 0xef0b], /* Private Use */ + [0xef0c, 0xef0c], /* Private Use */ + [0xef0d, 0xef0d], /* Private Use */ + [0xef0e, 0xef0e], /* Private Use */ + [0xef0f, 0xef0f], /* Private Use */ + [0xef10, 0xef10], /* Private Use */ + [0xef11, 0xef11], /* Private Use */ + [0xef12, 0xef12], /* Private Use */ + [0xef13, 0xef13], /* Private Use */ + [0xef14, 0xef14], /* Private Use */ + [0xef15, 0xef15], /* Private Use */ + [0xef16, 0xef16], /* Private Use */ + [0xef17, 0xef17], /* Private Use */ + [0xef18, 0xef18], /* Private Use */ + [0xef19, 0xef19], /* Private Use */ + [0xef1a, 0xef1a], /* Private Use */ + [0xef1b, 0xef1b], /* Private Use */ + [0xef1c, 0xef1c], /* Private Use */ + [0xef1d, 0xef1d], /* Private Use */ + [0xef1e, 0xef1e], /* Private Use */ + [0xef1f, 0xef1f], /* Private Use */ + [0xef20, 0xef20], /* Private Use */ + [0xef21, 0xef21], /* Private Use */ + [0xef22, 0xef22], /* Private Use */ + [0xef23, 0xef23], /* Private Use */ + [0xef24, 0xef24], /* Private Use */ + [0xef25, 0xef25], /* Private Use */ + [0xef26, 0xef26], /* Private Use */ + [0xef27, 0xef27], /* Private Use */ + [0xef28, 0xef28], /* Private Use */ + [0xef29, 0xef29], /* Private Use */ + [0xef2a, 0xef2a], /* Private Use */ + [0xef2b, 0xef2b], /* Private Use */ + [0xef2c, 0xef2c], /* Private Use */ + [0xef2d, 0xef2d], /* Private Use */ + [0xef2e, 0xef2e], /* Private Use */ + [0xef2f, 0xef2f], /* Private Use */ + [0xef30, 0xef30], /* Private Use */ + [0xef31, 0xef31], /* Private Use */ + [0xef32, 0xef32], /* Private Use */ + [0xef33, 0xef33], /* Private Use */ + [0xef34, 0xef34], /* Private Use */ + [0xef35, 0xef35], /* Private Use */ + [0xef36, 0xef36], /* Private Use */ + [0xef37, 0xef37], /* Private Use */ + [0xef38, 0xef38], /* Private Use */ + [0xef39, 0xef39], /* Private Use */ + [0xef3a, 0xef3a], /* Private Use */ + [0xef3b, 0xef3b], /* Private Use */ + [0xef3c, 0xef3c], /* Private Use */ + [0xef3d, 0xef3d], /* Private Use */ + [0xef3e, 0xef3e], /* Private Use */ + [0xef3f, 0xef3f], /* Private Use */ + [0xef40, 0xef40], /* Private Use */ + [0xef41, 0xef41], /* Private Use */ + [0xef42, 0xef42], /* Private Use */ + [0xef43, 0xef43], /* Private Use */ + [0xef44, 0xef44], /* Private Use */ + [0xef45, 0xef45], /* Private Use */ + [0xef46, 0xef46], /* Private Use */ + [0xef47, 0xef47], /* Private Use */ + [0xef48, 0xef48], /* Private Use */ + [0xef49, 0xef49], /* Private Use */ + [0xef4a, 0xef4a], /* Private Use */ + [0xef4b, 0xef4b], /* Private Use */ + [0xef4c, 0xef4c], /* Private Use */ + [0xef4d, 0xef4d], /* Private Use */ + [0xef4e, 0xef4e], /* Private Use */ + [0xef4f, 0xef4f], /* Private Use */ + [0xef50, 0xef50], /* Private Use */ + [0xef51, 0xef51], /* Private Use */ + [0xef52, 0xef52], /* Private Use */ + [0xef53, 0xef53], /* Private Use */ + [0xef54, 0xef54], /* Private Use */ + [0xef55, 0xef55], /* Private Use */ + [0xef56, 0xef56], /* Private Use */ + [0xef57, 0xef57], /* Private Use */ + [0xef58, 0xef58], /* Private Use */ + [0xef59, 0xef59], /* Private Use */ + [0xef5a, 0xef5a], /* Private Use */ + [0xef5b, 0xef5b], /* Private Use */ + [0xef5c, 0xef5c], /* Private Use */ + [0xef5d, 0xef5d], /* Private Use */ + [0xef5e, 0xef5e], /* Private Use */ + [0xef5f, 0xef5f], /* Private Use */ + [0xef60, 0xef60], /* Private Use */ + [0xef61, 0xef61], /* Private Use */ + [0xef62, 0xef62], /* Private Use */ + [0xef63, 0xef63], /* Private Use */ + [0xef64, 0xef64], /* Private Use */ + [0xef65, 0xef65], /* Private Use */ + [0xef66, 0xef66], /* Private Use */ + [0xef67, 0xef67], /* Private Use */ + [0xef68, 0xef68], /* Private Use */ + [0xef69, 0xef69], /* Private Use */ + [0xef6a, 0xef6a], /* Private Use */ + [0xef6b, 0xef6b], /* Private Use */ + [0xef6c, 0xef6c], /* Private Use */ + [0xef6d, 0xef6d], /* Private Use */ + [0xef6e, 0xef6e], /* Private Use */ + [0xef6f, 0xef6f], /* Private Use */ + [0xef70, 0xef70], /* Private Use */ + [0xef71, 0xef71], /* Private Use */ + [0xef72, 0xef72], /* Private Use */ + [0xef73, 0xef73], /* Private Use */ + [0xef74, 0xef74], /* Private Use */ + [0xef75, 0xef75], /* Private Use */ + [0xef76, 0xef76], /* Private Use */ + [0xef77, 0xef77], /* Private Use */ + [0xef78, 0xef78], /* Private Use */ + [0xef79, 0xef79], /* Private Use */ + [0xef7a, 0xef7a], /* Private Use */ + [0xef7b, 0xef7b], /* Private Use */ + [0xef7c, 0xef7c], /* Private Use */ + [0xef7d, 0xef7d], /* Private Use */ + [0xef7e, 0xef7e], /* Private Use */ + [0xef7f, 0xef7f], /* Private Use */ + [0xef80, 0xef80], /* Private Use */ + [0xef81, 0xef81], /* Private Use */ + [0xef82, 0xef82], /* Private Use */ + [0xef83, 0xef83], /* Private Use */ + [0xef84, 0xef84], /* Private Use */ + [0xef85, 0xef85], /* Private Use */ + [0xef86, 0xef86], /* Private Use */ + [0xef87, 0xef87], /* Private Use */ + [0xef88, 0xef88], /* Private Use */ + [0xef89, 0xef89], /* Private Use */ + [0xef8a, 0xef8a], /* Private Use */ + [0xef8b, 0xef8b], /* Private Use */ + [0xef8c, 0xef8c], /* Private Use */ + [0xef8d, 0xef8d], /* Private Use */ + [0xef8e, 0xef8e], /* Private Use */ + [0xef8f, 0xef8f], /* Private Use */ + [0xef90, 0xef90], /* Private Use */ + [0xef91, 0xef91], /* Private Use */ + [0xef92, 0xef92], /* Private Use */ + [0xef93, 0xef93], /* Private Use */ + [0xef94, 0xef94], /* Private Use */ + [0xef95, 0xef95], /* Private Use */ + [0xef96, 0xef96], /* Private Use */ + [0xef97, 0xef97], /* Private Use */ + [0xef98, 0xef98], /* Private Use */ + [0xef99, 0xef99], /* Private Use */ + [0xef9a, 0xef9a], /* Private Use */ + [0xef9b, 0xef9b], /* Private Use */ + [0xef9c, 0xef9c], /* Private Use */ + [0xef9d, 0xef9d], /* Private Use */ + [0xef9e, 0xef9e], /* Private Use */ + [0xef9f, 0xef9f], /* Private Use */ + [0xefa0, 0xefa0], /* Private Use */ + [0xefa1, 0xefa1], /* Private Use */ + [0xefa2, 0xefa2], /* Private Use */ + [0xefa3, 0xefa3], /* Private Use */ + [0xefa4, 0xefa4], /* Private Use */ + [0xefa5, 0xefa5], /* Private Use */ + [0xefa6, 0xefa6], /* Private Use */ + [0xefa7, 0xefa7], /* Private Use */ + [0xefa8, 0xefa8], /* Private Use */ + [0xefa9, 0xefa9], /* Private Use */ + [0xefaa, 0xefaa], /* Private Use */ + [0xefab, 0xefab], /* Private Use */ + [0xefac, 0xefac], /* Private Use */ + [0xefad, 0xefad], /* Private Use */ + [0xefae, 0xefae], /* Private Use */ + [0xefaf, 0xefaf], /* Private Use */ + [0xefb0, 0xefb0], /* Private Use */ + [0xefb1, 0xefb1], /* Private Use */ + [0xefb2, 0xefb2], /* Private Use */ + [0xefb3, 0xefb3], /* Private Use */ + [0xefb4, 0xefb4], /* Private Use */ + [0xefb5, 0xefb5], /* Private Use */ + [0xefb6, 0xefb6], /* Private Use */ + [0xefb7, 0xefb7], /* Private Use */ + [0xefb8, 0xefb8], /* Private Use */ + [0xefb9, 0xefb9], /* Private Use */ + [0xefba, 0xefba], /* Private Use */ + [0xefbb, 0xefbb], /* Private Use */ + [0xefbc, 0xefbc], /* Private Use */ + [0xefbd, 0xefbd], /* Private Use */ + [0xefbe, 0xefbe], /* Private Use */ + [0xefbf, 0xefbf], /* Private Use */ + [0xefc0, 0xefc0], /* Private Use */ + [0xefc1, 0xefc1], /* Private Use */ + [0xefc2, 0xefc2], /* Private Use */ + [0xefc3, 0xefc3], /* Private Use */ + [0xefc4, 0xefc4], /* Private Use */ + [0xefc5, 0xefc5], /* Private Use */ + [0xefc6, 0xefc6], /* Private Use */ + [0xefc7, 0xefc7], /* Private Use */ + [0xefc8, 0xefc8], /* Private Use */ + [0xefc9, 0xefc9], /* Private Use */ + [0xefca, 0xefca], /* Private Use */ + [0xefcb, 0xefcb], /* Private Use */ + [0xefcc, 0xefcc], /* Private Use */ + [0xefcd, 0xefcd], /* Private Use */ + [0xefce, 0xefce], /* Private Use */ + [0xefcf, 0xefcf], /* Private Use */ + [0xefd0, 0xefd0], /* Private Use */ + [0xefd1, 0xefd1], /* Private Use */ + [0xefd2, 0xefd2], /* Private Use */ + [0xefd3, 0xefd3], /* Private Use */ + [0xefd4, 0xefd4], /* Private Use */ + [0xefd5, 0xefd5], /* Private Use */ + [0xefd6, 0xefd6], /* Private Use */ + [0xefd7, 0xefd7], /* Private Use */ + [0xefd8, 0xefd8], /* Private Use */ + [0xefd9, 0xefd9], /* Private Use */ + [0xefda, 0xefda], /* Private Use */ + [0xefdb, 0xefdb], /* Private Use */ + [0xefdc, 0xefdc], /* Private Use */ + [0xefdd, 0xefdd], /* Private Use */ + [0xefde, 0xefde], /* Private Use */ + [0xefdf, 0xefdf], /* Private Use */ + [0xefe0, 0xefe0], /* Private Use */ + [0xefe1, 0xefe1], /* Private Use */ + [0xefe2, 0xefe2], /* Private Use */ + [0xefe3, 0xefe3], /* Private Use */ + [0xefe4, 0xefe4], /* Private Use */ + [0xefe5, 0xefe5], /* Private Use */ + [0xefe6, 0xefe6], /* Private Use */ + [0xefe7, 0xefe7], /* Private Use */ + [0xefe8, 0xefe8], /* Private Use */ + [0xefe9, 0xefe9], /* Private Use */ + [0xefea, 0xefea], /* Private Use */ + [0xefeb, 0xefeb], /* Private Use */ + [0xefec, 0xefec], /* Private Use */ + [0xefed, 0xefed], /* Private Use */ + [0xefee, 0xefee], /* Private Use */ + [0xefef, 0xefef], /* Private Use */ + [0xeff0, 0xeff0], /* Private Use */ + [0xeff1, 0xeff1], /* Private Use */ + [0xeff2, 0xeff2], /* Private Use */ + [0xeff3, 0xeff3], /* Private Use */ + [0xeff4, 0xeff4], /* Private Use */ + [0xeff5, 0xeff5], /* Private Use */ + [0xeff6, 0xeff6], /* Private Use */ + [0xeff7, 0xeff7], /* Private Use */ + [0xeff8, 0xeff8], /* Private Use */ + [0xeff9, 0xeff9], /* Private Use */ + [0xeffa, 0xeffa], /* Private Use */ + [0xeffb, 0xeffb], /* Private Use */ + [0xeffc, 0xeffc], /* Private Use */ + [0xeffd, 0xeffd], /* Private Use */ + [0xeffe, 0xeffe], /* Private Use */ + [0xefff, 0xefff], /* Private Use */ + [0xf000, 0xf000], /* Private Use */ + [0xf001, 0xf001], /* Private Use */ + [0xf002, 0xf002], /* Private Use */ + [0xf003, 0xf003], /* Private Use */ + [0xf004, 0xf004], /* Private Use */ + [0xf005, 0xf005], /* Private Use */ + [0xf006, 0xf006], /* Private Use */ + [0xf007, 0xf007], /* Private Use */ + [0xf008, 0xf008], /* Private Use */ + [0xf009, 0xf009], /* Private Use */ + [0xf00a, 0xf00a], /* Private Use */ + [0xf00b, 0xf00b], /* Private Use */ + [0xf00c, 0xf00c], /* Private Use */ + [0xf00d, 0xf00d], /* Private Use */ + [0xf00e, 0xf00e], /* Private Use */ + [0xf00f, 0xf00f], /* Private Use */ + [0xf010, 0xf010], /* Private Use */ + [0xf011, 0xf011], /* Private Use */ + [0xf012, 0xf012], /* Private Use */ + [0xf013, 0xf013], /* Private Use */ + [0xf014, 0xf014], /* Private Use */ + [0xf015, 0xf015], /* Private Use */ + [0xf016, 0xf016], /* Private Use */ + [0xf017, 0xf017], /* Private Use */ + [0xf018, 0xf018], /* Private Use */ + [0xf019, 0xf019], /* Private Use */ + [0xf01a, 0xf01a], /* Private Use */ + [0xf01b, 0xf01b], /* Private Use */ + [0xf01c, 0xf01c], /* Private Use */ + [0xf01d, 0xf01d], /* Private Use */ + [0xf01e, 0xf01e], /* Private Use */ + [0xf01f, 0xf01f], /* Private Use */ + [0xf020, 0xf020], /* Private Use */ + [0xf021, 0xf021], /* Private Use */ + [0xf022, 0xf022], /* Private Use */ + [0xf023, 0xf023], /* Private Use */ + [0xf024, 0xf024], /* Private Use */ + [0xf025, 0xf025], /* Private Use */ + [0xf026, 0xf026], /* Private Use */ + [0xf027, 0xf027], /* Private Use */ + [0xf028, 0xf028], /* Private Use */ + [0xf029, 0xf029], /* Private Use */ + [0xf02a, 0xf02a], /* Private Use */ + [0xf02b, 0xf02b], /* Private Use */ + [0xf02c, 0xf02c], /* Private Use */ + [0xf02d, 0xf02d], /* Private Use */ + [0xf02e, 0xf02e], /* Private Use */ + [0xf02f, 0xf02f], /* Private Use */ + [0xf030, 0xf030], /* Private Use */ + [0xf031, 0xf031], /* Private Use */ + [0xf032, 0xf032], /* Private Use */ + [0xf033, 0xf033], /* Private Use */ + [0xf034, 0xf034], /* Private Use */ + [0xf035, 0xf035], /* Private Use */ + [0xf036, 0xf036], /* Private Use */ + [0xf037, 0xf037], /* Private Use */ + [0xf038, 0xf038], /* Private Use */ + [0xf039, 0xf039], /* Private Use */ + [0xf03a, 0xf03a], /* Private Use */ + [0xf03b, 0xf03b], /* Private Use */ + [0xf03c, 0xf03c], /* Private Use */ + [0xf03d, 0xf03d], /* Private Use */ + [0xf03e, 0xf03e], /* Private Use */ + [0xf03f, 0xf03f], /* Private Use */ + [0xf040, 0xf040], /* Private Use */ + [0xf041, 0xf041], /* Private Use */ + [0xf042, 0xf042], /* Private Use */ + [0xf043, 0xf043], /* Private Use */ + [0xf044, 0xf044], /* Private Use */ + [0xf045, 0xf045], /* Private Use */ + [0xf046, 0xf046], /* Private Use */ + [0xf047, 0xf047], /* Private Use */ + [0xf048, 0xf048], /* Private Use */ + [0xf049, 0xf049], /* Private Use */ + [0xf04a, 0xf04a], /* Private Use */ + [0xf04b, 0xf04b], /* Private Use */ + [0xf04c, 0xf04c], /* Private Use */ + [0xf04d, 0xf04d], /* Private Use */ + [0xf04e, 0xf04e], /* Private Use */ + [0xf04f, 0xf04f], /* Private Use */ + [0xf050, 0xf050], /* Private Use */ + [0xf051, 0xf051], /* Private Use */ + [0xf052, 0xf052], /* Private Use */ + [0xf053, 0xf053], /* Private Use */ + [0xf054, 0xf054], /* Private Use */ + [0xf055, 0xf055], /* Private Use */ + [0xf056, 0xf056], /* Private Use */ + [0xf057, 0xf057], /* Private Use */ + [0xf058, 0xf058], /* Private Use */ + [0xf059, 0xf059], /* Private Use */ + [0xf05a, 0xf05a], /* Private Use */ + [0xf05b, 0xf05b], /* Private Use */ + [0xf05c, 0xf05c], /* Private Use */ + [0xf05d, 0xf05d], /* Private Use */ + [0xf05e, 0xf05e], /* Private Use */ + [0xf05f, 0xf05f], /* Private Use */ + [0xf060, 0xf060], /* Private Use */ + [0xf061, 0xf061], /* Private Use */ + [0xf062, 0xf062], /* Private Use */ + [0xf063, 0xf063], /* Private Use */ + [0xf064, 0xf064], /* Private Use */ + [0xf065, 0xf065], /* Private Use */ + [0xf066, 0xf066], /* Private Use */ + [0xf067, 0xf067], /* Private Use */ + [0xf068, 0xf068], /* Private Use */ + [0xf069, 0xf069], /* Private Use */ + [0xf06a, 0xf06a], /* Private Use */ + [0xf06b, 0xf06b], /* Private Use */ + [0xf06c, 0xf06c], /* Private Use */ + [0xf06d, 0xf06d], /* Private Use */ + [0xf06e, 0xf06e], /* Private Use */ + [0xf06f, 0xf06f], /* Private Use */ + [0xf070, 0xf070], /* Private Use */ + [0xf071, 0xf071], /* Private Use */ + [0xf072, 0xf072], /* Private Use */ + [0xf073, 0xf073], /* Private Use */ + [0xf074, 0xf074], /* Private Use */ + [0xf075, 0xf075], /* Private Use */ + [0xf076, 0xf076], /* Private Use */ + [0xf077, 0xf077], /* Private Use */ + [0xf078, 0xf078], /* Private Use */ + [0xf079, 0xf079], /* Private Use */ + [0xf07a, 0xf07a], /* Private Use */ + [0xf07b, 0xf07b], /* Private Use */ + [0xf07c, 0xf07c], /* Private Use */ + [0xf07d, 0xf07d], /* Private Use */ + [0xf07e, 0xf07e], /* Private Use */ + [0xf07f, 0xf07f], /* Private Use */ + [0xf080, 0xf080], /* Private Use */ + [0xf081, 0xf081], /* Private Use */ + [0xf082, 0xf082], /* Private Use */ + [0xf083, 0xf083], /* Private Use */ + [0xf084, 0xf084], /* Private Use */ + [0xf085, 0xf085], /* Private Use */ + [0xf086, 0xf086], /* Private Use */ + [0xf087, 0xf087], /* Private Use */ + [0xf088, 0xf088], /* Private Use */ + [0xf089, 0xf089], /* Private Use */ + [0xf08a, 0xf08a], /* Private Use */ + [0xf08b, 0xf08b], /* Private Use */ + [0xf08c, 0xf08c], /* Private Use */ + [0xf08d, 0xf08d], /* Private Use */ + [0xf08e, 0xf08e], /* Private Use */ + [0xf08f, 0xf08f], /* Private Use */ + [0xf090, 0xf090], /* Private Use */ + [0xf091, 0xf091], /* Private Use */ + [0xf092, 0xf092], /* Private Use */ + [0xf093, 0xf093], /* Private Use */ + [0xf094, 0xf094], /* Private Use */ + [0xf095, 0xf095], /* Private Use */ + [0xf096, 0xf096], /* Private Use */ + [0xf097, 0xf097], /* Private Use */ + [0xf098, 0xf098], /* Private Use */ + [0xf099, 0xf099], /* Private Use */ + [0xf09a, 0xf09a], /* Private Use */ + [0xf09b, 0xf09b], /* Private Use */ + [0xf09c, 0xf09c], /* Private Use */ + [0xf09d, 0xf09d], /* Private Use */ + [0xf09e, 0xf09e], /* Private Use */ + [0xf09f, 0xf09f], /* Private Use */ + [0xf0a0, 0xf0a0], /* Private Use */ + [0xf0a1, 0xf0a1], /* Private Use */ + [0xf0a2, 0xf0a2], /* Private Use */ + [0xf0a3, 0xf0a3], /* Private Use */ + [0xf0a4, 0xf0a4], /* Private Use */ + [0xf0a5, 0xf0a5], /* Private Use */ + [0xf0a6, 0xf0a6], /* Private Use */ + [0xf0a7, 0xf0a7], /* Private Use */ + [0xf0a8, 0xf0a8], /* Private Use */ + [0xf0a9, 0xf0a9], /* Private Use */ + [0xf0aa, 0xf0aa], /* Private Use */ + [0xf0ab, 0xf0ab], /* Private Use */ + [0xf0ac, 0xf0ac], /* Private Use */ + [0xf0ad, 0xf0ad], /* Private Use */ + [0xf0ae, 0xf0ae], /* Private Use */ + [0xf0af, 0xf0af], /* Private Use */ + [0xf0b0, 0xf0b0], /* Private Use */ + [0xf0b1, 0xf0b1], /* Private Use */ + [0xf0b2, 0xf0b2], /* Private Use */ + [0xf0b3, 0xf0b3], /* Private Use */ + [0xf0b4, 0xf0b4], /* Private Use */ + [0xf0b5, 0xf0b5], /* Private Use */ + [0xf0b6, 0xf0b6], /* Private Use */ + [0xf0b7, 0xf0b7], /* Private Use */ + [0xf0b8, 0xf0b8], /* Private Use */ + [0xf0b9, 0xf0b9], /* Private Use */ + [0xf0ba, 0xf0ba], /* Private Use */ + [0xf0bb, 0xf0bb], /* Private Use */ + [0xf0bc, 0xf0bc], /* Private Use */ + [0xf0bd, 0xf0bd], /* Private Use */ + [0xf0be, 0xf0be], /* Private Use */ + [0xf0bf, 0xf0bf], /* Private Use */ + [0xf0c0, 0xf0c0], /* Private Use */ + [0xf0c1, 0xf0c1], /* Private Use */ + [0xf0c2, 0xf0c2], /* Private Use */ + [0xf0c3, 0xf0c3], /* Private Use */ + [0xf0c4, 0xf0c4], /* Private Use */ + [0xf0c5, 0xf0c5], /* Private Use */ + [0xf0c6, 0xf0c6], /* Private Use */ + [0xf0c7, 0xf0c7], /* Private Use */ + [0xf0c8, 0xf0c8], /* Private Use */ + [0xf0c9, 0xf0c9], /* Private Use */ + [0xf0ca, 0xf0ca], /* Private Use */ + [0xf0cb, 0xf0cb], /* Private Use */ + [0xf0cc, 0xf0cc], /* Private Use */ + [0xf0cd, 0xf0cd], /* Private Use */ + [0xf0ce, 0xf0ce], /* Private Use */ + [0xf0cf, 0xf0cf], /* Private Use */ + [0xf0d0, 0xf0d0], /* Private Use */ + [0xf0d1, 0xf0d1], /* Private Use */ + [0xf0d2, 0xf0d2], /* Private Use */ + [0xf0d3, 0xf0d3], /* Private Use */ + [0xf0d4, 0xf0d4], /* Private Use */ + [0xf0d5, 0xf0d5], /* Private Use */ + [0xf0d6, 0xf0d6], /* Private Use */ + [0xf0d7, 0xf0d7], /* Private Use */ + [0xf0d8, 0xf0d8], /* Private Use */ + [0xf0d9, 0xf0d9], /* Private Use */ + [0xf0da, 0xf0da], /* Private Use */ + [0xf0db, 0xf0db], /* Private Use */ + [0xf0dc, 0xf0dc], /* Private Use */ + [0xf0dd, 0xf0dd], /* Private Use */ + [0xf0de, 0xf0de], /* Private Use */ + [0xf0df, 0xf0df], /* Private Use */ + [0xf0e0, 0xf0e0], /* Private Use */ + [0xf0e1, 0xf0e1], /* Private Use */ + [0xf0e2, 0xf0e2], /* Private Use */ + [0xf0e3, 0xf0e3], /* Private Use */ + [0xf0e4, 0xf0e4], /* Private Use */ + [0xf0e5, 0xf0e5], /* Private Use */ + [0xf0e6, 0xf0e6], /* Private Use */ + [0xf0e7, 0xf0e7], /* Private Use */ + [0xf0e8, 0xf0e8], /* Private Use */ + [0xf0e9, 0xf0e9], /* Private Use */ + [0xf0ea, 0xf0ea], /* Private Use */ + [0xf0eb, 0xf0eb], /* Private Use */ + [0xf0ec, 0xf0ec], /* Private Use */ + [0xf0ed, 0xf0ed], /* Private Use */ + [0xf0ee, 0xf0ee], /* Private Use */ + [0xf0ef, 0xf0ef], /* Private Use */ + [0xf0f0, 0xf0f0], /* Private Use */ + [0xf0f1, 0xf0f1], /* Private Use */ + [0xf0f2, 0xf0f2], /* Private Use */ + [0xf0f3, 0xf0f3], /* Private Use */ + [0xf0f4, 0xf0f4], /* Private Use */ + [0xf0f5, 0xf0f5], /* Private Use */ + [0xf0f6, 0xf0f6], /* Private Use */ + [0xf0f7, 0xf0f7], /* Private Use */ + [0xf0f8, 0xf0f8], /* Private Use */ + [0xf0f9, 0xf0f9], /* Private Use */ + [0xf0fa, 0xf0fa], /* Private Use */ + [0xf0fb, 0xf0fb], /* Private Use */ + [0xf0fc, 0xf0fc], /* Private Use */ + [0xf0fd, 0xf0fd], /* Private Use */ + [0xf0fe, 0xf0fe], /* Private Use */ + [0xf0ff, 0xf0ff], /* Private Use */ + [0xf100, 0xf100], /* Private Use */ + [0xf101, 0xf101], /* Private Use */ + [0xf102, 0xf102], /* Private Use */ + [0xf103, 0xf103], /* Private Use */ + [0xf104, 0xf104], /* Private Use */ + [0xf105, 0xf105], /* Private Use */ + [0xf106, 0xf106], /* Private Use */ + [0xf107, 0xf107], /* Private Use */ + [0xf108, 0xf108], /* Private Use */ + [0xf109, 0xf109], /* Private Use */ + [0xf10a, 0xf10a], /* Private Use */ + [0xf10b, 0xf10b], /* Private Use */ + [0xf10c, 0xf10c], /* Private Use */ + [0xf10d, 0xf10d], /* Private Use */ + [0xf10e, 0xf10e], /* Private Use */ + [0xf10f, 0xf10f], /* Private Use */ + [0xf110, 0xf110], /* Private Use */ + [0xf111, 0xf111], /* Private Use */ + [0xf112, 0xf112], /* Private Use */ + [0xf113, 0xf113], /* Private Use */ + [0xf114, 0xf114], /* Private Use */ + [0xf115, 0xf115], /* Private Use */ + [0xf116, 0xf116], /* Private Use */ + [0xf117, 0xf117], /* Private Use */ + [0xf118, 0xf118], /* Private Use */ + [0xf119, 0xf119], /* Private Use */ + [0xf11a, 0xf11a], /* Private Use */ + [0xf11b, 0xf11b], /* Private Use */ + [0xf11c, 0xf11c], /* Private Use */ + [0xf11d, 0xf11d], /* Private Use */ + [0xf11e, 0xf11e], /* Private Use */ + [0xf11f, 0xf11f], /* Private Use */ + [0xf120, 0xf120], /* Private Use */ + [0xf121, 0xf121], /* Private Use */ + [0xf122, 0xf122], /* Private Use */ + [0xf123, 0xf123], /* Private Use */ + [0xf124, 0xf124], /* Private Use */ + [0xf125, 0xf125], /* Private Use */ + [0xf126, 0xf126], /* Private Use */ + [0xf127, 0xf127], /* Private Use */ + [0xf128, 0xf128], /* Private Use */ + [0xf129, 0xf129], /* Private Use */ + [0xf12a, 0xf12a], /* Private Use */ + [0xf12b, 0xf12b], /* Private Use */ + [0xf12c, 0xf12c], /* Private Use */ + [0xf12d, 0xf12d], /* Private Use */ + [0xf12e, 0xf12e], /* Private Use */ + [0xf12f, 0xf12f], /* Private Use */ + [0xf130, 0xf130], /* Private Use */ + [0xf131, 0xf131], /* Private Use */ + [0xf132, 0xf132], /* Private Use */ + [0xf133, 0xf133], /* Private Use */ + [0xf134, 0xf134], /* Private Use */ + [0xf135, 0xf135], /* Private Use */ + [0xf136, 0xf136], /* Private Use */ + [0xf137, 0xf137], /* Private Use */ + [0xf138, 0xf138], /* Private Use */ + [0xf139, 0xf139], /* Private Use */ + [0xf13a, 0xf13a], /* Private Use */ + [0xf13b, 0xf13b], /* Private Use */ + [0xf13c, 0xf13c], /* Private Use */ + [0xf13d, 0xf13d], /* Private Use */ + [0xf13e, 0xf13e], /* Private Use */ + [0xf13f, 0xf13f], /* Private Use */ + [0xf140, 0xf140], /* Private Use */ + [0xf141, 0xf141], /* Private Use */ + [0xf142, 0xf142], /* Private Use */ + [0xf143, 0xf143], /* Private Use */ + [0xf144, 0xf144], /* Private Use */ + [0xf145, 0xf145], /* Private Use */ + [0xf146, 0xf146], /* Private Use */ + [0xf147, 0xf147], /* Private Use */ + [0xf148, 0xf148], /* Private Use */ + [0xf149, 0xf149], /* Private Use */ + [0xf14a, 0xf14a], /* Private Use */ + [0xf14b, 0xf14b], /* Private Use */ + [0xf14c, 0xf14c], /* Private Use */ + [0xf14d, 0xf14d], /* Private Use */ + [0xf14e, 0xf14e], /* Private Use */ + [0xf14f, 0xf14f], /* Private Use */ + [0xf150, 0xf150], /* Private Use */ + [0xf151, 0xf151], /* Private Use */ + [0xf152, 0xf152], /* Private Use */ + [0xf153, 0xf153], /* Private Use */ + [0xf154, 0xf154], /* Private Use */ + [0xf155, 0xf155], /* Private Use */ + [0xf156, 0xf156], /* Private Use */ + [0xf157, 0xf157], /* Private Use */ + [0xf158, 0xf158], /* Private Use */ + [0xf159, 0xf159], /* Private Use */ + [0xf15a, 0xf15a], /* Private Use */ + [0xf15b, 0xf15b], /* Private Use */ + [0xf15c, 0xf15c], /* Private Use */ + [0xf15d, 0xf15d], /* Private Use */ + [0xf15e, 0xf15e], /* Private Use */ + [0xf15f, 0xf15f], /* Private Use */ + [0xf160, 0xf160], /* Private Use */ + [0xf161, 0xf161], /* Private Use */ + [0xf162, 0xf162], /* Private Use */ + [0xf163, 0xf163], /* Private Use */ + [0xf164, 0xf164], /* Private Use */ + [0xf165, 0xf165], /* Private Use */ + [0xf166, 0xf166], /* Private Use */ + [0xf167, 0xf167], /* Private Use */ + [0xf168, 0xf168], /* Private Use */ + [0xf169, 0xf169], /* Private Use */ + [0xf16a, 0xf16a], /* Private Use */ + [0xf16b, 0xf16b], /* Private Use */ + [0xf16c, 0xf16c], /* Private Use */ + [0xf16d, 0xf16d], /* Private Use */ + [0xf16e, 0xf16e], /* Private Use */ + [0xf16f, 0xf16f], /* Private Use */ + [0xf170, 0xf170], /* Private Use */ + [0xf171, 0xf171], /* Private Use */ + [0xf172, 0xf172], /* Private Use */ + [0xf173, 0xf173], /* Private Use */ + [0xf174, 0xf174], /* Private Use */ + [0xf175, 0xf175], /* Private Use */ + [0xf176, 0xf176], /* Private Use */ + [0xf177, 0xf177], /* Private Use */ + [0xf178, 0xf178], /* Private Use */ + [0xf179, 0xf179], /* Private Use */ + [0xf17a, 0xf17a], /* Private Use */ + [0xf17b, 0xf17b], /* Private Use */ + [0xf17c, 0xf17c], /* Private Use */ + [0xf17d, 0xf17d], /* Private Use */ + [0xf17e, 0xf17e], /* Private Use */ + [0xf17f, 0xf17f], /* Private Use */ + [0xf180, 0xf180], /* Private Use */ + [0xf181, 0xf181], /* Private Use */ + [0xf182, 0xf182], /* Private Use */ + [0xf183, 0xf183], /* Private Use */ + [0xf184, 0xf184], /* Private Use */ + [0xf185, 0xf185], /* Private Use */ + [0xf186, 0xf186], /* Private Use */ + [0xf187, 0xf187], /* Private Use */ + [0xf188, 0xf188], /* Private Use */ + [0xf189, 0xf189], /* Private Use */ + [0xf18a, 0xf18a], /* Private Use */ + [0xf18b, 0xf18b], /* Private Use */ + [0xf18c, 0xf18c], /* Private Use */ + [0xf18d, 0xf18d], /* Private Use */ + [0xf18e, 0xf18e], /* Private Use */ + [0xf18f, 0xf18f], /* Private Use */ + [0xf190, 0xf190], /* Private Use */ + [0xf191, 0xf191], /* Private Use */ + [0xf192, 0xf192], /* Private Use */ + [0xf193, 0xf193], /* Private Use */ + [0xf194, 0xf194], /* Private Use */ + [0xf195, 0xf195], /* Private Use */ + [0xf196, 0xf196], /* Private Use */ + [0xf197, 0xf197], /* Private Use */ + [0xf198, 0xf198], /* Private Use */ + [0xf199, 0xf199], /* Private Use */ + [0xf19a, 0xf19a], /* Private Use */ + [0xf19b, 0xf19b], /* Private Use */ + [0xf19c, 0xf19c], /* Private Use */ + [0xf19d, 0xf19d], /* Private Use */ + [0xf19e, 0xf19e], /* Private Use */ + [0xf19f, 0xf19f], /* Private Use */ + [0xf1a0, 0xf1a0], /* Private Use */ + [0xf1a1, 0xf1a1], /* Private Use */ + [0xf1a2, 0xf1a2], /* Private Use */ + [0xf1a3, 0xf1a3], /* Private Use */ + [0xf1a4, 0xf1a4], /* Private Use */ + [0xf1a5, 0xf1a5], /* Private Use */ + [0xf1a6, 0xf1a6], /* Private Use */ + [0xf1a7, 0xf1a7], /* Private Use */ + [0xf1a8, 0xf1a8], /* Private Use */ + [0xf1a9, 0xf1a9], /* Private Use */ + [0xf1aa, 0xf1aa], /* Private Use */ + [0xf1ab, 0xf1ab], /* Private Use */ + [0xf1ac, 0xf1ac], /* Private Use */ + [0xf1ad, 0xf1ad], /* Private Use */ + [0xf1ae, 0xf1ae], /* Private Use */ + [0xf1af, 0xf1af], /* Private Use */ + [0xf1b0, 0xf1b0], /* Private Use */ + [0xf1b1, 0xf1b1], /* Private Use */ + [0xf1b2, 0xf1b2], /* Private Use */ + [0xf1b3, 0xf1b3], /* Private Use */ + [0xf1b4, 0xf1b4], /* Private Use */ + [0xf1b5, 0xf1b5], /* Private Use */ + [0xf1b6, 0xf1b6], /* Private Use */ + [0xf1b7, 0xf1b7], /* Private Use */ + [0xf1b8, 0xf1b8], /* Private Use */ + [0xf1b9, 0xf1b9], /* Private Use */ + [0xf1ba, 0xf1ba], /* Private Use */ + [0xf1bb, 0xf1bb], /* Private Use */ + [0xf1bc, 0xf1bc], /* Private Use */ + [0xf1bd, 0xf1bd], /* Private Use */ + [0xf1be, 0xf1be], /* Private Use */ + [0xf1bf, 0xf1bf], /* Private Use */ + [0xf1c0, 0xf1c0], /* Private Use */ + [0xf1c1, 0xf1c1], /* Private Use */ + [0xf1c2, 0xf1c2], /* Private Use */ + [0xf1c3, 0xf1c3], /* Private Use */ + [0xf1c4, 0xf1c4], /* Private Use */ + [0xf1c5, 0xf1c5], /* Private Use */ + [0xf1c6, 0xf1c6], /* Private Use */ + [0xf1c7, 0xf1c7], /* Private Use */ + [0xf1c8, 0xf1c8], /* Private Use */ + [0xf1c9, 0xf1c9], /* Private Use */ + [0xf1ca, 0xf1ca], /* Private Use */ + [0xf1cb, 0xf1cb], /* Private Use */ + [0xf1cc, 0xf1cc], /* Private Use */ + [0xf1cd, 0xf1cd], /* Private Use */ + [0xf1ce, 0xf1ce], /* Private Use */ + [0xf1cf, 0xf1cf], /* Private Use */ + [0xf1d0, 0xf1d0], /* Private Use */ + [0xf1d1, 0xf1d1], /* Private Use */ + [0xf1d2, 0xf1d2], /* Private Use */ + [0xf1d3, 0xf1d3], /* Private Use */ + [0xf1d4, 0xf1d4], /* Private Use */ + [0xf1d5, 0xf1d5], /* Private Use */ + [0xf1d6, 0xf1d6], /* Private Use */ + [0xf1d7, 0xf1d7], /* Private Use */ + [0xf1d8, 0xf1d8], /* Private Use */ + [0xf1d9, 0xf1d9], /* Private Use */ + [0xf1da, 0xf1da], /* Private Use */ + [0xf1db, 0xf1db], /* Private Use */ + [0xf1dc, 0xf1dc], /* Private Use */ + [0xf1dd, 0xf1dd], /* Private Use */ + [0xf1de, 0xf1de], /* Private Use */ + [0xf1df, 0xf1df], /* Private Use */ + [0xf1e0, 0xf1e0], /* Private Use */ + [0xf1e1, 0xf1e1], /* Private Use */ + [0xf1e2, 0xf1e2], /* Private Use */ + [0xf1e3, 0xf1e3], /* Private Use */ + [0xf1e4, 0xf1e4], /* Private Use */ + [0xf1e5, 0xf1e5], /* Private Use */ + [0xf1e6, 0xf1e6], /* Private Use */ + [0xf1e7, 0xf1e7], /* Private Use */ + [0xf1e8, 0xf1e8], /* Private Use */ + [0xf1e9, 0xf1e9], /* Private Use */ + [0xf1ea, 0xf1ea], /* Private Use */ + [0xf1eb, 0xf1eb], /* Private Use */ + [0xf1ec, 0xf1ec], /* Private Use */ + [0xf1ed, 0xf1ed], /* Private Use */ + [0xf1ee, 0xf1ee], /* Private Use */ + [0xf1ef, 0xf1ef], /* Private Use */ + [0xf1f0, 0xf1f0], /* Private Use */ + [0xf1f1, 0xf1f1], /* Private Use */ + [0xf1f2, 0xf1f2], /* Private Use */ + [0xf1f3, 0xf1f3], /* Private Use */ + [0xf1f4, 0xf1f4], /* Private Use */ + [0xf1f5, 0xf1f5], /* Private Use */ + [0xf1f6, 0xf1f6], /* Private Use */ + [0xf1f7, 0xf1f7], /* Private Use */ + [0xf1f8, 0xf1f8], /* Private Use */ + [0xf1f9, 0xf1f9], /* Private Use */ + [0xf1fa, 0xf1fa], /* Private Use */ + [0xf1fb, 0xf1fb], /* Private Use */ + [0xf1fc, 0xf1fc], /* Private Use */ + [0xf1fd, 0xf1fd], /* Private Use */ + [0xf1fe, 0xf1fe], /* Private Use */ + [0xf1ff, 0xf1ff], /* Private Use */ + [0xf200, 0xf200], /* Private Use */ + [0xf201, 0xf201], /* Private Use */ + [0xf202, 0xf202], /* Private Use */ + [0xf203, 0xf203], /* Private Use */ + [0xf204, 0xf204], /* Private Use */ + [0xf205, 0xf205], /* Private Use */ + [0xf206, 0xf206], /* Private Use */ + [0xf207, 0xf207], /* Private Use */ + [0xf208, 0xf208], /* Private Use */ + [0xf209, 0xf209], /* Private Use */ + [0xf20a, 0xf20a], /* Private Use */ + [0xf20b, 0xf20b], /* Private Use */ + [0xf20c, 0xf20c], /* Private Use */ + [0xf20d, 0xf20d], /* Private Use */ + [0xf20e, 0xf20e], /* Private Use */ + [0xf20f, 0xf20f], /* Private Use */ + [0xf210, 0xf210], /* Private Use */ + [0xf211, 0xf211], /* Private Use */ + [0xf212, 0xf212], /* Private Use */ + [0xf213, 0xf213], /* Private Use */ + [0xf214, 0xf214], /* Private Use */ + [0xf215, 0xf215], /* Private Use */ + [0xf216, 0xf216], /* Private Use */ + [0xf217, 0xf217], /* Private Use */ + [0xf218, 0xf218], /* Private Use */ + [0xf219, 0xf219], /* Private Use */ + [0xf21a, 0xf21a], /* Private Use */ + [0xf21b, 0xf21b], /* Private Use */ + [0xf21c, 0xf21c], /* Private Use */ + [0xf21d, 0xf21d], /* Private Use */ + [0xf21e, 0xf21e], /* Private Use */ + [0xf21f, 0xf21f], /* Private Use */ + [0xf220, 0xf220], /* Private Use */ + [0xf221, 0xf221], /* Private Use */ + [0xf222, 0xf222], /* Private Use */ + [0xf223, 0xf223], /* Private Use */ + [0xf224, 0xf224], /* Private Use */ + [0xf225, 0xf225], /* Private Use */ + [0xf226, 0xf226], /* Private Use */ + [0xf227, 0xf227], /* Private Use */ + [0xf228, 0xf228], /* Private Use */ + [0xf229, 0xf229], /* Private Use */ + [0xf22a, 0xf22a], /* Private Use */ + [0xf22b, 0xf22b], /* Private Use */ + [0xf22c, 0xf22c], /* Private Use */ + [0xf22d, 0xf22d], /* Private Use */ + [0xf22e, 0xf22e], /* Private Use */ + [0xf22f, 0xf22f], /* Private Use */ + [0xf230, 0xf230], /* Private Use */ + [0xf231, 0xf231], /* Private Use */ + [0xf232, 0xf232], /* Private Use */ + [0xf233, 0xf233], /* Private Use */ + [0xf234, 0xf234], /* Private Use */ + [0xf235, 0xf235], /* Private Use */ + [0xf236, 0xf236], /* Private Use */ + [0xf237, 0xf237], /* Private Use */ + [0xf238, 0xf238], /* Private Use */ + [0xf239, 0xf239], /* Private Use */ + [0xf23a, 0xf23a], /* Private Use */ + [0xf23b, 0xf23b], /* Private Use */ + [0xf23c, 0xf23c], /* Private Use */ + [0xf23d, 0xf23d], /* Private Use */ + [0xf23e, 0xf23e], /* Private Use */ + [0xf23f, 0xf23f], /* Private Use */ + [0xf240, 0xf240], /* Private Use */ + [0xf241, 0xf241], /* Private Use */ + [0xf242, 0xf242], /* Private Use */ + [0xf243, 0xf243], /* Private Use */ + [0xf244, 0xf244], /* Private Use */ + [0xf245, 0xf245], /* Private Use */ + [0xf246, 0xf246], /* Private Use */ + [0xf247, 0xf247], /* Private Use */ + [0xf248, 0xf248], /* Private Use */ + [0xf249, 0xf249], /* Private Use */ + [0xf24a, 0xf24a], /* Private Use */ + [0xf24b, 0xf24b], /* Private Use */ + [0xf24c, 0xf24c], /* Private Use */ + [0xf24d, 0xf24d], /* Private Use */ + [0xf24e, 0xf24e], /* Private Use */ + [0xf24f, 0xf24f], /* Private Use */ + [0xf250, 0xf250], /* Private Use */ + [0xf251, 0xf251], /* Private Use */ + [0xf252, 0xf252], /* Private Use */ + [0xf253, 0xf253], /* Private Use */ + [0xf254, 0xf254], /* Private Use */ + [0xf255, 0xf255], /* Private Use */ + [0xf256, 0xf256], /* Private Use */ + [0xf257, 0xf257], /* Private Use */ + [0xf258, 0xf258], /* Private Use */ + [0xf259, 0xf259], /* Private Use */ + [0xf25a, 0xf25a], /* Private Use */ + [0xf25b, 0xf25b], /* Private Use */ + [0xf25c, 0xf25c], /* Private Use */ + [0xf25d, 0xf25d], /* Private Use */ + [0xf25e, 0xf25e], /* Private Use */ + [0xf25f, 0xf25f], /* Private Use */ + [0xf260, 0xf260], /* Private Use */ + [0xf261, 0xf261], /* Private Use */ + [0xf262, 0xf262], /* Private Use */ + [0xf263, 0xf263], /* Private Use */ + [0xf264, 0xf264], /* Private Use */ + [0xf265, 0xf265], /* Private Use */ + [0xf266, 0xf266], /* Private Use */ + [0xf267, 0xf267], /* Private Use */ + [0xf268, 0xf268], /* Private Use */ + [0xf269, 0xf269], /* Private Use */ + [0xf26a, 0xf26a], /* Private Use */ + [0xf26b, 0xf26b], /* Private Use */ + [0xf26c, 0xf26c], /* Private Use */ + [0xf26d, 0xf26d], /* Private Use */ + [0xf26e, 0xf26e], /* Private Use */ + [0xf26f, 0xf26f], /* Private Use */ + [0xf270, 0xf270], /* Private Use */ + [0xf271, 0xf271], /* Private Use */ + [0xf272, 0xf272], /* Private Use */ + [0xf273, 0xf273], /* Private Use */ + [0xf274, 0xf274], /* Private Use */ + [0xf275, 0xf275], /* Private Use */ + [0xf276, 0xf276], /* Private Use */ + [0xf277, 0xf277], /* Private Use */ + [0xf278, 0xf278], /* Private Use */ + [0xf279, 0xf279], /* Private Use */ + [0xf27a, 0xf27a], /* Private Use */ + [0xf27b, 0xf27b], /* Private Use */ + [0xf27c, 0xf27c], /* Private Use */ + [0xf27d, 0xf27d], /* Private Use */ + [0xf27e, 0xf27e], /* Private Use */ + [0xf27f, 0xf27f], /* Private Use */ + [0xf280, 0xf280], /* Private Use */ + [0xf281, 0xf281], /* Private Use */ + [0xf282, 0xf282], /* Private Use */ + [0xf283, 0xf283], /* Private Use */ + [0xf284, 0xf284], /* Private Use */ + [0xf285, 0xf285], /* Private Use */ + [0xf286, 0xf286], /* Private Use */ + [0xf287, 0xf287], /* Private Use */ + [0xf288, 0xf288], /* Private Use */ + [0xf289, 0xf289], /* Private Use */ + [0xf28a, 0xf28a], /* Private Use */ + [0xf28b, 0xf28b], /* Private Use */ + [0xf28c, 0xf28c], /* Private Use */ + [0xf28d, 0xf28d], /* Private Use */ + [0xf28e, 0xf28e], /* Private Use */ + [0xf28f, 0xf28f], /* Private Use */ + [0xf290, 0xf290], /* Private Use */ + [0xf291, 0xf291], /* Private Use */ + [0xf292, 0xf292], /* Private Use */ + [0xf293, 0xf293], /* Private Use */ + [0xf294, 0xf294], /* Private Use */ + [0xf295, 0xf295], /* Private Use */ + [0xf296, 0xf296], /* Private Use */ + [0xf297, 0xf297], /* Private Use */ + [0xf298, 0xf298], /* Private Use */ + [0xf299, 0xf299], /* Private Use */ + [0xf29a, 0xf29a], /* Private Use */ + [0xf29b, 0xf29b], /* Private Use */ + [0xf29c, 0xf29c], /* Private Use */ + [0xf29d, 0xf29d], /* Private Use */ + [0xf29e, 0xf29e], /* Private Use */ + [0xf29f, 0xf29f], /* Private Use */ + [0xf2a0, 0xf2a0], /* Private Use */ + [0xf2a1, 0xf2a1], /* Private Use */ + [0xf2a2, 0xf2a2], /* Private Use */ + [0xf2a3, 0xf2a3], /* Private Use */ + [0xf2a4, 0xf2a4], /* Private Use */ + [0xf2a5, 0xf2a5], /* Private Use */ + [0xf2a6, 0xf2a6], /* Private Use */ + [0xf2a7, 0xf2a7], /* Private Use */ + [0xf2a8, 0xf2a8], /* Private Use */ + [0xf2a9, 0xf2a9], /* Private Use */ + [0xf2aa, 0xf2aa], /* Private Use */ + [0xf2ab, 0xf2ab], /* Private Use */ + [0xf2ac, 0xf2ac], /* Private Use */ + [0xf2ad, 0xf2ad], /* Private Use */ + [0xf2ae, 0xf2ae], /* Private Use */ + [0xf2af, 0xf2af], /* Private Use */ + [0xf2b0, 0xf2b0], /* Private Use */ + [0xf2b1, 0xf2b1], /* Private Use */ + [0xf2b2, 0xf2b2], /* Private Use */ + [0xf2b3, 0xf2b3], /* Private Use */ + [0xf2b4, 0xf2b4], /* Private Use */ + [0xf2b5, 0xf2b5], /* Private Use */ + [0xf2b6, 0xf2b6], /* Private Use */ + [0xf2b7, 0xf2b7], /* Private Use */ + [0xf2b8, 0xf2b8], /* Private Use */ + [0xf2b9, 0xf2b9], /* Private Use */ + [0xf2ba, 0xf2ba], /* Private Use */ + [0xf2bb, 0xf2bb], /* Private Use */ + [0xf2bc, 0xf2bc], /* Private Use */ + [0xf2bd, 0xf2bd], /* Private Use */ + [0xf2be, 0xf2be], /* Private Use */ + [0xf2bf, 0xf2bf], /* Private Use */ + [0xf2c0, 0xf2c0], /* Private Use */ + [0xf2c1, 0xf2c1], /* Private Use */ + [0xf2c2, 0xf2c2], /* Private Use */ + [0xf2c3, 0xf2c3], /* Private Use */ + [0xf2c4, 0xf2c4], /* Private Use */ + [0xf2c5, 0xf2c5], /* Private Use */ + [0xf2c6, 0xf2c6], /* Private Use */ + [0xf2c7, 0xf2c7], /* Private Use */ + [0xf2c8, 0xf2c8], /* Private Use */ + [0xf2c9, 0xf2c9], /* Private Use */ + [0xf2ca, 0xf2ca], /* Private Use */ + [0xf2cb, 0xf2cb], /* Private Use */ + [0xf2cc, 0xf2cc], /* Private Use */ + [0xf2cd, 0xf2cd], /* Private Use */ + [0xf2ce, 0xf2ce], /* Private Use */ + [0xf2cf, 0xf2cf], /* Private Use */ + [0xf2d0, 0xf2d0], /* Private Use */ + [0xf2d1, 0xf2d1], /* Private Use */ + [0xf2d2, 0xf2d2], /* Private Use */ + [0xf2d3, 0xf2d3], /* Private Use */ + [0xf2d4, 0xf2d4], /* Private Use */ + [0xf2d5, 0xf2d5], /* Private Use */ + [0xf2d6, 0xf2d6], /* Private Use */ + [0xf2d7, 0xf2d7], /* Private Use */ + [0xf2d8, 0xf2d8], /* Private Use */ + [0xf2d9, 0xf2d9], /* Private Use */ + [0xf2da, 0xf2da], /* Private Use */ + [0xf2db, 0xf2db], /* Private Use */ + [0xf2dc, 0xf2dc], /* Private Use */ + [0xf2dd, 0xf2dd], /* Private Use */ + [0xf2de, 0xf2de], /* Private Use */ + [0xf2df, 0xf2df], /* Private Use */ + [0xf2e0, 0xf2e0], /* Private Use */ + [0xf2e1, 0xf2e1], /* Private Use */ + [0xf2e2, 0xf2e2], /* Private Use */ + [0xf2e3, 0xf2e3], /* Private Use */ + [0xf2e4, 0xf2e4], /* Private Use */ + [0xf2e5, 0xf2e5], /* Private Use */ + [0xf2e6, 0xf2e6], /* Private Use */ + [0xf2e7, 0xf2e7], /* Private Use */ + [0xf2e8, 0xf2e8], /* Private Use */ + [0xf2e9, 0xf2e9], /* Private Use */ + [0xf2ea, 0xf2ea], /* Private Use */ + [0xf2eb, 0xf2eb], /* Private Use */ + [0xf2ec, 0xf2ec], /* Private Use */ + [0xf2ed, 0xf2ed], /* Private Use */ + [0xf2ee, 0xf2ee], /* Private Use */ + [0xf2ef, 0xf2ef], /* Private Use */ + [0xf2f0, 0xf2f0], /* Private Use */ + [0xf2f1, 0xf2f1], /* Private Use */ + [0xf2f2, 0xf2f2], /* Private Use */ + [0xf2f3, 0xf2f3], /* Private Use */ + [0xf2f4, 0xf2f4], /* Private Use */ + [0xf2f5, 0xf2f5], /* Private Use */ + [0xf2f6, 0xf2f6], /* Private Use */ + [0xf2f7, 0xf2f7], /* Private Use */ + [0xf2f8, 0xf2f8], /* Private Use */ + [0xf2f9, 0xf2f9], /* Private Use */ + [0xf2fa, 0xf2fa], /* Private Use */ + [0xf2fb, 0xf2fb], /* Private Use */ + [0xf2fc, 0xf2fc], /* Private Use */ + [0xf2fd, 0xf2fd], /* Private Use */ + [0xf2fe, 0xf2fe], /* Private Use */ + [0xf2ff, 0xf2ff], /* Private Use */ + [0xf300, 0xf300], /* Private Use */ + [0xf301, 0xf301], /* Private Use */ + [0xf302, 0xf302], /* Private Use */ + [0xf303, 0xf303], /* Private Use */ + [0xf304, 0xf304], /* Private Use */ + [0xf305, 0xf305], /* Private Use */ + [0xf306, 0xf306], /* Private Use */ + [0xf307, 0xf307], /* Private Use */ + [0xf308, 0xf308], /* Private Use */ + [0xf309, 0xf309], /* Private Use */ + [0xf30a, 0xf30a], /* Private Use */ + [0xf30b, 0xf30b], /* Private Use */ + [0xf30c, 0xf30c], /* Private Use */ + [0xf30d, 0xf30d], /* Private Use */ + [0xf30e, 0xf30e], /* Private Use */ + [0xf30f, 0xf30f], /* Private Use */ + [0xf310, 0xf310], /* Private Use */ + [0xf311, 0xf311], /* Private Use */ + [0xf312, 0xf312], /* Private Use */ + [0xf313, 0xf313], /* Private Use */ + [0xf314, 0xf314], /* Private Use */ + [0xf315, 0xf315], /* Private Use */ + [0xf316, 0xf316], /* Private Use */ + [0xf317, 0xf317], /* Private Use */ + [0xf318, 0xf318], /* Private Use */ + [0xf319, 0xf319], /* Private Use */ + [0xf31a, 0xf31a], /* Private Use */ + [0xf31b, 0xf31b], /* Private Use */ + [0xf31c, 0xf31c], /* Private Use */ + [0xf31d, 0xf31d], /* Private Use */ + [0xf31e, 0xf31e], /* Private Use */ + [0xf31f, 0xf31f], /* Private Use */ + [0xf320, 0xf320], /* Private Use */ + [0xf321, 0xf321], /* Private Use */ + [0xf322, 0xf322], /* Private Use */ + [0xf323, 0xf323], /* Private Use */ + [0xf324, 0xf324], /* Private Use */ + [0xf325, 0xf325], /* Private Use */ + [0xf326, 0xf326], /* Private Use */ + [0xf327, 0xf327], /* Private Use */ + [0xf328, 0xf328], /* Private Use */ + [0xf329, 0xf329], /* Private Use */ + [0xf32a, 0xf32a], /* Private Use */ + [0xf32b, 0xf32b], /* Private Use */ + [0xf32c, 0xf32c], /* Private Use */ + [0xf32d, 0xf32d], /* Private Use */ + [0xf32e, 0xf32e], /* Private Use */ + [0xf32f, 0xf32f], /* Private Use */ + [0xf330, 0xf330], /* Private Use */ + [0xf331, 0xf331], /* Private Use */ + [0xf332, 0xf332], /* Private Use */ + [0xf333, 0xf333], /* Private Use */ + [0xf334, 0xf334], /* Private Use */ + [0xf335, 0xf335], /* Private Use */ + [0xf336, 0xf336], /* Private Use */ + [0xf337, 0xf337], /* Private Use */ + [0xf338, 0xf338], /* Private Use */ + [0xf339, 0xf339], /* Private Use */ + [0xf33a, 0xf33a], /* Private Use */ + [0xf33b, 0xf33b], /* Private Use */ + [0xf33c, 0xf33c], /* Private Use */ + [0xf33d, 0xf33d], /* Private Use */ + [0xf33e, 0xf33e], /* Private Use */ + [0xf33f, 0xf33f], /* Private Use */ + [0xf340, 0xf340], /* Private Use */ + [0xf341, 0xf341], /* Private Use */ + [0xf342, 0xf342], /* Private Use */ + [0xf343, 0xf343], /* Private Use */ + [0xf344, 0xf344], /* Private Use */ + [0xf345, 0xf345], /* Private Use */ + [0xf346, 0xf346], /* Private Use */ + [0xf347, 0xf347], /* Private Use */ + [0xf348, 0xf348], /* Private Use */ + [0xf349, 0xf349], /* Private Use */ + [0xf34a, 0xf34a], /* Private Use */ + [0xf34b, 0xf34b], /* Private Use */ + [0xf34c, 0xf34c], /* Private Use */ + [0xf34d, 0xf34d], /* Private Use */ + [0xf34e, 0xf34e], /* Private Use */ + [0xf34f, 0xf34f], /* Private Use */ + [0xf350, 0xf350], /* Private Use */ + [0xf351, 0xf351], /* Private Use */ + [0xf352, 0xf352], /* Private Use */ + [0xf353, 0xf353], /* Private Use */ + [0xf354, 0xf354], /* Private Use */ + [0xf355, 0xf355], /* Private Use */ + [0xf356, 0xf356], /* Private Use */ + [0xf357, 0xf357], /* Private Use */ + [0xf358, 0xf358], /* Private Use */ + [0xf359, 0xf359], /* Private Use */ + [0xf35a, 0xf35a], /* Private Use */ + [0xf35b, 0xf35b], /* Private Use */ + [0xf35c, 0xf35c], /* Private Use */ + [0xf35d, 0xf35d], /* Private Use */ + [0xf35e, 0xf35e], /* Private Use */ + [0xf35f, 0xf35f], /* Private Use */ + [0xf360, 0xf360], /* Private Use */ + [0xf361, 0xf361], /* Private Use */ + [0xf362, 0xf362], /* Private Use */ + [0xf363, 0xf363], /* Private Use */ + [0xf364, 0xf364], /* Private Use */ + [0xf365, 0xf365], /* Private Use */ + [0xf366, 0xf366], /* Private Use */ + [0xf367, 0xf367], /* Private Use */ + [0xf368, 0xf368], /* Private Use */ + [0xf369, 0xf369], /* Private Use */ + [0xf36a, 0xf36a], /* Private Use */ + [0xf36b, 0xf36b], /* Private Use */ + [0xf36c, 0xf36c], /* Private Use */ + [0xf36d, 0xf36d], /* Private Use */ + [0xf36e, 0xf36e], /* Private Use */ + [0xf36f, 0xf36f], /* Private Use */ + [0xf370, 0xf370], /* Private Use */ + [0xf371, 0xf371], /* Private Use */ + [0xf372, 0xf372], /* Private Use */ + [0xf373, 0xf373], /* Private Use */ + [0xf374, 0xf374], /* Private Use */ + [0xf375, 0xf375], /* Private Use */ + [0xf376, 0xf376], /* Private Use */ + [0xf377, 0xf377], /* Private Use */ + [0xf378, 0xf378], /* Private Use */ + [0xf379, 0xf379], /* Private Use */ + [0xf37a, 0xf37a], /* Private Use */ + [0xf37b, 0xf37b], /* Private Use */ + [0xf37c, 0xf37c], /* Private Use */ + [0xf37d, 0xf37d], /* Private Use */ + [0xf37e, 0xf37e], /* Private Use */ + [0xf37f, 0xf37f], /* Private Use */ + [0xf380, 0xf380], /* Private Use */ + [0xf381, 0xf381], /* Private Use */ + [0xf382, 0xf382], /* Private Use */ + [0xf383, 0xf383], /* Private Use */ + [0xf384, 0xf384], /* Private Use */ + [0xf385, 0xf385], /* Private Use */ + [0xf386, 0xf386], /* Private Use */ + [0xf387, 0xf387], /* Private Use */ + [0xf388, 0xf388], /* Private Use */ + [0xf389, 0xf389], /* Private Use */ + [0xf38a, 0xf38a], /* Private Use */ + [0xf38b, 0xf38b], /* Private Use */ + [0xf38c, 0xf38c], /* Private Use */ + [0xf38d, 0xf38d], /* Private Use */ + [0xf38e, 0xf38e], /* Private Use */ + [0xf38f, 0xf38f], /* Private Use */ + [0xf390, 0xf390], /* Private Use */ + [0xf391, 0xf391], /* Private Use */ + [0xf392, 0xf392], /* Private Use */ + [0xf393, 0xf393], /* Private Use */ + [0xf394, 0xf394], /* Private Use */ + [0xf395, 0xf395], /* Private Use */ + [0xf396, 0xf396], /* Private Use */ + [0xf397, 0xf397], /* Private Use */ + [0xf398, 0xf398], /* Private Use */ + [0xf399, 0xf399], /* Private Use */ + [0xf39a, 0xf39a], /* Private Use */ + [0xf39b, 0xf39b], /* Private Use */ + [0xf39c, 0xf39c], /* Private Use */ + [0xf39d, 0xf39d], /* Private Use */ + [0xf39e, 0xf39e], /* Private Use */ + [0xf39f, 0xf39f], /* Private Use */ + [0xf3a0, 0xf3a0], /* Private Use */ + [0xf3a1, 0xf3a1], /* Private Use */ + [0xf3a2, 0xf3a2], /* Private Use */ + [0xf3a3, 0xf3a3], /* Private Use */ + [0xf3a4, 0xf3a4], /* Private Use */ + [0xf3a5, 0xf3a5], /* Private Use */ + [0xf3a6, 0xf3a6], /* Private Use */ + [0xf3a7, 0xf3a7], /* Private Use */ + [0xf3a8, 0xf3a8], /* Private Use */ + [0xf3a9, 0xf3a9], /* Private Use */ + [0xf3aa, 0xf3aa], /* Private Use */ + [0xf3ab, 0xf3ab], /* Private Use */ + [0xf3ac, 0xf3ac], /* Private Use */ + [0xf3ad, 0xf3ad], /* Private Use */ + [0xf3ae, 0xf3ae], /* Private Use */ + [0xf3af, 0xf3af], /* Private Use */ + [0xf3b0, 0xf3b0], /* Private Use */ + [0xf3b1, 0xf3b1], /* Private Use */ + [0xf3b2, 0xf3b2], /* Private Use */ + [0xf3b3, 0xf3b3], /* Private Use */ + [0xf3b4, 0xf3b4], /* Private Use */ + [0xf3b5, 0xf3b5], /* Private Use */ + [0xf3b6, 0xf3b6], /* Private Use */ + [0xf3b7, 0xf3b7], /* Private Use */ + [0xf3b8, 0xf3b8], /* Private Use */ + [0xf3b9, 0xf3b9], /* Private Use */ + [0xf3ba, 0xf3ba], /* Private Use */ + [0xf3bb, 0xf3bb], /* Private Use */ + [0xf3bc, 0xf3bc], /* Private Use */ + [0xf3bd, 0xf3bd], /* Private Use */ + [0xf3be, 0xf3be], /* Private Use */ + [0xf3bf, 0xf3bf], /* Private Use */ + [0xf3c0, 0xf3c0], /* Private Use */ + [0xf3c1, 0xf3c1], /* Private Use */ + [0xf3c2, 0xf3c2], /* Private Use */ + [0xf3c3, 0xf3c3], /* Private Use */ + [0xf3c4, 0xf3c4], /* Private Use */ + [0xf3c5, 0xf3c5], /* Private Use */ + [0xf3c6, 0xf3c6], /* Private Use */ + [0xf3c7, 0xf3c7], /* Private Use */ + [0xf3c8, 0xf3c8], /* Private Use */ + [0xf3c9, 0xf3c9], /* Private Use */ + [0xf3ca, 0xf3ca], /* Private Use */ + [0xf3cb, 0xf3cb], /* Private Use */ + [0xf3cc, 0xf3cc], /* Private Use */ + [0xf3cd, 0xf3cd], /* Private Use */ + [0xf3ce, 0xf3ce], /* Private Use */ + [0xf3cf, 0xf3cf], /* Private Use */ + [0xf3d0, 0xf3d0], /* Private Use */ + [0xf3d1, 0xf3d1], /* Private Use */ + [0xf3d2, 0xf3d2], /* Private Use */ + [0xf3d3, 0xf3d3], /* Private Use */ + [0xf3d4, 0xf3d4], /* Private Use */ + [0xf3d5, 0xf3d5], /* Private Use */ + [0xf3d6, 0xf3d6], /* Private Use */ + [0xf3d7, 0xf3d7], /* Private Use */ + [0xf3d8, 0xf3d8], /* Private Use */ + [0xf3d9, 0xf3d9], /* Private Use */ + [0xf3da, 0xf3da], /* Private Use */ + [0xf3db, 0xf3db], /* Private Use */ + [0xf3dc, 0xf3dc], /* Private Use */ + [0xf3dd, 0xf3dd], /* Private Use */ + [0xf3de, 0xf3de], /* Private Use */ + [0xf3df, 0xf3df], /* Private Use */ + [0xf3e0, 0xf3e0], /* Private Use */ + [0xf3e1, 0xf3e1], /* Private Use */ + [0xf3e2, 0xf3e2], /* Private Use */ + [0xf3e3, 0xf3e3], /* Private Use */ + [0xf3e4, 0xf3e4], /* Private Use */ + [0xf3e5, 0xf3e5], /* Private Use */ + [0xf3e6, 0xf3e6], /* Private Use */ + [0xf3e7, 0xf3e7], /* Private Use */ + [0xf3e8, 0xf3e8], /* Private Use */ + [0xf3e9, 0xf3e9], /* Private Use */ + [0xf3ea, 0xf3ea], /* Private Use */ + [0xf3eb, 0xf3eb], /* Private Use */ + [0xf3ec, 0xf3ec], /* Private Use */ + [0xf3ed, 0xf3ed], /* Private Use */ + [0xf3ee, 0xf3ee], /* Private Use */ + [0xf3ef, 0xf3ef], /* Private Use */ + [0xf3f0, 0xf3f0], /* Private Use */ + [0xf3f1, 0xf3f1], /* Private Use */ + [0xf3f2, 0xf3f2], /* Private Use */ + [0xf3f3, 0xf3f3], /* Private Use */ + [0xf3f4, 0xf3f4], /* Private Use */ + [0xf3f5, 0xf3f5], /* Private Use */ + [0xf3f6, 0xf3f6], /* Private Use */ + [0xf3f7, 0xf3f7], /* Private Use */ + [0xf3f8, 0xf3f8], /* Private Use */ + [0xf3f9, 0xf3f9], /* Private Use */ + [0xf3fa, 0xf3fa], /* Private Use */ + [0xf3fb, 0xf3fb], /* Private Use */ + [0xf3fc, 0xf3fc], /* Private Use */ + [0xf3fd, 0xf3fd], /* Private Use */ + [0xf3fe, 0xf3fe], /* Private Use */ + [0xf3ff, 0xf3ff], /* Private Use */ + [0xf400, 0xf400], /* Private Use */ + [0xf401, 0xf401], /* Private Use */ + [0xf402, 0xf402], /* Private Use */ + [0xf403, 0xf403], /* Private Use */ + [0xf404, 0xf404], /* Private Use */ + [0xf405, 0xf405], /* Private Use */ + [0xf406, 0xf406], /* Private Use */ + [0xf407, 0xf407], /* Private Use */ + [0xf408, 0xf408], /* Private Use */ + [0xf409, 0xf409], /* Private Use */ + [0xf40a, 0xf40a], /* Private Use */ + [0xf40b, 0xf40b], /* Private Use */ + [0xf40c, 0xf40c], /* Private Use */ + [0xf40d, 0xf40d], /* Private Use */ + [0xf40e, 0xf40e], /* Private Use */ + [0xf40f, 0xf40f], /* Private Use */ + [0xf410, 0xf410], /* Private Use */ + [0xf411, 0xf411], /* Private Use */ + [0xf412, 0xf412], /* Private Use */ + [0xf413, 0xf413], /* Private Use */ + [0xf414, 0xf414], /* Private Use */ + [0xf415, 0xf415], /* Private Use */ + [0xf416, 0xf416], /* Private Use */ + [0xf417, 0xf417], /* Private Use */ + [0xf418, 0xf418], /* Private Use */ + [0xf419, 0xf419], /* Private Use */ + [0xf41a, 0xf41a], /* Private Use */ + [0xf41b, 0xf41b], /* Private Use */ + [0xf41c, 0xf41c], /* Private Use */ + [0xf41d, 0xf41d], /* Private Use */ + [0xf41e, 0xf41e], /* Private Use */ + [0xf41f, 0xf41f], /* Private Use */ + [0xf420, 0xf420], /* Private Use */ + [0xf421, 0xf421], /* Private Use */ + [0xf422, 0xf422], /* Private Use */ + [0xf423, 0xf423], /* Private Use */ + [0xf424, 0xf424], /* Private Use */ + [0xf425, 0xf425], /* Private Use */ + [0xf426, 0xf426], /* Private Use */ + [0xf427, 0xf427], /* Private Use */ + [0xf428, 0xf428], /* Private Use */ + [0xf429, 0xf429], /* Private Use */ + [0xf42a, 0xf42a], /* Private Use */ + [0xf42b, 0xf42b], /* Private Use */ + [0xf42c, 0xf42c], /* Private Use */ + [0xf42d, 0xf42d], /* Private Use */ + [0xf42e, 0xf42e], /* Private Use */ + [0xf42f, 0xf42f], /* Private Use */ + [0xf430, 0xf430], /* Private Use */ + [0xf431, 0xf431], /* Private Use */ + [0xf432, 0xf432], /* Private Use */ + [0xf433, 0xf433], /* Private Use */ + [0xf434, 0xf434], /* Private Use */ + [0xf435, 0xf435], /* Private Use */ + [0xf436, 0xf436], /* Private Use */ + [0xf437, 0xf437], /* Private Use */ + [0xf438, 0xf438], /* Private Use */ + [0xf439, 0xf439], /* Private Use */ + [0xf43a, 0xf43a], /* Private Use */ + [0xf43b, 0xf43b], /* Private Use */ + [0xf43c, 0xf43c], /* Private Use */ + [0xf43d, 0xf43d], /* Private Use */ + [0xf43e, 0xf43e], /* Private Use */ + [0xf43f, 0xf43f], /* Private Use */ + [0xf440, 0xf440], /* Private Use */ + [0xf441, 0xf441], /* Private Use */ + [0xf442, 0xf442], /* Private Use */ + [0xf443, 0xf443], /* Private Use */ + [0xf444, 0xf444], /* Private Use */ + [0xf445, 0xf445], /* Private Use */ + [0xf446, 0xf446], /* Private Use */ + [0xf447, 0xf447], /* Private Use */ + [0xf448, 0xf448], /* Private Use */ + [0xf449, 0xf449], /* Private Use */ + [0xf44a, 0xf44a], /* Private Use */ + [0xf44b, 0xf44b], /* Private Use */ + [0xf44c, 0xf44c], /* Private Use */ + [0xf44d, 0xf44d], /* Private Use */ + [0xf44e, 0xf44e], /* Private Use */ + [0xf44f, 0xf44f], /* Private Use */ + [0xf450, 0xf450], /* Private Use */ + [0xf451, 0xf451], /* Private Use */ + [0xf452, 0xf452], /* Private Use */ + [0xf453, 0xf453], /* Private Use */ + [0xf454, 0xf454], /* Private Use */ + [0xf455, 0xf455], /* Private Use */ + [0xf456, 0xf456], /* Private Use */ + [0xf457, 0xf457], /* Private Use */ + [0xf458, 0xf458], /* Private Use */ + [0xf459, 0xf459], /* Private Use */ + [0xf45a, 0xf45a], /* Private Use */ + [0xf45b, 0xf45b], /* Private Use */ + [0xf45c, 0xf45c], /* Private Use */ + [0xf45d, 0xf45d], /* Private Use */ + [0xf45e, 0xf45e], /* Private Use */ + [0xf45f, 0xf45f], /* Private Use */ + [0xf460, 0xf460], /* Private Use */ + [0xf461, 0xf461], /* Private Use */ + [0xf462, 0xf462], /* Private Use */ + [0xf463, 0xf463], /* Private Use */ + [0xf464, 0xf464], /* Private Use */ + [0xf465, 0xf465], /* Private Use */ + [0xf466, 0xf466], /* Private Use */ + [0xf467, 0xf467], /* Private Use */ + [0xf468, 0xf468], /* Private Use */ + [0xf469, 0xf469], /* Private Use */ + [0xf46a, 0xf46a], /* Private Use */ + [0xf46b, 0xf46b], /* Private Use */ + [0xf46c, 0xf46c], /* Private Use */ + [0xf46d, 0xf46d], /* Private Use */ + [0xf46e, 0xf46e], /* Private Use */ + [0xf46f, 0xf46f], /* Private Use */ + [0xf470, 0xf470], /* Private Use */ + [0xf471, 0xf471], /* Private Use */ + [0xf472, 0xf472], /* Private Use */ + [0xf473, 0xf473], /* Private Use */ + [0xf474, 0xf474], /* Private Use */ + [0xf475, 0xf475], /* Private Use */ + [0xf476, 0xf476], /* Private Use */ + [0xf477, 0xf477], /* Private Use */ + [0xf478, 0xf478], /* Private Use */ + [0xf479, 0xf479], /* Private Use */ + [0xf47a, 0xf47a], /* Private Use */ + [0xf47b, 0xf47b], /* Private Use */ + [0xf47c, 0xf47c], /* Private Use */ + [0xf47d, 0xf47d], /* Private Use */ + [0xf47e, 0xf47e], /* Private Use */ + [0xf47f, 0xf47f], /* Private Use */ + [0xf480, 0xf480], /* Private Use */ + [0xf481, 0xf481], /* Private Use */ + [0xf482, 0xf482], /* Private Use */ + [0xf483, 0xf483], /* Private Use */ + [0xf484, 0xf484], /* Private Use */ + [0xf485, 0xf485], /* Private Use */ + [0xf486, 0xf486], /* Private Use */ + [0xf487, 0xf487], /* Private Use */ + [0xf488, 0xf488], /* Private Use */ + [0xf489, 0xf489], /* Private Use */ + [0xf48a, 0xf48a], /* Private Use */ + [0xf48b, 0xf48b], /* Private Use */ + [0xf48c, 0xf48c], /* Private Use */ + [0xf48d, 0xf48d], /* Private Use */ + [0xf48e, 0xf48e], /* Private Use */ + [0xf48f, 0xf48f], /* Private Use */ + [0xf490, 0xf490], /* Private Use */ + [0xf491, 0xf491], /* Private Use */ + [0xf492, 0xf492], /* Private Use */ + [0xf493, 0xf493], /* Private Use */ + [0xf494, 0xf494], /* Private Use */ + [0xf495, 0xf495], /* Private Use */ + [0xf496, 0xf496], /* Private Use */ + [0xf497, 0xf497], /* Private Use */ + [0xf498, 0xf498], /* Private Use */ + [0xf499, 0xf499], /* Private Use */ + [0xf49a, 0xf49a], /* Private Use */ + [0xf49b, 0xf49b], /* Private Use */ + [0xf49c, 0xf49c], /* Private Use */ + [0xf49d, 0xf49d], /* Private Use */ + [0xf49e, 0xf49e], /* Private Use */ + [0xf49f, 0xf49f], /* Private Use */ + [0xf4a0, 0xf4a0], /* Private Use */ + [0xf4a1, 0xf4a1], /* Private Use */ + [0xf4a2, 0xf4a2], /* Private Use */ + [0xf4a3, 0xf4a3], /* Private Use */ + [0xf4a4, 0xf4a4], /* Private Use */ + [0xf4a5, 0xf4a5], /* Private Use */ + [0xf4a6, 0xf4a6], /* Private Use */ + [0xf4a7, 0xf4a7], /* Private Use */ + [0xf4a8, 0xf4a8], /* Private Use */ + [0xf4a9, 0xf4a9], /* Private Use */ + [0xf4aa, 0xf4aa], /* Private Use */ + [0xf4ab, 0xf4ab], /* Private Use */ + [0xf4ac, 0xf4ac], /* Private Use */ + [0xf4ad, 0xf4ad], /* Private Use */ + [0xf4ae, 0xf4ae], /* Private Use */ + [0xf4af, 0xf4af], /* Private Use */ + [0xf4b0, 0xf4b0], /* Private Use */ + [0xf4b1, 0xf4b1], /* Private Use */ + [0xf4b2, 0xf4b2], /* Private Use */ + [0xf4b3, 0xf4b3], /* Private Use */ + [0xf4b4, 0xf4b4], /* Private Use */ + [0xf4b5, 0xf4b5], /* Private Use */ + [0xf4b6, 0xf4b6], /* Private Use */ + [0xf4b7, 0xf4b7], /* Private Use */ + [0xf4b8, 0xf4b8], /* Private Use */ + [0xf4b9, 0xf4b9], /* Private Use */ + [0xf4ba, 0xf4ba], /* Private Use */ + [0xf4bb, 0xf4bb], /* Private Use */ + [0xf4bc, 0xf4bc], /* Private Use */ + [0xf4bd, 0xf4bd], /* Private Use */ + [0xf4be, 0xf4be], /* Private Use */ + [0xf4bf, 0xf4bf], /* Private Use */ + [0xf4c0, 0xf4c0], /* Private Use */ + [0xf4c1, 0xf4c1], /* Private Use */ + [0xf4c2, 0xf4c2], /* Private Use */ + [0xf4c3, 0xf4c3], /* Private Use */ + [0xf4c4, 0xf4c4], /* Private Use */ + [0xf4c5, 0xf4c5], /* Private Use */ + [0xf4c6, 0xf4c6], /* Private Use */ + [0xf4c7, 0xf4c7], /* Private Use */ + [0xf4c8, 0xf4c8], /* Private Use */ + [0xf4c9, 0xf4c9], /* Private Use */ + [0xf4ca, 0xf4ca], /* Private Use */ + [0xf4cb, 0xf4cb], /* Private Use */ + [0xf4cc, 0xf4cc], /* Private Use */ + [0xf4cd, 0xf4cd], /* Private Use */ + [0xf4ce, 0xf4ce], /* Private Use */ + [0xf4cf, 0xf4cf], /* Private Use */ + [0xf4d0, 0xf4d0], /* Private Use */ + [0xf4d1, 0xf4d1], /* Private Use */ + [0xf4d2, 0xf4d2], /* Private Use */ + [0xf4d3, 0xf4d3], /* Private Use */ + [0xf4d4, 0xf4d4], /* Private Use */ + [0xf4d5, 0xf4d5], /* Private Use */ + [0xf4d6, 0xf4d6], /* Private Use */ + [0xf4d7, 0xf4d7], /* Private Use */ + [0xf4d8, 0xf4d8], /* Private Use */ + [0xf4d9, 0xf4d9], /* Private Use */ + [0xf4da, 0xf4da], /* Private Use */ + [0xf4db, 0xf4db], /* Private Use */ + [0xf4dc, 0xf4dc], /* Private Use */ + [0xf4dd, 0xf4dd], /* Private Use */ + [0xf4de, 0xf4de], /* Private Use */ + [0xf4df, 0xf4df], /* Private Use */ + [0xf4e0, 0xf4e0], /* Private Use */ + [0xf4e1, 0xf4e1], /* Private Use */ + [0xf4e2, 0xf4e2], /* Private Use */ + [0xf4e3, 0xf4e3], /* Private Use */ + [0xf4e4, 0xf4e4], /* Private Use */ + [0xf4e5, 0xf4e5], /* Private Use */ + [0xf4e6, 0xf4e6], /* Private Use */ + [0xf4e7, 0xf4e7], /* Private Use */ + [0xf4e8, 0xf4e8], /* Private Use */ + [0xf4e9, 0xf4e9], /* Private Use */ + [0xf4ea, 0xf4ea], /* Private Use */ + [0xf4eb, 0xf4eb], /* Private Use */ + [0xf4ec, 0xf4ec], /* Private Use */ + [0xf4ed, 0xf4ed], /* Private Use */ + [0xf4ee, 0xf4ee], /* Private Use */ + [0xf4ef, 0xf4ef], /* Private Use */ + [0xf4f0, 0xf4f0], /* Private Use */ + [0xf4f1, 0xf4f1], /* Private Use */ + [0xf4f2, 0xf4f2], /* Private Use */ + [0xf4f3, 0xf4f3], /* Private Use */ + [0xf4f4, 0xf4f4], /* Private Use */ + [0xf4f5, 0xf4f5], /* Private Use */ + [0xf4f6, 0xf4f6], /* Private Use */ + [0xf4f7, 0xf4f7], /* Private Use */ + [0xf4f8, 0xf4f8], /* Private Use */ + [0xf4f9, 0xf4f9], /* Private Use */ + [0xf4fa, 0xf4fa], /* Private Use */ + [0xf4fb, 0xf4fb], /* Private Use */ + [0xf4fc, 0xf4fc], /* Private Use */ + [0xf4fd, 0xf4fd], /* Private Use */ + [0xf4fe, 0xf4fe], /* Private Use */ + [0xf4ff, 0xf4ff], /* Private Use */ + [0xf500, 0xf500], /* Private Use */ + [0xf501, 0xf501], /* Private Use */ + [0xf502, 0xf502], /* Private Use */ + [0xf503, 0xf503], /* Private Use */ + [0xf504, 0xf504], /* Private Use */ + [0xf505, 0xf505], /* Private Use */ + [0xf506, 0xf506], /* Private Use */ + [0xf507, 0xf507], /* Private Use */ + [0xf508, 0xf508], /* Private Use */ + [0xf509, 0xf509], /* Private Use */ + [0xf50a, 0xf50a], /* Private Use */ + [0xf50b, 0xf50b], /* Private Use */ + [0xf50c, 0xf50c], /* Private Use */ + [0xf50d, 0xf50d], /* Private Use */ + [0xf50e, 0xf50e], /* Private Use */ + [0xf50f, 0xf50f], /* Private Use */ + [0xf510, 0xf510], /* Private Use */ + [0xf511, 0xf511], /* Private Use */ + [0xf512, 0xf512], /* Private Use */ + [0xf513, 0xf513], /* Private Use */ + [0xf514, 0xf514], /* Private Use */ + [0xf515, 0xf515], /* Private Use */ + [0xf516, 0xf516], /* Private Use */ + [0xf517, 0xf517], /* Private Use */ + [0xf518, 0xf518], /* Private Use */ + [0xf519, 0xf519], /* Private Use */ + [0xf51a, 0xf51a], /* Private Use */ + [0xf51b, 0xf51b], /* Private Use */ + [0xf51c, 0xf51c], /* Private Use */ + [0xf51d, 0xf51d], /* Private Use */ + [0xf51e, 0xf51e], /* Private Use */ + [0xf51f, 0xf51f], /* Private Use */ + [0xf520, 0xf520], /* Private Use */ + [0xf521, 0xf521], /* Private Use */ + [0xf522, 0xf522], /* Private Use */ + [0xf523, 0xf523], /* Private Use */ + [0xf524, 0xf524], /* Private Use */ + [0xf525, 0xf525], /* Private Use */ + [0xf526, 0xf526], /* Private Use */ + [0xf527, 0xf527], /* Private Use */ + [0xf528, 0xf528], /* Private Use */ + [0xf529, 0xf529], /* Private Use */ + [0xf52a, 0xf52a], /* Private Use */ + [0xf52b, 0xf52b], /* Private Use */ + [0xf52c, 0xf52c], /* Private Use */ + [0xf52d, 0xf52d], /* Private Use */ + [0xf52e, 0xf52e], /* Private Use */ + [0xf52f, 0xf52f], /* Private Use */ + [0xf530, 0xf530], /* Private Use */ + [0xf531, 0xf531], /* Private Use */ + [0xf532, 0xf532], /* Private Use */ + [0xf533, 0xf533], /* Private Use */ + [0xf534, 0xf534], /* Private Use */ + [0xf535, 0xf535], /* Private Use */ + [0xf536, 0xf536], /* Private Use */ + [0xf537, 0xf537], /* Private Use */ + [0xf538, 0xf538], /* Private Use */ + [0xf539, 0xf539], /* Private Use */ + [0xf53a, 0xf53a], /* Private Use */ + [0xf53b, 0xf53b], /* Private Use */ + [0xf53c, 0xf53c], /* Private Use */ + [0xf53d, 0xf53d], /* Private Use */ + [0xf53e, 0xf53e], /* Private Use */ + [0xf53f, 0xf53f], /* Private Use */ + [0xf540, 0xf540], /* Private Use */ + [0xf541, 0xf541], /* Private Use */ + [0xf542, 0xf542], /* Private Use */ + [0xf543, 0xf543], /* Private Use */ + [0xf544, 0xf544], /* Private Use */ + [0xf545, 0xf545], /* Private Use */ + [0xf546, 0xf546], /* Private Use */ + [0xf547, 0xf547], /* Private Use */ + [0xf548, 0xf548], /* Private Use */ + [0xf549, 0xf549], /* Private Use */ + [0xf54a, 0xf54a], /* Private Use */ + [0xf54b, 0xf54b], /* Private Use */ + [0xf54c, 0xf54c], /* Private Use */ + [0xf54d, 0xf54d], /* Private Use */ + [0xf54e, 0xf54e], /* Private Use */ + [0xf54f, 0xf54f], /* Private Use */ + [0xf550, 0xf550], /* Private Use */ + [0xf551, 0xf551], /* Private Use */ + [0xf552, 0xf552], /* Private Use */ + [0xf553, 0xf553], /* Private Use */ + [0xf554, 0xf554], /* Private Use */ + [0xf555, 0xf555], /* Private Use */ + [0xf556, 0xf556], /* Private Use */ + [0xf557, 0xf557], /* Private Use */ + [0xf558, 0xf558], /* Private Use */ + [0xf559, 0xf559], /* Private Use */ + [0xf55a, 0xf55a], /* Private Use */ + [0xf55b, 0xf55b], /* Private Use */ + [0xf55c, 0xf55c], /* Private Use */ + [0xf55d, 0xf55d], /* Private Use */ + [0xf55e, 0xf55e], /* Private Use */ + [0xf55f, 0xf55f], /* Private Use */ + [0xf560, 0xf560], /* Private Use */ + [0xf561, 0xf561], /* Private Use */ + [0xf562, 0xf562], /* Private Use */ + [0xf563, 0xf563], /* Private Use */ + [0xf564, 0xf564], /* Private Use */ + [0xf565, 0xf565], /* Private Use */ + [0xf566, 0xf566], /* Private Use */ + [0xf567, 0xf567], /* Private Use */ + [0xf568, 0xf568], /* Private Use */ + [0xf569, 0xf569], /* Private Use */ + [0xf56a, 0xf56a], /* Private Use */ + [0xf56b, 0xf56b], /* Private Use */ + [0xf56c, 0xf56c], /* Private Use */ + [0xf56d, 0xf56d], /* Private Use */ + [0xf56e, 0xf56e], /* Private Use */ + [0xf56f, 0xf56f], /* Private Use */ + [0xf570, 0xf570], /* Private Use */ + [0xf571, 0xf571], /* Private Use */ + [0xf572, 0xf572], /* Private Use */ + [0xf573, 0xf573], /* Private Use */ + [0xf574, 0xf574], /* Private Use */ + [0xf575, 0xf575], /* Private Use */ + [0xf576, 0xf576], /* Private Use */ + [0xf577, 0xf577], /* Private Use */ + [0xf578, 0xf578], /* Private Use */ + [0xf579, 0xf579], /* Private Use */ + [0xf57a, 0xf57a], /* Private Use */ + [0xf57b, 0xf57b], /* Private Use */ + [0xf57c, 0xf57c], /* Private Use */ + [0xf57d, 0xf57d], /* Private Use */ + [0xf57e, 0xf57e], /* Private Use */ + [0xf57f, 0xf57f], /* Private Use */ + [0xf580, 0xf580], /* Private Use */ + [0xf581, 0xf581], /* Private Use */ + [0xf582, 0xf582], /* Private Use */ + [0xf583, 0xf583], /* Private Use */ + [0xf584, 0xf584], /* Private Use */ + [0xf585, 0xf585], /* Private Use */ + [0xf586, 0xf586], /* Private Use */ + [0xf587, 0xf587], /* Private Use */ + [0xf588, 0xf588], /* Private Use */ + [0xf589, 0xf589], /* Private Use */ + [0xf58a, 0xf58a], /* Private Use */ + [0xf58b, 0xf58b], /* Private Use */ + [0xf58c, 0xf58c], /* Private Use */ + [0xf58d, 0xf58d], /* Private Use */ + [0xf58e, 0xf58e], /* Private Use */ + [0xf58f, 0xf58f], /* Private Use */ + [0xf590, 0xf590], /* Private Use */ + [0xf591, 0xf591], /* Private Use */ + [0xf592, 0xf592], /* Private Use */ + [0xf593, 0xf593], /* Private Use */ + [0xf594, 0xf594], /* Private Use */ + [0xf595, 0xf595], /* Private Use */ + [0xf596, 0xf596], /* Private Use */ + [0xf597, 0xf597], /* Private Use */ + [0xf598, 0xf598], /* Private Use */ + [0xf599, 0xf599], /* Private Use */ + [0xf59a, 0xf59a], /* Private Use */ + [0xf59b, 0xf59b], /* Private Use */ + [0xf59c, 0xf59c], /* Private Use */ + [0xf59d, 0xf59d], /* Private Use */ + [0xf59e, 0xf59e], /* Private Use */ + [0xf59f, 0xf59f], /* Private Use */ + [0xf5a0, 0xf5a0], /* Private Use */ + [0xf5a1, 0xf5a1], /* Private Use */ + [0xf5a2, 0xf5a2], /* Private Use */ + [0xf5a3, 0xf5a3], /* Private Use */ + [0xf5a4, 0xf5a4], /* Private Use */ + [0xf5a5, 0xf5a5], /* Private Use */ + [0xf5a6, 0xf5a6], /* Private Use */ + [0xf5a7, 0xf5a7], /* Private Use */ + [0xf5a8, 0xf5a8], /* Private Use */ + [0xf5a9, 0xf5a9], /* Private Use */ + [0xf5aa, 0xf5aa], /* Private Use */ + [0xf5ab, 0xf5ab], /* Private Use */ + [0xf5ac, 0xf5ac], /* Private Use */ + [0xf5ad, 0xf5ad], /* Private Use */ + [0xf5ae, 0xf5ae], /* Private Use */ + [0xf5af, 0xf5af], /* Private Use */ + [0xf5b0, 0xf5b0], /* Private Use */ + [0xf5b1, 0xf5b1], /* Private Use */ + [0xf5b2, 0xf5b2], /* Private Use */ + [0xf5b3, 0xf5b3], /* Private Use */ + [0xf5b4, 0xf5b4], /* Private Use */ + [0xf5b5, 0xf5b5], /* Private Use */ + [0xf5b6, 0xf5b6], /* Private Use */ + [0xf5b7, 0xf5b7], /* Private Use */ + [0xf5b8, 0xf5b8], /* Private Use */ + [0xf5b9, 0xf5b9], /* Private Use */ + [0xf5ba, 0xf5ba], /* Private Use */ + [0xf5bb, 0xf5bb], /* Private Use */ + [0xf5bc, 0xf5bc], /* Private Use */ + [0xf5bd, 0xf5bd], /* Private Use */ + [0xf5be, 0xf5be], /* Private Use */ + [0xf5bf, 0xf5bf], /* Private Use */ + [0xf5c0, 0xf5c0], /* Private Use */ + [0xf5c1, 0xf5c1], /* Private Use */ + [0xf5c2, 0xf5c2], /* Private Use */ + [0xf5c3, 0xf5c3], /* Private Use */ + [0xf5c4, 0xf5c4], /* Private Use */ + [0xf5c5, 0xf5c5], /* Private Use */ + [0xf5c6, 0xf5c6], /* Private Use */ + [0xf5c7, 0xf5c7], /* Private Use */ + [0xf5c8, 0xf5c8], /* Private Use */ + [0xf5c9, 0xf5c9], /* Private Use */ + [0xf5ca, 0xf5ca], /* Private Use */ + [0xf5cb, 0xf5cb], /* Private Use */ + [0xf5cc, 0xf5cc], /* Private Use */ + [0xf5cd, 0xf5cd], /* Private Use */ + [0xf5ce, 0xf5ce], /* Private Use */ + [0xf5cf, 0xf5cf], /* Private Use */ + [0xf5d0, 0xf5d0], /* Private Use */ + [0xf5d1, 0xf5d1], /* Private Use */ + [0xf5d2, 0xf5d2], /* Private Use */ + [0xf5d3, 0xf5d3], /* Private Use */ + [0xf5d4, 0xf5d4], /* Private Use */ + [0xf5d5, 0xf5d5], /* Private Use */ + [0xf5d6, 0xf5d6], /* Private Use */ + [0xf5d7, 0xf5d7], /* Private Use */ + [0xf5d8, 0xf5d8], /* Private Use */ + [0xf5d9, 0xf5d9], /* Private Use */ + [0xf5da, 0xf5da], /* Private Use */ + [0xf5db, 0xf5db], /* Private Use */ + [0xf5dc, 0xf5dc], /* Private Use */ + [0xf5dd, 0xf5dd], /* Private Use */ + [0xf5de, 0xf5de], /* Private Use */ + [0xf5df, 0xf5df], /* Private Use */ + [0xf5e0, 0xf5e0], /* Private Use */ + [0xf5e1, 0xf5e1], /* Private Use */ + [0xf5e2, 0xf5e2], /* Private Use */ + [0xf5e3, 0xf5e3], /* Private Use */ + [0xf5e4, 0xf5e4], /* Private Use */ + [0xf5e5, 0xf5e5], /* Private Use */ + [0xf5e6, 0xf5e6], /* Private Use */ + [0xf5e7, 0xf5e7], /* Private Use */ + [0xf5e8, 0xf5e8], /* Private Use */ + [0xf5e9, 0xf5e9], /* Private Use */ + [0xf5ea, 0xf5ea], /* Private Use */ + [0xf5eb, 0xf5eb], /* Private Use */ + [0xf5ec, 0xf5ec], /* Private Use */ + [0xf5ed, 0xf5ed], /* Private Use */ + [0xf5ee, 0xf5ee], /* Private Use */ + [0xf5ef, 0xf5ef], /* Private Use */ + [0xf5f0, 0xf5f0], /* Private Use */ + [0xf5f1, 0xf5f1], /* Private Use */ + [0xf5f2, 0xf5f2], /* Private Use */ + [0xf5f3, 0xf5f3], /* Private Use */ + [0xf5f4, 0xf5f4], /* Private Use */ + [0xf5f5, 0xf5f5], /* Private Use */ + [0xf5f6, 0xf5f6], /* Private Use */ + [0xf5f7, 0xf5f7], /* Private Use */ + [0xf5f8, 0xf5f8], /* Private Use */ + [0xf5f9, 0xf5f9], /* Private Use */ + [0xf5fa, 0xf5fa], /* Private Use */ + [0xf5fb, 0xf5fb], /* Private Use */ + [0xf5fc, 0xf5fc], /* Private Use */ + [0xf5fd, 0xf5fd], /* Private Use */ + [0xf5fe, 0xf5fe], /* Private Use */ + [0xf5ff, 0xf5ff], /* Private Use */ + [0xf600, 0xf600], /* Private Use */ + [0xf601, 0xf601], /* Private Use */ + [0xf602, 0xf602], /* Private Use */ + [0xf603, 0xf603], /* Private Use */ + [0xf604, 0xf604], /* Private Use */ + [0xf605, 0xf605], /* Private Use */ + [0xf606, 0xf606], /* Private Use */ + [0xf607, 0xf607], /* Private Use */ + [0xf608, 0xf608], /* Private Use */ + [0xf609, 0xf609], /* Private Use */ + [0xf60a, 0xf60a], /* Private Use */ + [0xf60b, 0xf60b], /* Private Use */ + [0xf60c, 0xf60c], /* Private Use */ + [0xf60d, 0xf60d], /* Private Use */ + [0xf60e, 0xf60e], /* Private Use */ + [0xf60f, 0xf60f], /* Private Use */ + [0xf610, 0xf610], /* Private Use */ + [0xf611, 0xf611], /* Private Use */ + [0xf612, 0xf612], /* Private Use */ + [0xf613, 0xf613], /* Private Use */ + [0xf614, 0xf614], /* Private Use */ + [0xf615, 0xf615], /* Private Use */ + [0xf616, 0xf616], /* Private Use */ + [0xf617, 0xf617], /* Private Use */ + [0xf618, 0xf618], /* Private Use */ + [0xf619, 0xf619], /* Private Use */ + [0xf61a, 0xf61a], /* Private Use */ + [0xf61b, 0xf61b], /* Private Use */ + [0xf61c, 0xf61c], /* Private Use */ + [0xf61d, 0xf61d], /* Private Use */ + [0xf61e, 0xf61e], /* Private Use */ + [0xf61f, 0xf61f], /* Private Use */ + [0xf620, 0xf620], /* Private Use */ + [0xf621, 0xf621], /* Private Use */ + [0xf622, 0xf622], /* Private Use */ + [0xf623, 0xf623], /* Private Use */ + [0xf624, 0xf624], /* Private Use */ + [0xf625, 0xf625], /* Private Use */ + [0xf626, 0xf626], /* Private Use */ + [0xf627, 0xf627], /* Private Use */ + [0xf628, 0xf628], /* Private Use */ + [0xf629, 0xf629], /* Private Use */ + [0xf62a, 0xf62a], /* Private Use */ + [0xf62b, 0xf62b], /* Private Use */ + [0xf62c, 0xf62c], /* Private Use */ + [0xf62d, 0xf62d], /* Private Use */ + [0xf62e, 0xf62e], /* Private Use */ + [0xf62f, 0xf62f], /* Private Use */ + [0xf630, 0xf630], /* Private Use */ + [0xf631, 0xf631], /* Private Use */ + [0xf632, 0xf632], /* Private Use */ + [0xf633, 0xf633], /* Private Use */ + [0xf634, 0xf634], /* Private Use */ + [0xf635, 0xf635], /* Private Use */ + [0xf636, 0xf636], /* Private Use */ + [0xf637, 0xf637], /* Private Use */ + [0xf638, 0xf638], /* Private Use */ + [0xf639, 0xf639], /* Private Use */ + [0xf63a, 0xf63a], /* Private Use */ + [0xf63b, 0xf63b], /* Private Use */ + [0xf63c, 0xf63c], /* Private Use */ + [0xf63d, 0xf63d], /* Private Use */ + [0xf63e, 0xf63e], /* Private Use */ + [0xf63f, 0xf63f], /* Private Use */ + [0xf640, 0xf640], /* Private Use */ + [0xf641, 0xf641], /* Private Use */ + [0xf642, 0xf642], /* Private Use */ + [0xf643, 0xf643], /* Private Use */ + [0xf644, 0xf644], /* Private Use */ + [0xf645, 0xf645], /* Private Use */ + [0xf646, 0xf646], /* Private Use */ + [0xf647, 0xf647], /* Private Use */ + [0xf648, 0xf648], /* Private Use */ + [0xf649, 0xf649], /* Private Use */ + [0xf64a, 0xf64a], /* Private Use */ + [0xf64b, 0xf64b], /* Private Use */ + [0xf64c, 0xf64c], /* Private Use */ + [0xf64d, 0xf64d], /* Private Use */ + [0xf64e, 0xf64e], /* Private Use */ + [0xf64f, 0xf64f], /* Private Use */ + [0xf650, 0xf650], /* Private Use */ + [0xf651, 0xf651], /* Private Use */ + [0xf652, 0xf652], /* Private Use */ + [0xf653, 0xf653], /* Private Use */ + [0xf654, 0xf654], /* Private Use */ + [0xf655, 0xf655], /* Private Use */ + [0xf656, 0xf656], /* Private Use */ + [0xf657, 0xf657], /* Private Use */ + [0xf658, 0xf658], /* Private Use */ + [0xf659, 0xf659], /* Private Use */ + [0xf65a, 0xf65a], /* Private Use */ + [0xf65b, 0xf65b], /* Private Use */ + [0xf65c, 0xf65c], /* Private Use */ + [0xf65d, 0xf65d], /* Private Use */ + [0xf65e, 0xf65e], /* Private Use */ + [0xf65f, 0xf65f], /* Private Use */ + [0xf660, 0xf660], /* Private Use */ + [0xf661, 0xf661], /* Private Use */ + [0xf662, 0xf662], /* Private Use */ + [0xf663, 0xf663], /* Private Use */ + [0xf664, 0xf664], /* Private Use */ + [0xf665, 0xf665], /* Private Use */ + [0xf666, 0xf666], /* Private Use */ + [0xf667, 0xf667], /* Private Use */ + [0xf668, 0xf668], /* Private Use */ + [0xf669, 0xf669], /* Private Use */ + [0xf66a, 0xf66a], /* Private Use */ + [0xf66b, 0xf66b], /* Private Use */ + [0xf66c, 0xf66c], /* Private Use */ + [0xf66d, 0xf66d], /* Private Use */ + [0xf66e, 0xf66e], /* Private Use */ + [0xf66f, 0xf66f], /* Private Use */ + [0xf670, 0xf670], /* Private Use */ + [0xf671, 0xf671], /* Private Use */ + [0xf672, 0xf672], /* Private Use */ + [0xf673, 0xf673], /* Private Use */ + [0xf674, 0xf674], /* Private Use */ + [0xf675, 0xf675], /* Private Use */ + [0xf676, 0xf676], /* Private Use */ + [0xf677, 0xf677], /* Private Use */ + [0xf678, 0xf678], /* Private Use */ + [0xf679, 0xf679], /* Private Use */ + [0xf67a, 0xf67a], /* Private Use */ + [0xf67b, 0xf67b], /* Private Use */ + [0xf67c, 0xf67c], /* Private Use */ + [0xf67d, 0xf67d], /* Private Use */ + [0xf67e, 0xf67e], /* Private Use */ + [0xf67f, 0xf67f], /* Private Use */ + [0xf680, 0xf680], /* Private Use */ + [0xf681, 0xf681], /* Private Use */ + [0xf682, 0xf682], /* Private Use */ + [0xf683, 0xf683], /* Private Use */ + [0xf684, 0xf684], /* Private Use */ + [0xf685, 0xf685], /* Private Use */ + [0xf686, 0xf686], /* Private Use */ + [0xf687, 0xf687], /* Private Use */ + [0xf688, 0xf688], /* Private Use */ + [0xf689, 0xf689], /* Private Use */ + [0xf68a, 0xf68a], /* Private Use */ + [0xf68b, 0xf68b], /* Private Use */ + [0xf68c, 0xf68c], /* Private Use */ + [0xf68d, 0xf68d], /* Private Use */ + [0xf68e, 0xf68e], /* Private Use */ + [0xf68f, 0xf68f], /* Private Use */ + [0xf690, 0xf690], /* Private Use */ + [0xf691, 0xf691], /* Private Use */ + [0xf692, 0xf692], /* Private Use */ + [0xf693, 0xf693], /* Private Use */ + [0xf694, 0xf694], /* Private Use */ + [0xf695, 0xf695], /* Private Use */ + [0xf696, 0xf696], /* Private Use */ + [0xf697, 0xf697], /* Private Use */ + [0xf698, 0xf698], /* Private Use */ + [0xf699, 0xf699], /* Private Use */ + [0xf69a, 0xf69a], /* Private Use */ + [0xf69b, 0xf69b], /* Private Use */ + [0xf69c, 0xf69c], /* Private Use */ + [0xf69d, 0xf69d], /* Private Use */ + [0xf69e, 0xf69e], /* Private Use */ + [0xf69f, 0xf69f], /* Private Use */ + [0xf6a0, 0xf6a0], /* Private Use */ + [0xf6a1, 0xf6a1], /* Private Use */ + [0xf6a2, 0xf6a2], /* Private Use */ + [0xf6a3, 0xf6a3], /* Private Use */ + [0xf6a4, 0xf6a4], /* Private Use */ + [0xf6a5, 0xf6a5], /* Private Use */ + [0xf6a6, 0xf6a6], /* Private Use */ + [0xf6a7, 0xf6a7], /* Private Use */ + [0xf6a8, 0xf6a8], /* Private Use */ + [0xf6a9, 0xf6a9], /* Private Use */ + [0xf6aa, 0xf6aa], /* Private Use */ + [0xf6ab, 0xf6ab], /* Private Use */ + [0xf6ac, 0xf6ac], /* Private Use */ + [0xf6ad, 0xf6ad], /* Private Use */ + [0xf6ae, 0xf6ae], /* Private Use */ + [0xf6af, 0xf6af], /* Private Use */ + [0xf6b0, 0xf6b0], /* Private Use */ + [0xf6b1, 0xf6b1], /* Private Use */ + [0xf6b2, 0xf6b2], /* Private Use */ + [0xf6b3, 0xf6b3], /* Private Use */ + [0xf6b4, 0xf6b4], /* Private Use */ + [0xf6b5, 0xf6b5], /* Private Use */ + [0xf6b6, 0xf6b6], /* Private Use */ + [0xf6b7, 0xf6b7], /* Private Use */ + [0xf6b8, 0xf6b8], /* Private Use */ + [0xf6b9, 0xf6b9], /* Private Use */ + [0xf6ba, 0xf6ba], /* Private Use */ + [0xf6bb, 0xf6bb], /* Private Use */ + [0xf6bc, 0xf6bc], /* Private Use */ + [0xf6bd, 0xf6bd], /* Private Use */ + [0xf6be, 0xf6be], /* Private Use */ + [0xf6bf, 0xf6bf], /* Private Use */ + [0xf6c0, 0xf6c0], /* Private Use */ + [0xf6c1, 0xf6c1], /* Private Use */ + [0xf6c2, 0xf6c2], /* Private Use */ + [0xf6c3, 0xf6c3], /* Private Use */ + [0xf6c4, 0xf6c4], /* Private Use */ + [0xf6c5, 0xf6c5], /* Private Use */ + [0xf6c6, 0xf6c6], /* Private Use */ + [0xf6c7, 0xf6c7], /* Private Use */ + [0xf6c8, 0xf6c8], /* Private Use */ + [0xf6c9, 0xf6c9], /* Private Use */ + [0xf6ca, 0xf6ca], /* Private Use */ + [0xf6cb, 0xf6cb], /* Private Use */ + [0xf6cc, 0xf6cc], /* Private Use */ + [0xf6cd, 0xf6cd], /* Private Use */ + [0xf6ce, 0xf6ce], /* Private Use */ + [0xf6cf, 0xf6cf], /* Private Use */ + [0xf6d0, 0xf6d0], /* Private Use */ + [0xf6d1, 0xf6d1], /* Private Use */ + [0xf6d2, 0xf6d2], /* Private Use */ + [0xf6d3, 0xf6d3], /* Private Use */ + [0xf6d4, 0xf6d4], /* Private Use */ + [0xf6d5, 0xf6d5], /* Private Use */ + [0xf6d6, 0xf6d6], /* Private Use */ + [0xf6d7, 0xf6d7], /* Private Use */ + [0xf6d8, 0xf6d8], /* Private Use */ + [0xf6d9, 0xf6d9], /* Private Use */ + [0xf6da, 0xf6da], /* Private Use */ + [0xf6db, 0xf6db], /* Private Use */ + [0xf6dc, 0xf6dc], /* Private Use */ + [0xf6dd, 0xf6dd], /* Private Use */ + [0xf6de, 0xf6de], /* Private Use */ + [0xf6df, 0xf6df], /* Private Use */ + [0xf6e0, 0xf6e0], /* Private Use */ + [0xf6e1, 0xf6e1], /* Private Use */ + [0xf6e2, 0xf6e2], /* Private Use */ + [0xf6e3, 0xf6e3], /* Private Use */ + [0xf6e4, 0xf6e4], /* Private Use */ + [0xf6e5, 0xf6e5], /* Private Use */ + [0xf6e6, 0xf6e6], /* Private Use */ + [0xf6e7, 0xf6e7], /* Private Use */ + [0xf6e8, 0xf6e8], /* Private Use */ + [0xf6e9, 0xf6e9], /* Private Use */ + [0xf6ea, 0xf6ea], /* Private Use */ + [0xf6eb, 0xf6eb], /* Private Use */ + [0xf6ec, 0xf6ec], /* Private Use */ + [0xf6ed, 0xf6ed], /* Private Use */ + [0xf6ee, 0xf6ee], /* Private Use */ + [0xf6ef, 0xf6ef], /* Private Use */ + [0xf6f0, 0xf6f0], /* Private Use */ + [0xf6f1, 0xf6f1], /* Private Use */ + [0xf6f2, 0xf6f2], /* Private Use */ + [0xf6f3, 0xf6f3], /* Private Use */ + [0xf6f4, 0xf6f4], /* Private Use */ + [0xf6f5, 0xf6f5], /* Private Use */ + [0xf6f6, 0xf6f6], /* Private Use */ + [0xf6f7, 0xf6f7], /* Private Use */ + [0xf6f8, 0xf6f8], /* Private Use */ + [0xf6f9, 0xf6f9], /* Private Use */ + [0xf6fa, 0xf6fa], /* Private Use */ + [0xf6fb, 0xf6fb], /* Private Use */ + [0xf6fc, 0xf6fc], /* Private Use */ + [0xf6fd, 0xf6fd], /* Private Use */ + [0xf6fe, 0xf6fe], /* Private Use */ + [0xf6ff, 0xf6ff], /* Private Use */ + [0xf700, 0xf700], /* Private Use */ + [0xf701, 0xf701], /* Private Use */ + [0xf702, 0xf702], /* Private Use */ + [0xf703, 0xf703], /* Private Use */ + [0xf704, 0xf704], /* Private Use */ + [0xf705, 0xf705], /* Private Use */ + [0xf706, 0xf706], /* Private Use */ + [0xf707, 0xf707], /* Private Use */ + [0xf708, 0xf708], /* Private Use */ + [0xf709, 0xf709], /* Private Use */ + [0xf70a, 0xf70a], /* Private Use */ + [0xf70b, 0xf70b], /* Private Use */ + [0xf70c, 0xf70c], /* Private Use */ + [0xf70d, 0xf70d], /* Private Use */ + [0xf70e, 0xf70e], /* Private Use */ + [0xf70f, 0xf70f], /* Private Use */ + [0xf710, 0xf710], /* Private Use */ + [0xf711, 0xf711], /* Private Use */ + [0xf712, 0xf712], /* Private Use */ + [0xf713, 0xf713], /* Private Use */ + [0xf714, 0xf714], /* Private Use */ + [0xf715, 0xf715], /* Private Use */ + [0xf716, 0xf716], /* Private Use */ + [0xf717, 0xf717], /* Private Use */ + [0xf718, 0xf718], /* Private Use */ + [0xf719, 0xf719], /* Private Use */ + [0xf71a, 0xf71a], /* Private Use */ + [0xf71b, 0xf71b], /* Private Use */ + [0xf71c, 0xf71c], /* Private Use */ + [0xf71d, 0xf71d], /* Private Use */ + [0xf71e, 0xf71e], /* Private Use */ + [0xf71f, 0xf71f], /* Private Use */ + [0xf720, 0xf720], /* Private Use */ + [0xf721, 0xf721], /* Private Use */ + [0xf722, 0xf722], /* Private Use */ + [0xf723, 0xf723], /* Private Use */ + [0xf724, 0xf724], /* Private Use */ + [0xf725, 0xf725], /* Private Use */ + [0xf726, 0xf726], /* Private Use */ + [0xf727, 0xf727], /* Private Use */ + [0xf728, 0xf728], /* Private Use */ + [0xf729, 0xf729], /* Private Use */ + [0xf72a, 0xf72a], /* Private Use */ + [0xf72b, 0xf72b], /* Private Use */ + [0xf72c, 0xf72c], /* Private Use */ + [0xf72d, 0xf72d], /* Private Use */ + [0xf72e, 0xf72e], /* Private Use */ + [0xf72f, 0xf72f], /* Private Use */ + [0xf730, 0xf730], /* Private Use */ + [0xf731, 0xf731], /* Private Use */ + [0xf732, 0xf732], /* Private Use */ + [0xf733, 0xf733], /* Private Use */ + [0xf734, 0xf734], /* Private Use */ + [0xf735, 0xf735], /* Private Use */ + [0xf736, 0xf736], /* Private Use */ + [0xf737, 0xf737], /* Private Use */ + [0xf738, 0xf738], /* Private Use */ + [0xf739, 0xf739], /* Private Use */ + [0xf73a, 0xf73a], /* Private Use */ + [0xf73b, 0xf73b], /* Private Use */ + [0xf73c, 0xf73c], /* Private Use */ + [0xf73d, 0xf73d], /* Private Use */ + [0xf73e, 0xf73e], /* Private Use */ + [0xf73f, 0xf73f], /* Private Use */ + [0xf740, 0xf740], /* Private Use */ + [0xf741, 0xf741], /* Private Use */ + [0xf742, 0xf742], /* Private Use */ + [0xf743, 0xf743], /* Private Use */ + [0xf744, 0xf744], /* Private Use */ + [0xf745, 0xf745], /* Private Use */ + [0xf746, 0xf746], /* Private Use */ + [0xf747, 0xf747], /* Private Use */ + [0xf748, 0xf748], /* Private Use */ + [0xf749, 0xf749], /* Private Use */ + [0xf74a, 0xf74a], /* Private Use */ + [0xf74b, 0xf74b], /* Private Use */ + [0xf74c, 0xf74c], /* Private Use */ + [0xf74d, 0xf74d], /* Private Use */ + [0xf74e, 0xf74e], /* Private Use */ + [0xf74f, 0xf74f], /* Private Use */ + [0xf750, 0xf750], /* Private Use */ + [0xf751, 0xf751], /* Private Use */ + [0xf752, 0xf752], /* Private Use */ + [0xf753, 0xf753], /* Private Use */ + [0xf754, 0xf754], /* Private Use */ + [0xf755, 0xf755], /* Private Use */ + [0xf756, 0xf756], /* Private Use */ + [0xf757, 0xf757], /* Private Use */ + [0xf758, 0xf758], /* Private Use */ + [0xf759, 0xf759], /* Private Use */ + [0xf75a, 0xf75a], /* Private Use */ + [0xf75b, 0xf75b], /* Private Use */ + [0xf75c, 0xf75c], /* Private Use */ + [0xf75d, 0xf75d], /* Private Use */ + [0xf75e, 0xf75e], /* Private Use */ + [0xf75f, 0xf75f], /* Private Use */ + [0xf760, 0xf760], /* Private Use */ + [0xf761, 0xf761], /* Private Use */ + [0xf762, 0xf762], /* Private Use */ + [0xf763, 0xf763], /* Private Use */ + [0xf764, 0xf764], /* Private Use */ + [0xf765, 0xf765], /* Private Use */ + [0xf766, 0xf766], /* Private Use */ + [0xf767, 0xf767], /* Private Use */ + [0xf768, 0xf768], /* Private Use */ + [0xf769, 0xf769], /* Private Use */ + [0xf76a, 0xf76a], /* Private Use */ + [0xf76b, 0xf76b], /* Private Use */ + [0xf76c, 0xf76c], /* Private Use */ + [0xf76d, 0xf76d], /* Private Use */ + [0xf76e, 0xf76e], /* Private Use */ + [0xf76f, 0xf76f], /* Private Use */ + [0xf770, 0xf770], /* Private Use */ + [0xf771, 0xf771], /* Private Use */ + [0xf772, 0xf772], /* Private Use */ + [0xf773, 0xf773], /* Private Use */ + [0xf774, 0xf774], /* Private Use */ + [0xf775, 0xf775], /* Private Use */ + [0xf776, 0xf776], /* Private Use */ + [0xf777, 0xf777], /* Private Use */ + [0xf778, 0xf778], /* Private Use */ + [0xf779, 0xf779], /* Private Use */ + [0xf77a, 0xf77a], /* Private Use */ + [0xf77b, 0xf77b], /* Private Use */ + [0xf77c, 0xf77c], /* Private Use */ + [0xf77d, 0xf77d], /* Private Use */ + [0xf77e, 0xf77e], /* Private Use */ + [0xf77f, 0xf77f], /* Private Use */ + [0xf780, 0xf780], /* Private Use */ + [0xf781, 0xf781], /* Private Use */ + [0xf782, 0xf782], /* Private Use */ + [0xf783, 0xf783], /* Private Use */ + [0xf784, 0xf784], /* Private Use */ + [0xf785, 0xf785], /* Private Use */ + [0xf786, 0xf786], /* Private Use */ + [0xf787, 0xf787], /* Private Use */ + [0xf788, 0xf788], /* Private Use */ + [0xf789, 0xf789], /* Private Use */ + [0xf78a, 0xf78a], /* Private Use */ + [0xf78b, 0xf78b], /* Private Use */ + [0xf78c, 0xf78c], /* Private Use */ + [0xf78d, 0xf78d], /* Private Use */ + [0xf78e, 0xf78e], /* Private Use */ + [0xf78f, 0xf78f], /* Private Use */ + [0xf790, 0xf790], /* Private Use */ + [0xf791, 0xf791], /* Private Use */ + [0xf792, 0xf792], /* Private Use */ + [0xf793, 0xf793], /* Private Use */ + [0xf794, 0xf794], /* Private Use */ + [0xf795, 0xf795], /* Private Use */ + [0xf796, 0xf796], /* Private Use */ + [0xf797, 0xf797], /* Private Use */ + [0xf798, 0xf798], /* Private Use */ + [0xf799, 0xf799], /* Private Use */ + [0xf79a, 0xf79a], /* Private Use */ + [0xf79b, 0xf79b], /* Private Use */ + [0xf79c, 0xf79c], /* Private Use */ + [0xf79d, 0xf79d], /* Private Use */ + [0xf79e, 0xf79e], /* Private Use */ + [0xf79f, 0xf79f], /* Private Use */ + [0xf7a0, 0xf7a0], /* Private Use */ + [0xf7a1, 0xf7a1], /* Private Use */ + [0xf7a2, 0xf7a2], /* Private Use */ + [0xf7a3, 0xf7a3], /* Private Use */ + [0xf7a4, 0xf7a4], /* Private Use */ + [0xf7a5, 0xf7a5], /* Private Use */ + [0xf7a6, 0xf7a6], /* Private Use */ + [0xf7a7, 0xf7a7], /* Private Use */ + [0xf7a8, 0xf7a8], /* Private Use */ + [0xf7a9, 0xf7a9], /* Private Use */ + [0xf7aa, 0xf7aa], /* Private Use */ + [0xf7ab, 0xf7ab], /* Private Use */ + [0xf7ac, 0xf7ac], /* Private Use */ + [0xf7ad, 0xf7ad], /* Private Use */ + [0xf7ae, 0xf7ae], /* Private Use */ + [0xf7af, 0xf7af], /* Private Use */ + [0xf7b0, 0xf7b0], /* Private Use */ + [0xf7b1, 0xf7b1], /* Private Use */ + [0xf7b2, 0xf7b2], /* Private Use */ + [0xf7b3, 0xf7b3], /* Private Use */ + [0xf7b4, 0xf7b4], /* Private Use */ + [0xf7b5, 0xf7b5], /* Private Use */ + [0xf7b6, 0xf7b6], /* Private Use */ + [0xf7b7, 0xf7b7], /* Private Use */ + [0xf7b8, 0xf7b8], /* Private Use */ + [0xf7b9, 0xf7b9], /* Private Use */ + [0xf7ba, 0xf7ba], /* Private Use */ + [0xf7bb, 0xf7bb], /* Private Use */ + [0xf7bc, 0xf7bc], /* Private Use */ + [0xf7bd, 0xf7bd], /* Private Use */ + [0xf7be, 0xf7be], /* Private Use */ + [0xf7bf, 0xf7bf], /* Private Use */ + [0xf7c0, 0xf7c0], /* Private Use */ + [0xf7c1, 0xf7c1], /* Private Use */ + [0xf7c2, 0xf7c2], /* Private Use */ + [0xf7c3, 0xf7c3], /* Private Use */ + [0xf7c4, 0xf7c4], /* Private Use */ + [0xf7c5, 0xf7c5], /* Private Use */ + [0xf7c6, 0xf7c6], /* Private Use */ + [0xf7c7, 0xf7c7], /* Private Use */ + [0xf7c8, 0xf7c8], /* Private Use */ + [0xf7c9, 0xf7c9], /* Private Use */ + [0xf7ca, 0xf7ca], /* Private Use */ + [0xf7cb, 0xf7cb], /* Private Use */ + [0xf7cc, 0xf7cc], /* Private Use */ + [0xf7cd, 0xf7cd], /* Private Use */ + [0xf7ce, 0xf7ce], /* Private Use */ + [0xf7cf, 0xf7cf], /* Private Use */ + [0xf7d0, 0xf7d0], /* Private Use */ + [0xf7d1, 0xf7d1], /* Private Use */ + [0xf7d2, 0xf7d2], /* Private Use */ + [0xf7d3, 0xf7d3], /* Private Use */ + [0xf7d4, 0xf7d4], /* Private Use */ + [0xf7d5, 0xf7d5], /* Private Use */ + [0xf7d6, 0xf7d6], /* Private Use */ + [0xf7d7, 0xf7d7], /* Private Use */ + [0xf7d8, 0xf7d8], /* Private Use */ + [0xf7d9, 0xf7d9], /* Private Use */ + [0xf7da, 0xf7da], /* Private Use */ + [0xf7db, 0xf7db], /* Private Use */ + [0xf7dc, 0xf7dc], /* Private Use */ + [0xf7dd, 0xf7dd], /* Private Use */ + [0xf7de, 0xf7de], /* Private Use */ + [0xf7df, 0xf7df], /* Private Use */ + [0xf7e0, 0xf7e0], /* Private Use */ + [0xf7e1, 0xf7e1], /* Private Use */ + [0xf7e2, 0xf7e2], /* Private Use */ + [0xf7e3, 0xf7e3], /* Private Use */ + [0xf7e4, 0xf7e4], /* Private Use */ + [0xf7e5, 0xf7e5], /* Private Use */ + [0xf7e6, 0xf7e6], /* Private Use */ + [0xf7e7, 0xf7e7], /* Private Use */ + [0xf7e8, 0xf7e8], /* Private Use */ + [0xf7e9, 0xf7e9], /* Private Use */ + [0xf7ea, 0xf7ea], /* Private Use */ + [0xf7eb, 0xf7eb], /* Private Use */ + [0xf7ec, 0xf7ec], /* Private Use */ + [0xf7ed, 0xf7ed], /* Private Use */ + [0xf7ee, 0xf7ee], /* Private Use */ + [0xf7ef, 0xf7ef], /* Private Use */ + [0xf7f0, 0xf7f0], /* Private Use */ + [0xf7f1, 0xf7f1], /* Private Use */ + [0xf7f2, 0xf7f2], /* Private Use */ + [0xf7f3, 0xf7f3], /* Private Use */ + [0xf7f4, 0xf7f4], /* Private Use */ + [0xf7f5, 0xf7f5], /* Private Use */ + [0xf7f6, 0xf7f6], /* Private Use */ + [0xf7f7, 0xf7f7], /* Private Use */ + [0xf7f8, 0xf7f8], /* Private Use */ + [0xf7f9, 0xf7f9], /* Private Use */ + [0xf7fa, 0xf7fa], /* Private Use */ + [0xf7fb, 0xf7fb], /* Private Use */ + [0xf7fc, 0xf7fc], /* Private Use */ + [0xf7fd, 0xf7fd], /* Private Use */ + [0xf7fe, 0xf7fe], /* Private Use */ + [0xf7ff, 0xf7ff], /* Private Use */ + [0xf800, 0xf800], /* Private Use */ + [0xf801, 0xf801], /* Private Use */ + [0xf802, 0xf802], /* Private Use */ + [0xf803, 0xf803], /* Private Use */ + [0xf804, 0xf804], /* Private Use */ + [0xf805, 0xf805], /* Private Use */ + [0xf806, 0xf806], /* Private Use */ + [0xf807, 0xf807], /* Private Use */ + [0xf808, 0xf808], /* Private Use */ + [0xf809, 0xf809], /* Private Use */ + [0xf80a, 0xf80a], /* Private Use */ + [0xf80b, 0xf80b], /* Private Use */ + [0xf80c, 0xf80c], /* Private Use */ + [0xf80d, 0xf80d], /* Private Use */ + [0xf80e, 0xf80e], /* Private Use */ + [0xf80f, 0xf80f], /* Private Use */ + [0xf810, 0xf810], /* Private Use */ + [0xf811, 0xf811], /* Private Use */ + [0xf812, 0xf812], /* Private Use */ + [0xf813, 0xf813], /* Private Use */ + [0xf814, 0xf814], /* Private Use */ + [0xf815, 0xf815], /* Private Use */ + [0xf816, 0xf816], /* Private Use */ + [0xf817, 0xf817], /* Private Use */ + [0xf818, 0xf818], /* Private Use */ + [0xf819, 0xf819], /* Private Use */ + [0xf81a, 0xf81a], /* Private Use */ + [0xf81b, 0xf81b], /* Private Use */ + [0xf81c, 0xf81c], /* Private Use */ + [0xf81d, 0xf81d], /* Private Use */ + [0xf81e, 0xf81e], /* Private Use */ + [0xf81f, 0xf81f], /* Private Use */ + [0xf820, 0xf820], /* Private Use */ + [0xf821, 0xf821], /* Private Use */ + [0xf822, 0xf822], /* Private Use */ + [0xf823, 0xf823], /* Private Use */ + [0xf824, 0xf824], /* Private Use */ + [0xf825, 0xf825], /* Private Use */ + [0xf826, 0xf826], /* Private Use */ + [0xf827, 0xf827], /* Private Use */ + [0xf828, 0xf828], /* Private Use */ + [0xf829, 0xf829], /* Private Use */ + [0xf82a, 0xf82a], /* Private Use */ + [0xf82b, 0xf82b], /* Private Use */ + [0xf82c, 0xf82c], /* Private Use */ + [0xf82d, 0xf82d], /* Private Use */ + [0xf82e, 0xf82e], /* Private Use */ + [0xf82f, 0xf82f], /* Private Use */ + [0xf830, 0xf830], /* Private Use */ + [0xf831, 0xf831], /* Private Use */ + [0xf832, 0xf832], /* Private Use */ + [0xf833, 0xf833], /* Private Use */ + [0xf834, 0xf834], /* Private Use */ + [0xf835, 0xf835], /* Private Use */ + [0xf836, 0xf836], /* Private Use */ + [0xf837, 0xf837], /* Private Use */ + [0xf838, 0xf838], /* Private Use */ + [0xf839, 0xf839], /* Private Use */ + [0xf83a, 0xf83a], /* Private Use */ + [0xf83b, 0xf83b], /* Private Use */ + [0xf83c, 0xf83c], /* Private Use */ + [0xf83d, 0xf83d], /* Private Use */ + [0xf83e, 0xf83e], /* Private Use */ + [0xf83f, 0xf83f], /* Private Use */ + [0xf840, 0xf840], /* Private Use */ + [0xf841, 0xf841], /* Private Use */ + [0xf842, 0xf842], /* Private Use */ + [0xf843, 0xf843], /* Private Use */ + [0xf844, 0xf844], /* Private Use */ + [0xf845, 0xf845], /* Private Use */ + [0xf846, 0xf846], /* Private Use */ + [0xf847, 0xf847], /* Private Use */ + [0xf848, 0xf848], /* Private Use */ + [0xf849, 0xf849], /* Private Use */ + [0xf84a, 0xf84a], /* Private Use */ + [0xf84b, 0xf84b], /* Private Use */ + [0xf84c, 0xf84c], /* Private Use */ + [0xf84d, 0xf84d], /* Private Use */ + [0xf84e, 0xf84e], /* Private Use */ + [0xf84f, 0xf84f], /* Private Use */ + [0xf850, 0xf850], /* Private Use */ + [0xf851, 0xf851], /* Private Use */ + [0xf852, 0xf852], /* Private Use */ + [0xf853, 0xf853], /* Private Use */ + [0xf854, 0xf854], /* Private Use */ + [0xf855, 0xf855], /* Private Use */ + [0xf856, 0xf856], /* Private Use */ + [0xf857, 0xf857], /* Private Use */ + [0xf858, 0xf858], /* Private Use */ + [0xf859, 0xf859], /* Private Use */ + [0xf85a, 0xf85a], /* Private Use */ + [0xf85b, 0xf85b], /* Private Use */ + [0xf85c, 0xf85c], /* Private Use */ + [0xf85d, 0xf85d], /* Private Use */ + [0xf85e, 0xf85e], /* Private Use */ + [0xf85f, 0xf85f], /* Private Use */ + [0xf860, 0xf860], /* Private Use */ + [0xf861, 0xf861], /* Private Use */ + [0xf862, 0xf862], /* Private Use */ + [0xf863, 0xf863], /* Private Use */ + [0xf864, 0xf864], /* Private Use */ + [0xf865, 0xf865], /* Private Use */ + [0xf866, 0xf866], /* Private Use */ + [0xf867, 0xf867], /* Private Use */ + [0xf868, 0xf868], /* Private Use */ + [0xf869, 0xf869], /* Private Use */ + [0xf86a, 0xf86a], /* Private Use */ + [0xf86b, 0xf86b], /* Private Use */ + [0xf86c, 0xf86c], /* Private Use */ + [0xf86d, 0xf86d], /* Private Use */ + [0xf86e, 0xf86e], /* Private Use */ + [0xf86f, 0xf86f], /* Private Use */ + [0xf870, 0xf870], /* Private Use */ + [0xf871, 0xf871], /* Private Use */ + [0xf872, 0xf872], /* Private Use */ + [0xf873, 0xf873], /* Private Use */ + [0xf874, 0xf874], /* Private Use */ + [0xf875, 0xf875], /* Private Use */ + [0xf876, 0xf876], /* Private Use */ + [0xf877, 0xf877], /* Private Use */ + [0xf878, 0xf878], /* Private Use */ + [0xf879, 0xf879], /* Private Use */ + [0xf87a, 0xf87a], /* Private Use */ + [0xf87b, 0xf87b], /* Private Use */ + [0xf87c, 0xf87c], /* Private Use */ + [0xf87d, 0xf87d], /* Private Use */ + [0xf87e, 0xf87e], /* Private Use */ + [0xf87f, 0xf87f], /* Private Use */ + [0xf880, 0xf880], /* Private Use */ + [0xf881, 0xf881], /* Private Use */ + [0xf882, 0xf882], /* Private Use */ + [0xf883, 0xf883], /* Private Use */ + [0xf884, 0xf884], /* Private Use */ + [0xf885, 0xf885], /* Private Use */ + [0xf886, 0xf886], /* Private Use */ + [0xf887, 0xf887], /* Private Use */ + [0xf888, 0xf888], /* Private Use */ + [0xf889, 0xf889], /* Private Use */ + [0xf88a, 0xf88a], /* Private Use */ + [0xf88b, 0xf88b], /* Private Use */ + [0xf88c, 0xf88c], /* Private Use */ + [0xf88d, 0xf88d], /* Private Use */ + [0xf88e, 0xf88e], /* Private Use */ + [0xf88f, 0xf88f], /* Private Use */ + [0xf890, 0xf890], /* Private Use */ + [0xf891, 0xf891], /* Private Use */ + [0xf892, 0xf892], /* Private Use */ + [0xf893, 0xf893], /* Private Use */ + [0xf894, 0xf894], /* Private Use */ + [0xf895, 0xf895], /* Private Use */ + [0xf896, 0xf896], /* Private Use */ + [0xf897, 0xf897], /* Private Use */ + [0xf898, 0xf898], /* Private Use */ + [0xf899, 0xf899], /* Private Use */ + [0xf89a, 0xf89a], /* Private Use */ + [0xf89b, 0xf89b], /* Private Use */ + [0xf89c, 0xf89c], /* Private Use */ + [0xf89d, 0xf89d], /* Private Use */ + [0xf89e, 0xf89e], /* Private Use */ + [0xf89f, 0xf89f], /* Private Use */ + [0xf8a0, 0xf8a0], /* Private Use */ + [0xf8a1, 0xf8a1], /* Private Use */ + [0xf8a2, 0xf8a2], /* Private Use */ + [0xf8a3, 0xf8a3], /* Private Use */ + [0xf8a4, 0xf8a4], /* Private Use */ + [0xf8a5, 0xf8a5], /* Private Use */ + [0xf8a6, 0xf8a6], /* Private Use */ + [0xf8a7, 0xf8a7], /* Private Use */ + [0xf8a8, 0xf8a8], /* Private Use */ + [0xf8a9, 0xf8a9], /* Private Use */ + [0xf8aa, 0xf8aa], /* Private Use */ + [0xf8ab, 0xf8ab], /* Private Use */ + [0xf8ac, 0xf8ac], /* Private Use */ + [0xf8ad, 0xf8ad], /* Private Use */ + [0xf8ae, 0xf8ae], /* Private Use */ + [0xf8af, 0xf8af], /* Private Use */ + [0xf8b0, 0xf8b0], /* Private Use */ + [0xf8b1, 0xf8b1], /* Private Use */ + [0xf8b2, 0xf8b2], /* Private Use */ + [0xf8b3, 0xf8b3], /* Private Use */ + [0xf8b4, 0xf8b4], /* Private Use */ + [0xf8b5, 0xf8b5], /* Private Use */ + [0xf8b6, 0xf8b6], /* Private Use */ + [0xf8b7, 0xf8b7], /* Private Use */ + [0xf8b8, 0xf8b8], /* Private Use */ + [0xf8b9, 0xf8b9], /* Private Use */ + [0xf8ba, 0xf8ba], /* Private Use */ + [0xf8bb, 0xf8bb], /* Private Use */ + [0xf8bc, 0xf8bc], /* Private Use */ + [0xf8bd, 0xf8bd], /* Private Use */ + [0xf8be, 0xf8be], /* Private Use */ + [0xf8bf, 0xf8bf], /* Private Use */ + [0xf8c0, 0xf8c0], /* Private Use */ + [0xf8c1, 0xf8c1], /* Private Use */ + [0xf8c2, 0xf8c2], /* Private Use */ + [0xf8c3, 0xf8c3], /* Private Use */ + [0xf8c4, 0xf8c4], /* Private Use */ + [0xf8c5, 0xf8c5], /* Private Use */ + [0xf8c6, 0xf8c6], /* Private Use */ + [0xf8c7, 0xf8c7], /* Private Use */ + [0xf8c8, 0xf8c8], /* Private Use */ + [0xf8c9, 0xf8c9], /* Private Use */ + [0xf8ca, 0xf8ca], /* Private Use */ + [0xf8cb, 0xf8cb], /* Private Use */ + [0xf8cc, 0xf8cc], /* Private Use */ + [0xf8cd, 0xf8cd], /* Private Use */ + [0xf8ce, 0xf8ce], /* Private Use */ + [0xf8cf, 0xf8cf], /* Private Use */ + [0xf8d0, 0xf8d0], /* Private Use */ + [0xf8d1, 0xf8d1], /* Private Use */ + [0xf8d2, 0xf8d2], /* Private Use */ + [0xf8d3, 0xf8d3], /* Private Use */ + [0xf8d4, 0xf8d4], /* Private Use */ + [0xf8d5, 0xf8d5], /* Private Use */ + [0xf8d6, 0xf8d6], /* Private Use */ + [0xf8d7, 0xf8d7], /* Private Use */ + [0xf8d8, 0xf8d8], /* Private Use */ + [0xf8d9, 0xf8d9], /* Private Use */ + [0xf8da, 0xf8da], /* Private Use */ + [0xf8db, 0xf8db], /* Private Use */ + [0xf8dc, 0xf8dc], /* Private Use */ + [0xf8dd, 0xf8dd], /* Private Use */ + [0xf8de, 0xf8de], /* Private Use */ + [0xf8df, 0xf8df], /* Private Use */ + [0xf8e0, 0xf8e0], /* Private Use */ + [0xf8e1, 0xf8e1], /* Private Use */ + [0xf8e2, 0xf8e2], /* Private Use */ + [0xf8e3, 0xf8e3], /* Private Use */ + [0xf8e4, 0xf8e4], /* Private Use */ + [0xf8e5, 0xf8e5], /* Private Use */ + [0xf8e6, 0xf8e6], /* Private Use */ + [0xf8e7, 0xf8e7], /* Private Use */ + [0xf8e8, 0xf8e8], /* Private Use */ + [0xf8e9, 0xf8e9], /* Private Use */ + [0xf8ea, 0xf8ea], /* Private Use */ + [0xf8eb, 0xf8eb], /* Private Use */ + [0xf8ec, 0xf8ec], /* Private Use */ + [0xf8ed, 0xf8ed], /* Private Use */ + [0xf8ee, 0xf8ee], /* Private Use */ + [0xf8ef, 0xf8ef], /* Private Use */ + [0xf8f0, 0xf8f0], /* Private Use */ + [0xf8f1, 0xf8f1], /* Private Use */ + [0xf8f2, 0xf8f2], /* Private Use */ + [0xf8f3, 0xf8f3], /* Private Use */ + [0xf8f4, 0xf8f4], /* Private Use */ + [0xf8f5, 0xf8f5], /* Private Use */ + [0xf8f6, 0xf8f6], /* Private Use */ + [0xf8f7, 0xf8f7], /* Private Use */ + [0xf8f8, 0xf8f8], /* Private Use */ + [0xf8f9, 0xf8f9], /* Private Use */ + [0xf8fa, 0xf8fa], /* Private Use */ + [0xf8fb, 0xf8fb], /* Private Use */ + [0xf8fc, 0xf8fc], /* Private Use */ + [0xf8fd, 0xf8fd], /* Private Use */ + [0xf8fe, 0xf8fe], /* Private Use */ + [0xf8ff, 0xf8ff], /* Private Use */ + [0xf900, 0xf900], /* CJK COMPATIBILITY IDEOGRAPH-F900 */ + [0xf901, 0xf901], /* CJK COMPATIBILITY IDEOGRAPH-F901 */ + [0xf902, 0xf902], /* CJK COMPATIBILITY IDEOGRAPH-F902 */ + [0xf903, 0xf903], /* CJK COMPATIBILITY IDEOGRAPH-F903 */ + [0xf904, 0xf904], /* CJK COMPATIBILITY IDEOGRAPH-F904 */ + [0xf905, 0xf905], /* CJK COMPATIBILITY IDEOGRAPH-F905 */ + [0xf906, 0xf906], /* CJK COMPATIBILITY IDEOGRAPH-F906 */ + [0xf907, 0xf907], /* CJK COMPATIBILITY IDEOGRAPH-F907 */ + [0xf908, 0xf908], /* CJK COMPATIBILITY IDEOGRAPH-F908 */ + [0xf909, 0xf909], /* CJK COMPATIBILITY IDEOGRAPH-F909 */ + [0xf90a, 0xf90a], /* CJK COMPATIBILITY IDEOGRAPH-F90A */ + [0xf90b, 0xf90b], /* CJK COMPATIBILITY IDEOGRAPH-F90B */ + [0xf90c, 0xf90c], /* CJK COMPATIBILITY IDEOGRAPH-F90C */ + [0xf90d, 0xf90d], /* CJK COMPATIBILITY IDEOGRAPH-F90D */ + [0xf90e, 0xf90e], /* CJK COMPATIBILITY IDEOGRAPH-F90E */ + [0xf90f, 0xf90f], /* CJK COMPATIBILITY IDEOGRAPH-F90F */ + [0xf910, 0xf910], /* CJK COMPATIBILITY IDEOGRAPH-F910 */ + [0xf911, 0xf911], /* CJK COMPATIBILITY IDEOGRAPH-F911 */ + [0xf912, 0xf912], /* CJK COMPATIBILITY IDEOGRAPH-F912 */ + [0xf913, 0xf913], /* CJK COMPATIBILITY IDEOGRAPH-F913 */ + [0xf914, 0xf914], /* CJK COMPATIBILITY IDEOGRAPH-F914 */ + [0xf915, 0xf915], /* CJK COMPATIBILITY IDEOGRAPH-F915 */ + [0xf916, 0xf916], /* CJK COMPATIBILITY IDEOGRAPH-F916 */ + [0xf917, 0xf917], /* CJK COMPATIBILITY IDEOGRAPH-F917 */ + [0xf918, 0xf918], /* CJK COMPATIBILITY IDEOGRAPH-F918 */ + [0xf919, 0xf919], /* CJK COMPATIBILITY IDEOGRAPH-F919 */ + [0xf91a, 0xf91a], /* CJK COMPATIBILITY IDEOGRAPH-F91A */ + [0xf91b, 0xf91b], /* CJK COMPATIBILITY IDEOGRAPH-F91B */ + [0xf91c, 0xf91c], /* CJK COMPATIBILITY IDEOGRAPH-F91C */ + [0xf91d, 0xf91d], /* CJK COMPATIBILITY IDEOGRAPH-F91D */ + [0xf91e, 0xf91e], /* CJK COMPATIBILITY IDEOGRAPH-F91E */ + [0xf91f, 0xf91f], /* CJK COMPATIBILITY IDEOGRAPH-F91F */ + [0xf920, 0xf920], /* CJK COMPATIBILITY IDEOGRAPH-F920 */ + [0xf921, 0xf921], /* CJK COMPATIBILITY IDEOGRAPH-F921 */ + [0xf922, 0xf922], /* CJK COMPATIBILITY IDEOGRAPH-F922 */ + [0xf923, 0xf923], /* CJK COMPATIBILITY IDEOGRAPH-F923 */ + [0xf924, 0xf924], /* CJK COMPATIBILITY IDEOGRAPH-F924 */ + [0xf925, 0xf925], /* CJK COMPATIBILITY IDEOGRAPH-F925 */ + [0xf926, 0xf926], /* CJK COMPATIBILITY IDEOGRAPH-F926 */ + [0xf927, 0xf927], /* CJK COMPATIBILITY IDEOGRAPH-F927 */ + [0xf928, 0xf928], /* CJK COMPATIBILITY IDEOGRAPH-F928 */ + [0xf929, 0xf929], /* CJK COMPATIBILITY IDEOGRAPH-F929 */ + [0xf92a, 0xf92a], /* CJK COMPATIBILITY IDEOGRAPH-F92A */ + [0xf92b, 0xf92b], /* CJK COMPATIBILITY IDEOGRAPH-F92B */ + [0xf92c, 0xf92c], /* CJK COMPATIBILITY IDEOGRAPH-F92C */ + [0xf92d, 0xf92d], /* CJK COMPATIBILITY IDEOGRAPH-F92D */ + [0xf92e, 0xf92e], /* CJK COMPATIBILITY IDEOGRAPH-F92E */ + [0xf92f, 0xf92f], /* CJK COMPATIBILITY IDEOGRAPH-F92F */ + [0xf930, 0xf930], /* CJK COMPATIBILITY IDEOGRAPH-F930 */ + [0xf931, 0xf931], /* CJK COMPATIBILITY IDEOGRAPH-F931 */ + [0xf932, 0xf932], /* CJK COMPATIBILITY IDEOGRAPH-F932 */ + [0xf933, 0xf933], /* CJK COMPATIBILITY IDEOGRAPH-F933 */ + [0xf934, 0xf934], /* CJK COMPATIBILITY IDEOGRAPH-F934 */ + [0xf935, 0xf935], /* CJK COMPATIBILITY IDEOGRAPH-F935 */ + [0xf936, 0xf936], /* CJK COMPATIBILITY IDEOGRAPH-F936 */ + [0xf937, 0xf937], /* CJK COMPATIBILITY IDEOGRAPH-F937 */ + [0xf938, 0xf938], /* CJK COMPATIBILITY IDEOGRAPH-F938 */ + [0xf939, 0xf939], /* CJK COMPATIBILITY IDEOGRAPH-F939 */ + [0xf93a, 0xf93a], /* CJK COMPATIBILITY IDEOGRAPH-F93A */ + [0xf93b, 0xf93b], /* CJK COMPATIBILITY IDEOGRAPH-F93B */ + [0xf93c, 0xf93c], /* CJK COMPATIBILITY IDEOGRAPH-F93C */ + [0xf93d, 0xf93d], /* CJK COMPATIBILITY IDEOGRAPH-F93D */ + [0xf93e, 0xf93e], /* CJK COMPATIBILITY IDEOGRAPH-F93E */ + [0xf93f, 0xf93f], /* CJK COMPATIBILITY IDEOGRAPH-F93F */ + [0xf940, 0xf940], /* CJK COMPATIBILITY IDEOGRAPH-F940 */ + [0xf941, 0xf941], /* CJK COMPATIBILITY IDEOGRAPH-F941 */ + [0xf942, 0xf942], /* CJK COMPATIBILITY IDEOGRAPH-F942 */ + [0xf943, 0xf943], /* CJK COMPATIBILITY IDEOGRAPH-F943 */ + [0xf944, 0xf944], /* CJK COMPATIBILITY IDEOGRAPH-F944 */ + [0xf945, 0xf945], /* CJK COMPATIBILITY IDEOGRAPH-F945 */ + [0xf946, 0xf946], /* CJK COMPATIBILITY IDEOGRAPH-F946 */ + [0xf947, 0xf947], /* CJK COMPATIBILITY IDEOGRAPH-F947 */ + [0xf948, 0xf948], /* CJK COMPATIBILITY IDEOGRAPH-F948 */ + [0xf949, 0xf949], /* CJK COMPATIBILITY IDEOGRAPH-F949 */ + [0xf94a, 0xf94a], /* CJK COMPATIBILITY IDEOGRAPH-F94A */ + [0xf94b, 0xf94b], /* CJK COMPATIBILITY IDEOGRAPH-F94B */ + [0xf94c, 0xf94c], /* CJK COMPATIBILITY IDEOGRAPH-F94C */ + [0xf94d, 0xf94d], /* CJK COMPATIBILITY IDEOGRAPH-F94D */ + [0xf94e, 0xf94e], /* CJK COMPATIBILITY IDEOGRAPH-F94E */ + [0xf94f, 0xf94f], /* CJK COMPATIBILITY IDEOGRAPH-F94F */ + [0xf950, 0xf950], /* CJK COMPATIBILITY IDEOGRAPH-F950 */ + [0xf951, 0xf951], /* CJK COMPATIBILITY IDEOGRAPH-F951 */ + [0xf952, 0xf952], /* CJK COMPATIBILITY IDEOGRAPH-F952 */ + [0xf953, 0xf953], /* CJK COMPATIBILITY IDEOGRAPH-F953 */ + [0xf954, 0xf954], /* CJK COMPATIBILITY IDEOGRAPH-F954 */ + [0xf955, 0xf955], /* CJK COMPATIBILITY IDEOGRAPH-F955 */ + [0xf956, 0xf956], /* CJK COMPATIBILITY IDEOGRAPH-F956 */ + [0xf957, 0xf957], /* CJK COMPATIBILITY IDEOGRAPH-F957 */ + [0xf958, 0xf958], /* CJK COMPATIBILITY IDEOGRAPH-F958 */ + [0xf959, 0xf959], /* CJK COMPATIBILITY IDEOGRAPH-F959 */ + [0xf95a, 0xf95a], /* CJK COMPATIBILITY IDEOGRAPH-F95A */ + [0xf95b, 0xf95b], /* CJK COMPATIBILITY IDEOGRAPH-F95B */ + [0xf95c, 0xf95c], /* CJK COMPATIBILITY IDEOGRAPH-F95C */ + [0xf95d, 0xf95d], /* CJK COMPATIBILITY IDEOGRAPH-F95D */ + [0xf95e, 0xf95e], /* CJK COMPATIBILITY IDEOGRAPH-F95E */ + [0xf95f, 0xf95f], /* CJK COMPATIBILITY IDEOGRAPH-F95F */ + [0xf960, 0xf960], /* CJK COMPATIBILITY IDEOGRAPH-F960 */ + [0xf961, 0xf961], /* CJK COMPATIBILITY IDEOGRAPH-F961 */ + [0xf962, 0xf962], /* CJK COMPATIBILITY IDEOGRAPH-F962 */ + [0xf963, 0xf963], /* CJK COMPATIBILITY IDEOGRAPH-F963 */ + [0xf964, 0xf964], /* CJK COMPATIBILITY IDEOGRAPH-F964 */ + [0xf965, 0xf965], /* CJK COMPATIBILITY IDEOGRAPH-F965 */ + [0xf966, 0xf966], /* CJK COMPATIBILITY IDEOGRAPH-F966 */ + [0xf967, 0xf967], /* CJK COMPATIBILITY IDEOGRAPH-F967 */ + [0xf968, 0xf968], /* CJK COMPATIBILITY IDEOGRAPH-F968 */ + [0xf969, 0xf969], /* CJK COMPATIBILITY IDEOGRAPH-F969 */ + [0xf96a, 0xf96a], /* CJK COMPATIBILITY IDEOGRAPH-F96A */ + [0xf96b, 0xf96b], /* CJK COMPATIBILITY IDEOGRAPH-F96B */ + [0xf96c, 0xf96c], /* CJK COMPATIBILITY IDEOGRAPH-F96C */ + [0xf96d, 0xf96d], /* CJK COMPATIBILITY IDEOGRAPH-F96D */ + [0xf96e, 0xf96e], /* CJK COMPATIBILITY IDEOGRAPH-F96E */ + [0xf96f, 0xf96f], /* CJK COMPATIBILITY IDEOGRAPH-F96F */ + [0xf970, 0xf970], /* CJK COMPATIBILITY IDEOGRAPH-F970 */ + [0xf971, 0xf971], /* CJK COMPATIBILITY IDEOGRAPH-F971 */ + [0xf972, 0xf972], /* CJK COMPATIBILITY IDEOGRAPH-F972 */ + [0xf973, 0xf973], /* CJK COMPATIBILITY IDEOGRAPH-F973 */ + [0xf974, 0xf974], /* CJK COMPATIBILITY IDEOGRAPH-F974 */ + [0xf975, 0xf975], /* CJK COMPATIBILITY IDEOGRAPH-F975 */ + [0xf976, 0xf976], /* CJK COMPATIBILITY IDEOGRAPH-F976 */ + [0xf977, 0xf977], /* CJK COMPATIBILITY IDEOGRAPH-F977 */ + [0xf978, 0xf978], /* CJK COMPATIBILITY IDEOGRAPH-F978 */ + [0xf979, 0xf979], /* CJK COMPATIBILITY IDEOGRAPH-F979 */ + [0xf97a, 0xf97a], /* CJK COMPATIBILITY IDEOGRAPH-F97A */ + [0xf97b, 0xf97b], /* CJK COMPATIBILITY IDEOGRAPH-F97B */ + [0xf97c, 0xf97c], /* CJK COMPATIBILITY IDEOGRAPH-F97C */ + [0xf97d, 0xf97d], /* CJK COMPATIBILITY IDEOGRAPH-F97D */ + [0xf97e, 0xf97e], /* CJK COMPATIBILITY IDEOGRAPH-F97E */ + [0xf97f, 0xf97f], /* CJK COMPATIBILITY IDEOGRAPH-F97F */ + [0xf980, 0xf980], /* CJK COMPATIBILITY IDEOGRAPH-F980 */ + [0xf981, 0xf981], /* CJK COMPATIBILITY IDEOGRAPH-F981 */ + [0xf982, 0xf982], /* CJK COMPATIBILITY IDEOGRAPH-F982 */ + [0xf983, 0xf983], /* CJK COMPATIBILITY IDEOGRAPH-F983 */ + [0xf984, 0xf984], /* CJK COMPATIBILITY IDEOGRAPH-F984 */ + [0xf985, 0xf985], /* CJK COMPATIBILITY IDEOGRAPH-F985 */ + [0xf986, 0xf986], /* CJK COMPATIBILITY IDEOGRAPH-F986 */ + [0xf987, 0xf987], /* CJK COMPATIBILITY IDEOGRAPH-F987 */ + [0xf988, 0xf988], /* CJK COMPATIBILITY IDEOGRAPH-F988 */ + [0xf989, 0xf989], /* CJK COMPATIBILITY IDEOGRAPH-F989 */ + [0xf98a, 0xf98a], /* CJK COMPATIBILITY IDEOGRAPH-F98A */ + [0xf98b, 0xf98b], /* CJK COMPATIBILITY IDEOGRAPH-F98B */ + [0xf98c, 0xf98c], /* CJK COMPATIBILITY IDEOGRAPH-F98C */ + [0xf98d, 0xf98d], /* CJK COMPATIBILITY IDEOGRAPH-F98D */ + [0xf98e, 0xf98e], /* CJK COMPATIBILITY IDEOGRAPH-F98E */ + [0xf98f, 0xf98f], /* CJK COMPATIBILITY IDEOGRAPH-F98F */ + [0xf990, 0xf990], /* CJK COMPATIBILITY IDEOGRAPH-F990 */ + [0xf991, 0xf991], /* CJK COMPATIBILITY IDEOGRAPH-F991 */ + [0xf992, 0xf992], /* CJK COMPATIBILITY IDEOGRAPH-F992 */ + [0xf993, 0xf993], /* CJK COMPATIBILITY IDEOGRAPH-F993 */ + [0xf994, 0xf994], /* CJK COMPATIBILITY IDEOGRAPH-F994 */ + [0xf995, 0xf995], /* CJK COMPATIBILITY IDEOGRAPH-F995 */ + [0xf996, 0xf996], /* CJK COMPATIBILITY IDEOGRAPH-F996 */ + [0xf997, 0xf997], /* CJK COMPATIBILITY IDEOGRAPH-F997 */ + [0xf998, 0xf998], /* CJK COMPATIBILITY IDEOGRAPH-F998 */ + [0xf999, 0xf999], /* CJK COMPATIBILITY IDEOGRAPH-F999 */ + [0xf99a, 0xf99a], /* CJK COMPATIBILITY IDEOGRAPH-F99A */ + [0xf99b, 0xf99b], /* CJK COMPATIBILITY IDEOGRAPH-F99B */ + [0xf99c, 0xf99c], /* CJK COMPATIBILITY IDEOGRAPH-F99C */ + [0xf99d, 0xf99d], /* CJK COMPATIBILITY IDEOGRAPH-F99D */ + [0xf99e, 0xf99e], /* CJK COMPATIBILITY IDEOGRAPH-F99E */ + [0xf99f, 0xf99f], /* CJK COMPATIBILITY IDEOGRAPH-F99F */ + [0xf9a0, 0xf9a0], /* CJK COMPATIBILITY IDEOGRAPH-F9A0 */ + [0xf9a1, 0xf9a1], /* CJK COMPATIBILITY IDEOGRAPH-F9A1 */ + [0xf9a2, 0xf9a2], /* CJK COMPATIBILITY IDEOGRAPH-F9A2 */ + [0xf9a3, 0xf9a3], /* CJK COMPATIBILITY IDEOGRAPH-F9A3 */ + [0xf9a4, 0xf9a4], /* CJK COMPATIBILITY IDEOGRAPH-F9A4 */ + [0xf9a5, 0xf9a5], /* CJK COMPATIBILITY IDEOGRAPH-F9A5 */ + [0xf9a6, 0xf9a6], /* CJK COMPATIBILITY IDEOGRAPH-F9A6 */ + [0xf9a7, 0xf9a7], /* CJK COMPATIBILITY IDEOGRAPH-F9A7 */ + [0xf9a8, 0xf9a8], /* CJK COMPATIBILITY IDEOGRAPH-F9A8 */ + [0xf9a9, 0xf9a9], /* CJK COMPATIBILITY IDEOGRAPH-F9A9 */ + [0xf9aa, 0xf9aa], /* CJK COMPATIBILITY IDEOGRAPH-F9AA */ + [0xf9ab, 0xf9ab], /* CJK COMPATIBILITY IDEOGRAPH-F9AB */ + [0xf9ac, 0xf9ac], /* CJK COMPATIBILITY IDEOGRAPH-F9AC */ + [0xf9ad, 0xf9ad], /* CJK COMPATIBILITY IDEOGRAPH-F9AD */ + [0xf9ae, 0xf9ae], /* CJK COMPATIBILITY IDEOGRAPH-F9AE */ + [0xf9af, 0xf9af], /* CJK COMPATIBILITY IDEOGRAPH-F9AF */ + [0xf9b0, 0xf9b0], /* CJK COMPATIBILITY IDEOGRAPH-F9B0 */ + [0xf9b1, 0xf9b1], /* CJK COMPATIBILITY IDEOGRAPH-F9B1 */ + [0xf9b2, 0xf9b2], /* CJK COMPATIBILITY IDEOGRAPH-F9B2 */ + [0xf9b3, 0xf9b3], /* CJK COMPATIBILITY IDEOGRAPH-F9B3 */ + [0xf9b4, 0xf9b4], /* CJK COMPATIBILITY IDEOGRAPH-F9B4 */ + [0xf9b5, 0xf9b5], /* CJK COMPATIBILITY IDEOGRAPH-F9B5 */ + [0xf9b6, 0xf9b6], /* CJK COMPATIBILITY IDEOGRAPH-F9B6 */ + [0xf9b7, 0xf9b7], /* CJK COMPATIBILITY IDEOGRAPH-F9B7 */ + [0xf9b8, 0xf9b8], /* CJK COMPATIBILITY IDEOGRAPH-F9B8 */ + [0xf9b9, 0xf9b9], /* CJK COMPATIBILITY IDEOGRAPH-F9B9 */ + [0xf9ba, 0xf9ba], /* CJK COMPATIBILITY IDEOGRAPH-F9BA */ + [0xf9bb, 0xf9bb], /* CJK COMPATIBILITY IDEOGRAPH-F9BB */ + [0xf9bc, 0xf9bc], /* CJK COMPATIBILITY IDEOGRAPH-F9BC */ + [0xf9bd, 0xf9bd], /* CJK COMPATIBILITY IDEOGRAPH-F9BD */ + [0xf9be, 0xf9be], /* CJK COMPATIBILITY IDEOGRAPH-F9BE */ + [0xf9bf, 0xf9bf], /* CJK COMPATIBILITY IDEOGRAPH-F9BF */ + [0xf9c0, 0xf9c0], /* CJK COMPATIBILITY IDEOGRAPH-F9C0 */ + [0xf9c1, 0xf9c1], /* CJK COMPATIBILITY IDEOGRAPH-F9C1 */ + [0xf9c2, 0xf9c2], /* CJK COMPATIBILITY IDEOGRAPH-F9C2 */ + [0xf9c3, 0xf9c3], /* CJK COMPATIBILITY IDEOGRAPH-F9C3 */ + [0xf9c4, 0xf9c4], /* CJK COMPATIBILITY IDEOGRAPH-F9C4 */ + [0xf9c5, 0xf9c5], /* CJK COMPATIBILITY IDEOGRAPH-F9C5 */ + [0xf9c6, 0xf9c6], /* CJK COMPATIBILITY IDEOGRAPH-F9C6 */ + [0xf9c7, 0xf9c7], /* CJK COMPATIBILITY IDEOGRAPH-F9C7 */ + [0xf9c8, 0xf9c8], /* CJK COMPATIBILITY IDEOGRAPH-F9C8 */ + [0xf9c9, 0xf9c9], /* CJK COMPATIBILITY IDEOGRAPH-F9C9 */ + [0xf9ca, 0xf9ca], /* CJK COMPATIBILITY IDEOGRAPH-F9CA */ + [0xf9cb, 0xf9cb], /* CJK COMPATIBILITY IDEOGRAPH-F9CB */ + [0xf9cc, 0xf9cc], /* CJK COMPATIBILITY IDEOGRAPH-F9CC */ + [0xf9cd, 0xf9cd], /* CJK COMPATIBILITY IDEOGRAPH-F9CD */ + [0xf9ce, 0xf9ce], /* CJK COMPATIBILITY IDEOGRAPH-F9CE */ + [0xf9cf, 0xf9cf], /* CJK COMPATIBILITY IDEOGRAPH-F9CF */ + [0xf9d0, 0xf9d0], /* CJK COMPATIBILITY IDEOGRAPH-F9D0 */ + [0xf9d1, 0xf9d1], /* CJK COMPATIBILITY IDEOGRAPH-F9D1 */ + [0xf9d2, 0xf9d2], /* CJK COMPATIBILITY IDEOGRAPH-F9D2 */ + [0xf9d3, 0xf9d3], /* CJK COMPATIBILITY IDEOGRAPH-F9D3 */ + [0xf9d4, 0xf9d4], /* CJK COMPATIBILITY IDEOGRAPH-F9D4 */ + [0xf9d5, 0xf9d5], /* CJK COMPATIBILITY IDEOGRAPH-F9D5 */ + [0xf9d6, 0xf9d6], /* CJK COMPATIBILITY IDEOGRAPH-F9D6 */ + [0xf9d7, 0xf9d7], /* CJK COMPATIBILITY IDEOGRAPH-F9D7 */ + [0xf9d8, 0xf9d8], /* CJK COMPATIBILITY IDEOGRAPH-F9D8 */ + [0xf9d9, 0xf9d9], /* CJK COMPATIBILITY IDEOGRAPH-F9D9 */ + [0xf9da, 0xf9da], /* CJK COMPATIBILITY IDEOGRAPH-F9DA */ + [0xf9db, 0xf9db], /* CJK COMPATIBILITY IDEOGRAPH-F9DB */ + [0xf9dc, 0xf9dc], /* CJK COMPATIBILITY IDEOGRAPH-F9DC */ + [0xf9dd, 0xf9dd], /* CJK COMPATIBILITY IDEOGRAPH-F9DD */ + [0xf9de, 0xf9de], /* CJK COMPATIBILITY IDEOGRAPH-F9DE */ + [0xf9df, 0xf9df], /* CJK COMPATIBILITY IDEOGRAPH-F9DF */ + [0xf9e0, 0xf9e0], /* CJK COMPATIBILITY IDEOGRAPH-F9E0 */ + [0xf9e1, 0xf9e1], /* CJK COMPATIBILITY IDEOGRAPH-F9E1 */ + [0xf9e2, 0xf9e2], /* CJK COMPATIBILITY IDEOGRAPH-F9E2 */ + [0xf9e3, 0xf9e3], /* CJK COMPATIBILITY IDEOGRAPH-F9E3 */ + [0xf9e4, 0xf9e4], /* CJK COMPATIBILITY IDEOGRAPH-F9E4 */ + [0xf9e5, 0xf9e5], /* CJK COMPATIBILITY IDEOGRAPH-F9E5 */ + [0xf9e6, 0xf9e6], /* CJK COMPATIBILITY IDEOGRAPH-F9E6 */ + [0xf9e7, 0xf9e7], /* CJK COMPATIBILITY IDEOGRAPH-F9E7 */ + [0xf9e8, 0xf9e8], /* CJK COMPATIBILITY IDEOGRAPH-F9E8 */ + [0xf9e9, 0xf9e9], /* CJK COMPATIBILITY IDEOGRAPH-F9E9 */ + [0xf9ea, 0xf9ea], /* CJK COMPATIBILITY IDEOGRAPH-F9EA */ + [0xf9eb, 0xf9eb], /* CJK COMPATIBILITY IDEOGRAPH-F9EB */ + [0xf9ec, 0xf9ec], /* CJK COMPATIBILITY IDEOGRAPH-F9EC */ + [0xf9ed, 0xf9ed], /* CJK COMPATIBILITY IDEOGRAPH-F9ED */ + [0xf9ee, 0xf9ee], /* CJK COMPATIBILITY IDEOGRAPH-F9EE */ + [0xf9ef, 0xf9ef], /* CJK COMPATIBILITY IDEOGRAPH-F9EF */ + [0xf9f0, 0xf9f0], /* CJK COMPATIBILITY IDEOGRAPH-F9F0 */ + [0xf9f1, 0xf9f1], /* CJK COMPATIBILITY IDEOGRAPH-F9F1 */ + [0xf9f2, 0xf9f2], /* CJK COMPATIBILITY IDEOGRAPH-F9F2 */ + [0xf9f3, 0xf9f3], /* CJK COMPATIBILITY IDEOGRAPH-F9F3 */ + [0xf9f4, 0xf9f4], /* CJK COMPATIBILITY IDEOGRAPH-F9F4 */ + [0xf9f5, 0xf9f5], /* CJK COMPATIBILITY IDEOGRAPH-F9F5 */ + [0xf9f6, 0xf9f6], /* CJK COMPATIBILITY IDEOGRAPH-F9F6 */ + [0xf9f7, 0xf9f7], /* CJK COMPATIBILITY IDEOGRAPH-F9F7 */ + [0xf9f8, 0xf9f8], /* CJK COMPATIBILITY IDEOGRAPH-F9F8 */ + [0xf9f9, 0xf9f9], /* CJK COMPATIBILITY IDEOGRAPH-F9F9 */ + [0xf9fa, 0xf9fa], /* CJK COMPATIBILITY IDEOGRAPH-F9FA */ + [0xf9fb, 0xf9fb], /* CJK COMPATIBILITY IDEOGRAPH-F9FB */ + [0xf9fc, 0xf9fc], /* CJK COMPATIBILITY IDEOGRAPH-F9FC */ + [0xf9fd, 0xf9fd], /* CJK COMPATIBILITY IDEOGRAPH-F9FD */ + [0xf9fe, 0xf9fe], /* CJK COMPATIBILITY IDEOGRAPH-F9FE */ + [0xf9ff, 0xf9ff], /* CJK COMPATIBILITY IDEOGRAPH-F9FF */ + [0xfa00, 0xfa00], /* CJK COMPATIBILITY IDEOGRAPH-FA00 */ + [0xfa01, 0xfa01], /* CJK COMPATIBILITY IDEOGRAPH-FA01 */ + [0xfa02, 0xfa02], /* CJK COMPATIBILITY IDEOGRAPH-FA02 */ + [0xfa03, 0xfa03], /* CJK COMPATIBILITY IDEOGRAPH-FA03 */ + [0xfa04, 0xfa04], /* CJK COMPATIBILITY IDEOGRAPH-FA04 */ + [0xfa05, 0xfa05], /* CJK COMPATIBILITY IDEOGRAPH-FA05 */ + [0xfa06, 0xfa06], /* CJK COMPATIBILITY IDEOGRAPH-FA06 */ + [0xfa07, 0xfa07], /* CJK COMPATIBILITY IDEOGRAPH-FA07 */ + [0xfa08, 0xfa08], /* CJK COMPATIBILITY IDEOGRAPH-FA08 */ + [0xfa09, 0xfa09], /* CJK COMPATIBILITY IDEOGRAPH-FA09 */ + [0xfa0a, 0xfa0a], /* CJK COMPATIBILITY IDEOGRAPH-FA0A */ + [0xfa0b, 0xfa0b], /* CJK COMPATIBILITY IDEOGRAPH-FA0B */ + [0xfa0c, 0xfa0c], /* CJK COMPATIBILITY IDEOGRAPH-FA0C */ + [0xfa0d, 0xfa0d], /* CJK COMPATIBILITY IDEOGRAPH-FA0D */ + [0xfa0e, 0xfa0e], /* CJK COMPATIBILITY IDEOGRAPH-FA0E */ + [0xfa0f, 0xfa0f], /* CJK COMPATIBILITY IDEOGRAPH-FA0F */ + [0xfa10, 0xfa10], /* CJK COMPATIBILITY IDEOGRAPH-FA10 */ + [0xfa11, 0xfa11], /* CJK COMPATIBILITY IDEOGRAPH-FA11 */ + [0xfa12, 0xfa12], /* CJK COMPATIBILITY IDEOGRAPH-FA12 */ + [0xfa13, 0xfa13], /* CJK COMPATIBILITY IDEOGRAPH-FA13 */ + [0xfa14, 0xfa14], /* CJK COMPATIBILITY IDEOGRAPH-FA14 */ + [0xfa15, 0xfa15], /* CJK COMPATIBILITY IDEOGRAPH-FA15 */ + [0xfa16, 0xfa16], /* CJK COMPATIBILITY IDEOGRAPH-FA16 */ + [0xfa17, 0xfa17], /* CJK COMPATIBILITY IDEOGRAPH-FA17 */ + [0xfa18, 0xfa18], /* CJK COMPATIBILITY IDEOGRAPH-FA18 */ + [0xfa19, 0xfa19], /* CJK COMPATIBILITY IDEOGRAPH-FA19 */ + [0xfa1a, 0xfa1a], /* CJK COMPATIBILITY IDEOGRAPH-FA1A */ + [0xfa1b, 0xfa1b], /* CJK COMPATIBILITY IDEOGRAPH-FA1B */ + [0xfa1c, 0xfa1c], /* CJK COMPATIBILITY IDEOGRAPH-FA1C */ + [0xfa1d, 0xfa1d], /* CJK COMPATIBILITY IDEOGRAPH-FA1D */ + [0xfa1e, 0xfa1e], /* CJK COMPATIBILITY IDEOGRAPH-FA1E */ + [0xfa1f, 0xfa1f], /* CJK COMPATIBILITY IDEOGRAPH-FA1F */ + [0xfa20, 0xfa20], /* CJK COMPATIBILITY IDEOGRAPH-FA20 */ + [0xfa21, 0xfa21], /* CJK COMPATIBILITY IDEOGRAPH-FA21 */ + [0xfa22, 0xfa22], /* CJK COMPATIBILITY IDEOGRAPH-FA22 */ + [0xfa23, 0xfa23], /* CJK COMPATIBILITY IDEOGRAPH-FA23 */ + [0xfa24, 0xfa24], /* CJK COMPATIBILITY IDEOGRAPH-FA24 */ + [0xfa25, 0xfa25], /* CJK COMPATIBILITY IDEOGRAPH-FA25 */ + [0xfa26, 0xfa26], /* CJK COMPATIBILITY IDEOGRAPH-FA26 */ + [0xfa27, 0xfa27], /* CJK COMPATIBILITY IDEOGRAPH-FA27 */ + [0xfa28, 0xfa28], /* CJK COMPATIBILITY IDEOGRAPH-FA28 */ + [0xfa29, 0xfa29], /* CJK COMPATIBILITY IDEOGRAPH-FA29 */ + [0xfa2a, 0xfa2a], /* CJK COMPATIBILITY IDEOGRAPH-FA2A */ + [0xfa2b, 0xfa2b], /* CJK COMPATIBILITY IDEOGRAPH-FA2B */ + [0xfa2c, 0xfa2c], /* CJK COMPATIBILITY IDEOGRAPH-FA2C */ + [0xfa2d, 0xfa2d], /* CJK COMPATIBILITY IDEOGRAPH-FA2D */ + [0xfa2e, 0xfa2e], /* CJK COMPATIBILITY IDEOGRAPH-FA2E */ + [0xfa2f, 0xfa2f], /* CJK COMPATIBILITY IDEOGRAPH-FA2F */ + [0xfa30, 0xfa30], /* CJK COMPATIBILITY IDEOGRAPH-FA30 */ + [0xfa31, 0xfa31], /* CJK COMPATIBILITY IDEOGRAPH-FA31 */ + [0xfa32, 0xfa32], /* CJK COMPATIBILITY IDEOGRAPH-FA32 */ + [0xfa33, 0xfa33], /* CJK COMPATIBILITY IDEOGRAPH-FA33 */ + [0xfa34, 0xfa34], /* CJK COMPATIBILITY IDEOGRAPH-FA34 */ + [0xfa35, 0xfa35], /* CJK COMPATIBILITY IDEOGRAPH-FA35 */ + [0xfa36, 0xfa36], /* CJK COMPATIBILITY IDEOGRAPH-FA36 */ + [0xfa37, 0xfa37], /* CJK COMPATIBILITY IDEOGRAPH-FA37 */ + [0xfa38, 0xfa38], /* CJK COMPATIBILITY IDEOGRAPH-FA38 */ + [0xfa39, 0xfa39], /* CJK COMPATIBILITY IDEOGRAPH-FA39 */ + [0xfa3a, 0xfa3a], /* CJK COMPATIBILITY IDEOGRAPH-FA3A */ + [0xfa3b, 0xfa3b], /* CJK COMPATIBILITY IDEOGRAPH-FA3B */ + [0xfa3c, 0xfa3c], /* CJK COMPATIBILITY IDEOGRAPH-FA3C */ + [0xfa3d, 0xfa3d], /* CJK COMPATIBILITY IDEOGRAPH-FA3D */ + [0xfa3e, 0xfa3e], /* CJK COMPATIBILITY IDEOGRAPH-FA3E */ + [0xfa3f, 0xfa3f], /* CJK COMPATIBILITY IDEOGRAPH-FA3F */ + [0xfa40, 0xfa40], /* CJK COMPATIBILITY IDEOGRAPH-FA40 */ + [0xfa41, 0xfa41], /* CJK COMPATIBILITY IDEOGRAPH-FA41 */ + [0xfa42, 0xfa42], /* CJK COMPATIBILITY IDEOGRAPH-FA42 */ + [0xfa43, 0xfa43], /* CJK COMPATIBILITY IDEOGRAPH-FA43 */ + [0xfa44, 0xfa44], /* CJK COMPATIBILITY IDEOGRAPH-FA44 */ + [0xfa45, 0xfa45], /* CJK COMPATIBILITY IDEOGRAPH-FA45 */ + [0xfa46, 0xfa46], /* CJK COMPATIBILITY IDEOGRAPH-FA46 */ + [0xfa47, 0xfa47], /* CJK COMPATIBILITY IDEOGRAPH-FA47 */ + [0xfa48, 0xfa48], /* CJK COMPATIBILITY IDEOGRAPH-FA48 */ + [0xfa49, 0xfa49], /* CJK COMPATIBILITY IDEOGRAPH-FA49 */ + [0xfa4a, 0xfa4a], /* CJK COMPATIBILITY IDEOGRAPH-FA4A */ + [0xfa4b, 0xfa4b], /* CJK COMPATIBILITY IDEOGRAPH-FA4B */ + [0xfa4c, 0xfa4c], /* CJK COMPATIBILITY IDEOGRAPH-FA4C */ + [0xfa4d, 0xfa4d], /* CJK COMPATIBILITY IDEOGRAPH-FA4D */ + [0xfa4e, 0xfa4e], /* CJK COMPATIBILITY IDEOGRAPH-FA4E */ + [0xfa4f, 0xfa4f], /* CJK COMPATIBILITY IDEOGRAPH-FA4F */ + [0xfa50, 0xfa50], /* CJK COMPATIBILITY IDEOGRAPH-FA50 */ + [0xfa51, 0xfa51], /* CJK COMPATIBILITY IDEOGRAPH-FA51 */ + [0xfa52, 0xfa52], /* CJK COMPATIBILITY IDEOGRAPH-FA52 */ + [0xfa53, 0xfa53], /* CJK COMPATIBILITY IDEOGRAPH-FA53 */ + [0xfa54, 0xfa54], /* CJK COMPATIBILITY IDEOGRAPH-FA54 */ + [0xfa55, 0xfa55], /* CJK COMPATIBILITY IDEOGRAPH-FA55 */ + [0xfa56, 0xfa56], /* CJK COMPATIBILITY IDEOGRAPH-FA56 */ + [0xfa57, 0xfa57], /* CJK COMPATIBILITY IDEOGRAPH-FA57 */ + [0xfa58, 0xfa58], /* CJK COMPATIBILITY IDEOGRAPH-FA58 */ + [0xfa59, 0xfa59], /* CJK COMPATIBILITY IDEOGRAPH-FA59 */ + [0xfa5a, 0xfa5a], /* CJK COMPATIBILITY IDEOGRAPH-FA5A */ + [0xfa5b, 0xfa5b], /* CJK COMPATIBILITY IDEOGRAPH-FA5B */ + [0xfa5c, 0xfa5c], /* CJK COMPATIBILITY IDEOGRAPH-FA5C */ + [0xfa5d, 0xfa5d], /* CJK COMPATIBILITY IDEOGRAPH-FA5D */ + [0xfa5e, 0xfa5e], /* CJK COMPATIBILITY IDEOGRAPH-FA5E */ + [0xfa5f, 0xfa5f], /* CJK COMPATIBILITY IDEOGRAPH-FA5F */ + [0xfa60, 0xfa60], /* CJK COMPATIBILITY IDEOGRAPH-FA60 */ + [0xfa61, 0xfa61], /* CJK COMPATIBILITY IDEOGRAPH-FA61 */ + [0xfa62, 0xfa62], /* CJK COMPATIBILITY IDEOGRAPH-FA62 */ + [0xfa63, 0xfa63], /* CJK COMPATIBILITY IDEOGRAPH-FA63 */ + [0xfa64, 0xfa64], /* CJK COMPATIBILITY IDEOGRAPH-FA64 */ + [0xfa65, 0xfa65], /* CJK COMPATIBILITY IDEOGRAPH-FA65 */ + [0xfa66, 0xfa66], /* CJK COMPATIBILITY IDEOGRAPH-FA66 */ + [0xfa67, 0xfa67], /* CJK COMPATIBILITY IDEOGRAPH-FA67 */ + [0xfa68, 0xfa68], /* CJK COMPATIBILITY IDEOGRAPH-FA68 */ + [0xfa69, 0xfa69], /* CJK COMPATIBILITY IDEOGRAPH-FA69 */ + [0xfa6a, 0xfa6a], /* CJK COMPATIBILITY IDEOGRAPH-FA6A */ + [0xfa6b, 0xfa6b], /* CJK COMPATIBILITY IDEOGRAPH-FA6B */ + [0xfa6c, 0xfa6c], /* CJK COMPATIBILITY IDEOGRAPH-FA6C */ + [0xfa6d, 0xfa6d], /* CJK COMPATIBILITY IDEOGRAPH-FA6D */ + [0xfa6e, 0xfa6e], + [0xfa6f, 0xfa6f], + [0xfa70, 0xfa70], /* CJK COMPATIBILITY IDEOGRAPH-FA70 */ + [0xfa71, 0xfa71], /* CJK COMPATIBILITY IDEOGRAPH-FA71 */ + [0xfa72, 0xfa72], /* CJK COMPATIBILITY IDEOGRAPH-FA72 */ + [0xfa73, 0xfa73], /* CJK COMPATIBILITY IDEOGRAPH-FA73 */ + [0xfa74, 0xfa74], /* CJK COMPATIBILITY IDEOGRAPH-FA74 */ + [0xfa75, 0xfa75], /* CJK COMPATIBILITY IDEOGRAPH-FA75 */ + [0xfa76, 0xfa76], /* CJK COMPATIBILITY IDEOGRAPH-FA76 */ + [0xfa77, 0xfa77], /* CJK COMPATIBILITY IDEOGRAPH-FA77 */ + [0xfa78, 0xfa78], /* CJK COMPATIBILITY IDEOGRAPH-FA78 */ + [0xfa79, 0xfa79], /* CJK COMPATIBILITY IDEOGRAPH-FA79 */ + [0xfa7a, 0xfa7a], /* CJK COMPATIBILITY IDEOGRAPH-FA7A */ + [0xfa7b, 0xfa7b], /* CJK COMPATIBILITY IDEOGRAPH-FA7B */ + [0xfa7c, 0xfa7c], /* CJK COMPATIBILITY IDEOGRAPH-FA7C */ + [0xfa7d, 0xfa7d], /* CJK COMPATIBILITY IDEOGRAPH-FA7D */ + [0xfa7e, 0xfa7e], /* CJK COMPATIBILITY IDEOGRAPH-FA7E */ + [0xfa7f, 0xfa7f], /* CJK COMPATIBILITY IDEOGRAPH-FA7F */ + [0xfa80, 0xfa80], /* CJK COMPATIBILITY IDEOGRAPH-FA80 */ + [0xfa81, 0xfa81], /* CJK COMPATIBILITY IDEOGRAPH-FA81 */ + [0xfa82, 0xfa82], /* CJK COMPATIBILITY IDEOGRAPH-FA82 */ + [0xfa83, 0xfa83], /* CJK COMPATIBILITY IDEOGRAPH-FA83 */ + [0xfa84, 0xfa84], /* CJK COMPATIBILITY IDEOGRAPH-FA84 */ + [0xfa85, 0xfa85], /* CJK COMPATIBILITY IDEOGRAPH-FA85 */ + [0xfa86, 0xfa86], /* CJK COMPATIBILITY IDEOGRAPH-FA86 */ + [0xfa87, 0xfa87], /* CJK COMPATIBILITY IDEOGRAPH-FA87 */ + [0xfa88, 0xfa88], /* CJK COMPATIBILITY IDEOGRAPH-FA88 */ + [0xfa89, 0xfa89], /* CJK COMPATIBILITY IDEOGRAPH-FA89 */ + [0xfa8a, 0xfa8a], /* CJK COMPATIBILITY IDEOGRAPH-FA8A */ + [0xfa8b, 0xfa8b], /* CJK COMPATIBILITY IDEOGRAPH-FA8B */ + [0xfa8c, 0xfa8c], /* CJK COMPATIBILITY IDEOGRAPH-FA8C */ + [0xfa8d, 0xfa8d], /* CJK COMPATIBILITY IDEOGRAPH-FA8D */ + [0xfa8e, 0xfa8e], /* CJK COMPATIBILITY IDEOGRAPH-FA8E */ + [0xfa8f, 0xfa8f], /* CJK COMPATIBILITY IDEOGRAPH-FA8F */ + [0xfa90, 0xfa90], /* CJK COMPATIBILITY IDEOGRAPH-FA90 */ + [0xfa91, 0xfa91], /* CJK COMPATIBILITY IDEOGRAPH-FA91 */ + [0xfa92, 0xfa92], /* CJK COMPATIBILITY IDEOGRAPH-FA92 */ + [0xfa93, 0xfa93], /* CJK COMPATIBILITY IDEOGRAPH-FA93 */ + [0xfa94, 0xfa94], /* CJK COMPATIBILITY IDEOGRAPH-FA94 */ + [0xfa95, 0xfa95], /* CJK COMPATIBILITY IDEOGRAPH-FA95 */ + [0xfa96, 0xfa96], /* CJK COMPATIBILITY IDEOGRAPH-FA96 */ + [0xfa97, 0xfa97], /* CJK COMPATIBILITY IDEOGRAPH-FA97 */ + [0xfa98, 0xfa98], /* CJK COMPATIBILITY IDEOGRAPH-FA98 */ + [0xfa99, 0xfa99], /* CJK COMPATIBILITY IDEOGRAPH-FA99 */ + [0xfa9a, 0xfa9a], /* CJK COMPATIBILITY IDEOGRAPH-FA9A */ + [0xfa9b, 0xfa9b], /* CJK COMPATIBILITY IDEOGRAPH-FA9B */ + [0xfa9c, 0xfa9c], /* CJK COMPATIBILITY IDEOGRAPH-FA9C */ + [0xfa9d, 0xfa9d], /* CJK COMPATIBILITY IDEOGRAPH-FA9D */ + [0xfa9e, 0xfa9e], /* CJK COMPATIBILITY IDEOGRAPH-FA9E */ + [0xfa9f, 0xfa9f], /* CJK COMPATIBILITY IDEOGRAPH-FA9F */ + [0xfaa0, 0xfaa0], /* CJK COMPATIBILITY IDEOGRAPH-FAA0 */ + [0xfaa1, 0xfaa1], /* CJK COMPATIBILITY IDEOGRAPH-FAA1 */ + [0xfaa2, 0xfaa2], /* CJK COMPATIBILITY IDEOGRAPH-FAA2 */ + [0xfaa3, 0xfaa3], /* CJK COMPATIBILITY IDEOGRAPH-FAA3 */ + [0xfaa4, 0xfaa4], /* CJK COMPATIBILITY IDEOGRAPH-FAA4 */ + [0xfaa5, 0xfaa5], /* CJK COMPATIBILITY IDEOGRAPH-FAA5 */ + [0xfaa6, 0xfaa6], /* CJK COMPATIBILITY IDEOGRAPH-FAA6 */ + [0xfaa7, 0xfaa7], /* CJK COMPATIBILITY IDEOGRAPH-FAA7 */ + [0xfaa8, 0xfaa8], /* CJK COMPATIBILITY IDEOGRAPH-FAA8 */ + [0xfaa9, 0xfaa9], /* CJK COMPATIBILITY IDEOGRAPH-FAA9 */ + [0xfaaa, 0xfaaa], /* CJK COMPATIBILITY IDEOGRAPH-FAAA */ + [0xfaab, 0xfaab], /* CJK COMPATIBILITY IDEOGRAPH-FAAB */ + [0xfaac, 0xfaac], /* CJK COMPATIBILITY IDEOGRAPH-FAAC */ + [0xfaad, 0xfaad], /* CJK COMPATIBILITY IDEOGRAPH-FAAD */ + [0xfaae, 0xfaae], /* CJK COMPATIBILITY IDEOGRAPH-FAAE */ + [0xfaaf, 0xfaaf], /* CJK COMPATIBILITY IDEOGRAPH-FAAF */ + [0xfab0, 0xfab0], /* CJK COMPATIBILITY IDEOGRAPH-FAB0 */ + [0xfab1, 0xfab1], /* CJK COMPATIBILITY IDEOGRAPH-FAB1 */ + [0xfab2, 0xfab2], /* CJK COMPATIBILITY IDEOGRAPH-FAB2 */ + [0xfab3, 0xfab3], /* CJK COMPATIBILITY IDEOGRAPH-FAB3 */ + [0xfab4, 0xfab4], /* CJK COMPATIBILITY IDEOGRAPH-FAB4 */ + [0xfab5, 0xfab5], /* CJK COMPATIBILITY IDEOGRAPH-FAB5 */ + [0xfab6, 0xfab6], /* CJK COMPATIBILITY IDEOGRAPH-FAB6 */ + [0xfab7, 0xfab7], /* CJK COMPATIBILITY IDEOGRAPH-FAB7 */ + [0xfab8, 0xfab8], /* CJK COMPATIBILITY IDEOGRAPH-FAB8 */ + [0xfab9, 0xfab9], /* CJK COMPATIBILITY IDEOGRAPH-FAB9 */ + [0xfaba, 0xfaba], /* CJK COMPATIBILITY IDEOGRAPH-FABA */ + [0xfabb, 0xfabb], /* CJK COMPATIBILITY IDEOGRAPH-FABB */ + [0xfabc, 0xfabc], /* CJK COMPATIBILITY IDEOGRAPH-FABC */ + [0xfabd, 0xfabd], /* CJK COMPATIBILITY IDEOGRAPH-FABD */ + [0xfabe, 0xfabe], /* CJK COMPATIBILITY IDEOGRAPH-FABE */ + [0xfabf, 0xfabf], /* CJK COMPATIBILITY IDEOGRAPH-FABF */ + [0xfac0, 0xfac0], /* CJK COMPATIBILITY IDEOGRAPH-FAC0 */ + [0xfac1, 0xfac1], /* CJK COMPATIBILITY IDEOGRAPH-FAC1 */ + [0xfac2, 0xfac2], /* CJK COMPATIBILITY IDEOGRAPH-FAC2 */ + [0xfac3, 0xfac3], /* CJK COMPATIBILITY IDEOGRAPH-FAC3 */ + [0xfac4, 0xfac4], /* CJK COMPATIBILITY IDEOGRAPH-FAC4 */ + [0xfac5, 0xfac5], /* CJK COMPATIBILITY IDEOGRAPH-FAC5 */ + [0xfac6, 0xfac6], /* CJK COMPATIBILITY IDEOGRAPH-FAC6 */ + [0xfac7, 0xfac7], /* CJK COMPATIBILITY IDEOGRAPH-FAC7 */ + [0xfac8, 0xfac8], /* CJK COMPATIBILITY IDEOGRAPH-FAC8 */ + [0xfac9, 0xfac9], /* CJK COMPATIBILITY IDEOGRAPH-FAC9 */ + [0xfaca, 0xfaca], /* CJK COMPATIBILITY IDEOGRAPH-FACA */ + [0xfacb, 0xfacb], /* CJK COMPATIBILITY IDEOGRAPH-FACB */ + [0xfacc, 0xfacc], /* CJK COMPATIBILITY IDEOGRAPH-FACC */ + [0xfacd, 0xfacd], /* CJK COMPATIBILITY IDEOGRAPH-FACD */ + [0xface, 0xface], /* CJK COMPATIBILITY IDEOGRAPH-FACE */ + [0xfacf, 0xfacf], /* CJK COMPATIBILITY IDEOGRAPH-FACF */ + [0xfad0, 0xfad0], /* CJK COMPATIBILITY IDEOGRAPH-FAD0 */ + [0xfad1, 0xfad1], /* CJK COMPATIBILITY IDEOGRAPH-FAD1 */ + [0xfad2, 0xfad2], /* CJK COMPATIBILITY IDEOGRAPH-FAD2 */ + [0xfad3, 0xfad3], /* CJK COMPATIBILITY IDEOGRAPH-FAD3 */ + [0xfad4, 0xfad4], /* CJK COMPATIBILITY IDEOGRAPH-FAD4 */ + [0xfad5, 0xfad5], /* CJK COMPATIBILITY IDEOGRAPH-FAD5 */ + [0xfad6, 0xfad6], /* CJK COMPATIBILITY IDEOGRAPH-FAD6 */ + [0xfad7, 0xfad7], /* CJK COMPATIBILITY IDEOGRAPH-FAD7 */ + [0xfad8, 0xfad8], /* CJK COMPATIBILITY IDEOGRAPH-FAD8 */ + [0xfad9, 0xfad9], /* CJK COMPATIBILITY IDEOGRAPH-FAD9 */ + [0xfada, 0xfada], + [0xfadb, 0xfadb], + [0xfadc, 0xfadc], + [0xfadd, 0xfadd], + [0xfade, 0xfade], + [0xfadf, 0xfadf], + [0xfae0, 0xfae0], + [0xfae1, 0xfae1], + [0xfae2, 0xfae2], + [0xfae3, 0xfae3], + [0xfae4, 0xfae4], + [0xfae5, 0xfae5], + [0xfae6, 0xfae6], + [0xfae7, 0xfae7], + [0xfae8, 0xfae8], + [0xfae9, 0xfae9], + [0xfaea, 0xfaea], + [0xfaeb, 0xfaeb], + [0xfaec, 0xfaec], + [0xfaed, 0xfaed], + [0xfaee, 0xfaee], + [0xfaef, 0xfaef], + [0xfaf0, 0xfaf0], + [0xfaf1, 0xfaf1], + [0xfaf2, 0xfaf2], + [0xfaf3, 0xfaf3], + [0xfaf4, 0xfaf4], + [0xfaf5, 0xfaf5], + [0xfaf6, 0xfaf6], + [0xfaf7, 0xfaf7], + [0xfaf8, 0xfaf8], + [0xfaf9, 0xfaf9], + [0xfafa, 0xfafa], + [0xfafb, 0xfafb], + [0xfafc, 0xfafc], + [0xfafd, 0xfafd], + [0xfafe, 0xfafe], + [0xfaff, 0xfaff], + [0xfb00, 0xfb00], /* LATIN SMALL LIGATURE FF */ + [0xfb01, 0xfb01], /* LATIN SMALL LIGATURE FI */ + [0xfb02, 0xfb02], /* LATIN SMALL LIGATURE FL */ + [0xfb03, 0xfb03], /* LATIN SMALL LIGATURE FFI */ + [0xfb04, 0xfb04], /* LATIN SMALL LIGATURE FFL */ + [0xfb05, 0xfb05], /* LATIN SMALL LIGATURE LONG S T */ + [0xfb06, 0xfb06], /* LATIN SMALL LIGATURE ST */ + [0xfb07, 0xfb07], + [0xfb08, 0xfb08], + [0xfb09, 0xfb09], + [0xfb0a, 0xfb0a], + [0xfb0b, 0xfb0b], + [0xfb0c, 0xfb0c], + [0xfb0d, 0xfb0d], + [0xfb0e, 0xfb0e], + [0xfb0f, 0xfb0f], + [0xfb10, 0xfb10], + [0xfb11, 0xfb11], + [0xfb12, 0xfb12], + [0xfb13, 0xfb13], /* ARMENIAN SMALL LIGATURE MEN NOW */ + [0xfb14, 0xfb14], /* ARMENIAN SMALL LIGATURE MEN ECH */ + [0xfb15, 0xfb15], /* ARMENIAN SMALL LIGATURE MEN INI */ + [0xfb16, 0xfb16], /* ARMENIAN SMALL LIGATURE VEW NOW */ + [0xfb17, 0xfb17], /* ARMENIAN SMALL LIGATURE MEN XEH */ + [0xfb18, 0xfb18], + [0xfb19, 0xfb19], + [0xfb1a, 0xfb1a], + [0xfb1b, 0xfb1b], + [0xfb1c, 0xfb1c], + [0xfb1d, 0xfb1d], /* HEBREW LETTER YOD WITH HIRIQ */ + [0xfb1e, 0xfb1e], /* HEBREW POINT JUDEO-SPANISH VARIKA (HEBREW POINT VARIKA) */ + [0xfb1f, 0xfb1f], /* HEBREW LIGATURE YIDDISH YOD YOD PATAH */ + [0xfb20, 0xfb20], /* HEBREW LETTER ALTERNATIVE AYIN */ + [0xfb21, 0xfb21], /* HEBREW LETTER WIDE ALEF */ + [0xfb22, 0xfb22], /* HEBREW LETTER WIDE DALET */ + [0xfb23, 0xfb23], /* HEBREW LETTER WIDE HE */ + [0xfb24, 0xfb24], /* HEBREW LETTER WIDE KAF */ + [0xfb25, 0xfb25], /* HEBREW LETTER WIDE LAMED */ + [0xfb26, 0xfb26], /* HEBREW LETTER WIDE FINAL MEM */ + [0xfb27, 0xfb27], /* HEBREW LETTER WIDE RESH */ + [0xfb28, 0xfb28], /* HEBREW LETTER WIDE TAV */ + [0xfb29, 0xfb29], /* HEBREW LETTER ALTERNATIVE PLUS SIGN */ + [0xfb2a, 0xfb2a], /* HEBREW LETTER SHIN WITH SHIN DOT */ + [0xfb2b, 0xfb2b], /* HEBREW LETTER SHIN WITH SIN DOT */ + [0xfb2c, 0xfb2c], /* HEBREW LETTER SHIN WITH DAGESH AND SHIN DOT */ + [0xfb2d, 0xfb2d], /* HEBREW LETTER SHIN WITH DAGESH AND SIN DOT */ + [0xfb2e, 0xfb2e], /* HEBREW LETTER ALEF WITH PATAH */ + [0xfb2f, 0xfb2f], /* HEBREW LETTER ALEF WITH QAMATS */ + [0xfb30, 0xfb30], /* HEBREW LETTER ALEF WITH MAPIQ */ + [0xfb31, 0xfb31], /* HEBREW LETTER BET WITH DAGESH */ + [0xfb32, 0xfb32], /* HEBREW LETTER GIMEL WITH DAGESH */ + [0xfb33, 0xfb33], /* HEBREW LETTER DALET WITH DAGESH */ + [0xfb34, 0xfb34], /* HEBREW LETTER HE WITH MAPIQ */ + [0xfb35, 0xfb35], /* HEBREW LETTER VAV WITH DAGESH */ + [0xfb36, 0xfb36], /* HEBREW LETTER ZAYIN WITH DAGESH */ + [0xfb37, 0xfb37], + [0xfb38, 0xfb38], /* HEBREW LETTER TET WITH DAGESH */ + [0xfb39, 0xfb39], /* HEBREW LETTER YOD WITH DAGESH */ + [0xfb3a, 0xfb3a], /* HEBREW LETTER FINAL KAF WITH DAGESH */ + [0xfb3b, 0xfb3b], /* HEBREW LETTER KAF WITH DAGESH */ + [0xfb3c, 0xfb3c], /* HEBREW LETTER LAMED WITH DAGESH */ + [0xfb3d, 0xfb3d], + [0xfb3e, 0xfb3e], /* HEBREW LETTER MEM WITH DAGESH */ + [0xfb3f, 0xfb3f], + [0xfb40, 0xfb40], /* HEBREW LETTER NUN WITH DAGESH */ + [0xfb41, 0xfb41], /* HEBREW LETTER SAMEKH WITH DAGESH */ + [0xfb42, 0xfb42], + [0xfb43, 0xfb43], /* HEBREW LETTER FINAL PE WITH DAGESH */ + [0xfb44, 0xfb44], /* HEBREW LETTER PE WITH DAGESH */ + [0xfb45, 0xfb45], + [0xfb46, 0xfb46], /* HEBREW LETTER TSADI WITH DAGESH */ + [0xfb47, 0xfb47], /* HEBREW LETTER QOF WITH DAGESH */ + [0xfb48, 0xfb48], /* HEBREW LETTER RESH WITH DAGESH */ + [0xfb49, 0xfb49], /* HEBREW LETTER SHIN WITH DAGESH */ + [0xfb4a, 0xfb4a], /* HEBREW LETTER TAV WITH DAGESH */ + [0xfb4b, 0xfb4b], /* HEBREW LETTER VAV WITH HOLAM */ + [0xfb4c, 0xfb4c], /* HEBREW LETTER BET WITH RAFE */ + [0xfb4d, 0xfb4d], /* HEBREW LETTER KAF WITH RAFE */ + [0xfb4e, 0xfb4e], /* HEBREW LETTER PE WITH RAFE */ + [0xfb4f, 0xfb4f], /* HEBREW LIGATURE ALEF LAMED */ + [0xfb50, 0xfb50], /* ARABIC LETTER ALEF WASLA ISOLATED FORM */ + [0xfb51, 0xfb51], /* ARABIC LETTER ALEF WASLA FINAL FORM */ + [0xfb52, 0xfb52], /* ARABIC LETTER BEEH ISOLATED FORM */ + [0xfb53, 0xfb53], /* ARABIC LETTER BEEH FINAL FORM */ + [0xfb54, 0xfb54], /* ARABIC LETTER BEEH INITIAL FORM */ + [0xfb55, 0xfb55], /* ARABIC LETTER BEEH MEDIAL FORM */ + [0xfb56, 0xfb56], /* ARABIC LETTER PEH ISOLATED FORM */ + [0xfb57, 0xfb57], /* ARABIC LETTER PEH FINAL FORM */ + [0xfb58, 0xfb58], /* ARABIC LETTER PEH INITIAL FORM */ + [0xfb59, 0xfb59], /* ARABIC LETTER PEH MEDIAL FORM */ + [0xfb5a, 0xfb5a], /* ARABIC LETTER BEHEH ISOLATED FORM */ + [0xfb5b, 0xfb5b], /* ARABIC LETTER BEHEH FINAL FORM */ + [0xfb5c, 0xfb5c], /* ARABIC LETTER BEHEH INITIAL FORM */ + [0xfb5d, 0xfb5d], /* ARABIC LETTER BEHEH MEDIAL FORM */ + [0xfb5e, 0xfb5e], /* ARABIC LETTER TTEHEH ISOLATED FORM */ + [0xfb5f, 0xfb5f], /* ARABIC LETTER TTEHEH FINAL FORM */ + [0xfb60, 0xfb60], /* ARABIC LETTER TTEHEH INITIAL FORM */ + [0xfb61, 0xfb61], /* ARABIC LETTER TTEHEH MEDIAL FORM */ + [0xfb62, 0xfb62], /* ARABIC LETTER TEHEH ISOLATED FORM */ + [0xfb63, 0xfb63], /* ARABIC LETTER TEHEH FINAL FORM */ + [0xfb64, 0xfb64], /* ARABIC LETTER TEHEH INITIAL FORM */ + [0xfb65, 0xfb65], /* ARABIC LETTER TEHEH MEDIAL FORM */ + [0xfb66, 0xfb66], /* ARABIC LETTER TTEH ISOLATED FORM */ + [0xfb67, 0xfb67], /* ARABIC LETTER TTEH FINAL FORM */ + [0xfb68, 0xfb68], /* ARABIC LETTER TTEH INITIAL FORM */ + [0xfb69, 0xfb69], /* ARABIC LETTER TTEH MEDIAL FORM */ + [0xfb6a, 0xfb6a], /* ARABIC LETTER VEH ISOLATED FORM */ + [0xfb6b, 0xfb6b], /* ARABIC LETTER VEH FINAL FORM */ + [0xfb6c, 0xfb6c], /* ARABIC LETTER VEH INITIAL FORM */ + [0xfb6d, 0xfb6d], /* ARABIC LETTER VEH MEDIAL FORM */ + [0xfb6e, 0xfb6e], /* ARABIC LETTER PEHEH ISOLATED FORM */ + [0xfb6f, 0xfb6f], /* ARABIC LETTER PEHEH FINAL FORM */ + [0xfb70, 0xfb70], /* ARABIC LETTER PEHEH INITIAL FORM */ + [0xfb71, 0xfb71], /* ARABIC LETTER PEHEH MEDIAL FORM */ + [0xfb72, 0xfb72], /* ARABIC LETTER DYEH ISOLATED FORM */ + [0xfb73, 0xfb73], /* ARABIC LETTER DYEH FINAL FORM */ + [0xfb74, 0xfb74], /* ARABIC LETTER DYEH INITIAL FORM */ + [0xfb75, 0xfb75], /* ARABIC LETTER DYEH MEDIAL FORM */ + [0xfb76, 0xfb76], /* ARABIC LETTER NYEH ISOLATED FORM */ + [0xfb77, 0xfb77], /* ARABIC LETTER NYEH FINAL FORM */ + [0xfb78, 0xfb78], /* ARABIC LETTER NYEH INITIAL FORM */ + [0xfb79, 0xfb79], /* ARABIC LETTER NYEH MEDIAL FORM */ + [0xfb7a, 0xfb7a], /* ARABIC LETTER TCHEH ISOLATED FORM */ + [0xfb7b, 0xfb7b], /* ARABIC LETTER TCHEH FINAL FORM */ + [0xfb7c, 0xfb7c], /* ARABIC LETTER TCHEH INITIAL FORM */ + [0xfb7d, 0xfb7d], /* ARABIC LETTER TCHEH MEDIAL FORM */ + [0xfb7e, 0xfb7e], /* ARABIC LETTER TCHEHEH ISOLATED FORM */ + [0xfb7f, 0xfb7f], /* ARABIC LETTER TCHEHEH FINAL FORM */ + [0xfb80, 0xfb80], /* ARABIC LETTER TCHEHEH INITIAL FORM */ + [0xfb81, 0xfb81], /* ARABIC LETTER TCHEHEH MEDIAL FORM */ + [0xfb82, 0xfb82], /* ARABIC LETTER DDAHAL ISOLATED FORM */ + [0xfb83, 0xfb83], /* ARABIC LETTER DDAHAL FINAL FORM */ + [0xfb84, 0xfb84], /* ARABIC LETTER DAHAL ISOLATED FORM */ + [0xfb85, 0xfb85], /* ARABIC LETTER DAHAL FINAL FORM */ + [0xfb86, 0xfb86], /* ARABIC LETTER DUL ISOLATED FORM */ + [0xfb87, 0xfb87], /* ARABIC LETTER DUL FINAL FORM */ + [0xfb88, 0xfb88], /* ARABIC LETTER DDAL ISOLATED FORM */ + [0xfb89, 0xfb89], /* ARABIC LETTER DDAL FINAL FORM */ + [0xfb8a, 0xfb8a], /* ARABIC LETTER JEH ISOLATED FORM */ + [0xfb8b, 0xfb8b], /* ARABIC LETTER JEH FINAL FORM */ + [0xfb8c, 0xfb8c], /* ARABIC LETTER RREH ISOLATED FORM */ + [0xfb8d, 0xfb8d], /* ARABIC LETTER RREH FINAL FORM */ + [0xfb8e, 0xfb8e], /* ARABIC LETTER KEHEH ISOLATED FORM */ + [0xfb8f, 0xfb8f], /* ARABIC LETTER KEHEH FINAL FORM */ + [0xfb90, 0xfb90], /* ARABIC LETTER KEHEH INITIAL FORM */ + [0xfb91, 0xfb91], /* ARABIC LETTER KEHEH MEDIAL FORM */ + [0xfb92, 0xfb92], /* ARABIC LETTER GAF ISOLATED FORM */ + [0xfb93, 0xfb93], /* ARABIC LETTER GAF FINAL FORM */ + [0xfb94, 0xfb94], /* ARABIC LETTER GAF INITIAL FORM */ + [0xfb95, 0xfb95], /* ARABIC LETTER GAF MEDIAL FORM */ + [0xfb96, 0xfb96], /* ARABIC LETTER GUEH ISOLATED FORM */ + [0xfb97, 0xfb97], /* ARABIC LETTER GUEH FINAL FORM */ + [0xfb98, 0xfb98], /* ARABIC LETTER GUEH INITIAL FORM */ + [0xfb99, 0xfb99], /* ARABIC LETTER GUEH MEDIAL FORM */ + [0xfb9a, 0xfb9a], /* ARABIC LETTER NGOEH ISOLATED FORM */ + [0xfb9b, 0xfb9b], /* ARABIC LETTER NGOEH FINAL FORM */ + [0xfb9c, 0xfb9c], /* ARABIC LETTER NGOEH INITIAL FORM */ + [0xfb9d, 0xfb9d], /* ARABIC LETTER NGOEH MEDIAL FORM */ + [0xfb9e, 0xfb9e], /* ARABIC LETTER NOON GHUNNA ISOLATED FORM */ + [0xfb9f, 0xfb9f], /* ARABIC LETTER NOON GHUNNA FINAL FORM */ + [0xfba0, 0xfba0], /* ARABIC LETTER RNOON ISOLATED FORM */ + [0xfba1, 0xfba1], /* ARABIC LETTER RNOON FINAL FORM */ + [0xfba2, 0xfba2], /* ARABIC LETTER RNOON INITIAL FORM */ + [0xfba3, 0xfba3], /* ARABIC LETTER RNOON MEDIAL FORM */ + [0xfba4, 0xfba4], /* ARABIC LETTER HEH WITH YEH ABOVE ISOLATED FORM */ + [0xfba5, 0xfba5], /* ARABIC LETTER HEH WITH YEH ABOVE FINAL FORM */ + [0xfba6, 0xfba6], /* ARABIC LETTER HEH GOAL ISOLATED FORM */ + [0xfba7, 0xfba7], /* ARABIC LETTER HEH GOAL FINAL FORM */ + [0xfba8, 0xfba8], /* ARABIC LETTER HEH GOAL INITIAL FORM */ + [0xfba9, 0xfba9], /* ARABIC LETTER HEH GOAL MEDIAL FORM */ + [0xfbaa, 0xfbaa], /* ARABIC LETTER HEH DOACHASHMEE ISOLATED FORM */ + [0xfbab, 0xfbab], /* ARABIC LETTER HEH DOACHASHMEE FINAL FORM */ + [0xfbac, 0xfbac], /* ARABIC LETTER HEH DOACHASHMEE INITIAL FORM */ + [0xfbad, 0xfbad], /* ARABIC LETTER HEH DOACHASHMEE MEDIAL FORM */ + [0xfbae, 0xfbae], /* ARABIC LETTER YEH BARREE ISOLATED FORM */ + [0xfbaf, 0xfbaf], /* ARABIC LETTER YEH BARREE FINAL FORM */ + [0xfbb0, 0xfbb0], /* ARABIC LETTER YEH BARREE WITH HAMZA ABOVE ISOLATED FORM */ + [0xfbb1, 0xfbb1], /* ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM */ + [0xfbb2, 0xfbb2], /* ARABIC SYMBOL DOT ABOVE */ + [0xfbb3, 0xfbb3], /* ARABIC SYMBOL DOT BELOW */ + [0xfbb4, 0xfbb4], /* ARABIC SYMBOL TWO DOTS ABOVE */ + [0xfbb5, 0xfbb5], /* ARABIC SYMBOL TWO DOTS BELOW */ + [0xfbb6, 0xfbb6], /* ARABIC SYMBOL THREE DOTS ABOVE */ + [0xfbb7, 0xfbb7], /* ARABIC SYMBOL THREE DOTS BELOW */ + [0xfbb8, 0xfbb8], /* ARABIC SYMBOL THREE DOTS POINTING DOWNWARDS ABOVE */ + [0xfbb9, 0xfbb9], /* ARABIC SYMBOL THREE DOTS POINTING DOWNWARDS BELOW */ + [0xfbba, 0xfbba], /* ARABIC SYMBOL FOUR DOTS ABOVE */ + [0xfbbb, 0xfbbb], /* ARABIC SYMBOL FOUR DOTS BELOW */ + [0xfbbc, 0xfbbc], /* ARABIC SYMBOL DOUBLE VERTICAL BAR BELOW */ + [0xfbbd, 0xfbbd], /* ARABIC SYMBOL TWO DOTS VERTICALLY ABOVE */ + [0xfbbe, 0xfbbe], /* ARABIC SYMBOL TWO DOTS VERTICALLY BELOW */ + [0xfbbf, 0xfbbf], /* ARABIC SYMBOL RING */ + [0xfbc0, 0xfbc0], /* ARABIC SYMBOL SMALL TAH ABOVE */ + [0xfbc1, 0xfbc1], /* ARABIC SYMBOL SMALL TAH BELOW */ + [0xfbc2, 0xfbc2], + [0xfbc3, 0xfbc3], + [0xfbc4, 0xfbc4], + [0xfbc5, 0xfbc5], + [0xfbc6, 0xfbc6], + [0xfbc7, 0xfbc7], + [0xfbc8, 0xfbc8], + [0xfbc9, 0xfbc9], + [0xfbca, 0xfbca], + [0xfbcb, 0xfbcb], + [0xfbcc, 0xfbcc], + [0xfbcd, 0xfbcd], + [0xfbce, 0xfbce], + [0xfbcf, 0xfbcf], + [0xfbd0, 0xfbd0], + [0xfbd1, 0xfbd1], + [0xfbd2, 0xfbd2], + [0xfbd3, 0xfbd3], /* ARABIC LETTER NG ISOLATED FORM */ + [0xfbd4, 0xfbd4], /* ARABIC LETTER NG FINAL FORM */ + [0xfbd5, 0xfbd5], /* ARABIC LETTER NG INITIAL FORM */ + [0xfbd6, 0xfbd6], /* ARABIC LETTER NG MEDIAL FORM */ + [0xfbd7, 0xfbd7], /* ARABIC LETTER U ISOLATED FORM */ + [0xfbd8, 0xfbd8], /* ARABIC LETTER U FINAL FORM */ + [0xfbd9, 0xfbd9], /* ARABIC LETTER OE ISOLATED FORM */ + [0xfbda, 0xfbda], /* ARABIC LETTER OE FINAL FORM */ + [0xfbdb, 0xfbdb], /* ARABIC LETTER YU ISOLATED FORM */ + [0xfbdc, 0xfbdc], /* ARABIC LETTER YU FINAL FORM */ + [0xfbdd, 0xfbdd], /* ARABIC LETTER U WITH HAMZA ABOVE ISOLATED FORM */ + [0xfbde, 0xfbde], /* ARABIC LETTER VE ISOLATED FORM */ + [0xfbdf, 0xfbdf], /* ARABIC LETTER VE FINAL FORM */ + [0xfbe0, 0xfbe0], /* ARABIC LETTER KIRGHIZ OE ISOLATED FORM */ + [0xfbe1, 0xfbe1], /* ARABIC LETTER KIRGHIZ OE FINAL FORM */ + [0xfbe2, 0xfbe2], /* ARABIC LETTER KIRGHIZ YU ISOLATED FORM */ + [0xfbe3, 0xfbe3], /* ARABIC LETTER KIRGHIZ YU FINAL FORM */ + [0xfbe4, 0xfbe4], /* ARABIC LETTER E ISOLATED FORM */ + [0xfbe5, 0xfbe5], /* ARABIC LETTER E FINAL FORM */ + [0xfbe6, 0xfbe6], /* ARABIC LETTER E INITIAL FORM */ + [0xfbe7, 0xfbe7], /* ARABIC LETTER E MEDIAL FORM */ + [0xfbe8, 0xfbe8], /* ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA INITIAL FORM */ + [0xfbe9, 0xfbe9], /* ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA MEDIAL FORM */ + [0xfbea, 0xfbea], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF ISOLATED FORM */ + [0xfbeb, 0xfbeb], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF FINAL FORM */ + [0xfbec, 0xfbec], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE ISOLATED FORM */ + [0xfbed, 0xfbed], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE FINAL FORM */ + [0xfbee, 0xfbee], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW ISOLATED FORM */ + [0xfbef, 0xfbef], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW FINAL FORM */ + [0xfbf0, 0xfbf0], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U ISOLATED FORM */ + [0xfbf1, 0xfbf1], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U FINAL FORM */ + [0xfbf2, 0xfbf2], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE ISOLATED FORM */ + [0xfbf3, 0xfbf3], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE FINAL FORM */ + [0xfbf4, 0xfbf4], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU ISOLATED FORM */ + [0xfbf5, 0xfbf5], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU FINAL FORM */ + [0xfbf6, 0xfbf6], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E ISOLATED FORM */ + [0xfbf7, 0xfbf7], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E FINAL FORM */ + [0xfbf8, 0xfbf8], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E INITIAL FORM */ + [0xfbf9, 0xfbf9], /* ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM */ + [0xfbfa, 0xfbfa], /* ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM */ + [0xfbfb, 0xfbfb], /* ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA INITIAL FORM */ + [0xfbfc, 0xfbfc], /* ARABIC LETTER FARSI YEH ISOLATED FORM */ + [0xfbfd, 0xfbfd], /* ARABIC LETTER FARSI YEH FINAL FORM */ + [0xfbfe, 0xfbfe], /* ARABIC LETTER FARSI YEH INITIAL FORM */ + [0xfbff, 0xfbff], /* ARABIC LETTER FARSI YEH MEDIAL FORM */ + [0xfc00, 0xfc00], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM ISOLATED FORM */ + [0xfc01, 0xfc01], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH ISOLATED FORM */ + [0xfc02, 0xfc02], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM ISOLATED FORM */ + [0xfc03, 0xfc03], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc04, 0xfc04], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH ISOLATED FORM */ + [0xfc05, 0xfc05], /* ARABIC LIGATURE BEH WITH JEEM ISOLATED FORM */ + [0xfc06, 0xfc06], /* ARABIC LIGATURE BEH WITH HAH ISOLATED FORM */ + [0xfc07, 0xfc07], /* ARABIC LIGATURE BEH WITH KHAH ISOLATED FORM */ + [0xfc08, 0xfc08], /* ARABIC LIGATURE BEH WITH MEEM ISOLATED FORM */ + [0xfc09, 0xfc09], /* ARABIC LIGATURE BEH WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc0a, 0xfc0a], /* ARABIC LIGATURE BEH WITH YEH ISOLATED FORM */ + [0xfc0b, 0xfc0b], /* ARABIC LIGATURE TEH WITH JEEM ISOLATED FORM */ + [0xfc0c, 0xfc0c], /* ARABIC LIGATURE TEH WITH HAH ISOLATED FORM */ + [0xfc0d, 0xfc0d], /* ARABIC LIGATURE TEH WITH KHAH ISOLATED FORM */ + [0xfc0e, 0xfc0e], /* ARABIC LIGATURE TEH WITH MEEM ISOLATED FORM */ + [0xfc0f, 0xfc0f], /* ARABIC LIGATURE TEH WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc10, 0xfc10], /* ARABIC LIGATURE TEH WITH YEH ISOLATED FORM */ + [0xfc11, 0xfc11], /* ARABIC LIGATURE THEH WITH JEEM ISOLATED FORM */ + [0xfc12, 0xfc12], /* ARABIC LIGATURE THEH WITH MEEM ISOLATED FORM */ + [0xfc13, 0xfc13], /* ARABIC LIGATURE THEH WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc14, 0xfc14], /* ARABIC LIGATURE THEH WITH YEH ISOLATED FORM */ + [0xfc15, 0xfc15], /* ARABIC LIGATURE JEEM WITH HAH ISOLATED FORM */ + [0xfc16, 0xfc16], /* ARABIC LIGATURE JEEM WITH MEEM ISOLATED FORM */ + [0xfc17, 0xfc17], /* ARABIC LIGATURE HAH WITH JEEM ISOLATED FORM */ + [0xfc18, 0xfc18], /* ARABIC LIGATURE HAH WITH MEEM ISOLATED FORM */ + [0xfc19, 0xfc19], /* ARABIC LIGATURE KHAH WITH JEEM ISOLATED FORM */ + [0xfc1a, 0xfc1a], /* ARABIC LIGATURE KHAH WITH HAH ISOLATED FORM */ + [0xfc1b, 0xfc1b], /* ARABIC LIGATURE KHAH WITH MEEM ISOLATED FORM */ + [0xfc1c, 0xfc1c], /* ARABIC LIGATURE SEEN WITH JEEM ISOLATED FORM */ + [0xfc1d, 0xfc1d], /* ARABIC LIGATURE SEEN WITH HAH ISOLATED FORM */ + [0xfc1e, 0xfc1e], /* ARABIC LIGATURE SEEN WITH KHAH ISOLATED FORM */ + [0xfc1f, 0xfc1f], /* ARABIC LIGATURE SEEN WITH MEEM ISOLATED FORM */ + [0xfc20, 0xfc20], /* ARABIC LIGATURE SAD WITH HAH ISOLATED FORM */ + [0xfc21, 0xfc21], /* ARABIC LIGATURE SAD WITH MEEM ISOLATED FORM */ + [0xfc22, 0xfc22], /* ARABIC LIGATURE DAD WITH JEEM ISOLATED FORM */ + [0xfc23, 0xfc23], /* ARABIC LIGATURE DAD WITH HAH ISOLATED FORM */ + [0xfc24, 0xfc24], /* ARABIC LIGATURE DAD WITH KHAH ISOLATED FORM */ + [0xfc25, 0xfc25], /* ARABIC LIGATURE DAD WITH MEEM ISOLATED FORM */ + [0xfc26, 0xfc26], /* ARABIC LIGATURE TAH WITH HAH ISOLATED FORM */ + [0xfc27, 0xfc27], /* ARABIC LIGATURE TAH WITH MEEM ISOLATED FORM */ + [0xfc28, 0xfc28], /* ARABIC LIGATURE ZAH WITH MEEM ISOLATED FORM */ + [0xfc29, 0xfc29], /* ARABIC LIGATURE AIN WITH JEEM ISOLATED FORM */ + [0xfc2a, 0xfc2a], /* ARABIC LIGATURE AIN WITH MEEM ISOLATED FORM */ + [0xfc2b, 0xfc2b], /* ARABIC LIGATURE GHAIN WITH JEEM ISOLATED FORM */ + [0xfc2c, 0xfc2c], /* ARABIC LIGATURE GHAIN WITH MEEM ISOLATED FORM */ + [0xfc2d, 0xfc2d], /* ARABIC LIGATURE FEH WITH JEEM ISOLATED FORM */ + [0xfc2e, 0xfc2e], /* ARABIC LIGATURE FEH WITH HAH ISOLATED FORM */ + [0xfc2f, 0xfc2f], /* ARABIC LIGATURE FEH WITH KHAH ISOLATED FORM */ + [0xfc30, 0xfc30], /* ARABIC LIGATURE FEH WITH MEEM ISOLATED FORM */ + [0xfc31, 0xfc31], /* ARABIC LIGATURE FEH WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc32, 0xfc32], /* ARABIC LIGATURE FEH WITH YEH ISOLATED FORM */ + [0xfc33, 0xfc33], /* ARABIC LIGATURE QAF WITH HAH ISOLATED FORM */ + [0xfc34, 0xfc34], /* ARABIC LIGATURE QAF WITH MEEM ISOLATED FORM */ + [0xfc35, 0xfc35], /* ARABIC LIGATURE QAF WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc36, 0xfc36], /* ARABIC LIGATURE QAF WITH YEH ISOLATED FORM */ + [0xfc37, 0xfc37], /* ARABIC LIGATURE KAF WITH ALEF ISOLATED FORM */ + [0xfc38, 0xfc38], /* ARABIC LIGATURE KAF WITH JEEM ISOLATED FORM */ + [0xfc39, 0xfc39], /* ARABIC LIGATURE KAF WITH HAH ISOLATED FORM */ + [0xfc3a, 0xfc3a], /* ARABIC LIGATURE KAF WITH KHAH ISOLATED FORM */ + [0xfc3b, 0xfc3b], /* ARABIC LIGATURE KAF WITH LAM ISOLATED FORM */ + [0xfc3c, 0xfc3c], /* ARABIC LIGATURE KAF WITH MEEM ISOLATED FORM */ + [0xfc3d, 0xfc3d], /* ARABIC LIGATURE KAF WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc3e, 0xfc3e], /* ARABIC LIGATURE KAF WITH YEH ISOLATED FORM */ + [0xfc3f, 0xfc3f], /* ARABIC LIGATURE LAM WITH JEEM ISOLATED FORM */ + [0xfc40, 0xfc40], /* ARABIC LIGATURE LAM WITH HAH ISOLATED FORM */ + [0xfc41, 0xfc41], /* ARABIC LIGATURE LAM WITH KHAH ISOLATED FORM */ + [0xfc42, 0xfc42], /* ARABIC LIGATURE LAM WITH MEEM ISOLATED FORM */ + [0xfc43, 0xfc43], /* ARABIC LIGATURE LAM WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc44, 0xfc44], /* ARABIC LIGATURE LAM WITH YEH ISOLATED FORM */ + [0xfc45, 0xfc45], /* ARABIC LIGATURE MEEM WITH JEEM ISOLATED FORM */ + [0xfc46, 0xfc46], /* ARABIC LIGATURE MEEM WITH HAH ISOLATED FORM */ + [0xfc47, 0xfc47], /* ARABIC LIGATURE MEEM WITH KHAH ISOLATED FORM */ + [0xfc48, 0xfc48], /* ARABIC LIGATURE MEEM WITH MEEM ISOLATED FORM */ + [0xfc49, 0xfc49], /* ARABIC LIGATURE MEEM WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc4a, 0xfc4a], /* ARABIC LIGATURE MEEM WITH YEH ISOLATED FORM */ + [0xfc4b, 0xfc4b], /* ARABIC LIGATURE NOON WITH JEEM ISOLATED FORM */ + [0xfc4c, 0xfc4c], /* ARABIC LIGATURE NOON WITH HAH ISOLATED FORM */ + [0xfc4d, 0xfc4d], /* ARABIC LIGATURE NOON WITH KHAH ISOLATED FORM */ + [0xfc4e, 0xfc4e], /* ARABIC LIGATURE NOON WITH MEEM ISOLATED FORM */ + [0xfc4f, 0xfc4f], /* ARABIC LIGATURE NOON WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc50, 0xfc50], /* ARABIC LIGATURE NOON WITH YEH ISOLATED FORM */ + [0xfc51, 0xfc51], /* ARABIC LIGATURE HEH WITH JEEM ISOLATED FORM */ + [0xfc52, 0xfc52], /* ARABIC LIGATURE HEH WITH MEEM ISOLATED FORM */ + [0xfc53, 0xfc53], /* ARABIC LIGATURE HEH WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc54, 0xfc54], /* ARABIC LIGATURE HEH WITH YEH ISOLATED FORM */ + [0xfc55, 0xfc55], /* ARABIC LIGATURE YEH WITH JEEM ISOLATED FORM */ + [0xfc56, 0xfc56], /* ARABIC LIGATURE YEH WITH HAH ISOLATED FORM */ + [0xfc57, 0xfc57], /* ARABIC LIGATURE YEH WITH KHAH ISOLATED FORM */ + [0xfc58, 0xfc58], /* ARABIC LIGATURE YEH WITH MEEM ISOLATED FORM */ + [0xfc59, 0xfc59], /* ARABIC LIGATURE YEH WITH ALEF MAKSURA ISOLATED FORM */ + [0xfc5a, 0xfc5a], /* ARABIC LIGATURE YEH WITH YEH ISOLATED FORM */ + [0xfc5b, 0xfc5b], /* ARABIC LIGATURE THAL WITH SUPERSCRIPT ALEF ISOLATED FORM */ + [0xfc5c, 0xfc5c], /* ARABIC LIGATURE REH WITH SUPERSCRIPT ALEF ISOLATED FORM */ + [0xfc5d, 0xfc5d], /* ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF ISOLATED FORM */ + [0xfc5e, 0xfc5e], /* ARABIC LIGATURE SHADDA WITH DAMMATAN ISOLATED FORM */ + [0xfc5f, 0xfc5f], /* ARABIC LIGATURE SHADDA WITH KASRATAN ISOLATED FORM */ + [0xfc60, 0xfc60], /* ARABIC LIGATURE SHADDA WITH FATHA ISOLATED FORM */ + [0xfc61, 0xfc61], /* ARABIC LIGATURE SHADDA WITH DAMMA ISOLATED FORM */ + [0xfc62, 0xfc62], /* ARABIC LIGATURE SHADDA WITH KASRA ISOLATED FORM */ + [0xfc63, 0xfc63], /* ARABIC LIGATURE SHADDA WITH SUPERSCRIPT ALEF ISOLATED FORM */ + [0xfc64, 0xfc64], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH REH FINAL FORM */ + [0xfc65, 0xfc65], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ZAIN FINAL FORM */ + [0xfc66, 0xfc66], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM FINAL FORM */ + [0xfc67, 0xfc67], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH NOON FINAL FORM */ + [0xfc68, 0xfc68], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM */ + [0xfc69, 0xfc69], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH FINAL FORM */ + [0xfc6a, 0xfc6a], /* ARABIC LIGATURE BEH WITH REH FINAL FORM */ + [0xfc6b, 0xfc6b], /* ARABIC LIGATURE BEH WITH ZAIN FINAL FORM */ + [0xfc6c, 0xfc6c], /* ARABIC LIGATURE BEH WITH MEEM FINAL FORM */ + [0xfc6d, 0xfc6d], /* ARABIC LIGATURE BEH WITH NOON FINAL FORM */ + [0xfc6e, 0xfc6e], /* ARABIC LIGATURE BEH WITH ALEF MAKSURA FINAL FORM */ + [0xfc6f, 0xfc6f], /* ARABIC LIGATURE BEH WITH YEH FINAL FORM */ + [0xfc70, 0xfc70], /* ARABIC LIGATURE TEH WITH REH FINAL FORM */ + [0xfc71, 0xfc71], /* ARABIC LIGATURE TEH WITH ZAIN FINAL FORM */ + [0xfc72, 0xfc72], /* ARABIC LIGATURE TEH WITH MEEM FINAL FORM */ + [0xfc73, 0xfc73], /* ARABIC LIGATURE TEH WITH NOON FINAL FORM */ + [0xfc74, 0xfc74], /* ARABIC LIGATURE TEH WITH ALEF MAKSURA FINAL FORM */ + [0xfc75, 0xfc75], /* ARABIC LIGATURE TEH WITH YEH FINAL FORM */ + [0xfc76, 0xfc76], /* ARABIC LIGATURE THEH WITH REH FINAL FORM */ + [0xfc77, 0xfc77], /* ARABIC LIGATURE THEH WITH ZAIN FINAL FORM */ + [0xfc78, 0xfc78], /* ARABIC LIGATURE THEH WITH MEEM FINAL FORM */ + [0xfc79, 0xfc79], /* ARABIC LIGATURE THEH WITH NOON FINAL FORM */ + [0xfc7a, 0xfc7a], /* ARABIC LIGATURE THEH WITH ALEF MAKSURA FINAL FORM */ + [0xfc7b, 0xfc7b], /* ARABIC LIGATURE THEH WITH YEH FINAL FORM */ + [0xfc7c, 0xfc7c], /* ARABIC LIGATURE FEH WITH ALEF MAKSURA FINAL FORM */ + [0xfc7d, 0xfc7d], /* ARABIC LIGATURE FEH WITH YEH FINAL FORM */ + [0xfc7e, 0xfc7e], /* ARABIC LIGATURE QAF WITH ALEF MAKSURA FINAL FORM */ + [0xfc7f, 0xfc7f], /* ARABIC LIGATURE QAF WITH YEH FINAL FORM */ + [0xfc80, 0xfc80], /* ARABIC LIGATURE KAF WITH ALEF FINAL FORM */ + [0xfc81, 0xfc81], /* ARABIC LIGATURE KAF WITH LAM FINAL FORM */ + [0xfc82, 0xfc82], /* ARABIC LIGATURE KAF WITH MEEM FINAL FORM */ + [0xfc83, 0xfc83], /* ARABIC LIGATURE KAF WITH ALEF MAKSURA FINAL FORM */ + [0xfc84, 0xfc84], /* ARABIC LIGATURE KAF WITH YEH FINAL FORM */ + [0xfc85, 0xfc85], /* ARABIC LIGATURE LAM WITH MEEM FINAL FORM */ + [0xfc86, 0xfc86], /* ARABIC LIGATURE LAM WITH ALEF MAKSURA FINAL FORM */ + [0xfc87, 0xfc87], /* ARABIC LIGATURE LAM WITH YEH FINAL FORM */ + [0xfc88, 0xfc88], /* ARABIC LIGATURE MEEM WITH ALEF FINAL FORM */ + [0xfc89, 0xfc89], /* ARABIC LIGATURE MEEM WITH MEEM FINAL FORM */ + [0xfc8a, 0xfc8a], /* ARABIC LIGATURE NOON WITH REH FINAL FORM */ + [0xfc8b, 0xfc8b], /* ARABIC LIGATURE NOON WITH ZAIN FINAL FORM */ + [0xfc8c, 0xfc8c], /* ARABIC LIGATURE NOON WITH MEEM FINAL FORM */ + [0xfc8d, 0xfc8d], /* ARABIC LIGATURE NOON WITH NOON FINAL FORM */ + [0xfc8e, 0xfc8e], /* ARABIC LIGATURE NOON WITH ALEF MAKSURA FINAL FORM */ + [0xfc8f, 0xfc8f], /* ARABIC LIGATURE NOON WITH YEH FINAL FORM */ + [0xfc90, 0xfc90], /* ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF FINAL FORM */ + [0xfc91, 0xfc91], /* ARABIC LIGATURE YEH WITH REH FINAL FORM */ + [0xfc92, 0xfc92], /* ARABIC LIGATURE YEH WITH ZAIN FINAL FORM */ + [0xfc93, 0xfc93], /* ARABIC LIGATURE YEH WITH MEEM FINAL FORM */ + [0xfc94, 0xfc94], /* ARABIC LIGATURE YEH WITH NOON FINAL FORM */ + [0xfc95, 0xfc95], /* ARABIC LIGATURE YEH WITH ALEF MAKSURA FINAL FORM */ + [0xfc96, 0xfc96], /* ARABIC LIGATURE YEH WITH YEH FINAL FORM */ + [0xfc97, 0xfc97], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM INITIAL FORM */ + [0xfc98, 0xfc98], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH INITIAL FORM */ + [0xfc99, 0xfc99], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH KHAH INITIAL FORM */ + [0xfc9a, 0xfc9a], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM INITIAL FORM */ + [0xfc9b, 0xfc9b], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH INITIAL FORM */ + [0xfc9c, 0xfc9c], /* ARABIC LIGATURE BEH WITH JEEM INITIAL FORM */ + [0xfc9d, 0xfc9d], /* ARABIC LIGATURE BEH WITH HAH INITIAL FORM */ + [0xfc9e, 0xfc9e], /* ARABIC LIGATURE BEH WITH KHAH INITIAL FORM */ + [0xfc9f, 0xfc9f], /* ARABIC LIGATURE BEH WITH MEEM INITIAL FORM */ + [0xfca0, 0xfca0], /* ARABIC LIGATURE BEH WITH HEH INITIAL FORM */ + [0xfca1, 0xfca1], /* ARABIC LIGATURE TEH WITH JEEM INITIAL FORM */ + [0xfca2, 0xfca2], /* ARABIC LIGATURE TEH WITH HAH INITIAL FORM */ + [0xfca3, 0xfca3], /* ARABIC LIGATURE TEH WITH KHAH INITIAL FORM */ + [0xfca4, 0xfca4], /* ARABIC LIGATURE TEH WITH MEEM INITIAL FORM */ + [0xfca5, 0xfca5], /* ARABIC LIGATURE TEH WITH HEH INITIAL FORM */ + [0xfca6, 0xfca6], /* ARABIC LIGATURE THEH WITH MEEM INITIAL FORM */ + [0xfca7, 0xfca7], /* ARABIC LIGATURE JEEM WITH HAH INITIAL FORM */ + [0xfca8, 0xfca8], /* ARABIC LIGATURE JEEM WITH MEEM INITIAL FORM */ + [0xfca9, 0xfca9], /* ARABIC LIGATURE HAH WITH JEEM INITIAL FORM */ + [0xfcaa, 0xfcaa], /* ARABIC LIGATURE HAH WITH MEEM INITIAL FORM */ + [0xfcab, 0xfcab], /* ARABIC LIGATURE KHAH WITH JEEM INITIAL FORM */ + [0xfcac, 0xfcac], /* ARABIC LIGATURE KHAH WITH MEEM INITIAL FORM */ + [0xfcad, 0xfcad], /* ARABIC LIGATURE SEEN WITH JEEM INITIAL FORM */ + [0xfcae, 0xfcae], /* ARABIC LIGATURE SEEN WITH HAH INITIAL FORM */ + [0xfcaf, 0xfcaf], /* ARABIC LIGATURE SEEN WITH KHAH INITIAL FORM */ + [0xfcb0, 0xfcb0], /* ARABIC LIGATURE SEEN WITH MEEM INITIAL FORM */ + [0xfcb1, 0xfcb1], /* ARABIC LIGATURE SAD WITH HAH INITIAL FORM */ + [0xfcb2, 0xfcb2], /* ARABIC LIGATURE SAD WITH KHAH INITIAL FORM */ + [0xfcb3, 0xfcb3], /* ARABIC LIGATURE SAD WITH MEEM INITIAL FORM */ + [0xfcb4, 0xfcb4], /* ARABIC LIGATURE DAD WITH JEEM INITIAL FORM */ + [0xfcb5, 0xfcb5], /* ARABIC LIGATURE DAD WITH HAH INITIAL FORM */ + [0xfcb6, 0xfcb6], /* ARABIC LIGATURE DAD WITH KHAH INITIAL FORM */ + [0xfcb7, 0xfcb7], /* ARABIC LIGATURE DAD WITH MEEM INITIAL FORM */ + [0xfcb8, 0xfcb8], /* ARABIC LIGATURE TAH WITH HAH INITIAL FORM */ + [0xfcb9, 0xfcb9], /* ARABIC LIGATURE ZAH WITH MEEM INITIAL FORM */ + [0xfcba, 0xfcba], /* ARABIC LIGATURE AIN WITH JEEM INITIAL FORM */ + [0xfcbb, 0xfcbb], /* ARABIC LIGATURE AIN WITH MEEM INITIAL FORM */ + [0xfcbc, 0xfcbc], /* ARABIC LIGATURE GHAIN WITH JEEM INITIAL FORM */ + [0xfcbd, 0xfcbd], /* ARABIC LIGATURE GHAIN WITH MEEM INITIAL FORM */ + [0xfcbe, 0xfcbe], /* ARABIC LIGATURE FEH WITH JEEM INITIAL FORM */ + [0xfcbf, 0xfcbf], /* ARABIC LIGATURE FEH WITH HAH INITIAL FORM */ + [0xfcc0, 0xfcc0], /* ARABIC LIGATURE FEH WITH KHAH INITIAL FORM */ + [0xfcc1, 0xfcc1], /* ARABIC LIGATURE FEH WITH MEEM INITIAL FORM */ + [0xfcc2, 0xfcc2], /* ARABIC LIGATURE QAF WITH HAH INITIAL FORM */ + [0xfcc3, 0xfcc3], /* ARABIC LIGATURE QAF WITH MEEM INITIAL FORM */ + [0xfcc4, 0xfcc4], /* ARABIC LIGATURE KAF WITH JEEM INITIAL FORM */ + [0xfcc5, 0xfcc5], /* ARABIC LIGATURE KAF WITH HAH INITIAL FORM */ + [0xfcc6, 0xfcc6], /* ARABIC LIGATURE KAF WITH KHAH INITIAL FORM */ + [0xfcc7, 0xfcc7], /* ARABIC LIGATURE KAF WITH LAM INITIAL FORM */ + [0xfcc8, 0xfcc8], /* ARABIC LIGATURE KAF WITH MEEM INITIAL FORM */ + [0xfcc9, 0xfcc9], /* ARABIC LIGATURE LAM WITH JEEM INITIAL FORM */ + [0xfcca, 0xfcca], /* ARABIC LIGATURE LAM WITH HAH INITIAL FORM */ + [0xfccb, 0xfccb], /* ARABIC LIGATURE LAM WITH KHAH INITIAL FORM */ + [0xfccc, 0xfccc], /* ARABIC LIGATURE LAM WITH MEEM INITIAL FORM */ + [0xfccd, 0xfccd], /* ARABIC LIGATURE LAM WITH HEH INITIAL FORM */ + [0xfcce, 0xfcce], /* ARABIC LIGATURE MEEM WITH JEEM INITIAL FORM */ + [0xfccf, 0xfccf], /* ARABIC LIGATURE MEEM WITH HAH INITIAL FORM */ + [0xfcd0, 0xfcd0], /* ARABIC LIGATURE MEEM WITH KHAH INITIAL FORM */ + [0xfcd1, 0xfcd1], /* ARABIC LIGATURE MEEM WITH MEEM INITIAL FORM */ + [0xfcd2, 0xfcd2], /* ARABIC LIGATURE NOON WITH JEEM INITIAL FORM */ + [0xfcd3, 0xfcd3], /* ARABIC LIGATURE NOON WITH HAH INITIAL FORM */ + [0xfcd4, 0xfcd4], /* ARABIC LIGATURE NOON WITH KHAH INITIAL FORM */ + [0xfcd5, 0xfcd5], /* ARABIC LIGATURE NOON WITH MEEM INITIAL FORM */ + [0xfcd6, 0xfcd6], /* ARABIC LIGATURE NOON WITH HEH INITIAL FORM */ + [0xfcd7, 0xfcd7], /* ARABIC LIGATURE HEH WITH JEEM INITIAL FORM */ + [0xfcd8, 0xfcd8], /* ARABIC LIGATURE HEH WITH MEEM INITIAL FORM */ + [0xfcd9, 0xfcd9], /* ARABIC LIGATURE HEH WITH SUPERSCRIPT ALEF INITIAL FORM */ + [0xfcda, 0xfcda], /* ARABIC LIGATURE YEH WITH JEEM INITIAL FORM */ + [0xfcdb, 0xfcdb], /* ARABIC LIGATURE YEH WITH HAH INITIAL FORM */ + [0xfcdc, 0xfcdc], /* ARABIC LIGATURE YEH WITH KHAH INITIAL FORM */ + [0xfcdd, 0xfcdd], /* ARABIC LIGATURE YEH WITH MEEM INITIAL FORM */ + [0xfcde, 0xfcde], /* ARABIC LIGATURE YEH WITH HEH INITIAL FORM */ + [0xfcdf, 0xfcdf], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM MEDIAL FORM */ + [0xfce0, 0xfce0], /* ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH MEDIAL FORM */ + [0xfce1, 0xfce1], /* ARABIC LIGATURE BEH WITH MEEM MEDIAL FORM */ + [0xfce2, 0xfce2], /* ARABIC LIGATURE BEH WITH HEH MEDIAL FORM */ + [0xfce3, 0xfce3], /* ARABIC LIGATURE TEH WITH MEEM MEDIAL FORM */ + [0xfce4, 0xfce4], /* ARABIC LIGATURE TEH WITH HEH MEDIAL FORM */ + [0xfce5, 0xfce5], /* ARABIC LIGATURE THEH WITH MEEM MEDIAL FORM */ + [0xfce6, 0xfce6], /* ARABIC LIGATURE THEH WITH HEH MEDIAL FORM */ + [0xfce7, 0xfce7], /* ARABIC LIGATURE SEEN WITH MEEM MEDIAL FORM */ + [0xfce8, 0xfce8], /* ARABIC LIGATURE SEEN WITH HEH MEDIAL FORM */ + [0xfce9, 0xfce9], /* ARABIC LIGATURE SHEEN WITH MEEM MEDIAL FORM */ + [0xfcea, 0xfcea], /* ARABIC LIGATURE SHEEN WITH HEH MEDIAL FORM */ + [0xfceb, 0xfceb], /* ARABIC LIGATURE KAF WITH LAM MEDIAL FORM */ + [0xfcec, 0xfcec], /* ARABIC LIGATURE KAF WITH MEEM MEDIAL FORM */ + [0xfced, 0xfced], /* ARABIC LIGATURE LAM WITH MEEM MEDIAL FORM */ + [0xfcee, 0xfcee], /* ARABIC LIGATURE NOON WITH MEEM MEDIAL FORM */ + [0xfcef, 0xfcef], /* ARABIC LIGATURE NOON WITH HEH MEDIAL FORM */ + [0xfcf0, 0xfcf0], /* ARABIC LIGATURE YEH WITH MEEM MEDIAL FORM */ + [0xfcf1, 0xfcf1], /* ARABIC LIGATURE YEH WITH HEH MEDIAL FORM */ + [0xfcf2, 0xfcf2], /* ARABIC LIGATURE SHADDA WITH FATHA MEDIAL FORM */ + [0xfcf3, 0xfcf3], /* ARABIC LIGATURE SHADDA WITH DAMMA MEDIAL FORM */ + [0xfcf4, 0xfcf4], /* ARABIC LIGATURE SHADDA WITH KASRA MEDIAL FORM */ + [0xfcf5, 0xfcf5], /* ARABIC LIGATURE TAH WITH ALEF MAKSURA ISOLATED FORM */ + [0xfcf6, 0xfcf6], /* ARABIC LIGATURE TAH WITH YEH ISOLATED FORM */ + [0xfcf7, 0xfcf7], /* ARABIC LIGATURE AIN WITH ALEF MAKSURA ISOLATED FORM */ + [0xfcf8, 0xfcf8], /* ARABIC LIGATURE AIN WITH YEH ISOLATED FORM */ + [0xfcf9, 0xfcf9], /* ARABIC LIGATURE GHAIN WITH ALEF MAKSURA ISOLATED FORM */ + [0xfcfa, 0xfcfa], /* ARABIC LIGATURE GHAIN WITH YEH ISOLATED FORM */ + [0xfcfb, 0xfcfb], /* ARABIC LIGATURE SEEN WITH ALEF MAKSURA ISOLATED FORM */ + [0xfcfc, 0xfcfc], /* ARABIC LIGATURE SEEN WITH YEH ISOLATED FORM */ + [0xfcfd, 0xfcfd], /* ARABIC LIGATURE SHEEN WITH ALEF MAKSURA ISOLATED FORM */ + [0xfcfe, 0xfcfe], /* ARABIC LIGATURE SHEEN WITH YEH ISOLATED FORM */ + [0xfcff, 0xfcff], /* ARABIC LIGATURE HAH WITH ALEF MAKSURA ISOLATED FORM */ + [0xfd00, 0xfd00], /* ARABIC LIGATURE HAH WITH YEH ISOLATED FORM */ + [0xfd01, 0xfd01], /* ARABIC LIGATURE JEEM WITH ALEF MAKSURA ISOLATED FORM */ + [0xfd02, 0xfd02], /* ARABIC LIGATURE JEEM WITH YEH ISOLATED FORM */ + [0xfd03, 0xfd03], /* ARABIC LIGATURE KHAH WITH ALEF MAKSURA ISOLATED FORM */ + [0xfd04, 0xfd04], /* ARABIC LIGATURE KHAH WITH YEH ISOLATED FORM */ + [0xfd05, 0xfd05], /* ARABIC LIGATURE SAD WITH ALEF MAKSURA ISOLATED FORM */ + [0xfd06, 0xfd06], /* ARABIC LIGATURE SAD WITH YEH ISOLATED FORM */ + [0xfd07, 0xfd07], /* ARABIC LIGATURE DAD WITH ALEF MAKSURA ISOLATED FORM */ + [0xfd08, 0xfd08], /* ARABIC LIGATURE DAD WITH YEH ISOLATED FORM */ + [0xfd09, 0xfd09], /* ARABIC LIGATURE SHEEN WITH JEEM ISOLATED FORM */ + [0xfd0a, 0xfd0a], /* ARABIC LIGATURE SHEEN WITH HAH ISOLATED FORM */ + [0xfd0b, 0xfd0b], /* ARABIC LIGATURE SHEEN WITH KHAH ISOLATED FORM */ + [0xfd0c, 0xfd0c], /* ARABIC LIGATURE SHEEN WITH MEEM ISOLATED FORM */ + [0xfd0d, 0xfd0d], /* ARABIC LIGATURE SHEEN WITH REH ISOLATED FORM */ + [0xfd0e, 0xfd0e], /* ARABIC LIGATURE SEEN WITH REH ISOLATED FORM */ + [0xfd0f, 0xfd0f], /* ARABIC LIGATURE SAD WITH REH ISOLATED FORM */ + [0xfd10, 0xfd10], /* ARABIC LIGATURE DAD WITH REH ISOLATED FORM */ + [0xfd11, 0xfd11], /* ARABIC LIGATURE TAH WITH ALEF MAKSURA FINAL FORM */ + [0xfd12, 0xfd12], /* ARABIC LIGATURE TAH WITH YEH FINAL FORM */ + [0xfd13, 0xfd13], /* ARABIC LIGATURE AIN WITH ALEF MAKSURA FINAL FORM */ + [0xfd14, 0xfd14], /* ARABIC LIGATURE AIN WITH YEH FINAL FORM */ + [0xfd15, 0xfd15], /* ARABIC LIGATURE GHAIN WITH ALEF MAKSURA FINAL FORM */ + [0xfd16, 0xfd16], /* ARABIC LIGATURE GHAIN WITH YEH FINAL FORM */ + [0xfd17, 0xfd17], /* ARABIC LIGATURE SEEN WITH ALEF MAKSURA FINAL FORM */ + [0xfd18, 0xfd18], /* ARABIC LIGATURE SEEN WITH YEH FINAL FORM */ + [0xfd19, 0xfd19], /* ARABIC LIGATURE SHEEN WITH ALEF MAKSURA FINAL FORM */ + [0xfd1a, 0xfd1a], /* ARABIC LIGATURE SHEEN WITH YEH FINAL FORM */ + [0xfd1b, 0xfd1b], /* ARABIC LIGATURE HAH WITH ALEF MAKSURA FINAL FORM */ + [0xfd1c, 0xfd1c], /* ARABIC LIGATURE HAH WITH YEH FINAL FORM */ + [0xfd1d, 0xfd1d], /* ARABIC LIGATURE JEEM WITH ALEF MAKSURA FINAL FORM */ + [0xfd1e, 0xfd1e], /* ARABIC LIGATURE JEEM WITH YEH FINAL FORM */ + [0xfd1f, 0xfd1f], /* ARABIC LIGATURE KHAH WITH ALEF MAKSURA FINAL FORM */ + [0xfd20, 0xfd20], /* ARABIC LIGATURE KHAH WITH YEH FINAL FORM */ + [0xfd21, 0xfd21], /* ARABIC LIGATURE SAD WITH ALEF MAKSURA FINAL FORM */ + [0xfd22, 0xfd22], /* ARABIC LIGATURE SAD WITH YEH FINAL FORM */ + [0xfd23, 0xfd23], /* ARABIC LIGATURE DAD WITH ALEF MAKSURA FINAL FORM */ + [0xfd24, 0xfd24], /* ARABIC LIGATURE DAD WITH YEH FINAL FORM */ + [0xfd25, 0xfd25], /* ARABIC LIGATURE SHEEN WITH JEEM FINAL FORM */ + [0xfd26, 0xfd26], /* ARABIC LIGATURE SHEEN WITH HAH FINAL FORM */ + [0xfd27, 0xfd27], /* ARABIC LIGATURE SHEEN WITH KHAH FINAL FORM */ + [0xfd28, 0xfd28], /* ARABIC LIGATURE SHEEN WITH MEEM FINAL FORM */ + [0xfd29, 0xfd29], /* ARABIC LIGATURE SHEEN WITH REH FINAL FORM */ + [0xfd2a, 0xfd2a], /* ARABIC LIGATURE SEEN WITH REH FINAL FORM */ + [0xfd2b, 0xfd2b], /* ARABIC LIGATURE SAD WITH REH FINAL FORM */ + [0xfd2c, 0xfd2c], /* ARABIC LIGATURE DAD WITH REH FINAL FORM */ + [0xfd2d, 0xfd2d], /* ARABIC LIGATURE SHEEN WITH JEEM INITIAL FORM */ + [0xfd2e, 0xfd2e], /* ARABIC LIGATURE SHEEN WITH HAH INITIAL FORM */ + [0xfd2f, 0xfd2f], /* ARABIC LIGATURE SHEEN WITH KHAH INITIAL FORM */ + [0xfd30, 0xfd30], /* ARABIC LIGATURE SHEEN WITH MEEM INITIAL FORM */ + [0xfd31, 0xfd31], /* ARABIC LIGATURE SEEN WITH HEH INITIAL FORM */ + [0xfd32, 0xfd32], /* ARABIC LIGATURE SHEEN WITH HEH INITIAL FORM */ + [0xfd33, 0xfd33], /* ARABIC LIGATURE TAH WITH MEEM INITIAL FORM */ + [0xfd34, 0xfd34], /* ARABIC LIGATURE SEEN WITH JEEM MEDIAL FORM */ + [0xfd35, 0xfd35], /* ARABIC LIGATURE SEEN WITH HAH MEDIAL FORM */ + [0xfd36, 0xfd36], /* ARABIC LIGATURE SEEN WITH KHAH MEDIAL FORM */ + [0xfd37, 0xfd37], /* ARABIC LIGATURE SHEEN WITH JEEM MEDIAL FORM */ + [0xfd38, 0xfd38], /* ARABIC LIGATURE SHEEN WITH HAH MEDIAL FORM */ + [0xfd39, 0xfd39], /* ARABIC LIGATURE SHEEN WITH KHAH MEDIAL FORM */ + [0xfd3a, 0xfd3a], /* ARABIC LIGATURE TAH WITH MEEM MEDIAL FORM */ + [0xfd3b, 0xfd3b], /* ARABIC LIGATURE ZAH WITH MEEM MEDIAL FORM */ + [0xfd3c, 0xfd3c], /* ARABIC LIGATURE ALEF WITH FATHATAN FINAL FORM */ + [0xfd3d, 0xfd3d], /* ARABIC LIGATURE ALEF WITH FATHATAN ISOLATED FORM */ + [0xfd3e, 0xfd3e], /* ORNATE LEFT PARENTHESIS */ + [0xfd3f, 0xfd3f], /* ORNATE RIGHT PARENTHESIS */ + [0xfd40, 0xfd40], + [0xfd41, 0xfd41], + [0xfd42, 0xfd42], + [0xfd43, 0xfd43], + [0xfd44, 0xfd44], + [0xfd45, 0xfd45], + [0xfd46, 0xfd46], + [0xfd47, 0xfd47], + [0xfd48, 0xfd48], + [0xfd49, 0xfd49], + [0xfd4a, 0xfd4a], + [0xfd4b, 0xfd4b], + [0xfd4c, 0xfd4c], + [0xfd4d, 0xfd4d], + [0xfd4e, 0xfd4e], + [0xfd4f, 0xfd4f], + [0xfd50, 0xfd50], /* ARABIC LIGATURE TEH WITH JEEM WITH MEEM INITIAL FORM */ + [0xfd51, 0xfd51], /* ARABIC LIGATURE TEH WITH HAH WITH JEEM FINAL FORM */ + [0xfd52, 0xfd52], /* ARABIC LIGATURE TEH WITH HAH WITH JEEM INITIAL FORM */ + [0xfd53, 0xfd53], /* ARABIC LIGATURE TEH WITH HAH WITH MEEM INITIAL FORM */ + [0xfd54, 0xfd54], /* ARABIC LIGATURE TEH WITH KHAH WITH MEEM INITIAL FORM */ + [0xfd55, 0xfd55], /* ARABIC LIGATURE TEH WITH MEEM WITH JEEM INITIAL FORM */ + [0xfd56, 0xfd56], /* ARABIC LIGATURE TEH WITH MEEM WITH HAH INITIAL FORM */ + [0xfd57, 0xfd57], /* ARABIC LIGATURE TEH WITH MEEM WITH KHAH INITIAL FORM */ + [0xfd58, 0xfd58], /* ARABIC LIGATURE JEEM WITH MEEM WITH HAH FINAL FORM */ + [0xfd59, 0xfd59], /* ARABIC LIGATURE JEEM WITH MEEM WITH HAH INITIAL FORM */ + [0xfd5a, 0xfd5a], /* ARABIC LIGATURE HAH WITH MEEM WITH YEH FINAL FORM */ + [0xfd5b, 0xfd5b], /* ARABIC LIGATURE HAH WITH MEEM WITH ALEF MAKSURA FINAL FORM */ + [0xfd5c, 0xfd5c], /* ARABIC LIGATURE SEEN WITH HAH WITH JEEM INITIAL FORM */ + [0xfd5d, 0xfd5d], /* ARABIC LIGATURE SEEN WITH JEEM WITH HAH INITIAL FORM */ + [0xfd5e, 0xfd5e], /* ARABIC LIGATURE SEEN WITH JEEM WITH ALEF MAKSURA FINAL FORM */ + [0xfd5f, 0xfd5f], /* ARABIC LIGATURE SEEN WITH MEEM WITH HAH FINAL FORM */ + [0xfd60, 0xfd60], /* ARABIC LIGATURE SEEN WITH MEEM WITH HAH INITIAL FORM */ + [0xfd61, 0xfd61], /* ARABIC LIGATURE SEEN WITH MEEM WITH JEEM INITIAL FORM */ + [0xfd62, 0xfd62], /* ARABIC LIGATURE SEEN WITH MEEM WITH MEEM FINAL FORM */ + [0xfd63, 0xfd63], /* ARABIC LIGATURE SEEN WITH MEEM WITH MEEM INITIAL FORM */ + [0xfd64, 0xfd64], /* ARABIC LIGATURE SAD WITH HAH WITH HAH FINAL FORM */ + [0xfd65, 0xfd65], /* ARABIC LIGATURE SAD WITH HAH WITH HAH INITIAL FORM */ + [0xfd66, 0xfd66], /* ARABIC LIGATURE SAD WITH MEEM WITH MEEM FINAL FORM */ + [0xfd67, 0xfd67], /* ARABIC LIGATURE SHEEN WITH HAH WITH MEEM FINAL FORM */ + [0xfd68, 0xfd68], /* ARABIC LIGATURE SHEEN WITH HAH WITH MEEM INITIAL FORM */ + [0xfd69, 0xfd69], /* ARABIC LIGATURE SHEEN WITH JEEM WITH YEH FINAL FORM */ + [0xfd6a, 0xfd6a], /* ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH FINAL FORM */ + [0xfd6b, 0xfd6b], /* ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH INITIAL FORM */ + [0xfd6c, 0xfd6c], /* ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM FINAL FORM */ + [0xfd6d, 0xfd6d], /* ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM INITIAL FORM */ + [0xfd6e, 0xfd6e], /* ARABIC LIGATURE DAD WITH HAH WITH ALEF MAKSURA FINAL FORM */ + [0xfd6f, 0xfd6f], /* ARABIC LIGATURE DAD WITH KHAH WITH MEEM FINAL FORM */ + [0xfd70, 0xfd70], /* ARABIC LIGATURE DAD WITH KHAH WITH MEEM INITIAL FORM */ + [0xfd71, 0xfd71], /* ARABIC LIGATURE TAH WITH MEEM WITH HAH FINAL FORM */ + [0xfd72, 0xfd72], /* ARABIC LIGATURE TAH WITH MEEM WITH HAH INITIAL FORM */ + [0xfd73, 0xfd73], /* ARABIC LIGATURE TAH WITH MEEM WITH MEEM INITIAL FORM */ + [0xfd74, 0xfd74], /* ARABIC LIGATURE TAH WITH MEEM WITH YEH FINAL FORM */ + [0xfd75, 0xfd75], /* ARABIC LIGATURE AIN WITH JEEM WITH MEEM FINAL FORM */ + [0xfd76, 0xfd76], /* ARABIC LIGATURE AIN WITH MEEM WITH MEEM FINAL FORM */ + [0xfd77, 0xfd77], /* ARABIC LIGATURE AIN WITH MEEM WITH MEEM INITIAL FORM */ + [0xfd78, 0xfd78], /* ARABIC LIGATURE AIN WITH MEEM WITH ALEF MAKSURA FINAL FORM */ + [0xfd79, 0xfd79], /* ARABIC LIGATURE GHAIN WITH MEEM WITH MEEM FINAL FORM */ + [0xfd7a, 0xfd7a], /* ARABIC LIGATURE GHAIN WITH MEEM WITH YEH FINAL FORM */ + [0xfd7b, 0xfd7b], /* ARABIC LIGATURE GHAIN WITH MEEM WITH ALEF MAKSURA FINAL FORM */ + [0xfd7c, 0xfd7c], /* ARABIC LIGATURE FEH WITH KHAH WITH MEEM FINAL FORM */ + [0xfd7d, 0xfd7d], /* ARABIC LIGATURE FEH WITH KHAH WITH MEEM INITIAL FORM */ + [0xfd7e, 0xfd7e], /* ARABIC LIGATURE QAF WITH MEEM WITH HAH FINAL FORM */ + [0xfd7f, 0xfd7f], /* ARABIC LIGATURE QAF WITH MEEM WITH MEEM FINAL FORM */ + [0xfd80, 0xfd80], /* ARABIC LIGATURE LAM WITH HAH WITH MEEM FINAL FORM */ + [0xfd81, 0xfd81], /* ARABIC LIGATURE LAM WITH HAH WITH YEH FINAL FORM */ + [0xfd82, 0xfd82], /* ARABIC LIGATURE LAM WITH HAH WITH ALEF MAKSURA FINAL FORM */ + [0xfd83, 0xfd83], /* ARABIC LIGATURE LAM WITH JEEM WITH JEEM INITIAL FORM */ + [0xfd84, 0xfd84], /* ARABIC LIGATURE LAM WITH JEEM WITH JEEM FINAL FORM */ + [0xfd85, 0xfd85], /* ARABIC LIGATURE LAM WITH KHAH WITH MEEM FINAL FORM */ + [0xfd86, 0xfd86], /* ARABIC LIGATURE LAM WITH KHAH WITH MEEM INITIAL FORM */ + [0xfd87, 0xfd87], /* ARABIC LIGATURE LAM WITH MEEM WITH HAH FINAL FORM */ + [0xfd88, 0xfd88], /* ARABIC LIGATURE LAM WITH MEEM WITH HAH INITIAL FORM */ + [0xfd89, 0xfd89], /* ARABIC LIGATURE MEEM WITH HAH WITH JEEM INITIAL FORM */ + [0xfd8a, 0xfd8a], /* ARABIC LIGATURE MEEM WITH HAH WITH MEEM INITIAL FORM */ + [0xfd8b, 0xfd8b], /* ARABIC LIGATURE MEEM WITH HAH WITH YEH FINAL FORM */ + [0xfd8c, 0xfd8c], /* ARABIC LIGATURE MEEM WITH JEEM WITH HAH INITIAL FORM */ + [0xfd8d, 0xfd8d], /* ARABIC LIGATURE MEEM WITH JEEM WITH MEEM INITIAL FORM */ + [0xfd8e, 0xfd8e], /* ARABIC LIGATURE MEEM WITH KHAH WITH JEEM INITIAL FORM */ + [0xfd8f, 0xfd8f], /* ARABIC LIGATURE MEEM WITH KHAH WITH MEEM INITIAL FORM */ + [0xfd90, 0xfd90], + [0xfd91, 0xfd91], + [0xfd92, 0xfd92], /* ARABIC LIGATURE MEEM WITH JEEM WITH KHAH INITIAL FORM */ + [0xfd93, 0xfd93], /* ARABIC LIGATURE HEH WITH MEEM WITH JEEM INITIAL FORM */ + [0xfd94, 0xfd94], /* ARABIC LIGATURE HEH WITH MEEM WITH MEEM INITIAL FORM */ + [0xfd95, 0xfd95], /* ARABIC LIGATURE NOON WITH HAH WITH MEEM INITIAL FORM */ + [0xfd96, 0xfd96], /* ARABIC LIGATURE NOON WITH HAH WITH ALEF MAKSURA FINAL FORM */ + [0xfd97, 0xfd97], /* ARABIC LIGATURE NOON WITH JEEM WITH MEEM FINAL FORM */ + [0xfd98, 0xfd98], /* ARABIC LIGATURE NOON WITH JEEM WITH MEEM INITIAL FORM */ + [0xfd99, 0xfd99], /* ARABIC LIGATURE NOON WITH JEEM WITH ALEF MAKSURA FINAL FORM */ + [0xfd9a, 0xfd9a], /* ARABIC LIGATURE NOON WITH MEEM WITH YEH FINAL FORM */ + [0xfd9b, 0xfd9b], /* ARABIC LIGATURE NOON WITH MEEM WITH ALEF MAKSURA FINAL FORM */ + [0xfd9c, 0xfd9c], /* ARABIC LIGATURE YEH WITH MEEM WITH MEEM FINAL FORM */ + [0xfd9d, 0xfd9d], /* ARABIC LIGATURE YEH WITH MEEM WITH MEEM INITIAL FORM */ + [0xfd9e, 0xfd9e], /* ARABIC LIGATURE BEH WITH KHAH WITH YEH FINAL FORM */ + [0xfd9f, 0xfd9f], /* ARABIC LIGATURE TEH WITH JEEM WITH YEH FINAL FORM */ + [0xfda0, 0xfda0], /* ARABIC LIGATURE TEH WITH JEEM WITH ALEF MAKSURA FINAL FORM */ + [0xfda1, 0xfda1], /* ARABIC LIGATURE TEH WITH KHAH WITH YEH FINAL FORM */ + [0xfda2, 0xfda2], /* ARABIC LIGATURE TEH WITH KHAH WITH ALEF MAKSURA FINAL FORM */ + [0xfda3, 0xfda3], /* ARABIC LIGATURE TEH WITH MEEM WITH YEH FINAL FORM */ + [0xfda4, 0xfda4], /* ARABIC LIGATURE TEH WITH MEEM WITH ALEF MAKSURA FINAL FORM */ + [0xfda5, 0xfda5], /* ARABIC LIGATURE JEEM WITH MEEM WITH YEH FINAL FORM */ + [0xfda6, 0xfda6], /* ARABIC LIGATURE JEEM WITH HAH WITH ALEF MAKSURA FINAL FORM */ + [0xfda7, 0xfda7], /* ARABIC LIGATURE JEEM WITH MEEM WITH ALEF MAKSURA FINAL FORM */ + [0xfda8, 0xfda8], /* ARABIC LIGATURE SEEN WITH KHAH WITH ALEF MAKSURA FINAL FORM */ + [0xfda9, 0xfda9], /* ARABIC LIGATURE SAD WITH HAH WITH YEH FINAL FORM */ + [0xfdaa, 0xfdaa], /* ARABIC LIGATURE SHEEN WITH HAH WITH YEH FINAL FORM */ + [0xfdab, 0xfdab], /* ARABIC LIGATURE DAD WITH HAH WITH YEH FINAL FORM */ + [0xfdac, 0xfdac], /* ARABIC LIGATURE LAM WITH JEEM WITH YEH FINAL FORM */ + [0xfdad, 0xfdad], /* ARABIC LIGATURE LAM WITH MEEM WITH YEH FINAL FORM */ + [0xfdae, 0xfdae], /* ARABIC LIGATURE YEH WITH HAH WITH YEH FINAL FORM */ + [0xfdaf, 0xfdaf], /* ARABIC LIGATURE YEH WITH JEEM WITH YEH FINAL FORM */ + [0xfdb0, 0xfdb0], /* ARABIC LIGATURE YEH WITH MEEM WITH YEH FINAL FORM */ + [0xfdb1, 0xfdb1], /* ARABIC LIGATURE MEEM WITH MEEM WITH YEH FINAL FORM */ + [0xfdb2, 0xfdb2], /* ARABIC LIGATURE QAF WITH MEEM WITH YEH FINAL FORM */ + [0xfdb3, 0xfdb3], /* ARABIC LIGATURE NOON WITH HAH WITH YEH FINAL FORM */ + [0xfdb4, 0xfdb4], /* ARABIC LIGATURE QAF WITH MEEM WITH HAH INITIAL FORM */ + [0xfdb5, 0xfdb5], /* ARABIC LIGATURE LAM WITH HAH WITH MEEM INITIAL FORM */ + [0xfdb6, 0xfdb6], /* ARABIC LIGATURE AIN WITH MEEM WITH YEH FINAL FORM */ + [0xfdb7, 0xfdb7], /* ARABIC LIGATURE KAF WITH MEEM WITH YEH FINAL FORM */ + [0xfdb8, 0xfdb8], /* ARABIC LIGATURE NOON WITH JEEM WITH HAH INITIAL FORM */ + [0xfdb9, 0xfdb9], /* ARABIC LIGATURE MEEM WITH KHAH WITH YEH FINAL FORM */ + [0xfdba, 0xfdba], /* ARABIC LIGATURE LAM WITH JEEM WITH MEEM INITIAL FORM */ + [0xfdbb, 0xfdbb], /* ARABIC LIGATURE KAF WITH MEEM WITH MEEM FINAL FORM */ + [0xfdbc, 0xfdbc], /* ARABIC LIGATURE LAM WITH JEEM WITH MEEM FINAL FORM */ + [0xfdbd, 0xfdbd], /* ARABIC LIGATURE NOON WITH JEEM WITH HAH FINAL FORM */ + [0xfdbe, 0xfdbe], /* ARABIC LIGATURE JEEM WITH HAH WITH YEH FINAL FORM */ + [0xfdbf, 0xfdbf], /* ARABIC LIGATURE HAH WITH JEEM WITH YEH FINAL FORM */ + [0xfdc0, 0xfdc0], /* ARABIC LIGATURE MEEM WITH JEEM WITH YEH FINAL FORM */ + [0xfdc1, 0xfdc1], /* ARABIC LIGATURE FEH WITH MEEM WITH YEH FINAL FORM */ + [0xfdc2, 0xfdc2], /* ARABIC LIGATURE BEH WITH HAH WITH YEH FINAL FORM */ + [0xfdc3, 0xfdc3], /* ARABIC LIGATURE KAF WITH MEEM WITH MEEM INITIAL FORM */ + [0xfdc4, 0xfdc4], /* ARABIC LIGATURE AIN WITH JEEM WITH MEEM INITIAL FORM */ + [0xfdc5, 0xfdc5], /* ARABIC LIGATURE SAD WITH MEEM WITH MEEM INITIAL FORM */ + [0xfdc6, 0xfdc6], /* ARABIC LIGATURE SEEN WITH KHAH WITH YEH FINAL FORM */ + [0xfdc7, 0xfdc7], /* ARABIC LIGATURE NOON WITH JEEM WITH YEH FINAL FORM */ + [0xfdc8, 0xfdc8], + [0xfdc9, 0xfdc9], + [0xfdca, 0xfdca], + [0xfdcb, 0xfdcb], + [0xfdcc, 0xfdcc], + [0xfdcd, 0xfdcd], + [0xfdce, 0xfdce], + [0xfdcf, 0xfdcf], + [0xfdd0, 0xfdd0], + [0xfdd1, 0xfdd1], + [0xfdd2, 0xfdd2], + [0xfdd3, 0xfdd3], + [0xfdd4, 0xfdd4], + [0xfdd5, 0xfdd5], + [0xfdd6, 0xfdd6], + [0xfdd7, 0xfdd7], + [0xfdd8, 0xfdd8], + [0xfdd9, 0xfdd9], + [0xfdda, 0xfdda], + [0xfddb, 0xfddb], + [0xfddc, 0xfddc], + [0xfddd, 0xfddd], + [0xfdde, 0xfdde], + [0xfddf, 0xfddf], + [0xfde0, 0xfde0], + [0xfde1, 0xfde1], + [0xfde2, 0xfde2], + [0xfde3, 0xfde3], + [0xfde4, 0xfde4], + [0xfde5, 0xfde5], + [0xfde6, 0xfde6], + [0xfde7, 0xfde7], + [0xfde8, 0xfde8], + [0xfde9, 0xfde9], + [0xfdea, 0xfdea], + [0xfdeb, 0xfdeb], + [0xfdec, 0xfdec], + [0xfded, 0xfded], + [0xfdee, 0xfdee], + [0xfdef, 0xfdef], + [0xfdf0, 0xfdf0], /* ARABIC LIGATURE SALLA USED AS KORANIC STOP SIGN ISOLATED FORM */ + [0xfdf1, 0xfdf1], /* ARABIC LIGATURE QALA USED AS KORANIC STOP SIGN ISOLATED FORM */ + [0xfdf2, 0xfdf2], /* ARABIC LIGATURE ALLAH ISOLATED FORM */ + [0xfdf3, 0xfdf3], /* ARABIC LIGATURE AKBAR ISOLATED FORM */ + [0xfdf4, 0xfdf4], /* ARABIC LIGATURE MOHAMMAD ISOLATED FORM */ + [0xfdf5, 0xfdf5], /* ARABIC LIGATURE SALAM ISOLATED FORM */ + [0xfdf6, 0xfdf6], /* ARABIC LIGATURE RASOUL ISOLATED FORM */ + [0xfdf7, 0xfdf7], /* ARABIC LIGATURE ALAYHE ISOLATED FORM */ + [0xfdf8, 0xfdf8], /* ARABIC LIGATURE WASALLAM ISOLATED FORM */ + [0xfdf9, 0xfdf9], /* ARABIC LIGATURE SALLA ISOLATED FORM */ + [0xfdfa, 0xfdfa], /* ARABIC LIGATURE SALLALLAHOU ALAYHE WASALLAM (ARABIC LETTER SALLALLAHOU ALAYHE WASALLAM) */ + [0xfdfb, 0xfdfb], /* ARABIC LIGATURE JALLAJALALOUHOU (ARABIC LETTER JALLAJALALOUHOU) */ + [0xfdfc, 0xfdfc], /* RIAL SIGN */ + [0xfdfd, 0xfdfd], /* ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM */ + [0xfdfe, 0xfdfe], + [0xfdff, 0xfdff], + [0xfe00, 0xfe00], /* VARIATION SELECTOR-1 */ + [0xfe01, 0xfe01], /* VARIATION SELECTOR-2 */ + [0xfe02, 0xfe02], /* VARIATION SELECTOR-3 */ + [0xfe03, 0xfe03], /* VARIATION SELECTOR-4 */ + [0xfe04, 0xfe04], /* VARIATION SELECTOR-5 */ + [0xfe05, 0xfe05], /* VARIATION SELECTOR-6 */ + [0xfe06, 0xfe06], /* VARIATION SELECTOR-7 */ + [0xfe07, 0xfe07], /* VARIATION SELECTOR-8 */ + [0xfe08, 0xfe08], /* VARIATION SELECTOR-9 */ + [0xfe09, 0xfe09], /* VARIATION SELECTOR-10 */ + [0xfe0a, 0xfe0a], /* VARIATION SELECTOR-11 */ + [0xfe0b, 0xfe0b], /* VARIATION SELECTOR-12 */ + [0xfe0c, 0xfe0c], /* VARIATION SELECTOR-13 */ + [0xfe0d, 0xfe0d], /* VARIATION SELECTOR-14 */ + [0xfe0e, 0xfe0e], /* VARIATION SELECTOR-15 */ + [0xfe0f, 0xfe0f], /* VARIATION SELECTOR-16 */ + [0xfe10, 0xfe10], /* PRESENTATION FORM FOR VERTICAL COMMA */ + [0xfe11, 0xfe11], /* PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC COMMA */ + [0xfe12, 0xfe12], /* PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC FULL STOP */ + [0xfe13, 0xfe13], /* PRESENTATION FORM FOR VERTICAL COLON */ + [0xfe14, 0xfe14], /* PRESENTATION FORM FOR VERTICAL SEMICOLON */ + [0xfe15, 0xfe15], /* PRESENTATION FORM FOR VERTICAL EXCLAMATION MARK */ + [0xfe16, 0xfe16], /* PRESENTATION FORM FOR VERTICAL QUESTION MARK */ + [0xfe17, 0xfe17], /* PRESENTATION FORM FOR VERTICAL LEFT WHITE LENTICULAR BRACKET */ + [0xfe18, 0xfe18], /* PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRAKCET */ + [0xfe19, 0xfe19], /* PRESENTATION FORM FOR VERTICAL HORIZONTAL ELLIPSIS */ + [0xfe1a, 0xfe1a], + [0xfe1b, 0xfe1b], + [0xfe1c, 0xfe1c], + [0xfe1d, 0xfe1d], + [0xfe1e, 0xfe1e], + [0xfe1f, 0xfe1f], + [0xfe20, 0xfe20], /* COMBINING LIGATURE LEFT HALF */ + [0xfe21, 0xfe21], /* COMBINING LIGATURE RIGHT HALF */ + [0xfe22, 0xfe22], /* COMBINING DOUBLE TILDE LEFT HALF */ + [0xfe23, 0xfe23], /* COMBINING DOUBLE TILDE RIGHT HALF */ + [0xfe24, 0xfe24], /* COMBINING MACRON LEFT HALF */ + [0xfe25, 0xfe25], /* COMBINING MACRON RIGHT HALF */ + [0xfe26, 0xfe26], /* COMBINING CONJOINING MACRON */ + [0xfe27, 0xfe27], /* COMBINING LIGATURE LEFT HALF BELOW */ + [0xfe28, 0xfe28], /* COMBINING LIGATURE RIGHT HALF BELOW */ + [0xfe29, 0xfe29], /* COMBINING TILDE LEFT HALF BELOW */ + [0xfe2a, 0xfe2a], /* COMBINING TILDE RIGHT HALF BELOW */ + [0xfe2b, 0xfe2b], /* COMBINING MACRON LEFT HALF BELOW */ + [0xfe2c, 0xfe2c], /* COMBINING MACRON RIGHT HALF BELOW */ + [0xfe2d, 0xfe2d], /* COMBINING CONJOINING MACRON BELOW */ + [0xfe2e, 0xfe2e], /* COMBINING CYRILLIC TITLO LEFT HALF */ + [0xfe2f, 0xfe2f], /* COMBINING CYRILLIC TITLO RIGHT HALF */ + [0xfe30, 0xfe30], /* PRESENTATION FORM FOR VERTICAL TWO DOT LEADER (GLYPH FOR VERTICAL TWO DOT LEADER) */ + [0xfe31, 0xfe31], /* PRESENTATION FORM FOR VERTICAL EM DASH (GLYPH FOR VERTICAL EM DASH) */ + [0xfe32, 0xfe32], /* PRESENTATION FORM FOR VERTICAL EN DASH (GLYPH FOR VERTICAL EN DASH) */ + [0xfe33, 0xfe33], /* PRESENTATION FORM FOR VERTICAL LOW LINE (GLYPH FOR VERTICAL SPACING UNDERSCORE) */ + [0xfe34, 0xfe34], /* PRESENTATION FORM FOR VERTICAL WAVY LOW LINE (GLYPH FOR VERTICAL SPACING WAVY UNDERSCORE) */ + [0xfe35, 0xfe35], /* PRESENTATION FORM FOR VERTICAL LEFT PARENTHESIS (GLYPH FOR VERTICAL OPENING PARENTHESIS) */ + [0xfe36, 0xfe36], /* PRESENTATION FORM FOR VERTICAL RIGHT PARENTHESIS (GLYPH FOR VERTICAL CLOSING PARENTHESIS) */ + [0xfe37, 0xfe37], /* PRESENTATION FORM FOR VERTICAL LEFT CURLY BRACKET (GLYPH FOR VERTICAL OPENING CURLY BRACKET) */ + [0xfe38, 0xfe38], /* PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET (GLYPH FOR VERTICAL CLOSING CURLY BRACKET) */ + [0xfe39, 0xfe39], /* PRESENTATION FORM FOR VERTICAL LEFT TORTOISE SHELL BRACKET (GLYPH FOR VERTICAL OPENING TORTOISE SHELL BRACKET) */ + [0xfe3a, 0xfe3a], /* PRESENTATION FORM FOR VERTICAL RIGHT TORTOISE SHELL BRACKET (GLYPH FOR VERTICAL CLOSING TORTOISE SHELL BRACKET) */ + [0xfe3b, 0xfe3b], /* PRESENTATION FORM FOR VERTICAL LEFT BLACK LENTICULAR BRACKET (GLYPH FOR VERTICAL OPENING BLACK LENTICULAR BRACKET) */ + [0xfe3c, 0xfe3c], /* PRESENTATION FORM FOR VERTICAL RIGHT BLACK LENTICULAR BRACKET (GLYPH FOR VERTICAL CLOSING BLACK LENTICULAR BRACKET) */ + [0xfe3d, 0xfe3d], /* PRESENTATION FORM FOR VERTICAL LEFT DOUBLE ANGLE BRACKET (GLYPH FOR VERTICAL OPENING DOUBLE ANGLE BRACKET) */ + [0xfe3e, 0xfe3e], /* PRESENTATION FORM FOR VERTICAL RIGHT DOUBLE ANGLE BRACKET (GLYPH FOR VERTICAL CLOSING DOUBLE ANGLE BRACKET) */ + [0xfe3f, 0xfe3f], /* PRESENTATION FORM FOR VERTICAL LEFT ANGLE BRACKET (GLYPH FOR VERTICAL OPENING ANGLE BRACKET) */ + [0xfe40, 0xfe40], /* PRESENTATION FORM FOR VERTICAL RIGHT ANGLE BRACKET (GLYPH FOR VERTICAL CLOSING ANGLE BRACKET) */ + [0xfe41, 0xfe41], /* PRESENTATION FORM FOR VERTICAL LEFT CORNER BRACKET (GLYPH FOR VERTICAL OPENING CORNER BRACKET) */ + [0xfe42, 0xfe42], /* PRESENTATION FORM FOR VERTICAL RIGHT CORNER BRACKET (GLYPH FOR VERTICAL CLOSING CORNER BRACKET) */ + [0xfe43, 0xfe43], /* PRESENTATION FORM FOR VERTICAL LEFT WHITE CORNER BRACKET (GLYPH FOR VERTICAL OPENING WHITE CORNER BRACKET) */ + [0xfe44, 0xfe44], /* PRESENTATION FORM FOR VERTICAL RIGHT WHITE CORNER BRACKET (GLYPH FOR VERTICAL CLOSING WHITE CORNER BRACKET) */ + [0xfe45, 0xfe45], /* SESAME DOT */ + [0xfe46, 0xfe46], /* WHITE SESAME DOT */ + [0xfe47, 0xfe47], /* PRESENTATION FORM FOR VERTICAL LEFT SQUARE BRACKET */ + [0xfe48, 0xfe48], /* PRESENTATION FORM FOR VERTICAL RIGHT SQUARE BRACKET */ + [0xfe49, 0xfe49], /* DASHED OVERLINE (SPACING DASHED OVERSCORE) */ + [0xfe4a, 0xfe4a], /* CENTRELINE OVERLINE (SPACING CENTERLINE OVERSCORE) */ + [0xfe4b, 0xfe4b], /* WAVY OVERLINE (SPACING WAVY OVERSCORE) */ + [0xfe4c, 0xfe4c], /* DOUBLE WAVY OVERLINE (SPACING DOUBLE WAVY OVERSCORE) */ + [0xfe4d, 0xfe4d], /* DASHED LOW LINE (SPACING DASHED UNDERSCORE) */ + [0xfe4e, 0xfe4e], /* CENTRELINE LOW LINE (SPACING CENTERLINE UNDERSCORE) */ + [0xfe4f, 0xfe4f], /* WAVY LOW LINE (SPACING WAVY UNDERSCORE) */ + [0xfe50, 0xfe50], /* SMALL COMMA */ + [0xfe51, 0xfe51], /* SMALL IDEOGRAPHIC COMMA */ + [0xfe52, 0xfe52], /* SMALL FULL STOP (SMALL PERIOD) */ + [0xfe53, 0xfe53], + [0xfe54, 0xfe54], /* SMALL SEMICOLON */ + [0xfe55, 0xfe55], /* SMALL COLON */ + [0xfe56, 0xfe56], /* SMALL QUESTION MARK */ + [0xfe57, 0xfe57], /* SMALL EXCLAMATION MARK */ + [0xfe58, 0xfe58], /* SMALL EM DASH */ + [0xfe59, 0xfe59], /* SMALL LEFT PARENTHESIS (SMALL OPENING PARENTHESIS) */ + [0xfe5a, 0xfe5a], /* SMALL RIGHT PARENTHESIS (SMALL CLOSING PARENTHESIS) */ + [0xfe5b, 0xfe5b], /* SMALL LEFT CURLY BRACKET (SMALL OPENING CURLY BRACKET) */ + [0xfe5c, 0xfe5c], /* SMALL RIGHT CURLY BRACKET (SMALL CLOSING CURLY BRACKET) */ + [0xfe5d, 0xfe5d], /* SMALL LEFT TORTOISE SHELL BRACKET (SMALL OPENING TORTOISE SHELL BRACKET) */ + [0xfe5e, 0xfe5e], /* SMALL RIGHT TORTOISE SHELL BRACKET (SMALL CLOSING TORTOISE SHELL BRACKET) */ + [0xfe5f, 0xfe5f], /* SMALL NUMBER SIGN */ + [0xfe60, 0xfe60], /* SMALL AMPERSAND */ + [0xfe61, 0xfe61], /* SMALL ASTERISK */ + [0xfe62, 0xfe62], /* SMALL PLUS SIGN */ + [0xfe63, 0xfe63], /* SMALL HYPHEN-MINUS */ + [0xfe64, 0xfe64], /* SMALL LESS-THAN SIGN */ + [0xfe65, 0xfe65], /* SMALL GREATER-THAN SIGN */ + [0xfe66, 0xfe66], /* SMALL EQUALS SIGN */ + [0xfe67, 0xfe67], + [0xfe68, 0xfe68], /* SMALL REVERSE SOLIDUS (SMALL BACKSLASH) */ + [0xfe69, 0xfe69], /* SMALL DOLLAR SIGN */ + [0xfe6a, 0xfe6a], /* SMALL PERCENT SIGN */ + [0xfe6b, 0xfe6b], /* SMALL COMMERCIAL AT */ + [0xfe6c, 0xfe6c], + [0xfe6d, 0xfe6d], + [0xfe6e, 0xfe6e], + [0xfe6f, 0xfe6f], + [0xfe70, 0xfe70], /* ARABIC FATHATAN ISOLATED FORM (ARABIC SPACING FATHATAN) */ + [0xfe71, 0xfe71], /* ARABIC TATWEEL WITH FATHATAN ABOVE (ARABIC FATHATAN ON TATWEEL) */ + [0xfe72, 0xfe72], /* ARABIC DAMMATAN ISOLATED FORM (ARABIC SPACING DAMMATAN) */ + [0xfe73, 0xfe73], /* ARABIC TAIL FRAGMENT */ + [0xfe74, 0xfe74], /* ARABIC KASRATAN ISOLATED FORM (ARABIC SPACING KASRATAN) */ + [0xfe75, 0xfe75], + [0xfe76, 0xfe76], /* ARABIC FATHA ISOLATED FORM (ARABIC SPACING FATHAH) */ + [0xfe77, 0xfe77], /* ARABIC FATHA MEDIAL FORM (ARABIC FATHAH ON TATWEEL) */ + [0xfe78, 0xfe78], /* ARABIC DAMMA ISOLATED FORM (ARABIC SPACING DAMMAH) */ + [0xfe79, 0xfe79], /* ARABIC DAMMA MEDIAL FORM (ARABIC DAMMAH ON TATWEEL) */ + [0xfe7a, 0xfe7a], /* ARABIC KASRA ISOLATED FORM (ARABIC SPACING KASRAH) */ + [0xfe7b, 0xfe7b], /* ARABIC KASRA MEDIAL FORM (ARABIC KASRAH ON TATWEEL) */ + [0xfe7c, 0xfe7c], /* ARABIC SHADDA ISOLATED FORM (ARABIC SPACING SHADDAH) */ + [0xfe7d, 0xfe7d], /* ARABIC SHADDA MEDIAL FORM (ARABIC SHADDAH ON TATWEEL) */ + [0xfe7e, 0xfe7e], /* ARABIC SUKUN ISOLATED FORM (ARABIC SPACING SUKUN) */ + [0xfe7f, 0xfe7f], /* ARABIC SUKUN MEDIAL FORM (ARABIC SUKUN ON TATWEEL) */ + [0xfe80, 0xfe80], /* ARABIC LETTER HAMZA ISOLATED FORM (GLYPH FOR ISOLATE ARABIC HAMZAH) */ + [0xfe81, 0xfe81], /* ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM (GLYPH FOR ISOLATE ARABIC MADDAH ON ALEF) */ + [0xfe82, 0xfe82], /* ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM (GLYPH FOR FINAL ARABIC MADDAH ON ALEF) */ + [0xfe83, 0xfe83], /* ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM (GLYPH FOR ISOLATE ARABIC HAMZAH ON ALEF) */ + [0xfe84, 0xfe84], /* ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM (GLYPH FOR FINAL ARABIC HAMZAH ON ALEF) */ + [0xfe85, 0xfe85], /* ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM (GLYPH FOR ISOLATE ARABIC HAMZAH ON WAW) */ + [0xfe86, 0xfe86], /* ARABIC LETTER WAW WITH HAMZA ABOVE FINAL FORM (GLYPH FOR FINAL ARABIC HAMZAH ON WAW) */ + [0xfe87, 0xfe87], /* ARABIC LETTER ALEF WITH HAMZA BELOW ISOLATED FORM (GLYPH FOR ISOLATE ARABIC HAMZAH UNDER ALEF) */ + [0xfe88, 0xfe88], /* ARABIC LETTER ALEF WITH HAMZA BELOW FINAL FORM (GLYPH FOR FINAL ARABIC HAMZAH UNDER ALEF) */ + [0xfe89, 0xfe89], /* ARABIC LETTER YEH WITH HAMZA ABOVE ISOLATED FORM (GLYPH FOR ISOLATE ARABIC HAMZAH ON YA) */ + [0xfe8a, 0xfe8a], /* ARABIC LETTER YEH WITH HAMZA ABOVE FINAL FORM (GLYPH FOR FINAL ARABIC HAMZAH ON YA) */ + [0xfe8b, 0xfe8b], /* ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM (GLYPH FOR INITIAL ARABIC HAMZAH ON YA) */ + [0xfe8c, 0xfe8c], /* ARABIC LETTER YEH WITH HAMZA ABOVE MEDIAL FORM (GLYPH FOR MEDIAL ARABIC HAMZAH ON YA) */ + [0xfe8d, 0xfe8d], /* ARABIC LETTER ALEF ISOLATED FORM (GLYPH FOR ISOLATE ARABIC ALEF) */ + [0xfe8e, 0xfe8e], /* ARABIC LETTER ALEF FINAL FORM (GLYPH FOR FINAL ARABIC ALEF) */ + [0xfe8f, 0xfe8f], /* ARABIC LETTER BEH ISOLATED FORM (GLYPH FOR ISOLATE ARABIC BAA) */ + [0xfe90, 0xfe90], /* ARABIC LETTER BEH FINAL FORM (GLYPH FOR FINAL ARABIC BAA) */ + [0xfe91, 0xfe91], /* ARABIC LETTER BEH INITIAL FORM (GLYPH FOR INITIAL ARABIC BAA) */ + [0xfe92, 0xfe92], /* ARABIC LETTER BEH MEDIAL FORM (GLYPH FOR MEDIAL ARABIC BAA) */ + [0xfe93, 0xfe93], /* ARABIC LETTER TEH MARBUTA ISOLATED FORM (GLYPH FOR ISOLATE ARABIC TAA MARBUTAH) */ + [0xfe94, 0xfe94], /* ARABIC LETTER TEH MARBUTA FINAL FORM (GLYPH FOR FINAL ARABIC TAA MARBUTAH) */ + [0xfe95, 0xfe95], /* ARABIC LETTER TEH ISOLATED FORM (GLYPH FOR ISOLATE ARABIC TAA) */ + [0xfe96, 0xfe96], /* ARABIC LETTER TEH FINAL FORM (GLYPH FOR FINAL ARABIC TAA) */ + [0xfe97, 0xfe97], /* ARABIC LETTER TEH INITIAL FORM (GLYPH FOR INITIAL ARABIC TAA) */ + [0xfe98, 0xfe98], /* ARABIC LETTER TEH MEDIAL FORM (GLYPH FOR MEDIAL ARABIC TAA) */ + [0xfe99, 0xfe99], /* ARABIC LETTER THEH ISOLATED FORM (GLYPH FOR ISOLATE ARABIC THAA) */ + [0xfe9a, 0xfe9a], /* ARABIC LETTER THEH FINAL FORM (GLYPH FOR FINAL ARABIC THAA) */ + [0xfe9b, 0xfe9b], /* ARABIC LETTER THEH INITIAL FORM (GLYPH FOR INITIAL ARABIC THAA) */ + [0xfe9c, 0xfe9c], /* ARABIC LETTER THEH MEDIAL FORM (GLYPH FOR MEDIAL ARABIC THAA) */ + [0xfe9d, 0xfe9d], /* ARABIC LETTER JEEM ISOLATED FORM (GLYPH FOR ISOLATE ARABIC JEEM) */ + [0xfe9e, 0xfe9e], /* ARABIC LETTER JEEM FINAL FORM (GLYPH FOR FINAL ARABIC JEEM) */ + [0xfe9f, 0xfe9f], /* ARABIC LETTER JEEM INITIAL FORM (GLYPH FOR INITIAL ARABIC JEEM) */ + [0xfea0, 0xfea0], /* ARABIC LETTER JEEM MEDIAL FORM (GLYPH FOR MEDIAL ARABIC JEEM) */ + [0xfea1, 0xfea1], /* ARABIC LETTER HAH ISOLATED FORM (GLYPH FOR ISOLATE ARABIC HAA) */ + [0xfea2, 0xfea2], /* ARABIC LETTER HAH FINAL FORM (GLYPH FOR FINAL ARABIC HAA) */ + [0xfea3, 0xfea3], /* ARABIC LETTER HAH INITIAL FORM (GLYPH FOR INITIAL ARABIC HAA) */ + [0xfea4, 0xfea4], /* ARABIC LETTER HAH MEDIAL FORM (GLYPH FOR MEDIAL ARABIC HAA) */ + [0xfea5, 0xfea5], /* ARABIC LETTER KHAH ISOLATED FORM (GLYPH FOR ISOLATE ARABIC KHAA) */ + [0xfea6, 0xfea6], /* ARABIC LETTER KHAH FINAL FORM (GLYPH FOR FINAL ARABIC KHAA) */ + [0xfea7, 0xfea7], /* ARABIC LETTER KHAH INITIAL FORM (GLYPH FOR INITIAL ARABIC KHAA) */ + [0xfea8, 0xfea8], /* ARABIC LETTER KHAH MEDIAL FORM (GLYPH FOR MEDIAL ARABIC KHAA) */ + [0xfea9, 0xfea9], /* ARABIC LETTER DAL ISOLATED FORM (GLYPH FOR ISOLATE ARABIC DAL) */ + [0xfeaa, 0xfeaa], /* ARABIC LETTER DAL FINAL FORM (GLYPH FOR FINAL ARABIC DAL) */ + [0xfeab, 0xfeab], /* ARABIC LETTER THAL ISOLATED FORM (GLYPH FOR ISOLATE ARABIC THAL) */ + [0xfeac, 0xfeac], /* ARABIC LETTER THAL FINAL FORM (GLYPH FOR FINAL ARABIC THAL) */ + [0xfead, 0xfead], /* ARABIC LETTER REH ISOLATED FORM (GLYPH FOR ISOLATE ARABIC RA) */ + [0xfeae, 0xfeae], /* ARABIC LETTER REH FINAL FORM (GLYPH FOR FINAL ARABIC RA) */ + [0xfeaf, 0xfeaf], /* ARABIC LETTER ZAIN ISOLATED FORM (GLYPH FOR ISOLATE ARABIC ZAIN) */ + [0xfeb0, 0xfeb0], /* ARABIC LETTER ZAIN FINAL FORM (GLYPH FOR FINAL ARABIC ZAIN) */ + [0xfeb1, 0xfeb1], /* ARABIC LETTER SEEN ISOLATED FORM (GLYPH FOR ISOLATE ARABIC SEEN) */ + [0xfeb2, 0xfeb2], /* ARABIC LETTER SEEN FINAL FORM (GLYPH FOR FINAL ARABIC SEEN) */ + [0xfeb3, 0xfeb3], /* ARABIC LETTER SEEN INITIAL FORM (GLYPH FOR INITIAL ARABIC SEEN) */ + [0xfeb4, 0xfeb4], /* ARABIC LETTER SEEN MEDIAL FORM (GLYPH FOR MEDIAL ARABIC SEEN) */ + [0xfeb5, 0xfeb5], /* ARABIC LETTER SHEEN ISOLATED FORM (GLYPH FOR ISOLATE ARABIC SHEEN) */ + [0xfeb6, 0xfeb6], /* ARABIC LETTER SHEEN FINAL FORM (GLYPH FOR FINAL ARABIC SHEEN) */ + [0xfeb7, 0xfeb7], /* ARABIC LETTER SHEEN INITIAL FORM (GLYPH FOR INITIAL ARABIC SHEEN) */ + [0xfeb8, 0xfeb8], /* ARABIC LETTER SHEEN MEDIAL FORM (GLYPH FOR MEDIAL ARABIC SHEEN) */ + [0xfeb9, 0xfeb9], /* ARABIC LETTER SAD ISOLATED FORM (GLYPH FOR ISOLATE ARABIC SAD) */ + [0xfeba, 0xfeba], /* ARABIC LETTER SAD FINAL FORM (GLYPH FOR FINAL ARABIC SAD) */ + [0xfebb, 0xfebb], /* ARABIC LETTER SAD INITIAL FORM (GLYPH FOR INITIAL ARABIC SAD) */ + [0xfebc, 0xfebc], /* ARABIC LETTER SAD MEDIAL FORM (GLYPH FOR MEDIAL ARABIC SAD) */ + [0xfebd, 0xfebd], /* ARABIC LETTER DAD ISOLATED FORM (GLYPH FOR ISOLATE ARABIC DAD) */ + [0xfebe, 0xfebe], /* ARABIC LETTER DAD FINAL FORM (GLYPH FOR FINAL ARABIC DAD) */ + [0xfebf, 0xfebf], /* ARABIC LETTER DAD INITIAL FORM (GLYPH FOR INITIAL ARABIC DAD) */ + [0xfec0, 0xfec0], /* ARABIC LETTER DAD MEDIAL FORM (GLYPH FOR MEDIAL ARABIC DAD) */ + [0xfec1, 0xfec1], /* ARABIC LETTER TAH ISOLATED FORM (GLYPH FOR ISOLATE ARABIC TAH) */ + [0xfec2, 0xfec2], /* ARABIC LETTER TAH FINAL FORM (GLYPH FOR FINAL ARABIC TAH) */ + [0xfec3, 0xfec3], /* ARABIC LETTER TAH INITIAL FORM (GLYPH FOR INITIAL ARABIC TAH) */ + [0xfec4, 0xfec4], /* ARABIC LETTER TAH MEDIAL FORM (GLYPH FOR MEDIAL ARABIC TAH) */ + [0xfec5, 0xfec5], /* ARABIC LETTER ZAH ISOLATED FORM (GLYPH FOR ISOLATE ARABIC DHAH) */ + [0xfec6, 0xfec6], /* ARABIC LETTER ZAH FINAL FORM (GLYPH FOR FINAL ARABIC DHAH) */ + [0xfec7, 0xfec7], /* ARABIC LETTER ZAH INITIAL FORM (GLYPH FOR INITIAL ARABIC DHAH) */ + [0xfec8, 0xfec8], /* ARABIC LETTER ZAH MEDIAL FORM (GLYPH FOR MEDIAL ARABIC DHAH) */ + [0xfec9, 0xfec9], /* ARABIC LETTER AIN ISOLATED FORM (GLYPH FOR ISOLATE ARABIC AIN) */ + [0xfeca, 0xfeca], /* ARABIC LETTER AIN FINAL FORM (GLYPH FOR FINAL ARABIC AIN) */ + [0xfecb, 0xfecb], /* ARABIC LETTER AIN INITIAL FORM (GLYPH FOR INITIAL ARABIC AIN) */ + [0xfecc, 0xfecc], /* ARABIC LETTER AIN MEDIAL FORM (GLYPH FOR MEDIAL ARABIC AIN) */ + [0xfecd, 0xfecd], /* ARABIC LETTER GHAIN ISOLATED FORM (GLYPH FOR ISOLATE ARABIC GHAIN) */ + [0xfece, 0xfece], /* ARABIC LETTER GHAIN FINAL FORM (GLYPH FOR FINAL ARABIC GHAIN) */ + [0xfecf, 0xfecf], /* ARABIC LETTER GHAIN INITIAL FORM (GLYPH FOR INITIAL ARABIC GHAIN) */ + [0xfed0, 0xfed0], /* ARABIC LETTER GHAIN MEDIAL FORM (GLYPH FOR MEDIAL ARABIC GHAIN) */ + [0xfed1, 0xfed1], /* ARABIC LETTER FEH ISOLATED FORM (GLYPH FOR ISOLATE ARABIC FA) */ + [0xfed2, 0xfed2], /* ARABIC LETTER FEH FINAL FORM (GLYPH FOR FINAL ARABIC FA) */ + [0xfed3, 0xfed3], /* ARABIC LETTER FEH INITIAL FORM (GLYPH FOR INITIAL ARABIC FA) */ + [0xfed4, 0xfed4], /* ARABIC LETTER FEH MEDIAL FORM (GLYPH FOR MEDIAL ARABIC FA) */ + [0xfed5, 0xfed5], /* ARABIC LETTER QAF ISOLATED FORM (GLYPH FOR ISOLATE ARABIC QAF) */ + [0xfed6, 0xfed6], /* ARABIC LETTER QAF FINAL FORM (GLYPH FOR FINAL ARABIC QAF) */ + [0xfed7, 0xfed7], /* ARABIC LETTER QAF INITIAL FORM (GLYPH FOR INITIAL ARABIC QAF) */ + [0xfed8, 0xfed8], /* ARABIC LETTER QAF MEDIAL FORM (GLYPH FOR MEDIAL ARABIC QAF) */ + [0xfed9, 0xfed9], /* ARABIC LETTER KAF ISOLATED FORM (GLYPH FOR ISOLATE ARABIC CAF) */ + [0xfeda, 0xfeda], /* ARABIC LETTER KAF FINAL FORM (GLYPH FOR FINAL ARABIC CAF) */ + [0xfedb, 0xfedb], /* ARABIC LETTER KAF INITIAL FORM (GLYPH FOR INITIAL ARABIC CAF) */ + [0xfedc, 0xfedc], /* ARABIC LETTER KAF MEDIAL FORM (GLYPH FOR MEDIAL ARABIC CAF) */ + [0xfedd, 0xfedd], /* ARABIC LETTER LAM ISOLATED FORM (GLYPH FOR ISOLATE ARABIC LAM) */ + [0xfede, 0xfede], /* ARABIC LETTER LAM FINAL FORM (GLYPH FOR FINAL ARABIC LAM) */ + [0xfedf, 0xfedf], /* ARABIC LETTER LAM INITIAL FORM (GLYPH FOR INITIAL ARABIC LAM) */ + [0xfee0, 0xfee0], /* ARABIC LETTER LAM MEDIAL FORM (GLYPH FOR MEDIAL ARABIC LAM) */ + [0xfee1, 0xfee1], /* ARABIC LETTER MEEM ISOLATED FORM (GLYPH FOR ISOLATE ARABIC MEEM) */ + [0xfee2, 0xfee2], /* ARABIC LETTER MEEM FINAL FORM (GLYPH FOR FINAL ARABIC MEEM) */ + [0xfee3, 0xfee3], /* ARABIC LETTER MEEM INITIAL FORM (GLYPH FOR INITIAL ARABIC MEEM) */ + [0xfee4, 0xfee4], /* ARABIC LETTER MEEM MEDIAL FORM (GLYPH FOR MEDIAL ARABIC MEEM) */ + [0xfee5, 0xfee5], /* ARABIC LETTER NOON ISOLATED FORM (GLYPH FOR ISOLATE ARABIC NOON) */ + [0xfee6, 0xfee6], /* ARABIC LETTER NOON FINAL FORM (GLYPH FOR FINAL ARABIC NOON) */ + [0xfee7, 0xfee7], /* ARABIC LETTER NOON INITIAL FORM (GLYPH FOR INITIAL ARABIC NOON) */ + [0xfee8, 0xfee8], /* ARABIC LETTER NOON MEDIAL FORM (GLYPH FOR MEDIAL ARABIC NOON) */ + [0xfee9, 0xfee9], /* ARABIC LETTER HEH ISOLATED FORM (GLYPH FOR ISOLATE ARABIC HA) */ + [0xfeea, 0xfeea], /* ARABIC LETTER HEH FINAL FORM (GLYPH FOR FINAL ARABIC HA) */ + [0xfeeb, 0xfeeb], /* ARABIC LETTER HEH INITIAL FORM (GLYPH FOR INITIAL ARABIC HA) */ + [0xfeec, 0xfeec], /* ARABIC LETTER HEH MEDIAL FORM (GLYPH FOR MEDIAL ARABIC HA) */ + [0xfeed, 0xfeed], /* ARABIC LETTER WAW ISOLATED FORM (GLYPH FOR ISOLATE ARABIC WAW) */ + [0xfeee, 0xfeee], /* ARABIC LETTER WAW FINAL FORM (GLYPH FOR FINAL ARABIC WAW) */ + [0xfeef, 0xfeef], /* ARABIC LETTER ALEF MAKSURA ISOLATED FORM (GLYPH FOR ISOLATE ARABIC ALEF MAQSURAH) */ + [0xfef0, 0xfef0], /* ARABIC LETTER ALEF MAKSURA FINAL FORM (GLYPH FOR FINAL ARABIC ALEF MAQSURAH) */ + [0xfef1, 0xfef1], /* ARABIC LETTER YEH ISOLATED FORM (GLYPH FOR ISOLATE ARABIC YA) */ + [0xfef2, 0xfef2], /* ARABIC LETTER YEH FINAL FORM (GLYPH FOR FINAL ARABIC YA) */ + [0xfef3, 0xfef3], /* ARABIC LETTER YEH INITIAL FORM (GLYPH FOR INITIAL ARABIC YA) */ + [0xfef4, 0xfef4], /* ARABIC LETTER YEH MEDIAL FORM (GLYPH FOR MEDIAL ARABIC YA) */ + [0xfef5, 0xfef5], /* ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM (GLYPH FOR ISOLATE ARABIC MADDAH ON LIGATURE LAM ALEF) */ + [0xfef6, 0xfef6], /* ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM (GLYPH FOR FINAL ARABIC MADDAH ON LIGATURE LAM ALEF) */ + [0xfef7, 0xfef7], /* ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM (GLYPH FOR ISOLATE ARABIC HAMZAH ON LIGATURE LAM ALEF) */ + [0xfef8, 0xfef8], /* ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM (GLYPH FOR FINAL ARABIC HAMZAH ON LIGATURE LAM ALEF) */ + [0xfef9, 0xfef9], /* ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW ISOLATED FORM (GLYPH FOR ISOLATE ARABIC HAMZAH UNDER LIGATURE LAM ALEF) */ + [0xfefa, 0xfefa], /* ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW FINAL FORM (GLYPH FOR FINAL ARABIC HAMZAH UNDER LIGATURE LAM ALEF) */ + [0xfefb, 0xfefb], /* ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM (GLYPH FOR ISOLATE ARABIC LIGATURE LAM ALEF) */ + [0xfefc, 0xfefc], /* ARABIC LIGATURE LAM WITH ALEF FINAL FORM (GLYPH FOR FINAL ARABIC LIGATURE LAM ALEF) */ + [0xfefd, 0xfefd], + [0xfefe, 0xfefe], + [0xfeff, 0xfeff], /* ZERO WIDTH NO-BREAK SPACE (BYTE ORDER MARK) */ + [0xff00, 0xff00], + [0xff01, 0xff01], /* FULLWIDTH EXCLAMATION MARK */ + [0xff02, 0xff02], /* FULLWIDTH QUOTATION MARK */ + [0xff03, 0xff03], /* FULLWIDTH NUMBER SIGN */ + [0xff04, 0xff04], /* FULLWIDTH DOLLAR SIGN */ + [0xff05, 0xff05], /* FULLWIDTH PERCENT SIGN */ + [0xff06, 0xff06], /* FULLWIDTH AMPERSAND */ + [0xff07, 0xff07], /* FULLWIDTH APOSTROPHE */ + [0xff08, 0xff08], /* FULLWIDTH LEFT PARENTHESIS (FULLWIDTH OPENING PARENTHESIS) */ + [0xff09, 0xff09], /* FULLWIDTH RIGHT PARENTHESIS (FULLWIDTH CLOSING PARENTHESIS) */ + [0xff0a, 0xff0a], /* FULLWIDTH ASTERISK */ + [0xff0b, 0xff0b], /* FULLWIDTH PLUS SIGN */ + [0xff0c, 0xff0c], /* FULLWIDTH COMMA */ + [0xff0d, 0xff0d], /* FULLWIDTH HYPHEN-MINUS */ + [0xff0e, 0xff0e], /* FULLWIDTH FULL STOP (FULLWIDTH PERIOD) */ + [0xff0f, 0xff0f], /* FULLWIDTH SOLIDUS (FULLWIDTH SLASH) */ + [0xff10, 0xff10], /* FULLWIDTH DIGIT ZERO */ + [0xff11, 0xff11], /* FULLWIDTH DIGIT ONE */ + [0xff12, 0xff12], /* FULLWIDTH DIGIT TWO */ + [0xff13, 0xff13], /* FULLWIDTH DIGIT THREE */ + [0xff14, 0xff14], /* FULLWIDTH DIGIT FOUR */ + [0xff15, 0xff15], /* FULLWIDTH DIGIT FIVE */ + [0xff16, 0xff16], /* FULLWIDTH DIGIT SIX */ + [0xff17, 0xff17], /* FULLWIDTH DIGIT SEVEN */ + [0xff18, 0xff18], /* FULLWIDTH DIGIT EIGHT */ + [0xff19, 0xff19], /* FULLWIDTH DIGIT NINE */ + [0xff1a, 0xff1a], /* FULLWIDTH COLON */ + [0xff1b, 0xff1b], /* FULLWIDTH SEMICOLON */ + [0xff1c, 0xff1c], /* FULLWIDTH LESS-THAN SIGN */ + [0xff1d, 0xff1d], /* FULLWIDTH EQUALS SIGN */ + [0xff1e, 0xff1e], /* FULLWIDTH GREATER-THAN SIGN */ + [0xff1f, 0xff1f], /* FULLWIDTH QUESTION MARK */ + [0xff20, 0xff20], /* FULLWIDTH COMMERCIAL AT */ + [0xff21, 0xff41], /* FULLWIDTH LATIN CAPITAL LETTER A */ + [0xff22, 0xff42], /* FULLWIDTH LATIN CAPITAL LETTER B */ + [0xff23, 0xff43], /* FULLWIDTH LATIN CAPITAL LETTER C */ + [0xff24, 0xff44], /* FULLWIDTH LATIN CAPITAL LETTER D */ + [0xff25, 0xff45], /* FULLWIDTH LATIN CAPITAL LETTER E */ + [0xff26, 0xff46], /* FULLWIDTH LATIN CAPITAL LETTER F */ + [0xff27, 0xff47], /* FULLWIDTH LATIN CAPITAL LETTER G */ + [0xff28, 0xff48], /* FULLWIDTH LATIN CAPITAL LETTER H */ + [0xff29, 0xff49], /* FULLWIDTH LATIN CAPITAL LETTER I */ + [0xff2a, 0xff4a], /* FULLWIDTH LATIN CAPITAL LETTER J */ + [0xff2b, 0xff4b], /* FULLWIDTH LATIN CAPITAL LETTER K */ + [0xff2c, 0xff4c], /* FULLWIDTH LATIN CAPITAL LETTER L */ + [0xff2d, 0xff4d], /* FULLWIDTH LATIN CAPITAL LETTER M */ + [0xff2e, 0xff4e], /* FULLWIDTH LATIN CAPITAL LETTER N */ + [0xff2f, 0xff4f], /* FULLWIDTH LATIN CAPITAL LETTER O */ + [0xff30, 0xff50], /* FULLWIDTH LATIN CAPITAL LETTER P */ + [0xff31, 0xff51], /* FULLWIDTH LATIN CAPITAL LETTER Q */ + [0xff32, 0xff52], /* FULLWIDTH LATIN CAPITAL LETTER R */ + [0xff33, 0xff53], /* FULLWIDTH LATIN CAPITAL LETTER S */ + [0xff34, 0xff54], /* FULLWIDTH LATIN CAPITAL LETTER T */ + [0xff35, 0xff55], /* FULLWIDTH LATIN CAPITAL LETTER U */ + [0xff36, 0xff56], /* FULLWIDTH LATIN CAPITAL LETTER V */ + [0xff37, 0xff57], /* FULLWIDTH LATIN CAPITAL LETTER W */ + [0xff38, 0xff58], /* FULLWIDTH LATIN CAPITAL LETTER X */ + [0xff39, 0xff59], /* FULLWIDTH LATIN CAPITAL LETTER Y */ + [0xff3a, 0xff5a], /* FULLWIDTH LATIN CAPITAL LETTER Z */ + [0xff3b, 0xff3b], /* FULLWIDTH LEFT SQUARE BRACKET (FULLWIDTH OPENING SQUARE BRACKET) */ + [0xff3c, 0xff3c], /* FULLWIDTH REVERSE SOLIDUS (FULLWIDTH BACKSLASH) */ + [0xff3d, 0xff3d], /* FULLWIDTH RIGHT SQUARE BRACKET (FULLWIDTH CLOSING SQUARE BRACKET) */ + [0xff3e, 0xff3e], /* FULLWIDTH CIRCUMFLEX ACCENT (FULLWIDTH SPACING CIRCUMFLEX) */ + [0xff3f, 0xff3f], /* FULLWIDTH LOW LINE (FULLWIDTH SPACING UNDERSCORE) */ + [0xff40, 0xff40], /* FULLWIDTH GRAVE ACCENT (FULLWIDTH SPACING GRAVE) */ + [0xff21, 0xff41], /* FULLWIDTH LATIN SMALL LETTER A */ + [0xff22, 0xff42], /* FULLWIDTH LATIN SMALL LETTER B */ + [0xff23, 0xff43], /* FULLWIDTH LATIN SMALL LETTER C */ + [0xff24, 0xff44], /* FULLWIDTH LATIN SMALL LETTER D */ + [0xff25, 0xff45], /* FULLWIDTH LATIN SMALL LETTER E */ + [0xff26, 0xff46], /* FULLWIDTH LATIN SMALL LETTER F */ + [0xff27, 0xff47], /* FULLWIDTH LATIN SMALL LETTER G */ + [0xff28, 0xff48], /* FULLWIDTH LATIN SMALL LETTER H */ + [0xff29, 0xff49], /* FULLWIDTH LATIN SMALL LETTER I */ + [0xff2a, 0xff4a], /* FULLWIDTH LATIN SMALL LETTER J */ + [0xff2b, 0xff4b], /* FULLWIDTH LATIN SMALL LETTER K */ + [0xff2c, 0xff4c], /* FULLWIDTH LATIN SMALL LETTER L */ + [0xff2d, 0xff4d], /* FULLWIDTH LATIN SMALL LETTER M */ + [0xff2e, 0xff4e], /* FULLWIDTH LATIN SMALL LETTER N */ + [0xff2f, 0xff4f], /* FULLWIDTH LATIN SMALL LETTER O */ + [0xff30, 0xff50], /* FULLWIDTH LATIN SMALL LETTER P */ + [0xff31, 0xff51], /* FULLWIDTH LATIN SMALL LETTER Q */ + [0xff32, 0xff52], /* FULLWIDTH LATIN SMALL LETTER R */ + [0xff33, 0xff53], /* FULLWIDTH LATIN SMALL LETTER S */ + [0xff34, 0xff54], /* FULLWIDTH LATIN SMALL LETTER T */ + [0xff35, 0xff55], /* FULLWIDTH LATIN SMALL LETTER U */ + [0xff36, 0xff56], /* FULLWIDTH LATIN SMALL LETTER V */ + [0xff37, 0xff57], /* FULLWIDTH LATIN SMALL LETTER W */ + [0xff38, 0xff58], /* FULLWIDTH LATIN SMALL LETTER X */ + [0xff39, 0xff59], /* FULLWIDTH LATIN SMALL LETTER Y */ + [0xff3a, 0xff5a], /* FULLWIDTH LATIN SMALL LETTER Z */ + [0xff5b, 0xff5b], /* FULLWIDTH LEFT CURLY BRACKET (FULLWIDTH OPENING CURLY BRACKET) */ + [0xff5c, 0xff5c], /* FULLWIDTH VERTICAL LINE (FULLWIDTH VERTICAL BAR) */ + [0xff5d, 0xff5d], /* FULLWIDTH RIGHT CURLY BRACKET (FULLWIDTH CLOSING CURLY BRACKET) */ + [0xff5e, 0xff5e], /* FULLWIDTH TILDE (FULLWIDTH SPACING TILDE) */ + [0xff5f, 0xff5f], /* FULLWIDTH LEFT WHITE PARENTHESIS */ + [0xff60, 0xff60], /* FULLWIDTH RIGHT WHITE PARENTHESIS */ + [0xff61, 0xff61], /* HALFWIDTH IDEOGRAPHIC FULL STOP (HALFWIDTH IDEOGRAPHIC PERIOD) */ + [0xff62, 0xff62], /* HALFWIDTH LEFT CORNER BRACKET (HALFWIDTH OPENING CORNER BRACKET) */ + [0xff63, 0xff63], /* HALFWIDTH RIGHT CORNER BRACKET (HALFWIDTH CLOSING CORNER BRACKET) */ + [0xff64, 0xff64], /* HALFWIDTH IDEOGRAPHIC COMMA */ + [0xff65, 0xff65], /* HALFWIDTH KATAKANA MIDDLE DOT */ + [0xff66, 0xff66], /* HALFWIDTH KATAKANA LETTER WO */ + [0xff67, 0xff67], /* HALFWIDTH KATAKANA LETTER SMALL A */ + [0xff68, 0xff68], /* HALFWIDTH KATAKANA LETTER SMALL I */ + [0xff69, 0xff69], /* HALFWIDTH KATAKANA LETTER SMALL U */ + [0xff6a, 0xff6a], /* HALFWIDTH KATAKANA LETTER SMALL E */ + [0xff6b, 0xff6b], /* HALFWIDTH KATAKANA LETTER SMALL O */ + [0xff6c, 0xff6c], /* HALFWIDTH KATAKANA LETTER SMALL YA */ + [0xff6d, 0xff6d], /* HALFWIDTH KATAKANA LETTER SMALL YU */ + [0xff6e, 0xff6e], /* HALFWIDTH KATAKANA LETTER SMALL YO */ + [0xff6f, 0xff6f], /* HALFWIDTH KATAKANA LETTER SMALL TU */ + [0xff70, 0xff70], /* HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK */ + [0xff71, 0xff71], /* HALFWIDTH KATAKANA LETTER A */ + [0xff72, 0xff72], /* HALFWIDTH KATAKANA LETTER I */ + [0xff73, 0xff73], /* HALFWIDTH KATAKANA LETTER U */ + [0xff74, 0xff74], /* HALFWIDTH KATAKANA LETTER E */ + [0xff75, 0xff75], /* HALFWIDTH KATAKANA LETTER O */ + [0xff76, 0xff76], /* HALFWIDTH KATAKANA LETTER KA */ + [0xff77, 0xff77], /* HALFWIDTH KATAKANA LETTER KI */ + [0xff78, 0xff78], /* HALFWIDTH KATAKANA LETTER KU */ + [0xff79, 0xff79], /* HALFWIDTH KATAKANA LETTER KE */ + [0xff7a, 0xff7a], /* HALFWIDTH KATAKANA LETTER KO */ + [0xff7b, 0xff7b], /* HALFWIDTH KATAKANA LETTER SA */ + [0xff7c, 0xff7c], /* HALFWIDTH KATAKANA LETTER SI */ + [0xff7d, 0xff7d], /* HALFWIDTH KATAKANA LETTER SU */ + [0xff7e, 0xff7e], /* HALFWIDTH KATAKANA LETTER SE */ + [0xff7f, 0xff7f], /* HALFWIDTH KATAKANA LETTER SO */ + [0xff80, 0xff80], /* HALFWIDTH KATAKANA LETTER TA */ + [0xff81, 0xff81], /* HALFWIDTH KATAKANA LETTER TI */ + [0xff82, 0xff82], /* HALFWIDTH KATAKANA LETTER TU */ + [0xff83, 0xff83], /* HALFWIDTH KATAKANA LETTER TE */ + [0xff84, 0xff84], /* HALFWIDTH KATAKANA LETTER TO */ + [0xff85, 0xff85], /* HALFWIDTH KATAKANA LETTER NA */ + [0xff86, 0xff86], /* HALFWIDTH KATAKANA LETTER NI */ + [0xff87, 0xff87], /* HALFWIDTH KATAKANA LETTER NU */ + [0xff88, 0xff88], /* HALFWIDTH KATAKANA LETTER NE */ + [0xff89, 0xff89], /* HALFWIDTH KATAKANA LETTER NO */ + [0xff8a, 0xff8a], /* HALFWIDTH KATAKANA LETTER HA */ + [0xff8b, 0xff8b], /* HALFWIDTH KATAKANA LETTER HI */ + [0xff8c, 0xff8c], /* HALFWIDTH KATAKANA LETTER HU */ + [0xff8d, 0xff8d], /* HALFWIDTH KATAKANA LETTER HE */ + [0xff8e, 0xff8e], /* HALFWIDTH KATAKANA LETTER HO */ + [0xff8f, 0xff8f], /* HALFWIDTH KATAKANA LETTER MA */ + [0xff90, 0xff90], /* HALFWIDTH KATAKANA LETTER MI */ + [0xff91, 0xff91], /* HALFWIDTH KATAKANA LETTER MU */ + [0xff92, 0xff92], /* HALFWIDTH KATAKANA LETTER ME */ + [0xff93, 0xff93], /* HALFWIDTH KATAKANA LETTER MO */ + [0xff94, 0xff94], /* HALFWIDTH KATAKANA LETTER YA */ + [0xff95, 0xff95], /* HALFWIDTH KATAKANA LETTER YU */ + [0xff96, 0xff96], /* HALFWIDTH KATAKANA LETTER YO */ + [0xff97, 0xff97], /* HALFWIDTH KATAKANA LETTER RA */ + [0xff98, 0xff98], /* HALFWIDTH KATAKANA LETTER RI */ + [0xff99, 0xff99], /* HALFWIDTH KATAKANA LETTER RU */ + [0xff9a, 0xff9a], /* HALFWIDTH KATAKANA LETTER RE */ + [0xff9b, 0xff9b], /* HALFWIDTH KATAKANA LETTER RO */ + [0xff9c, 0xff9c], /* HALFWIDTH KATAKANA LETTER WA */ + [0xff9d, 0xff9d], /* HALFWIDTH KATAKANA LETTER N */ + [0xff9e, 0xff9e], /* HALFWIDTH KATAKANA VOICED SOUND MARK */ + [0xff9f, 0xff9f], /* HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK */ + [0xffa0, 0xffa0], /* HALFWIDTH HANGUL FILLER (HALFWIDTH HANGUL CAE OM) */ + [0xffa1, 0xffa1], /* HALFWIDTH HANGUL LETTER KIYEOK (HALFWIDTH HANGUL LETTER GIYEOG) */ + [0xffa2, 0xffa2], /* HALFWIDTH HANGUL LETTER SSANGKIYEOK (HALFWIDTH HANGUL LETTER SSANG GIYEOG) */ + [0xffa3, 0xffa3], /* HALFWIDTH HANGUL LETTER KIYEOK-SIOS (HALFWIDTH HANGUL LETTER GIYEOG SIOS) */ + [0xffa4, 0xffa4], /* HALFWIDTH HANGUL LETTER NIEUN */ + [0xffa5, 0xffa5], /* HALFWIDTH HANGUL LETTER NIEUN-CIEUC (HALFWIDTH HANGUL LETTER NIEUN JIEUJ) */ + [0xffa6, 0xffa6], /* HALFWIDTH HANGUL LETTER NIEUN-HIEUH (HALFWIDTH HANGUL LETTER NIEUN HIEUH) */ + [0xffa7, 0xffa7], /* HALFWIDTH HANGUL LETTER TIKEUT (HALFWIDTH HANGUL LETTER DIGEUD) */ + [0xffa8, 0xffa8], /* HALFWIDTH HANGUL LETTER SSANGTIKEUT (HALFWIDTH HANGUL LETTER SSANG DIGEUD) */ + [0xffa9, 0xffa9], /* HALFWIDTH HANGUL LETTER RIEUL (HALFWIDTH HANGUL LETTER LIEUL) */ + [0xffaa, 0xffaa], /* HALFWIDTH HANGUL LETTER RIEUL-KIYEOK (HALFWIDTH HANGUL LETTER LIEUL GIYEOG) */ + [0xffab, 0xffab], /* HALFWIDTH HANGUL LETTER RIEUL-MIEUM (HALFWIDTH HANGUL LETTER LIEUL MIEUM) */ + [0xffac, 0xffac], /* HALFWIDTH HANGUL LETTER RIEUL-PIEUP (HALFWIDTH HANGUL LETTER LIEUL BIEUB) */ + [0xffad, 0xffad], /* HALFWIDTH HANGUL LETTER RIEUL-SIOS (HALFWIDTH HANGUL LETTER LIEUL SIOS) */ + [0xffae, 0xffae], /* HALFWIDTH HANGUL LETTER RIEUL-THIEUTH (HALFWIDTH HANGUL LETTER LIEUL TIEUT) */ + [0xffaf, 0xffaf], /* HALFWIDTH HANGUL LETTER RIEUL-PHIEUPH (HALFWIDTH HANGUL LETTER LIEUL PIEUP) */ + [0xffb0, 0xffb0], /* HALFWIDTH HANGUL LETTER RIEUL-HIEUH (HALFWIDTH HANGUL LETTER LIEUL HIEUH) */ + [0xffb1, 0xffb1], /* HALFWIDTH HANGUL LETTER MIEUM */ + [0xffb2, 0xffb2], /* HALFWIDTH HANGUL LETTER PIEUP (HALFWIDTH HANGUL LETTER BIEUB) */ + [0xffb3, 0xffb3], /* HALFWIDTH HANGUL LETTER SSANGPIEUP (HALFWIDTH HANGUL LETTER SSANG BIEUB) */ + [0xffb4, 0xffb4], /* HALFWIDTH HANGUL LETTER PIEUP-SIOS (HALFWIDTH HANGUL LETTER BIEUB SIOS) */ + [0xffb5, 0xffb5], /* HALFWIDTH HANGUL LETTER SIOS */ + [0xffb6, 0xffb6], /* HALFWIDTH HANGUL LETTER SSANGSIOS (HALFWIDTH HANGUL LETTER SSANG SIOS) */ + [0xffb7, 0xffb7], /* HALFWIDTH HANGUL LETTER IEUNG */ + [0xffb8, 0xffb8], /* HALFWIDTH HANGUL LETTER CIEUC (HALFWIDTH HANGUL LETTER JIEUJ) */ + [0xffb9, 0xffb9], /* HALFWIDTH HANGUL LETTER SSANGCIEUC (HALFWIDTH HANGUL LETTER SSANG JIEUJ) */ + [0xffba, 0xffba], /* HALFWIDTH HANGUL LETTER CHIEUCH (HALFWIDTH HANGUL LETTER CIEUC) */ + [0xffbb, 0xffbb], /* HALFWIDTH HANGUL LETTER KHIEUKH (HALFWIDTH HANGUL LETTER KIYEOK) */ + [0xffbc, 0xffbc], /* HALFWIDTH HANGUL LETTER THIEUTH (HALFWIDTH HANGUL LETTER TIEUT) */ + [0xffbd, 0xffbd], /* HALFWIDTH HANGUL LETTER PHIEUPH (HALFWIDTH HANGUL LETTER PIEUP) */ + [0xffbe, 0xffbe], /* HALFWIDTH HANGUL LETTER HIEUH */ + [0xffbf, 0xffbf], + [0xffc0, 0xffc0], + [0xffc1, 0xffc1], + [0xffc2, 0xffc2], /* HALFWIDTH HANGUL LETTER A */ + [0xffc3, 0xffc3], /* HALFWIDTH HANGUL LETTER AE */ + [0xffc4, 0xffc4], /* HALFWIDTH HANGUL LETTER YA */ + [0xffc5, 0xffc5], /* HALFWIDTH HANGUL LETTER YAE */ + [0xffc6, 0xffc6], /* HALFWIDTH HANGUL LETTER EO */ + [0xffc7, 0xffc7], /* HALFWIDTH HANGUL LETTER E */ + [0xffc8, 0xffc8], + [0xffc9, 0xffc9], + [0xffca, 0xffca], /* HALFWIDTH HANGUL LETTER YEO */ + [0xffcb, 0xffcb], /* HALFWIDTH HANGUL LETTER YE */ + [0xffcc, 0xffcc], /* HALFWIDTH HANGUL LETTER O */ + [0xffcd, 0xffcd], /* HALFWIDTH HANGUL LETTER WA */ + [0xffce, 0xffce], /* HALFWIDTH HANGUL LETTER WAE */ + [0xffcf, 0xffcf], /* HALFWIDTH HANGUL LETTER OE */ + [0xffd0, 0xffd0], + [0xffd1, 0xffd1], + [0xffd2, 0xffd2], /* HALFWIDTH HANGUL LETTER YO */ + [0xffd3, 0xffd3], /* HALFWIDTH HANGUL LETTER U */ + [0xffd4, 0xffd4], /* HALFWIDTH HANGUL LETTER WEO */ + [0xffd5, 0xffd5], /* HALFWIDTH HANGUL LETTER WE */ + [0xffd6, 0xffd6], /* HALFWIDTH HANGUL LETTER WI */ + [0xffd7, 0xffd7], /* HALFWIDTH HANGUL LETTER YU */ + [0xffd8, 0xffd8], + [0xffd9, 0xffd9], + [0xffda, 0xffda], /* HALFWIDTH HANGUL LETTER EU */ + [0xffdb, 0xffdb], /* HALFWIDTH HANGUL LETTER YI */ + [0xffdc, 0xffdc], /* HALFWIDTH HANGUL LETTER I */ + [0xffdd, 0xffdd], + [0xffde, 0xffde], + [0xffdf, 0xffdf], + [0xffe0, 0xffe0], /* FULLWIDTH CENT SIGN */ + [0xffe1, 0xffe1], /* FULLWIDTH POUND SIGN */ + [0xffe2, 0xffe2], /* FULLWIDTH NOT SIGN */ + [0xffe3, 0xffe3], /* FULLWIDTH MACRON (FULLWIDTH SPACING MACRON) */ + [0xffe4, 0xffe4], /* FULLWIDTH BROKEN BAR (FULLWIDTH BROKEN VERTICAL BAR) */ + [0xffe5, 0xffe5], /* FULLWIDTH YEN SIGN */ + [0xffe6, 0xffe6], /* FULLWIDTH WON SIGN */ + [0xffe7, 0xffe7], + [0xffe8, 0xffe8], /* HALFWIDTH FORMS LIGHT VERTICAL */ + [0xffe9, 0xffe9], /* HALFWIDTH LEFTWARDS ARROW */ + [0xffea, 0xffea], /* HALFWIDTH UPWARDS ARROW */ + [0xffeb, 0xffeb], /* HALFWIDTH RIGHTWARDS ARROW */ + [0xffec, 0xffec], /* HALFWIDTH DOWNWARDS ARROW */ + [0xffed, 0xffed], /* HALFWIDTH BLACK SQUARE */ + [0xffee, 0xffee], /* HALFWIDTH WHITE CIRCLE */ + [0xffef, 0xffef], + [0xfff0, 0xfff0], + [0xfff1, 0xfff1], + [0xfff2, 0xfff2], + [0xfff3, 0xfff3], + [0xfff4, 0xfff4], + [0xfff5, 0xfff5], + [0xfff6, 0xfff6], + [0xfff7, 0xfff7], + [0xfff8, 0xfff8], + [0xfff9, 0xfff9], /* INTERLINEAR ANNOTATION ANCHOR */ + [0xfffa, 0xfffa], /* INTERLINEAR ANNOTATION SEPARATOR */ + [0xfffb, 0xfffb], /* INTERLINEAR ANNOTATION TERMINATOR */ + [0xfffc, 0xfffc], /* OBJECT REPLACEMENT CHARACTER */ + [0xfffd, 0xfffd], /* REPLACEMENT CHARACTER */ + [0xfffe, 0xfffe], + [0xffff, 0xffff], +]; +assertEq(mapping.length, 0x10000); +for (var i = 0; i <= 0xffff; i++) { + var char = String.fromCharCode(i); + var info = mapping[i]; + + assertEq(char.toUpperCase().charCodeAt(0), info[0]); + assertEq(char.toLowerCase().charCodeAt(0), info[1]); +} + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/Types/8.12.5-01.js b/js/src/tests/ecma_5/Types/8.12.5-01.js new file mode 100644 index 000000000..b41de0bb5 --- /dev/null +++ b/js/src/tests/ecma_5/Types/8.12.5-01.js @@ -0,0 +1,110 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jason Orendorff + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 523846; +var summary = + "Assignments to a property that has a getter but not a setter should not " + + "throw a TypeError per ES5 (at least not until strict mode is supported)"; +var actual = "Early failure"; +var expect = "No errors"; + + +printBugNumber(BUGNUMBER); +printStatus(summary); + +var o = { get p() { return "a"; } }; + +function test1() +{ + o.p = "b"; + assertEq(o.p, "a"); +} + +function test2() +{ + function T() {} + T.prototype = o; + y = new T(); + y.p = "b"; + assertEq(y.p, "a"); +} + +function strictTest1() +{ + "use strict"; + + o.p = "b"; // strict-mode violation here + assertEq(o.p, "a"); +} + +function strictTest2() +{ + "use strict"; + + function T() {} + T.prototype = o; + y = new T; + y.p = "b"; // strict-mode violation here + assertEq(y.p, "a"); +} + +var errors = []; +try +{ + try + { + test1(); + } + catch (e) + { + errors.push(e); + } + + try + { + test2(); + } + catch (e) + { + errors.push(e); + } + + try + { + strictTest1(); + errors.push("strictTest1 didn't fail"); + } + catch (e) + { + if (!(e instanceof TypeError)) + errors.push("strictTest1 didn't fail with a TypeError: " + e); + } + + try + { + strictTest2(); + errors.push("strictTest2 didn't fail"); + } + catch (e) + { + if (!(e instanceof TypeError)) + errors.push("strictTest2 didn't fail with a TypeError: " + e); + } +} +catch (e) +{ + errors.push("Unexpected error: " + e); +} +finally +{ + actual = errors.length > 0 ? errors.join(", ") : "No errors"; +} + +reportCompare(expect, actual, summary); diff --git a/js/src/tests/ecma_5/Types/browser.js b/js/src/tests/ecma_5/Types/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Types/browser.js diff --git a/js/src/tests/ecma_5/Types/shell.js b/js/src/tests/ecma_5/Types/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/Types/shell.js diff --git a/js/src/tests/ecma_5/browser.js b/js/src/tests/ecma_5/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/browser.js diff --git a/js/src/tests/ecma_5/eval/browser.js b/js/src/tests/ecma_5/eval/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/eval/browser.js diff --git a/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-direct-normalcode.js b/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-direct-normalcode.js new file mode 100644 index 000000000..1a4b56c63 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-direct-normalcode.js @@ -0,0 +1,208 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; +function globalX() { return x; } +var y = 42; +function globalY() { return y; } + +var ev = eval; + +function testX() +{ + var x = 2; + var xcode = + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + + var local0 = x; + var global0 = globalX(); + + var f = eval(xcode); + + var inner1 = f("get"); + var local1 = x; + var global1 = globalX(); + + x = 7; + var inner2 = f("get"); + var local2 = x; + var global2 = globalX(); + + f("set1"); + var inner3 = f("get"); + var local3 = x; + var global3 = globalX(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = x; + var global4 = globalX(); + + f("set2"); + var inner5 = f("get"); + var local5 = x; + var global5 = globalX(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsX = testX(); + +assertEq(resultsX.local0, 2); +assertEq(resultsX.global0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 4); +assertEq(resultsX.global1, 17); + +assertEq(resultsX.inner2, 7); +assertEq(resultsX.local2, 7); +assertEq(resultsX.global2, 17); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 9); +assertEq(resultsX.global3, 17); + +assertEq(resultsX.del, false); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 9); +assertEq(resultsX.global4, 17); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 23); +assertEq(resultsX.global5, 17); + + +function testY() +{ + var ycode = + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + + var local0 = y; + var global0 = globalY(); + + var f = eval(ycode); + + var inner1 = f("get"); + var local1 = y; + var global1 = globalY(); + + y = 8; + var inner2 = f("get"); + var local2 = y; + var global2 = globalY(); + + f("set1"); + var inner3 = f("get"); + var local3 = y; + var global3 = globalY(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = y; + var global4 = globalY(); + + f("set2"); + var inner5 = f("get"); + var local5 = y; + var global5 = globalY(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsY = testY(); + +assertEq(resultsY.local0, 42); +assertEq(resultsY.global0, 42); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, 5); +assertEq(resultsY.global1, 42); + +assertEq(resultsY.inner2, 8); +assertEq(resultsY.local2, 8); +assertEq(resultsY.global2, 42); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 2); +assertEq(resultsY.global3, 42); + +assertEq(resultsY.del, true); + +assertEq(resultsY.inner4, 42); +assertEq(resultsY.local4, 42); +assertEq(resultsY.global4, 42); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 71); +assertEq(resultsY.global5, 71); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-direct-strictcode.js b/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-direct-strictcode.js new file mode 100644 index 000000000..7bd4ea658 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-direct-strictcode.js @@ -0,0 +1,210 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; +function globalX() { return x; } +var y = 42; +function globalY() { return y; } + +var ev = eval; + +function testX() +{ + var x = 2; + var xcode = + "'use strict';" + + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + + var local0 = x; + var global0 = globalX(); + + var f = eval(xcode); + + var inner1 = f("get"); + var local1 = x; + var global1 = globalX(); + + x = 7; + var inner2 = f("get"); + var local2 = x; + var global2 = globalX(); + + f("set1"); + var inner3 = f("get"); + var local3 = x; + var global3 = globalX(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = x; + var global4 = globalX(); + + f("set2"); + var inner5 = f("get"); + var local5 = x; + var global5 = globalX(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsX = testX(); + +assertEq(resultsX.local0, 2); +assertEq(resultsX.global0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 2); +assertEq(resultsX.global1, 17); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); +assertEq(resultsX.global2, 17); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); +assertEq(resultsX.global3, 17); + +assertEq(resultsX.del, "SyntaxError"); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); +assertEq(resultsX.global4, 17); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); +assertEq(resultsX.global5, 17); + + +function testY() +{ + var ycode = + "'use strict';" + + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + + var local0 = y; + var global0 = globalY(); + + var f = eval(ycode); + + var inner1 = f("get"); + var local1 = y; + var global1 = globalY(); + + y = 8; + var inner2 = f("get"); + var local2 = y; + var global2 = globalY(); + + f("set1"); + var inner3 = f("get"); + var local3 = y; + var global3 = globalY(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = y; + var global4 = globalY(); + + f("set2"); + var inner5 = f("get"); + var local5 = y; + var global5 = globalY(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsY = testY(); + +assertEq(resultsY.local0, 42); +assertEq(resultsY.global0, 42); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, 42); +assertEq(resultsY.global1, 42); + +assertEq(resultsY.inner2, 5); +assertEq(resultsY.local2, 8); +assertEq(resultsY.global2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 8); +assertEq(resultsY.global3, 8); + +assertEq(resultsY.del, "SyntaxError"); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, 8); +assertEq(resultsY.global4, 8); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 8); +assertEq(resultsY.global5, 8); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-indirect-normalcode.js b/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-indirect-normalcode.js new file mode 100644 index 000000000..d75496fa5 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-indirect-normalcode.js @@ -0,0 +1,208 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; +function globalX() { return x; } +var y = 42; +function globalY() { return y; } + +var ev = eval; + +function testX() +{ + var x = 2; + var xcode = + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + + var local0 = x; + var global0 = globalX(); + + var f = ev(xcode); + + var inner1 = f("get"); + var local1 = x; + var global1 = globalX(); + + x = 7; + var inner2 = f("get"); + var local2 = x; + var global2 = globalX(); + + f("set1"); + var inner3 = f("get"); + var local3 = x; + var global3 = globalX(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = x; + var global4 = globalX(); + + f("set2"); + var inner5 = f("get"); + var local5 = x; + var global5 = globalX(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsX = testX(); + +assertEq(resultsX.local0, 2); +assertEq(resultsX.global0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 2); +assertEq(resultsX.global1, 4); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); +assertEq(resultsX.global2, 4); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); +assertEq(resultsX.global3, 9); + +assertEq(resultsX.del, false); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); +assertEq(resultsX.global4, 9); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); +assertEq(resultsX.global5, 23); + + +function testY() +{ + var ycode = + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + + var local0 = y; + var global0 = globalY(); + + var f = ev(ycode); + + var inner1 = f("get"); + var local1 = y; + var global1 = globalY(); + + y = 8; + var inner2 = f("get"); + var local2 = y; + var global2 = globalY(); + + f("set1"); + var inner3 = f("get"); + var local3 = y; + var global3 = globalY(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = y; + var global4 = globalY(); + + f("set2"); + var inner5 = f("get"); + var local5 = y; + var global5 = globalY(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsY = testY(); + +assertEq(resultsY.local0, 42); +assertEq(resultsY.global0, 42); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, 5); +assertEq(resultsY.global1, 5); + +assertEq(resultsY.inner2, 8); +assertEq(resultsY.local2, 8); +assertEq(resultsY.global2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 2); +assertEq(resultsY.global3, 2); + +assertEq(resultsY.del, false); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, 2); +assertEq(resultsY.global4, 2); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 71); +assertEq(resultsY.global5, 71); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-indirect-strictcode.js b/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-indirect-strictcode.js new file mode 100644 index 000000000..f38fc1b58 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-fun-normalcaller-indirect-strictcode.js @@ -0,0 +1,210 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; +function globalX() { return x; } +var y = 42; +function globalY() { return y; } + +var ev = eval; + +function testX() +{ + var x = 2; + var xcode = + "'use strict';" + + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + + var local0 = x; + var global0 = globalX(); + + var f = ev(xcode); + + var inner1 = f("get"); + var local1 = x; + var global1 = globalX(); + + x = 7; + var inner2 = f("get"); + var local2 = x; + var global2 = globalX(); + + f("set1"); + var inner3 = f("get"); + var local3 = x; + var global3 = globalX(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = x; + var global4 = globalX(); + + f("set2"); + var inner5 = f("get"); + var local5 = x; + var global5 = globalX(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsX = testX(); + +assertEq(resultsX.local0, 2); +assertEq(resultsX.global0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 2); +assertEq(resultsX.global1, 17); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); +assertEq(resultsX.global2, 17); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); +assertEq(resultsX.global3, 17); + +assertEq(resultsX.del, "SyntaxError"); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); +assertEq(resultsX.global4, 17); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); +assertEq(resultsX.global5, 17); + + +function testY() +{ + var ycode = + "'use strict';" + + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + + var local0 = y; + var global0 = globalY(); + + var f = ev(ycode); + + var inner1 = f("get"); + var local1 = y; + var global1 = globalY(); + + y = 8; + var inner2 = f("get"); + var local2 = y; + var global2 = globalY(); + + f("set1"); + var inner3 = f("get"); + var local3 = y; + var global3 = globalY(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = y; + var global4 = globalY(); + + f("set2"); + var inner5 = f("get"); + var local5 = y; + var global5 = globalY(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsY = testY(); + +assertEq(resultsY.local0, 42); +assertEq(resultsY.global0, 42); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, 42); +assertEq(resultsY.global1, 42); + +assertEq(resultsY.inner2, 5); +assertEq(resultsY.local2, 8); +assertEq(resultsY.global2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 8); +assertEq(resultsY.global3, 8); + +assertEq(resultsY.del, "SyntaxError"); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, 8); +assertEq(resultsY.global4, 8); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 8); +assertEq(resultsY.global5, 8); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-direct-normalcode.js b/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-direct-normalcode.js new file mode 100644 index 000000000..5d556458b --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-direct-normalcode.js @@ -0,0 +1,212 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; +function globalX() { return x; } +var y = 42; +function globalY() { return y; } + +var ev = eval; + +function testX() +{ + "use strict"; + + var x = 2; + var xcode = + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + + var local0 = x; + var global0 = globalX(); + + var f = eval(xcode); + + var inner1 = f("get"); + var local1 = x; + var global1 = globalX(); + + x = 7; + var inner2 = f("get"); + var local2 = x; + var global2 = globalX(); + + f("set1"); + var inner3 = f("get"); + var local3 = x; + var global3 = globalX(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = x; + var global4 = globalX(); + + f("set2"); + var inner5 = f("get"); + var local5 = x; + var global5 = globalX(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsX = testX(); + +assertEq(resultsX.local0, 2); +assertEq(resultsX.global0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 2); +assertEq(resultsX.global1, 17); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); +assertEq(resultsX.global2, 17); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); +assertEq(resultsX.global3, 17); + +assertEq(resultsX.del, "SyntaxError"); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); +assertEq(resultsX.global4, 17); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); +assertEq(resultsX.global5, 17); + + +function testY() +{ + "use strict"; + + var ycode = + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + + var local0 = y; + var global0 = globalY(); + + var f = eval(ycode); + + var inner1 = f("get"); + var local1 = y; + var global1 = globalY(); + + y = 8; + var inner2 = f("get"); + var local2 = y; + var global2 = globalY(); + + f("set1"); + var inner3 = f("get"); + var local3 = y; + var global3 = globalY(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = y; + var global4 = globalY(); + + f("set2"); + var inner5 = f("get"); + var local5 = y; + var global5 = globalY(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsY = testY(); + +assertEq(resultsY.local0, 42); +assertEq(resultsY.global0, 42); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, 42); +assertEq(resultsY.global1, 42); + +assertEq(resultsY.inner2, 5); +assertEq(resultsY.local2, 8); +assertEq(resultsY.global2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 8); +assertEq(resultsY.global3, 8); + +assertEq(resultsY.del, "SyntaxError"); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, 8); +assertEq(resultsY.global4, 8); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 8); +assertEq(resultsY.global5, 8); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-direct-strictcode.js b/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-direct-strictcode.js new file mode 100644 index 000000000..a215a3ce7 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-direct-strictcode.js @@ -0,0 +1,214 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; +function globalX() { return x; } +var y = 42; +function globalY() { return y; } + +var ev = eval; + +function testX() +{ + "use strict"; + + var x = 2; + var xcode = + "'use strict';" + + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + + var local0 = x; + var global0 = globalX(); + + var f = eval(xcode); + + var inner1 = f("get"); + var local1 = x; + var global1 = globalX(); + + x = 7; + var inner2 = f("get"); + var local2 = x; + var global2 = globalX(); + + f("set1"); + var inner3 = f("get"); + var local3 = x; + var global3 = globalX(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = x; + var global4 = globalX(); + + f("set2"); + var inner5 = f("get"); + var local5 = x; + var global5 = globalX(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsX = testX(); + +assertEq(resultsX.local0, 2); +assertEq(resultsX.global0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 2); +assertEq(resultsX.global1, 17); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); +assertEq(resultsX.global2, 17); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); +assertEq(resultsX.global3, 17); + +assertEq(resultsX.del, "SyntaxError"); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); +assertEq(resultsX.global4, 17); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); +assertEq(resultsX.global5, 17); + + +function testY() +{ + "use strict"; + + var ycode = + "'use strict';" + + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + + var local0 = y; + var global0 = globalY(); + + var f = eval(ycode); + + var inner1 = f("get"); + var local1 = y; + var global1 = globalY(); + + y = 8; + var inner2 = f("get"); + var local2 = y; + var global2 = globalY(); + + f("set1"); + var inner3 = f("get"); + var local3 = y; + var global3 = globalY(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = y; + var global4 = globalY(); + + f("set2"); + var inner5 = f("get"); + var local5 = y; + var global5 = globalY(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsY = testY(); + +assertEq(resultsY.local0, 42); +assertEq(resultsY.global0, 42); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, 42); +assertEq(resultsY.global1, 42); + +assertEq(resultsY.inner2, 5); +assertEq(resultsY.local2, 8); +assertEq(resultsY.global2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 8); +assertEq(resultsY.global3, 8); + +assertEq(resultsY.del, "SyntaxError"); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, 8); +assertEq(resultsY.global4, 8); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 8); +assertEq(resultsY.global5, 8); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-indirect-normalcode.js b/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-indirect-normalcode.js new file mode 100644 index 000000000..8b3016d2e --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-indirect-normalcode.js @@ -0,0 +1,212 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; +function globalX() { return x; } +var y = 42; +function globalY() { return y; } + +var ev = eval; + +function testX() +{ + "use strict"; + + var x = 2; + var xcode = + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + + var local0 = x; + var global0 = globalX(); + + var f = ev(xcode); + + var inner1 = f("get"); + var local1 = x; + var global1 = globalX(); + + x = 7; + var inner2 = f("get"); + var local2 = x; + var global2 = globalX(); + + f("set1"); + var inner3 = f("get"); + var local3 = x; + var global3 = globalX(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = x; + var global4 = globalX(); + + f("set2"); + var inner5 = f("get"); + var local5 = x; + var global5 = globalX(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsX = testX(); + +assertEq(resultsX.local0, 2); +assertEq(resultsX.global0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 2); +assertEq(resultsX.global1, 4); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); +assertEq(resultsX.global2, 4); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); +assertEq(resultsX.global3, 9); + +assertEq(resultsX.del, false); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); +assertEq(resultsX.global4, 9); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); +assertEq(resultsX.global5, 23); + + +function testY() +{ + "use strict"; + + var ycode = + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + + var local0 = y; + var global0 = globalY(); + + var f = ev(ycode); + + var inner1 = f("get"); + var local1 = y; + var global1 = globalY(); + + y = 8; + var inner2 = f("get"); + var local2 = y; + var global2 = globalY(); + + f("set1"); + var inner3 = f("get"); + var local3 = y; + var global3 = globalY(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = y; + var global4 = globalY(); + + f("set2"); + var inner5 = f("get"); + var local5 = y; + var global5 = globalY(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsY = testY(); + +assertEq(resultsY.local0, 42); +assertEq(resultsY.global0, 42); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, 5); +assertEq(resultsY.global1, 5); + +assertEq(resultsY.inner2, 8); +assertEq(resultsY.local2, 8); +assertEq(resultsY.global2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 2); +assertEq(resultsY.global3, 2); + +assertEq(resultsY.del, false); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, 2); +assertEq(resultsY.global4, 2); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 71); +assertEq(resultsY.global5, 71); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-indirect-strictcode.js b/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-indirect-strictcode.js new file mode 100644 index 000000000..4157369ba --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-fun-strictcaller-indirect-strictcode.js @@ -0,0 +1,214 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; +function globalX() { return x; } +var y = 42; +function globalY() { return y; } + +var ev = eval; + +function testX() +{ + "use strict"; + + var x = 2; + var xcode = + "'use strict';" + + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + + var local0 = x; + var global0 = globalX(); + + var f = ev(xcode); + + var inner1 = f("get"); + var local1 = x; + var global1 = globalX(); + + x = 7; + var inner2 = f("get"); + var local2 = x; + var global2 = globalX(); + + f("set1"); + var inner3 = f("get"); + var local3 = x; + var global3 = globalX(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = x; + var global4 = globalX(); + + f("set2"); + var inner5 = f("get"); + var local5 = x; + var global5 = globalX(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsX = testX(); + +assertEq(resultsX.local0, 2); +assertEq(resultsX.global0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 2); +assertEq(resultsX.global1, 17); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); +assertEq(resultsX.global2, 17); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); +assertEq(resultsX.global3, 17); + +assertEq(resultsX.del, "SyntaxError"); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); +assertEq(resultsX.global4, 17); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); +assertEq(resultsX.global5, 17); + + +function testY() +{ + "use strict"; + + var ycode = + "'use strict';" + + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + + var local0 = y; + var global0 = globalY(); + + var f = ev(ycode); + + var inner1 = f("get"); + var local1 = y; + var global1 = globalY(); + + y = 8; + var inner2 = f("get"); + var local2 = y; + var global2 = globalY(); + + f("set1"); + var inner3 = f("get"); + var local3 = y; + var global3 = globalY(); + + var del = f("delete"); + var inner4 = f("get"); + var local4 = y; + var global4 = globalY(); + + f("set2"); + var inner5 = f("get"); + var local5 = y; + var global5 = globalY(); + + return { + local0: local0, global0: global0, + inner1: inner1, local1: local1, global1: global1, + inner2: inner2, local2: local2, global2: global2, + inner3: inner3, local3: local3, global3: global3, + del: del, + inner4: inner4, local4: local4, global4: global4, + inner5: inner5, local5: local5, global5: global5, + }; +} + +var resultsY = testY(); + +assertEq(resultsY.local0, 42); +assertEq(resultsY.global0, 42); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, 42); +assertEq(resultsY.global1, 42); + +assertEq(resultsY.inner2, 5); +assertEq(resultsY.local2, 8); +assertEq(resultsY.global2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 8); +assertEq(resultsY.global3, 8); + +assertEq(resultsY.del, "SyntaxError"); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, 8); +assertEq(resultsY.global4, 8); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 8); +assertEq(resultsY.global5, 8); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-direct-normalcode.js b/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-direct-normalcode.js new file mode 100644 index 000000000..cb5650852 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-direct-normalcode.js @@ -0,0 +1,172 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; + +var ev = eval; + +var xcode = + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + +var local0 = x; + +var f = eval(xcode); + +var inner1 = f("get"); +var local1 = x; + +x = 7; +var inner2 = f("get"); +var local2 = x; + +f("set1"); +var inner3 = f("get"); +var local3 = x; + +var del = f("delete"); +var inner4 = f("get"); +var local4 = x; + +f("set2"); +var inner5 = f("get"); +var local5 = x; + +var resultsX = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsX.local0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 4); + +assertEq(resultsX.inner2, 7); +assertEq(resultsX.local2, 7); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 9); + +assertEq(resultsX.del, false); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 9); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 23); + + +var ycode = + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + +try { var local0 = y; } catch (e) { local0 = e.name; } + +var f = eval(ycode); + +var inner1 = f("get"); +var local1 = y; + +y = 8; +var inner2 = f("get"); +var local2 = y; + +f("set1"); +var inner3 = f("get"); +var local3 = y; + +var del = f("delete"); +try { var inner4 = f("get"); } catch (e) { inner4 = e.name; } +try { var local4 = y; } catch (e) { local4 = e.name; } + +f("set2"); +try { var inner5 = f("get"); } catch (e) { inner5 = e.name; } +try { var local5 = y; } catch (e) { local5 = e.name; } + +var resultsY = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsY.local0, "ReferenceError"); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, 5); + +assertEq(resultsY.inner2, 8); +assertEq(resultsY.local2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 2); + +assertEq(resultsY.del, true); + +assertEq(resultsY.inner4, "ReferenceError"); +assertEq(resultsY.local4, "ReferenceError"); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 71); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-direct-strictcode.js b/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-direct-strictcode.js new file mode 100644 index 000000000..cede8de83 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-direct-strictcode.js @@ -0,0 +1,174 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; + +var ev = eval; + +var xcode = + "'use strict';" + + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + +var local0 = x; + +var f = eval(xcode); + +var inner1 = f("get"); +var local1 = x; + +x = 7; +var inner2 = f("get"); +var local2 = x; + +f("set1"); +var inner3 = f("get"); +var local3 = x; + +var del = f("delete"); +var inner4 = f("get"); +var local4 = x; + +f("set2"); +var inner5 = f("get"); +var local5 = x; + +var resultsX = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsX.local0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 17); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); + +assertEq(resultsX.del, "SyntaxError"); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); + + +var ycode = + "'use strict';" + + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + +try { var local0 = y; } catch (e) { local0 = e.name; } + +var f = eval(ycode); + +var inner1 = f("get"); +try { var local1 = y; } catch (e) { local1 = e.name; } + +y = 8; +var inner2 = f("get"); +var local2 = y; + +f("set1"); +var inner3 = f("get"); +var local3 = y; + +var del = f("delete"); +try { var inner4 = f("get"); } catch (e) { inner4 = e.name; } +try { var local4 = y; } catch (e) { local4 = e.name; } + +f("set2"); +try { var inner5 = f("get"); } catch (e) { inner5 = e.name; } +try { var local5 = y; } catch (e) { local5 = e.name; } + +var resultsY = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsY.local0, "ReferenceError"); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, "ReferenceError"); + +assertEq(resultsY.inner2, 5); +assertEq(resultsY.local2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 8); + +assertEq(resultsY.del, "SyntaxError"); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, 8); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 8); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-indirect-normalcode.js b/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-indirect-normalcode.js new file mode 100644 index 000000000..5f4089f3d --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-indirect-normalcode.js @@ -0,0 +1,172 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; + +var ev = eval; + +var xcode = + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + +var local0 = x; + +var f = ev(xcode); + +var inner1 = f("get"); +var local1 = x; + +x = 7; +var inner2 = f("get"); +var local2 = x; + +f("set1"); +var inner3 = f("get"); +var local3 = x; + +var del = f("delete"); +var inner4 = f("get"); +var local4 = x; + +f("set2"); +var inner5 = f("get"); +var local5 = x; + +var resultsX = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsX.local0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 4); + +assertEq(resultsX.inner2, 7); +assertEq(resultsX.local2, 7); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 9); + +assertEq(resultsX.del, false); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 9); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 23); + + +var ycode = + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + +try { var local0 = y; } catch (e) { local0 = e.name; } + +var f = ev(ycode); + +var inner1 = f("get"); +var local1 = y; + +y = 8; +var inner2 = f("get"); +var local2 = y; + +f("set1"); +var inner3 = f("get"); +var local3 = y; + +var del = f("delete"); +try { var inner4 = f("get"); } catch (e) { inner4 = e.name; } +try { var local4 = y; } catch (e) { local4 = e.name; } + +f("set2"); +try { var inner5 = f("get"); } catch (e) { inner5 = e.name; } +try { var local5 = y; } catch (e) { local5 = e.name; } + +var resultsY = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsY.local0, "ReferenceError"); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, 5); + +assertEq(resultsY.inner2, 8); +assertEq(resultsY.local2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 2); + +assertEq(resultsY.del, true); + +assertEq(resultsY.inner4, "ReferenceError"); +assertEq(resultsY.local4, "ReferenceError"); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 71); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-indirect-strictcode.js b/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-indirect-strictcode.js new file mode 100644 index 000000000..c225b9796 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-global-normalcaller-indirect-strictcode.js @@ -0,0 +1,174 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; + +var ev = eval; + +var xcode = + "'use strict';" + + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + +var local0 = x; + +var f = ev(xcode); + +var inner1 = f("get"); +var local1 = x; + +x = 7; +var inner2 = f("get"); +var local2 = x; + +f("set1"); +var inner3 = f("get"); +var local3 = x; + +var del = f("delete"); +var inner4 = f("get"); +var local4 = x; + +f("set2"); +var inner5 = f("get"); +var local5 = x; + +var resultsX = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsX.local0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 17); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); + +assertEq(resultsX.del, "SyntaxError"); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); + + +var ycode = + "'use strict';" + + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + +try { var local0 = y; } catch (e) { local0 = e.name; } + +var f = ev(ycode); + +var inner1 = f("get"); +try { var local1 = y; } catch (e) { local1 = e.name; } + +y = 8; +var inner2 = f("get"); +var local2 = y; + +f("set1"); +var inner3 = f("get"); +var local3 = y; + +var del = f("delete"); +try { var inner4 = f("get"); } catch (e) { inner4 = e.name; } +try { var local4 = y; } catch (e) { local4 = e.name; } + +f("set2"); +try { var inner5 = f("get"); } catch (e) { inner5 = e.name; } +try { var local5 = y; } catch (e) { local5 = e.name; } + +var resultsY = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsY.local0, "ReferenceError"); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, "ReferenceError"); + +assertEq(resultsY.inner2, 5); +assertEq(resultsY.local2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 8); + +assertEq(resultsY.del, "SyntaxError"); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, 8); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 8); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-direct-normalcode.js b/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-direct-normalcode.js new file mode 100644 index 000000000..4a6b289f2 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-direct-normalcode.js @@ -0,0 +1,173 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ +"use strict"; + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; + +var ev = eval; + +var xcode = + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + +var local0 = x; + +var f = eval(xcode); + +var inner1 = f("get"); +var local1 = x; + +x = 7; +var inner2 = f("get"); +var local2 = x; + +f("set1"); +var inner3 = f("get"); +var local3 = x; + +var del = f("delete"); +var inner4 = f("get"); +var local4 = x; + +f("set2"); +var inner5 = f("get"); +var local5 = x; + +var resultsX = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsX.local0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 17); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); + +assertEq(resultsX.del, "SyntaxError"); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); + + +var ycode = + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + +try { var local0 = y; } catch (e) { local0 = e.name; } + +var f = eval(ycode); + +var inner1 = f("get"); +try { var local1 = y; } catch (e) { local1 = e.name; } + +try { y = 8; } catch (e) { assertEq(e.name, "ReferenceError"); } +var inner2 = f("get"); +try { var local2 = y; } catch (e) { local2 = e.name; } + +f("set1"); +var inner3 = f("get"); +try { var local3 = y; } catch (e) { local3 = e.name; } + +var del = f("delete"); +try { var inner4 = f("get"); } catch (e) { inner4 = e.name; } +try { var local4 = y; } catch (e) { local4 = e.name; } + +f("set2"); +try { var inner5 = f("get"); } catch (e) { inner5 = e.name; } +try { var local5 = y; } catch (e) { local5 = e.name; } + +var resultsY = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsY.local0, "ReferenceError"); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, "ReferenceError"); + +assertEq(resultsY.inner2, 5); +assertEq(resultsY.local2, "ReferenceError"); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, "ReferenceError"); + +assertEq(resultsY.del, "SyntaxError"); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, "ReferenceError"); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, "ReferenceError"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-direct-strictcode.js b/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-direct-strictcode.js new file mode 100644 index 000000000..2e624ecb3 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-direct-strictcode.js @@ -0,0 +1,175 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ +"use strict"; + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; + +var ev = eval; + +var xcode = + "'use strict';" + + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + +var local0 = x; + +var f = eval(xcode); + +var inner1 = f("get"); +var local1 = x; + +x = 7; +var inner2 = f("get"); +var local2 = x; + +f("set1"); +var inner3 = f("get"); +var local3 = x; + +var del = f("delete"); +var inner4 = f("get"); +var local4 = x; + +f("set2"); +var inner5 = f("get"); +var local5 = x; + +var resultsX = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsX.local0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 17); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); + +assertEq(resultsX.del, "SyntaxError"); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); + + +var ycode = + "'use strict';" + + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + +try { var local0 = y; } catch (e) { local0 = e.name; } + +var f = eval(ycode); + +var inner1 = f("get"); +try { var local1 = y; } catch (e) { local1 = e.name; } + +try { y = 8; } catch (e) { assertEq(e.name, "ReferenceError"); } +var inner2 = f("get"); +try { var local2 = y; } catch (e) { local2 = e.name; } + +f("set1"); +var inner3 = f("get"); +try { var local3 = y; } catch (e) { local3 = e.name; } + +var del = f("delete"); +try { var inner4 = f("get"); } catch (e) { inner4 = e.name; } +try { var local4 = y; } catch (e) { local4 = e.name; } + +f("set2"); +try { var inner5 = f("get"); } catch (e) { inner5 = e.name; } +try { var local5 = y; } catch (e) { local5 = e.name; } + +var resultsY = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsY.local0, "ReferenceError"); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, "ReferenceError"); + +assertEq(resultsY.inner2, 5); +assertEq(resultsY.local2, "ReferenceError"); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, "ReferenceError"); + +assertEq(resultsY.del, "SyntaxError"); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, "ReferenceError"); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, "ReferenceError"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-indirect-normalcode.js b/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-indirect-normalcode.js new file mode 100644 index 000000000..ac11ccb73 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-indirect-normalcode.js @@ -0,0 +1,173 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ +"use strict"; + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; + +var ev = eval; + +var xcode = + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + +var local0 = x; + +var f = ev(xcode); + +var inner1 = f("get"); +var local1 = x; + +x = 7; +var inner2 = f("get"); +var local2 = x; + +f("set1"); +var inner3 = f("get"); +var local3 = x; + +var del = f("delete"); +var inner4 = f("get"); +var local4 = x; + +f("set2"); +var inner5 = f("get"); +var local5 = x; + +var resultsX = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsX.local0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 4); + +assertEq(resultsX.inner2, 7); +assertEq(resultsX.local2, 7); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 9); + +assertEq(resultsX.del, false); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 9); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 23); + + +var ycode = + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + +try { var local0 = y; } catch (e) { local0 = e.name; } + +var f = ev(ycode); + +var inner1 = f("get"); +var local1 = y; + +try { y = 8; } catch (e) { assertEq(e.name, "ReferenceError"); } +var inner2 = f("get"); +var local2 = y; + +f("set1"); +var inner3 = f("get"); +var local3 = y; + +var del = f("delete"); +try { var inner4 = f("get"); } catch (e) { inner4 = e.name; } +try { var local4 = y; } catch (e) { local4 = e.name; } + +f("set2"); +try { var inner5 = f("get"); } catch (e) { inner5 = e.name; } +try { var local5 = y; } catch (e) { local5 = e.name; } + +var resultsY = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsY.local0, "ReferenceError"); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, 5); + +assertEq(resultsY.inner2, 8); +assertEq(resultsY.local2, 8); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, 2); + +assertEq(resultsY.del, true); + +assertEq(resultsY.inner4, "ReferenceError"); +assertEq(resultsY.local4, "ReferenceError"); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, 71); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-indirect-strictcode.js b/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-indirect-strictcode.js new file mode 100644 index 000000000..137a8bad7 --- /dev/null +++ b/js/src/tests/ecma_5/eval/exhaustive-global-strictcaller-indirect-strictcode.js @@ -0,0 +1,175 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ +"use strict"; + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = "eval in all its myriad flavors"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = 17; + +var ev = eval; + +var xcode = + "'use strict';" + + "var x = 4;" + + "function actX(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return x;" + + " case 'set1':" + + " x = 9;" + + " return;" + + " case 'set2':" + + " x = 23;" + + " return;" + + " case 'delete':" + + " try { return eval('delete x'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actX;"; + +var local0 = x; + +var f = ev(xcode); + +var inner1 = f("get"); +var local1 = x; + +x = 7; +var inner2 = f("get"); +var local2 = x; + +f("set1"); +var inner3 = f("get"); +var local3 = x; + +var del = f("delete"); +var inner4 = f("get"); +var local4 = x; + +f("set2"); +var inner5 = f("get"); +var local5 = x; + +var resultsX = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsX.local0, 17); + +assertEq(resultsX.inner1, 4); +assertEq(resultsX.local1, 17); + +assertEq(resultsX.inner2, 4); +assertEq(resultsX.local2, 7); + +assertEq(resultsX.inner3, 9); +assertEq(resultsX.local3, 7); + +assertEq(resultsX.del, "SyntaxError"); + +assertEq(resultsX.inner4, 9); +assertEq(resultsX.local4, 7); + +assertEq(resultsX.inner5, 23); +assertEq(resultsX.local5, 7); + + +var ycode = + "'use strict';" + + "var y = 5;" + + "function actY(action)" + + "{" + + " switch (action)" + + " {" + + " case 'get':" + + " return y;" + + " case 'set1':" + + " y = 2;" + + " return;" + + " case 'set2':" + + " y = 71;" + + " return;" + + " case 'delete':" + + " try { return eval('delete y'); }" + + " catch (e) { return e.name; }" + + " }" + + "}" + + "actY;"; + +try { var local0 = y; } catch (e) { local0 = e.name; } + +var f = ev(ycode); + +var inner1 = f("get"); +try { var local1 = y; } catch (e) { local1 = e.name; } + +try { y = 8; } catch (e) { assertEq(e.name, "ReferenceError"); } +var inner2 = f("get"); +try { var local2 = y; } catch (e) { local2 = e.name; } + +f("set1"); +var inner3 = f("get"); +try { var local3 = y; } catch (e) { local3 = e.name; } + +var del = f("delete"); +try { var inner4 = f("get"); } catch (e) { inner4 = e.name; } +try { var local4 = y; } catch (e) { local4 = e.name; } + +f("set2"); +try { var inner5 = f("get"); } catch (e) { inner5 = e.name; } +try { var local5 = y; } catch (e) { local5 = e.name; } + +var resultsY = + { + local0: local0, + inner1: inner1, local1: local1, + inner2: inner2, local2: local2, + inner3: inner3, local3: local3, + del: del, + inner4: inner4, local4: local4, + inner5: inner5, local5: local5, + }; + +assertEq(resultsY.local0, "ReferenceError"); + +assertEq(resultsY.inner1, 5); +assertEq(resultsY.local1, "ReferenceError"); + +assertEq(resultsY.inner2, 5); +assertEq(resultsY.local2, "ReferenceError"); + +assertEq(resultsY.inner3, 2); +assertEq(resultsY.local3, "ReferenceError"); + +assertEq(resultsY.del, "SyntaxError"); + +assertEq(resultsY.inner4, 2); +assertEq(resultsY.local4, "ReferenceError"); + +assertEq(resultsY.inner5, 71); +assertEq(resultsY.local5, "ReferenceError"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/line-terminator-paragraph-terminator.js b/js/src/tests/ecma_5/eval/line-terminator-paragraph-terminator.js new file mode 100644 index 000000000..61047fb10 --- /dev/null +++ b/js/src/tests/ecma_5/eval/line-terminator-paragraph-terminator.js @@ -0,0 +1,73 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 657367; +var summary = "eval must not parse strings containing U+2028 or U+2029"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function esc(s) +{ + return s.split("").map(function(v) + { + var code = + ("000" + v.charCodeAt(0).toString(16)).slice(-4); + return "\\u" + code; + }).join(""); +} + +try +{ + var r = eval('"\u2028"'); + throw new Error("\"\\u2028\" didn't throw, returned " + esc(r)); +} +catch (e) +{ + assertEq(e instanceof SyntaxError, true, + "U+2028 is not a valid string character"); +} + +try +{ + var r = eval('("\u2028")'); + throw new Error("(\"\\u2028\") didn't throw, returned " + esc(r)); +} +catch (e) +{ + assertEq(e instanceof SyntaxError, true, + "U+2028 is not a valid string character"); +} + +try +{ + var r = eval('"\u2029"'); + throw new Error("\"\\u2029\" didn't throw, returned " + esc(r)); +} +catch (e) +{ + assertEq(e instanceof SyntaxError, true, + "U+2029 is not a valid string character"); +} + +try +{ + var r = eval('("\u2029")'); + throw new Error("(\"\\u2029\") didn't throw, returned " + esc(r)); +} +catch (e) +{ + assertEq(e instanceof SyntaxError, true, + "U+2029 is not a valid string character"); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/eval/shell.js b/js/src/tests/ecma_5/eval/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/eval/shell.js diff --git a/js/src/tests/ecma_5/eval/undeclared-name-in-nested-strict-eval.js b/js/src/tests/ecma_5/eval/undeclared-name-in-nested-strict-eval.js new file mode 100644 index 000000000..1cefe474b --- /dev/null +++ b/js/src/tests/ecma_5/eval/undeclared-name-in-nested-strict-eval.js @@ -0,0 +1,26 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ +"use strict"; + +//----------------------------------------------------------------------------- +var BUGNUMBER = 514568; +var summary = + "Verify that we don't optimize free names to gnames in eval code that's " + + "global, when the name refers to a binding introduced by a strict mode " + + "eval frame"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var x = "global"; +assertEq(eval('var x = "eval"; eval("x")'), "eval"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/extensions/15.4.4.11.js b/js/src/tests/ecma_5/extensions/15.4.4.11.js new file mode 100644 index 000000000..a4c38faa7 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/15.4.4.11.js @@ -0,0 +1,32 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function arr() { + return Object.defineProperty([20, 10, 30], 0, {writable: false}); +} + +assertEq(testLenientAndStrict('var a = arr(); a.sort()', + raisesException(TypeError), + raisesException(TypeError)), + true); + +function obj() { + var o = {0: 20, 1: 10, 2: 30, length: 3}; + Object.defineProperty(o, 0, {writable: false}); + return o; +} + +assertEq(testLenientAndStrict('var o = obj(); Array.prototype.sort.call(o)', + raisesException(TypeError), + raisesException(TypeError)), + true); + +// The behavior of sort is implementation-defined if the object being +// sorted is sparse, so I'm not sure how to test its behavior on +// non-configurable properties. + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/15.9.4.2.js b/js/src/tests/ecma_5/extensions/15.9.4.2.js new file mode 100644 index 000000000..c517f8be8 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/15.9.4.2.js @@ -0,0 +1,59 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 682754; + + +//----------------------------------------------------------------------------- +test(); +//----------------------------------------------------------------------------- + +function iso(d) +{ + return new Date(d).toISOString(); +} + +function check(s, millis){ + description = "Date.parse('"+s+"') == '"+iso(millis)+"'"; + expected = millis; + actual = Date.parse(s); + reportCompare(expected, actual, description); +} + +function checkInvalid(s) +{ + description = "Date.parse('"+s+"') produces invalid date"; + expected = NaN; + actual = Date.parse(s); + reportCompare(expected, actual, description); +} + +function dd(year, month, day, hour, minute, second, millis){ + return Date.UTC(year, month-1, day, hour, minute, second, millis); +} + +function TZAtDate(d){ + return d.getTimezoneOffset() * 60000; +} + +function TZInMonth(month){ + return TZAtDate(new Date(dd(2009,month,1,0,0,0,0))); +} + +function test() +{ + enterFunc ('test'); + printBugNumber(BUGNUMBER); + + JanTZ = TZInMonth(1); + JulTZ = TZInMonth(7); + CurrTZ = TZAtDate(new Date()); + + // Allow non-standard "-0700" as timezone, not just "-07:00" + check("2009-07-23T00:53:21.001-0700", dd(2009,7,23,7,53,21,1)); + + exitFunc ('test'); +} diff --git a/js/src/tests/ecma_5/extensions/8.12.5-01.js b/js/src/tests/ecma_5/extensions/8.12.5-01.js new file mode 100644 index 000000000..c6f1c18ee --- /dev/null +++ b/js/src/tests/ecma_5/extensions/8.12.5-01.js @@ -0,0 +1,97 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jason Orendorff + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 523846; +var summary = + "Assignments to a property that has a getter but not a setter should not " + + "throw a TypeError per ES5 (at least not until strict mode is supported)"; +var actual = "Early failure"; +var expect = "No errors"; + + +printBugNumber(BUGNUMBER); +printStatus(summary); + +var o = { get p() { return "a"; } }; + +function test1() +{ + o.p = "b"; // strict-mode violation here + assertEq(o.p, "a"); +} + +function test2() +{ + function T() {} + T.prototype = o; + y = new T(); + y.p = "b"; // strict-mode violation here + assertEq(y.p, "a"); +} + + +var errors = []; +try +{ + try + { + test1(); + } + catch (e) + { + errors.push(e); + } + + try + { + test2(); + } + catch (e) + { + errors.push(e); + } + + options("strict"); + options("werror"); + try + { + test1(); + errors.push("strict+werror didn't make test1 fail"); + } + catch (e) + { + if (!(e instanceof TypeError)) + errors.push("test1 with strict+werror failed without a TypeError: " + e); + } + + try + { + test2(); + errors.push("strict+werror didn't make test2 fail"); + } + catch (e) + { + if (!(e instanceof TypeError)) + errors.push("test2 with strict+werror failed without a TypeError: " + e); + } + + options("strict"); + options("werror"); +} +catch (e) +{ + errors.push("Unexpected error: " + e); +} +finally +{ + actual = errors.length > 0 ? errors.join(", ") : "No errors"; +} + +reportCompare(expect, actual, summary); diff --git a/js/src/tests/ecma_5/extensions/Boolean-toSource.js b/js/src/tests/ecma_5/extensions/Boolean-toSource.js new file mode 100644 index 000000000..8d135a9fd --- /dev/null +++ b/js/src/tests/ecma_5/extensions/Boolean-toSource.js @@ -0,0 +1,17 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(raisesException(TypeError)('Boolean.prototype.toSource.call(42)'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toSource.call("")'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toSource.call({})'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toSource.call(null)'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toSource.call([])'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toSource.call(undefined)'), true); +assertEq(raisesException(TypeError)('Boolean.prototype.toSource.call(new String())'), true); + +assertEq(completesNormally('Boolean.prototype.toSource.call(true)'), true); +assertEq(completesNormally('Boolean.prototype.toSource.call(new Boolean(true))'), true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/Number-toSource.js b/js/src/tests/ecma_5/extensions/Number-toSource.js new file mode 100644 index 000000000..c2e306f53 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/Number-toSource.js @@ -0,0 +1,17 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(raisesException(TypeError)('Number.prototype.toSource.call("")'), true); +assertEq(raisesException(TypeError)('Number.prototype.toSource.call(true)'), true); +assertEq(raisesException(TypeError)('Number.prototype.toSource.call({})'), true); +assertEq(raisesException(TypeError)('Number.prototype.toSource.call(null)'), true); +assertEq(raisesException(TypeError)('Number.prototype.toSource.call([])'), true); +assertEq(raisesException(TypeError)('Number.prototype.toSource.call(undefined)'), true); +assertEq(raisesException(TypeError)('Number.prototype.toSource.call(new Boolean(true))'), true); + +assertEq(completesNormally('Number.prototype.toSource.call(42)'), true); +assertEq(completesNormally('Number.prototype.toSource.call(new Number(42))'), true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/String-methods-infinite-recursion.js b/js/src/tests/ecma_5/extensions/String-methods-infinite-recursion.js new file mode 100644 index 000000000..a5972d8c3 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/String-methods-infinite-recursion.js @@ -0,0 +1,36 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 657585; +var summary = + 'Guard against infinite recursion when converting |this| to string for the ' + + 'String.prototype.* methods'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +try +{ + var obj = {}; + obj.toString = String.prototype.charAt; + "" + obj; + throw new Error("should have thrown"); +} +catch (e) +{ + assertEq(e instanceof InternalError, true, + "should have thrown InternalError for over-recursion, got: " + e); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/extensions/String-toSource.js b/js/src/tests/ecma_5/extensions/String-toSource.js new file mode 100644 index 000000000..0614e574c --- /dev/null +++ b/js/src/tests/ecma_5/extensions/String-toSource.js @@ -0,0 +1,14 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(raisesException(TypeError)('String.prototype.toSource.call(42)'), true); +assertEq(raisesException(TypeError)('String.prototype.toSource.call(true)'), true); +assertEq(raisesException(TypeError)('String.prototype.toSource.call({})'), true); +assertEq(raisesException(TypeError)('String.prototype.toSource.call(null)'), true); +assertEq(raisesException(TypeError)('String.prototype.toSource.call([])'), true); +assertEq(raisesException(TypeError)('String.prototype.toSource.call(undefined)'), true); +assertEq(completesNormally('String.prototype.toSource.call("")'), true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/__proto__.js b/js/src/tests/ecma_5/extensions/__proto__.js new file mode 100644 index 000000000..aa6d60876 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/__proto__.js @@ -0,0 +1,53 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = '__proto__.js'; +var BUGNUMBER = 770344; +var summary = "__proto__ as accessor"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var protoDesc = Object.getOwnPropertyDescriptor(Object.prototype, "__proto__"); +assertEq(protoDesc !== null, true); +assertEq(typeof protoDesc, "object"); +assertEq(protoDesc.hasOwnProperty("get"), true); +assertEq(protoDesc.hasOwnProperty("set"), true); +assertEq(protoDesc.hasOwnProperty("enumerable"), true); +assertEq(protoDesc.hasOwnProperty("configurable"), true); +assertEq(protoDesc.hasOwnProperty("value"), false); +assertEq(protoDesc.hasOwnProperty("writable"), false); + +assertEq(protoDesc.configurable, true); +assertEq(protoDesc.enumerable, false); +assertEq(typeof protoDesc.get, "function", protoDesc.get + ""); +assertEq(typeof protoDesc.set, "function", protoDesc.set + ""); + +assertEq(delete Object.prototype.__proto__, true); +assertEq(Object.getOwnPropertyDescriptor(Object.prototype, "__proto__"), + undefined); + +var obj = {}; +obj.__proto__ = 5; +assertEq(Object.getPrototypeOf(obj), Object.prototype); +assertEq(obj.hasOwnProperty("__proto__"), true); + +var desc = Object.getOwnPropertyDescriptor(obj, "__proto__"); +assertEq(desc !== null, true); +assertEq(typeof desc, "object"); +assertEq(desc.value, 5); +assertEq(desc.writable, true); +assertEq(desc.enumerable, true); +assertEq(desc.configurable, true); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/arguments-property-access-in-function.js b/js/src/tests/ecma_5/extensions/arguments-property-access-in-function.js new file mode 100644 index 000000000..f8c7e97f1 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/arguments-property-access-in-function.js @@ -0,0 +1,58 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 721322; +var summary = + 'f.arguments must trigger an arguments object in non-strict mode functions'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var obj = + { + test: function() + { + var args = obj.test.arguments; + assertEq(args !== null, true); + assertEq(args[0], 5); + assertEq(args[1], undefined); + assertEq(args.length, 2); + } + }; +obj.test(5, undefined); + +var sobj = + { + test: function() + { + "use strict"; + + try + { + var args = sobj.test.arguments; + throw new Error("access to arguments property of strict mode " + + "function didn't throw"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "should have thrown TypeError, instead got: " + e); + } + } + }; +sobj.test(5, undefined); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/array-inherited-__proto__.js b/js/src/tests/ecma_5/extensions/array-inherited-__proto__.js new file mode 100644 index 000000000..0409d4757 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/array-inherited-__proto__.js @@ -0,0 +1,32 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'array-inherited-__proto__.js'; +var BUGNUMBER = 769041; +var summary = + "The [[Prototype]] of an object whose prototype chain contains an array " + + "isn't that array's [[Prototype]]"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var arr = []; +assertEq(Array.isArray(arr), true); +var objWithArrPrototype = Object.create(arr); +assertEq(!Array.isArray(objWithArrPrototype), true); +assertEq(objWithArrPrototype.__proto__, arr); +var objWithArrGrandPrototype = Object.create(objWithArrPrototype); +assertEq(!Array.isArray(objWithArrGrandPrototype), true); +assertEq(objWithArrGrandPrototype.__proto__, objWithArrPrototype); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/array-pop-proxy.js b/js/src/tests/ecma_5/extensions/array-pop-proxy.js new file mode 100644 index 000000000..15c230977 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/array-pop-proxy.js @@ -0,0 +1,24 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'array-pop-proxy.js'; +var BUGNUMBER = 858381; +var summary = "Behavior of [].pop on proxies"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var p = new Proxy([0, 1, 2], {}); +Array.prototype.pop.call(p); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/array-toString-recursion.js b/js/src/tests/ecma_5/extensions/array-toString-recursion.js new file mode 100644 index 000000000..aa5d856c3 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/array-toString-recursion.js @@ -0,0 +1,46 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 635389; +var summary = 'Infinite recursion via [].{toString,toLocaleString,join}'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +try +{ + var x = []; + x.join = Array.prototype.toString; + "" + x; + throw new Error("should have thrown"); +} +catch (e) +{ + assertEq(e instanceof InternalError, true, + "should have thrown for over-recursion"); +} + +try +{ + var x = { toString: Array.prototype.toString, join: Array.prototype.toString }; + "" + x; + throw new Error("should have thrown"); +} +catch (e) +{ + assertEq(e instanceof InternalError, true, + "should have thrown for over-recursion"); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/extensions/browser.js b/js/src/tests/ecma_5/extensions/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/extensions/browser.js diff --git a/js/src/tests/ecma_5/extensions/bug472534.js b/js/src/tests/ecma_5/extensions/bug472534.js new file mode 100644 index 000000000..0c7d5f3ec --- /dev/null +++ b/js/src/tests/ecma_5/extensions/bug472534.js @@ -0,0 +1,30 @@ +function monthNames () { + return [ + /jan(uar(y)?)?/, 0, + /feb(ruar(y)?)?/, 1, + /m\u00e4r|mar|m\u00e4rz|maerz|march/, 2, + /apr(il)?/, 3, + /ma(i|y)/, 4, + /jun(i|o|e)?/, 5, + /jul(i|y)?/, 6, + /aug(ust)?/, 7, + /sep((t)?(ember))?/, 8, + /o(c|k)t(ober)?/, 9, + /nov(ember)?/, 10, + /de(c|z)(ember)?/, 11 + ]; +}; + +var actual = ''; +var expected = '(jan(uar(y)?)?)|(feb(ruar(y)?)?)|(m\\u00e4r|mar|m\\u00e4rz|maerz|march)|(apr(il)?)|(ma(i|y))|(jun(i|o|e)?)|(jul(i|y)?)|(aug(ust)?)|(sep((t)?(ember))?)|(o(c|k)t(ober)?)|(nov(ember)?)|(de(c|z)(ember)?)'; +var mn = monthNames(); +for (var i = 0; i < mn.length; ++i) { + if (actual) + actual += '|'; + actual += '(' + mn[i++].source + ')'; +} + +assertEq(actual, expected); + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/bug496985.js b/js/src/tests/ecma_5/extensions/bug496985.js new file mode 100644 index 000000000..be1dd19cf --- /dev/null +++ b/js/src/tests/ecma_5/extensions/bug496985.js @@ -0,0 +1,12 @@ +var a = function() { + return function ({x: arguments}) { + return arguments; + } +} +var b = eval(uneval(a)); + +assertEq(a()({x: 1}), 1); +assertEq(b()({x: 1}), 1); + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/bug566661.js b/js/src/tests/ecma_5/extensions/bug566661.js new file mode 100644 index 000000000..0e22d8dbd --- /dev/null +++ b/js/src/tests/ecma_5/extensions/bug566661.js @@ -0,0 +1,6 @@ +var f = function (q) { return q['\xC7']; } +var d = eval(uneval(f)); +assertEq(d({'\xC7': 'good'}), 'good'); + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/builtin-function-arguments-caller.js b/js/src/tests/ecma_5/extensions/builtin-function-arguments-caller.js new file mode 100644 index 000000000..2acf5f452 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/builtin-function-arguments-caller.js @@ -0,0 +1,60 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'builtin-function-arguments-caller.js'; +var BUGNUMBER = 929642; +var summary = + "Built-in functions defined in ECMAScript pick up arguments/caller " + + "properties from Function.prototype"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function expectNoProperty(obj, prop) +{ + var desc = Object.getOwnPropertyDescriptor(obj, prop); + assertEq(desc, undefined, + "should be no '" + prop + "' property on " + obj); +} + +// Test a builtin that's native. +expectNoProperty(Object, "arguments"); +expectNoProperty(Object, "caller"); + +// Also test a builtin that's self-hosted. +expectNoProperty(Array.prototype.indexOf, "arguments"); +expectNoProperty(Array.prototype.indexOf, "caller"); + +// Test the Function construct for good measure, because it's so intricately +// invovled in bootstrapping. +expectNoProperty(Function, "arguments"); +expectNoProperty(Function, "caller"); + +var argsDesc = Object.getOwnPropertyDescriptor(Function.prototype, "arguments"); +var callerDesc = Object.getOwnPropertyDescriptor(Function.prototype, "caller"); + +var argsGet = argsDesc.get, argsSet = argsDesc.set; + +expectNoProperty(argsGet, "arguments"); +expectNoProperty(argsGet, "caller"); +expectNoProperty(argsSet, "arguments"); +expectNoProperty(argsSet, "caller"); + +var callerGet = callerDesc.get, callerSet = callerDesc.set; + +expectNoProperty(callerGet, "arguments"); +expectNoProperty(callerGet, "caller"); +expectNoProperty(callerSet, "arguments"); +expectNoProperty(callerSet, "caller"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/cross-global-eval-is-indirect.js b/js/src/tests/ecma_5/extensions/cross-global-eval-is-indirect.js new file mode 100644 index 000000000..6cd35846b --- /dev/null +++ b/js/src/tests/ecma_5/extensions/cross-global-eval-is-indirect.js @@ -0,0 +1,60 @@ +// |reftest| skip-if(!xulRuntime.shell) -- needs newGlobal() +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 608473; +var summary = + '|var eval = otherWindow.eval; eval(...)| should behave like indirectly ' + + 'calling that eval from a script in that other window'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var originalEval = eval; +var res; + +function f() +{ + return [this, eval("this")]; +} + +var otherGlobalSameCompartment = newGlobal("same-compartment"); + +eval = otherGlobalSameCompartment.eval; +res = new f(); +assertEq(res[0] !== res[1], true); +assertEq(res[0] !== this, true); +assertEq(res[0] instanceof f, true); +assertEq(res[1], otherGlobalSameCompartment); + +res = f(); +assertEq(res[0] !== res[1], true); +assertEq(res[0], this); +assertEq(res[1], otherGlobalSameCompartment); + +var otherGlobalDifferentCompartment = newGlobal(); + +eval = otherGlobalDifferentCompartment.eval; +res = new f(); +assertEq(res[0] !== res[1], true); +assertEq(res[0] !== this, true); +assertEq(res[0] instanceof f, true); +assertEq(res[1], otherGlobalDifferentCompartment); + +res = f(); +assertEq(res[0] !== res[1], true); +assertEq(res[0], this); +assertEq(res[1], otherGlobalDifferentCompartment); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/extensions/cross-global-getPrototypeOf.js b/js/src/tests/ecma_5/extensions/cross-global-getPrototypeOf.js new file mode 100644 index 000000000..1480a8ea1 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/cross-global-getPrototypeOf.js @@ -0,0 +1,55 @@ +// |reftest| skip-if(!xulRuntime.shell) -- needs newGlobal() +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 770344; +var summary = "Object.getPrototypeOf behavior across compartments"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var other = newGlobal(); + +var getProto = Object.getPrototypeOf; +var otherGetProto = other.Object.getPrototypeOf; + +var proto = {}; +var obj = Object.create(proto); +assertEq(getProto(obj), proto); +assertEq(otherGetProto(obj), proto); + +other.proto = proto; +var otherObj = other.evaluate("Object.create(proto)"); +assertEq(getProto(otherObj), proto); +assertEq(otherGetProto(otherObj), proto); + +var p = other.evaluate("({})"); +var objOtherProto = Object.create(p); +assertEq(getProto(objOtherProto), p); +assertEq(otherGetProto(objOtherProto), p); + +other.evaluate("var otherProto = { otherProto: 1 }; " + + "var otherObj = Object.create(otherProto);"); +assertEq(getProto(other.otherObj), other.otherProto); +assertEq(otherGetProto(other.otherObj), other.otherProto); + +other.evaluate("var newOtherProto = { newOtherProto: 1 }; " + + "otherObj.__proto__ = newOtherProto;"); +assertEq(otherGetProto(other.otherObj), other.newOtherProto); + +// TODO This assertion fails due to bug 764307 +//assertEq(getProto(other.otherObj), other.newOtherProto); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/destructuring-__proto__-shorthand-assignment-before-var.js b/js/src/tests/ecma_5/extensions/destructuring-__proto__-shorthand-assignment-before-var.js new file mode 100644 index 000000000..da0da55c8 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/destructuring-__proto__-shorthand-assignment-before-var.js @@ -0,0 +1,49 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'destructuring-__proto__-shorthand-assignment-before-var.js'; +var BUGNUMBER = 963641; +var summary = "{ __proto__ } should work as a destructuring assignment pattern"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function objectWithProtoProperty(v) +{ + var obj = {}; + return Object.defineProperty(obj, "__proto__", + { + enumerable: true, + configurable: true, + writable: true, + value: v + }); +} + +({ __proto__ } = objectWithProtoProperty(17)); +assertEq(__proto__, 17); + +var { __proto__ } = objectWithProtoProperty(42); +assertEq(__proto__, 42); + +function nested() +{ + ({ __proto__ } = objectWithProtoProperty(undefined)); + assertEq(__proto__, undefined); + + var { __proto__ } = objectWithProtoProperty("fnord"); + assertEq(__proto__, "fnord"); +} +nested(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/destructuring-__proto__-shorthand-assignment.js b/js/src/tests/ecma_5/extensions/destructuring-__proto__-shorthand-assignment.js new file mode 100644 index 000000000..0ab26465f --- /dev/null +++ b/js/src/tests/ecma_5/extensions/destructuring-__proto__-shorthand-assignment.js @@ -0,0 +1,49 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'destructuring-__proto__-shorthand-assignment.js'; +var BUGNUMBER = 963641; +var summary = "{ __proto__ } should work as a destructuring assignment pattern"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function objectWithProtoProperty(v) +{ + var obj = {}; + return Object.defineProperty(obj, "__proto__", + { + enumerable: true, + configurable: true, + writable: true, + value: v + }); +} + +var { __proto__ } = objectWithProtoProperty(42); +assertEq(__proto__, 42); + +({ __proto__ } = objectWithProtoProperty(17)); +assertEq(__proto__, 17); + +function nested() +{ + var { __proto__ } = objectWithProtoProperty("fnord"); + assertEq(__proto__, "fnord"); + + ({ __proto__ } = objectWithProtoProperty(undefined)); + assertEq(__proto__, undefined); +} +nested(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/destructuring-__proto__-target-assignment.js b/js/src/tests/ecma_5/extensions/destructuring-__proto__-target-assignment.js new file mode 100644 index 000000000..9e8ec7217 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/destructuring-__proto__-target-assignment.js @@ -0,0 +1,50 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'destructuring-__proto__-target--assignment.js'; +var BUGNUMBER = 963641; +var summary = + "{ __proto__: target } should work as a destructuring assignment pattern"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function objectWithProtoProperty(v) +{ + var obj = {}; + return Object.defineProperty(obj, "__proto__", + { + enumerable: true, + configurable: true, + writable: true, + value: v + }); +} + +var { __proto__: target } = objectWithProtoProperty(null); +assertEq(target, null); + +({ __proto__: target } = objectWithProtoProperty("aacchhorrt")); +assertEq(target, "aacchhorrt"); + +function nested() +{ + var { __proto__: target } = objectWithProtoProperty(3.141592654); + assertEq(target, 3.141592654); + + ({ __proto__: target } = objectWithProtoProperty(-0)); + assertEq(target, -0); +} +nested(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/destructuring-for-inof-__proto__.js b/js/src/tests/ecma_5/extensions/destructuring-for-inof-__proto__.js new file mode 100644 index 000000000..283dee314 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/destructuring-for-inof-__proto__.js @@ -0,0 +1,85 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'destructuring-for-inof-__proto__.js'; +var BUGNUMBER = 963641; +var summary = + "__proto__ should work in destructuring patterns as the targets of " + + "for-in/for-of loops"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function objectWithProtoProperty(v) +{ + var obj = {}; + return Object.defineProperty(obj, "__proto__", + { + enumerable: true, + configurable: true, + writable: true, + value: v + }); +} + +function* objectWithProtoGenerator(v) +{ + yield objectWithProtoProperty(v); +} + +function* identityGenerator(v) +{ + yield v; +} + +for (var { __proto__: target } of objectWithProtoGenerator(null)) + assertEq(target, null); + +for ({ __proto__: target } of objectWithProtoGenerator("aacchhorrt")) + assertEq(target, "aacchhorrt"); + +for ({ __proto__: target } of identityGenerator(42)) + assertEq(target, Number.prototype); + +for (var { __proto__: target } in { prop: "kneedle" }) + assertEq(target, String.prototype); + +for ({ __proto__: target } in { prop: "snork" }) + assertEq(target, String.prototype); + +for ({ __proto__: target } in { prop: "ohia" }) + assertEq(target, String.prototype); + +function nested() +{ + for (var { __proto__: target } of objectWithProtoGenerator(null)) + assertEq(target, null); + + for ({ __proto__: target } of objectWithProtoGenerator("aacchhorrt")) + assertEq(target, "aacchhorrt"); + + for ({ __proto__: target } of identityGenerator(42)) + assertEq(target, Number.prototype); + + for (var { __proto__: target } in { prop: "kneedle" }) + assertEq(target, String.prototype); + + for ({ __proto__: target } in { prop: "snork" }) + assertEq(target, String.prototype); + + for ({ __proto__: target } in { prop: "ohia" }) + assertEq(target, String.prototype); +} +nested(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/error-tostring-function.js b/js/src/tests/ecma_5/extensions/error-tostring-function.js new file mode 100644 index 000000000..5e92f1075 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/error-tostring-function.js @@ -0,0 +1,45 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 894653; +var summary = + "Error.prototype.toString called on function objects should work as on any " + + "object"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function ErrorToString(v) +{ + return Error.prototype.toString.call(v); +} + +// The name property of function objects isn't standardized, so this must be an +// extension-land test. + +assertEq(ErrorToString(function f(){}), "f"); +assertEq(ErrorToString(function g(){}), "g"); +assertEq(ErrorToString(function(){}), ""); + +var fn1 = function() {}; +fn1.message = "ohai"; +assertEq(ErrorToString(fn1), "ohai"); + +var fn2 = function blerch() {}; +fn2.message = "fnord"; +assertEq(ErrorToString(fn2), "blerch: fnord"); + +var fn3 = function() {}; +fn3.message = ""; +assertEq(ErrorToString(fn3), ""); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/extensions/es5ish-defineGetter-defineSetter.js b/js/src/tests/ecma_5/extensions/es5ish-defineGetter-defineSetter.js new file mode 100644 index 000000000..681a157a8 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/es5ish-defineGetter-defineSetter.js @@ -0,0 +1,281 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 715821; +var summary = "Implement __define[GS]etter__ using Object.defineProperty"; + +print(BUGNUMBER + ": " + summary); + +/************* + * UTILITIES * + *************/ + +function s(desc) +{ + if (typeof desc === "undefined") + return "<undefined>"; + assertEq(typeof desc, "object"); + assertEq(desc !== null, true); + + var str = "<enumerable: <" + desc.enumerable + ">, " + + " configurable: <" + desc.configurable + ">,"; + + if (desc.hasOwnProperty("value")) + { + return str + + " value: <" + desc.value + ">," + + " writable: <" + desc.writable + ">>"; + } + + return str + + " get: <" + desc.get + ">," + + " set: <" + desc.set + ">>"; +} + +function checkField(field, desc, expected) +{ + var present = desc.hasOwnProperty(field); + assertEq(present, expected.hasOwnProperty(field), + field + " presence mismatch (got " + s(desc) + ", expected " + s(expected) + ")"); + if (present) + { + assertEq(desc[field], expected[field], + field + " value mismatch (got " + s(desc) + ", expected " + s(expected) + ")"); + } +} + +function check(obj, prop, expected) +{ + var desc = Object.getOwnPropertyDescriptor(obj, prop); + assertEq(typeof desc, typeof expected, + "type mismatch (got " + s(desc) + ", expected " + s(expected) + ")"); + + assertEq(desc.hasOwnProperty("get"), desc.hasOwnProperty("set"), + "bad descriptor: " + s(desc)); + assertEq(desc.hasOwnProperty("value"), desc.hasOwnProperty("writable"), + "bad descriptor: " + s(desc)); + + assertEq(desc.hasOwnProperty("get"), !desc.hasOwnProperty("value"), + "bad descriptor: " + s(desc)); + + checkField("get", desc, expected); + checkField("set", desc, expected); + checkField("value", desc, expected); + checkField("writable", desc, expected); + checkField("enumerable", desc, expected); + checkField("configurable", desc, expected); +} + +function expectTypeError(f) +{ + try + { + f(); + throw new Error("no error thrown"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "wrong error thrown: got " + e + ", not a TypeError"); + } +} + +/************** + * BEGIN TEST * + **************/ + +// Adding a new getter, overwriting an existing one + +function g1() { } +var gobj = {}; +gobj.__defineGetter__("foo", g1); +check(gobj, "foo", { get: g1, set: undefined, enumerable: true, configurable: true }); + +function g2() { } +gobj.__defineGetter__("foo", g2); +check(gobj, "foo", { get: g2, set: undefined, enumerable: true, configurable: true }); + +/******************************************************************************/ + +// Adding a new setter, overwriting an existing one + +function s1() { } +var sobj = {}; +sobj.__defineSetter__("bar", s1); +check(sobj, "bar", { get: undefined, set: s1, enumerable: true, configurable: true }); + +function s2() { } +sobj.__defineSetter__("bar", s2); +check(sobj, "bar", { get: undefined, set: s2, enumerable: true, configurable: true }); + +/******************************************************************************/ + +// Adding a new getter, then adding a setter +// Changing an existing accessor's enumerability, then "null"-changing the accessor +// Changing an accessor's configurability, then "null"-changing and real-changing the accessor + +function g3() { } +var gsobj = {}; +gsobj.__defineGetter__("baz", g3); +check(gsobj, "baz", { get: g3, set: undefined, enumerable: true, configurable: true }); + +function s3() { } +gsobj.__defineSetter__("baz", s3); +check(gsobj, "baz", { get: g3, set: s3, enumerable: true, configurable: true }); + +Object.defineProperty(gsobj, "baz", { enumerable: false }); +check(gsobj, "baz", { get: g3, set: s3, enumerable: false, configurable: true }); + +gsobj.__defineGetter__("baz", g3); +check(gsobj, "baz", { get: g3, set: s3, enumerable: true, configurable: true }); + +Object.defineProperty(gsobj, "baz", { enumerable: false }); +check(gsobj, "baz", { get: g3, set: s3, enumerable: false, configurable: true }); + +gsobj.__defineSetter__("baz", s3); +check(gsobj, "baz", { get: g3, set: s3, enumerable: true, configurable: true }); + +Object.defineProperty(gsobj, "baz", { configurable: false }); +expectTypeError(function() { gsobj.__defineSetter__("baz", s2); }); +expectTypeError(function() { gsobj.__defineSetter__("baz", s3); }); +check(gsobj, "baz", { get: g3, set: s3, enumerable: true, configurable: false }); + +/******************************************************************************/ + +// Adding a new setter, then adding a getter +// Changing an existing accessor's enumerability, then "null"-changing the accessor +// Changing an accessor's configurability, then "null"-changing and real-changing the accessor + +function s4() { } +var sgobj = {}; +sgobj.__defineSetter__("baz", s4); +check(sgobj, "baz", { get: undefined, set: s4, enumerable: true, configurable: true }); + +function g4() { } +sgobj.__defineGetter__("baz", g4); +check(sgobj, "baz", { get: g4, set: s4, enumerable: true, configurable: true }); + +Object.defineProperty(sgobj, "baz", { enumerable: false }); +check(sgobj, "baz", { get: g4, set: s4, enumerable: false, configurable: true }); + +sgobj.__defineSetter__("baz", s4); +check(sgobj, "baz", { get: g4, set: s4, enumerable: true, configurable: true }); + +Object.defineProperty(sgobj, "baz", { enumerable: false }); +check(sgobj, "baz", { get: g4, set: s4, enumerable: false, configurable: true }); + +sgobj.__defineSetter__("baz", s4); +check(sgobj, "baz", { get: g4, set: s4, enumerable: true, configurable: true }); + +Object.defineProperty(sgobj, "baz", { configurable: false }); +expectTypeError(function() { sgobj.__defineGetter__("baz", g3); }); +expectTypeError(function() { sgobj.__defineSetter__("baz", s4); }); +check(sgobj, "baz", { get: g4, set: s4, enumerable: true, configurable: false }); + +/******************************************************************************/ + +// Adding a getter over a writable data property + +function g5() { } +var gover = { quux: 17 }; +check(gover, "quux", { value: 17, writable: true, enumerable: true, configurable: true }); + +gover.__defineGetter__("quux", g5); +check(gover, "quux", { get: g5, set: undefined, enumerable: true, configurable: true }); + +/******************************************************************************/ + +// Adding a setter over a writable data property + +function s5() { } +var sover = { quux: 17 }; +check(sover, "quux", { value: 17, writable: true, enumerable: true, configurable: true }); + +sover.__defineSetter__("quux", s5); +check(sover, "quux", { get: undefined, set: s5, enumerable: true, configurable: true }); + +/******************************************************************************/ + +// Adding a getter over a non-writable data property + +function g6() { } +var gnover = { eit: 17 }; +check(gnover, "eit", { value: 17, writable: true, enumerable: true, configurable: true }); +Object.defineProperty(gnover, "eit", { writable: false }); +check(gnover, "eit", { value: 17, writable: false, enumerable: true, configurable: true }); + +gnover.__defineGetter__("eit", g6); +check(gnover, "eit", { get: g6, set: undefined, enumerable: true, configurable: true }); + +/******************************************************************************/ + +// Adding a setter over a non-writable data property + +function s6() { } +var snover = { eit: 17 }; +check(snover, "eit", { value: 17, writable: true, enumerable: true, configurable: true }); +Object.defineProperty(snover, "eit", { writable: false }); +check(snover, "eit", { value: 17, writable: false, enumerable: true, configurable: true }); + +snover.__defineSetter__("eit", s6); +check(snover, "eit", { get: undefined, set: s6, enumerable: true, configurable: true }); + +/******************************************************************************/ + +// Adding a getter over a non-configurable, writable data property + +function g7() { } +var gncover = { moo: 17 }; +check(gncover, "moo", { value: 17, writable: true, enumerable: true, configurable: true }); +Object.defineProperty(gncover, "moo", { configurable: false }); +check(gncover, "moo", { value: 17, writable: true, enumerable: true, configurable: false }); + +expectTypeError(function() { gncover.__defineGetter__("moo", g7); }); +check(gncover, "moo", { value: 17, writable: true, enumerable: true, configurable: false }); + +/******************************************************************************/ + +// Adding a setter over a non-configurable, writable data property + +function s7() { } +var sncover = { moo: 17 }; +check(sncover, "moo", { value: 17, writable: true, enumerable: true, configurable: true }); +Object.defineProperty(sncover, "moo", { configurable: false }); +check(sncover, "moo", { value: 17, writable: true, enumerable: true, configurable: false }); + +expectTypeError(function() { sncover.__defineSetter__("moo", s7); }); +check(sncover, "moo", { value: 17, writable: true, enumerable: true, configurable: false }); + +/******************************************************************************/ + +// Adding a getter over a non-configurable, non-writable data property + +function g8() { } +var gncwover = { fwoosh: 17 }; +check(gncwover, "fwoosh", { value: 17, writable: true, enumerable: true, configurable: true }); +Object.defineProperty(gncwover, "fwoosh", { writable: false, configurable: false }); +check(gncwover, "fwoosh", { value: 17, writable: false, enumerable: true, configurable: false }); + +expectTypeError(function() { gncwover.__defineGetter__("fwoosh", g7); }); +check(gncwover, "fwoosh", { value: 17, writable: false, enumerable: true, configurable: false }); + +/******************************************************************************/ + +// Adding a setter over a non-configurable, non-writable data property + +function s8() { } +var sncwover = { fwoosh: 17 }; +check(sncwover, "fwoosh", { value: 17, writable: true, enumerable: true, configurable: true }); +Object.defineProperty(sncwover, "fwoosh", { writable: false, configurable: false }); +check(sncwover, "fwoosh", { value: 17, writable: false, enumerable: true, configurable: false }); + +expectTypeError(function() { sncwover.__defineSetter__("fwoosh", s7); }); +check(sncwover, "fwoosh", { value: 17, writable: false, enumerable: true, configurable: false }); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/eval-native-callback-is-indirect.js b/js/src/tests/ecma_5/extensions/eval-native-callback-is-indirect.js new file mode 100644 index 000000000..662f619ee --- /dev/null +++ b/js/src/tests/ecma_5/extensions/eval-native-callback-is-indirect.js @@ -0,0 +1,43 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 604504; +var summary = "eval called from a native function is indirect"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var originalEval = eval; + +var global = this; +var directCheckCode = "this === global"; + +function testArrayGeneric() +{ + var global = "psych!"; + var eval = Array.map; + + var mapped = eval([directCheckCode], originalEval); + assertEq(mapped[0], true); +} + +function testStringGeneric() +{ + var global = "psych!"; + var eval = String.replace; + + var newString = eval(directCheckCode, directCheckCode, originalEval); + assertEq(newString, "true"); +} +testStringGeneric(); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/extensions/extension-methods-reject-null-undefined-this.js b/js/src/tests/ecma_5/extensions/extension-methods-reject-null-undefined-this.js new file mode 100644 index 000000000..5ea399fe8 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/extension-methods-reject-null-undefined-this.js @@ -0,0 +1,112 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 619283; +var summary = + "ECMAScript built-in methods that immediately throw when |this| is " + + "|undefined| or |null| (due to CheckObjectCoercible, ToObject, or ToString)"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// This test fills out for the non-standard methods which +// ecma_5/misc/builtin-methods-reject-null-undefined-this.js declines to test. + +var ClassToMethodMap = + { + Object: [/* + * Don't box this just yet for these methods -- they're used too + * much without qualification to do that. :-( + */ + /* "__defineGetter__", "__defineSetter__", */ + "__lookupGetter__", "__lookupSetter__", "watch", "unwatch", + "toSource"], + Function: ["toSource"], + Array: ["toSource"], + String: ["toSource", "quote", "bold", "italics", "fixed", "fontsize", + "fontcolor", "link", "anchor", "strike", "small", "big", "blink", + "sup", "sub", "substr", "trimLeft", "trimRight", "toJSON"], + Boolean: ["toSource", "toJSON"], + Number: ["toSource", "toJSON"], + Date: ["toSource", "toLocaleFormat", "getYear", "setYear", + "toGMTString"], + RegExp: ["toSource"], + Error: ["toSource"], + }; + +var badThisValues = [null, undefined]; + +function testMethod(Class, className, method) +{ + var expr; + + // Try out explicit this values + for (var i = 0, sz = badThisValues.length; i < sz; i++) + { + var badThis = badThisValues[i]; + + expr = className + ".prototype." + method + ".call(" + badThis + ")"; + try + { + Class.prototype[method].call(badThis); + throw new Error(expr + " didn't throw a TypeError"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "wrong error for " + expr + ", instead threw " + e); + } + + expr = className + ".prototype." + method + ".apply(" + badThis + ")"; + try + { + Class.prototype[method].apply(badThis); + throw new Error(expr + " didn't throw a TypeError"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "wrong error for " + expr + ", instead threw " + e); + } + } + + // ..and for good measure.. + + expr = "(0, " + className + ".prototype." + method + ")()" + try + { + // comma operator to call GetValue() on the method and de-Reference it + (0, Class.prototype[method])(); + throw new Error(expr + " didn't throw a TypeError"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "wrong error for " + expr + ", instead threw " + e); + } +} + +for (var className in ClassToMethodMap) +{ + var Class = this[className]; + + var methodNames = ClassToMethodMap[className]; + for (var i = 0, sz = methodNames.length; i < sz; i++) + { + var method = methodNames[i]; + testMethod(Class, className, method); + } +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/extensions/function-caller-skips-eval-frames.js b/js/src/tests/ecma_5/extensions/function-caller-skips-eval-frames.js new file mode 100644 index 000000000..77eb99108 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/function-caller-skips-eval-frames.js @@ -0,0 +1,34 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +function innermost() { return arguments.callee.caller; } +function nest() { return eval("innermost();"); } +function nest2() { return nest(); } + +assertEq(nest2(), nest); + +var innermost = function innermost() { return arguments.callee.caller.caller; }; + +assertEq(nest2(), nest2); + +function nestTwice() { return eval("eval('innermost();');"); } +var nest = nestTwice; + +assertEq(nest2(), nest2); + +function innermostEval() { return eval("arguments.callee.caller"); } +var innermost = innermostEval; + +assertEq(nest2(), nestTwice); + +function innermostEvalTwice() { return eval('eval("arguments.callee.caller");'); } +var innermost = innermostEvalTwice; + +assertEq(nest2(), nestTwice); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/function-caller-strict-cross-global.js b/js/src/tests/ecma_5/extensions/function-caller-strict-cross-global.js new file mode 100644 index 000000000..45fd7b1b3 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/function-caller-strict-cross-global.js @@ -0,0 +1,28 @@ +// |reftest| skip-if(!xulRuntime.shell) -- needs newGlobal() +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var g1 = newGlobal(); +g1.evaluate("function f() { return f.caller; }"); + +var g2 = newGlobal(); +g2.f = g1.f; + +try +{ + g2.evaluate("function g() { 'use strict'; return f(); } g()"); + throw new Error("failed to throw"); +} +catch (e) +{ + assertEq(e.constructor.name, "TypeError", + "expected TypeError accessing strict .caller across globals, got " + + e); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/function-definition-with.js b/js/src/tests/ecma_5/extensions/function-definition-with.js new file mode 100644 index 000000000..2277ad45f --- /dev/null +++ b/js/src/tests/ecma_5/extensions/function-definition-with.js @@ -0,0 +1,56 @@ +// |reftest| skip-if(!xulRuntime.shell) -- needs evaluate() +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 577325; +var summary = 'Implement the ES5 algorithm for processing function statements'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var called, obj; + +function inFile1() { return "in file"; } +called = false; +obj = { set inFile1(v) { called = true; } }; +with (obj) { + function inFile1() { return "in file in with"; }; +} +assertEq(inFile1(), "in file in with"); +assertEq("set" in Object.getOwnPropertyDescriptor(obj, "inFile1"), true); +assertEq(called, false); + +evaluate("function notInFile1() { return 'not in file'; }"); +called = false; +obj = { set notInFile1(v) { called = true; return "not in file 2"; } }; +with (obj) { + function notInFile1() { return "not in file in with"; }; +} +assertEq(notInFile1(), "not in file in with"); +assertEq("set" in Object.getOwnPropertyDescriptor(obj, "notInFile1"), true); +assertEq(called, false); + +function inFile2() { return "in file 1"; } +called = false; +obj = + Object.defineProperty({}, "inFile2", + { value: 42, configurable: false, enumerable: false }); +with (obj) { + function inFile2() { return "in file 2"; }; +} +assertEq(inFile2(), "in file 2"); +assertEq(obj.inFile2, 42); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/extensions/function-properties.js b/js/src/tests/ecma_5/extensions/function-properties.js new file mode 100644 index 000000000..9585322ef --- /dev/null +++ b/js/src/tests/ecma_5/extensions/function-properties.js @@ -0,0 +1,21 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +function foo() +{ + assertEq(foo.arguments.length, 0); + assertEq(foo.caller, null); +} + +assertEq(foo.arguments, null); +assertEq(foo.caller, null); +foo(); +assertEq(foo.arguments, null); +assertEq(foo.caller, null); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/getOwnPropertyNames-__proto__.js b/js/src/tests/ecma_5/extensions/getOwnPropertyNames-__proto__.js new file mode 100644 index 000000000..91ee2d203 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/getOwnPropertyNames-__proto__.js @@ -0,0 +1,26 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 837630; +var summary ='__proto__ should show up with O.getOwnPropertyNames(O.prototype)'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var keys = Object.getOwnPropertyNames(Object.prototype); +assertEq(keys.indexOf("__proto__") >= 0, true, + "should have gotten __proto__ as a property of Object.prototype " + + "(got these properties: " + keys + ")"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/inc-dec-functioncall.js b/js/src/tests/ecma_5/extensions/inc-dec-functioncall.js new file mode 100644 index 000000000..b4de03c6c --- /dev/null +++ b/js/src/tests/ecma_5/extensions/inc-dec-functioncall.js @@ -0,0 +1,90 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 609756; +var summary = + "Perform ToNumber on the result of the |fun()| in |fun()++| before " + + "throwing"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var hadSideEffect; + +function f() +{ + return { valueOf: function() { hadSideEffect = true; return 0; } }; +} + +hadSideEffect = false; +assertThrowsInstanceOf(function() { f()++; }, ReferenceError); +assertEq(hadSideEffect, true); + +hadSideEffect = false; +assertThrowsInstanceOf(function() { + for (var i = 0; i < 20; i++) + { + if (i > 18) + f()++; + } +}, ReferenceError); +assertEq(hadSideEffect, true); + + +hadSideEffect = false; +assertThrowsInstanceOf(function() { f()--; }, ReferenceError); +assertEq(hadSideEffect, true); + +hadSideEffect = false; +assertThrowsInstanceOf(function() { + for (var i = 0; i < 20; i++) + { + if (i > 18) + f()--; + } +}, ReferenceError); +assertEq(hadSideEffect, true); + + +hadSideEffect = false; +assertThrowsInstanceOf(function() { ++f(); }, ReferenceError); +assertEq(hadSideEffect, true); + +hadSideEffect = false; +assertThrowsInstanceOf(function() { + for (var i = 0; i < 20; i++) + { + if (i > 18) + ++f(); + } +}, ReferenceError); +assertEq(hadSideEffect, true); + + +hadSideEffect = false; +assertThrowsInstanceOf(function() { --f(); }, ReferenceError); +assertEq(hadSideEffect, true); + +hadSideEffect = false; +assertThrowsInstanceOf(function() { + for (var i = 0; i < 20; i++) + { + if (i > 18) + --f(); + } +}, ReferenceError); +assertEq(hadSideEffect, true); + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/iterator-in-catch.js b/js/src/tests/ecma_5/extensions/iterator-in-catch.js new file mode 100644 index 000000000..390b585e9 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/iterator-in-catch.js @@ -0,0 +1,20 @@ +//Bug 350712 + +function iterator () { + for (var i in []); +} + +try { + try { + throw 5; + } + catch(error if iterator()) { + assertEq(false, true); + } +} +catch(error) { + assertEq(error, 5); +} + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/misplaced-inconsistent-directive.js b/js/src/tests/ecma_5/extensions/misplaced-inconsistent-directive.js new file mode 100644 index 000000000..b7b33001c --- /dev/null +++ b/js/src/tests/ecma_5/extensions/misplaced-inconsistent-directive.js @@ -0,0 +1,74 @@ +// |reftest| skip-if(!xulRuntime.shell) -- needs evaluate() +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 1046964; +var summary = + "Misplaced directives (e.g. 'use strict') should trigger warnings if they " + + "contradict the actually-used semantics"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +options("strict"); +options("werror"); + +function evaluateNoRval(code) +{ + evaluate(code, { isRunOnce: true, noScriptRval: true }); +} + +function expectSyntaxError(code) +{ + try + { + evaluateNoRval(code); + throw new Error("didn't throw"); + } + catch (e) + { + assertEq(e instanceof SyntaxError, true, + "should have thrown a SyntaxError, instead got:\n" + + " " + e + "\n" + + "when evaluating:\n" + + " " + code); + } +} + +expectSyntaxError("function f1() {} 'use strict'; function f2() {}"); +expectSyntaxError("function f3() { var x; 'use strict'; }"); + +if (isAsmJSCompilationAvailable()) + expectSyntaxError("function f4() {} 'use asm'; function f5() {}"); +expectSyntaxError("function f6() { var x; 'use strict'; }"); +if (isAsmJSCompilationAvailable()) + expectSyntaxError("'use asm'; function f7() {}"); + +// No errors expected -- useless non-directives, but not contrary to used +// semantics. +evaluateNoRval("'use strict'; function f8() {} 'use strict'; function f9() {}"); +evaluateNoRval("'use strict'; function f10() { var z; 'use strict' }"); + +if (isAsmJSCompilationAvailable()) { + try { + evaluateNoRval("function f11() { 'use asm'; return {}; }"); + } catch(e) { + if (!e.toString().includes("Successfully compiled asm.js code")) + throw e; + } +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/nested-delete-name-in-evalcode.js b/js/src/tests/ecma_5/extensions/nested-delete-name-in-evalcode.js new file mode 100644 index 000000000..7dfab0458 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/nested-delete-name-in-evalcode.js @@ -0,0 +1,85 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 616294; +var summary = + "|delete x| inside a function in eval code, where that eval code includes " + + "|var x| at top level, actually does delete the binding for x"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var f; + +function testOuterLet() +{ + return eval("let x; (function() { return delete x; })"); +} + +f = testOuterLet(); + +assertEq(f(), false); // can't delete lexical declarations => false + + +function testOuterForLet() +{ + return eval("for (let x; false; ); (function() { return delete x; })"); +} + +f = testOuterForLet(); + +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testOuterForInLet() +{ + return eval("for (let x in {}); (function() { return delete x; })"); +} + +f = testOuterForInLet(); + +assertEq(f(), true); // configurable, so remove => true +assertEq(f(), true); // not there => true (only non-configurable => false) + + +function testOuterNestedVarInForLet() +{ + return eval("for (let q = 0; q < 5; q++) { var x; } (function() { return delete x; })"); +} + +f = testOuterNestedVarInForLet(); + +assertEq(f(), true); // configurable, so remove => true +assertEq(f(), true); // there => true + + +function testArgumentShadowLet() +{ + return eval("let x; (function(x) { return delete x; })"); +} + +f = testArgumentShadowLet(); + +assertEq(f(), false); // non-configurable argument => false + + +function testFunctionLocal() +{ + return eval("(function() { let x; return delete x; })"); +} + +f = testFunctionLocal(); + +assertEq(f(), false); // defined by function code => not configurable => false + + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/extensions/preventExtensions-cross-global.js b/js/src/tests/ecma_5/extensions/preventExtensions-cross-global.js new file mode 100644 index 000000000..0cc68e0fb --- /dev/null +++ b/js/src/tests/ecma_5/extensions/preventExtensions-cross-global.js @@ -0,0 +1,49 @@ +// |reftest| skip-if(!xulRuntime.shell) -- needs newGlobal() +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +var gTestfile = 'preventExtensions-cross-global.js'; +//----------------------------------------------------------------------------- +var BUGNUMBER = 789897; +var summary = + "Object.preventExtensions and Object.isExtensible should work correctly " + + "across globals"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var otherGlobal = newGlobal(); + +var obj = {}; +assertEq(otherGlobal.Object.isExtensible(obj), true); +assertEq(otherGlobal.Object.preventExtensions(obj), obj); +assertEq(otherGlobal.Object.isExtensible(obj), false); + +var objFromOther = otherGlobal.Object(); +assertEq(Object.isExtensible(objFromOther), true); +assertEq(Object.preventExtensions(objFromOther), objFromOther); +assertEq(Object.isExtensible(objFromOther), false); + +var proxy = new Proxy({}, {}); +assertEq(otherGlobal.Object.isExtensible(proxy), true); +assertEq(otherGlobal.Object.preventExtensions(proxy), proxy); +assertEq(otherGlobal.Object.isExtensible(proxy), false); + +var proxyFromOther = otherGlobal.evaluate("new Proxy({}, {})"); +assertEq(Object.isExtensible(proxyFromOther), true); +assertEq(Object.preventExtensions(proxyFromOther), proxyFromOther); +assertEq(Object.isExtensible(proxyFromOther), false); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/proxy-array-target-length-definition.js b/js/src/tests/ecma_5/extensions/proxy-array-target-length-definition.js new file mode 100644 index 000000000..c573c4ba0 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/proxy-array-target-length-definition.js @@ -0,0 +1,55 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'proxy-array-target-length-definition.js'; +var BUGNUMBER = 905947; +var summary = + "Redefining an array's |length| property when redefining the |length| " + + "property on a proxy with an array as target"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var arr = []; +var p = new Proxy(arr, {}); + +function assertThrowsTypeError(f) +{ + try { + f(); + assertEq(false, true, "Must have thrown"); + } catch (e) { + assertEq(e instanceof TypeError, true, "Must have thrown TypeError"); + } +} + +// Redefining non-configurable length should throw a TypeError +assertThrowsTypeError(function () { Object.defineProperty(p, "length", { value: 17, configurable: true }); }); + +// Same here. +assertThrowsTypeError(function () { Object.defineProperty(p, "length", { value: 42, enumerable: true }); }); + +// Check the property went unchanged. +var pd = Object.getOwnPropertyDescriptor(p, "length"); +assertEq(pd.value, 0); +assertEq(pd.writable, true); +assertEq(pd.enumerable, false); +assertEq(pd.configurable, false); + +var ad = Object.getOwnPropertyDescriptor(arr, "length"); +assertEq(ad.value, 0); +assertEq(ad.writable, true); +assertEq(ad.enumerable, false); +assertEq(ad.configurable, false); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/proxy-enumeration.js b/js/src/tests/ecma_5/extensions/proxy-enumeration.js new file mode 100644 index 000000000..f872d635d --- /dev/null +++ b/js/src/tests/ecma_5/extensions/proxy-enumeration.js @@ -0,0 +1,4 @@ +var list = Object.getOwnPropertyNames(this); +var found = list.indexOf("Proxy") != -1; +assertEq(found, true) +reportCompare(true, true) diff --git a/js/src/tests/ecma_5/extensions/proxy-strict.js b/js/src/tests/ecma_5/extensions/proxy-strict.js new file mode 100644 index 000000000..9dc969685 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/proxy-strict.js @@ -0,0 +1,12 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var s = "grape"; +function f() { "use strict"; return this; } +var p = new Proxy(f, {}); +String.prototype.p = p; +assertEq(s.p(), "grape"); + +reportCompare(true,true); diff --git a/js/src/tests/ecma_5/extensions/regress-bug567606.js b/js/src/tests/ecma_5/extensions/regress-bug567606.js new file mode 100644 index 000000000..6bebc8063 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/regress-bug567606.js @@ -0,0 +1,19 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var global = this; + +(function() { + function f() { + this.b = function() {}; + Object.defineProperty(this, "b", ({ + configurable: global.__defineSetter__("", function() {}) + })); + } + for (y of [0]) { + _ = new f(); + } +})(); +uneval(this); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/regress-bug607284.js b/js/src/tests/ecma_5/extensions/regress-bug607284.js new file mode 100644 index 000000000..7d2c4921d --- /dev/null +++ b/js/src/tests/ecma_5/extensions/regress-bug607284.js @@ -0,0 +1,16 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +if ("evalcx" in this) { + var sandbox = evalcx(""); + var obj = { get foo() { throw("FAIL"); } }; + var getter = obj.__lookupGetter__("foo"); + var desc = sandbox.Object.getOwnPropertyDescriptor(obj, "foo"); + reportCompare(desc.get, getter, "getter is correct"); + reportCompare(desc.set, undefined, "setter is correct"); +} +else { + reportCompare(true, true); +} diff --git a/js/src/tests/ecma_5/extensions/regress-bug629723.js b/js/src/tests/ecma_5/extensions/regress-bug629723.js new file mode 100644 index 000000000..6c826e0c2 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/regress-bug629723.js @@ -0,0 +1,16 @@ +function f(foo) { + "use strict"; + foo.bar; +} + +var actual; +try { + f(); + actual = "no error"; +} catch (x) { + actual = (x instanceof TypeError) ? "type error" : "some other error"; + actual += (/use strict/.test(x)) ? " with directive" : " without directive"; +} + +reportCompare("type error without directive", actual, + "decompiled expressions in error messages should not include directive prologues"); diff --git a/js/src/tests/ecma_5/extensions/reviver-mutates-holder-array-ccw.js b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-array-ccw.js new file mode 100644 index 000000000..e51e19903 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-array-ccw.js @@ -0,0 +1,39 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 901351; +var summary = "Behavior when the JSON.parse reviver mutates the holder array"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var proxyObj = null; + +var arr = JSON.parse('[0, 1]', function(prop, v) { + if (prop === "0") + { + proxyObj = newGlobal().evaluate("({ c: 17, d: 42 })"); + this[1] = proxyObj; + } + return v; +}); + +assertEq(arr[0], 0); +assertEq(arr[1], proxyObj); +assertEq(arr[1].c, 17); +assertEq(arr[1].d, 42); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/reviver-mutates-holder-array-nonnative.js b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-array-nonnative.js new file mode 100644 index 000000000..de4ad7032 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-array-nonnative.js @@ -0,0 +1,46 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 901380; +var summary = "Behavior when JSON.parse walks over a non-native object"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var typedArray = null; + +var observedTypedArrayElementCount = 0; + +var arr = JSON.parse('[0, 1]', function(prop, v) { + if (prop === "0" && Array.isArray(this)) // exclude typedArray[0] + { + typedArray = new Int8Array(1); + this[1] = typedArray; + } + if (this instanceof Int8Array) + { + assertEq(prop, "0"); + observedTypedArrayElementCount++; + } + return v; +}); + +assertEq(arr[0], 0); +assertEq(arr[1], typedArray); + +assertEq(observedTypedArrayElementCount, 1); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/reviver-mutates-holder-array.js b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-array.js new file mode 100644 index 000000000..f4f89ac0a --- /dev/null +++ b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-array.js @@ -0,0 +1,39 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 901351; +var summary = "Behavior when the JSON.parse reviver mutates the holder array"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var proxyObj = null; + +var arr = JSON.parse('[0, 1]', function(prop, v) { + if (prop === "0") + { + proxyObj = new Proxy({ c: 17, d: 42 }, {}); + this[1] = proxyObj; + } + return v; +}); + +assertEq(arr[0], 0); +assertEq(arr[1], proxyObj); +assertEq(arr[1].c, 17); +assertEq(arr[1].d, 42); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/reviver-mutates-holder-object-ccw.js b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-object-ccw.js new file mode 100644 index 000000000..546a57e91 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-object-ccw.js @@ -0,0 +1,56 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 901351; +var summary = "Behavior when the JSON.parse reviver mutates the holder object"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// A little trickiness to account for the undefined-ness of property +// enumeration order. +var first = "unset"; + +var proxyObj = null; + +var obj = JSON.parse('{ "a": 0, "b": 1 }', function(prop, v) { + if (first === "unset") + { + first = prop; + var second = (prop === "a") ? "b" : "a"; + + proxyObj = newGlobal().evaluate("({ c: 42, d: 17 })"); + Object.defineProperty(this, second, { value: proxyObj }); + } + return v; +}); + +if (first === "a") +{ + assertEq(obj.a, 0); + assertEq(obj.b, proxyObj); + assertEq(obj.b.c, 42); + assertEq(obj.b.d, 17); +} +else +{ + assertEq(obj.a, proxyObj); + assertEq(obj.a.c, 42); + assertEq(obj.a.d, 17); + assertEq(obj.b, 1); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/reviver-mutates-holder-object-nonnative.js b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-object-nonnative.js new file mode 100644 index 000000000..1300f8dd0 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-object-nonnative.js @@ -0,0 +1,60 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 901380; +var summary = "Behavior when JSON.parse walks over a non-native object"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// A little trickiness to account for the undefined-ness of property +// enumeration order. +var first = "unset"; + +var observedTypedArrayElementCount = 0; + +var typedArray = null; + +var obj = JSON.parse('{ "a": 0, "b": 1 }', function(prop, v) { + if (first === "unset") + { + first = prop; + var second = (prop === "a") ? "b" : "a"; + typedArray = new Int8Array(1); + Object.defineProperty(this, second, { value: typedArray }); + } + if (this instanceof Int8Array) + { + assertEq(prop, "0"); + observedTypedArrayElementCount++; + } + return v; +}); + +if (first === "a") +{ + assertEq(obj.a, 0); + assertEq(obj.b, typedArray); +} +else +{ + assertEq(obj.a, typedArray); + assertEq(obj.b, 1); +} + +assertEq(observedTypedArrayElementCount, 1); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/reviver-mutates-holder-object.js b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-object.js new file mode 100644 index 000000000..973766e9a --- /dev/null +++ b/js/src/tests/ecma_5/extensions/reviver-mutates-holder-object.js @@ -0,0 +1,56 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + * Jeff Walden <jwalden+code@mit.edu> + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 901351; +var summary = "Behavior when the JSON.parse reviver mutates the holder object"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// A little trickiness to account for the undefined-ness of property +// enumeration order. +var first = "unset"; + +var proxyObj = null; + +var obj = JSON.parse('{ "a": 0, "b": 1 }', function(prop, v) { + if (first === "unset") + { + first = prop; + var second = (prop === "a") ? "b" : "a"; + + proxyObj = new Proxy({ c: 42, d: 17 }, {}); + Object.defineProperty(this, second, { value: proxyObj }); + } + return v; +}); + +if (first === "a") +{ + assertEq(obj.a, 0); + assertEq(obj.b, proxyObj); + assertEq(obj.b.c, 42); + assertEq(obj.b.d, 17); +} +else +{ + assertEq(obj.a, proxyObj); + assertEq(obj.a.c, 42); + assertEq(obj.a.d, 17); + assertEq(obj.b, 1); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/extensions/shell.js b/js/src/tests/ecma_5/extensions/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/extensions/shell.js diff --git a/js/src/tests/ecma_5/extensions/strict-function-statements.js b/js/src/tests/ecma_5/extensions/strict-function-statements.js new file mode 100644 index 000000000..e6dc15139 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/strict-function-statements.js @@ -0,0 +1,94 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +// Ordinary function definitions should be unaffected. +assertEq(testLenientAndStrict("function f() { }", + parsesSuccessfully, + parsesSuccessfully), + true); + +// Lambdas are always permitted within blocks. +assertEq(testLenientAndStrict("{ (function f() { }) }", + parsesSuccessfully, + parsesSuccessfully), + true); + +// Function statements within unbraced blocks are forbidden in strict mode code. +// They are allowed only under if statements in sloppy mode. +assertEq(testLenientAndStrict("if (true) function f() { }", + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict("while (true) function f() { }", + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict("do function f() { } while (true);", + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict("for(;;) function f() { }", + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict("for(x in []) function f() { }", + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict("with(o) function f() { }", + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict("switch(1) { case 1: function f() { } }", + parsesSuccessfully, + parsesSuccessfully), + true); +assertEq(testLenientAndStrict("x: function f() { }", + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict("try { function f() { } } catch (x) { }", + parsesSuccessfully, + parsesSuccessfully), + true); + +// Lambdas are always permitted within any sort of statement. +assertEq(testLenientAndStrict("if (true) (function f() { })", + parsesSuccessfully, + parsesSuccessfully), + true); + +// Function statements are permitted in blocks within lenient functions. +assertEq(parsesSuccessfully("function f() { function g() { } }"), + true); + +// Function statements are permitted in if statement within lenient functions. +assertEq(parsesSuccessfully("function f() { if (true) function g() { } }"), + true); + +assertEq(parseRaisesException(SyntaxError) + ("function f() { 'use strict'; if (true) function g() { } }"), + true); + +assertEq(parsesSuccessfully("function f() { 'use strict'; { function g() { } } }"), + true); + +assertEq(parsesSuccessfully("function f() { 'use strict'; if (true) (function g() { }) }"), + true); + +assertEq(parsesSuccessfully("function f() { 'use strict'; { (function g() { }) } }"), + true); + +// Eval should behave the same way. (The parse-only tests use the Function constructor.) +assertEq(testLenientAndStrict("function f() { }", + completesNormally, + completesNormally), + true); +assertEq(testLenientAndStrict("{ function f() { } }", + completesNormally, + completesNormally), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/strict-function-toSource.js b/js/src/tests/ecma_5/extensions/strict-function-toSource.js new file mode 100644 index 000000000..6d9b68560 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/strict-function-toSource.js @@ -0,0 +1,17 @@ +/* + * Bug 800407 - Functions defined with Function construcor + * do have strict mode when JSOPTION_STRICT_MODE is on. + */ + +options("strict_mode"); +function testRunOptionStrictMode(str, arg, result) { + var strict_inner = new Function('return typeof this == "undefined";'); + return strict_inner; +} +let inner = testRunOptionStrictMode(); +assertEq(inner(), true); +assertEq(eval(uneval(inner))(), true); + +assertEq((new Function('x', 'return x*2;')).toSource().includes('"use strict"'), false); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/strict-option-redeclared-parameter.js b/js/src/tests/ecma_5/extensions/strict-option-redeclared-parameter.js new file mode 100644 index 000000000..5a36b6947 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/strict-option-redeclared-parameter.js @@ -0,0 +1,30 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 630770; +var summary = + 'Correctly warn about duplicate parameters when the strict option is enabled'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// Verify that duplicate parameters, with the strict option set, don't provoke +// an assertion. Ideally we'd also verify that we warn exactly once per +// duplicated parameter name, but at present there's no way to test that +// without more effort (further customizing the shell JSErrorReporter) than we +// want to make now. +options("strict"); +eval("function a(x, x, x, x) { }"); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/extensions/string-literal-getter-setter-decompilation.js b/js/src/tests/ecma_5/extensions/string-literal-getter-setter-decompilation.js new file mode 100644 index 000000000..a0a571405 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/string-literal-getter-setter-decompilation.js @@ -0,0 +1,34 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var f; +try +{ + f = eval("(function literalInside() { return { set 'c d e'(v) { } }; })"); +} +catch (e) +{ + assertEq(true, false, + "string-literal property name in setter in object literal in " + + "function statement failed to parse: " + e); +} + +var fstr = "" + f; +assertEq(fstr.indexOf("set") < fstr.indexOf("c d e"), true, + "should be using new-style syntax with string literal in place of " + + "property identifier"); +assertEq(fstr.indexOf("setter") < 0, true, "using old-style syntax?"); + +var o = f(); +var ostr = "" + o; +assertEq("c d e" in o, true, "missing the property?"); +assertEq("set" in Object.getOwnPropertyDescriptor(o, "c d e"), true, + "'c d e' property not a setter?"); +// disabled because we still generate old-style syntax here (toSource +// decompilation is as yet unfixed) +// assertEq(ostr.indexOf("set") < ostr.indexOf("c d e"), true, +// "should be using new-style syntax when getting the source of a " + +// "getter/setter while decompiling an object"); +// assertEq(ostr.indexOf("setter") < 0, true, "using old-style syntax?"); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/toLocaleString-infinite-recursion.js b/js/src/tests/ecma_5/extensions/toLocaleString-infinite-recursion.js new file mode 100644 index 000000000..a11433ce4 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/toLocaleString-infinite-recursion.js @@ -0,0 +1,31 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 653789; +var summary = 'Check for too-deep stack when calling toLocaleString'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +try +{ + "" + { toString: Object.prototype.toLocaleString }; + throw new Error("should have thrown on over-recursion"); +} +catch (e) +{ + assertEq(e instanceof InternalError, true); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/extensions/toSource-infinite-recursion.js b/js/src/tests/ecma_5/extensions/toSource-infinite-recursion.js new file mode 100644 index 000000000..2ddcaa752 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/toSource-infinite-recursion.js @@ -0,0 +1,34 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 650574; +var summary = 'Check for too-deep stack when converting a value to source'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +try +{ + var e = Error(''); + e.fileName = e; + e.toSource(); + throw new Error("should have thrown"); +} +catch (e) +{ + assertEq(e instanceof InternalError, true, + "should have thrown for over-recursion"); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/extensions/watch-array-length.js b/js/src/tests/ecma_5/extensions/watch-array-length.js new file mode 100644 index 000000000..e9b356efa --- /dev/null +++ b/js/src/tests/ecma_5/extensions/watch-array-length.js @@ -0,0 +1,41 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var hitCount; +function watcher(p,o,n) { hitCount++; return n; } + +var a = [1]; +a.watch('length', watcher); +hitCount = 0; +a.length = 0; +reportCompare(1, hitCount, "lenient; configurable: watchpoint hit"); + +var b = Object.defineProperty([1],'0',{configurable:false}); +b.watch('length', watcher); +hitCount = 0; +var result; +try { + b.length = 0; + result = "no error"; +} catch (x) { + result = x.toString(); +} +reportCompare(1, hitCount, "lenient; non-configurable: watchpoint hit"); +reportCompare(1, b.length, "lenient; non-configurable: length unchanged"); +reportCompare("no error", result, "lenient; non-configurable: no error thrown"); + +var c = Object.defineProperty([1],'0',{configurable:false}); +c.watch('length', watcher); +hitCount = 0; +var threwTypeError; +try { + (function(){'use strict'; c.length = 0;})(); + threwTypeError = false; +} catch (x) { + threwTypeError = x instanceof TypeError; +} +reportCompare(1, hitCount, "strict; non-configurable: watchpoint hit"); +reportCompare(1, c.length, "strict; non-configurable: length unchanged"); +reportCompare(true, threwTypeError, "strict; non-configurable: TypeError thrown"); diff --git a/js/src/tests/ecma_5/extensions/watch-inherited-property.js b/js/src/tests/ecma_5/extensions/watch-inherited-property.js new file mode 100644 index 000000000..1a0ad566b --- /dev/null +++ b/js/src/tests/ecma_5/extensions/watch-inherited-property.js @@ -0,0 +1,38 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* Create a prototype object with a setter property. */ +var protoSetterCount; +var proto = ({ set x(v) { protoSetterCount++; } }); + +/* Put a watchpoint on that setter. */ +var protoWatchCount; +proto.watch('x', function() { protoWatchCount++; }); + +/* Make an object with the above as its prototype. */ +function C() { } +C.prototype = proto; +var o = new C(); + +/* + * Set a watchpoint on the property in the inheriting object. We have + * defined this to mean "duplicate the property, setter and all, in the + * inheriting object." I don't think debugging observation mechanisms + * should mutate the program being run, but that's what we've got. + */ +var oWatchCount; +o.watch('x', function() { oWatchCount++; }); + +/* + * Assign to the property. This should trip the watchpoint on the inheriting object and + * the setter. + */ +protoSetterCount = protoWatchCount = oWatchCount = 0; +o.x = 1; +assertEq(protoWatchCount, 0); +assertEq(oWatchCount, 1); +assertEq(protoSetterCount, 1); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/watch-replaced-setter.js b/js/src/tests/ecma_5/extensions/watch-replaced-setter.js new file mode 100644 index 000000000..05cf60aff --- /dev/null +++ b/js/src/tests/ecma_5/extensions/watch-replaced-setter.js @@ -0,0 +1,46 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* A stock watcher function. */ +var watcherCount; +function watcher(id, oldval, newval) { watcherCount++; return newval; } + +/* Create an object with a JavaScript setter. */ +var setterCount; +var o = { w:2, set x(v) { setterCount++; } }; + +/* + * Put the object in dictionary mode, so that JSObject::putProperty will + * mutate its shapes instead of creating new ones. + */ +delete o.w; + +/* + * Place a watchpoint on the property. The watchpoint structure holds the + * original JavaScript setter, and a pointer to the shape. + */ +o.watch('x', watcher); + +/* + * Replace the accessor property with a value property. The shape's setter + * should become a non-JS setter, js_watch_set, and the watchpoint + * structure's saved setter should be updated (in this case, cleared). + */ +Object.defineProperty(o, 'x', { value:3, + writable:true, + enumerable:true, + configurable:true }); + +/* + * Assign to the property. This should trigger js_watch_set, which should + * call the handler, and then see that there is no JS-level setter to pass + * control on to, and return. + */ +watcherCount = setterCount = 0; +o.x = 3; +assertEq(watcherCount, 1); +assertEq(setterCount, 0); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/watch-setter-become-setter.js b/js/src/tests/ecma_5/extensions/watch-setter-become-setter.js new file mode 100644 index 000000000..f5eff98b8 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/watch-setter-become-setter.js @@ -0,0 +1,44 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* Create an object with a JavaScript setter. */ +var firstSetterCount; +var o = { w:2, set x(v) { firstSetterCount++; } }; + +/* + * Put the object in dictionary mode, so that JSObject::putProperty will + * mutate its shapes instead of creating new ones. + */ +delete o.w; + +/* A stock watcher function. */ +var watcherCount; +function watcher(id, oldval, newval) { watcherCount++; return newval; } + +/* + * Place a watchpoint on the property. The property's shape now has the + * watchpoint setter, with the original setter saved in the watchpoint + * structure. + */ +o.watch('x', watcher); + +/* + * Replace the setter with a new setter. The shape should get updated to + * refer to the new setter, and then the watchpoint setter should be + * re-established. + */ +var secondSetterCount; +Object.defineProperty(o, 'x', { set: function () { secondSetterCount++ } }); + +/* + * Assign to the property. This should trigger the watchpoint and the new setter. + */ +watcherCount = firstSetterCount = secondSetterCount = 0; +o.x = 3; +assertEq(watcherCount, 1); +assertEq(firstSetterCount, 0); +assertEq(secondSetterCount, 1); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/watch-value-prop-becoming-setter.js b/js/src/tests/ecma_5/extensions/watch-value-prop-becoming-setter.js new file mode 100644 index 000000000..03cdd788e --- /dev/null +++ b/js/src/tests/ecma_5/extensions/watch-value-prop-becoming-setter.js @@ -0,0 +1,43 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* A stock watcher function. */ +var watcherCount; +function watcher(id, old, newval) { + watcherCount++; + return newval; +} + +/* Create an object with a value property. */ +var o = { w:2, x:3 }; + +/* + * Place a watchpoint on the value property. The watchpoint structure holds + * the original JavaScript setter, and a pointer to the shape. + */ +o.watch('x', watcher); + +/* + * Put the object in dictionary mode, so that JSObject::putProperty will + * mutate its shapes instead of creating new ones. + */ +delete o.w; + +/* + * Replace the value property with a setter. + */ +var setterCount; +o.__defineSetter__('x', function() { setterCount++; }); + +/* + * Trigger the watchpoint. The watchpoint handler should run, and then the + * setter should run. + */ +watcherCount = setterCount = 0; +o.x = 4; +assertEq(watcherCount, 1); +assertEq(setterCount, 1); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/extensions/watchpoint-deletes-JSPropertyOp-setter.js b/js/src/tests/ecma_5/extensions/watchpoint-deletes-JSPropertyOp-setter.js new file mode 100644 index 000000000..85410bbd4 --- /dev/null +++ b/js/src/tests/ecma_5/extensions/watchpoint-deletes-JSPropertyOp-setter.js @@ -0,0 +1,56 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function make_watcher(name) { + return function (id, oldv, newv) { + print("watched " + name + "[0]"); + }; +} + +var o, p; +function f(flag) { + if (flag) { + o = arguments; + } else { + p = arguments; + o.watch(0, make_watcher('o')); + p.watch(0, make_watcher('p')); + + /* + * Previously, the watchpoint implementation actually substituted its magic setter + * functions for the setters of shared shapes, and then 1) carefully ignored calls + * to its magic setter from unrelated objects, and 2) avoided restoring the + * original setter until all watchpoints on that shape had been removed. + * + * However, when the watchpoint code began using JSObject::changeProperty and + * js_ChangeNativePropertyAttrs to change shapes' setters, the shape tree code + * became conscious of the presence of watchpoints, and shared shapes between + * objects only when their watchpoint nature coincided. Clearing the magic setter + * from one object's shape would not affect other objects, because the + * watchpointed and non-watchpointed shapes were distinct if they were shared. + * + * Thus, the first unwatch call must go ahead and fix p's shape, even though a + * watchpoint exists on the same shape in o. o's watchpoint's presence shouldn't + * cause 'unwatch' to leave p's magic setter in place. + */ + + /* DropWatchPointAndUnlock would see o's watchpoint, and not change p's property. */ + p.unwatch(0); + + /* DropWatchPointAndUnlock would fix o's property, but not p's; p's setter would be gone. */ + o.unwatch(0); + + /* This would fail to invoke the arguments object's setter. */ + p[0] = 4; + + /* And the formal parameter would not get updated. */ + assertEq(flag, 4); + } +} + +f(true); +f(false); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/misc/browser.js b/js/src/tests/ecma_5/misc/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/misc/browser.js diff --git a/js/src/tests/ecma_5/misc/bug1126318.js b/js/src/tests/ecma_5/misc/bug1126318.js new file mode 100644 index 000000000..73ccdc07a --- /dev/null +++ b/js/src/tests/ecma_5/misc/bug1126318.js @@ -0,0 +1,13 @@ +if (typeof window === "undefined") + window = this; + +Object.defineProperty(window, "foo", { + get: function() { return 5; }, + configurable: true +}); + +for (var i = 0; i < 100; ++i) + assertEq(window.foo, 5); + +if (typeof reportCompare === "function") + reportCompare(0, 0); diff --git a/js/src/tests/ecma_5/misc/builtin-methods-reject-null-undefined-this.js b/js/src/tests/ecma_5/misc/builtin-methods-reject-null-undefined-this.js new file mode 100644 index 000000000..a2275c1b8 --- /dev/null +++ b/js/src/tests/ecma_5/misc/builtin-methods-reject-null-undefined-this.js @@ -0,0 +1,153 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 619283; +var summary = + "ECMAScript built-in methods that immediately throw when |this| is " + + "|undefined| or |null| (due to CheckObjectCoercible, ToObject, or ToString)"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// We can't just exhaustively loop over everything because 1) method properties +// might be extensions with special |this| handling, and 2) some methods don't +// *quite* immediately throw a TypeError, first thing, if |this| is |undefined| +// or |null|, or their algorithms are very slightly ambiguous about whether they +// do. Why? Ipse-dixitism. *shrug* + +var ClassToMethodMap = + { + Object: [/* "toString" has special |this| handling */ + "toLocaleString", "valueOf", "hasOwnProperty", + /* + * "isPrototypeOf" has special |this| handling already tested in + * ecma_5/Object/isPrototypeOf.js. + */ + /* + * "isPrototypeOf" has special |this| handling already tested in + * ecma_5/Object/propertyIsEnumerable.js. + */], + // Function methods often don't ToObject(this) as their very first step, + // and they're already stepwise well-tested such that manual tests here + // would be redundant. + Array: ["toString", "toLocaleString", "concat", "join", "pop", "push", + "reverse", "shift", "slice", "sort", "splice", "unshift", + "indexOf", "lastIndexOf", "every", "some", "forEach", "map", + "filter", "reduce", "reduceRight"], + String: ["toString", "valueOf", "charAt", "charCodeAt", "concat", + "indexOf", "lastIndexOf", "localeCompare", "match", "replace", + "search", "slice", "split", "substring", "toLowerCase", + "toLocaleLowerCase", "toUpperCase", "toLocaleUpperCase", "trim", + /* + * "trimLeft" and "trimRight" are non-standard and thus are tested + * in ecma_5/extensions/trim-extensions.js. + */ + ], + Boolean: ["toString", "valueOf"], + Number: ["toString", "toLocaleString", "valueOf", + /* + * toFixed doesn't *immediately* test |this| for number or + * Number-ness, but because the ToInteger(void 0) which arguably + * precedes it in the toFixed algorithm won't throw in this test, + * we don't need to specially test it. + */ + "toFixed", + "toExponential", "toPrecision"], + Date: ["toDateString", "toTimeString", "toLocaleString", + "toLocaleDateString", "toLocaleTimeString", "valueOf", "getTime", + "getFullYear", "getUTCFullYear", "getMonth", "getUTCMonth", + "getDate", "getUTCDate", "getDay", "getUTCDay", "getHours", + "getUTCHours", "getMinutes", "getUTCMinutes", "getSeconds", + "getUTCSeconds", "getMilliseconds", "getUTCMilliseconds", + /* + * toFixed doesn't *immediately* test |this| for number or + * Number-ness, but because the TimeClip(ToNumber(void 0)) which + * arguably precedes it in the setTime algorithm won't throw in + * this test, we don't need to specially test it. + */ + "setTime", + "getTimezoneOffset", "setMilliseconds", "setUTCMilliseconds", + "setSeconds", "setUTCSeconds", "setMinutes", "setUTCMinutes", + "setHours", "setUTCHours", "setDate", "setUTCDate", "setMonth", + "setUTCMonth", "setFullYear", "setUTCFullYear", "toUTCString", + "toISOString", "toJSON"], + RegExp: ["exec", "test", "toString"], + Error: ["toString"], + }; + +var badThisValues = [null, undefined]; + +function testMethod(Class, className, method) +{ + var expr; + + // Try out explicit this values + for (var i = 0, sz = badThisValues.length; i < sz; i++) + { + var badThis = badThisValues[i]; + + expr = className + ".prototype." + method + ".call(" + badThis + ")"; + try + { + Class.prototype[method].call(badThis); + throw new Error(expr + " didn't throw a TypeError"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "wrong error for " + expr + ", instead threw " + e); + } + + expr = className + ".prototype." + method + ".apply(" + badThis + ")"; + try + { + Class.prototype[method].apply(badThis); + throw new Error(expr + " didn't throw a TypeError"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "wrong error for " + expr + ", instead threw " + e); + } + } + + // ..and for good measure.. + + expr = "(0, " + className + ".prototype." + method + ")()" + try + { + // comma operator to call GetValue() on the method and de-Reference it + (0, Class.prototype[method])(); + throw new Error(expr + " didn't throw a TypeError"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "wrong error for " + expr + ", instead threw " + e); + } +} + +for (var className in ClassToMethodMap) +{ + var Class = this[className]; + + var methodNames = ClassToMethodMap[className]; + for (var i = 0, sz = methodNames.length; i < sz; i++) + { + var method = methodNames[i]; + testMethod(Class, className, method); + } +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/misc/enumerate-undefined.js b/js/src/tests/ecma_5/misc/enumerate-undefined.js new file mode 100644 index 000000000..17bc1c4c8 --- /dev/null +++ b/js/src/tests/ecma_5/misc/enumerate-undefined.js @@ -0,0 +1,24 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 547087; +var summary = 'JS_EnumerateStandardClasses uses wrong attributes for undefined'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +for (var p in this); + +assertEq(Object.getOwnPropertyDescriptor(this, "undefined").writable, false); + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/misc/error-undefined-message.js b/js/src/tests/ecma_5/misc/error-undefined-message.js new file mode 100644 index 000000000..8a9202b8f --- /dev/null +++ b/js/src/tests/ecma_5/misc/error-undefined-message.js @@ -0,0 +1,7 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +assertEq(new Error().hasOwnProperty('message'), false); +assertEq(new Error(undefined).hasOwnProperty('message'), false); + +reportCompare(0, 0, 'ok'); diff --git a/js/src/tests/ecma_5/misc/explicit-undefined-optional-argument.js b/js/src/tests/ecma_5/misc/explicit-undefined-optional-argument.js new file mode 100644 index 000000000..f861ccfdb --- /dev/null +++ b/js/src/tests/ecma_5/misc/explicit-undefined-optional-argument.js @@ -0,0 +1,34 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +var BUGNUMBER = 373118; +var summary = + 'Properly handle explicitly-undefined optional arguments to a bunch of ' + + 'functions'; + +print(BUGNUMBER + ": " + summary); + +//----------------------------------------------------------------------------- + +var a; + +a = "abc".slice(0, undefined); +assertEq(a, "abc"); + +a = "abc".substr(0, undefined); +assertEq(a, "abc"); + +a = "abc".substring(0, undefined); +assertEq(a, "abc"); + +a = [1, 2, 3].slice(0, undefined); +assertEq(a.join(), '1,2,3'); + +a = [1, 2, 3].sort(undefined); +assertEq(a.join(), '1,2,3'); + +assertEq((20).toString(undefined), '20'); + +//----------------------------------------------------------------------------- + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/misc/function-definition-eval.js b/js/src/tests/ecma_5/misc/function-definition-eval.js new file mode 100644 index 000000000..27feae1a6 --- /dev/null +++ b/js/src/tests/ecma_5/misc/function-definition-eval.js @@ -0,0 +1,348 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 577325; +var summary = 'Implement the ES5 algorithm for processing function statements'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var outer, desc; +var isInShell = !("Window" in this); + +/////////////////////////////////////////////////// +// Function definitions over accessor properties // +/////////////////////////////////////////////////// + +var getCalled, setCalled; + +// configurable properties get blown away + +getCalled = false, setCalled = false; +Object.defineProperty(this, "acc1", + { + get: function() { getCalled = true; throw "FAIL get 1"; }, + set: function(v) { setCalled = true; throw "FAIL set 1 " + v; }, + configurable: true, + enumerable: false + }); + +// does not throw +outer = undefined; +eval("function acc1() { throw 'FAIL redefined 1'; } outer = acc1;"); +assertEq(getCalled, false); +assertEq(setCalled, false); +assertEq(typeof acc1, "function"); +assertEq(acc1, outer); +desc = Object.getOwnPropertyDescriptor(this, "acc1"); +assertEq(desc.value, acc1); +assertEq(desc.writable, true); +assertEq(desc.enumerable, true); +assertEq(desc.configurable, true); + + +getCalled = false, setCalled = false; +Object.defineProperty(this, "acc2", + { + get: function() { getCalled = true; throw "FAIL get 2"; }, + set: function(v) { setCalled = true; throw "FAIL set 2 " + v; }, + configurable: true, + enumerable: true + }); + +// does not throw +outer = undefined; +eval("function acc2() { throw 'FAIL redefined 2'; } outer = acc2;"); +assertEq(getCalled, false); +assertEq(setCalled, false); +assertEq(typeof acc2, "function"); +assertEq(acc2, outer); +desc = Object.getOwnPropertyDescriptor(this, "acc2"); +assertEq(desc.value, acc2); +assertEq(desc.writable, true); +assertEq(desc.enumerable, true); +assertEq(desc.configurable, true); + + +// non-configurable properties produce a TypeError. We only test this in shell, +// since defining non-configurable properties on Window instances throws. +if (isInShell) { + getCalled = false, setCalled = false; + Object.defineProperty(this, "acc3", + { + get: function() { getCalled = true; throw "FAIL get 3"; }, + set: function(v) { setCalled = true; throw "FAIL set 3 " + v; }, + configurable: false, + enumerable: true + }); + + outer = undefined; + try + { + eval("function acc3() { throw 'FAIL redefined 3'; }; outer = acc3"); + throw new Error("should have thrown trying to redefine global function " + + "over a non-configurable, enumerable accessor"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "global function definition, when that function would overwrite " + + "a non-configurable, enumerable accessor, must throw a TypeError " + + "per ES5+errata: " + e); + desc = Object.getOwnPropertyDescriptor(this, "acc3"); + assertEq(typeof desc.get, "function"); + assertEq(typeof desc.set, "function"); + assertEq(desc.enumerable, true); + assertEq(desc.configurable, false); + assertEq(outer, undefined); + assertEq(getCalled, false); + assertEq(setCalled, false); + } + + + getCalled = false, setCalled = false; + Object.defineProperty(this, "acc4", + { + get: function() { getCalled = true; throw "FAIL get 4"; }, + set: function(v) { setCalled = true; throw "FAIL set 4 " + v; }, + configurable: false, + enumerable: false + }); + + outer = undefined; + try + { + eval("function acc4() { throw 'FAIL redefined 4'; }; outer = acc4"); + throw new Error("should have thrown trying to redefine global function " + + "over a non-configurable, non-enumerable accessor"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "global function definition, when that function would overwrite " + + "a non-configurable, non-enumerable accessor, must throw a " + + "TypeError per ES5+errata: " + e); + desc = Object.getOwnPropertyDescriptor(this, "acc4"); + assertEq(typeof desc.get, "function"); + assertEq(typeof desc.set, "function"); + assertEq(desc.enumerable, false); + assertEq(desc.configurable, false); + assertEq(outer, undefined); + assertEq(getCalled, false); + assertEq(setCalled, false); + } +} + + +/////////////////////////////////////////////// +// Function definitions over data properties // +/////////////////////////////////////////////// + + +// configurable properties, regardless of other attributes, get blown away + +Object.defineProperty(this, "data1", + { + configurable: true, + enumerable: true, + writable: true, + value: "data1" + }); + +outer = undefined; +eval("function data1() { return 'data1 function'; } outer = data1;"); +assertEq(typeof data1, "function"); +assertEq(data1, outer); +desc = Object.getOwnPropertyDescriptor(this, "data1"); +assertEq(desc.configurable, true); +assertEq(desc.enumerable, true); +assertEq(desc.writable, true); +assertEq(desc.value, data1); + + +Object.defineProperty(this, "data2", + { + configurable: true, + enumerable: true, + writable: false, + value: "data2" + }); + +outer = undefined; +eval("function data2() { return 'data2 function'; } outer = data2;"); +assertEq(typeof data2, "function"); +assertEq(data2, outer); +desc = Object.getOwnPropertyDescriptor(this, "data2"); +assertEq(desc.configurable, true); +assertEq(desc.enumerable, true); +assertEq(desc.writable, true); +assertEq(desc.value, data2); + + +Object.defineProperty(this, "data3", + { + configurable: true, + enumerable: false, + writable: true, + value: "data3" + }); + +outer = undefined; +eval("function data3() { return 'data3 function'; } outer = data3;"); +assertEq(typeof data3, "function"); +assertEq(data3, outer); +desc = Object.getOwnPropertyDescriptor(this, "data3"); +assertEq(desc.configurable, true); +assertEq(desc.enumerable, true); +assertEq(desc.writable, true); +assertEq(desc.value, data3); + + +Object.defineProperty(this, "data4", + { + configurable: true, + enumerable: false, + writable: false, + value: "data4" + }); + +outer = undefined; +eval("function data4() { return 'data4 function'; } outer = data4;"); +assertEq(typeof data4, "function"); +assertEq(data4, outer); +desc = Object.getOwnPropertyDescriptor(this, "data4"); +assertEq(desc.value, data4); +assertEq(desc.writable, true); +assertEq(desc.enumerable, true); +assertEq(desc.configurable, true); + + +// non-configurable data properties are trickier. Again, we test these only in shell. + +if (isInShell) { + Object.defineProperty(this, "data5", + { + configurable: false, + enumerable: true, + writable: true, + value: "data5" + }); + + outer = undefined; + eval("function data5() { return 'data5 function'; } outer = data5;"); + assertEq(typeof data5, "function"); + assertEq(data5, outer); + desc = Object.getOwnPropertyDescriptor(this, "data5"); + assertEq(desc.configurable, false); + assertEq(desc.enumerable, true); + assertEq(desc.writable, true); + assertEq(desc.value, data5); + + + Object.defineProperty(this, "data6", + { + configurable: false, + enumerable: true, + writable: false, + value: "data6" + }); + + outer = undefined; + try + { + eval("function data6() { return 'data6 function'; } outer = data6;"); + throw new Error("should have thrown trying to redefine global function " + + "over a non-configurable, enumerable, non-writable accessor"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "global function definition, when that function would overwrite " + + "a non-configurable, enumerable, non-writable data property, must " + + "throw a TypeError per ES5+errata: " + e); + assertEq(data6, "data6"); + assertEq(outer, undefined); + desc = Object.getOwnPropertyDescriptor(this, "data6"); + assertEq(desc.configurable, false); + assertEq(desc.enumerable, true); + assertEq(desc.writable, false); + assertEq(desc.value, "data6"); + } + + + Object.defineProperty(this, "data7", + { + configurable: false, + enumerable: false, + writable: true, + value: "data7" + }); + + outer = undefined; + try + { + eval("function data7() { return 'data7 function'; } outer = data7;"); + throw new Error("should have thrown trying to redefine global function " + + "over a non-configurable, non-enumerable, writable data" + + "property"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "global function definition, when that function would overwrite " + + "a non-configurable, non-enumerable, writable data property, must " + + "throw a TypeError per ES5+errata: " + e); + assertEq(data7, "data7"); + assertEq(outer, undefined); + desc = Object.getOwnPropertyDescriptor(this, "data7"); + assertEq(desc.configurable, false); + assertEq(desc.enumerable, false); + assertEq(desc.writable, true); + assertEq(desc.value, "data7"); + } + + + Object.defineProperty(this, "data8", + { + configurable: false, + enumerable: false, + writable: false, + value: "data8" + }); + + outer = undefined; + try + { + eval("function data8() { return 'data8 function'; } outer = data8;"); + throw new Error("should have thrown trying to redefine global function " + + "over a non-configurable, non-enumerable, non-writable data" + + "property"); + } + catch (e) + { + assertEq(e instanceof TypeError, true, + "global function definition, when that function would overwrite " + + "a non-configurable, non-enumerable, non-writable data property, " + + "must throw a TypeError per ES5+errata: " + e); + assertEq(data8, "data8"); + assertEq(outer, undefined); + desc = Object.getOwnPropertyDescriptor(this, "data8"); + assertEq(desc.configurable, false); + assertEq(desc.enumerable, false); + assertEq(desc.writable, false); + assertEq(desc.value, "data8"); + } +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/misc/function-definition-evaluate.js b/js/src/tests/ecma_5/misc/function-definition-evaluate.js new file mode 100644 index 000000000..4ed156b2a --- /dev/null +++ b/js/src/tests/ecma_5/misc/function-definition-evaluate.js @@ -0,0 +1,344 @@ +// |reftest| skip-if(!xulRuntime.shell) -- needs evaluate() +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 577325; +var summary = 'Implement the ES5 algorithm for processing function statements'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var outer, desc; + +/////////////////////////////////////////////////// +// Function definitions over accessor properties // +/////////////////////////////////////////////////// + +var getCalled, setCalled; + +// configurable properties get blown away + +getCalled = false, setCalled = false; +Object.defineProperty(this, "acc1", + { + get: function() { getCalled = true; throw "FAIL get 1"; }, + set: function(v) { setCalled = true; throw "FAIL set 1 " + v; }, + configurable: true, + enumerable: false + }); + +// does not throw +outer = undefined; +evaluate("function acc1() { throw 'FAIL redefined 1'; } outer = acc1;"); +assertEq(getCalled, false); +assertEq(setCalled, false); +assertEq(typeof acc1, "function"); +assertEq(acc1, outer); +desc = Object.getOwnPropertyDescriptor(this, "acc1"); +assertEq(desc.value, acc1); +assertEq(desc.writable, true); +assertEq(desc.enumerable, true); +assertEq(desc.configurable, false); + + +getCalled = false, setCalled = false; +Object.defineProperty(this, "acc2", + { + get: function() { getCalled = true; throw "FAIL get 2"; }, + set: function(v) { setCalled = true; throw "FAIL set 2 " + v; }, + configurable: true, + enumerable: true + }); + +// does not throw +outer = undefined; +evaluate("function acc2() { throw 'FAIL redefined 2'; } outer = acc2;"); +assertEq(getCalled, false); +assertEq(setCalled, false); +assertEq(typeof acc2, "function"); +assertEq(acc2, outer); +desc = Object.getOwnPropertyDescriptor(this, "acc2"); +assertEq(desc.value, acc2); +assertEq(desc.writable, true); +assertEq(desc.enumerable, true); +assertEq(desc.configurable, false); + + +// non-configurable properties produce a TypeError + +getCalled = false, setCalled = false; +Object.defineProperty(this, "acc3", + { + get: function() { getCalled = true; throw "FAIL get 3"; }, + set: function(v) { setCalled = true; throw "FAIL set 3 " + v; }, + configurable: false, + enumerable: true + }); + +outer = undefined; +try +{ + evaluate("function acc3() { throw 'FAIL redefined 3'; }; outer = acc3"); + throw new Error("should have thrown trying to redefine global function " + + "over a non-configurable, enumerable accessor"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "global function definition, when that function would overwrite " + + "a non-configurable, enumerable accessor, must throw a TypeError " + + "per ES5+errata: " + e); + desc = Object.getOwnPropertyDescriptor(this, "acc3"); + assertEq(typeof desc.get, "function"); + assertEq(typeof desc.set, "function"); + assertEq(desc.enumerable, true); + assertEq(desc.configurable, false); + assertEq(outer, undefined); + assertEq(getCalled, false); + assertEq(setCalled, false); +} + + +getCalled = false, setCalled = false; +Object.defineProperty(this, "acc4", + { + get: function() { getCalled = true; throw "FAIL get 4"; }, + set: function(v) { setCalled = true; throw "FAIL set 4 " + v; }, + configurable: false, + enumerable: false + }); + +outer = undefined; +try +{ + evaluate("function acc4() { throw 'FAIL redefined 4'; }; outer = acc4"); + throw new Error("should have thrown trying to redefine global function " + + "over a non-configurable, non-enumerable accessor"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "global function definition, when that function would overwrite " + + "a non-configurable, non-enumerable accessor, must throw a " + + "TypeError per ES5+errata: " + e); + desc = Object.getOwnPropertyDescriptor(this, "acc4"); + assertEq(typeof desc.get, "function"); + assertEq(typeof desc.set, "function"); + assertEq(desc.enumerable, false); + assertEq(desc.configurable, false); + assertEq(outer, undefined); + assertEq(getCalled, false); + assertEq(setCalled, false); +} + + +/////////////////////////////////////////////// +// Function definitions over data properties // +/////////////////////////////////////////////// + + +// configurable properties, regardless of other attributes, get blown away + +Object.defineProperty(this, "data1", + { + configurable: true, + enumerable: true, + writable: true, + value: "data1" + }); + +outer = undefined; +evaluate("function data1() { return 'data1 function'; } outer = data1;"); +assertEq(typeof data1, "function"); +assertEq(data1, outer); +desc = Object.getOwnPropertyDescriptor(this, "data1"); +assertEq(desc.configurable, false); +assertEq(desc.enumerable, true); +assertEq(desc.writable, true); +assertEq(desc.value, data1); + + +Object.defineProperty(this, "data2", + { + configurable: true, + enumerable: true, + writable: false, + value: "data2" + }); + +outer = undefined; +evaluate("function data2() { return 'data2 function'; } outer = data2;"); +assertEq(typeof data2, "function"); +assertEq(data2, outer); +desc = Object.getOwnPropertyDescriptor(this, "data2"); +assertEq(desc.configurable, false); +assertEq(desc.enumerable, true); +assertEq(desc.writable, true); +assertEq(desc.value, data2); + + +Object.defineProperty(this, "data3", + { + configurable: true, + enumerable: false, + writable: true, + value: "data3" + }); + +outer = undefined; +evaluate("function data3() { return 'data3 function'; } outer = data3;"); +assertEq(typeof data3, "function"); +assertEq(data3, outer); +desc = Object.getOwnPropertyDescriptor(this, "data3"); +assertEq(desc.configurable, false); +assertEq(desc.enumerable, true); +assertEq(desc.writable, true); +assertEq(desc.value, data3); + + +Object.defineProperty(this, "data4", + { + configurable: true, + enumerable: false, + writable: false, + value: "data4" + }); + +outer = undefined; +evaluate("function data4() { return 'data4 function'; } outer = data4;"); +assertEq(typeof data4, "function"); +assertEq(data4, outer); +desc = Object.getOwnPropertyDescriptor(this, "data4"); +assertEq(desc.value, data4); +assertEq(desc.writable, true); +assertEq(desc.enumerable, true); +assertEq(desc.configurable, false); + + +// non-configurable data properties are trickier + +Object.defineProperty(this, "data5", + { + configurable: false, + enumerable: true, + writable: true, + value: "data5" + }); + +outer = undefined; +evaluate("function data5() { return 'data5 function'; } outer = data5;"); +assertEq(typeof data5, "function"); +assertEq(data5, outer); +desc = Object.getOwnPropertyDescriptor(this, "data5"); +assertEq(desc.configurable, false); +assertEq(desc.enumerable, true); +assertEq(desc.writable, true); +assertEq(desc.value, data5); + + +Object.defineProperty(this, "data6", + { + configurable: false, + enumerable: true, + writable: false, + value: "data6" + }); + +outer = undefined; +try +{ + evaluate("function data6() { return 'data6 function'; } outer = data6;"); + throw new Error("should have thrown trying to redefine global function " + + "over a non-configurable, enumerable, non-writable accessor"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "global function definition, when that function would overwrite " + + "a non-configurable, enumerable, non-writable data property, must " + + "throw a TypeError per ES5+errata: " + e); + assertEq(data6, "data6"); + assertEq(outer, undefined); + desc = Object.getOwnPropertyDescriptor(this, "data6"); + assertEq(desc.configurable, false); + assertEq(desc.enumerable, true); + assertEq(desc.writable, false); + assertEq(desc.value, "data6"); +} + + +Object.defineProperty(this, "data7", + { + configurable: false, + enumerable: false, + writable: true, + value: "data7" + }); + +outer = undefined; +try +{ + evaluate("function data7() { return 'data7 function'; } outer = data7;"); + throw new Error("should have thrown trying to redefine global function " + + "over a non-configurable, non-enumerable, writable data" + + "property"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "global function definition, when that function would overwrite " + + "a non-configurable, non-enumerable, writable data property, must " + + "throw a TypeError per ES5+errata: " + e); + assertEq(data7, "data7"); + assertEq(outer, undefined); + desc = Object.getOwnPropertyDescriptor(this, "data7"); + assertEq(desc.configurable, false); + assertEq(desc.enumerable, false); + assertEq(desc.writable, true); + assertEq(desc.value, "data7"); +} + + +Object.defineProperty(this, "data8", + { + configurable: false, + enumerable: false, + writable: false, + value: "data8" + }); + +outer = undefined; +try +{ + evaluate("function data8() { return 'data8 function'; } outer = data8;"); + throw new Error("should have thrown trying to redefine global function " + + "over a non-configurable, non-enumerable, non-writable data" + + "property"); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "global function definition, when that function would overwrite " + + "a non-configurable, non-enumerable, non-writable data property, " + + "must throw a TypeError per ES5+errata: " + e); + assertEq(data8, "data8"); + assertEq(outer, undefined); + desc = Object.getOwnPropertyDescriptor(this, "data8"); + assertEq(desc.configurable, false); + assertEq(desc.enumerable, false); + assertEq(desc.writable, false); + assertEq(desc.value, "data8"); +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/misc/future-reserved-words.js b/js/src/tests/ecma_5/misc/future-reserved-words.js new file mode 100644 index 000000000..0fa2e3221 --- /dev/null +++ b/js/src/tests/ecma_5/misc/future-reserved-words.js @@ -0,0 +1,463 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 497869; +var summary = "Implement FutureReservedWords per-spec"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var futureReservedWords = + [ + "class", + // "const", // Mozilla extension enabled even for versionless code + "enum", + "export", + "extends", + "import", + "super", + ]; + +var strictFutureReservedWords = + [ + "implements", + "interface", + "let", // enabled: this file doesn't execute as JS1.7 + "package", + "private", + "protected", + "public", + "static", + "yield", // enabled: this file doesn't execute as JS1.7 + ]; + +function testWord(word, expectNormal, expectStrict) +{ + var actual, status; + + // USE AS LHS FOR ASSIGNMENT + + actual = ""; + status = summary + ": " + word + ": normal assignment"; + try + { + eval(word + " = 'foo';"); + actual = "no error"; + } + catch(e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectNormal, status); + + actual = ""; + status = summary + ": " + word + ": strict assignment"; + try + { + eval("'use strict'; " + word + " = 'foo';"); + actual = "no error"; + } + catch(e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + // USE IN VARIABLE DECLARATION + + actual = ""; + status = summary + ": " + word + ": normal var"; + try + { + eval("var " + word + ";"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectNormal, status); + + actual = ""; + status = summary + ": " + word + ": strict var"; + try + { + eval("'use strict'; var " + word + ";"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + // USE IN FOR-IN VARIABLE DECLARATION + + actual = ""; + status = summary + ": " + word + ": normal for-in var"; + try + { + eval("for (var " + word + " in {});"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectNormal, status); + + actual = ""; + status = summary + ": " + word + ": strict for-in var"; + try + { + eval("'use strict'; for (var " + word + " in {});"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + // USE AS CATCH IDENTIFIER + + actual = ""; + status = summary + ": " + word + ": normal var"; + try + { + eval("try { } catch (" + word + ") { }"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectNormal, status); + + actual = ""; + status = summary + ": " + word + ": strict var"; + try + { + eval("'use strict'; try { } catch (" + word + ") { }"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + // USE AS LABEL + + actual = ""; + status = summary + ": " + word + ": normal label"; + try + { + eval(word + ": while (false);"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectNormal, status); + + actual = ""; + status = summary + ": " + word + ": strict label"; + try + { + eval("'use strict'; " + word + ": while (false);"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + // USE AS ARGUMENT NAME IN FUNCTION DECLARATION + + actual = ""; + status = summary + ": " + word + ": normal function argument"; + try + { + eval("function foo(" + word + ") { }"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectNormal, status); + + actual = ""; + status = summary + ": " + word + ": strict function argument"; + try + { + eval("'use strict'; function foo(" + word + ") { }"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + actual = ""; + status = summary + ": " + word + ": function argument retroactively strict"; + try + { + eval("function foo(" + word + ") { 'use strict'; }"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + // USE AS ARGUMENT NAME IN FUNCTION EXPRESSION + + actual = ""; + status = summary + ": " + word + ": normal function expression argument"; + try + { + eval("var s = (function foo(" + word + ") { });"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectNormal, status); + + actual = ""; + status = summary + ": " + word + ": strict function expression argument"; + try + { + eval("'use strict'; var s = (function foo(" + word + ") { });"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + actual = ""; + status = summary + ": " + word + ": function expression argument retroactively strict"; + try + { + eval("var s = (function foo(" + word + ") { 'use strict'; });"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + // USE AS ARGUMENT NAME WITH FUNCTION CONSTRUCTOR + + actual = ""; + status = summary + ": " + word + ": argument with normal Function"; + try + { + Function(word, "return 17"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectNormal, status); + + actual = ""; + status = summary + ": " + word + ": argument with strict Function"; + try + { + Function(word, "'use strict'; return 17"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + // USE AS ARGUMENT NAME IN PROPERTY SETTER + + actual = ""; + status = summary + ": " + word + ": normal property setter argument"; + try + { + eval("var o = { set x(" + word + ") { } };"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectNormal, status); + + actual = ""; + status = summary + ": " + word + ": strict property setter argument"; + try + { + eval("'use strict'; var o = { set x(" + word + ") { } };"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + actual = ""; + status = summary + ": " + word + ": property setter argument retroactively strict"; + try + { + eval("var o = { set x(" + word + ") { 'use strict'; } };"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + // USE AS FUNCTION NAME IN FUNCTION DECLARATION + + actual = ""; + status = summary + ": " + word + ": normal function name"; + try + { + eval("function " + word + "() { }"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectNormal, status); + + actual = ""; + status = summary + ": " + word + ": strict function name"; + try + { + eval("'use strict'; function " + word + "() { }"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + actual = ""; + status = summary + ": " + word + ": function name retroactively strict"; + try + { + eval("function " + word + "() { 'use strict'; }"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + // USE AS FUNCTION NAME IN FUNCTION EXPRESSION + + actual = ""; + status = summary + ": " + word + ": normal function expression name"; + try + { + eval("var s = (function " + word + "() { });"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectNormal, status); + + actual = ""; + status = summary + ": " + word + ": strict function expression name"; + try + { + eval("'use strict'; var s = (function " + word + "() { });"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); + + actual = ""; + status = summary + ": " + word + ": function expression name retroactively strict"; + try + { + eval("var s = (function " + word + "() { 'use strict'; });"); + actual = "no error"; + } + catch (e) + { + actual = e.name; + status += ", " + e.name + ": " + e.message + " "; + } + assertEq(actual, expectStrict, status); +} + +function testFutureReservedWord(word) +{ + testWord(word, "SyntaxError", "SyntaxError"); +} + +function testStrictFutureReservedWord(word) +{ + testWord(word, "no error", "SyntaxError"); +} + +futureReservedWords.forEach(testFutureReservedWord); +strictFutureReservedWords.forEach(testStrictFutureReservedWord); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/misc/getter-setter-outerize-this.js b/js/src/tests/ecma_5/misc/getter-setter-outerize-this.js new file mode 100644 index 000000000..46c61b889 --- /dev/null +++ b/js/src/tests/ecma_5/misc/getter-setter-outerize-this.js @@ -0,0 +1,21 @@ +if (typeof window === "undefined") { + // This test is meant to run in the browser, but it's easy to + // run it in the shell as well, even though it has no inner/outer + // windows. + window = this; +} + +var res = false; +Object.defineProperty(this, "foo", {configurable: true, + get: function() { return this === window; }, + set: function(v) { res = this === window; }}); + +(function() { + for (var i = 0; i < 3000; ++i) { + window.foo = i; + assertEq(res, true, "setter"); + assertEq(window.foo, true, "getter"); + } +})(); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/misc/global-numeric-properties.js b/js/src/tests/ecma_5/misc/global-numeric-properties.js new file mode 100644 index 000000000..352c0d3b7 --- /dev/null +++ b/js/src/tests/ecma_5/misc/global-numeric-properties.js @@ -0,0 +1,59 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 537863; +var summary = + 'undefined, Infinity, and NaN global properties should not be writable'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var desc, old, error; +var global = this; + +var names = ["NaN", "Infinity", "undefined"]; + +for (var i = 0; i < names.length; i++) +{ + var name = names[i]; + desc = Object.getOwnPropertyDescriptor(global, name); + assertEq(desc !== undefined, true, name + " should be present"); + assertEq(desc.enumerable, false, name + " should not be enumerable"); + assertEq(desc.configurable, false, name + " should not be configurable"); + assertEq(desc.writable, false, name + " should not be writable"); + + old = global[name]; + global[name] = 17; + assertEq(global[name], old, name + " changed on setting?"); + + error = "before"; + try + { + throw new TypeError("SpiderMonkey doesn't currently implement " + + "strict-mode throwing when setting a readonly " + + "property, not running this bit of test for now; " + + "see bug 537873"); + + (function() { "use strict"; global[name] = 42; error = "didn't throw"; })(); + } + catch (e) + { + if (e instanceof TypeError) + error = "typeerror"; + else + error = "bad exception: " + e; + } + assertEq(error, "typeerror", "wrong strict mode error setting " + name); +} + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/misc/line-paragraph-separator-parse-as-lineterminator.js b/js/src/tests/ecma_5/misc/line-paragraph-separator-parse-as-lineterminator.js new file mode 100644 index 000000000..8eef6d658 --- /dev/null +++ b/js/src/tests/ecma_5/misc/line-paragraph-separator-parse-as-lineterminator.js @@ -0,0 +1,51 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 663331; +var summary = + "U+2028 LINE SEPARATOR and U+2029 PARAGRAPH SEPARATOR must match the " + + "LineTerminator production when parsing code"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var hidden = 17; +var assigned; + +assigned = 42; +assertEq(eval('"use strict"; var hidden\u2028assigned = 5; typeof hidden'), + "undefined"); +assertEq(assigned, 5); + +assigned = 42; +function t1() +{ + assertEq(eval('var hidden\u2028assigned = 5; typeof hidden'), "undefined"); + assertEq(assigned, 5); +} +t1(); + +assigned = 42; +assertEq(eval('"use strict"; var hidden\u2029assigned = 5; typeof hidden'), + "undefined"); +assertEq(assigned, 5); + +assigned = 42; +function t2() +{ + assertEq(eval('var hidden\u2029assigned = 5; typeof hidden'), "undefined"); + assertEq(assigned, 5); +} +t2(); + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/misc/new-with-non-constructor.js b/js/src/tests/ecma_5/misc/new-with-non-constructor.js new file mode 100644 index 000000000..edec0e31d --- /dev/null +++ b/js/src/tests/ecma_5/misc/new-with-non-constructor.js @@ -0,0 +1,32 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function checkConstruct(thing) { + try { + new thing(); + assertEq(0, 1, "not reached " + thing); + } catch (e) { + assertEq(e.message.includes(" is not a constructor") || + e.message === "Function.prototype.toString called on incompatible object", true); + } +} + +var re = /aaa/ +checkConstruct(re); + +var boundFunctionPrototype = Function.prototype.bind(); +checkConstruct(boundFunctionPrototype); + +var boundBuiltin = Math.sin.bind(); +checkConstruct(boundBuiltin); + +var proxiedFunctionPrototype = new Proxy(Function.prototype, {}); +checkConstruct(proxiedFunctionPrototype); + +var proxiedBuiltin = new Proxy(parseInt, {}); +checkConstruct(proxiedBuiltin); + +if (typeof reportCompare == 'function') + reportCompare(0, 0, "ok"); diff --git a/js/src/tests/ecma_5/misc/redeclare-var-non-writable-property.js b/js/src/tests/ecma_5/misc/redeclare-var-non-writable-property.js new file mode 100644 index 000000000..f21289d85 --- /dev/null +++ b/js/src/tests/ecma_5/misc/redeclare-var-non-writable-property.js @@ -0,0 +1,24 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 539488; +var summary = + '|var| statements for existing, read-only/permanent properties should not ' + + 'be errors'; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var undefined; + +/******************************************************************************/ + +reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/misc/regexp-functions-with-undefined.js b/js/src/tests/ecma_5/misc/regexp-functions-with-undefined.js new file mode 100644 index 000000000..e55b2acd0 --- /dev/null +++ b/js/src/tests/ecma_5/misc/regexp-functions-with-undefined.js @@ -0,0 +1,43 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var a = /undefined/.exec(); +assertEq(a[0], 'undefined'); +assertEq(a.length, 1); + +a = /undefined/.exec(undefined); +assertEq(a[0], 'undefined'); +assertEq(a.length, 1); + +assertEq(/undefined/.test(), true); +assertEq(/undefined/.test(undefined), true); + +assertEq(/aaaa/.exec(), null); +assertEq(/aaaa/.exec(undefined), null); + +assertEq(/aaaa/.test(), false); +assertEq(/aaaa/.test(undefined), false); + + +assertEq("undefined".search(), 0); +assertEq("undefined".search(undefined), 0); +assertEq("aaaa".search(), 0); +assertEq("aaaa".search(undefined), 0); + +a = "undefined".match(); +assertEq(a[0], ""); +assertEq(a.length, 1); +a = "undefined".match(undefined); +assertEq(a[0], ""); +assertEq(a.length, 1); +a = "aaaa".match(); +assertEq(a[0], ""); +assertEq(a.length, 1); +a = "aaaa".match(undefined); +assertEq(a[0], ""); +assertEq(a.length, 1); + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/misc/regress-bug632003.js b/js/src/tests/ecma_5/misc/regress-bug632003.js new file mode 100644 index 000000000..c299f6dc4 --- /dev/null +++ b/js/src/tests/ecma_5/misc/regress-bug632003.js @@ -0,0 +1,63 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + */ +var BUGNUMBER = 632003; +var summary = 'The var statement should add the property to the global if it exists on the prototype'; + +// Define properties on Object.prototype with various attributes and +// value-getter-setter combinations then check that a var statement +// can always define a variable with the same name in the global object. + +if (typeof evaluate != "undefined") { + var global_case = def_all("global_case"); + evaluate(global_case.source); + check_values(this, global_case.var_list); +} + +var eval_case = def_all("eval_case"); +eval(eval_case.source); +check_values(this, eval_case.var_list); + +function def_all(prefix) +{ + var builder, index, i, j; + + builder = {source: "", var_list: []}; + index = 0; + for (i = 0; i <= 1; ++i) { + for (j = 0; j <= 1; ++j) { + def({value: index}); + def({value: index, writable: true}); + def({get: Function("return "+index+";")}); + def({set: function() { }}); + def({get: Function("return "+index+";"), set: function() { }}); + } + } + return builder; + + function def(descriptor_seed) + { + var var_name = prefix + index; + descriptor_seed.configurable = !!i; + descriptor_seed.enumerable = !!j; + Object.defineProperty(Object.prototype, var_name, descriptor_seed); + var var_value = index + 0.5; + builder.source += "var "+var_name+" = "+var_value+";\n"; + builder.var_list.push({name: var_name, expected_value: var_value}); + ++index; + } +} + +function check_values(obj, var_list) +{ + for (i = 0; i != var_list.length; ++i) { + var name = var_list[i].name; + assertEq(obj.hasOwnProperty(name), true); + assertEq(obj[name], var_list[i].expected_value); + } +} + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/misc/shell.js b/js/src/tests/ecma_5/misc/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/misc/shell.js diff --git a/js/src/tests/ecma_5/misc/syntax-error-end-of-for-head-part.js b/js/src/tests/ecma_5/misc/syntax-error-end-of-for-head-part.js new file mode 100644 index 000000000..f715b3e17 --- /dev/null +++ b/js/src/tests/ecma_5/misc/syntax-error-end-of-for-head-part.js @@ -0,0 +1,51 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 672854; +var summary = + "Syntax errors at the end of |for| statement header parts shouldn't cause " + + "crashes"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +function checkSyntaxError(str) +{ + try + { + var f = Function("for(w in\\"); + throw new Error("didn't throw, returned " + f); + } + catch (e) + { + assertEq(e instanceof SyntaxError, true, + "expected SyntaxError, got " + e); + } +} + +checkSyntaxError("for(var w in \\"); +checkSyntaxError("for(w in \\"); +checkSyntaxError("for(var w\\"); +checkSyntaxError("for(w\\"); +checkSyntaxError("for(var w;\\"); +checkSyntaxError("for(w;\\"); +checkSyntaxError("for(var w; w >\\"); +checkSyntaxError("for(w; w >\\"); +checkSyntaxError("for(var w; w > 3;\\"); +checkSyntaxError("for(w; w > 3;\\"); +checkSyntaxError("for(var w; w > 3; 5\\"); +checkSyntaxError("for(w; w > 3; 5\\"); +checkSyntaxError("for(var w; w > 3; 5foo"); +checkSyntaxError("for(w; w > 3; 5foo"); + +/******************************************************************************/ + +reportCompare(true, true); + +print("Tests complete!"); diff --git a/js/src/tests/ecma_5/misc/unicode-escaped-keyword.js b/js/src/tests/ecma_5/misc/unicode-escaped-keyword.js new file mode 100644 index 000000000..e17df168c --- /dev/null +++ b/js/src/tests/ecma_5/misc/unicode-escaped-keyword.js @@ -0,0 +1,22 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function throws(code) { + var type; + try { + eval(code); + } catch (ex) { + type = ex.name; + } + assertEq(type, 'SyntaxError'); +} + +var s = '\\u0073'; +throws('var thi' + s); +throws('switch (' + s + 'witch) {}') +throws('var ' + s + 'witch'); + +if (typeof reportCompare == 'function') + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/misc/unicode-identifier-1d17.js b/js/src/tests/ecma_5/misc/unicode-identifier-1d17.js new file mode 100644 index 000000000..ae763fdf2 --- /dev/null +++ b/js/src/tests/ecma_5/misc/unicode-identifier-1d17.js @@ -0,0 +1,16 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var o = {} +try { + eval('o.\\u1d17 = 42;'); +} +catch (e) { + assertEq('should not fail', true); +} +assertEq(o['\u1d17'], 42); + +if (typeof reportCompare == 'function') + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/misc/unicode-identifier-82f1.js b/js/src/tests/ecma_5/misc/unicode-identifier-82f1.js new file mode 100644 index 000000000..313832cc3 --- /dev/null +++ b/js/src/tests/ecma_5/misc/unicode-identifier-82f1.js @@ -0,0 +1,16 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var o = {} +try { + eval('o.\\u82f1 = 42;'); +} +catch (e) { + assertEq('should not fail', true); +} +assertEq(o['\u82f1'], 42); + +if (typeof reportCompare == 'function') + reportCompare(true, true); diff --git a/js/src/tests/ecma_5/misc/unnamed-function.js b/js/src/tests/ecma_5/misc/unnamed-function.js new file mode 100644 index 000000000..d004149c0 --- /dev/null +++ b/js/src/tests/ecma_5/misc/unnamed-function.js @@ -0,0 +1,45 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 376052; +var summary = 'Unnamed function expressions are forbidden in statement context'; + + +//----------------------------------------------------------------------------- +test(); +//----------------------------------------------------------------------------- + +function test() +{ + enterFunc ('test'); + printBugNumber(BUGNUMBER); + printStatus (summary); + + try + { + eval('(function () {1;})'); + reportCompare(true, true, + "unnamed function expression not in statement context works"); + } + catch(ex) + { + reportCompare(true, false, "threw exception: " + ex); + } + + try + { + eval('function () {1;}'); + reportCompare(true, false, "didn't throw an exception"); + } + catch(ex) + { + reportCompare(ex instanceof SyntaxError, true, + "unnamed function expression not in statement context " + + "should have been a SyntaxError"); + } + + exitFunc ('test'); +} diff --git a/js/src/tests/ecma_5/misc/unwrapped-no-such-method.js b/js/src/tests/ecma_5/misc/unwrapped-no-such-method.js new file mode 100644 index 000000000..d17406e7b --- /dev/null +++ b/js/src/tests/ecma_5/misc/unwrapped-no-such-method.js @@ -0,0 +1,13 @@ +// Our __noSuchMethod__ handling should only be called when |this| is an object. + +var x = ""; +// Reached from interpreter's JSOP_CALLPROP, and js::mjit::ic::CallProp. +try { x.i(); } catch (ex) { } + +// Reached from interpreter's JSOP_CALLELEM, and js::mjit::stubs::CallElem. +try { x[x](); } catch (ex) { } + +// Reached from js::mjit::stubs::CallProp: +try { true.i(); } catch(ex) { } + +reportCompare(true,true); diff --git a/js/src/tests/ecma_5/shell.js b/js/src/tests/ecma_5/shell.js new file mode 100644 index 000000000..2d5ccea3f --- /dev/null +++ b/js/src/tests/ecma_5/shell.js @@ -0,0 +1,154 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + + +/* + * Return true if both of these return true: + * - LENIENT_PRED applied to CODE + * - STRICT_PRED applied to CODE with a use strict directive added to the front + * + * Run STRICT_PRED first, for testing code that affects the global environment + * in loose mode, but fails in strict mode. + */ +function testLenientAndStrict(code, lenient_pred, strict_pred) { + return (strict_pred("'use strict'; " + code) && + lenient_pred(code)); +} + +/* + * completesNormally(CODE) returns true if evaluating CODE (as eval + * code) completes normally (rather than throwing an exception). + */ +function completesNormally(code) { + try { + eval(code); + return true; + } catch (exception) { + return false; + } +} + +/* + * returns(VALUE)(CODE) returns true if evaluating CODE (as eval code) + * completes normally (rather than throwing an exception), yielding a value + * strictly equal to VALUE. + */ +function returns(value) { + return function(code) { + try { + return eval(code) === value; + } catch (exception) { + return false; + } + } +} + +/* + * returnsCopyOf(VALUE)(CODE) returns true if evaluating CODE (as eval code) + * completes normally (rather than throwing an exception), yielding a value + * that is deepEqual to VALUE. + */ +function returnsCopyOf(value) { + return function(code) { + try { + return deepEqual(eval(code), value); + } catch (exception) { + return false; + } + } +} + +/* + * raisesException(EXCEPTION)(CODE) returns true if evaluating CODE (as + * eval code) throws an exception object that is an instance of EXCEPTION, + * and returns false if it throws any other error or evaluates + * successfully. For example: raises(TypeError)("0()") == true. + */ +function raisesException(exception) { + return function (code) { + try { + eval(code); + return false; + } catch (actual) { + return actual instanceof exception; + } + }; +}; + +/* + * parsesSuccessfully(CODE) returns true if CODE parses as function + * code without an error. + */ +function parsesSuccessfully(code) { + try { + Function(code); + return true; + } catch (exception) { + return false; + } +}; + +/* + * parseRaisesException(EXCEPTION)(CODE) returns true if parsing CODE + * as function code raises EXCEPTION. + */ +function parseRaisesException(exception) { + return function (code) { + try { + Function(code); + return false; + } catch (actual) { + return actual instanceof exception; + } + }; +}; + +/* + * Return the result of applying uneval to VAL, and replacing all runs + * of whitespace with a single horizontal space (poor man's + * tokenization). + */ +function clean_uneval(val) { + return uneval(val).replace(/\s+/g, ' '); +} + +/* + * Return true if A is equal to B, where equality on arrays and objects + * means that they have the same set of enumerable properties, the values + * of each property are deep_equal, and their 'length' properties are + * equal. Equality on other types is ==. + */ +function deepEqual(a, b) { + if (typeof a != typeof b) + return false; + + if (typeof a == 'object') { + var props = {}; + // For every property of a, does b have that property with an equal value? + for (var prop in a) { + if (!deepEqual(a[prop], b[prop])) + return false; + props[prop] = true; + } + // Are all of b's properties present on a? + for (var prop in b) + if (!props[prop]) + return false; + // length isn't enumerable, but we want to check it, too. + return a.length == b.length; + } + + if (a === b) { + // Distinguish 0 from -0, even though they are ===. + return a !== 0 || 1/a === 1/b; + } + + // Treat NaNs as equal, even though NaN !== NaN. + // NaNs are the only non-reflexive values, i.e., if a !== a, then a is a NaN. + // isNaN is broken: it converts its argument to number, so isNaN("foo") => true + return a !== a && b !== b; +} diff --git a/js/src/tests/ecma_5/strict/10.4.2.js b/js/src/tests/ecma_5/strict/10.4.2.js new file mode 100644 index 000000000..b68578d64 --- /dev/null +++ b/js/src/tests/ecma_5/strict/10.4.2.js @@ -0,0 +1,55 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* Direct calls to eval should inherit the strictness of the calling code. */ +assertEq(testLenientAndStrict("eval('010')", + completesNormally, + raisesException(SyntaxError)), + true); + +/* + * Directives in the eval code itself should always override a direct + * caller's strictness. + */ +assertEq(testLenientAndStrict("eval('\"use strict\"; 010')", + raisesException(SyntaxError), + raisesException(SyntaxError)), + true); + +/* Code passed to indirect calls to eval should never be strict. */ +assertEq(testLenientAndStrict("var evil=eval; evil('010')", + completesNormally, + completesNormally), + true); + +/* + * Code passed to the Function constructor never inherits the caller's + * strictness. + */ +assertEq(completesNormally("Function('010')"), + true); +assertEq(raisesException(SyntaxError)("Function('\"use strict\"; 010')"), + true); + +/* + * If 'eval' causes a frame's primitive |this| to become wrapped, the frame should see the same + * wrapper object as the eval code. + */ +var call_this, eval_this; +function f(code) { + /* + * At this point, a primitive |this| has not yet been wrapped. A + * reference to |this| from the eval call should wrap it, and the wrapper + * should be stored where the call frame can see it. + */ + eval(code); + call_this = this; +} +f.call(true, 'eval_this = this'); +assertEq(call_this, eval_this); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/10.4.3.js b/js/src/tests/ecma_5/strict/10.4.3.js new file mode 100644 index 000000000..b70a6a0d7 --- /dev/null +++ b/js/src/tests/ecma_5/strict/10.4.3.js @@ -0,0 +1,58 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var obj = {} + +function strict() { "use strict"; return this; } +assertEq(strict.call(""), ""); +assertEq(strict.call(true), true); +assertEq(strict.call(42), 42); +assertEq(strict.call(null), null); +assertEq(strict.call(undefined), undefined); +assertEq(strict.call(obj), obj); +assertEq(new strict() instanceof Object, true); + +/* + * The compiler internally converts x['foo'] to x.foo. Writing x[s] where + * s='foo' is enough to throw it off the scent for now. + */ +var strictString = 'strict'; + +Boolean.prototype.strict = strict; +assertEq(true.strict(), true); +assertEq(true[strictString](), true); + +Number.prototype.strict = strict; +assertEq((42).strict(), 42); +assertEq(42[strictString](), 42); + +String.prototype.strict = strict; +assertEq("".strict(), ""); +assertEq(""[strictString](), ""); + +function lenient() { return this; } +assertEq(lenient.call("") instanceof String, true); +assertEq(lenient.call(true) instanceof Boolean, true); +assertEq(lenient.call(42) instanceof Number, true); +assertEq(lenient.call(null), this); +assertEq(lenient.call(undefined), this); +assertEq(lenient.call(obj), obj); +assertEq(new lenient() instanceof Object, true); + +var lenientString = 'lenient'; + +Boolean.prototype.lenient = lenient; +assertEq(true.lenient() instanceof Boolean, true); +assertEq(true[lenientString]() instanceof Boolean, true); + +Number.prototype.lenient = lenient; +assertEq(42[lenientString]() instanceof Number, true); + +String.prototype.lenient = lenient; +assertEq(""[lenientString]() instanceof String, true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/10.6.js b/js/src/tests/ecma_5/strict/10.6.js new file mode 100644 index 000000000..3001d0ddc --- /dev/null +++ b/js/src/tests/ecma_5/strict/10.6.js @@ -0,0 +1,55 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function callFunctionBody(expr) { + return ( + '(function f() {\n' + + 'Object.defineProperties(arguments, {1: { writable: false },\n' + + ' 2: { configurable: false },\n' + + ' 3: { writable: false,\n' + + ' configurable: false }});\n' + + 'return (' + expr + ');\n' + + '})(0, 1, 2, 3);'); +} + +assertEq(testLenientAndStrict(callFunctionBody('arguments[0] = 42'), + returns(42), returns(42)), + true); + +assertEq(testLenientAndStrict(callFunctionBody('delete arguments[0]'), + returns(true), returns(true)), + true); + + +assertEq(testLenientAndStrict(callFunctionBody('arguments[1] = 42'), + returns(42), raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict(callFunctionBody('delete arguments[1]'), + returns(true), returns(true)), + true); + + +assertEq(testLenientAndStrict(callFunctionBody('arguments[2] = 42'), + returns(42), returns(42)), + true); + +assertEq(testLenientAndStrict(callFunctionBody('delete arguments[2]'), + returns(false), raisesException(TypeError)), + true); + + +assertEq(testLenientAndStrict(callFunctionBody('arguments[3] = 42'), + returns(42), raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict(callFunctionBody('delete arguments[3]'), + returns(false), raisesException(TypeError)), + true); + + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/11.1.5.js b/js/src/tests/ecma_5/strict/11.1.5.js new file mode 100644 index 000000000..7ba12fa98 --- /dev/null +++ b/js/src/tests/ecma_5/strict/11.1.5.js @@ -0,0 +1,171 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* Simple identifier labels. */ +assertEq(testLenientAndStrict('({x:1, x:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({x:1, y:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({x:1, y:1, x:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +/* Property names can be written as strings, too. */ +assertEq(testLenientAndStrict('({x:1, "x":1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({"x":1, x:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({"x":1, "x":1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +/* Numeric property names. */ +assertEq(testLenientAndStrict('({1.5:1, 1.5:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({1.5:1, 15e-1:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({6.02214179e23:1, 6.02214179e23:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({6.02214179e23:1, 3.1415926535:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({ 1: 1, "1": 2 })', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({ "1": 1, 1: 2 })', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({ 2.5: 1, "2.5": 2 })', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({ "2.5": 1, 2.5: 2 })', + parsesSuccessfully, + parsesSuccessfully), + true); + +/* Many properties, to exercise JSAtomList's hash-table variant. */ +assertEq(testLenientAndStrict('({a:1, b:1, c:1, d:1, e:1, f:1, g:1, h:1, i:1, j:1, k:1, l:1, m:1, n:1, o:1, p:1, q:1, r:1, s:1, t:1, u:1, v:1, w:1, x:1, y:1, z:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({a:1, b:1, c:1, d:1, e:1, f:1, g:1, h:1, i:1, j:1, k:1, l:1, m:1, n:1, o:1, p:1, q:1, r:1, s:1, t:1, u:1, v:1, w:1, x:1, y:1, a:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +/* + * Getters, setters, and value properties should conflict only when + * appropriate. + */ +assertEq(testLenientAndStrict('({get x() {}, x:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({x:1, get x() {}})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({set x(q) {}, x:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({x:1, set x(q) {}})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({1:1, set 1(q) {}})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({set 1(q) {}, 1:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({"1":1, set 1(q) {}})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({set 1(q) {}, "1":1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({get x() {}, set x(q) {}})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({set x(q) {}, get x() {}})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({get x() {}, set x(q) {}, x:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({set x(q) {}, get x() {}, x:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({get x() {}, get x() {}})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({set x(q) {}, set x(q) {}})', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('({get x() {}, set x(q) {}, y:1})', + parsesSuccessfully, + parsesSuccessfully), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/11.13.1.js b/js/src/tests/ecma_5/strict/11.13.1.js new file mode 100644 index 000000000..d3d3e6989 --- /dev/null +++ b/js/src/tests/ecma_5/strict/11.13.1.js @@ -0,0 +1,29 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* + * Simple assignment expressions in strict mode code must not be + * assignments to 'eval' or 'arguments'. + */ +assertEq(testLenientAndStrict('arguments=1', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('eval=1', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(arguments)=1', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(eval)=1', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/11.13.2.js b/js/src/tests/ecma_5/strict/11.13.2.js new file mode 100644 index 000000000..678f0b614 --- /dev/null +++ b/js/src/tests/ecma_5/strict/11.13.2.js @@ -0,0 +1,29 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* + * Compound assignment expressions in strict mode code must not be + * assignments to 'eval' or 'arguments'. + */ +assertEq(testLenientAndStrict('arguments+=1', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('eval+=1', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(arguments)+=1', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(eval)+=1', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/11.3.1.js b/js/src/tests/ecma_5/strict/11.3.1.js new file mode 100644 index 000000000..159f78583 --- /dev/null +++ b/js/src/tests/ecma_5/strict/11.3.1.js @@ -0,0 +1,29 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* + * Postfix increment expressions must not have 'eval' or 'arguments' + * as their operands. + */ +assertEq(testLenientAndStrict('arguments++', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('eval++', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(arguments)++', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(eval)++', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/11.3.2.js b/js/src/tests/ecma_5/strict/11.3.2.js new file mode 100644 index 000000000..c8225e129 --- /dev/null +++ b/js/src/tests/ecma_5/strict/11.3.2.js @@ -0,0 +1,29 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* + * Postfix decrement expressions must not have 'eval' or 'arguments' + * as their operands. + */ +assertEq(testLenientAndStrict('arguments--', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('eval--', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(arguments)--', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(eval)--', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/11.4.1.js b/js/src/tests/ecma_5/strict/11.4.1.js new file mode 100644 index 000000000..1125962a3 --- /dev/null +++ b/js/src/tests/ecma_5/strict/11.4.1.js @@ -0,0 +1,45 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* Deleting an identifier is a syntax error in strict mode code only. */ +assertEq(testLenientAndStrict('delete x;', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +/* + * A reference expression surrounded by parens is itself a reference + * expression. + */ +assertEq(testLenientAndStrict('delete (x);', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +/* Deleting other sorts of expressions are not syntax errors in either mode. */ +assertEq(testLenientAndStrict('delete x.y;', + parsesSuccessfully, + parsesSuccessfully), + true); +assertEq(testLenientAndStrict('delete Object();', + returns(true), + returns(true)), + true); + +/* Functions should inherit the surrounding code's strictness. */ +assertEq(testLenientAndStrict('function f() { delete x; }', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +/* Local directives override the surrounding code's strictness. */ +assertEq(testLenientAndStrict('function f() { "use strict"; delete x; }', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/11.4.4.js b/js/src/tests/ecma_5/strict/11.4.4.js new file mode 100644 index 000000000..bd22b54f5 --- /dev/null +++ b/js/src/tests/ecma_5/strict/11.4.4.js @@ -0,0 +1,29 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* + * Prefix increment expressions must not have 'eval' or 'arguments' as + * their operands. + */ +assertEq(testLenientAndStrict('++arguments', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('++eval', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('++(arguments)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('++(eval)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/11.4.5.js b/js/src/tests/ecma_5/strict/11.4.5.js new file mode 100644 index 000000000..754b8f96e --- /dev/null +++ b/js/src/tests/ecma_5/strict/11.4.5.js @@ -0,0 +1,29 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* + * Prefix decrement expressions must not have 'eval' or 'arguments' as + * their operands. + */ +assertEq(testLenientAndStrict('--arguments', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('--eval', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('--(arguments)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('--(eval)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/12.10.1.js b/js/src/tests/ecma_5/strict/12.10.1.js new file mode 100644 index 000000000..f45c77ad2 --- /dev/null +++ b/js/src/tests/ecma_5/strict/12.10.1.js @@ -0,0 +1,30 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* + * 'with' statements are forbidden in strict top-level code. This is + * eval code, but that's close enough. + */ +assertEq(testLenientAndStrict('with (1) {}', + completesNormally, + raisesException(SyntaxError)), + true); + +/* 'with' statements are forbidden in strict function code. */ +assertEq(testLenientAndStrict('function f() { "use strict"; with (1) {} }', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); + +/* + * A use strict directive in a function mustn't affect the strictness + * of subsequent code. + */ +assertEq(parsesSuccessfully('function f() { "use strict"; }; with (1) {}'), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/12.14.1.js b/js/src/tests/ecma_5/strict/12.14.1.js new file mode 100644 index 000000000..e7f9b303b --- /dev/null +++ b/js/src/tests/ecma_5/strict/12.14.1.js @@ -0,0 +1,37 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* + * In strict mode, the identifier bound by a 'catch' clause may not + * be 'eval' or 'arguments'. + */ +assertEq(testLenientAndStrict('try{}catch(eval){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('try{}catch([eval]){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('try{}catch({x:eval}){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('try{}catch(arguments){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('try{}catch([arguments]){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('try{}catch({x:arguments}){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/12.2.1.js b/js/src/tests/ecma_5/strict/12.2.1.js new file mode 100644 index 000000000..ba348cf43 --- /dev/null +++ b/js/src/tests/ecma_5/strict/12.2.1.js @@ -0,0 +1,25 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(testLenientAndStrict('var eval;', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('var x,eval;', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('var arguments;', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('var x,arguments;', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/13.1.js b/js/src/tests/ecma_5/strict/13.1.js new file mode 100644 index 000000000..c5f2acb91 --- /dev/null +++ b/js/src/tests/ecma_5/strict/13.1.js @@ -0,0 +1,345 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* + * In strict mode, it is a syntax error for an identifier to appear + * more than once in a function's argument list. + */ + +/* + * The parameters of ordinary function definitions should not contain + * duplicate identifiers. + */ +assertEq(testLenientAndStrict('function f(x,y) {}', + parsesSuccessfully, + parsesSuccessfully), + true); +assertEq(testLenientAndStrict('function f(x,x) {}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f(x,y,z,y) {}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +/* Exercise the hashed local name map case. */ +assertEq(testLenientAndStrict('function f(a,b,c,d,e,f,g,h,d) {}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +/* + * SpiderMonkey has always treated duplicates in destructuring + * patterns as an error. Strict mode should not affect this. + */ +assertEq(testLenientAndStrict('function f([x,y]) {}', + parsesSuccessfully, + parsesSuccessfully), + true); +assertEq(testLenientAndStrict('function f([x,x]){}', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f(x,[x]){}', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); + +/* + * Strict rules apply to the parameters if the function's body is + * strict. + */ +assertEq(testLenientAndStrict('function f(x,x) { "use strict" };', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); + +/* + * Calls to the function constructor should not be affected by the + * strictness of the calling code, but should be affected by the + * strictness of the function body. + */ +assertEq(testLenientAndStrict('Function("x","x","")', + completesNormally, + completesNormally), + true); +assertEq(testLenientAndStrict('Function("x","y","")', + completesNormally, + completesNormally), + true); +assertEq(testLenientAndStrict('Function("x","x","\'use strict\'")', + raisesException(SyntaxError), + raisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('Function("x","y","\'use strict\'")', + completesNormally, + completesNormally), + true); + + +/* + * The parameter lists of function expressions should not contain + * duplicate identifiers. + */ +assertEq(testLenientAndStrict('(function (x,x) 2)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function (x,y) 2)', + parsesSuccessfully, + parsesSuccessfully), + true); + +/* + * All permutations of: + * - For the two magic identifiers 'arguments' or 'eval' + * - For function definitions, function expressions, expression closures, + * and getter and setter property definitions, + * - For forms that inherit their context's strictness, and forms that + * include their own strictness directives, + * - For ordinary parameters, array destructuring parameters, and + * object destructuring parameters, + * - the magic identifiers may be used to name such parameters + * in lenient code, but not in strict code + * - the magic identifiers may be used as function names in lenient code, + * but not in strict code + */ +assertEq(testLenientAndStrict('function f(eval){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f([eval]){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f({x:eval}){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function eval(){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f(eval){"use strict";}', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f([eval]){"use strict";}', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f({x:eval}){"use strict";}', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function eval(){"use strict";}', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f(eval){})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f([eval]){})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f({x:eval}){})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function eval(){})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f(eval){"use strict";})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f([eval]){"use strict";})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f({x:eval}){"use strict";})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function eval(){"use strict";})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f(eval) 2)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f([eval]) 2)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f({x:eval}) 2)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function eval() 2)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x(eval){}})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x([eval]){}})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x({x:eval}){}})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x(eval){"use strict";}})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x([eval]){"use strict";}})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x({x:eval}){"use strict";}})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f(arguments){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f([arguments]){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f({x:arguments}){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function arguments(){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f(arguments){"use strict";}', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f([arguments]){"use strict";}', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function f({x:arguments}){"use strict";}', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('function arguments(){"use strict";}', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f(arguments){})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f([arguments]){})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f({x:arguments}){})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function arguments(){})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f(arguments){"use strict";})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f([arguments]){"use strict";})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f({x:arguments}){"use strict";})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function arguments(){"use strict";})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f(arguments) 2)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f([arguments]) 2)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function f({x:arguments}) 2)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('(function arguments() 2)', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x(arguments){}})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x([arguments]){}})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x({x:arguments}){}})', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x(arguments){"use strict";}})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x([arguments]){"use strict";}})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('({set x({x:arguments}){"use strict";}})', + parseRaisesException(SyntaxError), + parseRaisesException(SyntaxError)), + true); + +/* + * Functions produced using the Function constructor may not use + * 'eval' or 'arguments' as a parameter name if their body is strict + * mode code. The strictness of the calling code does not affect the + * constraints applied to the parameters. + */ +assertEq(testLenientAndStrict('Function("eval","")', + completesNormally, + completesNormally), + true); +assertEq(testLenientAndStrict('Function("eval","\'use strict\';")', + raisesException(SyntaxError), + raisesException(SyntaxError)), + true); +assertEq(testLenientAndStrict('Function("arguments","")', + completesNormally, + completesNormally), + true); +assertEq(testLenientAndStrict('Function("arguments","\'use strict\';")', + raisesException(SyntaxError), + raisesException(SyntaxError)), + true); + + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/15.10.7.js b/js/src/tests/ecma_5/strict/15.10.7.js new file mode 100644 index 000000000..5f1d4fa9f --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.10.7.js @@ -0,0 +1,15 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(testLenientAndStrict('var r = /foo/; r.lastIndex = 42; r.lastIndex', + returns(42), returns(42)), + true); +assertEq(testLenientAndStrict('var r = /foo/; delete r.lastIndex', + returns(false), raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/15.3.4.5.js b/js/src/tests/ecma_5/strict/15.3.4.5.js new file mode 100644 index 000000000..bc93bb67a --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.3.4.5.js @@ -0,0 +1,26 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function strict() { 'use strict'; return this; } +function lenient() { return this; } +var obj = {}; + +assertEq(strict.bind(true)(), true); +assertEq(strict.bind(42)(), 42); +assertEq(strict.bind("")(), ""); +assertEq(strict.bind(null)(), null); +assertEq(strict.bind(undefined)(), undefined); +assertEq(strict.bind(obj)(), obj); + +assertEq(lenient.bind(true)() instanceof Boolean, true); +assertEq(lenient.bind(42)() instanceof Number, true); +assertEq(lenient.bind("")() instanceof String, true); +assertEq(lenient.bind(null)(), this); +assertEq(lenient.bind(undefined)(), this); +assertEq(lenient.bind(obj)(), obj); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/15.3.5.1.js b/js/src/tests/ecma_5/strict/15.3.5.1.js new file mode 100644 index 000000000..163928ee4 --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.3.5.1.js @@ -0,0 +1,16 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function fn() { + return function(a, b, c) { }; +} + +assertEq(testLenientAndStrict('var f = fn(); f.length = 1; f.length', + returns(3), raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/15.3.5.2.js b/js/src/tests/ecma_5/strict/15.3.5.2.js new file mode 100644 index 000000000..3106a0985 --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.3.5.2.js @@ -0,0 +1,16 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function fn() { + return function(a, b, c) { }; +} + +assertEq(testLenientAndStrict('var f = fn(); delete f.prototype', + returns(false), raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/15.4.4.12.js b/js/src/tests/ecma_5/strict/15.4.4.12.js new file mode 100644 index 000000000..5b98c8a71 --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.4.4.12.js @@ -0,0 +1,50 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function arr() { + return Object.defineProperty([1, 2, 3], 0, {writable: false}); +} + +function obj() { + var o = {0: 1, 1: 2, 2: 3, length: 3}; + Object.defineProperty(o, 0, {writable: false}); + return o; +} + +assertEq(testLenientAndStrict('var a = arr(); [a.splice(0, 1), a]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var o = obj(); [Array.prototype.splice.call(o, 0, 1), o]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +function agap() { + var a = [1, 2, , 4]; + Object.defineProperty(a, 1, {configurable: false}); + return a; +} + +function ogap() { + var o = {0: 1, 1: 2, /* no 2 */ 3: 4, length: 4}; + Object.defineProperty(o, 1, {configurable: false}); + return o; +} + +assertEq(testLenientAndStrict('var a = agap(); [a.splice(0, 1), a]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var o = ogap(); [Array.prototype.splice.call(o, 0, 1), o]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/15.4.4.13.js b/js/src/tests/ecma_5/strict/15.4.4.13.js new file mode 100644 index 000000000..05d757aea --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.4.4.13.js @@ -0,0 +1,50 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function arr() { + return Object.defineProperty([1, 2, 3], 0, {writable: false}); +} + +function obj() { + var o = {0: 1, 1: 2, 2: 3, length: 3}; + Object.defineProperty(o, 0, {writable: false}); + return o; +} + +assertEq(testLenientAndStrict('var a = arr(); [a.unshift(40, 50), a]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var o = obj(); [Array.prototype.unshift.call(o, 40, 50), o]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +function agap() { + var a = [1, 2, , 4]; + Object.defineProperty(a, 3, {configurable: false}); + return a; +} + +function ogap() { + var o = {0: 1, 1: 2, /* no 2 */ 3: 4, length: 4}; + Object.defineProperty(o, 3, {configurable: false}); + return o; +} + +assertEq(testLenientAndStrict('var a = agap(); [a.unshift(9), a]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var o = ogap(); [Array.prototype.unshift.call(o, 9), o]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/15.4.4.6.js b/js/src/tests/ecma_5/strict/15.4.4.6.js new file mode 100644 index 000000000..2625f1ba9 --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.4.4.6.js @@ -0,0 +1,28 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function arr() { + return Object.defineProperty([1, 2, 3], 2, {configurable: false}); +} + +function obj() { + var o = {0: 1, 1: 2, 2: 3, length: 3}; + Object.defineProperty(o, 2, {configurable: false}); + return o; +} + +assertEq(testLenientAndStrict('var a = arr(); [a.pop(), a]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var o = obj(); [Array.prototype.pop.call(o), o]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/15.4.4.8.js b/js/src/tests/ecma_5/strict/15.4.4.8.js new file mode 100644 index 000000000..676871405 --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.4.4.8.js @@ -0,0 +1,50 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function arr() { + return Object.defineProperty([1, 2, 3], 0, {writable: false}); +} + +function obj() { + var o = {0: 1, 1: 2, 2: 3, length: 3}; + Object.defineProperty(o, 0, {writable: false}); + return o; +} + +assertEq(testLenientAndStrict('var a = arr(); a.reverse()', + raisesException(TypeError), + raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var o = obj(); Array.prototype.reverse.call(o)', + raisesException(TypeError), + raisesException(TypeError)), + true); + +function agap() { + var a = [1, 2, , 4]; + Object.defineProperty(a, 1, {configurable: false}); + return a; +} + +function ogap() { + var o = {0: 1, 1: 2, /* no 2 */ 3: 4, length: 4}; + Object.defineProperty(o, 1, {configurable: false}); + return o; +} + +assertEq(testLenientAndStrict('var a = agap(); a.reverse()', + raisesException(TypeError), + raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var o = ogap(); Array.prototype.reverse.call(o)', + raisesException(TypeError), + raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/15.4.4.9.js b/js/src/tests/ecma_5/strict/15.4.4.9.js new file mode 100644 index 000000000..4d08fe98f --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.4.4.9.js @@ -0,0 +1,50 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function arr() { + return Object.defineProperty([10, 20, 30], 0, {writable: false}); +} + +function obj() { + var o = {0: 10, 1: 20, 2: 30, length: 3}; + Object.defineProperty(o, 0, {writable: false}); + return o; +} + +assertEq(testLenientAndStrict('var a = arr(); [a.shift(), a]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var o = obj(); [Array.prototype.shift.call(o), o]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +function agap() { + var a = [1, 2, , 4]; + Object.defineProperty(a, 1, {configurable: false}); + return a; +} + +function ogap() { + var o = {0: 1, 1: 2, /* no 2 */ 3: 4, length: 4}; + Object.defineProperty(o, 1, {configurable: false}); + return o; +} + +assertEq(testLenientAndStrict('var a = agap(); [a.shift(), a]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var o = ogap(); [Array.prototype.shift.call(o), o]', + raisesException(TypeError), + raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/15.4.5.1.js b/js/src/tests/ecma_5/strict/15.4.5.1.js new file mode 100644 index 000000000..3fb04ebd6 --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.4.5.1.js @@ -0,0 +1,84 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var out = {}; + +function arr() { + return Object.defineProperty([1, 2, 3, 4], 2, {configurable: false}); +} + +function nonStrict1(out) +{ + var a = out.array = arr(); + a.length = 2; +} + +function strict1(out) +{ + "use strict"; + var a = out.array = arr(); + a.length = 2; + return a; +} + +out.array = null; +nonStrict1(out); +assertEq(deepEqual(out.array, [1, 2, 3]), true); + +out.array = null; +try +{ + strict1(out); + throw "no error"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, "expected TypeError, got " + e); +} +assertEq(deepEqual(out.array, [1, 2, 3]), true); + +// Internally, SpiderMonkey has two representations for arrays: +// fast-but-inflexible, and slow-but-flexible. Adding a non-index property +// to an array turns it into the latter. We should test on both kinds. +function addx(obj) { + obj.x = 5; + return obj; +} + +function nonStrict2(out) +{ + var a = out.array = addx(arr()); + a.length = 2; +} + +function strict2(out) +{ + "use strict"; + var a = out.array = addx(arr()); + a.length = 2; +} + +out.array = null; +nonStrict2(out); +assertEq(deepEqual(out.array, addx([1, 2, 3])), true); + +out.array = null; +try +{ + strict2(out); + throw "no error"; +} +catch (e) +{ + assertEq(e instanceof TypeError, true, "expected TypeError, got " + e); +} +assertEq(deepEqual(out.array, addx([1, 2, 3])), true); + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("Tests complete"); diff --git a/js/src/tests/ecma_5/strict/15.5.5.1.js b/js/src/tests/ecma_5/strict/15.5.5.1.js new file mode 100644 index 000000000..f07828eb5 --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.5.5.1.js @@ -0,0 +1,26 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function str() { + return new String("foo"); +} + +assertEq(testLenientAndStrict('var s = str(); s.length = 1; s.length', + returns(3), raisesException(TypeError)), + true); +assertEq(testLenientAndStrict('var s = str(); delete s.length', + returns(false), raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('"foo".length = 1', + returns(1), raisesException(TypeError)), + true); +assertEq(testLenientAndStrict('delete "foo".length', + returns(false), raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/15.5.5.2.js b/js/src/tests/ecma_5/strict/15.5.5.2.js new file mode 100644 index 000000000..fa2c9231f --- /dev/null +++ b/js/src/tests/ecma_5/strict/15.5.5.2.js @@ -0,0 +1,15 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(testLenientAndStrict('"foo"[0] = 1', + returns(1), raisesException(TypeError)), + true); +assertEq(testLenientAndStrict('delete "foo"[0]', + returns(false), raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/8.12.5.js b/js/src/tests/ecma_5/strict/8.12.5.js new file mode 100644 index 000000000..c351c19c3 --- /dev/null +++ b/js/src/tests/ecma_5/strict/8.12.5.js @@ -0,0 +1,82 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function obj() { + var o = {all: 1, nowrite: 1, noconfig: 1, noble: 1}; + Object.defineProperty(o, 'nowrite', {writable: false}); + Object.defineProperty(o, 'noconfig', {configurable: false}); + Object.defineProperty(o, 'noble', {writable: false, configurable: false}); + return o; +} + +assertEq(testLenientAndStrict('var o = obj(); o.all = 2; o.all', + returns(2), returns(2)), + true); + +assertEq(testLenientAndStrict('var o = obj(); o.nowrite = 2; o.nowrite', + returns(1), raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var o = obj(); o.noconfig = 2; o.noconfig', + returns(2), returns(2)), + true); + +assertEq(testLenientAndStrict('var o = obj(); o.noble = 2; o.noble', + returns(1), raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('obj().nowrite++', + returns(1), raisesException(TypeError)), + true); +assertEq(testLenientAndStrict('++obj().nowrite', + returns(2), raisesException(TypeError)), + true); +assertEq(testLenientAndStrict('obj().nowrite--', + returns(1), raisesException(TypeError)), + true); +assertEq(testLenientAndStrict('--obj().nowrite', + returns(0), raisesException(TypeError)), + true); + + +function arr() { + return Object.defineProperties([1, 1, 1, 1], + { 1: { writable: false }, + 2: { configurable: false }, + 3: { writable: false, configurable: false }}); +} + +assertEq(testLenientAndStrict('var a = arr(); a[0] = 2; a[0]', + returns(2), returns(2)), + true); + +assertEq(testLenientAndStrict('var a = arr(); a[1] = 2; a[1]', + returns(1), raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var a = arr(); a[2] = 2; a[2]', + returns(2), returns(2)), + true); + +assertEq(testLenientAndStrict('var a = arr(); a[3] = 2; a[3]', + returns(1), raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('arr()[1]++', + returns(1), raisesException(TypeError)), + true); +assertEq(testLenientAndStrict('++arr()[1]', + returns(2), raisesException(TypeError)), + true); +assertEq(testLenientAndStrict('arr()[1]--', + returns(1), raisesException(TypeError)), + true); +assertEq(testLenientAndStrict('--arr()[1]', + returns(0), raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/8.12.7-2.js b/js/src/tests/ecma_5/strict/8.12.7-2.js new file mode 100644 index 000000000..2fd4dbae3 --- /dev/null +++ b/js/src/tests/ecma_5/strict/8.12.7-2.js @@ -0,0 +1,21 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +// delete o[p] only performs ToString(p) once, even if there's a strict error. +var hits = 0; +var p = { + toString: function () { + hits++; + return "noconfig"; + } +}; +assertEq(testLenientAndStrict('var o = Object.freeze({noconfig: "ow"}); delete o[p]', + returns(false), raisesException(TypeError)), + true); +assertEq(hits, 2); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/8.12.7.js b/js/src/tests/ecma_5/strict/8.12.7.js new file mode 100644 index 000000000..518adc799 --- /dev/null +++ b/js/src/tests/ecma_5/strict/8.12.7.js @@ -0,0 +1,32 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function setup() { + var o = {all: 1, nowrite: 1, noconfig: 1, noble: 1}; + Object.defineProperty(o, 'nowrite', {writable: false}); + Object.defineProperty(o, 'noconfig', {configurable: false}); + Object.defineProperty(o, 'noble', {writable: false, configurable: false}); + return o; +} + +assertEq(testLenientAndStrict('var o = setup(); delete o.all', + returns(true), returns(true)), + true); + +assertEq(testLenientAndStrict('var o = setup(); delete o.nowrite', + returns(true), returns(true)), + true); + +assertEq(testLenientAndStrict('var o = setup(); delete o.noconfig', + returns(false), raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var o = setup(); delete o.noble', + returns(false), raisesException(TypeError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/8.7.2.js b/js/src/tests/ecma_5/strict/8.7.2.js new file mode 100644 index 000000000..76b474cd7 --- /dev/null +++ b/js/src/tests/ecma_5/strict/8.7.2.js @@ -0,0 +1,56 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* + * These tests depend on the fact that testLenientAndStrict tries the + * strict case first; otherwise, the non-strict evaluation creates the + * variable. Ugh. Ideally, we would use evalcx, but that's not + * available in the browser. + */ + +/* Assigning to an undeclared variable should fail in strict mode. */ +assertEq(testLenientAndStrict('undeclared=1', + completesNormally, + raisesException(ReferenceError)), + true); + +/* + * Assigning to a var-declared variable should be okay in strict and + * lenient modes. + */ +assertEq(testLenientAndStrict('var var_declared; var_declared=1', + completesNormally, + completesNormally), + true); + +/* + * We mustn't report errors until the code is actually run; the variable + * could be created in the mean time. + */ +assertEq(testLenientAndStrict('undeclared_at_compiletime=1', + parsesSuccessfully, + parsesSuccessfully), + true); + +function obj() { + var o = { x: 1, y: 1 }; + Object.defineProperty(o, 'x', { writable: false }); + return o; +} + +/* Put EXPR in a strict mode code context with 'with' bindings in scope. */ +function in_strict_with(expr) { + return "with(obj()) { (function () { 'use strict'; " + expr + " })(); }"; +} + +assertEq(raisesException(TypeError)(in_strict_with('x = 2; y = 2;')), true); +assertEq(raisesException(TypeError)(in_strict_with('x++;')), true); +assertEq(raisesException(TypeError)(in_strict_with('++x;')), true); +assertEq(raisesException(TypeError)(in_strict_with('x--;')), true); +assertEq(raisesException(TypeError)(in_strict_with('--x;')), true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/B.1.1.js b/js/src/tests/ecma_5/strict/B.1.1.js new file mode 100644 index 000000000..cf36711dc --- /dev/null +++ b/js/src/tests/ecma_5/strict/B.1.1.js @@ -0,0 +1,31 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* Octal integer literal at top level. */ +assertEq(testLenientAndStrict('010', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +/* Octal integer literal in strict function body */ +assertEq(parseRaisesException(SyntaxError) + ('function f() { "use strict"; 010; }'), + true); + + +/* + * Octal integer literal after strict function body (restoration of + * scanner state) + */ +assertEq(parsesSuccessfully('function f() { "use strict"; }; 010'), + true); + +/* Octal integer literal in function body */ +assertEq(parsesSuccessfully('function f() { 010; }'), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/B.1.2.js b/js/src/tests/ecma_5/strict/B.1.2.js new file mode 100644 index 000000000..b44108fe1 --- /dev/null +++ b/js/src/tests/ecma_5/strict/B.1.2.js @@ -0,0 +1,38 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(testLenientAndStrict('"\\010"', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +assertEq(testLenientAndStrict('"\\00"', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +assertEq(testLenientAndStrict('"\\1"', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +assertEq(testLenientAndStrict('"\\08"', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +assertEq(testLenientAndStrict('"\\0"', + parsesSuccessfully, + parsesSuccessfully), + true); + +assertEq(testLenientAndStrict('"\\0x"', + parsesSuccessfully, + parsesSuccessfully), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/assign-to-callee-name.js b/js/src/tests/ecma_5/strict/assign-to-callee-name.js new file mode 100644 index 000000000..3c2efba2e --- /dev/null +++ b/js/src/tests/ecma_5/strict/assign-to-callee-name.js @@ -0,0 +1,42 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'assign-to-callee-name.js'; +var BUGNUMBER = 610350; +var summary = + "Assigning to a function expression's name within that function should " + + "throw a TypeError in strict mode code"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +var f = function assignSelfStrict() { "use strict"; assignSelfStrict = 12; }; + +try +{ + var r = f(); + throw new Error("should have thrown a TypeError, returned " + r); +} +catch (e) +{ + assertEq(e instanceof TypeError, true, + "didn't throw a TypeError: " + e); +} + +var assignSelf = 42; +var f2 = function assignSelf() { assignSelf = 12; }; + +f2(); // shouldn't throw, does nothing +assertEq(assignSelf, 42); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/strict/browser.js b/js/src/tests/ecma_5/strict/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/strict/browser.js diff --git a/js/src/tests/ecma_5/strict/directive-prologue-01.js b/js/src/tests/ecma_5/strict/directive-prologue-01.js new file mode 100644 index 000000000..681fa9293 --- /dev/null +++ b/js/src/tests/ecma_5/strict/directive-prologue-01.js @@ -0,0 +1,78 @@ +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 601262; +var summary = + "A string literal containing an octal escape before a strict mode " + + "directive should be a syntax error"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +try +{ + eval(" '\\145'; 'use strict'; "); + throw new Error("no error thrown for eval"); +} +catch (e) +{ + assertEq(e instanceof SyntaxError, true, + "wrong error for octal-escape before strict directive in eval"); +} + +try +{ + Function(" '\\145'; 'use strict'; "); + throw new Error("no error thrown for Function"); +} +catch (e) +{ + assertEq(e instanceof SyntaxError, true, + "wrong error for octal-escape before strict directive in Function"); +} + +try +{ + eval(" function f(){ '\\145'; 'use strict'; } "); + throw new Error("no error thrown for eval of function"); +} +catch (e) +{ + assertEq(e instanceof SyntaxError, true, + "wrong error for octal-escape before strict directive in eval of " + + "function"); +} + +try +{ + Function(" function f(){ '\\145'; 'use strict'; } "); + throw new Error("no error thrown for eval of function"); +} +catch (e) +{ + assertEq(e instanceof SyntaxError, true, + "wrong error for octal-escape before strict directive in eval of " + + "function"); +} + +eval("function notAnError1() { 5; '\\145'; function g() { 'use strict'; } }"); + +Function("function notAnError2() { 5; '\\145'; function g() { 'use strict'; } }"); + +function notAnError3() +{ + 5; + "\145"; + function g() { "use strict"; } +} + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/strict/eval-variable-environment.js b/js/src/tests/ecma_5/strict/eval-variable-environment.js new file mode 100644 index 000000000..a10f43f43 --- /dev/null +++ b/js/src/tests/ecma_5/strict/eval-variable-environment.js @@ -0,0 +1,67 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var code; + +code = + "eval('var x = 2; typeof x');"; +assertEq(testLenientAndStrict(code, returns("number"), returns("number")), + true); + +code = + "eval('\"use strict\"; var x = 2; typeof x');"; +assertEq(testLenientAndStrict(code, returns("number"), returns("number")), + true); + +code = + "eval('var x = 2;'); " + + "typeof x"; +assertEq(testLenientAndStrict(code, returns("number"), returns("undefined")), + true); + +code = + "eval('\"use strict\"; var x = 2;'); " + + "typeof x"; +assertEq(testLenientAndStrict(code, returns("undefined"), returns("undefined")), + true); + +code = + "eval('\"use strict\"; var x = 2; typeof x'); " + + "typeof x"; +assertEq(testLenientAndStrict(code, returns("undefined"), returns("undefined")), + true); + +code = + "function test() " + + "{ " + + " eval('var x = 2;'); " + + " return typeof x; " + + "} " + + "test();"; +assertEq(testLenientAndStrict(code, returns("number"), returns("undefined")), + true); + +code = + "function test() " + + "{ " + + " 'use strict'; " + + " eval('var x = 2;'); " + + " return typeof x; " + + "} " + + "test();"; +assertEq(testLenientAndStrict(code, returns("undefined"), returns("undefined")), + true); + +code = + "function test() " + + "{ " + + " eval('\"use strict\"; var x = 2;'); " + + " return typeof x; " + + "} " + + "test();"; +assertEq(testLenientAndStrict(code, returns("undefined"), returns("undefined")), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/primitive-assignment.js b/js/src/tests/ecma_5/strict/primitive-assignment.js new file mode 100644 index 000000000..4b2ee79f0 --- /dev/null +++ b/js/src/tests/ecma_5/strict/primitive-assignment.js @@ -0,0 +1,23 @@ +let primitives = [ + 10, + false, + "test", + Symbol() +]; + +let key = "key"; + +for (let value of primitives) { + // Doesn't throw outside strict mode. + assertEq(value.x = 5, 5); + assertEq(value[key] = 6, 6); + + assertThrowsInstanceOf(function() { "use strict"; value.x = 5; }, TypeError); + assertThrowsInstanceOf(function() { "use strict"; value[key] = 6; }, TypeError); + + let target = {}; + assertEq(Reflect.set(target, key, 5, value), false); + assertEq(key in target, false); +} + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/primitive-this-getter.js b/js/src/tests/ecma_5/strict/primitive-this-getter.js new file mode 100644 index 000000000..55fd79d9d --- /dev/null +++ b/js/src/tests/ecma_5/strict/primitive-this-getter.js @@ -0,0 +1,56 @@ +let primitives = [ + 10, + false, + "test", + Symbol() +] + +let getter = "getter"; +let getter2 = "getter2"; +let key = "key"; + +for (let value of primitives) { + let prototype = Object.getPrototypeOf(value); + + // Strict getters receive a primitive this value. + Object.defineProperty(prototype, "getter", {get: function() { + "use strict"; + assertEq(this, value); + return "getter"; + }}) + + assertEq(value.getter, "getter"); + assertEq(value[getter], "getter"); + + // The proxy's [[Get]] trap is also invoked with primitive receiver values. + let proxy = new Proxy({}, { + get(target, property, receiver) { + assertEq(property, "key"); + assertEq(receiver, value); + return "get"; + } + }); + + Object.setPrototypeOf(prototype, proxy); + assertEq(value.key, "get"); + assertEq(value[key], "get"); + assertEq(value.getter, "getter"); + assertEq(value[getter], "getter"); + + // A getter still gets a primitive this value even after going through a proxy. + proxy = new Proxy({ + get getter2() { + "use strict"; + assertEq(this, value); + return "getter2"; + } + }, {}); + + Object.setPrototypeOf(prototype, proxy); + assertEq(value.getter2, "getter2"); + assertEq(value[getter2], "getter2"); + assertEq(value.getter, "getter"); + assertEq(value[getter], "getter"); +} + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/primitive-this-no-writeback.js b/js/src/tests/ecma_5/strict/primitive-this-no-writeback.js new file mode 100644 index 000000000..2f58fb231 --- /dev/null +++ b/js/src/tests/ecma_5/strict/primitive-this-no-writeback.js @@ -0,0 +1,20 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* Verify that GETTHISPROP does not update the frame's |this| slot. */ + +var f = String.prototype.m = function () { + "use strict"; + assertEq(this, "s"); + // The GETTHISPROP should not cause |this| to become wrapped. + return [this.m, this]; +}; +var a = "s".m(); +assertEq(a[0], f); +assertEq(a[1], "s"); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/rebind-eval-should-fail-in-strict-mode.js b/js/src/tests/ecma_5/strict/rebind-eval-should-fail-in-strict-mode.js new file mode 100644 index 000000000..41f007627 --- /dev/null +++ b/js/src/tests/ecma_5/strict/rebind-eval-should-fail-in-strict-mode.js @@ -0,0 +1,39 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var BadSyntaxStrings = [ + "function foo1() { \"use strict\"; try {} catch (eval) {} }", + "function foo2() { \"use strict\"; let eval = 9; foo(); }", + "function foo3() { \"use strict\"; for (let eval = 3;;) { foo(); }}", + "function foo4() { \"use strict\"; for (let eval in {a:1}) { foo(); }}", + "function foo5() { \"use strict\"; for (let eval of [1, 2, 3]) { foo(); }}", + "function foo6() { \"use strict\"; var eval = 12; }", + "function foo7() { \"use strict\"; for (var eval = 3;;) { foo(); }}", + "function foo8() { \"use strict\"; for (var eval in {a:1}) { foo(); }}", + "function foo9() { \"use strict\"; for (var eval of [1, 2, 3]) { foo(); }}", + "function foo10() { \"use strict\"; const eval = 12; }", + "function foo11() { \"use strict\"; for (const eval = 3;;) { foo(); }}", + "function foo12() { \"use strict\"; return [eval for (eval of [1, 2, 3])]; }", + "function foo13() { \"use strict\"; return [eval for (eval in {a:3})]; }", + "function foo14() { \"use strict\"; return (eval for (eval of [1, 2, 3])); }", + "function foo15() { \"use strict\"; return (eval for (eval in {a:3})); }" +]; + +function testString(s, i) { + var gotSyntaxError = -1; + try { + eval(s); + } catch(err) { + if (err instanceof SyntaxError) + gotSyntaxError = i; + } + + assertEq(gotSyntaxError, i); +} + +for (var i = 0; i < BadSyntaxStrings.length; i++) + testString(BadSyntaxStrings[i], i); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/regress-532041.js b/js/src/tests/ecma_5/strict/regress-532041.js new file mode 100644 index 000000000..82311f3b9 --- /dev/null +++ b/js/src/tests/ecma_5/strict/regress-532041.js @@ -0,0 +1,17 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + + +/* + * JSFunction::findDuplicateFormal (nee js_FindDuplicateFormal), used + * by strict checks, sometimes failed to choose the correct branch of + * the fun->u.i.names union: it used the argument count, not the + * overall name count. + */ +function f(a1,a2,a3,a4,a5) { "use strict"; var v1, v2, v3, v4, v5, v6, v7; } + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/regress-532254.js b/js/src/tests/ecma_5/strict/regress-532254.js new file mode 100644 index 000000000..d45dbba6f --- /dev/null +++ b/js/src/tests/ecma_5/strict/regress-532254.js @@ -0,0 +1,13 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +assertEq(testLenientAndStrict('function f(eval,[x]){}', + parsesSuccessfully, + parseRaisesException(SyntaxError)), + true); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/regress-599159.js b/js/src/tests/ecma_5/strict/regress-599159.js new file mode 100644 index 000000000..71a413e2d --- /dev/null +++ b/js/src/tests/ecma_5/strict/regress-599159.js @@ -0,0 +1,33 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +// Shu's test +function test(makeNonArray) { + function C() {} + C.prototype = [] + if (makeNonArray) + C.prototype.constructor = C + c = new C(); + c.push("foo"); + return c.length +} +assertEq(test(true), 1); +assertEq(test(false), 1); + +// jorendorff's longer test +var a = []; +a.slowify = 1; +var b = Object.create(a); +b.length = 12; +assertEq(b.length, 12); + +// jorendorff's shorter test +var b = Object.create(Array.prototype); +b.length = 12; +assertEq(b.length, 12); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/strict/shell.js b/js/src/tests/ecma_5/strict/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/ecma_5/strict/shell.js diff --git a/js/src/tests/ecma_5/strict/strict-this-is-not-truthy.js b/js/src/tests/ecma_5/strict/strict-this-is-not-truthy.js new file mode 100644 index 000000000..ec1a86837 --- /dev/null +++ b/js/src/tests/ecma_5/strict/strict-this-is-not-truthy.js @@ -0,0 +1,12 @@ +// Any copyright is dedicated to the Public Domain.
+// http://creativecommons.org/licenses/publicdomain/
+
+// See bug 630543.
+
+function f() {
+ "use strict";
+ return !this;
+}
+assertEq(f.call(null), true);
+
+reportCompare(0, 0, 'ok');
diff --git a/js/src/tests/ecma_5/strict/this-for-function-expression-recursion.js b/js/src/tests/ecma_5/strict/this-for-function-expression-recursion.js new file mode 100644 index 000000000..197b4646c --- /dev/null +++ b/js/src/tests/ecma_5/strict/this-for-function-expression-recursion.js @@ -0,0 +1,44 @@ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +var gTestfile = 'this-for-function-expression-recursion.js'; +var BUGNUMBER = 611276; +var summary = "JSOP_CALLEE should push undefined, not null, for this"; + +print(BUGNUMBER + ": " + summary); + +/************** + * BEGIN TEST * + **************/ + +// Calling a named function expression (not function statement) uses the +// JSOP_CALLEE opcode. This opcode pushes its own |this|, distinct from the +// normal call path; verify that that |this| value is properly |undefined|. + +var calleeThisFun = + function calleeThisFun(recurring) + { + if (recurring) + return this; + return calleeThisFun(true); + }; +assertEq(calleeThisFun(false), this); + +var calleeThisStrictFun = + function calleeThisStrictFun(recurring) + { + "use strict"; + if (recurring) + return this; + return calleeThisStrictFun(true); + }; +assertEq(calleeThisStrictFun(false), undefined); + +/******************************************************************************/ + +if (typeof reportCompare === "function") + reportCompare(true, true); + +print("All tests passed!"); diff --git a/js/src/tests/ecma_5/strict/unbrand-this.js b/js/src/tests/ecma_5/strict/unbrand-this.js new file mode 100644 index 000000000..219d1588e --- /dev/null +++ b/js/src/tests/ecma_5/strict/unbrand-this.js @@ -0,0 +1,45 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +/* Test JSOP_UNBRANDTHIS's behavior on object and non-object |this| values. */ + +function strict() { + "use strict"; + this.insert = function(){ bar(); }; + function bar() {} +} + +var exception; + +// Try 'undefined' as a |this| value. +exception = null; +try { + strict.call(undefined); +} catch (x) { + exception = x; +} +assertEq(exception instanceof TypeError, true); + +// Try 'null' as a |this| value. +exception = null; +try { + strict.call(null); +} catch (x) { + exception = x; +} +assertEq(exception instanceof TypeError, true); + +// An object as a |this| value should be fine. +exception = null; +try { + strict.call({}); +} catch (x) { + exception = x; +} +assertEq(exception, null); + +reportCompare(true, true); diff --git a/js/src/tests/ecma_5/template.js b/js/src/tests/ecma_5/template.js new file mode 100644 index 000000000..089aae2d6 --- /dev/null +++ b/js/src/tests/ecma_5/template.js @@ -0,0 +1,28 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + * Contributor: + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 99999; +var summary = ''; +var actual = ''; +var expect = ''; + + +//----------------------------------------------------------------------------- +test(); +//----------------------------------------------------------------------------- + +function test() +{ + enterFunc ('test'); + printBugNumber(BUGNUMBER); + printStatus (summary); + + reportCompare(expect, actual, summary); + + exitFunc ('test'); +} |