Changeset 266620 in webkit
- Timestamp:
- Sep 4, 2020, 10:46:18 AM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 deleted
- 26 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r266616 r266620 1 2020-09-04 Alex Christensen <achristensen@webkit.org> 2 3 Align EUC-JP, ISO-2022-JP, and Shift_JIS decoding with Chrome, Firefox, and the specification 4 https://bugs.webkit.org/show_bug.cgi?id=216168 5 6 Reviewed by Youenn Fablet. 7 8 * platform/mac/imported/w3c/web-platform-tests/encoding/eof-shift_jis-expected.txt: Removed. 9 1 10 2020-09-04 Chris Dumez <cdumez@apple.com> 2 11 -
trunk/LayoutTests/TestExpectations
r266602 r266620 948 948 http/wpt/html/browsers/browsing-the-web/navigating-across-documents/click.html 949 949 http/wpt/html/browsers/browsing-the-web/navigating-across-documents/href.html 950 951 # We fail this reftest952 webkit.org/b/179881 imported/w3c/web-platform-tests/encoding/eof-shift_jis.html [ ImageOnlyFailure ]953 950 954 951 # Tests in this directory take > 30 minutes to run on debug bots. -
trunk/LayoutTests/imported/w3c/ChangeLog
r266609 r266620 1 2020-09-04 Alex Christensen <achristensen@webkit.org> 2 3 Align EUC-JP, ISO-2022-JP, and Shift_JIS decoding with Chrome, Firefox, and the specification 4 https://bugs.webkit.org/show_bug.cgi?id=216168 5 6 Reviewed by Youenn Fablet. 7 8 * web-platform-tests/encoding/iso-2022-jp-decoder-expected.txt: Removed. 9 * web-platform-tests/encoding/iso-2022-jp-decoder.any-expected.txt: 10 * web-platform-tests/encoding/iso-2022-jp-decoder.any.worker-expected.txt: 11 * web-platform-tests/encoding/legacy-mb-japanese/euc-jp/eucjp-decode-errors-expected.txt: 12 * web-platform-tests/encoding/legacy-mb-japanese/iso-2022-jp/iso2022jp-decode-csiso2022jp-expected.txt: 13 * web-platform-tests/encoding/legacy-mb-japanese/iso-2022-jp/iso2022jp-decode-expected.txt: 14 * web-platform-tests/encoding/legacy-mb-japanese/iso-2022-jp/iso2022jp_chars-csiso2022jp.html: 15 * web-platform-tests/encoding/legacy-mb-japanese/iso-2022-jp/iso2022jp_chars.html: 16 * web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-csshiftjis-expected.txt: 17 * web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-errors-expected.txt: 18 * web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-expected.txt: 19 * web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-ms932-expected.txt: 20 * web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-ms_kanji-expected.txt: 21 * web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-shift-jis-expected.txt: 22 * web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-sjis-expected.txt: 23 * web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-windows-31j-expected.txt: 24 * web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-x-sjis-expected.txt: 25 * web-platform-tests/encoding/streams/decode-non-utf8.any-expected.txt: 26 * web-platform-tests/encoding/streams/decode-non-utf8.any.worker-expected.txt: 27 1 28 2020-09-04 Youenn Fablet <youenn@apple.com> 2 29 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/iso-2022-jp-decoder.any-expected.txt
r256730 r266620 1 1 2 FAIL iso-2022-jp decoder: Error ESC assert_equals: expected "\ufffd$" but got "\ufffd" 2 PASS iso-2022-jp decoder: Error ESC 3 3 PASS iso-2022-jp decoder: Error ESC, character 4 4 PASS iso-2022-jp decoder: ASCII ESC, character … … 15 15 PASS iso-2022-jp decoder: Katakana ESC, error ESC #2, character 16 16 PASS iso-2022-jp decoder: Katakana ESC, character, Katakana ESC, character 17 FAIL iso-2022-jp decoder: Katakana ESC, SO / SI assert_equals: expected "\ufffd\ufffd\ufffd\ufffd" but got "\r\ufffd\ufffd\x10" 17 PASS iso-2022-jp decoder: Katakana ESC, SO / SI 18 18 PASS iso-2022-jp decoder: Multibyte ESC, character 19 19 PASS iso-2022-jp decoder: Multibyte ESC #2, character … … 27 27 PASS iso-2022-jp decoder: Multibyte ESC, trail error byte 28 28 PASS iso-2022-jp decoder: character, error ESC 29 FAIL iso-2022-jp decoder: character, error ESC #2 assert_equals: expected "P\ufffd$" but got "P\ufffd" 29 PASS iso-2022-jp decoder: character, error ESC #2 30 30 PASS iso-2022-jp decoder: character, error ESC #3 31 31 PASS iso-2022-jp decoder: character, ASCII ESC -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/iso-2022-jp-decoder.any.worker-expected.txt
r256730 r266620 1 1 2 FAIL iso-2022-jp decoder: Error ESC assert_equals: expected "\ufffd$" but got "\ufffd" 2 PASS iso-2022-jp decoder: Error ESC 3 3 PASS iso-2022-jp decoder: Error ESC, character 4 4 PASS iso-2022-jp decoder: ASCII ESC, character … … 15 15 PASS iso-2022-jp decoder: Katakana ESC, error ESC #2, character 16 16 PASS iso-2022-jp decoder: Katakana ESC, character, Katakana ESC, character 17 FAIL iso-2022-jp decoder: Katakana ESC, SO / SI assert_equals: expected "\ufffd\ufffd\ufffd\ufffd" but got "\r\ufffd\ufffd\x10" 17 PASS iso-2022-jp decoder: Katakana ESC, SO / SI 18 18 PASS iso-2022-jp decoder: Multibyte ESC, character 19 19 PASS iso-2022-jp decoder: Multibyte ESC #2, character … … 27 27 PASS iso-2022-jp decoder: Multibyte ESC, trail error byte 28 28 PASS iso-2022-jp decoder: character, error ESC 29 FAIL iso-2022-jp decoder: character, error ESC #2 assert_equals: expected "P\ufffd$" but got "P\ufffd" 29 PASS iso-2022-jp decoder: character, error ESC #2 30 30 PASS iso-2022-jp decoder: character, error ESC #3 31 31 PASS iso-2022-jp decoder: character, ASCII ESC -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/euc-jp/eucjp-decode-errors-expected.txt
r256730 r266620 1 1 2 FAIL lead not 0x00 and no more bytes: B0 assert_equals: expected "\ufffd" but got "\x1a" 3 FAIL lead not 0x00 and no more bytes: B0 B5 B0 assert_equals: expected "圧\ufffd" but got "圧\x1a" 4 FAIL lead not 0x00 and no more bytes: B0 B0 B0 assert_equals: expected "旭\ufffd" but got "旭\x1a" 5 FAIL lead byte outside 0x8E, 0x8F, or the range 0xA1 to 0xFE: FF assert_equals: expected "\ufffd" but got "\x1a" 6 FAIL lead byte outside 0x8E, 0x8F, or the range 0xA1 to 0xFE: B0 B5 FF assert_equals: expected "圧\ufffd" but got "圧\x1a" 7 FAIL lead byte outside 0x8E, 0x8F, or the range 0xA1 to 0xFE: 91 assert_equals: expected "\ufffd" but got "" 8 FAIL lead byte outside 0x8E, 0x8F, or the range 0xA1 to 0xFE: B0 B5 91 assert_equals: expected "圧\ufffd" but got "圧" 9 FAIL trail byte outside 0xA1-0xFE: B0 31 assert_equals: expected "\ufffd1" but got "\x1a1" 2 PASS lead not 0x00 and no more bytes: B0 3 PASS lead not 0x00 and no more bytes: B0 B5 B0 4 PASS lead not 0x00 and no more bytes: B0 B0 B0 5 PASS lead byte outside 0x8E, 0x8F, or the range 0xA1 to 0xFE: FF 6 PASS lead byte outside 0x8E, 0x8F, or the range 0xA1 to 0xFE: B0 B5 FF 7 PASS lead byte outside 0x8E, 0x8F, or the range 0xA1 to 0xFE: 91 8 PASS lead byte outside 0x8E, 0x8F, or the range 0xA1 to 0xFE: B0 B5 91 9 PASS trail byte outside 0xA1-0xFE: B0 31 10 10 PASS trail byte outside 0xA1-0xFE: B0 FF 11 11 PASS trail byte outside 0xA1-0xFE: B0 A0 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/iso-2022-jp/iso2022jp-decode-csiso2022jp-expected.txt
r264561 r266620 33 33 PASS U+3A8 Ψ Ψ 1B 24 42 26 37 1B 28 42 34 34 PASS U+3A9 Ω Ω 1B 24 42 26 38 1B 28 42 35 FAIL U+3B1 α α 1B 24 42 26 41 1B 28 42 assert_equals: expected "α" but got "α\ufffd" 36 FAIL U+3B2 β β 1B 24 42 26 42 1B 28 42 assert_equals: expected "β" but got "β\ufffd" 37 FAIL U+3B3 γ γ 1B 24 42 26 43 1B 28 42 assert_equals: expected "γ" but got "γ\ufffd" 38 FAIL U+3B4 δ δ 1B 24 42 26 44 1B 28 42 assert_equals: expected "δ" but got "δ\ufffd" 39 FAIL U+3B5 ε ε 1B 24 42 26 45 1B 28 42 assert_equals: expected "ε" but got "ε\ufffd" 40 FAIL U+3B6 ζ ζ 1B 24 42 26 46 1B 28 42 assert_equals: expected "ζ" but got "ζ\ufffd" 41 FAIL U+3B7 η η 1B 24 42 26 47 1B 28 42 assert_equals: expected "η" but got "η\ufffd" 42 FAIL U+3B8 θ θ 1B 24 42 26 48 1B 28 42 assert_equals: expected "θ" but got "θ\ufffd" 43 FAIL U+3B9 ι ι 1B 24 42 26 49 1B 28 42 assert_equals: expected "ι" but got "ι\ufffd" 44 FAIL U+3BA κ κ 1B 24 42 26 4A 1B 28 42 assert_equals: expected "κ" but got "κ\ufffd" 45 FAIL U+3BB λ λ 1B 24 42 26 4B 1B 28 42 assert_equals: expected "λ" but got "λ\ufffd" 46 FAIL U+3BC μ μ 1B 24 42 26 4C 1B 28 42 assert_equals: expected "μ" but got "μ\ufffd" 47 FAIL U+3BD ν ν 1B 24 42 26 4D 1B 28 42 assert_equals: expected "ν" but got "ν\ufffd" 48 FAIL U+3BE ξ ξ 1B 24 42 26 4E 1B 28 42 assert_equals: expected "ξ" but got "ξ\ufffd" 49 FAIL U+3BF ο ο 1B 24 42 26 4F 1B 28 42 assert_equals: expected "ο" but got "ο\ufffd" 50 FAIL U+3C0 π π 1B 24 42 26 50 1B 28 42 assert_equals: expected "π" but got "π\ufffd" 51 FAIL U+3C1 ρ ρ 1B 24 42 26 51 1B 28 42 assert_equals: expected "ρ" but got "ρ\ufffd" 52 FAIL U+3C3 σ σ 1B 24 42 26 52 1B 28 42 assert_equals: expected "σ" but got "σ\ufffd" 53 FAIL U+3C4 τ τ 1B 24 42 26 53 1B 28 42 assert_equals: expected "τ" but got "τ\ufffd" 54 FAIL U+3C5 υ υ 1B 24 42 26 54 1B 28 42 assert_equals: expected "υ" but got "υ\ufffd" 55 FAIL U+3C6 φ φ 1B 24 42 26 55 1B 28 42 assert_equals: expected "φ" but got "φ\ufffd" 56 FAIL U+3C7 χ χ 1B 24 42 26 56 1B 28 42 assert_equals: expected "χ" but got "χ\ufffd" 57 FAIL U+3C8 ψ ψ 1B 24 42 26 57 1B 28 42 assert_equals: expected "ψ" but got "ψ\ufffd" 58 FAIL U+3C9 ω ω 1B 24 42 26 58 1B 28 42 assert_equals: expected "ω" but got "ω\ufffd" 35 PASS U+3B1 α α 1B 24 42 26 41 1B 28 42 36 PASS U+3B2 β β 1B 24 42 26 42 1B 28 42 37 PASS U+3B3 γ γ 1B 24 42 26 43 1B 28 42 38 PASS U+3B4 δ δ 1B 24 42 26 44 1B 28 42 39 PASS U+3B5 ε ε 1B 24 42 26 45 1B 28 42 40 PASS U+3B6 ζ ζ 1B 24 42 26 46 1B 28 42 41 PASS U+3B7 η η 1B 24 42 26 47 1B 28 42 42 PASS U+3B8 θ θ 1B 24 42 26 48 1B 28 42 43 PASS U+3B9 ι ι 1B 24 42 26 49 1B 28 42 44 PASS U+3BA κ κ 1B 24 42 26 4A 1B 28 42 45 PASS U+3BB λ λ 1B 24 42 26 4B 1B 28 42 46 PASS U+3BC μ μ 1B 24 42 26 4C 1B 28 42 47 PASS U+3BD ν ν 1B 24 42 26 4D 1B 28 42 48 PASS U+3BE ξ ξ 1B 24 42 26 4E 1B 28 42 49 PASS U+3BF ο ο 1B 24 42 26 4F 1B 28 42 50 PASS U+3C0 π π 1B 24 42 26 50 1B 28 42 51 PASS U+3C1 ρ ρ 1B 24 42 26 51 1B 28 42 52 PASS U+3C3 σ σ 1B 24 42 26 52 1B 28 42 53 PASS U+3C4 τ τ 1B 24 42 26 53 1B 28 42 54 PASS U+3C5 υ υ 1B 24 42 26 54 1B 28 42 55 PASS U+3C6 φ φ 1B 24 42 26 55 1B 28 42 56 PASS U+3C7 χ χ 1B 24 42 26 56 1B 28 42 57 PASS U+3C8 ψ ψ 1B 24 42 26 57 1B 28 42 58 PASS U+3C9 ω ω 1B 24 42 26 58 1B 28 42 59 59 PASS U+401 Ё Ё 1B 24 42 27 27 1B 28 42 60 60 PASS U+410 А А 1B 24 42 27 21 1B 28 42 … … 3249 3249 PASS U+6B1F 欟 欟 1B 24 42 5D 36 1B 28 42 3250 3250 PASS U+6B20 欠 欠 1B 24 42 37 67 1B 28 42 3251 FAIL U+6B21 次 次 1B 24 42 3C 21 1B 28 42 assert_equals: expected "次" but got "次⑬\n欣\n欧\n欲\n欷\n欸\n欹\n欺\n欽\n款\n歃\n歇\n歉\n歌\n歎\n歐\n歓\n歔\n歙\n歛\n歟\n歡\n止\n正\n此\n武\n歩\n歪\n歯\n歳\n歴\n歸\n歹\n死\n歿\n殀\n殃\n殄\n殆\n殉\n殊\n残\n殍\n殕\n殖\n殘\n殞\n殤\n殪\n殫\n殯\n殱\n殲\n殳\n殴\n段\n殷\n殺\n殻\n殼\n殿\n毀\n毅\n毆\n毋\n母\n毎\n毒\n毓\n比\n毖\n毘\n毛\n毟\n毫\n毬\n毯\n毳\n氈\n氏\n民\n氓\n气\n気\n氛\n氣\n氤\n水\n氷\n永\n氾\n氿\n汀\n汁\n求\n汎\n汐\n汕\n汗\n汚\n汜\n汝\n汞\n江\n池\n汢\n汨\n汪\n汯\n汰\n汲\n汳\n決\n汽\n汾\n沁\n沂\n沃\n沆\n沈\n沌\n沍\n沐\n沒\n沓\n沖\n沙\n沚\n沛\n没\n沢\n沫\n沮\n沱\n河\n沸\n油\n沺\n治\n沼\n沽\n沾\n沿\n況\n泄\n泅\n泉\n泊\n泌\n泓\n法\n泗\n泙\n泚\n泛\n泝\n泡\n波\n泣\n泥\n注\n泪\n泯\n泰\n泱\n泳\n洄\n洋\n洌\n洒\n洗\n洙\n洛\n洞\n洟\n津\n洩\n洪\n洫\n洲\n洳\n洵\n洶\n洸\n活\n洽\n派\n流\n浄\n浅\n浙\n浚\n浜\n浣\n浤\n浦\n浩\n浪\n浬\n浮\n浯\n浴\n海\n浸\n浹\n涅\n涇\n消\n涌\n涎\n涓\n涕\n涖\n涙\n涛\n涜\n涬\n涯\n液\n涵\n涸\n涼\n淀\n淅\n淆\n淇\n淋\n淌\n淏\n淑\n淒\n淕\n淘\n淙\n淞\n淡\n淤\n淦\n淨\n淪\n淫\n淬\n淮\n深\n淲\n淳\n淵\n混\n淸\n淹\n淺\n添\n淼\n清\n渇\n済\n渉\n渊\n渋\n渓\n渕\n渙\n渚\n減\n渝\n渟\n渠\n渡\n渣\n渤\n渥\n渦\n渧\n温\n渫\n測\n渭\n渮\n港\n游\n渹\n渺\n渼\n渾\n湃\n湊\n湍\n湎\n湖\n湘\n湛\n湜\n湟\n湧\n湫\n湮\n湯\n湲\n湶\n湾\n湿\n満\n溂\n溌\n溏\n源\n準\n溘\n溜\n溝\n溟\n溢\n溥\n溪\n溯\n溲\n溶\n溷\n溺\n溽\n溿\n滂\n滄\n滅\n滉\n滋\n滌\n滑\n滓\n滔\n滕\n滝\n滞\n滬\n滯\n滲\n滴\n滷\n滸\n滾\n滿\n漁\n漂\n漆\n漉\n漏\n漑\n漓\n演\n漕\n漠\n漢\n漣\n漫\n漬\n漱\n漲\n漸\n漾\n漿\n潁\n潅\n潔\n潘\n潛\n潜\n潟\n潤\n潦\n潭\n潮\n潯\n潰\n潴\n潸\n潺\n潼\n澀\n澁\n澂\n澄\n澆\n澈\n澎\n澑\n澗\n澡\n澣\n澤\n澪\n澱\n澳\n澵\n澹\n激\n濁\n濂\n濃\n濆\n濔\n濕\n濘\n濛\n濟\n濠\n濡\n濤\n濫\n濬\n濮\n濯\n濱\n濳\n濵\n濶\n濺\n濾\n瀁\n瀅\n瀇\n瀉\n瀋\n瀏\n瀑\n瀕\n瀘\n瀚\n瀛\n瀝\n瀞\n瀟\n瀦\n瀧\n瀨\n瀬\n瀰\n瀲\n瀾\n灌\n灑\n灘\n灣\n火\n灯\n灰\n灸\n灼\n災\n炅\n炉\n炊\n炎\n炒\n炙\n炫\n炬\n炭\n炮\n炯\n炳\n炸\n点\n為\n炻\n烈\n烋\n烏\n烙\n烝\n烟\n烱\n烹\n烽\n焄\n焉\n焏\n焔\n焙\n焚\n焜\n無\n焦\n然\n焼\n煆\n煇\n煉\n煌\n煎\n煕\n煖\n煙\n煜\n煢\n煤\n煥\n煦\n照\n煩\n煬\n煮\n煽\n熄\n熈\n熊\n熏\n熔\n熕\n熙\n熟\n熨\n熬\n熱\n熹\n熾\n燁\n燃\n燈\n燉\n燎\n燐\n燒\n燔\n燕\n燗\n營\n燠\n燥\n燦\n燧\n燬\n燭\n燮\n燵\n燹\n燻\n燼\n燾\n燿\n爆\n爍\n爐\n爛\n爨\n爪\n爬\n爭\n爰\n爲\n爵\n父\n爺\n爻\n爼\n爽\n爾\n爿\n牀\n牆\n片\n版\n牋\n牌\n牒\n牘\n牙\n牛\n牝\n牟\n牡\n牢\n牧\n物\n牲\n牴\n特\n牽\n牾\n犀\n犁\n犂\n犇\n犒\n犖\n犠\n犢\n犧\n犬\n犯\n犱\n犲\n状\n犹\n犾\n狂\n狃\n狄\n狆\n狎\n狐\n狒\n狗\n狙\n狛\n狠\n狡\n狢\n狩\n独\n狭\n狷\n狸\n狹\n狼\n狽\n猊\n猖\n猗\n猛\n猜\n猝\n猟\n猤\n猥\n猩\n猪\n猫\n献\n猯\n猴\n猶\n猷\n猾\n猿\n獄\n獅\n獎\n獏\n獗\n獣\n獨\n獪\n獰\n獲\n獵\n獷\n獸\n獺\n獻\n玄\n率\n玉\n王\n玖\n玩\n玲\n玳\n玻\n玽\n珀\n珂\n珈\n珉\n珊\n珍\n珎\n珒\n珖\n珞\n珠\n珣\n珥\n珪\n班\n珮\n珱\n珵\n珸\n現\n球\n琅\n理\n琇\n琉\n琢\n琥\n琦\n琩\n琪\n琮\n琲\n琳\n琴\n琵\n琶\n琺\n琿\n瑁\n瑕\n瑙\n瑚\n瑛\n瑜\n瑞\n瑟\n瑠\n瑢\n瑣\n瑤\n瑩\n瑪\n瑯\n瑰\n瑳\n瑶\n瑾\n璃\n璉\n璋\n璞\n璟\n璢\n璧\n環\n璽\n瓊\n瓏\n瓔\n瓜\n瓠\n瓢\n瓣\n瓦\n瓧\n瓩\n瓮\n瓰\n瓱\n瓲\n瓶\n瓷\n瓸\n甁\n甃\n甄\n甅\n甌\n甍\n甎\n甑\n甓\n甕\n甘\n甚\n甜\n甞\n生\n産\n甥\n甦\n用\n甫\n甬\n甯\n田\n由\n甲\n申\n男\n甸\n町\n画\n甼\n畄\n畆\n畉\n畊\n畋\n界\n畍\n畏\n畑\n畔\n留\n畚\n畛\n畜\n畝\n畠\n畢\n畤\n略\n畦\n畧\n畩\n番\n畫\n畭\n畯\n異\n畳\n畴\n當\n畷\n畸\n畿\n疂\n疆\n疇\n疉\n疊\n疋\n疎\n疏\n疑\n疔\n疚\n疝\n疣\n疥\n疫\n疱\n疲\n疳\n疵\n疸\n疹\n疼\n疽\n疾\n痂\n痃\n病\n症\n痊\n痍\n痒\n痔\n痕\n痘\n痙\n痛\n痞\n痢\n痣\n痩\n痰\n痲\n痳\n痴\n痺\n痼\n痾\n痿\n瘁\n瘉\n瘋\n瘍\n瘟\n瘠\n瘡\n瘢\n瘤\n瘧\n瘰\n瘴\n瘻\n療\n癆\n癇\n癈\n癌\n癒\n癖\n癘\n癜\n癡\n癢\n癧\n癨\n癩\n癪\n癬\n癰\n癲\n癶\n癸\n発\n登\n發\n白\n百\n皀\n皂\n皃\n的\n皆\n皇\n皈\n皋\n皎\n皐\n皓\n皖\n皙\n皚\n皛\n皜\n皞\n皦\n皮\n皰\n皴\n皷\n皸\n皹\n皺\n皿\n盂\n盃\n盆\n盈\n益\n盍\n盒\n盖\n盗\n盛\n盜\n盞\n盟\n盡\n監\n盤\n盥\n盧\n盪\n目\n盲\n直\n相\n盻\n盾\n省\n眄\n眇\n眈\n眉\n看\n県\n眛\n眞\n真\n眠\n眤\n眥\n眦\n眩\n眷\n眸\n眺\n眼\n着\n睆\n睇\n睚\n睛\n睡\n督\n睥\n睦\n睨\n睫\n睹\n睾\n睿\n瞋\n瞎\n瞑\n瞞\n瞠\n瞥\n瞬\n瞭\n瞰\n瞳\n瞶\n瞹\n瞻\n瞼\n瞽\n瞿\n矇\n矍\n矗\n矚\n矛\n矜\n矢\n矣\n知\n矧\n矩\n短\n矮\n矯\n石\n矼\n砂\n砌\n砒\n研\n砕\n砠\n砡\n砥\n砦\n砧\n砲\n破\n砺\n砿\n硅\n硎\n硝\n硤\n硫\n硬\n硯\n硲\n硴\n硺\n硼\n碁\n碆\n碇\n碌\n碍\n碎\n碑\n碓\n碕\n碗\n碚\n碣\n碧\n碩\n碪\n碯\n碵\n確\n碼\n碾\n磁\n磅\n磆\n磊\n磋\n磐\n磑\n磔\n磚\n磧\n磨\n磬\n磯\n磴\n磽\n礁\n礇\n礎\n礑\n礒\n礙\n礦\n礪\n礫\n礬\n礰\n示\n礼\n社\n祀\n祁\n祇\n祈\n祉\n祐\n祓\n祕\n祖\n祗\n祚\n祝\n神\n祟\n祠\n祢\n祥\n票\n祭\n祷\n祺\n祿\n禀\n禁\n禄\n禅\n禊\n禍\n禎\n福\n禔\n禛\n禝\n禦\n禧\n禪\n禮\n禰\n禳\n禹\n禺\n禽\n禾\n禿\n秀\n私\n秉\n秋\n科\n秒\n秕\n秘\n租\n秡\n秣\n秤\n秦\n秧\n秩\n秬\n称\n移\n稀\n稈\n程\n稍\n税\n稔\n稗\n稘\n稙\n稚\n稜\n稟\n稠\n種\n稱\n稲\n稷\n稻\n稼\n稽\n稾\n稿\n穀\n穂\n穃\n穆\n穉\n積\n穎\n穏\n穐\n穗\n穡\n穢\n穣\n穩\n穫\n穰\n穴\n究\n穹\n空\n穽\n穿\n突\n窃\n窄\n窈\n窒\n窓\n窕\n窖\n窗\n窘\n窟\n窩\n窪\n窮\n窯\n窰\n窶\n窺\n窿\n竃\n竄\n竅\n竇\n竈\n竊\n立\n竍\n竏\n竑\n竒\n竓\n竕\n站\n竚\n竜\n竝\n竟\n章\n竡\n竢\n竣\n童\n竦\n竧\n竪\n竫\n竭\n端\n竰\n競\n竸\n竹\n竺\n竿\n笂\n笄\n笆\n笈\n笊\n笋\n笏\n笑\n笘\n笙\n笛\n笞\n笠\n笥\n符\n笨\n第\n笳\n笵\n笶\n笹\n筅\n筆\n筈\n等\n筋\n筌\n筍\n筏\n筐\n筑\n筒\n答\n策\n筝\n筥\n筧\n筬\n筮\n筰\n筱\n筴\n筵\n筺\n箆\n箇\n箋\n箍\n箏\n箒\n箔\n箕\n算\n箘\n箙\n箚\n箜\n箝\n箞\n箟\n管\n箪\n箭\n箱\n箴\n箸\n節\n篁\n範\n篆\n篇\n築\n篋\n篌\n篏\n篝\n篠\n篤\n篥\n篦\n篩\n篭\n篳\n篶\n篷\n簀\n簇\n簍\n簑\n簒\n簓\n簔\n簗\n簟\n簡\n簣\n簧\n簪\n簫\n簷\n簸\n簽\n簾\n簿\n籀\n籃\n籌\n籍\n籏\n籐\n籔\n籖\n籘\n籟\n籠\n籤\n籥\n籬\n米\n籵\n籾\n粁\n粂\n粃\n粉\n粋\n粍\n粐\n粒\n粕\n粗\n粘\n粛\n粟\n粡\n粢\n粤\n粥\n粧\n粨\n粫\n粭\n粮\n粱\n粲\n粳\n粹\n粽\n精\n糀\n糂\n糅\n糊\n糎\n糒\n糖\n糘\n糜\n糞\n糟\n糠\n糢\n糧\n糯\n糲\n糴\n糶\n糸\n糺\n系\n糾\n紀\n紂\n約\n紅\n紆\n紊\n紋\n納\n紐\n純\n紕\n紗\n紘\n紙\n級\n紛\n紜\n素\n紡\n索\n紫\n紬\n紮\n累\n細\n紲\n紳\n紵\n紹\n紺\n紿\n終\n絃\n組\n絅\n絆\n絈\n絋\n経\n絎\n絏\n結\n絖\n絛\n絜\n絞\n絡\n絢\n絣\n給\n絨\n絮\n統\n絲\n絳\n絵\n絶\n絹\n絽\n綉\n綏\n經\n継\n続\n綛\n綜\n綟\n綠\n綢\n綣\n綫\n綬\n維\n綮\n綯\n綰\n綱\n網\n綴\n綵\n綷\n綸\n綺\n綻\n綽\n綾\n綿\n緇\n緊\n緋\n総\n緑\n緒\n緕\n緖\n緘\n線\n緜\n緝\n緞\n締\n緡\n緤\n編\n緩\n緬\n緯\n緲\n練\n緻\n縁\n縄\n縅\n縉\n縊\n縋\n縒\n縛\n縞\n縟\n縡\n縢\n縣\n縦\n縫\n縮\n縱\n縲\n縵\n縷\n縹\n縺\n縻\n總\n績\n繁\n繃\n繆\n繊\n繋\n繍\n繒\n織\n繕\n繖\n繙\n繚\n繝\n繞\n繦\n繧\n繩\n繪\n繭\n繰\n繹\n繻\n繼\n繽\n繿\n纂\n纃\n纈\n纉\n纊\n續\n纎\n纏\n纐\n纒\n纓\n纔\n纖\n纛\n纜\n缶\n缸\n缺\n罅\n罇\n罌\n罍\n罎\n罐\n网\n罔\n罕\n罘\n罟\n罠\n罧\n罨\n罩\n罪\n罫\n置\n罰\n署\n罵\n罷\n罸\n罹\n羂\n羃\n羅\n羆\n羇\n羈\n羊\n羌\n美\n羔\n羚\n羝\n羞\n羡\n羣\n群\n羨\n義\n羮\n羯\n羲\n羶\n羸\n羹\n羽\n翁\n翅\n翆\n翊\n翌\n習\n翔\n翕\n翠\n翡\n翦\n翩\n翫\n翰\n翳\n翹\n翻\n翼\n耀\n老\n考\n耄\n者\n耆\n耋\n而\n耐\n耒\n耕\n耗\n耘\n耙\n耜\n耡\n耨\n耳\n耶\n耻\n耽\n耿\n聆\n聊\n聒\n聖\n聘\n聚\n聞\n聟\n聡\n聢\n聨\n聯\n聰\n聲\n聳\n聴\n聶\n職\n聹\n聽\n聾\n聿\n肄\n肅\n肆\n肇\n肉\n肋\n肌\n肓\n肖\n肘\n肚\n肛\n肝\n股\n肢\n肥\n肩\n肪\n肬\n肭\n肯\n肱\n育\n肴\n肺\n胃\n胄\n胆\n背\n胎\n胖\n胙\n胚\n胛\n胝\n胞\n胡\n胤\n胥\n胯\n胱\n胴\n胸\n胼\n能\n脂\n脅\n脆\n脇\n脈\n脉\n脊\n脚\n脛\n脣\n脩\n脯\n脱\n脳\n脹\n脾\n腆\n腋\n腎\n腐\n腑\n腓\n腔\n腕\n腟\n腥\n腦\n腫\n腮\n腰\n腱\n腴\n腸\n腹\n腺\n腿\n膀\n膂\n膃\n膈\n膊\n膏\n膓\n膕\n膚\n膜\n膝\n膠\n膣\n膤\n膨\n膩\n膰\n膳\n膵\n膸\n膺\n膽\n膾\n膿\n臀\n臂\n臆\n臈\n臉\n臍\n臑\n臓\n臘\n臙\n臚\n臟\n臠\n臣\n臥\n臧\n臨\n自\n臭\n至\n致\n臺\n臻\n臼\n臾\n舁\n舂\n舅\n與\n興\n舉\n舊\n舌\n舍\n舎\n舐\n舒\n舖\n舗\n舘\n舛\n舜\n舞\n舟\n舩\n航\n舫\n般\n舮\n舳\n舵\n舶\n舷\n舸\n船\n艀\n艇\n艘\n艙\n艚\n艝\n艟\n艢\n艤\n艦\n艨\n艪\n艫\n艮\n良\n艱\n色\n艶\n艷\n艸\n艾\n芋\n芍\n芒\n芙\n芝\n芟\n芥\n芦\n芫\n芬\n芭\n芯\n花\n芳\n芸\n芹\n芻\n芽\n苅\n苑\n苒\n苓\n苔\n苗\n苙\n苛\n苜\n苞\n苟\n苡\n苣\n若\n苦\n苧\n苫\n英\n苳\n苴\n苹\n苺\n苻\n茁\n茂\n范\n茄\n茅\n茆\n茉\n茎\n茖\n茗\n茘\n茜\n茣\n茨\n茫\n茯\n茱\n茲\n茴\n茵\n茶\n茸\n茹\n荀\n荅\n草\n荊\n荏\n荐\n荒\n荘\n荢\n荳\n荵\n荷\n荻\n荼\n荿\n莅\n莇\n莉\n莊\n莎\n莓\n莖\n莚\n莞\n莟\n莠\n莢\n莨\n莪\n莫\n莱\n莵\n莽\n菁\n菅\n菇\n菊\n菌\n菎\n菓\n菖\n菘\n菜\n菟\n菠\n菩\n菫\n華\n菰\n菱\n菲\n菴\n菶\n菷\n菻\n菽\n萃\n萄\n萇\n萋\n萌\n萍\n萎\n萓\n萠\n萢\n萩\n萪\n萬\n萱\n萵\n萸\n萼\n落\n葆\n葈\n葉\n葎\n著\n葛\n葡\n葢\n董\n葦\n葩\n葫\n葬\n葭\n葮\n葯\n葱\n葵\n葷\n葹\n葺\n蒂\n蒄\n蒋\n蒐\n蒔\n蒙\n蒜\n蒟\n蒡\n蒭\n蒲\n蒴\n蒸\n蒹\n蒻\n蒼\n蒿\n蓁\n蓄\n蓆\n蓉\n蓊\n蓋\n蓍\n蓐\n蓑\n蓖\n蓙\n蓚\n蓜\n蓬\n蓮\n蓴\n蓼\n蓿\n蔀\n蔆\n蔑\n蔓\n蔔\n蔕\n蔗\n蔘\n蔚\n蔟\n蔡\n蔦\n蔬\n蔭\n蔵\n蔽\n蕀\n蕁\n蕃\n蕈\n蕉\n蕊\n蕋\n蕎\n蕓\n蕕\n蕗\n蕘\n蕙\n蕚\n蕣\n蕨\n蕩\n蕪\n蕫\n蕭\n蕷\n蕾\n薀\n薄\n薇\n薈\n薊\n薐\n薑\n薔\n薗\n薙\n薛\n薜\n薤\n薦\n薨\n薩\n薪\n薫\n薬\n薮\n薯\n薰\n薹\n薺\n藁\n藉\n藍\n藏\n藐\n藕\n藜\n藝\n藤\n藥\n藩\n藪\n藷\n藹\n藺\n藻\n藾\n蘂\n蘆\n蘇\n蘊\n蘋\n蘓\n蘖\n蘗\n蘚\n蘢\n蘭\n蘯\n蘰\n蘿\n虍\n虎\n虐\n虔\n處\n虚\n虜\n虞\n號\n虧\n虫\n虱\n虹\n虻\n蚊\n蚋\n蚌\n蚓\n蚕\n蚣\n蚤\n蚩\n蚪\n蚫\n蚯\n蚰\n蚶\n蛄\n蛆\n蛇\n蛉\n蛋\n蛍\n蛎\n蛔\n蛙\n蛛\n蛞\n蛟\n蛤\n蛩\n蛬\n蛭\n蛮\n蛯\n蛸\n蛹\n蛻\n蛾\n蜀\n蜂\n蜃\n蜆\n蜈\n蜉\n蜊\n蜍\n蜑\n蜒\n蜘\n蜚\n蜜\n蜥\n蜩\n蜴\n蜷\n蜻\n蜿\n蝉\n蝋\n蝌\n蝎\n蝓\n蝕\n蝗\n蝙\n蝟\n蝠\n蝣\n蝦\n蝨\n蝪\n蝮\n蝴\n蝶\n蝸\n蝿\n螂\n融\n螟\n螢\n螫\n螯\n螳\n螺\n螻\n螽\n蟀\n蟄\n蟆\n蟇\n蟋\n蟐\n蟒\n蟠\n蟯\n蟲\n蟶\n蟷\n蟹\n蟻\n蟾\n蠅\n蠇\n蠍\n蠎\n蠏\n蠑\n蠕\n蠖\n蠡\n蠢\n蠣\n蠧\n蠱\n蠶\n蠹\n蠻\n血\n衂\n衄\n衆\n行\n衍\n衒\n術\n街\n衙\n衛\n衝\n衞\n衡\n衢\n衣\n表\n衫\n衰\n衲\n衵\n衷\n衽\n衾\n衿\n袁\n袂\n袈\n袋\n袍\n袒\n袖\n袗\n袙\n袞\n袢\n袤\n被\n袮\n袰\n袱\n袴\n袵\n袷\n袿\n裁\n裂\n裃\n裄\n装\n裏\n裔\n裕\n裘\n裙\n補\n裝\n裟\n裡\n裨\n裲\n裳\n裴\n裵\n裸\n裹\n裼\n製\n裾\n褂\n褄\n複\n褊\n褌\n褐\n褒\n褓\n褜\n褝\n褞\n褥\n褪\n褫\n褶\n褸\n褻\n襁\n襃\n襄\n襌\n襍\n襖\n襞\n襟\n襠\n襤\n襦\n襪\n襭\n襯\n襲\n襴\n襷\n襾\n西\n要\n覃\n覆\n覇\n覈\n覊\n見\n規\n覓\n視\n覗\n覘\n覚\n覡\n覦\n覧\n覩\n親\n覬\n覯\n覲\n観\n覺\n覽\n覿\n觀\n角\n觚\n觜\n觝\n解\n触\n觧\n觴\n觸\n言\n訂\n訃\n計\n訊\n訌\n討\n訐\n訒\n訓\n訖\n託\n記\n訛\n訝\n訟\n訣\n訥\n訪\n設\n許\n訳\n訴\n訶\n訷\n診\n註\n証\n詁\n詆\n詈\n詐\n詑\n詒\n詔\n評\n詛\n詞\n詠\n詢\n詣\n試\n詩\n詫\n詬\n詭\n詮\n詰\n話\n該\n詳\n詹\n詼\n誂\n誄\n誅\n誇\n誉\n誌\n認\n誑\n誓\n誕\n誘\n誚\n語\n誠\n誡\n誣\n誤\n誥\n誦\n誧\n誨\n説\n読\n誰\n課\n誹\n誼\n誾\n調\n諂\n諄\n談\n請\n諌\n諍\n諏\n諒\n論\n諚\n諛\n諜\n諞\n諟\n諠\n諡\n諢\n諤\n諦\n諧\n諫\n諭\n諮\n諱\n諳\n諶\n諷\n諸\n諺\n諾\n謀\n謁\n謂\n謄\n謇\n謌\n謎\n謐\n謔\n謖\n謗\n謙\n謚\n講\n謝\n謠\n謡\n謦\n謨\n謫\n謬\n謳\n謹\n謾\n譁\n證\n譌\n譎\n譏\n譓\n譖\n識\n譚\n譛\n譜\n譟\n警\n譫\n譬\n譯\n議\n譱\n譲\n譴\n護\n譽\n譿\n讀\n讃\n變\n讌\n讎\n讐\n讒\n讓\n讖\n讙\n讚\n谷\n谺\n谿\n豁\n豆\n豈\n豊\n豌\n豎\n豐\n豕\n豚\n象\n豢\n豪\n豫\n豬\n豸\n豹\n豺\n豼\n貂\n貅\n貉\n貊\n貌\n貍\n貎\n貔\n貘\n貝\n貞\n負\n財\n貢\n貧\n貨\n販\n貪\n貫\n責\n貭\n貮\n貯\n貰\n貲\n貳\n貴\n貶\n買\n貸\n費\n貼\n貽\n貿\n賀\n賁\n賂\n賃\n賄\n資\n賈\n賊\n賍\n賎\n賑\n賓\n賚\n賛\n賜\n賞\n賠\n賢\n賣\n賤\n賦\n質\n賭\n賰\n賴\n賺\n賻\n購\n賽\n贄\n贅\n贇\n贈\n贊\n贋\n贍\n贏\n贐\n贒\n贓\n贔\n贖\n赤\n赦\n赧\n赫\n赭\n走\n赱\n赳\n赴\n赶\n起\n趁\n超\n越\n趙\n趣\n趨\n足\n趺\n趾\n跂\n跋\n跌\n跏\n跖\n跚\n跛\n距\n跟\n跡\n跣\n跨\n跪\n跫\n路\n跳\n践\n跼\n跿\n踈\n踉\n踊\n踏\n踐\n踝\n踞\n踟\n踪\n踰\n踴\n踵\n蹂\n蹄\n蹇\n蹈\n蹉\n蹊\n蹌\n蹐\n蹕\n蹙\n蹟\n蹠\n蹣\n蹤\n蹲\n蹴\n蹶\n蹼\n躁\n躄\n躅\n躇\n躊\n躋\n躍\n躑\n躓\n躔\n躙\n躡\n躪\n身\n躬\n躯\n躰\n躱\n躾\n軅\n軆\n軈\n車\n軋\n軌\n軍\n軏\n軒\n軛\n軟\n転\n軣\n軫\n軸\n軻\n軼\n軽\n軾\n較\n輅\n載\n輊\n輌\n輒\n輓\n輔\n輕\n輙\n輛\n輜\n輝\n輟\n輦\n輩\n輪\n輯\n輳\n輸\n輹\n輻\n輾\n輿\n轂\n轄\n轅\n轆\n轉\n轌\n轍\n轎\n轗\n轜\n轟\n轡\n轢\n轣\n轤\n辛\n辜\n辞\n辟\n辣\n辧\n辨\n辭\n辮\n辯\n辰\n辱\n農\n辷\n辺\n辻\n込\n辿\n迂\n迄\n迅\n迎\n近\n返\n迚\n迢\n迥\n迦\n迩\n迪\n迫\n迭\n迯\n述\n迴\n迷\n迸\n迹\n迺\n追\n退\n送\n逃\n逅\n逆\n逋\n逍\n逎\n透\n逐\n逑\n逓\n途\n逕\n逖\n逗\n這\n通\n逝\n逞\n速\n造\n逡\n逢\n連\n逧\n逮\n週\n進\n逵\n逶\n逸\n逹\n逼\n逾\n遁\n遂\n遅\n遇\n遉\n遊\n運\n遍\n過\n遏\n遐\n遑\n遒\n道\n達\n違\n遖\n遘\n遙\n遜\n遞\n遠\n遡\n遣\n遥\n遧\n遨\n適\n遭\n遮\n遯\n遲\n遵\n遶\n遷\n選\n遺\n遼\n遽\n避\n邀\n邁\n邂\n邃\n還\n邇\n邉\n邊\n邏\n邑\n那\n邦\n邨\n邪\n邯\n邱\n邵\n邸\n郁\n郊\n郎\n郛\n郞\n郡\n郢\n郤\n部\n郭\n郵\n郷\n都\n鄂\n鄒\n鄕\n鄙\n鄧\n鄭\n鄰\n鄲\n酉\n酊\n酋\n酌\n配\n酎\n酒\n酔\n酖\n酘\n酢\n酣\n酥\n酩\n酪\n酬\n酲\n酳\n酵\n酷\n酸\n醂\n醇\n醉\n醋\n醍\n醐\n醒\n醗\n醜\n醢\n醤\n醪\n醫\n醯\n醴\n醵\n醸\n醺\n釀\n釁\n釆\n采\n釈\n釉\n釋\n里\n重\n野\n量\n釐\n金\n釖\n釗\n釘\n釚\n釛\n釜\n針\n釞\n釟\n釡\n釣\n釤\n釥\n釦\n釧\n釭\n釮\n釵\n釶\n釼\n釿\n鈆\n鈊\n鈍\n鈎\n鈐\n鈑\n鈔\n鈕\n鈞\n鈩\n鈬\n鈴\n鈷\n鈹\n鈺\n鈼\n鈿\n鉀\n鉄\n鉅\n鉈\n鉉\n鉋\n鉎\n鉐\n鉑\n鉗\n鉙\n鉚\n鉛\n鉞\n鉢\n鉤\n鉦\n鉧\n鉱\n鉷\n鉸\n鉾\n銀\n銃\n銅\n銈\n銑\n銓\n銕\n銖\n銘\n銚\n銛\n銜\n銧\n銭\n銷\n銹\n鋏\n鋐\n鋒\n鋓\n鋕\n鋗\n鋙\n鋠\n鋤\n鋧\n鋩\n鋪\n鋭\n鋲\n鋳\n鋸\n鋹\n鋺\n鋻\n鋼\n鋿\n錂\n錆\n錏\n錐\n錘\n錙\n錚\n錝\n錞\n錠\n錡\n錢\n錣\n錥\n錦\n錨\n錫\n錬\n錮\n錯\n録\n錵\n錺\n錻\n鍄\n鍈\n鍋\n鍍\n鍔\n鍖\n鍗\n鍛\n鍜\n鍠\n鍬\n鍮\n鍰\n鍵\n鍼\n鍾\n鎌\n鎔\n鎖\n鎗\n鎚\n鎤\n鎧\n鎬\n鎭\n鎮\n鎰\n鎹\n鏃\n鏆\n鏈\n鏐\n鏑\n鏖\n鏗\n鏘\n鏝\n鏞\n鏡\n鏤\n鏥\n鏨\n鏸\n鐃\n鐇\n鐐\n鐓\n鐔\n鐘\n鐙\n鐚\n鐡\n鐫\n鐱\n鐵\n鐶\n鐸\n鐺\n鑁\n鑄\n鑅\n鑈\n鑑\n鑒\n鑓\n鑚\n鑛\n鑞\n鑠\n鑢\n鑪\n鑰\n鑵\n鑷\n鑼\n鑽\n鑾\n鑿\n钁\n長\n門\n閂\n閃\n閇\n閉\n閊\n開\n閏\n閑\n閒\n間\n閔\n閖\n閘\n閙\n閠\n関\n閣\n閤\n閥\n閧\n閨\n閭\n閲\n閹\n閻\n閼\n閾\n闃\n闇\n闊\n闌\n闍\n闔\n闕\n闖\n闘\n關\n闡\n闢\n闥\n阜\n阡\n阨\n阪\n阮\n阯\n防\n阻\n阿\n陀\n陂\n附\n陋\n陌\n降\n陏\n限\n陛\n陜\n陝\n陞\n陟\n院\n陣\n除\n陥\n陦\n陪\n陬\n陰\n陲\n陳\n陵\n陶\n陷\n陸\n険\n陽\n隅\n隆\n隈\n隊\n隋\n隍\n階\n随\n隔\n隕\n隗\n隘\n隙\n際\n障\n隝\n隠\n隣\n隧\n隨\n險\n隯\n隰\n隱\n隲\n隴\n隶\n隷\n隸\n隹\n隻\n隼\n雀\n雁\n雄\n雅\n集\n雇\n雉\n雋\n雌\n雍\n雎\n雑\n雕\n雖\n雙\n雛\n雜\n離\n難\n雨\n雪\n雫\n雰\n雲\n零\n雷\n雹\n電\n需\n霄\n霆\n震\n霈\n霊\n霍\n霎\n霏\n霑\n霓\n霖\n霙\n霜\n霞\n霤\n霧\n霪\n霰\n露\n霳\n霸\n霹\n霻\n霽\n霾\n靂\n靃\n靄\n靆\n靈\n靉\n靍\n靏\n靑\n青\n靕\n靖\n静\n靜\n非\n靠\n靡\n面\n靤\n靦\n靨\n革\n靫\n靭\n靱\n靴\n靹\n靺\n靼\n鞁\n鞄\n鞅\n鞆\n鞋\n鞍\n鞏\n鞐\n鞘\n鞜\n鞠\n鞣\n鞦\n鞨\n鞫\n鞭\n鞳\n鞴\n韃\n韆\n韈\n韋\n韓\n韜\n韭\n韮\n韲\n音\n韵\n韶\n韻\n響\n頁\n頂\n頃\n項\n順\n須\n頌\n頏\n預\n頑\n頒\n頓\n頗\n領\n頚\n頡\n頤\n頬\n頭\n頴\n頷\n頸\n頻\n頼\n頽\n顆\n顋\n題\n額\n顎\n顏\n顔\n顕\n顗\n願\n顛\n類\n顥\n顧\n顫\n顯\n顰\n顱\n顳\n顴\n風\n颪\n颯\n颱\n颶\n飃\n飄\n飆\n飛\n飜\n食\n飢\n飩\n飫\n飭\n飮\n飯\n飲\n飴\n飼\n飽\n飾\n餃\n餅\n餉\n養\n餌\n餐\n餒\n餓\n餔\n餘\n餝\n餞\n餠\n餡\n餤\n餧\n館\n餬\n餮\n餽\n餾\n饂\n饅\n饉\n饋\n饌\n饐\n饑\n饒\n饕\n饗\n首\n馗\n馘\n香\n馞\n馥\n馨\n馬\n馭\n馮\n馳\n馴\n馼\n駁\n駄\n駅\n駆\n駈\n駐\n駑\n駒\n駕\n駘\n駛\n駝\n駟\n駢\n駭\n駮\n駱\n駲\n駸\n駻\n駿\n騁\n騅\n騎\n騏\n騒\n験\n騙\n騨\n騫\n騰\n騷\n騾\n驀\n驂\n驃\n驅\n驍\n驎\n驕\n驗\n驚\n驛\n驟\n驢\n驤\n驥\n驩\n驪\n驫\n骨\n骭\n骰\n骸\n骼\n髀\n髄\n髏\n髑\n髓\n體\n高\n髙\n髜\n髞\n髟\n髢\n髣\n髦\n髪\n髫\n髭\n髮\n髯\n髱\n髴\n髷\n髻\n鬆\n鬘\n鬚\n鬟\n鬢\n鬣\n鬥\n鬧\n鬨\n鬩\n鬪\n鬮\n鬯\n鬱\n鬲\n鬻\n鬼\n魁\n魂\n魃\n魄\n魅\n魍\n魎\n魏\n魑\n魔\n魘\n魚\n魯\n魲\n魴\n魵\n鮃\n鮎\n鮏\n鮑\n鮒\n鮓\n鮖\n鮗\n鮟\n鮠\n鮨\n鮪\n鮫\n鮭\n鮮\n鮱\n鮴\n鮹\n鮻\n鯀\n鯆\n鯉\n鯊\n鯏\n鯑\n鯒\n鯔\n鯖\n鯛\n鯡\n鯢\n鯣\n鯤\n鯨\n鯰\n鯱\n鯲\n鯵\n鰀\n鰄\n鰆\n鰈\n鰉\n鰊\n鰌\n鰍\n鰐\n鰒\n鰓\n鰔\n鰕\n鰛\n鰡\n鰤\n鰥\n鰭\n鰮\n鰯\n鰰\n鰲\n鰹\n鰺\n鰻\n鰾\n鱆\n鱇\n鱈\n鱒\n鱗\n鱚\n鱠\n鱧\n鱶\n鱸\n鳥\n鳧\n鳩\n鳫\n鳬\n鳰\n鳳\n鳴\n鳶\n鴃\n鴆\n鴇\n鴈\n鴉\n鴎\n鴒\n鴕\n鴛\n鴟\n鴣\n鴦\n鴨\n鴪\n鴫\n鴬\n鴻\n鴾\n鴿\n鵁\n鵄\n鵆\n鵈\n鵐\n鵑\n鵙\n鵜\n鵝\n鵞\n鵠\n鵡\n鵤\n鵫\n鵬\n鵯\n鵰\n鵲\n鵺\n鶇\n鶉\n鶏\n鶚\n鶤\n鶩\n鶫\n鶯\n鶲\n鶴\n鶸\n鶺\n鶻\n鷁\n鷂\n鷄\n鷆\n鷏\n鷓\n鷙\n鷦\n鷭\n鷯\n鷲\n鷸\n鷹\n鷺\n鷽\n鸙\n鸚\n鸛\n鸞\n鹵\n鹸\n鹹\n鹽\n次⑬\n麁\n麈\n麋\n麌\n麑\n麒\n麓\n麕\n麗\n麝\n麟\n麥\n麦\n麩\n麪\n麭\n麸\n麹\n麺\n麻\n麼\n麾\n麿\n黄\n黌\n黍\n黎\n黏\n黐\n黑\n黒\n黔\n默\n黙\n黛\n黜\n黝\n點\n黠\n黥\n黨\n黯\n黴\n黶\n黷\n黹\n黻\n黼\n黽\n鼇\n鼈\n鼎\n鼓\n鼕\n鼠\n鼡\n鼬\n鼻\n鼾\n齊\n齋\n齎\n齏\n齒\n齔\n齟\n齠\n齡\n齢\n齣\n齦\n齧\n齪\n齬\n齲\n齶\n齷\n龍\n龕\n龜\n龝\n龠\n朗\n隆\n﨎\n﨏\n塚\n﨑\n晴\n﨓\n﨔\n凞\n猪\n益\n礼\n神\n祥\n福\n靖\n精\n羽\n﨟\n蘒\n﨡\n諸\n﨣\n﨤\n逸\n都\n﨧\n﨨\n﨩\n飯\n飼\n館\n鶴\n!\n"\n#\n$\n%\n&\n'\n(\n)\n*\n+\n,\n-\n.\n/\n0\n1\n2\n3\n4\n5\n6\n7\n8\n9\n:\n;\n<\n=\n>\n?\n@\nA\nB\nC\nD\nE\nF\nG\nH\nI\nJ\nK\nL\nM\nN\nO\nP\nQ\nR\nS\nT\nU\nV\nW\nX\nY\nZ\n[\n\\n]\n^\n_\n`\na\nb\nc\nd\ne\nf\ng\nh\ni\nj\nk\nl\nm\nn\no\np\nq\nr\ns\nt\nu\nv\nw\nx\ny\nz\n{\n|\n}\n~\n¢\n£\n¬\n ̄\n¦\n¥" 3251 PASS U+6B21 次 次 1B 24 42 3C 21 1B 28 42 3252 3252 PASS U+6B23 欣 欣 1B 24 42 36 55 1B 28 42 3253 3253 PASS U+6B27 欧 欧 1B 24 42 32 24 1B 28 42 … … 7112 7112 PASS U+9E79 鹹 鹹 1B 24 42 73 44 1B 28 42 7113 7113 PASS U+9E7D 鹽 鹽 1B 24 42 73 45 1B 28 42 7114 FAIL U+9E7F 鹿 鹿 1B 24 42 3C 2F 1B 28 42 assert_equals: expected "鹿" but got "次⑬\n麁\n麈\n麋\n麌\n麑\n麒\n麓\n麕\n麗\n麝\n麟\n麥\n麦\n麩\n麪\n麭\n麸\n麹\n麺\n麻\n麼\n麾\n麿\n黄\n黌\n黍\n黎\n黏\n黐\n黑\n黒\n黔\n默\n黙\n黛\n黜\n黝\n點\n黠\n黥\n黨\n黯\n黴\n黶\n黷\n黹\n黻\n黼\n黽\n鼇\n鼈\n鼎\n鼓\n鼕\n鼠\n鼡\n鼬\n鼻\n鼾\n齊\n齋\n齎\n齏\n齒\n齔\n齟\n齠\n齡\n齢\n齣\n齦\n齧\n齪\n齬\n齲\n齶\n齷\n龍\n龕\n龜\n龝\n龠\n朗\n隆\n﨎\n﨏\n塚\n﨑\n晴\n﨓\n﨔\n凞\n猪\n益\n礼\n神\n祥\n福\n靖\n精\n羽\n﨟\n蘒\n﨡\n諸\n﨣\n﨤\n逸\n都\n﨧\n﨨\n﨩\n飯\n飼\n館\n鶴\n!\n"\n#\n$\n%\n&\n'\n(\n)\n*\n+\n,\n-\n.\n/\n0\n1\n2\n3\n4\n5\n6\n7\n8\n9\n:\n;\n<\n=\n>\n?\n@\nA\nB\nC\nD\nE\nF\nG\nH\nI\nJ\nK\nL\nM\nN\nO\nP\nQ\nR\nS\nT\nU\nV\nW\nX\nY\nZ\n[\n\\n]\n^\n_\n`\na\nb\nc\nd\ne\nf\ng\nh\ni\nj\nk\nl\nm\nn\no\np\nq\nr\ns\nt\nu\nv\nw\nx\ny\nz\n{\n|\n}\n~\n¢\n£\n¬\n ̄\n¦\n¥" 7114 PASS U+9E7F 鹿 鹿 1B 24 42 3C 2F 1B 28 42 7115 7115 PASS U+9E81 麁 麁 1B 24 42 73 46 1B 28 42 7116 7116 PASS U+9E88 麈 麈 1B 24 42 73 47 1B 28 42 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/iso-2022-jp/iso2022jp-decode-expected.txt
r264561 r266620 33 33 PASS U+3A8 Ψ Ψ 1B 24 42 26 37 1B 28 42 34 34 PASS U+3A9 Ω Ω 1B 24 42 26 38 1B 28 42 35 FAIL U+3B1 α α 1B 24 42 26 41 1B 28 42 assert_equals: expected "α" but got "α\ufffd" 36 FAIL U+3B2 β β 1B 24 42 26 42 1B 28 42 assert_equals: expected "β" but got "β\ufffd" 37 FAIL U+3B3 γ γ 1B 24 42 26 43 1B 28 42 assert_equals: expected "γ" but got "γ\ufffd" 38 FAIL U+3B4 δ δ 1B 24 42 26 44 1B 28 42 assert_equals: expected "δ" but got "δ\ufffd" 39 FAIL U+3B5 ε ε 1B 24 42 26 45 1B 28 42 assert_equals: expected "ε" but got "ε\ufffd" 40 FAIL U+3B6 ζ ζ 1B 24 42 26 46 1B 28 42 assert_equals: expected "ζ" but got "ζ\ufffd" 41 FAIL U+3B7 η η 1B 24 42 26 47 1B 28 42 assert_equals: expected "η" but got "η\ufffd" 42 FAIL U+3B8 θ θ 1B 24 42 26 48 1B 28 42 assert_equals: expected "θ" but got "θ\ufffd" 43 FAIL U+3B9 ι ι 1B 24 42 26 49 1B 28 42 assert_equals: expected "ι" but got "ι\ufffd" 44 FAIL U+3BA κ κ 1B 24 42 26 4A 1B 28 42 assert_equals: expected "κ" but got "κ\ufffd" 45 FAIL U+3BB λ λ 1B 24 42 26 4B 1B 28 42 assert_equals: expected "λ" but got "λ\ufffd" 46 FAIL U+3BC μ μ 1B 24 42 26 4C 1B 28 42 assert_equals: expected "μ" but got "μ\ufffd" 47 FAIL U+3BD ν ν 1B 24 42 26 4D 1B 28 42 assert_equals: expected "ν" but got "ν\ufffd" 48 FAIL U+3BE ξ ξ 1B 24 42 26 4E 1B 28 42 assert_equals: expected "ξ" but got "ξ\ufffd" 49 FAIL U+3BF ο ο 1B 24 42 26 4F 1B 28 42 assert_equals: expected "ο" but got "ο\ufffd" 50 FAIL U+3C0 π π 1B 24 42 26 50 1B 28 42 assert_equals: expected "π" but got "π\ufffd" 51 FAIL U+3C1 ρ ρ 1B 24 42 26 51 1B 28 42 assert_equals: expected "ρ" but got "ρ\ufffd" 52 FAIL U+3C3 σ σ 1B 24 42 26 52 1B 28 42 assert_equals: expected "σ" but got "σ\ufffd" 53 FAIL U+3C4 τ τ 1B 24 42 26 53 1B 28 42 assert_equals: expected "τ" but got "τ\ufffd" 54 FAIL U+3C5 υ υ 1B 24 42 26 54 1B 28 42 assert_equals: expected "υ" but got "υ\ufffd" 55 FAIL U+3C6 φ φ 1B 24 42 26 55 1B 28 42 assert_equals: expected "φ" but got "φ\ufffd" 56 FAIL U+3C7 χ χ 1B 24 42 26 56 1B 28 42 assert_equals: expected "χ" but got "χ\ufffd" 57 FAIL U+3C8 ψ ψ 1B 24 42 26 57 1B 28 42 assert_equals: expected "ψ" but got "ψ\ufffd" 58 FAIL U+3C9 ω ω 1B 24 42 26 58 1B 28 42 assert_equals: expected "ω" but got "ω\ufffd" 35 PASS U+3B1 α α 1B 24 42 26 41 1B 28 42 36 PASS U+3B2 β β 1B 24 42 26 42 1B 28 42 37 PASS U+3B3 γ γ 1B 24 42 26 43 1B 28 42 38 PASS U+3B4 δ δ 1B 24 42 26 44 1B 28 42 39 PASS U+3B5 ε ε 1B 24 42 26 45 1B 28 42 40 PASS U+3B6 ζ ζ 1B 24 42 26 46 1B 28 42 41 PASS U+3B7 η η 1B 24 42 26 47 1B 28 42 42 PASS U+3B8 θ θ 1B 24 42 26 48 1B 28 42 43 PASS U+3B9 ι ι 1B 24 42 26 49 1B 28 42 44 PASS U+3BA κ κ 1B 24 42 26 4A 1B 28 42 45 PASS U+3BB λ λ 1B 24 42 26 4B 1B 28 42 46 PASS U+3BC μ μ 1B 24 42 26 4C 1B 28 42 47 PASS U+3BD ν ν 1B 24 42 26 4D 1B 28 42 48 PASS U+3BE ξ ξ 1B 24 42 26 4E 1B 28 42 49 PASS U+3BF ο ο 1B 24 42 26 4F 1B 28 42 50 PASS U+3C0 π π 1B 24 42 26 50 1B 28 42 51 PASS U+3C1 ρ ρ 1B 24 42 26 51 1B 28 42 52 PASS U+3C3 σ σ 1B 24 42 26 52 1B 28 42 53 PASS U+3C4 τ τ 1B 24 42 26 53 1B 28 42 54 PASS U+3C5 υ υ 1B 24 42 26 54 1B 28 42 55 PASS U+3C6 φ φ 1B 24 42 26 55 1B 28 42 56 PASS U+3C7 χ χ 1B 24 42 26 56 1B 28 42 57 PASS U+3C8 ψ ψ 1B 24 42 26 57 1B 28 42 58 PASS U+3C9 ω ω 1B 24 42 26 58 1B 28 42 59 59 PASS U+401 Ё Ё 1B 24 42 27 27 1B 28 42 60 60 PASS U+410 А А 1B 24 42 27 21 1B 28 42 … … 3249 3249 PASS U+6B1F 欟 欟 1B 24 42 5D 36 1B 28 42 3250 3250 PASS U+6B20 欠 欠 1B 24 42 37 67 1B 28 42 3251 FAIL U+6B21 次 次 1B 24 42 3C 21 1B 28 42 assert_equals: expected "次" but got "次⑬\n欣\n欧\n欲\n欷\n欸\n欹\n欺\n欽\n款\n歃\n歇\n歉\n歌\n歎\n歐\n歓\n歔\n歙\n歛\n歟\n歡\n止\n正\n此\n武\n歩\n歪\n歯\n歳\n歴\n歸\n歹\n死\n歿\n殀\n殃\n殄\n殆\n殉\n殊\n残\n殍\n殕\n殖\n殘\n殞\n殤\n殪\n殫\n殯\n殱\n殲\n殳\n殴\n段\n殷\n殺\n殻\n殼\n殿\n毀\n毅\n毆\n毋\n母\n毎\n毒\n毓\n比\n毖\n毘\n毛\n毟\n毫\n毬\n毯\n毳\n氈\n氏\n民\n氓\n气\n気\n氛\n氣\n氤\n水\n氷\n永\n氾\n氿\n汀\n汁\n求\n汎\n汐\n汕\n汗\n汚\n汜\n汝\n汞\n江\n池\n汢\n汨\n汪\n汯\n汰\n汲\n汳\n決\n汽\n汾\n沁\n沂\n沃\n沆\n沈\n沌\n沍\n沐\n沒\n沓\n沖\n沙\n沚\n沛\n没\n沢\n沫\n沮\n沱\n河\n沸\n油\n沺\n治\n沼\n沽\n沾\n沿\n況\n泄\n泅\n泉\n泊\n泌\n泓\n法\n泗\n泙\n泚\n泛\n泝\n泡\n波\n泣\n泥\n注\n泪\n泯\n泰\n泱\n泳\n洄\n洋\n洌\n洒\n洗\n洙\n洛\n洞\n洟\n津\n洩\n洪\n洫\n洲\n洳\n洵\n洶\n洸\n活\n洽\n派\n流\n浄\n浅\n浙\n浚\n浜\n浣\n浤\n浦\n浩\n浪\n浬\n浮\n浯\n浴\n海\n浸\n浹\n涅\n涇\n消\n涌\n涎\n涓\n涕\n涖\n涙\n涛\n涜\n涬\n涯\n液\n涵\n涸\n涼\n淀\n淅\n淆\n淇\n淋\n淌\n淏\n淑\n淒\n淕\n淘\n淙\n淞\n淡\n淤\n淦\n淨\n淪\n淫\n淬\n淮\n深\n淲\n淳\n淵\n混\n淸\n淹\n淺\n添\n淼\n清\n渇\n済\n渉\n渊\n渋\n渓\n渕\n渙\n渚\n減\n渝\n渟\n渠\n渡\n渣\n渤\n渥\n渦\n渧\n温\n渫\n測\n渭\n渮\n港\n游\n渹\n渺\n渼\n渾\n湃\n湊\n湍\n湎\n湖\n湘\n湛\n湜\n湟\n湧\n湫\n湮\n湯\n湲\n湶\n湾\n湿\n満\n溂\n溌\n溏\n源\n準\n溘\n溜\n溝\n溟\n溢\n溥\n溪\n溯\n溲\n溶\n溷\n溺\n溽\n溿\n滂\n滄\n滅\n滉\n滋\n滌\n滑\n滓\n滔\n滕\n滝\n滞\n滬\n滯\n滲\n滴\n滷\n滸\n滾\n滿\n漁\n漂\n漆\n漉\n漏\n漑\n漓\n演\n漕\n漠\n漢\n漣\n漫\n漬\n漱\n漲\n漸\n漾\n漿\n潁\n潅\n潔\n潘\n潛\n潜\n潟\n潤\n潦\n潭\n潮\n潯\n潰\n潴\n潸\n潺\n潼\n澀\n澁\n澂\n澄\n澆\n澈\n澎\n澑\n澗\n澡\n澣\n澤\n澪\n澱\n澳\n澵\n澹\n激\n濁\n濂\n濃\n濆\n濔\n濕\n濘\n濛\n濟\n濠\n濡\n濤\n濫\n濬\n濮\n濯\n濱\n濳\n濵\n濶\n濺\n濾\n瀁\n瀅\n瀇\n瀉\n瀋\n瀏\n瀑\n瀕\n瀘\n瀚\n瀛\n瀝\n瀞\n瀟\n瀦\n瀧\n瀨\n瀬\n瀰\n瀲\n瀾\n灌\n灑\n灘\n灣\n火\n灯\n灰\n灸\n灼\n災\n炅\n炉\n炊\n炎\n炒\n炙\n炫\n炬\n炭\n炮\n炯\n炳\n炸\n点\n為\n炻\n烈\n烋\n烏\n烙\n烝\n烟\n烱\n烹\n烽\n焄\n焉\n焏\n焔\n焙\n焚\n焜\n無\n焦\n然\n焼\n煆\n煇\n煉\n煌\n煎\n煕\n煖\n煙\n煜\n煢\n煤\n煥\n煦\n照\n煩\n煬\n煮\n煽\n熄\n熈\n熊\n熏\n熔\n熕\n熙\n熟\n熨\n熬\n熱\n熹\n熾\n燁\n燃\n燈\n燉\n燎\n燐\n燒\n燔\n燕\n燗\n營\n燠\n燥\n燦\n燧\n燬\n燭\n燮\n燵\n燹\n燻\n燼\n燾\n燿\n爆\n爍\n爐\n爛\n爨\n爪\n爬\n爭\n爰\n爲\n爵\n父\n爺\n爻\n爼\n爽\n爾\n爿\n牀\n牆\n片\n版\n牋\n牌\n牒\n牘\n牙\n牛\n牝\n牟\n牡\n牢\n牧\n物\n牲\n牴\n特\n牽\n牾\n犀\n犁\n犂\n犇\n犒\n犖\n犠\n犢\n犧\n犬\n犯\n犱\n犲\n状\n犹\n犾\n狂\n狃\n狄\n狆\n狎\n狐\n狒\n狗\n狙\n狛\n狠\n狡\n狢\n狩\n独\n狭\n狷\n狸\n狹\n狼\n狽\n猊\n猖\n猗\n猛\n猜\n猝\n猟\n猤\n猥\n猩\n猪\n猫\n献\n猯\n猴\n猶\n猷\n猾\n猿\n獄\n獅\n獎\n獏\n獗\n獣\n獨\n獪\n獰\n獲\n獵\n獷\n獸\n獺\n獻\n玄\n率\n玉\n王\n玖\n玩\n玲\n玳\n玻\n玽\n珀\n珂\n珈\n珉\n珊\n珍\n珎\n珒\n珖\n珞\n珠\n珣\n珥\n珪\n班\n珮\n珱\n珵\n珸\n現\n球\n琅\n理\n琇\n琉\n琢\n琥\n琦\n琩\n琪\n琮\n琲\n琳\n琴\n琵\n琶\n琺\n琿\n瑁\n瑕\n瑙\n瑚\n瑛\n瑜\n瑞\n瑟\n瑠\n瑢\n瑣\n瑤\n瑩\n瑪\n瑯\n瑰\n瑳\n瑶\n瑾\n璃\n璉\n璋\n璞\n璟\n璢\n璧\n環\n璽\n瓊\n瓏\n瓔\n瓜\n瓠\n瓢\n瓣\n瓦\n瓧\n瓩\n瓮\n瓰\n瓱\n瓲\n瓶\n瓷\n瓸\n甁\n甃\n甄\n甅\n甌\n甍\n甎\n甑\n甓\n甕\n甘\n甚\n甜\n甞\n生\n産\n甥\n甦\n用\n甫\n甬\n甯\n田\n由\n甲\n申\n男\n甸\n町\n画\n甼\n畄\n畆\n畉\n畊\n畋\n界\n畍\n畏\n畑\n畔\n留\n畚\n畛\n畜\n畝\n畠\n畢\n畤\n略\n畦\n畧\n畩\n番\n畫\n畭\n畯\n異\n畳\n畴\n當\n畷\n畸\n畿\n疂\n疆\n疇\n疉\n疊\n疋\n疎\n疏\n疑\n疔\n疚\n疝\n疣\n疥\n疫\n疱\n疲\n疳\n疵\n疸\n疹\n疼\n疽\n疾\n痂\n痃\n病\n症\n痊\n痍\n痒\n痔\n痕\n痘\n痙\n痛\n痞\n痢\n痣\n痩\n痰\n痲\n痳\n痴\n痺\n痼\n痾\n痿\n瘁\n瘉\n瘋\n瘍\n瘟\n瘠\n瘡\n瘢\n瘤\n瘧\n瘰\n瘴\n瘻\n療\n癆\n癇\n癈\n癌\n癒\n癖\n癘\n癜\n癡\n癢\n癧\n癨\n癩\n癪\n癬\n癰\n癲\n癶\n癸\n発\n登\n發\n白\n百\n皀\n皂\n皃\n的\n皆\n皇\n皈\n皋\n皎\n皐\n皓\n皖\n皙\n皚\n皛\n皜\n皞\n皦\n皮\n皰\n皴\n皷\n皸\n皹\n皺\n皿\n盂\n盃\n盆\n盈\n益\n盍\n盒\n盖\n盗\n盛\n盜\n盞\n盟\n盡\n監\n盤\n盥\n盧\n盪\n目\n盲\n直\n相\n盻\n盾\n省\n眄\n眇\n眈\n眉\n看\n県\n眛\n眞\n真\n眠\n眤\n眥\n眦\n眩\n眷\n眸\n眺\n眼\n着\n睆\n睇\n睚\n睛\n睡\n督\n睥\n睦\n睨\n睫\n睹\n睾\n睿\n瞋\n瞎\n瞑\n瞞\n瞠\n瞥\n瞬\n瞭\n瞰\n瞳\n瞶\n瞹\n瞻\n瞼\n瞽\n瞿\n矇\n矍\n矗\n矚\n矛\n矜\n矢\n矣\n知\n矧\n矩\n短\n矮\n矯\n石\n矼\n砂\n砌\n砒\n研\n砕\n砠\n砡\n砥\n砦\n砧\n砲\n破\n砺\n砿\n硅\n硎\n硝\n硤\n硫\n硬\n硯\n硲\n硴\n硺\n硼\n碁\n碆\n碇\n碌\n碍\n碎\n碑\n碓\n碕\n碗\n碚\n碣\n碧\n碩\n碪\n碯\n碵\n確\n碼\n碾\n磁\n磅\n磆\n磊\n磋\n磐\n磑\n磔\n磚\n磧\n磨\n磬\n磯\n磴\n磽\n礁\n礇\n礎\n礑\n礒\n礙\n礦\n礪\n礫\n礬\n礰\n示\n礼\n社\n祀\n祁\n祇\n祈\n祉\n祐\n祓\n祕\n祖\n祗\n祚\n祝\n神\n祟\n祠\n祢\n祥\n票\n祭\n祷\n祺\n祿\n禀\n禁\n禄\n禅\n禊\n禍\n禎\n福\n禔\n禛\n禝\n禦\n禧\n禪\n禮\n禰\n禳\n禹\n禺\n禽\n禾\n禿\n秀\n私\n秉\n秋\n科\n秒\n秕\n秘\n租\n秡\n秣\n秤\n秦\n秧\n秩\n秬\n称\n移\n稀\n稈\n程\n稍\n税\n稔\n稗\n稘\n稙\n稚\n稜\n稟\n稠\n種\n稱\n稲\n稷\n稻\n稼\n稽\n稾\n稿\n穀\n穂\n穃\n穆\n穉\n積\n穎\n穏\n穐\n穗\n穡\n穢\n穣\n穩\n穫\n穰\n穴\n究\n穹\n空\n穽\n穿\n突\n窃\n窄\n窈\n窒\n窓\n窕\n窖\n窗\n窘\n窟\n窩\n窪\n窮\n窯\n窰\n窶\n窺\n窿\n竃\n竄\n竅\n竇\n竈\n竊\n立\n竍\n竏\n竑\n竒\n竓\n竕\n站\n竚\n竜\n竝\n竟\n章\n竡\n竢\n竣\n童\n竦\n竧\n竪\n竫\n竭\n端\n竰\n競\n竸\n竹\n竺\n竿\n笂\n笄\n笆\n笈\n笊\n笋\n笏\n笑\n笘\n笙\n笛\n笞\n笠\n笥\n符\n笨\n第\n笳\n笵\n笶\n笹\n筅\n筆\n筈\n等\n筋\n筌\n筍\n筏\n筐\n筑\n筒\n答\n策\n筝\n筥\n筧\n筬\n筮\n筰\n筱\n筴\n筵\n筺\n箆\n箇\n箋\n箍\n箏\n箒\n箔\n箕\n算\n箘\n箙\n箚\n箜\n箝\n箞\n箟\n管\n箪\n箭\n箱\n箴\n箸\n節\n篁\n範\n篆\n篇\n築\n篋\n篌\n篏\n篝\n篠\n篤\n篥\n篦\n篩\n篭\n篳\n篶\n篷\n簀\n簇\n簍\n簑\n簒\n簓\n簔\n簗\n簟\n簡\n簣\n簧\n簪\n簫\n簷\n簸\n簽\n簾\n簿\n籀\n籃\n籌\n籍\n籏\n籐\n籔\n籖\n籘\n籟\n籠\n籤\n籥\n籬\n米\n籵\n籾\n粁\n粂\n粃\n粉\n粋\n粍\n粐\n粒\n粕\n粗\n粘\n粛\n粟\n粡\n粢\n粤\n粥\n粧\n粨\n粫\n粭\n粮\n粱\n粲\n粳\n粹\n粽\n精\n糀\n糂\n糅\n糊\n糎\n糒\n糖\n糘\n糜\n糞\n糟\n糠\n糢\n糧\n糯\n糲\n糴\n糶\n糸\n糺\n系\n糾\n紀\n紂\n約\n紅\n紆\n紊\n紋\n納\n紐\n純\n紕\n紗\n紘\n紙\n級\n紛\n紜\n素\n紡\n索\n紫\n紬\n紮\n累\n細\n紲\n紳\n紵\n紹\n紺\n紿\n終\n絃\n組\n絅\n絆\n絈\n絋\n経\n絎\n絏\n結\n絖\n絛\n絜\n絞\n絡\n絢\n絣\n給\n絨\n絮\n統\n絲\n絳\n絵\n絶\n絹\n絽\n綉\n綏\n經\n継\n続\n綛\n綜\n綟\n綠\n綢\n綣\n綫\n綬\n維\n綮\n綯\n綰\n綱\n網\n綴\n綵\n綷\n綸\n綺\n綻\n綽\n綾\n綿\n緇\n緊\n緋\n総\n緑\n緒\n緕\n緖\n緘\n線\n緜\n緝\n緞\n締\n緡\n緤\n編\n緩\n緬\n緯\n緲\n練\n緻\n縁\n縄\n縅\n縉\n縊\n縋\n縒\n縛\n縞\n縟\n縡\n縢\n縣\n縦\n縫\n縮\n縱\n縲\n縵\n縷\n縹\n縺\n縻\n總\n績\n繁\n繃\n繆\n繊\n繋\n繍\n繒\n織\n繕\n繖\n繙\n繚\n繝\n繞\n繦\n繧\n繩\n繪\n繭\n繰\n繹\n繻\n繼\n繽\n繿\n纂\n纃\n纈\n纉\n纊\n續\n纎\n纏\n纐\n纒\n纓\n纔\n纖\n纛\n纜\n缶\n缸\n缺\n罅\n罇\n罌\n罍\n罎\n罐\n网\n罔\n罕\n罘\n罟\n罠\n罧\n罨\n罩\n罪\n罫\n置\n罰\n署\n罵\n罷\n罸\n罹\n羂\n羃\n羅\n羆\n羇\n羈\n羊\n羌\n美\n羔\n羚\n羝\n羞\n羡\n羣\n群\n羨\n義\n羮\n羯\n羲\n羶\n羸\n羹\n羽\n翁\n翅\n翆\n翊\n翌\n習\n翔\n翕\n翠\n翡\n翦\n翩\n翫\n翰\n翳\n翹\n翻\n翼\n耀\n老\n考\n耄\n者\n耆\n耋\n而\n耐\n耒\n耕\n耗\n耘\n耙\n耜\n耡\n耨\n耳\n耶\n耻\n耽\n耿\n聆\n聊\n聒\n聖\n聘\n聚\n聞\n聟\n聡\n聢\n聨\n聯\n聰\n聲\n聳\n聴\n聶\n職\n聹\n聽\n聾\n聿\n肄\n肅\n肆\n肇\n肉\n肋\n肌\n肓\n肖\n肘\n肚\n肛\n肝\n股\n肢\n肥\n肩\n肪\n肬\n肭\n肯\n肱\n育\n肴\n肺\n胃\n胄\n胆\n背\n胎\n胖\n胙\n胚\n胛\n胝\n胞\n胡\n胤\n胥\n胯\n胱\n胴\n胸\n胼\n能\n脂\n脅\n脆\n脇\n脈\n脉\n脊\n脚\n脛\n脣\n脩\n脯\n脱\n脳\n脹\n脾\n腆\n腋\n腎\n腐\n腑\n腓\n腔\n腕\n腟\n腥\n腦\n腫\n腮\n腰\n腱\n腴\n腸\n腹\n腺\n腿\n膀\n膂\n膃\n膈\n膊\n膏\n膓\n膕\n膚\n膜\n膝\n膠\n膣\n膤\n膨\n膩\n膰\n膳\n膵\n膸\n膺\n膽\n膾\n膿\n臀\n臂\n臆\n臈\n臉\n臍\n臑\n臓\n臘\n臙\n臚\n臟\n臠\n臣\n臥\n臧\n臨\n自\n臭\n至\n致\n臺\n臻\n臼\n臾\n舁\n舂\n舅\n與\n興\n舉\n舊\n舌\n舍\n舎\n舐\n舒\n舖\n舗\n舘\n舛\n舜\n舞\n舟\n舩\n航\n舫\n般\n舮\n舳\n舵\n舶\n舷\n舸\n船\n艀\n艇\n艘\n艙\n艚\n艝\n艟\n艢\n艤\n艦\n艨\n艪\n艫\n艮\n良\n艱\n色\n艶\n艷\n艸\n艾\n芋\n芍\n芒\n芙\n芝\n芟\n芥\n芦\n芫\n芬\n芭\n芯\n花\n芳\n芸\n芹\n芻\n芽\n苅\n苑\n苒\n苓\n苔\n苗\n苙\n苛\n苜\n苞\n苟\n苡\n苣\n若\n苦\n苧\n苫\n英\n苳\n苴\n苹\n苺\n苻\n茁\n茂\n范\n茄\n茅\n茆\n茉\n茎\n茖\n茗\n茘\n茜\n茣\n茨\n茫\n茯\n茱\n茲\n茴\n茵\n茶\n茸\n茹\n荀\n荅\n草\n荊\n荏\n荐\n荒\n荘\n荢\n荳\n荵\n荷\n荻\n荼\n荿\n莅\n莇\n莉\n莊\n莎\n莓\n莖\n莚\n莞\n莟\n莠\n莢\n莨\n莪\n莫\n莱\n莵\n莽\n菁\n菅\n菇\n菊\n菌\n菎\n菓\n菖\n菘\n菜\n菟\n菠\n菩\n菫\n華\n菰\n菱\n菲\n菴\n菶\n菷\n菻\n菽\n萃\n萄\n萇\n萋\n萌\n萍\n萎\n萓\n萠\n萢\n萩\n萪\n萬\n萱\n萵\n萸\n萼\n落\n葆\n葈\n葉\n葎\n著\n葛\n葡\n葢\n董\n葦\n葩\n葫\n葬\n葭\n葮\n葯\n葱\n葵\n葷\n葹\n葺\n蒂\n蒄\n蒋\n蒐\n蒔\n蒙\n蒜\n蒟\n蒡\n蒭\n蒲\n蒴\n蒸\n蒹\n蒻\n蒼\n蒿\n蓁\n蓄\n蓆\n蓉\n蓊\n蓋\n蓍\n蓐\n蓑\n蓖\n蓙\n蓚\n蓜\n蓬\n蓮\n蓴\n蓼\n蓿\n蔀\n蔆\n蔑\n蔓\n蔔\n蔕\n蔗\n蔘\n蔚\n蔟\n蔡\n蔦\n蔬\n蔭\n蔵\n蔽\n蕀\n蕁\n蕃\n蕈\n蕉\n蕊\n蕋\n蕎\n蕓\n蕕\n蕗\n蕘\n蕙\n蕚\n蕣\n蕨\n蕩\n蕪\n蕫\n蕭\n蕷\n蕾\n薀\n薄\n薇\n薈\n薊\n薐\n薑\n薔\n薗\n薙\n薛\n薜\n薤\n薦\n薨\n薩\n薪\n薫\n薬\n薮\n薯\n薰\n薹\n薺\n藁\n藉\n藍\n藏\n藐\n藕\n藜\n藝\n藤\n藥\n藩\n藪\n藷\n藹\n藺\n藻\n藾\n蘂\n蘆\n蘇\n蘊\n蘋\n蘓\n蘖\n蘗\n蘚\n蘢\n蘭\n蘯\n蘰\n蘿\n虍\n虎\n虐\n虔\n處\n虚\n虜\n虞\n號\n虧\n虫\n虱\n虹\n虻\n蚊\n蚋\n蚌\n蚓\n蚕\n蚣\n蚤\n蚩\n蚪\n蚫\n蚯\n蚰\n蚶\n蛄\n蛆\n蛇\n蛉\n蛋\n蛍\n蛎\n蛔\n蛙\n蛛\n蛞\n蛟\n蛤\n蛩\n蛬\n蛭\n蛮\n蛯\n蛸\n蛹\n蛻\n蛾\n蜀\n蜂\n蜃\n蜆\n蜈\n蜉\n蜊\n蜍\n蜑\n蜒\n蜘\n蜚\n蜜\n蜥\n蜩\n蜴\n蜷\n蜻\n蜿\n蝉\n蝋\n蝌\n蝎\n蝓\n蝕\n蝗\n蝙\n蝟\n蝠\n蝣\n蝦\n蝨\n蝪\n蝮\n蝴\n蝶\n蝸\n蝿\n螂\n融\n螟\n螢\n螫\n螯\n螳\n螺\n螻\n螽\n蟀\n蟄\n蟆\n蟇\n蟋\n蟐\n蟒\n蟠\n蟯\n蟲\n蟶\n蟷\n蟹\n蟻\n蟾\n蠅\n蠇\n蠍\n蠎\n蠏\n蠑\n蠕\n蠖\n蠡\n蠢\n蠣\n蠧\n蠱\n蠶\n蠹\n蠻\n血\n衂\n衄\n衆\n行\n衍\n衒\n術\n街\n衙\n衛\n衝\n衞\n衡\n衢\n衣\n表\n衫\n衰\n衲\n衵\n衷\n衽\n衾\n衿\n袁\n袂\n袈\n袋\n袍\n袒\n袖\n袗\n袙\n袞\n袢\n袤\n被\n袮\n袰\n袱\n袴\n袵\n袷\n袿\n裁\n裂\n裃\n裄\n装\n裏\n裔\n裕\n裘\n裙\n補\n裝\n裟\n裡\n裨\n裲\n裳\n裴\n裵\n裸\n裹\n裼\n製\n裾\n褂\n褄\n複\n褊\n褌\n褐\n褒\n褓\n褜\n褝\n褞\n褥\n褪\n褫\n褶\n褸\n褻\n襁\n襃\n襄\n襌\n襍\n襖\n襞\n襟\n襠\n襤\n襦\n襪\n襭\n襯\n襲\n襴\n襷\n襾\n西\n要\n覃\n覆\n覇\n覈\n覊\n見\n規\n覓\n視\n覗\n覘\n覚\n覡\n覦\n覧\n覩\n親\n覬\n覯\n覲\n観\n覺\n覽\n覿\n觀\n角\n觚\n觜\n觝\n解\n触\n觧\n觴\n觸\n言\n訂\n訃\n計\n訊\n訌\n討\n訐\n訒\n訓\n訖\n託\n記\n訛\n訝\n訟\n訣\n訥\n訪\n設\n許\n訳\n訴\n訶\n訷\n診\n註\n証\n詁\n詆\n詈\n詐\n詑\n詒\n詔\n評\n詛\n詞\n詠\n詢\n詣\n試\n詩\n詫\n詬\n詭\n詮\n詰\n話\n該\n詳\n詹\n詼\n誂\n誄\n誅\n誇\n誉\n誌\n認\n誑\n誓\n誕\n誘\n誚\n語\n誠\n誡\n誣\n誤\n誥\n誦\n誧\n誨\n説\n読\n誰\n課\n誹\n誼\n誾\n調\n諂\n諄\n談\n請\n諌\n諍\n諏\n諒\n論\n諚\n諛\n諜\n諞\n諟\n諠\n諡\n諢\n諤\n諦\n諧\n諫\n諭\n諮\n諱\n諳\n諶\n諷\n諸\n諺\n諾\n謀\n謁\n謂\n謄\n謇\n謌\n謎\n謐\n謔\n謖\n謗\n謙\n謚\n講\n謝\n謠\n謡\n謦\n謨\n謫\n謬\n謳\n謹\n謾\n譁\n證\n譌\n譎\n譏\n譓\n譖\n識\n譚\n譛\n譜\n譟\n警\n譫\n譬\n譯\n議\n譱\n譲\n譴\n護\n譽\n譿\n讀\n讃\n變\n讌\n讎\n讐\n讒\n讓\n讖\n讙\n讚\n谷\n谺\n谿\n豁\n豆\n豈\n豊\n豌\n豎\n豐\n豕\n豚\n象\n豢\n豪\n豫\n豬\n豸\n豹\n豺\n豼\n貂\n貅\n貉\n貊\n貌\n貍\n貎\n貔\n貘\n貝\n貞\n負\n財\n貢\n貧\n貨\n販\n貪\n貫\n責\n貭\n貮\n貯\n貰\n貲\n貳\n貴\n貶\n買\n貸\n費\n貼\n貽\n貿\n賀\n賁\n賂\n賃\n賄\n資\n賈\n賊\n賍\n賎\n賑\n賓\n賚\n賛\n賜\n賞\n賠\n賢\n賣\n賤\n賦\n質\n賭\n賰\n賴\n賺\n賻\n購\n賽\n贄\n贅\n贇\n贈\n贊\n贋\n贍\n贏\n贐\n贒\n贓\n贔\n贖\n赤\n赦\n赧\n赫\n赭\n走\n赱\n赳\n赴\n赶\n起\n趁\n超\n越\n趙\n趣\n趨\n足\n趺\n趾\n跂\n跋\n跌\n跏\n跖\n跚\n跛\n距\n跟\n跡\n跣\n跨\n跪\n跫\n路\n跳\n践\n跼\n跿\n踈\n踉\n踊\n踏\n踐\n踝\n踞\n踟\n踪\n踰\n踴\n踵\n蹂\n蹄\n蹇\n蹈\n蹉\n蹊\n蹌\n蹐\n蹕\n蹙\n蹟\n蹠\n蹣\n蹤\n蹲\n蹴\n蹶\n蹼\n躁\n躄\n躅\n躇\n躊\n躋\n躍\n躑\n躓\n躔\n躙\n躡\n躪\n身\n躬\n躯\n躰\n躱\n躾\n軅\n軆\n軈\n車\n軋\n軌\n軍\n軏\n軒\n軛\n軟\n転\n軣\n軫\n軸\n軻\n軼\n軽\n軾\n較\n輅\n載\n輊\n輌\n輒\n輓\n輔\n輕\n輙\n輛\n輜\n輝\n輟\n輦\n輩\n輪\n輯\n輳\n輸\n輹\n輻\n輾\n輿\n轂\n轄\n轅\n轆\n轉\n轌\n轍\n轎\n轗\n轜\n轟\n轡\n轢\n轣\n轤\n辛\n辜\n辞\n辟\n辣\n辧\n辨\n辭\n辮\n辯\n辰\n辱\n農\n辷\n辺\n辻\n込\n辿\n迂\n迄\n迅\n迎\n近\n返\n迚\n迢\n迥\n迦\n迩\n迪\n迫\n迭\n迯\n述\n迴\n迷\n迸\n迹\n迺\n追\n退\n送\n逃\n逅\n逆\n逋\n逍\n逎\n透\n逐\n逑\n逓\n途\n逕\n逖\n逗\n這\n通\n逝\n逞\n速\n造\n逡\n逢\n連\n逧\n逮\n週\n進\n逵\n逶\n逸\n逹\n逼\n逾\n遁\n遂\n遅\n遇\n遉\n遊\n運\n遍\n過\n遏\n遐\n遑\n遒\n道\n達\n違\n遖\n遘\n遙\n遜\n遞\n遠\n遡\n遣\n遥\n遧\n遨\n適\n遭\n遮\n遯\n遲\n遵\n遶\n遷\n選\n遺\n遼\n遽\n避\n邀\n邁\n邂\n邃\n還\n邇\n邉\n邊\n邏\n邑\n那\n邦\n邨\n邪\n邯\n邱\n邵\n邸\n郁\n郊\n郎\n郛\n郞\n郡\n郢\n郤\n部\n郭\n郵\n郷\n都\n鄂\n鄒\n鄕\n鄙\n鄧\n鄭\n鄰\n鄲\n酉\n酊\n酋\n酌\n配\n酎\n酒\n酔\n酖\n酘\n酢\n酣\n酥\n酩\n酪\n酬\n酲\n酳\n酵\n酷\n酸\n醂\n醇\n醉\n醋\n醍\n醐\n醒\n醗\n醜\n醢\n醤\n醪\n醫\n醯\n醴\n醵\n醸\n醺\n釀\n釁\n釆\n采\n釈\n釉\n釋\n里\n重\n野\n量\n釐\n金\n釖\n釗\n釘\n釚\n釛\n釜\n針\n釞\n釟\n釡\n釣\n釤\n釥\n釦\n釧\n釭\n釮\n釵\n釶\n釼\n釿\n鈆\n鈊\n鈍\n鈎\n鈐\n鈑\n鈔\n鈕\n鈞\n鈩\n鈬\n鈴\n鈷\n鈹\n鈺\n鈼\n鈿\n鉀\n鉄\n鉅\n鉈\n鉉\n鉋\n鉎\n鉐\n鉑\n鉗\n鉙\n鉚\n鉛\n鉞\n鉢\n鉤\n鉦\n鉧\n鉱\n鉷\n鉸\n鉾\n銀\n銃\n銅\n銈\n銑\n銓\n銕\n銖\n銘\n銚\n銛\n銜\n銧\n銭\n銷\n銹\n鋏\n鋐\n鋒\n鋓\n鋕\n鋗\n鋙\n鋠\n鋤\n鋧\n鋩\n鋪\n鋭\n鋲\n鋳\n鋸\n鋹\n鋺\n鋻\n鋼\n鋿\n錂\n錆\n錏\n錐\n錘\n錙\n錚\n錝\n錞\n錠\n錡\n錢\n錣\n錥\n錦\n錨\n錫\n錬\n錮\n錯\n録\n錵\n錺\n錻\n鍄\n鍈\n鍋\n鍍\n鍔\n鍖\n鍗\n鍛\n鍜\n鍠\n鍬\n鍮\n鍰\n鍵\n鍼\n鍾\n鎌\n鎔\n鎖\n鎗\n鎚\n鎤\n鎧\n鎬\n鎭\n鎮\n鎰\n鎹\n鏃\n鏆\n鏈\n鏐\n鏑\n鏖\n鏗\n鏘\n鏝\n鏞\n鏡\n鏤\n鏥\n鏨\n鏸\n鐃\n鐇\n鐐\n鐓\n鐔\n鐘\n鐙\n鐚\n鐡\n鐫\n鐱\n鐵\n鐶\n鐸\n鐺\n鑁\n鑄\n鑅\n鑈\n鑑\n鑒\n鑓\n鑚\n鑛\n鑞\n鑠\n鑢\n鑪\n鑰\n鑵\n鑷\n鑼\n鑽\n鑾\n鑿\n钁\n長\n門\n閂\n閃\n閇\n閉\n閊\n開\n閏\n閑\n閒\n間\n閔\n閖\n閘\n閙\n閠\n関\n閣\n閤\n閥\n閧\n閨\n閭\n閲\n閹\n閻\n閼\n閾\n闃\n闇\n闊\n闌\n闍\n闔\n闕\n闖\n闘\n關\n闡\n闢\n闥\n阜\n阡\n阨\n阪\n阮\n阯\n防\n阻\n阿\n陀\n陂\n附\n陋\n陌\n降\n陏\n限\n陛\n陜\n陝\n陞\n陟\n院\n陣\n除\n陥\n陦\n陪\n陬\n陰\n陲\n陳\n陵\n陶\n陷\n陸\n険\n陽\n隅\n隆\n隈\n隊\n隋\n隍\n階\n随\n隔\n隕\n隗\n隘\n隙\n際\n障\n隝\n隠\n隣\n隧\n隨\n險\n隯\n隰\n隱\n隲\n隴\n隶\n隷\n隸\n隹\n隻\n隼\n雀\n雁\n雄\n雅\n集\n雇\n雉\n雋\n雌\n雍\n雎\n雑\n雕\n雖\n雙\n雛\n雜\n離\n難\n雨\n雪\n雫\n雰\n雲\n零\n雷\n雹\n電\n需\n霄\n霆\n震\n霈\n霊\n霍\n霎\n霏\n霑\n霓\n霖\n霙\n霜\n霞\n霤\n霧\n霪\n霰\n露\n霳\n霸\n霹\n霻\n霽\n霾\n靂\n靃\n靄\n靆\n靈\n靉\n靍\n靏\n靑\n青\n靕\n靖\n静\n靜\n非\n靠\n靡\n面\n靤\n靦\n靨\n革\n靫\n靭\n靱\n靴\n靹\n靺\n靼\n鞁\n鞄\n鞅\n鞆\n鞋\n鞍\n鞏\n鞐\n鞘\n鞜\n鞠\n鞣\n鞦\n鞨\n鞫\n鞭\n鞳\n鞴\n韃\n韆\n韈\n韋\n韓\n韜\n韭\n韮\n韲\n音\n韵\n韶\n韻\n響\n頁\n頂\n頃\n項\n順\n須\n頌\n頏\n預\n頑\n頒\n頓\n頗\n領\n頚\n頡\n頤\n頬\n頭\n頴\n頷\n頸\n頻\n頼\n頽\n顆\n顋\n題\n額\n顎\n顏\n顔\n顕\n顗\n願\n顛\n類\n顥\n顧\n顫\n顯\n顰\n顱\n顳\n顴\n風\n颪\n颯\n颱\n颶\n飃\n飄\n飆\n飛\n飜\n食\n飢\n飩\n飫\n飭\n飮\n飯\n飲\n飴\n飼\n飽\n飾\n餃\n餅\n餉\n養\n餌\n餐\n餒\n餓\n餔\n餘\n餝\n餞\n餠\n餡\n餤\n餧\n館\n餬\n餮\n餽\n餾\n饂\n饅\n饉\n饋\n饌\n饐\n饑\n饒\n饕\n饗\n首\n馗\n馘\n香\n馞\n馥\n馨\n馬\n馭\n馮\n馳\n馴\n馼\n駁\n駄\n駅\n駆\n駈\n駐\n駑\n駒\n駕\n駘\n駛\n駝\n駟\n駢\n駭\n駮\n駱\n駲\n駸\n駻\n駿\n騁\n騅\n騎\n騏\n騒\n験\n騙\n騨\n騫\n騰\n騷\n騾\n驀\n驂\n驃\n驅\n驍\n驎\n驕\n驗\n驚\n驛\n驟\n驢\n驤\n驥\n驩\n驪\n驫\n骨\n骭\n骰\n骸\n骼\n髀\n髄\n髏\n髑\n髓\n體\n高\n髙\n髜\n髞\n髟\n髢\n髣\n髦\n髪\n髫\n髭\n髮\n髯\n髱\n髴\n髷\n髻\n鬆\n鬘\n鬚\n鬟\n鬢\n鬣\n鬥\n鬧\n鬨\n鬩\n鬪\n鬮\n鬯\n鬱\n鬲\n鬻\n鬼\n魁\n魂\n魃\n魄\n魅\n魍\n魎\n魏\n魑\n魔\n魘\n魚\n魯\n魲\n魴\n魵\n鮃\n鮎\n鮏\n鮑\n鮒\n鮓\n鮖\n鮗\n鮟\n鮠\n鮨\n鮪\n鮫\n鮭\n鮮\n鮱\n鮴\n鮹\n鮻\n鯀\n鯆\n鯉\n鯊\n鯏\n鯑\n鯒\n鯔\n鯖\n鯛\n鯡\n鯢\n鯣\n鯤\n鯨\n鯰\n鯱\n鯲\n鯵\n鰀\n鰄\n鰆\n鰈\n鰉\n鰊\n鰌\n鰍\n鰐\n鰒\n鰓\n鰔\n鰕\n鰛\n鰡\n鰤\n鰥\n鰭\n鰮\n鰯\n鰰\n鰲\n鰹\n鰺\n鰻\n鰾\n鱆\n鱇\n鱈\n鱒\n鱗\n鱚\n鱠\n鱧\n鱶\n鱸\n鳥\n鳧\n鳩\n鳫\n鳬\n鳰\n鳳\n鳴\n鳶\n鴃\n鴆\n鴇\n鴈\n鴉\n鴎\n鴒\n鴕\n鴛\n鴟\n鴣\n鴦\n鴨\n鴪\n鴫\n鴬\n鴻\n鴾\n鴿\n鵁\n鵄\n鵆\n鵈\n鵐\n鵑\n鵙\n鵜\n鵝\n鵞\n鵠\n鵡\n鵤\n鵫\n鵬\n鵯\n鵰\n鵲\n鵺\n鶇\n鶉\n鶏\n鶚\n鶤\n鶩\n鶫\n鶯\n鶲\n鶴\n鶸\n鶺\n鶻\n鷁\n鷂\n鷄\n鷆\n鷏\n鷓\n鷙\n鷦\n鷭\n鷯\n鷲\n鷸\n鷹\n鷺\n鷽\n鸙\n鸚\n鸛\n鸞\n鹵\n鹸\n鹹\n鹽\n次⑬\n麁\n麈\n麋\n麌\n麑\n麒\n麓\n麕\n麗\n麝\n麟\n麥\n麦\n麩\n麪\n麭\n麸\n麹\n麺\n麻\n麼\n麾\n麿\n黄\n黌\n黍\n黎\n黏\n黐\n黑\n黒\n黔\n默\n黙\n黛\n黜\n黝\n點\n黠\n黥\n黨\n黯\n黴\n黶\n黷\n黹\n黻\n黼\n黽\n鼇\n鼈\n鼎\n鼓\n鼕\n鼠\n鼡\n鼬\n鼻\n鼾\n齊\n齋\n齎\n齏\n齒\n齔\n齟\n齠\n齡\n齢\n齣\n齦\n齧\n齪\n齬\n齲\n齶\n齷\n龍\n龕\n龜\n龝\n龠\n朗\n隆\n﨎\n﨏\n塚\n﨑\n晴\n﨓\n﨔\n凞\n猪\n益\n礼\n神\n祥\n福\n靖\n精\n羽\n﨟\n蘒\n﨡\n諸\n﨣\n﨤\n逸\n都\n﨧\n﨨\n﨩\n飯\n飼\n館\n鶴\n!\n"\n#\n$\n%\n&\n'\n(\n)\n*\n+\n,\n-\n.\n/\n0\n1\n2\n3\n4\n5\n6\n7\n8\n9\n:\n;\n<\n=\n>\n?\n@\nA\nB\nC\nD\nE\nF\nG\nH\nI\nJ\nK\nL\nM\nN\nO\nP\nQ\nR\nS\nT\nU\nV\nW\nX\nY\nZ\n[\n\\n]\n^\n_\n`\na\nb\nc\nd\ne\nf\ng\nh\ni\nj\nk\nl\nm\nn\no\np\nq\nr\ns\nt\nu\nv\nw\nx\ny\nz\n{\n|\n}\n~\n¢\n£\n¬\n ̄\n¦\n¥\n" 3251 PASS U+6B21 次 次 1B 24 42 3C 21 1B 28 42 3252 3252 PASS U+6B23 欣 欣 1B 24 42 36 55 1B 28 42 3253 3253 PASS U+6B27 欧 欧 1B 24 42 32 24 1B 28 42 … … 7112 7112 PASS U+9E79 鹹 鹹 1B 24 42 73 44 1B 28 42 7113 7113 PASS U+9E7D 鹽 鹽 1B 24 42 73 45 1B 28 42 7114 FAIL U+9E7F 鹿 鹿 1B 24 42 3C 2F 1B 28 42 assert_equals: expected "鹿" but got "次⑬\n麁\n麈\n麋\n麌\n麑\n麒\n麓\n麕\n麗\n麝\n麟\n麥\n麦\n麩\n麪\n麭\n麸\n麹\n麺\n麻\n麼\n麾\n麿\n黄\n黌\n黍\n黎\n黏\n黐\n黑\n黒\n黔\n默\n黙\n黛\n黜\n黝\n點\n黠\n黥\n黨\n黯\n黴\n黶\n黷\n黹\n黻\n黼\n黽\n鼇\n鼈\n鼎\n鼓\n鼕\n鼠\n鼡\n鼬\n鼻\n鼾\n齊\n齋\n齎\n齏\n齒\n齔\n齟\n齠\n齡\n齢\n齣\n齦\n齧\n齪\n齬\n齲\n齶\n齷\n龍\n龕\n龜\n龝\n龠\n朗\n隆\n﨎\n﨏\n塚\n﨑\n晴\n﨓\n﨔\n凞\n猪\n益\n礼\n神\n祥\n福\n靖\n精\n羽\n﨟\n蘒\n﨡\n諸\n﨣\n﨤\n逸\n都\n﨧\n﨨\n﨩\n飯\n飼\n館\n鶴\n!\n"\n#\n$\n%\n&\n'\n(\n)\n*\n+\n,\n-\n.\n/\n0\n1\n2\n3\n4\n5\n6\n7\n8\n9\n:\n;\n<\n=\n>\n?\n@\nA\nB\nC\nD\nE\nF\nG\nH\nI\nJ\nK\nL\nM\nN\nO\nP\nQ\nR\nS\nT\nU\nV\nW\nX\nY\nZ\n[\n\\n]\n^\n_\n`\na\nb\nc\nd\ne\nf\ng\nh\ni\nj\nk\nl\nm\nn\no\np\nq\nr\ns\nt\nu\nv\nw\nx\ny\nz\n{\n|\n}\n~\n¢\n£\n¬\n ̄\n¦\n¥\n" 7114 PASS U+9E7F 鹿 鹿 1B 24 42 3C 2F 1B 28 42 7115 7115 PASS U+9E81 麁 麁 1B 24 42 73 46 1B 28 42 7116 7116 PASS U+9E88 麈 麈 1B 24 42 73 47 1B 28 42 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/iso-2022-jp/iso2022jp_chars-csiso2022jp.html
r264561 r266620 33 33 <span data-cp="3A8" data-bytes="1B 24 42 26 37 1B 28 42">$B&7(B</span> 34 34 <span data-cp="3A9" data-bytes="1B 24 42 26 38 1B 28 42">$B&8(B</span> 35 <span data-cp="3B1" data-bytes="1B 24 42 26 41 1B 28 42">$B&A ;(B</span>36 <span data-cp="3B2" data-bytes="1B 24 42 26 42 1B 28 42">$B&B ;(B</span>37 <span data-cp="3B3" data-bytes="1B 24 42 26 43 1B 28 42">$B&C ;(B</span>38 <span data-cp="3B4" data-bytes="1B 24 42 26 44 1B 28 42">$B&D ;(B</span>39 <span data-cp="3B5" data-bytes="1B 24 42 26 45 1B 28 42">$B&E ;(B</span>40 <span data-cp="3B6" data-bytes="1B 24 42 26 46 1B 28 42">$B&F ;(B</span>41 <span data-cp="3B7" data-bytes="1B 24 42 26 47 1B 28 42">$B&G ;(B</span>42 <span data-cp="3B8" data-bytes="1B 24 42 26 48 1B 28 42">$B&H ;(B</span>43 <span data-cp="3B9" data-bytes="1B 24 42 26 49 1B 28 42">$B&I ;(B</span>44 <span data-cp="3BA" data-bytes="1B 24 42 26 4A 1B 28 42">$B&J ;(B</span>45 <span data-cp="3BB" data-bytes="1B 24 42 26 4B 1B 28 42">$B&K ;(B</span>46 <span data-cp="3BC" data-bytes="1B 24 42 26 4C 1B 28 42">$B&L ;(B</span>47 <span data-cp="3BD" data-bytes="1B 24 42 26 4D 1B 28 42">$B&M ;(B</span>48 <span data-cp="3BE" data-bytes="1B 24 42 26 4E 1B 28 42">$B&N ;(B</span>49 <span data-cp="3BF" data-bytes="1B 24 42 26 4F 1B 28 42">$B&O ;(B</span>50 <span data-cp="3C0" data-bytes="1B 24 42 26 50 1B 28 42">$B&P ;(B</span>51 <span data-cp="3C1" data-bytes="1B 24 42 26 51 1B 28 42">$B&Q ;(B</span>52 <span data-cp="3C3" data-bytes="1B 24 42 26 52 1B 28 42">$B&R ;(B</span>53 <span data-cp="3C4" data-bytes="1B 24 42 26 53 1B 28 42">$B&S ;(B</span>54 <span data-cp="3C5" data-bytes="1B 24 42 26 54 1B 28 42">$B&T ;(B</span>55 <span data-cp="3C6" data-bytes="1B 24 42 26 55 1B 28 42">$B&U ;(B</span>56 <span data-cp="3C7" data-bytes="1B 24 42 26 56 1B 28 42">$B&V ;(B</span>57 <span data-cp="3C8" data-bytes="1B 24 42 26 57 1B 28 42">$B&W ;(B</span>58 <span data-cp="3C9" data-bytes="1B 24 42 26 58 1B 28 42">$B&X ;(B</span>35 <span data-cp="3B1" data-bytes="1B 24 42 26 41 1B 28 42">$B&A(B</span> 36 <span data-cp="3B2" data-bytes="1B 24 42 26 42 1B 28 42">$B&B(B</span> 37 <span data-cp="3B3" data-bytes="1B 24 42 26 43 1B 28 42">$B&C(B</span> 38 <span data-cp="3B4" data-bytes="1B 24 42 26 44 1B 28 42">$B&D(B</span> 39 <span data-cp="3B5" data-bytes="1B 24 42 26 45 1B 28 42">$B&E(B</span> 40 <span data-cp="3B6" data-bytes="1B 24 42 26 46 1B 28 42">$B&F(B</span> 41 <span data-cp="3B7" data-bytes="1B 24 42 26 47 1B 28 42">$B&G(B</span> 42 <span data-cp="3B8" data-bytes="1B 24 42 26 48 1B 28 42">$B&H(B</span> 43 <span data-cp="3B9" data-bytes="1B 24 42 26 49 1B 28 42">$B&I(B</span> 44 <span data-cp="3BA" data-bytes="1B 24 42 26 4A 1B 28 42">$B&J(B</span> 45 <span data-cp="3BB" data-bytes="1B 24 42 26 4B 1B 28 42">$B&K(B</span> 46 <span data-cp="3BC" data-bytes="1B 24 42 26 4C 1B 28 42">$B&L(B</span> 47 <span data-cp="3BD" data-bytes="1B 24 42 26 4D 1B 28 42">$B&M(B</span> 48 <span data-cp="3BE" data-bytes="1B 24 42 26 4E 1B 28 42">$B&N(B</span> 49 <span data-cp="3BF" data-bytes="1B 24 42 26 4F 1B 28 42">$B&O(B</span> 50 <span data-cp="3C0" data-bytes="1B 24 42 26 50 1B 28 42">$B&P(B</span> 51 <span data-cp="3C1" data-bytes="1B 24 42 26 51 1B 28 42">$B&Q(B</span> 52 <span data-cp="3C3" data-bytes="1B 24 42 26 52 1B 28 42">$B&R(B</span> 53 <span data-cp="3C4" data-bytes="1B 24 42 26 53 1B 28 42">$B&S(B</span> 54 <span data-cp="3C5" data-bytes="1B 24 42 26 54 1B 28 42">$B&T(B</span> 55 <span data-cp="3C6" data-bytes="1B 24 42 26 55 1B 28 42">$B&U(B</span> 56 <span data-cp="3C7" data-bytes="1B 24 42 26 56 1B 28 42">$B&V(B</span> 57 <span data-cp="3C8" data-bytes="1B 24 42 26 57 1B 28 42">$B&W(B</span> 58 <span data-cp="3C9" data-bytes="1B 24 42 26 58 1B 28 42">$B&X(B</span> 59 59 <span data-cp="401" data-bytes="1B 24 42 27 27 1B 28 42">$B''(B</span> 60 60 <span data-cp="410" data-bytes="1B 24 42 27 21 1B 28 42">$B'!(B</span> … … 3249 3249 <span data-cp="6B1F" data-bytes="1B 24 42 5D 36 1B 28 42">$B]6(B</span> 3250 3250 <span data-cp="6B20" data-bytes="1B 24 42 37 67 1B 28 42">$B7g(B</span> 3251 <span data-cp="6B21" data-bytes="1B 24 42 3C 21 1B 28 42">$B<! --(B</span-->3251 <span data-cp="6B21" data-bytes="1B 24 42 3C 21 1B 28 42">$B<!(B</span> 3252 3252 <span data-cp="6B23" data-bytes="1B 24 42 36 55 1B 28 42">$B6U(B</span> 3253 3253 <span data-cp="6B27" data-bytes="1B 24 42 32 24 1B 28 42">$B2$(B</span> … … 7112 7112 <span data-cp="9E79" data-bytes="1B 24 42 73 44 1B 28 42">$BsD(B</span> 7113 7113 <span data-cp="9E7D" data-bytes="1B 24 42 73 45 1B 28 42">$BsE(B</span> 7114 <span data-cp="9E7F" data-bytes="1B 24 42 3C 2F 1B 28 42">$B< !--(B</span-->7114 <span data-cp="9E7F" data-bytes="1B 24 42 3C 2F 1B 28 42">$B</(B</span> 7115 7115 <span data-cp="9E81" data-bytes="1B 24 42 73 46 1B 28 42">$BsF(B</span> 7116 7116 <span data-cp="9E88" data-bytes="1B 24 42 73 47 1B 28 42">$BsG(B</span> -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/iso-2022-jp/iso2022jp_chars.html
r264561 r266620 33 33 <span data-cp="3A8" data-bytes="1B 24 42 26 37 1B 28 42">$B&7(B</span> 34 34 <span data-cp="3A9" data-bytes="1B 24 42 26 38 1B 28 42">$B&8(B</span> 35 <span data-cp="3B1" data-bytes="1B 24 42 26 41 1B 28 42">$B&A ;(B</span>36 <span data-cp="3B2" data-bytes="1B 24 42 26 42 1B 28 42">$B&B ;(B</span>37 <span data-cp="3B3" data-bytes="1B 24 42 26 43 1B 28 42">$B&C ;(B</span>38 <span data-cp="3B4" data-bytes="1B 24 42 26 44 1B 28 42">$B&D ;(B</span>39 <span data-cp="3B5" data-bytes="1B 24 42 26 45 1B 28 42">$B&E ;(B</span>40 <span data-cp="3B6" data-bytes="1B 24 42 26 46 1B 28 42">$B&F ;(B</span>41 <span data-cp="3B7" data-bytes="1B 24 42 26 47 1B 28 42">$B&G ;(B</span>42 <span data-cp="3B8" data-bytes="1B 24 42 26 48 1B 28 42">$B&H ;(B</span>43 <span data-cp="3B9" data-bytes="1B 24 42 26 49 1B 28 42">$B&I ;(B</span>44 <span data-cp="3BA" data-bytes="1B 24 42 26 4A 1B 28 42">$B&J ;(B</span>45 <span data-cp="3BB" data-bytes="1B 24 42 26 4B 1B 28 42">$B&K ;(B</span>46 <span data-cp="3BC" data-bytes="1B 24 42 26 4C 1B 28 42">$B&L ;(B</span>47 <span data-cp="3BD" data-bytes="1B 24 42 26 4D 1B 28 42">$B&M ;(B</span>48 <span data-cp="3BE" data-bytes="1B 24 42 26 4E 1B 28 42">$B&N ;(B</span>49 <span data-cp="3BF" data-bytes="1B 24 42 26 4F 1B 28 42">$B&O ;(B</span>50 <span data-cp="3C0" data-bytes="1B 24 42 26 50 1B 28 42">$B&P ;(B</span>51 <span data-cp="3C1" data-bytes="1B 24 42 26 51 1B 28 42">$B&Q ;(B</span>52 <span data-cp="3C3" data-bytes="1B 24 42 26 52 1B 28 42">$B&R ;(B</span>53 <span data-cp="3C4" data-bytes="1B 24 42 26 53 1B 28 42">$B&S ;(B</span>54 <span data-cp="3C5" data-bytes="1B 24 42 26 54 1B 28 42">$B&T ;(B</span>55 <span data-cp="3C6" data-bytes="1B 24 42 26 55 1B 28 42">$B&U ;(B</span>56 <span data-cp="3C7" data-bytes="1B 24 42 26 56 1B 28 42">$B&V ;(B</span>57 <span data-cp="3C8" data-bytes="1B 24 42 26 57 1B 28 42">$B&W ;(B</span>58 <span data-cp="3C9" data-bytes="1B 24 42 26 58 1B 28 42">$B&X ;(B</span>35 <span data-cp="3B1" data-bytes="1B 24 42 26 41 1B 28 42">$B&A(B</span> 36 <span data-cp="3B2" data-bytes="1B 24 42 26 42 1B 28 42">$B&B(B</span> 37 <span data-cp="3B3" data-bytes="1B 24 42 26 43 1B 28 42">$B&C(B</span> 38 <span data-cp="3B4" data-bytes="1B 24 42 26 44 1B 28 42">$B&D(B</span> 39 <span data-cp="3B5" data-bytes="1B 24 42 26 45 1B 28 42">$B&E(B</span> 40 <span data-cp="3B6" data-bytes="1B 24 42 26 46 1B 28 42">$B&F(B</span> 41 <span data-cp="3B7" data-bytes="1B 24 42 26 47 1B 28 42">$B&G(B</span> 42 <span data-cp="3B8" data-bytes="1B 24 42 26 48 1B 28 42">$B&H(B</span> 43 <span data-cp="3B9" data-bytes="1B 24 42 26 49 1B 28 42">$B&I(B</span> 44 <span data-cp="3BA" data-bytes="1B 24 42 26 4A 1B 28 42">$B&J(B</span> 45 <span data-cp="3BB" data-bytes="1B 24 42 26 4B 1B 28 42">$B&K(B</span> 46 <span data-cp="3BC" data-bytes="1B 24 42 26 4C 1B 28 42">$B&L(B</span> 47 <span data-cp="3BD" data-bytes="1B 24 42 26 4D 1B 28 42">$B&M(B</span> 48 <span data-cp="3BE" data-bytes="1B 24 42 26 4E 1B 28 42">$B&N(B</span> 49 <span data-cp="3BF" data-bytes="1B 24 42 26 4F 1B 28 42">$B&O(B</span> 50 <span data-cp="3C0" data-bytes="1B 24 42 26 50 1B 28 42">$B&P(B</span> 51 <span data-cp="3C1" data-bytes="1B 24 42 26 51 1B 28 42">$B&Q(B</span> 52 <span data-cp="3C3" data-bytes="1B 24 42 26 52 1B 28 42">$B&R(B</span> 53 <span data-cp="3C4" data-bytes="1B 24 42 26 53 1B 28 42">$B&S(B</span> 54 <span data-cp="3C5" data-bytes="1B 24 42 26 54 1B 28 42">$B&T(B</span> 55 <span data-cp="3C6" data-bytes="1B 24 42 26 55 1B 28 42">$B&U(B</span> 56 <span data-cp="3C7" data-bytes="1B 24 42 26 56 1B 28 42">$B&V(B</span> 57 <span data-cp="3C8" data-bytes="1B 24 42 26 57 1B 28 42">$B&W(B</span> 58 <span data-cp="3C9" data-bytes="1B 24 42 26 58 1B 28 42">$B&X(B</span> 59 59 <span data-cp="401" data-bytes="1B 24 42 27 27 1B 28 42">$B''(B</span> 60 60 <span data-cp="410" data-bytes="1B 24 42 27 21 1B 28 42">$B'!(B</span> … … 3249 3249 <span data-cp="6B1F" data-bytes="1B 24 42 5D 36 1B 28 42">$B]6(B</span> 3250 3250 <span data-cp="6B20" data-bytes="1B 24 42 37 67 1B 28 42">$B7g(B</span> 3251 <span data-cp="6B21" data-bytes="1B 24 42 3C 21 1B 28 42">$B<! --(B</span-->3251 <span data-cp="6B21" data-bytes="1B 24 42 3C 21 1B 28 42">$B<!(B</span> 3252 3252 <span data-cp="6B23" data-bytes="1B 24 42 36 55 1B 28 42">$B6U(B</span> 3253 3253 <span data-cp="6B27" data-bytes="1B 24 42 32 24 1B 28 42">$B2$(B</span> … … 7112 7112 <span data-cp="9E79" data-bytes="1B 24 42 73 44 1B 28 42">$BsD(B</span> 7113 7113 <span data-cp="9E7D" data-bytes="1B 24 42 73 45 1B 28 42">$BsE(B</span> 7114 <span data-cp="9E7F" data-bytes="1B 24 42 3C 2F 1B 28 42">$B< !--(B</span-->7114 <span data-cp="9E7F" data-bytes="1B 24 42 3C 2F 1B 28 42">$B</(B</span> 7115 7115 <span data-cp="9E81" data-bytes="1B 24 42 73 46 1B 28 42">$BsF(B</span> 7116 7116 <span data-cp="9E88" data-bytes="1B 24 42 73 47 1B 28 42">$BsG(B</span> -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-csshiftjis-expected.txt
r224536 r266620 1 1 2 FAIL U+80 80 assert_equals: expected "" but got "\x1a" 2 PASS U+80 80 3 3 PASS U+A5 ¥ \ 5C 4 4 PASS U+A7 § § 81 98 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-errors-expected.txt
r224536 r266620 1 1 2 FAIL lead not 0x00 and no more bytes: FA assert_equals: expected "\ufffd" but got "\x1a" 3 FAIL lead not 0x00 and no more bytes: FA 6E FA assert_equals: expected "佖\ufffd" but got "佖\x1a" 4 FAIL lead not 0x00 and no more bytes: FA FA FA assert_equals: expected "洄\ufffd" but got "洄\x1a" 5 FAIL lead byte outside 0x81-0x9F,0xA1-0xDF,0xE0,0xFC: FF assert_equals: expected "\ufffd" but got "\x1a" 6 FAIL lead byte outside 0x81-0x9F,0xA1-0xDF,0xE0,0xFC: A0 assert_equals: expected "\ufffd" but got "\x1a" 7 FAIL lead byte outside 0x81-0x9F,0xA1-0xDF,0xE0,0xFC: E1 assert_equals: expected "\ufffd" but got "\x1a" 8 FAIL lead byte outside 0x81-0x9F,0xA1-0xDF,0xE0,0xFC: FA FA FF assert_equals: expected "洄\ufffd" but got "洄\x1a" 9 FAIL trail byte outside 0x41-0xFE: FA FD assert_equals: expected "\ufffd" but got "\x1a\x1a" 10 FAIL trail byte outside 0x41-0xFE: FA FE assert_equals: expected "\ufffd" but got "\x1a\x1a" 2 PASS lead not 0x00 and no more bytes: FA 3 PASS lead not 0x00 and no more bytes: FA 6E FA 4 PASS lead not 0x00 and no more bytes: FA FA FA 5 PASS lead byte outside 0x81-0x9F,0xA1-0xDF,0xE0,0xFC: FF 6 PASS lead byte outside 0x81-0x9F,0xA1-0xDF,0xE0,0xFC: A0 7 PASS lead byte outside 0x81-0x9F,0xA1-0xDF,0xE0,0xFC: E1 8 PASS lead byte outside 0x81-0x9F,0xA1-0xDF,0xE0,0xFC: FA FA FF 9 PASS trail byte outside 0x41-0xFE: FA FD 10 PASS trail byte outside 0x41-0xFE: FA FE 11 11 PASS pointer is null: 81 B5 12 12 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-expected.txt
r224536 r266620 1 1 2 FAIL U+80 80 assert_equals: expected "" but got "\x1a" 2 PASS U+80 80 3 3 PASS U+A5 ¥ \ 5C 4 4 PASS U+A7 § § 81 98 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-ms932-expected.txt
r224536 r266620 1 1 2 FAIL U+80 80 assert_equals: expected "" but got "\x1a" 2 PASS U+80 80 3 3 PASS U+A5 ¥ \ 5C 4 4 PASS U+A7 § § 81 98 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-ms_kanji-expected.txt
r224536 r266620 1 1 2 FAIL U+80 80 assert_equals: expected "" but got "\x1a" 2 PASS U+80 80 3 3 PASS U+A5 ¥ \ 5C 4 4 PASS U+A7 § § 81 98 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-shift-jis-expected.txt
r224536 r266620 1 1 2 FAIL U+80 80 assert_equals: expected "" but got "\x1a" 2 PASS U+80 80 3 3 PASS U+A5 ¥ \ 5C 4 4 PASS U+A7 § § 81 98 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-sjis-expected.txt
r224536 r266620 1 1 2 FAIL U+80 80 assert_equals: expected "" but got "\x1a" 2 PASS U+80 80 3 3 PASS U+A5 ¥ \ 5C 4 4 PASS U+A7 § § 81 98 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-windows-31j-expected.txt
r224536 r266620 1 1 2 FAIL U+80 80 assert_equals: expected "" but got "\x1a" 2 PASS U+80 80 3 3 PASS U+A5 ¥ \ 5C 4 4 PASS U+A7 § § 81 98 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-japanese/shift_jis/sjis-decode-x-sjis-expected.txt
r224536 r266620 1 1 2 FAIL U+80 80 assert_equals: expected "" but got "\x1a" 2 PASS U+80 80 3 3 PASS U+A5 ¥ \ 5C 4 4 PASS U+A7 § § 81 98 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/streams/decode-non-utf8.any-expected.txt
r266457 r266620 7 7 PASS TextDecoderStream should be able to reject invalid sequences in UTF-16LE 8 8 PASS TextDecoderStream should be able to decode Shift_JIS 9 FAIL TextDecoderStream should be able to decode invalid sequences in Shift_JIS assert_equals: output should be replacement character expected "\ufffd" but got "\x1a" 10 FAIL TextDecoderStream should be able to reject invalid sequences in Shift_JIS assert_unreached: Should have rejected: readable should be errored Reached unreachable code 9 PASS TextDecoderStream should be able to decode invalid sequences in Shift_JIS 10 PASS TextDecoderStream should be able to reject invalid sequences in Shift_JIS 11 11 PASS TextDecoderStream should be able to decode ISO-8859-14 12 12 -
trunk/LayoutTests/imported/w3c/web-platform-tests/encoding/streams/decode-non-utf8.any.worker-expected.txt
r266457 r266620 7 7 PASS TextDecoderStream should be able to reject invalid sequences in UTF-16LE 8 8 PASS TextDecoderStream should be able to decode Shift_JIS 9 FAIL TextDecoderStream should be able to decode invalid sequences in Shift_JIS assert_equals: output should be replacement character expected "\ufffd" but got "\x1a" 10 FAIL TextDecoderStream should be able to reject invalid sequences in Shift_JIS assert_unreached: Should have rejected: readable should be errored Reached unreachable code 9 PASS TextDecoderStream should be able to decode invalid sequences in Shift_JIS 10 PASS TextDecoderStream should be able to reject invalid sequences in Shift_JIS 11 11 PASS TextDecoderStream should be able to decode ISO-8859-14 12 12 -
trunk/Source/WebCore/ChangeLog
r266619 r266620 1 2020-09-04 Alex Christensen <achristensen@webkit.org> 2 3 Align EUC-JP, ISO-2022-JP, and Shift_JIS decoding with Chrome, Firefox, and the specification 4 https://bugs.webkit.org/show_bug.cgi?id=216168 5 6 Reviewed by Youenn Fablet. 7 8 Covered by newly passing web platform tests. 9 10 * platform/text/EncodingTables.cpp: 11 * platform/text/EncodingTables.h: 12 * platform/text/TextCodecCJK.cpp: 13 (WebCore::WTF_ARRAY_LENGTH): 14 (WebCore::TextCodecCJK::decodeCommon): 15 (WebCore::codePointJIS0208): 16 (WebCore::codePointJIS0212): 17 (WebCore::TextCodecCJK::eucJPDecode): 18 (WebCore::TextCodecCJK::iso2022JPDecode): 19 (WebCore::TextCodecCJK::iso2022JPEncode): 20 (WebCore::TextCodecCJK::shiftJISDecode): 21 (WebCore::TextCodecCJK::eucKRDecode): 22 (WebCore::TextCodecCJK::big5Decode): 23 (WebCore::TextCodecCJK::decode): 24 * platform/text/TextCodecCJK.h: 25 1 26 2020-09-04 Wenson Hsieh <wenson_hsieh@apple.com> 2 27 -
trunk/Source/WebCore/platform/text/EncodingTables.cpp
r266520 r266620 28 28 29 29 namespace WebCore { 30 31 // FIXME: Compress these tables and decompress them if they are actually used. This will significantly decrease the size of WebCore's binary. 32 // Or even better, derive them from calling ICU functions and only store the differences in WebCore. 30 33 31 34 // from https://encoding.spec.whatwg.org/index-jis0208.txt … … 998 1001 { 0xFF5C, 34 }, { 0xFF5D, 48 }, { 0xFF5E, 32 }, { 0xFFE0, 80 }, { 0xFFE1, 81 }, { 0xFFE2, 10736 }, { 0xFFE2, 8644 }, { 0xFFE2, 137 }, 999 1002 { 0xFFE3, 16 }, { 0xFFE4, 10737 }, { 0xFFE4, 8645 }, { 0xFFE5, 78 } 1003 }; 1004 1005 // From https://encoding.spec.whatwg.org/index-jis0212.txt 1006 const std::pair<uint16_t, UChar> jis0212[6067] { 1007 { 108, 0x02D8 }, { 109, 0x02C7 }, { 110, 0x00B8 }, { 111, 0x02D9 }, { 112, 0x02DD }, { 113, 0x00AF }, { 114, 0x02DB }, { 115, 0x02DA }, 1008 { 116, 0xFF5E }, { 117, 0x0384 }, { 118, 0x0385 }, { 127, 0x00A1 }, { 128, 0x00A6 }, { 129, 0x00BF }, { 168, 0x00BA }, { 169, 0x00AA }, 1009 { 170, 0x00A9 }, { 171, 0x00AE }, { 172, 0x2122 }, { 173, 0x00A4 }, { 174, 0x2116 }, { 534, 0x0386 }, { 535, 0x0388 }, { 536, 0x0389 }, 1010 { 537, 0x038A }, { 538, 0x03AA }, { 540, 0x038C }, { 542, 0x038E }, { 543, 0x03AB }, { 545, 0x038F }, { 550, 0x03AC }, { 551, 0x03AD }, 1011 { 552, 0x03AE }, { 553, 0x03AF }, { 554, 0x03CA }, { 555, 0x0390 }, { 556, 0x03CC }, { 557, 0x03C2 }, { 558, 0x03CD }, { 559, 0x03CB }, 1012 { 560, 0x03B0 }, { 561, 0x03CE }, { 597, 0x0402 }, { 598, 0x0403 }, { 599, 0x0404 }, { 600, 0x0405 }, { 601, 0x0406 }, { 602, 0x0407 }, 1013 { 603, 0x0408 }, { 604, 0x0409 }, { 605, 0x040A }, { 606, 0x040B }, { 607, 0x040C }, { 608, 0x040E }, { 609, 0x040F }, { 645, 0x0452 }, 1014 { 646, 0x0453 }, { 647, 0x0454 }, { 648, 0x0455 }, { 649, 0x0456 }, { 650, 0x0457 }, { 651, 0x0458 }, { 652, 0x0459 }, { 653, 0x045A }, 1015 { 654, 0x045B }, { 655, 0x045C }, { 656, 0x045E }, { 657, 0x045F }, { 752, 0x00C6 }, { 753, 0x0110 }, { 755, 0x0126 }, { 757, 0x0132 }, 1016 { 759, 0x0141 }, { 760, 0x013F }, { 762, 0x014A }, { 763, 0x00D8 }, { 764, 0x0152 }, { 766, 0x0166 }, { 767, 0x00DE }, { 784, 0x00E6 }, 1017 { 785, 0x0111 }, { 786, 0x00F0 }, { 787, 0x0127 }, { 788, 0x0131 }, { 789, 0x0133 }, { 790, 0x0138 }, { 791, 0x0142 }, { 792, 0x0140 }, 1018 { 793, 0x0149 }, { 794, 0x014B }, { 795, 0x00F8 }, { 796, 0x0153 }, { 797, 0x00DF }, { 798, 0x0167 }, { 799, 0x00FE }, { 846, 0x00C1 }, 1019 { 847, 0x00C0 }, { 848, 0x00C4 }, { 849, 0x00C2 }, { 850, 0x0102 }, { 851, 0x01CD }, { 852, 0x0100 }, { 853, 0x0104 }, { 854, 0x00C5 }, 1020 { 855, 0x00C3 }, { 856, 0x0106 }, { 857, 0x0108 }, { 858, 0x010C }, { 859, 0x00C7 }, { 860, 0x010A }, { 861, 0x010E }, { 862, 0x00C9 }, 1021 { 863, 0x00C8 }, { 864, 0x00CB }, { 865, 0x00CA }, { 866, 0x011A }, { 867, 0x0116 }, { 868, 0x0112 }, { 869, 0x0118 }, { 871, 0x011C }, 1022 { 872, 0x011E }, { 873, 0x0122 }, { 874, 0x0120 }, { 875, 0x0124 }, { 876, 0x00CD }, { 877, 0x00CC }, { 878, 0x00CF }, { 879, 0x00CE }, 1023 { 880, 0x01CF }, { 881, 0x0130 }, { 882, 0x012A }, { 883, 0x012E }, { 884, 0x0128 }, { 885, 0x0134 }, { 886, 0x0136 }, { 887, 0x0139 }, 1024 { 888, 0x013D }, { 889, 0x013B }, { 890, 0x0143 }, { 891, 0x0147 }, { 892, 0x0145 }, { 893, 0x00D1 }, { 894, 0x00D3 }, { 895, 0x00D2 }, 1025 { 896, 0x00D6 }, { 897, 0x00D4 }, { 898, 0x01D1 }, { 899, 0x0150 }, { 900, 0x014C }, { 901, 0x00D5 }, { 902, 0x0154 }, { 903, 0x0158 }, 1026 { 904, 0x0156 }, { 905, 0x015A }, { 906, 0x015C }, { 907, 0x0160 }, { 908, 0x015E }, { 909, 0x0164 }, { 910, 0x0162 }, { 911, 0x00DA }, 1027 { 912, 0x00D9 }, { 913, 0x00DC }, { 914, 0x00DB }, { 915, 0x016C }, { 916, 0x01D3 }, { 917, 0x0170 }, { 918, 0x016A }, { 919, 0x0172 }, 1028 { 920, 0x016E }, { 921, 0x0168 }, { 922, 0x01D7 }, { 923, 0x01DB }, { 924, 0x01D9 }, { 925, 0x01D5 }, { 926, 0x0174 }, { 927, 0x00DD }, 1029 { 928, 0x0178 }, { 929, 0x0176 }, { 930, 0x0179 }, { 931, 0x017D }, { 932, 0x017B }, { 940, 0x00E1 }, { 941, 0x00E0 }, { 942, 0x00E4 }, 1030 { 943, 0x00E2 }, { 944, 0x0103 }, { 945, 0x01CE }, { 946, 0x0101 }, { 947, 0x0105 }, { 948, 0x00E5 }, { 949, 0x00E3 }, { 950, 0x0107 }, 1031 { 951, 0x0109 }, { 952, 0x010D }, { 953, 0x00E7 }, { 954, 0x010B }, { 955, 0x010F }, { 956, 0x00E9 }, { 957, 0x00E8 }, { 958, 0x00EB }, 1032 { 959, 0x00EA }, { 960, 0x011B }, { 961, 0x0117 }, { 962, 0x0113 }, { 963, 0x0119 }, { 964, 0x01F5 }, { 965, 0x011D }, { 966, 0x011F }, 1033 { 968, 0x0121 }, { 969, 0x0125 }, { 970, 0x00ED }, { 971, 0x00EC }, { 972, 0x00EF }, { 973, 0x00EE }, { 974, 0x01D0 }, { 976, 0x012B }, 1034 { 977, 0x012F }, { 978, 0x0129 }, { 979, 0x0135 }, { 980, 0x0137 }, { 981, 0x013A }, { 982, 0x013E }, { 983, 0x013C }, { 984, 0x0144 }, 1035 { 985, 0x0148 }, { 986, 0x0146 }, { 987, 0x00F1 }, { 988, 0x00F3 }, { 989, 0x00F2 }, { 990, 0x00F6 }, { 991, 0x00F4 }, { 992, 0x01D2 }, 1036 { 993, 0x0151 }, { 994, 0x014D }, { 995, 0x00F5 }, { 996, 0x0155 }, { 997, 0x0159 }, { 998, 0x0157 }, { 999, 0x015B }, { 1000, 0x015D }, 1037 { 1001, 0x0161 }, { 1002, 0x015F }, { 1003, 0x0165 }, { 1004, 0x0163 }, { 1005, 0x00FA }, { 1006, 0x00F9 }, { 1007, 0x00FC }, { 1008, 0x00FB }, 1038 { 1009, 0x016D }, { 1010, 0x01D4 }, { 1011, 0x0171 }, { 1012, 0x016B }, { 1013, 0x0173 }, { 1014, 0x016F }, { 1015, 0x0169 }, { 1016, 0x01D8 }, 1039 { 1017, 0x01DC }, { 1018, 0x01DA }, { 1019, 0x01D6 }, { 1020, 0x0175 }, { 1021, 0x00FD }, { 1022, 0x00FF }, { 1023, 0x0177 }, { 1024, 0x017A }, 1040 { 1025, 0x017E }, { 1026, 0x017C }, { 1410, 0x4E02 }, { 1411, 0x4E04 }, { 1412, 0x4E05 }, { 1413, 0x4E0C }, { 1414, 0x4E12 }, { 1415, 0x4E1F }, 1041 { 1416, 0x4E23 }, { 1417, 0x4E24 }, { 1418, 0x4E28 }, { 1419, 0x4E2B }, { 1420, 0x4E2E }, { 1421, 0x4E2F }, { 1422, 0x4E30 }, { 1423, 0x4E35 }, 1042 { 1424, 0x4E40 }, { 1425, 0x4E41 }, { 1426, 0x4E44 }, { 1427, 0x4E47 }, { 1428, 0x4E51 }, { 1429, 0x4E5A }, { 1430, 0x4E5C }, { 1431, 0x4E63 }, 1043 { 1432, 0x4E68 }, { 1433, 0x4E69 }, { 1434, 0x4E74 }, { 1435, 0x4E75 }, { 1436, 0x4E79 }, { 1437, 0x4E7F }, { 1438, 0x4E8D }, { 1439, 0x4E96 }, 1044 { 1440, 0x4E97 }, { 1441, 0x4E9D }, { 1442, 0x4EAF }, { 1443, 0x4EB9 }, { 1444, 0x4EC3 }, { 1445, 0x4ED0 }, { 1446, 0x4EDA }, { 1447, 0x4EDB }, 1045 { 1448, 0x4EE0 }, { 1449, 0x4EE1 }, { 1450, 0x4EE2 }, { 1451, 0x4EE8 }, { 1452, 0x4EEF }, { 1453, 0x4EF1 }, { 1454, 0x4EF3 }, { 1455, 0x4EF5 }, 1046 { 1456, 0x4EFD }, { 1457, 0x4EFE }, { 1458, 0x4EFF }, { 1459, 0x4F00 }, { 1460, 0x4F02 }, { 1461, 0x4F03 }, { 1462, 0x4F08 }, { 1463, 0x4F0B }, 1047 { 1464, 0x4F0C }, { 1465, 0x4F12 }, { 1466, 0x4F15 }, { 1467, 0x4F16 }, { 1468, 0x4F17 }, { 1469, 0x4F19 }, { 1470, 0x4F2E }, { 1471, 0x4F31 }, 1048 { 1472, 0x4F60 }, { 1473, 0x4F33 }, { 1474, 0x4F35 }, { 1475, 0x4F37 }, { 1476, 0x4F39 }, { 1477, 0x4F3B }, { 1478, 0x4F3E }, { 1479, 0x4F40 }, 1049 { 1480, 0x4F42 }, { 1481, 0x4F48 }, { 1482, 0x4F49 }, { 1483, 0x4F4B }, { 1484, 0x4F4C }, { 1485, 0x4F52 }, { 1486, 0x4F54 }, { 1487, 0x4F56 }, 1050 { 1488, 0x4F58 }, { 1489, 0x4F5F }, { 1490, 0x4F63 }, { 1491, 0x4F6A }, { 1492, 0x4F6C }, { 1493, 0x4F6E }, { 1494, 0x4F71 }, { 1495, 0x4F77 }, 1051 { 1496, 0x4F78 }, { 1497, 0x4F79 }, { 1498, 0x4F7A }, { 1499, 0x4F7D }, { 1500, 0x4F7E }, { 1501, 0x4F81 }, { 1502, 0x4F82 }, { 1503, 0x4F84 }, 1052 { 1504, 0x4F85 }, { 1505, 0x4F89 }, { 1506, 0x4F8A }, { 1507, 0x4F8C }, { 1508, 0x4F8E }, { 1509, 0x4F90 }, { 1510, 0x4F92 }, { 1511, 0x4F93 }, 1053 { 1512, 0x4F94 }, { 1513, 0x4F97 }, { 1514, 0x4F99 }, { 1515, 0x4F9A }, { 1516, 0x4F9E }, { 1517, 0x4F9F }, { 1518, 0x4FB2 }, { 1519, 0x4FB7 }, 1054 { 1520, 0x4FB9 }, { 1521, 0x4FBB }, { 1522, 0x4FBC }, { 1523, 0x4FBD }, { 1524, 0x4FBE }, { 1525, 0x4FC0 }, { 1526, 0x4FC1 }, { 1527, 0x4FC5 }, 1055 { 1528, 0x4FC6 }, { 1529, 0x4FC8 }, { 1530, 0x4FC9 }, { 1531, 0x4FCB }, { 1532, 0x4FCC }, { 1533, 0x4FCD }, { 1534, 0x4FCF }, { 1535, 0x4FD2 }, 1056 { 1536, 0x4FDC }, { 1537, 0x4FE0 }, { 1538, 0x4FE2 }, { 1539, 0x4FF0 }, { 1540, 0x4FF2 }, { 1541, 0x4FFC }, { 1542, 0x4FFD }, { 1543, 0x4FFF }, 1057 { 1544, 0x5000 }, { 1545, 0x5001 }, { 1546, 0x5004 }, { 1547, 0x5007 }, { 1548, 0x500A }, { 1549, 0x500C }, { 1550, 0x500E }, { 1551, 0x5010 }, 1058 { 1552, 0x5013 }, { 1553, 0x5017 }, { 1554, 0x5018 }, { 1555, 0x501B }, { 1556, 0x501C }, { 1557, 0x501D }, { 1558, 0x501E }, { 1559, 0x5022 }, 1059 { 1560, 0x5027 }, { 1561, 0x502E }, { 1562, 0x5030 }, { 1563, 0x5032 }, { 1564, 0x5033 }, { 1565, 0x5035 }, { 1566, 0x5040 }, { 1567, 0x5041 }, 1060 { 1568, 0x5042 }, { 1569, 0x5045 }, { 1570, 0x5046 }, { 1571, 0x504A }, { 1572, 0x504C }, { 1573, 0x504E }, { 1574, 0x5051 }, { 1575, 0x5052 }, 1061 { 1576, 0x5053 }, { 1577, 0x5057 }, { 1578, 0x5059 }, { 1579, 0x505F }, { 1580, 0x5060 }, { 1581, 0x5062 }, { 1582, 0x5063 }, { 1583, 0x5066 }, 1062 { 1584, 0x5067 }, { 1585, 0x506A }, { 1586, 0x506D }, { 1587, 0x5070 }, { 1588, 0x5071 }, { 1589, 0x503B }, { 1590, 0x5081 }, { 1591, 0x5083 }, 1063 { 1592, 0x5084 }, { 1593, 0x5086 }, { 1594, 0x508A }, { 1595, 0x508E }, { 1596, 0x508F }, { 1597, 0x5090 }, { 1598, 0x5092 }, { 1599, 0x5093 }, 1064 { 1600, 0x5094 }, { 1601, 0x5096 }, { 1602, 0x509B }, { 1603, 0x509C }, { 1604, 0x509E }, { 1605, 0x509F }, { 1606, 0x50A0 }, { 1607, 0x50A1 }, 1065 { 1608, 0x50A2 }, { 1609, 0x50AA }, { 1610, 0x50AF }, { 1611, 0x50B0 }, { 1612, 0x50B9 }, { 1613, 0x50BA }, { 1614, 0x50BD }, { 1615, 0x50C0 }, 1066 { 1616, 0x50C3 }, { 1617, 0x50C4 }, { 1618, 0x50C7 }, { 1619, 0x50CC }, { 1620, 0x50CE }, { 1621, 0x50D0 }, { 1622, 0x50D3 }, { 1623, 0x50D4 }, 1067 { 1624, 0x50D8 }, { 1625, 0x50DC }, { 1626, 0x50DD }, { 1627, 0x50DF }, { 1628, 0x50E2 }, { 1629, 0x50E4 }, { 1630, 0x50E6 }, { 1631, 0x50E8 }, 1068 { 1632, 0x50E9 }, { 1633, 0x50EF }, { 1634, 0x50F1 }, { 1635, 0x50F6 }, { 1636, 0x50FA }, { 1637, 0x50FE }, { 1638, 0x5103 }, { 1639, 0x5106 }, 1069 { 1640, 0x5107 }, { 1641, 0x5108 }, { 1642, 0x510B }, { 1643, 0x510C }, { 1644, 0x510D }, { 1645, 0x510E }, { 1646, 0x50F2 }, { 1647, 0x5110 }, 1070 { 1648, 0x5117 }, { 1649, 0x5119 }, { 1650, 0x511B }, { 1651, 0x511C }, { 1652, 0x511D }, { 1653, 0x511E }, { 1654, 0x5123 }, { 1655, 0x5127 }, 1071 { 1656, 0x5128 }, { 1657, 0x512C }, { 1658, 0x512D }, { 1659, 0x512F }, { 1660, 0x5131 }, { 1661, 0x5133 }, { 1662, 0x5134 }, { 1663, 0x5135 }, 1072 { 1664, 0x5138 }, { 1665, 0x5139 }, { 1666, 0x5142 }, { 1667, 0x514A }, { 1668, 0x514F }, { 1669, 0x5153 }, { 1670, 0x5155 }, { 1671, 0x5157 }, 1073 { 1672, 0x5158 }, { 1673, 0x515F }, { 1674, 0x5164 }, { 1675, 0x5166 }, { 1676, 0x517E }, { 1677, 0x5183 }, { 1678, 0x5184 }, { 1679, 0x518B }, 1074 { 1680, 0x518E }, { 1681, 0x5198 }, { 1682, 0x519D }, { 1683, 0x51A1 }, { 1684, 0x51A3 }, { 1685, 0x51AD }, { 1686, 0x51B8 }, { 1687, 0x51BA }, 1075 { 1688, 0x51BC }, { 1689, 0x51BE }, { 1690, 0x51BF }, { 1691, 0x51C2 }, { 1692, 0x51C8 }, { 1693, 0x51CF }, { 1694, 0x51D1 }, { 1695, 0x51D2 }, 1076 { 1696, 0x51D3 }, { 1697, 0x51D5 }, { 1698, 0x51D8 }, { 1699, 0x51DE }, { 1700, 0x51E2 }, { 1701, 0x51E5 }, { 1702, 0x51EE }, { 1703, 0x51F2 }, 1077 { 1704, 0x51F3 }, { 1705, 0x51F4 }, { 1706, 0x51F7 }, { 1707, 0x5201 }, { 1708, 0x5202 }, { 1709, 0x5205 }, { 1710, 0x5212 }, { 1711, 0x5213 }, 1078 { 1712, 0x5215 }, { 1713, 0x5216 }, { 1714, 0x5218 }, { 1715, 0x5222 }, { 1716, 0x5228 }, { 1717, 0x5231 }, { 1718, 0x5232 }, { 1719, 0x5235 }, 1079 { 1720, 0x523C }, { 1721, 0x5245 }, { 1722, 0x5249 }, { 1723, 0x5255 }, { 1724, 0x5257 }, { 1725, 0x5258 }, { 1726, 0x525A }, { 1727, 0x525C }, 1080 { 1728, 0x525F }, { 1729, 0x5260 }, { 1730, 0x5261 }, { 1731, 0x5266 }, { 1732, 0x526E }, { 1733, 0x5277 }, { 1734, 0x5278 }, { 1735, 0x5279 }, 1081 { 1736, 0x5280 }, { 1737, 0x5282 }, { 1738, 0x5285 }, { 1739, 0x528A }, { 1740, 0x528C }, { 1741, 0x5293 }, { 1742, 0x5295 }, { 1743, 0x5296 }, 1082 { 1744, 0x5297 }, { 1745, 0x5298 }, { 1746, 0x529A }, { 1747, 0x529C }, { 1748, 0x52A4 }, { 1749, 0x52A5 }, { 1750, 0x52A6 }, { 1751, 0x52A7 }, 1083 { 1752, 0x52AF }, { 1753, 0x52B0 }, { 1754, 0x52B6 }, { 1755, 0x52B7 }, { 1756, 0x52B8 }, { 1757, 0x52BA }, { 1758, 0x52BB }, { 1759, 0x52BD }, 1084 { 1760, 0x52C0 }, { 1761, 0x52C4 }, { 1762, 0x52C6 }, { 1763, 0x52C8 }, { 1764, 0x52CC }, { 1765, 0x52CF }, { 1766, 0x52D1 }, { 1767, 0x52D4 }, 1085 { 1768, 0x52D6 }, { 1769, 0x52DB }, { 1770, 0x52DC }, { 1771, 0x52E1 }, { 1772, 0x52E5 }, { 1773, 0x52E8 }, { 1774, 0x52E9 }, { 1775, 0x52EA }, 1086 { 1776, 0x52EC }, { 1777, 0x52F0 }, { 1778, 0x52F1 }, { 1779, 0x52F4 }, { 1780, 0x52F6 }, { 1781, 0x52F7 }, { 1782, 0x5300 }, { 1783, 0x5303 }, 1087 { 1784, 0x530A }, { 1785, 0x530B }, { 1786, 0x530C }, { 1787, 0x5311 }, { 1788, 0x5313 }, { 1789, 0x5318 }, { 1790, 0x531B }, { 1791, 0x531C }, 1088 { 1792, 0x531E }, { 1793, 0x531F }, { 1794, 0x5325 }, { 1795, 0x5327 }, { 1796, 0x5328 }, { 1797, 0x5329 }, { 1798, 0x532B }, { 1799, 0x532C }, 1089 { 1800, 0x532D }, { 1801, 0x5330 }, { 1802, 0x5332 }, { 1803, 0x5335 }, { 1804, 0x533C }, { 1805, 0x533D }, { 1806, 0x533E }, { 1807, 0x5342 }, 1090 { 1808, 0x534C }, { 1809, 0x534B }, { 1810, 0x5359 }, { 1811, 0x535B }, { 1812, 0x5361 }, { 1813, 0x5363 }, { 1814, 0x5365 }, { 1815, 0x536C }, 1091 { 1816, 0x536D }, { 1817, 0x5372 }, { 1818, 0x5379 }, { 1819, 0x537E }, { 1820, 0x5383 }, { 1821, 0x5387 }, { 1822, 0x5388 }, { 1823, 0x538E }, 1092 { 1824, 0x5393 }, { 1825, 0x5394 }, { 1826, 0x5399 }, { 1827, 0x539D }, { 1828, 0x53A1 }, { 1829, 0x53A4 }, { 1830, 0x53AA }, { 1831, 0x53AB }, 1093 { 1832, 0x53AF }, { 1833, 0x53B2 }, { 1834, 0x53B4 }, { 1835, 0x53B5 }, { 1836, 0x53B7 }, { 1837, 0x53B8 }, { 1838, 0x53BA }, { 1839, 0x53BD }, 1094 { 1840, 0x53C0 }, { 1841, 0x53C5 }, { 1842, 0x53CF }, { 1843, 0x53D2 }, { 1844, 0x53D3 }, { 1845, 0x53D5 }, { 1846, 0x53DA }, { 1847, 0x53DD }, 1095 { 1848, 0x53DE }, { 1849, 0x53E0 }, { 1850, 0x53E6 }, { 1851, 0x53E7 }, { 1852, 0x53F5 }, { 1853, 0x5402 }, { 1854, 0x5413 }, { 1855, 0x541A }, 1096 { 1856, 0x5421 }, { 1857, 0x5427 }, { 1858, 0x5428 }, { 1859, 0x542A }, { 1860, 0x542F }, { 1861, 0x5431 }, { 1862, 0x5434 }, { 1863, 0x5435 }, 1097 { 1864, 0x5443 }, { 1865, 0x5444 }, { 1866, 0x5447 }, { 1867, 0x544D }, { 1868, 0x544F }, { 1869, 0x545E }, { 1870, 0x5462 }, { 1871, 0x5464 }, 1098 { 1872, 0x5466 }, { 1873, 0x5467 }, { 1874, 0x5469 }, { 1875, 0x546B }, { 1876, 0x546D }, { 1877, 0x546E }, { 1878, 0x5474 }, { 1879, 0x547F }, 1099 { 1880, 0x5481 }, { 1881, 0x5483 }, { 1882, 0x5485 }, { 1883, 0x5488 }, { 1884, 0x5489 }, { 1885, 0x548D }, { 1886, 0x5491 }, { 1887, 0x5495 }, 1100 { 1888, 0x5496 }, { 1889, 0x549C }, { 1890, 0x549F }, { 1891, 0x54A1 }, { 1892, 0x54A6 }, { 1893, 0x54A7 }, { 1894, 0x54A9 }, { 1895, 0x54AA }, 1101 { 1896, 0x54AD }, { 1897, 0x54AE }, { 1898, 0x54B1 }, { 1899, 0x54B7 }, { 1900, 0x54B9 }, { 1901, 0x54BA }, { 1902, 0x54BB }, { 1903, 0x54BF }, 1102 { 1904, 0x54C6 }, { 1905, 0x54CA }, { 1906, 0x54CD }, { 1907, 0x54CE }, { 1908, 0x54E0 }, { 1909, 0x54EA }, { 1910, 0x54EC }, { 1911, 0x54EF }, 1103 { 1912, 0x54F6 }, { 1913, 0x54FC }, { 1914, 0x54FE }, { 1915, 0x54FF }, { 1916, 0x5500 }, { 1917, 0x5501 }, { 1918, 0x5505 }, { 1919, 0x5508 }, 1104 { 1920, 0x5509 }, { 1921, 0x550C }, { 1922, 0x550D }, { 1923, 0x550E }, { 1924, 0x5515 }, { 1925, 0x552A }, { 1926, 0x552B }, { 1927, 0x5532 }, 1105 { 1928, 0x5535 }, { 1929, 0x5536 }, { 1930, 0x553B }, { 1931, 0x553C }, { 1932, 0x553D }, { 1933, 0x5541 }, { 1934, 0x5547 }, { 1935, 0x5549 }, 1106 { 1936, 0x554A }, { 1937, 0x554D }, { 1938, 0x5550 }, { 1939, 0x5551 }, { 1940, 0x5558 }, { 1941, 0x555A }, { 1942, 0x555B }, { 1943, 0x555E }, 1107 { 1944, 0x5560 }, { 1945, 0x5561 }, { 1946, 0x5564 }, { 1947, 0x5566 }, { 1948, 0x557F }, { 1949, 0x5581 }, { 1950, 0x5582 }, { 1951, 0x5586 }, 1108 { 1952, 0x5588 }, { 1953, 0x558E }, { 1954, 0x558F }, { 1955, 0x5591 }, { 1956, 0x5592 }, { 1957, 0x5593 }, { 1958, 0x5594 }, { 1959, 0x5597 }, 1109 { 1960, 0x55A3 }, { 1961, 0x55A4 }, { 1962, 0x55AD }, { 1963, 0x55B2 }, { 1964, 0x55BF }, { 1965, 0x55C1 }, { 1966, 0x55C3 }, { 1967, 0x55C6 }, 1110 { 1968, 0x55C9 }, { 1969, 0x55CB }, { 1970, 0x55CC }, { 1971, 0x55CE }, { 1972, 0x55D1 }, { 1973, 0x55D2 }, { 1974, 0x55D3 }, { 1975, 0x55D7 }, 1111 { 1976, 0x55D8 }, { 1977, 0x55DB }, { 1978, 0x55DE }, { 1979, 0x55E2 }, { 1980, 0x55E9 }, { 1981, 0x55F6 }, { 1982, 0x55FF }, { 1983, 0x5605 }, 1112 { 1984, 0x5608 }, { 1985, 0x560A }, { 1986, 0x560D }, { 1987, 0x560E }, { 1988, 0x560F }, { 1989, 0x5610 }, { 1990, 0x5611 }, { 1991, 0x5612 }, 1113 { 1992, 0x5619 }, { 1993, 0x562C }, { 1994, 0x5630 }, { 1995, 0x5633 }, { 1996, 0x5635 }, { 1997, 0x5637 }, { 1998, 0x5639 }, { 1999, 0x563B }, 1114 { 2000, 0x563C }, { 2001, 0x563D }, { 2002, 0x563F }, { 2003, 0x5640 }, { 2004, 0x5641 }, { 2005, 0x5643 }, { 2006, 0x5644 }, { 2007, 0x5646 }, 1115 { 2008, 0x5649 }, { 2009, 0x564B }, { 2010, 0x564D }, { 2011, 0x564F }, { 2012, 0x5654 }, { 2013, 0x565E }, { 2014, 0x5660 }, { 2015, 0x5661 }, 1116 { 2016, 0x5662 }, { 2017, 0x5663 }, { 2018, 0x5666 }, { 2019, 0x5669 }, { 2020, 0x566D }, { 2021, 0x566F }, { 2022, 0x5671 }, { 2023, 0x5672 }, 1117 { 2024, 0x5675 }, { 2025, 0x5684 }, { 2026, 0x5685 }, { 2027, 0x5688 }, { 2028, 0x568B }, { 2029, 0x568C }, { 2030, 0x5695 }, { 2031, 0x5699 }, 1118 { 2032, 0x569A }, { 2033, 0x569D }, { 2034, 0x569E }, { 2035, 0x569F }, { 2036, 0x56A6 }, { 2037, 0x56A7 }, { 2038, 0x56A8 }, { 2039, 0x56A9 }, 1119 { 2040, 0x56AB }, { 2041, 0x56AC }, { 2042, 0x56AD }, { 2043, 0x56B1 }, { 2044, 0x56B3 }, { 2045, 0x56B7 }, { 2046, 0x56BE }, { 2047, 0x56C5 }, 1120 { 2048, 0x56C9 }, { 2049, 0x56CA }, { 2050, 0x56CB }, { 2051, 0x56CF }, { 2052, 0x56D0 }, { 2053, 0x56CC }, { 2054, 0x56CD }, { 2055, 0x56D9 }, 1121 { 2056, 0x56DC }, { 2057, 0x56DD }, { 2058, 0x56DF }, { 2059, 0x56E1 }, { 2060, 0x56E4 }, { 2061, 0x56E5 }, { 2062, 0x56E6 }, { 2063, 0x56E7 }, 1122 { 2064, 0x56E8 }, { 2065, 0x56F1 }, { 2066, 0x56EB }, { 2067, 0x56ED }, { 2068, 0x56F6 }, { 2069, 0x56F7 }, { 2070, 0x5701 }, { 2071, 0x5702 }, 1123 { 2072, 0x5707 }, { 2073, 0x570A }, { 2074, 0x570C }, { 2075, 0x5711 }, { 2076, 0x5715 }, { 2077, 0x571A }, { 2078, 0x571B }, { 2079, 0x571D }, 1124 { 2080, 0x5720 }, { 2081, 0x5722 }, { 2082, 0x5723 }, { 2083, 0x5724 }, { 2084, 0x5725 }, { 2085, 0x5729 }, { 2086, 0x572A }, { 2087, 0x572C }, 1125 { 2088, 0x572E }, { 2089, 0x572F }, { 2090, 0x5733 }, { 2091, 0x5734 }, { 2092, 0x573D }, { 2093, 0x573E }, { 2094, 0x573F }, { 2095, 0x5745 }, 1126 { 2096, 0x5746 }, { 2097, 0x574C }, { 2098, 0x574D }, { 2099, 0x5752 }, { 2100, 0x5762 }, { 2101, 0x5765 }, { 2102, 0x5767 }, { 2103, 0x5768 }, 1127 { 2104, 0x576B }, { 2105, 0x576D }, { 2106, 0x576E }, { 2107, 0x576F }, { 2108, 0x5770 }, { 2109, 0x5771 }, { 2110, 0x5773 }, { 2111, 0x5774 }, 1128 { 2112, 0x5775 }, { 2113, 0x5777 }, { 2114, 0x5779 }, { 2115, 0x577A }, { 2116, 0x577B }, { 2117, 0x577C }, { 2118, 0x577E }, { 2119, 0x5781 }, 1129 { 2120, 0x5783 }, { 2121, 0x578C }, { 2122, 0x5794 }, { 2123, 0x5797 }, { 2124, 0x5799 }, { 2125, 0x579A }, { 2126, 0x579C }, { 2127, 0x579D }, 1130 { 2128, 0x579E }, { 2129, 0x579F }, { 2130, 0x57A1 }, { 2131, 0x5795 }, { 2132, 0x57A7 }, { 2133, 0x57A8 }, { 2134, 0x57A9 }, { 2135, 0x57AC }, 1131 { 2136, 0x57B8 }, { 2137, 0x57BD }, { 2138, 0x57C7 }, { 2139, 0x57C8 }, { 2140, 0x57CC }, { 2141, 0x57CF }, { 2142, 0x57D5 }, { 2143, 0x57DD }, 1132 { 2144, 0x57DE }, { 2145, 0x57E4 }, { 2146, 0x57E6 }, { 2147, 0x57E7 }, { 2148, 0x57E9 }, { 2149, 0x57ED }, { 2150, 0x57F0 }, { 2151, 0x57F5 }, 1133 { 2152, 0x57F6 }, { 2153, 0x57F8 }, { 2154, 0x57FD }, { 2155, 0x57FE }, { 2156, 0x57FF }, { 2157, 0x5803 }, { 2158, 0x5804 }, { 2159, 0x5808 }, 1134 { 2160, 0x5809 }, { 2161, 0x57E1 }, { 2162, 0x580C }, { 2163, 0x580D }, { 2164, 0x581B }, { 2165, 0x581E }, { 2166, 0x581F }, { 2167, 0x5820 }, 1135 { 2168, 0x5826 }, { 2169, 0x5827 }, { 2170, 0x582D }, { 2171, 0x5832 }, { 2172, 0x5839 }, { 2173, 0x583F }, { 2174, 0x5849 }, { 2175, 0x584C }, 1136 { 2176, 0x584D }, { 2177, 0x584F }, { 2178, 0x5850 }, { 2179, 0x5855 }, { 2180, 0x585F }, { 2181, 0x5861 }, { 2182, 0x5864 }, { 2183, 0x5867 }, 1137 { 2184, 0x5868 }, { 2185, 0x5878 }, { 2186, 0x587C }, { 2187, 0x587F }, { 2188, 0x5880 }, { 2189, 0x5881 }, { 2190, 0x5887 }, { 2191, 0x5888 }, 1138 { 2192, 0x5889 }, { 2193, 0x588A }, { 2194, 0x588C }, { 2195, 0x588D }, { 2196, 0x588F }, { 2197, 0x5890 }, { 2198, 0x5894 }, { 2199, 0x5896 }, 1139 { 2200, 0x589D }, { 2201, 0x58A0 }, { 2202, 0x58A1 }, { 2203, 0x58A2 }, { 2204, 0x58A6 }, { 2205, 0x58A9 }, { 2206, 0x58B1 }, { 2207, 0x58B2 }, 1140 { 2208, 0x58C4 }, { 2209, 0x58BC }, { 2210, 0x58C2 }, { 2211, 0x58C8 }, { 2212, 0x58CD }, { 2213, 0x58CE }, { 2214, 0x58D0 }, { 2215, 0x58D2 }, 1141 { 2216, 0x58D4 }, { 2217, 0x58D6 }, { 2218, 0x58DA }, { 2219, 0x58DD }, { 2220, 0x58E1 }, { 2221, 0x58E2 }, { 2222, 0x58E9 }, { 2223, 0x58F3 }, 1142 { 2224, 0x5905 }, { 2225, 0x5906 }, { 2226, 0x590B }, { 2227, 0x590C }, { 2228, 0x5912 }, { 2229, 0x5913 }, { 2230, 0x5914 }, { 2231, 0x8641 }, 1143 { 2232, 0x591D }, { 2233, 0x5921 }, { 2234, 0x5923 }, { 2235, 0x5924 }, { 2236, 0x5928 }, { 2237, 0x592F }, { 2238, 0x5930 }, { 2239, 0x5933 }, 1144 { 2240, 0x5935 }, { 2241, 0x5936 }, { 2242, 0x593F }, { 2243, 0x5943 }, { 2244, 0x5946 }, { 2245, 0x5952 }, { 2246, 0x5953 }, { 2247, 0x5959 }, 1145 { 2248, 0x595B }, { 2249, 0x595D }, { 2250, 0x595E }, { 2251, 0x595F }, { 2252, 0x5961 }, { 2253, 0x5963 }, { 2254, 0x596B }, { 2255, 0x596D }, 1146 { 2256, 0x596F }, { 2257, 0x5972 }, { 2258, 0x5975 }, { 2259, 0x5976 }, { 2260, 0x5979 }, { 2261, 0x597B }, { 2262, 0x597C }, { 2263, 0x598B }, 1147 { 2264, 0x598C }, { 2265, 0x598E }, { 2266, 0x5992 }, { 2267, 0x5995 }, { 2268, 0x5997 }, { 2269, 0x599F }, { 2270, 0x59A4 }, { 2271, 0x59A7 }, 1148 { 2272, 0x59AD }, { 2273, 0x59AE }, { 2274, 0x59AF }, { 2275, 0x59B0 }, { 2276, 0x59B3 }, { 2277, 0x59B7 }, { 2278, 0x59BA }, { 2279, 0x59BC }, 1149 { 2280, 0x59C1 }, { 2281, 0x59C3 }, { 2282, 0x59C4 }, { 2283, 0x59C8 }, { 2284, 0x59CA }, { 2285, 0x59CD }, { 2286, 0x59D2 }, { 2287, 0x59DD }, 1150 { 2288, 0x59DE }, { 2289, 0x59DF }, { 2290, 0x59E3 }, { 2291, 0x59E4 }, { 2292, 0x59E7 }, { 2293, 0x59EE }, { 2294, 0x59EF }, { 2295, 0x59F1 }, 1151 { 2296, 0x59F2 }, { 2297, 0x59F4 }, { 2298, 0x59F7 }, { 2299, 0x5A00 }, { 2300, 0x5A04 }, { 2301, 0x5A0C }, { 2302, 0x5A0D }, { 2303, 0x5A0E }, 1152 { 2304, 0x5A12 }, { 2305, 0x5A13 }, { 2306, 0x5A1E }, { 2307, 0x5A23 }, { 2308, 0x5A24 }, { 2309, 0x5A27 }, { 2310, 0x5A28 }, { 2311, 0x5A2A }, 1153 { 2312, 0x5A2D }, { 2313, 0x5A30 }, { 2314, 0x5A44 }, { 2315, 0x5A45 }, { 2316, 0x5A47 }, { 2317, 0x5A48 }, { 2318, 0x5A4C }, { 2319, 0x5A50 }, 1154 { 2320, 0x5A55 }, { 2321, 0x5A5E }, { 2322, 0x5A63 }, { 2323, 0x5A65 }, { 2324, 0x5A67 }, { 2325, 0x5A6D }, { 2326, 0x5A77 }, { 2327, 0x5A7A }, 1155 { 2328, 0x5A7B }, { 2329, 0x5A7E }, { 2330, 0x5A8B }, { 2331, 0x5A90 }, { 2332, 0x5A93 }, { 2333, 0x5A96 }, { 2334, 0x5A99 }, { 2335, 0x5A9C }, 1156 { 2336, 0x5A9E }, { 2337, 0x5A9F }, { 2338, 0x5AA0 }, { 2339, 0x5AA2 }, { 2340, 0x5AA7 }, { 2341, 0x5AAC }, { 2342, 0x5AB1 }, { 2343, 0x5AB2 }, 1157 { 2344, 0x5AB3 }, { 2345, 0x5AB5 }, { 2346, 0x5AB8 }, { 2347, 0x5ABA }, { 2348, 0x5ABB }, { 2349, 0x5ABF }, { 2350, 0x5AC4 }, { 2351, 0x5AC6 }, 1158 { 2352, 0x5AC8 }, { 2353, 0x5ACF }, { 2354, 0x5ADA }, { 2355, 0x5ADC }, { 2356, 0x5AE0 }, { 2357, 0x5AE5 }, { 2358, 0x5AEA }, { 2359, 0x5AEE }, 1159 { 2360, 0x5AF5 }, { 2361, 0x5AF6 }, { 2362, 0x5AFD }, { 2363, 0x5B00 }, { 2364, 0x5B01 }, { 2365, 0x5B08 }, { 2366, 0x5B17 }, { 2367, 0x5B34 }, 1160 { 2368, 0x5B19 }, { 2369, 0x5B1B }, { 2370, 0x5B1D }, { 2371, 0x5B21 }, { 2372, 0x5B25 }, { 2373, 0x5B2D }, { 2374, 0x5B38 }, { 2375, 0x5B41 }, 1161 { 2376, 0x5B4B }, { 2377, 0x5B4C }, { 2378, 0x5B52 }, { 2379, 0x5B56 }, { 2380, 0x5B5E }, { 2381, 0x5B68 }, { 2382, 0x5B6E }, { 2383, 0x5B6F }, 1162 { 2384, 0x5B7C }, { 2385, 0x5B7D }, { 2386, 0x5B7E }, { 2387, 0x5B7F }, { 2388, 0x5B81 }, { 2389, 0x5B84 }, { 2390, 0x5B86 }, { 2391, 0x5B8A }, 1163 { 2392, 0x5B8E }, { 2393, 0x5B90 }, { 2394, 0x5B91 }, { 2395, 0x5B93 }, { 2396, 0x5B94 }, { 2397, 0x5B96 }, { 2398, 0x5BA8 }, { 2399, 0x5BA9 }, 1164 { 2400, 0x5BAC }, { 2401, 0x5BAD }, { 2402, 0x5BAF }, { 2403, 0x5BB1 }, { 2404, 0x5BB2 }, { 2405, 0x5BB7 }, { 2406, 0x5BBA }, { 2407, 0x5BBC }, 1165 { 2408, 0x5BC0 }, { 2409, 0x5BC1 }, { 2410, 0x5BCD }, { 2411, 0x5BCF }, { 2412, 0x5BD6 }, { 2413, 0x5BD7 }, { 2414, 0x5BD8 }, { 2415, 0x5BD9 }, 1166 { 2416, 0x5BDA }, { 2417, 0x5BE0 }, { 2418, 0x5BEF }, { 2419, 0x5BF1 }, { 2420, 0x5BF4 }, { 2421, 0x5BFD }, { 2422, 0x5C0C }, { 2423, 0x5C17 }, 1167 { 2424, 0x5C1E }, { 2425, 0x5C1F }, { 2426, 0x5C23 }, { 2427, 0x5C26 }, { 2428, 0x5C29 }, { 2429, 0x5C2B }, { 2430, 0x5C2C }, { 2431, 0x5C2E }, 1168 { 2432, 0x5C30 }, { 2433, 0x5C32 }, { 2434, 0x5C35 }, { 2435, 0x5C36 }, { 2436, 0x5C59 }, { 2437, 0x5C5A }, { 2438, 0x5C5C }, { 2439, 0x5C62 }, 1169 { 2440, 0x5C63 }, { 2441, 0x5C67 }, { 2442, 0x5C68 }, { 2443, 0x5C69 }, { 2444, 0x5C6D }, { 2445, 0x5C70 }, { 2446, 0x5C74 }, { 2447, 0x5C75 }, 1170 { 2448, 0x5C7A }, { 2449, 0x5C7B }, { 2450, 0x5C7C }, { 2451, 0x5C7D }, { 2452, 0x5C87 }, { 2453, 0x5C88 }, { 2454, 0x5C8A }, { 2455, 0x5C8F }, 1171 { 2456, 0x5C92 }, { 2457, 0x5C9D }, { 2458, 0x5C9F }, { 2459, 0x5CA0 }, { 2460, 0x5CA2 }, { 2461, 0x5CA3 }, { 2462, 0x5CA6 }, { 2463, 0x5CAA }, 1172 { 2464, 0x5CB2 }, { 2465, 0x5CB4 }, { 2466, 0x5CB5 }, { 2467, 0x5CBA }, { 2468, 0x5CC9 }, { 2469, 0x5CCB }, { 2470, 0x5CD2 }, { 2471, 0x5CDD }, 1173 { 2472, 0x5CD7 }, { 2473, 0x5CEE }, { 2474, 0x5CF1 }, { 2475, 0x5CF2 }, { 2476, 0x5CF4 }, { 2477, 0x5D01 }, { 2478, 0x5D06 }, { 2479, 0x5D0D }, 1174 { 2480, 0x5D12 }, { 2481, 0x5D2B }, { 2482, 0x5D23 }, { 2483, 0x5D24 }, { 2484, 0x5D26 }, { 2485, 0x5D27 }, { 2486, 0x5D31 }, { 2487, 0x5D34 }, 1175 { 2488, 0x5D39 }, { 2489, 0x5D3D }, { 2490, 0x5D3F }, { 2491, 0x5D42 }, { 2492, 0x5D43 }, { 2493, 0x5D46 }, { 2494, 0x5D48 }, { 2495, 0x5D55 }, 1176 { 2496, 0x5D51 }, { 2497, 0x5D59 }, { 2498, 0x5D4A }, { 2499, 0x5D5F }, { 2500, 0x5D60 }, { 2501, 0x5D61 }, { 2502, 0x5D62 }, { 2503, 0x5D64 }, 1177 { 2504, 0x5D6A }, { 2505, 0x5D6D }, { 2506, 0x5D70 }, { 2507, 0x5D79 }, { 2508, 0x5D7A }, { 2509, 0x5D7E }, { 2510, 0x5D7F }, { 2511, 0x5D81 }, 1178 { 2512, 0x5D83 }, { 2513, 0x5D88 }, { 2514, 0x5D8A }, { 2515, 0x5D92 }, { 2516, 0x5D93 }, { 2517, 0x5D94 }, { 2518, 0x5D95 }, { 2519, 0x5D99 }, 1179 { 2520, 0x5D9B }, { 2521, 0x5D9F }, { 2522, 0x5DA0 }, { 2523, 0x5DA7 }, { 2524, 0x5DAB }, { 2525, 0x5DB0 }, { 2526, 0x5DB4 }, { 2527, 0x5DB8 }, 1180 { 2528, 0x5DB9 }, { 2529, 0x5DC3 }, { 2530, 0x5DC7 }, { 2531, 0x5DCB }, { 2532, 0x5DD0 }, { 2533, 0x5DCE }, { 2534, 0x5DD8 }, { 2535, 0x5DD9 }, 1181 { 2536, 0x5DE0 }, { 2537, 0x5DE4 }, { 2538, 0x5DE9 }, { 2539, 0x5DF8 }, { 2540, 0x5DF9 }, { 2541, 0x5E00 }, { 2542, 0x5E07 }, { 2543, 0x5E0D }, 1182 { 2544, 0x5E12 }, { 2545, 0x5E14 }, { 2546, 0x5E15 }, { 2547, 0x5E18 }, { 2548, 0x5E1F }, { 2549, 0x5E20 }, { 2550, 0x5E2E }, { 2551, 0x5E28 }, 1183 { 2552, 0x5E32 }, { 2553, 0x5E35 }, { 2554, 0x5E3E }, { 2555, 0x5E4B }, { 2556, 0x5E50 }, { 2557, 0x5E49 }, { 2558, 0x5E51 }, { 2559, 0x5E56 }, 1184 { 2560, 0x5E58 }, { 2561, 0x5E5B }, { 2562, 0x5E5C }, { 2563, 0x5E5E }, { 2564, 0x5E68 }, { 2565, 0x5E6A }, { 2566, 0x5E6B }, { 2567, 0x5E6C }, 1185 { 2568, 0x5E6D }, { 2569, 0x5E6E }, { 2570, 0x5E70 }, { 2571, 0x5E80 }, { 2572, 0x5E8B }, { 2573, 0x5E8E }, { 2574, 0x5EA2 }, { 2575, 0x5EA4 }, 1186 { 2576, 0x5EA5 }, { 2577, 0x5EA8 }, { 2578, 0x5EAA }, { 2579, 0x5EAC }, { 2580, 0x5EB1 }, { 2581, 0x5EB3 }, { 2582, 0x5EBD }, { 2583, 0x5EBE }, 1187 { 2584, 0x5EBF }, { 2585, 0x5EC6 }, { 2586, 0x5ECC }, { 2587, 0x5ECB }, { 2588, 0x5ECE }, { 2589, 0x5ED1 }, { 2590, 0x5ED2 }, { 2591, 0x5ED4 }, 1188 { 2592, 0x5ED5 }, { 2593, 0x5EDC }, { 2594, 0x5EDE }, { 2595, 0x5EE5 }, { 2596, 0x5EEB }, { 2597, 0x5F02 }, { 2598, 0x5F06 }, { 2599, 0x5F07 }, 1189 { 2600, 0x5F08 }, { 2601, 0x5F0E }, { 2602, 0x5F19 }, { 2603, 0x5F1C }, { 2604, 0x5F1D }, { 2605, 0x5F21 }, { 2606, 0x5F22 }, { 2607, 0x5F23 }, 1190 { 2608, 0x5F24 }, { 2609, 0x5F28 }, { 2610, 0x5F2B }, { 2611, 0x5F2C }, { 2612, 0x5F2E }, { 2613, 0x5F30 }, { 2614, 0x5F34 }, { 2615, 0x5F36 }, 1191 { 2616, 0x5F3B }, { 2617, 0x5F3D }, { 2618, 0x5F3F }, { 2619, 0x5F40 }, { 2620, 0x5F44 }, { 2621, 0x5F45 }, { 2622, 0x5F47 }, { 2623, 0x5F4D }, 1192 { 2624, 0x5F50 }, { 2625, 0x5F54 }, { 2626, 0x5F58 }, { 2627, 0x5F5B }, { 2628, 0x5F60 }, { 2629, 0x5F63 }, { 2630, 0x5F64 }, { 2631, 0x5F67 }, 1193 { 2632, 0x5F6F }, { 2633, 0x5F72 }, { 2634, 0x5F74 }, { 2635, 0x5F75 }, { 2636, 0x5F78 }, { 2637, 0x5F7A }, { 2638, 0x5F7D }, { 2639, 0x5F7E }, 1194 { 2640, 0x5F89 }, { 2641, 0x5F8D }, { 2642, 0x5F8F }, { 2643, 0x5F96 }, { 2644, 0x5F9C }, { 2645, 0x5F9D }, { 2646, 0x5FA2 }, { 2647, 0x5FA7 }, 1195 { 2648, 0x5FAB }, { 2649, 0x5FA4 }, { 2650, 0x5FAC }, { 2651, 0x5FAF }, { 2652, 0x5FB0 }, { 2653, 0x5FB1 }, { 2654, 0x5FB8 }, { 2655, 0x5FC4 }, 1196 { 2656, 0x5FC7 }, { 2657, 0x5FC8 }, { 2658, 0x5FC9 }, { 2659, 0x5FCB }, { 2660, 0x5FD0 }, { 2661, 0x5FD1 }, { 2662, 0x5FD2 }, { 2663, 0x5FD3 }, 1197 { 2664, 0x5FD4 }, { 2665, 0x5FDE }, { 2666, 0x5FE1 }, { 2667, 0x5FE2 }, { 2668, 0x5FE8 }, { 2669, 0x5FE9 }, { 2670, 0x5FEA }, { 2671, 0x5FEC }, 1198 { 2672, 0x5FED }, { 2673, 0x5FEE }, { 2674, 0x5FEF }, { 2675, 0x5FF2 }, { 2676, 0x5FF3 }, { 2677, 0x5FF6 }, { 2678, 0x5FFA }, { 2679, 0x5FFC }, 1199 { 2680, 0x6007 }, { 2681, 0x600A }, { 2682, 0x600D }, { 2683, 0x6013 }, { 2684, 0x6014 }, { 2685, 0x6017 }, { 2686, 0x6018 }, { 2687, 0x601A }, 1200 { 2688, 0x601F }, { 2689, 0x6024 }, { 2690, 0x602D }, { 2691, 0x6033 }, { 2692, 0x6035 }, { 2693, 0x6040 }, { 2694, 0x6047 }, { 2695, 0x6048 }, 1201 { 2696, 0x6049 }, { 2697, 0x604C }, { 2698, 0x6051 }, { 2699, 0x6054 }, { 2700, 0x6056 }, { 2701, 0x6057 }, { 2702, 0x605D }, { 2703, 0x6061 }, 1202 { 2704, 0x6067 }, { 2705, 0x6071 }, { 2706, 0x607E }, { 2707, 0x607F }, { 2708, 0x6082 }, { 2709, 0x6086 }, { 2710, 0x6088 }, { 2711, 0x608A }, 1203 { 2712, 0x608E }, { 2713, 0x6091 }, { 2714, 0x6093 }, { 2715, 0x6095 }, { 2716, 0x6098 }, { 2717, 0x609D }, { 2718, 0x609E }, { 2719, 0x60A2 }, 1204 { 2720, 0x60A4 }, { 2721, 0x60A5 }, { 2722, 0x60A8 }, { 2723, 0x60B0 }, { 2724, 0x60B1 }, { 2725, 0x60B7 }, { 2726, 0x60BB }, { 2727, 0x60BE }, 1205 { 2728, 0x60C2 }, { 2729, 0x60C4 }, { 2730, 0x60C8 }, { 2731, 0x60C9 }, { 2732, 0x60CA }, { 2733, 0x60CB }, { 2734, 0x60CE }, { 2735, 0x60CF }, 1206 { 2736, 0x60D4 }, { 2737, 0x60D5 }, { 2738, 0x60D9 }, { 2739, 0x60DB }, { 2740, 0x60DD }, { 2741, 0x60DE }, { 2742, 0x60E2 }, { 2743, 0x60E5 }, 1207 { 2744, 0x60F2 }, { 2745, 0x60F5 }, { 2746, 0x60F8 }, { 2747, 0x60FC }, { 2748, 0x60FD }, { 2749, 0x6102 }, { 2750, 0x6107 }, { 2751, 0x610A }, 1208 { 2752, 0x610C }, { 2753, 0x6110 }, { 2754, 0x6111 }, { 2755, 0x6112 }, { 2756, 0x6113 }, { 2757, 0x6114 }, { 2758, 0x6116 }, { 2759, 0x6117 }, 1209 { 2760, 0x6119 }, { 2761, 0x611C }, { 2762, 0x611E }, { 2763, 0x6122 }, { 2764, 0x612A }, { 2765, 0x612B }, { 2766, 0x6130 }, { 2767, 0x6131 }, 1210 { 2768, 0x6135 }, { 2769, 0x6136 }, { 2770, 0x6137 }, { 2771, 0x6139 }, { 2772, 0x6141 }, { 2773, 0x6145 }, { 2774, 0x6146 }, { 2775, 0x6149 }, 1211 { 2776, 0x615E }, { 2777, 0x6160 }, { 2778, 0x616C }, { 2779, 0x6172 }, { 2780, 0x6178 }, { 2781, 0x617B }, { 2782, 0x617C }, { 2783, 0x617F }, 1212 { 2784, 0x6180 }, { 2785, 0x6181 }, { 2786, 0x6183 }, { 2787, 0x6184 }, { 2788, 0x618B }, { 2789, 0x618D }, { 2790, 0x6192 }, { 2791, 0x6193 }, 1213 { 2792, 0x6197 }, { 2793, 0x6198 }, { 2794, 0x619C }, { 2795, 0x619D }, { 2796, 0x619F }, { 2797, 0x61A0 }, { 2798, 0x61A5 }, { 2799, 0x61A8 }, 1214 { 2800, 0x61AA }, { 2801, 0x61AD }, { 2802, 0x61B8 }, { 2803, 0x61B9 }, { 2804, 0x61BC }, { 2805, 0x61C0 }, { 2806, 0x61C1 }, { 2807, 0x61C2 }, 1215 { 2808, 0x61CE }, { 2809, 0x61CF }, { 2810, 0x61D5 }, { 2811, 0x61DC }, { 2812, 0x61DD }, { 2813, 0x61DE }, { 2814, 0x61DF }, { 2815, 0x61E1 }, 1216 { 2816, 0x61E2 }, { 2817, 0x61E7 }, { 2818, 0x61E9 }, { 2819, 0x61E5 }, { 2820, 0x61EC }, { 2821, 0x61ED }, { 2822, 0x61EF }, { 2823, 0x6201 }, 1217 { 2824, 0x6203 }, { 2825, 0x6204 }, { 2826, 0x6207 }, { 2827, 0x6213 }, { 2828, 0x6215 }, { 2829, 0x621C }, { 2830, 0x6220 }, { 2831, 0x6222 }, 1218 { 2832, 0x6223 }, { 2833, 0x6227 }, { 2834, 0x6229 }, { 2835, 0x622B }, { 2836, 0x6239 }, { 2837, 0x623D }, { 2838, 0x6242 }, { 2839, 0x6243 }, 1219 { 2840, 0x6244 }, { 2841, 0x6246 }, { 2842, 0x624C }, { 2843, 0x6250 }, { 2844, 0x6251 }, { 2845, 0x6252 }, { 2846, 0x6254 }, { 2847, 0x6256 }, 1220 { 2848, 0x625A }, { 2849, 0x625C }, { 2850, 0x6264 }, { 2851, 0x626D }, { 2852, 0x626F }, { 2853, 0x6273 }, { 2854, 0x627A }, { 2855, 0x627D }, 1221 { 2856, 0x628D }, { 2857, 0x628E }, { 2858, 0x628F }, { 2859, 0x6290 }, { 2860, 0x62A6 }, { 2861, 0x62A8 }, { 2862, 0x62B3 }, { 2863, 0x62B6 }, 1222 { 2864, 0x62B7 }, { 2865, 0x62BA }, { 2866, 0x62BE }, { 2867, 0x62BF }, { 2868, 0x62C4 }, { 2869, 0x62CE }, { 2870, 0x62D5 }, { 2871, 0x62D6 }, 1223 { 2872, 0x62DA }, { 2873, 0x62EA }, { 2874, 0x62F2 }, { 2875, 0x62F4 }, { 2876, 0x62FC }, { 2877, 0x62FD }, { 2878, 0x6303 }, { 2879, 0x6304 }, 1224 { 2880, 0x630A }, { 2881, 0x630B }, { 2882, 0x630D }, { 2883, 0x6310 }, { 2884, 0x6313 }, { 2885, 0x6316 }, { 2886, 0x6318 }, { 2887, 0x6329 }, 1225 { 2888, 0x632A }, { 2889, 0x632D }, { 2890, 0x6335 }, { 2891, 0x6336 }, { 2892, 0x6339 }, { 2893, 0x633C }, { 2894, 0x6341 }, { 2895, 0x6342 }, 1226 { 2896, 0x6343 }, { 2897, 0x6344 }, { 2898, 0x6346 }, { 2899, 0x634A }, { 2900, 0x634B }, { 2901, 0x634E }, { 2902, 0x6352 }, { 2903, 0x6353 }, 1227 { 2904, 0x6354 }, { 2905, 0x6358 }, { 2906, 0x635B }, { 2907, 0x6365 }, { 2908, 0x6366 }, { 2909, 0x636C }, { 2910, 0x636D }, { 2911, 0x6371 }, 1228 { 2912, 0x6374 }, { 2913, 0x6375 }, { 2914, 0x6378 }, { 2915, 0x637C }, { 2916, 0x637D }, { 2917, 0x637F }, { 2918, 0x6382 }, { 2919, 0x6384 }, 1229 { 2920, 0x6387 }, { 2921, 0x638A }, { 2922, 0x6390 }, { 2923, 0x6394 }, { 2924, 0x6395 }, { 2925, 0x6399 }, { 2926, 0x639A }, { 2927, 0x639E }, 1230 { 2928, 0x63A4 }, { 2929, 0x63A6 }, { 2930, 0x63AD }, { 2931, 0x63AE }, { 2932, 0x63AF }, { 2933, 0x63BD }, { 2934, 0x63C1 }, { 2935, 0x63C5 }, 1231 { 2936, 0x63C8 }, { 2937, 0x63CE }, { 2938, 0x63D1 }, { 2939, 0x63D3 }, { 2940, 0x63D4 }, { 2941, 0x63D5 }, { 2942, 0x63DC }, { 2943, 0x63E0 }, 1232 { 2944, 0x63E5 }, { 2945, 0x63EA }, { 2946, 0x63EC }, { 2947, 0x63F2 }, { 2948, 0x63F3 }, { 2949, 0x63F5 }, { 2950, 0x63F8 }, { 2951, 0x63F9 }, 1233 { 2952, 0x6409 }, { 2953, 0x640A }, { 2954, 0x6410 }, { 2955, 0x6412 }, { 2956, 0x6414 }, { 2957, 0x6418 }, { 2958, 0x641E }, { 2959, 0x6420 }, 1234 { 2960, 0x6422 }, { 2961, 0x6424 }, { 2962, 0x6425 }, { 2963, 0x6429 }, { 2964, 0x642A }, { 2965, 0x642F }, { 2966, 0x6430 }, { 2967, 0x6435 }, 1235 { 2968, 0x643D }, { 2969, 0x643F }, { 2970, 0x644B }, { 2971, 0x644F }, { 2972, 0x6451 }, { 2973, 0x6452 }, { 2974, 0x6453 }, { 2975, 0x6454 }, 1236 { 2976, 0x645A }, { 2977, 0x645B }, { 2978, 0x645C }, { 2979, 0x645D }, { 2980, 0x645F }, { 2981, 0x6460 }, { 2982, 0x6461 }, { 2983, 0x6463 }, 1237 { 2984, 0x646D }, { 2985, 0x6473 }, { 2986, 0x6474 }, { 2987, 0x647B }, { 2988, 0x647D }, { 2989, 0x6485 }, { 2990, 0x6487 }, { 2991, 0x648F }, 1238 { 2992, 0x6490 }, { 2993, 0x6491 }, { 2994, 0x6498 }, { 2995, 0x6499 }, { 2996, 0x649B }, { 2997, 0x649D }, { 2998, 0x649F }, { 2999, 0x64A1 }, 1239 { 3000, 0x64A3 }, { 3001, 0x64A6 }, { 3002, 0x64A8 }, { 3003, 0x64AC }, { 3004, 0x64B3 }, { 3005, 0x64BD }, { 3006, 0x64BE }, { 3007, 0x64BF }, 1240 { 3008, 0x64C4 }, { 3009, 0x64C9 }, { 3010, 0x64CA }, { 3011, 0x64CB }, { 3012, 0x64CC }, { 3013, 0x64CE }, { 3014, 0x64D0 }, { 3015, 0x64D1 }, 1241 { 3016, 0x64D5 }, { 3017, 0x64D7 }, { 3018, 0x64E4 }, { 3019, 0x64E5 }, { 3020, 0x64E9 }, { 3021, 0x64EA }, { 3022, 0x64ED }, { 3023, 0x64F0 }, 1242 { 3024, 0x64F5 }, { 3025, 0x64F7 }, { 3026, 0x64FB }, { 3027, 0x64FF }, { 3028, 0x6501 }, { 3029, 0x6504 }, { 3030, 0x6508 }, { 3031, 0x6509 }, 1243 { 3032, 0x650A }, { 3033, 0x650F }, { 3034, 0x6513 }, { 3035, 0x6514 }, { 3036, 0x6516 }, { 3037, 0x6519 }, { 3038, 0x651B }, { 3039, 0x651E }, 1244 { 3040, 0x651F }, { 3041, 0x6522 }, { 3042, 0x6526 }, { 3043, 0x6529 }, { 3044, 0x652E }, { 3045, 0x6531 }, { 3046, 0x653A }, { 3047, 0x653C }, 1245 { 3048, 0x653D }, { 3049, 0x6543 }, { 3050, 0x6547 }, { 3051, 0x6549 }, { 3052, 0x6550 }, { 3053, 0x6552 }, { 3054, 0x6554 }, { 3055, 0x655F }, 1246 { 3056, 0x6560 }, { 3057, 0x6567 }, { 3058, 0x656B }, { 3059, 0x657A }, { 3060, 0x657D }, { 3061, 0x6581 }, { 3062, 0x6585 }, { 3063, 0x658A }, 1247 { 3064, 0x6592 }, { 3065, 0x6595 }, { 3066, 0x6598 }, { 3067, 0x659D }, { 3068, 0x65A0 }, { 3069, 0x65A3 }, { 3070, 0x65A6 }, { 3071, 0x65AE }, 1248 { 3072, 0x65B2 }, { 3073, 0x65B3 }, { 3074, 0x65B4 }, { 3075, 0x65BF }, { 3076, 0x65C2 }, { 3077, 0x65C8 }, { 3078, 0x65C9 }, { 3079, 0x65CE }, 1249 { 3080, 0x65D0 }, { 3081, 0x65D4 }, { 3082, 0x65D6 }, { 3083, 0x65D8 }, { 3084, 0x65DF }, { 3085, 0x65F0 }, { 3086, 0x65F2 }, { 3087, 0x65F4 }, 1250 { 3088, 0x65F5 }, { 3089, 0x65F9 }, { 3090, 0x65FE }, { 3091, 0x65FF }, { 3092, 0x6600 }, { 3093, 0x6604 }, { 3094, 0x6608 }, { 3095, 0x6609 }, 1251 { 3096, 0x660D }, { 3097, 0x6611 }, { 3098, 0x6612 }, { 3099, 0x6615 }, { 3100, 0x6616 }, { 3101, 0x661D }, { 3102, 0x661E }, { 3103, 0x6621 }, 1252 { 3104, 0x6622 }, { 3105, 0x6623 }, { 3106, 0x6624 }, { 3107, 0x6626 }, { 3108, 0x6629 }, { 3109, 0x662A }, { 3110, 0x662B }, { 3111, 0x662C }, 1253 { 3112, 0x662E }, { 3113, 0x6630 }, { 3114, 0x6631 }, { 3115, 0x6633 }, { 3116, 0x6639 }, { 3117, 0x6637 }, { 3118, 0x6640 }, { 3119, 0x6645 }, 1254 { 3120, 0x6646 }, { 3121, 0x664A }, { 3122, 0x664C }, { 3123, 0x6651 }, { 3124, 0x664E }, { 3125, 0x6657 }, { 3126, 0x6658 }, { 3127, 0x6659 }, 1255 { 3128, 0x665B }, { 3129, 0x665C }, { 3130, 0x6660 }, { 3131, 0x6661 }, { 3132, 0x66FB }, { 3133, 0x666A }, { 3134, 0x666B }, { 3135, 0x666C }, 1256 { 3136, 0x667E }, { 3137, 0x6673 }, { 3138, 0x6675 }, { 3139, 0x667F }, { 3140, 0x6677 }, { 3141, 0x6678 }, { 3142, 0x6679 }, { 3143, 0x667B }, 1257 { 3144, 0x6680 }, { 3145, 0x667C }, { 3146, 0x668B }, { 3147, 0x668C }, { 3148, 0x668D }, { 3149, 0x6690 }, { 3150, 0x6692 }, { 3151, 0x6699 }, 1258 { 3152, 0x669A }, { 3153, 0x669B }, { 3154, 0x669C }, { 3155, 0x669F }, { 3156, 0x66A0 }, { 3157, 0x66A4 }, { 3158, 0x66AD }, { 3159, 0x66B1 }, 1259 { 3160, 0x66B2 }, { 3161, 0x66B5 }, { 3162, 0x66BB }, { 3163, 0x66BF }, { 3164, 0x66C0 }, { 3165, 0x66C2 }, { 3166, 0x66C3 }, { 3167, 0x66C8 }, 1260 { 3168, 0x66CC }, { 3169, 0x66CE }, { 3170, 0x66CF }, { 3171, 0x66D4 }, { 3172, 0x66DB }, { 3173, 0x66DF }, { 3174, 0x66E8 }, { 3175, 0x66EB }, 1261 { 3176, 0x66EC }, { 3177, 0x66EE }, { 3178, 0x66FA }, { 3179, 0x6705 }, { 3180, 0x6707 }, { 3181, 0x670E }, { 3182, 0x6713 }, { 3183, 0x6719 }, 1262 { 3184, 0x671C }, { 3185, 0x6720 }, { 3186, 0x6722 }, { 3187, 0x6733 }, { 3188, 0x673E }, { 3189, 0x6745 }, { 3190, 0x6747 }, { 3191, 0x6748 }, 1263 { 3192, 0x674C }, { 3193, 0x6754 }, { 3194, 0x6755 }, { 3195, 0x675D }, { 3196, 0x6766 }, { 3197, 0x676C }, { 3198, 0x676E }, { 3199, 0x6774 }, 1264 { 3200, 0x6776 }, { 3201, 0x677B }, { 3202, 0x6781 }, { 3203, 0x6784 }, { 3204, 0x678E }, { 3205, 0x678F }, { 3206, 0x6791 }, { 3207, 0x6793 }, 1265 { 3208, 0x6796 }, { 3209, 0x6798 }, { 3210, 0x6799 }, { 3211, 0x679B }, { 3212, 0x67B0 }, { 3213, 0x67B1 }, { 3214, 0x67B2 }, { 3215, 0x67B5 }, 1266 { 3216, 0x67BB }, { 3217, 0x67BC }, { 3218, 0x67BD }, { 3219, 0x67F9 }, { 3220, 0x67C0 }, { 3221, 0x67C2 }, { 3222, 0x67C3 }, { 3223, 0x67C5 }, 1267 { 3224, 0x67C8 }, { 3225, 0x67C9 }, { 3226, 0x67D2 }, { 3227, 0x67D7 }, { 3228, 0x67D9 }, { 3229, 0x67DC }, { 3230, 0x67E1 }, { 3231, 0x67E6 }, 1268 { 3232, 0x67F0 }, { 3233, 0x67F2 }, { 3234, 0x67F6 }, { 3235, 0x67F7 }, { 3236, 0x6852 }, { 3237, 0x6814 }, { 3238, 0x6819 }, { 3239, 0x681D }, 1269 { 3240, 0x681F }, { 3241, 0x6828 }, { 3242, 0x6827 }, { 3243, 0x682C }, { 3244, 0x682D }, { 3245, 0x682F }, { 3246, 0x6830 }, { 3247, 0x6831 }, 1270 { 3248, 0x6833 }, { 3249, 0x683B }, { 3250, 0x683F }, { 3251, 0x6844 }, { 3252, 0x6845 }, { 3253, 0x684A }, { 3254, 0x684C }, { 3255, 0x6855 }, 1271 { 3256, 0x6857 }, { 3257, 0x6858 }, { 3258, 0x685B }, { 3259, 0x686B }, { 3260, 0x686E }, { 3261, 0x686F }, { 3262, 0x6870 }, { 3263, 0x6871 }, 1272 { 3264, 0x6872 }, { 3265, 0x6875 }, { 3266, 0x6879 }, { 3267, 0x687A }, { 3268, 0x687B }, { 3269, 0x687C }, { 3270, 0x6882 }, { 3271, 0x6884 }, 1273 { 3272, 0x6886 }, { 3273, 0x6888 }, { 3274, 0x6896 }, { 3275, 0x6898 }, { 3276, 0x689A }, { 3277, 0x689C }, { 3278, 0x68A1 }, { 3279, 0x68A3 }, 1274 { 3280, 0x68A5 }, { 3281, 0x68A9 }, { 3282, 0x68AA }, { 3283, 0x68AE }, { 3284, 0x68B2 }, { 3285, 0x68BB }, { 3286, 0x68C5 }, { 3287, 0x68C8 }, 1275 { 3288, 0x68CC }, { 3289, 0x68CF }, { 3290, 0x68D0 }, { 3291, 0x68D1 }, { 3292, 0x68D3 }, { 3293, 0x68D6 }, { 3294, 0x68D9 }, { 3295, 0x68DC }, 1276 { 3296, 0x68DD }, { 3297, 0x68E5 }, { 3298, 0x68E8 }, { 3299, 0x68EA }, { 3300, 0x68EB }, { 3301, 0x68EC }, { 3302, 0x68ED }, { 3303, 0x68F0 }, 1277 { 3304, 0x68F1 }, { 3305, 0x68F5 }, { 3306, 0x68F6 }, { 3307, 0x68FB }, { 3308, 0x68FC }, { 3309, 0x68FD }, { 3310, 0x6906 }, { 3311, 0x6909 }, 1278 { 3312, 0x690A }, { 3313, 0x6910 }, { 3314, 0x6911 }, { 3315, 0x6913 }, { 3316, 0x6916 }, { 3317, 0x6917 }, { 3318, 0x6931 }, { 3319, 0x6933 }, 1279 { 3320, 0x6935 }, { 3321, 0x6938 }, { 3322, 0x693B }, { 3323, 0x6942 }, { 3324, 0x6945 }, { 3325, 0x6949 }, { 3326, 0x694E }, { 3327, 0x6957 }, 1280 { 3328, 0x695B }, { 3329, 0x6963 }, { 3330, 0x6964 }, { 3331, 0x6965 }, { 3332, 0x6966 }, { 3333, 0x6968 }, { 3334, 0x6969 }, { 3335, 0x696C }, 1281 { 3336, 0x6970 }, { 3337, 0x6971 }, { 3338, 0x6972 }, { 3339, 0x697A }, { 3340, 0x697B }, { 3341, 0x697F }, { 3342, 0x6980 }, { 3343, 0x698D }, 1282 { 3344, 0x6992 }, { 3345, 0x6996 }, { 3346, 0x6998 }, { 3347, 0x69A1 }, { 3348, 0x69A5 }, { 3349, 0x69A6 }, { 3350, 0x69A8 }, { 3351, 0x69AB }, 1283 { 3352, 0x69AD }, { 3353, 0x69AF }, { 3354, 0x69B7 }, { 3355, 0x69B8 }, { 3356, 0x69BA }, { 3357, 0x69BC }, { 3358, 0x69C5 }, { 3359, 0x69C8 }, 1284 { 3360, 0x69D1 }, { 3361, 0x69D6 }, { 3362, 0x69D7 }, { 3363, 0x69E2 }, { 3364, 0x69E5 }, { 3365, 0x69EE }, { 3366, 0x69EF }, { 3367, 0x69F1 }, 1285 { 3368, 0x69F3 }, { 3369, 0x69F5 }, { 3370, 0x69FE }, { 3371, 0x6A00 }, { 3372, 0x6A01 }, { 3373, 0x6A03 }, { 3374, 0x6A0F }, { 3375, 0x6A11 }, 1286 { 3376, 0x6A15 }, { 3377, 0x6A1A }, { 3378, 0x6A1D }, { 3379, 0x6A20 }, { 3380, 0x6A24 }, { 3381, 0x6A28 }, { 3382, 0x6A30 }, { 3383, 0x6A32 }, 1287 { 3384, 0x6A34 }, { 3385, 0x6A37 }, { 3386, 0x6A3B }, { 3387, 0x6A3E }, { 3388, 0x6A3F }, { 3389, 0x6A45 }, { 3390, 0x6A46 }, { 3391, 0x6A49 }, 1288 { 3392, 0x6A4A }, { 3393, 0x6A4E }, { 3394, 0x6A50 }, { 3395, 0x6A51 }, { 3396, 0x6A52 }, { 3397, 0x6A55 }, { 3398, 0x6A56 }, { 3399, 0x6A5B }, 1289 { 3400, 0x6A64 }, { 3401, 0x6A67 }, { 3402, 0x6A6A }, { 3403, 0x6A71 }, { 3404, 0x6A73 }, { 3405, 0x6A7E }, { 3406, 0x6A81 }, { 3407, 0x6A83 }, 1290 { 3408, 0x6A86 }, { 3409, 0x6A87 }, { 3410, 0x6A89 }, { 3411, 0x6A8B }, { 3412, 0x6A91 }, { 3413, 0x6A9B }, { 3414, 0x6A9D }, { 3415, 0x6A9E }, 1291 { 3416, 0x6A9F }, { 3417, 0x6AA5 }, { 3418, 0x6AAB }, { 3419, 0x6AAF }, { 3420, 0x6AB0 }, { 3421, 0x6AB1 }, { 3422, 0x6AB4 }, { 3423, 0x6ABD }, 1292 { 3424, 0x6ABE }, { 3425, 0x6ABF }, { 3426, 0x6AC6 }, { 3427, 0x6AC9 }, { 3428, 0x6AC8 }, { 3429, 0x6ACC }, { 3430, 0x6AD0 }, { 3431, 0x6AD4 }, 1293 { 3432, 0x6AD5 }, { 3433, 0x6AD6 }, { 3434, 0x6ADC }, { 3435, 0x6ADD }, { 3436, 0x6AE4 }, { 3437, 0x6AE7 }, { 3438, 0x6AEC }, { 3439, 0x6AF0 }, 1294 { 3440, 0x6AF1 }, { 3441, 0x6AF2 }, { 3442, 0x6AFC }, { 3443, 0x6AFD }, { 3444, 0x6B02 }, { 3445, 0x6B03 }, { 3446, 0x6B06 }, { 3447, 0x6B07 }, 1295 { 3448, 0x6B09 }, { 3449, 0x6B0F }, { 3450, 0x6B10 }, { 3451, 0x6B11 }, { 3452, 0x6B17 }, { 3453, 0x6B1B }, { 3454, 0x6B1E }, { 3455, 0x6B24 }, 1296 { 3456, 0x6B28 }, { 3457, 0x6B2B }, { 3458, 0x6B2C }, { 3459, 0x6B2F }, { 3460, 0x6B35 }, { 3461, 0x6B36 }, { 3462, 0x6B3B }, { 3463, 0x6B3F }, 1297 { 3464, 0x6B46 }, { 3465, 0x6B4A }, { 3466, 0x6B4D }, { 3467, 0x6B52 }, { 3468, 0x6B56 }, { 3469, 0x6B58 }, { 3470, 0x6B5D }, { 3471, 0x6B60 }, 1298 { 3472, 0x6B67 }, { 3473, 0x6B6B }, { 3474, 0x6B6E }, { 3475, 0x6B70 }, { 3476, 0x6B75 }, { 3477, 0x6B7D }, { 3478, 0x6B7E }, { 3479, 0x6B82 }, 1299 { 3480, 0x6B85 }, { 3481, 0x6B97 }, { 3482, 0x6B9B }, { 3483, 0x6B9F }, { 3484, 0x6BA0 }, { 3485, 0x6BA2 }, { 3486, 0x6BA3 }, { 3487, 0x6BA8 }, 1300 { 3488, 0x6BA9 }, { 3489, 0x6BAC }, { 3490, 0x6BAD }, { 3491, 0x6BAE }, { 3492, 0x6BB0 }, { 3493, 0x6BB8 }, { 3494, 0x6BB9 }, { 3495, 0x6BBD }, 1301 { 3496, 0x6BBE }, { 3497, 0x6BC3 }, { 3498, 0x6BC4 }, { 3499, 0x6BC9 }, { 3500, 0x6BCC }, { 3501, 0x6BD6 }, { 3502, 0x6BDA }, { 3503, 0x6BE1 }, 1302 { 3504, 0x6BE3 }, { 3505, 0x6BE6 }, { 3506, 0x6BE7 }, { 3507, 0x6BEE }, { 3508, 0x6BF1 }, { 3509, 0x6BF7 }, { 3510, 0x6BF9 }, { 3511, 0x6BFF }, 1303 { 3512, 0x6C02 }, { 3513, 0x6C04 }, { 3514, 0x6C05 }, { 3515, 0x6C09 }, { 3516, 0x6C0D }, { 3517, 0x6C0E }, { 3518, 0x6C10 }, { 3519, 0x6C12 }, 1304 { 3520, 0x6C19 }, { 3521, 0x6C1F }, { 3522, 0x6C26 }, { 3523, 0x6C27 }, { 3524, 0x6C28 }, { 3525, 0x6C2C }, { 3526, 0x6C2E }, { 3527, 0x6C33 }, 1305 { 3528, 0x6C35 }, { 3529, 0x6C36 }, { 3530, 0x6C3A }, { 3531, 0x6C3B }, { 3532, 0x6C3F }, { 3533, 0x6C4A }, { 3534, 0x6C4B }, { 3535, 0x6C4D }, 1306 { 3536, 0x6C4F }, { 3537, 0x6C52 }, { 3538, 0x6C54 }, { 3539, 0x6C59 }, { 3540, 0x6C5B }, { 3541, 0x6C5C }, { 3542, 0x6C6B }, { 3543, 0x6C6D }, 1307 { 3544, 0x6C6F }, { 3545, 0x6C74 }, { 3546, 0x6C76 }, { 3547, 0x6C78 }, { 3548, 0x6C79 }, { 3549, 0x6C7B }, { 3550, 0x6C85 }, { 3551, 0x6C86 }, 1308 { 3552, 0x6C87 }, { 3553, 0x6C89 }, { 3554, 0x6C94 }, { 3555, 0x6C95 }, { 3556, 0x6C97 }, { 3557, 0x6C98 }, { 3558, 0x6C9C }, { 3559, 0x6C9F }, 1309 { 3560, 0x6CB0 }, { 3561, 0x6CB2 }, { 3562, 0x6CB4 }, { 3563, 0x6CC2 }, { 3564, 0x6CC6 }, { 3565, 0x6CCD }, { 3566, 0x6CCF }, { 3567, 0x6CD0 }, 1310 { 3568, 0x6CD1 }, { 3569, 0x6CD2 }, { 3570, 0x6CD4 }, { 3571, 0x6CD6 }, { 3572, 0x6CDA }, { 3573, 0x6CDC }, { 3574, 0x6CE0 }, { 3575, 0x6CE7 }, 1311 { 3576, 0x6CE9 }, { 3577, 0x6CEB }, { 3578, 0x6CEC }, { 3579, 0x6CEE }, { 3580, 0x6CF2 }, { 3581, 0x6CF4 }, { 3582, 0x6D04 }, { 3583, 0x6D07 }, 1312 { 3584, 0x6D0A }, { 3585, 0x6D0E }, { 3586, 0x6D0F }, { 3587, 0x6D11 }, { 3588, 0x6D13 }, { 3589, 0x6D1A }, { 3590, 0x6D26 }, { 3591, 0x6D27 }, 1313 { 3592, 0x6D28 }, { 3593, 0x6C67 }, { 3594, 0x6D2E }, { 3595, 0x6D2F }, { 3596, 0x6D31 }, { 3597, 0x6D39 }, { 3598, 0x6D3C }, { 3599, 0x6D3F }, 1314 { 3600, 0x6D57 }, { 3601, 0x6D5E }, { 3602, 0x6D5F }, { 3603, 0x6D61 }, { 3604, 0x6D65 }, { 3605, 0x6D67 }, { 3606, 0x6D6F }, { 3607, 0x6D70 }, 1315 { 3608, 0x6D7C }, { 3609, 0x6D82 }, { 3610, 0x6D87 }, { 3611, 0x6D91 }, { 3612, 0x6D92 }, { 3613, 0x6D94 }, { 3614, 0x6D96 }, { 3615, 0x6D97 }, 1316 { 3616, 0x6D98 }, { 3617, 0x6DAA }, { 3618, 0x6DAC }, { 3619, 0x6DB4 }, { 3620, 0x6DB7 }, { 3621, 0x6DB9 }, { 3622, 0x6DBD }, { 3623, 0x6DBF }, 1317 { 3624, 0x6DC4 }, { 3625, 0x6DC8 }, { 3626, 0x6DCA }, { 3627, 0x6DCE }, { 3628, 0x6DCF }, { 3629, 0x6DD6 }, { 3630, 0x6DDB }, { 3631, 0x6DDD }, 1318 { 3632, 0x6DDF }, { 3633, 0x6DE0 }, { 3634, 0x6DE2 }, { 3635, 0x6DE5 }, { 3636, 0x6DE9 }, { 3637, 0x6DEF }, { 3638, 0x6DF0 }, { 3639, 0x6DF4 }, 1319 { 3640, 0x6DF6 }, { 3641, 0x6DFC }, { 3642, 0x6E00 }, { 3643, 0x6E04 }, { 3644, 0x6E1E }, { 3645, 0x6E22 }, { 3646, 0x6E27 }, { 3647, 0x6E32 }, 1320 { 3648, 0x6E36 }, { 3649, 0x6E39 }, { 3650, 0x6E3B }, { 3651, 0x6E3C }, { 3652, 0x6E44 }, { 3653, 0x6E45 }, { 3654, 0x6E48 }, { 3655, 0x6E49 }, 1321 { 3656, 0x6E4B }, { 3657, 0x6E4F }, { 3658, 0x6E51 }, { 3659, 0x6E52 }, { 3660, 0x6E53 }, { 3661, 0x6E54 }, { 3662, 0x6E57 }, { 3663, 0x6E5C }, 1322 { 3664, 0x6E5D }, { 3665, 0x6E5E }, { 3666, 0x6E62 }, { 3667, 0x6E63 }, { 3668, 0x6E68 }, { 3669, 0x6E73 }, { 3670, 0x6E7B }, { 3671, 0x6E7D }, 1323 { 3672, 0x6E8D }, { 3673, 0x6E93 }, { 3674, 0x6E99 }, { 3675, 0x6EA0 }, { 3676, 0x6EA7 }, { 3677, 0x6EAD }, { 3678, 0x6EAE }, { 3679, 0x6EB1 }, 1324 { 3680, 0x6EB3 }, { 3681, 0x6EBB }, { 3682, 0x6EBF }, { 3683, 0x6EC0 }, { 3684, 0x6EC1 }, { 3685, 0x6EC3 }, { 3686, 0x6EC7 }, { 3687, 0x6EC8 }, 1325 { 3688, 0x6ECA }, { 3689, 0x6ECD }, { 3690, 0x6ECE }, { 3691, 0x6ECF }, { 3692, 0x6EEB }, { 3693, 0x6EED }, { 3694, 0x6EEE }, { 3695, 0x6EF9 }, 1326 { 3696, 0x6EFB }, { 3697, 0x6EFD }, { 3698, 0x6F04 }, { 3699, 0x6F08 }, { 3700, 0x6F0A }, { 3701, 0x6F0C }, { 3702, 0x6F0D }, { 3703, 0x6F16 }, 1327 { 3704, 0x6F18 }, { 3705, 0x6F1A }, { 3706, 0x6F1B }, { 3707, 0x6F26 }, { 3708, 0x6F29 }, { 3709, 0x6F2A }, { 3710, 0x6F2F }, { 3711, 0x6F30 }, 1328 { 3712, 0x6F33 }, { 3713, 0x6F36 }, { 3714, 0x6F3B }, { 3715, 0x6F3C }, { 3716, 0x6F2D }, { 3717, 0x6F4F }, { 3718, 0x6F51 }, { 3719, 0x6F52 }, 1329 { 3720, 0x6F53 }, { 3721, 0x6F57 }, { 3722, 0x6F59 }, { 3723, 0x6F5A }, { 3724, 0x6F5D }, { 3725, 0x6F5E }, { 3726, 0x6F61 }, { 3727, 0x6F62 }, 1330 { 3728, 0x6F68 }, { 3729, 0x6F6C }, { 3730, 0x6F7D }, { 3731, 0x6F7E }, { 3732, 0x6F83 }, { 3733, 0x6F87 }, { 3734, 0x6F88 }, { 3735, 0x6F8B }, 1331 { 3736, 0x6F8C }, { 3737, 0x6F8D }, { 3738, 0x6F90 }, { 3739, 0x6F92 }, { 3740, 0x6F93 }, { 3741, 0x6F94 }, { 3742, 0x6F96 }, { 3743, 0x6F9A }, 1332 { 3744, 0x6F9F }, { 3745, 0x6FA0 }, { 3746, 0x6FA5 }, { 3747, 0x6FA6 }, { 3748, 0x6FA7 }, { 3749, 0x6FA8 }, { 3750, 0x6FAE }, { 3751, 0x6FAF }, 1333 { 3752, 0x6FB0 }, { 3753, 0x6FB5 }, { 3754, 0x6FB6 }, { 3755, 0x6FBC }, { 3756, 0x6FC5 }, { 3757, 0x6FC7 }, { 3758, 0x6FC8 }, { 3759, 0x6FCA }, 1334 { 3760, 0x6FDA }, { 3761, 0x6FDE }, { 3762, 0x6FE8 }, { 3763, 0x6FE9 }, { 3764, 0x6FF0 }, { 3765, 0x6FF5 }, { 3766, 0x6FF9 }, { 3767, 0x6FFC }, 1335 { 3768, 0x6FFD }, { 3769, 0x7000 }, { 3770, 0x7005 }, { 3771, 0x7006 }, { 3772, 0x7007 }, { 3773, 0x700D }, { 3774, 0x7017 }, { 3775, 0x7020 }, 1336 { 3776, 0x7023 }, { 3777, 0x702F }, { 3778, 0x7034 }, { 3779, 0x7037 }, { 3780, 0x7039 }, { 3781, 0x703C }, { 3782, 0x7043 }, { 3783, 0x7044 }, 1337 { 3784, 0x7048 }, { 3785, 0x7049 }, { 3786, 0x704A }, { 3787, 0x704B }, { 3788, 0x7054 }, { 3789, 0x7055 }, { 3790, 0x705D }, { 3791, 0x705E }, 1338 { 3792, 0x704E }, { 3793, 0x7064 }, { 3794, 0x7065 }, { 3795, 0x706C }, { 3796, 0x706E }, { 3797, 0x7075 }, { 3798, 0x7076 }, { 3799, 0x707E }, 1339 { 3800, 0x7081 }, { 3801, 0x7085 }, { 3802, 0x7086 }, { 3803, 0x7094 }, { 3804, 0x7095 }, { 3805, 0x7096 }, { 3806, 0x7097 }, { 3807, 0x7098 }, 1340 { 3808, 0x709B }, { 3809, 0x70A4 }, { 3810, 0x70AB }, { 3811, 0x70B0 }, { 3812, 0x70B1 }, { 3813, 0x70B4 }, { 3814, 0x70B7 }, { 3815, 0x70CA }, 1341 { 3816, 0x70D1 }, { 3817, 0x70D3 }, { 3818, 0x70D4 }, { 3819, 0x70D5 }, { 3820, 0x70D6 }, { 3821, 0x70D8 }, { 3822, 0x70DC }, { 3823, 0x70E4 }, 1342 { 3824, 0x70FA }, { 3825, 0x7103 }, { 3826, 0x7104 }, { 3827, 0x7105 }, { 3828, 0x7106 }, { 3829, 0x7107 }, { 3830, 0x710B }, { 3831, 0x710C }, 1343 { 3832, 0x710F }, { 3833, 0x711E }, { 3834, 0x7120 }, { 3835, 0x712B }, { 3836, 0x712D }, { 3837, 0x712F }, { 3838, 0x7130 }, { 3839, 0x7131 }, 1344 { 3840, 0x7138 }, { 3841, 0x7141 }, { 3842, 0x7145 }, { 3843, 0x7146 }, { 3844, 0x7147 }, { 3845, 0x714A }, { 3846, 0x714B }, { 3847, 0x7150 }, 1345 { 3848, 0x7152 }, { 3849, 0x7157 }, { 3850, 0x715A }, { 3851, 0x715C }, { 3852, 0x715E }, { 3853, 0x7160 }, { 3854, 0x7168 }, { 3855, 0x7179 }, 1346 { 3856, 0x7180 }, { 3857, 0x7185 }, { 3858, 0x7187 }, { 3859, 0x718C }, { 3860, 0x7192 }, { 3861, 0x719A }, { 3862, 0x719B }, { 3863, 0x71A0 }, 1347 { 3864, 0x71A2 }, { 3865, 0x71AF }, { 3866, 0x71B0 }, { 3867, 0x71B2 }, { 3868, 0x71B3 }, { 3869, 0x71BA }, { 3870, 0x71BF }, { 3871, 0x71C0 }, 1348 { 3872, 0x71C1 }, { 3873, 0x71C4 }, { 3874, 0x71CB }, { 3875, 0x71CC }, { 3876, 0x71D3 }, { 3877, 0x71D6 }, { 3878, 0x71D9 }, { 3879, 0x71DA }, 1349 { 3880, 0x71DC }, { 3881, 0x71F8 }, { 3882, 0x71FE }, { 3883, 0x7200 }, { 3884, 0x7207 }, { 3885, 0x7208 }, { 3886, 0x7209 }, { 3887, 0x7213 }, 1350 { 3888, 0x7217 }, { 3889, 0x721A }, { 3890, 0x721D }, { 3891, 0x721F }, { 3892, 0x7224 }, { 3893, 0x722B }, { 3894, 0x722F }, { 3895, 0x7234 }, 1351 { 3896, 0x7238 }, { 3897, 0x7239 }, { 3898, 0x7241 }, { 3899, 0x7242 }, { 3900, 0x7243 }, { 3901, 0x7245 }, { 3902, 0x724E }, { 3903, 0x724F }, 1352 { 3904, 0x7250 }, { 3905, 0x7253 }, { 3906, 0x7255 }, { 3907, 0x7256 }, { 3908, 0x725A }, { 3909, 0x725C }, { 3910, 0x725E }, { 3911, 0x7260 }, 1353 { 3912, 0x7263 }, { 3913, 0x7268 }, { 3914, 0x726B }, { 3915, 0x726E }, { 3916, 0x726F }, { 3917, 0x7271 }, { 3918, 0x7277 }, { 3919, 0x7278 }, 1354 { 3920, 0x727B }, { 3921, 0x727C }, { 3922, 0x727F }, { 3923, 0x7284 }, { 3924, 0x7289 }, { 3925, 0x728D }, { 3926, 0x728E }, { 3927, 0x7293 }, 1355 { 3928, 0x729B }, { 3929, 0x72A8 }, { 3930, 0x72AD }, { 3931, 0x72AE }, { 3932, 0x72B1 }, { 3933, 0x72B4 }, { 3934, 0x72BE }, { 3935, 0x72C1 }, 1356 { 3936, 0x72C7 }, { 3937, 0x72C9 }, { 3938, 0x72CC }, { 3939, 0x72D5 }, { 3940, 0x72D6 }, { 3941, 0x72D8 }, { 3942, 0x72DF }, { 3943, 0x72E5 }, 1357 { 3944, 0x72F3 }, { 3945, 0x72F4 }, { 3946, 0x72FA }, { 3947, 0x72FB }, { 3948, 0x72FE }, { 3949, 0x7302 }, { 3950, 0x7304 }, { 3951, 0x7305 }, 1358 { 3952, 0x7307 }, { 3953, 0x730B }, { 3954, 0x730D }, { 3955, 0x7312 }, { 3956, 0x7313 }, { 3957, 0x7318 }, { 3958, 0x7319 }, { 3959, 0x731E }, 1359 { 3960, 0x7322 }, { 3961, 0x7324 }, { 3962, 0x7327 }, { 3963, 0x7328 }, { 3964, 0x732C }, { 3965, 0x7331 }, { 3966, 0x7332 }, { 3967, 0x7335 }, 1360 { 3968, 0x733A }, { 3969, 0x733B }, { 3970, 0x733D }, { 3971, 0x7343 }, { 3972, 0x734D }, { 3973, 0x7350 }, { 3974, 0x7352 }, { 3975, 0x7356 }, 1361 { 3976, 0x7358 }, { 3977, 0x735D }, { 3978, 0x735E }, { 3979, 0x735F }, { 3980, 0x7360 }, { 3981, 0x7366 }, { 3982, 0x7367 }, { 3983, 0x7369 }, 1362 { 3984, 0x736B }, { 3985, 0x736C }, { 3986, 0x736E }, { 3987, 0x736F }, { 3988, 0x7371 }, { 3989, 0x7377 }, { 3990, 0x7379 }, { 3991, 0x737C }, 1363 { 3992, 0x7380 }, { 3993, 0x7381 }, { 3994, 0x7383 }, { 3995, 0x7385 }, { 3996, 0x7386 }, { 3997, 0x738E }, { 3998, 0x7390 }, { 3999, 0x7393 }, 1364 { 4000, 0x7395 }, { 4001, 0x7397 }, { 4002, 0x7398 }, { 4003, 0x739C }, { 4004, 0x739E }, { 4005, 0x739F }, { 4006, 0x73A0 }, { 4007, 0x73A2 }, 1365 { 4008, 0x73A5 }, { 4009, 0x73A6 }, { 4010, 0x73AA }, { 4011, 0x73AB }, { 4012, 0x73AD }, { 4013, 0x73B5 }, { 4014, 0x73B7 }, { 4015, 0x73B9 }, 1366 { 4016, 0x73BC }, { 4017, 0x73BD }, { 4018, 0x73BF }, { 4019, 0x73C5 }, { 4020, 0x73C6 }, { 4021, 0x73C9 }, { 4022, 0x73CB }, { 4023, 0x73CC }, 1367 { 4024, 0x73CF }, { 4025, 0x73D2 }, { 4026, 0x73D3 }, { 4027, 0x73D6 }, { 4028, 0x73D9 }, { 4029, 0x73DD }, { 4030, 0x73E1 }, { 4031, 0x73E3 }, 1368 { 4032, 0x73E6 }, { 4033, 0x73E7 }, { 4034, 0x73E9 }, { 4035, 0x73F4 }, { 4036, 0x73F5 }, { 4037, 0x73F7 }, { 4038, 0x73F9 }, { 4039, 0x73FA }, 1369 { 4040, 0x73FB }, { 4041, 0x73FD }, { 4042, 0x73FF }, { 4043, 0x7400 }, { 4044, 0x7401 }, { 4045, 0x7404 }, { 4046, 0x7407 }, { 4047, 0x740A }, 1370 { 4048, 0x7411 }, { 4049, 0x741A }, { 4050, 0x741B }, { 4051, 0x7424 }, { 4052, 0x7426 }, { 4053, 0x7428 }, { 4054, 0x7429 }, { 4055, 0x742A }, 1371 { 4056, 0x742B }, { 4057, 0x742C }, { 4058, 0x742D }, { 4059, 0x742E }, { 4060, 0x742F }, { 4061, 0x7430 }, { 4062, 0x7431 }, { 4063, 0x7439 }, 1372 { 4064, 0x7440 }, { 4065, 0x7443 }, { 4066, 0x7444 }, { 4067, 0x7446 }, { 4068, 0x7447 }, { 4069, 0x744B }, { 4070, 0x744D }, { 4071, 0x7451 }, 1373 { 4072, 0x7452 }, { 4073, 0x7457 }, { 4074, 0x745D }, { 4075, 0x7462 }, { 4076, 0x7466 }, { 4077, 0x7467 }, { 4078, 0x7468 }, { 4079, 0x746B }, 1374 { 4080, 0x746D }, { 4081, 0x746E }, { 4082, 0x7471 }, { 4083, 0x7472 }, { 4084, 0x7480 }, { 4085, 0x7481 }, { 4086, 0x7485 }, { 4087, 0x7486 }, 1375 { 4088, 0x7487 }, { 4089, 0x7489 }, { 4090, 0x748F }, { 4091, 0x7490 }, { 4092, 0x7491 }, { 4093, 0x7492 }, { 4094, 0x7498 }, { 4095, 0x7499 }, 1376 { 4096, 0x749A }, { 4097, 0x749C }, { 4098, 0x749F }, { 4099, 0x74A0 }, { 4100, 0x74A1 }, { 4101, 0x74A3 }, { 4102, 0x74A6 }, { 4103, 0x74A8 }, 1377 { 4104, 0x74A9 }, { 4105, 0x74AA }, { 4106, 0x74AB }, { 4107, 0x74AE }, { 4108, 0x74AF }, { 4109, 0x74B1 }, { 4110, 0x74B2 }, { 4111, 0x74B5 }, 1378 { 4112, 0x74B9 }, { 4113, 0x74BB }, { 4114, 0x74BF }, { 4115, 0x74C8 }, { 4116, 0x74C9 }, { 4117, 0x74CC }, { 4118, 0x74D0 }, { 4119, 0x74D3 }, 1379 { 4120, 0x74D8 }, { 4121, 0x74DA }, { 4122, 0x74DB }, { 4123, 0x74DE }, { 4124, 0x74DF }, { 4125, 0x74E4 }, { 4126, 0x74E8 }, { 4127, 0x74EA }, 1380 { 4128, 0x74EB }, { 4129, 0x74EF }, { 4130, 0x74F4 }, { 4131, 0x74FA }, { 4132, 0x74FB }, { 4133, 0x74FC }, { 4134, 0x74FF }, { 4135, 0x7506 }, 1381 { 4136, 0x7512 }, { 4137, 0x7516 }, { 4138, 0x7517 }, { 4139, 0x7520 }, { 4140, 0x7521 }, { 4141, 0x7524 }, { 4142, 0x7527 }, { 4143, 0x7529 }, 1382 { 4144, 0x752A }, { 4145, 0x752F }, { 4146, 0x7536 }, { 4147, 0x7539 }, { 4148, 0x753D }, { 4149, 0x753E }, { 4150, 0x753F }, { 4151, 0x7540 }, 1383 { 4152, 0x7543 }, { 4153, 0x7547 }, { 4154, 0x7548 }, { 4155, 0x754E }, { 4156, 0x7550 }, { 4157, 0x7552 }, { 4158, 0x7557 }, { 4159, 0x755E }, 1384 { 4160, 0x755F }, { 4161, 0x7561 }, { 4162, 0x756F }, { 4163, 0x7571 }, { 4164, 0x7579 }, { 4165, 0x757A }, { 4166, 0x757B }, { 4167, 0x757C }, 1385 { 4168, 0x757D }, { 4169, 0x757E }, { 4170, 0x7581 }, { 4171, 0x7585 }, { 4172, 0x7590 }, { 4173, 0x7592 }, { 4174, 0x7593 }, { 4175, 0x7595 }, 1386 { 4176, 0x7599 }, { 4177, 0x759C }, { 4178, 0x75A2 }, { 4179, 0x75A4 }, { 4180, 0x75B4 }, { 4181, 0x75BA }, { 4182, 0x75BF }, { 4183, 0x75C0 }, 1387 { 4184, 0x75C1 }, { 4185, 0x75C4 }, { 4186, 0x75C6 }, { 4187, 0x75CC }, { 4188, 0x75CE }, { 4189, 0x75CF }, { 4190, 0x75D7 }, { 4191, 0x75DC }, 1388 { 4192, 0x75DF }, { 4193, 0x75E0 }, { 4194, 0x75E1 }, { 4195, 0x75E4 }, { 4196, 0x75E7 }, { 4197, 0x75EC }, { 4198, 0x75EE }, { 4199, 0x75EF }, 1389 { 4200, 0x75F1 }, { 4201, 0x75F9 }, { 4202, 0x7600 }, { 4203, 0x7602 }, { 4204, 0x7603 }, { 4205, 0x7604 }, { 4206, 0x7607 }, { 4207, 0x7608 }, 1390 { 4208, 0x760A }, { 4209, 0x760C }, { 4210, 0x760F }, { 4211, 0x7612 }, { 4212, 0x7613 }, { 4213, 0x7615 }, { 4214, 0x7616 }, { 4215, 0x7619 }, 1391 { 4216, 0x761B }, { 4217, 0x761C }, { 4218, 0x761D }, { 4219, 0x761E }, { 4220, 0x7623 }, { 4221, 0x7625 }, { 4222, 0x7626 }, { 4223, 0x7629 }, 1392 { 4224, 0x762D }, { 4225, 0x7632 }, { 4226, 0x7633 }, { 4227, 0x7635 }, { 4228, 0x7638 }, { 4229, 0x7639 }, { 4230, 0x763A }, { 4231, 0x763C }, 1393 { 4232, 0x764A }, { 4233, 0x7640 }, { 4234, 0x7641 }, { 4235, 0x7643 }, { 4236, 0x7644 }, { 4237, 0x7645 }, { 4238, 0x7649 }, { 4239, 0x764B }, 1394 { 4240, 0x7655 }, { 4241, 0x7659 }, { 4242, 0x765F }, { 4243, 0x7664 }, { 4244, 0x7665 }, { 4245, 0x766D }, { 4246, 0x766E }, { 4247, 0x766F }, 1395 { 4248, 0x7671 }, { 4249, 0x7674 }, { 4250, 0x7681 }, { 4251, 0x7685 }, { 4252, 0x768C }, { 4253, 0x768D }, { 4254, 0x7695 }, { 4255, 0x769B }, 1396 { 4256, 0x769C }, { 4257, 0x769D }, { 4258, 0x769F }, { 4259, 0x76A0 }, { 4260, 0x76A2 }, { 4261, 0x76A3 }, { 4262, 0x76A4 }, { 4263, 0x76A5 }, 1397 { 4264, 0x76A6 }, { 4265, 0x76A7 }, { 4266, 0x76A8 }, { 4267, 0x76AA }, { 4268, 0x76AD }, { 4269, 0x76BD }, { 4270, 0x76C1 }, { 4271, 0x76C5 }, 1398 { 4272, 0x76C9 }, { 4273, 0x76CB }, { 4274, 0x76CC }, { 4275, 0x76CE }, { 4276, 0x76D4 }, { 4277, 0x76D9 }, { 4278, 0x76E0 }, { 4279, 0x76E6 }, 1399 { 4280, 0x76E8 }, { 4281, 0x76EC }, { 4282, 0x76F0 }, { 4283, 0x76F1 }, { 4284, 0x76F6 }, { 4285, 0x76F9 }, { 4286, 0x76FC }, { 4287, 0x7700 }, 1400 { 4288, 0x7706 }, { 4289, 0x770A }, { 4290, 0x770E }, { 4291, 0x7712 }, { 4292, 0x7714 }, { 4293, 0x7715 }, { 4294, 0x7717 }, { 4295, 0x7719 }, 1401 { 4296, 0x771A }, { 4297, 0x771C }, { 4298, 0x7722 }, { 4299, 0x7728 }, { 4300, 0x772D }, { 4301, 0x772E }, { 4302, 0x772F }, { 4303, 0x7734 }, 1402 { 4304, 0x7735 }, { 4305, 0x7736 }, { 4306, 0x7739 }, { 4307, 0x773D }, { 4308, 0x773E }, { 4309, 0x7742 }, { 4310, 0x7745 }, { 4311, 0x7746 }, 1403 { 4312, 0x774A }, { 4313, 0x774D }, { 4314, 0x774E }, { 4315, 0x774F }, { 4316, 0x7752 }, { 4317, 0x7756 }, { 4318, 0x7757 }, { 4319, 0x775C }, 1404 { 4320, 0x775E }, { 4321, 0x775F }, { 4322, 0x7760 }, { 4323, 0x7762 }, { 4324, 0x7764 }, { 4325, 0x7767 }, { 4326, 0x776A }, { 4327, 0x776C }, 1405 { 4328, 0x7770 }, { 4329, 0x7772 }, { 4330, 0x7773 }, { 4331, 0x7774 }, { 4332, 0x777A }, { 4333, 0x777D }, { 4334, 0x7780 }, { 4335, 0x7784 }, 1406 { 4336, 0x778C }, { 4337, 0x778D }, { 4338, 0x7794 }, { 4339, 0x7795 }, { 4340, 0x7796 }, { 4341, 0x779A }, { 4342, 0x779F }, { 4343, 0x77A2 }, 1407 { 4344, 0x77A7 }, { 4345, 0x77AA }, { 4346, 0x77AE }, { 4347, 0x77AF }, { 4348, 0x77B1 }, { 4349, 0x77B5 }, { 4350, 0x77BE }, { 4351, 0x77C3 }, 1408 { 4352, 0x77C9 }, { 4353, 0x77D1 }, { 4354, 0x77D2 }, { 4355, 0x77D5 }, { 4356, 0x77D9 }, { 4357, 0x77DE }, { 4358, 0x77DF }, { 4359, 0x77E0 }, 1409 { 4360, 0x77E4 }, { 4361, 0x77E6 }, { 4362, 0x77EA }, { 4363, 0x77EC }, { 4364, 0x77F0 }, { 4365, 0x77F1 }, { 4366, 0x77F4 }, { 4367, 0x77F8 }, 1410 { 4368, 0x77FB }, { 4369, 0x7805 }, { 4370, 0x7806 }, { 4371, 0x7809 }, { 4372, 0x780D }, { 4373, 0x780E }, { 4374, 0x7811 }, { 4375, 0x781D }, 1411 { 4376, 0x7821 }, { 4377, 0x7822 }, { 4378, 0x7823 }, { 4379, 0x782D }, { 4380, 0x782E }, { 4381, 0x7830 }, { 4382, 0x7835 }, { 4383, 0x7837 }, 1412 { 4384, 0x7843 }, { 4385, 0x7844 }, { 4386, 0x7847 }, { 4387, 0x7848 }, { 4388, 0x784C }, { 4389, 0x784E }, { 4390, 0x7852 }, { 4391, 0x785C }, 1413 { 4392, 0x785E }, { 4393, 0x7860 }, { 4394, 0x7861 }, { 4395, 0x7863 }, { 4396, 0x7864 }, { 4397, 0x7868 }, { 4398, 0x786A }, { 4399, 0x786E }, 1414 { 4400, 0x787A }, { 4401, 0x787E }, { 4402, 0x788A }, { 4403, 0x788F }, { 4404, 0x7894 }, { 4405, 0x7898 }, { 4406, 0x78A1 }, { 4407, 0x789D }, 1415 { 4408, 0x789E }, { 4409, 0x789F }, { 4410, 0x78A4 }, { 4411, 0x78A8 }, { 4412, 0x78AC }, { 4413, 0x78AD }, { 4414, 0x78B0 }, { 4415, 0x78B1 }, 1416 { 4416, 0x78B2 }, { 4417, 0x78B3 }, { 4418, 0x78BB }, { 4419, 0x78BD }, { 4420, 0x78BF }, { 4421, 0x78C7 }, { 4422, 0x78C8 }, { 4423, 0x78C9 }, 1417 { 4424, 0x78CC }, { 4425, 0x78CE }, { 4426, 0x78D2 }, { 4427, 0x78D3 }, { 4428, 0x78D5 }, { 4429, 0x78D6 }, { 4430, 0x78E4 }, { 4431, 0x78DB }, 1418 { 4432, 0x78DF }, { 4433, 0x78E0 }, { 4434, 0x78E1 }, { 4435, 0x78E6 }, { 4436, 0x78EA }, { 4437, 0x78F2 }, { 4438, 0x78F3 }, { 4439, 0x7900 }, 1419 { 4440, 0x78F6 }, { 4441, 0x78F7 }, { 4442, 0x78FA }, { 4443, 0x78FB }, { 4444, 0x78FF }, { 4445, 0x7906 }, { 4446, 0x790C }, { 4447, 0x7910 }, 1420 { 4448, 0x791A }, { 4449, 0x791C }, { 4450, 0x791E }, { 4451, 0x791F }, { 4452, 0x7920 }, { 4453, 0x7925 }, { 4454, 0x7927 }, { 4455, 0x7929 }, 1421 { 4456, 0x792D }, { 4457, 0x7931 }, { 4458, 0x7934 }, { 4459, 0x7935 }, { 4460, 0x793B }, { 4461, 0x793D }, { 4462, 0x793F }, { 4463, 0x7944 }, 1422 { 4464, 0x7945 }, { 4465, 0x7946 }, { 4466, 0x794A }, { 4467, 0x794B }, { 4468, 0x794F }, { 4469, 0x7951 }, { 4470, 0x7954 }, { 4471, 0x7958 }, 1423 { 4472, 0x795B }, { 4473, 0x795C }, { 4474, 0x7967 }, { 4475, 0x7969 }, { 4476, 0x796B }, { 4477, 0x7972 }, { 4478, 0x7979 }, { 4479, 0x797B }, 1424 { 4480, 0x797C }, { 4481, 0x797E }, { 4482, 0x798B }, { 4483, 0x798C }, { 4484, 0x7991 }, { 4485, 0x7993 }, { 4486, 0x7994 }, { 4487, 0x7995 }, 1425 { 4488, 0x7996 }, { 4489, 0x7998 }, { 4490, 0x799B }, { 4491, 0x799C }, { 4492, 0x79A1 }, { 4493, 0x79A8 }, { 4494, 0x79A9 }, { 4495, 0x79AB }, 1426 { 4496, 0x79AF }, { 4497, 0x79B1 }, { 4498, 0x79B4 }, { 4499, 0x79B8 }, { 4500, 0x79BB }, { 4501, 0x79C2 }, { 4502, 0x79C4 }, { 4503, 0x79C7 }, 1427 { 4504, 0x79C8 }, { 4505, 0x79CA }, { 4506, 0x79CF }, { 4507, 0x79D4 }, { 4508, 0x79D6 }, { 4509, 0x79DA }, { 4510, 0x79DD }, { 4511, 0x79DE }, 1428 { 4512, 0x79E0 }, { 4513, 0x79E2 }, { 4514, 0x79E5 }, { 4515, 0x79EA }, { 4516, 0x79EB }, { 4517, 0x79ED }, { 4518, 0x79F1 }, { 4519, 0x79F8 }, 1429 { 4520, 0x79FC }, { 4521, 0x7A02 }, { 4522, 0x7A03 }, { 4523, 0x7A07 }, { 4524, 0x7A09 }, { 4525, 0x7A0A }, { 4526, 0x7A0C }, { 4527, 0x7A11 }, 1430 { 4528, 0x7A15 }, { 4529, 0x7A1B }, { 4530, 0x7A1E }, { 4531, 0x7A21 }, { 4532, 0x7A27 }, { 4533, 0x7A2B }, { 4534, 0x7A2D }, { 4535, 0x7A2F }, 1431 { 4536, 0x7A30 }, { 4537, 0x7A34 }, { 4538, 0x7A35 }, { 4539, 0x7A38 }, { 4540, 0x7A39 }, { 4541, 0x7A3A }, { 4542, 0x7A44 }, { 4543, 0x7A45 }, 1432 { 4544, 0x7A47 }, { 4545, 0x7A48 }, { 4546, 0x7A4C }, { 4547, 0x7A55 }, { 4548, 0x7A56 }, { 4549, 0x7A59 }, { 4550, 0x7A5C }, { 4551, 0x7A5D }, 1433 { 4552, 0x7A5F }, { 4553, 0x7A60 }, { 4554, 0x7A65 }, { 4555, 0x7A67 }, { 4556, 0x7A6A }, { 4557, 0x7A6D }, { 4558, 0x7A75 }, { 4559, 0x7A78 }, 1434 { 4560, 0x7A7E }, { 4561, 0x7A80 }, { 4562, 0x7A82 }, { 4563, 0x7A85 }, { 4564, 0x7A86 }, { 4565, 0x7A8A }, { 4566, 0x7A8B }, { 4567, 0x7A90 }, 1435 { 4568, 0x7A91 }, { 4569, 0x7A94 }, { 4570, 0x7A9E }, { 4571, 0x7AA0 }, { 4572, 0x7AA3 }, { 4573, 0x7AAC }, { 4574, 0x7AB3 }, { 4575, 0x7AB5 }, 1436 { 4576, 0x7AB9 }, { 4577, 0x7ABB }, { 4578, 0x7ABC }, { 4579, 0x7AC6 }, { 4580, 0x7AC9 }, { 4581, 0x7ACC }, { 4582, 0x7ACE }, { 4583, 0x7AD1 }, 1437 { 4584, 0x7ADB }, { 4585, 0x7AE8 }, { 4586, 0x7AE9 }, { 4587, 0x7AEB }, { 4588, 0x7AEC }, { 4589, 0x7AF1 }, { 4590, 0x7AF4 }, { 4591, 0x7AFB }, 1438 { 4592, 0x7AFD }, { 4593, 0x7AFE }, { 4594, 0x7B07 }, { 4595, 0x7B14 }, { 4596, 0x7B1F }, { 4597, 0x7B23 }, { 4598, 0x7B27 }, { 4599, 0x7B29 }, 1439 { 4600, 0x7B2A }, { 4601, 0x7B2B }, { 4602, 0x7B2D }, { 4603, 0x7B2E }, { 4604, 0x7B2F }, { 4605, 0x7B30 }, { 4606, 0x7B31 }, { 4607, 0x7B34 }, 1440 { 4608, 0x7B3D }, { 4609, 0x7B3F }, { 4610, 0x7B40 }, { 4611, 0x7B41 }, { 4612, 0x7B47 }, { 4613, 0x7B4E }, { 4614, 0x7B55 }, { 4615, 0x7B60 }, 1441 { 4616, 0x7B64 }, { 4617, 0x7B66 }, { 4618, 0x7B69 }, { 4619, 0x7B6A }, { 4620, 0x7B6D }, { 4621, 0x7B6F }, { 4622, 0x7B72 }, { 4623, 0x7B73 }, 1442 { 4624, 0x7B77 }, { 4625, 0x7B84 }, { 4626, 0x7B89 }, { 4627, 0x7B8E }, { 4628, 0x7B90 }, { 4629, 0x7B91 }, { 4630, 0x7B96 }, { 4631, 0x7B9B }, 1443 { 4632, 0x7B9E }, { 4633, 0x7BA0 }, { 4634, 0x7BA5 }, { 4635, 0x7BAC }, { 4636, 0x7BAF }, { 4637, 0x7BB0 }, { 4638, 0x7BB2 }, { 4639, 0x7BB5 }, 1444 { 4640, 0x7BB6 }, { 4641, 0x7BBA }, { 4642, 0x7BBB }, { 4643, 0x7BBC }, { 4644, 0x7BBD }, { 4645, 0x7BC2 }, { 4646, 0x7BC5 }, { 4647, 0x7BC8 }, 1445 { 4648, 0x7BCA }, { 4649, 0x7BD4 }, { 4650, 0x7BD6 }, { 4651, 0x7BD7 }, { 4652, 0x7BD9 }, { 4653, 0x7BDA }, { 4654, 0x7BDB }, { 4655, 0x7BE8 }, 1446 { 4656, 0x7BEA }, { 4657, 0x7BF2 }, { 4658, 0x7BF4 }, { 4659, 0x7BF5 }, { 4660, 0x7BF8 }, { 4661, 0x7BF9 }, { 4662, 0x7BFA }, { 4663, 0x7BFC }, 1447 { 4664, 0x7BFE }, { 4665, 0x7C01 }, { 4666, 0x7C02 }, { 4667, 0x7C03 }, { 4668, 0x7C04 }, { 4669, 0x7C06 }, { 4670, 0x7C09 }, { 4671, 0x7C0B }, 1448 { 4672, 0x7C0C }, { 4673, 0x7C0E }, { 4674, 0x7C0F }, { 4675, 0x7C19 }, { 4676, 0x7C1B }, { 4677, 0x7C20 }, { 4678, 0x7C25 }, { 4679, 0x7C26 }, 1449 { 4680, 0x7C28 }, { 4681, 0x7C2C }, { 4682, 0x7C31 }, { 4683, 0x7C33 }, { 4684, 0x7C34 }, { 4685, 0x7C36 }, { 4686, 0x7C39 }, { 4687, 0x7C3A }, 1450 { 4688, 0x7C46 }, { 4689, 0x7C4A }, { 4690, 0x7C55 }, { 4691, 0x7C51 }, { 4692, 0x7C52 }, { 4693, 0x7C53 }, { 4694, 0x7C59 }, { 4695, 0x7C5A }, 1451 { 4696, 0x7C5B }, { 4697, 0x7C5C }, { 4698, 0x7C5D }, { 4699, 0x7C5E }, { 4700, 0x7C61 }, { 4701, 0x7C63 }, { 4702, 0x7C67 }, { 4703, 0x7C69 }, 1452 { 4704, 0x7C6D }, { 4705, 0x7C6E }, { 4706, 0x7C70 }, { 4707, 0x7C72 }, { 4708, 0x7C79 }, { 4709, 0x7C7C }, { 4710, 0x7C7D }, { 4711, 0x7C86 }, 1453 { 4712, 0x7C87 }, { 4713, 0x7C8F }, { 4714, 0x7C94 }, { 4715, 0x7C9E }, { 4716, 0x7CA0 }, { 4717, 0x7CA6 }, { 4718, 0x7CB0 }, { 4719, 0x7CB6 }, 1454 { 4720, 0x7CB7 }, { 4721, 0x7CBA }, { 4722, 0x7CBB }, { 4723, 0x7CBC }, { 4724, 0x7CBF }, { 4725, 0x7CC4 }, { 4726, 0x7CC7 }, { 4727, 0x7CC8 }, 1455 { 4728, 0x7CC9 }, { 4729, 0x7CCD }, { 4730, 0x7CCF }, { 4731, 0x7CD3 }, { 4732, 0x7CD4 }, { 4733, 0x7CD5 }, { 4734, 0x7CD7 }, { 4735, 0x7CD9 }, 1456 { 4736, 0x7CDA }, { 4737, 0x7CDD }, { 4738, 0x7CE6 }, { 4739, 0x7CE9 }, { 4740, 0x7CEB }, { 4741, 0x7CF5 }, { 4742, 0x7D03 }, { 4743, 0x7D07 }, 1457 { 4744, 0x7D08 }, { 4745, 0x7D09 }, { 4746, 0x7D0F }, { 4747, 0x7D11 }, { 4748, 0x7D12 }, { 4749, 0x7D13 }, { 4750, 0x7D16 }, { 4751, 0x7D1D }, 1458 { 4752, 0x7D1E }, { 4753, 0x7D23 }, { 4754, 0x7D26 }, { 4755, 0x7D2A }, { 4756, 0x7D2D }, { 4757, 0x7D31 }, { 4758, 0x7D3C }, { 4759, 0x7D3D }, 1459 { 4760, 0x7D3E }, { 4761, 0x7D40 }, { 4762, 0x7D41 }, { 4763, 0x7D47 }, { 4764, 0x7D48 }, { 4765, 0x7D4D }, { 4766, 0x7D51 }, { 4767, 0x7D53 }, 1460 { 4768, 0x7D57 }, { 4769, 0x7D59 }, { 4770, 0x7D5A }, { 4771, 0x7D5C }, { 4772, 0x7D5D }, { 4773, 0x7D65 }, { 4774, 0x7D67 }, { 4775, 0x7D6A }, 1461 { 4776, 0x7D70 }, { 4777, 0x7D78 }, { 4778, 0x7D7A }, { 4779, 0x7D7B }, { 4780, 0x7D7F }, { 4781, 0x7D81 }, { 4782, 0x7D82 }, { 4783, 0x7D83 }, 1462 { 4784, 0x7D85 }, { 4785, 0x7D86 }, { 4786, 0x7D88 }, { 4787, 0x7D8B }, { 4788, 0x7D8C }, { 4789, 0x7D8D }, { 4790, 0x7D91 }, { 4791, 0x7D96 }, 1463 { 4792, 0x7D97 }, { 4793, 0x7D9D }, { 4794, 0x7D9E }, { 4795, 0x7DA6 }, { 4796, 0x7DA7 }, { 4797, 0x7DAA }, { 4798, 0x7DB3 }, { 4799, 0x7DB6 }, 1464 { 4800, 0x7DB7 }, { 4801, 0x7DB9 }, { 4802, 0x7DC2 }, { 4803, 0x7DC3 }, { 4804, 0x7DC4 }, { 4805, 0x7DC5 }, { 4806, 0x7DC6 }, { 4807, 0x7DCC }, 1465 { 4808, 0x7DCD }, { 4809, 0x7DCE }, { 4810, 0x7DD7 }, { 4811, 0x7DD9 }, { 4812, 0x7E00 }, { 4813, 0x7DE2 }, { 4814, 0x7DE5 }, { 4815, 0x7DE6 }, 1466 { 4816, 0x7DEA }, { 4817, 0x7DEB }, { 4818, 0x7DED }, { 4819, 0x7DF1 }, { 4820, 0x7DF5 }, { 4821, 0x7DF6 }, { 4822, 0x7DF9 }, { 4823, 0x7DFA }, 1467 { 4824, 0x7E08 }, { 4825, 0x7E10 }, { 4826, 0x7E11 }, { 4827, 0x7E15 }, { 4828, 0x7E17 }, { 4829, 0x7E1C }, { 4830, 0x7E1D }, { 4831, 0x7E20 }, 1468 { 4832, 0x7E27 }, { 4833, 0x7E28 }, { 4834, 0x7E2C }, { 4835, 0x7E2D }, { 4836, 0x7E2F }, { 4837, 0x7E33 }, { 4838, 0x7E36 }, { 4839, 0x7E3F }, 1469 { 4840, 0x7E44 }, { 4841, 0x7E45 }, { 4842, 0x7E47 }, { 4843, 0x7E4E }, { 4844, 0x7E50 }, { 4845, 0x7E52 }, { 4846, 0x7E58 }, { 4847, 0x7E5F }, 1470 { 4848, 0x7E61 }, { 4849, 0x7E62 }, { 4850, 0x7E65 }, { 4851, 0x7E6B }, { 4852, 0x7E6E }, { 4853, 0x7E6F }, { 4854, 0x7E73 }, { 4855, 0x7E78 }, 1471 { 4856, 0x7E7E }, { 4857, 0x7E81 }, { 4858, 0x7E86 }, { 4859, 0x7E87 }, { 4860, 0x7E8A }, { 4861, 0x7E8D }, { 4862, 0x7E91 }, { 4863, 0x7E95 }, 1472 { 4864, 0x7E98 }, { 4865, 0x7E9A }, { 4866, 0x7E9D }, { 4867, 0x7E9E }, { 4868, 0x7F3C }, { 4869, 0x7F3B }, { 4870, 0x7F3D }, { 4871, 0x7F3E }, 1473 { 4872, 0x7F3F }, { 4873, 0x7F43 }, { 4874, 0x7F44 }, { 4875, 0x7F47 }, { 4876, 0x7F4F }, { 4877, 0x7F52 }, { 4878, 0x7F53 }, { 4879, 0x7F5B }, 1474 { 4880, 0x7F5C }, { 4881, 0x7F5D }, { 4882, 0x7F61 }, { 4883, 0x7F63 }, { 4884, 0x7F64 }, { 4885, 0x7F65 }, { 4886, 0x7F66 }, { 4887, 0x7F6D }, 1475 { 4888, 0x7F71 }, { 4889, 0x7F7D }, { 4890, 0x7F7E }, { 4891, 0x7F7F }, { 4892, 0x7F80 }, { 4893, 0x7F8B }, { 4894, 0x7F8D }, { 4895, 0x7F8F }, 1476 { 4896, 0x7F90 }, { 4897, 0x7F91 }, { 4898, 0x7F96 }, { 4899, 0x7F97 }, { 4900, 0x7F9C }, { 4901, 0x7FA1 }, { 4902, 0x7FA2 }, { 4903, 0x7FA6 }, 1477 { 4904, 0x7FAA }, { 4905, 0x7FAD }, { 4906, 0x7FB4 }, { 4907, 0x7FBC }, { 4908, 0x7FBF }, { 4909, 0x7FC0 }, { 4910, 0x7FC3 }, { 4911, 0x7FC8 }, 1478 { 4912, 0x7FCE }, { 4913, 0x7FCF }, { 4914, 0x7FDB }, { 4915, 0x7FDF }, { 4916, 0x7FE3 }, { 4917, 0x7FE5 }, { 4918, 0x7FE8 }, { 4919, 0x7FEC }, 1479 { 4920, 0x7FEE }, { 4921, 0x7FEF }, { 4922, 0x7FF2 }, { 4923, 0x7FFA }, { 4924, 0x7FFD }, { 4925, 0x7FFE }, { 4926, 0x7FFF }, { 4927, 0x8007 }, 1480 { 4928, 0x8008 }, { 4929, 0x800A }, { 4930, 0x800D }, { 4931, 0x800E }, { 4932, 0x800F }, { 4933, 0x8011 }, { 4934, 0x8013 }, { 4935, 0x8014 }, 1481 { 4936, 0x8016 }, { 4937, 0x801D }, { 4938, 0x801E }, { 4939, 0x801F }, { 4940, 0x8020 }, { 4941, 0x8024 }, { 4942, 0x8026 }, { 4943, 0x802C }, 1482 { 4944, 0x802E }, { 4945, 0x8030 }, { 4946, 0x8034 }, { 4947, 0x8035 }, { 4948, 0x8037 }, { 4949, 0x8039 }, { 4950, 0x803A }, { 4951, 0x803C }, 1483 { 4952, 0x803E }, { 4953, 0x8040 }, { 4954, 0x8044 }, { 4955, 0x8060 }, { 4956, 0x8064 }, { 4957, 0x8066 }, { 4958, 0x806D }, { 4959, 0x8071 }, 1484 { 4960, 0x8075 }, { 4961, 0x8081 }, { 4962, 0x8088 }, { 4963, 0x808E }, { 4964, 0x809C }, { 4965, 0x809E }, { 4966, 0x80A6 }, { 4967, 0x80A7 }, 1485 { 4968, 0x80AB }, { 4969, 0x80B8 }, { 4970, 0x80B9 }, { 4971, 0x80C8 }, { 4972, 0x80CD }, { 4973, 0x80CF }, { 4974, 0x80D2 }, { 4975, 0x80D4 }, 1486 { 4976, 0x80D5 }, { 4977, 0x80D7 }, { 4978, 0x80D8 }, { 4979, 0x80E0 }, { 4980, 0x80ED }, { 4981, 0x80EE }, { 4982, 0x80F0 }, { 4983, 0x80F2 }, 1487 { 4984, 0x80F3 }, { 4985, 0x80F6 }, { 4986, 0x80F9 }, { 4987, 0x80FA }, { 4988, 0x80FE }, { 4989, 0x8103 }, { 4990, 0x810B }, { 4991, 0x8116 }, 1488 { 4992, 0x8117 }, { 4993, 0x8118 }, { 4994, 0x811C }, { 4995, 0x811E }, { 4996, 0x8120 }, { 4997, 0x8124 }, { 4998, 0x8127 }, { 4999, 0x812C }, 1489 { 5000, 0x8130 }, { 5001, 0x8135 }, { 5002, 0x813A }, { 5003, 0x813C }, { 5004, 0x8145 }, { 5005, 0x8147 }, { 5006, 0x814A }, { 5007, 0x814C }, 1490 { 5008, 0x8152 }, { 5009, 0x8157 }, { 5010, 0x8160 }, { 5011, 0x8161 }, { 5012, 0x8167 }, { 5013, 0x8168 }, { 5014, 0x8169 }, { 5015, 0x816D }, 1491 { 5016, 0x816F }, { 5017, 0x8177 }, { 5018, 0x8181 }, { 5019, 0x8190 }, { 5020, 0x8184 }, { 5021, 0x8185 }, { 5022, 0x8186 }, { 5023, 0x818B }, 1492 { 5024, 0x818E }, { 5025, 0x8196 }, { 5026, 0x8198 }, { 5027, 0x819B }, { 5028, 0x819E }, { 5029, 0x81A2 }, { 5030, 0x81AE }, { 5031, 0x81B2 }, 1493 { 5032, 0x81B4 }, { 5033, 0x81BB }, { 5034, 0x81CB }, { 5035, 0x81C3 }, { 5036, 0x81C5 }, { 5037, 0x81CA }, { 5038, 0x81CE }, { 5039, 0x81CF }, 1494 { 5040, 0x81D5 }, { 5041, 0x81D7 }, { 5042, 0x81DB }, { 5043, 0x81DD }, { 5044, 0x81DE }, { 5045, 0x81E1 }, { 5046, 0x81E4 }, { 5047, 0x81EB }, 1495 { 5048, 0x81EC }, { 5049, 0x81F0 }, { 5050, 0x81F1 }, { 5051, 0x81F2 }, { 5052, 0x81F5 }, { 5053, 0x81F6 }, { 5054, 0x81F8 }, { 5055, 0x81F9 }, 1496 { 5056, 0x81FD }, { 5057, 0x81FF }, { 5058, 0x8200 }, { 5059, 0x8203 }, { 5060, 0x820F }, { 5061, 0x8213 }, { 5062, 0x8214 }, { 5063, 0x8219 }, 1497 { 5064, 0x821A }, { 5065, 0x821D }, { 5066, 0x8221 }, { 5067, 0x8222 }, { 5068, 0x8228 }, { 5069, 0x8232 }, { 5070, 0x8234 }, { 5071, 0x823A }, 1498 { 5072, 0x8243 }, { 5073, 0x8244 }, { 5074, 0x8245 }, { 5075, 0x8246 }, { 5076, 0x824B }, { 5077, 0x824E }, { 5078, 0x824F }, { 5079, 0x8251 }, 1499 { 5080, 0x8256 }, { 5081, 0x825C }, { 5082, 0x8260 }, { 5083, 0x8263 }, { 5084, 0x8267 }, { 5085, 0x826D }, { 5086, 0x8274 }, { 5087, 0x827B }, 1500 { 5088, 0x827D }, { 5089, 0x827F }, { 5090, 0x8280 }, { 5091, 0x8281 }, { 5092, 0x8283 }, { 5093, 0x8284 }, { 5094, 0x8287 }, { 5095, 0x8289 }, 1501 { 5096, 0x828A }, { 5097, 0x828E }, { 5098, 0x8291 }, { 5099, 0x8294 }, { 5100, 0x8296 }, { 5101, 0x8298 }, { 5102, 0x829A }, { 5103, 0x829B }, 1502 { 5104, 0x82A0 }, { 5105, 0x82A1 }, { 5106, 0x82A3 }, { 5107, 0x82A4 }, { 5108, 0x82A7 }, { 5109, 0x82A8 }, { 5110, 0x82A9 }, { 5111, 0x82AA }, 1503 { 5112, 0x82AE }, { 5113, 0x82B0 }, { 5114, 0x82B2 }, { 5115, 0x82B4 }, { 5116, 0x82B7 }, { 5117, 0x82BA }, { 5118, 0x82BC }, { 5119, 0x82BE }, 1504 { 5120, 0x82BF }, { 5121, 0x82C6 }, { 5122, 0x82D0 }, { 5123, 0x82D5 }, { 5124, 0x82DA }, { 5125, 0x82E0 }, { 5126, 0x82E2 }, { 5127, 0x82E4 }, 1505 { 5128, 0x82E8 }, { 5129, 0x82EA }, { 5130, 0x82ED }, { 5131, 0x82EF }, { 5132, 0x82F6 }, { 5133, 0x82F7 }, { 5134, 0x82FD }, { 5135, 0x82FE }, 1506 { 5136, 0x8300 }, { 5137, 0x8301 }, { 5138, 0x8307 }, { 5139, 0x8308 }, { 5140, 0x830A }, { 5141, 0x830B }, { 5142, 0x8354 }, { 5143, 0x831B }, 1507 { 5144, 0x831D }, { 5145, 0x831E }, { 5146, 0x831F }, { 5147, 0x8321 }, { 5148, 0x8322 }, { 5149, 0x832C }, { 5150, 0x832D }, { 5151, 0x832E }, 1508 { 5152, 0x8330 }, { 5153, 0x8333 }, { 5154, 0x8337 }, { 5155, 0x833A }, { 5156, 0x833C }, { 5157, 0x833D }, { 5158, 0x8342 }, { 5159, 0x8343 }, 1509 { 5160, 0x8344 }, { 5161, 0x8347 }, { 5162, 0x834D }, { 5163, 0x834E }, { 5164, 0x8351 }, { 5165, 0x8355 }, { 5166, 0x8356 }, { 5167, 0x8357 }, 1510 { 5168, 0x8370 }, { 5169, 0x8378 }, { 5170, 0x837D }, { 5171, 0x837F }, { 5172, 0x8380 }, { 5173, 0x8382 }, { 5174, 0x8384 }, { 5175, 0x8386 }, 1511 { 5176, 0x838D }, { 5177, 0x8392 }, { 5178, 0x8394 }, { 5179, 0x8395 }, { 5180, 0x8398 }, { 5181, 0x8399 }, { 5182, 0x839B }, { 5183, 0x839C }, 1512 { 5184, 0x839D }, { 5185, 0x83A6 }, { 5186, 0x83A7 }, { 5187, 0x83A9 }, { 5188, 0x83AC }, { 5189, 0x83BE }, { 5190, 0x83BF }, { 5191, 0x83C0 }, 1513 { 5192, 0x83C7 }, { 5193, 0x83C9 }, { 5194, 0x83CF }, { 5195, 0x83D0 }, { 5196, 0x83D1 }, { 5197, 0x83D4 }, { 5198, 0x83DD }, { 5199, 0x8353 }, 1514 { 5200, 0x83E8 }, { 5201, 0x83EA }, { 5202, 0x83F6 }, { 5203, 0x83F8 }, { 5204, 0x83F9 }, { 5205, 0x83FC }, { 5206, 0x8401 }, { 5207, 0x8406 }, 1515 { 5208, 0x840A }, { 5209, 0x840F }, { 5210, 0x8411 }, { 5211, 0x8415 }, { 5212, 0x8419 }, { 5213, 0x83AD }, { 5214, 0x842F }, { 5215, 0x8439 }, 1516 { 5216, 0x8445 }, { 5217, 0x8447 }, { 5218, 0x8448 }, { 5219, 0x844A }, { 5220, 0x844D }, { 5221, 0x844F }, { 5222, 0x8451 }, { 5223, 0x8452 }, 1517 { 5224, 0x8456 }, { 5225, 0x8458 }, { 5226, 0x8459 }, { 5227, 0x845A }, { 5228, 0x845C }, { 5229, 0x8460 }, { 5230, 0x8464 }, { 5231, 0x8465 }, 1518 { 5232, 0x8467 }, { 5233, 0x846A }, { 5234, 0x8470 }, { 5235, 0x8473 }, { 5236, 0x8474 }, { 5237, 0x8476 }, { 5238, 0x8478 }, { 5239, 0x847C }, 1519 { 5240, 0x847D }, { 5241, 0x8481 }, { 5242, 0x8485 }, { 5243, 0x8492 }, { 5244, 0x8493 }, { 5245, 0x8495 }, { 5246, 0x849E }, { 5247, 0x84A6 }, 1520 { 5248, 0x84A8 }, { 5249, 0x84A9 }, { 5250, 0x84AA }, { 5251, 0x84AF }, { 5252, 0x84B1 }, { 5253, 0x84B4 }, { 5254, 0x84BA }, { 5255, 0x84BD }, 1521 { 5256, 0x84BE }, { 5257, 0x84C0 }, { 5258, 0x84C2 }, { 5259, 0x84C7 }, { 5260, 0x84C8 }, { 5261, 0x84CC }, { 5262, 0x84CF }, { 5263, 0x84D3 }, 1522 { 5264, 0x84DC }, { 5265, 0x84E7 }, { 5266, 0x84EA }, { 5267, 0x84EF }, { 5268, 0x84F0 }, { 5269, 0x84F1 }, { 5270, 0x84F2 }, { 5271, 0x84F7 }, 1523 { 5272, 0x8532 }, { 5273, 0x84FA }, { 5274, 0x84FB }, { 5275, 0x84FD }, { 5276, 0x8502 }, { 5277, 0x8503 }, { 5278, 0x8507 }, { 5279, 0x850C }, 1524 { 5280, 0x850E }, { 5281, 0x8510 }, { 5282, 0x851C }, { 5283, 0x851E }, { 5284, 0x8522 }, { 5285, 0x8523 }, { 5286, 0x8524 }, { 5287, 0x8525 }, 1525 { 5288, 0x8527 }, { 5289, 0x852A }, { 5290, 0x852B }, { 5291, 0x852F }, { 5292, 0x8533 }, { 5293, 0x8534 }, { 5294, 0x8536 }, { 5295, 0x853F }, 1526 { 5296, 0x8546 }, { 5297, 0x854F }, { 5298, 0x8550 }, { 5299, 0x8551 }, { 5300, 0x8552 }, { 5301, 0x8553 }, { 5302, 0x8556 }, { 5303, 0x8559 }, 1527 { 5304, 0x855C }, { 5305, 0x855D }, { 5306, 0x855E }, { 5307, 0x855F }, { 5308, 0x8560 }, { 5309, 0x8561 }, { 5310, 0x8562 }, { 5311, 0x8564 }, 1528 { 5312, 0x856B }, { 5313, 0x856F }, { 5314, 0x8579 }, { 5315, 0x857A }, { 5316, 0x857B }, { 5317, 0x857D }, { 5318, 0x857F }, { 5319, 0x8581 }, 1529 { 5320, 0x8585 }, { 5321, 0x8586 }, { 5322, 0x8589 }, { 5323, 0x858B }, { 5324, 0x858C }, { 5325, 0x858F }, { 5326, 0x8593 }, { 5327, 0x8598 }, 1530 { 5328, 0x859D }, { 5329, 0x859F }, { 5330, 0x85A0 }, { 5331, 0x85A2 }, { 5332, 0x85A5 }, { 5333, 0x85A7 }, { 5334, 0x85B4 }, { 5335, 0x85B6 }, 1531 { 5336, 0x85B7 }, { 5337, 0x85B8 }, { 5338, 0x85BC }, { 5339, 0x85BD }, { 5340, 0x85BE }, { 5341, 0x85BF }, { 5342, 0x85C2 }, { 5343, 0x85C7 }, 1532 { 5344, 0x85CA }, { 5345, 0x85CB }, { 5346, 0x85CE }, { 5347, 0x85AD }, { 5348, 0x85D8 }, { 5349, 0x85DA }, { 5350, 0x85DF }, { 5351, 0x85E0 }, 1533 { 5352, 0x85E6 }, { 5353, 0x85E8 }, { 5354, 0x85ED }, { 5355, 0x85F3 }, { 5356, 0x85F6 }, { 5357, 0x85FC }, { 5358, 0x85FF }, { 5359, 0x8600 }, 1534 { 5360, 0x8604 }, { 5361, 0x8605 }, { 5362, 0x860D }, { 5363, 0x860E }, { 5364, 0x8610 }, { 5365, 0x8611 }, { 5366, 0x8612 }, { 5367, 0x8618 }, 1535 { 5368, 0x8619 }, { 5369, 0x861B }, { 5370, 0x861E }, { 5371, 0x8621 }, { 5372, 0x8627 }, { 5373, 0x8629 }, { 5374, 0x8636 }, { 5375, 0x8638 }, 1536 { 5376, 0x863A }, { 5377, 0x863C }, { 5378, 0x863D }, { 5379, 0x8640 }, { 5380, 0x8642 }, { 5381, 0x8646 }, { 5382, 0x8652 }, { 5383, 0x8653 }, 1537 { 5384, 0x8656 }, { 5385, 0x8657 }, { 5386, 0x8658 }, { 5387, 0x8659 }, { 5388, 0x865D }, { 5389, 0x8660 }, { 5390, 0x8661 }, { 5391, 0x8662 }, 1538 { 5392, 0x8663 }, { 5393, 0x8664 }, { 5394, 0x8669 }, { 5395, 0x866C }, { 5396, 0x866F }, { 5397, 0x8675 }, { 5398, 0x8676 }, { 5399, 0x8677 }, 1539 { 5400, 0x867A }, { 5401, 0x868D }, { 5402, 0x8691 }, { 5403, 0x8696 }, { 5404, 0x8698 }, { 5405, 0x869A }, { 5406, 0x869C }, { 5407, 0x86A1 }, 1540 { 5408, 0x86A6 }, { 5409, 0x86A7 }, { 5410, 0x86A8 }, { 5411, 0x86AD }, { 5412, 0x86B1 }, { 5413, 0x86B3 }, { 5414, 0x86B4 }, { 5415, 0x86B5 }, 1541 { 5416, 0x86B7 }, { 5417, 0x86B8 }, { 5418, 0x86B9 }, { 5419, 0x86BF }, { 5420, 0x86C0 }, { 5421, 0x86C1 }, { 5422, 0x86C3 }, { 5423, 0x86C5 }, 1542 { 5424, 0x86D1 }, { 5425, 0x86D2 }, { 5426, 0x86D5 }, { 5427, 0x86D7 }, { 5428, 0x86DA }, { 5429, 0x86DC }, { 5430, 0x86E0 }, { 5431, 0x86E3 }, 1543 { 5432, 0x86E5 }, { 5433, 0x86E7 }, { 5434, 0x8688 }, { 5435, 0x86FA }, { 5436, 0x86FC }, { 5437, 0x86FD }, { 5438, 0x8704 }, { 5439, 0x8705 }, 1544 { 5440, 0x8707 }, { 5441, 0x870B }, { 5442, 0x870E }, { 5443, 0x870F }, { 5444, 0x8710 }, { 5445, 0x8713 }, { 5446, 0x8714 }, { 5447, 0x8719 }, 1545 { 5448, 0x871E }, { 5449, 0x871F }, { 5450, 0x8721 }, { 5451, 0x8723 }, { 5452, 0x8728 }, { 5453, 0x872E }, { 5454, 0x872F }, { 5455, 0x8731 }, 1546 { 5456, 0x8732 }, { 5457, 0x8739 }, { 5458, 0x873A }, { 5459, 0x873C }, { 5460, 0x873D }, { 5461, 0x873E }, { 5462, 0x8740 }, { 5463, 0x8743 }, 1547 { 5464, 0x8745 }, { 5465, 0x874D }, { 5466, 0x8758 }, { 5467, 0x875D }, { 5468, 0x8761 }, { 5469, 0x8764 }, { 5470, 0x8765 }, { 5471, 0x876F }, 1548 { 5472, 0x8771 }, { 5473, 0x8772 }, { 5474, 0x877B }, { 5475, 0x8783 }, { 5476, 0x8784 }, { 5477, 0x8785 }, { 5478, 0x8786 }, { 5479, 0x8787 }, 1549 { 5480, 0x8788 }, { 5481, 0x8789 }, { 5482, 0x878B }, { 5483, 0x878C }, { 5484, 0x8790 }, { 5485, 0x8793 }, { 5486, 0x8795 }, { 5487, 0x8797 }, 1550 { 5488, 0x8798 }, { 5489, 0x8799 }, { 5490, 0x879E }, { 5491, 0x87A0 }, { 5492, 0x87A3 }, { 5493, 0x87A7 }, { 5494, 0x87AC }, { 5495, 0x87AD }, 1551 { 5496, 0x87AE }, { 5497, 0x87B1 }, { 5498, 0x87B5 }, { 5499, 0x87BE }, { 5500, 0x87BF }, { 5501, 0x87C1 }, { 5502, 0x87C8 }, { 5503, 0x87C9 }, 1552 { 5504, 0x87CA }, { 5505, 0x87CE }, { 5506, 0x87D5 }, { 5507, 0x87D6 }, { 5508, 0x87D9 }, { 5509, 0x87DA }, { 5510, 0x87DC }, { 5511, 0x87DF }, 1553 { 5512, 0x87E2 }, { 5513, 0x87E3 }, { 5514, 0x87E4 }, { 5515, 0x87EA }, { 5516, 0x87EB }, { 5517, 0x87ED }, { 5518, 0x87F1 }, { 5519, 0x87F3 }, 1554 { 5520, 0x87F8 }, { 5521, 0x87FA }, { 5522, 0x87FF }, { 5523, 0x8801 }, { 5524, 0x8803 }, { 5525, 0x8806 }, { 5526, 0x8809 }, { 5527, 0x880A }, 1555 { 5528, 0x880B }, { 5529, 0x8810 }, { 5530, 0x8819 }, { 5531, 0x8812 }, { 5532, 0x8813 }, { 5533, 0x8814 }, { 5534, 0x8818 }, { 5535, 0x881A }, 1556 { 5536, 0x881B }, { 5537, 0x881C }, { 5538, 0x881E }, { 5539, 0x881F }, { 5540, 0x8828 }, { 5541, 0x882D }, { 5542, 0x882E }, { 5543, 0x8830 }, 1557 { 5544, 0x8832 }, { 5545, 0x8835 }, { 5546, 0x883A }, { 5547, 0x883C }, { 5548, 0x8841 }, { 5549, 0x8843 }, { 5550, 0x8845 }, { 5551, 0x8848 }, 1558 { 5552, 0x8849 }, { 5553, 0x884A }, { 5554, 0x884B }, { 5555, 0x884E }, { 5556, 0x8851 }, { 5557, 0x8855 }, { 5558, 0x8856 }, { 5559, 0x8858 }, 1559 { 5560, 0x885A }, { 5561, 0x885C }, { 5562, 0x885F }, { 5563, 0x8860 }, { 5564, 0x8864 }, { 5565, 0x8869 }, { 5566, 0x8871 }, { 5567, 0x8879 }, 1560 { 5568, 0x887B }, { 5569, 0x8880 }, { 5570, 0x8898 }, { 5571, 0x889A }, { 5572, 0x889B }, { 5573, 0x889C }, { 5574, 0x889F }, { 5575, 0x88A0 }, 1561 { 5576, 0x88A8 }, { 5577, 0x88AA }, { 5578, 0x88BA }, { 5579, 0x88BD }, { 5580, 0x88BE }, { 5581, 0x88C0 }, { 5582, 0x88CA }, { 5583, 0x88CB }, 1562 { 5584, 0x88CC }, { 5585, 0x88CD }, { 5586, 0x88CE }, { 5587, 0x88D1 }, { 5588, 0x88D2 }, { 5589, 0x88D3 }, { 5590, 0x88DB }, { 5591, 0x88DE }, 1563 { 5592, 0x88E7 }, { 5593, 0x88EF }, { 5594, 0x88F0 }, { 5595, 0x88F1 }, { 5596, 0x88F5 }, { 5597, 0x88F7 }, { 5598, 0x8901 }, { 5599, 0x8906 }, 1564 { 5600, 0x890D }, { 5601, 0x890E }, { 5602, 0x890F }, { 5603, 0x8915 }, { 5604, 0x8916 }, { 5605, 0x8918 }, { 5606, 0x8919 }, { 5607, 0x891A }, 1565 { 5608, 0x891C }, { 5609, 0x8920 }, { 5610, 0x8926 }, { 5611, 0x8927 }, { 5612, 0x8928 }, { 5613, 0x8930 }, { 5614, 0x8931 }, { 5615, 0x8932 }, 1566 { 5616, 0x8935 }, { 5617, 0x8939 }, { 5618, 0x893A }, { 5619, 0x893E }, { 5620, 0x8940 }, { 5621, 0x8942 }, { 5622, 0x8945 }, { 5623, 0x8946 }, 1567 { 5624, 0x8949 }, { 5625, 0x894F }, { 5626, 0x8952 }, { 5627, 0x8957 }, { 5628, 0x895A }, { 5629, 0x895B }, { 5630, 0x895C }, { 5631, 0x8961 }, 1568 { 5632, 0x8962 }, { 5633, 0x8963 }, { 5634, 0x896B }, { 5635, 0x896E }, { 5636, 0x8970 }, { 5637, 0x8973 }, { 5638, 0x8975 }, { 5639, 0x897A }, 1569 { 5640, 0x897B }, { 5641, 0x897C }, { 5642, 0x897D }, { 5643, 0x8989 }, { 5644, 0x898D }, { 5645, 0x8990 }, { 5646, 0x8994 }, { 5647, 0x8995 }, 1570 { 5648, 0x899B }, { 5649, 0x899C }, { 5650, 0x899F }, { 5651, 0x89A0 }, { 5652, 0x89A5 }, { 5653, 0x89B0 }, { 5654, 0x89B4 }, { 5655, 0x89B5 }, 1571 { 5656, 0x89B6 }, { 5657, 0x89B7 }, { 5658, 0x89BC }, { 5659, 0x89D4 }, { 5660, 0x89D5 }, { 5661, 0x89D6 }, { 5662, 0x89D7 }, { 5663, 0x89D8 }, 1572 { 5664, 0x89E5 }, { 5665, 0x89E9 }, { 5666, 0x89EB }, { 5667, 0x89ED }, { 5668, 0x89F1 }, { 5669, 0x89F3 }, { 5670, 0x89F6 }, { 5671, 0x89F9 }, 1573 { 5672, 0x89FD }, { 5673, 0x89FF }, { 5674, 0x8A04 }, { 5675, 0x8A05 }, { 5676, 0x8A07 }, { 5677, 0x8A0F }, { 5678, 0x8A11 }, { 5679, 0x8A12 }, 1574 { 5680, 0x8A14 }, { 5681, 0x8A15 }, { 5682, 0x8A1E }, { 5683, 0x8A20 }, { 5684, 0x8A22 }, { 5685, 0x8A24 }, { 5686, 0x8A26 }, { 5687, 0x8A2B }, 1575 { 5688, 0x8A2C }, { 5689, 0x8A2F }, { 5690, 0x8A35 }, { 5691, 0x8A37 }, { 5692, 0x8A3D }, { 5693, 0x8A3E }, { 5694, 0x8A40 }, { 5695, 0x8A43 }, 1576 { 5696, 0x8A45 }, { 5697, 0x8A47 }, { 5698, 0x8A49 }, { 5699, 0x8A4D }, { 5700, 0x8A4E }, { 5701, 0x8A53 }, { 5702, 0x8A56 }, { 5703, 0x8A57 }, 1577 { 5704, 0x8A58 }, { 5705, 0x8A5C }, { 5706, 0x8A5D }, { 5707, 0x8A61 }, { 5708, 0x8A65 }, { 5709, 0x8A67 }, { 5710, 0x8A75 }, { 5711, 0x8A76 }, 1578 { 5712, 0x8A77 }, { 5713, 0x8A79 }, { 5714, 0x8A7A }, { 5715, 0x8A7B }, { 5716, 0x8A7E }, { 5717, 0x8A7F }, { 5718, 0x8A80 }, { 5719, 0x8A83 }, 1579 { 5720, 0x8A86 }, { 5721, 0x8A8B }, { 5722, 0x8A8F }, { 5723, 0x8A90 }, { 5724, 0x8A92 }, { 5725, 0x8A96 }, { 5726, 0x8A97 }, { 5727, 0x8A99 }, 1580 { 5728, 0x8A9F }, { 5729, 0x8AA7 }, { 5730, 0x8AA9 }, { 5731, 0x8AAE }, { 5732, 0x8AAF }, { 5733, 0x8AB3 }, { 5734, 0x8AB6 }, { 5735, 0x8AB7 }, 1581 { 5736, 0x8ABB }, { 5737, 0x8ABE }, { 5738, 0x8AC3 }, { 5739, 0x8AC6 }, { 5740, 0x8AC8 }, { 5741, 0x8AC9 }, { 5742, 0x8ACA }, { 5743, 0x8AD1 }, 1582 { 5744, 0x8AD3 }, { 5745, 0x8AD4 }, { 5746, 0x8AD5 }, { 5747, 0x8AD7 }, { 5748, 0x8ADD }, { 5749, 0x8ADF }, { 5750, 0x8AEC }, { 5751, 0x8AF0 }, 1583 { 5752, 0x8AF4 }, { 5753, 0x8AF5 }, { 5754, 0x8AF6 }, { 5755, 0x8AFC }, { 5756, 0x8AFF }, { 5757, 0x8B05 }, { 5758, 0x8B06 }, { 5759, 0x8B0B }, 1584 { 5760, 0x8B11 }, { 5761, 0x8B1C }, { 5762, 0x8B1E }, { 5763, 0x8B1F }, { 5764, 0x8B0A }, { 5765, 0x8B2D }, { 5766, 0x8B30 }, { 5767, 0x8B37 }, 1585 { 5768, 0x8B3C }, { 5769, 0x8B42 }, { 5770, 0x8B43 }, { 5771, 0x8B44 }, { 5772, 0x8B45 }, { 5773, 0x8B46 }, { 5774, 0x8B48 }, { 5775, 0x8B52 }, 1586 { 5776, 0x8B53 }, { 5777, 0x8B54 }, { 5778, 0x8B59 }, { 5779, 0x8B4D }, { 5780, 0x8B5E }, { 5781, 0x8B63 }, { 5782, 0x8B6D }, { 5783, 0x8B76 }, 1587 { 5784, 0x8B78 }, { 5785, 0x8B79 }, { 5786, 0x8B7C }, { 5787, 0x8B7E }, { 5788, 0x8B81 }, { 5789, 0x8B84 }, { 5790, 0x8B85 }, { 5791, 0x8B8B }, 1588 { 5792, 0x8B8D }, { 5793, 0x8B8F }, { 5794, 0x8B94 }, { 5795, 0x8B95 }, { 5796, 0x8B9C }, { 5797, 0x8B9E }, { 5798, 0x8B9F }, { 5799, 0x8C38 }, 1589 { 5800, 0x8C39 }, { 5801, 0x8C3D }, { 5802, 0x8C3E }, { 5803, 0x8C45 }, { 5804, 0x8C47 }, { 5805, 0x8C49 }, { 5806, 0x8C4B }, { 5807, 0x8C4F }, 1590 { 5808, 0x8C51 }, { 5809, 0x8C53 }, { 5810, 0x8C54 }, { 5811, 0x8C57 }, { 5812, 0x8C58 }, { 5813, 0x8C5B }, { 5814, 0x8C5D }, { 5815, 0x8C59 }, 1591 { 5816, 0x8C63 }, { 5817, 0x8C64 }, { 5818, 0x8C66 }, { 5819, 0x8C68 }, { 5820, 0x8C69 }, { 5821, 0x8C6D }, { 5822, 0x8C73 }, { 5823, 0x8C75 }, 1592 { 5824, 0x8C76 }, { 5825, 0x8C7B }, { 5826, 0x8C7E }, { 5827, 0x8C86 }, { 5828, 0x8C87 }, { 5829, 0x8C8B }, { 5830, 0x8C90 }, { 5831, 0x8C92 }, 1593 { 5832, 0x8C93 }, { 5833, 0x8C99 }, { 5834, 0x8C9B }, { 5835, 0x8C9C }, { 5836, 0x8CA4 }, { 5837, 0x8CB9 }, { 5838, 0x8CBA }, { 5839, 0x8CC5 }, 1594 { 5840, 0x8CC6 }, { 5841, 0x8CC9 }, { 5842, 0x8CCB }, { 5843, 0x8CCF }, { 5844, 0x8CD6 }, { 5845, 0x8CD5 }, { 5846, 0x8CD9 }, { 5847, 0x8CDD }, 1595 { 5848, 0x8CE1 }, { 5849, 0x8CE8 }, { 5850, 0x8CEC }, { 5851, 0x8CEF }, { 5852, 0x8CF0 }, { 5853, 0x8CF2 }, { 5854, 0x8CF5 }, { 5855, 0x8CF7 }, 1596 { 5856, 0x8CF8 }, { 5857, 0x8CFE }, { 5858, 0x8CFF }, { 5859, 0x8D01 }, { 5860, 0x8D03 }, { 5861, 0x8D09 }, { 5862, 0x8D12 }, { 5863, 0x8D17 }, 1597 { 5864, 0x8D1B }, { 5865, 0x8D65 }, { 5866, 0x8D69 }, { 5867, 0x8D6C }, { 5868, 0x8D6E }, { 5869, 0x8D7F }, { 5870, 0x8D82 }, { 5871, 0x8D84 }, 1598 { 5872, 0x8D88 }, { 5873, 0x8D8D }, { 5874, 0x8D90 }, { 5875, 0x8D91 }, { 5876, 0x8D95 }, { 5877, 0x8D9E }, { 5878, 0x8D9F }, { 5879, 0x8DA0 }, 1599 { 5880, 0x8DA6 }, { 5881, 0x8DAB }, { 5882, 0x8DAC }, { 5883, 0x8DAF }, { 5884, 0x8DB2 }, { 5885, 0x8DB5 }, { 5886, 0x8DB7 }, { 5887, 0x8DB9 }, 1600 { 5888, 0x8DBB }, { 5889, 0x8DC0 }, { 5890, 0x8DC5 }, { 5891, 0x8DC6 }, { 5892, 0x8DC7 }, { 5893, 0x8DC8 }, { 5894, 0x8DCA }, { 5895, 0x8DCE }, 1601 { 5896, 0x8DD1 }, { 5897, 0x8DD4 }, { 5898, 0x8DD5 }, { 5899, 0x8DD7 }, { 5900, 0x8DD9 }, { 5901, 0x8DE4 }, { 5902, 0x8DE5 }, { 5903, 0x8DE7 }, 1602 { 5904, 0x8DEC }, { 5905, 0x8DF0 }, { 5906, 0x8DBC }, { 5907, 0x8DF1 }, { 5908, 0x8DF2 }, { 5909, 0x8DF4 }, { 5910, 0x8DFD }, { 5911, 0x8E01 }, 1603 { 5912, 0x8E04 }, { 5913, 0x8E05 }, { 5914, 0x8E06 }, { 5915, 0x8E0B }, { 5916, 0x8E11 }, { 5917, 0x8E14 }, { 5918, 0x8E16 }, { 5919, 0x8E20 }, 1604 { 5920, 0x8E21 }, { 5921, 0x8E22 }, { 5922, 0x8E23 }, { 5923, 0x8E26 }, { 5924, 0x8E27 }, { 5925, 0x8E31 }, { 5926, 0x8E33 }, { 5927, 0x8E36 }, 1605 { 5928, 0x8E37 }, { 5929, 0x8E38 }, { 5930, 0x8E39 }, { 5931, 0x8E3D }, { 5932, 0x8E40 }, { 5933, 0x8E41 }, { 5934, 0x8E4B }, { 5935, 0x8E4D }, 1606 { 5936, 0x8E4E }, { 5937, 0x8E4F }, { 5938, 0x8E54 }, { 5939, 0x8E5B }, { 5940, 0x8E5C }, { 5941, 0x8E5D }, { 5942, 0x8E5E }, { 5943, 0x8E61 }, 1607 { 5944, 0x8E62 }, { 5945, 0x8E69 }, { 5946, 0x8E6C }, { 5947, 0x8E6D }, { 5948, 0x8E6F }, { 5949, 0x8E70 }, { 5950, 0x8E71 }, { 5951, 0x8E79 }, 1608 { 5952, 0x8E7A }, { 5953, 0x8E7B }, { 5954, 0x8E82 }, { 5955, 0x8E83 }, { 5956, 0x8E89 }, { 5957, 0x8E90 }, { 5958, 0x8E92 }, { 5959, 0x8E95 }, 1609 { 5960, 0x8E9A }, { 5961, 0x8E9B }, { 5962, 0x8E9D }, { 5963, 0x8E9E }, { 5964, 0x8EA2 }, { 5965, 0x8EA7 }, { 5966, 0x8EA9 }, { 5967, 0x8EAD }, 1610 { 5968, 0x8EAE }, { 5969, 0x8EB3 }, { 5970, 0x8EB5 }, { 5971, 0x8EBA }, { 5972, 0x8EBB }, { 5973, 0x8EC0 }, { 5974, 0x8EC1 }, { 5975, 0x8EC3 }, 1611 { 5976, 0x8EC4 }, { 5977, 0x8EC7 }, { 5978, 0x8ECF }, { 5979, 0x8ED1 }, { 5980, 0x8ED4 }, { 5981, 0x8EDC }, { 5982, 0x8EE8 }, { 5983, 0x8EEE }, 1612 { 5984, 0x8EF0 }, { 5985, 0x8EF1 }, { 5986, 0x8EF7 }, { 5987, 0x8EF9 }, { 5988, 0x8EFA }, { 5989, 0x8EED }, { 5990, 0x8F00 }, { 5991, 0x8F02 }, 1613 { 5992, 0x8F07 }, { 5993, 0x8F08 }, { 5994, 0x8F0F }, { 5995, 0x8F10 }, { 5996, 0x8F16 }, { 5997, 0x8F17 }, { 5998, 0x8F18 }, { 5999, 0x8F1E }, 1614 { 6000, 0x8F20 }, { 6001, 0x8F21 }, { 6002, 0x8F23 }, { 6003, 0x8F25 }, { 6004, 0x8F27 }, { 6005, 0x8F28 }, { 6006, 0x8F2C }, { 6007, 0x8F2D }, 1615 { 6008, 0x8F2E }, { 6009, 0x8F34 }, { 6010, 0x8F35 }, { 6011, 0x8F36 }, { 6012, 0x8F37 }, { 6013, 0x8F3A }, { 6014, 0x8F40 }, { 6015, 0x8F41 }, 1616 { 6016, 0x8F43 }, { 6017, 0x8F47 }, { 6018, 0x8F4F }, { 6019, 0x8F51 }, { 6020, 0x8F52 }, { 6021, 0x8F53 }, { 6022, 0x8F54 }, { 6023, 0x8F55 }, 1617 { 6024, 0x8F58 }, { 6025, 0x8F5D }, { 6026, 0x8F5E }, { 6027, 0x8F65 }, { 6028, 0x8F9D }, { 6029, 0x8FA0 }, { 6030, 0x8FA1 }, { 6031, 0x8FA4 }, 1618 { 6032, 0x8FA5 }, { 6033, 0x8FA6 }, { 6034, 0x8FB5 }, { 6035, 0x8FB6 }, { 6036, 0x8FB8 }, { 6037, 0x8FBE }, { 6038, 0x8FC0 }, { 6039, 0x8FC1 }, 1619 { 6040, 0x8FC6 }, { 6041, 0x8FCA }, { 6042, 0x8FCB }, { 6043, 0x8FCD }, { 6044, 0x8FD0 }, { 6045, 0x8FD2 }, { 6046, 0x8FD3 }, { 6047, 0x8FD5 }, 1620 { 6048, 0x8FE0 }, { 6049, 0x8FE3 }, { 6050, 0x8FE4 }, { 6051, 0x8FE8 }, { 6052, 0x8FEE }, { 6053, 0x8FF1 }, { 6054, 0x8FF5 }, { 6055, 0x8FF6 }, 1621 { 6056, 0x8FFB }, { 6057, 0x8FFE }, { 6058, 0x9002 }, { 6059, 0x9004 }, { 6060, 0x9008 }, { 6061, 0x900C }, { 6062, 0x9018 }, { 6063, 0x901B }, 1622 { 6064, 0x9028 }, { 6065, 0x9029 }, { 6066, 0x902F }, { 6067, 0x902A }, { 6068, 0x902C }, { 6069, 0x902D }, { 6070, 0x9033 }, { 6071, 0x9034 }, 1623 { 6072, 0x9037 }, { 6073, 0x903F }, { 6074, 0x9043 }, { 6075, 0x9044 }, { 6076, 0x904C }, { 6077, 0x905B }, { 6078, 0x905D }, { 6079, 0x9062 }, 1624 { 6080, 0x9066 }, { 6081, 0x9067 }, { 6082, 0x906C }, { 6083, 0x9070 }, { 6084, 0x9074 }, { 6085, 0x9079 }, { 6086, 0x9085 }, { 6087, 0x9088 }, 1625 { 6088, 0x908B }, { 6089, 0x908C }, { 6090, 0x908E }, { 6091, 0x9090 }, { 6092, 0x9095 }, { 6093, 0x9097 }, { 6094, 0x9098 }, { 6095, 0x9099 }, 1626 { 6096, 0x909B }, { 6097, 0x90A0 }, { 6098, 0x90A1 }, { 6099, 0x90A2 }, { 6100, 0x90A5 }, { 6101, 0x90B0 }, { 6102, 0x90B2 }, { 6103, 0x90B3 }, 1627 { 6104, 0x90B4 }, { 6105, 0x90B6 }, { 6106, 0x90BD }, { 6107, 0x90CC }, { 6108, 0x90BE }, { 6109, 0x90C3 }, { 6110, 0x90C4 }, { 6111, 0x90C5 }, 1628 { 6112, 0x90C7 }, { 6113, 0x90C8 }, { 6114, 0x90D5 }, { 6115, 0x90D7 }, { 6116, 0x90D8 }, { 6117, 0x90D9 }, { 6118, 0x90DC }, { 6119, 0x90DD }, 1629 { 6120, 0x90DF }, { 6121, 0x90E5 }, { 6122, 0x90D2 }, { 6123, 0x90F6 }, { 6124, 0x90EB }, { 6125, 0x90EF }, { 6126, 0x90F0 }, { 6127, 0x90F4 }, 1630 { 6128, 0x90FE }, { 6129, 0x90FF }, { 6130, 0x9100 }, { 6131, 0x9104 }, { 6132, 0x9105 }, { 6133, 0x9106 }, { 6134, 0x9108 }, { 6135, 0x910D }, 1631 { 6136, 0x9110 }, { 6137, 0x9114 }, { 6138, 0x9116 }, { 6139, 0x9117 }, { 6140, 0x9118 }, { 6141, 0x911A }, { 6142, 0x911C }, { 6143, 0x911E }, 1632 { 6144, 0x9120 }, { 6145, 0x9125 }, { 6146, 0x9122 }, { 6147, 0x9123 }, { 6148, 0x9127 }, { 6149, 0x9129 }, { 6150, 0x912E }, { 6151, 0x912F }, 1633 { 6152, 0x9131 }, { 6153, 0x9134 }, { 6154, 0x9136 }, { 6155, 0x9137 }, { 6156, 0x9139 }, { 6157, 0x913A }, { 6158, 0x913C }, { 6159, 0x913D }, 1634 { 6160, 0x9143 }, { 6161, 0x9147 }, { 6162, 0x9148 }, { 6163, 0x914F }, { 6164, 0x9153 }, { 6165, 0x9157 }, { 6166, 0x9159 }, { 6167, 0x915A }, 1635 { 6168, 0x915B }, { 6169, 0x9161 }, { 6170, 0x9164 }, { 6171, 0x9167 }, { 6172, 0x916D }, { 6173, 0x9174 }, { 6174, 0x9179 }, { 6175, 0x917A }, 1636 { 6176, 0x917B }, { 6177, 0x9181 }, { 6178, 0x9183 }, { 6179, 0x9185 }, { 6180, 0x9186 }, { 6181, 0x918A }, { 6182, 0x918E }, { 6183, 0x9191 }, 1637 { 6184, 0x9193 }, { 6185, 0x9194 }, { 6186, 0x9195 }, { 6187, 0x9198 }, { 6188, 0x919E }, { 6189, 0x91A1 }, { 6190, 0x91A6 }, { 6191, 0x91A8 }, 1638 { 6192, 0x91AC }, { 6193, 0x91AD }, { 6194, 0x91AE }, { 6195, 0x91B0 }, { 6196, 0x91B1 }, { 6197, 0x91B2 }, { 6198, 0x91B3 }, { 6199, 0x91B6 }, 1639 { 6200, 0x91BB }, { 6201, 0x91BC }, { 6202, 0x91BD }, { 6203, 0x91BF }, { 6204, 0x91C2 }, { 6205, 0x91C3 }, { 6206, 0x91C5 }, { 6207, 0x91D3 }, 1640 { 6208, 0x91D4 }, { 6209, 0x91D7 }, { 6210, 0x91D9 }, { 6211, 0x91DA }, { 6212, 0x91DE }, { 6213, 0x91E4 }, { 6214, 0x91E5 }, { 6215, 0x91E9 }, 1641 { 6216, 0x91EA }, { 6217, 0x91EC }, { 6218, 0x91ED }, { 6219, 0x91EE }, { 6220, 0x91EF }, { 6221, 0x91F0 }, { 6222, 0x91F1 }, { 6223, 0x91F7 }, 1642 { 6224, 0x91F9 }, { 6225, 0x91FB }, { 6226, 0x91FD }, { 6227, 0x9200 }, { 6228, 0x9201 }, { 6229, 0x9204 }, { 6230, 0x9205 }, { 6231, 0x9206 }, 1643 { 6232, 0x9207 }, { 6233, 0x9209 }, { 6234, 0x920A }, { 6235, 0x920C }, { 6236, 0x9210 }, { 6237, 0x9212 }, { 6238, 0x9213 }, { 6239, 0x9216 }, 1644 { 6240, 0x9218 }, { 6241, 0x921C }, { 6242, 0x921D }, { 6243, 0x9223 }, { 6244, 0x9224 }, { 6245, 0x9225 }, { 6246, 0x9226 }, { 6247, 0x9228 }, 1645 { 6248, 0x922E }, { 6249, 0x922F }, { 6250, 0x9230 }, { 6251, 0x9233 }, { 6252, 0x9235 }, { 6253, 0x9236 }, { 6254, 0x9238 }, { 6255, 0x9239 }, 1646 { 6256, 0x923A }, { 6257, 0x923C }, { 6258, 0x923E }, { 6259, 0x9240 }, { 6260, 0x9242 }, { 6261, 0x9243 }, { 6262, 0x9246 }, { 6263, 0x9247 }, 1647 { 6264, 0x924A }, { 6265, 0x924D }, { 6266, 0x924E }, { 6267, 0x924F }, { 6268, 0x9251 }, { 6269, 0x9258 }, { 6270, 0x9259 }, { 6271, 0x925C }, 1648 { 6272, 0x925D }, { 6273, 0x9260 }, { 6274, 0x9261 }, { 6275, 0x9265 }, { 6276, 0x9267 }, { 6277, 0x9268 }, { 6278, 0x9269 }, { 6279, 0x926E }, 1649 { 6280, 0x926F }, { 6281, 0x9270 }, { 6282, 0x9275 }, { 6283, 0x9276 }, { 6284, 0x9277 }, { 6285, 0x9278 }, { 6286, 0x9279 }, { 6287, 0x927B }, 1650 { 6288, 0x927C }, { 6289, 0x927D }, { 6290, 0x927F }, { 6291, 0x9288 }, { 6292, 0x9289 }, { 6293, 0x928A }, { 6294, 0x928D }, { 6295, 0x928E }, 1651 { 6296, 0x9292 }, { 6297, 0x9297 }, { 6298, 0x9299 }, { 6299, 0x929F }, { 6300, 0x92A0 }, { 6301, 0x92A4 }, { 6302, 0x92A5 }, { 6303, 0x92A7 }, 1652 { 6304, 0x92A8 }, { 6305, 0x92AB }, { 6306, 0x92AF }, { 6307, 0x92B2 }, { 6308, 0x92B6 }, { 6309, 0x92B8 }, { 6310, 0x92BA }, { 6311, 0x92BB }, 1653 { 6312, 0x92BC }, { 6313, 0x92BD }, { 6314, 0x92BF }, { 6315, 0x92C0 }, { 6316, 0x92C1 }, { 6317, 0x92C2 }, { 6318, 0x92C3 }, { 6319, 0x92C5 }, 1654 { 6320, 0x92C6 }, { 6321, 0x92C7 }, { 6322, 0x92C8 }, { 6323, 0x92CB }, { 6324, 0x92CC }, { 6325, 0x92CD }, { 6326, 0x92CE }, { 6327, 0x92D0 }, 1655 { 6328, 0x92D3 }, { 6329, 0x92D5 }, { 6330, 0x92D7 }, { 6331, 0x92D8 }, { 6332, 0x92D9 }, { 6333, 0x92DC }, { 6334, 0x92DD }, { 6335, 0x92DF }, 1656 { 6336, 0x92E0 }, { 6337, 0x92E1 }, { 6338, 0x92E3 }, { 6339, 0x92E5 }, { 6340, 0x92E7 }, { 6341, 0x92E8 }, { 6342, 0x92EC }, { 6343, 0x92EE }, 1657 { 6344, 0x92F0 }, { 6345, 0x92F9 }, { 6346, 0x92FB }, { 6347, 0x92FF }, { 6348, 0x9300 }, { 6349, 0x9302 }, { 6350, 0x9308 }, { 6351, 0x930D }, 1658 { 6352, 0x9311 }, { 6353, 0x9314 }, { 6354, 0x9315 }, { 6355, 0x931C }, { 6356, 0x931D }, { 6357, 0x931E }, { 6358, 0x931F }, { 6359, 0x9321 }, 1659 { 6360, 0x9324 }, { 6361, 0x9325 }, { 6362, 0x9327 }, { 6363, 0x9329 }, { 6364, 0x932A }, { 6365, 0x9333 }, { 6366, 0x9334 }, { 6367, 0x9336 }, 1660 { 6368, 0x9337 }, { 6369, 0x9347 }, { 6370, 0x9348 }, { 6371, 0x9349 }, { 6372, 0x9350 }, { 6373, 0x9351 }, { 6374, 0x9352 }, { 6375, 0x9355 }, 1661 { 6376, 0x9357 }, { 6377, 0x9358 }, { 6378, 0x935A }, { 6379, 0x935E }, { 6380, 0x9364 }, { 6381, 0x9365 }, { 6382, 0x9367 }, { 6383, 0x9369 }, 1662 { 6384, 0x936A }, { 6385, 0x936D }, { 6386, 0x936F }, { 6387, 0x9370 }, { 6388, 0x9371 }, { 6389, 0x9373 }, { 6390, 0x9374 }, { 6391, 0x9376 }, 1663 { 6392, 0x937A }, { 6393, 0x937D }, { 6394, 0x937F }, { 6395, 0x9380 }, { 6396, 0x9381 }, { 6397, 0x9382 }, { 6398, 0x9388 }, { 6399, 0x938A }, 1664 { 6400, 0x938B }, { 6401, 0x938D }, { 6402, 0x938F }, { 6403, 0x9392 }, { 6404, 0x9395 }, { 6405, 0x9398 }, { 6406, 0x939B }, { 6407, 0x939E }, 1665 { 6408, 0x93A1 }, { 6409, 0x93A3 }, { 6410, 0x93A4 }, { 6411, 0x93A6 }, { 6412, 0x93A8 }, { 6413, 0x93AB }, { 6414, 0x93B4 }, { 6415, 0x93B5 }, 1666 { 6416, 0x93B6 }, { 6417, 0x93BA }, { 6418, 0x93A9 }, { 6419, 0x93C1 }, { 6420, 0x93C4 }, { 6421, 0x93C5 }, { 6422, 0x93C6 }, { 6423, 0x93C7 }, 1667 { 6424, 0x93C9 }, { 6425, 0x93CA }, { 6426, 0x93CB }, { 6427, 0x93CC }, { 6428, 0x93CD }, { 6429, 0x93D3 }, { 6430, 0x93D9 }, { 6431, 0x93DC }, 1668 { 6432, 0x93DE }, { 6433, 0x93DF }, { 6434, 0x93E2 }, { 6435, 0x93E6 }, { 6436, 0x93E7 }, { 6437, 0x93F9 }, { 6438, 0x93F7 }, { 6439, 0x93F8 }, 1669 { 6440, 0x93FA }, { 6441, 0x93FB }, { 6442, 0x93FD }, { 6443, 0x9401 }, { 6444, 0x9402 }, { 6445, 0x9404 }, { 6446, 0x9408 }, { 6447, 0x9409 }, 1670 { 6448, 0x940D }, { 6449, 0x940E }, { 6450, 0x940F }, { 6451, 0x9415 }, { 6452, 0x9416 }, { 6453, 0x9417 }, { 6454, 0x941F }, { 6455, 0x942E }, 1671 { 6456, 0x942F }, { 6457, 0x9431 }, { 6458, 0x9432 }, { 6459, 0x9433 }, { 6460, 0x9434 }, { 6461, 0x943B }, { 6462, 0x943F }, { 6463, 0x943D }, 1672 { 6464, 0x9443 }, { 6465, 0x9445 }, { 6466, 0x9448 }, { 6467, 0x944A }, { 6468, 0x944C }, { 6469, 0x9455 }, { 6470, 0x9459 }, { 6471, 0x945C }, 1673 { 6472, 0x945F }, { 6473, 0x9461 }, { 6474, 0x9463 }, { 6475, 0x9468 }, { 6476, 0x946B }, { 6477, 0x946D }, { 6478, 0x946E }, { 6479, 0x946F }, 1674 { 6480, 0x9471 }, { 6481, 0x9472 }, { 6482, 0x9484 }, { 6483, 0x9483 }, { 6484, 0x9578 }, { 6485, 0x9579 }, { 6486, 0x957E }, { 6487, 0x9584 }, 1675 { 6488, 0x9588 }, { 6489, 0x958C }, { 6490, 0x958D }, { 6491, 0x958E }, { 6492, 0x959D }, { 6493, 0x959E }, { 6494, 0x959F }, { 6495, 0x95A1 }, 1676 { 6496, 0x95A6 }, { 6497, 0x95A9 }, { 6498, 0x95AB }, { 6499, 0x95AC }, { 6500, 0x95B4 }, { 6501, 0x95B6 }, { 6502, 0x95BA }, { 6503, 0x95BD }, 1677 { 6504, 0x95BF }, { 6505, 0x95C6 }, { 6506, 0x95C8 }, { 6507, 0x95C9 }, { 6508, 0x95CB }, { 6509, 0x95D0 }, { 6510, 0x95D1 }, { 6511, 0x95D2 }, 1678 { 6512, 0x95D3 }, { 6513, 0x95D9 }, { 6514, 0x95DA }, { 6515, 0x95DD }, { 6516, 0x95DE }, { 6517, 0x95DF }, { 6518, 0x95E0 }, { 6519, 0x95E4 }, 1679 { 6520, 0x95E6 }, { 6521, 0x961D }, { 6522, 0x961E }, { 6523, 0x9622 }, { 6524, 0x9624 }, { 6525, 0x9625 }, { 6526, 0x9626 }, { 6527, 0x962C }, 1680 { 6528, 0x9631 }, { 6529, 0x9633 }, { 6530, 0x9637 }, { 6531, 0x9638 }, { 6532, 0x9639 }, { 6533, 0x963A }, { 6534, 0x963C }, { 6535, 0x963D }, 1681 { 6536, 0x9641 }, { 6537, 0x9652 }, { 6538, 0x9654 }, { 6539, 0x9656 }, { 6540, 0x9657 }, { 6541, 0x9658 }, { 6542, 0x9661 }, { 6543, 0x966E }, 1682 { 6544, 0x9674 }, { 6545, 0x967B }, { 6546, 0x967C }, { 6547, 0x967E }, { 6548, 0x967F }, { 6549, 0x9681 }, { 6550, 0x9682 }, { 6551, 0x9683 }, 1683 { 6552, 0x9684 }, { 6553, 0x9689 }, { 6554, 0x9691 }, { 6555, 0x9696 }, { 6556, 0x969A }, { 6557, 0x969D }, { 6558, 0x969F }, { 6559, 0x96A4 }, 1684 { 6560, 0x96A5 }, { 6561, 0x96A6 }, { 6562, 0x96A9 }, { 6563, 0x96AE }, { 6564, 0x96AF }, { 6565, 0x96B3 }, { 6566, 0x96BA }, { 6567, 0x96CA }, 1685 { 6568, 0x96D2 }, { 6569, 0x5DB2 }, { 6570, 0x96D8 }, { 6571, 0x96DA }, { 6572, 0x96DD }, { 6573, 0x96DE }, { 6574, 0x96DF }, { 6575, 0x96E9 }, 1686 { 6576, 0x96EF }, { 6577, 0x96F1 }, { 6578, 0x96FA }, { 6579, 0x9702 }, { 6580, 0x9703 }, { 6581, 0x9705 }, { 6582, 0x9709 }, { 6583, 0x971A }, 1687 { 6584, 0x971B }, { 6585, 0x971D }, { 6586, 0x9721 }, { 6587, 0x9722 }, { 6588, 0x9723 }, { 6589, 0x9728 }, { 6590, 0x9731 }, { 6591, 0x9733 }, 1688 { 6592, 0x9741 }, { 6593, 0x9743 }, { 6594, 0x974A }, { 6595, 0x974E }, { 6596, 0x974F }, { 6597, 0x9755 }, { 6598, 0x9757 }, { 6599, 0x9758 }, 1689 { 6600, 0x975A }, { 6601, 0x975B }, { 6602, 0x9763 }, { 6603, 0x9767 }, { 6604, 0x976A }, { 6605, 0x976E }, { 6606, 0x9773 }, { 6607, 0x9776 }, 1690 { 6608, 0x9777 }, { 6609, 0x9778 }, { 6610, 0x977B }, { 6611, 0x977D }, { 6612, 0x977F }, { 6613, 0x9780 }, { 6614, 0x9789 }, { 6615, 0x9795 }, 1691 { 6616, 0x9796 }, { 6617, 0x9797 }, { 6618, 0x9799 }, { 6619, 0x979A }, { 6620, 0x979E }, { 6621, 0x979F }, { 6622, 0x97A2 }, { 6623, 0x97AC }, 1692 { 6624, 0x97AE }, { 6625, 0x97B1 }, { 6626, 0x97B2 }, { 6627, 0x97B5 }, { 6628, 0x97B6 }, { 6629, 0x97B8 }, { 6630, 0x97B9 }, { 6631, 0x97BA }, 1693 { 6632, 0x97BC }, { 6633, 0x97BE }, { 6634, 0x97BF }, { 6635, 0x97C1 }, { 6636, 0x97C4 }, { 6637, 0x97C5 }, { 6638, 0x97C7 }, { 6639, 0x97C9 }, 1694 { 6640, 0x97CA }, { 6641, 0x97CC }, { 6642, 0x97CD }, { 6643, 0x97CE }, { 6644, 0x97D0 }, { 6645, 0x97D1 }, { 6646, 0x97D4 }, { 6647, 0x97D7 }, 1695 { 6648, 0x97D8 }, { 6649, 0x97D9 }, { 6650, 0x97DD }, { 6651, 0x97DE }, { 6652, 0x97E0 }, { 6653, 0x97DB }, { 6654, 0x97E1 }, { 6655, 0x97E4 }, 1696 { 6656, 0x97EF }, { 6657, 0x97F1 }, { 6658, 0x97F4 }, { 6659, 0x97F7 }, { 6660, 0x97F8 }, { 6661, 0x97FA }, { 6662, 0x9807 }, { 6663, 0x980A }, 1697 { 6664, 0x9819 }, { 6665, 0x980D }, { 6666, 0x980E }, { 6667, 0x9814 }, { 6668, 0x9816 }, { 6669, 0x981C }, { 6670, 0x981E }, { 6671, 0x9820 }, 1698 { 6672, 0x9823 }, { 6673, 0x9826 }, { 6674, 0x982B }, { 6675, 0x982E }, { 6676, 0x982F }, { 6677, 0x9830 }, { 6678, 0x9832 }, { 6679, 0x9833 }, 1699 { 6680, 0x9835 }, { 6681, 0x9825 }, { 6682, 0x983E }, { 6683, 0x9844 }, { 6684, 0x9847 }, { 6685, 0x984A }, { 6686, 0x9851 }, { 6687, 0x9852 }, 1700 { 6688, 0x9853 }, { 6689, 0x9856 }, { 6690, 0x9857 }, { 6691, 0x9859 }, { 6692, 0x985A }, { 6693, 0x9862 }, { 6694, 0x9863 }, { 6695, 0x9865 }, 1701 { 6696, 0x9866 }, { 6697, 0x986A }, { 6698, 0x986C }, { 6699, 0x98AB }, { 6700, 0x98AD }, { 6701, 0x98AE }, { 6702, 0x98B0 }, { 6703, 0x98B4 }, 1702 { 6704, 0x98B7 }, { 6705, 0x98B8 }, { 6706, 0x98BA }, { 6707, 0x98BB }, { 6708, 0x98BF }, { 6709, 0x98C2 }, { 6710, 0x98C5 }, { 6711, 0x98C8 }, 1703 { 6712, 0x98CC }, { 6713, 0x98E1 }, { 6714, 0x98E3 }, { 6715, 0x98E5 }, { 6716, 0x98E6 }, { 6717, 0x98E7 }, { 6718, 0x98EA }, { 6719, 0x98F3 }, 1704 { 6720, 0x98F6 }, { 6721, 0x9902 }, { 6722, 0x9907 }, { 6723, 0x9908 }, { 6724, 0x9911 }, { 6725, 0x9915 }, { 6726, 0x9916 }, { 6727, 0x9917 }, 1705 { 6728, 0x991A }, { 6729, 0x991B }, { 6730, 0x991C }, { 6731, 0x991F }, { 6732, 0x9922 }, { 6733, 0x9926 }, { 6734, 0x9927 }, { 6735, 0x992B }, 1706 { 6736, 0x9931 }, { 6737, 0x9932 }, { 6738, 0x9933 }, { 6739, 0x9934 }, { 6740, 0x9935 }, { 6741, 0x9939 }, { 6742, 0x993A }, { 6743, 0x993B }, 1707 { 6744, 0x993C }, { 6745, 0x9940 }, { 6746, 0x9941 }, { 6747, 0x9946 }, { 6748, 0x9947 }, { 6749, 0x9948 }, { 6750, 0x994D }, { 6751, 0x994E }, 1708 { 6752, 0x9954 }, { 6753, 0x9958 }, { 6754, 0x9959 }, { 6755, 0x995B }, { 6756, 0x995C }, { 6757, 0x995E }, { 6758, 0x995F }, { 6759, 0x9960 }, 1709 { 6760, 0x999B }, { 6761, 0x999D }, { 6762, 0x999F }, { 6763, 0x99A6 }, { 6764, 0x99B0 }, { 6765, 0x99B1 }, { 6766, 0x99B2 }, { 6767, 0x99B5 }, 1710 { 6768, 0x99B9 }, { 6769, 0x99BA }, { 6770, 0x99BD }, { 6771, 0x99BF }, { 6772, 0x99C3 }, { 6773, 0x99C9 }, { 6774, 0x99D3 }, { 6775, 0x99D4 }, 1711 { 6776, 0x99D9 }, { 6777, 0x99DA }, { 6778, 0x99DC }, { 6779, 0x99DE }, { 6780, 0x99E7 }, { 6781, 0x99EA }, { 6782, 0x99EB }, { 6783, 0x99EC }, 1712 { 6784, 0x99F0 }, { 6785, 0x99F4 }, { 6786, 0x99F5 }, { 6787, 0x99F9 }, { 6788, 0x99FD }, { 6789, 0x99FE }, { 6790, 0x9A02 }, { 6791, 0x9A03 }, 1713 { 6792, 0x9A04 }, { 6793, 0x9A0B }, { 6794, 0x9A0C }, { 6795, 0x9A10 }, { 6796, 0x9A11 }, { 6797, 0x9A16 }, { 6798, 0x9A1E }, { 6799, 0x9A20 }, 1714 { 6800, 0x9A22 }, { 6801, 0x9A23 }, { 6802, 0x9A24 }, { 6803, 0x9A27 }, { 6804, 0x9A2D }, { 6805, 0x9A2E }, { 6806, 0x9A33 }, { 6807, 0x9A35 }, 1715 { 6808, 0x9A36 }, { 6809, 0x9A38 }, { 6810, 0x9A47 }, { 6811, 0x9A41 }, { 6812, 0x9A44 }, { 6813, 0x9A4A }, { 6814, 0x9A4B }, { 6815, 0x9A4C }, 1716 { 6816, 0x9A4E }, { 6817, 0x9A51 }, { 6818, 0x9A54 }, { 6819, 0x9A56 }, { 6820, 0x9A5D }, { 6821, 0x9AAA }, { 6822, 0x9AAC }, { 6823, 0x9AAE }, 1717 { 6824, 0x9AAF }, { 6825, 0x9AB2 }, { 6826, 0x9AB4 }, { 6827, 0x9AB5 }, { 6828, 0x9AB6 }, { 6829, 0x9AB9 }, { 6830, 0x9ABB }, { 6831, 0x9ABE }, 1718 { 6832, 0x9ABF }, { 6833, 0x9AC1 }, { 6834, 0x9AC3 }, { 6835, 0x9AC6 }, { 6836, 0x9AC8 }, { 6837, 0x9ACE }, { 6838, 0x9AD0 }, { 6839, 0x9AD2 }, 1719 { 6840, 0x9AD5 }, { 6841, 0x9AD6 }, { 6842, 0x9AD7 }, { 6843, 0x9ADB }, { 6844, 0x9ADC }, { 6845, 0x9AE0 }, { 6846, 0x9AE4 }, { 6847, 0x9AE5 }, 1720 { 6848, 0x9AE7 }, { 6849, 0x9AE9 }, { 6850, 0x9AEC }, { 6851, 0x9AF2 }, { 6852, 0x9AF3 }, { 6853, 0x9AF5 }, { 6854, 0x9AF9 }, { 6855, 0x9AFA }, 1721 { 6856, 0x9AFD }, { 6857, 0x9AFF }, { 6858, 0x9B00 }, { 6859, 0x9B01 }, { 6860, 0x9B02 }, { 6861, 0x9B03 }, { 6862, 0x9B04 }, { 6863, 0x9B05 }, 1722 { 6864, 0x9B08 }, { 6865, 0x9B09 }, { 6866, 0x9B0B }, { 6867, 0x9B0C }, { 6868, 0x9B0D }, { 6869, 0x9B0E }, { 6870, 0x9B10 }, { 6871, 0x9B12 }, 1723 { 6872, 0x9B16 }, { 6873, 0x9B19 }, { 6874, 0x9B1B }, { 6875, 0x9B1C }, { 6876, 0x9B20 }, { 6877, 0x9B26 }, { 6878, 0x9B2B }, { 6879, 0x9B2D }, 1724 { 6880, 0x9B33 }, { 6881, 0x9B34 }, { 6882, 0x9B35 }, { 6883, 0x9B37 }, { 6884, 0x9B39 }, { 6885, 0x9B3A }, { 6886, 0x9B3D }, { 6887, 0x9B48 }, 1725 { 6888, 0x9B4B }, { 6889, 0x9B4C }, { 6890, 0x9B55 }, { 6891, 0x9B56 }, { 6892, 0x9B57 }, { 6893, 0x9B5B }, { 6894, 0x9B5E }, { 6895, 0x9B61 }, 1726 { 6896, 0x9B63 }, { 6897, 0x9B65 }, { 6898, 0x9B66 }, { 6899, 0x9B68 }, { 6900, 0x9B6A }, { 6901, 0x9B6B }, { 6902, 0x9B6C }, { 6903, 0x9B6D }, 1727 { 6904, 0x9B6E }, { 6905, 0x9B73 }, { 6906, 0x9B75 }, { 6907, 0x9B77 }, { 6908, 0x9B78 }, { 6909, 0x9B79 }, { 6910, 0x9B7F }, { 6911, 0x9B80 }, 1728 { 6912, 0x9B84 }, { 6913, 0x9B85 }, { 6914, 0x9B86 }, { 6915, 0x9B87 }, { 6916, 0x9B89 }, { 6917, 0x9B8A }, { 6918, 0x9B8B }, { 6919, 0x9B8D }, 1729 { 6920, 0x9B8F }, { 6921, 0x9B90 }, { 6922, 0x9B94 }, { 6923, 0x9B9A }, { 6924, 0x9B9D }, { 6925, 0x9B9E }, { 6926, 0x9BA6 }, { 6927, 0x9BA7 }, 1730 { 6928, 0x9BA9 }, { 6929, 0x9BAC }, { 6930, 0x9BB0 }, { 6931, 0x9BB1 }, { 6932, 0x9BB2 }, { 6933, 0x9BB7 }, { 6934, 0x9BB8 }, { 6935, 0x9BBB }, 1731 { 6936, 0x9BBC }, { 6937, 0x9BBE }, { 6938, 0x9BBF }, { 6939, 0x9BC1 }, { 6940, 0x9BC7 }, { 6941, 0x9BC8 }, { 6942, 0x9BCE }, { 6943, 0x9BD0 }, 1732 { 6944, 0x9BD7 }, { 6945, 0x9BD8 }, { 6946, 0x9BDD }, { 6947, 0x9BDF }, { 6948, 0x9BE5 }, { 6949, 0x9BE7 }, { 6950, 0x9BEA }, { 6951, 0x9BEB }, 1733 { 6952, 0x9BEF }, { 6953, 0x9BF3 }, { 6954, 0x9BF7 }, { 6955, 0x9BF8 }, { 6956, 0x9BF9 }, { 6957, 0x9BFA }, { 6958, 0x9BFD }, { 6959, 0x9BFF }, 1734 { 6960, 0x9C00 }, { 6961, 0x9C02 }, { 6962, 0x9C0B }, { 6963, 0x9C0F }, { 6964, 0x9C11 }, { 6965, 0x9C16 }, { 6966, 0x9C18 }, { 6967, 0x9C19 }, 1735 { 6968, 0x9C1A }, { 6969, 0x9C1C }, { 6970, 0x9C1E }, { 6971, 0x9C22 }, { 6972, 0x9C23 }, { 6973, 0x9C26 }, { 6974, 0x9C27 }, { 6975, 0x9C28 }, 1736 { 6976, 0x9C29 }, { 6977, 0x9C2A }, { 6978, 0x9C31 }, { 6979, 0x9C35 }, { 6980, 0x9C36 }, { 6981, 0x9C37 }, { 6982, 0x9C3D }, { 6983, 0x9C41 }, 1737 { 6984, 0x9C43 }, { 6985, 0x9C44 }, { 6986, 0x9C45 }, { 6987, 0x9C49 }, { 6988, 0x9C4A }, { 6989, 0x9C4E }, { 6990, 0x9C4F }, { 6991, 0x9C50 }, 1738 { 6992, 0x9C53 }, { 6993, 0x9C54 }, { 6994, 0x9C56 }, { 6995, 0x9C58 }, { 6996, 0x9C5B }, { 6997, 0x9C5D }, { 6998, 0x9C5E }, { 6999, 0x9C5F }, 1739 { 7000, 0x9C63 }, { 7001, 0x9C69 }, { 7002, 0x9C6A }, { 7003, 0x9C5C }, { 7004, 0x9C6B }, { 7005, 0x9C68 }, { 7006, 0x9C6E }, { 7007, 0x9C70 }, 1740 { 7008, 0x9C72 }, { 7009, 0x9C75 }, { 7010, 0x9C77 }, { 7011, 0x9C7B }, { 7012, 0x9CE6 }, { 7013, 0x9CF2 }, { 7014, 0x9CF7 }, { 7015, 0x9CF9 }, 1741 { 7016, 0x9D0B }, { 7017, 0x9D02 }, { 7018, 0x9D11 }, { 7019, 0x9D17 }, { 7020, 0x9D18 }, { 7021, 0x9D1C }, { 7022, 0x9D1D }, { 7023, 0x9D1E }, 1742 { 7024, 0x9D2F }, { 7025, 0x9D30 }, { 7026, 0x9D32 }, { 7027, 0x9D33 }, { 7028, 0x9D34 }, { 7029, 0x9D3A }, { 7030, 0x9D3C }, { 7031, 0x9D45 }, 1743 { 7032, 0x9D3D }, { 7033, 0x9D42 }, { 7034, 0x9D43 }, { 7035, 0x9D47 }, { 7036, 0x9D4A }, { 7037, 0x9D53 }, { 7038, 0x9D54 }, { 7039, 0x9D5F }, 1744 { 7040, 0x9D63 }, { 7041, 0x9D62 }, { 7042, 0x9D65 }, { 7043, 0x9D69 }, { 7044, 0x9D6A }, { 7045, 0x9D6B }, { 7046, 0x9D70 }, { 7047, 0x9D76 }, 1745 { 7048, 0x9D77 }, { 7049, 0x9D7B }, { 7050, 0x9D7C }, { 7051, 0x9D7E }, { 7052, 0x9D83 }, { 7053, 0x9D84 }, { 7054, 0x9D86 }, { 7055, 0x9D8A }, 1746 { 7056, 0x9D8D }, { 7057, 0x9D8E }, { 7058, 0x9D92 }, { 7059, 0x9D93 }, { 7060, 0x9D95 }, { 7061, 0x9D96 }, { 7062, 0x9D97 }, { 7063, 0x9D98 }, 1747 { 7064, 0x9DA1 }, { 7065, 0x9DAA }, { 7066, 0x9DAC }, { 7067, 0x9DAE }, { 7068, 0x9DB1 }, { 7069, 0x9DB5 }, { 7070, 0x9DB9 }, { 7071, 0x9DBC }, 1748 { 7072, 0x9DBF }, { 7073, 0x9DC3 }, { 7074, 0x9DC7 }, { 7075, 0x9DC9 }, { 7076, 0x9DCA }, { 7077, 0x9DD4 }, { 7078, 0x9DD5 }, { 7079, 0x9DD6 }, 1749 { 7080, 0x9DD7 }, { 7081, 0x9DDA }, { 7082, 0x9DDE }, { 7083, 0x9DDF }, { 7084, 0x9DE0 }, { 7085, 0x9DE5 }, { 7086, 0x9DE7 }, { 7087, 0x9DE9 }, 1750 { 7088, 0x9DEB }, { 7089, 0x9DEE }, { 7090, 0x9DF0 }, { 7091, 0x9DF3 }, { 7092, 0x9DF4 }, { 7093, 0x9DFE }, { 7094, 0x9E0A }, { 7095, 0x9E02 }, 1751 { 7096, 0x9E07 }, { 7097, 0x9E0E }, { 7098, 0x9E10 }, { 7099, 0x9E11 }, { 7100, 0x9E12 }, { 7101, 0x9E15 }, { 7102, 0x9E16 }, { 7103, 0x9E19 }, 1752 { 7104, 0x9E1C }, { 7105, 0x9E1D }, { 7106, 0x9E7A }, { 7107, 0x9E7B }, { 7108, 0x9E7C }, { 7109, 0x9E80 }, { 7110, 0x9E82 }, { 7111, 0x9E83 }, 1753 { 7112, 0x9E84 }, { 7113, 0x9E85 }, { 7114, 0x9E87 }, { 7115, 0x9E8E }, { 7116, 0x9E8F }, { 7117, 0x9E96 }, { 7118, 0x9E98 }, { 7119, 0x9E9B }, 1754 { 7120, 0x9E9E }, { 7121, 0x9EA4 }, { 7122, 0x9EA8 }, { 7123, 0x9EAC }, { 7124, 0x9EAE }, { 7125, 0x9EAF }, { 7126, 0x9EB0 }, { 7127, 0x9EB3 }, 1755 { 7128, 0x9EB4 }, { 7129, 0x9EB5 }, { 7130, 0x9EC6 }, { 7131, 0x9EC8 }, { 7132, 0x9ECB }, { 7133, 0x9ED5 }, { 7134, 0x9EDF }, { 7135, 0x9EE4 }, 1756 { 7136, 0x9EE7 }, { 7137, 0x9EEC }, { 7138, 0x9EED }, { 7139, 0x9EEE }, { 7140, 0x9EF0 }, { 7141, 0x9EF1 }, { 7142, 0x9EF2 }, { 7143, 0x9EF5 }, 1757 { 7144, 0x9EF8 }, { 7145, 0x9EFF }, { 7146, 0x9F02 }, { 7147, 0x9F03 }, { 7148, 0x9F09 }, { 7149, 0x9F0F }, { 7150, 0x9F10 }, { 7151, 0x9F11 }, 1758 { 7152, 0x9F12 }, { 7153, 0x9F14 }, { 7154, 0x9F16 }, { 7155, 0x9F17 }, { 7156, 0x9F19 }, { 7157, 0x9F1A }, { 7158, 0x9F1B }, { 7159, 0x9F1F }, 1759 { 7160, 0x9F22 }, { 7161, 0x9F26 }, { 7162, 0x9F2A }, { 7163, 0x9F2B }, { 7164, 0x9F2F }, { 7165, 0x9F31 }, { 7166, 0x9F32 }, { 7167, 0x9F34 }, 1760 { 7168, 0x9F37 }, { 7169, 0x9F39 }, { 7170, 0x9F3A }, { 7171, 0x9F3C }, { 7172, 0x9F3D }, { 7173, 0x9F3F }, { 7174, 0x9F41 }, { 7175, 0x9F43 }, 1761 { 7176, 0x9F44 }, { 7177, 0x9F45 }, { 7178, 0x9F46 }, { 7179, 0x9F47 }, { 7180, 0x9F53 }, { 7181, 0x9F55 }, { 7182, 0x9F56 }, { 7183, 0x9F57 }, 1762 { 7184, 0x9F58 }, { 7185, 0x9F5A }, { 7186, 0x9F5D }, { 7187, 0x9F5E }, { 7188, 0x9F68 }, { 7189, 0x9F69 }, { 7190, 0x9F6D }, { 7191, 0x9F6E }, 1763 { 7192, 0x9F6F }, { 7193, 0x9F70 }, { 7194, 0x9F71 }, { 7195, 0x9F73 }, { 7196, 0x9F75 }, { 7197, 0x9F7A }, { 7198, 0x9F7D }, { 7199, 0x9F8F }, 1764 { 7200, 0x9F90 }, { 7201, 0x9F91 }, { 7202, 0x9F92 }, { 7203, 0x9F94 }, { 7204, 0x9F96 }, { 7205, 0x9F97 }, { 7206, 0x9F9E }, { 7207, 0x9FA1 }, 1765 { 7208, 0x9FA2 }, { 7209, 0x9FA3 }, { 7210, 0x9FA5 } 1000 1766 }; 1001 1767 -
trunk/Source/WebCore/platform/text/EncodingTables.h
r266520 r266620 31 31 32 32 extern const std::pair<UChar, uint16_t> jis0208[7724]; 33 extern const std::pair<uint16_t, UChar> jis0212[6067]; 33 34 extern const std::pair<UChar32, uint16_t> big5EncodingMap[14686]; 34 35 extern const std::pair<uint16_t, UChar32> big5DecodingExtras[3904]; -
trunk/Source/WebCore/platform/text/TextCodecCJK.cpp
r266527 r266620 28 28 29 29 #include "EncodingTables.h" 30 #include "TextCodecICU.h"31 30 #include <wtf/text/CodePointIterator.h> 32 31 #include <wtf/text/StringBuilder.h> … … 115 114 } 116 115 116 static const std::array<std::pair<uint16_t, UChar>, WTF_ARRAY_LENGTH(jis0208)>& jis0208DecodeIndex() 117 { 118 static auto* table = [] { 119 auto* table = new std::array<std::pair<uint16_t, UChar>, WTF_ARRAY_LENGTH(jis0208)>(); 120 for (size_t i = 0; i < WTF_ARRAY_LENGTH(jis0208); i++) 121 (*table)[i] = { jis0208[i].second, jis0208[i].first }; 122 std::sort(table->begin(), table->end(), [] (auto& a, auto& b) { 123 return a.first < b.first; 124 }); 125 return table; 126 }(); 127 return *table; 128 } 129 130 String TextCodecCJK::decodeCommon(const uint8_t* bytes, size_t length, bool flush, bool stopOnError, bool& sawError, const Function<SawError(uint8_t, StringBuilder&)>& byteParser) 131 { 132 StringBuilder result; 133 result.reserveCapacity(length); 134 135 if (m_prependedByte && byteParser(*std::exchange(m_prependedByte, WTF::nullopt), result) == SawError::Yes) { 136 sawError = true; 137 result.append(replacementCharacter); 138 if (stopOnError) { 139 m_lead = 0x00; 140 return result.toString(); 141 } 142 } 143 for (size_t i = 0; i < length; i++) { 144 if (byteParser(bytes[i], result) == SawError::Yes) { 145 sawError = true; 146 result.append(replacementCharacter); 147 if (stopOnError) { 148 m_lead = 0x00; 149 return result.toString(); 150 } 151 } 152 if (m_prependedByte && byteParser(*std::exchange(m_prependedByte, WTF::nullopt), result) == SawError::Yes) { 153 sawError = true; 154 result.append(replacementCharacter); 155 if (stopOnError) { 156 m_lead = 0x00; 157 return result.toString(); 158 } 159 } 160 } 161 162 if (flush && m_lead) { 163 m_lead = 0x00; 164 sawError = true; 165 result.append(replacementCharacter); 166 } 167 168 return result.toString(); 169 } 170 171 static Optional<UChar> codePointJIS0208(uint16_t pointer) 172 { 173 auto& index = jis0208DecodeIndex(); 174 auto range = std::equal_range(index.begin(), index.end(), std::pair<uint16_t, UChar>(pointer, 0), [](const auto& a, const auto& b) { 175 return a.first < b.first; 176 }); 177 if (range.first != range.second) { 178 ASSERT(range.first + 1 == range.second); 179 return range.first->second; 180 } 181 return WTF::nullopt; 182 } 183 184 static Optional<UChar> codePointJIS0212(uint16_t pointer) 185 { 186 auto range = std::equal_range(jis0212, jis0212 + WTF_ARRAY_LENGTH(jis0212), std::pair<uint16_t, UChar>(pointer, 0), [](const auto& a, const auto& b) { 187 return a.first < b.first; 188 }); 189 if (range.first != range.second) { 190 ASSERT(range.first + 1 == range.second); 191 return range.first->second; 192 } 193 return WTF::nullopt; 194 } 195 196 // https://encoding.spec.whatwg.org/#euc-jp-decoder 197 String TextCodecCJK::eucJPDecode(const uint8_t* bytes, size_t length, bool flush, bool stopOnError, bool& sawError) 198 { 199 return decodeCommon(bytes, length, flush, stopOnError, sawError, [this] (uint8_t byte, StringBuilder& result) { 200 if (uint8_t lead = std::exchange(m_lead, 0x00)) { 201 if (lead == 0x8E && byte >= 0xA1 && byte <= 0xDF) { 202 result.appendCharacter(0xFF61 - 0xA1 + byte); 203 return SawError::No; 204 } 205 if (lead == 0x8F && byte >= 0xA1 && byte <= 0xFE) { 206 m_jis0212 = true; 207 m_lead = byte; 208 return SawError::No; 209 } 210 if (lead >= 0xA1 && lead <= 0xFE && byte >= 0xA1 && byte <= 0xFE) { 211 uint16_t pointer = (lead - 0xA1) * 94 + byte - 0xA1; 212 if (auto codePoint = std::exchange(m_jis0212, false) ? codePointJIS0212(pointer) : codePointJIS0208(pointer)) { 213 result.append(*codePoint); 214 return SawError::No; 215 } 216 } 217 if (isASCII(byte)) 218 m_prependedByte = byte; 219 return SawError::Yes; 220 } 221 if (isASCII(byte)) { 222 result.append(static_cast<LChar>(byte)); 223 return SawError::No; 224 } 225 if (byte == 0x8E || byte == 0x8F || (byte >= 0xA1 && byte <= 0xFE)) { 226 m_lead = byte; 227 return SawError::No; 228 } 229 return SawError::Yes; 230 }); 231 } 232 117 233 // https://encoding.spec.whatwg.org/#euc-jp-encoder 118 234 static Vector<uint8_t> eucJPEncode(StringView string, Function<void(UChar32, Vector<uint8_t>&)> unencodableHandler) … … 161 277 } 162 278 return result; 279 } 280 281 // https://encoding.spec.whatwg.org/#iso-2022-jp-decoder 282 String TextCodecCJK::iso2022JPDecode(const uint8_t* bytes, size_t length, bool flush, bool stopOnError, bool& sawError) 283 { 284 auto byteParser = [&] (uint8_t byte, StringBuilder& result) { 285 switch (m_iso2022JPDecoderState) { 286 case ISO2022JPDecoderState::ASCII: 287 if (byte == 0x1B) { 288 m_iso2022JPDecoderState = ISO2022JPDecoderState::EscapeStart; 289 break; 290 } 291 if (byte <= 0x7F && byte != 0x0E && byte != 0x0F && byte != 0x1B) { 292 m_iso2022JPOutput = false; 293 result.append(byte); 294 break; 295 } 296 m_iso2022JPOutput = false; 297 return SawError::Yes; 298 case ISO2022JPDecoderState::Roman: 299 if (byte == 0x1B) { 300 m_iso2022JPDecoderState = ISO2022JPDecoderState::EscapeStart; 301 break; 302 } 303 if (byte == 0x5C) { 304 m_iso2022JPOutput = false; 305 result.append(static_cast<UChar>(0x00A5)); 306 break; 307 } 308 if (byte == 0x7E) { 309 m_iso2022JPOutput = false; 310 result.append(static_cast<UChar>(0x203E)); 311 break; 312 } 313 if (byte <= 0x7F && byte != 0x0E && byte != 0x0F && byte != 0x1B && byte != 0x5C && byte != 0x7E) { 314 m_iso2022JPOutput = false; 315 result.append(byte); 316 break; 317 } 318 m_iso2022JPOutput = false; 319 return SawError::Yes; 320 case ISO2022JPDecoderState::Katakana: 321 if (byte == 0x1B) { 322 m_iso2022JPDecoderState = ISO2022JPDecoderState::EscapeStart; 323 break; 324 } 325 if (byte >= 0x21 && byte <= 0x5F) { 326 m_iso2022JPOutput = false; 327 result.append(static_cast<UChar>(0xFF61 - 0x21 + byte)); 328 break; 329 } 330 m_iso2022JPOutput = false; 331 return SawError::Yes; 332 case ISO2022JPDecoderState::LeadByte: 333 if (byte == 0x1B) { 334 m_iso2022JPDecoderState = ISO2022JPDecoderState::EscapeStart; 335 break; 336 } 337 if (byte >= 0x21 && byte <= 0x7E) { 338 m_iso2022JPOutput = false; 339 m_lead = byte; 340 m_iso2022JPDecoderState = ISO2022JPDecoderState::TrailByte; 341 break; 342 } 343 m_iso2022JPOutput = false; 344 return SawError::Yes; 345 case ISO2022JPDecoderState::TrailByte: 346 if (byte == 0x1B) { 347 m_iso2022JPDecoderState = ISO2022JPDecoderState::EscapeStart; 348 return SawError::Yes; 349 } 350 m_iso2022JPDecoderState = ISO2022JPDecoderState::LeadByte; 351 if (byte >= 0x21 && byte <= 0x7E) { 352 uint16_t pointer = (m_lead - 0x21) * 94 + byte - 0x21; 353 if (auto codePoint = codePointJIS0208(pointer)) { 354 result.append(*codePoint); 355 break; 356 } 357 return SawError::Yes; 358 } 359 return SawError::Yes; 360 case ISO2022JPDecoderState::EscapeStart: 361 if (byte == 0x24 || byte == 0x28) { 362 m_lead = byte; 363 m_iso2022JPDecoderState = ISO2022JPDecoderState::Escape; 364 break; 365 } 366 m_prependedByte = byte; 367 m_iso2022JPOutput = false; 368 m_iso2022JPDecoderState = m_iso2022JPDecoderOutputState; 369 return SawError::Yes; 370 case ISO2022JPDecoderState::Escape: { 371 uint8_t lead = std::exchange(m_lead, 0x00); 372 Optional<ISO2022JPDecoderState> state; 373 if (lead == 0x28) { 374 if (byte == 0x42) 375 state = ISO2022JPDecoderState::ASCII; 376 else if (byte == 0x4A) 377 state = ISO2022JPDecoderState::Roman; 378 else if (byte == 0x49) 379 state = ISO2022JPDecoderState::Katakana; 380 } else if (lead == 0x24 && (byte == 0x40 || byte == 0x42)) 381 state = ISO2022JPDecoderState::LeadByte; 382 if (state) { 383 m_iso2022JPDecoderState = *state; 384 m_iso2022JPDecoderOutputState = *state; 385 if (std::exchange(m_iso2022JPOutput, true)) 386 return SawError::Yes; 387 break; 388 } 389 m_prependedByte = lead; 390 m_iso2022JPSecondPrependedByte = byte; 391 m_iso2022JPOutput = false; 392 m_iso2022JPDecoderState = m_iso2022JPDecoderOutputState; 393 return SawError::Yes; 394 } 395 } 396 return SawError::No; 397 }; 398 399 StringBuilder result; 400 result.reserveCapacity(length); 401 402 if (m_prependedByte && byteParser(*std::exchange(m_prependedByte, WTF::nullopt), result) == SawError::Yes) { 403 sawError = true; 404 result.append(replacementCharacter); 405 if (stopOnError) { 406 m_lead = 0x00; 407 return result.toString(); 408 } 409 } 410 if (m_iso2022JPSecondPrependedByte && byteParser(*std::exchange(m_iso2022JPSecondPrependedByte, WTF::nullopt), result) == SawError::Yes && stopOnError) { 411 sawError = true; 412 result.append(replacementCharacter); 413 if (stopOnError) { 414 m_lead = 0x00; 415 return result.toString(); 416 } 417 } 418 for (size_t i = 0; i < length; i++) { 419 if (byteParser(bytes[i], result) == SawError::Yes) { 420 sawError = true; 421 result.append(replacementCharacter); 422 if (stopOnError) { 423 m_lead = 0x00; 424 return result.toString(); 425 } 426 } 427 if (m_prependedByte && byteParser(*std::exchange(m_prependedByte, WTF::nullopt), result) == SawError::Yes) { 428 sawError = true; 429 result.append(replacementCharacter); 430 if (stopOnError) { 431 m_lead = 0x00; 432 return result.toString(); 433 } 434 } 435 if (m_iso2022JPSecondPrependedByte && byteParser(*std::exchange(m_iso2022JPSecondPrependedByte, WTF::nullopt), result) == SawError::Yes && stopOnError) { 436 sawError = true; 437 result.append(replacementCharacter); 438 if (stopOnError) { 439 m_lead = 0x00; 440 return result.toString(); 441 } 442 } 443 } 444 445 if (flush) { 446 switch (m_iso2022JPDecoderState) { 447 case ISO2022JPDecoderState::ASCII: 448 case ISO2022JPDecoderState::Roman: 449 case ISO2022JPDecoderState::Katakana: 450 case ISO2022JPDecoderState::LeadByte: 451 break; 452 case ISO2022JPDecoderState::TrailByte: 453 m_iso2022JPDecoderState = ISO2022JPDecoderState::LeadByte; 454 FALLTHROUGH; 455 case ISO2022JPDecoderState::EscapeStart: 456 sawError = true; 457 result.append(replacementCharacter); 458 break; 459 case ISO2022JPDecoderState::Escape: 460 sawError = true; 461 result.append(replacementCharacter); 462 if (m_lead) { 463 ASSERT(isASCII(m_lead)); 464 result.append(std::exchange(m_lead, 0x00)); 465 } 466 break; 467 } 468 } 469 470 return result.toString(); 163 471 } 164 472 … … 182 490 }; 183 491 184 auto parseCodePoint = [&] (UChar32 codePoint) { 492 Function<void(UChar32)> parseCodePoint; 493 parseCodePoint = [&] (UChar32 codePoint) { 185 494 if (m_iso2022JPEncoderState == ISO2022JPEncoderState::ASCII && isASCII(codePoint)) { 186 495 result.append(static_cast<uint8_t>(codePoint)); … … 202 511 } 203 512 if (isASCII(codePoint) && m_iso2022JPEncoderState != ISO2022JPEncoderState::ASCII) { 204 m_prependedCodePoint = codePoint;205 513 if (m_iso2022JPEncoderState != ISO2022JPEncoderState::ASCII) 206 514 changeStateToASCII(); 515 parseCodePoint(codePoint); 207 516 return; 208 517 } 209 518 if ((codePoint == 0x00A5 || codePoint == 0x203E) && m_iso2022JPEncoderState != ISO2022JPEncoderState::Roman) { 210 m_prependedCodePoint = codePoint;211 519 m_iso2022JPEncoderState = ISO2022JPEncoderState::Roman; 212 520 result.append(0x1B); 213 521 result.append(0x28); 214 522 result.append(0x4A); 523 parseCodePoint(codePoint); 215 524 return; 216 525 } … … 242 551 } 243 552 if (m_iso2022JPEncoderState != ISO2022JPEncoderState::Jis0208) { 244 m_prependedCodePoint = codePoint;245 553 m_iso2022JPEncoderState = ISO2022JPEncoderState::Jis0208; 246 554 result.append(0x1B); 247 555 result.append(0x24); 248 556 result.append(0x42); 557 parseCodePoint(codePoint); 249 558 return; 250 559 } … … 255 564 256 565 auto characters = string.upconvertedCharacters(); 257 for (WTF::CodePointIterator<UChar> iterator(characters.get(), characters.get() + string.length()); !iterator.atEnd(); ++iterator) {566 for (WTF::CodePointIterator<UChar> iterator(characters.get(), characters.get() + string.length()); !iterator.atEnd(); ++iterator) 258 567 parseCodePoint(*iterator); 259 if (m_prependedCodePoint)260 parseCodePoint(*std::exchange(m_prependedCodePoint, WTF::nullopt));261 }262 568 263 569 if (m_iso2022JPEncoderState != ISO2022JPEncoderState::ASCII) … … 265 571 266 572 return result; 573 } 574 575 // https://encoding.spec.whatwg.org/#shift_jis-decoder 576 String TextCodecCJK::shiftJISDecode(const uint8_t* bytes, size_t length, bool flush, bool stopOnError, bool& sawError) 577 { 578 return decodeCommon(bytes, length, flush, stopOnError, sawError, [this] (uint8_t byte, StringBuilder& result) { 579 if (uint8_t lead = std::exchange(m_lead, 0x00)) { 580 uint8_t offset = byte < 0x7F ? 0x40 : 0x41; 581 uint8_t leadOffset = lead < 0xA0 ? 0x81 : 0xC1; 582 if ((byte >= 0x40 && byte <= 0x7E) || (byte >= 0x80 && byte <= 0xFC)) { 583 uint16_t pointer = (lead - leadOffset) * 188 + byte - offset; 584 if (pointer >= 8836 && pointer <= 10715) { 585 result.append(static_cast<UChar>(0xE000 - 8836 + pointer)); 586 return SawError::No; 587 } 588 if (auto codePoint = codePointJIS0208(pointer)) { 589 result.append(*codePoint); 590 return SawError::No; 591 } 592 } 593 if (isASCII(byte)) 594 m_prependedByte = byte; 595 return SawError::Yes; 596 } 597 if (isASCII(byte) || byte == 0x80) { 598 result.append(byte); 599 return SawError::No; 600 } 601 if (byte >= 0xA1 && byte <= 0xDF) { 602 result.append(static_cast<UChar>(0xFF61 - 0xA1 + byte)); 603 return SawError::No; 604 } 605 if ((byte >= 0x81 && byte <= 0x9F) || (byte >= 0xE0 && byte <= 0xFC)) { 606 m_lead = byte; 607 return SawError::No; 608 } 609 return SawError::Yes; 610 }); 267 611 } 268 612 … … 378 722 String TextCodecCJK::eucKRDecode(const uint8_t* bytes, size_t length, bool flush, bool stopOnError, bool& sawError) 379 723 { 380 StringBuilder result; 381 382 auto parseByte = [&] (uint8_t byte) { 724 return decodeCommon(bytes, length, flush, stopOnError, sawError, [this] (uint8_t byte, StringBuilder& result) { 383 725 if (uint8_t lead = std::exchange(m_lead, 0x00)) { 384 726 if (byte >= 0x41 && byte <= 0xFE) { … … 389 731 if (range.first != range.second) { 390 732 result.append(range.first->second); 391 return ;733 return SawError::No; 392 734 } 393 735 } 394 736 if (isASCII(byte)) 395 737 m_prependedByte = byte; 396 sawError = true; 397 result.append(replacementCharacter); 398 return; 738 return SawError::Yes; 399 739 } 400 740 if (isASCII(byte)) { 401 741 result.append(byte); 402 return ;742 return SawError::No; 403 743 } 404 744 if (byte >= 0x81 && byte <= 0xFE) { 405 745 m_lead = byte; 406 return; 407 } 408 sawError = true; 409 result.append(replacementCharacter); 410 }; 411 412 if (stopOnError) { 413 for (size_t i = 0; i < length; i++) { 414 parseByte(bytes[i]); 415 if (sawError) { 416 m_lead = 0x00; 417 return result.toString(); 418 } 419 if (m_prependedByte) 420 parseByte(*std::exchange(m_prependedByte, WTF::nullopt)); 421 if (sawError) { 422 m_lead = 0x00; 423 return result.toString(); 424 } 425 } 426 } else { 427 for (size_t i = 0; i < length; i++) { 428 parseByte(bytes[i]); 429 if (m_prependedByte) 430 parseByte(*std::exchange(m_prependedByte, WTF::nullopt)); 431 } 432 } 433 434 if (flush && m_lead) { 435 m_lead = 0x00; 436 sawError = true; 437 result.append(replacementCharacter); 438 } 439 return result.toString(); 746 return SawError::No; 747 } 748 return SawError::Yes; 749 }); 440 750 } 441 751 … … 549 859 String TextCodecCJK::big5Decode(const uint8_t* bytes, size_t length, bool flush, bool stopOnError, bool& sawError) 550 860 { 551 StringBuilder result; 552 553 auto parseByte = [&] (uint8_t byte) { 861 return decodeCommon(bytes, length, flush, stopOnError, sawError, [this] (uint8_t byte, StringBuilder& result) { 554 862 if (uint8_t lead = std::exchange(m_lead, 0x00)) { 555 863 uint8_t offset = byte < 0x7F ? 0x40 : 0x62; … … 576 884 ASSERT(range.first + 1 == range.second); 577 885 result.appendCharacter(range.first->second); 578 } else { 579 sawError = true; 580 result.append(replacementCharacter); 581 } 886 } else 887 return SawError::Yes; 582 888 } 583 return ;889 return SawError::No; 584 890 } 585 891 if (isASCII(byte)) 586 892 m_prependedByte = byte; 587 sawError = true; 588 result.append(replacementCharacter); 589 return; 893 return SawError::Yes; 590 894 } 591 895 if (isASCII(byte)) { 592 896 result.append(static_cast<LChar>(byte)); 593 return ;897 return SawError::No; 594 898 } 595 899 if (byte >= 0x81 && byte <= 0xFE) { 596 900 m_lead = byte; 597 return; 598 } 599 sawError = true; 600 result.append(replacementCharacter); 601 }; 602 603 if (stopOnError) { 604 for (size_t i = 0; i < length; i++) { 605 parseByte(bytes[i]); 606 if (sawError) { 607 m_lead = 0x00; 608 return result.toString(); 609 } 610 if (m_prependedByte) 611 parseByte(*std::exchange(m_prependedByte, WTF::nullopt)); 612 if (sawError) { 613 m_lead = 0x00; 614 return result.toString(); 615 } 616 } 617 } else { 618 for (size_t i = 0; i < length; i++) { 619 parseByte(bytes[i]); 620 if (m_prependedByte) 621 parseByte(*std::exchange(m_prependedByte, WTF::nullopt)); 622 } 623 } 624 625 if (flush && m_lead) { 626 m_lead = 0x00; 627 sawError = true; 628 result.append(replacementCharacter); 629 } 630 return result.toString(); 631 } 632 633 String TextCodecCJK::decode(const char* bytes, size_t length, bool flush, bool stopOnError, bool& sawError) 634 { 635 const char* icuName = nullptr; 901 return SawError::No; 902 } 903 return SawError::Yes; 904 }); 905 } 906 907 String TextCodecCJK::decode(const char* charBytes, size_t length, bool flush, bool stopOnError, bool& sawError) 908 { 909 auto bytes = reinterpret_cast<const uint8_t*>(charBytes); 636 910 switch (m_encoding) { 637 911 case Encoding::EUC_JP: 638 icuName = "euc-jp-2007"; 639 break; 912 return eucJPDecode(bytes, length, flush, stopOnError, sawError); 640 913 case Encoding::Shift_JIS: 641 icuName = "ibm-943_P15A-2003"; 642 break; 914 return shiftJISDecode(bytes, length, flush, stopOnError, sawError); 643 915 case Encoding::ISO2022JP: 644 icuName = "ISO_2022,locale=ja,version=0"; 645 break; 916 return iso2022JPDecode(bytes, length, flush, stopOnError, sawError); 646 917 case Encoding::EUC_KR: 647 return eucKRDecode( reinterpret_cast<const uint8_t*>(bytes), length, flush, stopOnError, sawError);918 return eucKRDecode(bytes, length, flush, stopOnError, sawError); 648 919 case Encoding::Big5: 649 return big5Decode(reinterpret_cast<const uint8_t*>(bytes), length, flush, stopOnError, sawError); 650 } 651 652 if (!m_icuCodec) 653 m_icuCodec = makeUnique<TextCodecICU>(icuName, icuName); 654 return m_icuCodec->decode(bytes, length, flush, stopOnError, sawError); 920 return big5Decode(bytes, length, flush, stopOnError, sawError); 921 } 922 ASSERT_NOT_REACHED(); 923 return { }; 655 924 } 656 925 -
trunk/Source/WebCore/platform/text/TextCodecCJK.h
r266520 r266620 27 27 28 28 #include "TextCodec.h" 29 #include <wtf/Forward.h> 29 30 #include <wtf/Optional.h> 30 31 … … 50 51 Vector<uint8_t> encode(StringView, UnencodableHandling) final; 51 52 52 String eucKRDecode(const uint8_t* bytes, size_t length, bool flush, bool stopOnError, bool& sawError); 53 String big5Decode(const uint8_t* bytes, size_t length, bool flush, bool stopOnError, bool& sawError); 53 enum class SawError : bool { No, Yes }; 54 String decodeCommon(const uint8_t*, size_t, bool, bool, bool&, const Function<SawError(uint8_t, StringBuilder&)>&); 55 56 String eucJPDecode(const uint8_t*, size_t, bool, bool, bool&); 57 String iso2022JPDecode(const uint8_t*, size_t, bool, bool, bool&); 58 String shiftJISDecode(const uint8_t*, size_t, bool, bool, bool&); 59 String eucKRDecode(const uint8_t*, size_t, bool, bool, bool&); 60 String big5Decode(const uint8_t*, size_t, bool, bool, bool&); 54 61 Vector<uint8_t> iso2022JPEncode(StringView, Function<void(UChar32, Vector<uint8_t>&)> unencodableHandler); 55 62 56 63 const Encoding m_encoding; 57 64 65 bool m_jis0212 { false }; 66 67 enum class ISO2022JPDecoderState : uint8_t { ASCII, Roman, Katakana, LeadByte, TrailByte, EscapeStart, Escape }; 68 ISO2022JPDecoderState m_iso2022JPDecoderState { ISO2022JPDecoderState::ASCII }; 69 ISO2022JPDecoderState m_iso2022JPDecoderOutputState { ISO2022JPDecoderState::ASCII }; 70 bool m_iso2022JPOutput { false }; 71 Optional<uint8_t> m_iso2022JPSecondPrependedByte; 72 58 73 enum class ISO2022JPEncoderState : uint8_t { ASCII, Roman, Jis0208 }; 59 74 ISO2022JPEncoderState m_iso2022JPEncoderState { ISO2022JPEncoderState::ASCII }; 60 Optional<UChar32> m_prependedCodePoint;61 75 62 76 uint8_t m_lead { 0x00 }; 63 77 Optional<uint8_t> m_prependedByte; 64 65 std::unique_ptr<TextCodec> m_icuCodec;66 78 }; 67 79
Note:
See TracChangeset
for help on using the changeset viewer.